Sprout from master 2005-09-14 06:35:35 UTC jfa <jfa@opencascade.com> 'Force saving of presentations parameters during saving of animation'
Cherrypick from master 2005-08-08 08:27:24 UTC jfa <jfa@opencascade.com> 'Update state of Save button after Rename and Create Presentation on mesh':
src/VISUGUI/Makefile.in
src/VISUGUI/VisuGUI_NonIsometricDlg.cxx
src/VISUGUI/VisuGUI_Tools.cxx
src/VISUGUI/VisuGUI_Tools.h
Cherrypick from master 2005-12-01 10:05:59 UTC asl <asl@opencascade.com> 'Improvement: now in rules you can use "canBeDisplayed" parameter. It is true, if current object can be displayed in active viewer. The result of this check is calculated by new virtual method LightApp_Displayer::canBeDisplayed. GEOM, SMESH, VISU overrides it in order to provide information, what object can be displayed in what viewer':
src/VISUGUI/VisuGUI_Displayer.cxx
src/VISUGUI/VisuGUI_Selection.h
Cherrypick from master 2005-06-08 13:22:03 UTC smh <smh@opencascade.com> 'SMH: 3.0.0 preparation - merged and adopted version (POLYWORK+HEAD)':
src/VISU_SWIG/Makefile.in
Cherrypick from IMPORT 2003-10-14 08:11:44 UTC nri <nri@opencascade.com> 'sources v1.2c':
src/PIPELINE/VISU_LookupTable.cxx
src/PIPELINE/VISU_LookupTable.hxx
src/PIPELINE/VISU_ScalarMapPL.hxx
src/VISU_SWIG/VISU_Gen_s.cc
Delete:
INSTALL
LICENCE
Makefile.in
adm_local/unix/config_files/check_GUI.m4
adm_local/unix/config_files/check_Med.m4
adm_local/unix/make_omniorb.in
bin/VERSION
build_configure
configure.in.base
doc/Makefile.in
doc/salome/Makefile.in
doc/salome/gui/VISU/VISU.log
doc/salome/gui/VISU/animation.gif
doc/salome/gui/VISU/createfieldprsnt.gif
doc/salome/gui/VISU/createpresent.gif
doc/salome/gui/VISU/createtable.gif
doc/salome/gui/VISU/cshdat_robohelp.htm
doc/salome/gui/VISU/cshdat_webhelp.htm
doc/salome/gui/VISU/default.css
doc/salome/gui/VISU/default.skn
doc/salome/gui/VISU/default_ns.css
doc/salome/gui/VISU/ehlpdhtm.js
doc/salome/gui/VISU/files/a.htm
doc/salome/gui/VISU/files/a1.htm
doc/salome/gui/VISU/files/a2.htm
doc/salome/gui/VISU/files/a3.htm
doc/salome/gui/VISU/files/a4.htm
doc/salome/gui/VISU/files/a5.htm
doc/salome/gui/VISU/files/about_structure_of_med_object.htm
doc/salome/gui/VISU/files/about_tables.htm
doc/salome/gui/VISU/files/animating_presentations.htm
doc/salome/gui/VISU/files/changing_visualization_parameters_of_the_presenetation.htm
doc/salome/gui/VISU/files/creating_curves.htm
doc/salome/gui/VISU/files/creating_field_presentations.htm
doc/salome/gui/VISU/files/creating_presentations.htm
doc/salome/gui/VISU/files/creating_tables_from_cut_lines_presentations.htm
doc/salome/gui/VISU/files/creating_xy_plot.htm
doc/salome/gui/VISU/files/cut_lines_presentation.htm
doc/salome/gui/VISU/files/cut_lines_resentation.htm
doc/salome/gui/VISU/files/deformed_shape_presentation.htm
doc/salome/gui/VISU/files/displaying_hiding_presentations.htm
doc/salome/gui/VISU/files/displaying_tables.htm
doc/salome/gui/VISU/files/editing_field_presentations.htm
doc/salome/gui/VISU/files/exploring_med_files.htm
doc/salome/gui/VISU/files/getting_elements_attributes.htm
doc/salome/gui/VISU/files/getting_started.htm
doc/salome/gui/VISU/files/importing_med_objects.htm
doc/salome/gui/VISU/files/importing_tables.htm
doc/salome/gui/VISU/files/insideframe.htm
doc/salome/gui/VISU/files/introduction_to_visu.htm
doc/salome/gui/VISU/files/iso_surfaces_presentation.htm
doc/salome/gui/VISU/files/points.htm
doc/salome/gui/VISU/files/renaming_presentations.htm
doc/salome/gui/VISU/files/running_visu.htm
doc/salome/gui/VISU/files/scalar_map_presentation.htm
doc/salome/gui/VISU/files/scaling_presentations.htm
doc/salome/gui/VISU/files/selection_in_visu.htm
doc/salome/gui/VISU/files/setting_properties_of_xy_plots.htm
doc/salome/gui/VISU/files/shrink.htm
doc/salome/gui/VISU/files/stream_lines_presentation.htm
doc/salome/gui/VISU/files/surface.htm
doc/salome/gui/VISU/files/surfaceframe.htm
doc/salome/gui/VISU/files/sweeping.htm
doc/salome/gui/VISU/files/vectors_presentation.htm
doc/salome/gui/VISU/files/wireframe.htm
doc/salome/gui/VISU/i_blue.jpg
doc/salome/gui/VISU/image1.gif
doc/salome/gui/VISU/image10.jpg
doc/salome/gui/VISU/image11.jpg
doc/salome/gui/VISU/image12.jpg
doc/salome/gui/VISU/image13.jpg
doc/salome/gui/VISU/image14.gif
doc/salome/gui/VISU/image15.gif
doc/salome/gui/VISU/image15.jpg
doc/salome/gui/VISU/image16.gif
doc/salome/gui/VISU/image16.jpg
doc/salome/gui/VISU/image17.gif
doc/salome/gui/VISU/image17.jpg
doc/salome/gui/VISU/image18.jpg
doc/salome/gui/VISU/image19.jpg
doc/salome/gui/VISU/image20.jpg
doc/salome/gui/VISU/image21.jpg
doc/salome/gui/VISU/image22.jpg
doc/salome/gui/VISU/image4.jpg
doc/salome/gui/VISU/image5.jpg
doc/salome/gui/VISU/image6.jpg
doc/salome/gui/VISU/image7.jpg
doc/salome/gui/VISU/image8.gif
doc/salome/gui/VISU/image8.jpg
doc/salome/gui/VISU/image9.jpg
doc/salome/gui/VISU/importmed.gif
doc/salome/gui/VISU/launchvisu.gif
doc/salome/gui/VISU/more.jpg
doc/salome/gui/VISU/note1.gif
doc/salome/gui/VISU/pics/animatdef.jpg
doc/salome/gui/VISU/pics/animation.jpg
doc/salome/gui/VISU/pics/animationparam.jpg
doc/salome/gui/VISU/pics/begining.jpg
doc/salome/gui/VISU/pics/cellsel.jpg
doc/salome/gui/VISU/pics/cellselection.jpg
doc/salome/gui/VISU/pics/choosebox.jpg
doc/salome/gui/VISU/pics/crtprsnt.jpg
doc/salome/gui/VISU/pics/cutlinesicn.jpg
doc/salome/gui/VISU/pics/cutlinesicon.jpg
doc/salome/gui/VISU/pics/cutlinesprsnt.jpg
doc/salome/gui/VISU/pics/cutplpresent.jpg
doc/salome/gui/VISU/pics/defshapeicon.jpg
doc/salome/gui/VISU/pics/defshapeprsnt.jpg
doc/salome/gui/VISU/pics/display.jpg
doc/salome/gui/VISU/pics/display1.jpg
doc/salome/gui/VISU/pics/end.jpg
doc/salome/gui/VISU/pics/erase.jpg
doc/salome/gui/VISU/pics/fieldprsnt3.jpg
doc/salome/gui/VISU/pics/fieldprsnt6.jpg
doc/salome/gui/VISU/pics/importingtables.jpg
doc/salome/gui/VISU/pics/importmed.jpg
doc/salome/gui/VISU/pics/iso.jpg
doc/salome/gui/VISU/pics/isosurf.jpg
doc/salome/gui/VISU/pics/main.jpg
doc/salome/gui/VISU/pics/new.jpg
doc/salome/gui/VISU/pics/next.jpg
doc/salome/gui/VISU/pics/object.jpg
doc/salome/gui/VISU/pics/opacity.jpg
doc/salome/gui/VISU/pics/points.jpg
doc/salome/gui/VISU/pics/pointselection.jpg
doc/salome/gui/VISU/pics/presentat1.jpg
doc/salome/gui/VISU/pics/previous.jpg
doc/salome/gui/VISU/pics/rename.jpg
doc/salome/gui/VISU/pics/run.jpg
doc/salome/gui/VISU/pics/scalarmap.jpg
doc/salome/gui/VISU/pics/scalarmapicon.jpg
doc/salome/gui/VISU/pics/scalingdb.jpg
doc/salome/gui/VISU/pics/scalingicon.jpg
doc/salome/gui/VISU/pics/selection1.jpg
doc/salome/gui/VISU/pics/selmode.jpg
doc/salome/gui/VISU/pics/shrink.jpg
doc/salome/gui/VISU/pics/speed.jpg
doc/salome/gui/VISU/pics/streamlinesicon.jpg
doc/salome/gui/VISU/pics/streamlinesprsnt.jpg
doc/salome/gui/VISU/pics/structmed.jpg
doc/salome/gui/VISU/pics/surface.jpg
doc/salome/gui/VISU/pics/sweeppreferences.jpg
doc/salome/gui/VISU/pics/table.gif
doc/salome/gui/VISU/pics/vecticon.jpg
doc/salome/gui/VISU/pics/vectorsprsnt.jpg
doc/salome/gui/VISU/pics/visuicon.jpg
doc/salome/gui/VISU/pics/visuwind.jpg
doc/salome/gui/VISU/pics/width.jpg
doc/salome/gui/VISU/pics/wireframe.jpg
doc/salome/gui/VISU/ss_btn_related_topics.gif
doc/salome/gui/VISU/ss_btn_see_also.gif
doc/salome/gui/VISU/texture_horiz_ltbluebubbles.jpg
doc/salome/gui/VISU/tip1.gif
doc/salome/gui/VISU/visu.html
doc/salome/gui/VISU/visu_csh.html
doc/salome/gui/VISU/visu_rhc.html
doc/salome/gui/VISU/webhelp.cab
doc/salome/gui/VISU/webhelp.jar
doc/salome/gui/VISU/whdata/whftdata.js
doc/salome/gui/VISU/whdata/whftdata0.htm
doc/salome/gui/VISU/whdata/whftdata0.xml
doc/salome/gui/VISU/whdata/whfts.htm
doc/salome/gui/VISU/whdata/whfts.js
doc/salome/gui/VISU/whdata/whfts.xml
doc/salome/gui/VISU/whdata/whfwdata.js
doc/salome/gui/VISU/whdata/whfwdata0.htm
doc/salome/gui/VISU/whdata/whfwdata0.xml
doc/salome/gui/VISU/whdata/whgdata.js
doc/salome/gui/VISU/whdata/whgdata0.htm
doc/salome/gui/VISU/whdata/whgdata0.xml
doc/salome/gui/VISU/whdata/whglo.htm
doc/salome/gui/VISU/whdata/whglo.js
doc/salome/gui/VISU/whdata/whglo.xml
doc/salome/gui/VISU/whdata/whidata.js
doc/salome/gui/VISU/whdata/whidx.htm
doc/salome/gui/VISU/whdata/whidx.js
doc/salome/gui/VISU/whdata/whidx.xml
doc/salome/gui/VISU/whdata/whtdata.js
doc/salome/gui/VISU/whdata/whtdata0.htm
doc/salome/gui/VISU/whdata/whtdata0.xml
doc/salome/gui/VISU/whdata/whtoc.htm
doc/salome/gui/VISU/whdata/whtoc.js
doc/salome/gui/VISU/whdata/whtoc.xml
doc/salome/gui/VISU/whestart.ico
doc/salome/gui/VISU/whfbody.htm
doc/salome/gui/VISU/whfdhtml.htm
doc/salome/gui/VISU/whfform.htm
doc/salome/gui/VISU/whfhost.js
doc/salome/gui/VISU/whform.js
doc/salome/gui/VISU/whframes.js
doc/salome/gui/VISU/whgbody.htm
doc/salome/gui/VISU/whgdata/whexpbar.gif
doc/salome/gui/VISU/whgdata/whlstf0.htm
doc/salome/gui/VISU/whgdata/whlstf1.htm
doc/salome/gui/VISU/whgdata/whlstf2.htm
doc/salome/gui/VISU/whgdata/whlstf3.htm
doc/salome/gui/VISU/whgdata/whlstf4.htm
doc/salome/gui/VISU/whgdata/whlstf5.htm
doc/salome/gui/VISU/whgdata/whlstfl0.htm
doc/salome/gui/VISU/whgdata/whlstfl1.htm
doc/salome/gui/VISU/whgdata/whlstfl10.htm
doc/salome/gui/VISU/whgdata/whlstfl11.htm
doc/salome/gui/VISU/whgdata/whlstfl12.htm
doc/salome/gui/VISU/whgdata/whlstfl13.htm
doc/salome/gui/VISU/whgdata/whlstfl14.htm
doc/salome/gui/VISU/whgdata/whlstfl15.htm
doc/salome/gui/VISU/whgdata/whlstfl16.htm
doc/salome/gui/VISU/whgdata/whlstfl17.htm
doc/salome/gui/VISU/whgdata/whlstfl18.htm
doc/salome/gui/VISU/whgdata/whlstfl19.htm
doc/salome/gui/VISU/whgdata/whlstfl2.htm
doc/salome/gui/VISU/whgdata/whlstfl20.htm
doc/salome/gui/VISU/whgdata/whlstfl21.htm
doc/salome/gui/VISU/whgdata/whlstfl22.htm
doc/salome/gui/VISU/whgdata/whlstfl3.htm
doc/salome/gui/VISU/whgdata/whlstfl4.htm
doc/salome/gui/VISU/whgdata/whlstfl5.htm
doc/salome/gui/VISU/whgdata/whlstfl6.htm
doc/salome/gui/VISU/whgdata/whlstfl7.htm
doc/salome/gui/VISU/whgdata/whlstfl8.htm
doc/salome/gui/VISU/whgdata/whlstfl9.htm
doc/salome/gui/VISU/whgdata/whlstg0.htm
doc/salome/gui/VISU/whgdata/whlsti0.htm
doc/salome/gui/VISU/whgdata/whlstt0.htm
doc/salome/gui/VISU/whgdata/whlstt1.htm
doc/salome/gui/VISU/whgdata/whlstt2.htm
doc/salome/gui/VISU/whgdata/whlstt3.htm
doc/salome/gui/VISU/whgdata/whlstt4.htm
doc/salome/gui/VISU/whgdata/whlstt5.htm
doc/salome/gui/VISU/whgdata/whlstt6.htm
doc/salome/gui/VISU/whgdata/whnvf30.htm
doc/salome/gui/VISU/whgdata/whnvf31.htm
doc/salome/gui/VISU/whgdata/whnvf32.htm
doc/salome/gui/VISU/whgdata/whnvf33.htm
doc/salome/gui/VISU/whgdata/whnvl31.htm
doc/salome/gui/VISU/whgdata/whnvl32.htm
doc/salome/gui/VISU/whgdata/whnvl33.htm
doc/salome/gui/VISU/whgdata/whnvp30.htm
doc/salome/gui/VISU/whgdata/whnvp31.htm
doc/salome/gui/VISU/whgdata/whnvp32.htm
doc/salome/gui/VISU/whgdata/whnvp33.htm
doc/salome/gui/VISU/whgdata/whnvt30.htm
doc/salome/gui/VISU/whgdata/whnvt31.htm
doc/salome/gui/VISU/whgdata/whnvt32.htm
doc/salome/gui/VISU/whgdata/whnvt33.htm
doc/salome/gui/VISU/whgdef.htm
doc/salome/gui/VISU/whgdhtml.htm
doc/salome/gui/VISU/whghost.js
doc/salome/gui/VISU/whhost.js
doc/salome/gui/VISU/whibody.htm
doc/salome/gui/VISU/whidhtml.htm
doc/salome/gui/VISU/whiform.htm
doc/salome/gui/VISU/whihost.js
doc/salome/gui/VISU/whlang.js
doc/salome/gui/VISU/whmozemu.js
doc/salome/gui/VISU/whmsg.js
doc/salome/gui/VISU/whnjs.htm
doc/salome/gui/VISU/whphost.js
doc/salome/gui/VISU/whproj.htm
doc/salome/gui/VISU/whproj.js
doc/salome/gui/VISU/whproj.xml
doc/salome/gui/VISU/whproxy.js
doc/salome/gui/VISU/whres.xml
doc/salome/gui/VISU/whrstart.ico
doc/salome/gui/VISU/whskin_banner.htm
doc/salome/gui/VISU/whskin_blank.htm
doc/salome/gui/VISU/whskin_frmset01.htm
doc/salome/gui/VISU/whskin_frmset010.htm
doc/salome/gui/VISU/whskin_info.htm
doc/salome/gui/VISU/whskin_mbars.htm
doc/salome/gui/VISU/whskin_papplet.htm
doc/salome/gui/VISU/whskin_pdhtml.htm
doc/salome/gui/VISU/whskin_plist.htm
doc/salome/gui/VISU/whskin_tbars.htm
doc/salome/gui/VISU/whst_topics.xml
doc/salome/gui/VISU/whstart.ico
doc/salome/gui/VISU/whstart.js
doc/salome/gui/VISU/whstub.js
doc/salome/gui/VISU/wht_abge.jpg
doc/salome/gui/VISU/wht_abgi.jpg
doc/salome/gui/VISU/wht_abgw.jpg
doc/salome/gui/VISU/wht_abte.jpg
doc/salome/gui/VISU/wht_abti.jpg
doc/salome/gui/VISU/wht_abtw.jpg
doc/salome/gui/VISU/wht_fts_h.gif
doc/salome/gui/VISU/wht_fts_n.gif
doc/salome/gui/VISU/wht_glo_h.gif
doc/salome/gui/VISU/wht_glo_n.gif
doc/salome/gui/VISU/wht_go.gif
doc/salome/gui/VISU/wht_hide.gif
doc/salome/gui/VISU/wht_idx_h.gif
doc/salome/gui/VISU/wht_idx_n.gif
doc/salome/gui/VISU/wht_logo1.gif
doc/salome/gui/VISU/wht_logo2.gif
doc/salome/gui/VISU/wht_next.gif
doc/salome/gui/VISU/wht_next_g.gif
doc/salome/gui/VISU/wht_prev.gif
doc/salome/gui/VISU/wht_prev_g.gif
doc/salome/gui/VISU/wht_spac.gif
doc/salome/gui/VISU/wht_sync.gif
doc/salome/gui/VISU/wht_tab0.gif
doc/salome/gui/VISU/wht_tab1.gif
doc/salome/gui/VISU/wht_tab2.gif
doc/salome/gui/VISU/wht_tab3.gif
doc/salome/gui/VISU/wht_tab4.gif
doc/salome/gui/VISU/wht_tab5.gif
doc/salome/gui/VISU/wht_tab6.gif
doc/salome/gui/VISU/wht_tab7.gif
doc/salome/gui/VISU/wht_tab8.gif
doc/salome/gui/VISU/wht_toc1.gif
doc/salome/gui/VISU/wht_toc2.gif
doc/salome/gui/VISU/wht_toc3.gif
doc/salome/gui/VISU/wht_toc4.gif
doc/salome/gui/VISU/wht_toc_h.gif
doc/salome/gui/VISU/wht_toc_n.gif
doc/salome/gui/VISU/wht_ws.gif
doc/salome/gui/VISU/wht_ws_g.gif
doc/salome/gui/VISU/whtbar.js
doc/salome/gui/VISU/whtdhtml.htm
doc/salome/gui/VISU/whthost.js
doc/salome/gui/VISU/whtopic.js
doc/salome/gui/VISU/whutils.js
doc/salome/gui/VISU/whver.js
doc/salome/tui/Makefile.in
doc/salome/tui/VISU/HTML/VISU_Gen.html
doc/salome/tui/VISU/sources/Application-About.png
doc/salome/tui/VISU/sources/Application-About1.jpg
doc/salome/tui/VISU/sources/application.gif
doc/salome/tui/VISU/sources/application.jpg
doc/salome/tui/VISU/sources/bg_salome.gif
doc/salome/tui/VISU/sources/logocorp.gif
doc/salome/tui/VISU/sources/myheader.html
doc/salome/tui/VISU/sources/occ.gif
doc/salome/tui/VISU/sources/static/DataStruct.gif
doc/salome/tui/VISU/sources/static/PrsObj.gif
doc/salome/tui/VISU/sources/static/View.gif
doc/salome/tui/VISU/sources/static/doxygen.css
doc/salome/tui/VISU/sources/static/examples_VISU.html
doc/salome/tui/VISU/sources/static/overview_VISU.html
doc/salome/tui/VISU/sources/static/page2.html
doc/salome/tui/VISU/sources/static/tree.js
doc/salome/tui/VISU/sources/static/treeview.js
examples/Fields_group3D.med
examples/Makefile.in
examples/ResOK_0000.med
examples/VISU_Example_01.py
examples/VISU_Example_02.py
examples/VISU_Example_03.py
examples/VISU_Example_04.py
examples/VISU_Example_05.py
examples/VISU_Example_06.py
examples/tables_test.xls
idl/Makefile.in
resources/ModuleVisu.png
resources/VISU.config
resources/VISUCatalog.xml
resources/VISU_en.xml
resources/VISU_fr.xml
resources/Visu_anim.png
resources/Visu_cutlines.png
resources/Visu_cutplane.png
resources/Visu_deformed.png
resources/Visu_deformed_anim.png
resources/Visu_eraseall.png
resources/Visu_graduated_axes.png
resources/Visu_isosurfaces.png
resources/Visu_plot2d.png
resources/Visu_plot3d.png
resources/Visu_points.png
resources/Visu_sameas.png
resources/Visu_scalars.png
resources/Visu_scalars_anim.png
resources/Visu_scaling.png
resources/Visu_selectall.png
resources/Visu_selectionactor.png
resources/Visu_selectioncell.png
resources/Visu_selectionedge.png
resources/Visu_selectionpoint.png
resources/Visu_selectonly.png
resources/Visu_streamlines.png
resources/Visu_surface.png
resources/Visu_tree_visu.png
resources/Visu_vectors.png
resources/Visu_wireframe.png
src/ENGINE/Makefile.in
src/GUITOOLS/Makefile.in
src/GUITOOLS/VisuGUI_TableDlg.cxx
src/GUITOOLS/VisuGUI_TableDlg.h
src/OBJECT/VISU_MeshAct.h
src/OBJECT/VISU_ScalarMapAct.h
src/OBJECT/VISU_VectorsAct.cxx
src/OBJECT/VISU_VectorsAct.h
src/PIPELINE/VISU_CutLinesPL.hxx
src/PIPELINE/VISU_CutPlanesPL.hxx
src/PIPELINE/VISU_DeformedShapePL.hxx
src/PIPELINE/VISU_Extractor.hxx
src/PIPELINE/VISU_FieldTransform.hxx
src/PIPELINE/VISU_IsoSurfacesPL.hxx
src/PIPELINE/VISU_MeshPL.cxx
src/PIPELINE/VISU_MeshPL.hxx
src/PIPELINE/VISU_PipeLineUtils.cxx
src/PIPELINE/VISU_PipeLineUtils.hxx
src/PIPELINE/VISU_Plot3DPL.hxx
src/PIPELINE/VISU_ScalarBarActor.cxx
src/PIPELINE/VISU_ScalarBarActor.hxx
src/PIPELINE/VISU_StreamLinesPL.hxx
src/PIPELINE/VISU_UsedPointsFilter.cxx
src/PIPELINE/VISU_UsedPointsFilter.hxx
src/PIPELINE/VISU_VectorsPL.hxx
src/VISUGUI/VISU_icons.po
src/VISUGUI/VISU_images.po
src/VISUGUI/VISU_msg_en.po
src/VISUGUI/VisuGUI_ActionsDef.h
src/VISUGUI/VisuGUI_ClippingDlg.cxx
src/VISUGUI/VisuGUI_ClippingDlg.h
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_DeformedShapeDlg.cxx
src/VISUGUI/VisuGUI_DeformedShapeDlg.h
src/VISUGUI/VisuGUI_EditContainerDlg.cxx
src/VISUGUI/VisuGUI_EditContainerDlg.h
src/VISUGUI/VisuGUI_FileDlg.cxx
src/VISUGUI/VisuGUI_FileDlg.h
src/VISUGUI/VisuGUI_IsoSurfacesDlg.cxx
src/VISUGUI/VisuGUI_IsoSurfacesDlg.h
src/VISUGUI/VisuGUI_NameDlg.cxx
src/VISUGUI/VisuGUI_NameDlg.h
src/VISUGUI/VisuGUI_OffsetDlg.h
src/VISUGUI/VisuGUI_Plot3DDlg.h
src/VISUGUI/VisuGUI_StreamLinesDlg.cxx
src/VISUGUI/VisuGUI_StreamLinesDlg.h
src/VISUGUI/VisuGUI_SweepPrefDlg.cxx
src/VISUGUI/VisuGUI_SweepPrefDlg.h
src/VISUGUI/VisuGUI_VectorsDlg.cxx
src/VISUGUI/VisuGUI_VectorsDlg.h
src/VISU_I/VISUConfig.cc
src/VISU_I/VISU_DumpPython.cc
src/VISU_I/VISU_Mesh_i.hh
src/VISU_I/VISU_PrsObject_i.cc
src/VISU_I/VISU_PrsObject_i.hh
src/VISU_I/VISU_Table_i.cc
src/VISU_I/VISU_Table_i.hh
src/VISU_I/VISU_ViewManager_i.hh
src/VISU_I/VISU_View_i.hh
src/VISU_SWIG/VISU_Gen_s.hh
src/VISU_SWIG/VISU_shared_modules.py
src/VISU_SWIG/batch_test_events.py
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
src/VISU_SWIG/visu.py
src/VISU_SWIG/visu_big_table.py
src/VISU_SWIG/visu_delete.py
src/VISU_SWIG/visu_gui.py
src/VISU_SWIG/visu_med.py
src/VISU_SWIG/visu_prs_example.py
src/VISU_SWIG/visu_split_views.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
+++ /dev/null
-This is the version 3.0.0 of VISU
-Compatible with :
- - KERNEL 3.0.0
- - SALOMEGUI 3.0.0
- - MED 3.0.0
+++ /dev/null
- GNU LESSER GENERAL PUBLIC LICENSE
- Version 2.1, February 1999
-
- Copyright (C) 1991, 1999 Free Software Foundation, Inc.
- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-[This is the first released version of the Lesser GPL. It also counts
- as the successor of the GNU Library Public License, version 2, hence
- the version number 2.1.]
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-Licenses are intended to guarantee your freedom to share and change
-free software--to make sure the software is free for all its users.
-
- This license, the Lesser General Public License, applies to some
-specially designated software packages--typically libraries--of the
-Free Software Foundation and other authors who decide to use it. You
-can use it too, but we suggest you first think carefully about whether
-this license or the ordinary General Public License is the better
-strategy to use in any particular case, based on the explanations below.
-
- When we speak of free software, we are referring to freedom of use,
-not price. Our General Public Licenses are designed to make sure that
-you have the freedom to distribute copies of free software (and charge
-for this service if you wish); that you receive source code or can get
-it if you want it; that you can change the software and use pieces of
-it in new free programs; and that you are informed that you can do
-these things.
-
- To protect your rights, we need to make restrictions that forbid
-distributors to deny you these rights or to ask you to surrender these
-rights. These restrictions translate to certain responsibilities for
-you if you distribute copies of the library or if you modify it.
-
- For example, if you distribute copies of the library, whether gratis
-or for a fee, you must give the recipients all the rights that we gave
-you. You must make sure that they, too, receive or can get the source
-code. If you link other code with the library, you must provide
-complete object files to the recipients, so that they can relink them
-with the library after making changes to the library and recompiling
-it. And you must show them these terms so they know their rights.
-
- We protect your rights with a two-step method: (1) we copyright the
-library, and (2) we offer you this license, which gives you legal
-permission to copy, distribute and/or modify the library.
-
- To protect each distributor, we want to make it very clear that
-there is no warranty for the free library. Also, if the library is
-modified by someone else and passed on, the recipients should know
-that what they have is not the original version, so that the original
-author's reputation will not be affected by problems that might be
-introduced by others.
-\f
- Finally, software patents pose a constant threat to the existence of
-any free program. We wish to make sure that a company cannot
-effectively restrict the users of a free program by obtaining a
-restrictive license from a patent holder. Therefore, we insist that
-any patent license obtained for a version of the library must be
-consistent with the full freedom of use specified in this license.
-
- Most GNU software, including some libraries, is covered by the
-ordinary GNU General Public License. This license, the GNU Lesser
-General Public License, applies to certain designated libraries, and
-is quite different from the ordinary General Public License. We use
-this license for certain libraries in order to permit linking those
-libraries into non-free programs.
-
- When a program is linked with a library, whether statically or using
-a shared library, the combination of the two is legally speaking a
-combined work, a derivative of the original library. The ordinary
-General Public License therefore permits such linking only if the
-entire combination fits its criteria of freedom. The Lesser General
-Public License permits more lax criteria for linking other code with
-the library.
-
- We call this license the "Lesser" General Public License because it
-does Less to protect the user's freedom than the ordinary General
-Public License. It also provides other free software developers Less
-of an advantage over competing non-free programs. These disadvantages
-are the reason we use the ordinary General Public License for many
-libraries. However, the Lesser license provides advantages in certain
-special circumstances.
-
- For example, on rare occasions, there may be a special need to
-encourage the widest possible use of a certain library, so that it becomes
-a de-facto standard. To achieve this, non-free programs must be
-allowed to use the library. A more frequent case is that a free
-library does the same job as widely used non-free libraries. In this
-case, there is little to gain by limiting the free library to free
-software only, so we use the Lesser General Public License.
-
- In other cases, permission to use a particular library in non-free
-programs enables a greater number of people to use a large body of
-free software. For example, permission to use the GNU C Library in
-non-free programs enables many more people to use the whole GNU
-operating system, as well as its variant, the GNU/Linux operating
-system.
-
- Although the Lesser General Public License is Less protective of the
-users' freedom, it does ensure that the user of a program that is
-linked with the Library has the freedom and the wherewithal to run
-that program using a modified version of the Library.
-
- The precise terms and conditions for copying, distribution and
-modification follow. Pay close attention to the difference between a
-"work based on the library" and a "work that uses the library". The
-former contains code derived from the library, whereas the latter must
-be combined with the library in order to run.
-\f
- GNU LESSER GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License Agreement applies to any software library or other
-program which contains a notice placed by the copyright holder or
-other authorized party saying it may be distributed under the terms of
-this Lesser General Public License (also called "this License").
-Each licensee is addressed as "you".
-
- A "library" means a collection of software functions and/or data
-prepared so as to be conveniently linked with application programs
-(which use some of those functions and data) to form executables.
-
- The "Library", below, refers to any such software library or work
-which has been distributed under these terms. A "work based on the
-Library" means either the Library or any derivative work under
-copyright law: that is to say, a work containing the Library or a
-portion of it, either verbatim or with modifications and/or translated
-straightforwardly into another language. (Hereinafter, translation is
-included without limitation in the term "modification".)
-
- "Source code" for a work means the preferred form of the work for
-making modifications to it. For a library, complete source code means
-all the source code for all modules it contains, plus any associated
-interface definition files, plus the scripts used to control compilation
-and installation of the library.
-
- Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running a program using the Library is not restricted, and output from
-such a program is covered only if its contents constitute a work based
-on the Library (independent of the use of the Library in a tool for
-writing it). Whether that is true depends on what the Library does
-and what the program that uses the Library does.
-
- 1. You may copy and distribute verbatim copies of the Library's
-complete source code as you receive it, in any medium, provided that
-you conspicuously and appropriately publish on each copy an
-appropriate copyright notice and disclaimer of warranty; keep intact
-all the notices that refer to this License and to the absence of any
-warranty; and distribute a copy of this License along with the
-Library.
-
- You may charge a fee for the physical act of transferring a copy,
-and you may at your option offer warranty protection in exchange for a
-fee.
-\f
- 2. You may modify your copy or copies of the Library or any portion
-of it, thus forming a work based on the Library, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) The modified work must itself be a software library.
-
- b) You must cause the files modified to carry prominent notices
- stating that you changed the files and the date of any change.
-
- c) You must cause the whole of the work to be licensed at no
- charge to all third parties under the terms of this License.
-
- d) If a facility in the modified Library refers to a function or a
- table of data to be supplied by an application program that uses
- the facility, other than as an argument passed when the facility
- is invoked, then you must make a good faith effort to ensure that,
- in the event an application does not supply such function or
- table, the facility still operates, and performs whatever part of
- its purpose remains meaningful.
-
- (For example, a function in a library to compute square roots has
- a purpose that is entirely well-defined independent of the
- application. Therefore, Subsection 2d requires that any
- application-supplied function or table used by this function must
- be optional: if the application does not supply it, the square
- root function must still compute square roots.)
-
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Library,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Library, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote
-it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Library.
-
-In addition, mere aggregation of another work not based on the Library
-with the Library (or with a work based on the Library) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may opt to apply the terms of the ordinary GNU General Public
-License instead of this License to a given copy of the Library. To do
-this, you must alter all the notices that refer to this License, so
-that they refer to the ordinary GNU General Public License, version 2,
-instead of to this License. (If a newer version than version 2 of the
-ordinary GNU General Public License has appeared, then you can specify
-that version instead if you wish.) Do not make any other change in
-these notices.
-\f
- Once this change is made in a given copy, it is irreversible for
-that copy, so the ordinary GNU General Public License applies to all
-subsequent copies and derivative works made from that copy.
-
- This option is useful when you wish to copy part of the code of
-the Library into a program that is not a library.
-
- 4. You may copy and distribute the Library (or a portion or
-derivative of it, under Section 2) in object code or executable form
-under the terms of Sections 1 and 2 above provided that you accompany
-it with the complete corresponding machine-readable source code, which
-must be distributed under the terms of Sections 1 and 2 above on a
-medium customarily used for software interchange.
-
- If distribution of object code is made by offering access to copy
-from a designated place, then offering equivalent access to copy the
-source code from the same place satisfies the requirement to
-distribute the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
- 5. A program that contains no derivative of any portion of the
-Library, but is designed to work with the Library by being compiled or
-linked with it, is called a "work that uses the Library". Such a
-work, in isolation, is not a derivative work of the Library, and
-therefore falls outside the scope of this License.
-
- However, linking a "work that uses the Library" with the Library
-creates an executable that is a derivative of the Library (because it
-contains portions of the Library), rather than a "work that uses the
-library". The executable is therefore covered by this License.
-Section 6 states terms for distribution of such executables.
-
- When a "work that uses the Library" uses material from a header file
-that is part of the Library, the object code for the work may be a
-derivative work of the Library even though the source code is not.
-Whether this is true is especially significant if the work can be
-linked without the Library, or if the work is itself a library. The
-threshold for this to be true is not precisely defined by law.
-
- If such an object file uses only numerical parameters, data
-structure layouts and accessors, and small macros and small inline
-functions (ten lines or less in length), then the use of the object
-file is unrestricted, regardless of whether it is legally a derivative
-work. (Executables containing this object code plus portions of the
-Library will still fall under Section 6.)
-
- Otherwise, if the work is a derivative of the Library, you may
-distribute the object code for the work under the terms of Section 6.
-Any executables containing that work also fall under Section 6,
-whether or not they are linked directly with the Library itself.
-\f
- 6. As an exception to the Sections above, you may also combine or
-link a "work that uses the Library" with the Library to produce a
-work containing portions of the Library, and distribute that work
-under terms of your choice, provided that the terms permit
-modification of the work for the customer's own use and reverse
-engineering for debugging such modifications.
-
- You must give prominent notice with each copy of the work that the
-Library is used in it and that the Library and its use are covered by
-this License. You must supply a copy of this License. If the work
-during execution displays copyright notices, you must include the
-copyright notice for the Library among them, as well as a reference
-directing the user to the copy of this License. Also, you must do one
-of these things:
-
- a) Accompany the work with the complete corresponding
- machine-readable source code for the Library including whatever
- changes were used in the work (which must be distributed under
- Sections 1 and 2 above); and, if the work is an executable linked
- with the Library, with the complete machine-readable "work that
- uses the Library", as object code and/or source code, so that the
- user can modify the Library and then relink to produce a modified
- executable containing the modified Library. (It is understood
- that the user who changes the contents of definitions files in the
- Library will not necessarily be able to recompile the application
- to use the modified definitions.)
-
- b) Use a suitable shared library mechanism for linking with the
- Library. A suitable mechanism is one that (1) uses at run time a
- copy of the library already present on the user's computer system,
- rather than copying library functions into the executable, and (2)
- will operate properly with a modified version of the library, if
- the user installs one, as long as the modified version is
- interface-compatible with the version that the work was made with.
-
- c) Accompany the work with a written offer, valid for at
- least three years, to give the same user the materials
- specified in Subsection 6a, above, for a charge no more
- than the cost of performing this distribution.
-
- d) If distribution of the work is made by offering access to copy
- from a designated place, offer equivalent access to copy the above
- specified materials from the same place.
-
- e) Verify that the user has already received a copy of these
- materials or that you have already sent this user a copy.
-
- For an executable, the required form of the "work that uses the
-Library" must include any data and utility programs needed for
-reproducing the executable from it. However, as a special exception,
-the materials to be distributed need not include anything that is
-normally distributed (in either source or binary form) with the major
-components (compiler, kernel, and so on) of the operating system on
-which the executable runs, unless that component itself accompanies
-the executable.
-
- It may happen that this requirement contradicts the license
-restrictions of other proprietary libraries that do not normally
-accompany the operating system. Such a contradiction means you cannot
-use both them and the Library together in an executable that you
-distribute.
-\f
- 7. You may place library facilities that are a work based on the
-Library side-by-side in a single library together with other library
-facilities not covered by this License, and distribute such a combined
-library, provided that the separate distribution of the work based on
-the Library and of the other library facilities is otherwise
-permitted, and provided that you do these two things:
-
- a) Accompany the combined library with a copy of the same work
- based on the Library, uncombined with any other library
- facilities. This must be distributed under the terms of the
- Sections above.
-
- b) Give prominent notice with the combined library of the fact
- that part of it is a work based on the Library, and explaining
- where to find the accompanying uncombined form of the same work.
-
- 8. You may not copy, modify, sublicense, link with, or distribute
-the Library except as expressly provided under this License. Any
-attempt otherwise to copy, modify, sublicense, link with, or
-distribute the Library is void, and will automatically terminate your
-rights under this License. However, parties who have received copies,
-or rights, from you under this License will not have their licenses
-terminated so long as such parties remain in full compliance.
-
- 9. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Library or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Library (or any work based on the
-Library), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Library or works based on it.
-
- 10. Each time you redistribute the Library (or any work based on the
-Library), the recipient automatically receives a license from the
-original licensor to copy, distribute, link with or modify the Library
-subject to these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties with
-this License.
-\f
- 11. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Library at all. For example, if a patent
-license would not permit royalty-free redistribution of the Library by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Library.
-
-If any portion of this section is held invalid or unenforceable under any
-particular circumstance, the balance of the section is intended to apply,
-and the section as a whole is intended to apply in other circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
- 12. If the distribution and/or use of the Library is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Library under this License may add
-an explicit geographical distribution limitation excluding those countries,
-so that distribution is permitted only in or among countries not thus
-excluded. In such case, this License incorporates the limitation as if
-written in the body of this License.
-
- 13. The Free Software Foundation may publish revised and/or new
-versions of the Lesser General Public License from time to time.
-Such new versions will be similar in spirit to the present version,
-but may differ in detail to address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Library
-specifies a version number of this License which applies to it and
-"any later version", you have the option of following the terms and
-conditions either of that version or of any later version published by
-the Free Software Foundation. If the Library does not specify a
-license version number, you may choose any version ever published by
-the Free Software Foundation.
-\f
- 14. If you wish to incorporate parts of the Library into other free
-programs whose distribution conditions are incompatible with these,
-write to the author to ask for permission. For software which is
-copyrighted by the Free Software Foundation, write to the Free
-Software Foundation; we sometimes make exceptions for this. Our
-decision will be guided by the two goals of preserving the free status
-of all derivatives of our free software and of promoting the sharing
-and reuse of software generally.
-
- NO WARRANTY
-
- 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
-WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
-EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
-OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
-KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
-LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
-THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
- 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
-WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
-AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
-FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
-CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
-LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
-RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
-FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
-SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
-DAMAGES.
-
- END OF TERMS AND CONDITIONS
-\f
- How to Apply These Terms to Your New Libraries
-
- If you develop a new library, and you want it to be of the greatest
-possible use to the public, we recommend making it free software that
-everyone can redistribute and change. You can do so by permitting
-redistribution under these terms (or, alternatively, under the terms of the
-ordinary General Public License).
-
- To apply these terms, attach the following notices to the library. It is
-safest to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least the
-"copyright" line and a pointer to where the full notice is found.
-
- <one line to give the library's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- This library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with this library; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-Also add information on how to contact you by electronic and paper mail.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the library, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the
- library `Frob' (a library for tweaking knobs) written by James Random Hacker.
-
- <signature of Ty Coon>, 1 April 1990
- Ty Coon, President of Vice
-
-That's all there is to it!
-
-
+++ /dev/null
-# -* Makefile *-
-#
-# Author : Patrick GOLDBRONN (CEA)
-# Date : 28/06/2001
-# $Header$
-#
-
-# source path
-top_srcdir=@top_srcdir@
-top_builddir=.
-srcdir=@srcdir@
-VPATH=.:@srcdir@:@top_srcdir@/bin:@top_srcdir@/resources:./bin:@top_srcdir@/idl:${KERNEL_ROOT_DIR}/idl/salome
-
-
-@COMMENCE@
-
-SUBDIRS = idl src examples doc
-
-BIN_SCRIPT= \
-VERSION
-
-
-# copy header files in common directory
-ifeq ($(HAVE_SSTREAM),yes)
- include_list=include/salome/SALOMEconfig.h
-else
- include_list=include/salome/SALOMEconfig.h include/salome/sstream
-endif
-
-inc: idl $(include_list)
-
-include/salome/SALOMEconfig.h: salome_adm/unix/SALOMEconfig.ref
- -$(RM) $@
- $(LN_S) ../../$< $@
-
-# test if SALOMEconfig.h has changed (contents)
-salome_adm/unix/SALOMEconfig.ref: salome_adm/unix/SALOMEconfig.h
- @if ! [ -a $@ ]; then \
- cp -p -f $< $@; \
- fi; \
- if ! cmp $< $@; then \
- cp -p -f $< $@; \
- fi; \
-
-include/salome/sstream: salome_adm/unix/sstream
- -$(RM) $@
- $(LN_S) ../../$< $@
-
-depend: depend_idl
-
-depend_idl:
- (cd idl ; $(MAKE) $@) || exit 1
-
-# doc is already build : if you want to had documents, go manually to doc and run 'make doc'
-#doc:
-# (cd doc && $(MAKE) $@) || exit 1
-
-install-end:
-# finish libtool install
-# @$(LT) --mode=finish $(libdir)
-
-install-include: $(include_list)
- $(INSTALL) -d $(includedir)
- @for f in X $(include_list); do \
- if test $$f != X; then \
- ($(INSTALL_DATA) -p $$f $(includedir)/. || exit 1); \
- fi; \
- done
-
-# install script in $(bindir) :
-install-bin: $(BIN_SCRIPT)
- $(INSTALL) -d $(bindir)
- if test $(BIN_SCRIPT)X != X; then \
- $(INSTALL_PROGRAM) $^ $(bindir); \
- fi
-
-uninstall: uninstall-idl
-
-uninstall-idl:
- $(RM) $(idldir)/*.idl
-
-distclean: distclean-other
-
-distclean-other:
- -$(RM) salome_adm/unix/*~ salome_adm/unix/*% salome_adm/unix/*.bak salome_adm/unix/*.new salome_adm/unix/*.old
- -$(RM) salome_adm/unix/make_*
- -$(RM) salome_adm/unix/depend salome_adm/unix/SALOMEconfig.h
- -$(RM) config.cache config.log config.status
-
-@MODULE@
-
-install: install-bin install-include install-end
-
+++ /dev/null
-# 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
-#
-#------------------------------------------------------------
-# Check availability of Salome binary distribution
-#
-# Author : Marc Tajchman (CEA, 2002)
-#------------------------------------------------------------
-
-AC_DEFUN([CHECK_SALOME_GUI],[
-
-AC_CHECKING(for SalomeGUI)
-
-SalomeGUI_ok=yes
-
-AC_ARG_WITH(gui,
- --with-salome_gui=DIR root directory path of SALOME GUI installation,
- SALOME_GUI_DIR="$withval",SALOME_GUI_DIR="")
-
-if test "x$SALOME_GUI_DIR" = "x" ; then
- if test "x$GUI_ROOT_DIR" != "x" ; then
- SALOME_GUI_DIR=$GUI_ROOT_DIR
- else
- # search Salome binaries in PATH variable
- AC_PATH_PROG(TEMP, libSalomeApp.so)
- if test "x$TEMP" != "x" ; then
- SALOME_GUI_DIR=`dirname $TEMP`
- else
- fi
- fi
-fi
-
-if test -f ${SALOME_GUI_DIR}/lib/salome/libSalomeApp.so ; then
- SalomeGUI_ok=yes
- AC_MSG_RESULT(Using SALOME GUI distribution in ${SALOME_GUI_DIR})
- GUI_ROOT_DIR=${SALOME_GUI_DIR}
- AC_SUBST(GUI_ROOT_DIR)
-else
- AC_MSG_WARN("Cannot find compiled SALOME GUI distribution")
-fi
-
-AC_MSG_RESULT(for SALOME GUI: $SalomeGUI_ok)
-
-])dnl
-
+++ /dev/null
-# Check availability of Med binary distribution
-#
-# Author : Nicolas REJNERI (OPEN CASCADE, 2003)
-#
-
-AC_DEFUN([CHECK_MED],[
-
-AC_CHECKING(for Med)
-
-Med_ok=no
-
-AC_ARG_WITH(med,
- [ --with-med=DIR root directory path of MED installation ],
- MED_DIR="$withval",MED_DIR="")
-
-if test "x$MED_DIR" == "x" ; then
-
-# no --with-med-dir option used
-
- if test "x$MED_ROOT_DIR" != "x" ; then
-
- # MED_ROOT_DIR environment variable defined
- MED_DIR=$MED_ROOT_DIR
-
- fi
-#
-fi
-
-if test -f ${MED_DIR}/idl/salome/MED.idl ; then
- Med_ok=yes
- AC_MSG_RESULT(Using Med module distribution in ${MED_DIR})
-
- if test "x$MED_ROOT_DIR" == "x" ; then
- MED_ROOT_DIR=${MED_DIR}
- fi
- AC_SUBST(MED_ROOT_DIR)
-
-else
- AC_MSG_WARN("Cannot find Med module sources")
-fi
-
-AC_MSG_RESULT(for Med: $Med_ok)
-
-])dnl
-
+++ /dev/null
-#=======================================================================
-# Begin specific part to omniorb
-# (include from file adm/unix/make_omniorb generated by
-# adm/unix/make_omniorb.in)
-#=======================================================================
-# -* Makefile *-
-#
-# Author : Patrick GOLDBRONN (CEA)
-# Date : 29/06/2001
-# $Header$
-#
-
-# Client and server object are the same with omniorb
-# There are one header file and one source file generate
-
-#IDLOBJ=$(IDLSRC:%.idl=%$(IDL_CLN_OBJ))
-
-# dependancies between idl and it's generated files
-%$(OMNIORB_IDL_CLN_CXX) %$(OMNIORB_IDL_CLN_H): ${KERNEL_ROOT_DIR}/idl/salome/%.idl
- $(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) $<
-
-%$(OMNIORB_IDL_CLN_CXX) %$(OMNIORB_IDL_CLN_H): ${GUI_ROOT_DIR}/idl/salome/%.idl
- $(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) $<
-
-%$(OMNIORB_IDL_CLN_CXX) %$(OMNIORB_IDL_CLN_H): ${MED_ROOT_DIR}/idl/salome/%.idl
- $(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) $<
-
-%$(OMNIORB_IDL_CLN_CXX) %$(OMNIORB_IDL_CLN_H): ${top_srcdir}/idl/%.idl
- $(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) $<
-
-# dependncies between idl files
-depend_idl: .depidl
-
-# we use cpp to generate dependencies between idl files.
-# we change cpp output to keep only idl file and transform it to get a suitable rule
-.depidl: $(IDL_FILES)
- @touch $@
- @for dep in $? dummy; do \
- if [ $$dep != "dummy" ]; then \
- echo Building dependencies for $$dep; \
- basedep=`basename $$dep .idl`; \
- header="$$basedep"$(IDL_CLN_H); \
- sed '\%^'"$$header"':%,\%[^\\]$$%d' <$@ >$@- && mv $@- $@; \
- $(CPP) $(C_DEPEND_FLAG) -I$(srcdir) $$dep 2>/dev/null | \
- sed `echo "s%$$basedep\\.idl%$$header:%g"` | \
- sed 's% $(srcdir)/% %g' | \
- sed 's% $(top_srcdir)/% %g' | \
- sed 's% $(top_builddir)/% %g' | \
- sed 's%^.*:\.o: *%%' | sed 's%^ *\\ *%%'| sed 's%^ *\(.*\):%\1:%' | \
- sed 's/\.idl/$(IDL_CLN_H)/' >>$@; \
- echo '' >>$@; \
- fi; \
- done ;
-
--include .depidl
-
-#=======================================================================
-# End specific part to omniorb
-#=======================================================================
+++ /dev/null
-THIS IS SALOME - VISU VERSION: 3.0.2
+++ /dev/null
-#!/bin/bash
-
-#
-# Tool for updating list of .in file for the SALOME project
-# and regenerating configure script
-#
-# Author : Marc Tajchman - CEA
-# Date : 10/10/2002
-# $Header$
-#
-
-ORIG_DIR=`pwd`
-CONF_DIR=`echo $0 | sed -e "s,[^/]*$,,;s,/$,,;s,^$,.,"`
-
-########################################################################
-# Test if the KERNEL_ROOT_DIR is set correctly
-
-if test ! -d "${KERNEL_ROOT_DIR}"; then
- echo "failed : KERNEL_ROOT_DIR variable is not correct !"
- exit
-fi
-
-# Test if the KERNEL_SRC is set correctly
-
-#if test ! -d "${KERNEL_SRC}"; then
-# echo "failed : KERNEL_SRC variable is not correct !"
-# exit
-#fi
-########################################################################
-# find_in - utility function
-#
-# usage :
-# find_in directory filename
-#
-# Finds files following the *.in pattern, recursively in the
-# directory (first argument).
-# Results are appended into the file (second argument)
-#
-# Difference from the standard unix find is that files are tested
-# before directories
-#
-
-find_in()
-{
- local i
- local f=$2
-
-# if the first argument is not a directory, returns
-
- if [ ! -d "$1" ] ; then
- return
- fi
-
-# dont look in the CVS directories
-
- case $1 in
- */CVS) return ;;
- */adm_local/*) return ;;
- *) ;;
- esac
-
-# for each regular file contained in the directory
-# test if it's a .in file
-
- for i in "$1"/*
- do
- if [ -f "$i" ] ; then
- case $i in
- *.in) echo " "$i" \\" >> $f;;
- *) ;;
- esac
- fi
- done
-
-# for each subdirectory of the first argument, proceeds recursively
-
- for i in "$1"/*
- do
- if [ -d "$i" ] ; then
- find_in "$i" "$f"
- fi
- done
-}
-
-
-#######################################################################
-# Generate list of .in files (Makefile.in, config.h.in, etc)
-# appending it in file configure.in
-
-cd ${CONF_DIR}
-ABS_CONF_DIR=`pwd`
-
-#
-# Common part of the configure.in file
-#
-chmod u+w configure.in.base
-if ! \cp -f configure.in.base configure.in_tmp1
-then
- echo
- echo "error : can't create files in" ${CONF_DIR}
- echo "aborting ..."
- chmod u-w configure.in.base
- exit
-fi
-chmod u-w configure.in.base
-
-if [ -e "${CONF_DIR}/salome_adm" ] ; then
- \rm -f ${CONF_DIR}/salome_adm
-fi
-
-
-# make a link allowing AC_OUTPUT to find the salome_adm/.../*.in files
-echo "" >> configure.in_tmp1
-echo 'ln -fs ${KERNEL_ROOT_DIR}/salome_adm ${ROOT_SRCDIR}/salome_adm' >> configure.in_tmp1
-
-echo "" >> configure.in_tmp1
-echo "AC_OUTPUT([ \\" >> configure.in_tmp1
-
-#
-# List of .in files in the adm/unix directory
-# These files MUST be on top of AC_OUTPUT list so we
-# put them "manually"
-#
-
-echo " ./salome_adm/unix/SALOMEconfig.h \\" >> configure.in_tmp1
-echo " ./salome_adm/unix/F77config.h \\" >> configure.in_tmp1
-echo " ./salome_adm/unix/sstream \\" >> configure.in_tmp1
-echo " ./salome_adm/unix/depend \\" >> configure.in_tmp1
-echo " ./adm_local/unix/make_omniorb \\" >> configure.in_tmp1
-echo " ./salome_adm/unix/envScript \\" >> configure.in_tmp1
-echo " ./adm_local/unix/make_commence \\" >> configure.in_tmp1
-echo " ./salome_adm/unix/make_conclude \\" >> configure.in_tmp1
-echo " ./salome_adm/unix/make_module \\" >> configure.in_tmp1
-
-\rm -f configure.in_tmp2 configure.in_tmp3
-touch configure.in_tmp2
-find_in . configure.in_tmp2
-sed -e '/^...salome_adm/d' configure.in_tmp2 > configure.in_tmp3
-sed -e '/^...adm_local.unix.make_omniorb/d' configure.in_tmp3 configure.in_tmp2
-sed -e '/^...adm_local.unix.make_commence/d' configure.in_tmp2 > configure.in_tmp3
-sed -e '/configure.in/d' configure.in_tmp3 > configure.in_tmp2
-sed -e 's/.in / /' configure.in_tmp2 >> configure.in_tmp1
-#sed '/^.*salome_adm/d' configure.in_tmp2 > configure.in_tmp3
-#sed '/configure.in/d' configure.in_tmp3 > configure.in_tmp2
-#sed 's/.in / /' configure.in_tmp2 >> configure.in_tmp1
-
-echo "])" >> configure.in_tmp1
-
-# delete the link created for AC_OUTPUT
-#echo "" >> configure.in_tmp1
-#echo 'rm -f ${ROOT_SRCDIR}/salome_adm' >> configure.in_tmp1
-\mv configure.in_tmp1 configure.in_new
-\rm -f configure.in_tmp2 configure.in_tmp3
-
-
-########################################################################
-# Create new (or replace old) configure.in file
-# Print a message if the file is write protected
-#
-
-echo
-if test ! -f configure.in
-then
- echo -n "Creating new file 'configure.in' ... "
- if \mv configure.in_new configure.in >& /dev/null
- then
- echo "done"
- else
- echo "error, check your file permissions"
- fi
-else
- echo -n "Updating 'configure.in' file ... "
- if ! \cp configure.in configure.in_old >& /dev/null
- then
- echo
- echo
- echo "Can't backup previous configure.in"
- echo -n "Continue (you will not be able to revert) - (Y/N) ? "
- read R
- case "x$R" in
- xn*) exit;;
- xN*) exit;;
- esac
- echo
- echo -n " "
- fi
- if \cp configure.in_new configure.in >& /dev/null
- then
- echo "done"
- else
- echo
- echo "error, can't update previous configure.in"
- fi
-fi
-
-########################################################################
-# Use autoconf to rebuild the configure script
-#
-
-if test -f configure
-then
- echo -n "Updating 'configure' script ... "
-else
- echo -n "Creating 'configure' script ... "
-fi
-
-aclocal --acdir=adm_local/unix/config_files -I ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files
-if autoconf
-then
- echo "done"
-else
- echo "failed (check file permissions and/or user quotas ...)"
-fi
-
-cd ${ORIG_DIR}
-
-echo
+++ /dev/null
-#
-# PLEASE DO NOT MODIFY configure.in FILE
-#
-# ALL CHANGES WILL BE DISCARDED BY THE NEXT
-# build_configure COMMAND
-#
-# CHANGES MUST BE MADE IN configure.in.base FILE
-#
-#
-# Author : Marc Tajchman (CEA)
-# Date : 28/06/2001
-# Modified by : Patrick GOLDBRONN (CEA)
-# Modified by : Marc Tajchman (CEA)
-#
-# Created from configure.in.base
-#
-
-AC_INIT(src)
-AC_CONFIG_AUX_DIR(${KERNEL_ROOT_DIR}/salome_adm/unix/config_files)
-AC_CANONICAL_HOST
-
-PACKAGE=salome
-AC_SUBST(PACKAGE)
-
-VERSION=0.0.1
-AC_SUBST(VERSION)
-
-dnl
-dnl Initialize source and build root directories
-dnl
-
-ROOT_BUILDDIR=`pwd`
-ROOT_SRCDIR=`echo $0 | sed -e "s,[[^/]]*$,,;s,/$,,;s,^$,.,"`
-cd $ROOT_SRCDIR
-ROOT_SRCDIR=`pwd`
-cd $ROOT_BUILDDIR
-
-AC_SUBST(ROOT_SRCDIR)
-AC_SUBST(ROOT_BUILDDIR)
-
-echo
-echo Source root directory : $ROOT_SRCDIR
-echo Build root directory : $ROOT_BUILDDIR
-echo
-echo
-
-if test -z "$AR"; then
- AC_CHECK_PROGS(AR,ar xar,:,$PATH)
-fi
-AC_SUBST(AR)
-
-dnl Export the AR macro so that it will be placed in the libtool file
-dnl correctly.
-export AR
-
-echo
-echo ---------------------------------------------
-echo testing make
-echo ---------------------------------------------
-echo
-
-AC_PROG_MAKE_SET
-AC_PROG_INSTALL
-dnl
-dnl libtool macro check for CC, LD, NM, LN_S, RANLIB, STRIP + pour les librairies dynamiques !
-
-AC_ENABLE_DEBUG(yes)
-AC_DISABLE_PRODUCTION
-
-echo ---------------------------------------------
-echo testing libtool
-echo ---------------------------------------------
-
-dnl first, we set static to no!
-dnl if we want it, use --enable-static
-AC_ENABLE_STATIC(no)
-
-AC_LIBTOOL_DLOPEN
-AC_PROG_LIBTOOL
-
-dnl Fix up the INSTALL macro if it s a relative path. We want the
-dnl full-path to the binary instead.
-case "$INSTALL" in
- *install-sh*)
- INSTALL='\${KERNEL_ROOT_DIR}'/salome_adm/unix/config_files/install-sh
- ;;
-esac
-
-echo
-echo ---------------------------------------------
-echo testing C/C++
-echo ---------------------------------------------
-echo
-
-cc_ok=no
-dnl inutil car libtool
-dnl AC_PROG_CC
-AC_PROG_CXX
-AC_DEPEND_FLAG
-# AC_CC_WARNINGS([ansi])
-cc_ok=yes
-
-dnl Library libdl :
-AC_CHECK_LIB(dl,dlopen)
-
-dnl add library libm :
-AC_CHECK_LIB(m,ceil)
-
-dnl
-dnl Well we use sstream which is not in gcc pre-2.95.3
-dnl We must test if it exists. If not, add it in include !
-dnl
-
-AC_CXX_USE_STD_IOSTREAM
-AC_CXX_HAVE_SSTREAM
-
-echo
-echo ---------------------------------------------
-echo BOOST Library
-echo ---------------------------------------------
-echo
-
-CHECK_BOOST
-
-dnl
-dnl ---------------------------------------------
-dnl testing MPICH
-dnl ---------------------------------------------
-dnl
-
-CHECK_MPICH
-
-echo
-echo ---------------------------------------------
-echo testing LEX \& YACC
-echo ---------------------------------------------
-echo
-
-lex_yacc_ok=no
-AC_PROG_YACC
-AC_PROG_LEX
-lex_yacc_ok=yes
-
-echo
-echo ---------------------------------------------
-echo testing python
-echo ---------------------------------------------
-echo
-
-CHECK_PYTHON
-
-dnl echo
-dnl echo ---------------------------------------------
-dnl echo testing java
-dnl echo ---------------------------------------------
-dnl echo
-
-dnl CHECK_JAVA
-
-echo
-echo ---------------------------------------------
-echo testing swig
-echo ---------------------------------------------
-echo
-
-CHECK_SWIG
-
-echo
-echo ---------------------------------------------
-echo testing threads
-echo ---------------------------------------------
-echo
-
-ENABLE_PTHREADS
-
-echo
-echo ---------------------------------------------
-echo testing omniORB
-echo ---------------------------------------------
-echo
-
-CHECK_OMNIORB
-
-dnl echo
-dnl echo ---------------------------------------------
-dnl echo testing mico
-dnl echo ---------------------------------------------
-dnl echo
-
-dnl CHECK_MICO
-
-echo
-echo ---------------------------------------------
-echo default ORB : omniORB
-echo ---------------------------------------------
-echo
-
-DEFAULT_ORB=omniORB
-CHECK_CORBA
-
-AC_SUBST_FILE(CORBA)
-corba=make_$ORB
-CORBA=adm_local/unix/$corba
-
-echo
-echo ---------------------------------------------
-echo testing openGL
-echo ---------------------------------------------
-echo
-
-CHECK_OPENGL
-
-echo
-echo ---------------------------------------------
-echo testing QT
-echo ---------------------------------------------
-echo
-
-CHECK_QT
-
-echo
-echo ---------------------------------------------
-echo testing msg2qm
-echo ---------------------------------------------
-echo
-
-CHECK_MSG2QM
-
-echo
-echo ---------------------------------------------
-echo testing VTK
-echo ---------------------------------------------
-echo
-
-CHECK_VTK
-
-echo
-echo ---------------------------------------------
-echo testing HDF5
-echo ---------------------------------------------
-echo
-
-CHECK_HDF5
-
-echo
-echo ---------------------------------------------
-echo Testing OpenCascade
-echo ---------------------------------------------
-echo
-
-CHECK_CAS
-
-echo
-echo ---------------------------------------------
-echo Testing qwt
-echo ---------------------------------------------
-echo
-
-CHECK_QWT
-
-echo
-echo ---------------------------------------------
-echo Testing html generators
-echo ---------------------------------------------
-echo
-
-CHECK_HTML_GENERATORS
-
-echo
-echo ---------------------------------------------
-echo Testing Kernel
-echo ---------------------------------------------
-echo
-
-CHECK_KERNEL
-
-echo
-echo ---------------------------------------------
-echo Testing Med
-echo ---------------------------------------------
-echo
-
-CHECK_MED
-
-echo
-echo ---------------------------------------------
-echo Summary
-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"
-
-for var in $variables
-do
- printf " %10s : " `echo \$var | sed -e "s,_ok,,"`
- eval echo \$$var
-done
-
-echo
-echo "Default ORB : $DEFAULT_ORB"
-echo
-
-dnl generals files which could be included in every makefile
-
-AC_SUBST_FILE(COMMENCE) COMMENCE=adm_local/unix/make_commence
-AC_SUBST_FILE(CONCLUDE) CONCLUDE=salome_adm/unix/make_conclude
-AC_SUBST_FILE(MODULE) MODULE=salome_adm/unix/make_module
-
-dnl les dependences
-AC_SUBST_FILE(DEPEND) DEPEND=salome_adm/unix/depend
-
-dnl We don t need to say when we re entering directories if we re using
-dnl GNU make becuase make does it for us.
-if test "X$GMAKE" = "Xyes"; then
- AC_SUBST(SETX) SETX=":"
-else
- AC_SUBST(SETX) SETX="set -x"
-fi
-
-# make other build directories
-for rep in salome_adm adm_local doc bin/salome include/salome lib/salome share/salome/resources idl
-do
-# if test ! -d $rep ; then
-# eval mkdir $rep
-# fi
- $INSTALL -d $rep
-done
-
-echo
-echo ---------------------------------------------
-echo copying resource files, shell scripts, and
-echo xml files
-echo ---------------------------------------------
-echo
-
-
-dnl copy resources directories
-
-#for i in `find $ROOT_SRCDIR -name 'resources' -print`
-#do
-# local_res=`echo $i | sed -e "s,$ROOT_SRCDIR,.,"`
-# local_res_dir=`echo $local_res | sed -e "s,[[^/]]*$,,;s,/$,,;s,^$,.,"`
-# mkdir -p $local_res_dir
-# cd $local_res_dir
-# ln -fs $i
-# echo $local_res
-# cd $ROOT_BUILDDIR
-#done
-
-dnl copy shells and utilities contained in the bin directory
-dnl excluding .in files (treated in AC-OUTPUT below) and CVS
-dnl directory
-
-mkdir -p bin/salome
-cd bin/salome
-for i in $ROOT_SRCDIR/bin/*
-do
- local_bin=`echo $i | sed -e "s,$ROOT_SRCDIR,.,"`
- case "$local_bin" in
- *.in | *~) ;;
- ./bin/CVS | ./bin/salome) ;;
- *) /usr/bin/install $i .; echo $local_bin ;;
- esac
-done
-cd $ROOT_BUILDDIR
-
-AC_SUBST_FILE(ENVSCRIPT) ENVSCRIPT=salome_adm/unix/envScript
-
-dnl copy xml files to the build tree (lib directory)
-dnl pourquoi ????
-
-#cd lib
-#for i in `find $ROOT_SRCDIR -name "*.xml" -print`
-#do
-# ln -fs $i
-# echo `echo $i | sed -e "s,$ROOT_SRCDIR,.,"`
-#done
-#cd $ROOT_BUILDDIR
-
-
-echo
-echo ---------------------------------------------
-echo generating Makefiles and configure files
-echo ---------------------------------------------
-echo
-
-AC_OUTPUT_COMMANDS([ \
- chmod +x ./bin/* \
-])
-
-## do not delete this line
+++ /dev/null
-
-# -* Makefile *-
-#
-# Author : Patrick GOLDBRONN (CEA)
-# Date : 30/11/2001
-# $Header$
-#
-# source path
-top_srcdir=@top_srcdir@
-top_builddir=..
-srcdir=@srcdir@
-VPATH=.:@srcdir@
-
-SUBDIRS= salome
-
-@COMMENCE@
-
-docs:
- @@SETX@; for d in $(SUBDIRS); do \
- (cd $$d && $(MAKE) $@) || exit 1; \
- done
-clean:
- @@SETX@; for d in $(SUBDIRS); do \
- (cd $$d && $(MAKE) $@) || exit 1; \
- done
-
-distclean: clean
- @@SETX@; for d in $(SUBDIRS); do \
- (cd $$d && $(MAKE) $@) || exit 1; \
- done
-
-install:
- @@SETX@; for d in $(SUBDIRS); do \
- (cd $$d && $(MAKE) $@) || exit 1; \
- done
-
-uninstall:
- @@SETX@; for d in $(SUBDIRS); do \
- (cd $$d && $(MAKE) $@) || exit 1; \
- done
+++ /dev/null
-# -* Makefile *-
-#
-# Author : Patrick GOLDBRONN (CEA)
-# Date : 30/11/2001
-# $Header$
-#
-# source path
-top_srcdir=@top_srcdir@
-top_builddir=../..
-srcdir=@srcdir@
-VPATH=.:@srcdir@
-
-SUBDIRS= tui gui
-
-@COMMENCE@
-
-docs:
- @@SETX@; for d in $(SUBDIRS); do \
- (cd $$d && $(MAKE) $@) || exit 1; \
- done; \
- cp -f $(srcdir)/VISU_index.html VISU_index.html
-
-clean:
- @@SETX@; for d in $(SUBDIRS); do \
- (cd $$d && $(MAKE) $@) || exit 1; \
- done
-
-distclean: clean
- @@SETX@; for d in $(SUBDIRS); do \
- (cd $$d && $(MAKE) $@) || exit 1; \
- done
-
-install:
- $(MAKE) docs
- (cd tui && $(MAKE) install);
- (cd gui && $(MAKE) install);
- cp -f VISU_index.html $(docdir)
-
-uninstall:
- @@SETX@; for d in $(SUBDIRS); do \
- (cd $$d && $(MAKE) $@) || exit 1; \
- done; \
- rm -fr $(docdir)/VISU_index.html
+++ /dev/null
-|SourceProjectName:VISU.hpr\r
-|DestinationProjectName:visu.html\r
-whhost.js\r
-whmsg.js\r
-whmozemu.js\r
-whproxy.js\r
-whstub.js\r
-whutils.js\r
-whver.js\r
-whform.js\r
-whphost.js\r
-whstart.js\r
-whtopic.js\r
-whframes.js\r
-whlang.js\r
-whskin_info.htm\r
-whskin_blank.htm\r
-whnjs.htm\r
-whthost.js\r
-whtdhtml.htm\r
-whihost.js\r
-whibody.htm\r
-whiform.htm\r
-whfhost.js\r
-whfbody.htm\r
-whfform.htm\r
-whghost.js\r
-whgbody.htm\r
-whgdhtml.htm\r
-whgdef.htm\r
-whproj.js\r
-whproj.xml\r
-whproj.htm\r
-whdata\whtoc.js\r
-whdata\whtoc.xml\r
-whdata\whtoc.htm\r
-whdata\whtdata.js\r
-whdata\whidx.js\r
-whdata\whidx.xml\r
-whdata\whidx.htm\r
-whdata\whidata.js\r
-whdata\whfts.js\r
-whdata\whfts.xml\r
-whdata\whfts.htm\r
-whdata\whglo.js\r
-whdata\whglo.xml\r
-whdata\whglo.htm\r
-whdata\whgdata.js\r
-whdata\whftdata.js\r
-whdata\whfwdata.js\r
-whres.xml\r
-webhelp.jar\r
-webhelp.cab\r
-whgdata\whnvp30.htm\r
-whgdata\whnvp31.htm\r
-whgdata\whnvp32.htm\r
-whgdata\whnvp33.htm\r
-whgdata\whnvt30.htm\r
-whgdata\whnvt31.htm\r
-whgdata\whnvt32.htm\r
-whgdata\whnvt33.htm\r
-whgdata\whnvf30.htm\r
-whgdata\whnvf31.htm\r
-whgdata\whnvf32.htm\r
-whgdata\whnvf33.htm\r
-whgdata\whnvl31.htm\r
-whgdata\whnvl32.htm\r
-whgdata\whnvl33.htm\r
-whgdata\whexpbar.gif\r
-cshdat_webhelp.htm\r
-cshdat_robohelp.htm\r
-wht_tab0.gif\r
-wht_tab1.gif\r
-wht_tab2.gif\r
-wht_tab3.gif\r
-wht_tab4.gif\r
-wht_tab5.gif\r
-wht_tab6.gif\r
-wht_tab7.gif\r
-wht_tab8.gif\r
-wht_glo_h.gif\r
-wht_glo_n.gif\r
-wht_fts_h.gif\r
-wht_fts_n.gif\r
-wht_idx_h.gif\r
-wht_idx_n.gif\r
-wht_toc_h.gif\r
-wht_toc_n.gif\r
-wht_ws.gif\r
-wht_ws_g.gif\r
-wht_logo1.gif\r
-wht_logo2.gif\r
-wht_abgw.jpg\r
-wht_abgi.jpg\r
-wht_abge.jpg\r
-wht_abtw.jpg\r
-wht_abte.jpg\r
-wht_abti.jpg\r
-wht_spac.gif\r
-wht_next.gif\r
-wht_next_g.gif\r
-wht_prev.gif\r
-wht_prev_g.gif\r
-wht_sync.gif\r
-wht_hide.gif\r
-wht_go.gif\r
-whstart.ico\r
-whestart.ico\r
-whrstart.ico\r
-whidhtml.htm\r
-whfdhtml.htm\r
-whskin_banner.htm\r
-whtbar.js\r
-default.skn\r
-whskin_pdhtml.htm\r
-whskin_papplet.htm\r
-whskin_plist.htm\r
-whskin_tbars.htm\r
-whskin_mbars.htm\r
-wht_toc4.gif\r
-wht_toc1.gif\r
-wht_toc2.gif\r
-wht_toc3.gif\r
-whskin_frmset010.htm\r
-whst_topics.xml\r
-whskin_frmset01.htm\r
-visu_hha.hhk\r
-visu.hhc\r
-visu.hhk\r
-files\a.htm\r
-files\a1.htm\r
-files\a2.htm\r
-files\a3.htm\r
-files\a4.htm\r
-files\a5.htm\r
-files\about_structure_of_med_object.htm\r
-files\about_tables.htm\r
-files\animating_presentations.htm\r
-files\changing_visualization_parameters_of_the_presenetation.htm\r
-files\creating_curves.htm\r
-files\creating_field_presentations.htm\r
-files\creating_presentations.htm\r
-files\creating_tables_from_cut_lines_presentations.htm\r
-files\creating_xy_plot.htm\r
-files\cut_lines_presentation.htm\r
-files\cut_lines_resentation.htm\r
-files\deformed_shape_presentation.htm\r
-files\displaying_hiding_presentations.htm\r
-files\displaying_tables.htm\r
-files\editing_field_presentations.htm\r
-files\exploring_med_files.htm\r
-files\getting_elements_attributes.htm\r
-files\getting_started.htm\r
-files\importing_med_objects.htm\r
-files\importing_tables.htm\r
-files\insideframe.htm\r
-files\introduction_to_visu.htm\r
-files\iso_surfaces_presentation.htm\r
-files\points.htm\r
-files\renaming_presentations.htm\r
-files\running_visu.htm\r
-files\scalar_map_presentation.htm\r
-files\scaling_presentations.htm\r
-files\selection_in_visu.htm\r
-files\setting_properties_of_xy_plots.htm\r
-files\shrink.htm\r
-files\stream_lines_presentation.htm\r
-files\surface.htm\r
-files\surfaceframe.htm\r
-files\sweeping.htm\r
-files\vectors_presentation.htm\r
-files\wireframe.htm\r
-ehlpdhtm.js\r
-texture_horiz_ltbluebubbles.jpg\r
-visu.glo\r
-default.css\r
-image21.jpg\r
-image10.jpg\r
-pics\surface.jpg\r
-image22.jpg\r
-image11.jpg\r
-more.jpg\r
-pics\speed.jpg\r
-pics\next.jpg\r
-pics\run.jpg\r
-pics\cutlinesicon.jpg\r
-pics\cellselection.jpg\r
-pics\width.jpg\r
-pics\main.jpg\r
-image12.jpg\r
-createtable.gif\r
-pics\fieldprsnt3.jpg\r
-pics\points.jpg\r
-pics\choosebox.jpg\r
-image13.jpg\r
-pics\animatdef.jpg\r
-pics\table.gif\r
-pics\streamlinesprsnt.jpg\r
-pics\defshapeicon.jpg\r
-pics\structmed.jpg\r
-pics\visuicon.jpg\r
-image4.jpg\r
-createfieldprsnt.gif\r
-image1.gif\r
-pics\animation.jpg\r
-pics\scalarmapicon.jpg\r
-pics\presentat1.jpg\r
-image15.jpg\r
-image5.jpg\r
-pics\fieldprsnt6.jpg\r
-pics\shrink.jpg\r
-image16.jpg\r
-image6.jpg\r
-pics\end.jpg\r
-pics\cutplpresent.jpg\r
-image14.gif\r
-image17.jpg\r
-image7.jpg\r
-animation.gif\r
-pics\begining.jpg\r
-pics\streamlinesicon.jpg\r
-pics\defshapeprsnt.jpg\r
-pics\new.jpg\r
-image15.gif\r
-image18.jpg\r
-image8.jpg\r
-pics\display.jpg\r
-pics\wireframe.jpg\r
-pics\crtprsnt.jpg\r
-image16.gif\r
-image19.jpg\r
-image9.jpg\r
-pics\selmode.jpg\r
-pics\scalingdb.jpg\r
-i_blue.jpg\r
-pics\object.jpg\r
-image17.gif\r
-tip1.gif\r
-pics\pointselection.jpg\r
-pics\rename.jpg\r
-image8.gif\r
-pics\sweeppreferences.jpg\r
-pics\previous.jpg\r
-pics\scalingicon.jpg\r
-pics\importmed.jpg\r
-pics\importingtables.jpg\r
-pics\animationparam.jpg\r
-pics\erase.jpg\r
-pics\opacity.jpg\r
-pics\cutlinesprsnt.jpg\r
-pics\selection1.jpg\r
-createpresent.gif\r
-importmed.gif\r
-note1.gif\r
-launchvisu.gif\r
-pics\cutlinesicn.jpg\r
-pics\iso.jpg\r
-pics\scalarmap.jpg\r
-pics\display1.jpg\r
-pics\visuwind.jpg\r
-image20.jpg\r
-pics\cellsel.jpg\r
-pics\vectorsprsnt.jpg\r
-pics\vecticon.jpg\r
-pics\isosurf.jpg\r
-visu.ppf\r
-ss_btn_related_topics.gif\r
-ss_btn_see_also.gif\r
-default_ns.css\r
-whdata\whtdata0.xml\r
-whdata\whtdata0.htm\r
-whdata\whftdata0.xml\r
-whdata\whftdata0.htm\r
-whdata\whfwdata0.xml\r
-whdata\whfwdata0.htm\r
-whdata\whgdata0.xml\r
-whdata\whgdata0.htm\r
-whgdata\whlstt0.htm\r
-whgdata\whlstt1.htm\r
-whgdata\whlstt2.htm\r
-whgdata\whlstt3.htm\r
-whgdata\whlstt4.htm\r
-whgdata\whlstt5.htm\r
-whgdata\whlstt6.htm\r
-whgdata\whlsti0.htm\r
-whgdata\whlstfl0.htm\r
-whgdata\whlstfl1.htm\r
-whgdata\whlstfl2.htm\r
-whgdata\whlstfl3.htm\r
-whgdata\whlstfl4.htm\r
-whgdata\whlstfl5.htm\r
-whgdata\whlstfl6.htm\r
-whgdata\whlstfl7.htm\r
-whgdata\whlstfl8.htm\r
-whgdata\whlstfl9.htm\r
-whgdata\whlstfl10.htm\r
-whgdata\whlstfl11.htm\r
-whgdata\whlstfl12.htm\r
-whgdata\whlstfl13.htm\r
-whgdata\whlstfl14.htm\r
-whgdata\whlstfl15.htm\r
-whgdata\whlstfl16.htm\r
-whgdata\whlstfl17.htm\r
-whgdata\whlstfl18.htm\r
-whgdata\whlstfl19.htm\r
-whgdata\whlstfl20.htm\r
-whgdata\whlstfl21.htm\r
-whgdata\whlstfl22.htm\r
-whgdata\whlstf0.htm\r
-whgdata\whlstf1.htm\r
-whgdata\whlstf2.htm\r
-whgdata\whlstf3.htm\r
-whgdata\whlstf4.htm\r
-whgdata\whlstf5.htm\r
-whgdata\whlstg0.htm\r
-visu.html\r
-visu_csh.html\r
-visu_rhc.html\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>VISU refrence manual</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-</head>\r
-<body>\r
-<script language="JavaScript">\r
-<!--\r
-\r
-var gArrayCsh = new Array();\r
-\r
-var gstrWindowOption = "";\r
-var gstrURL = "";\r
-var gbWithNavPane = false;\r
-\r
-function CshEntityItem(strAliasId, nTopicNum, strUrl) \r
-{\r
- this.strAliasId = strAliasId;\r
- this.nTopicNum = nTopicNum;\r
- this.strUrl = strUrl;\r
-}\r
-\r
-\r
-//Try to get to topic number from hash string\r
-function GetTopicNumberAuto(strMayBeNumber)\r
-{\r
- var nNum = -1;\r
- if (strMayBeNumber.length >= 1)\r
- {\r
- var strTmp = strMayBeNumber;\r
- var iEnd = strTmp.length;\r
- for (var i=0; i<iEnd; i++)\r
- {\r
- var ch = strTmp.charAt(i);\r
- if (!((ch == "0") || (ch == "1") ||\r
- (ch == "2") || (ch == "3") ||\r
- (ch == "4") || (ch == "5") ||\r
- (ch == "6") || (ch == "7") ||\r
- (ch == "8") || (ch == "9")))\r
- return GetTopicNumberById(strTmp);\r
- }\r
- nNum = parseInt(strTmp);\r
- }\r
- return nNum;\r
-}\r
-\r
-function GetTopicNumber(strHashString)\r
-{\r
- var nTopicEndPos = strHashString.indexOf(',')\r
- if (nTopicEndPos == -1) { // no window option.\r
- return GetTopicNumberOnly(strHashString);\r
- }\r
- else {\r
- var strWindowOption = strHashString.substring(nTopicEndPos + 1, strHashString.length);\r
- var strWithNavPane = 'withnavpane=true';\r
- if (strWindowOption.toLowerCase().indexOf(strWithNavPane) == 0)\r
- {\r
- if (strWindowOption.length > strWithNavPane.length)\r
- gstrWindowOption = strWindowOption.substring(strWithNavPane.length + 1);\r
- else\r
- gstrWindowOption = "";\r
- gbWithNavPane = true;\r
- }\r
- else\r
- gstrWindowOption = strWindowOption;\r
- return GetTopicNumberOnly(strHashString.substring(0, nTopicEndPos)); \r
- }\r
-}\r
-\r
-function GetTopicNumberOnly(strTopicString)\r
-{\r
- var nEqualPos = strTopicString.indexOf('=');\r
- if (nEqualPos == -1) {\r
- return GetTopicNumberAuto(strTopicString);\r
- }\r
- else {\r
- var strValue=strTopicString.substring(nEqualPos + 1, strTopicString.length);\r
- if (strTopicString.toLowerCase().indexOf("topicnumber") == 0) {\r
- return parseInt(strValue);\r
- } else if (strTopicString.toLowerCase().indexOf("context") == 0) {\r
- return GetTopicNumberById(strValue);\r
- } else if (strTopicString.toLowerCase().indexOf("remoteurl") == 0) {\r
- gstrURL = strValue;\r
- return -1;\r
- }\r
-\r
- }\r
-}\r
-\r
-//Find HomePage of the WebHelp system\r
-// we try to get the topic from remote project if it exists.\r
-function RedirectToHomePage()\r
-{\r
- if (parent && parent != this && parent.goNext)\r
- {\r
- var sHome = parent.goNext();\r
- if (sHome != "")\r
- RedirectTo(sHome);\r
- }\r
-}\r
-\r
-function getHomePage()\r
-{\r
- if (parent && parent != this && parent.getRelHomePage)\r
- {\r
- return parent.getRelHomePage(document.location.href);\r
- }\r
- return "";\r
-}\r
-\r
-function addRemoteProject(strPath)\r
-{\r
- if (parent && parent != this && parent.addProject)\r
- {\r
- parent.addProject(strPath);\r
- }\r
-}\r
-\r
-//Redirect page to...\r
-function RedirectTo(strUrl)\r
-{\r
- if (gstrWindowOption.length != 0) {\r
- var wnd = window.open(strUrl, "HelpStub", gstrWindowOption);\r
- // close current window and rename the stub window to current window.\r
- if (wnd)\r
- wnd.focus();\r
- if (parent)\r
- parent.close();\r
- }\r
- else {\r
- parent.document.location.href = strUrl;\r
- window.focus();\r
- }\r
-}\r
-\r
-//Prompt the user that we can not find...\r
-function FailToFind(strMsg)\r
-{\r
- RedirectToHomePage();\r
-}\r
-\r
-//Find topic by topic number (defined in h file)\r
-function FindTopicByTopicNum(nTopicNum)\r
-{\r
- var i = 0;\r
- var iEnd = gArrayCsh.length;\r
- for (i=0; i<iEnd; i++)\r
- {\r
- if (gArrayCsh[i].nTopicNum == nTopicNum)\r
- {\r
- var strURL = gArrayCsh[i].strUrl;\r
- if (gbWithNavPane)\r
- {\r
- var strHomePage = getHomePage();\r
- if (strHomePage.length != 0)\r
- strURL = strHomePage + strURL;\r
- } \r
- RedirectTo(strURL);\r
- return true;\r
- }\r
- }\r
- FailToFind("Fail to find topic assocaite with topic number: " + nTopicNum);\r
- return false;\r
-}\r
-\r
-//Find topic by topic id (alias id defined in ali file)\r
-function GetTopicNumberById(strTopicId)\r
-{\r
- var i = 0;\r
- var iEnd = gArrayCsh.length;\r
- for (i=0; i<iEnd; i++)\r
- {\r
- if (gArrayCsh[i].strAliasId.toLowerCase() == strTopicId.toLowerCase())\r
- {\r
- return gArrayCsh[i].nTopicNum;\r
- }\r
- }\r
- gstrURL = "";\r
- return -1;\r
-}\r
-\r
-//Set Context-sensitive help entity...\r
-function SetCsh(n, strAliasId, nTopicNum, strUrl)\r
-{\r
- gArrayCsh[n] = new CshEntityItem(strAliasId,nTopicNum,strUrl);\r
-}\r
-\r
-\r
-function getHash()\r
-{\r
- if (parent && parent != this)\r
- return parent.location.hash;\r
- else\r
- return "";\r
-}\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-\r
-\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-//Find CSH according to hash string after this page\r
-if (getHash().length > 0)\r
-{\r
- // VH 05/16/00 now support \r
- // TopicID=\r
- // TopicNumber=\r
- // RemoteURL= \r
- // and WindowsOptions\r
- // with the format #a=xxx,b=xxx,c=xxx...\r
- var strHashString = getHash().toString();\r
- // change ? to : for remote URL. because java applet have some problem to pass a URL with two : inside the URL so we changed it. \r
- // so here need to change it back.\r
- strHashString = strHashString.substring(1,strHashString.length);\r
- strHashString = strHashString.replace("%072%057%057", "://");\r
- var nTopicNum = GetTopicNumber(strHashString);\r
-\r
- if (nTopicNum != -1)\r
- {\r
- FindTopicByTopicNum(nTopicNum);\r
- }\r
- else\r
- {\r
- if (gstrURL.length > 0) \r
- RedirectTo(gstrURL);\r
- else\r
- RedirectToHomePage();\r
- }\r
-}\r
-else\r
-{\r
- RedirectToHomePage();\r
-}\r
-//-->\r
-</script>\r
-<noscript>\r
- <p> Your browser does not support JavaScript. WebHelp Context-Sensitive Help requires JavaScript support to run.</p>\r
-</noscript>\r
-</body>\r
-</html>\r
-\r
-\r
-\r
-\r
-\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>VISU refrence manual</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-</head>\r
-<body>\r
-<script language="JavaScript">\r
-<!--\r
-\r
-var gArrayCsh = new Array();\r
-\r
-var gstrWindowOption = "";\r
-var gstrURL = "";\r
-var gbWithNavPane = false;\r
-\r
-function CshEntityItem(strAliasId, nTopicNum, strUrl) \r
-{\r
- this.strAliasId = strAliasId;\r
- this.nTopicNum = nTopicNum;\r
- this.strUrl = strUrl;\r
-}\r
-\r
-\r
-//Try to get to topic number from hash string\r
-function GetTopicNumberAuto(strMayBeNumber)\r
-{\r
- var nNum = -1;\r
- if (strMayBeNumber.length >= 1)\r
- {\r
- var strTmp = strMayBeNumber;\r
- var iEnd = strTmp.length;\r
- for (var i=0; i<iEnd; i++)\r
- {\r
- var ch = strTmp.charAt(i);\r
- if (!((ch == "0") || (ch == "1") ||\r
- (ch == "2") || (ch == "3") ||\r
- (ch == "4") || (ch == "5") ||\r
- (ch == "6") || (ch == "7") ||\r
- (ch == "8") || (ch == "9")))\r
- return GetTopicNumberById(strTmp);\r
- }\r
- nNum = parseInt(strTmp);\r
- }\r
- return nNum;\r
-}\r
-\r
-function GetTopicNumber(strHashString)\r
-{\r
- var nTopicEndPos = strHashString.indexOf(',')\r
- if (nTopicEndPos == -1) { // no window option.\r
- return GetTopicNumberOnly(strHashString);\r
- }\r
- else {\r
- var strWindowOption = strHashString.substring(nTopicEndPos + 1, strHashString.length);\r
- var strWithNavPane = 'withnavpane=true';\r
- if (strWindowOption.toLowerCase().indexOf(strWithNavPane) == 0)\r
- {\r
- if (strWindowOption.length > strWithNavPane.length)\r
- gstrWindowOption = strWindowOption.substring(strWithNavPane.length + 1);\r
- else\r
- gstrWindowOption = "";\r
- gbWithNavPane = true;\r
- }\r
- else\r
- gstrWindowOption = strWindowOption;\r
- return GetTopicNumberOnly(strHashString.substring(0, nTopicEndPos)); \r
- }\r
-}\r
-\r
-function GetTopicNumberOnly(strTopicString)\r
-{\r
- var nEqualPos = strTopicString.indexOf('=');\r
- if (nEqualPos == -1) {\r
- return GetTopicNumberAuto(strTopicString);\r
- }\r
- else {\r
- var strValue=strTopicString.substring(nEqualPos + 1, strTopicString.length);\r
- if (strTopicString.toLowerCase().indexOf("topicnumber") == 0) {\r
- return parseInt(strValue);\r
- } else if (strTopicString.toLowerCase().indexOf("topicid") == 0) {\r
- return GetTopicNumberById(strValue);\r
- } else if (strTopicString.toLowerCase().indexOf("remoteurl") == 0) {\r
- gstrURL = strValue;\r
- return -1;\r
- }\r
-\r
- }\r
-}\r
-\r
-//Find HomePage of the WebHelp system\r
-// we try to get the topic from remote project if it exists.\r
-function RedirectToHomePage()\r
-{\r
- if (parent && parent != this && parent.goNext)\r
- {\r
- var sHome = parent.goNext();\r
- if (sHome != "")\r
- RedirectTo(sHome);\r
- }\r
-}\r
-\r
-function getHomePage()\r
-{\r
- if (parent && parent != this && parent.getRelHomePage)\r
- {\r
- return parent.getRelHomePage(document.location.href);\r
- }\r
- return "";\r
-}\r
-\r
-function addRemoteProject(strPath)\r
-{\r
- if (parent && parent != this && parent.addProject)\r
- {\r
- parent.addProject(strPath);\r
- }\r
-}\r
-\r
-//Redirect page to...\r
-function RedirectTo(strUrl)\r
-{\r
- if (gstrWindowOption.length != 0) {\r
- var wnd = window.open(strUrl, "HelpStub", gstrWindowOption);\r
- // close current window and rename the stub window to current window.\r
- wnd.focus();\r
- if (parent)\r
- parent.close();\r
- }\r
- else {\r
- parent.document.location.href = strUrl;\r
- window.focus();\r
- }\r
-}\r
-\r
-//Prompt the user that we can not find...\r
-function FailToFind(strMsg)\r
-{\r
- RedirectToHomePage();\r
-}\r
-\r
-//Find topic by topic number (defined in h file)\r
-function FindTopicByTopicNum(nTopicNum)\r
-{\r
- var i = 0;\r
- var iEnd = gArrayCsh.length;\r
- for (i=0; i<iEnd; i++)\r
- {\r
- if (gArrayCsh[i].nTopicNum == nTopicNum)\r
- {\r
- var strURL = gArrayCsh[i].strUrl;\r
- if (gbWithNavPane)\r
- {\r
- var strHomePage = getHomePage();\r
- if (strHomePage.length != 0)\r
- strURL = strHomePage + strURL;\r
- } \r
- RedirectTo(strURL);\r
- return true;\r
- }\r
- }\r
- FailToFind("Fail to find topic assocaite with topic number: " + nTopicNum);\r
- return false;\r
-}\r
-\r
-//Find topic by topic id (alias id defined in ali file)\r
-function GetTopicNumberById(strTopicId)\r
-{\r
- var i = 0;\r
- var iEnd = gArrayCsh.length;\r
- for (i=0; i<iEnd; i++)\r
- {\r
- if (gArrayCsh[i].strAliasId == strTopicId)\r
- {\r
- return gArrayCsh[i].nTopicNum;\r
- }\r
- }\r
- gstrURL = "";\r
- return -1;\r
-}\r
-\r
-//Set Context-sensitive help entity...\r
-function SetCsh(n, strAliasId, nTopicNum, strUrl)\r
-{\r
- gArrayCsh[n] = new CshEntityItem(strAliasId,nTopicNum,strUrl);\r
-}\r
-\r
-\r
-function getHash()\r
-{\r
- if (parent && parent != this)\r
- return parent.location.hash;\r
- else\r
- return "";\r
-}\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-\r
-\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-//Find CSH according to hash string after this page\r
-if (getHash().length > 0)\r
-{\r
- // VH 05/16/00 now support \r
- // TopicID=\r
- // TopicNumber=\r
- // RemoteURL= \r
- // and WindowsOptions\r
- // with the format #a=xxx,b=xxx,c=xxx...\r
- var strHashString = getHash().toString();\r
- // change ? to : for remote URL. because java applet have some problem to pass a URL with two : inside the URL so we changed it. \r
- // so here need to change it back.\r
- strHashString = strHashString.substring(1,strHashString.length);\r
- strHashString = strHashString.replace("%072%057%057", "://");\r
- var nTopicNum = GetTopicNumber(strHashString);\r
-\r
- if (nTopicNum != -1)\r
- {\r
- FindTopicByTopicNum(nTopicNum);\r
- }\r
- else\r
- {\r
- if (gstrURL.length > 0) \r
- RedirectTo(gstrURL);\r
- else\r
- RedirectToHomePage();\r
- }\r
-}\r
-else\r
-{\r
- RedirectToHomePage();\r
-}\r
-//-->\r
-</script>\r
-<noscript>\r
- <p> Your browser does not support JavaScript. WebHelp Context-Sensitive Help requires JavaScript support to run.</p>\r
-</noscript>\r
-</body>\r
-</html>\r
-\r
-\r
-\r
-\r
-\r
-\r
+++ /dev/null
-/*=(===============================================================)*/\r
-\r
-/*=(===============================================================)*/\r
-/*=(Created with RoboEditor.)=======================================*/\r
-/*=(===============================================================)*/\r
-\r
-BODY {\r
- background-color: #ffffff;\r
- font-family: "Times New Roman", serif;\r
-}\r
-\r
-H1 {\r
- font-weight: bold;\r
- font-size: 24.0pt;\r
-}\r
-\r
-/*=(Generated Code)=================================================*/\r
-/*=(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)===================*/\r
-/*begin!kadov{{=====================================================*/ \r
-LI.kadov-H1 {\r
- font-weight: bold;\r
- font-size: 24.0pt;\r
-}\r
-/*}}end!kadov=======================================================*/ \r
-\r
-\r
-\r
-H2 {\r
- font-weight: bold;\r
- font-size: 18.0pt;\r
-}\r
-\r
-/*=(Generated Code)=================================================*/\r
-/*=(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)===================*/\r
-/*begin!kadov{{=====================================================*/ \r
-LI.kadov-H2 {\r
- font-weight: bold;\r
- font-size: 18.0pt;\r
-}\r
-/*}}end!kadov=======================================================*/ \r
-\r
-\r
-\r
-H3 {\r
- font-weight: bold;\r
- font-size: 14.0pt;\r
-}\r
-\r
-/*=(Generated Code)=================================================*/\r
-/*=(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)===================*/\r
-/*begin!kadov{{=====================================================*/ \r
-LI.kadov-H3 {\r
- font-weight: bold;\r
- font-size: 14.0pt;\r
-}\r
-/*}}end!kadov=======================================================*/ \r
-\r
-\r
-\r
-H4 {\r
- font-weight: bold;\r
- font-size: 12.0pt;\r
-}\r
-\r
-/*=(Generated Code)=================================================*/\r
-/*=(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)===================*/\r
-/*begin!kadov{{=====================================================*/ \r
-LI.kadov-H4 {\r
- font-weight: bold;\r
- font-size: 12.0pt;\r
-}\r
-/*}}end!kadov=======================================================*/ \r
-\r
-\r
-\r
-H5 {\r
- font-weight: bold;\r
- font-size: 10.0pt;\r
-}\r
-\r
-/*=(Generated Code)=================================================*/\r
-/*=(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)===================*/\r
-/*begin!kadov{{=====================================================*/ \r
-LI.kadov-H5 {\r
- font-weight: bold;\r
- font-size: 10.0pt;\r
-}\r
-/*}}end!kadov=======================================================*/ \r
-\r
-\r
-\r
-H6 {\r
- font-weight: bold;\r
- font-size: 8.0pt;\r
-}\r
-\r
-/*=(Generated Code)=================================================*/\r
-/*=(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)===================*/\r
-/*begin!kadov{{=====================================================*/ \r
-LI.kadov-H6 {\r
- font-weight: bold;\r
- font-size: 8.0pt;\r
-}\r
-/*}}end!kadov=======================================================*/ \r
-\r
-\r
-\r
-P {\r
- font-size: 12.0pt;\r
- margin-top: 0pt;\r
- margin-bottom: 0pt;\r
-}\r
-\r
-/*=(Generated Code)=================================================*/\r
-/*=(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)===================*/\r
-/*begin!kadov{{=====================================================*/ \r
-LI.kadov-P {\r
- font-size: 12.0pt;\r
-}\r
-/*}}end!kadov=======================================================*/ \r
-\r
-\r
-\r
-A.expandspot {\r
- color: #008000;\r
- cursor: hand;\r
- font-style: italic;\r
- x-text-underline: off;\r
- x-text-overline: off;\r
- x-text-line-through: off;\r
- /*begin!kadov{{*/ text-decoration: none none none; /*}}end!kadov*/ \r
-}\r
-\r
-SPAN.expandtext {\r
- font-style: italic;\r
- font-weight: normal;\r
- color: #ff0000;\r
-}\r
-\r
-A.dropspot {\r
- cursor: hand;\r
- color: #008000;\r
- font-style: italic;\r
- x-text-underline: off;\r
- x-text-overline: off;\r
- x-text-line-through: off;\r
- /*begin!kadov{{*/ text-decoration: none none none; /*}}end!kadov*/ \r
-}\r
-\r
-A.glossterm {\r
- color: #800000;\r
- cursor: hand;\r
- font-style: italic;\r
- x-text-underline: off;\r
- x-text-overline: off;\r
- x-text-line-through: off;\r
- /*begin!kadov{{*/ text-decoration: none none none; /*}}end!kadov*/ \r
-}\r
-\r
-SPAN.glosstext {\r
- font-style: italic;\r
- font-weight: normal;\r
- color: #0000ff;\r
-}\r
-\r
-OL,\r
-UL {\r
- margin-top: 0px;\r
- margin-bottom: 0px;\r
-}\r
-\r
-A:active {\r
-}\r
-\r
-A:hover {\r
- x-text-underline: Off;\r
- /*begin!kadov{{*/ text-decoration: none; /*}}end!kadov*/ \r
-}\r
-\r
-A:link {\r
- x-text-underline: Off;\r
- /*begin!kadov{{*/ text-decoration: none; /*}}end!kadov*/ \r
-}\r
-\r
-A:visited {\r
- x-text-underline: Off;\r
- /*begin!kadov{{*/ text-decoration: none; /*}}end!kadov*/ \r
-}\r
-\r
-P.TODO {\r
- font-weight: normal;\r
- font-style: italic;\r
- font-family: "Arial Black", sans-serif;\r
-}\r
-\r
-/*=(Generated Code)=================================================*/\r
-/*=(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)===================*/\r
-/*begin!kadov{{=====================================================*/ \r
-LI.kadov-P-CTODO {\r
- font-weight: normal;\r
- font-style: italic;\r
- font-family: "Arial Black", sans-serif;\r
-}\r
-/*}}end!kadov=======================================================*/ \r
-\r
-\r
-\r
-\r
-/*=(===============================================================)*/\r
+++ /dev/null
-<?xml version="1.0"?>\r
-<sqwebskin version="1.0">\r
- <summary>\r
- <skinname>Default</skinname>\r
- <defaulttab>Contents</defaulttab>\r
- <font>font-family:Arial font-size:8pt font-weight:normal font-style:normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal</font>\r
- <color></color>\r
- </summary>\r
- <panesummary>\r
- <![CDATA[\r
-<frameset rows="32,*" >\r
-<frame name="Custom Toolbar Pane" noresize="yes" scrolling="no" id="3" />\r
-<frameset cols="220,*" frameborder="1" borderspace="0" >\r
-<frameset rows="24,*" >\r
-<frame name="MiniBar Pane" marginwidth="-1" scrolling="no" id="6" />\r
-<frame name="Navigation Pane" id="2" />\r
-</frameset>\r
-<frame name="Topic Pane" frameborder="1" borderspace="1" bordercolor="Gray" marginwidth="-1" marginheight="-1" id="4" />\r
-</frameset>\r
-</frameset>\r
-]]>\r
- </panesummary>\r
- <frameset rows="32,*">\r
- <frame name="Custom Toolbar Pane" noresize="yes" scrolling="no" id="3"/>\r
- <frameset cols="220,*" frameborder="1" borderspace="0">\r
- <frameset rows="24,*">\r
- <frame name="MiniBar Pane" marginwidth="-1" scrolling="no" id="6"/>\r
- <frame name="Navigation Pane" id="2"/>\r
- </frameset>\r
- <frame name="Topic Pane" frameborder="1" borderspace="1" bordercolor="Gray" marginwidth="-1" marginheight="-1" id="4"/>\r
- </frameset>\r
- </frameset>\r
- <pane name="Custom Toolbar Pane">\r
- <image></image>\r
- <color>background:#99ccff</color>\r
- <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Black</font>\r
- <btnselected>\r
- <color>background:#639ace</color>\r
- <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:White</font>\r
- </btnselected>\r
- <alignment>left</alignment>\r
- <toolbaritem mode="BtnWithIcon Mode" type="built-in-content" id="1">\r
- <name>Contents</name>\r
- <text>::??DefaultWebSkinText??::</text>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- <selected>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- </selected>\r
- <style>100</style>\r
- </toolbaritem>\r
- <toolbaritem mode="BtnWithIcon Mode" type="built-in-index" id="2">\r
- <name>Index</name>\r
- <text>::??DefaultWebSkinText??::</text>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- <selected>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- </selected>\r
- <style>100</style>\r
- </toolbaritem>\r
- <toolbaritem mode="BtnWithIcon Mode" type="built-in-search" id="3">\r
- <name>Search</name>\r
- <text>::??DefaultWebSkinText??::</text>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- <selected>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- </selected>\r
- <style>100</style>\r
- </toolbaritem>\r
- <toolbaritem mode="BtnWithIcon Mode" type="built-in-glossary" id="4">\r
- <name>Glossary</name>\r
- <text>::??DefaultWebSkinText??::</text>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- <selected>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- </selected>\r
- <style>100</style>\r
- </toolbaritem>\r
- <toolbaritem mode="BtnWithIcon Mode" type="built-in-websearch" id="5">\r
- <name>WebSearch</name>\r
- <text>::??DefaultWebSkinText??::</text>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- <selected>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- </selected>\r
- <style>100</style>\r
- </toolbaritem>\r
- <toolbaritem mode="Form Mode" type="built-in-form" id="6">\r
- <name>Search Input</name>\r
- <image></image>\r
- <color></color>\r
- <textbox width="20"/>\r
- <title>\r
- <text></text>\r
- </title>\r
- <button mode="default graphic mode">\r
- </button>\r
- </toolbaritem>\r
- <toolbaritem mode="Logo Mode" type="built-in-logo" id="7">\r
- <name>Logo</name>\r
- <image></image>\r
- <author>eHelp Corporation</author>\r
- </toolbaritem>\r
- </pane>\r
- <pane name="MiniBar Pane">\r
- <image></image>\r
- <color>background:#99ccff</color>\r
- <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Black</font>\r
- <btnselected>\r
- <color>background:#639ace</color>\r
- <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:White</font>\r
- </btnselected>\r
- <toolbaritem mode="BtnWithIcon Mode" type="built-in-previous" id="8">\r
- <name>Previous</name>\r
- <text>::??DefaultWebSkinText??::</text>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- <selected>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- </selected>\r
- <style>100</style>\r
- </toolbaritem>\r
- <toolbaritem mode="BtnWithIcon Mode" type="built-in-next" id="9">\r
- <name>Next</name>\r
- <text>::??DefaultWebSkinText??::</text>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- <selected>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- </selected>\r
- <style>100</style>\r
- </toolbaritem>\r
- <toolbaritem mode="BtnWithIcon Mode" type="built-in-synctoc" id="10">\r
- <name>Sync TOC</name>\r
- <text>::??DefaultWebSkinText??::</text>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- <selected>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- </selected>\r
- <style>100</style>\r
- </toolbaritem>\r
- <toolbaritem mode="BtnWithIcon Mode" type="built-in-hide" id="11">\r
- <name>Hide</name>\r
- <text>::??DefaultWebSkinText??::</text>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- <selected>\r
- <color></color>\r
- <image></image>\r
- <icontype>default</icontype>\r
- </selected>\r
- <style>100</style>\r
- </toolbaritem>\r
- </pane>\r
- <pane name="Navigation Pane">\r
- <image></image>\r
- <color></color>\r
- <label>\r
- <image></image>\r
- <color></color>\r
- </label>\r
- <subpane name="Contents">\r
- <image></image>\r
- <color>background:White alink:Silver hover-color:Navy</color>\r
- <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Black</font>\r
- </subpane>\r
- <subpane name="Index">\r
- <image></image>\r
- <color>background:White alink:Silver hover-color:Navy</color>\r
- <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Black</font>\r
- <inputbox>\r
- <image></image>\r
- <color>background:White</color>\r
- <textbox width="0"/>\r
- <title>\r
- <text>::??DefaultWebSkinText??::</text>\r
- <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Navy</font>\r
- </title>\r
- <button mode="none">\r
- </button>\r
- </inputbox>\r
- </subpane>\r
- <subpane name="Search">\r
- <image></image>\r
- <color>background:White alink:Silver hover-color:Navy</color>\r
- <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Black</font>\r
- <inputbox>\r
- <image></image>\r
- <color>background:White</color>\r
- <textbox width="0"/>\r
- <title>\r
- <text>::??DefaultWebSkinText??::</text>\r
- <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Navy</font>\r
- </title>\r
- <button mode="default graphic mode">\r
- </button>\r
- </inputbox>\r
- </subpane>\r
- <subpane name="Glossary">\r
- <image></image>\r
- <color>background:White alink:Silver hover-color:Navy</color>\r
- <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Black</font>\r
- <definitiontext>\r
- <text>::??DefaultWebSkinText??::</text>\r
- <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Navy</font>\r
- <color>background:White</color>\r
- <image></image>\r
- </definitiontext>\r
- <definition>\r
- <text>::??DefaultWebSkinText??::</text>\r
- <color></color>\r
- <image></image>\r
- </definition>\r
- <termtext>\r
- <text>::??DefaultWebSkinText??::</text>\r
- <font>font-family:Tahoma font-size:8pt font-weight:Normal font-style:Normal text-decoration:none font-sizeadjust:none font-stretch:normal font-variant:normal font-color:Navy</font>\r
- <color>background:White</color>\r
- <image></image>\r
- </termtext>\r
- <term>\r
- <text>::??DefaultWebSkinText??::</text>\r
- <color></color>\r
- <image></image>\r
- </term>\r
- </subpane>\r
- </pane>\r
- <pane name="Topic Pane">\r
- <in-topic-navbar>\r
- <alignment>none</alignment>\r
- </in-topic-navbar>\r
- </pane>\r
-</sqwebskin>\r
+++ /dev/null
-BODY { \r
- background-color:#ffffff; \r
- font-family:"Times New Roman" , serif; }\r
-H1 { \r
- font-weight:bold; \r
- font-size:24.0pt; \r
- font-family:"Times New Roman" , serif; }\r
-LI.kadov-H1 { \r
- font-weight:bold; \r
- font-size:24.0pt; }\r
-H2 { \r
- font-weight:bold; \r
- font-size:18.0pt; \r
- font-family:"Times New Roman" , serif; }\r
-LI.kadov-H2 { \r
- font-weight:bold; \r
- font-size:18.0pt; }\r
-H3 { \r
- font-weight:bold; \r
- font-size:14.0pt; \r
- font-family:"Times New Roman" , serif; }\r
-LI.kadov-H3 { \r
- font-weight:bold; \r
- font-size:14.0pt; }\r
-H4 { \r
- font-weight:bold; \r
- font-size:12.0pt; \r
- font-family:"Times New Roman" , serif; }\r
-LI.kadov-H4 { \r
- font-weight:bold; \r
- font-size:12.0pt; }\r
-H5 { \r
- font-weight:bold; \r
- font-size:10.0pt; \r
- font-family:"Times New Roman" , serif; }\r
-LI.kadov-H5 { \r
- font-weight:bold; \r
- font-size:10.0pt; }\r
-H6 { \r
- font-weight:bold; \r
- font-size:8.0pt; \r
- font-family:"Times New Roman" , serif; }\r
-LI.kadov-H6 { \r
- font-weight:bold; \r
- font-size:8.0pt; }\r
-P { \r
- font-size:12.0pt; \r
- margin-top:1; \r
- margin-bottom:1; \r
- font-family:"Times New Roman" , serif; }\r
-LI.kadov-P { \r
- font-size:12.0pt; }\r
-A.expandspot { \r
- color:#008000; \r
- cursor:hand; \r
- font-style:italic; \r
- x-text-underline:off; \r
- x-text-overline:off; \r
- x-text-line-through:off; \r
- text-decoration:none none none; }\r
-SPAN.expandtext { \r
- font-style:italic; \r
- font-weight:normal; \r
- color:#ff0000; }\r
-A.dropspot { \r
- cursor:hand; \r
- color:#008000; \r
- font-style:italic; \r
- x-text-underline:off; \r
- x-text-overline:off; \r
- x-text-line-through:off; \r
- text-decoration:none none none; }\r
-A.glossterm { \r
- color:#800000; \r
- cursor:hand; \r
- font-style:italic; \r
- x-text-underline:off; \r
- x-text-overline:off; \r
- x-text-line-through:off; \r
- text-decoration:none none none; }\r
-SPAN.glosstext { \r
- font-style:italic; \r
- font-weight:normal; \r
- color:#0000ff; }\r
-OL { \r
- margin-top:0px; \r
- margin-bottom:0px; \r
- font-family:"Times New Roman" , serif; }\r
-UL { \r
- margin-top:0px; \r
- margin-bottom:0px; \r
- font-family:"Times New Roman" , serif; }\r
-A:active { }\r
-A:hover { \r
- x-text-underline:Off; \r
- text-decoration:none; }\r
-A:link { \r
- x-text-underline:Off; \r
- text-decoration:none; }\r
-A:visited { \r
- x-text-underline:Off; \r
- text-decoration:none; }\r
-P.TODO { \r
- font-weight:normal; \r
- font-style:italic; \r
- font-family:"Arial Black" , sans-serif; }\r
-LI.kadov-P-CTODO { \r
- font-weight:normal; \r
- font-style:italic; \r
- font-family:"Arial Black" , sans-serif; }\r
-ol ol { \r
- margin-top:1; \r
- margin-bottom:1; }\r
-ol ul { \r
- margin-top:1; \r
- margin-bottom:1; }\r
-ul ul { \r
- margin-top:1; \r
- margin-bottom:1; }\r
-ul ol { \r
- margin-top:1; \r
- margin-bottom:1; }\r
+++ /dev/null
-// eHelp® Corporation Dynamic HTML JavaScript \r
-// Copyright© 1998-2001 eHelp® Corporation.All rights reserved.\r
-// Version=4.57\r
-\r
-// Warning:Do not modify this file.It is generated by RoboHELP® and changes will be overwritten.\r
-\r
-//// Segment Begin -- (JavaScript 1.0)\r
-\r
-/// Section Begin - General and relative topics(JavaScript 1.0)\r
-\r
-//{{HH_SYMBOL_SECTION\r
-var HH_ChmFilename = "";\r
-var HH_WindowName = "";\r
-var HH_GlossaryFont = "";\r
-var HH_Glossary = "";\r
-var HH_Avenue = "";\r
-var HH_ActiveX = false;\r
-//}}HH_SYMBOL_SECTION\r
-\r
-//Begin to support previous generic parameters\r
-//Get the information about the browser.\r
-var gstrBsAgent = navigator.userAgent.toLowerCase();\r
-var gnBsVer = parseInt(navigator.appVersion);\r
-\r
-var gbBsIE = (gstrBsAgent.indexOf('msie') != -1);\r
-var gbBsNS = (gstrBsAgent.indexOf('mozilla') != -1) && ((gstrBsAgent.indexOf('spoofer') == -1) && (gstrBsAgent.indexOf('compatible') == -1));\r
-var gbBsOpera = (gstrBsAgent.indexOf('opera') != -1);\r
-\r
-var gbBsIE3Before = ((gbBsIE) && (gnBsVer <= 2));\r
-var gbBsNS3Before = ((gbBsNS) && (gnBsVer <= 3));\r
-\r
-var gbBsNS2 = ((gbBsNS) && (gnBsVer <= 2));\r
-var gbBsNS3 = ((gbBsNS) && (gnBsVer == 3));\r
-var gbBsIE300301 = ((gbBsIE) && (gnBsVer == 2) && ((gstrBsAgent.indexOf("3.00") != -1)||(gstrBsAgent.indexOf("3.0a") != -1)||(gstrBsAgent.indexOf("3.0b")!=-1)||(gstrBsAgent.indexOf("3.01")!=-1)));\r
-var gbBsIE302 = ((gbBsIE) && (gnBsVer == 2) && (gstrBsAgent.indexOf("3.02") != -1));\r
-\r
-var gbBsNS4 = ((gbBsNS) && (gnBsVer >= 4));\r
-var gbBsNS6 = ((gbBsNS) && (gnBsVer >= 5));\r
-\r
-var gbBsIE4 = ((gbBsIE) && (gnBsVer >= 4));\r
-var gbBsIE5 = false;\r
-var gbBsIE55 = false;\r
-\r
-gbBsIE = (navigator.appName.indexOf("Microsoft") != -1);\r
-\r
-if (parseInt(navigator.appVersion) >= 4) {\r
- gbBsIE4 = (navigator.appName.indexOf("Microsoft") != -1);\r
-\r
- if (gbBsIE4) {\r
- var nPos = gstrBsAgent.indexOf("msie");\r
- var strIEversion = gstrBsAgent.substring(nPos + 5);\r
- var nVersion = parseFloat(strIEversion);\r
- if (nVersion >= 5)\r
- gbBsIE5 = true;\r
- if (nVersion >= 5.5)\r
- gbBsIE55 = true;\r
- }\r
-}\r
-\r
-var gbBsMac = (gstrBsAgent.indexOf('mac') != -1);\r
-var gbBsWindows = ((gstrBsAgent.indexOf('win') != -1) || (gstrBsAgent.indexOf('16bit') != -1));\r
-var gbBsOp3 = (gstrBsAgent.indexOf('opera') != -1);\r
-\r
-// Utilities functions.\r
-function BsscHasExtJs()\r
-{\r
- if( gbBsIE3Before || gbBsNS3Before)\r
- return false;\r
- return true;\r
-}\r
-\r
-// Register event handler\r
-var gBsOnLoads = new Array(); // An array holds all the onload event handler.\r
-var gBsOnClicks = new Array(); // An array holds all the onClick event handler.\r
-var gBsOnUnLoads = new Array(); // An array holds all the OnUnLoad event handler.\r
-var gBsOnMouseOvers = new Array(); // An array holds all the OnMouseOver event handler.\r
-var gBsOnMouseOuts = new Array(); // An array holds all the OnMouseOut event handler.\r
-\r
-var gbOrignalOnMouseDown = null;\r
-\r
-function BsscRegisterOnLoad(funcHandler)\r
-{\r
- var nLength = gBsOnLoads.length;\r
- gBsOnLoads[nLength] = funcHandler;\r
-}\r
-\r
-function BsscRegisterOnClick(funcHandler)\r
-{\r
- var nLength = gBsOnClicks.length;\r
- gBsOnClicks[nLength] = funcHandler;\r
-}\r
-\r
-function BsscRegisterOnUnLoad(funcHandler)\r
-{\r
- var nLength = gBsOnUnLoads.length;\r
- gBsOnUnLoads[nLength] = funcHandler;\r
-}\r
-\r
-function BsscRegisterOnMouseOver(funcHandler)\r
-{\r
- var nLength = gBsOnMouseOvers.length;\r
- gBsOnMouseOvers[nLength] = funcHandler;\r
-}\r
-\r
-function BsscRegisterOnMouseOut(funcHandler)\r
-{\r
- var nLength = gBsOnMouseOuts.length;\r
- gBsOnMouseOuts[nLength] = funcHandler;\r
-}\r
-\r
-\r
-function BsGeneralOnLoad()\r
-{\r
- if (!gbBsIE4 && !gbBsNS4)\r
- return;\r
-\r
- // Make everything visible in navigator\r
- if (gbBsNS4 && !gbBsNS6) {\r
- // Make some special effects items visible\r
- for (var iLayer = 0; iLayer < document.layers.length; iLayer++) {\r
- document.layers[iLayer].visibility = "show";\r
- document.layers[iLayer].left = 0;\r
- }\r
- }\r
-}\r
-\r
-// If resize the netscape browser, need to reload it.\r
-function BsReDo()\r
-{\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-// End of the local functions.\r
-\r
-// The following functions are used by the html files.\r
-function BSSCOnLoad()\r
-{\r
- if( !BsscHasExtJs() )\r
- return;\r
- for (var nElement = gBsOnLoads.length - 1; nElement >= 0; nElement--)\r
- gBsOnLoads[nElement]();\r
-}\r
-\r
-function BSSCOnClick()\r
-{\r
- if (!BsscHasExtJs()) return;\r
- \r
- for (var nElement = gBsOnClicks.length - 1; nElement >= 0; nElement--)\r
- gBsOnClicks[nElement]();\r
-}\r
-\r
-function BSSCOnUnload()\r
-{\r
- if (!BsscHasExtJs()) return;\r
- for (var nElement = gBsOnUnLoads.length - 1; nElement >= 0; nElement--)\r
- {\r
- gBsOnUnLoads[nElement]();\r
- }\r
-}\r
-\r
-function BSSCOnMouseOver()\r
-{\r
- if (!BsscHasExtJs()) return;\r
- for (var nElement = gBsOnMouseOvers.length - 1; nElement >= 0; nElement--)\r
- {\r
- gBsOnMouseOvers[nElement]();\r
- }\r
-}\r
-\r
-function BSSCOnMouseOut()\r
-{\r
- if (!BsscHasExtJs()) return;\r
- for (var nElement = gBsOnMouseOuts.length - 1; nElement >= 0; nElement--)\r
- {\r
- gBsOnMouseOuts[nElement]();\r
- }\r
-}\r
-// End of invocation of the event handle functions.\r
-\r
-\r
-// Add the GereralOnLoad to the onload array.\r
-if (typeof(BsscRegisterOnLoad) != "undefined")\r
-{\r
- BsscRegisterOnLoad(BsGeneralOnLoad);\r
-}\r
-if (gbBsNS4&&!gbBsNS6) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = BsReDo;\r
-}\r
-//End to support previous generic parameters\r
-\r
-//Begin to support previous HHActiveX invoking\r
-function BsHHActivateComponents()\r
-{\r
- if( HH_ActiveX && (HH_ChmFilename != "") && ((self == top) || (self == top.frames[0])))\r
- {\r
- var objBody = document.all.tags("BODY")[0];\r
- if( typeof(objBody) == "object" )\r
- {\r
- objBody.insertAdjacentHTML("beforeEnd", '<OBJECT ID="HHComponentActivator" CLASSID="CLSID:399CB6C4-7312-11D2-B4D9-00105A0422DF" width=0 height=0></OBJECT>');\r
- if (HHComponentActivator.object)\r
- HHComponentActivator.Activate(HH_ChmFilename, HH_WindowName, HH_GlossaryFont, HH_Glossary, HH_Avenue);\r
- }\r
- }\r
-}\r
-\r
-function BsHHActivXOnLoad()\r
-{ \r
- if( gbBsIE4 )\r
- BsHHActivateComponents(); \r
-}\r
-\r
-if( typeof(BsscRegisterOnLoad) != "undefined" )\r
-{\r
- BsscRegisterOnLoad(BsHHActivXOnLoad);\r
-}\r
-//End to support previous HHActiveX invoking\r
-\r
-//Begin to support previous relative topics\r
-//If webHelp needs Related Topics DHTMLcode, it's supposed to add it here\r
-var gbPopupMenuTimeoutExpired = false;\r
-var gbInPopupMenu = false;\r
-var gbPopupMenuTopicList = null;\r
-var gOlddocumentClick = null;\r
-\r
-//////////////////////////////////////////////////////////////////////////////////////////\r
-//\r
-// Popup Menu code\r
-//\r
-//////////////////////////////////////////////////////////////////////////////////////////\r
-\r
-var g_bIsPopupMenuInit = false;\r
-function _WritePopupMenuLayer()\r
-{\r
- if (!g_bIsPopupMenuInit)\r
- {\r
- if (gbBsNS4) {\r
-//Do not try to write ininle styles for NS! NS can not handle it and will not stop downloading the html page...\r
- if (gbBsNS6)\r
- document.write("<DIV ID='PopupMenu' STYLE='position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;'></DIV>");\r
- else\r
- document.write("<DIV CLASS='WebHelpPopupMenu' ID='PopupMenu'></DIV>");\r
- } else{\r
- document.write("<DIV ID='PopupMenu' STYLE='position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;'></DIV>");\r
- if (gbBsIE4) {\r
- document.write("<STYLE TYPE='text/css'>");\r
- if (gbBsMac) {\r
- document.write(".PopupOver {font-family:'Arial'; color:white; background:navy; font-size:10pt; font-style:normal;font-weight:normal;text-decoration:none;}");\r
- document.write(".PopupNotOver {font-family:'Arial'; color:black; background:#c0c0c0; font-size:10pt; font-style:normal;font-weight:normal;text-decoration:none;}");\r
- } else {\r
- document.write(".PopupOver {font-family:'Arial'; color:white; background:navy; font-size:8pt; font-style:normal;font-weight:normal;text-decoration:none;}");\r
- document.write(".PopupNotOver {font-family:'Arial'; color:black; background:#c0c0c0; font-size:8pt; font-style:normal;font-weight:normal;text-decoration:none;}");\r
- }\r
- document.write("</STYLE>");\r
- }\r
- }\r
- g_bIsPopupMenuInit = true;\r
- }\r
-}\r
-\r
-//Define variable arguments as: strTitle, strUrl\r
-function MTE() \r
-{\r
- this.strTitle = MTE.arguments[0];\r
- if (MTE.arguments.length > 1)\r
- this.strURL = MTE.arguments[1];\r
- else\r
- this.strURL = this.strTitle;\r
-}\r
-\r
-// If the topic list is set, it is an array of TopicEntry objects (defined in WebHelp3.js)\r
-function PopupMenu_SetTopicList(aPopupTopicArray)\r
-{\r
- gbPopupMenuTopicList = aPopupTopicArray;\r
-}\r
-\r
-\r
-//Seek for the bsscright frame \r
-function _SeekFrameByName( cRoot, strName )\r
-{\r
- if( cRoot == null ) return null;\r
- if( cRoot.frames == null ) return null;\r
- if( cRoot.frames[strName] != null ) return cRoot.frames[strName];\r
- for (var i=0; i<cRoot.frames.length; i++)\r
- {\r
- var cObj = null;\r
- if (!gbBsNS6) \r
- cObj = _SeekFrameByName( cRoot.frames(i).document, strName );\r
- else\r
- cObj = _SeekFrameByName( cRoot.frames[i], strName );\r
- if( cObj != null ) return cObj;\r
- };\r
- return null;\r
-}\r
-function _GetFrameByName( cRoot, strName )\r
-{\r
- if( cRoot == null ) return null;\r
- var cRet = _SeekFrameByName(cRoot, strName);\r
- if( cRet != null ) return cRet;\r
- if (cRoot.parent != cRoot)\r
- return _GetFrameByName( cRoot.parent, strName );\r
- else\r
- return null;\r
-}\r
-\r
-function _PopupMenu_Invoke(fn_arguments)\r
-{\r
- // Make sure we have reasonable arguments\r
- var argLen = fn_arguments.length;\r
- if (argLen < 3) {\r
- return false;\r
- }\r
-\r
- // Check to see if we only have one target\r
- var strTarget = "";\r
- var targetDoc = null;\r
- if (fn_arguments[1] == '') {\r
- if (BSSCPopup_IsPopup()) {\r
- targetDoc = parent;\r
- strTarget = "TARGET= _parent";\r
- }\r
- else\r
- targetDoc = window.document;\r
- } else {\r
- targetDoc = _GetFrameByName( parent, fn_arguments[1] );\r
-\r
- strTarget = "TARGET='" + fn_arguments[1] + "'";\r
- }\r
-\r
- if ((!gbBsIE4 && !gbBsNS4) || ((gbBsMac) && (gbBsIE4) && (window.event.srcElement.tagName == "AREA"))) {\r
- \r
- var argLen = fn_arguments.length;\r
-\r
- // Create the window that the hyperlinks will go into\r
- var nHeight = argLen * 15;\r
- var nWidth = 400;\r
- var strParam = "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=auto";\r
- strParam += ",height=" + nHeight + ",width=200";\r
- strParam += ",resizable";\r
-\r
- // Create a temporary window first to ensure the real popup comes up on top\r
- var wndTemp = window.open("", "temp", strParam);\r
-\r
- // Create the real popup window\r
- var wndPopupLinks = window.open("", "popuplinks", strParam);\r
-\r
- // Close the temporary\r
- wndTemp.close();\r
-\r
- wndPopupLinks.document.open("text/html");\r
- wndPopupLinks.document.write("<html><head></head>");\r
- wndPopupLinks.document.write("<body onBlur=\'self.focus();\'>");\r
- var strParaLine = "";\r
- for (var i = 0; i < (argLen - 2) / 2; i++) {\r
- strParaLine = "";\r
- strParaLine += "<a href=\"javascript:";\r
- if (gbBsIE) {\r
- strParaLine += "onBlur=null; ";\r
- }\r
- strParaLine += "opener.location=\'";\r
- strParaLine += fn_arguments[2 * i + 3];\r
- strParaLine += "\';close();\"";\r
- strParaLine += strTarget;\r
-\r
- strParaLine += ">";\r
- strParaLine += fn_arguments[2 * i + 2];\r
- strParaLine += "</a>";\r
- strParaLine += "<br>";\r
- wndPopupLinks.document.write(strParaLine);\r
- }\r
- wndPopupLinks.document.write("</body></html>");\r
- wndPopupLinks.document.close();\r
- window.gbInPopupMenu = true;\r
- if (!gbBsIE) {\r
- wndPopupLinks.focus();\r
- }\r
-\r
- return false;\r
- }\r
-\r
-\r
- if (((argLen < 5) && ((isNaN(fn_arguments[2])) || (gbPopupMenuTopicList == null))) ||\r
- ((argLen < 4) && ((!isNaN(fn_arguments[2])) && (gbPopupMenuTopicList != null)))) {\r
- // Get the place that we will be putting the topic into\r
- var strURL = "";\r
- if (isNaN(fn_arguments[2]) || (gbPopupMenuTopicList == null)) {\r
- strURL = fn_arguments[3];\r
- }\r
- else {\r
- strURL = gbPopupMenuTopicList[fn_arguments[2]].strURL;\r
- }\r
-\r
- if (targetDoc != null) {\r
- targetDoc.location.href = strURL;\r
- }\r
- else {\r
- if (fn_arguments[1] != null && typeof(fn_arguments[1]) != "undefined")\r
- window.open(strURL, fn_arguments[1]);\r
- else\r
- window.open(strURL);\r
- } \r
- window.gbInPopupMenu = true;\r
- return false;\r
- }\r
- \r
- var strMenu = "";\r
- if (gbBsNS4) {\r
- strMenu = '<TABLE BORDER="1" CELLSPACING=0 CELLPADDING=3 BGCOLOR="#c0c0c0">';\r
- } else {\r
- strMenu = '<TABLE STYLE="border:2px outset white;" CELLSPACING=0';\r
- if (gbBsMac) {\r
- strMenu += ' CELLPADDING=4';\r
- } else {\r
- strMenu += ' CELLPADDING=2';\r
- } \r
- strMenu += ' BGCOLOR=#c0c0c0>';\r
- }\r
- // Add each of the items\r
- var i = 2;\r
- while (i <= argLen - 1) {\r
- strMenu += '<TR><TD><NOBR>'\r
- // If the destination is a number then look it up in the topic list\r
- if (isNaN(fn_arguments[i]) || (gbPopupMenuTopicList == null)) {\r
- strMenu += '<DIV STYLE="padding-left:3pt; padding-right:3pt;"><A HREF="' + fn_arguments[i + 1] + '"' + strTarget;\r
- } else {\r
- strMenu += '<DIV STYLE="padding-left:3pt; padding-right:3pt;"><A HREF="' + gbPopupMenuTopicList[fn_arguments[i]].strURL + '"' + strTarget;\r
- }\r
- strMenu += ' onclick="PopupMenu_HandleClick(event);"';\r
- strMenu += ' onmouseover="PopupMenu_Over(event);"';\r
- strMenu += ' onmouseout="PopupMenu_Out(event);"';\r
- strMenu += '>';\r
- if (isNaN(fn_arguments[i]) || (gbPopupMenuTopicList == null)) {\r
- strMenu += '<SPAN CLASS="PopupNotOver">' + fn_arguments[i] + '</SPAN>';\r
- } else {\r
- strMenu += '<SPAN CLASS="PopupNotOver">' + gbPopupMenuTopicList[fn_arguments[i]].strTitle + '</SPAN>';\r
- }\r
- strMenu += '</A></DIV></NOBR></TD></TR>';\r
-\r
- if (isNaN(fn_arguments[i]) || (gbPopupMenuTopicList == null)) {\r
- i += 2;\r
- } else {\r
- i += 1;\r
- }\r
- }\r
- strMenu += "</TABLE>";\r
-\r
- if (gbBsMac) {\r
- // totally hack. because ie5 in mac need something. </TABLE> is one of them. mac is mad.\r
- strMenu +="<TABLE></TABLE>";\r
- }\r
-\r
- var layerPopup = null;\r
- var stylePopup = null;\r
- var nEventX = 0;\r
- var nEventY = 0;\r
- var nWindowWidth = 0;\r
- if (gbBsIE4) {\r
-\r
- layerPopup = document.all["PopupMenu"];\r
- layerPopup.innerHTML = strMenu;\r
- stylePopup = layerPopup.style;\r
-\r
- _BSPSGetClientSize();\r
-\r
- // Get the position of the item causing the event (relative to its parent)\r
- nEventX = window.event.clientX;\r
- nEventY = window.event.clientY;\r
-\r
- if (nEventY + layerPopup.scrollHeight + 10 < gBsClientHeight) {\r
- nEventY += document.body.scrollTop + 10;\r
- } else {\r
- nEventY = (document.body.scrollTop + gBsClientHeight) - layerPopup.scrollHeight - 20;\r
- }\r
- stylePopup.top = nEventY;\r
- \r
- var nPopupWidth = layerPopup.scrollWidth;\r
- if (gbBsMac) {\r
- nPopupWidth = 80; // we have no idea how to get the dynamic width of the popup.\r
- }\r
- if (nEventX + nPopupWidth + 20 > gBsClientWidth) {\r
- if (gBsClientWidth - nPopupWidth < 5) {\r
- stylePopup.left = 5;\r
- } else {\r
- stylePopup.left = gBsClientWidth - nPopupWidth - 5;\r
- }\r
- } else {\r
- stylePopup.left = nEventX + document.body.scrollLeft + 20;\r
- }\r
-\r
- stylePopup.visibility = "visible";\r
- if (!gOlddocumentClick && document.onclick)\r
- gOlddocumentClick = document.onclick;\r
- document.onclick = PopupMenu_HandleClick;\r
-\r
- } else if (gbBsNS6) {\r
- layerPopup = document.getElementById("PopupMenu");\r
- layerPopup.style.visibility = "hidden";\r
- \r
- var e = fn_arguments[0];\r
- nEventX = e.pageX;\r
- nEventY = e.pageY;\r
- _BSPSGetClientSize();\r
- layerPopup.innerHTML = strMenu;\r
-\r
- if (nEventY + layerPopup.offsetHeight + 20 < window.pageYOffset + gBsClientHeight) {\r
- nEventY += 20;\r
- } else {\r
- nEventY = gBsClientHeight + window.pageYOffset - layerPopup.offsetHeight - 20;\r
- }\r
-\r
- if (nEventX + layerPopup.offsetWidth + 20 > gBsClientWidth + window.pageXOffset) {\r
- if (gBsClientWidth + window.pageXOffset - layerPopup.offsetWidth < 20) {\r
- nEventX = 5;\r
- } else {\r
- nEventX = gBsClientWidth + window.pageXOffset - layerPopup.offsetWidth - 20;\r
- }\r
- } else {\r
- nEventX += 20;\r
- }\r
- layerPopup.style.top = nEventY;\r
- layerPopup.style.left = nEventX;\r
- // set again to avoid the stupid frash in netscape 6.\r
- layerPopup.innerHTML = strMenu;\r
- layerPopup.style.visibility = "visible";\r
- //window.captureEvents(Event.MOUSEDOWN);\r
- if (!gOlddocumentClick && document.onclick)\r
- gOlddocumentClick = document.onclick;\r
- window.onclick = PopupMenu_HandleClick;\r
- }\r
- else if (gbBsNS4) {\r
- layerPopup = document.layers.PopupMenu;\r
- layerPopup.visibility = "hide";\r
- stylePopup = layerPopup.document;\r
- stylePopup.write(strMenu);\r
- stylePopup.close();\r
- var e = fn_arguments[0];\r
- nEventX = e.pageX;\r
- nEventY = e.pageY;\r
- _BSPSGetClientSize();\r
- if (nEventY + layerPopup.clip.height + 20 < window.pageYOffset + gBsClientHeight) {\r
- nEventY += 20;\r
- } else {\r
- nEventY = gBsClientHeight + window.pageYOffset- layerPopup.clip.height - 20;\r
- }\r
- layerPopup.top = nEventY;\r
-\r
- if (nEventX + layerPopup.clip.width + 20 > gBsClientWidth + window.pageXOffset) {\r
- if (gBsClientWidth + window.pageXOffset - layerPopup.clip.width < 20) {\r
- nEventX = 5;\r
- } else {\r
- nEventX = gBsClientWidth + window.pageXOffset - layerPopup.clip.width - 20;\r
- }\r
- } else {\r
- nEventX += 20;\r
- }\r
-\r
- layerPopup.left = nEventX;\r
-\r
- layerPopup.visibility = "show";\r
-\r
- window.captureEvents(Event.MOUSEDOWN);\r
- if (!gOlddocumentClick && document.onmousedown)\r
- gOlddocumentClick = document.onmousedown;\r
- window.onmousedown = PopupMenu_HandleClick;\r
- }\r
-\r
- window.gbInPopupMenu = true;\r
- window.gbPopupMenuTimeoutExpired = false;\r
- setTimeout("PopupMenu_Timeout();", 100);\r
- return false;\r
-}\r
-\r
-\r
-function PopupMenu_Timeout()\r
-{\r
- window.gbPopupMenuTimeoutExpired = true;\r
-}\r
-\r
-function PopupMenu_Over(e)\r
-{\r
- if (gbBsIE4) {\r
- e.srcElement.className = "PopupOver";\r
- } else if (gbBsNS4) {\r
-// this.bgColor = "red";\r
-// e.target.document.className = "PopupOver";\r
- }\r
- return;\r
-}\r
-\r
-function PopupMenu_Out(e)\r
-{\r
- if (gbBsIE4) {\r
- e.srcElement.className = "PopupNotOver";\r
- } else if (gbBsNS4) {\r
- this.bgColor = "#f0f0f0";\r
- }\r
- return;\r
-}\r
-\r
-\r
-function PopupMenu_HandleClick(e)\r
-{\r
- if (window.gbPopupMenuTimeoutExpired) {\r
-\r
- window.gbInPopupMenu = false;\r
-\r
- if (gbBsNS4 && !gbBsNS6) {\r
- window.releaseEvents(Event.MOUSEDOWN);\r
- }\r
-\r
- var layerPopup = null;\r
- var stylePopup = null;\r
- if (gbBsIE4) {\r
- layerPopup = document.all["PopupMenu"];\r
- stylePopup = layerPopup.style;\r
- stylePopup.visibility = "hidden";\r
- } else if (gbBsNS6) {\r
- layerPopup = document.getElementById("PopupMenu");\r
- layerPopup.style.visibility = "hidden";\r
- } else if (gbBsNS4) {\r
- layerPopup = document.layers.PopupMenu;\r
- layerPopup.visibility = "hide";\r
- }\r
- \r
- if (gOlddocumentClick)\r
- {\r
- if (gbBsNS4 && !gbBsNS6)\r
- document.onmousedown = gOlddocumentClick;\r
- else\r
- document.onclick = gOlddocumentClick;\r
- }\r
- }\r
- return;\r
-}\r
-\r
-// This function should be deleted when all old projects are cleaned up\r
-function BSPSWritePopupFrameForIE4()\r
-{\r
- return false;\r
-}\r
-\r
-/////////////////////////////////////////////////////////////////////\r
-function BSSCPopup_ClickMac()\r
-{\r
- if ((!DHTMLPopupSupport()) && (gbBsIE4))\r
- { \r
- var bClickOnAnchor = false;\r
- var el;\r
- if ((window.event != null) &&\r
- (window.event.srcElement != null))\r
- {\r
- el = window.event.srcElement;\r
- while (el != null)\r
- {\r
- if ((el.tagName == "A") || (el.tagName == "AREA")) {\r
- bClickOnAnchor = true;\r
- break;\r
- }\r
- if (el.tagName == "BODY") {\r
- break;\r
- }\r
- el = el.parentElement;\r
- }\r
- }\r
- if (BSSCPopup_IsPopup())\r
- {\r
- if (!bClickOnAnchor) {\r
- parent.window.gPopupWindow = null;\r
- self.close();\r
- }\r
- }\r
- else\r
- {\r
- bClosePopupWindow = true;\r
- if ((bClickOnAnchor) &&\r
- (el.href) &&\r
- ((el.href.indexOf("javascript:BSSCPopup") != -1) || (el.href.indexOf("javascript:null") != -1) || (el.href.indexOf("javascript:void(0)") != -1)))\r
- {\r
- bClosePopupWindow = false;\r
- }\r
- if (bClosePopupWindow)\r
- {\r
- if (window.gPopupWindow != null && !window.gPopupWindow.closed )\r
- {\r
- window.gPopupWindow.close();\r
- }\r
- }\r
- }\r
- }\r
- }\r
-\r
-//////////////////////////////////////////////////////////////////////\r
-\r
-function BsPopupOnClick()\r
-{\r
- if (!gbBsIE4)\r
- return;\r
-\r
- BSSCPopup_ClickMac();\r
-}\r
-\r
-function _BSSCOnError(message)\r
-{\r
- if(-1 != message.indexOf("denied") \r
- || -1 != message.indexOf("Object required"))\r
- return true;\r
-}\r
-\r
-//End to support previous relative topics\r
-\r
-\r
-/// Section End - General and relative topics (JavaScript 1.0)\r
-\r
-/// Section Begin - Popup (JavaScript 1.0)\r
-\r
-//Begin to support previous popup functions\r
-//////////////////////////////////////////////////////////////////////////////////////////////\r
-//\r
-// Begin DHTML Popup Functions\r
-//\r
-//////////////////////////////////////////////////////////////////////////////////////////////\r
-//variables used to isolate the browser type\r
-var gBsDoc = null; \r
-var gBsSty = null;\r
-var gBsHtm = null;\r
-var gBsStyVisShow = null;\r
-var gBsStyVisHide = null;\r
-var gBsClientWidth = 640;\r
-var gBsClientHeight = 480;\r
-var gBsBrowser = null;\r
-\r
-// here is the varible for judge popup windows size. these parameter is for IE5.0, it may need adjust for others.\r
-var gBRateH_W = 0.618; // 1.618 Golden cut.\r
-var gBMaxXOfParent = 0.8; \r
-var gBMaxYOfParent = 0.8;\r
-var gBscrollHeight = 16;\r
-var gBscrollWidth = 16;\r
-var gBpermitXDelta = 3;\r
-var gBpermitYDelta = 3;\r
-\r
-\r
-var arrayPopupURL = new Array();\r
-var arrayAbsPopupURL = new Array();\r
-\r
-var arrayDirty = new Array();\r
-\r
-function setAbsPopupURL(nIndex, strURL)\r
-{\r
- arrayAbsPopupURL[nIndex] = strURL;\r
-}\r
-\r
-function getAbsPopupURL(nIndex)\r
-{\r
- if (nIndex == -1 || arrayAbsPopupURL.length <= nIndex) return null;\r
- else \r
- return arrayAbsPopupURL[nIndex];\r
-}\r
-\r
-function getPopupURL(nIndex)\r
-{\r
- if (nIndex == -1 || arrayPopupURL.length <= nIndex) return null;\r
- else \r
- return arrayPopupURL[nIndex];\r
-}\r
-\r
-function getPopupID(nIndex)\r
-{\r
- return gstrPopupID + nIndex;\r
-}\r
-\r
-function getPopupShadowID(nIndex)\r
-{\r
- return gstrPopupShadowID + nIndex;\r
-}\r
-\r
-function getPopupTopicID(nIndex)\r
-{\r
- return gstrPopupTopicID + nIndex;\r
-}\r
-\r
-function getPopupIFrameID(nIndex)\r
-{\r
- return gstrPopupIFrameID + nIndex;\r
-}\r
-\r
-function getPopupIFrameName(nIndex)\r
-{\r
- return gstrPopupIFrameName + nIndex;\r
-}\r
-\r
-\r
-function getPopupTopicStyle(nIndex)\r
-{\r
- return eval("document.all['" + getPopupTopicID(nIndex) + "']").style;\r
-}\r
-\r
-function getPopupShadowStyle(nIndex)\r
-{\r
- return eval("document.all['" + getPopupShadowID(nIndex) + "']").style;\r
-}\r
-\r
-function getPopupIFrame(nIndex)\r
-{\r
-\r
- return eval("document.frames['" + getPopupIFrameName(nIndex) + "']");\r
-}\r
-\r
-function getPopupDivStyle(nIndex)\r
-{\r
- return eval("document.all['" + getPopupID(nIndex) + "']").style;\r
-}\r
-\r
-function getPopupIFrameStyle(nIndex)\r
-{\r
- return eval("document.all['" + getPopupIFrameName(nIndex) + "'].style");\r
-}\r
-\r
-\r
-function findDiv(strURL)\r
-{\r
- var i = 0;\r
- for (i = 0; i < arrayPopupURL.length; i ++ ) {\r
- if (arrayPopupURL[i] == strURL) {\r
- return i;\r
- }\r
- }\r
- return -1;\r
-}\r
-\r
-var gnToken = -1;\r
-function takeToken()\r
-{\r
- gnToken ++;\r
- if (gnToken > 10000) gnToken = 0;\r
- return gnToken;\r
-}\r
-\r
-function IsValidToken(nToken)\r
-{\r
- return (gnToken == nToken);\r
-}\r
-\r
-function addDiv(strURL)\r
-{\r
- var i = 0; \r
- for (i = 0; i < arrayPopupURL.length; i ++) {\r
- if (arrayPopupURL[i] == null) {\r
- arrayPopupURL[i] = strURL;\r
- return i;\r
- }\r
- } \r
- arrayPopupURL[i] = strURL;\r
- arrayDirty[i] = true;\r
- return i;\r
-}\r
-\r
-function setDirty()\r
-{\r
- var i = 0;\r
- for (i = 0; i < arrayPopupURL.length; i ++ )\r
- arrayDirty[i] = true;\r
-}\r
-\r
-function IsDirty(nIndex)\r
-{\r
- if (nIndex == -1)\r
- return true;\r
- else \r
- if (arrayDirty.length > nIndex) \r
- return arrayDirty[nIndex];\r
- else\r
- return true;\r
-}\r
-\r
-function hideAll()\r
-{\r
- var i = 0; \r
- for (i = 0; i < arrayPopupURL.length; i ++ )\r
- getPopupDivStyle(i).visibility = gBsStyVisHide;\r
-}\r
-\r
-function getCurrentPopupIFrame()\r
-{\r
- var i = 0;\r
- for (i = 0; i < arrayPopupURL.length; i ++)\r
- if (getPopupDivStyle(i).visibility == gBsStyVisShow)\r
- return getPopupIFrame(i);\r
- return null;\r
-}\r
-\r
-function setClear(nIndex)\r
-{\r
- if (nIndex != -1)\r
- arrayDirty[nIndex] = false;\r
-}\r
-\r
-function _BSSCCreatePopupDiv(strURL)\r
-{\r
- var nIndex = findDiv(strURL);\r
- if (nIndex == -1 ) {\r
- nIndex = addDiv(strURL);\r
- BsPopup_CreateDiv(nIndex);\r
- }\r
- else {\r
- if (IsDirty(nIndex)) {\r
- if("object" == typeof(getPopupIFrame(nIndex).document))\r
- getPopupIFrame(nIndex).document.location.href = strURL;\r
- }\r
- }\r
- return nIndex;\r
-\r
-}\r
-\r
-//the browser information itself\r
-function _BSPSBrowserItself()\r
-{\r
- var agent = navigator.userAgent.toLowerCase();\r
- this.major = parseInt(navigator.appVersion);\r
- this.minor = parseFloat(navigator.appVersion);\r
- this.ns = ((agent.indexOf('mozilla') != -1) && ((agent.indexOf('spoofer') == -1) && (agent.indexOf('compatible') == -1)));\r
- this.ns2 = ((this.ns) && (this.major == 2));\r
- this.ns3 = ((this.ns) && (this.major == 3));\r
- this.ns4 = ((this.ns) && (this.major >= 4));\r
- this.ns6 = ((this.ns) && (this.major >= 5));\r
- this.ie = (agent.indexOf("msie") != -1);\r
- this.ie3 = ((this.ie) && (this.major == 2));\r
- this.ie4 = ((this.ie) && (this.major >= 4));\r
- this.op3 = (agent.indexOf("opera") != -1);\r
-\r
- if (this.ns4)\r
- {\r
- gBsDoc = "document";\r
- gBsSty = "";\r
- gBsHtm = ".document";\r
- gBsStyVisShow = "show";\r
- gBsStyVisHide = "hide";\r
-\r
- }\r
- else if (this.ie4)\r
- {\r
- gBsDoc = "document.all";\r
- gBsSty = ".style";\r
- gBsHtm = "";\r
- gBsStyVisShow = "visible";\r
- gBsStyVisHide = "hidden";\r
- }\r
-}\r
-\r
-//Here is the browser type \r
-function _BSPSGetBrowserInfo()\r
-{\r
- gBsBrowser = new _BSPSBrowserItself();\r
-}\r
-\r
-_BSPSGetBrowserInfo();\r
-\r
-//Get client size info\r
-function _BSPSGetClientSize()\r
-{\r
- if (gBsBrowser.ns4)\r
- {\r
- gBsClientWidth = innerWidth;\r
- gBsClientHeight = innerHeight;\r
-\r
- }\r
- else if (gBsBrowser.ie4)\r
- {\r
- gBsClientWidth = document.body.clientWidth;\r
- gBsClientHeight = document.body.clientHeight;\r
- }\r
-}\r
-\r
-\r
-var gstrPopupID = 'BSSCPopup';\r
-var gstrPopupShadowID = 'BSSCPopupShadow';\r
-var gstrPopupTopicID = 'BSSCPopupTopic';\r
-var gstrPopupIFrameID = 'BSSCPopupIFrame';\r
-var gstrPopupIFrameName = 'BSSCPopupIFrameName';\r
-\r
-var gstrPopupSecondWindowName = 'BSSCPopup';\r
-\r
-var gPopupWindow = null;\r
-var gnPopupClickX = 0;\r
-var gnPopupClickY = 0;\r
-\r
-var gnPopupScreenClickX = 0;\r
-var gnPopupScreenClickY = 0;\r
-\r
-var gbPopupTimeoutExpired = false;\r
-\r
-\r
-function DHTMLPopupSupport()\r
-{\r
- if ((gbBsIE4) && (!gbBsMac)) {\r
- return true;\r
- }\r
- return false;\r
-}\r
-\r
-\r
-\r
-function BSSCPopup_IsPopup()\r
-{\r
- if (DHTMLPopupSupport() && (this.name.indexOf(gstrPopupIFrameName) != -1)) {\r
- return true;\r
- } else if ((gbBsNS4 || gbBsIE4) && (this.name.indexOf(gstrPopupID) != -1)) {\r
- return true;\r
- } else {\r
- return false;\r
- }\r
-}\r
-\r
-\r
-// If there is a hyperlink in a popup window, display the hyperlink in\r
-// the original window.\r
-if (BSSCPopup_IsPopup() && !gbBsIE4) {\r
- document.write("<base target=\"_parent\">");\r
-}\r
-\r
-// Local functions.\r
-function BsPopup_CreateDiv(nIndex)\r
-{\r
- if(!DHTMLPopupSupport())\r
- return;\r
- // DO NOT SET Width and height for the div, otherwize it will make IE4 popup do not work when view the topic alone.\r
- var strPopupDiv = "<DIV ID='" + getPopupID(nIndex) + "' STYLE='position:absolute; top:-100; left:0; z-index:600; visibility:hidden;'>";\r
- strPopupDiv += "<DIV ID='" + getPopupShadowID(nIndex) + "' STYLE=\"position:absolute;top:0; left:0; background-color:#C0C0C0;\"></DIV>";\r
- strPopupDiv += "<DIV ID='" + getPopupTopicID(nIndex) + "' STYLE=\"position:absolute;top:0; left:0; background-color:#FFFFFF;border:1px #000000 outset;\">";\r
- strPopupDiv += "<IFRAME title=\"Popup Window\" ID='" + getPopupIFrameID(nIndex) + "' name='" + getPopupIFrameName(nIndex) + "' src = '" + getPopupURL(nIndex) + "' frameborder=0 scrolling=auto></IFRAME>";\r
- strPopupDiv += "</DIV></DIV>";\r
-\r
- var objBody = document.all.tags("BODY")[0];\r
- if( typeof(objBody) != "object" )\r
- return;\r
-\r
- objBody.insertAdjacentHTML("beforeEnd", strPopupDiv);\r
-}\r
-\r
-function BSSCPopup_Timeout(nIndex, nToken)\r
-{\r
- if (!IsValidToken(nToken)) return;\r
-\r
- if ((getPopupIFrame(nIndex).document.readyState == "complete") &&\r
- (getPopupIFrame(nIndex).document.body != null)) {\r
- window.getPopupDivStyle(nIndex).visibility = gBsStyVisShow;\r
- setClear(nIndex);\r
- window.gbPopupTimeoutExpired = true;\r
-\r
- BSSCPopup_ChangeTargettoParent(getPopupIFrame(nIndex).document);\r
- getPopupIFrame(nIndex).document.body.onclick = BSSCPopupClicked;\r
-\r
- if (!gbOrignalOnMouseDown && document.onmousedown)\r
- gbOrignalOnMouseDown = document.onmousedown;\r
-\r
- document.onmousedown = BSSCPopupParentClicked;\r
-\r
- } else {\r
- setTimeout("BSSCPopup_Timeout(" + nIndex + "," + nToken + ")", 100);\r
- }\r
-}\r
-\r
-\r
-// VH 08/10/00 \r
-// do not change target to parent if the href is using javascript\r
-function BSSCPopup_ChangeTargettoParent(tagsObject)\r
-{\r
- var collA = tagsObject.all.tags("A");\r
- BSSCPopup_ChangeTargettoParent2(collA);\r
-\r
- var collIMG = tagsObject.all.tags("IMG");\r
- BSSCPopup_ChangeTargettoParent2(collIMG);\r
-}\r
-\r
-function BSSCPopup_ChangeTargettoParent2(colls)\r
-{\r
- var j = 0;\r
- if (colls != null) {\r
- for (j = 0; j < colls.length; j ++ )\r
- {\r
- var strtemp = colls[j].href;\r
- strtemp = strtemp.toLowerCase();\r
- if (strtemp.indexOf("javascript:") == -1)\r
- if (colls[j].target == "")\r
- colls[j].target = "_parent";\r
- }\r
-\r
- }\r
-}\r
-\r
-function BSPSPopupTopicWinHelp(strURL)\r
-{\r
- _BSSCPopup(strURL);\r
- return;\r
-}\r
-\r
-function _BSSCPopup(strURL, width, height)\r
-{\r
- var cuswidth = 0;\r
- var cusheight = 0;\r
- if ("undefined" != typeof(width) && "undefined" != typeof(height)) {\r
- cuswidth = width;\r
- cusheight= height;\r
- }\r
- \r
- if (DHTMLPopupSupport()) {\r
- // If we are already in a popup, replace the contents\r
- // if (BSSCPopup_IsPopup()) {\r
- // parent._BSSCPopup(strURL, cuswidth, cusheight);\r
- // } else {\r
- var nToken = takeToken(); // take token first.\r
- var nIndex = _BSSCCreatePopupDiv(strURL);\r
- window.gbPopupTimeoutExpired = false;\r
- var ntWidth = gBsClientWidth;\r
- var ntHeight = gBsClientHeight;\r
- _BSPSGetClientSize();\r
- if (ntWidth != gBsClientWidth || ntHeight != gBsClientHeight) {\r
- setDirty();\r
- }\r
-\r
-\r
- if (IsDirty(nIndex)) {\r
- if (gbBsMac) {\r
- setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight +")", 400);\r
- } else {\r
- setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight + ")", 100);\r
- }\r
- }\r
- else {\r
- MoveDivAndShow(nIndex ,nToken, cuswidth, cusheight);\r
- }\r
- // }\r
-\r
- } else {\r
- _BSSCPopup2(strURL, cuswidth, cusheight);\r
- }\r
- return;\r
-}\r
-\r
-if (gbBsIE55)\r
-{\r
- var ehlpdhtm_fOldBefureUnload = window.onbeforeunload;\r
- window.onbeforeunload = window_BUnload;\r
-}\r
- \r
-function window_BUnload()\r
-{\r
- for (var i = 0; i < arrayPopupURL.length; i ++)\r
- document.all(getPopupID(i)).outerHTML = "";\r
- arrayPopupURL.length = 0; \r
- if (ehlpdhtm_fOldBefureUnload)\r
- ehlpdhtm_fOldBefureUnload();\r
-}\r
-\r
-function _BSSCPopup2(strURL, width, height)\r
-{\r
- if (window.name == gstrPopupSecondWindowName) {\r
- window.location = strURL;\r
- } else {\r
- if (!gbBsMac || !gBsBrowser.ns4) {\r
- BSSCHidePopupWindow();\r
- }\r
- var nX = 0;\r
- var nY = 0;\r
- var nHeight = 300;\r
- var nWidth = 400;\r
- if (width > 0 && height > 0) {\r
- nHeight = height;\r
- nWidth = width;\r
- }\r
- _BSPSGetClientSize();\r
-\r
- nX = window.gnPopupScreenClickX;\r
- nY = window.gnPopupScreenClickY;\r
-\r
- if (nY + nHeight + 40 > screen.availHeight) {\r
- nY = screen.availHeight - nHeight - 40;\r
- }\r
- if (nX + nWidth + 40 > screen.availWidth) {\r
- nX = screen.availWidth - nWidth - 40;\r
- }\r
- // Launch a separate window\r
- var strParam = "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=yes";\r
- if (gBsBrowser.ns) {\r
- if (gBsBrowser.ns6) {\r
- strParam += ",Height=" + nHeight + ",Width=" + nWidth;\r
- strParam += ",screenX=" + nX + ",screenY=" + nY;\r
- }\r
- else {\r
- strParam += ",OuterHeight=" + nHeight + ",OuterWidth=" + nWidth;\r
- strParam += ",screenX=" + nX + ",screenY=" + nY;\r
- strParam += ",dependent=yes";\r
- }\r
- }\r
- else {\r
- strParam += ",height=" + nHeight + ",width=" + nWidth;\r
- strParam += ",left=" + nX + ",top=" + nY;\r
- }\r
- window.gPopupWindow = window.open(strURL, gstrPopupSecondWindowName, strParam);\r
-\r
- if (gBsBrowser.ns4) {\r
- window.gPopupWindow.captureEvents(Event.CLICK | Event.BLUE);\r
- window.gPopupWindow.onclick = NonIEPopup_HandleClick;\r
- window.gPopupWindow.onblur = NonIEPopup_HandleBlur;\r
- }\r
- else if (gBsBrowser.ie4)\r
- {\r
- setTimeout("setPopupFocus();", 100);\r
- }\r
- }\r
- return;\r
-}\r
-\r
-function setPopupFocus()\r
-{\r
- window.gPopupWindow.focus();\r
-}\r
-\r
-function NonIEPopup_HandleBlur(e)\r
-{\r
- window.gPopupWindow.focus();\r
-}\r
-\r
-function NonIEPopup_HandleClick(e)\r
-{\r
- // Because navigator will give the event to the handler before the hyperlink, let's\r
- // first route the event to see if we are clicking on a Popup menu in a popup.\r
- document.routeEvent(e);\r
-\r
- // If a popup menu is active then don't do anything with the click\r
- if (window.gPopupWindow.gbInPopupMenu) {\r
- window.gPopupWindow.captureEvents(Event.CLICK);\r
- window.gPopupWindow.onclick = NonIEPopup_HandleClick;\r
- return false;\r
- }\r
-\r
- // Close the popup window\r
- if (e.target.href) {\r
- if (e.target.target == "")\r
- window.location.href = e.target.href;\r
- else\r
- window.open(e.target.href, e.target.target);\r
- \r
- if (e.target.href.indexOf("javascript:void(0)") == -1 && e.target.href.indexOf("javascript:null") == -1 && e.target.href.indexOf("BsscPopup") == -1) {\r
- this.close();\r
- }\r
- } else {\r
- this.close();\r
- }\r
- return false;\r
-\r
-}\r
-\r
-function BSSCPopup_AfterLoad(nIndex, nToken, cuswidth, cusheight)\r
-{ \r
- if (typeof(window.getPopupIFrame(nIndex).document) == "unknown") {\r
- _BSSCPopup2(getPopupURL(nIndex), cuswidth, cusheight);\r
- return;\r
- }\r
- if (!IsValidToken(nToken)) return;\r
-\r
- if ((window.getPopupIFrame(nIndex).document.readyState == "complete") &&\r
- (window.getPopupIFrame(nIndex).document.body != null)) {\r
- if (window.getPopupIFrame(nIndex).document.location.href.indexOf("about:blank") != -1) { // add this check. IE will use about:blank" as the default vaule for Iframe.\r
- window.getPopupIFrame(nIndex).document.location = getPopupURL(nIndex);\r
- setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight + ")", 200);\r
- }\r
- else\r
- {\r
- setAbsPopupURL(nIndex, window.getPopupIFrame(nIndex).document.location.href); // change URL to abs url.\r
- BSSCPopup_ResizeAfterLoad(nIndex, nToken, cuswidth, cusheight);\r
- }\r
- } else {\r
- setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight + ")", 200);\r
- }\r
-}\r
-\r
-\r
-function BSSCPopup_ResizeAfterLoad(nIndex, nToken, cuswidth, cusheight)\r
-{\r
- if (window.gbPopupTimeoutExpired) return;\r
-\r
- if (!IsValidToken(nToken)) return;\r
-\r
- getPopupDivStyle(nIndex).visibility = gBsStyVisHide;\r
-\r
- // Determine the width and height for the window\r
- //var size = new BSSCSize(0, 0);\r
- //BSSCGetContentSize(window.getPopupIFrame(nIndex), size);\r
- //var nWidth = size.x;\r
- //var nHeight = size.y;\r
-\r
- _BSPSGetClientSize();\r
- \r
- var size = new BSSCSize(0, 0);\r
-\r
- if (cuswidth <= 0 || cusheight <= 0)\r
- BSSCGetContentSize(window.getPopupIFrame(nIndex), size);\r
- else {\r
- size.x = cuswidth;\r
- size.y = cusheight;\r
- }\r
-\r
- // Determine the width and height for the window\r
- var nWidth = size.x;\r
- var nHeight = size.y;\r
-\r
- // for small popup size, we should allow any size.\r
- // The popup size should be ok if bigger than 0\r
- if (nWidth < 0 || nHeight < 0) return; // there must be something terribly wrong. \r
- // if (nWidth < 40 || nHeight < 40) return; // there must be something terribly wrong.\r
-\r
- window.getPopupDivStyle(nIndex).pixelWidth = nWidth;\r
- window.getPopupDivStyle(nIndex).pixelHeight = nHeight;\r
-\r
- window.getPopupShadowStyle(nIndex).pixelWidth = nWidth;\r
- window.getPopupShadowStyle(nIndex).pixelHeight = nHeight;\r
- window.getPopupTopicStyle(nIndex).pixelWidth = nWidth;\r
- window.getPopupTopicStyle(nIndex).pixelHeight = nHeight;\r
- if (gbBsIE55)\r
- {\r
- window.getPopupShadowStyle(nIndex).pixelWidth = nWidth + 2;\r
- window.getPopupShadowStyle(nIndex).pixelHeight = nHeight + 2;\r
- window.getPopupTopicStyle(nIndex).pixelWidth = nWidth + 2;\r
- window.getPopupTopicStyle(nIndex).pixelHeight = nHeight + 2;\r
- }\r
-\r
- window.getPopupIFrameStyle(nIndex).pixelWidth = nWidth;\r
- window.getPopupIFrameStyle(nIndex).pixelHeight = nHeight;\r
- if (gbBsIE55)\r
- {\r
- window.getPopupIFrameStyle(nIndex).top = 0;\r
- window.getPopupIFrameStyle(nIndex).left = 0;\r
- }\r
- \r
- var strURL = getPopupURL(nIndex);\r
- if (strURL.indexOf("#") != -1)\r
- getPopupIFrame(nIndex).location.href = strURL; // reload again, this will fix the bookmark misunderstand in IE5.\r
- \r
- MoveDivAndShow(nIndex, nToken, cuswidth, cusheight);\r
-}\r
-\r
-function MoveDivAndShow(nIndex, nToken, cuswidth, cusheight)\r
-{\r
- if (window.getPopupIFrame(nIndex).document.location.href != getAbsPopupURL(nIndex)) { // if redirect, reload again.\r
- window.getPopupIFrame(nIndex).document.location = getPopupURL(nIndex);\r
- setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight + ")", 200);\r
- return;\r
- }\r
-\r
- // Determine the position of the window\r
- var nClickX = window.gnPopupClickX;\r
- var nClickY = window.gnPopupClickY;\r
- var nTop = 0;\r
- var nLeft = 0;\r
-\r
- var nWidth = window.getPopupDivStyle(nIndex).pixelWidth;\r
- var nHeight = window.getPopupDivStyle(nIndex).pixelHeight;\r
-\r
- if (nClickY + nHeight + 20 < gBsClientHeight + document.body.scrollTop) {\r
- nTop = nClickY + 10;\r
- } else {\r
- nTop = (document.body.scrollTop + gBsClientHeight) - nHeight - 20;\r
- }\r
- if (nClickX + nWidth < gBsClientWidth + document.body.scrollLeft) {\r
- nLeft = nClickX;\r
- } else {\r
- nLeft = (document.body.scrollLeft + gBsClientWidth) - nWidth - 8;\r
- }\r
- \r
- if (nTop < document.body.scrollTop ) nTop = document.body.scrollTop + 1;\r
- if (nLeft< document.body.scrollLeft) nLeft = document.body.scrollLeft + 1;\r
-\r
-\r
- window.getPopupDivStyle(nIndex).left = nLeft;\r
- window.getPopupDivStyle(nIndex).top = nTop;\r
-\r
- // Set the location of the background blocks\r
- window.getPopupShadowStyle(nIndex).left = 6;\r
- window.getPopupShadowStyle(nIndex).top = 6;\r
- if (gbBsIE55)\r
- {\r
- window.getPopupShadowStyle(nIndex).left = 4;\r
- window.getPopupShadowStyle(nIndex).top = 4;\r
- }\r
-\r
- if (gbBsMac) {\r
- // Total hack on the iMac to get the IFrame to position properly\r
- window.getPopupIFrameStyle(nIndex).pixelLeft = 100;\r
- window.getPopupIFrameStyle(nIndex).pixelLeft = 0;\r
- // Explicitly call BSSCOnLoad because the Mac doesn't seem to do it\r
- window.getPopupIFrame(nIndex).window.BSSCOnLoad();\r
- }\r
-\r
- BSSCPopup_Timeout(nIndex , nToken );\r
- \r
- return;\r
-}\r
-\r
-function BSSCSize(x, y)\r
-{\r
- this.x = x;\r
- this.y = y;\r
-}\r
-\r
-function BSSCGetContentSize(thisWindow, size)\r
-{\r
- if (!((gBsBrowser.ie4) || (gBsBrowser.ns4)))\r
- return;\r
-\r
- if (gbBsMac) {\r
- size.x = 300;\r
- size.y = 300;\r
- return;\r
- }\r
-\r
- // Resize the width until it is wide enough to handle the content\r
- // The trick is to start wide and determine when the scrollHeight changes\r
- // because then we know a scrollbar is necessary. We can then go back\r
- // to the next widest size (for no scrollbar)\r
-\r
- var ClientRate = gBsClientHeight / gBsClientWidth;\r
-\r
- var GoldenSize = new BSSCSize(0,0);\r
- GoldenSize.x = gBsClientWidth * gBMaxXOfParent;\r
- GoldenSize.y = gBsClientHeight *gBMaxYOfParent ;\r
-\r
- if (ClientRate > gBRateH_W) {\r
- GoldenSize.y = GoldenSize.x * gBRateH_W;\r
- }\r
- else {\r
- GoldenSize.x = GoldenSize.y / gBRateH_W;\r
- }\r
-\r
- // Try to using parent specified max x.\r
- var x = 0;\r
- var maxgoldx = GoldenSize.x;\r
- var maxx = gBsClientWidth * gBMaxXOfParent;\r
- \r
- // This double resize causes the document to re-render (and we need it to)\r
- if (!gbBsIE5)\r
- thisWindow.moveTo(10000,10000); // this is used to fix the flash on IE4.\r
- thisWindow.resizeTo(1, 1);\r
- thisWindow.resizeTo(1, 1);\r
- thisWindow.resizeTo(maxgoldx, thisWindow.document.body.scrollHeight + gBscrollHeight);\r
- thisWindow.resizeTo(maxgoldx, thisWindow.document.body.scrollHeight + gBscrollHeight);\r
- \r
- var miny = thisWindow.document.body.scrollHeight + gBscrollHeight;\r
- \r
- if (miny > GoldenSize.y) // the popup does not fix in the parent wanted golden area. so try to expand itself as large as it can\r
- {\r
- thisWindow.resizeTo(maxx , thisWindow.document.body.scrollHeight + gBscrollHeight);\r
- thisWindow.resizeTo(maxx , thisWindow.document.body.scrollHeight + gBscrollHeight);\r
- \r
- miny = thisWindow.document.body.scrollHeight + gBscrollHeight;\r
- maxy = gBsClientHeight * gBMaxYOfParent;\r
- \r
- if (miny > maxy) { // the popup must have a scroll, OK let it be.\r
- miny = maxy;\r
- size.x = maxx;\r
- size.y = maxy;\r
- thisWindow.document.body.scroll = 'yes'; // At this time we do want to show scroll any more. so it will looks better a little.\r
- }\r
- else { // popup still can fit in the parent area by someway. now we choose the same h/w rate as parent.\r
- size.y = miny;\r
- \r
- // downsize from maxx , now I try to using binary divide.\r
- x = maxx;\r
- deltax = -maxx/2;\r
- //j = 0;\r
- while (true) {\r
- x = x + deltax;\r
- thisWindow.resizeTo(x, miny);\r
- thisWindow.resizeTo(x, miny);\r
- diffy = thisWindow.document.body.scrollHeight + gBscrollHeight - x * ClientRate;\r
- if (diffy > gBpermitYDelta ) // it is higher than wanted, so x need to be wide a little bitter\r
- deltax = Math.abs(deltax) /2;\r
- else if (diffy < -gBpermitYDelta) // it is shorter than wanted, so x need to be narrow a little bitter\r
- deltax = -Math.abs(deltax) /2;\r
- else \r
- // the y is close enough to wanted.\r
- break;\r
- if (Math.abs(deltax) < gBpermitXDelta) // the next change is too slight and it can be ignore.\r
- break;\r
- }\r
- size.x = thisWindow.document.body.scrollWidth; //+ gBscrollWidth;\r
- size.y = thisWindow.document.body.scrollHeight;// + gBscrollHeight; \r
- thisWindow.document.body.scroll = 'no';\r
- \r
- // Handle absurd cases just in case IE flakes\r
- // if (size.y < 100) {\r
- // size.y = 100;\r
- // }\r
- }\r
- }\r
- else {\r
- if (thisWindow.document.body.scrollWidth > maxgoldx) {\r
- size.x = maxx; \r
- size.y = miny; \r
- thisWindow.document.body.scroll = 'yes';\r
- }\r
- else {\r
- // downsize from maxgoldx , now I try to using binary divide.\r
- x = maxgoldx;\r
- deltax = -maxgoldx/2;\r
- //i = 0;\r
- while (true) {\r
- x = x + deltax;\r
- thisWindow.resizeTo(x, miny);\r
- thisWindow.resizeTo(x, miny);\r
- diffy = thisWindow.document.body.scrollHeight + gBscrollHeight - x * gBRateH_W;\r
- if (diffy > gBpermitYDelta ) // it is higher than wanted, so x need to be wide a little bitter\r
- deltax = Math.abs(deltax) /2;\r
- else if (diffy < -gBpermitYDelta) // it is shorter than wanted, so x need to be narrow a little bitter\r
- deltax = -Math.abs(deltax) /2;\r
- else \r
- // the y is close enough to wanted.\r
- break;\r
- if (Math.abs(deltax) < gBpermitXDelta) // the next change is too slight and it can be ignore.\r
- break;\r
- //i ++;\r
- \r
- }\r
- //size.x = x - gBscrollWidth;\r
- size.x = thisWindow.document.body.scrollWidth; //+ gBscrollWidth;\r
- size.y = thisWindow.document.body.scrollHeight ;\r
- thisWindow.document.body.scroll = 'no'; // At this time we do not want to show scroll any more. so it will looks better a little.\r
- thisWindow.resizeTo(size.x, size.y);\r
- if (thisWindow.document.body.scrollWidth > size.x)\r
- {\r
- size.x = thisWindow.document.body.scrollWidth;\r
- }\r
- if (thisWindow.document.body.scrollHeight > size.y)\r
- {\r
- size.y = thisWindow.document.body.scrollHeight;\r
- }\r
- }\r
- }\r
- \r
- // no reload no scrollbar.\r
- //size.x = size.x + 16; //reserve a width for scrollbar (IE 4.0 only)\r
-\r
- thisWindow.resizeTo(size.x, size.y);\r
- thisWindow.resizeTo(size.x, size.y);\r
- return;\r
-}\r
-\r
-\r
-\r
-function BSSCPopupParentClicked()\r
-{\r
- if (!window.gbPopupTimeoutExpired) {\r
- return false;\r
- }\r
- \r
- document.onmousedown = gbOrignalOnMouseDown;\r
-\r
- // Simply hide the popup\r
- hideAll();\r
-\r
- window.gbPopupTimeoutExpired = false;\r
-\r
- return true;\r
-}\r
-\r
-\r
-function BSSCPopupClicked()\r
-{\r
- if (!window.gbPopupTimeoutExpired) {\r
- return false;\r
- }\r
-\r
-\r
- var popupIFrame = getCurrentPopupIFrame();\r
- if (popupIFrame == null) {\r
- return true;\r
- }\r
-\r
-/*\r
- if ("undefined" != typeof(popupIFrame.gbInPopupMenu) &&\r
- popupIFrame.gbInPopupMenu) {\r
- return true;\r
- }*/\r
-\r
- if (!((popupIFrame.window.event != null) &&\r
- (popupIFrame.window.event.srcElement != null) &&\r
- ((popupIFrame.window.event.srcElement.tagName == "A") ||\r
- (popupIFrame.window.event.srcElement.tagName == "IMG")))) {\r
- document.onmousedown = gbOrignalOnMouseDown;\r
-\r
- // Simply hide the popup\r
- hideAll();\r
-\r
- window.gbPopupTimeoutExpired = false;\r
-\r
- return true;\r
- }\r
-}\r
-\r
-\r
-//trace the mouse over's position for hotspot\r
-function BSPSPopupOnMouseOver(event)\r
-{\r
- if (gBsBrowser.ie4) {\r
- window.gnPopupClickX = event.clientX + document.body.scrollLeft;\r
- window.gnPopupClickY = event.clientY + document.body.scrollTop;\r
- window.gnPopupScreenClickX = event.screenX;\r
- window.gnPopupScreenClickY = event.screenY;\r
- } else if (gBsBrowser.ns4) {\r
- window.gnPopupClickX = event.pageX - window.pageXOffset;\r
- window.gnPopupClickY = event.pageY - window.pageYOffset;\r
- window.gnPopupScreenClickX = event.screenX - window.pageXOffset;\r
- window.gnPopupScreenClickY = event.screenY - window.pageYOffset;\r
- }\r
-}\r
-\r
-\r
-function BSSCHidePopupWindow()\r
-{\r
- if (window.gPopupWindow != null) {\r
- if (gBsBrowser.ns4) {\r
- if ((typeof window.gPopupWindow != "undefined") && (!window.gPopupWindow.closed)) {\r
- window.gPopupWindow.close();\r
- window.gPopupWindow = null;\r
- }\r
- }\r
- }\r
-\r
- return;\r
-}\r
-\r
-// Add the PopupOnClick to the onclick array.\r
-if (typeof(BsscRegisterOnClick) != "undefined")\r
-{\r
- BsscRegisterOnClick(BsPopupOnClick);\r
-}\r
-//End to support previous popup functions\r
-\r
-/// Section End - Popup (JavaScript 1.0)\r
-\r
-/// Section Begin - Embedded Stub (JavaScript 1.0)\r
-\r
-var s_strAgent = navigator.userAgent.toLowerCase();\r
-var s_nVer = parseInt(navigator.appVersion);\r
-\r
-var s_bIE = (s_strAgent.indexOf('msie') != -1);\r
-var s_bNS = (s_strAgent.indexOf('mozilla') != -1) && ((s_strAgent.indexOf('spoofer') == -1) && (s_strAgent.indexOf('compatible') == -1));\r
-var s_bOpera = (s_strAgent.indexOf('opera') != -1);\r
-\r
-var s_bIE3Before = ((s_bIE) && (s_nVer <= 2));\r
-var s_bNS3Before = ((s_bNS) && (s_nVer <= 3));\r
-\r
-var s_bNS2 = ((s_bNS) && (s_nVer <= 2));\r
-var s_bNS3 = ((s_bNS) && (s_nVer == 3));\r
-var s_bIE300301 = ((s_bIE) && (s_nVer == 2) && ((s_strAgent.indexOf("3.00") != -1)||(s_strAgent.indexOf("3.0a") != -1)||(s_strAgent.indexOf("3.0b")!=-1)||(s_strAgent.indexOf("3.01")!=-1)));\r
-var s_bIE302 = ((s_bIE) && (s_nVer == 2) && (s_strAgent.indexOf("3.02") != -1));\r
-\r
-\r
-function HasExtJs()\r
-{\r
- if (s_bIE3Before) { return false;}\r
- if (s_bNS3Before) { return false;}\r
- if (typeof (BsGeneralOnLoad) == "undefined"){ return false; }\r
- return true;\r
-}\r
-\r
-\r
-function BSSCCreatePopupDiv()\r
-{\r
- return;\r
-}\r
-\r
-\r
-function WritePopupMenuLayer()\r
-{\r
- if (HasExtJs()) {_WritePopupMenuLayer();}\r
-}\r
-\r
-function BSSCPopup(strURL, width, height)\r
-{\r
- if (HasExtJs()) { \r
- _BSSCPopup(strURL, width, height);\r
- }else{\r
- //Create a temporary window first to ensure the real popup comes up on top\r
- var wndTemp = null;\r
- if (!s_bNS3) {\r
- wndTemp = window.open("", "temp", "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=yes,height=3,width=4");\r
- }\r
- // Create the real popup window\r
- var wndPopup = window.open(strURL, "BSSCPopup", "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=yes,height=300,width=400");\r
- // Close the temporary\r
- if (!s_bNS3) {\r
- wndTemp.close();\r
- } else {\r
- wndPopup.focus();\r
- }\r
- }\r
-}\r
-\r
-var gbWndTemp = null, gbWndPopupLinks = null;\r
-var gbstrParaTotal = "";\r
-\r
-function PopupMenu_Invoke()\r
-{\r
- if (HasExtJs()) {\r
- return _PopupMenu_Invoke(PopupMenu_Invoke.arguments);\r
- }\r
- if (s_bNS3Before || s_bIE3Before ) {\r
- var argLen = PopupMenu_Invoke.arguments.length;\r
- if (argLen < 5) {\r
- window.document.location.href = PopupMenu_Invoke.arguments[3];\r
- return false;\r
- }\r
- gbWndTemp = null;\r
- gbWndPopupLinks = null;\r
- gbstrParaTotal = "";\r
- for (var i = 0; i < (argLen - 2) / 2; i++) {\r
- var strParaLine = "";\r
- if (s_bNS2 || s_bOpera){\r
- strParaLine += "<a href=\"";\r
- strParaLine += PopupMenu_Invoke.arguments[2 * i + 3];\r
- strParaLine += "\">"\r
- strParaLine += PopupMenu_Invoke.arguments[2 * i + 2];\r
- strParaLine += "</a>";\r
- } else {\r
- strParaLine += "<a href=\"javascript:";\r
- strParaLine += "gotoUrl(\'";\r
- strParaLine += PopupMenu_Invoke.arguments[2 * i + 3];\r
- strParaLine += "\');\"";\r
- if (PopupMenu_Invoke.arguments[1] != '') {\r
- strParaLine += " TARGET='" + PopupMenu_Invoke.arguments[1] + "'";\r
- }\r
- strParaLine += ">";\r
- strParaLine += PopupMenu_Invoke.arguments[2 * i + 2];\r
- strParaLine += "</a>";\r
- }\r
- strParaLine += "<br>";\r
- gbstrParaTotal += strParaLine;\r
- }\r
- var nHeight = argLen * 15;\r
- var nWidth = 400;\r
- var strParam = "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=auto";\r
- strParam += ",height=" + nHeight + ",width=200,resizable";\r
- \r
- //Create a temporary window first to ensure the real popup comes up on top\r
- //var wndTemp = null;\r
- if (!s_bNS3) {\r
- gbWndTemp = window.open("", "temp", "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=yes,height=3,width=4");\r
- } \r
- gbWndPopupLinks = window.open("", "popuplinks", strParam);\r
-\r
- setTimeout("Wait_PopupMenuReady()", 100);\r
- }\r
- return true;\r
-}\r
-\r
-function Wait_PopupMenuReady() \r
-{\r
- if (gbWndPopupLinks != null && "object" == typeof(gbWndPopupLinks.document)) {\r
- PopupMenu_InvokeReady();\r
- }\r
- else \r
- setTimeout("Wait_PopupMenuReady()", 100);\r
-}\r
-\r
-\r
-function PopupMenu_InvokeReady()\r
-{\r
- if (gbWndPopupLinks != null) {\r
- gbWndPopupLinks.document.open("text/html");\r
- gbWndPopupLinks.document.write("<html><head>");\r
- if (s_bNS2 || s_bOpera) {\r
- gbWndPopupLinks.document.write("<base href=\"" + location +"\">");\r
- } else {\r
- //YJ: IE301,302 and NS3.x works fine\r
- gbWndPopupLinks.document.write("<");\r
- gbWndPopupLinks.document.write("script>");\r
- gbWndPopupLinks.document.write("function gotoUrl(aUrl) {opener.window.location=aUrl; close();}");\r
- gbWndPopupLinks.document.write("<");\r
- gbWndPopupLinks.document.write("/script>");\r
- }\r
- gbWndPopupLinks.document.write("</head><body onBlur=\'self.focus();\'>");\r
- gbWndPopupLinks.document.write(gbstrParaTotal);\r
- gbWndPopupLinks.document.write("</body></html>");\r
- gbWndPopupLinks.document.close();\r
-\r
- // Close the temporary\r
- if (!s_bNS3 && gbWndTemp != null) {\r
- gbWndTemp.close();\r
- }else {\r
- gbWndPopupLinks.focus();\r
- }\r
-\r
- return true;\r
- }\r
- return false;\r
-}\r
-\r
-/// Section End - Embedded Stub (JavaScript 1.0)\r
-\r
-//// Segment End -- (JavaScript 1.0)\r
-\r
-//// Segment Begin -- (JavaScript 1.2)\r
-/// Section Begin - kadov DHTM (JavaScript 1.2)\r
-\r
-//Begin to support extended and dropdown text effects.\r
-function kadovIsParagraph(el)\r
-{\r
- return( el.tagName == "P" || el.tagName.indexOf("H") == 0 ) ? true : false;\r
-}\r
-\r
-function kadovInitEachChild(el)\r
-{ \r
- for(var i=0; i<el.children.length; i++)\r
- {\r
- var child = el.children[i];\r
- if( child.tagName == "SCRIPT" || child.tagName == "!" )\r
- continue;\r
-\r
- if( child.id != "" )\r
- {\r
- // to wipe out the onload effects\r
- var onLoadEffect = child.style.getAttribute( "x-on-pageload" );\r
- if( (onLoadEffect != null) && (onLoadEffect > "") )\r
- child.style.setAttribute( "x-on-pageload", "" );\r
- \r
- var href = child.getAttribute("href")\r
- if( href != null && href > "" && href.indexOf( "BSSCPopup" ) >= 0 )\r
- kadovFilePopupInit(child.id); // Init for Popup\r
- else if( child.className == "dropspot" || child.className == "expandspot" || \r
- child.className == "glossterm" )\r
- kadovTextPopupInit(child.id);// Init for Expanding/Glossary or DropDown text\r
- else if( child.className == "trigger")\r
- kadovInitTrigger(child.id);// Init for Trigger\r
- else\r
- {\r
- kadovInitEffects(child.id);// Init for DHTML effects\r
- CEngine.SetOneTargetInitialState( child.id );\r
- }\r
- }\r
- \r
- if( (child.tagName == "IMG") && (child.getAttribute("dynsrc") > "") )\r
- child.start = "mouseover";// to start a AVI file. fileopen doesn't work\r
-\r
- kadovInitEachChild(child);\r
- }\r
-}\r
-\r
-function kadovRetrieveTextInner(el)\r
-{ \r
- var x = "";\r
- if( (!el) || (el.tagName == "!") || (el.tagName == "SCRIPT" ))\r
- return x;\r
-\r
- if( kadovIsParagraph(el) )\r
- {\r
- var strNewID = " ";\r
- if( el.id != "" )\r
- strNewID += "id=" + el.id + "_NewSpan ";\r
- x = "<span" + strNewID + "style='" + el.style.cssText + "'>" + el.innerHTML + "</span>";\r
- }\r
- else\r
- {\r
- for(var i=0; i<el.children.length; i++)\r
- x += kadovRetrieveTextInner( el.children[i] );\r
- }\r
- return x;\r
-}\r
-\r
-function kadovRetrieveCleanHTML( strRawHTML, strTagOpen, strTagClose, nDistance )\r
-{ \r
- var nTagOpen = strRawHTML.indexOf( strTagOpen, 0 );\r
- if( nTagOpen < 0 )\r
- return strRawHTML;\r
-\r
- var nTagClose = strRawHTML.indexOf( strTagClose, nTagOpen);\r
- if( nTagClose < nTagOpen )\r
- return strRawHTML;\r
- \r
- if( typeof(nDistance) == "number" && nDistance > 0 )\r
- if( (nTagClose - nTagOpen) != nDistance )\r
- return strRawHTML;\r
- \r
- var strCleanOnce = strRawHTML.substring(0, nTagOpen) + strRawHTML.substr(nTagClose + strTagClose.length) ;\r
- return kadovRetrieveCleanHTML( strCleanOnce, strTagOpen, strTagClose );\r
-}\r
-\r
-function kadovAdjustObjectTag(strRawHTML, nStartPos)\r
-{// adjust object tag for related topics HTML control, because innerHTML misses out the item settings\r
- \r
- //Is there any DTC?\r
- var strDTCTagOpen = '<!--Metadata type="DesignerControl" startspan';\r
- var strDTCTagClose = '<!--Metadata type="DesignerControl" endspan-->';\r
- var nDTCTagOpen = strRawHTML.indexOf( strDTCTagOpen, nStartPos );\r
- if( nDTCTagOpen < 0 )\r
- return strRawHTML;\r
- var nDTCTagClose = strRawHTML.indexOf( strDTCTagClose, nDTCTagOpen );\r
- if( nDTCTagClose < nDTCTagOpen)\r
- return strRawHTML; // no Design Time Controls;\r
- \r
- //Is the DTC HTML Help Control?\r
- var strRTObjTagOpen = 'classid=clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11';\r
- var strRTObjTagClose = '</OBJECT>';\r
- var nRTObjTagOpen = strRawHTML.indexOf( strRTObjTagOpen, nDTCTagOpen );\r
- if( nRTObjTagOpen < nDTCTagOpen )\r
- return strRawHTML;\r
- var nRTObjTagClose = strRawHTML.indexOf( strRTObjTagClose, nRTObjTagOpen );\r
- if( nRTObjTagClose < nRTObjTagOpen )\r
- return strRawHTML; // is not a HTML help control\r
- \r
- // Is it a related Topics html help control?\r
- var strRTObjLabel = '<PARAM NAME=\"Command\" VALUE=\"Related Topics';\r
- if( strRawHTML.indexOf(strRTObjLabel, nRTObjTagOpen) < 0 )\r
- return strRawHTML;\r
- \r
- // does the commented object tag contain a items parameters \r
- var strRTItemsOpen = '<param name=Items value="';\r
- var strRTItemsClose = '$$**$$" >';\r
- var nRTItemsOpen = strRawHTML.indexOf(strRTItemsOpen, nDTCTagOpen);\r
- if( nRTItemsOpen < nDTCTagOpen )\r
- return strRawHTML;\r
- var nRTItemsClose = strRawHTML.indexOf(strRTItemsClose, nRTItemsOpen);\r
- if( nRTItemsClose < nRTItemsOpen )\r
- return strRawHTML;\r
- \r
- // found a items string\r
- var strItems = strRawHTML.substring( nRTItemsOpen + strRTItemsOpen.length, nRTItemsClose);\r
- if( strItems.length < 1 )\r
- return strRawHTML;\r
- \r
- // to reconstruct the item(s) param tag(s)\r
- var strItemsArray = strItems.split('$$**$$');\r
- if( strItemsArray.length < 1 )\r
- return strRawHTML;\r
- var strRunTimeItemParam = "";\r
- for( var i = 0; i < strItemsArray.length; i++ )\r
- {\r
- strRunTimeItemParam += '<PARAM NAME="Item' + (i+1);\r
- strRunTimeItemParam += '"' + ' VALUE="';\r
- strRunTimeItemParam += strItemsArray[i];\r
- strRunTimeItemParam += '">';\r
- }\r
- \r
- // to insert the reconstructed item params into runtime object tag\r
- var strAdjustedHTML = strRawHTML.substring(0,nRTObjTagClose) + strRunTimeItemParam + strRawHTML.substring(nRTObjTagClose, strRawHTML.length);\r
- return kadovAdjustObjectTag(strAdjustedHTML, nDTCTagClose + strDTCTagClose.length);\r
-}\r
-\r
-function kadovTextPopupOnLoad( el )\r
-{\r
- if( !CCSSP.bIsWinOS && !CCSSP.bIsSunOS)\r
- return 0;\r
-\r
- if( typeof(el) == "string" )\r
- el = document.all.item(el);\r
-\r
- var src = el.getAttribute( "x-use-popup" );\r
- if(!src)\r
- return 0;\r
-\r
- var name = src;\r
- if( src.substr(0,1) == "#" ) \r
- name = src.substr(1, src.length-1);\r
- var srcDiv = document.all.item(name);\r
- if( !srcDiv )\r
- return 1;\r
-\r
- var type = el.getAttribute( "x-popup-type" );\r
- var setup = el.getAttribute( "x-tmp-setup" );\r
- var newId = name;\r
- if( newId.indexOf( "_tmp") <= 0 )\r
- newId += "_tmp";\r
-\r
- if( !setup )\r
- {\r
- el.setAttribute( "x-tmp-setup", 1 );\r
- \r
- if( type == "pulldown" )\r
- {\r
- var strAdjust = kadovAdjustObjectTag(srcDiv.innerHTML,0);\r
- var strCleanHTML = kadovRetrieveCleanHTML(strAdjust, "<!--", "-->");\r
- strCleanHTML = kadovRetrieveCleanHTML(strCleanHTML, "<SCRIPT", "/SCRIPT>");\r
-\r
- //work around the bug in HH.exe that highlight the phrases when use Search tab\r
- //this approach is just removing the <FONT...> tag inserted by Microsoft in the runtime\r
- strCleanHTML = kadovRetrieveCleanHTML(strCleanHTML, "<FONT color=#", "\">", 52);\r
- \r
- var strStyle = " style='display:none; position:relative;";\r
- var newDiv = "<div class=droptext id=" + newId + strStyle + "'>" + strCleanHTML + "</div>";\r
-\r
- srcDiv.outerHTML = ""; // empty the original DIV tag\r
- var elParentPra = kadovFindParentParagraph(el);\r
- if( elParentPra )\r
- elParentPra.insertAdjacentHTML( "AfterEnd", newDiv );\r
- }\r
- else if( type == "expanding" )\r
- {\r
- var inner = kadovRetrieveTextInner(srcDiv);\r
- if( inner == "" )\r
- inner = srcDiv.innerHTML;\r
- var strAdjust = kadovAdjustObjectTag(inner,0);\r
- var strCleanHTML = kadovRetrieveCleanHTML(strAdjust, "<!--", "-->");\r
- strCleanHTML = kadovRetrieveCleanHTML(strCleanHTML, "<SCRIPT", "/SCRIPT>");\r
- var strClassName = (el.className == "glossterm") ? "glosstext" : "expandtext";\r
- var newSpan = "<span class=" + strClassName + " style='display: none;' id=" + newId + "> " + strCleanHTML + "</span>";\r
- srcDiv.outerHTML = ""; // empty the original DIV tag\r
- el.insertAdjacentHTML( "AfterEnd", newSpan );\r
- }\r
- }\r
- return 0;\r
-}\r
-\r
-function kadovTextPopup( el )\r
-{\r
- if( (!CCSSP.bIsWinOS && !CCSSP.bIsSunOS) || (window.event == null) )\r
- return;\r
- window.event.cancelBubble = true;\r
-\r
- if( typeof(el) == "string" )\r
- el = document.all.item(el);\r
-\r
- var src = el.getAttribute( "x-use-popup" );\r
- if(!src)\r
- return;\r
-\r
- var name = src;\r
- if( src.substr(0,1) == "#" ) \r
- name = src.substr(1, src.length-1) + "_tmp";\r
- var srcDiv = document.all.item(name);\r
- if( !srcDiv )\r
- return;\r
-\r
- var type = el.getAttribute( "x-popup-type" );\r
- var setup = el.getAttribute( "x-tmp-setup" );\r
- if( srcDiv )\r
- {\r
- if( srcDiv.style.display == "" )\r
- srcDiv.style.display = "none";\r
- else\r
- {\r
- srcDiv.style.display = "";\r
- if( typeof(srcDiv.bInitialized) == "undefined" )\r
- {\r
- srcDiv.bInitialized = true;\r
- kadovInitEffects(name);\r
- kadovInitEachChild(srcDiv);\r
- }\r
- }\r
- }\r
- return;\r
-}\r
-\r
-function kadovFindParentParagraph( el )\r
-{\r
- if( typeof(el) == "string" )\r
- el = document.all.item(el);\r
- if( (!el) || el.tagName == "BODY" )\r
- return null;\r
- if( kadovIsParagraph(el.parentElement) )\r
- return el.parentElement;\r
- else\r
- return kadovFindParentParagraph( el.parentElement );\r
-}\r
-\r
-//Begin HTML code invoked function\r
-function kadovRegisterEventHandler( obj, strEvent, strEventHandler )\r
-{\r
- if( !gbBsIE4 )\r
- return;\r
- CCSSP.RegisterEventHandler( obj, strEvent, strEventHandler );\r
-}\r
-\r
-function kadovTextPopupInit( el )\r
-{\r
- if( (!gbBsIE4) || (!CCSSP.bIsWinOS && !CCSSP.bIsSunOS))\r
- return;\r
- \r
- if( typeof(el) == "string" )\r
- el = document.all.item(el);\r
- if( el != null )\r
- {\r
- CCSSP.RegisterEventHandler( el, "onclick", "kadovTextPopup(" + el.id +");" );\r
- CCSSP.RegisterEventHandler( window, "onload", "kadovTextPopupOnLoad(" + el.id +");" );\r
- }\r
-}\r
-//End HTML code invoked function\r
-\r
-//End to support extended and dropdown text effects.\r
-\r
-//Begin to convert iWrite format to RoboEditor Format for DHTML effects\r
-function kadovInitTriggersInHead( )\r
-{\r
- if( Object.xDelayedInitElements )\r
- {\r
- var x = Object.xDelayedInitElements;\r
- for(i=0; i<x.length; i++)\r
- kadovInitTrigger( x[i] );\r
- }\r
-}\r
-\r
-//Begin HTML code invoked function\r
-function kadovFilePopupInit( el )\r
-{\r
- if( !gbBsIE4 )\r
- return;\r
- if( typeof(el) == "string" )\r
- el = document.all.item(el);\r
-\r
- if( el != null )\r
- CCSSP.RegisterEventHandler( el, "onmouseover", "BSPSPopupOnMouseOver(event);" );\r
-}\r
-\r
-function kadovInitTrigger( element )\r
-{\r
- if( !gbBsIE4 )\r
- return;\r
- var srcElement = element;\r
- if( typeof(srcElement) == "string" )\r
- {\r
- srcElement = document.all.item(element,0);\r
- if(srcElement == null)\r
- return;\r
- }\r
- \r
- if( !kadovIsParentVisible(srcElement) )\r
- return;\r
-\r
- var targets = srcElement.getAttribute( "x-targets" );\r
- var arrOneTarget = targets.split( "," );\r
- for( var i = 0; i < arrOneTarget.length; i ++ )\r
- bsscFXInit( element, arrOneTarget[i], null, null, null, null );\r
-}\r
-\r
-function kadovIsParentVisible( el )\r
-{\r
- if( typeof(el) == "string" )\r
- el = document.all.item(el);\r
- if( (!el) || el.tagName == "BODY" )\r
- return true;\r
- if( el.style.display == 'none' ) //el.visibility == 'hidden' || \r
- return false;\r
- else\r
- return kadovIsParentVisible( el.parentElement );\r
-}\r
-\r
-function kadovInitEffects( element )\r
-{\r
- if( !gbBsIE4 )\r
- return;\r
- var srcElement = element;\r
- if( typeof(srcElement) == "string" )\r
- {\r
- srcElement = document.all.item(element,0);\r
- if(srcElement == null)\r
- return;\r
- }\r
- \r
- if( !kadovIsParentVisible(srcElement) )\r
- return;\r
- \r
- kadovInitEffect( srcElement, "x-on-hover" );\r
- kadovInitEffect( srcElement, "x-on-pageclick" );\r
- kadovInitEffect( srcElement, "x-on-pageload" );\r
- kadovInitEffect( srcElement, "x-on-trigger-1" );\r
- kadovInitEffect( srcElement, "x-on-trigger-2" );\r
-}\r
-//End HTML code invoked function\r
-\r
-function kadovInitEffect( element, prop )\r
-{\r
- var values = null;\r
- if( element.getAttribute( "currentStyle" ) && element.currentStyle.getAttribute)\r
- values = element.currentStyle.getAttribute( prop );\r
- else if (element.style.getAttribute)\r
- values = element.style.getAttribute( prop );\r
- if( !values )\r
- return;\r
-\r
- var functions = new Array();\r
- var nIdx = 0, nStart = 0;\r
- var nNext = values.indexOf( "\)", 0);\r
- while( nNext >= 0 && nNext < values.length )\r
- {\r
- functions[nIdx] = values.substr( nStart, nNext-nStart+1);\r
- nStart = nNext + 1;\r
- nIdx++;\r
- nNext = values.indexOf( "\)", nStart);\r
- }\r
- \r
- for( var i=0; i<functions.length; i++)\r
- {\r
- var id = element.getAttribute( "id" );\r
- var translatedProp = kadovTranslateProp(prop);\r
-\r
- var lp = functions[i].indexOf( "(" );\r
- var fnname = functions[i].substring(0, lp);\r
- var srcargs = functions[i].substring(lp+1, functions[i].length-1);\r
- \r
- var nClickTimes = 1;\r
- var arrForClickCount = srcargs.split( "," );\r
- for( var j = 0; j < arrForClickCount.length; j++ )\r
- {// to locate and get the "clicks=99" settings\r
- var nPageClick = arrForClickCount[j].indexOf("clicks");\r
- if( nPageClick >= 0 )\r
- {\r
- nPageClick = arrForClickCount[j].indexOf("=");\r
- if( nPageClick > 0 )\r
- {\r
- nClickTimes = arrForClickCount[j].substring( nPageClick + 1, arrForClickCount[j].length) * 1;\r
- break;\r
- }\r
- }\r
- }\r
- var args = srcargs;\r
- if( j < arrForClickCount.length )\r
- {// to strip out the "clicks=99" from the arguments string\r
- args = "";\r
- for( var k = 0; k < arrForClickCount.length; k ++ )\r
- {\r
- if( k != j )\r
- {\r
- args += arrForClickCount[k];\r
- if( k < arrForClickCount.length - 1 )\r
- args += ",";\r
- }\r
- }\r
- }\r
- bsscFXInit( null, id, translatedProp, fnname, args, nClickTimes );\r
- }\r
-}\r
-\r
-function kadovTranslateProp( prop )\r
-{\r
- switch( prop )\r
- {\r
- case "x-on-hover" : return "bsschover";\r
- case "x-on-pageclick" : return "bsscpageclick";\r
- case "x-on-pageload" : return "bsscpageload";\r
- case "x-on-trigger-1" : return "bssctrigger1";\r
- case "x-on-trigger-2" : return "bssctrigger2";\r
- }\r
- return null;\r
-}\r
-//End to convert iWrite format to RoboEditor Format for DHTML effects\r
-\r
-//Begin the definition of one entry to DHTML effects\r
-function bsscFXInit( trigger_ID, target_ID, event_type, \r
- action_type, action_setting, event_addional )\r
-{\r
- if( (!CCSSP.bIsWinOS && !CCSSP.bIsSunOS ) || typeof(target_ID) != "string" )//MUST have a target_ID\r
- return; // we don't support Navigator yet\r
- \r
- if( typeof(event_type) == "string" )\r
- event_type = event_type.toLowerCase();\r
- if( typeof(action_type) == "string" )\r
- action_type = action_type.toLowerCase();\r
- if( typeof(action_setting) == "string" )\r
- action_setting = action_setting.toLowerCase();\r
- \r
- // to get the target element then add it to the target list\r
- var eleTarget = CCSSP.GetObject( target_ID );\r
- if( (eleTarget != null) && (event_type != null) && (action_type != null) )\r
- {\r
- CEngine.AddOneTarget( target_ID, eleTarget );\r
- CEngine.BuildTargetObject(target_ID, event_type, action_type, action_setting, event_addional);\r
- }\r
- \r
- // to validate the trigger_ID parameter\r
- if( typeof(trigger_ID) == "string" && trigger_ID != "" )\r
- CEngine.BuildTriggerObject( trigger_ID, target_ID );\r
-} \r
-//End the definition of one entry to DHTML effects\r
-\r
-\r
-/// Section End - kadov DHTM (JavaScript 1.2)\r
-\r
-\r
-/// Section Begin - CCSSP DHTM (JavaScript 1.2)\r
-\r
-//Begin JavaScript libary for cross-platform positioning object.\r
-function CCSSP(){} // constructor of CCSSP class\r
-\r
-CCSSP.strAgent = navigator.userAgent.toLowerCase(); \r
-CCSSP.nAppVersion = parseInt(navigator.appVersion);\r
-\r
-CCSSP.bIsWinOS = ((CCSSP.strAgent.indexOf("win") >= 0) || (CCSSP.strAgent.indexOf("16bit") >= 0));\r
-CCSSP.bIsMacOS = (CCSSP.strAgent.indexOf("mac") >= 0);\r
-CCSSP.bIsSunOS = (CCSSP.strAgent.indexOf("sunos") != -1);\r
-\r
-CCSSP.bIsIE = (navigator.appName.indexOf("Microsoft") >= 0);\r
-CCSSP.bIsIE4 = (CCSSP.bIsIE && (CCSSP.nAppVersion >= 4));\r
-CCSSP.bIsIE5 = (CCSSP.bIsIE4 && (CCSSP.strAgent.indexOf("msie 5") != -1) )\r
-\r
-CCSSP.bIsNav = (navigator.appName.indexOf("Netscape") >= 0);\r
-CCSSP.bIsNav4 = (CCSSP.bIsNav && (CCSSP.nAppVersion >= 4));\r
-CCSSP.bIsNav6 = (CCSSP.bIsNav && (CCSSP.nAppVersion >= 5));\r
-\r
-CCSSP.GetObject = function( obj )\r
-{//convert object name string or reference into a valid object reference\r
- if( typeof(obj) == "object" )\r
- return obj;\r
- else if( typeof(obj) == "string" && obj != "")\r
- {\r
- if( CCSSP.bIsNav4 )\r
- return eval("document." + obj);\r
- else\r
- return eval("document.all." + obj);\r
- }\r
- else\r
- return null;\r
-}\r
-\r
-CCSSP.MoveObjectTo = function(obj, x, y)\r
-{//positioning an object at a specific pixel coordinate\r
- if( CCSSP.bIsNav4 )\r
- obj.moveTo(x,y);\r
- else\r
- {\r
- obj.style.pixelLeft = x;\r
- obj.style.pixelTop = y;\r
- }\r
-}\r
-\r
-CCSSP.MoveObjectBy = function(obj, dx, dy)\r
-{//moveing a object by x and/or y pixel\r
- if( CCSSP.bIsNav4 )\r
- obj.moveBy(dx,dy);\r
- else\r
- {\r
- obj.style.pixelLeft += dx;\r
- obj.style.pixelTop += dy;\r
- }\r
-}\r
-\r
-CCSSP.SetObjectBGColor = function(obj, color)\r
-{//set the background color of an object\r
- if( CCSSP.bIsNav4 )\r
- obj.bgColor = color;\r
- else\r
- obj.style.backgroundColor = color;\r
-}\r
-\r
-CCSSP.ShowObject = function(obj, bShow)\r
-{// set the object to be visible or invisible\r
- if( CCSSP.bIsNav4 )\r
- obj.visibility = (bShow == true) ? 'show' : 'hide';\r
- else\r
- obj.style.visibility = (bShow == true) ? 'visible' : 'hidden';// when hidden, it still occupy some space.\r
-}\r
-\r
-CCSSP.GetObjectLeft = function(obj)\r
-{// retrieve the x coordinate of a posionable object\r
- if( CCSSP.bIsNav4 )\r
- return obj.left;\r
- else\r
- return obj.style.pixelLeft;\r
-}\r
-\r
-CCSSP.GetObjectTop = function(obj)\r
-{// retrieve the y coordinate of a posionable object\r
- if( CCSSP.bIsNav4 )\r
- return obj.top;\r
- else\r
- return obj.style.pixelTop;\r
-}\r
-\r
-CCSSP.GetObjectContainLeft = function(obj)\r
-{// retrieve the x coordinate of a posionable object relative to it's parent element\r
- if( CCSSP.bIsNav4 )\r
- return obj.pageX;\r
- else\r
- {\r
- if( obj == document.body )\r
- return obj.clientLeft;\r
- else\r
- return obj.offsetLeft;\r
- }\r
-}\r
-\r
-CCSSP.GetObjectWindowLeft = function(obj)\r
-{// retrieve the x coordinate of a posionable object relative to browser window\r
- if( CCSSP.bIsNav4 )\r
- return obj.pageX;\r
- else\r
- {\r
- var nOffsetWindowLeft = 0;\r
- for(var element = obj; element; element = element.offsetParent)\r
- nOffsetWindowLeft += CCSSP.GetObjectContainLeft(element);\r
- return nOffsetWindowLeft;\r
- }\r
-}\r
-\r
-CCSSP.GetObjectContainTop = function(obj)\r
-{// retrieve the y coordinate of a posionable object relative to it's parent element\r
- if( CCSSP.bIsNav4 )\r
- return obj.pageY;\r
- else\r
- {\r
- if( obj == document.body )\r
- return obj.clientTop;\r
- else\r
- return obj.offsetTop;\r
- }\r
-}\r
-\r
-CCSSP.GetObjectWindowTop = function(obj)\r
-{// retrieve the y coordinate of a posionable object relative to browser window\r
- if( CCSSP.bIsNav4 )\r
- return obj.pageY;\r
- else\r
- {\r
- var nOffsetWindowTop = 0;\r
- for(var element = obj; element; element = element.offsetParent)\r
- nOffsetWindowTop += CCSSP.GetObjectContainTop(element);\r
- return nOffsetWindowTop;\r
- }\r
-}\r
-\r
-CCSSP.GetObjectHeight = function(obj)\r
-{// retrieve the height of a posionable object\r
- if( CCSSP.bIsNav4 )\r
- return obj.clip.height;\r
- else\r
- return obj.offsetHeight;\r
-}\r
-\r
-CCSSP.GetObjectWidth = function(obj)\r
-{// retrieve the width of a posionable object\r
- if( CCSSP.bIsNav4 )\r
- return obj.clip.width;\r
- else\r
- return obj.offsetWidth;\r
-}\r
-\r
-CCSSP.RegisterEventHandler = function( srcObj, rawEventName, funcHandler )\r
-{ // to add the "funcHandler" as the "rawEventName" 's handler to the "srcObj" object,the original event handler will be combined\r
- if (CCSSP.bIsNav4 && !CCSSP.bIsNav6)\r
- return ;\r
- var oldHandler = "";\r
- if (CCSSP.bIsMacOS && CCSSP.bIsIE4)\r
- {\r
- if (typeof(srcObj[rawEventName.toLowerCase()])=="unknown")\r
- { //search for <SCRIPT> tag which define the event handler\r
- for( var i = 0; i < document.scripts.length; i++ ) \r
- {\r
- var script = document.scripts[i];\r
- if( (script.htmlFor == srcObj.id || script.htmlFor == srcObj ) && script.event == rawEventName )\r
- {\r
- oldHandler = script.innerHTML;\r
- break;\r
- }\r
- }\r
- }\r
- }\r
- else\r
- {\r
- var oldInlineHandler = srcObj[rawEventName.toLowerCase()];\r
- if( oldInlineHandler != null && typeof(oldInlineHandler) != "undefined")\r
- {\r
- var functionDefinition = oldInlineHandler.toString();\r
- var bodyStart = functionDefinition.indexOf( "{" );\r
- var bodyEnd = functionDefinition.lastIndexOf( "}" );\r
- if( bodyStart > 0 || bodyEnd > bodyStart )\r
- oldHandler = functionDefinition.substr( bodyStart + 1, bodyEnd - bodyStart - 2 );\r
- }\r
- else if( CCSSP.bIsIE4 )\r
- { //search for <SCRIPT> tag which define the event handler\r
- for( var i = 0; i < document.scripts.length; i++ ) \r
- {\r
- var script = document.scripts[i];\r
- if( (script.htmlFor == srcObj.id || script.htmlFor == srcObj ) && script.event == rawEventName )\r
- {\r
- oldHandler = script.innerHTML;\r
- break;\r
- }\r
- }\r
- }\r
- } \r
- if( oldHandler.indexOf(funcHandler) >= 0 )\r
- return;// to prevent register the funtion twice.\r
-\r
- if( CCSSP.bIsNav4 ) // only "onload, onresize, onfocus" apply to window\r
- {// other raw events will apply to layer\r
- var noOn = rawEventName.substring(2, rawEventName.length);\r
- if( typeof(noOn) == "string" && noOn.length > 3 ) {\r
- srcObj.captureEvents( Event[noOn.toUpperCase()] );\r
- }\r
- }\r
-\r
- var newHandler = oldHandler;\r
- if( newHandler.length == 0 )\r
- newHandler = funcHandler;\r
- else\r
- newHandler += "; " + funcHandler;\r
- srcObj[rawEventName.toLowerCase()] = new Function( newHandler );\r
-}\r
-\r
-CCSSP.GetWindowHeight = function()\r
-{// retrieve the height of available content in browser window\r
- if( CCSSP.bIsNav4 )\r
- return window.innerHeight;\r
- else\r
- return document.body.clientHeight;\r
-}\r
-\r
-CCSSP.GetWindowBottom = function()\r
-{// retrieve the bottom postion of browser window\r
- if( CCSSP.bIsNav4 )\r
- return window.outerHeight + window.pageYOffset;\r
- else\r
- return document.body.clientHeight + document.body.scrollTop;\r
-}\r
-\r
-CCSSP.GetWindowWidth = function()\r
-{// retrieve the width of available content in browser window\r
- if( CCSSP.bIsNav4 )\r
- return window.innerWidth;\r
- else\r
- return document.body.clientWidth;\r
-}\r
-\r
-CCSSP.GetWindowRight = function()\r
-{// retrieve the right postion of browser window\r
- if( CCSSP.bIsNav4 )\r
- return window.outerWidth + window.pageXOffset;\r
- else\r
- return document.body.clientWidth + document.body.scrollLeft;\r
-}\r
-\r
-CCSSP.TrimString = function( objString, subtrim )\r
-{// to trim the "subtrim" in the beginning and ending of a string object\r
- if( typeof(subtrim) != "string" || subtrim == null )\r
- return objString;\r
- var strHead = objString.substring(0, 1);\r
- var strRear = objString.substring(objString.length-1, objString.length);\r
- if( strHead != subtrim && strRear != subtrim )\r
- return objString;\r
- \r
- var spacePos = objString.indexOf(subtrim);\r
- if( spacePos < 0 )\r
- return objString;\r
- else if( spacePos == objString.length - 1 )\r
- return objString.substring(0, spacePos);\r
- else\r
- {\r
- var newString = objString.substring( spacePos + 1, objString.length);\r
- return CCSSP.TrimString( newString, subtrim );\r
- }\r
-}\r
-\r
-CCSSP.TrimSpace = function( objString )\r
-{\r
- var Trim1 = CCSSP.TrimString( objString, " ");\r
- return CCSSP.TrimString( Trim1, "\'");\r
-}\r
-\r
-CCSSP.GetEventElement = function( navEventObject )\r
-{// to get the element who fired the current event\r
- if(CCSSP.bIsNav4 ) \r
- if (CCSSP.bIsNav6)\r
- return null;\r
- else\r
- navEventObject.target;\r
- else\r
- return event.srcElement;\r
-}\r
-\r
-CCSSP.PrepareFilter = function( Obj )\r
-{//to prepare for making the filter work\r
- Obj.style.filter = "";\r
- if( Obj.style.width != "" || Obj.style.height != "" || Obj.style.position == "absolute" )\r
- return;\r
- Obj.style.height = CCSSP.GetObjectHeight(Obj);\r
-}\r
-\r
-CCSSP.IsDescendant = function( progenitor, progeny )\r
-{\r
- if( typeof(progeny) == "undefined" || progeny == null )\r
- return false;\r
- else if( progeny == progenitor )\r
- return true; \r
- else if( progeny.id == progenitor.id ) \r
- return true; \r
- else if( progeny.parentElement == progenitor.parentElement )\r
- return false;\r
- else\r
- return CCSSP.IsDescendant( progenitor, progeny.parentElement );\r
-}\r
-\r
-CCSSP.IsTextTag = function( Obj )\r
-{\r
- if( typeof( Obj.tagName ) == "undefined" )\r
- return false;\r
- return( Obj.tagName.indexOf("H") == 0 || Obj.tagName == "P" || \r
- Obj.tagName == "FONT" || Obj.tagName == "SPAN" );\r
-}\r
-\r
-//End JavaScript libary for cross-platform positioning object.\r
-\r
-/// Section End - CCSSP DHTM (JavaScript 1.2)\r
-\r
-/// Section Begin - CCSSP DHTM 1 (JavaScript 1.2)\r
-\r
-//Begin the definition of class CTrigger\r
-function CTrigger( TriggerElement )\r
-{\r
- // object : the trigger element. Never be null. \r
- this.eleTrigger = TriggerElement;\r
- \r
- // number : the click counter number: only 3 values: 0,1,2;\r
- this.nCounter = 0; \r
- \r
- //object as associative array of string:\r
- // the associate target ID strings; one element at least. \r
- this.objStrTarget = new Object();\r
- this.eleTrigger.style.cursor = "hand";\r
- if( this.eleTrigger.tagName == "AREA" && this.eleTrigger.getAttribute("href") == "" )\r
- this.eleTrigger.setAttribute("href", "#") // to make a hand cursor for image map\r
-}\r
-\r
-CTrigger.prototype.AddTargetID = function( strTargetID )\r
-{// add one target ID string to the objStrTarget\r
- if( typeof(strTargetID) != "string" )\r
- return ;\r
- if( typeof(this.objStrTarget[strTargetID]) != "string" )\r
- this.objStrTarget[strTargetID] = strTargetID;\r
-}\r
-\r
-CTrigger.prototype.OnTriggerClick = function()\r
-{// to activate all asociated target\r
- var strEventType = ( (this.nCounter++)% 2 == 0 ) ? \r
- "bssctrigger1" : "bssctrigger2";\r
- \r
- // to enumerate associative target element's ID string\r
- for( var strTargetID in this.objStrTarget ) \r
- CEngine.SendEventToOneTarget( strTargetID, strEventType );\r
-}\r
-//End the definition of class CTrigger\r
-\r
-//Begin the definition of class CTarget\r
-function CTarget( TargetElement )\r
-{\r
- // object : the target element. Never be null.\r
- this.eleTarget = TargetElement;\r
- this.objManager = new Object(); // object: the event manager\r
-} \r
-\r
-CTarget.nPageClickCounter = 0;// static class property.\r
-\r
-CTarget.prototype.GetAgencyObject = function(str_action_type,action_setting )\r
-{// return the action agency ( effect )object's refernece \r
- switch( str_action_type )\r
- {\r
- case "show":return new CAgencyShow( this.eleTarget, true ) ;\r
- case "hide":return new CAgencyShow( this.eleTarget, false ) ;\r
-\r
- case "flyin" : \r
- return new CAgencyFly(this.eleTarget, action_setting, true);\r
- case "flyout" : \r
- return new CAgencyFly(this.eleTarget, action_setting, false);\r
- case "spiralin" : \r
- return new CAgencySpiral(this.eleTarget, action_setting, true);\r
- case "spiralout" : \r
- return new CAgencySpiral(this.eleTarget, action_setting, false);\r
- case "zoomin" :\r
- return new CAgencyZoom(this.eleTarget, action_setting, true);\r
- case "zoomout" : \r
- return new CAgencyZoom(this.eleTarget, action_setting, false);\r
- case "elastic" : \r
- return new CAgencyElastic(this.eleTarget, action_setting);\r
- \r
- case "fadein" : \r
- return (CCSSP.bIsIE4)? new CAgencyAlpha(this.eleTarget, action_setting, true) : null;\r
- case "fadeout" :\r
- return (CCSSP.bIsIE4)? new CAgencyAlpha(this.eleTarget, action_setting, false) : null;\r
- case "rockrollstatic" :\r
- case "rockroll" :\r
- return (CCSSP.bIsIE4)? new CAgencyWave(this.eleTarget, action_setting, false) : null;\r
- \r
- case "glow":\r
- return (CCSSP.bIsIE4)? new CAgencyGlow(this.eleTarget,action_setting) : null;\r
- case "dropshadow":\r
- return (CCSSP.bIsIE4)? new CAgencyDropShadow(this.eleTarget,action_setting) : null;\r
- case "transition" :\r
- return (CCSSP.bIsIE4)? new CAgencyRevealTrans(this.eleTarget,action_setting) : null;\r
- case "blur" :\r
- return (CCSSP.bIsIE4)? new CAgencyBlur(this.eleTarget,action_setting) : null;\r
-\r
- case "fliph" : // all these 4 do NOT need any parameters\r
- case "flipv" :\r
- case "invert":\r
- case "gray" :\r
- return (CCSSP.bIsIE4)? new CAgencyChangeFilter(this.eleTarget, str_action_type) : null;\r
- \r
- case "fontchange": // the effects below change the style on the fly, so won't work in Navigator\r
- return (CCSSP.bIsIE4)? new CAgencyFontChange(this.eleTarget,action_setting) : null;\r
- case "boderchange": \r
- case "stylechange":\r
- return (CCSSP.bIsIE4)? new CAgencyChangeStyle(this.eleTarget,action_setting) : null;\r
-\r
- default: return null;\r
- }\r
-}\r
-\r
-CTarget.prototype.SetEventManager = function( \r
- one_event_type,str_action_type,action_setting,event_additional)\r
-{// to set the event manager with specified action \r
- if( typeof( one_event_type ) != "string" || \r
- typeof( str_action_type ) != "string"||\r
- typeof( action_setting ) != "string" )\r
- return false;\r
- if( typeof(this.objManager[one_event_type]) == "undefined" )\r
- {\r
- this.objManager[one_event_type] = new Object();\r
- this.objManager[one_event_type].length = 0;\r
- }\r
- \r
- var eventAgency = this.GetAgencyObject(str_action_type,action_setting);\r
- if( eventAgency != null )\r
- {\r
- var ct = this.objManager[one_event_type].length ++;\r
- this.objManager[one_event_type][ct] = eventAgency;\r
- \r
- if( one_event_type == "bsscpageclick" )\r
- {// to deal with the "number of pageclick" stuff\r
- if( typeof(event_additional) == "number" )\r
- this.objManager[one_event_type][ct].nPageClick = event_additional;\r
- else // set the default number \r
- this.objManager[one_event_type][ct].nPageClick = 1;\r
- \r
- if( (typeof(this.objManager.nMinPageClickIndex) == "undefined") ||\r
- (this.objManager[one_event_type][ct].nPageClick < \r
- this.objManager[one_event_type][this.objManager.nMinPageClickIndex].nPageClick) )\r
- this.objManager.nMinPageClickIndex = ct;\r
- }\r
- \r
- //hide the object blindly,SetState function will take care of the final correct state\r
- if( ((one_event_type == "bsscpageclick") && \r
- (this.objManager[one_event_type][ct].nPageClick == 1)) ||\r
- one_event_type == "bsscpageload" ||\r
- one_event_type == "bssctrigger1" )\r
- CCSSP.ShowObject( this.eleTarget, false );\r
- \r
- if( one_event_type == "bssctrigger1" || one_event_type == "bssctrigger2" )\r
- if( typeof( this.strTriggerEvent ) == "undefined" )\r
- this.strTriggerEvent = ( one_event_type == "bssctrigger1" ) ? "bssctrigger2" : "bssctrigger1";\r
- \r
- return true;\r
- }\r
- return false;\r
-}\r
-\r
-CTarget.prototype.OnEvent = function( strBsscEvent )\r
-{// response to the event ( bssc format )\r
- if( typeof(this.objManager[strBsscEvent]) == "object" )\r
- { // to get the event agency from the event manager\r
- var eventAgency = this.objManager[strBsscEvent];\r
- for( var i = 0; i < eventAgency.length; i++ )\r
- {\r
- if( strBsscEvent == "bsscpageclick" && \r
- eventAgency[i].nPageClick != CTarget.nPageClickCounter )\r
- continue;\r
- else if( strBsscEvent == "bsschover" && event.type == "mouseout" )\r
- eventAgency[i].EndEffect();\r
- else // to invoke the unified function in effect object \r
- eventAgency[i].UpdateEffect(); \r
- }\r
- }\r
-}\r
-\r
-CTarget.prototype.SetState = function( strBsscEvent )\r
-{\r
- if( typeof(this.objManager[strBsscEvent]) != "object" )\r
- return false;\r
-\r
- // to get the event agency from the event manager\r
- var eventAgency = this.objManager[strBsscEvent];\r
- \r
- if( strBsscEvent == "bsscpageclick" )\r
- {// we only set the initial state for the minium number of pageclick \r
- eventAgency[this.objManager.nMinPageClickIndex].PrepareEffect();\r
- return true;\r
- }\r
- else\r
- {\r
- for( var i = 0; i < eventAgency.length; i++ )\r
- eventAgency[i].PrepareEffect(); // to invoke the unified function in effect object \r
- if( i > 0 )\r
- return true;\r
- else\r
- return false;\r
- }\r
-}\r
-//End the definition of class CTarget\r
-\r
-//Begin the definition of CEngine class\r
-function CEngine(){}// all properities are going be "class" properities\r
-\r
-// object : as associative array of trigger objects\r
-CEngine.objTrigger = new Object();\r
-// object : as associative array of target objects \r
-CEngine.objTarget = new Object(); \r
-\r
-// Array : each element is a CAgencyXXX animation object\r
-CEngine.arrAnimation = new Array();\r
-CEngine.PerformAnimation = function( nIndex )\r
-{// animation : update effects function\r
- CEngine.arrAnimation[nIndex].UpdateEffect();\r
-}\r
-\r
-CEngine.AddOneTrigger = function(TriggerID,TriggerElement)\r
-{// add one Trigger object into the trigger array\r
- if( typeof(TriggerID) != "string" || TriggerElement == null ||\r
- typeof(TriggerElement) != "object" )\r
- return;\r
- if( typeof(CEngine.objTrigger[TriggerID] ) != "object" )\r
- CEngine.objTrigger[TriggerID] = new CTrigger(TriggerElement);\r
-}\r
- \r
-CEngine.AddOneTarget = function(TargetID, TargetElement)\r
-{// add one Target object into the target array\r
- if( typeof(TargetID) != "string" || TargetElement == null ||\r
- typeof(TargetElement) != "object" )\r
- return;\r
- if( typeof(CEngine.objTarget[TargetID]) != "object" )\r
- CEngine.objTarget[TargetID] = new CTarget( TargetElement );\r
-}\r
-\r
-CEngine.SendEventToOneTarget = function(strTargetID, strBsscEvent )\r
-{// to activate one target object\r
- if( typeof(CEngine.objTarget[strTargetID]) == "object" ) \r
- {\r
- if( strBsscEvent == "bssctrigger1" || strBsscEvent == "bssctrigger2" )\r
- {//now, the "bssctrigger1" and "bssctrigger2" work like a toggle\r
- if( strBsscEvent == CEngine.objTarget[strTargetID].strTriggerEvent )\r
- strBsscEvent = (strBsscEvent == "bssctrigger1") ? "bssctrigger2" : "bssctrigger1";\r
- CEngine.objTarget[strTargetID].strTriggerEvent = strBsscEvent;\r
- }\r
- CEngine.objTarget[strTargetID].OnEvent( strBsscEvent );\r
- }\r
-}\r
-\r
-CEngine.SendEventToAllTarget = function( strBsscEvent )\r
-{ //to activate all target associative to the BSSC event\r
- for( var strTargetID in CEngine.objTarget ) //to enumerate all target\r
- CEngine.SendEventToOneTarget( strTargetID, strBsscEvent );\r
-}\r
-\r
-CEngine.SetOneTargetInitialState = function( strTargetID )\r
-{// only invoked after ALL effects for the target have been set\r
- if( typeof(CEngine.objTarget[strTargetID]) == "object" ) \r
- {// to get target object\r
- var objTarget = CEngine.objTarget[strTargetID];\r
- if( objTarget.SetState( "bsscpageload" ) == false )\r
- {\r
- objTarget.SetState( "bsscpageclick" );\r
- objTarget.SetState( "bssctrigger1" );\r
- }\r
- }\r
-}\r
-\r
-CEngine.AdjustPageClickCounter = function()\r
-{\r
- var nAdjustedClickCounter = CTarget.nPageClickCounter;\r
- var bAdjusted = false;\r
- for( var strTargetID in CEngine.objTarget ) //to enumerate all target\r
- {// try to find the minum pageCliclConter greater than CTarget.nPageClickCounter\r
- var objEventPageClick = CEngine.objTarget[strTargetID].objManager.bsscpageclick;\r
- if( objEventPageClick != null )\r
- {\r
- for( var i = 0; i < objEventPageClick.length; i++ )\r
- {\r
- var nOtherPageClick = objEventPageClick[i].nPageClick;\r
- if( nOtherPageClick == CTarget.nPageClickCounter )\r
- return;\r
- if( nOtherPageClick > CTarget.nPageClickCounter )\r
- {\r
- if( !bAdjusted )\r
- {\r
- nAdjustedClickCounter = nOtherPageClick;\r
- bAdjusted = true;\r
- }\r
- else if( nOtherPageClick < nAdjustedClickCounter )\r
- nAdjustedClickCounter = nOtherPageClick;\r
- }\r
- }\r
- }\r
- }\r
- CTarget.nPageClickCounter = nAdjustedClickCounter;\r
-}\r
-\r
-CEngine.OnPageLoad = function()\r
-{ \r
- // first, to set all target's initial state\r
- for( var strTargetID in CEngine.objTarget )\r
- CEngine.SetOneTargetInitialState( strTargetID );\r
- \r
- // to invoke all target's onpageload handler\r
- CEngine.SendEventToAllTarget( "bsscpageload" );\r
-}\r
-\r
-CEngine.OnPageClick = function()\r
-{ // to invoke all target's onpageclick handler\r
- var src = CCSSP.GetEventElement( arguments[0] );\r
- if( src == null )\r
- return;\r
- \r
- var objClickedTrigger = null;\r
- for( var strTriggerID in CEngine.objTrigger )\r
- { // to detect which trigger is clicked\r
- if( CCSSP.IsDescendant( CEngine.objTrigger[strTriggerID].eleTrigger,src) )\r
- {\r
- objClickedTrigger = CEngine.objTrigger[strTriggerID];\r
- break;\r
- }\r
- }\r
- \r
- if( objClickedTrigger != null) // the clicked trigger found\r
- objClickedTrigger.OnTriggerClick();\r
- else // no trigger is clicked\r
- { // to send PageClick event to all target\r
- CTarget.nPageClickCounter++;\r
- CEngine.AdjustPageClickCounter();\r
- CEngine.SendEventToAllTarget( "bsscpageclick" );\r
- }\r
-} \r
-\r
-CEngine.OnMouseOver = function()\r
-{ // to invoke all target's onpageload handler\r
- var src = CCSSP.GetEventElement( arguments[0] );\r
- if( src == null )\r
- return;\r
- \r
- var strHoveredTargetID = null;\r
- for( var strTargetID in CEngine.objTarget )\r
- { // to detect which Target is hovering on\r
- if( CCSSP.IsDescendant( CEngine.objTarget[strTargetID].eleTarget, src ) )\r
- {\r
- strHoveredTargetID = strTargetID;\r
- break;\r
- }\r
- }\r
- \r
- if( strHoveredTargetID != null ) // the hovered target found\r
- CEngine.SendEventToOneTarget( strHoveredTargetID, "bsschover" );\r
-}\r
-\r
-CEngine.BuildTargetObject = function(target_ID,event_type,action_type,\r
- action_setting, event_additional)\r
-{// to build target object \r
- // to get the target object\r
- if( typeof( CEngine.objTarget[target_ID] ) != "object" )\r
- return false;// the engine's AddOneTarget function might have failed.\r
- var TargetObject = CEngine.objTarget[target_ID];\r
- \r
- // to prepare the parameters for the event manager\r
- var arrEvent = event_type.split("|"); // to split the combined event_type string\r
- var arrAction = action_type.split("|");//to split the combined action_type string\r
- for( var trim = 0; trim < arrEvent.length; trim++ )\r
- arrEvent[trim] = CCSSP.TrimSpace(arrEvent[trim]);\r
- \r
- for( trim = 0; trim < arrAction.length; trim++ )\r
- arrAction[trim] = CCSSP.TrimSpace(arrAction[trim]);\r
- \r
- var arrSetting = new Array(); \r
- if( typeof(action_setting) == "string" )\r
- arrSetting = action_setting.split("|");// to split the combined action_setting string\r
- // to calibrate the arrays\r
- for( var i = arrSetting.length; i < arrAction.length; i++ )\r
- {\r
- if( typeof(arrSetting[i]) != "string" )\r
- arrSetting[i] = "";\r
- } \r
-\r
- // to prepare for dealing with the absolute posioning element\r
- TargetObject.eleTarget.ABSX = CCSSP.GetObjectLeft( TargetObject.eleTarget );\r
- TargetObject.eleTarget.ABSY = CCSSP.GetObjectTop( TargetObject.eleTarget );\r
-\r
- if( arrEvent.length > 1 )\r
- {// if event is combined, it must be : "bssctrigger1 | bssctrigger2"\r
- if( arrAction.length != 2 )\r
- return false; // if event is combined, there must be 2 actions\r
- for( i = 0 ; i < 2; i++ )\r
- {\r
- if( TargetObject.SetEventManager(arrEvent[i], arrAction[i], \r
- arrSetting[i], event_additional) == false )\r
- return false; // the event manager has not been set up\r
- }\r
- }\r
- else // the event_type string is not combined\r
- {\r
- for( i = 0 ; i < arrAction.length; i++ )\r
- {\r
- TargetObject.SetEventManager(event_type, arrAction[i], arrSetting[i], event_additional);\r
- // to validate the event manager\r
- if( typeof(TargetObject.objManager[event_type]) != "object" ||\r
- typeof(TargetObject.objManager[event_type][i]) != "object" )\r
- return false; // the event manager has not been set up\r
- }\r
- }\r
- return true;\r
-}\r
-\r
-CEngine.BuildTriggerObject = function(trigger_ID, target_ID)\r
-{// to build the trigger object\r
- var arrTrigger = trigger_ID.split("|"); // to split the combined trigger_ID string\r
- for( var i = 0; i < arrTrigger.length; i ++ )\r
- {// to get the trigger element then add it to the trigger list\r
- arrTrigger[i] = CCSSP.TrimSpace( arrTrigger[i] );\r
- var eleTrigger = CCSSP.GetObject( arrTrigger[i] );\r
- if( eleTrigger == null )\r
- continue; // the trigger_ID string in the HTML code maybe wrong\r
- CEngine.AddOneTrigger( arrTrigger[i], eleTrigger );\r
-\r
- // to get the target object\r
- if( typeof( this.objTrigger[arrTrigger[i]] ) != "object" )\r
- continue;// the engine's AddOneTarget function might have failed.\r
- CEngine.objTrigger[arrTrigger[i]].AddTargetID( target_ID );\r
- }\r
-}\r
-//End the definition of CEngine class\r
-\r
-/// Section End - CCSSP DHTM 1 (JavaScript 1.2)\r
-\r
-/// Section Begin - CCSSP DHTM 2 (JavaScript 1.2)\r
-\r
-//Begin the definition of CAgencyXXXX classes\r
-\r
-//Begin of the CAgencyShow definition\r
-function CAgencyShow( element, bIsShow )\r
-{\r
- this.ele = element;\r
- this.bIsShow = bIsShow;\r
-}\r
-\r
-CAgencyShow.prototype.PrepareEffect = function()\r
-{\r
- CCSSP.ShowObject( this.ele, !this.bIsShow );\r
-}\r
-\r
-CAgencyShow.prototype.UpdateEffect = function()\r
-{\r
- CCSSP.ShowObject( this.ele, this.bIsShow );\r
-}\r
-\r
-CAgencyShow.prototype.EndEffect = function()\r
-{\r
- CCSSP.ShowObject( this.ele, !this.bIsShow );\r
-}\r
-// End of the CAgencyShow definition\r
-\r
-// Begin of CAgencyFly definition\r
-function CAgencyFly( element, settings, bIsIn )\r
-{\r
- this.ele = element;\r
- this.bIsIn = bIsIn;\r
- this.duration = 1000; // default\r
- this.direction = "right";\r
-\r
- var arrAllSet = settings.split(",");\r
- for( var i = 0; i < arrAllSet.length; i ++ )\r
- {// to retrieve the setting\r
- arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
- var arrOneSet = arrAllSet[i].split("=");\r
- for( var j = 0; j < arrOneSet.length; j++ )\r
- arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
- switch( arrOneSet[0] )\r
- {\r
- case "speed" : this.duration = 100000/arrOneSet[1]; break;\r
- case "direction" : this.direction = arrOneSet[1]; break;\r
- }\r
- }\r
- \r
- if( CCSSP.bIsIE5 && this.ele.style.position != "absolute" )\r
- this.ele.style.position = "relative";\r
- this.timer = null;\r
- this.aniIndex = CEngine.arrAnimation.length;\r
- CEngine.arrAnimation[this.aniIndex] = this;\r
-}\r
-\r
-CAgencyFly.prototype.PrepareEffect = function()\r
-{\r
- CCSSP.ShowObject(this.ele, !this.bIsIn );\r
-}\r
-\r
-CAgencyFly.prototype.UpdateEffect = function()\r
-{\r
- if( this.timer == null )\r
- this.ResetParameters();\r
-\r
- var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
- if( percent >= 1.0 )\r
- this.EndEffect();\r
- else\r
- {\r
- var newX = this.startX*(1.0-percent) + this.finalX*percent;\r
- var newY = this.startY*(1.0-percent) + this.finalY*percent;\r
- CCSSP.MoveObjectTo(this.ele, newX, newY);\r
- if( this.timer == null )\r
- this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 20 );\r
- }\r
-}\r
-\r
-CAgencyFly.prototype.EndEffect = function()\r
-{\r
- clearInterval( this.timer );\r
- this.timer = null;\r
-\r
- if( this.bIsIn ) // FlyIn\r
- CCSSP.MoveObjectTo(this.ele, this.finalX, this.finalY);\r
- else // FlyOut\r
- CCSSP.MoveObjectTo(this.ele, this.startX, this.startY);\r
- CCSSP.ShowObject(this.ele, this.bIsIn );\r
-}\r
-\r
-CAgencyFly.prototype.ResetParameters = function()\r
-{\r
- this.PrepareEffect();\r
- CCSSP.ShowObject(this.ele, true );\r
-\r
- this.startX = 0;\r
- this.startY = 0;\r
- this.finalX = 0;\r
- this.finalY = 0; \r
- \r
- var offsetLeft = CCSSP.GetObjectWindowLeft(this.ele) + this.ele.offsetWidth;\r
- var offsetTop = CCSSP.GetObjectWindowTop(this.ele) + this.ele.offsetHeight;\r
- var offsetRight = CCSSP.GetWindowRight();\r
- var offsetBottom = CCSSP.GetWindowBottom();\r
-\r
- if( this.bIsIn )\r
- { // FlyIn\r
- this.finalX = this.ele.ABSX;\r
- this.finalY = this.ele.ABSY;\r
-\r
- switch( this.direction )\r
- {\r
- case "right": this.startX = offsetRight; this.startY = this.finalY; break;\r
- case "left": this.startX = -offsetLeft; this.startY = this.finalY; break;\r
- case "down": this.startY = offsetBottom; this.startX = this.finalX; break;\r
- case "up": this.startY = -offsetTop; this.startX = this.finalX; break;\r
- case "downright":\r
- this.startX = ( offsetBottom < offsetRight) ? offsetBottom : offsetRight;\r
- this.startY = this.startX; break;\r
- case "upright":\r
- this.startX = (offsetTop < offsetRight)? offsetTop : offsetRight;\r
- this.startY = -this.startX; break;\r
- case "upleft":\r
- this.startX = -((offsetTop < offsetRight)? offsetTop : offsetRight);\r
- this.startY = this.startX; break;\r
- case "downleft":\r
- this.startX = -(( offsetBottom < offsetRight) ? offsetBottom : offsetRight);\r
- this.startY = -this.startX; break;\r
- }\r
- }\r
- else\r
- { // FlyOut\r
- this.startX = this.ele.ABSX;\r
- this.startY = this.ele.ABSY;\r
-\r
- switch( this.direction )\r
- {\r
- case "right": this.finalX = offsetRight; this.finalY = this.startY; break;\r
- case "left": this.finalX = -offsetLeft; this.finalY = this.startY; break;\r
- case "down": this.finalY = offsetBottom; this.finalX = this.startX; break;\r
- case "up": this.finalY = -offsetTop; this.finalX = this.startX; break;\r
- case "downright":\r
- this.finalX = ( offsetBottom < offsetRight) ? offsetBottom : offsetRight;\r
- this.finalY = this.finalX; break;\r
- case "upright":\r
- this.finalX = (offsetTop < offsetRight)? offsetTop : offsetRight;\r
- this.finalY = -this.finalX; break;\r
- case "upleft":\r
- this.finalX = -((offsetTop < offsetRight)? offsetTop : offsetRight);\r
- this.finalY = this.finalX; break;\r
- case "downleft":\r
- this.finalX = -(( offsetBottom < offsetRight) ? offsetBottom : offsetRight);\r
- this.finalY = -this.finalX; break;\r
- }\r
- }\r
- CCSSP.MoveObjectTo(this.ele, this.startX, this.startY);\r
- this.startTime = (new Date()).getTime();\r
-}\r
-// End of the CAgencyFly definition\r
-\r
-// Begin of CAgencySpiral\r
-function CAgencySpiral( element, settings, bIsIn )\r
-{\r
- this.ele = element;\r
- this.bIsIn = bIsIn;\r
- this.duration = 1000; // default\r
-\r
- var arrAllSet = settings.split(",");\r
- for( var i = 0; i < arrAllSet.length; i ++ )\r
- {// to retrieve the setting\r
- arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
- var arrOneSet = arrAllSet[i].split("=");\r
- for( var j = 0; j < arrOneSet.length; j++ )\r
- arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
- switch( arrOneSet[0] )\r
- {\r
- case "speed" : this.duration = 100000/arrOneSet[1]; break;\r
- }\r
- }\r
-\r
- if( CCSSP.bIsIE5 && this.ele.style.position != "absolute" )\r
- this.ele.style.position = "relative";\r
- this.timer = null;\r
- this.aniIndex = CEngine.arrAnimation.length;\r
- CEngine.arrAnimation[this.aniIndex] = this;\r
-}\r
-\r
-CAgencySpiral.prototype.PrepareEffect = function()\r
-{\r
- CCSSP.ShowObject(this.ele, !this.bIsIn );\r
-}\r
-\r
-CAgencySpiral.prototype.UpdateEffect = function()\r
-{\r
- if( this.timer == null )\r
- this.ResetParameters();\r
-\r
- var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
- if( percent >= 1.0 )\r
- this.EndEffect();\r
- else\r
- {\r
- var rf = (this.bIsIn)? (1.0 - percent) : percent; \r
- var t = (1.0-rf) * 4.0 * Math.PI\r
- var rxP = (this.bIsIn)? this.startX : this.finalX; \r
- var ryP = (this.bIsIn)? this.startY : this.finalY; \r
- var rx = (Math.abs(rxP) < 200) ? Math.abs(rxP) : 200;\r
- var ry = (Math.abs(ryP) < 200) ? Math.abs(ryP) : 200;\r
-\r
- var newX = Math.ceil(-rf*Math.cos(t)*rx) + this.ele.ABSX;\r
- var newY = Math.ceil(-rf*Math.sin(t)*ry) + this.ele.ABSY;\r
- CCSSP.MoveObjectTo(this.ele, newX, newY);\r
- if( this.timer == null )\r
- this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 20 );\r
- }\r
-}\r
-\r
-CAgencySpiral.prototype.EndEffect = function()\r
-{\r
- clearInterval( this.timer );\r
- this.timer = null;\r
- \r
- if( this.bIsIn ) // In\r
- CCSSP.MoveObjectTo(this.ele, this.finalX, this.finalY);\r
- else // Out\r
- CCSSP.MoveObjectTo(this.ele, this.startX, this.startY);\r
- CCSSP.ShowObject(this.ele, this.bIsIn );\r
-}\r
-\r
-CAgencySpiral.prototype.ResetParameters = function()\r
-{\r
- this.PrepareEffect();\r
- CCSSP.ShowObject(this.ele, true );\r
- this.startX = (this.bIsIn)? CCSSP.GetWindowRight() : this.ele.ABSX;\r
- this.startY = (this.bIsIn)? CCSSP.GetWindowBottom() : this.ele.ABSY;\r
- this.finalX = (this.bIsIn)? this.ele.ABSX : CCSSP.GetWindowRight();\r
- this.finalY = (this.bIsIn)? this.ele.ABSY : CCSSP.GetWindowBottom(); \r
- \r
- CCSSP.MoveObjectTo(this.ele, this.startX, this.startY);\r
- this.startTime = (new Date()).getTime();\r
-}\r
-// End of CAgencySpiral\r
-\r
-// Begin of CAgencyElastic\r
-function CAgencyElastic( element, settings)\r
-{\r
- this.ele = element;\r
- this.duration = 1000; // default\r
- this.direction = "right";\r
-\r
- var arrAllSet = settings.split(",");\r
- for( var i = 0; i < arrAllSet.length; i ++ )\r
- {// to retrieve the setting\r
- arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
- var arrOneSet = arrAllSet[i].split("=");\r
- for( var j = 0; j < arrOneSet.length; j++ )\r
- arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
- switch( arrOneSet[0] )\r
- {\r
- case "speed" : this.duration = 100000/arrOneSet[1]; break;\r
- case "direction" : this.direction = arrOneSet[1]; break;\r
- }\r
- }\r
- \r
- if( CCSSP.bIsIE5 && this.ele.style.position != "absolute" )\r
- this.ele.style.position = "relative";\r
- this.timer = null;\r
- this.aniIndex = CEngine.arrAnimation.length;\r
- CEngine.arrAnimation[this.aniIndex] = this;\r
-}\r
-\r
-CAgencyElastic.prototype.PrepareEffect = function()\r
-{\r
- CCSSP.ShowObject(this.ele, false );\r
-}\r
-\r
-CAgencyElastic.prototype.UpdateEffect = function()\r
-{\r
- if( this.timer == null )\r
- this.ResetParameters();\r
-\r
- var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
- if( percent >= 1.0 )\r
- this.EndEffect();\r
- else\r
- {\r
- var newX = this.startX;\r
- var newY = this.startY;\r
- var rf = Math.exp(-percent*3);\r
- var t = percent * 1.5 * Math.PI\r
- var rx = (Math.abs(this.startX) > Math.abs(this.startY)) ? this.startX : this.startY;\r
- switch (this.direction )\r
- {\r
- case "left": \r
- case "right" : newX = rf*Math.cos(t)*rx + this.ele.ABSX; break;\r
- case "up": \r
- case "down" : newY = rf*Math.cos(t)*rx + this.ele.ABSX; break;\r
- }\r
- CCSSP.MoveObjectTo(this.ele, newX, newY);\r
- if( this.timer == null )\r
- this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 20 );\r
- }\r
-}\r
-\r
-CAgencyElastic.prototype.EndEffect = function()\r
-{\r
- CCSSP.MoveObjectTo(this.ele, this.finalX, this.finalY);\r
- clearInterval( this.timer );\r
- this.timer = null;\r
-}\r
-\r
-CAgencyElastic.prototype.ResetParameters = function()\r
-{\r
- CCSSP.ShowObject(this.ele, true );\r
- this.startX = this.ele.ABSX;\r
- this.finalX = this.ele.ABSX;\r
- this.startY = this.ele.ABSY;\r
- this.finalY = this.ele.ABSY;\r
- \r
- switch (this.direction)\r
- { \r
- case "left": this.startX = -this.ele.offsetWidth; break;\r
- case "right": this.startX = this.ele.offsetWidth; break;\r
- case "up": this.startY = -this.ele.offsetHeight;break;\r
- case "down": this.startY = this.ele.offsetHeight; break;\r
- }\r
- CCSSP.MoveObjectTo(this.ele, this.startX, this.startY);\r
- this.startTime = (new Date()).getTime();\r
-}\r
-// End of CAgencyElastic\r
-\r
-// Begin of CAgencyZoom\r
-function CAgencyZoom( element, settings, bIsIn)\r
-{\r
- this.ele = element;\r
- this.duration = 1000; // default\r
- \r
- var arrAllSet = settings.split(",");\r
- for( var i = 0; i < arrAllSet.length; i ++ )\r
- {// to retrieve the setting\r
- arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
- var arrOneSet = arrAllSet[i].split("=");\r
- for( var j = 0; j < arrOneSet.length; j++ )\r
- arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
- switch( arrOneSet[0] )\r
- {\r
- case "speed" : this.duration = 100000/arrOneSet[1]; break;\r
- }\r
- }\r
-\r
- this.bIsIn = bIsIn;\r
- this.timer = null;\r
- this.aniIndex = CEngine.arrAnimation.length;\r
- CEngine.arrAnimation[this.aniIndex] = this;\r
-}\r
-\r
-CAgencyZoom.prototype.PrepareEffect = function()\r
-{\r
- CCSSP.ShowObject(this.ele, false);\r
-}\r
-\r
-CAgencyZoom.prototype.UpdateEffect = function()\r
-{\r
- if( this.timer == null )\r
- this.ResetParameters();\r
-\r
- var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
- if( percent >= 1.0 )\r
- this.EndEffect();\r
- else\r
- {\r
- var nFactorIn = Math.ceil(50+50*percent);\r
- var nFactorOut = Math.ceil(100+200*(1-percent));\r
- var AlterFontsize = ((this.bIsIn)? nFactorIn : nFactorOut) + "%";\r
- var AlterFactor = ((this.bIsIn)? nFactorIn : nFactorOut) / 100;\r
- \r
- this.UpdateEffectAllChildren(this.ele, AlterFontsize, AlterFactor);\r
- for(var index = 0; index < this.ele.all.length; index++)\r
- this.UpdateEffectAllChildren(this.ele.all[index], AlterFontsize, AlterFactor);\r
- \r
- if( this.timer == null )\r
- this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 20 );\r
- }\r
-}\r
-\r
-CAgencyZoom.prototype.UpdateEffectAllChildren = function(child, FontSize, Factor)\r
-{\r
- if( CCSSP.IsTextTag(child) )\r
- child.style.fontSize = FontSize;\r
- else\r
- {\r
- if( typeof(child.orgWidth) == "number" )\r
- child.style.width = Factor * child.orgWidth;\r
- if( typeof(child.orgHeight) == "number" )\r
- child.style.height = Factor * child.orgHeight;\r
- }\r
-}\r
-\r
-CAgencyZoom.prototype.EndEffect = function()\r
-{\r
- this.EndEffectAllChildren(this.ele);\r
- for(var index = 0; index < this.ele.all.length; index++)\r
- this.EndEffectAllChildren(this.ele.all[index]);\r
- \r
- clearInterval( this.timer );\r
- this.timer = null;\r
-}\r
-\r
-CAgencyZoom.prototype.EndEffectAllChildren = function( child )\r
-{ \r
- if( CCSSP.IsTextTag(child) )\r
- child.style.fontSize = child.orgFontSize;\r
- else\r
- {\r
- if( typeof(child.intactWidth) != "undefined" )\r
- {\r
- child.width = child.intactWidth;\r
- child.height = child.intactHeight;\r
- }\r
- else if( typeof(child.style.intactPixelWidth) != "undefined" )\r
- {\r
- child.style.pixelWidth = child.style.intactPixelWidth;\r
- child.style.pixelHeight = child.style.intactPixelHeight;\r
- }\r
- }\r
-}\r
-\r
-CAgencyZoom.prototype.ResetParameters = function()\r
-{\r
- this.PrepareEffect();\r
- this.ResetParametersAllChildren( this.ele );\r
- for(var index = 0; index < this.ele.all.length; index++)\r
- this.ResetParametersAllChildren(this.ele.all[index]);\r
- \r
- this.startTime = (new Date()).getTime();\r
-}\r
-\r
-CAgencyZoom.prototype.ResetParametersAllChildren = function( child )\r
-{\r
- CCSSP.ShowObject(child, true );\r
- if( (child.tagName == "DIV") && (child.parentElement.tagName == "TD") )\r
- child.width = "100%";// if the div is inside a cell of table, we need the this hack\r
- \r
- if( CCSSP.IsTextTag(child) )\r
- child.orgFontSize = child.style.fontSize;\r
- else\r
- {\r
- if( child.width > "" || child.height > "" )\r
- {\r
- child.orgWidth = child.intactWidth = child.width;\r
- child.orgHeight = child.intactHeight = child.height;\r
- }\r
- else if( ( typeof(child.orgWidth) != "number" ) && (typeof(child.orgHeight) != "number") )\r
- {\r
- child.orgWidth = child.style.intactPixelWidth = child.style.pixelWidth;\r
- child.orgHeight = child.style.intactPixelHeight = child.style.pixelHeight;\r
- }\r
- }\r
-}\r
-// End of CAgencyZoom\r
-\r
-//// the following effects will use IE's exclusive "filter" function ////\r
-// Begin of CAgencyAlpha definition\r
-function CAgencyAlpha( element, settings, bIsIn )\r
-{// because of "visual filter" style, this won't work in Navigator\r
- this.ele = element;\r
- this.bIsIn = bIsIn;\r
-\r
- // to set the default value\r
- this.startOpacity = (this.bIsIn) ? 0 : 100;\r
- this.endOpacity = (this.bIsIn) ? 100 : 0;\r
- \r
- this.duration = 1000; // default\r
- \r
- var arrAllSet = settings.split(",");\r
- for( var i = 0; i < arrAllSet.length; i ++ )\r
- {// to retrieve the setting\r
- arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
- var arrOneSet = arrAllSet[i].split("=");\r
- for( var j = 0; j < arrOneSet.length; j++ )\r
- arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
- switch( arrOneSet[0] )\r
- {\r
- case "speed" : this.duration = 100000/arrOneSet[1]; break;\r
- }\r
- }\r
- \r
- this.timer = null;\r
- this.aniIndex = CEngine.arrAnimation.length;\r
- CEngine.arrAnimation[this.aniIndex] = this;\r
-}\r
-\r
-CAgencyAlpha.prototype.PrepareEffect = function()\r
-{// to set the visual filter function\r
- // the visual filter ONLY work when set by "Width and Height" or\r
- // absolute position for DIV, SPAN and normal tag ( such as p )\r
- // but, "absolute" cause the following elements overlap, so:\r
- CCSSP.PrepareFilter( this.ele );\r
- CCSSP.ShowObject(this.ele, !this.bIsIn );\r
-}\r
-\r
-CAgencyAlpha.prototype.UpdateEffect = function()\r
-{// to set the visual filter function\r
- if( this.timer == null )\r
- this.ResetParameters();\r
- if( typeof(this.ele.filters.alpha) != "object" )\r
- {\r
- this.EndEffect();\r
- return;\r
- }\r
-\r
- var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
- if( percent >= 1.0 )\r
- this.EndEffect();\r
- else if( typeof(this.ele.filters.alpha) == "object" )\r
- {\r
- this.ele.filters.alpha.opacity = this.startOpacity*(1.0-percent) + this.endOpacity*percent;\r
- if( this.timer == null )\r
- this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 20 );\r
- }\r
-}\r
-\r
-CAgencyAlpha.prototype.EndEffect = function()\r
-{// to remove the visual filter function\r
- clearInterval( this.timer );\r
- this.timer = null;\r
- this.ele.style.filter = "";\r
- CCSSP.ShowObject(this.ele, this.bIsIn );\r
-}\r
-\r
-CAgencyAlpha.prototype.ResetParameters = function()\r
-{\r
- this.PrepareEffect();\r
- CCSSP.ShowObject(this.ele, true );\r
- this.ele.style.filter = "alpha(opacity=" + this.startOpacity + ")";\r
- this.startTime = (new Date()).getTime();\r
-}\r
-// End of the CAgencyAlpha definition\r
-\r
-// Begin of CAgencyWave definition\r
-function CAgencyWave( element, settings )\r
-{// because of "visual filter" style, this won't work in Navigator\r
- this.ele = element;\r
-\r
- this.duration = 0; // default\r
- this.strength = 10;\r
- this.freq = 1;\r
- this.lightstrength = 1;\r
- \r
- var arrAllSet = settings.split(",");\r
- for( var i = 0; i < arrAllSet.length; i ++ )\r
- {// to retrieve the setting\r
- arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
- var arrOneSet = arrAllSet[i].split("=");\r
- for( var j = 0; j < arrOneSet.length; j++ )\r
- arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
- switch( arrOneSet[0] )\r
- {\r
- case "duration" : this.duration = 100000/arrOneSet[1]; break;\r
- case "strength" : this.strength = arrOneSet[1]; break;\r
- case "freq" : this.freq = arrOneSet[1]; break;\r
- case "lightstrength" : this.lightstrength = arrOneSet[1]; break;\r
- }\r
- }\r
-\r
- this.timer = null;\r
- this.aniIndex = CEngine.arrAnimation.length;\r
- CEngine.arrAnimation[this.aniIndex] = this;\r
-}\r
-\r
-CAgencyWave.prototype.PrepareEffect = function()\r
-{// to set the visual filter function\r
- CCSSP.PrepareFilter(this.ele);\r
-\r
- CCSSP.ShowObject(this.ele, true );\r
-}\r
-\r
-CAgencyWave.prototype.UpdateEffect = function()\r
-{// to set the visual filter function\r
- if( this.timer == null )\r
- this.ResetParameters();\r
- if( typeof(this.ele.filters.wave) != "object" )\r
- {\r
- this.EndEffect();\r
- return;\r
- }\r
-\r
- if( this.duration > 0 )\r
- {\r
- var percent = ((new Date()).getTime() - this.startTime)/this.duration;\r
- if( percent >= 1.0 )\r
- {\r
- this.EndEffect();\r
- return;\r
- }\r
- }\r
- \r
- this.ele.filters.wave.phase += 5;\r
- this.ele.filters.wave.phase %= 100;\r
- if( this.timer == null )\r
- this.timer = setInterval("CEngine.PerformAnimation(" + this.aniIndex + ")", 50 );\r
-}\r
-\r
-CAgencyWave.prototype.EndEffect = function()\r
-{// to remove the visual filter function\r
- this.ele.style.filter = "";\r
- clearInterval( this.timer );\r
- this.timer = null;\r
-}\r
-\r
-CAgencyWave.prototype.ResetParameters = function()\r
-{\r
- this.PrepareEffect();\r
- this.ele.style.filter = "wave(strength=" + this.strength + ",freq=" + \r
- this.freq +", lightstrength=" + this.lightstrength +",phase=0);";\r
- this.startTime = (new Date()).getTime();\r
-}\r
-// End of the CAgencyWave definition\r
-\r
-// Begin of CAgencyGlow definition\r
-function CAgencyGlow( element, settings )\r
-{// because of "visual filter" style, this won't work in Navigator\r
- this.ele = element;\r
-\r
- // to set the default value\r
- this.glowColor = "green";\r
- this.glowStrength = "3";\r
- \r
- var arrAllSet = settings.split(",");\r
- for( var i = 0; i < arrAllSet.length; i ++ )\r
- {\r
- arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
- var arrOneSet = arrAllSet[i].split("=");\r
- for( var j = 0; j < arrOneSet.length; j++ )\r
- arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
- switch( arrOneSet[0] )\r
- {\r
- case "color" : this.glowColor = arrOneSet[1]; break;\r
- case "strength" : this.glowStrength = arrOneSet[1]; break;\r
- }\r
- }\r
-}\r
-\r
-CAgencyGlow.prototype.PrepareEffect = function()\r
-{\r
- CCSSP.PrepareFilter(this.ele);\r
- CCSSP.ShowObject(this.ele, true );\r
- if( this.ele.style.backgroundColor != "" )\r
- {//style.backgroundColor somehow stop the visual filter\r
- this.ele.intactBackgroundColor = this.ele.style.backgroundColor;\r
- this.ele.style.backgroundColor = "";\r
- }\r
-}\r
-\r
-CAgencyGlow.prototype.UpdateEffect = function()\r
-{// to set the visual filter function\r
- this.PrepareEffect();\r
- this.ele.style.filter = "glow(Color=" + this.glowColor + ", Strength=" + \r
- this.glowStrength + ", enabled=true" +")";\r
-}\r
-\r
-CAgencyGlow.prototype.EndEffect = function()\r
-{// to remove the visual filter function\r
- this.ele.style.filter = "";\r
- if( typeof(this.ele.intactBackgroundColor) != "undefined" )\r
- this.ele.style.backgroundColor = this.ele.intactBackgroundColor;\r
-}\r
-// End of the CAgencyGlow definition\r
-\r
-// Begin of CAgencyDropShadow definition\r
-function CAgencyDropShadow( element, settings )\r
-{// because of "visual filter" style, this won't work in Navigator\r
- this.ele = element;\r
-\r
- // to set the default value\r
- this.shadowColor = "black"; \r
- this.shadowOffx = "1";\r
- this.shadowOffy = "1";\r
- \r
- var arrAllSet = settings.split(",");\r
- for( var i = 0; i < arrAllSet.length; i ++ )\r
- {\r
- arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
- var arrOneSet = arrAllSet[i].split("=");\r
- for( var j = 0; j < arrOneSet.length; j++ )\r
- arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
- switch( arrOneSet[0] )\r
- {\r
- case "color" : this.shadowColor = arrOneSet[1]; break;\r
- case "offx" : this.shadowOffx = arrOneSet[1]; break;\r
- case "offy" : this.shadowOffy = arrOneSet[1]; break;\r
- }\r
- }\r
-}\r
-\r
-CAgencyDropShadow.prototype.PrepareEffect = function()\r
-{\r
- CCSSP.PrepareFilter(this.ele);\r
- CCSSP.ShowObject(this.ele, true );\r
- \r
- if( this.ele.style.backgroundColor != "" )\r
- {//style.backgroundColor somehow stop the visual filter\r
- this.ele.intactBackgroundColor = this.ele.style.backgroundColor;\r
- this.ele.style.backgroundColor = "";\r
- }\r
-}\r
-\r
-CAgencyDropShadow.prototype.UpdateEffect = function()\r
-{// to set the visual filter function\r
- this.PrepareEffect();\r
- this.ele.style.filter = "dropshadow(color=" + this.shadowColor + ", offx=" + \r
- this.shadowOffx + ", offy=" + this.shadowOffy + ")";\r
-}\r
-\r
-CAgencyDropShadow.prototype.EndEffect = function()\r
-{// to remove the visual filter function\r
- this.ele.style.filter = "";\r
- if( typeof(this.ele.intactBackgroundColor) != "undefined" )\r
- this.ele.style.backgroundColor = this.ele.intactBackgroundColor;\r
-}\r
-// End of the CAgencyDropShadow definition\r
-\r
-// Begin of CAgencyRevealTrans definition\r
-function CAgencyRevealTrans( element, settings )\r
-{// because of "visual filter" style, this won't work in Navigator\r
- this.ele = element;\r
-\r
- // to set the default value\r
- this.duration = 1.0; //The value is specified in seconds.milliseconds format (0.0000).\r
- this.transition = 0;\r
- \r
- var arrAllSet = settings.split(",");\r
- for( var i = 0; i < arrAllSet.length; i ++ )\r
- {\r
- arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
- var arrOneSet = arrAllSet[i].split("=");\r
- for( var j = 0; j < arrOneSet.length; j++ )\r
- arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
- switch( arrOneSet[0] )\r
- {\r
- case "type" : this.transition = arrOneSet[1]; break;\r
- case "duration" : this.duration = 100/arrOneSet[1]; break;\r
- }\r
- }\r
-}\r
-\r
-CAgencyRevealTrans.prototype.PrepareEffect = function()\r
-{\r
- CCSSP.PrepareFilter(this.ele);\r
- CCSSP.ShowObject( this.ele, false);\r
-}\r
-\r
-CAgencyRevealTrans.prototype.UpdateEffect = function()\r
-{// to set the visual filter function\r
- if( typeof( this.ele.filters.RevealTrans ) == "object" )\r
- {\r
- if( this.ele.filters.RevealTrans.status == 2 )\r
- this.ele.filters.RevealTrans.stop(); \r
- }\r
-\r
- this.PrepareEffect();\r
- \r
- this.ele.style.filter = "RevealTrans(duration=" + this.duration + \r
- ", transition=" + this.transition + ")";\r
- \r
- if( typeof( this.ele.filters.RevealTrans ) == "object" )\r
- {\r
- this.ele.filters.RevealTrans.apply();\r
- CCSSP.ShowObject( this.ele, true);\r
- this.ele.filters.RevealTrans.play(); \r
- }\r
- else\r
- CCSSP.ShowObject( this.ele, true);\r
-}\r
-\r
-CAgencyRevealTrans.prototype.EndEffect = function()\r
-{\r
- if( typeof( this.ele.filters.RevealTrans ) == "object" )\r
- this.ele.filters.RevealTrans.stop(); \r
- this.ele.style.filter = "";\r
-}\r
-// End of the CAgencyRevealTrans definition\r
-\r
-// Begin of CAgencyBlur definition\r
-function CAgencyBlur( element, settings )\r
-{// because of "visual filter" style, this won't work in Navigator\r
- this.ele = element;\r
-\r
- // to set the default value\r
- this.strength = "5";\r
- this.direction = "90";\r
- \r
- var arrAllSet = settings.split(",");\r
- for( var i = 0; i < arrAllSet.length; i ++ )\r
- {\r
- arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
- var arrOneSet = arrAllSet[i].split("=");\r
- for( var j = 0; j < arrOneSet.length; j++ )\r
- arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
- switch( arrOneSet[0] )\r
- {\r
- case "strength" : this.strength = arrOneSet[1]; break;\r
- case "direction" : this.direction = arrOneSet[1]; break;\r
- }\r
- }\r
-}\r
-\r
-CAgencyBlur.prototype.PrepareEffect = function()\r
-{\r
- CCSSP.PrepareFilter(this.ele);\r
- CCSSP.ShowObject(this.ele, true );\r
-}\r
-\r
-CAgencyBlur.prototype.UpdateEffect = function()\r
-{// to set the visual filter function\r
- CCSSP.PrepareFilter(this.ele);\r
- this.ele.style.filter = "blur(strength=" + this.strength + \r
- ", direction=" + this.direction + ")";\r
-}\r
-\r
-CAgencyBlur.prototype.EndEffect = function()\r
-{// to remove the visual filter function\r
- this.ele.style.filter = "";\r
-}\r
-// End of the CAgencyBlur definition\r
-\r
-// Begin of CAgencyChangeFilter definition\r
-function CAgencyChangeFilter( element, settings ) // flipH, flipV, invert, grey,\r
-{// because of "visual filter" style, this won't work in Navigator\r
- this.ele = element;\r
-\r
- // to set the default value\r
- this.filterFunction = settings;\r
-}\r
-\r
-CAgencyChangeFilter.prototype.PrepareEffect = function()\r
-{\r
- CCSSP.PrepareFilter(this.ele);\r
- CCSSP.ShowObject(this.ele, true );\r
-}\r
-\r
-CAgencyChangeFilter.prototype.UpdateEffect = function()\r
-{// to set the visual filter function\r
- CCSSP.PrepareFilter(this.ele);\r
- this.ele.style.filter = this.filterFunction;\r
-}\r
-\r
-CAgencyChangeFilter.prototype.EndEffect = function()\r
-{// to remove the visual filter function\r
- this.ele.style.filter = "";\r
-}\r
-// End of the CAgencyChangeFilter definition\r
-\r
-// The effects below change the style on the fly, so they won't work in Navigator\r
-\r
-// Begin of CAgencyFontChange definition, \r
-function CAgencyFontChange( element, settings )\r
-{//this class can be replace by CAgencyChangeStyle,provided the "settings" is standard CSS string.\r
- this.ele = element;\r
- \r
- // to retrieve the original font style\r
- this.RetrieveOldFont( this.ele );\r
- \r
- // to set the default font to change\r
- this.newfontFamily = this.ele.oldFontFamily;\r
- this.newfColor = this.ele.oldColor;\r
- this.newtextDecoration = this.ele.oldTextDecoration;\r
- this.newfontWeight = this.ele.oldFontWeight;\r
- this.newfontStyle = this.ele.oldFontStyle;\r
- this.newfontSize = this.ele.oldFontSize;\r
- this.newBackgroundColor = this.ele.oldBackgroundColor;\r
- \r
- var arrAllSet = settings.split(",");\r
- for( var i = 0; i < arrAllSet.length; i ++ )\r
- {// to retrieve the setting\r
- arrAllSet[i] = CCSSP.TrimSpace(arrAllSet[i]);\r
- var arrOneSet = arrAllSet[i].split("=");\r
- for( var j = 0; j < arrOneSet.length; j++ )\r
- arrOneSet[j] = CCSSP.TrimSpace(arrOneSet[j]);\r
- switch( arrOneSet[0] )\r
- {\r
- case "font-family" : this.newfontFamily = arrOneSet[1]; break;\r
- case "color" : this.newfColor = arrOneSet[1]; break;\r
- case "underline" : this.newtextDecoration = (arrOneSet[1]=="on")? "underline" : "none"; break;\r
- case "bold" : this.newfontWeight = (arrOneSet[1]=="on")? "bold" : "normal"; break;\r
- case "italic" : this.newfontStyle = (arrOneSet[1]=="on")? "italic" : "normal"; break;\r
- case "size" : this.newfontSize = arrOneSet[1]; break;\r
- case "background-color" : this.newBackgroundColor = arrOneSet[1]; break;\r
- }\r
- }\r
-}\r
-\r
-CAgencyFontChange.prototype.RetrieveOldFont = function(objChild)\r
-{\r
- if( typeof(objChild.oldFontFamily) == "undefined" )\r
- objChild.oldFontFamily = objChild.style.fontFamily;\r
- if( typeof(objChild.oldColor) == "undefined" )\r
- objChild.oldColor = objChild.style.color;\r
- if( typeof(objChild.oldTextDecoration) == "undefined" )\r
- objChild.oldTextDecoration = objChild.style.textDecoration;\r
- if( typeof(objChild.oldFontWeight) == "undefined" )\r
- objChild.oldFontWeight = objChild.style.fontWeight;\r
- if( typeof(objChild.oldFontStyle) == "undefined" )\r
- objChild.oldFontStyle = objChild.style.fontStyle;\r
- if( typeof(objChild.oldFontSize) == "undefined" )\r
- objChild.oldFontSize = objChild.style.fontSize;\r
- if( typeof(objChild.oldBackgroundColor) == "undefined" )\r
- objChild.oldBackgroundColor = objChild.style.backgroundColor;\r
-}\r
-\r
-CAgencyFontChange.prototype.PrepareEffect = function()\r
-{\r
- // as for expanding text, the child is created after the constructor called\r
- for(var index = 0; index < this.ele.all.length; index++)\r
- this.RetrieveOldFont(this.ele.all[index]);\r
- CCSSP.ShowObject(this.ele, true );\r
-}\r
-\r
-CAgencyFontChange.prototype.UpdateEffect = function()\r
-{// to change the font\r
- this.PrepareEffect();\r
- this.UpdateEffectAllChildren( this.ele );\r
- for( var index = 0; index < this.ele.all.length; index++)\r
- this.UpdateEffectAllChildren(this.ele.all[index]);\r
-}\r
-\r
-CAgencyFontChange.prototype.UpdateEffectAllChildren = function(objChild)\r
-{\r
- objChild.style.fontFamily = this.newfontFamily;\r
- objChild.style.color = this.newfColor;\r
- objChild.style.textDecoration = this.newtextDecoration;\r
- objChild.style.fontWeight = this.newfontWeight;\r
- objChild.style.fontStyle = this.newfontStyle;\r
- objChild.style.fontSize = this.newfontSize;\r
- objChild.style.backgroundColor = this.newBackgroundColor;\r
-}\r
-\r
-CAgencyFontChange.prototype.EndEffect = function()\r
-{// to reinstate the original font style\r
- this.EndEffectAllChildren( this.ele );\r
- for( var index = 0; index < this.ele.all.length; index++)\r
- this.EndEffectAllChildren(this.ele.all[index]);\r
-}\r
-\r
-CAgencyFontChange.prototype.EndEffectAllChildren = function( objChild )\r
-{\r
- if( typeof(objChild.oldFontFamily) != "undefined" )\r
- objChild.style.fontFamily = objChild.oldFontFamily;\r
- if( typeof(objChild.oldColor) != "undefined" )\r
- objChild.style.color = objChild.oldColor;\r
- if( typeof(objChild.oldFontWeight) != "undefined" )\r
- objChild.style.fontWeight = objChild.oldFontWeight;\r
- if( typeof(objChild.oldFontStyle) != "undefined" )\r
- objChild.style.fontStyle = objChild.oldFontStyle;\r
- if( typeof(objChild.oldFontSize) != "undefined" )\r
- objChild.style.fontSize = objChild.oldFontSize;\r
- if( typeof(objChild.oldTextDecoration) != "undefined" )\r
- objChild.style.textDecoration = objChild.oldTextDecoration;\r
- if( typeof(objChild.oldBackgroundColor) != "undefined" )\r
- objChild.style.backgroundColor = objChild.oldBackgroundColor;\r
-}\r
-// End of the CAgencyFontChange definition\r
-\r
-// Begin of the CAgencyChangeStyle definition\r
-function CAgencyChangeStyle( element, settings )\r
-{//this class can be replace by CAgencyChangeStyle,provided the "settings" is standard CSS string.\r
- this.ele = element;\r
- \r
- // to retrieve the original style\r
- this.oldstyle = this.ele.style.cssText;\r
- \r
- // to set the default style\r
- this.newStyle = this.oldstyle;\r
- \r
- if( typeof(settings) == "string" && settings.length > 1 )\r
- this.newStyle = this.oldstyle + " " + settings;\r
-}\r
-\r
-CAgencyChangeStyle.prototype.PrepareEffect = function()\r
-{\r
- CCSSP.ShowObject(this.ele, true );\r
-}\r
-\r
-CAgencyChangeStyle.prototype.UpdateEffect = function()\r
-{// to change the style\r
- this.ele.style.cssText = this.newStyle;\r
-}\r
-\r
-CAgencyChangeStyle.prototype.EndEffect = function()\r
-{// to reinstate the original style\r
- this.ele.style.cssText = this.oldStyle;\r
-}\r
-// End of the CAgencyChangeStyle definition\r
-\r
-//End the definition of CAgencyXXXX classes\r
-\r
-//Begin to collaborate with other event handler settings \r
-CCSSP.RegisterEventHandler( window, "onload", "CEngine.OnPageLoad();BSSCOnLoad();kadovInitTriggersInHead();");\r
-CCSSP.RegisterEventHandler( document, "onclick", "CEngine.OnPageClick();BSSCOnClick();");\r
-CCSSP.RegisterEventHandler( document, "onmouseover", "CEngine.OnMouseOver();BSSCOnMouseOver();" );\r
-CCSSP.RegisterEventHandler( document, "onmouseout", "CEngine.OnMouseOver();BSSCOnMouseOut();" );\r
-CCSSP.RegisterEventHandler( window, "onunload", "BSSCOnUnload();");\r
-//End to collaborate with other event handler settings\r
-\r
-\r
-/// Section End - CCSSP DHTM 2 (JavaScript 1.2)\r
-\r
-//// Segment End -- (JavaScript 1.2)\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>a</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=584>\r
-<meta name=layout-width content=796>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-img_whs1 {border-style: none; border: none; width: 774px; height: 554px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<p><img src="../launchvisu.gif" x-maintain-ratio="TRUE" width="774px" height="554px" border="0" class="img_whs1"></p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>a1</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=584>\r
-<meta name=layout-width content=796>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-img_whs1 {border-style: none; border: none; width: 774px; height: 554px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<p><img src="../importmed.gif" x-maintain-ratio="TRUE" width="774px" height="554px" border="0" class="img_whs1"></p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>a2</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=584>\r
-<meta name=layout-width content=796>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-img_whs1 {border-style: none; border: none; width: 774px; height: 554px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<p><img src="../createpresent.gif" x-maintain-ratio="TRUE" width="774px" height="554px" border="0" class="img_whs1"></p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>a3</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=584>\r
-<meta name=layout-width content=796>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-img_whs1 {border-style: none; border: none; width: 774px; height: 554px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<p><img src="../createfieldprsnt.gif" x-maintain-ratio="TRUE" width="774px" height="554px" border="0" class="img_whs1"></p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>a4</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=578>\r
-<meta name=layout-width content=865>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-img_whs1 {border-style: none; border: none; width: 843px; height: 548px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<p><img src="../createtable.gif" x-maintain-ratio="TRUE" width="843px" height="548px" border="0" class="img_whs1"></p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>a5</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=584>\r
-<meta name=layout-width content=886>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-img_whs1 {border-style: none; border: none; width: 864px; height: 554px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<p><img src="../animation.gif" x-maintain-ratio="TRUE" width="864px" height="554px" border="0" class="img_whs1"></p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>About structure of MED object</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=1777>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-img_whs2 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
-p.whs3 {font-family: 'Times New Roman', serif;}\r
-p.whs4 {margin-left: 40px; font-family: 'Times New Roman', serif;}\r
-p.whs5 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
-img_whs6 {border-style: none; border: none; width: 341px; height: 505px; float: none;}\r
-h3.whs7 {font-family: 'Times New Roman', serif;}\r
-img_whs8 {border-style: none; border: none; float: none; width: 30px; height: 30px;}\r
-p.whs9 {font-family: 'Times New Roman', serif; text-align: justify;}\r
-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;}\r
-col.whs11 {width: 50%;}\r
-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;}\r
-p.whs13 {text-align: center; font-weight: bold; font-family: 'Times New Roman', serif;}\r
-p.whs14 {text-align: center; font-family: 'Times New Roman', serif;}\r
-p.whs15 {font-family: 'Times New Roman', serif; text-align: center;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\nAbout the structure of MED objects");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">About the structure \r
- of MED objects</h1>\r
-\r
-<p> <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>VISU</B></span> module 3d \r
- representations are constructed on the base of submeshes \r
- representing parts of a mesh, which is stored in form of MED objects in \r
- *.med files. Each MED object has its own user-defined structure.</p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3">In general, the mesh \r
- represents an object including the following types of data:</p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs4"> - \r
- <span style="font-style: italic;"><I>Geometrical information</I></span>: list \r
- of nodes and cells of the mesh;</p>\r
-\r
-<p class="whs4"> - \r
- <span style="font-style: italic;"><I>Information on the interpolation in \r
- accordance with resulting elements</I></span>: the mesh should be compatible \r
- with chosen interpolation;</p>\r
-\r
-<p class="whs5"> - \r
- <span style="font-style: italic;"><I>Physical information</I></span>: initial \r
- and boundary conditions. (Scalar or vector values applied to the cells \r
- of the mesh)</p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3">The structure of MED \r
- object has a tree-like form. It contains three main folders: <span style="font-weight: bold;"><B><a \r
- href="#Families">Families</a>, <a href="#Groups">Groups</a>, <a href="#Fields">Fields</a>.</B></span></p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3"> <img src="../pics/structmed.jpg" x-maintain-ratio="TRUE" width="341px" height="505px" border="0" class="img_whs6"></p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<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>\r
-\r
-<p class="whs9">From \r
- general point of view, the whole mesh is divided into <span style="font-weight: bold;"><B>families</B></span>, \r
- submeshes created by the user. <span style="font-style: italic;"><I>Every \r
- </I></span><span style="font-weight: bold; font-style: italic;"><I><B>family</B></I></span><span \r
- style="font-style: italic;"><I> is composed of cells of a definite type - \r
- it can be Nodes, Edges, Faces or Cells.</I></span> The presentation created \r
- on the basis of a particular <span style="font-weight: bold;"><B>family </B></span>will \r
- be composed of geometrical elements, corresponding to the type of cells \r
- of this <span style="font-weight: bold;"><B>family. </B></span> </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<!--(Table)=========================================================-->\r
-<div align=left><table x-use-null-cells width="100%" class="whs10">\r
-<script language='JavaScript'><!--\r
-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'>");\r
-//--></script>\r
-<col class="whs11">\r
-<col class="whs11">\r
-\r
-<tr>\r
-<td width="50%" class="whs12">\r
-<p align="center" class="whs13">Type of cells (entities) of the family</td>\r
-<td width="50%" class="whs12">\r
-<p align="center" class="whs13">Geometrical element</td></tr>\r
-\r
-<tr>\r
-<td width="50%" class="whs12">\r
-<p align="center" class="whs14">Nodes</td>\r
-<td width="50%" class="whs12">\r
-<p align="center" class="whs14">Points</td></tr>\r
-\r
-<tr>\r
-<td width="50%" class="whs12">\r
-<p align="center" class="whs14">Edges</td>\r
-<td width="50%" class="whs12">\r
-<p align="center" class="whs14">Segments</td></tr>\r
-\r
-<tr>\r
-<td width="50%" class="whs12">\r
-<p align="center" class="whs14">Faces</td>\r
-<td width="50%" class="whs12">\r
-<p align="center" class="whs14">Triangles, quadrangles</td></tr>\r
-\r
-<tr>\r
-<td width="50%" class="whs12">\r
-<p align="center" class="whs14">Cells</td>\r
-<td width="50%" class="whs12">\r
-<p align="center" class="whs14">Any</td></tr>\r
-<script language='JavaScript'><!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4)) document.write("</table></table><table>");\r
-//--></script>\r
-</table>\r
-</div><p align="center" class="whs15">Table of correspondence</p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs9"> In \r
- the folder <span style="font-weight: bold;"><B>Families </B></span>all families \r
- of the mesh are put into the following subfolders, defining the type of \r
- cells of the mesh: <span style="font-weight: bold;"><B>onNodes, onEdges, \r
- onFaces, onCells. </B></span></p>\r
-\r
-<p class="whs9">These \r
- subfolders also represent submeshes of the mesh, which are composed of \r
- all cells of the mesh of this type.</p>\r
-\r
-<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>\r
-\r
-<p class="whs3"><span style="font-weight: bold;"><B>Groups \r
- </B></span>combine different families independently of the type of cells, \r
- they are composed of. </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<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>\r
-\r
-<p class="whs9"><span \r
- style="font-weight: bold;"><B>Fields </B></span>represent the results of calculations \r
- (it can be scalar or vector values), grouped together under one physical \r
- concept. </p>\r
-\r
-<p class="whs9">These \r
- values are applied to the cells of a definite submesh, which is indicated \r
- in the Object Browser in the subfolder of the <span style="font-weight: bold;"><B>field. \r
- </B></span></p>\r
-\r
-<p class="whs9">Most \r
- often the calculations are performed during some period of time. That's \r
- why <span style="font-weight: bold;"><B>fields </B></span>include <span style="font-weight: bold;"><B>Time \r
- Stamps, </B></span>representing the results of calculations in one definite \r
- moment. In <span style="font-weight: bold;"><B>VISU </B></span>field presentation \r
- are constructed on the base of these <span style="font-weight: bold;"><B>Time \r
- Stamps. </B></span>(<a href="creating_field_presentations.htm">See: Creating \r
- field presentations</a>) </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating field presentations','creating_field_presentations.htm','Creating presentations','creating_presentations.htm','Exploring MED files','exploring_med_files.htm','Importing MED files','importing_med_objects.htm','Introduction to VISU','introduction_to_visu.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>About tables</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=417>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif;}\r
-p.whs3 {font-family:'Times New Roman' , serif; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
-img_whs4 {border-style: none; border: none; width: 36px; height: 38px; float: none;}\r
-p.whs5 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
-p.whs6 {font-family: 'Times New Roman', serif; margin-left: 0px;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs6 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\nTable presentations\nAbout tables");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">About tables</h1>\r
-\r
-<p class="whs2">Functionality of <span \r
- style="font-weight: bold;"><B>VISU </B></span>component allows to import data \r
- tables and display them in a special table viewer. <span style="font-weight: bold;"><B>Tables \r
- </B></span>represent column-ranged data with <span style="font-weight: bold;"><B>units</B></span> \r
- and <span style="font-weight: bold;"><B>column</B></span> and <span style="font-weight: bold;"><B>row \r
- titles </B></span>(<a href="displaying_tables.htm#Table">see also</a>). </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<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> \r
- - some of the cells may be empty, without any values.</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2">In <span style="font-weight: bold;"><B>VISU \r
- </B></span>there are three \r
- methods to import tables:</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs5">1. \r
- <a href="importing_tables.htm">Importing \r
- tables from *.xls, *.txt or *.tab files, which have been previously created.</a></p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5">2. \r
- <a href="cut_lines_presentation.htm#Table">Creating \r
- tables on the basis of <span style="font-weight: bold;"><B>Cut Lines </B></span>presentations</a></p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5">3. \r
- Importing \r
- tables with the help of a special Python script from batch mode of SALOME \r
- PRO (not described in this reference manual)</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs6">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating tables from Cut Lines presentations','creating_tables_from_cut_lines_presentations.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>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Animating presentations</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=2462>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {text-align: justify;}\r
-img_whs3 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
-p.whs4 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
-p.whs5 {font-family: 'Times New Roman', serif; margin-left: 0px;}\r
-p.whs6 {font-family: 'Times New Roman', serif; margin-left: 40px; font-weight: bold;}\r
-p.whs7 {font-family: 'Times New Roman', serif;}\r
-p.whs8 {margin-left: 40px;}\r
-img_whs9 {border-style: none; border: none; width: 392px; height: 421px; float: none;}\r
-p.whs10 {margin-left:0px; font-family:'Times New Roman' , serif; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
-img_whs11 {border-style: none; border: none; width: 36px; height: 38px; float: none;}\r
-p.whs12 {margin-left: 0px;}\r
-img_whs13 {border-style: none; border: none; width: 360px; height: 260px; float: none;}\r
-p.whs14 {font-family: 'Times New Roman', serif; margin-left: 80px;}\r
-ul.whs15 {list-style: disc;}\r
-p.whs16 {font-family: 'Times New Roman', serif; font-style: italic; color: #ff0000; margin-left: 40px;}\r
-img_whs17 {border-style: none; border: none; width: 128px; height: 18px; float: none;}\r
-img_whs18 {border-style: none; border: none; width: 53px; height: 18px; float: none;}\r
-img_whs19 {border-style: none; border: none; height: 19px; float: none; width: 69px;}\r
-img_whs20 {border-style: none; border: none; width: 54px; height: 20px; float: none;}\r
-img_whs21 {border-style: none; border: none; height: 21px; float: none; width: 68px;}\r
-p.whs22 {font-family: 'Times New Roman', serif; margin-left: 0px; font-weight: bold; color: #000000; font-size: 14pt;}\r
-p.whs23 {font-family: 'Times New Roman', serif; margin-left: 0px; font-weight: normal;}\r
-img_whs24 {border-style: none; border: none; width: 85px; height: 97px; float: none;}\r
-p.whs25 {font-family: 'Times New Roman', serif; margin-left: 0px; font-weight: bold;}\r
-img_whs26 {border-style: none; border: none; width: 298px; height: 209px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs5 {margin-left:1; }";\r
- strNSS += "p.whs10 {margin-left:1; }";\r
- strNSS += "p.whs12 {margin-left:1; }";\r
- strNSS += "p.whs22 {margin-left:1; }";\r
- strNSS += "p.whs23 {margin-left:1; }";\r
- strNSS += "p.whs25 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nField presentations\nAnimating presentations");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Animating presentations</h1>\r
-\r
-<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>VISU \r
- </B></span>module you can generate real-time animation of fields. <span style="text-align: justify;">In \r
- comparison with <a href="animating_presentations.htm">sweeping</a>, animations \r
- are created on the base of frames, displaying field presentations generated \r
- on </span><span style="text-align: justify; font-weight: bold;"><B>EVERY</B></span><span \r
- style="text-align: justify;"> Time Stamp of your field. So, the frame \r
- displaying the field presentation created on the base of the first time \r
- stamp will begin your animation and the frame displaying the field presentation \r
- created on the base of the last time stamp will end it. In sweeping </span><span \r
- style="text-align: justify; font-weight: bold;"><B>ONLY ONE</B></span><span style="text-align: justify;"> \r
- Time Stamp is used for its generation. </span></p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class=TODO>To generate an animation:</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4">1. \r
- Right-click \r
- on the field in the Object Browser.</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs4">2. \r
- From the \r
- pop-up menu select <span style="font-weight: bold;"><B>Animation.</B></span></p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs7">The following dialog \r
- box will appear:</p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs8"> <img src="../pics/animation.jpg" x-maintain-ratio="TRUE" width="392px" height="421px" border="0" class="img_whs9"></p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7"><span style="font-weight: bold;"><B>Animation</B></span> \r
- dialog box is destined for management of your animation.</p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs10"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs11"> In <span style="font-weight: bold;"><B>VISU </B></span>you can generate \r
- <span style="font-weight: bold;"><B>simultaneous</B></span> animation of <span \r
- style="font-weight: bold;"><B>several</B></span> fields: you can open this dialog \r
- for several fields one after another and after generating frames you can \r
- launch simultaneous animation of several fields.</p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs4">3. \r
- Click <span style="font-weight: bold;"><B>Setup Animation</B></span> button. \r
- The following dialog box allowing to set the parameters of your animation \r
- will appear.</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs12"> <img src="../pics/animationparam.jpg" x-maintain-ratio="TRUE" width="360px" height="260px" border="0" class="img_whs13"></p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4">- \r
- <span style="font-weight: bold;"><B>Use range of time stamps</B></span> check \r
- box allows to select the range of time stamps, which will be used for \r
- generating your animation.</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4">- \r
- <span style="font-weight: bold;"><B>Fields: </B></span>list of fields for animation.</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4"><span \r
- style="font-weight: bold;"><B>- Properties: </B></span>Here you can adjust properties \r
- of each field selected from the list:</p>\r
-\r
-<p class="whs14"> </p>\r
-\r
-<ul type="disc" class="whs15">\r
- \r
- <li class=kadov-p><p class="whs14"> Select \r
- the <span style="font-weight: bold;"><B>type</B></span> of field presentations, \r
- which will be used as frames in animation.</p></li>\r
- \r
- <li class=kadov-p><p class="whs14"> Set \r
- 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>\r
- \r
- <li class=kadov-p><p class="whs14"> Adjust \r
- additional <span style="font-weight: bold;"><B>properties</B></span> of the selected \r
- type of field presentation.</p></li>\r
-</ul>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4">4. \r
- Click <span \r
- style="font-weight: bold;"><B>Close </B></span>to validate your parameters. You \r
- will return back to <span style="font-weight: bold;"><B>Animation </B></span><span>dialog \r
- box</span></p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4">5. \r
- Click <span \r
- style="font-weight: bold;"><B>Generate frames </B></span>button to generate the \r
- frames for your animation based on the parameters adjusted in <span style="font-weight: bold;"><B>Setup \r
- Animation </B></span>dialog box.</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class=TODO>Running animations:</p>\r
-\r
-<p class="whs16"> </p>\r
-\r
-<p class="whs5">In \r
- the main <span style="font-weight: bold;"><B>Animation </B></span>dialog box \r
- there are several button intended for management and running your animation:</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs5"> <img src="../pics/run.jpg" x-maintain-ratio="TRUE" width="128px" height="18px" border="0" class="img_whs17"> <span style="font-weight: bold;"><B>Running \r
- </B></span>your animation.</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs5"> <img src="../pics/previous.jpg" x-maintain-ratio="TRUE" width="53px" height="18px" border="0" class="img_whs18"> <img src="../pics/next.jpg" x-maintain-ratio="TRUE" height="19px" width="69px" border="0" class="img_whs19"> <span \r
- style="font-weight: bold;"><B>Previous / Next</B></span> \r
- frame (time step)</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5"> <img src="../pics/begining.jpg" x-maintain-ratio="TRUE" width="54px" height="20px" border="0" class="img_whs20"> <img src="../pics/end.jpg" x-maintain-ratio="TRUE" height="21px" width="68px" border="0" class="img_whs21"> <span \r
- style="font-weight: bold;"><B>To the beginning \r
- / end </B></span><span>of the animation.</span></p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs22">Additional options of the animation:</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5">You \r
- can <span style="font-weight: bold;"><B>increase/decrease </B></span>the speed \r
- of your animation by moving the <span style="font-weight: bold;"><B>Speed \r
- </B></span>wheel <span style="font-weight: bold;"><B>Up/Down:</B></span></p>\r
-\r
-<p class="whs23"> </p>\r
-\r
-<p class="whs5"> <img src="../pics/speed.jpg" x-maintain-ratio="TRUE" width="85px" height="97px" border="0" class="img_whs24"></p>\r
-\r
-<p class="whs23"> </p>\r
-\r
-<p class="whs23"><span style="font-weight: bold;"><B>Cycled \r
- animation</B></span> check box: This option allows to start a cycled animation \r
- of your presentation.</p>\r
-\r
-<p class="whs23"> </p>\r
-\r
-<p class="whs25">Use proportional timing <span style="font-weight: normal;">check \r
- box: This option allows render your animation with proportional periods \r
- of time between every frame (not depending on the time stamps).</span></p>\r
-\r
-<p class="whs25"> </p>\r
-\r
-<p class="whs23"><span style="font-weight: bold;"><B>Save \r
- pictures to directory </B></span><span>check box: This option allows to save \r
- all the frames composing the animation into a definite directory, which \r
- can be specified in </span><span style="font-weight: bold;"><B>Path </B></span><span>field.</span></p>\r
-\r
-<p class="whs14"> </p>\r
-\r
-<p class="whs5">The \r
- following picture shows an animation of deformation of an object:</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4"><img src="../pics/animatdef.jpg" x-maintain-ratio="TRUE" width="298px" height="209px" border="0" class="img_whs26"></p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs5">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_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>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Setting presentation view parameters</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=2477>\r
-<meta name=layout-width content=614>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif; margin-left: 0px;}\r
-p.whs3 {margin-left: 40px;}\r
-p.whs4 {font-family: 'Times New Roman', serif;}\r
-p.whs5 {margin-left:0px; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
-img_whs6 {border-style: none; border: none; width: 36px; height: 38px; float: none;}\r
-ul.whs7 {list-style: disc;}\r
-p.whs8 {margin-left: 40px; font-family: 'Times New Roman', serif;}\r
-p.whs9 {font-weight: normal; font-family: 'Times New Roman', serif;}\r
-p.whs10 {margin-left: 0px; font-family: 'Times New Roman', serif;}\r
-p.whs11 {font-weight: bold; margin-left: 40px; font-family: 'Times New Roman', serif;}\r
-p.whs12 {font-weight: bold; font-family: 'Times New Roman', serif;}\r
-img_whs13 {border-style: none; border: none; width: 198px; height: 54px; float: none;}\r
-p.whs14 {margin-left: 0px; font-style: italic; font-size: 11pt; font-family: 'Times New Roman', serif;}\r
-p.whs15 {margin-left: 40px; font-style: italic; font-size: 11pt; font-family: 'Times New Roman', serif;}\r
-img_whs16 {border-style: none; border: none; width: 422px; height: 220px; float: none;}\r
-p.whs17 {margin-left: 0px;}\r
-img_whs18 {border-style: none; border: none; width: 335px; height: 181px; float: none;}\r
-img_whs19 {border-style: none; border: none; width: 243px; height: 176px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs2 {margin-left:1; }";\r
- strNSS += "p.whs5 {margin-left:1; }";\r
- strNSS += "p.whs10 {margin-left:1; }";\r
- strNSS += "p.whs14 {margin-left:1; }";\r
- strNSS += "p.whs17 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nSetting presentation view parameters ");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script><!--(Generated Script Links)========================================-->\r
-<!--(Generated Code)================================================-->\r
-<!--(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)==================-->\r
-<script type="text/javascript" language="JavaScript1.2" src="../ehlpdhtm.js" x-save-method="compute-relative" name="EHELP_DHTM"></script>\r
-<script type="text/javascript"\r
- language=JavaScript1.2>\r
-<!-- \r
-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();\r
- //-->\r
-</script>\r
-\r
-<!--(==============================================================)-->\r
-\r
-\r
-<h1 class="whs1">Setting presentation \r
- view parameters </h1>\r
-\r
-<p class=TODO>To change view parameters of the presentation: </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs3">Right-click on the submesh (for which you \r
- have already created a presentation) in the Object Browser or right-click \r
- on this presentation in the viewer. From the associated pop-up menu choose \r
- <span style="font-weight: bold;"><B>Representation</B></span> or <span style="font-weight: bold;"><B>Properties</B></span> \r
- submenus. </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs5"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs6"> All these view parameters are context-sensitive: NOT all \r
- types of visualization and NOT all properties can be set for a definite \r
- 3D presentation. <span style="margin-left: 40px;"> </span></p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4">The main options for \r
- changing view \r
- parameters of presentations are the following:</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<ul type="disc" class="whs7">\r
- \r
- <li class=kadov-p><p class="whs8"> <a \r
- href="#Changing"\r
- style="font-family: 'Times New Roman', serif;">Changing \r
- the type \r
- of visualization of presentations;</a></p></li>\r
-</ul>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<ul type="disc" class="whs7">\r
- \r
- <li class=kadov-p><p class="whs8"> <a \r
- href="#Shrinking/unshrinking"\r
- style="font-family: 'Times New Roman', serif;">Shrinking/unshrinking \r
- presentations</a></p></li>\r
-</ul>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<ul type="disc" class="whs7">\r
- \r
- <li class=kadov-p><p class="whs8"> <a \r
- href="#Changing1"\r
- style="font-family: 'Times New Roman', serif;">Changing \r
- the color of presentations</a></p></li>\r
-</ul>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<ul type="disc" class="whs7">\r
- \r
- <li class=kadov-p><p class="whs8"> <a \r
- href="#Changing3"\r
- style="font-family: 'Times New Roman', serif;">Changing \r
- opacity of presentations</a></p></li>\r
-</ul>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<ul type="disc" class="whs7">\r
- \r
- <li class=kadov-p><p class="whs8"> <a \r
- href="#Width"\r
- style="font-family: 'Times New Roman', serif;">Changing \r
- the width of the lines</a></p></li>\r
-</ul>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class=TODO><span style="font-family: 'Times New Roman', serif;"><a name=Changing></a></span>To \r
- change the type of visualization of a particular presentation: </p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs8">Choose \r
- one of the available types of visualization of the presentation from <span \r
- style="font-weight: bold;"><B>Representation</B></span> submenu of the pop-up \r
- menu:</p>\r
-\r
-<p class="whs10"> </p>\r
-\r
-<p class="whs11">- <a href="javascript:void(0);" id="a3" onMouseOver="if (parseInt(navigator.appVersion) >= 4 && typeof(BSPSPopupOnMouseOver) == 'function') BSPSPopupOnMouseOver(event);" class="BSSCPopup" onclick="BSSCPopup('points.htm',450,240);return false;">Points</a><script \r
- type="text/javascript"\r
- language=JavaScript1.2><!--\r
-kadovFilePopupInit('a3');\r
-//--></script></p>\r
-\r
-<p class="whs12"> </p>\r
-\r
-<p class="whs11">- <a href="javascript:void(0);" id="a1" onMouseOver="if (parseInt(navigator.appVersion) >= 4 && typeof(BSPSPopupOnMouseOver) == 'function') BSPSPopupOnMouseOver(event);" class="BSSCPopup" onclick="BSSCPopup('wireframe.htm',450,240);return false;">Wireframe</a><script \r
- type="text/javascript"\r
- language=JavaScript1.2><!--\r
-kadovFilePopupInit('a1');\r
-//--></script></p>\r
-\r
-<p class="whs12"> </p>\r
-\r
-<p class="whs11">- <a href="javascript:void(0);" id="a2" onMouseOver="if (parseInt(navigator.appVersion) >= 4 && typeof(BSPSPopupOnMouseOver) == 'function') BSPSPopupOnMouseOver(event);" class="BSSCPopup" onclick="BSSCPopup('surface.htm',450,240);return false;">Surface</a><script \r
- type="text/javascript"\r
- language=JavaScript1.2><!--\r
-kadovFilePopupInit('a2');\r
-//--></script></p>\r
-\r
-<p class="whs11"> </p>\r
-\r
-<p class="whs11">- <a href="javascript:void(0);" id="a4" onMouseOver="if (parseInt(navigator.appVersion) >= 4 && typeof(BSPSPopupOnMouseOver) == 'function') BSPSPopupOnMouseOver(event);" class="BSSCPopup" onclick="BSSCPopup('insideframe.htm',450,310);return false;">Insideframe</a><script \r
- type="text/javascript"\r
- language=JavaScript1.2><!--\r
-kadovFilePopupInit('a4');\r
-//--></script></p>\r
-\r
-<p class="whs11"> </p>\r
-\r
-<p class="whs11">-<a href="javascript:void(0);" id="a5" onMouseOver="if (parseInt(navigator.appVersion) >= 4 && typeof(BSPSPopupOnMouseOver) == 'function') BSPSPopupOnMouseOver(event);" class="BSSCPopup" onclick="BSSCPopup('surfaceframe.htm',450,310);return false;">Surfaceframe</a><script \r
- type="text/javascript"\r
- language=JavaScript1.2><!--\r
-kadovFilePopupInit('a5');\r
-//--></script></p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class=TODO>To change the type of visualization of all presentations, \r
- currently displayed in the viewer: </p>\r
-\r
-<p class="whs10"> </p>\r
-\r
-<p class="whs8">- \r
- Choose one of the available types of visualization of the presentation \r
- in the main menu: <span style="font-weight: bold;"><B>Representation > \r
- Display Selection</B></span></p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs8">- \r
- Click on one of the icons, representing the types of visualization in \r
- the <span style="font-weight: bold;"><B>Representation toolbar</B></span>:</p>\r
-\r
-<p class="whs8"><img src="../pics/display1.jpg" x-maintain-ratio="TRUE" width="198px" height="54px" border="0" class="img_whs13"></p>\r
-\r
-<p class="whs8"> <span \r
- style="font-style: italic; font-size: 11pt;"><font size=3 style="font-size:11pt;"><I>Points \r
- Wireframe \r
- Surface</I></font></span></p>\r
-\r
-<p class="whs14"> </p>\r
-\r
-<p class="whs15"> </p>\r
-\r
-<p class=TODO><a name="Shrinking/unshrinking"></a> Shrinking/unshrinking \r
- the presentation:</p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs3">From the submenu <span style="font-weight: bold;"><B>Representation \r
- </B></span>you can choose <span style="font-weight: bold;"><B>Shrink </B></span>option, \r
- which will display a shrinked image of the presentation: all cells of \r
- the presentation of the mesh will be visually compressed:</p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs9"> <img src="../pics/shrink.jpg" x-maintain-ratio="TRUE" width="422px" height="220px" border="0" class="img_whs16"></p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs9"> To \r
- return the presentation back to normal, unshrinked mode of visualization, \r
- choose the same submenu <span style="font-weight: bold;"><B>Representation</B></span>, \r
- and select <span style="font-weight: bold;"><B>Unshrink </B></span>option.<span \r
- style="font-weight: bold;"> <B></B></span></p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs12"> </p>\r
-\r
-<p class=TODO><a name=Changing1></a> To change the color of the presentation: \r
- </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs3">From the submenu <span style="font-weight: bold;"><B>Properties \r
- </B></span>choose <span style="font-weight: bold;"><B>Color. </B></span>From the \r
- standard <span style="font-weight: bold;"><B>Select Color </B></span>dialog box \r
- choose \r
- the required color for the presentation of your submesh. </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs17"> </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class=TODO><a name=Changing3></a> Changing \r
- opacity of the presentation:</p>\r
-\r
-<p class=TODO> </p>\r
-\r
-<p class="whs3"> From \r
- the submenu <span style="font-weight: bold;"><B>Properties </B></span>choose \r
- <span style="font-weight: bold;"><B>Opacity. </B></span>The following dialog \r
- box will appear:</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4"> <img src="../pics/opacity.jpg" x-maintain-ratio="TRUE" width="335px" height="181px" border="0" class="img_whs18"></p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4">In this dialog box you \r
- can set the value (between 0 and 100) of opacity of the presentation. \r
- To validate \r
- your choice click <span style="font-weight: bold;"><B>OK </B></span>button.</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class=TODO><a name=Width></a> Changing \r
- the width of the lines:</p>\r
-\r
-<p class=TODO> </p>\r
-\r
-<p class="whs3">From the submenu <span style="font-weight: bold;"><B>Properties \r
- </B></span>choose <span style="font-weight: bold;"><B>Line Width. </B></span>The \r
- following dialog box will appear:</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4"> <img src="../pics/width.jpg" x-maintain-ratio="TRUE" width="243px" height="176px" border="0" class="img_whs19"></p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4">To validate your choice \r
- click <span style="font-weight: bold;"><B>OK </B></span>button.</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Creating curves</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=1373>\r
-<meta name=layout-width content=614>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif;}\r
-img_whs3 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
-p.whs4 {font-family: 'Times New Roman', serif; margin-left: 40px; color: #000000; font-style: normal;}\r
-p.whs5 {font-family: 'Times New Roman', serif; font-style: italic; color: #ff0000; margin-left: 40px;}\r
-img_whs6 {border-style: none; border: none; width: 500px; height: 258px;}\r
-p.whs7 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
-p.whs8 {font-family:'Times New Roman' , serif; margin-left:0px; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
-img_whs9 {border-style: none; border: none; float: none; width: 36px; height: 38px;}\r
-p.whs10 {font-family: 'Times New Roman', serif; margin-left: 0px; font-weight: normal;}\r
-p.whs11 {margin-left: 80px;}\r
-p.whs12 {font-family: 'Times New Roman', serif; margin-left: 40px; font-weight: bold;}\r
-img_whs13 {border-style: none; border: none; width: 286px; height: 209px;}\r
-p.whs14 {font-family: 'Times New Roman', serif; margin-left: 0px;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs8 {margin-left:1; }";\r
- strNSS += "p.whs10 {margin-left:1; }";\r
- strNSS += "p.whs14 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\nXY plots\nCreating curves");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Creating curves</h1>\r
-\r
-<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">VISU </B></span>functionality allows to create <span style="font-weight: bold;"><B> Curve \r
- lines </B></span>on \r
- the basis of the data taken from tables, and to display these curves in \r
- form of 2D plot using <span style="font-weight: bold;"><B>Plot2d viewer</B></span>.</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class=TODO>To create curves:</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs4"><span style="font-family: 'Times New Roman', serif;\r
- color: #000000;\r
- font-style: normal;"><font color=black >1. \r
- Right-click \r
- on the required table in the Object Browser </font></span></p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs4">2. From \r
- the pop-up menu choose <span style="font-weight: bold;"><B>Create Curves \r
- </B></span>option. </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4">3. The \r
- following dialog box will appear:</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4"><img src="../image8.jpg" width="500px" height="258px" border="0" class="img_whs6"></p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs7">Here \r
- you can set the parameters of your curves. This dialog box has the form \r
- of a table; each row of this table represents one column of values of \r
- the imported data table. </p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7">For \r
- construction of curve lines you should choose at least two columns of \r
- the data table. In <span style="font-weight: bold;"><B>Axis</B></span> column \r
- of the dialog box choose the axis for each of these columns:</p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7"><span \r
- style="font-weight: bold;"><B>H - </B></span>The values of this column will correspond \r
- to X-coordinates of the curve.</p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7"><span \r
- style="font-weight: bold;"><B>V - </B></span>The values of this column will correspond \r
- to Y-coordinates of the curve.</p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs8"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs9"> From this dialog box you can create several curves for the \r
- columns of your data table with the same units. <span style="font-weight: bold;"><B>VISU</B></span> \r
- allows to display at once up to 200 curves. </p>\r
-\r
-<p class="whs10"> </p>\r
-\r
-<p class="whs7">In \r
- this dialog box you can set <span style="font-weight: bold;"><B>Attributes \r
- </B></span>of your curve: </p>\r
-\r
-<p class="whs7">- \r
- Remove the checkmark from <span style="font-weight: bold;"><B>Auto assign \r
- </B></span>checkbox (if it is checked, default attributes are taken).</p>\r
-\r
-<p class="whs7">- \r
- Select <span style="font-weight: bold;"><B>Line type, Line width, Marker \r
- type, Color.</B></span></p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7">4. \r
- Click <span \r
- style="font-weight: bold;"><B>OK </B></span>to create your curves with the given \r
- parameters. <span style="font-weight: bold;"><B>Visu</B></span> will automatically \r
- create your curve or curves in the structure of the study under two SALOME \r
- objects (which will be also automatically created):</p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs11">- SALOME \r
- table object, which will be placed under this table and by default will \r
- have the same name</p>\r
-\r
-<p class="whs11">- <span \r
- style="font-weight: bold;"><B>Plot2DView </B></span><span>object: \r
- SALOME container of curve lines, which will be used for construction of \r
- XY plots. More about curve containers see here.</span> </p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs12"><img src="../image8.gif" width="286px" height="209px" border="0" class="img_whs13"></p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs14"> </p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Creating field presentations</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=793>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif; font-style: italic; color: #ff0000; margin-left: 40px;}\r
-p.whs3 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000;}\r
-img_whs4 {border-style: none; border: none; width: 204px; height: 172px; float: none;}\r
-p.whs5 {font-family: 'Times New Roman', serif; margin-left: 0px;}\r
-p.whs6 {font-family:'Times New Roman' , serif; margin-left:0px; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
-img_whs7 {border-style: none; border: none; float: none; width: 36px; height: 38px;}\r
-img_whs8 {border-style: none; border: none; width: 183px; height: 97px; float: none;}\r
-p.whs9 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
-p.whs10 {font-family: 'Times New Roman', serif; margin-left: 0px; font-weight: normal;}\r
-p.whs11 {font-family: 'Times New Roman', serif; margin-left: 0px; font-weight: bold;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs5 {margin-left:1; }";\r
- strNSS += "p.whs6 {margin-left:1; }";\r
- strNSS += "p.whs10 {margin-left:1; }";\r
- strNSS += "p.whs11 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nField presentations\nCreating field presentations");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Creating field presentations</h1>\r
-\r
-<p class=TODO>To create a field presentation (<a href="about_structure_of_med_object.htm#Fields">see \r
- also</a>):</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs3">Right-click on one of the time stamps of this \r
- field in the Object browser and choose the required type of presentation \r
- from the following pop-up menu:</p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3"> <img src="../pics/fieldprsnt6.jpg" x-maintain-ratio="TRUE" width="204px" height="172px" border="0" class="img_whs4"></p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<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>VISU </B></span>fields may \r
- contain both scalar and vector values, applied to the cells of the submesh, \r
- as well as <span style="font-weight: bold;"><B>ONLY </B></span>scalar values. \r
- It is not possible to make a vector presentation for fields containing \r
- only scalar values. </p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5">For \r
- fields containing only scalar values, you can create the following types \r
- of presentation:</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5"> <img src="../pics/fieldprsnt3.jpg" x-maintain-ratio="TRUE" width="183px" height="97px" border="0" class="img_whs8"> </p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs9">- \r
- Click on one of the time stamps of this field in the Object browser and \r
- select the required type of presentation from the <span \r
- style="font-weight: bold;"><B>Visualization \r
- </B></span>submenu of the<span style="font-weight: bold;"> <B></B></span>main menu \r
- or from the <span style="font-weight: bold;"><B>Visualization Toolbar</B></span></p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs10">In the Object Browser new field presentation \r
- will be displayed in \r
- the time stamp subfolder. </p>\r
-\r
-<p class="whs10"> </p>\r
-\r
-<p class="whs11"> </p>\r
-\r
-<p class="whs10">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_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>\r
-\r
-<p class="whs10"> </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Creating presentations</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=1238>\r
-<meta name=layout-width content=637>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif;}\r
-p.whs3 {margin-left: 40px;}\r
-img_whs4 {border-style: none; border: none; width: 295px; height: 432px; float: none;}\r
-img_whs5 {border-style: none; border: none; width: 575px; height: 404px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nPresentations of submeshes\nCreating presentations");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Creating presentations</h1>\r
-\r
-<p class=TODO>To create a presentation of a submesh: </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs3">In the Object Browser right-click on a submesh \r
- contained in an imported MED \r
- object and from the pop-up menu choose <span style="font-weight: bold;"><B>Create \r
- Presentation:</B></span></p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> <img src="../pics/crtprsnt.jpg" x-maintain-ratio="TRUE" width="295px" height="432px" border="0" class="img_whs4"></p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2">This presentation will \r
- be displayed in the viewer:</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs3"> <img src="../pics/presentat1.jpg" x-maintain-ratio="TRUE" width="575px" height="404px" border="0" class="img_whs5"></p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','About structure of MED object','about_structure_of_med_object.htm','Introduction to VISU','introduction_to_visu.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>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Creating tables from Cut Lines presentations</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=508>\r
-<meta name=layout-width content=626>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif;}\r
-img_whs3 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
-p.whs4 {font-family: 'Times New Roman', serif; font-style: italic; color: #ff0000;}\r
-p.whs5 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
-p.whs6 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000;}\r
-p.whs7 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: italic; color: #ff0000;}\r
-p.whs8 {font-family: 'Times New Roman', serif; margin-left: 0px; font-weight: normal;}\r
-p.whs9 {font-family: 'Times New Roman', serif; font-weight: bold; margin-left: 0px;}\r
-p.whs10 {font-family:'Times New Roman' , serif; font-weight:bold; margin-left:0px; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
-img_whs11 {border-style: none; border: none; float: none; width: 36px; height: 38px;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs8 {margin-left:1; }";\r
- strNSS += "p.whs9 {margin-left:1; }";\r
- strNSS += "p.whs10 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Creating tables from \r
- Cut Lines presentations</h1>\r
-\r
-<p class="whs2"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">In <span \r
- style="font-weight: bold;"><B>VISU</B></span> you can create a table, which will \r
- be composed of the scalar values applied to the cells forming a <span \r
- style="font-weight: bold;"><B>Cut Lines</B></span> presentation. </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs4">To create a table from Cut Lines presentation:</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs6">1. Create \r
- a <a href="cut_lines_presentation.htm">Cut Lines presentation</a>.</p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs6">2. In \r
- the Object Browser or in the viewer right-click on your presentation and \r
- from the pop-up menu select <span style="font-weight: bold;"><B>Create or \r
- Update Table</B></span></p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs8">Your new table will be created and displayed \r
- in the Object Browser. </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs10"><span \r
- style="font-weight: normal;"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs11"> This option also allows to \r
- update your table after modifying the base Cut Lines presentation. </span> </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs9">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','About tables','about_tables.htm','Cut Lines presentation','cut_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>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Creating XY plot</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=1897>\r
-<meta name=layout-width content=4262>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif; font-style: italic; color: #ff0000;}\r
-p.whs3 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000;}\r
-p.whs4 {font-family: 'Times New Roman', serif; font-style: italic; color: #ff0000; margin-left: 40px;}\r
-p.whs5 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000; font-weight: normal;}\r
-p.whs6 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000; font-weight: bold;}\r
-img_whs7 {border-style: none; border: none; width: 458px; height: 345px;}\r
-p.whs8 {font-weight: bold; margin-left: 0px;}\r
-p.whs9 {margin-left: 40px;}\r
-p.whs10 {margin-left: 0px;}\r
-img_whs11 {border-style: none; border: none; width: 20px; height: 20px;}\r
-img_whs12 {border-style: none; border: none; width: 252px; height: 96px;}\r
-p.whs13 {font-weight: bold; margin-left: 40px;}\r
-img_whs14 {border-style: none; border: none; width: 600px; height: 431px;}\r
-p.whs15 {font-family:'Times New Roman' , serif; font-weight:bold; margin-left:0px; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
-img_whs16 {border-style: none; border: none; width: 35px; height: 37px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs8 {margin-left:1; }";\r
- strNSS += "p.whs10 {margin-left:1; }";\r
- strNSS += "p.whs15 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\nXY plots\nCreating XY plots");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Creating XY plots</h1>\r
-\r
-<p class=TODO>To create a XY plot based on one definite curve:</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs3">1. Select \r
- Plot2d viewer: from the main menu choose <span style="font-weight: bold;"><B>Window \r
- > New Window > Plot2d View</B></span></p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs5">2. In the Object Browser right-click \r
- on this curve line and from the pop-up menu select <span style="font-weight: bold;"><B>Display \r
- </B></span><span>item.</span></p>\r
-\r
-<p class=TODO> </p>\r
-\r
-<p class=TODO>To create a XY plot based on several curves:</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs3">1. Select \r
- Plot2d viewer: from the main menu choose <span style="font-weight: bold;"><B>Window \r
- > New Window > Plot2d View</B></span></p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs6"><span style="font-weight: normal;">2. In \r
- the Object Browser right-click on the </span>Visu <span style="font-weight: normal;">object \r
- and from the pop-up menu select </span>Create Plot2D View. <span style="font-weight: normal;">A \r
- new container for curve lines will be created in the study (with default \r
- name Plot2DView:1).</span></p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs5">3. Right-click on the name of this container \r
- in the Object Browser and select <span style="font-weight: bold;"><B>Edit \r
- </B></span>item. The following dialog box will appear:</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5"><img src="../image14.gif" width="458px" height="345px" border="0" class="img_whs7"></p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs8"> <span \r
- style="font-weight: normal;">This box contains \r
- two windows:</span></p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs9">- Left window displays a list of curve lines, \r
- which have been created in the study.</p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs9">- Right window displays a list of curve lines \r
- contained in this particular container. These curves will used for creation \r
- of the XY plot.</p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs10">To move a definite curve line from the study \r
- into the container, select it in the left window of this dialog box and \r
- click <img src="../image15.gif" width="20px" height="20px" border="0" class="img_whs11"> button. </p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs8"><span style="font-weight: normal;">To \r
- move a definite curve line from the container back into the study, select \r
- it in the left window of this dialog box and click <img src="../image16.gif" width="20px" height="20px" border="0" class="img_whs11"> button.</span> \r
- </p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs8"><span style="font-weight: normal;">After \r
- having chosen the curve lines, which will compose your XY plot, click \r
- </span>OK <span style="font-weight: normal;">button to quit this dialog \r
- box. In the Object Browser the references to the selected curve lines \r
- will be created under your container:</span></p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs9"><img src="../image17.gif" width="252px" height="96px" border="0" class="img_whs12"></p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs13"><span style="font-weight: normal;">4. \r
- Right-click on the name of the container in the Object Browser and select \r
- </span><span>Display </span><span style="font-weight: normal;">button. \r
- A XY plot consisting of the previously selected curve lines, will be displayed \r
- in the viewer:</span></p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs6"><img src="../image21.jpg" width="600px" height="431px" border="0" class="img_whs14"> </p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs15"><img src="../tip1.gif" x-maintain-ratio="TRUE" width="35px" height="37px" border="0" class="img_whs16"> <span style="font-weight: normal;">In </span>VISU <span style="font-weight: normal;">you \r
- can display up to 200 curves in one window. </span></p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Cut Lines presentation</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=2775>\r
-<meta name=layout-width content=636>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif; font-size: 24pt;}\r
-p.whs2 {font-family: 'Times New Roman', serif; font-size: 12pt;}\r
-img_whs3 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
-ol.whs4 {list-style: decimal;}\r
-p.whs5 {font-family: 'Times New Roman', serif; font-size: 12pt; margin-left: 40px;}\r
-p.whs6 {font-family: 'Times New Roman', serif; font-style: italic; color: #ff0000; margin-left: 40px;}\r
-p.whs7 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000;}\r
-img_whs8 {border-style: none; border: none; width: 28px; height: 26px; float: none;}\r
-p.whs9 {margin-left: 0px; font-family: 'Times New Roman', serif;}\r
-p.whs10 {margin-left: 40px;}\r
-img_whs11 {border-style: none; border: none; width: 400px; height: 388px;}\r
-p.whs12 {font-family: 'Times New Roman', serif; margin-left: 0px;}\r
-p.whs13 {font-family: 'Times New Roman', serif; margin-left: 0px; font-weight: normal;}\r
-p.whs14 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
-p.whs15 {margin-left: 0px;}\r
-img_whs16 {border-style: none; border: none; width: 574px; height: 411px; float: none;}\r
-p.whs17 {margin-left:0px; font-family:'Times New Roman' , serif; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
-img_whs18 {border-style: none; border: none; width: 35px; height: 37px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs9 {margin-left:1; }";\r
- strNSS += "p.whs12 {margin-left:1; }";\r
- strNSS += "p.whs13 {margin-left:1; }";\r
- strNSS += "p.whs15 {margin-left:1; }";\r
- strNSS += "p.whs17 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nField presentations\nCut Lines presentation");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Cut \r
- Lines presentation</h1>\r
-\r
-<p class="whs2"><span \r
- 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 \r
- presentation which displays colored cells with applied scalar values on \r
- the mesh where lines are placed. </p>\r
-\r
-<p class="whs2">The \r
- procedure of construction of <span style="font-weight: bold;"><B>Cut Lines \r
- </B></span>presentation reuses the algorithm of creation <span style="font-weight: bold;"><B>Cut \r
- Planes</B></span> presentation and consists of two steps:</p>\r
-\r
-<ol type="1" class="whs4">\r
- \r
- <li class=kadov-p><p class="whs5"> From \r
- <span style="font-weight: bold;"><B>Cut Planes</B></span> presentation one plane \r
- is taken and it is used as base plane for construction of cut lines. </p></li>\r
- \r
- <li class=kadov-p><p class="whs5">This plane is cut by \r
- a regular array of planes. The result of this operation is a regular array \r
- of lines in space, belonging \r
- to the same plane and having the same orientation. They are located inside \r
- or on the mesh. </p></li>\r
-</ol>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class=TODO><span class=expandtext\r
- style="color: #000000;"><font color=black >To create a Cut Lines presentation:</font></span></p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs7">- Right-click on one of the time stamps of \r
- the field in the Object browser and from the pop-up menu choose <span \r
- style="font-weight: bold;"><B>Cut Lines, </B></span>or</p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7">- Click on one of the time stamps of the field \r
- in the Object browser and select from the main menu <span style="font-weight: bold;"><B>Visualization \r
- > 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;"> \r
- <B></B></span>in the <span style="font-weight: bold;"><B>Visualization Toolbar.</B></span></p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs9">The \r
- following dialog box will appear: </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs10"><img src="../image9.jpg" width="400px" height="388px" border="0" class="img_whs11"></p>\r
-\r
-<p class="whs12"> </p>\r
-\r
-<p class="whs10"><img src="../image10.jpg" width="400px" height="388px" border="0" class="img_whs11"></p>\r
-\r
-<p class="whs10"> </p>\r
-\r
-<p class="whs12"><span \r
- style="font-weight: bold;"><B>Plane of lines: </B></span>this tab of the dialog \r
- box contains the parameters of the base plane, on which the cut lines \r
- will be located.</p>\r
-\r
-<p class="whs12"> </p>\r
-\r
-<p class="whs10">- <span style="font-weight: bold;"><B>Orientation \r
- </B></span>check boxes allow to set the orientation of cut planes in 3D space. \r
- You should select two of three axis (XY, YZ, or ZX) in which your planes \r
- will be located in 3D space</p>\r
-\r
-<p class="whs10">- <span style="font-weight: bold;"><B>Base plane \r
- position: </B></span>position of the base plane. This value can be set by \r
- default or entered manually. </p>\r
-\r
-<p class="whs10">- <span style="font-weight: bold;"><B>Rotations \r
- </B></span>of the planes in 3d space around the axes of the selected orientation. \r
- (The angle of rotation is set in degrees.) </p>\r
-\r
-<p class="whs10">- <span style="font-weight: bold;"><B>Displacement \r
- </B></span>of the plane. This parameter defines position of the base plane \r
- in 3d space.</p>\r
-\r
-<p class="whs10">- <span style="font-weight: bold;"><B>Show preview \r
- </B></span>check box allows to edit the parameters of the presentation and \r
- simultaneously observe the preview of this presentation in the viewer.</p>\r
-\r
-<p class="whs10"><a name=Table></a>- <span style="font-weight: bold;"><B>Generate \r
- Data Table: </B></span>If this check box is marked, Visu will automatically \r
- generate a data table on the basis of your Cut Lines presentation. This \r
- table will be created in the structure of the study. <span \r
- style="font-weight: bold;"><B> </B></span></p>\r
-\r
-<p class="whs10"><span style="font-weight: bold;"><B>- Generate \r
- Curves: </B></span>If this check box is marked, Visu will automatically generate \r
- curve lines on the basis of values taken from the generated data table. \r
- These curves will be created in the structure of the study and can be \r
- visualized in a XY plot. </p>\r
-\r
-<p class="whs10">More about table presentations and curve \r
- lines <a href="about_tables.htm">see here.</a></p>\r
-\r
-<p class="whs12"><span \r
- style="font-weight: bold;"><B> </B></span></p>\r
-\r
-<p class="whs13"><span style="font-weight: bold;"><B>Cut \r
- Planes: </B></span>this tab of the dialog box contains the parameters of cut \r
- planes, which will be used for construction of the cut lines.</p>\r
-\r
-<p class="whs13"> </p>\r
-\r
-<p class="whs14">- \r
- <span style="font-weight: bold;"><B>Orientation </B></span>check boxes allow \r
- to set the orientation of cut planes in 3D space. You should select two \r
- of three axis (XY, YZ, or ZX) in which your planes will be located in \r
- 3D space</p>\r
-\r
-<p class="whs14">- \r
- <span style="font-weight: bold;"><B>Rotations </B></span>of the planes in 3d \r
- space around the axes of the selected orientation. (The angle of rotation \r
- is set in degrees.) </p>\r
-\r
-<p class="whs14">- \r
- <span style="font-weight: bold;"><B>Number of planes</B></span>, which will form \r
- your presentation.</p>\r
-\r
-<p class="whs14">- \r
- <span style="font-weight: bold;"><B>Position </B></span>of each of the planes \r
- relative to other planes, which form your presentation. This value can \r
- be set by default or entered manually. </p>\r
-\r
-<p class="whs14">- \r
- <span style="font-weight: bold;"><B>Displacement </B></span>of the planes. This \r
- parameter defines the displacement of the planes into one or another side. \r
- </p>\r
-\r
-<p class="whs14"> </p>\r
-\r
-<p class="whs14"> </p>\r
-\r
-<p class="whs15"><span style="font-weight: bold;"><B>Scalar Bar \r
- </B></span>tab allows to define the parameters of the scalar bar displayed \r
- along with this presentation (<a href="scalar_map_presentation.htm#Scalar Bar">see \r
- also</a>).</p>\r
-\r
-<p class="whs13"> </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs9">After \r
- you have finished with setting these parameters, click <span style="font-weight: bold;"><B>OK. \r
- </B></span>Your presentation with scalar bar will be immediately displayed \r
- in the viewer: </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs10"> <img src="../pics/cutlinesprsnt.jpg" x-maintain-ratio="TRUE" width="574px" height="411px" border="0" class="img_whs16"></p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs17"><img src="../tip1.gif" x-maintain-ratio="TRUE" width="35px" height="37px" border="0" class="img_whs18"> From <span style="font-weight: bold;"><B>Cut Lines</B></span> presentation \r
- you can create a <span style="font-weight: bold;"><B>data table. </B></span>This \r
- table will consist of the field scalar values located on each cut line \r
- of the constructed presentation (<a href="creating_tables_from_cut_lines_presentations.htm">see \r
- also: Creating tables from Cut Lines presentations</a>). After that your \r
- data table can be used for construction of a 2d plot of curves based on \r
- the scalar values from the table (see also: <a href="creating_curves.htm">Creating \r
- curves</a> and <a href="creating_xy_plot.htm">Creating XY plots</a>). \r
- </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs9">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating curves','creating_curves.htm','Creating field presentations','creating_field_presentations.htm','Creating tables from Cut Lines presentations','creating_tables_from_cut_lines_presentations.htm','Creating XY plot','creating_xy_plot.htm','Editing field presentations','editing_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>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Cut Planes presentation</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=1731>\r
-<meta name=layout-width content=636>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-img_whs2 {border-style: none; border: none; float: none; width: 30px; height: 30px;}\r
-p.whs3 {font-family: 'Times New Roman', serif;}\r
-p.whs4 {font-family: 'Times New Roman', serif; font-style: italic; color: #ff0000; margin-left: 40px;}\r
-p.whs5 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000;}\r
-img_whs6 {border-style: none; border: none; width: 26px; height: 25px; float: none;}\r
-p.whs7 {font-family: 'Times New Roman', serif; margin-left: 0px; font-weight: normal;}\r
-img_whs8 {border-style: none; border: none; width: 400px; height: 436px;}\r
-p.whs9 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
-p.whs10 {margin-left: 0px;}\r
-p.whs11 {margin-left: 40px;}\r
-img_whs12 {border-style: none; border: none; width: 574px; height: 411px; float: none;}\r
-p.whs13 {font-family: 'Times New Roman', serif; font-weight: bold; margin-left: 0px;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs7 {margin-left:1; }";\r
- strNSS += "p.whs10 {margin-left:1; }";\r
- strNSS += "p.whs13 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nField presentations\nCut Planes presentation");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Cut Planes presentation</h1>\r
-\r
-<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 \r
- type of field presentation, when the given shape is cut by a definite \r
- number of surfaces. These surfaces are colored according the values applied \r
- to the cells of the mesh. </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class=TODO\r
- style="font-family: 'Arial Black', sans-serif;">To create a Cut Planes \r
- presentation:</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs5">- Right-click on one of the time stamps of \r
- the field in the Object browser and from the pop-up menu choose <span \r
- style="font-weight: bold;"><B>Cut Planes, </B></span>or</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5">- Click on one of the time stamps of the field \r
- in the Object browser and select from the main menu <span style="font-weight: bold;"><B>Visualization \r
- > 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;"> \r
- <B></B></span>in the <span style="font-weight: bold;"><B>Visualization Toolbar</B></span></p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs7">The following dialog box will appear: \r
- </p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7"> <img src="../image7.jpg" width="400px" height="436px" border="0" class="img_whs8"></p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7"><span style="font-weight: bold;"><B>Cut \r
- Planes </B></span>tab allows to set additional parameters of your <span style="font-weight: bold;"><B>Cut \r
- Planes </B></span>presentation:</p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs9">- \r
- <span style="font-weight: bold;"><B>Orientation </B></span>check boxes allow \r
- to set the orientation of cut planes in 3D space. You should select two \r
- of three axis (XY, YZ, or ZX) in which your planes will be located in \r
- 3D space</p>\r
-\r
-<p class="whs9">- \r
- <span style="font-weight: bold;"><B>Rotations </B></span>of the planes in 3d \r
- space around the axes of the selected orientation. (The angle of rotation \r
- is set in degrees.) </p>\r
-\r
-<p class="whs9">- \r
- <span style="font-weight: bold;"><B>Number of planes</B></span>, which will form \r
- your presentation.</p>\r
-\r
-<p class="whs9">- \r
- <span style="font-weight: bold;"><B>Position </B></span>of each of the planes \r
- relative to other planes, which form your presentation. This value can \r
- be set by default, entered manually. </p>\r
-\r
-<p class="whs9">- \r
- <span style="font-weight: bold;"><B>Displacement </B></span>of the planes. This \r
- parameter defines the displacement of the planes into one or another side. \r
- </p>\r
-\r
-<p class="whs9">- \r
- <span style="font-weight: bold;"><B>Show preview </B></span>check box allows \r
- to edit the parameters of the presentation and simultaneously observe \r
- the preview of this presentation in the viewer.</p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs10"><span style="font-weight: bold;"><B>Scalar Bar \r
- </B></span>tab allows to define the parameters of the scalar bar displayed \r
- along with this presentation (<a href="scalar_map_presentation.htm#Scalar Bar">see \r
- also</a>).</p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7">After you have finished with setting \r
- these parameters, click <span style="font-weight: bold;"><B>OK. </B></span>Your \r
- presentation with scalar bar will be immediately displayed in the viewer: \r
- </p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs11"> <img src="../pics/cutplpresent.jpg" x-maintain-ratio="TRUE" width="574px" height="411px" border="0" class="img_whs12"></p>\r
-\r
-<p class="whs13"> </p>\r
-\r
-<p class="whs13"> </p>\r
-\r
-<p class="whs7">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating field presentations','creating_field_presentations.htm','Editing field presentations','editing_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>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Deformed Shape presentation</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=1563>\r
-<meta name=layout-width content=636>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif; font-weight: bold; text-indent: 48px;}\r
-p.whs3 {font-family: 'Times New Roman', serif; font-weight: bold;}\r
-p.whs4 {font-family: 'Times New Roman', serif; font-style: italic; color: #ff0000; margin-left: 40px;}\r
-p.whs5 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000;}\r
-img_whs6 {border-style: none; border: none; width: 26px; height: 26px; float: none;}\r
-p.whs7 {font-family: 'Times New Roman', serif; margin-left: 0px; font-weight: normal;}\r
-p.whs8 {font-family: 'Times New Roman', serif;}\r
-img_whs9 {border-style: none; border: none; width: 400px; height: 434px;}\r
-p.whs10 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
-p.whs11 {margin-left: 0px;}\r
-p.whs12 {margin-left: 40px;}\r
-img_whs13 {border-style: none; border: none; width: 574px; height: 411px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs7 {margin-left:1; }";\r
- strNSS += "p.whs11 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nField presentations\nDeformed Shape presentation");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Deformed Shape presentation</h1>\r
-\r
-<p class="whs2">Deformed Shape <span style="font-weight: normal;">is \r
- a type of field presentation when vector values corresponding to the cells \r
- of the mesh are visualized by shifting of these cells. </span></p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class=TODO>To create a Deformed Shape presentation:</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs5">- Right-click on one of the time stamps of \r
- the field in the Object browser and from the pop-up menu choose <span \r
- style="font-weight: bold;"><B>Deformed Shape, </B></span>or</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5">- Click on one of the time stamps of the field \r
- in the Object browser and select from the main menu <span style="font-weight: bold;"><B>Visualization \r
- > Deformed Shape</B></span>, or click <img src="../pics/defshapeicon.jpg" x-maintain-ratio="TRUE" width="26px" height="26px" border="0" class="img_whs6"> icon<span style="font-weight: bold;"> \r
- <B></B></span>in the <span style="font-weight: bold;"><B>Visualization Toolbar.</B></span></p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs7">The following dialog box will appear: \r
- </p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs8"> <img src="../image11.jpg" width="400px" height="434px" border="0" class="img_whs9"></p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs8">In this dialog box you \r
- can set additional parameters of your <span style="font-weight: bold;"><B>Deformed \r
- Shape </B></span>presentation:</p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs10">- \r
- <span style="font-weight: bold;"><B>Scale Factor:</B></span> visualization scaling \r
- of all vector values applied to the cells of the mesh. </p>\r
-\r
-<p class="whs10">- \r
- <span style="font-weight: bold;"><B>Magnitude coloring</B></span> check box: \r
- this option allows to color your presentation according the <a href="scalar_map_presentation.htm#Scalar range">scalar \r
- range</a> defined in Scalar Bar properties or to display it using only \r
- one color (this color is taken by default). <span style="font-weight: bold;"><B> </B></span></p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs11"><span style="font-weight: bold;"><B>Scalar Bar \r
- </B></span>tab allows to define the parameters of the scalar bar displayed \r
- along with this presentation (<a href="scalar_map_presentation.htm#Scalar Bar">see \r
- also</a>).</p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs8">After you have finished \r
- with setting these parameters, click <span style="font-weight: bold;"><B>OK. \r
- </B></span>Your presentation with scalar bar will be immediately displayed \r
- in the viewer: </p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs12"> <img src="../pics/defshapeprsnt.jpg" x-maintain-ratio="TRUE" width="574px" height="411px" border="0" class="img_whs13"></p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs8">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating field presentations','creating_field_presentations.htm','Editing field presentations','editing_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>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Displaying/Hiding presentations</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=1265>\r
-<meta name=layout-width content=715>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif;}\r
-p.whs3 {margin-left: 40px;}\r
-img_whs4 {border-style: none; border: none; width: 173px; height: 135px; float: none;}\r
-p.whs5 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
-p.whs6 {color: #ff0000; font-family: 'Times New Roman', serif;}\r
-img_whs7 {border-style: none; border: none; width: 213px; height: 27px; float: none;}\r
-p.whs8 {font-family: 'Times New Roman', serif; margin-left: 0px; font-style: italic; color: #ff0000;}\r
-p.whs9 {font-family: 'Times New Roman', serif; margin-left: 0px;}\r
-p.whs10 {margin-left: 0px; font-family: 'Times New Roman', serif;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs8 {margin-left:1; }";\r
- strNSS += "p.whs9 {margin-left:1; }";\r
- strNSS += "p.whs10 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nOperations with presentations");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Operations with presentations</h1>\r
-\r
-<p class=TODO>To display a presentation: </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs3">Right-click on it in the Object Browser and \r
- from the pop-up menu choose <span style="font-weight: bold;"><B>Display</B></span>. \r
- </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> <img src="../pics/display.jpg" x-maintain-ratio="TRUE" width="173px" height="135px" border="0" class="img_whs4"></p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class=TODO>To display several presentations:</p>\r
-\r
-<p class=TODO> </p>\r
-\r
-<p class="whs3">Hold down <span style="font-weight: bold;"><B>Ctrl</B></span> \r
- button and select in the Object Browser the presentations for displaying. \r
- Right-click with the mouse and from the pop-up menu select <span style="font-weight: bold;"><B>Display</B></span>. \r
- </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class=TODO><span style="font-style: italic;"><I>To display only one presentation:</I></span> \r
- </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs3"> Choose \r
- <span style="font-weight: bold;"><B>Display only </B></span>option. The other \r
- presentations will be immediately hidden.</p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class=TODO>To hide this presentation: </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs3">From the same pop-up menu choose <span style="font-weight: bold;"><B>Erase</B></span>. \r
- (This option will automatically appear in this pop-up menu if this presentation \r
- have been displayed)</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class=TODO><span>To hide all presentations</span><span>:</span><span> \r
- </span></p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs3">From the main menu choose <span style="font-weight: bold;"><B>Representation \r
- > Erase All </B></span>or</p>\r
-\r
-<p class="whs3">in the <span style="font-weight: bold;"><B>Representation \r
- toolbar</B></span> click this button <img src="../pics/erase.jpg" x-maintain-ratio="TRUE" width="213px" height="27px" border="0" class="img_whs7"> </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class=TODO>To delete an existing presentation:</p>\r
-\r
-<p class=TODO> </p>\r
-\r
-<p class="whs3">Right-click on it in the Object Browser and \r
- from the pop-up menu choose <span style="font-weight: bold;"><B>Delete</B></span>. \r
- </p>\r
-\r
-<p> </p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<h4>Operations accessible only for field presentations.</h4>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class=TODO>To copy a field presentation:</p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs5">1. \r
- Right-click on this presentation in the Object Browser or in the viewer.</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5">2. \r
- From the pop-up menu select <span style="font-weight: bold;"><B>Same as </B></span>option.</p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs9">Your \r
- field presentation will duplicated in the same subfolder (time stamp) \r
- in the Object Browser.</p>\r
-\r
-<p class="whs10"> </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class=TODO>To set additional parameters of field presentations: </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs5">1. \r
- Right-click on this presentation in the Object Browser or in the viewer.</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5">2. \r
- From the pop-up menu select <span style="font-weight: bold;"><B>Edit </B></span>option.</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs9">This \r
- option allows to set or modify additional parameters of field presentations \r
- after its creation. </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Displaying tables</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=619>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif;}\r
-p.whs3 {font-family: 'Times New Roman', serif; margin-left: 40px; color: #000000; font-style: normal;}\r
-p.whs4 {font-family: 'Times New Roman', serif; font-style: italic; color: #ff0000; margin-left: 40px;}\r
-img_whs5 {border-style: none; border: none; width: 294px; height: 313px; float: none;}\r
-p.whs6 {font-family: 'Times New Roman', serif; margin-left: 0px;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs6 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\nTable presentations\nDisplaying tables");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Displaying tables</h1>\r
-\r
-<p class=TODO>To display a table:</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs3">1. Right-click \r
- on the required table in the Object Browser </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs3">2. From \r
- the pop-up menu choose <span style="font-weight: bold;"><B>Show Table </B></span>option. \r
- Your table will be displayed in a separate <span style="font-weight: bold;"><B>View \r
- Table </B></span>window:</p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3"> <a \r
- name=Table></a> <img src="../pics/table.gif" x-maintain-ratio="TRUE" width="294px" height="313px" border="0" class="img_whs5"></p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs6">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','About tables','about_tables.htm','Creating tables from Cut Lines presentations','creating_tables_from_cut_lines_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>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Editing field presentations</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=380>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family:'Times New Roman' , serif; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
-img_whs3 {border-style: none; border: none; float: none; width: 36px; height: 38px;}\r
-p.whs4 {font-family: 'Times New Roman', serif;}\r
-p.whs5 {font-family: 'Times New Roman', serif; font-style: normal; color: #000000;}\r
-p.whs6 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nField presentations\nEditing field presentations");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Editing field presentations</h1>\r
-\r
-<p class="whs2"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs3"> In \r
- <span style="font-weight: bold;"><B>VISU </B></span>all options allowing <a href="changing_visualization_parameters_of_the_presenetation.htm" style="font-family: 'Times New Roman', serif;">Changing view parameters</a>, \r
- <a href="renaming_presentations.htm" style="font-family: 'Times New Roman', serif;">Renaming</a>, <a href="displaying_hiding_presentations.htm" style="font-family: 'Times New Roman', serif;">Displaying/Hiding</a>, \r
- <a href="scaling_presentations.htm" style="font-family: 'Times New Roman', serif;">Scaling</a>, <a href="selection_in_visu.htm" style="font-family: 'Times New Roman', serif;">Selecting</a> are <span \r
- style="font-weight: bold;"><B>ALSO</B></span> functional in case of management \r
- of field presentations. But there are some additional options specific \r
- <span style="font-weight: bold;"><B>ONLY </B></span>to field presentations. </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class=TODO>To delete a field presentation:</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs6">1. \r
- Right-click on this presentation in the Object Browser or in the viewer.</p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs6">2. \r
- From the pop-up menu select <span style="font-weight: bold;"><B>Delete </B></span>option.</p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating field presentations','creating_field_presentations.htm','Displaying/Hiding presentations','displaying_hiding_presentations.htm','Scalar Map presentation','scalar_map_presentation.htm','Scaling presentations','scaling_presentations.htm','Selection in VISU','selection_in_visu.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>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Exploring MED files</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=380>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif; font-weight: bold;}\r
-p.whs3 {font-family: 'Times New Roman', serif; font-weight: normal;}\r
-p.whs4 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000;}\r
-p.whs5 {font-family: 'Times New Roman', serif; color: #ff0000; font-style: italic; margin-left: 40px;}\r
-p.whs6 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000; font-weight: normal;}\r
-p.whs7 {font-family: 'Times New Roman', serif; margin-left: 0px;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs7 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Exploring MED files</h1>\r
-\r
-<p class="whs2"><span \r
- style="font-weight: normal;">In </span>VISU <span style="font-weight: normal;">you \r
- can explore MED files. This option automatically launches </span>MED <span \r
- style="font-weight: normal;">component of SALOME platform and imports \r
- MED files using the algorithm of exploring integrated in this component.</span></p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class=TODO>To explore a MED file:</p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs4">1. From \r
- the main menu choose <span style="font-weight: bold;"><B>File > Explore \r
- MED file</B></span></p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs6">2. Using \r
- a standard <span style="font-weight: bold;"><B>Search Files </B></span>dialog \r
- box choose the required MED file.</p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs7">The \r
- structure of the explored MED file will be displayed in the Object Browser. \r
- </p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','About structure of MED object','about_structure_of_med_object.htm','Importing MED files','importing_med_objects.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Getting elements attributes</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=2462>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-style: italic; color: #ff0000; font-family: 'Times New Roman', serif;}\r
-p.whs3 {margin-left: 40px; font-style: normal; font-family: 'Times New Roman', serif; color: #000000;}\r
-img_whs4 {border-style: none; border: none; width: 350px; height: 307px;}\r
-p.whs5 {margin-left: 0px;}\r
-p.whs6 {margin-left: 0px; font-weight: bold;}\r
-p.whs7 {margin-left: 40px;}\r
-img_whs8 {border-style: none; border: none; width: 294px; height: 192px; float: none;}\r
-p.whs9 {color: #ff0000; margin-left: 0px;}\r
-p.whs10 {color: #ff0000; margin-left: 40px; font-style: normal; font-family: 'Times New Roman', serif;}\r
-p.whs11 {margin-left: 0px; font-family: 'Times New Roman', serif;}\r
-p.whs12 {margin-left: 40px; font-style: italic; font-family: 'Times New Roman', serif;}\r
-img_whs13 {border-style: none; border: none; width: 350px; height: 315px;}\r
-p.whs14 {margin-left: 0px; font-family: 'Times New Roman', serif; font-weight: bold;}\r
-p.whs15 {background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
-img_whs16 {border-style: none; border: none; width: 36px; height: 38px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs5 {margin-left:1; }";\r
- strNSS += "p.whs6 {margin-left:1; }";\r
- strNSS += "p.whs9 {margin-left:1; }";\r
- strNSS += "p.whs11 {margin-left:1; }";\r
- strNSS += "p.whs14 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nGetting elements attributes");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Getting elements attributes</h1>\r
-\r
-<p class=TODO>To view the attributes of the elements (cells, points, meshes) \r
- displayed in the viewer:</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs3">1. In the main menu choose <span \r
- style="font-weight: bold;"><B>Selection >Selection \r
- info... </B></span>The following dialog box will appear:</p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3"><img src="../image15.jpg" width="350px" height="307px" border="0" class="img_whs4"></p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs5">In this dialog you can choose a type of elements \r
- which attributes you would like to get: <span style="font-weight: bold;"><B>Point, \r
- Cell, Actor. </B></span></p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs7">2. In the viewer click on the element of \r
- the required type. </p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7"><img src="../pics/cellsel.jpg" x-maintain-ratio="TRUE" width="294px" height="192px" border="0" class="img_whs8"></p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7">It will be highlighted and its attributes \r
- will be displayed in this dialog box: </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<h4><span style="color: #000000;"><font color=black >Points</font></span></h4>\r
-\r
-<p class="whs10"><img src="../image16.jpg" width="350px" height="307px" border="0" class="img_whs4"></p>\r
-\r
-<p class="whs11"> </p>\r
-\r
-<p class="whs7">- <span style="font-style: italic;"><I>Mesh \r
- name</I></span></p>\r
-\r
-<p class="whs7"><span style="font-style: italic;"><I>- Field \r
- name</I></span></p>\r
-\r
-<p class="whs12"><span style="font-style: italic; font-family: 'Times New Roman', serif;"><I>- \r
- ID Number of the point </I></span></p>\r
-\r
-<p class="whs12"><span style="font-style: italic; font-family: 'Times New Roman', serif;"><I>- \r
- Scalar value applied to the point (if any)</I></span></p>\r
-\r
-<p class="whs12">- Vector value applied \r
- to the point (if any)</p>\r
-\r
-<p class="whs12">- Coordinates of the \r
- point in 3d space</p>\r
-\r
-<h4>Cells</h4>\r
-\r
-<p class="whs7"><img src="../image17.jpg" width="350px" height="315px" border="0" class="img_whs13"></p>\r
-\r
-<p class="whs11"> </p>\r
-\r
-<p class="whs7">- <span style="font-style: italic;"><I>Mesh \r
- name</I></span></p>\r
-\r
-<p class="whs7"><span style="font-style: italic;"><I>- Field \r
- name</I></span></p>\r
-\r
-<p class="whs12"><span style="font-style: italic; font-family: 'Times New Roman', serif;"><I>- \r
- ID Number of the cell</I></span></p>\r
-\r
-<p class="whs12"><span style="font-style: italic; font-family: 'Times New Roman', serif;"><I>- \r
- Scalar value applied to the cell (if any)</I></span></p>\r
-\r
-<p class="whs12">- Vector value applied \r
- to the cell (if any)</p>\r
-\r
-<p class="whs12">- Attributes of the \r
- points forming this cell</p>\r
-\r
-<p class="whs14"> </p>\r
-\r
-<p class="whs14">Actor (3D object)</p>\r
-\r
-<p> </p>\r
-\r
-<p class="whs6"><span style="font-weight: bold;"><B>Actor \r
- - <span style="font-weight: normal;">it is any 3D object (presentation \r
- of a submesh, field presentation) displayed in the viewer.</span></B></span></p>\r
-\r
-<p> </p>\r
-\r
-<p class="whs7"><img src="../image18.jpg" width="350px" height="315px" border="0" class="img_whs13"></p>\r
-\r
-<p class="whs11"> </p>\r
-\r
-<p class="whs7">- <span style="font-style: italic;"><I>Mesh \r
- name</I></span></p>\r
-\r
-<p class="whs7"><span style="font-style: italic;"><I>- Field \r
- name</I></span></p>\r
-\r
-<p class="whs12">- Coordinates of the \r
- object in 3d space</p>\r
-\r
-<p class="whs12">- Size of the object</p>\r
-\r
-<p class="whs12"> </p>\r
-\r
-<p class="whs15"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs16">Using this dialog box, you can examine the attributes of a \r
- definite point or cell, selected by its ID number. For that, you should \r
- only enter an ID number of a definite point or cell in the <span style="font-weight: bold;"><B>ID \r
- </B></span>field, the attributes of this point or cell will be immediately \r
- displayed.</p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Getting started</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=997>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h2.whs1 {font-size: 14pt;}\r
-img_whs2 {border-style: none; border: none; float: none; width: 29px; height: 29px;}\r
-p.whs3 {font-size: 14pt;}\r
-p.whs4 {margin-left: 40px;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\nGetting started");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script><!--(Generated Script Links)========================================-->\r
-<!--(Generated Code)================================================-->\r
-<!--(WARNING: DO NOT EDIT OR DELETE THIS SECTION!)==================-->\r
-<script type="text/javascript" language="JavaScript1.2" src="../ehlpdhtm.js" x-save-method="compute-relative" name="EHELP_DHTM"></script>\r
-<script type="text/javascript"\r
- language=JavaScript1.2>\r
-<!-- \r
-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();\r
- //-->\r
-</script>\r
-\r
-<!--(==============================================================)-->\r
-\r
-\r
-<h1>Getting started</h1>\r
-\r
-<h2 class="whs1"><span style="color: #0000ff;"><font color=blue >STEP 1:</font></span> \r
- Create a new study and launch VISU module <a href="javascript:void(0);" id="a1" style="font-size: 14pt;" onMouseOver="if (parseInt(navigator.appVersion) >= 4 && typeof(BSPSPopupOnMouseOver) == 'function') BSPSPopupOnMouseOver(event);" class="BSSCPopup" onclick="BSSCPopup('a.htm',810,600);return false;"><img src="../more.jpg" x-maintain-ratio="TRUE" width="29px" height="29px" border="0" class="img_whs2"></a><script type="text/javascript"\r
- language=JavaScript1.2><!--\r
-kadovFilePopupInit('a1');\r
-//--></script></h2>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Running VISU','running_visu.htm');return false;" title="See also"><img src="../ss_btn_see_also.gif" border=0 height=17 width=51 alt="See also"></a></p>\r
-\r
-<h2 class="whs1"><span style="color: #0000ff;"><font color=blue >STEP 2:</font></span> \r
- Import a mesh from a MED file <a href="javascript:void(0);" id="a2" style="font-size: 14pt;" onMouseOver="if (parseInt(navigator.appVersion) >= 4 && typeof(BSPSPopupOnMouseOver) == 'function') BSPSPopupOnMouseOver(event);" class="BSSCPopup" onclick="BSSCPopup('a1.htm',810,600);return false;"><img src="../more.jpg" x-maintain-ratio="TRUE" width="29px" height="29px" border="0" class="img_whs2"></a><script type="text/javascript"\r
- language=JavaScript1.2><!--\r
-kadovFilePopupInit('a2');\r
-//--></script></h2>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','About structure of MED object','about_structure_of_med_object.htm','Importing MED files','importing_med_objects.htm');return false;" title="See also"><img src="../ss_btn_see_also.gif" border=0 height=17 width=51 alt="See also"></a></p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<h2 class="whs1"><span style="color: #0000ff;"><font color=blue >STEP 3:</font></span> \r
- Create a presentation of a submesh and set view parameters <a href="javascript:void(0);" id="a3" style="font-size: 14pt;" onMouseOver="if (parseInt(navigator.appVersion) >= 4 && typeof(BSPSPopupOnMouseOver) == 'function') BSPSPopupOnMouseOver(event);" class="BSSCPopup" onclick="BSSCPopup('a2.htm',810,600);return false;"><img src="../more.jpg" x-maintain-ratio="TRUE" width="29px" height="29px" border="0" class="img_whs2"></a><script type="text/javascript"\r
- language=JavaScript1.2><!--\r
-kadovFilePopupInit('a3');\r
-//--></script></h2>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating presentations','creating_presentations.htm','Setting presentation view parameters','changing_visualization_parameters_of_the_presenetation.htm');return false;" title="See also"><img src="../ss_btn_see_also.gif" border=0 height=17 width=51 alt="See also"></a></p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<h2 class="whs1"><span style="color: #0000ff;"><font color=blue >STEP 4:</font></span> \r
- Create field presentations and use sweeping <a href="javascript:void(0);" id="a4" style="font-size: 14pt;" onMouseOver="if (parseInt(navigator.appVersion) >= 4 && typeof(BSPSPopupOnMouseOver) == 'function') BSPSPopupOnMouseOver(event);" class="BSSCPopup" onclick="BSSCPopup('a3.htm',810,600);return false;"><img src="../more.jpg" x-maintain-ratio="TRUE" width="29px" height="29px" border="0" class="img_whs2"></a><script type="text/javascript"\r
- language=JavaScript1.2><!--\r
-kadovFilePopupInit('a4');\r
-//--></script></h2>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating field presentations','creating_field_presentations.htm','Setting presentation view parameters','changing_visualization_parameters_of_the_presenetation.htm','Sweeping','sweeping.htm');return false;" title="See also"><img src="../ss_btn_see_also.gif" border=0 height=17 width=51 alt="See also"></a></p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<h2 class="whs1"><span style="color: #0000ff;"><font color=blue >STEP 5:</font></span> \r
- Animate fields <a href="javascript:void(0);" id="a5" style="font-size: 14pt;" onMouseOver="if (parseInt(navigator.appVersion) >= 4 && typeof(BSPSPopupOnMouseOver) == 'function') BSPSPopupOnMouseOver(event);" class="BSSCPopup" onclick="BSSCPopup('a5.htm',880,600);return false;"><img src="../more.jpg" x-maintain-ratio="TRUE" width="29px" height="29px" border="0" class="img_whs2"></a><script type="text/javascript"\r
- language=JavaScript1.2><!--\r
-kadovFilePopupInit('a5');\r
-//--></script></h2>\r
-\r
-<p class="whs3">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Animating presentations','animating_presentations.htm','Creating field presentations','creating_field_presentations.htm');return false;" title="See also"><img src="../ss_btn_see_also.gif" border=0 height=17 width=51 alt="See also"></a></p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<h2 class="whs1"><span style="color: #0000ff;"><font color=blue >STEP 6:</font></span> \r
- Import a table from a file and create a 2d plot based on the data from \r
- this table <a href="javascript:void(0);" id="a6" style="font-size: 14pt;" onMouseOver="if (parseInt(navigator.appVersion) >= 4 && typeof(BSPSPopupOnMouseOver) == 'function') BSPSPopupOnMouseOver(event);" class="BSSCPopup" onclick="BSSCPopup('a4.htm',880,600);return false;"><img src="../more.jpg" x-maintain-ratio="TRUE" width="29px" height="29px" border="0" class="img_whs2"></a><script \r
- type="text/javascript"\r
- language=JavaScript1.2><!--\r
-kadovFilePopupInit('a6');\r
-//--></script></h2>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p><span style="font-size: 14pt;">\r
-<font size=4 style="font-size:14pt;"><a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','About tables','about_tables.htm','Creating curves','creating_curves.htm','Creating XY plot','creating_xy_plot.htm','Displaying tables','displaying_tables.htm','Importing tables','importing_tables.htm');return false;" title="See also"><img src="../ss_btn_see_also.gif" border=0 height=17 width=51 alt="See also"></a></font></span></p>\r
-\r
-<p> </p>\r
-\r
-<p> </p>\r
-\r
-<p> </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Importing MED objects</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=1233>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif;}\r
-p.whs3 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
-img_whs4 {border-style: none; border: none; width: 344px; height: 221px; float: none;}\r
-img_whs5 {border-style: none; border: none; width: 236px; height: 294px; float: none;}\r
-p.whs6 {font-family:'Times New Roman' , serif; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
-img_whs7 {border-style: none; border: none; float: none; width: 36px; height: 38px;}\r
-p.whs8 {background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
-p.whs9 {background-image:url(../texture_horiz_ltbluebubbles.jpg); margin-left:0px; }\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs9 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\nImporting MED files");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Importing MED file</h1>\r
-\r
-<p class=TODO>To import a MED file:</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs3">From \r
- the <span style="font-weight: bold;"><B>File </B></span>menu choose <span style="font-weight: bold;"><B>Import \r
- MED </B></span>or right-click on the <span style="font-weight: bold;"><B>Visu</B></span> \r
- object in the <span style="font-weight: bold;"><B>Object Browser</B></span> and \r
- select the <span style="font-weight: bold;"><B>Import MED </B></span>option.<span \r
- style="font-weight: bold;"> <B></B></span>After it you will see a standard dialog \r
- box allowing to search for and choose *.med file:</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> <img src="../pics/importmed.jpg" x-maintain-ratio="TRUE" width="344px" height="221px" border="0" class="img_whs4"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs3">To \r
- confirm your choice click <span style="font-weight: bold;"><B>Open</B></span>.</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2">The structure of the \r
- imported MED object will be immediately displayed in the Object Browser \r
- of SALOME application:</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> <img src="../pics/object.jpg" x-maintain-ratio="TRUE" width="236px" height="294px" border="0" class="img_whs5"></p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs6"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs7"> At the same time you can import several MED files and work \r
- with them simultaneously. All imported MED files will be displayed in \r
- the Object Browser of SALOME application in <span style="font-weight: bold;"><B>Visu \r
- </B></span>folder. </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs8"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs7"> In VISU component there are two options of loading of MED \r
- objects:</p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs9">- \r
- loading of all data stored in the MED object into the study</p>\r
-\r
-<p class="whs9">- \r
- loading of the structure of the MED object into the study. In this case \r
- the supplementary data will be automatically uploaded on creation of 3D \r
- presentations on the basis of the \r
- fields stored in this MED object. </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs9">This \r
- option can be set by enabling/disabling <span style="font-weight: bold;"><B>Preferences>Visu>Full \r
- med loading </B></span><span>item.</span><span style="font-weight: bold;"> \r
- <B></B></span></p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','About structure of MED object','about_structure_of_med_object.htm','Exploring MED files','exploring_med_files.htm','Introduction to VISU','introduction_to_visu.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Importing tables</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=1297>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif; color: #ff0000; font-style: italic;}\r
-p.whs3 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000;}\r
-p.whs4 {font-family: 'Times New Roman', serif; color: #ff0000; font-style: italic; margin-left: 40px;}\r
-p.whs5 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000; font-weight: normal;}\r
-p.whs6 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000; font-weight: bold;}\r
-img_whs7 {border-style: none; border: none; width: 610px; height: 292px; float: none;}\r
-img_whs8 {border-style: none; border: none; width: 223px; height: 339px;}\r
-p.whs9 {margin-left: 0px;}\r
-img_whs10 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
-p.whs11 {margin-left: 40px;}\r
-p.whs12 {margin-left: 40px; font-weight: bold;}\r
-p.whs13 {margin-left: 40px; font-weight: normal;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs9 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\nTable presentations\nImporting/exporting tables");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Importing/exporting \r
- tables</h1>\r
-\r
-<p class=TODO>To import a table from file:</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs3">1. From \r
- the main menu choose <span style="font-weight: bold;"><B>File > Import \r
- TABLE</B></span>, or in the Object Browser right-click on the <span style="font-weight: bold;"><B>Visu \r
- </B></span>object and select <span style="font-weight: bold;"><B>Import TABLE \r
- </B></span>item.<span style="font-weight: bold;"> <B></B></span></p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs5">2. From \r
- the following standard dialog box:</p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs5"> <img src="../pics/importingtables.jpg" x-maintain-ratio="TRUE" width="610px" height="292px" border="0" class="img_whs7"></p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5">choose the necessary *.xls, *.txt or \r
- *.tab file containing tables and click <span style="font-weight: bold;"><B>Open</B></span> \r
- button. </p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5">3. In \r
- the Object Browser <span style="font-weight: bold;"><B>VISU </B></span>will create \r
- a new folder having the name of the imported file. All tables from this \r
- file will be located in this folder:</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5"> <img src="../image1.gif" width="223px" height="339px" border="0" class="img_whs8"></p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5">From this picture you can see that one \r
- *.xls file can contain several tables.</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs9"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs10">In <span style="font-weight: bold;"><B>VISU</B></span> \r
- you can export into XML files one of the tables contained in the XML file, \r
- which has been previously imported into study.</p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class=TODO>To export a table:</p>\r
-\r
-<p class=TODO> </p>\r
-\r
-<p class="whs11">1. Click on it in the Object Browser and \r
- select <span style="font-weight: bold;"><B>Export Table.</B></span></p>\r
-\r
-<p class="whs11"> </p>\r
-\r
-<p class="whs12"><span style="font-weight: normal;">2. \r
- In the standard dialog box enter the name of the file, which will contain \r
- your exported table, and click </span>OK <span style="font-weight: normal;">button. \r
- Your table will be exported.</span></p>\r
-\r
-<p class="whs12"> </p>\r
-\r
-<p class="whs13"> </p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Insideframe</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=380>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-img_whs1 {border-style: none; border: none; width: 422px; height: 293px;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<p><img src="../image19.jpg" width="422px" height="293px" border="0" class="img_whs1"></p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Introduction to VISU</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=428>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif;}\r
-img_whs3 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
-ul.whs4 {list-style: disc;}\r
-p.whs5 {margin-left: 0px; font-family: 'Times New Roman', serif;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs5 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\nIntroduction to VISU");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Introduction to VISU</h1>\r
-\r
-<p class="whs2"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">Post-processing \r
- module <span style="font-weight: bold;"><B>VISU</B></span> for SALOME is \r
- destined for visualization of data produced by the other components of \r
- the platform. <span style="font-weight: bold;"><B>VISU</B></span> provides various \r
- forms of data visualization including: </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<ul type="disc" class="whs4">\r
- \r
- <li class=kadov-p><p class="whs2"><a href="about_tables.htm">Data tables</a>,</p></li>\r
-</ul>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<ul type="disc" class="whs4">\r
- \r
- <li class=kadov-p><p class="whs2"><a href="creating_xy_plot.htm">XY plots based on data from tables,</a></p></li>\r
-</ul>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<ul type="disc" class="whs4">\r
- \r
- <li class=kadov-p><p class="whs2"><a href="creating_presentations.htm">3d presentations of submeshes</a>,</p></li>\r
-</ul>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<ul type="disc" class="whs4">\r
- \r
- <li class=kadov-p><p class="whs2"><a href="creating_field_presentations.htm">3d presentations of fields</a>:</p></li>\r
-</ul>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs5">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_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>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Iso Surfaces presentation</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=1584>\r
-<meta name=layout-width content=701>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-img_whs2 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
-p.whs3 {font-family: 'Times New Roman', serif;}\r
-p.whs4 {font-family: 'Times New Roman', serif; font-style: italic; color: #ff0000; margin-left: 40px;}\r
-p.whs5 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000;}\r
-img_whs6 {border-style: none; border: none; width: 26px; height: 27px; float: none;}\r
-p.whs7 {font-family: 'Times New Roman', serif; margin-left: 0px; font-weight: normal;}\r
-p.whs8 {font-family: 'Times New Roman', serif; font-weight: bold; margin-left: 0px;}\r
-img_whs9 {border-style: none; border: none; width: 400px; height: 403px;}\r
-p.whs10 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
-p.whs11 {font-family: 'Times New Roman', serif; margin-left: 0px;}\r
-p.whs12 {margin-left: 40px;}\r
-img_whs13 {border-style: none; border: none; width: 574px; height: 411px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs7 {margin-left:1; }";\r
- strNSS += "p.whs8 {margin-left:1; }";\r
- strNSS += "p.whs11 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nField presentations\nIso Surfaces presentation");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Iso Surfaces presentation</h1>\r
-\r
-<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 \r
- combines all equal scalar values applied to the cells and on the basis \r
- of them constructs isobaric \r
- surfaces, which form this presentation.</p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class=TODO\r
- style="font-family: 'Arial Black', sans-serif;">To create an Iso Surfaces \r
- presentation:</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs5">- Right-click on one of the time stamps of \r
- the field in the Object browser and from the pop-up menu choose <span \r
- style="font-weight: bold;"><B>Iso Surfaces, </B></span><span>or</span></p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5">- Click on one of the time stamps of the field \r
- in the Object browser and select from the main menu <span style="font-weight: bold;"><B>Visualization \r
- > 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;"> \r
- <B></B></span>in the <span style="font-weight: bold;"><B>Visualization Toolbar</B></span></p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs7">The following dialog box will appear: \r
- </p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs7"> <img src="../image6.jpg" width="400px" height="403px" border="0" class="img_whs9"></p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7"><span style="font-weight: bold;"><B>Iso \r
- Surface </B></span><span>tab allows to set </span>additional parameters of \r
- the <span style="font-weight: bold;"><B>Iso Surfaces </B></span>presentation:</p>\r
-\r
-<p class="whs10"> </p>\r
-\r
-<p class="whs10">- \r
- <span style="font-weight: bold;"><B>Number of surfaces</B></span>, which will \r
- be generated in the framework of this presentation</p>\r
-\r
-<p> </p>\r
-\r
-<p class="whs10">- \r
- <span style="font-weight: bold;"><B>Minimum / Maximum value </B></span>fields \r
- allow to enter the range of scalar or vector values applied to the cells, \r
- on the basis of which this presentation will be created. </p>\r
-\r
-<p class="whs10"> </p>\r
-\r
-<p class="whs10">- \r
- <span style="font-weight: bold;"><B>Update scalar bar range with these values \r
- </B></span><span>button allows you to update the range of the values, displayed \r
- with by the scalar bar, with the previously defined range of values.</span></p>\r
-\r
-<p class="whs11"> </p>\r
-\r
-<p class="whs11"><span \r
- style="font-weight: bold;"><B>Scalar Bar </B></span>tab allows to define the \r
- parameters of the scalar bar displayed along with this presentation (<a href="scalar_map_presentation.htm#Scalar Bar">see also</a>).</p>\r
-\r
-<p class="whs11"> </p>\r
-\r
-<p class="whs11">After \r
- you have finished with setting these parameters, click <span style="font-weight: bold;"><B>OK. \r
- </B></span>Your presentation with scalar bar will be immediately displayed \r
- in the viewer: </p>\r
-\r
-<p class="whs11"> </p>\r
-\r
-<p class="whs12"> <img src="../pics/iso.jpg" x-maintain-ratio="TRUE" width="574px" height="411px" border="0" class="img_whs13"></p>\r
-\r
-<p class="whs11"> </p>\r
-\r
-<p class="whs11"> </p>\r
-\r
-<p class="whs11">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating field presentations','creating_field_presentations.htm','Editing field presentations','editing_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>\r
-\r
-<p class="whs11"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Points</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=380>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-img_whs1 {border-style: none; border: none; width: 422px; height: 220px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<p><img src="../pics/points.jpg" x-maintain-ratio="TRUE" width="422px" height="220px" border="0" class="img_whs1"></p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Renaming presentations</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=427>\r
-<meta name=layout-width content=614>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif;}\r
-p.whs3 {margin-left: 40px;}\r
-img_whs4 {border-style: none; border: none; width: 353px; height: 145px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nRenaming presentations");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Renaming presentations</h1>\r
-\r
-<p class=TODO>To rename your presentation: </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs3">Right-click on the submesh (for which you \r
- have already created a presentation) in the Object Browser or right-click \r
- on this presentation in the viewer. From the pop-up menu choose <span \r
- style="font-weight: bold;"><B>Rename</B></span>, the following dialog box will \r
- appear:</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> <img src="../pics/rename.jpg" x-maintain-ratio="TRUE" width="353px" height="145px" border="0" class="img_whs4"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2">In the field <span style="font-weight: bold;"><B>Name \r
- </B></span>enter your personal name of the presentation and click <span style="font-weight: bold;"><B>OK \r
- </B></span>button to confirm your choice. The name of the presentation will \r
- change in the Object Browser.</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Running VISU</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=1616>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif;}\r
-ol.whs3 {list-style: decimal;}\r
-img_whs4 {border-style: none; border: none; width: 32px; height: 34px; float: none;}\r
-p.whs5 {margin-left: 40px;}\r
-img_whs6 {border-style: none; border: none; width: 574px; height: 399px; float: none;}\r
-p.whs7 {font-family:'Times New Roman' , serif; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
-img_whs8 {border-style: none; border: none; float: none; width: 36px; height: 38px;}\r
-img_whs9 {border-style: none; border: none; width: 33px; height: 40px; float: none;}\r
-img_whs10 {border-style: none; border: none; width: 152px; height: 156px; float: none;}\r
-img_whs11 {border-style: none; border: none; width: 573px; height: 398px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\nRunning VISU");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Running VISU</h1>\r
-\r
-<p class=TODO>To start <span style="font-weight: bold;"><B>VISU</B></span> <span \r
- class=glossterm>module</span> in the SALOME application:</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<ol type="1" class="whs3">\r
- \r
- <li class=kadov-p><p class="whs2">Run \r
- SALOME application</p></li>\r
- \r
- <li class=kadov-p><p class="whs2">Create \r
- a new study by clicking <img src="../pics/new.jpg" x-maintain-ratio="TRUE" width="32px" height="34px" border="0" class="img_whs4"> icon in the main toolbar. The \r
- following SALOME standard window will \r
- appear: </p></li>\r
-</ol>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs5"> <img src="../pics/main.jpg" x-maintain-ratio="TRUE" width="574px" height="399px" border="0" class="img_whs6"></p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs7"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs8"> Before launching VISU module, you should set the VTK viewer \r
- as default viewer for creation of a new study window. In VISU you can \r
- create presentations only in the VTK viewer. (see also: Setting preferences)</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"><span style="font-family: 'Times New Roman', serif; margin-left: 40px;"> 3. \r
- In the bottom toolbar click <img src="../pics/visuicon.jpg" x-maintain-ratio="TRUE" width="33px" height="40px" border="0" class="img_whs9"> icon or from \r
- the bottom Choose box</span></p>\r
-\r
-<p class="whs2"> <img src="../pics/choosebox.jpg" x-maintain-ratio="TRUE" width="152px" height="156px" border="0" class="img_whs10"></p>\r
-\r
-<p class="whs2"> select \r
- <span style="font-weight: bold;"><B>Visu</B></span>.</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2">The initial desktop of \r
- the SALOME platform will be updated with some additional toolbars and \r
- menus related to VISU component . It will look like as follows:</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs5"> <img src="../pics/visuwind.jpg" x-maintain-ratio="TRUE" width="573px" height="398px" border="0" class="img_whs11"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Importing MED files','importing_med_objects.htm','Introduction to VISU','introduction_to_visu.htm');return false;" title="Related Topics"><img src="../ss_btn_related_topics.gif" border=0 height=17 width=82 alt="Related Topics"></a></p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Scalar Map presentation</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=2851>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-img_whs2 {border-style: none; border: none; float: none; width: 30px; height: 30px;}\r
-p.whs3 {margin-left: 40px;}\r
-p.whs4 {font-family: 'Times New Roman', serif;}\r
-p.whs5 {font-family: 'Times New Roman', serif; font-style: italic; color: #ff0000; margin-left: 40px;}\r
-p.whs6 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000;}\r
-img_whs7 {border-style: none; border: none; width: 31px; height: 27px; float: none;}\r
-p.whs8 {font-family: 'Times New Roman', serif; margin-left: 0px; font-weight: normal;}\r
-p.whs9 {margin-left: 0px; font-family: 'Times New Roman', serif; font-weight: normal;}\r
-img_whs10 {border-style: none; border: none; width: 400px; height: 409px;}\r
-p.whs11 {font-family:'Times New Roman' , serif; margin-left:0px; background-image:url(../texture_horiz_ltbluebubbles.jpg); }\r
-img_whs12 {border-style: none; border: none; float: none; width: 36px; height: 38px;}\r
-p.whs13 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
-p.whs14 {font-family: 'Times New Roman', serif; margin-left: 40px; font-weight: bold;}\r
-p.whs15 {font-family: 'Times New Roman', serif; margin-left: 40px; font-weight: normal;}\r
-ul.whs16 {list-style: disc;}\r
-p.whs17 {margin-left: 80px;}\r
-p.whs18 {font-family: 'Times New Roman', serif; margin-left: 0px;}\r
-img_whs19 {border-style: none; border: none; width: 400px; height: 240px;}\r
-img_whs20 {border-style: none; border: none; width: 574px; height: 411px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs8 {margin-left:1; }";\r
- strNSS += "p.whs9 {margin-left:1; }";\r
- strNSS += "p.whs11 {margin-left:1; }";\r
- strNSS += "p.whs18 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nField presentations\nScalar Map presentation");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Scalar Map presentation</h1>\r
-\r
-<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">Scalar Map</B></span> is the \r
- basic type of visualization of calculation data in <span style="font-weight: bold;"><B>VISU \r
- </B></span>module. This presentation consists of the following:</p>\r
-\r
-<p> </p>\r
-\r
-<p class="whs3">- creating of a 3D presentation on the basis \r
- of a field;</p>\r
-\r
-<p class="whs3">- coloring of the cells of this presentation, \r
- according the scalar or vector values applied to this cells;</p>\r
-\r
-<p class="whs3">- creating \r
- of a scalar bar: a scale, representing the correspondence between \r
- the scalar values of the field and the used colors. </p>\r
-\r
-<p> </p>\r
-\r
-<p>All other types of field presentation are based on the <span style="font-weight: bold;"><B>Scalar \r
- Map. </B></span></p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class=TODO\r
- style="color: #000000;">To create a Scalar Map presentation:</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs6">- Right-click on one of the time stamps of \r
- the field in the Object browser and from the pop-up menu choose <span \r
- style="font-weight: bold;"><B>Scalar Map, </B></span><span>or</span></p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs6">- Click on one of the time stamps of the field \r
- in the Object browser and select from the main menu <span style="font-weight: bold;"><B>Visualization \r
- > 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;"> \r
- <B></B></span>in the <span style="font-weight: bold;"><B>Visualization Toolbar</B></span></p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs8">The following dialog box will appear:</p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs3"><a name="Scalar Bar"></a><img src="../image4.jpg" width="400px" height="409px" border="0" class="img_whs10"></p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs11"><img src="../note1.gif" x-maintain-ratio="TRUE" width="36px" height="38px" border="0" class="img_whs12">This dialog box is equal for all types of field presentations \r
- and it will be present as an additional tab in all dialog boxes allowing \r
- to create the other types of presentations. It allows to set the parameters \r
- of <span style="font-weight: bold;"><B>Scalar range,</B></span> as well as the \r
- parameters of the <span style="font-weight: bold;"><B>Scalar Bar.</B></span> \r
- You can also set these parameters as preferences which will be used in \r
- all SALOME sessions: in the main menu select <span style="font-weight: bold;"><B>Preferences \r
- > Visu > Scalar Bar.</B></span> <span \r
- style="font-weight: bold;"><B> </B></span> </p>\r
-\r
-<p class="whs13"> </p>\r
-\r
-<p class=TODO>Scalar range parameters:</p>\r
-\r
-<p class="whs13"> </p>\r
-\r
-<p class="whs14">- Scalar Mode <span style="font-weight: normal;">field: \r
- This field allows to choose the mode of transformation of vector values \r
- into scalar values for creation of the presentation. It can be module \r
- of the vector or one of three components of the vector. (Note: This choose \r
- box is relevant only for fields containing vector values, in other cases \r
- it will be inactive). </span></p>\r
-\r
-<p class="whs14"> </p>\r
-\r
-<p class="whs14"><span style="font-weight: normal;">- </span>Logarithmic \r
- scaling <span style="font-weight: normal;">check box: You can apply logarithmic \r
- scaling to the color scale of the presentation.</span></p>\r
-\r
-<p class="whs14"> </p>\r
-\r
-<p class="whs15"><a name="Scalar range"></a>- <span style="font-weight: bold;"><B>Scalar \r
- range </B></span>check boxes: These check boxes allow you to \r
- select the range of scalar values of the field, on the basis of which \r
- this presentation will be constructed. </p>\r
-\r
-<p class="whs15"> </p>\r
-\r
-<ul type="disc" class="whs16">\r
- \r
- <li class=kadov-p><p class="whs17"><span style="font-weight: bold;"><B>Use \r
- field range: </B></span>if this check box is selected, all cells of the field \r
- presentation will be colored according the values applied to these cells. \r
- </p></li>\r
- \r
- <li class=kadov-p><p class="whs17"><span style="font-weight: bold;"><B>Use \r
- imposed range: </B></span>here you can define your own range of scalar values \r
- of the field, on the basis of which this presentation will be constructed. \r
- The cells of the field presentation with applied scalar or vector values \r
- belonging to this imposed range will be colored according to these values. \r
- The other cells of the field presentation (with applied scalar or vector \r
- values out of this imposed range) will be displayed using one color. For \r
- the cells with applied scalar or vector values, which are less than the \r
- <span style="font-weight: bold;"><B>minimal</B></span> value of the imposed range, \r
- the color will be the same as for the cells with applied minimal values. \r
- For the cells with applied scalar or vector values, which are larger than \r
- the <span style="font-weight: bold;"><B>maximal</B></span> value of the imposed \r
- range the color will be the same as for the cells with applied minimal \r
- values. </p></li>\r
-</ul>\r
-\r
-<p class="whs17"> </p>\r
-\r
-<p class=TODO>Scalar Bar parameters: </p>\r
-\r
-<p class="whs15"> </p>\r
-\r
-<p class="whs15">- <span style="font-weight: bold;"><B>Nb. \r
- of colors </B></span>field: In this field you can enter the number of colors, \r
- which will be used for coloring of cells containing scalar values.</p>\r
-\r
-<p class="whs15"> </p>\r
-\r
-<p class="whs15">- <span style="font-weight: bold;"><B>Nb. \r
- of labels </B></span>field: In this field you can enter the number of labels, \r
- indicating graduation of the scalar bar.</p>\r
-\r
-<p class="whs15"> </p>\r
-\r
-<p class="whs15"><span style="font-weight: bold;"><B>- Orientation: \r
- </B></span>You can select <span style="font-weight: bold;"><B>Vertical </B></span>or<span \r
- style="font-weight: bold;"><B> Horizontal </B></span>orientation of the scalar \r
- bar. </p>\r
-\r
-<p class="whs15"> </p>\r
-\r
-<p class="whs15">- <span style="font-weight: bold;"><B>Origin:</B></span> \r
- Here you can enter coordinates of the origin of the scalar bar.</p>\r
-\r
-<p class="whs15"> </p>\r
-\r
-<p class="whs15">- <span style="font-weight: bold;"><B>Dimensions</B></span>: \r
- Dimensions of the scalar bar.</p>\r
-\r
-<p class="whs15"> </p>\r
-\r
-<p class="whs18"><span \r
- style="font-weight: bold;"><B>Save as default values </B></span>check box allows \r
- to save this parameters for all presentations, which will be constructed \r
- later.</p>\r
-\r
-<p class="whs18"> </p>\r
-\r
-<p class="whs18"><span \r
- style="font-weight: bold;"><B>Text properties </B></span>button allows you to \r
- define from the following dialog box:</p>\r
-\r
-<p class="whs18"> </p>\r
-\r
-<p class="whs3"><img src="../image5.jpg" width="400px" height="240px" border="0" class="img_whs19"></p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs3">- <span style="font-weight: bold;"><B>Title</B></span> \r
- of the field, on the basis of which this presentation is created,</p>\r
-\r
-<p class="whs3">- <span style="font-weight: bold;"><B>Font </B></span>properties \r
- of the this title, displayed in the Object Browser,</p>\r
-\r
-<p class="whs3">- <span style="font-weight: bold;"><B>Font </B></span>properties \r
- of the labels, displayed new the scalar bar, created with this presentation. \r
- </p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs18">After \r
- you have finished with setting these parameters, click <span style="font-weight: bold;"><B>OK. \r
- </B></span>Your presentation with scalar bar will be immediately displayed \r
- in the viewer: </p>\r
-\r
-<p class="whs18"> </p>\r
-\r
-<p class="whs3"> <img src="../pics/scalarmap.jpg" x-maintain-ratio="TRUE" width="574px" height="411px" border="0" class="img_whs20"></p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs8">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating field presentations','creating_field_presentations.htm','Editing field presentations','editing_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>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<p class="whs8"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Scaling presentations</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=778>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif;}\r
-img_whs3 {border-style: none; border: none; float: none; width: 30px; height: 30px;}\r
-p.whs4 {color: #ff0000; font-style: italic; font-family: 'Times New Roman', serif;}\r
-p.whs5 {margin-left: 40px; font-style: normal; color: #000000; font-family: 'Times New Roman', serif;}\r
-p.whs6 {color: #ff0000; font-style: italic; margin-left: 40px; font-family: 'Times New Roman', serif;}\r
-img_whs7 {border-style: none; border: none; width: 28px; height: 29px; float: none;}\r
-p.whs8 {color: #ff0000; font-style: italic; margin-left: 0px;}\r
-img_whs9 {border-style: none; border: none; width: 470px; height: 277px; float: none;}\r
-p.whs10 {margin-left: 40px; color: #ff0000; font-style: italic; font-family: 'Times New Roman', serif;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs8 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nScaling presentations");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Scaling presentations</h1>\r
-\r
-<p class="whs2"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">In SALOME \r
- there is a feature allowing to scale presentations of submeshes and field \r
- presentations along one of the axes (X, Y, Z). </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class=TODO>To scale \r
- a presentation:</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs5">1. Choose in the main \r
- menu <span style="font-weight: bold;"><B>Representation > Scaling</B></span>, \r
- or</p>\r
-\r
-<p class="whs6"><span style="font-style: normal; color: #000000;"><font color=black > click \r
- on the icon </font></span><img src="../pics/scalingicon.jpg" x-maintain-ratio="TRUE" width="28px" height="29px" border="0" class="img_whs7"> <span style="font-style: normal; color: #000000;"><font color=black >in \r
- the </font></span><span style="font-style: normal;\r
- color: #000000;\r
- font-weight: bold;"><font color=black ><B>Representation Toolbar</B></font></span><span \r
- style="font-style: normal; color: #000000;"><font color=black >.</font></span></p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs5">2. In the <span style="font-weight: bold;"><B>Scaling \r
- </B></span>dialog box set the parameters of the scaling:</p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs8"> <img src="../pics/scalingdb.jpg" x-maintain-ratio="TRUE" width="470px" height="277px" border="0" class="img_whs9"></p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs5">In <span style="font-weight: bold;"><B>Choose \r
- function </B></span>field select the function of the scaling for each axes. \r
- ( None or Linear).</p>\r
-\r
-<p class="whs5">In <span style="font-weight: bold;"><B>Coefficient \r
- </B></span>field enter the coefficient of the scaling.</p>\r
-\r
-<p class="whs5">To cancel all changes, \r
- click <span style="font-weight: bold;"><B>Reset </B></span>button.</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5">3. Click <span style="font-weight: bold;"><B>Apply \r
- </B></span>button, to apply your scaling on the chosen presentation. </p>\r
-\r
-<p class="whs10"> </p>\r
-\r
-<p class="whs10"><span style="font-style: normal; color: #000000;"><font color=black >4. \r
- To confirm all actions and quit </font></span><span style="font-style: normal;\r
- color: #000000;\r
- font-weight: bold;"><font color=black ><B>Scaling \r
- </B></font></span><span style="font-style: normal; color: #000000;"><font color=black >dialog box, click \r
- </font></span><span style="font-style: normal;\r
- color: #000000;\r
- font-weight: bold;"><font color=black ><B>OK</B></font></span><span style="font-style: normal; color: #000000;"><font color=black >. \r
- </font></span> </p>\r
-\r
-<p class="whs10"> </p>\r
-\r
-<p class="whs10"> </p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Selection in VISU</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=1762>\r
-<meta name=layout-width content=615>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif;}\r
-img_whs3 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
-p.whs4 {margin-left: 0px; font-family: 'Times New Roman', serif;}\r
-img_whs5 {border-style: none; border: none; width: 431px; height: 238px; float: none;}\r
-p.whs6 {font-style: italic; color: #ff0000; font-family: 'Times New Roman', serif;}\r
-p.whs7 {margin-left: 40px; font-family: 'Times New Roman', serif;}\r
-img_whs8 {border-style: none; border: none; height: 67px; float: none; width: 346px;}\r
-table.whs9 {x-cell-content-align: top; left: 0px; top: 678px; height: 37px; margin-left: 48px; border-spacing: 0px; border-spacing: 0px;}\r
-col.whs10 {width: 63px;}\r
-col.whs11 {width: 55px;}\r
-tr.whs12 {x-cell-content-align: top;}\r
-td.whs13 {width: 63px; padding-right: 10px; padding-left: 10px; border-left-color: #ffffff; border-top-style: Solid; border-top-color: #ffffff; border-right-style: Solid; border-right-color: #ffffff; border-bottom-style: Solid; border-bottom-color: #ffffff; border-right-width: 1px; border-left-width: 1px; border-left-style: solid; border-top-width: 1px; border-bottom-width: 1px;}\r
-p.whs14 {text-align: center; font-size: 10pt; font-family: 'Times New Roman', serif;}\r
-td.whs15 {width: 63px; padding-right: 10px; padding-left: 10px; border-top-style: Solid; border-top-color: #ffffff; border-right-style: Solid; border-right-color: #ffffff; border-bottom-style: Solid; border-bottom-color: #ffffff; border-right-width: 1px; border-top-width: 1px; border-bottom-width: 1px;}\r
-td.whs16 {width: 55px; padding-right: 10px; padding-left: 10px; border-top-style: Solid; border-top-color: #ffffff; border-right-style: Solid; border-right-color: #ffffff; border-bottom-style: Solid; border-bottom-color: #ffffff; border-top-width: 1px; border-bottom-width: 1px; border-right-width: 1px;}\r
-p.whs17 {margin-left: 48px; font-family: 'Times New Roman', serif;}\r
-p.whs18 {margin-left: 0px; font-style: italic; color: #ff0000; font-family: 'Times New Roman', serif;}\r
-p.whs19 {font-style: italic; color: #ff0000; margin-left: 40px; font-family: 'Times New Roman', serif;}\r
-p.whs20 {margin-left: 40px; font-style: normal; color: #000000; font-family: 'Times New Roman', serif;}\r
-img_whs21 {border-style: none; border: none; width: 355px; height: 121px; float: none;}\r
-p.whs22 {margin-left: 0px; font-style: normal; color: #000000; font-family: 'Times New Roman', serif;}\r
-img_whs23 {border-style: none; border: none; width: 355px; height: 126px; float: none;}\r
-p.whs24 {font-family: 'Times New Roman', serif; margin-left: 80px;}\r
-img_whs25 {border-style: none; border: none; width: 294px; height: 192px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs4 {margin-left:1; }";\r
- strNSS += "p.whs18 {margin-left:1; }";\r
- strNSS += "p.whs22 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Selection in VISU</h1>\r
-\r
-<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">VISU</B></span> module allows to make selection of the whole presentation, \r
- as well as of its elements: cells, edges, points. </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs4"><span \r
- style="font-style: italic; color: #ff0000;"><font color=red ><I>To make selection of the whole \r
- presentation,</I></font></span> (if it has been displayed) click \r
- on it in the viewer or in the Object Browser. </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> <img src="../pics/selection1.jpg" x-maintain-ratio="TRUE" width="431px" height="238px" border="0" class="img_whs5"></p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2">Your presentation will \r
- be displayed with white outline automatically generated by the viewer \r
- according the borders of the presentation in 3d space.</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"><span style="color: #ff0000; font-style: italic;"><font color=red ><I>To \r
- make selection of several presentations,</I></font></span> hold down <span style="font-weight: bold;"><B>Shift \r
- </B></span>button and click on them one after another in the viewer or in \r
- the Object Browser or hold down left mouse button and outline the desired \r
- presentations in the viewer window.</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs6">To make selection of \r
- the elements of the presentation (cells, edges, points):</p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7">1. \r
- Choose from <span style="font-weight: bold;"><B>Selection Toolbar </B></span>the \r
- mode of selection:</p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7"> <img src="../pics/selmode.jpg" x-maintain-ratio="TRUE" height="67px" width="346px" border="0" class="img_whs8"></p>\r
-\r
-<!--(Table)=========================================================-->\r
-<table x-use-null-cells cellspacing="0" height="37" class="whs9">\r
-<script language='JavaScript'><!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4)) document.write("</table><table x-use-null-cells cellspacing='0' height='37' border='1' bordercolor='white' bordercolorlight='white' bordercolordark='white'>");\r
-//--></script>\r
-<col class="whs10">\r
-<col class="whs10">\r
-<col class="whs10">\r
-<col class="whs11">\r
-\r
-<tr valign="top" class="whs12">\r
-<td width="63px" class="whs13">\r
-<p align="center" class="whs14"> Points \r
- </p>\r
-<p align="center" class="whs14"> Selection \r
- </td>\r
-<td width="63px" class="whs15">\r
-<p align="center" class="whs14">Edges </p>\r
-<p align="center" class="whs14"> Selection \r
- </td>\r
-<td width="63px" class="whs15">\r
-<p align="center" class="whs14">Cells </p>\r
-<p align="center" class="whs14">Selection </td>\r
-<td width="55px" class="whs16">\r
-<p align="center" class="whs14">Actor </p>\r
-<p align="center" class="whs14">Selection</td></tr>\r
-<script language='JavaScript'><!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4)) document.write("</table></table><table>");\r
-//--></script>\r
-</table>\r
-\r
-<p class="whs17"> </p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs7">2. \r
- Click on the element of the presentation in the viewer. The color of the \r
- selected element will automatically change.</p>\r
-\r
-<p class="whs7">To \r
- make selection of several elements of the presentation, with pressed <span \r
- style="font-weight: bold;"><B>Shift </B></span>button click on them one after \r
- another in the viewer.</p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs4"><span \r
- style="font-weight: bold;"><B>Actor selection </B></span>mode is initial mode \r
- of selection of the whole presentation.</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs18">To make selection of \r
- an element of the presentation (cell, point) with a definite number, you \r
- can:</p>\r
-\r
-<p class="whs19"> </p>\r
-\r
-<p class="whs20"> 1. \r
- Choose from the main menu <span style="font-weight: bold;"><B>Selection > \r
- Cell (Point) > Select by number </B></span>or</p>\r
-\r
-<p class="whs20"> </p>\r
-\r
-<p class="whs20"> 2. \r
- Select from <span style="font-weight: bold;"><B>Selection Toolbar </B></span>a<span \r
- style="font-weight: bold;"> <B></B></span>mode of selection (Cells selection \r
- or Points selection), </p>\r
-\r
-<p class="whs20">right-click on the \r
- presentation displayed in the viewer and from the pop-up menu choose (according \r
- the chosen mode of selection) <span \r
- style="font-weight: bold;"><B>Select a Point \r
- </B></span>or <span style="font-weight: bold;"><B>Select a Cell </B></span>option.</p>\r
-\r
-<p class="whs20"> </p>\r
-\r
-<p class="whs4">The \r
- following dialog box will appear: </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs18"> <img src="../pics/pointselection.jpg" x-maintain-ratio="TRUE" width="355px" height="121px" border="0" class="img_whs21"></p>\r
-\r
-<p class="whs18"> </p>\r
-\r
-<p class="whs22">Or in case of cell \r
- selection:</p>\r
-\r
-<p class="whs22"> </p>\r
-\r
-<p class="whs22"> <img src="../pics/cellselection.jpg" x-maintain-ratio="TRUE" width="355px" height="126px" border="0" class="img_whs23"></p>\r
-\r
-<p class="whs22"> </p>\r
-\r
-<p class="whs22">In the field <span \r
- style="font-weight: bold;"><B>Point number (Cell number) </B></span>enter the \r
- number of the Point (Cell), you want to select and press <span style="font-weight: bold;"><B>OK</B></span>. \r
- The selected element of your presentation will be highlighted:</p>\r
-\r
-<p class="whs22"> </p>\r
-\r
-<p class="whs24"> <img src="../pics/cellsel.jpg" x-maintain-ratio="TRUE" width="294px" height="192px" border="0" class="img_whs25"></p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Setting properties of XY plots</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=896>\r
-<meta name=layout-width content=614>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-p.whs1 {margin-left: 40px;}\r
-img_whs2 {border-style: none; border: none; width: 550px; height: 344px;}\r
-p.whs3 {margin-left: 0px;}\r
-ul.whs4 {list-style: disc;}\r
-p.whs5 {margin-left: 0px; font-weight: bold;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs3 {margin-left:1; }";\r
- strNSS += "p.whs5 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\nXY plots\nSetting properties of XY plots");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1>Setting properties of XY plots</h1>\r
-\r
-<p class=TODO>To define properties of XY plots:</p>\r
-\r
-<p class=TODO> </p>\r
-\r
-<p class="whs1">Right-click on the background of the Plot \r
- 2d viewer and select <span style="font-weight: bold;"><B>Properties </B></span>item. \r
- The following dialog box will appear: </p>\r
-\r
-<p class="whs1"> </p>\r
-\r
-<p class="whs1"><img src="../image22.jpg" width="550px" height="344px" border="0" class="img_whs2"></p>\r
-\r
-<p class="whs1"> </p>\r
-\r
-<p class="whs3">The options are as follows:</p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<ul type="disc" class="whs4">\r
- \r
- <li class=kadov-p><p class="whs3"><span style="font-weight: bold;"><B>Main \r
- title: </B></span>the title of the XY plot. By default, it will consist of \r
- the names of the tables, on the basis of which the curve lines have been \r
- constructed.</p></li>\r
- \r
- <li class=kadov-p><p class="whs5">Horizontal \r
- axis title</p></li>\r
- \r
- <li class=kadov-p><p class="whs5">Vertical \r
- axis title</p></li>\r
- \r
- <li class=kadov-p><p class="whs5">Curve \r
- type: Points, Lines, Spline</p></li>\r
- \r
- <li class=kadov-p><p class="whs3"><span style="font-weight: bold;"><B>Show \r
- legend: </B></span>Here you can define the position of the description table \r
- on the XY plot. </p></li>\r
- \r
- <li class=kadov-p><p class="whs3"><span style="font-weight: bold;"><B>Marker \r
- size: </B></span>size of the points (markers) forming curve lines.</p></li>\r
- \r
- <li class=kadov-p><p class="whs3"><span style="font-weight: bold;"><B>Background \r
- color </B></span>of the XY plot</p></li>\r
- \r
- <li class=kadov-p><p class="whs3"><span style="font-weight: bold;"><B>Scalar \r
- mode: </B></span>here you can select the type of scaling (<span style="font-weight: bold;"><B>Linear \r
- </B></span>or <span style="font-weight: bold;"><B>Logarithmic</B></span>) along X \r
- or Y axes.</p></li>\r
- \r
- <li class=kadov-p><p class="whs3"><span style="font-weight: bold;"><B>Grid/Axes \r
- marks: </B></span>This set of fields allows you to define the properties of \r
- the grid, constructed on the basis of the numerical marks on the axes</p></li>\r
- \r
- <li class=kadov-p><p class="whs3"><span style="font-weight: bold;"><B>Save \r
- settings as default: </B></span>If this check box is marked, all XY plots \r
- will be displayed with these defined properties.</p></li>\r
-</ul>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class=TODO> </p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Shrink</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=380>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-img_whs1 {border-style: none; border: none; width: 422px; height: 220px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<p><img src="../pics/shrink.jpg" x-maintain-ratio="TRUE" width="422px" height="220px" border="0" class="img_whs1"></p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Stream Lines presentation</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=2132>\r
-<meta name=layout-width content=703>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {text-align: justify;}\r
-p.whs2 {text-align: justify;}\r
-img_whs3 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
-p.whs4 {text-indent: 48px; text-align: justify;}\r
-p.whs5 {margin-left: 0px; text-indent: 48px; text-align: justify;}\r
-p.whs6 {margin-left: 40px; text-align: justify;}\r
-p.whs7 {font-style: italic; color: #ff0000; margin-left: 40px; text-align: justify;}\r
-img_whs8 {border-style: none; border: none; width: 26px; height: 25px; float: none;}\r
-p.whs9 {margin-left: 0px; text-align: justify;}\r
-p.whs10 {text-align: justify; margin-left: 40px;}\r
-img_whs11 {border-style: none; border: none; width: 400px; height: 386px;}\r
-p.whs12 {margin-left: 40px; font-weight: bold; text-align: justify;}\r
-img_whs13 {border-style: none; border: none; width: 574px; height: 411px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs5 {margin-left:1; }";\r
- strNSS += "p.whs9 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nField presentations\nStream Lines presentation");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Stream Lines presentation</h1>\r
-\r
-<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 \r
- into lines the cells with vectors having most similar direction. A streamline \r
- can be thought of as the path that a massless particle takes in a vector \r
- field. Streamlines are used to convey the structure of a vector field. \r
- Usually streamlines are created to explore the most interesting features \r
- in the field.</p>\r
-\r
-<p class="whs4">Creating streamlines \r
- requires specifying multiple parameters including <span style="font-weight: bold;"><B>starting \r
- points</B></span> of streamlines, <span style="font-weight: bold;"><B>direction</B></span> \r
- and other parameters to control the <span style="font-weight: bold;"><B>propagation</B></span> \r
- of the streamlines.</p>\r
-\r
-<p class="whs4"> In \r
- <span style="font-weight: bold;"><B>VISU</B></span> there is an option allowing \r
- to specify <span style="font-weight: bold;"><B>one particular area</B></span> \r
- of the field on which the <span style="font-weight: bold;"><B>Stream Lines</B></span> \r
- presentation will be created. This option has been created for optimization \r
- purposes: sometimes generation of a Stream Lines presentation based on \r
- all points of a very complicated field is very time-consuming and requires \r
- a lot of hardware resources. </p>\r
-\r
-<p class="whs5">To bound the area on which the Stream \r
- Lines presentation will be created. you can use another field presentation. \r
- The points of the field located on this source presentation will serve \r
- as starting points for generated streamlines. </p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class=TODO\r
- style="text-align: justify;"><span class=expandtext\r
- style="color: #000000;"><font color=black >To create \r
- a Stream Lines presentation:</font></span></p>\r
-\r
-<p class="whs7"> </p>\r
-\r
-<p class="whs6">- Right-click on one \r
- of the time stamps of the field in the Object browser and from the pop-up \r
- menu choose <span style="font-weight: bold;"><B>Stream Lines, </B></span>or</p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs6">- Click on one of the \r
- time stamps of the field in the Object browser and select from the main \r
- menu <span style="font-weight: bold;"><B>Visualization > Stream Lines</B></span>, \r
- 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 \r
- the <span style="font-weight: bold;"><B>Visualization Toolbar.</B></span></p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs9">The following dialog \r
- box will appear: </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs10"><img src="../image13.jpg" width="400px" height="386px" border="0" class="img_whs11"></p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs9"><span style="font-weight: bold;"><B>Stream \r
- Lines </B></span><span>tab allows you to set additional parameters of your \r
- Stream Lines presentation:</span></p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs6">- <span style="font-weight: bold;"><B>Source</B></span>: \r
- This set of fields allow to define a definite source presentation on the \r
- basis of which your <span style="font-weight: bold;"><B>Stream Lines </B></span><span>presentation \r
- will be generated. </span> </p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs6">If in the <span style="font-weight: bold;"><B>Source \r
- type </B></span>choose box you have chosen <span style="font-weight: bold;"><B>None</B></span>, \r
- your Stream Lines presentation will be generated on <span style="font-weight: bold;"><B>all</B></span> \r
- points of the field. </p>\r
-\r
-<p class="whs6">You can also specify \r
- the source presentation (from the list of already created field presentations). \r
- The points of the field located on this source presentation will serve \r
- as starting points for generated streamlines. </p>\r
-\r
-<p class="whs6">In the <span style="font-weight: bold;"><B>Used \r
- points</B></span> field you can set the number of these starting points (from \r
- 0 to 100%).</p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs6">- <span style="font-weight: bold;"><B>Propagation \r
- Time </B></span>field: this parameter controls the maximum length of the stream \r
- line (measured in units of time)</p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs6">- <span style="font-weight: bold;"><B>Step \r
- Length </B></span>field: this parameter defines the size of the output line \r
- segments that make up the streamline (which is represented as a polyline).</p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs6">- <span style="font-weight: bold;"><B>Integration \r
- Step </B></span>field: parameter of smoothness of the stream lines. This parameter \r
- defines the accuracy of construction of the streamlines. A smaller value \r
- of this parameter allows to construct smoother streamlines (at the cost \r
- of more computation time).</p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs12">- Direction <span style="font-weight: normal;">choose \r
- box: this option allows to select direction of the stream lines.(Forward, \r
- Backward or Both)</span></p>\r
-\r
-<p class="whs12"> </p>\r
-\r
-<p class="whs6">- <span style="font-weight: bold;"><B>Magnitude \r
- coloring</B></span> check box: this option allows to color your presentation \r
- according the vector values applied to the cells of the mesh or to display \r
- it using only one color (this color can be selected if you click <span \r
- style="font-weight: bold;"><B>Use Color </B></span>button).</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p><span style="font-weight: bold;"><B>Scalar Bar </B></span>tab allows to define \r
- the parameters of the scalar bar displayed along with this presentation \r
- (<a href="scalar_map_presentation.htm#Scalar Bar">see also</a>).</p>\r
-\r
-<p> </p>\r
-\r
-<p class="whs2"><span style="font-family: 'Times New Roman', serif;">After \r
- you have finished with setting these parameters, click <span style="font-weight: bold;"><B>OK. \r
- </B></span>Your presentation with scalar bar will be immediately displayed \r
- in the viewer: </span></p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs6"> <img src="../pics/streamlinesprsnt.jpg" x-maintain-ratio="TRUE" width="574px" height="411px" border="0" class="img_whs13"></p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs9">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating field presentations','creating_field_presentations.htm','Editing field presentations','editing_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>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<p class="whs9"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Surface</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=380>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-img_whs1 {border-style: none; border: none; width: 422px; height: 223px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<p><img src="../pics/surface.jpg" x-maintain-ratio="TRUE" width="422px" height="223px" border="0" class="img_whs1"></p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Surfaceframe</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=380>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-img_whs1 {border-style: none; border: none; width: 422px; height: 297px;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<p><img src="../image20.jpg" width="422px" height="297px" border="0" class="img_whs1"></p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Sweeping</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=1099>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {text-align: justify;}\r
-p.whs2 {margin-left: 0px; text-align: justify;}\r
-img_whs3 {border-style: none; border: none; width: 30px; height: 30px; float: none;}\r
-p.whs4 {text-align: justify;}\r
-p.whs5 {margin-left: 40px; text-align: justify;}\r
-p.whs6 {margin-left:0px; background-image:url(../texture_horiz_ltbluebubbles.jpg); text-align:justify; }\r
-img_whs7 {border-style: none; border: none; float: none; width: 36px; height: 38px;}\r
-img_whs8 {border-style: none; border: none; width: 324px; height: 204px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs2 {margin-left:1; }";\r
- strNSS += "p.whs6 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nField presentations\nSweeping");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Sweeping</h1>\r
-\r
-<p class="whs2"><img src="../i_blue.jpg" x-maintain-ratio="TRUE" width="30px" height="30px" border="0" class="img_whs3">In <span \r
- style="font-weight: bold;"><B>VISU</B></span> there is an option allowing to \r
- display pseudo-animation of a field presentation. For creation of this \r
- pseudo-animation you should take one field presentation generated on the \r
- base of <span style="font-weight: bold;"><B>ONE</B></span> Time Step (For comparison, \r
- <a href="animating_presentations.htm">Animation</a> is \r
- generated on the base of <span style="font-weight: bold;"><B>ALL</B></span> Time \r
- Steps of a field). The frame displaying this field presentation will be \r
- <span style="font-style: italic;"><I>basic.</I></span> <span style="font-weight: bold;"><B>VISU \r
- </B></span>automatically generates another frame displaying <span style="font-style: italic;"><I>initial</I></span> \r
- field presentation, which is composed of cells with <span style="font-style: italic;"><I>minimum</I></span> \r
- acceptable values regarding the values applied to the cells of the <span \r
- style="font-style: italic;"><I>basic</I></span> presentation. It also automatically \r
- generates a user-defined number of frames (<span style="font-weight: bold;"><B>steps</B></span>), \r
- which will display the process of transformation of the field presentation \r
- from <span style="font-style: italic;"><I>initial </I></span>state into<span \r
- style="font-style: italic;"><I> basic </I></span>state<span style="font-style: italic;"><I>.</I></span> \r
- <span style="font-weight: bold;"><B>Sweeping \r
- </B></span>is a type of animation composed of these frames: the frame displaying \r
- <span style="font-style: italic;"><I>initial</I></span> field presentation will \r
- start the animation, the frame displaying <span style="font-style: italic;"><I>basic</I></span> \r
- field presentation will end it. </p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class=TODO\r
- style="text-align: justify;"><span class=expandtext\r
- style="color: #000000;"><font color=black >To sweep \r
- a field presentation:</font></span></p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs5">1. <a href="creating_field_presentations.htm">Create \r
- a field presentation</a>. </p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5">2. Right-click on this \r
- presentation in the Object Browser or in the viewer.</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5">3. From the pop-up menu \r
- select <span style="font-weight: bold;"><B>Sweep </B></span>option.</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5">4. Enjoy it.</p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<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>VISU</B></span> \r
- sweeping is available only for Scalar Map, Iso Surfaces, Cut Planes and \r
- Deformed Shape presentations.</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class=TODO\r
- style="text-align: justify;"><span class=expandtext\r
- style="color: #000000;"><font color=black >To set \r
- sweeping preferences:</font></span></p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs5">In the main menu choose \r
- <span style="font-weight: bold;"><B>Preferences > Visu > Sweeping </B></span>the \r
- following dialog box will appear: </p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs5"><img src="../pics/sweeppreferences.jpg" x-maintain-ratio="TRUE" width="324px" height="204px" border="0" class="img_whs8"></p>\r
-\r
-<p class="whs5"> </p>\r
-\r
-<p class="whs2"><span style="font-weight: bold;"><B>Time \r
- step: </B></span><span>t</span>ime of representation of one step.</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"><span style="font-weight: bold;"><B>Number \r
- of cycles:</B></span> defines the number of times this animation will be repeated.</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"><span style="font-weight: bold;"><B>Number \r
- of steps</B></span> which will compose the whole animation.</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2">These preferences will \r
- be saved for all SALOME sessions.</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_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>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Vectors presentation</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=1579>\r
-<meta name=layout-width content=701>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-h1.whs1 {font-family: 'Times New Roman', serif;}\r
-p.whs2 {font-family: 'Times New Roman', serif;}\r
-p.whs3 {font-family: 'Times New Roman', serif; font-style: italic; color: #ff0000; margin-left: 40px;}\r
-p.whs4 {font-family: 'Times New Roman', serif; margin-left: 40px; font-style: normal; color: #000000;}\r
-img_whs5 {border-style: none; border: none; width: 30px; height: 25px; float: none;}\r
-p.whs6 {font-family: 'Times New Roman', serif; margin-left: 0px; font-weight: normal;}\r
-img_whs7 {border-style: none; border: none; width: 400px; height: 434px;}\r
-p.whs8 {font-family: 'Times New Roman', serif; margin-left: 40px;}\r
-p.whs9 {margin-left: 40px;}\r
-img_whs10 {border-style: none; border: none; width: 574px; height: 411px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript">\r
-<!--\r
-if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))\r
-{\r
- var strNSS = "<style type='text/css'>";\r
- strNSS += "p.whs6 {margin-left:1; }";\r
- strNSS +="</style>";\r
- document.write(strNSS);\r
-}\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="JavaScript" title="BSSC Special Effects" src="../ehlpdhtm.js"></script><script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addTocInfo("VISU module\n3D presentations\nField presentations\nVectors presentation");\r
-addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<h1 class="whs1">Vectors presentation</h1>\r
-\r
-<p class="whs2"><span style="font-weight: bold;"><B>Vectors \r
- </B></span>presentation visualizes vectors of the corresponding cells of the \r
- mesh in graphical mode.</p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class=TODO>To create a Vectors presentation:</p>\r
-\r
-<p class="whs3"> </p>\r
-\r
-<p class="whs4">- Right-click on one of the time stamps of \r
- the field in the Object browser and from the pop-up menu choose <span \r
- style="font-weight: bold;"><B>Vectors, </B></span>or</p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs4">- Click on one of the time stamps of the field \r
- in the Object browser and select from the main menu <span style="font-weight: bold;"><B>Visualization \r
- > Vectors</B></span>, or click <img src="../pics/vecticon.jpg" x-maintain-ratio="TRUE" width="30px" height="25px" border="0" class="img_whs5"> icon<span style="font-weight: bold;"> \r
- <B></B></span>in the <span style="font-weight: bold;"><B>Visualization Toolbar.</B></span></p>\r
-\r
-<p class="whs4"> </p>\r
-\r
-<p class="whs6">The following dialog box will appear: \r
- </p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs6"> <img src="../image12.jpg" width="400px" height="434px" border="0" class="img_whs7"></p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs6"><span style="font-weight: bold;"><B>Vectors \r
- </B></span><span>tab allows you to</span> set additional parameters of your \r
- <span style="font-weight: bold;"><B>Vectors </B></span>presentation:</p>\r
-\r
-<p class="whs6"> </p>\r
-\r
-<p class="whs8">- \r
- <span style="font-weight: bold;"><B>Scale Factor:</B></span> visualization scaling \r
- of all vector values applied to the cells of the mesh. </p>\r
-\r
-<p class="whs8">- \r
- <span style="font-weight: bold;"><B>Line width</B></span>: width of the lines \r
- representing vectors in your presentation.</p>\r
-\r
-<p class="whs8">- \r
- <span style="font-weight: bold;"><B>Magnitude coloring</B></span> check box: \r
- this option allows to color your presentation according the <a href="scalar_map_presentation.htm#Scalar range">scalar \r
- range</a> defined in Scalar Bar properties or to display it using only \r
- one color (this color can be selected if you click <span style="font-weight: bold;"><B>Select \r
- Color </B></span>button).</p>\r
-\r
-<p class="whs8">- \r
- <span style="font-weight: bold;"><B>Use glyphs</B></span> check box: this option \r
- allows you to visualize vectors with pointers and select their <span style="font-weight: bold;"><B>type</B></span> \r
- and <span style="font-weight: bold;"><B>position </B></span><span>on the line \r
- of the vectors</span><span style="font-weight: bold;"><B>.</B></span> </p>\r
-\r
-<p> </p>\r
-\r
-<p><span style="font-weight: bold;"><B>Scalar Bar </B></span>tab allows to define \r
- the parameters of the scalar bar displayed along with this presentation \r
- (<a href="scalar_map_presentation.htm#Scalar Bar">see also</a>).</p>\r
-\r
-<p> </p>\r
-\r
-<p class="whs2"><span style="font-family: 'Times New Roman', serif;">After \r
- you have finished with setting these parameters, click <span style="font-weight: bold;"><B>OK. \r
- </B></span>Your presentation with scalar bar will be immediately displayed \r
- in the viewer: </span></p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs9"> <img src="../pics/vectorsprsnt.jpg" x-maintain-ratio="TRUE" width="574px" height="411px" border="0" class="img_whs10"></p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<p class="whs2">\r
-<a href="javascript:void(0);" onClick="var e; if (parseInt(navigator.appVersion)>=4){e=event;} if (parseInt(navigator.appVersion) >=2 && typeof(PopupMenu_Invoke) == 'function') PopupMenu_Invoke(e,'','Creating field presentations','creating_field_presentations.htm','Editing field presentations','editing_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>\r
-\r
-<p class="whs2"> </p>\r
-\r
-<script type="text/javascript" language="JavaScript" title="WebHelpRelatedTopics"><!--\r
-if (parseInt(navigator.appVersion) >= 3 && typeof (WritePopupMenuLayer) == "function")\r
- WritePopupMenuLayer();\r
-//--></script><script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">\r
-\r
-<html>\r
-\r
-<!--(==============================================================)-->\r
-<!--(Document created with RoboEditor. )============================-->\r
-<!--(==============================================================)-->\r
-\r
-<head>\r
-\r
-<title>Wireframe</title>\r
-\r
-<!--(Meta)==========================================================-->\r
-\r
-<meta http-equiv=content-type content="text/html; charset=windows-1252">\r
-<meta name=generator content="RoboHELP by eHelp Corporation - www.ehelp.com">\r
-<meta name=generator-major-version content=0.1>\r
-<meta name=generator-minor-version content=1>\r
-<meta name=filetype content=kadov>\r
-<meta name=filetype-version content=1>\r
-<meta name=page-count content=1>\r
-<meta name=layout-height content=380>\r
-<meta name=layout-width content=700>\r
-\r
-\r
-<!--(Links)=========================================================-->\r
-\r
- <link rel='stylesheet' href='../default_ns.css'>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpSplitCss">\r
-<!--\r
-if (navigator.appName !="Netscape")\r
-{ document.write("<link rel='stylesheet' href='../default.css'>");}\r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
-img_whs1 {border-style: none; border: none; width: 422px; height: 218px; float: none;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">\r
-<!--\r
-function reDo() {\r
- if (innerWidth != origWidth || innerHeight != origHeight)\r
- location.reload();\r
-}\r
-if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
-}\r
-onerror = null; \r
-//-->\r
-</script>\r
-<style type="text/css">\r
-<!--\r
- div.WebHelpPopupMenu {position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;}\r
--->\r
-</style>\r
-<script type="text/javascript" language="javascript1.2" src="../whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" src="../whver.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whproxy.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whutils.js"></script>\r
-<script type="text/javascript" language="javascript1.2" src="../whtopic.js"></script>\r
-</head>\r
-\r
-<!--(Body)==========================================================-->\r
-\r
-\r
-<body>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");\r
-\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(1);\r
-\r
- if (window.setRelStartPage)\r
- {\r
- setRelStartPage("../visu.html");\r
-\r
- autoSync(0);\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<p><img src="../pics/wireframe.jpg" x-maintain-ratio="TRUE" width="422px" height="218px" border="0" class="img_whs1"></p>\r
-\r
-<script type="text/javascript" language="javascript1.2">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(0);\r
-//-->\r
-</script>\r
-</body>\r
-\r
-</html>\r
+++ /dev/null
-\r
-<html>\r
-<head><script language="javascript">\r
-<!--\r
-var sIcon="whstart.ico";\r
-var sPath=document.location.href;\r
-if (sPath.indexOf("http")!= -1)\r
- document.write("<link REL=\"SHORTCUT ICON\" href=\""+ sIcon +"\">");\r
-//-->\r
-</script>\r
- <title>VISU refrence manual</title>\r
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
- <meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
- <meta name "description" content="WebHelp 2002">\r
-</head>\r
-<script type="text/javascript" language="javascript" src="whver.js"></script>\r
-<script type="text/javascript" language="javascript" src="whutils.js"></script>\r
-<script type="text/javascript" language="javascript" src="whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" >\r
-<!--\r
-if (!window.gbWhVer||!window.gbWhUtil||!window.gbWhMsg)\r
- document.location.reload();\r
-//-->\r
-</script>\r
-\r
-<script type="text/javascript" language="javascript" src="whstub.js"></script>\r
-<script language="javascript">\r
-<!--\r
-var nWebhelpNavPaneMode = 1; //1: DHTML 2:Applet 3:PureHTML 4:NoframeAt all\r
-var strPaneDHTML = "whskin_pdhtml.htm"; //whd_nvp10.htm if tab enabled, whnframe.htm if tab disabled.\r
-var strPaneApplet = "whskin_papplet.htm";\r
-var strPaneList = "whskin_plist.htm";\r
-var bNoApplet = false;\r
-\r
-var strPane = "";\r
-\r
-var nViewFrameType = nWebhelpNavPaneMode;\r
-\r
-if (!window.gAgent)\r
-{\r
- // low end browser, we don't even try to determine it.\r
- document.location = "whnjs.htm";\r
-}\r
-else\r
-{\r
- if (!gbNav4 && !gbIE4) \r
- document.location = "whnjs.htm";\r
- if (gbNav4 && !gbNav6 && ((gnVerMinor <= 4.06)))\r
- document.location = "whnjs.htm";\r
- if (gbMac && gbIE4 && !gbIE5) \r
- document.location = "whnjs.htm";\r
- //figure out which mode is the best\r
- if ((nWebhelpNavPaneMode == 1) ||\r
- (nWebhelpNavPaneMode == 2))\r
- {\r
- var gbDHTML = (nWebhelpNavPaneMode == 1);\r
- if (nWebhelpNavPaneMode == 2) nViewFrameType = 2;\r
- if (gbNav4) nViewFrameType = 2;\r
- if (gbNav4 && (gnVerMinor < 4.1)) nViewFrameType = 3;\r
- if (gbNav4 && (gnVerMinor == 4.6)) nViewFrameType = 3;\r
- if (gbIE4 && gbDHTML) nViewFrameType = 1;\r
- if (gbIE4 && gbSunOS && nWebhelpNavPaneMode == 2) nViewFrameType = 3;\r
- if (gbNav6 && gbDHTML) nViewFrameType = 1;\r
- if (gbNav6 && !gbNav61 && nWebhelpNavPaneMode == 2) nViewFrameType = 3;\r
- if (gbMac) nViewFrameType = 3;\r
- if ((bNoApplet) && (nViewFrameType == 2)) nViewFrameType = 3;\r
- if (gbOpera) nViewFrameType = 3;\r
- }\r
-}\r
-\r
-var gbWindows = ((gAgent.indexOf("win") != -1) || (gAgent.indexOf("16bit") != -1));\r
-//The colordepth of the 16 color on Windows is 1. \r
-if ((gbWindows) && (gbNav4) && (window.screen) && (window.screen.colorDepth <= 4))\r
-{\r
- alert("WebHelp has detected that your display is set to 16 colors. For full WebHelp support, please set your display to use 256 or more colors.");\r
- nViewFrameType = 3;\r
-}\r
-\r
-//figure out which one is navpane\r
-// ReplaceMark:nViewFrameType = 1\r
-if (nViewFrameType == 1)\r
-{\r
- if (gbNav4 && !gbNav6)\r
- strPane = strPaneList;\r
- else\r
- strPane = strPaneDHTML;\r
-}\r
-else if (nViewFrameType == 2)\r
- strPane = strPaneApplet;\r
-else\r
- strPane = strPaneList;\r
-//-->\r
-</script>\r
-<script type="text/javascript" language="javascript" src="whstart.js"></script>\r
-<script type="text/javascript" language="javascript">\r
-<!--\r
-if (!gbIE4 && !gbNav4)\r
- document.location = "whnjs.htm";\r
-\r
-function CMRAgent( strID, strURL, strLabel, strFrameAttr )\r
-{\r
- this.m_strID = strID;\r
- this.m_strURL = strURL;\r
- this.m_strLabel = strLabel;\r
- this.m_strFrameAttr = strFrameAttr;\r
-}\r
-\r
-function CMRServer()\r
-{\r
- this.m_strVersion;\r
- this.m_strDefAgent;\r
- this.m_strAgentList;\r
- this.m_bTrial;\r
- this.m_bExpired;\r
- this.m_bSinglePane;\r
- this.m_strProduct;\r
- this.m_strWindow;\r
- this.m_strProject;\r
- this.m_strContextID;\r
- this.m_strCaption; \r
- this.m_strURLSkinFile;\r
- this.m_strURLResource;\r
- this.m_strURLLogoImg;\r
- this.m_strURLTopic;\r
- this.m_strURLBase;\r
- this.m_bShowSync;\r
- this.m_bShowBrowseSequences;\r
- this.m_bShowSearchInput;\r
- this.m_cAgents = new Array;\r
-}\r
-var cMRServer = new CMRServer;\r
-// GetServerInfo\r
-// Registry the agent array handled by webhelp\r
-// ReplaceMark:MRServer.strServerData\r
-//-->\r
-</script>\r
-\r
-<script type="text/javascript" language="javascript">\r
-<!--\r
-var strHTML = "<frameset rows=\"32,*\" hostof=\"parent:toolbar!startpage:yes\" frameborder=\"no\" border=\"0\"><frame src=\"whskin_tbars.htm\" id=\"toolbar\" frameborder=\"no\" border=\"0\" scrolling=\"no\" noresize marginheight=\"0\" marginwidth=\"0\" title=\"Toolbar\"></frame><frame src=\"whskin_frmset01.htm\" frameborder=\"yes\" border=\"1\" scrolling=\"auto\" marginheight=\"0\" marginwidth=\"0\"></frame></frameset>";\r
-document.write(strHTML);\r
-//-->\r
-</script>\r
-\r
-<frameset cols="100%,*" frameborder=no border=0>\r
- <frame src="whnjs.htm">\r
- <frame src="whskin_blank.htm" noresize>\r
-</frameset>\r
-\r
-</html>
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<title>VISU refrence manual</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<script language="javascript" src="whutils.js"></script>\r
-<script language="javascript">\r
-<!--\r
-var gCSHFileName = "whc_data.htm";\r
-var gCSHSuffixName1 = "_csh.html";\r
-var gCSHSuffixName2 = "_csh.htm";\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-gCSHFileName="cshdat_webhelp.htm";\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-var gasProj = new Array();\r
-gasProj[0] = _getPath(document.location.href);\r
-var gCurrent = 0;\r
-\r
-function addProject(strProj)\r
-{\r
- var len = gasProj.length;\r
- var strPPath = _getFullPath(_getPath(document.location.href), strProj);\r
- var bFound = false;\r
- for (var i = 0; i < len; i ++)\r
- {\r
- if (isSamePath(gasProj[i], strPPath))\r
- {\r
- bFound = true;\r
- break;\r
- }\r
- }\r
- if (!bFound)\r
- gasProj[len] = strPPath; \r
-}\r
-\r
-function isSamePath(strPath1, strPath2)\r
-{\r
- return strPath1.toLowerCase() == strPath2.toLowerCase();\r
-}\r
-\r
-function goNext()\r
-{\r
- gCurrent ++;\r
- var len = gasProj.length;\r
- if (gCurrent >= len)\r
- return getHomePage()\r
- else\r
- frames["csh"].location = gasProj[gCurrent] + gCSHFileName;\r
- return "";\r
-}\r
-\r
-function getRelHomePage(strLocation)\r
-{\r
- var strCurPPath = _getPath(strLocation);\r
- var strOriPPath = _getPath(getHomePage());\r
- var strRelPath = _getRelativeFileName(strOriPPath, strCurPPath);\r
- var strURL = getHomePage() + "#" + strRelPath;\r
- return strURL;\r
-}\r
-\r
-function getHomePage()\r
-{\r
- var strHomePage;\r
- var strTmp = location.toString();\r
- var nPos = strTmp.indexOf("#");\r
- if (nPos != -1)\r
- {\r
- strHomePage = strTmp.substring(0, nPos);\r
- }\r
- else\r
- {\r
- strHomePage = strTmp;\r
- }\r
- var nPos1 = strHomePage.indexOf(gCSHSuffixName1);\r
- var nPos = strHomePage.indexOf(gCSHSuffixName2);\r
- if (nPos != -1)\r
- {\r
- strHomePage = strHomePage.substring(0,nPos);\r
- if (nPos1 != -1)\r
- strHomePage += ".html";\r
- else\r
- strHomePage += ".htm";\r
- }\r
- return strHomePage;\r
-}\r
-//-->\r
-</script>\r
-</head>\r
-<frameset rows="1,*">\r
-<frame name="dumb" src="about:blank"></frame>\r
-<frame name="csh" src="cshdat_webhelp.htm"></frame> \r
-</frameset>\r
-</html>
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<title>VISU refrence manual</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<script language="javascript" src="whutils.js"></script>\r
-<script language="javascript">\r
-<!--\r
-var gCSHFileName = "whc_data.htm";\r
-var gCSHSuffixName1 = "_rhc.html";\r
-var gCSHSuffixName2 = "_rhc.htm";\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-gCSHFileName="cshdat_robohelp.htm";\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-var gasProj = new Array();\r
-gasProj[0] = _getPath(document.location.href);\r
-var gCurrent = 0;\r
-\r
-function addProject(strProj)\r
-{\r
- var len = gasProj.length;\r
- var strPPath = _getFullPath(_getPath(document.location.href), strProj);\r
- var bFound = false;\r
- for (var i = 0; i < len; i ++)\r
- {\r
- if (isSamePath(gasProj[i], strPPath))\r
- {\r
- bFound = true;\r
- break;\r
- }\r
- }\r
- if (!bFound)\r
- gasProj[len] = strPPath; \r
-}\r
-\r
-function isSamePath(strPath1, strPath2)\r
-{\r
- return strPath1.toLowerCase() == strPath2.toLowerCase();\r
-}\r
-\r
-function goNext()\r
-{\r
- gCurrent ++;\r
- var len = gasProj.length;\r
- if (gCurrent >= len)\r
- return getHomePage()\r
- else\r
- frames["csh"].location = gasProj[gCurrent] + gCSHFileName;\r
- return "";\r
-}\r
-\r
-function getRelHomePage(strLocation)\r
-{\r
- var strCurPPath = _getPath(strLocation);\r
- var strOriPPath = _getPath(getHomePage());\r
- var strRelPath = _getRelativeFileName(strOriPPath, strCurPPath);\r
- var strURL = getHomePage() + "#" + strRelPath;\r
- return strURL;\r
-}\r
-\r
-function getHomePage()\r
-{\r
- var strHomePage;\r
- var strTmp = location.toString();\r
- var nPos = strTmp.indexOf("#");\r
- if (nPos != -1)\r
- {\r
- strHomePage = strTmp.substring(0, nPos);\r
- }\r
- else\r
- {\r
- strHomePage = strTmp;\r
- }\r
- var nPos1 = strHomePage.indexOf(gCSHSuffixName1);\r
- var nPos = strHomePage.indexOf(gCSHSuffixName2);\r
- if (nPos != -1)\r
- {\r
- strHomePage = strHomePage.substring(0,nPos);\r
- if (nPos1 != -1)\r
- strHomePage += ".html";\r
- else\r
- strHomePage += ".htm";\r
- }\r
- return strHomePage;\r
-}\r
-//-->\r
-</script>\r
-</head>\r
-<frameset rows="1,*">\r
-<frame name="dumb" src="about:blank"></frame>\r
-<frame name="csh" src="cshdat_robohelp.htm"></frame> \r
-</frameset>\r
-</html>
\ No newline at end of file
+++ /dev/null
-var gTEA = new Array();\r
-function aTE(sTopicTitle, sTopicURL)\r
-{\r
- var len = gTEA.length;\r
- gTEA[len] = new topicEntry(sTopicTitle, sTopicURL);\r
-}\r
-\r
-function topicEntry(sTopicTitle, sTopicURL)\r
-{\r
- this.sTopicTitle = sTopicTitle;\r
- this.sTopicURL = sTopicURL;\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
- if (parent && parent != this) {\r
- if (parent.putFtsTData) \r
- {\r
- parent.putFtsTData(gTEA);\r
- }\r
- }\r
-}\r
-\r
-window.onload = window_OnLoad;
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
-</head>\r
-<body>\r
-<script language="javascript" src="whftdata.js"></script>\r
-<script language="javascript">\r
-<!--\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-aTE("About structure of MED object","files/about_structure_of_med_object.htm");\r
-aTE("About tables","files/about_tables.htm");\r
-aTE("Animating presentations","files/animating_presentations.htm");\r
-aTE("Setting presentation view parameters","files/changing_visualization_parameters_of_the_presenetation.htm");\r
-aTE("Creating curves","files/creating_curves.htm");\r
-aTE("Creating field presentations","files/creating_field_presentations.htm");\r
-aTE("Creating presentations","files/creating_presentations.htm");\r
-aTE("Creating tables from Cut Lines presentations","files/creating_tables_from_cut_lines_presentations.htm");\r
-aTE("Creating XY plot","files/creating_xy_plot.htm");\r
-aTE("Cut Lines presentation","files/cut_lines_presentation.htm");\r
-aTE("Cut Planes presentation","files/cut_lines_resentation.htm");\r
-aTE("Deformed Shape presentation","files/deformed_shape_presentation.htm");\r
-aTE("Displaying/Hiding presentations","files/displaying_hiding_presentations.htm");\r
-aTE("Displaying tables","files/displaying_tables.htm");\r
-aTE("Editing field presentations","files/editing_field_presentations.htm");\r
-aTE("Exploring MED files","files/exploring_med_files.htm");\r
-aTE("Getting elements attributes","files/getting_elements_attributes.htm");\r
-aTE("Getting started","files/getting_started.htm");\r
-aTE("Importing MED objects","files/importing_med_objects.htm");\r
-aTE("Importing tables","files/importing_tables.htm");\r
-aTE("Introduction to VISU","files/introduction_to_visu.htm");\r
-aTE("Iso Surfaces presentation","files/iso_surfaces_presentation.htm");\r
-aTE("Renaming presentations","files/renaming_presentations.htm");\r
-aTE("Running VISU","files/running_visu.htm");\r
-aTE("Scalar Map presentation","files/scalar_map_presentation.htm");\r
-aTE("Scaling presentations","files/scaling_presentations.htm");\r
-aTE("Selection in VISU","files/selection_in_visu.htm");\r
-aTE("Setting properties of XY plots","files/setting_properties_of_xy_plots.htm");\r
-aTE("Stream Lines presentation","files/stream_lines_presentation.htm");\r
-aTE("Sweeping","files/sweeping.htm");\r
-aTE("Vectors presentation","files/vectors_presentation.htm");\r
-\r
-//-->\r
-</script>\r
-</script>\r
+++ /dev/null
-<?xml version='1.0' encoding='ISO-8859-1' ?>\r
-<ftstdata>\r
-<topic name="About structure of MED object" url="files/about_structure_of_med_object.htm" />\r
-<topic name="About tables" url="files/about_tables.htm" />\r
-<topic name="Animating presentations" url="files/animating_presentations.htm" />\r
-<topic name="Setting presentation view parameters" url="files/changing_visualization_parameters_of_the_presenetation.htm" />\r
-<topic name="Creating curves" url="files/creating_curves.htm" />\r
-<topic name="Creating field presentations" url="files/creating_field_presentations.htm" />\r
-<topic name="Creating presentations" url="files/creating_presentations.htm" />\r
-<topic name="Creating tables from Cut Lines presentations" url="files/creating_tables_from_cut_lines_presentations.htm" />\r
-<topic name="Creating XY plot" url="files/creating_xy_plot.htm" />\r
-<topic name="Cut Lines presentation" url="files/cut_lines_presentation.htm" />\r
-<topic name="Cut Planes presentation" url="files/cut_lines_resentation.htm" />\r
-<topic name="Deformed Shape presentation" url="files/deformed_shape_presentation.htm" />\r
-<topic name="Displaying/Hiding presentations" url="files/displaying_hiding_presentations.htm" />\r
-<topic name="Displaying tables" url="files/displaying_tables.htm" />\r
-<topic name="Editing field presentations" url="files/editing_field_presentations.htm" />\r
-<topic name="Exploring MED files" url="files/exploring_med_files.htm" />\r
-<topic name="Getting elements attributes" url="files/getting_elements_attributes.htm" />\r
-<topic name="Getting started" url="files/getting_started.htm" />\r
-<topic name="Importing MED objects" url="files/importing_med_objects.htm" />\r
-<topic name="Importing tables" url="files/importing_tables.htm" />\r
-<topic name="Introduction to VISU" url="files/introduction_to_visu.htm" />\r
-<topic name="Iso Surfaces presentation" url="files/iso_surfaces_presentation.htm" />\r
-<topic name="Renaming presentations" url="files/renaming_presentations.htm" />\r
-<topic name="Running VISU" url="files/running_visu.htm" />\r
-<topic name="Scalar Map presentation" url="files/scalar_map_presentation.htm" />\r
-<topic name="Scaling presentations" url="files/scaling_presentations.htm" />\r
-<topic name="Selection in VISU" url="files/selection_in_visu.htm" />\r
-<topic name="Setting properties of XY plots" url="files/setting_properties_of_xy_plots.htm" />\r
-<topic name="Stream Lines presentation" url="files/stream_lines_presentation.htm" />\r
-<topic name="Sweeping" url="files/sweeping.htm" />\r
-<topic name="Vectors presentation" url="files/vectors_presentation.htm" />\r
-\r
-</ftstdata> \r
+++ /dev/null
-<html>\r
-<head>\r
-<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
-</head>\r
-<body>\r
-<script language="javascript" src="whfts.js"></script>\r
-<script language="javascript">\r
-<!--\r
-iWM("0","zx","whfwdata0.htm");\r
-\r
-iTM(0,30,"whftdata0.htm");\r
-\r
--->\r
-</script>\r
-</body>\r
-</html>
\ No newline at end of file
+++ /dev/null
-var gaFileMapping = new Array();\r
-var gaFileTopicMapping = new Array();\r
-\r
-function fileMapping(sStartKey, sEndKey, sFileName)\r
-{\r
- this.sStartKey = sStartKey;\r
- this.sEndKey = sEndKey;\r
- this.sFileName = sFileName;\r
- this.aFtsKeys = null;\r
-}\r
-\r
-function fileTopicMapping(nIdBegin, nIdEnd, sFileName)\r
-{\r
- this.nBegin = nIdBegin;\r
- this.nEnd = nIdEnd;\r
- this.sFileName = sFileName;\r
- this.aTopics = null;\r
-}\r
-\r
-\r
-function iWM(sStartKey, sEndKey, sFileName)\r
-{\r
- gaFileMapping[gaFileMapping.length] = new fileMapping(sStartKey, sEndKey, sFileName); \r
-}\r
-\r
-function window_OnLoad()\r
-{\r
- if (parent && parent != this && parent.ftsReady)\r
- {\r
- parent.ftsReady(gaFileMapping, gaFileTopicMapping);\r
- } \r
-}\r
-\r
-function iTM(nIdBegin, nIdEnd, sFileName)\r
-{\r
- gaFileTopicMapping[gaFileTopicMapping.length] = new fileTopicMapping(nIdBegin, nIdEnd, sFileName); \r
-}\r
-\r
-window.onload = window_OnLoad;\r
+++ /dev/null
-<?xml version='1.0' encoding='ISO-8859-1' ?>\r
-<fts>\r
-<chunkinfo url="whfwdata0.xml" first="0" last="zx"/>\r
-\r
-<tchunkinfo first="0" last="30" url="whftdata0.xml" />\r
-\r
-</fts>\r
+++ /dev/null
-var gWEA = new Array();\r
-function aWE()\r
-{\r
- var len = gWEA.length;\r
- gWEA[len] = new ftsEntry(aWE.arguments);\r
-}\r
-\r
-function ftsEntry(fn_arguments) \r
-{\r
- if (fn_arguments.length && fn_arguments.length >= 1) \r
- {\r
- this.sItemName = fn_arguments[0];\r
- this.aTopics = null;\r
- var nLen = fn_arguments.length;\r
- if (nLen > 1) \r
- {\r
- this.aTopics = new Array();\r
- for (var i = 0; i < nLen - 1; i ++ )\r
- {\r
- this.aTopics[i] = fn_arguments[i + 1];\r
- }\r
- }\r
- }\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
- if (parent && parent != this) {\r
- if (parent.putFtsWData) \r
- {\r
- parent.putFtsWData(gWEA);\r
- }\r
- }\r
-}\r
-\r
-window.onload = window_OnLoad;
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
-</head>\r
-<body>\r
-<script language="javascript" src="whfwdata.js"></script>\r
-<script language="javascript">\r
-<!--\r
-//-->\r
-</script>\r
-<script language="javascript">\r
-<!--\r
-aWE("0",3,28);\r
-aWE("1",1,2,4,7,8,13,12,14,15,16,17,19,25,26,29);\r
-aWE("100",3,28);\r
-aWE("2",1,2,4,7,8,13,12,14,15,16,17,19,25,26,29);\r
-aWE("200",4,8);\r
-aWE("2d",4,9,17,27);\r
-aWE("3",1,2,4,8,17,19,23,25,29);\r
-aWE("3d",0,9,10,16,18,20,24,26,3);\r
-aWE("4",2,4,8,17,25,29);\r
-aWE("5",2,17);\r
-aWE("6",17);\r
-aWE("acceptabl",29);\r
-aWE("accessibl",12);\r
-aWE("accord",10,11,24,26,28,30);\r
-aWE("accordanc",0);\r
-aWE("accuracy",28);\r
-aWE("action",25);\r
-aWE("actor",16,26);\r
-aWE("additional",2,10,11,12,14,21,23,24,28,30);\r
-aWE("adjust",2);\r
-aWE("algorithm",9,15);\r
-aWE("allow",1,2,4,7,9,10,11,12,14,18,21,24,25,26,27,28,29,30);\r
-aWE("along",9,10,11,21,25,27,28,30);\r
-aWE("already",22,3,28);\r
-aWE("angl",9,10);\r
-aWE("animat",2,17);\r
-aWE("animation",2,29);\r
-aWE("anoth",2,9,10,26,28,29);\r
-aWE("any",0,1,16);\r
-aWE("ap",24,25);\r
-aWE("appear",2,4,8,9,10,11,12,16,21,22,23,24,26,3,27,28,29,30);\r
-aWE("appli",0,5,7,9,10,11,16,21,24,28,29,30);\r
-aWE("application",18,23);\r
-aWE("area",28);\r
-aWE("around",9,10);\r
-aWE("array",9);\r
-aWE("assign",4);\r
-aWE("associat",3);\r
-aWE("attribut",4,16);\r
-aWE("auto",4);\r
-aWE("automatical",4,9,12,15,18,26,29);\r
-aWE("availabl",3,29);\r
-aWE("ax",9,10,25,27);\r
-aWE("axi",4,9,10,27);\r
-aWE("back",2,8,3);\r
-aWE("background",27);\r
-aWE("backward",28);\r
-aWE("bar",2,9,10,11,21,24,28,30);\r
-aWE("bas",0,2,7,8,9,17,20,24,28,29);\r
-aWE("basi",0,1,4,9,18,21,24,27,28);\r
-aWE("basic",24,29);\r
-aWE("batch",1);\r
-aWE("befor",23);\r
-aWE("begin",2);\r
-aWE("belong",9,24);\r
-aWE("border",26);\r
-aWE("both",5,28);\r
-aWE("bottom",23);\r
-aWE("bound",28);\r
-aWE("boundary",0);\r
-aWE("box",2,4,8,9,10,11,15,16,18,19,21,22,23,24,25,26,3,27,28,29,30);\r
-aWE("brows",0,2,4,5,6,7,8,9,10,11,13,12,14,15,18,19,21,22,24,26,3,28,29,30);\r
-aWE("button",2,8,12,19,21,22,24,25,26,3,28,30);\r
-aWE("calculation",0,24);\r
-aWE("cancel",25);\r
-aWE("cas",14,18,24,26);\r
-aWE("cel",0,1,5,7,9,10,11,16,21,24,26,3,28,29,30);\r
-aWE("cell",16,26);\r
-aWE("chang",14,22,25,26,3);\r
-aWE("check",2,4,9,10,11,24,27,28,30);\r
-aWE("checkbox",4);\r
-aWE("checkmark",4);\r
-aWE("choic",18,22,3);\r
-aWE("choos",4,5,6,8,9,10,11,13,12,15,16,18,19,21,22,23,24,25,26,3,28,29,30);\r
-aWE("chosen",0,8,25,26,28);\r
-aWE("click",2,4,5,6,7,8,9,10,11,13,12,14,16,18,19,21,22,23,24,25,26,3,27,28,29,30);\r
-aWE("clos",2);\r
-aWE("coefficient",25);\r
-aWE("color",4,9,10,11,24,26,3,27,28,30);\r
-aWE("column",1,4);\r
-aWE("combin",0,21);\r
-aWE("comparison",2,29);\r
-aWE("compatibl",0);\r
-aWE("complicat",28);\r
-aWE("component",1,15,18,20,23,24);\r
-aWE("compos",0,2,7,8,29);\r
-aWE("compres",3);\r
-aWE("computation",28);\r
-aWE("concept",0);\r
-aWE("condition",0);\r
-aWE("confirm",18,22,25);\r
-aWE("consist",8,9,24,27);\r
-aWE("construct",0,9,21,24,27,28);\r
-aWE("construction",4,9,28);\r
-aWE("consum",28);\r
-aWE("contain",0,4,5,6,8,9,19,24);\r
-aWE("container",4);\r
-aWE("context",3);\r
-aWE("control",28);\r
-aWE("convey",28);\r
-aWE("coordinat",4,16,24);\r
-aWE("copy",12);\r
-aWE("correspond",0,4,11,30);\r
-aWE("correspondenc",0,24);\r
-aWE("cost",28);\r
-aWE("creat",0,1,2,4,5,6,7,8,9,10,11,17,19,21,22,23,24,3,28,29,30);\r
-aWE("creation",8,9,12,18,23,24,29);\r
-aWE("ctrl",12);\r
-aWE("current",3);\r
-aWE("curv",4,8,9,27);\r
-aWE("cut",1,7,9,10,29);\r
-aWE("cycl",2,29);\r
-aWE("data",0,1,4,9,17,18,20,24);\r
-aWE("decreas",2);\r
-aWE("default",4,8,9,10,11,23,24,27);\r
-aWE("defin",0,9,10,11,21,24,27,28,29,30);\r
-aWE("definit",0,2,8,10,16,26,3,28);\r
-aWE("deform",11,29);\r
-aWE("deformation",2);\r
-aWE("degre",9,10);\r
-aWE("delet",12,14);\r
-aWE("depend",2);\r
-aWE("describ",1);\r
-aWE("description",27);\r
-aWE("desir",26);\r
-aWE("desktop",23);\r
-aWE("destin",2,20);\r
-aWE("dialog",2,4,8,9,10,11,15,16,18,19,21,22,24,25,26,3,27,28,29,30);\r
-aWE("different",0);\r
-aWE("dimension",24);\r
-aWE("direction",28);\r
-aWE("directory",2);\r
-aWE("disabl",18);\r
-aWE("displacement",9,10);\r
-aWE("display",1,2,4,5,6,7,8,9,10,11,13,12,14,15,16,18,21,24,26,3,27,28,29,30);\r
-aWE("divid",0);\r
-aWE("down",2,12,26);\r
-aWE("duplicat",12);\r
-aWE("edg",0,26);\r
-aWE("edit",8,9,10,12,14);\r
-aWE("element",0,16,26);\r
-aWE("empty",1);\r
-aWE("enabl",18);\r
-aWE("end",2,29);\r
-aWE("enjoy",29);\r
-aWE("ent",16,19,21,22,24,25,26);\r
-aWE("enter",9,10);\r
-aWE("entiti",0);\r
-aWE("equal",21,24);\r
-aWE("eras",12);\r
-aWE("every",0,2);\r
-aWE("examin",16);\r
-aWE("exist",12);\r
-aWE("explor",15,28);\r
-aWE("export",19);\r
-aWE("fac",0);\r
-aWE("factor",11,30);\r
-aWE("fami",0);\r
-aWE("famili",0);\r
-aWE("featur",25,28);\r
-aWE("field",0,2,5,9,10,11,12,14,16,17,18,20,21,22,24,25,26,27,28,29,30);\r
-aWE("fil",0,1,15,17,18,19);\r
-aWE("finish",9,10,11,21,24,28,30);\r
-aWE("first",2);\r
-aWE("fold",0,18,19);\r
-aWE("folder",0);\r
-aWE("follow",0,2,4,5,8,9,10,11,16,19,21,22,23,24,26,3,27,28,29,30);\r
-aWE("font",24);\r
-aWE("form",7,16,20,27);\r
-aWE("forward",28);\r
-aWE("fram",2,29);\r
-aWE("framework",21);\r
-aWE("full",18);\r
-aWE("function",25);\r
-aWE("functional",14);\r
-aWE("functionality",1,4);\r
-aWE("general",0);\r
-aWE("generat",2,9,21,26,28,29);\r
-aWE("generation",2,28);\r
-aWE("geometrical",0);\r
-aWE("get",16,17);\r
-aWE("given",4,10);\r
-aWE("glyph",30);\r
-aWE("graduation",24);\r
-aWE("graphical",30);\r
-aWE("grid",27);\r
-aWE("group",0);\r
-aWE("h",4);\r
-aWE("hardwar",28);\r
-aWE("hav",8,9,19,28);\r
-aWE("help",1);\r
-aWE("her",2,4,9,24,27);\r
-aWE("hid",12,14);\r
-aWE("hidden",12);\r
-aWE("highlight",16,26);\r
-aWE("hold",12,26);\r
-aWE("horizontal",24,27);\r
-aWE("icon",9,10,11,21,23,24,25,3,28,30);\r
-aWE("id",16);\r
-aWE("if",4,9,12,16,24,26,27,28,30);\r
-aWE("imag",3);\r
-aWE("immediate",9,10,11,12,16,18,21,24,28,30);\r
-aWE("import",1,4,6,15,17,18,19);\r
-aWE("impos",24);\r
-aWE("inactiv",24);\r
-aWE("includ",0,20,28);\r
-aWE("increas",2);\r
-aWE("independent",0);\r
-aWE("indicat",0,24);\r
-aWE("info",16);\r
-aWE("information",0);\r
-aWE("initial",0,23,26,29);\r
-aWE("insid",9);\r
-aWE("insidefram",3);\r
-aWE("integrat",15);\r
-aWE("integration",28);\r
-aWE("intend",2);\r
-aWE("interest",28);\r
-aWE("interpolation",0);\r
-aWE("introduction",20);\r
-aWE("iso",21,29);\r
-aWE("isobaric",21);\r
-aWE("item",8,18,19,27);\r
-aWE("label",24);\r
-aWE("larg",24);\r
-aWE("last",2);\r
-aWE("launch",2,15,17,23);\r
-aWE("least",4);\r
-aWE("left",8,26);\r
-aWE("legend",27);\r
-aWE("length",28);\r
-aWE("les",24);\r
-aWE("lik",0,16,23);\r
-aWE("lin",1,4,7,8,9,3,27,28,30);\r
-aWE("linear",25,27);\r
-aWE("list",0,2,8,28);\r
-aWE("load",18);\r
-aWE("locat",9,10,19,28);\r
-aWE("logarithmic",24,27);\r
-aWE("look",23);\r
-aWE("lot",28);\r
-aWE("magnitud",11,28,30);\r
-aWE("main",0,2,5,8,9,10,11,12,15,16,19,21,23,24,25,26,3,27,28,29,30);\r
-aWE("mak",5,26,28);\r
-aWE("management",2,14);\r
-aWE("manual",1,9,10);\r
-aWE("map",24,29);\r
-aWE("mark",4,9,27);\r
-aWE("marker",27);\r
-aWE("massles",28);\r
-aWE("maximal",24);\r
-aWE("maximum",21,28);\r
-aWE("measur",28);\r
-aWE("menu",2,4,5,6,7,8,9,10,11,13,12,14,15,16,18,19,21,22,23,24,25,26,3,28,29,30);\r
-aWE("mesh",0,9,10,11,16,17,3,28,30);\r
-aWE("method",1);\r
-aWE("minimal",24);\r
-aWE("minimum",21,29);\r
-aWE("mod",1,24,26,3,27,30);\r
-aWE("modify",7,12);\r
-aWE("modul",0,2,17,20,23,24,26);\r
-aWE("moment",0);\r
-aWE("mous",12,26);\r
-aWE("mov",2,8);\r
-aWE("multipl",28);\r
-aWE("nam",4,8,16,19,22,27);\r
-aWE("nb",24);\r
-aWE("necessary",19);\r
-aWE("new",5,7,8,17,19,23,24);\r
-aWE("next",2);\r
-aWE("nod",0);\r
-aWE("non",25,28);\r
-aWE("normal",3);\r
-aWE("not",24);\r
-aWE("numb",9,10,16,21,24,26,28,29);\r
-aWE("numerical",27);\r
-aWE("object",0,2,4,5,6,7,8,9,10,11,13,12,14,15,16,18,19,21,22,24,26,3,28,29,30);\r
-aWE("observ",9,10);\r
-aWE("often",0);\r
-aWE("ok",4,8,9,10,11,19,21,22,24,25,26,3,28,30);\r
-aWE("on",0,2,4,5,8,9,10,11,12,19,21,24,25,26,3,28,29,30);\r
-aWE("onc",4);\r
-aWE("oncel",0);\r
-aWE("onedg",0);\r
-aWE("onfac",0);\r
-aWE("onnod",0);\r
-aWE("opacity",3);\r
-aWE("open",2,18,19);\r
-aWE("operation",9,12);\r
-aWE("optimization",28);\r
-aWE("option",2,4,7,11,13,12,14,15,18,26,3,27,28,29,30);\r
-aWE("orientation",9,10,24);\r
-aWE("origin",24);\r
-aWE("out",24);\r
-aWE("outlin",26);\r
-aWE("output",28);\r
-aWE("own",0,24);\r
-aWE("paramet",9,10,28);\r
-aWE("parameter",2,4,9,10,11,12,14,17,21,24,25,3,28,30);\r
-aWE("part",0);\r
-aWE("particl",28);\r
-aWE("particular",0,8,3,28);\r
-aWE("path",2,28);\r
-aWE("perform",0);\r
-aWE("period",0,2);\r
-aWE("personal",22);\r
-aWE("physical",0);\r
-aWE("pictur",2,19);\r
-aWE("plac",4,9);\r
-aWE("plan",9,10,29);\r
-aWE("platform",15,20,23);\r
-aWE("plot",4,8,9,17,20,27);\r
-aWE("plot2d",4,8);\r
-aWE("plot2dview",4,8);\r
-aWE("point",0,16,26,3,27,28);\r
-aWE("pointer",30);\r
-aWE("polylin",28);\r
-aWE("pop",2,4,5,6,7,8,9,10,11,13,12,14,21,22,24,26,3,28,29,30);\r
-aWE("position",9,10,27,30);\r
-aWE("possibl",5);\r
-aWE("post",20);\r
-aWE("preferenc",18,23,24,29);\r
-aWE("pres",26);\r
-aWE("present",24);\r
-aWE("presentation",0,1,2,5,6,7,9,10,11,12,14,16,17,18,20,21,22,23,24,25,26,3,28,29,30);\r
-aWE("preview",9,10);\r
-aWE("previou",2);\r
-aWE("previous",1,8,19,21);\r
-aWE("pro",1);\r
-aWE("procedur",9);\r
-aWE("proces",20,29);\r
-aWE("produc",20);\r
-aWE("propagation",28);\r
-aWE("properti",2,11,24,3,27,30);\r
-aWE("proportional",2);\r
-aWE("provid",20);\r
-aWE("pseudo",29);\r
-aWE("purpos",28);\r
-aWE("put",0);\r
-aWE("python",1);\r
-aWE("quadrangl",0);\r
-aWE("quit",8,25);\r
-aWE("rang",1,2,11,21,24,30);\r
-aWE("rarefi",1);\r
-aWE("real",2);\r
-aWE("referenc",1,8);\r
-aWE("regard",29);\r
-aWE("regular",9);\r
-aWE("relat",23);\r
-aWE("relativ",9,10);\r
-aWE("relevant",24);\r
-aWE("remov",4);\r
-aWE("renam",14,22);\r
-aWE("rend",2);\r
-aWE("repeat",29);\r
-aWE("represent",0,1,4,24,3,28,30);\r
-aWE("representation",0,12,25,3,29);\r
-aWE("requir",4,5,13,15,16,3,28);\r
-aWE("reset",25);\r
-aWE("resourc",28);\r
-aWE("result",0,9);\r
-aWE("return",2,3);\r
-aWE("reus",9);\r
-aWE("right",2,4,5,6,7,8,9,10,11,13,12,14,18,19,21,22,24,26,3,27,28,29,30);\r
-aWE("rotation",9,10);\r
-aWE("row",1,4);\r
-aWE("run",2,23);\r
-aWE("s",0);\r
-aWE("salom",1,4,15,18,20,23,24,25,29);\r
-aWE("sam",4,9,12,18,24,3);\r
-aWE("sav",2,24,27,29);\r
-aWE("scal",11,14,24,25,27,30);\r
-aWE("scalar",0,2,5,7,9,10,11,16,21,24,27,28,29,30);\r
-aWE("script",1);\r
-aWE("se",0,1,2,4,5,9,10,11,18,19,21,23,28,30);\r
-aWE("search",15,18);\r
-aWE("segment",0,28);\r
-aWE("select",2,4,5,7,8,9,10,11,12,14,16,18,19,21,23,24,25,26,3,27,28,29,30);\r
-aWE("selection",16,26,3);\r
-aWE("sensitiv",3);\r
-aWE("separat",13);\r
-aWE("serv",28);\r
-aWE("session",24,29);\r
-aWE("set",2,4,9,10,11,12,17,18,21,23,24,25,3,27,28,29,30);\r
-aWE("setting",27);\r
-aWE("setup",2);\r
-aWE("shap",10,11,29);\r
-aWE("shift",11,26);\r
-aWE("should",0,4,9,10,16,23,29);\r
-aWE("show",2,9,10,13,27);\r
-aWE("shrink",3);\r
-aWE("sid",9,10);\r
-aWE("similar",28);\r
-aWE("simultaneou",2);\r
-aWE("simultaneous",9,10,18);\r
-aWE("siz",16,27,28);\r
-aWE("smal",28);\r
-aWE("smooth",28);\r
-aWE("smoothnes",28);\r
-aWE("so",2);\r
-aWE("sometim",28);\r
-aWE("sourc",28);\r
-aWE("spac",9,10,16,26);\r
-aWE("spe",2);\r
-aWE("special",1);\r
-aWE("specifi",2);\r
-aWE("specific",14);\r
-aWE("specify",28);\r
-aWE("splin",27);\r
-aWE("stamp",0,2,5,9,10,11,12,21,24,28,30);\r
-aWE("standard",15,18,19,23,3);\r
-aWE("start",2,17,23,28,29);\r
-aWE("stat",29);\r
-aWE("step",2,9,17,28,29);\r
-aWE("stor",0,18);\r
-aWE("stream",28);\r
-aWE("streamlin",28);\r
-aWE("structur",0,4,9,15,18,28);\r
-aWE("study",4,8,9,17,18,19,23);\r
-aWE("subfold",0,5,12);\r
-aWE("subfolder",0);\r
-aWE("submenu",5,3);\r
-aWE("submesh",0,5,6,16,17,20,22,25,3);\r
-aWE("supplementary",18);\r
-aWE("surfac",10,21,3,29);\r
-aWE("surfacefram",3);\r
-aWE("sweep",2,17,29);\r
-aWE("tab",1,9,10,11,19,21,24,28,30);\r
-aWE("tabl",0,1,4,7,9,13,17,19,20,27);\r
-aWE("tak",28,29);\r
-aWE("taken",4,9,11);\r
-aWE("text",24);\r
-aWE("them",1,18,21,26);\r
-aWE("thought",28);\r
-aWE("thre",0,1,9,10,24);\r
-aWE("tim",0,2,5,9,10,11,12,18,21,24,28,29,30);\r
-aWE("titl",1,24,27);\r
-aWE("togeth",0);\r
-aWE("toolbar",5,9,10,11,12,21,23,24,25,26,3,28,30);\r
-aWE("transform",28);\r
-aWE("transformation",24,29);\r
-aWE("tre",0);\r
-aWE("triangl",0);\r
-aWE("two",4,8,9,10,18);\r
-aWE("txt",1,19);\r
-aWE("typ",0,2,4,5,9,10,11,16,24,3,27,28,29,30);\r
-aWE("unit",1,4,28);\r
-aWE("unshrink",3);\r
-aWE("up",2,4,5,6,7,8,9,10,11,13,12,14,21,22,24,26,3,28,29,30);\r
-aWE("updat",7,21,23);\r
-aWE("upload",18);\r
-aWE("us",0,2,4,8,9,11,15,16,24,28,29,30);\r
-aWE("usual",28);\r
-aWE("v",4);\r
-aWE("validat",2,3);\r
-aWE("valu",0,1,4,5,7,9,10,11,16,21,24,3,28,29,30);\r
-aWE("variou",20);\r
-aWE("vector",0,5,11,16,21,24,28,30);\r
-aWE("vertical",24,27);\r
-aWE("very",28);\r
-aWE("view",0,1,4,6,7,8,9,10,11,13,12,14,16,17,21,22,23,24,26,3,27,28,29,30);\r
-aWE("visu",0,1,2,4,5,7,8,9,14,15,17,18,19,20,23,24,26,28,29);\r
-aWE("visual",3);\r
-aWE("visualiz",9,11,30);\r
-aWE("visualization",5,9,10,11,20,21,24,3,28,30);\r
-aWE("vtk",23);\r
-aWE("want",26);\r
-aWE("well",5,24,26);\r
-aWE("wheel",2);\r
-aWE("whit",26);\r
-aWE("whol",0,26,29);\r
-aWE("why",0);\r
-aWE("width",4,3,30);\r
-aWE("will",0,2,4,5,6,7,8,9,10,11,13,12,15,16,18,19,21,22,23,24,26,3,27,28,29,30);\r
-aWE("window",8,13,23,26);\r
-aWE("wirefram",3);\r
-aWE("without",1);\r
-aWE("work",18);\r
-aWE("would",16);\r
-aWE("x",4,25,27);\r
-aWE("xl",1,19);\r
-aWE("xml",19);\r
-aWE("xy",4,8,9,10,20,27);\r
-aWE("y",4,25,27);\r
-aWE("your",2,4,7,8,9,10,11,13,12,18,19,21,22,24,25,26,3,28,30);\r
-aWE("yz",9,10);\r
-aWE("z",25);\r
-aWE("zx",9,10);\r
-\r
-//-->\r
-</script>\r
-</script>\r
+++ /dev/null
-<?xml version='1.0' encoding='ISO-8859-1' ?>\r
-<ftswdata>\r
-<key name="0"> 3,28, </key>\r
-<key name="1"> 1,2,4,7,8,13,12,14,15,16,17,19,25,26,29, </key>\r
-<key name="100"> 3,28, </key>\r
-<key name="2"> 1,2,4,7,8,13,12,14,15,16,17,19,25,26,29, </key>\r
-<key name="200"> 4,8, </key>\r
-<key name="2d"> 4,9,17,27, </key>\r
-<key name="3"> 1,2,4,8,17,19,23,25,29, </key>\r
-<key name="3d"> 0,9,10,16,18,20,24,26,3, </key>\r
-<key name="4"> 2,4,8,17,25,29, </key>\r
-<key name="5"> 2,17, </key>\r
-<key name="6"> 17, </key>\r
-<key name="acceptabl"> 29, </key>\r
-<key name="accessibl"> 12, </key>\r
-<key name="accord"> 10,11,24,26,28,30, </key>\r
-<key name="accordanc"> 0, </key>\r
-<key name="accuracy"> 28, </key>\r
-<key name="action"> 25, </key>\r
-<key name="actor"> 16,26, </key>\r
-<key name="additional"> 2,10,11,12,14,21,23,24,28,30, </key>\r
-<key name="adjust"> 2, </key>\r
-<key name="algorithm"> 9,15, </key>\r
-<key name="allow"> 1,2,4,7,9,10,11,12,14,18,21,24,25,26,27,28,29,30, </key>\r
-<key name="along"> 9,10,11,21,25,27,28,30, </key>\r
-<key name="already"> 22,3,28, </key>\r
-<key name="angl"> 9,10, </key>\r
-<key name="animat"> 2,17, </key>\r
-<key name="animation"> 2,29, </key>\r
-<key name="anoth"> 2,9,10,26,28,29, </key>\r
-<key name="any"> 0,1,16, </key>\r
-<key name="ap"> 24,25, </key>\r
-<key name="appear"> 2,4,8,9,10,11,12,16,21,22,23,24,26,3,27,28,29,30, </key>\r
-<key name="appli"> 0,5,7,9,10,11,16,21,24,28,29,30, </key>\r
-<key name="application"> 18,23, </key>\r
-<key name="area"> 28, </key>\r
-<key name="around"> 9,10, </key>\r
-<key name="array"> 9, </key>\r
-<key name="assign"> 4, </key>\r
-<key name="associat"> 3, </key>\r
-<key name="attribut"> 4,16, </key>\r
-<key name="auto"> 4, </key>\r
-<key name="automatical"> 4,9,12,15,18,26,29, </key>\r
-<key name="availabl"> 3,29, </key>\r
-<key name="ax"> 9,10,25,27, </key>\r
-<key name="axi"> 4,9,10,27, </key>\r
-<key name="back"> 2,8,3, </key>\r
-<key name="background"> 27, </key>\r
-<key name="backward"> 28, </key>\r
-<key name="bar"> 2,9,10,11,21,24,28,30, </key>\r
-<key name="bas"> 0,2,7,8,9,17,20,24,28,29, </key>\r
-<key name="basi"> 0,1,4,9,18,21,24,27,28, </key>\r
-<key name="basic"> 24,29, </key>\r
-<key name="batch"> 1, </key>\r
-<key name="befor"> 23, </key>\r
-<key name="begin"> 2, </key>\r
-<key name="belong"> 9,24, </key>\r
-<key name="border"> 26, </key>\r
-<key name="both"> 5,28, </key>\r
-<key name="bottom"> 23, </key>\r
-<key name="bound"> 28, </key>\r
-<key name="boundary"> 0, </key>\r
-<key name="box"> 2,4,8,9,10,11,15,16,18,19,21,22,23,24,25,26,3,27,28,29,30, </key>\r
-<key name="brows"> 0,2,4,5,6,7,8,9,10,11,13,12,14,15,18,19,21,22,24,26,3,28,29,30, </key>\r
-<key name="button"> 2,8,12,19,21,22,24,25,26,3,28,30, </key>\r
-<key name="calculation"> 0,24, </key>\r
-<key name="cancel"> 25, </key>\r
-<key name="cas"> 14,18,24,26, </key>\r
-<key name="cel"> 0,1,5,7,9,10,11,16,21,24,26,3,28,29,30, </key>\r
-<key name="cell"> 16,26, </key>\r
-<key name="chang"> 14,22,25,26,3, </key>\r
-<key name="check"> 2,4,9,10,11,24,27,28,30, </key>\r
-<key name="checkbox"> 4, </key>\r
-<key name="checkmark"> 4, </key>\r
-<key name="choic"> 18,22,3, </key>\r
-<key name="choos"> 4,5,6,8,9,10,11,13,12,15,16,18,19,21,22,23,24,25,26,3,28,29,30, </key>\r
-<key name="chosen"> 0,8,25,26,28, </key>\r
-<key name="click"> 2,4,5,6,7,8,9,10,11,13,12,14,16,18,19,21,22,23,24,25,26,3,27,28,29,30, </key>\r
-<key name="clos"> 2, </key>\r
-<key name="coefficient"> 25, </key>\r
-<key name="color"> 4,9,10,11,24,26,3,27,28,30, </key>\r
-<key name="column"> 1,4, </key>\r
-<key name="combin"> 0,21, </key>\r
-<key name="comparison"> 2,29, </key>\r
-<key name="compatibl"> 0, </key>\r
-<key name="complicat"> 28, </key>\r
-<key name="component"> 1,15,18,20,23,24, </key>\r
-<key name="compos"> 0,2,7,8,29, </key>\r
-<key name="compres"> 3, </key>\r
-<key name="computation"> 28, </key>\r
-<key name="concept"> 0, </key>\r
-<key name="condition"> 0, </key>\r
-<key name="confirm"> 18,22,25, </key>\r
-<key name="consist"> 8,9,24,27, </key>\r
-<key name="construct"> 0,9,21,24,27,28, </key>\r
-<key name="construction"> 4,9,28, </key>\r
-<key name="consum"> 28, </key>\r
-<key name="contain"> 0,4,5,6,8,9,19,24, </key>\r
-<key name="container"> 4, </key>\r
-<key name="context"> 3, </key>\r
-<key name="control"> 28, </key>\r
-<key name="convey"> 28, </key>\r
-<key name="coordinat"> 4,16,24, </key>\r
-<key name="copy"> 12, </key>\r
-<key name="correspond"> 0,4,11,30, </key>\r
-<key name="correspondenc"> 0,24, </key>\r
-<key name="cost"> 28, </key>\r
-<key name="creat"> 0,1,2,4,5,6,7,8,9,10,11,17,19,21,22,23,24,3,28,29,30, </key>\r
-<key name="creation"> 8,9,12,18,23,24,29, </key>\r
-<key name="ctrl"> 12, </key>\r
-<key name="current"> 3, </key>\r
-<key name="curv"> 4,8,9,27, </key>\r
-<key name="cut"> 1,7,9,10,29, </key>\r
-<key name="cycl"> 2,29, </key>\r
-<key name="data"> 0,1,4,9,17,18,20,24, </key>\r
-<key name="decreas"> 2, </key>\r
-<key name="default"> 4,8,9,10,11,23,24,27, </key>\r
-<key name="defin"> 0,9,10,11,21,24,27,28,29,30, </key>\r
-<key name="definit"> 0,2,8,10,16,26,3,28, </key>\r
-<key name="deform"> 11,29, </key>\r
-<key name="deformation"> 2, </key>\r
-<key name="degre"> 9,10, </key>\r
-<key name="delet"> 12,14, </key>\r
-<key name="depend"> 2, </key>\r
-<key name="describ"> 1, </key>\r
-<key name="description"> 27, </key>\r
-<key name="desir"> 26, </key>\r
-<key name="desktop"> 23, </key>\r
-<key name="destin"> 2,20, </key>\r
-<key name="dialog"> 2,4,8,9,10,11,15,16,18,19,21,22,24,25,26,3,27,28,29,30, </key>\r
-<key name="different"> 0, </key>\r
-<key name="dimension"> 24, </key>\r
-<key name="direction"> 28, </key>\r
-<key name="directory"> 2, </key>\r
-<key name="disabl"> 18, </key>\r
-<key name="displacement"> 9,10, </key>\r
-<key name="display"> 1,2,4,5,6,7,8,9,10,11,13,12,14,15,16,18,21,24,26,3,27,28,29,30, </key>\r
-<key name="divid"> 0, </key>\r
-<key name="down"> 2,12,26, </key>\r
-<key name="duplicat"> 12, </key>\r
-<key name="edg"> 0,26, </key>\r
-<key name="edit"> 8,9,10,12,14, </key>\r
-<key name="element"> 0,16,26, </key>\r
-<key name="empty"> 1, </key>\r
-<key name="enabl"> 18, </key>\r
-<key name="end"> 2,29, </key>\r
-<key name="enjoy"> 29, </key>\r
-<key name="ent"> 16,19,21,22,24,25,26, </key>\r
-<key name="enter"> 9,10, </key>\r
-<key name="entiti"> 0, </key>\r
-<key name="equal"> 21,24, </key>\r
-<key name="eras"> 12, </key>\r
-<key name="every"> 0,2, </key>\r
-<key name="examin"> 16, </key>\r
-<key name="exist"> 12, </key>\r
-<key name="explor"> 15,28, </key>\r
-<key name="export"> 19, </key>\r
-<key name="fac"> 0, </key>\r
-<key name="factor"> 11,30, </key>\r
-<key name="fami"> 0, </key>\r
-<key name="famili"> 0, </key>\r
-<key name="featur"> 25,28, </key>\r
-<key name="field"> 0,2,5,9,10,11,12,14,16,17,18,20,21,22,24,25,26,27,28,29,30, </key>\r
-<key name="fil"> 0,1,15,17,18,19, </key>\r
-<key name="finish"> 9,10,11,21,24,28,30, </key>\r
-<key name="first"> 2, </key>\r
-<key name="fold"> 0,18,19, </key>\r
-<key name="folder"> 0, </key>\r
-<key name="follow"> 0,2,4,5,8,9,10,11,16,19,21,22,23,24,26,3,27,28,29,30, </key>\r
-<key name="font"> 24, </key>\r
-<key name="form"> 7,16,20,27, </key>\r
-<key name="forward"> 28, </key>\r
-<key name="fram"> 2,29, </key>\r
-<key name="framework"> 21, </key>\r
-<key name="full"> 18, </key>\r
-<key name="function"> 25, </key>\r
-<key name="functional"> 14, </key>\r
-<key name="functionality"> 1,4, </key>\r
-<key name="general"> 0, </key>\r
-<key name="generat"> 2,9,21,26,28,29, </key>\r
-<key name="generation"> 2,28, </key>\r
-<key name="geometrical"> 0, </key>\r
-<key name="get"> 16,17, </key>\r
-<key name="given"> 4,10, </key>\r
-<key name="glyph"> 30, </key>\r
-<key name="graduation"> 24, </key>\r
-<key name="graphical"> 30, </key>\r
-<key name="grid"> 27, </key>\r
-<key name="group"> 0, </key>\r
-<key name="h"> 4, </key>\r
-<key name="hardwar"> 28, </key>\r
-<key name="hav"> 8,9,19,28, </key>\r
-<key name="help"> 1, </key>\r
-<key name="her"> 2,4,9,24,27, </key>\r
-<key name="hid"> 12,14, </key>\r
-<key name="hidden"> 12, </key>\r
-<key name="highlight"> 16,26, </key>\r
-<key name="hold"> 12,26, </key>\r
-<key name="horizontal"> 24,27, </key>\r
-<key name="icon"> 9,10,11,21,23,24,25,3,28,30, </key>\r
-<key name="id"> 16, </key>\r
-<key name="if"> 4,9,12,16,24,26,27,28,30, </key>\r
-<key name="imag"> 3, </key>\r
-<key name="immediate"> 9,10,11,12,16,18,21,24,28,30, </key>\r
-<key name="import"> 1,4,6,15,17,18,19, </key>\r
-<key name="impos"> 24, </key>\r
-<key name="inactiv"> 24, </key>\r
-<key name="includ"> 0,20,28, </key>\r
-<key name="increas"> 2, </key>\r
-<key name="independent"> 0, </key>\r
-<key name="indicat"> 0,24, </key>\r
-<key name="info"> 16, </key>\r
-<key name="information"> 0, </key>\r
-<key name="initial"> 0,23,26,29, </key>\r
-<key name="insid"> 9, </key>\r
-<key name="insidefram"> 3, </key>\r
-<key name="integrat"> 15, </key>\r
-<key name="integration"> 28, </key>\r
-<key name="intend"> 2, </key>\r
-<key name="interest"> 28, </key>\r
-<key name="interpolation"> 0, </key>\r
-<key name="introduction"> 20, </key>\r
-<key name="iso"> 21,29, </key>\r
-<key name="isobaric"> 21, </key>\r
-<key name="item"> 8,18,19,27, </key>\r
-<key name="label"> 24, </key>\r
-<key name="larg"> 24, </key>\r
-<key name="last"> 2, </key>\r
-<key name="launch"> 2,15,17,23, </key>\r
-<key name="least"> 4, </key>\r
-<key name="left"> 8,26, </key>\r
-<key name="legend"> 27, </key>\r
-<key name="length"> 28, </key>\r
-<key name="les"> 24, </key>\r
-<key name="lik"> 0,16,23, </key>\r
-<key name="lin"> 1,4,7,8,9,3,27,28,30, </key>\r
-<key name="linear"> 25,27, </key>\r
-<key name="list"> 0,2,8,28, </key>\r
-<key name="load"> 18, </key>\r
-<key name="locat"> 9,10,19,28, </key>\r
-<key name="logarithmic"> 24,27, </key>\r
-<key name="look"> 23, </key>\r
-<key name="lot"> 28, </key>\r
-<key name="magnitud"> 11,28,30, </key>\r
-<key name="main"> 0,2,5,8,9,10,11,12,15,16,19,21,23,24,25,26,3,27,28,29,30, </key>\r
-<key name="mak"> 5,26,28, </key>\r
-<key name="management"> 2,14, </key>\r
-<key name="manual"> 1,9,10, </key>\r
-<key name="map"> 24,29, </key>\r
-<key name="mark"> 4,9,27, </key>\r
-<key name="marker"> 27, </key>\r
-<key name="massles"> 28, </key>\r
-<key name="maximal"> 24, </key>\r
-<key name="maximum"> 21,28, </key>\r
-<key name="measur"> 28, </key>\r
-<key name="menu"> 2,4,5,6,7,8,9,10,11,13,12,14,15,16,18,19,21,22,23,24,25,26,3,28,29,30, </key>\r
-<key name="mesh"> 0,9,10,11,16,17,3,28,30, </key>\r
-<key name="method"> 1, </key>\r
-<key name="minimal"> 24, </key>\r
-<key name="minimum"> 21,29, </key>\r
-<key name="mod"> 1,24,26,3,27,30, </key>\r
-<key name="modify"> 7,12, </key>\r
-<key name="modul"> 0,2,17,20,23,24,26, </key>\r
-<key name="moment"> 0, </key>\r
-<key name="mous"> 12,26, </key>\r
-<key name="mov"> 2,8, </key>\r
-<key name="multipl"> 28, </key>\r
-<key name="nam"> 4,8,16,19,22,27, </key>\r
-<key name="nb"> 24, </key>\r
-<key name="necessary"> 19, </key>\r
-<key name="new"> 5,7,8,17,19,23,24, </key>\r
-<key name="next"> 2, </key>\r
-<key name="nod"> 0, </key>\r
-<key name="non"> 25,28, </key>\r
-<key name="normal"> 3, </key>\r
-<key name="not"> 24, </key>\r
-<key name="numb"> 9,10,16,21,24,26,28,29, </key>\r
-<key name="numerical"> 27, </key>\r
-<key name="object"> 0,2,4,5,6,7,8,9,10,11,13,12,14,15,16,18,19,21,22,24,26,3,28,29,30, </key>\r
-<key name="observ"> 9,10, </key>\r
-<key name="often"> 0, </key>\r
-<key name="ok"> 4,8,9,10,11,19,21,22,24,25,26,3,28,30, </key>\r
-<key name="on"> 0,2,4,5,8,9,10,11,12,19,21,24,25,26,3,28,29,30, </key>\r
-<key name="onc"> 4, </key>\r
-<key name="oncel"> 0, </key>\r
-<key name="onedg"> 0, </key>\r
-<key name="onfac"> 0, </key>\r
-<key name="onnod"> 0, </key>\r
-<key name="opacity"> 3, </key>\r
-<key name="open"> 2,18,19, </key>\r
-<key name="operation"> 9,12, </key>\r
-<key name="optimization"> 28, </key>\r
-<key name="option"> 2,4,7,11,13,12,14,15,18,26,3,27,28,29,30, </key>\r
-<key name="orientation"> 9,10,24, </key>\r
-<key name="origin"> 24, </key>\r
-<key name="out"> 24, </key>\r
-<key name="outlin"> 26, </key>\r
-<key name="output"> 28, </key>\r
-<key name="own"> 0,24, </key>\r
-<key name="paramet"> 9,10,28, </key>\r
-<key name="parameter"> 2,4,9,10,11,12,14,17,21,24,25,3,28,30, </key>\r
-<key name="part"> 0, </key>\r
-<key name="particl"> 28, </key>\r
-<key name="particular"> 0,8,3,28, </key>\r
-<key name="path"> 2,28, </key>\r
-<key name="perform"> 0, </key>\r
-<key name="period"> 0,2, </key>\r
-<key name="personal"> 22, </key>\r
-<key name="physical"> 0, </key>\r
-<key name="pictur"> 2,19, </key>\r
-<key name="plac"> 4,9, </key>\r
-<key name="plan"> 9,10,29, </key>\r
-<key name="platform"> 15,20,23, </key>\r
-<key name="plot"> 4,8,9,17,20,27, </key>\r
-<key name="plot2d"> 4,8, </key>\r
-<key name="plot2dview"> 4,8, </key>\r
-<key name="point"> 0,16,26,3,27,28, </key>\r
-<key name="pointer"> 30, </key>\r
-<key name="polylin"> 28, </key>\r
-<key name="pop"> 2,4,5,6,7,8,9,10,11,13,12,14,21,22,24,26,3,28,29,30, </key>\r
-<key name="position"> 9,10,27,30, </key>\r
-<key name="possibl"> 5, </key>\r
-<key name="post"> 20, </key>\r
-<key name="preferenc"> 18,23,24,29, </key>\r
-<key name="pres"> 26, </key>\r
-<key name="present"> 24, </key>\r
-<key name="presentation"> 0,1,2,5,6,7,9,10,11,12,14,16,17,18,20,21,22,23,24,25,26,3,28,29,30, </key>\r
-<key name="preview"> 9,10, </key>\r
-<key name="previou"> 2, </key>\r
-<key name="previous"> 1,8,19,21, </key>\r
-<key name="pro"> 1, </key>\r
-<key name="procedur"> 9, </key>\r
-<key name="proces"> 20,29, </key>\r
-<key name="produc"> 20, </key>\r
-<key name="propagation"> 28, </key>\r
-<key name="properti"> 2,11,24,3,27,30, </key>\r
-<key name="proportional"> 2, </key>\r
-<key name="provid"> 20, </key>\r
-<key name="pseudo"> 29, </key>\r
-<key name="purpos"> 28, </key>\r
-<key name="put"> 0, </key>\r
-<key name="python"> 1, </key>\r
-<key name="quadrangl"> 0, </key>\r
-<key name="quit"> 8,25, </key>\r
-<key name="rang"> 1,2,11,21,24,30, </key>\r
-<key name="rarefi"> 1, </key>\r
-<key name="real"> 2, </key>\r
-<key name="referenc"> 1,8, </key>\r
-<key name="regard"> 29, </key>\r
-<key name="regular"> 9, </key>\r
-<key name="relat"> 23, </key>\r
-<key name="relativ"> 9,10, </key>\r
-<key name="relevant"> 24, </key>\r
-<key name="remov"> 4, </key>\r
-<key name="renam"> 14,22, </key>\r
-<key name="rend"> 2, </key>\r
-<key name="repeat"> 29, </key>\r
-<key name="represent"> 0,1,4,24,3,28,30, </key>\r
-<key name="representation"> 0,12,25,3,29, </key>\r
-<key name="requir"> 4,5,13,15,16,3,28, </key>\r
-<key name="reset"> 25, </key>\r
-<key name="resourc"> 28, </key>\r
-<key name="result"> 0,9, </key>\r
-<key name="return"> 2,3, </key>\r
-<key name="reus"> 9, </key>\r
-<key name="right"> 2,4,5,6,7,8,9,10,11,13,12,14,18,19,21,22,24,26,3,27,28,29,30, </key>\r
-<key name="rotation"> 9,10, </key>\r
-<key name="row"> 1,4, </key>\r
-<key name="run"> 2,23, </key>\r
-<key name="s"> 0, </key>\r
-<key name="salom"> 1,4,15,18,20,23,24,25,29, </key>\r
-<key name="sam"> 4,9,12,18,24,3, </key>\r
-<key name="sav"> 2,24,27,29, </key>\r
-<key name="scal"> 11,14,24,25,27,30, </key>\r
-<key name="scalar"> 0,2,5,7,9,10,11,16,21,24,27,28,29,30, </key>\r
-<key name="script"> 1, </key>\r
-<key name="se"> 0,1,2,4,5,9,10,11,18,19,21,23,28,30, </key>\r
-<key name="search"> 15,18, </key>\r
-<key name="segment"> 0,28, </key>\r
-<key name="select"> 2,4,5,7,8,9,10,11,12,14,16,18,19,21,23,24,25,26,3,27,28,29,30, </key>\r
-<key name="selection"> 16,26,3, </key>\r
-<key name="sensitiv"> 3, </key>\r
-<key name="separat"> 13, </key>\r
-<key name="serv"> 28, </key>\r
-<key name="session"> 24,29, </key>\r
-<key name="set"> 2,4,9,10,11,12,17,18,21,23,24,25,3,27,28,29,30, </key>\r
-<key name="setting"> 27, </key>\r
-<key name="setup"> 2, </key>\r
-<key name="shap"> 10,11,29, </key>\r
-<key name="shift"> 11,26, </key>\r
-<key name="should"> 0,4,9,10,16,23,29, </key>\r
-<key name="show"> 2,9,10,13,27, </key>\r
-<key name="shrink"> 3, </key>\r
-<key name="sid"> 9,10, </key>\r
-<key name="similar"> 28, </key>\r
-<key name="simultaneou"> 2, </key>\r
-<key name="simultaneous"> 9,10,18, </key>\r
-<key name="siz"> 16,27,28, </key>\r
-<key name="smal"> 28, </key>\r
-<key name="smooth"> 28, </key>\r
-<key name="smoothnes"> 28, </key>\r
-<key name="so"> 2, </key>\r
-<key name="sometim"> 28, </key>\r
-<key name="sourc"> 28, </key>\r
-<key name="spac"> 9,10,16,26, </key>\r
-<key name="spe"> 2, </key>\r
-<key name="special"> 1, </key>\r
-<key name="specifi"> 2, </key>\r
-<key name="specific"> 14, </key>\r
-<key name="specify"> 28, </key>\r
-<key name="splin"> 27, </key>\r
-<key name="stamp"> 0,2,5,9,10,11,12,21,24,28,30, </key>\r
-<key name="standard"> 15,18,19,23,3, </key>\r
-<key name="start"> 2,17,23,28,29, </key>\r
-<key name="stat"> 29, </key>\r
-<key name="step"> 2,9,17,28,29, </key>\r
-<key name="stor"> 0,18, </key>\r
-<key name="stream"> 28, </key>\r
-<key name="streamlin"> 28, </key>\r
-<key name="structur"> 0,4,9,15,18,28, </key>\r
-<key name="study"> 4,8,9,17,18,19,23, </key>\r
-<key name="subfold"> 0,5,12, </key>\r
-<key name="subfolder"> 0, </key>\r
-<key name="submenu"> 5,3, </key>\r
-<key name="submesh"> 0,5,6,16,17,20,22,25,3, </key>\r
-<key name="supplementary"> 18, </key>\r
-<key name="surfac"> 10,21,3,29, </key>\r
-<key name="surfacefram"> 3, </key>\r
-<key name="sweep"> 2,17,29, </key>\r
-<key name="tab"> 1,9,10,11,19,21,24,28,30, </key>\r
-<key name="tabl"> 0,1,4,7,9,13,17,19,20,27, </key>\r
-<key name="tak"> 28,29, </key>\r
-<key name="taken"> 4,9,11, </key>\r
-<key name="text"> 24, </key>\r
-<key name="them"> 1,18,21,26, </key>\r
-<key name="thought"> 28, </key>\r
-<key name="thre"> 0,1,9,10,24, </key>\r
-<key name="tim"> 0,2,5,9,10,11,12,18,21,24,28,29,30, </key>\r
-<key name="titl"> 1,24,27, </key>\r
-<key name="togeth"> 0, </key>\r
-<key name="toolbar"> 5,9,10,11,12,21,23,24,25,26,3,28,30, </key>\r
-<key name="transform"> 28, </key>\r
-<key name="transformation"> 24,29, </key>\r
-<key name="tre"> 0, </key>\r
-<key name="triangl"> 0, </key>\r
-<key name="two"> 4,8,9,10,18, </key>\r
-<key name="txt"> 1,19, </key>\r
-<key name="typ"> 0,2,4,5,9,10,11,16,24,3,27,28,29,30, </key>\r
-<key name="unit"> 1,4,28, </key>\r
-<key name="unshrink"> 3, </key>\r
-<key name="up"> 2,4,5,6,7,8,9,10,11,13,12,14,21,22,24,26,3,28,29,30, </key>\r
-<key name="updat"> 7,21,23, </key>\r
-<key name="upload"> 18, </key>\r
-<key name="us"> 0,2,4,8,9,11,15,16,24,28,29,30, </key>\r
-<key name="usual"> 28, </key>\r
-<key name="v"> 4, </key>\r
-<key name="validat"> 2,3, </key>\r
-<key name="valu"> 0,1,4,5,7,9,10,11,16,21,24,3,28,29,30, </key>\r
-<key name="variou"> 20, </key>\r
-<key name="vector"> 0,5,11,16,21,24,28,30, </key>\r
-<key name="vertical"> 24,27, </key>\r
-<key name="very"> 28, </key>\r
-<key name="view"> 0,1,4,6,7,8,9,10,11,13,12,14,16,17,21,22,23,24,26,3,27,28,29,30, </key>\r
-<key name="visu"> 0,1,2,4,5,7,8,9,14,15,17,18,19,20,23,24,26,28,29, </key>\r
-<key name="visual"> 3, </key>\r
-<key name="visualiz"> 9,11,30, </key>\r
-<key name="visualization"> 5,9,10,11,20,21,24,3,28,30, </key>\r
-<key name="vtk"> 23, </key>\r
-<key name="want"> 26, </key>\r
-<key name="well"> 5,24,26, </key>\r
-<key name="wheel"> 2, </key>\r
-<key name="whit"> 26, </key>\r
-<key name="whol"> 0,26,29, </key>\r
-<key name="why"> 0, </key>\r
-<key name="width"> 4,3,30, </key>\r
-<key name="will"> 0,2,4,5,6,7,8,9,10,11,13,12,15,16,18,19,21,22,23,24,26,3,27,28,29,30, </key>\r
-<key name="window"> 8,13,23,26, </key>\r
-<key name="wirefram"> 3, </key>\r
-<key name="without"> 1, </key>\r
-<key name="work"> 18, </key>\r
-<key name="would"> 16, </key>\r
-<key name="x"> 4,25,27, </key>\r
-<key name="xl"> 1,19, </key>\r
-<key name="xml"> 19, </key>\r
-<key name="xy"> 4,8,9,10,20,27, </key>\r
-<key name="y"> 4,25,27, </key>\r
-<key name="your"> 2,4,7,8,9,10,11,13,12,18,19,21,22,24,25,26,3,28,30, </key>\r
-<key name="yz"> 9,10, </key>\r
-<key name="z"> 25, </key>\r
-<key name="zx"> 9,10, </key>\r
-\r
-</ftswdata> \r
+++ /dev/null
-var gIEA = new Array();\r
-function aGE(sName, sDef)\r
-{\r
- var len = gIEA.length;\r
- gIEA[len] = new gloEntry(sName, sDef);\r
-}\r
-\r
-function gloEntry(sName, sDef) \r
-{\r
- this.sName = sName;\r
- this.sDef = sDef;\r
- this.nNKOff = 0;\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
- if (parent && parent != this) {\r
- if (parent.putData) \r
- {\r
- parent.putData(gIEA);\r
- }\r
- }\r
-}\r
-\r
-window.onload = window_OnLoad;
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
-</head>\r
-<body>\r
-<script language="javascript" src="whgdata.js"></script>\r
-<script language="javascript">\r
-<!--\r
- aGE("Cell","Element of a mesh. Cells are determined by their connectivity. They can have 0,1,2 or 3 dimension.");\r
- aGE("Component","One integer or real value can correspond to each component of a field and to each entity of a mesh");\r
- 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.");\r
- 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).");\r
- 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.");\r
- aGE("Equivalence","Equivalence represents a list of correspondance 2 by 2 of the entities of the same dimension.");\r
- aGE("Face","Face of a volumetrical cell (triangle, quadrangle).");\r
- 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.");\r
- 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.");\r
- 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.");\r
- aGE("Group","Unordered set of entities of a mesh. One entity can belong to several groups.");\r
- 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).");\r
- aGE("Nodal connectivity","It is a description of an entity of the mesh by an ordered list of nodes constituting this entity.");\r
- 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.");\r
- aGE("Point","Geometrical entity determined by its coordinates in the space.");\r
- aGE("Reference connectivity","For each type of entity of a mesh, reference connectivity define the topology of an entity.");\r
- aGE("Result","List of fields referring to one mesh.");\r
- aGE("Study","Study represents a chain of sequences of calculations.");\r
-\r
-//-->\r
-</script>\r
-</body>\r
-</html>\r
+++ /dev/null
-<?xml version='1.0' encoding='ISO-8859-1' ?>\r
-<glossarydata>\r
- <entry name="Cell" value="Element of a mesh. Cells are determined by their connectivity. They can have 0,1,2 or 3 dimension." />\r
- <entry name="Component" value="One integer or real value can correspond to each component of a field and to each entity of a mesh" />\r
- <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." />\r
- <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)." />\r
- <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." />\r
- <entry name="Equivalence" value="Equivalence represents a list of correspondance 2 by 2 of the entities of the same dimension." />\r
- <entry name="Face" value="Face of a volumetrical cell (triangle, quadrangle)." />\r
- <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." />\r
- <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." />\r
- <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." />\r
- <entry name="Group" value="Unordered set of entities of a mesh. One entity can belong to several groups." />\r
- <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)." />\r
- <entry name="Nodal connectivity" value="It is a description of an entity of the mesh by an ordered list of nodes constituting this entity." />\r
- <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." />\r
- <entry name="Point" value="Geometrical entity determined by its coordinates in the space." />\r
- <entry name="Reference connectivity" value="For each type of entity of a mesh, reference connectivity define the topology of an entity." />\r
- <entry name="Result" value="List of fields referring to one mesh." />\r
- <entry name="Study" value="Study represents a chain of sequences of calculations." />\r
-\r
-</glossarydata>\r
+++ /dev/null
-<html>\r
-<head>\r
-<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
-</head>\r
-<body>\r
-<script language="javascript" src="whglo.js"></script>\r
-<script language="javascript">\r
-<!--\r
-iFM("Cell","Study","whgdata0.htm",18);\r
-\r
-//-->\r
-</script>\r
-</body>\r
-</html>
\ No newline at end of file
+++ /dev/null
-var gaFileMapping = new Array();\r
-function fileMapping(sBK, sEK, sFileName, nNum)\r
-{\r
- this.sBK = sBK;\r
- this.sEK = sEK;\r
- this.sFileName = sFileName;\r
- this.aKs = null;\r
- this.nNum = nNum;\r
- this.oUsedItems = null;\r
-}\r
-\r
-\r
-function iFM(sBK, sEK, sFileName, nNum)\r
-{\r
- var i = gaFileMapping.length;\r
- gaFileMapping[i] = new fileMapping(sBK, sEK, sFileName, nNum); \r
- if (i == 0) {\r
- gaFileMapping[i].nTotal = nNum;\r
- }\r
- else {\r
- gaFileMapping[i].nTotal = nNum + gaFileMapping[i - 1].nTotal;\r
- }\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
- if (parent && parent != this && parent.projReady)\r
- {\r
- parent.projReady(gaFileMapping);\r
- } \r
-}\r
-\r
-window.onload = window_OnLoad;\r
+++ /dev/null
-<?xml version='1.0' encoding='ISO-8859-1' ?>\r
-<glossary>\r
-<chunkinfo url="whgdata0.xml" first="Cell" last="Study" num="18" />\r
-\r
-</glossary>
\ No newline at end of file
+++ /dev/null
-// const strings\r
-var gIEA = new Array();\r
-function aIE()\r
-{\r
- var len = gIEA.length;\r
- gIEA[len] = new indexEntry(aIE.arguments);\r
-}\r
-\r
-function topic(sName, sURL)\r
-{\r
- this.sName = sName;\r
- this.sURL = sURL;\r
-}\r
-\r
-function indexEntry(fn_arguments) \r
-{\r
- if (fn_arguments.length && fn_arguments.length >= 3) \r
- {\r
- this.nType = fn_arguments[0];\r
- this.nPKOff = 0;\r
- this.nNKOff = fn_arguments[1];\r
- this.sName = fn_arguments[2];\r
- this.aTopics = null;\r
- var nLen = fn_arguments.length;\r
- if (Math.floor(nLen / 2) * 2 == nLen)\r
- {\r
- this.sTarget = fn_arguments[3];\r
- if (nLen > 5)\r
- {\r
- this.aTopics = new Array();\r
- for (var i = 0; i < (nLen - 5)/2; i++)\r
- {\r
- this.aTopics[i] = new topic(fn_arguments[i * 2 + 4], fn_arguments[i * 2 + 5]);\r
- }\r
- }\r
-\r
- }\r
- else \r
- {\r
- if (nLen > 4) \r
- {\r
- this.aTopics = new Array();\r
- for (var i = 0; i < (nLen - 4)/2; i++)\r
- {\r
- this.aTopics[i] = new topic(fn_arguments[i * 2 + 3], fn_arguments[i * 2 + 4]);\r
- }\r
- }\r
- }\r
- }\r
-}\r
-\r
-function getIndexTopicMappingList(nItemIndex)\r
-{\r
- var sTopics = "";\r
- if (gIEA.length > nItemIndex)\r
- {\r
- if (gIEA[nItemIndex].aTopics) \r
- {\r
- var i = 0;\r
- var nLen = gIEA[nItemIndex].aTopics.length;\r
- for (i = 0; i < nLen; i ++) \r
- {\r
- sTopics += "," + gIEA[nItemIndex].aTopics[i];\r
- }\r
- }\r
- }\r
- return sTopics; \r
-}\r
-\r
-function window_OnLoad()\r
-{\r
- if (parent && parent != this) {\r
- if (parent.putData) \r
- {\r
- for (var i = 0; i < gIEA.length; i ++ )\r
- {\r
- if (gIEA[i].nNKOff != 0 && i + gIEA[i].nNKOff + 1 < gIEA.length)\r
- {\r
- \r
- gIEA[i + gIEA[i].nNKOff + 1].nPKOff = gIEA[i].nNKOff;\r
- }\r
- }\r
- parent.putData(gIEA);\r
- }\r
- }\r
-}\r
-\r
-window.onload = window_OnLoad;
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
-</head>\r
-<body>\r
-<script language="javascript" src="whidx.js"></script>\r
-<script language="javascript">\r
-<!--\r
-\r
--->\r
-</script>\r
-</body>\r
-</html
\ No newline at end of file
+++ /dev/null
-var gaFileMapping = new Array();\r
-function fileMapping(sBK, sEK, sFileName, nNum)\r
-{\r
- this.sBK = sBK;\r
- this.sEK = sEK;\r
- this.sFileName = sFileName;\r
- this.aKs = null;\r
- this.nNum = nNum;\r
- this.oUsedItems = null;\r
-}\r
-\r
-\r
-function iFM(sBK, sEK, sFileName, nNum)\r
-{\r
- var i = gaFileMapping.length;\r
- gaFileMapping[i] = new fileMapping(sBK, sEK, sFileName, nNum); \r
- if (i == 0) {\r
- gaFileMapping[i].nTotal = nNum;\r
- }\r
- else {\r
- gaFileMapping[i].nTotal = nNum + gaFileMapping[i - 1].nTotal;\r
- }\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
- if (parent && parent != this && parent.projReady)\r
- {\r
- parent.projReady(gaFileMapping);\r
- } \r
-}\r
-\r
-window.onload = window_OnLoad;\r
+++ /dev/null
-<?xml version='1.0' encoding='ISO-8859-1' ?>\r
-<index>\r
-\r
-</index>\r
+++ /dev/null
-var gTEA = new Array();\r
-function aTE()\r
-{\r
- gTEA[gTEA.length] = new tocEntry(aTE.arguments);\r
-}\r
-\r
-function tocEntry(fn_arguments) \r
-{\r
- if (fn_arguments.length < 3) \r
- {\r
- alert ("data format wrong!!!");\r
- return;\r
- }\r
- \r
- this.nType = fn_arguments[0];\r
- this.nContents = fn_arguments[1];\r
- this.sItemName = fn_arguments[2];\r
- \r
- if (this.nType == 1 || this.nType == 2 || this.nType == 16)\r
- {\r
- if (fn_arguments.length > 3)\r
- {\r
- this.sItemURL = fn_arguments[3];\r
- if (fn_arguments.length > 4)\r
- {\r
- this.sTarget = fn_arguments[4];\r
- if (fn_arguments.length > 5)\r
- this.sIconRef = fn_arguments[5];\r
- }\r
- }\r
- }\r
- if (this.nType == 4 || this.nType == 8)\r
- {\r
- if (fn_arguments.length > 3)\r
- {\r
- this.sRefURL = fn_arguments[3];\r
- if (fn_arguments.length > 4)\r
- {\r
- this.sItemURL = fn_arguments[4];\r
- if (fn_arguments.length > 5)\r
- {\r
- this.sTarget = fn_arguments[5];\r
- if (fn_arguments.length > 6)\r
- this.sIconRef = fn_arguments[6];\r
- }\r
- }\r
- }\r
- }\r
-}\r
-\r
-\r
-function window_OnLoad()\r
-{\r
- if (parent && parent != this && parent.putData) {\r
- parent.putData(gTEA);\r
- }\r
-}\r
-window.onload = window_OnLoad;
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
-</head>\r
-<body>\r
-<script LANGUAGE="JavaScript" SRC="whtdata.js"></script>\r
-<script language="javascript">\r
-<!--\r
- aTE(1,33,"VISU module");\r
- aTE(2,0,"Introduction to VISU","files/introduction_to_visu.htm");\r
- aTE(2,0,"Getting started","files/getting_started.htm");\r
- aTE(2,0,"Running VISU","files/running_visu.htm");\r
- aTE(2,0,"Importing MED files","files/importing_med_objects.htm");\r
- aTE(2,0,"About the structure of MED objects","files/about_structure_of_med_object.htm");\r
- aTE(1,19,"3D presentations");\r
- aTE(1,1,"Presentations of submeshes");\r
- aTE(2,0,"Creating presentations","files/creating_presentations.htm");\r
- aTE(1,11,"Field presentations");\r
- aTE(2,0,"Creating field presentations","files/creating_field_presentations.htm");\r
- aTE(2,0,"Scalar Map presentation","files/scalar_map_presentation.htm");\r
- aTE(2,0,"Iso Surfaces presentation","files/iso_surfaces_presentation.htm");\r
- aTE(2,0,"Cut Planes presentation","files/cut_lines_resentation.htm");\r
- aTE(2,0,"Cut Lines presentation","files/cut_lines_presentation.htm");\r
- aTE(2,0,"Deformed Shape presentation","files/deformed_shape_presentation.htm");\r
- aTE(2,0,"Vectors presentation","files/vectors_presentation.htm");\r
- aTE(2,0,"Stream Lines presentation","files/stream_lines_presentation.htm");\r
- aTE(2,0,"Editing field presentations","files/editing_field_presentations.htm");\r
- aTE(2,0,"Sweeping","files/sweeping.htm");\r
- aTE(2,0,"Animating presentations","files/animating_presentations.htm");\r
- aTE(2,0,"Setting presentation view parameters ","files/changing_visualization_parameters_of_the_presenetation.htm");\r
- aTE(2,0,"Operations with presentations","files/displaying_hiding_presentations.htm");\r
- aTE(2,0,"Renaming presentations","files/renaming_presentations.htm");\r
- aTE(2,0,"Scaling presentations","files/scaling_presentations.htm");\r
- aTE(2,0,"Getting elements attributes","files/getting_elements_attributes.htm");\r
- aTE(1,3,"Table presentations");\r
- aTE(2,0,"About tables","files/about_tables.htm");\r
- aTE(2,0,"Importing/exporting tables","files/importing_tables.htm");\r
- aTE(2,0,"Displaying tables","files/displaying_tables.htm");\r
- aTE(1,3,"XY plots");\r
- aTE(2,0,"Creating curves","files/creating_curves.htm");\r
- aTE(2,0,"Creating XY plots","files/creating_xy_plot.htm");\r
- aTE(2,0,"Setting properties of XY plots","files/setting_properties_of_xy_plots.htm");\r
-\r
-//-->\r
-</script>\r
-</body>\r
-</html>\r
+++ /dev/null
-<?xml version='1.0' encoding='ISO-8859-1' ?>\r
-<tocdata>\r
-<book name="VISU module" >\r
- <item name="Introduction to VISU" url="files/introduction_to_visu.htm" />\r
- <item name="Getting started" url="files/getting_started.htm" />\r
- <item name="Running VISU" url="files/running_visu.htm" />\r
- <item name="Importing MED files" url="files/importing_med_objects.htm" />\r
- <item name="About the structure of MED objects" url="files/about_structure_of_med_object.htm" />\r
- <book name="3D presentations" >\r
- <book name="Presentations of submeshes" >\r
- <item name="Creating presentations" url="files/creating_presentations.htm" />\r
- </book>\r
- <book name="Field presentations" >\r
- <item name="Creating field presentations" url="files/creating_field_presentations.htm" />\r
- <item name="Scalar Map presentation" url="files/scalar_map_presentation.htm" />\r
- <item name="Iso Surfaces presentation" url="files/iso_surfaces_presentation.htm" />\r
- <item name="Cut Planes presentation" url="files/cut_lines_resentation.htm" />\r
- <item name="Cut Lines presentation" url="files/cut_lines_presentation.htm" />\r
- <item name="Deformed Shape presentation" url="files/deformed_shape_presentation.htm" />\r
- <item name="Vectors presentation" url="files/vectors_presentation.htm" />\r
- <item name="Stream Lines presentation" url="files/stream_lines_presentation.htm" />\r
- <item name="Editing field presentations" url="files/editing_field_presentations.htm" />\r
- <item name="Sweeping" url="files/sweeping.htm" />\r
- <item name="Animating presentations" url="files/animating_presentations.htm" />\r
- </book>\r
- <item name="Setting presentation view parameters " url="files/changing_visualization_parameters_of_the_presenetation.htm" />\r
- <item name="Operations with presentations" url="files/displaying_hiding_presentations.htm" />\r
- <item name="Renaming presentations" url="files/renaming_presentations.htm" />\r
- <item name="Scaling presentations" url="files/scaling_presentations.htm" />\r
- <item name="Getting elements attributes" url="files/getting_elements_attributes.htm" />\r
- </book>\r
- <book name="Table presentations" >\r
- <item name="About tables" url="files/about_tables.htm" />\r
- <item name="Importing/exporting tables" url="files/importing_tables.htm" />\r
- <item name="Displaying tables" url="files/displaying_tables.htm" />\r
- </book>\r
- <book name="XY plots" >\r
- <item name="Creating curves" url="files/creating_curves.htm" />\r
- <item name="Creating XY plots" url="files/creating_xy_plot.htm" />\r
- <item name="Setting properties of XY plots" url="files/setting_properties_of_xy_plots.htm" />\r
- </book>\r
-</book>\r
-\r
-</tocdata>\r
+++ /dev/null
-<html>\r
-<head>\r
-<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
-</head>\r
-<body>\r
-<script LANGUAGE="JavaScript" SRC="whtoc.js"></script>\r
-<script language="javascript">\r
-<!--\r
- setRoot("whtdata0.htm");\r
-\r
-//-->\r
-</script>\r
-</body>\r
-</html>
\ No newline at end of file
+++ /dev/null
-// const strings\r
-var gaProj = new Array();\r
-var gsRoot = "";\r
-\r
-function setRoot(sRoot)\r
-{\r
- gsRoot = sRoot\r
-}\r
-\r
-function aPE(sProjPath, sRootPath)\r
-{\r
- gaProj[gaProj.length] = new tocProjEntry(sProjPath, sRootPath);\r
-}\r
-\r
-function tocProjEntry(sProjPath, sRootPath) \r
-{\r
- this.sPPath = sProjPath;\r
- this.sRPath = sRootPath;\r
-}\r
-\r
-\r
-function window_OnLoad()\r
-{\r
- if (parent && parent != this && parent.projReady) {\r
- parent.projReady(gsRoot, gaProj);\r
- }\r
-}\r
-window.onload = window_OnLoad;
\ No newline at end of file
+++ /dev/null
-<?xml version='1.0' encoding='ISO-8859-1' ?>\r
-<toc root="whtdata0.xml">\r
-\r
-</toc>\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Result</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmozemu.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whlang.js"></script>\r
-<script language="javascript1.2" src="whfhost.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-if(window.gbWhFHost)\r
-{\r
- setBackgroundcolor("White"); \r
- \r
- setFont("Normal", "Tahoma","8pt","Black","Normal","Normal","none");\r
- setFont("Error", "Tahoma","8pt","Black","Normal","Normal","none");\r
- setFont("Hover", "Tahoma","8pt","Navy","Normal","Normal","underline");\r
- setActiveBgColor("Silver");\r
- \r
- \r
- FtsWriteClassStyle();\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body topmargin="2" leftmargin="2" marginwidth="0" marginheight="0" bgproperties="fixed" scroll="auto" bgcolor="white">\r
-</body>\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Frame</TITLE>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-</head>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script LANGUAGE="javascript1.2">\r
-<!--\r
-var gbIndexLayerInit = false;\r
-var strWrite="";\r
-if (window.gbWhVer&&window.gbWhProxy&&window.gbWhMsg)\r
-{\r
- if (gbMac)\r
- strWrite="<FRAMESET ROWS='45,100%' framespacing=0 frameborder=0>";\r
- else\r
- strWrite="<FRAMESET ROWS='60,100%' framespacing=0 frameborder=0>";\r
- strWrite +="<FRAME SRC='whfform.htm' title='search form frame' name='ftsform' noresize='yes' scrolling='no'>";\r
- strWrite +="<FRAME SRC='whfbody.htm' title='search result frame' name='ftsbody' scrolling='yes'>";\r
- strWrite +="</FRAMESET>";\r
- document.write(strWrite);\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-</html>\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Form</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-</head>\r
-<style>\r
-<!--\r
-body {margin:0;}\r
--->\r
-</style>\r
-<body bgcolor="#c0c0c0">\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whform.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-var gstrInput = "";\r
-function ftsLookup(bCR)\r
-{\r
- if (bCR)\r
- {\r
- var strInput = document.FtsInputForm.keywordField.value.toUpperCase();\r
- if (strInput != "") {\r
- var oMsg = new whMessage(WH_MSG_SEARCHFTSKEY, this, 1, strInput);\r
- if (!SendMessage(oMsg))\r
- {\r
- gstrInput = strInput;\r
- }\r
- else\r
- gstrInput = "";\r
- }\r
-\r
- if (gbMac) {\r
- document.FtsInputForm.keywordField.focus();\r
- }\r
- }\r
- return;\r
-}\r
-\r
-function beforeInit()\r
-{\r
- var oParam = new Object();\r
- oParam.sValue = "";\r
- var oMsg = new whMessage(WH_MSG_GETSEARCHS, this, 1, oParam);\r
- if (SendMessage(oMsg))\r
- {\r
- if (oParam.sValue != "" && oParam.sValue != "- Search -")\r
- {\r
- document.FtsInputForm.keywordField.value = oParam.sValue;\r
- gfunLookUp(true);\r
- }\r
- }\r
- init(); \r
-}\r
-\r
-function window_unload()\r
-{\r
- UnRegisterListener2(this, WH_MSG_SHOWTOC);\r
- UnRegisterListener2(this, WH_MSG_SHOWIDX);\r
- UnRegisterListener2(this, WH_MSG_SHOWFTS);\r
- UnRegisterListener2(this, WH_MSG_SHOWGLO);\r
- UnRegisterListener2(this, WH_MSG_SEARCHTHIS);\r
- UnRegisterListener2(this, WH_MSG_BACKUPSEARCH);\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
- if (oMsg.nMessageId == WH_MSG_SHOWFTS)\r
- {\r
- document.FtsInputForm.keywordField.focus();\r
- }\r
- else if (oMsg.nMessageId == WH_MSG_SHOWIDX ||\r
- oMsg.nMessageId == WH_MSG_SHOWTOC || \r
- oMsg.nMessageId == WH_MSG_SHOWGLO)\r
- {\r
- document.FtsInputForm.keywordField.blur();\r
- }\r
- else if (oMsg.nMessageId == WH_MSG_SEARCHTHIS)\r
- {\r
- if (oMsg.oParam != "- Search -")\r
- {\r
- document.FtsInputForm.keywordField.value = oMsg.oParam;\r
- gfunLookUp(true);\r
- }\r
- }\r
- else if (oMsg.nMessageId == WH_MSG_BACKUPSEARCH)\r
- {\r
- if (gstrInput)\r
- {\r
- oMsg.oParam = gstrInput;\r
- gstrInput = "";\r
- return false;\r
- }\r
- }\r
- return true;\r
-}\r
-\r
-if (window.gbWhForm)\r
-{\r
- RegisterListener2(this, WH_MSG_SHOWTOC);\r
- RegisterListener2(this, WH_MSG_SHOWIDX);\r
- RegisterListener2(this, WH_MSG_SHOWFTS);\r
- RegisterListener2(this, WH_MSG_SHOWGLO);\r
- RegisterListener2(this, WH_MSG_SEARCHTHIS);\r
- RegisterListener2(this, WH_MSG_BACKUPSEARCH);\r
- gfunLookUp = ftsLookup;\r
- gfunInit = null;\r
- gstrFormName = "FtsInputForm"\r
- gsTitle = "Type in the word(s) to search for:";\r
- gsTitle = "Type in the word(s) to search for:";\r
- setGoImage1("wht_go.gif");\r
- setBackgroundcolor("White");\r
- \r
- setBtnType("image");\r
- \r
- \r
- \r
- setGoText("Go");\r
- setFont("Title", "Tahoma","8pt","Navy","Normal","Normal","none");\r
- \r
- \r
- document.write(getFormHTML());\r
- writeFormStyle();\r
- window.onload = beforeInit;\r
- window.onunload=window_unload;\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-</body>\r
-</html>
\ No newline at end of file
+++ /dev/null
-var gsSK2=null;\r
-var gsSK=null;\r
-var gsFtsBreakChars="\t\r\n\"\\ .,!@#$%^&*()~'`:;<>?/{}[]|+-=\x85\x92\x93\x94\x95\x96\x97\x99\xA9\xAE\xB7";\r
-var gnCLF=0;\r
-var gsHelpCannotSearch="Cannot search for that phrase.";\r
-var gsNoTopics="No Topics Found.";\r
-var gsLoadingDivID="LoadingDiv";\r
-var gsLoadingMsg="Loading data, please wait...";\r
-var gsSearchMsg="Searching...";\r
-var gsResultDivID="ResultDiv";\r
-var gaaFCD=new Array();\r
-var gaaFTCD=new Array();\r
-var goCF=null;\r
-var goCTF=null;\r
-var gaTI=null;\r
-var gnCurrentOp=0;\r
-var gbNot=false;\r
-var gbReady=false;\r
-var gnLoadFts=1;\r
-var gnCacheLimits=5;\r
-var gaCCD=new Array();\r
-var gbXML=false;\r
-var gaData=new Array();\r
-var gsBgColor="#ffffff";\r
-var gsBgImage="";\r
-var gsMargin="0pt";\r
-var gsIndent="0pt";\r
-var gsCheckKey=null;\r
-var gnIndexNum=0;\r
-var gaFtsContentsCon=null;\r
-var gaTopicCheckInfo=null;\r
-var gnTopicCheck=0;\r
-var goFont=null;\r
-var goErrFont=null;\r
-var goHoverFont=null;\r
-var gsABgColor="#cccccc";\r
-var gbWhFHost=false;\r
-\r
-function setBackground(sBgImage)\r
-{\r
- gsBgImage=sBgImage;\r
-}\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
- gsBgColor=sBgColor;\r
-}\r
-\r
-function setFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
-{\r
- var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
- if(sType=="Normal")\r
- goFont=vFont;\r
- else if(sType=="Error")\r
- goErrFont=vFont;\r
- else if(sType=="Hover")\r
- goHoverFont=vFont;\r
-}\r
-\r
-function setActiveBgColor(sBgColor)\r
-{\r
- gsABgColor=sBgColor;\r
-}\r
-\r
-function setMargin(sMargin)\r
-{\r
- gsMargin=sMargin;\r
-}\r
-\r
-function setIndent(sIndent)\r
-{\r
- gsIndent=sIndent;\r
-}\r
-\r
-function updateCache(oCF)\r
-{\r
- var len=gaCCD.length;\r
- if(len<gnCacheLimits*gnCLF)\r
- gaCCD[len]=oCF;\r
- else{\r
- gaCCD[0].aTopics=null;\r
- gaCCD[0].aFtsKeys=null;\r
- removeItemFromArray(gaCCD,0);\r
- gaCCD[len-1]=oCF;\r
- }\r
-}\r
-\r
-function addFtsInfo(sPPath,sDPath,sFtsFile)\r
-{\r
- gaData[gaData.length]=new ftsInfo(sPPath,sDPath,sFtsFile);\r
-}\r
-\r
-function putDataXML(xmlDoc,sDocPath)\r
-{\r
- if(gnLoadFts==1)\r
- {\r
- var node=xmlDoc.lastChild;\r
- if(node)\r
- {\r
- var oChild=node.firstChild;\r
- var aFCD=new Array();\r
- var aFTCD=new Array();\r
- while(oChild)\r
- {\r
- if(oChild.nodeName=="chunkinfo")\r
- {\r
- var sURL=oChild.getAttribute("url");\r
- var sFirst=oChild.getAttribute("first");\r
- var sLast=oChild.getAttribute("last");\r
- if(sURL&&sFirst&&sLast)\r
- {\r
- item=new Object();\r
- item.sStartKey=sFirst;\r
- item.sEndKey=sLast;\r
- item.sFileName=sURL;\r
- aFCD[aFCD.length]=item;\r
- }\r
- }\r
- else if(oChild.nodeName=="tchunkinfo")\r
- {\r
- var sURL=oChild.getAttribute("url");\r
- var nB=parseInt(oChild.getAttribute("first"));\r
- var nE=parseInt(oChild.getAttribute("last"));\r
- if(sURL&&sFirst&&sLast)\r
- {\r
- item=new Object();\r
- item.nBegin=nB;\r
- item.nEnd=nE;\r
- item.sFileName=sURL;\r
- aFTCD[aFTCD.length]=item;\r
- }\r
-\r
- }\r
- oChild=oChild.nextSibling;\r
- }\r
- ftsReady(aFCD,aFTCD);\r
- }\r
- }\r
- else if(gnLoadFts==3)\r
- {\r
- var node=xmlDoc.lastChild;\r
- if(node)\r
- {\r
- var oChild=node.firstChild;\r
- var aTopics=new Array();\r
- while(oChild)\r
- {\r
- if(oChild.nodeName=="topic")\r
- {\r
- var name=oChild.getAttribute("name");\r
- var sURL=oChild.getAttribute("url");\r
- if(name&&name.length>0&&sURL)\r
- {\r
- var topic=new Object();\r
- topic.sTopicTitle=name;\r
- topic.sTopicURL=sURL;\r
- aTopics[aTopics.length]=topic;\r
- }\r
- }\r
- oChild=oChild.nextSibling;\r
- }\r
- putFtsTData(aTopics);\r
- }\r
- }\r
- else if(gnLoadFts==2)\r
- {\r
- var node=xmlDoc.lastChild;\r
- if(node)\r
- {\r
- var oChild=node.firstChild;\r
- var aFtsContents=new Array();\r
- while(oChild)\r
- {\r
- if(oChild.nodeName=="key")\r
- {\r
- var name=oChild.getAttribute("name");\r
- if(name&&name.length>0)\r
- {\r
- var item=new Object();\r
- item.sItemName=name;\r
- aFtsContents[aFtsContents.length]=item;\r
- var oChildChild=oChild.firstChild;\r
- while(oChildChild)\r
- {\r
- if(oChildChild.nodeName=="#text")\r
- {\r
- var sIDs=oChildChild.nodeValue;\r
- if(sIDs)\r
- {\r
- var nBPos=0;\r
- do\r
- {\r
- var nPos=sIDs.indexOf(",",nBPos);\r
- var sID=null;\r
- if(nPos!=-1)\r
- sID=sIDs.substring(nBPos,nPos);\r
- else\r
- sID=sIDs.substring(nBPos);\r
-\r
- if(sID)\r
- {\r
- var id=parseInt(sID);\r
- if(!isNaN(id))\r
- {\r
- if(!item.aTopics)\r
- item.aTopics=new Array();\r
- item.aTopics[item.aTopics.length]=id;\r
- }\r
- }\r
- nBPos=nPos+1;\r
- }while(nBPos!=0&&nBPos<sIDs.length);\r
- }\r
- }\r
- oChildChild=oChildChild.nextSibling;\r
- }\r
- }\r
- }\r
- oChild=oChild.nextSibling;\r
- }\r
- putFtsWData(aFtsContents);\r
- }\r
- }\r
-}\r
-\r
-function ftsInfo(sPPath,sDPath,sFtsFile)\r
-{\r
- this.sPPath=sPPath;\r
- this.sDPath=sDPath;\r
- this.sFtsFile=sFtsFile;\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
- if(gsBgImage&&gsBgImage.length>0)\r
- {\r
- document.body.background=gsBgImage;\r
- }\r
- if(gsBgColor&&gsBgColor.length>0)\r
- {\r
- document.body.bgColor=gsBgColor;\r
- }\r
- writeResultDiv();\r
- loadFts();\r
- var oMsg=new whMessage(WH_MSG_SHOWFTS,this,1,null)\r
- SendMessage(oMsg);\r
-}\r
-\r
-function writeResultDiv()\r
-{\r
- var sHTML="<div id=\""+gsResultDivID+"\" style=\"POSITION:absolute;\"></div>";\r
- document.body.insertAdjacentHTML("beforeEnd",sHTML);\r
-}\r
-\r
-function loadFts()\r
-{\r
- if(!gbReady)\r
- {\r
- var oResMsg=new whMessage(WH_MSG_GETPROJINFO,this,1,null);\r
- if(SendMessage(oResMsg)&&oResMsg.oParam)\r
- {\r
- gbReady=true;\r
- var oProj=oResMsg.oParam;\r
- var aProj=oProj.aProj;\r
- gbXML=oProj.bXML;\r
- if(aProj.length>0)\r
- {\r
- var sLangId=aProj[0].sLangId;\r
- for(var i=0;i<aProj.length;i++)\r
- {\r
- if(aProj[i].sFts!=null&&aProj[i].sFts!=""&&aProj[i].sLangId==sLangId)\r
- {\r
- addFtsInfo(aProj[i].sPPath,aProj[i].sDPath,aProj[i].sFts);\r
- }\r
- }\r
- }\r
- loadFD();\r
-\r
- } \r
- }\r
-}\r
-\r
-function loadFD()\r
-{\r
- if(gnCLF<gaData.length)\r
- {\r
- gnLoadFts=1;\r
- loadData2(gaData[gnCLF].sPPath+gaData[gnCLF].sDPath+gaData[gnCLF].sFtsFile);\r
- }\r
- else \r
- {\r
- var oMsg = new whMessage(WH_MSG_BACKUPSEARCH, this, 1, null);\r
- if (SendMessage(oMsg))\r
- {\r
- if (oMsg.oParam)\r
- {\r
- gsSK=oMsg.oParam.toLowerCase();\r
- findFTSKey();\r
- }\r
- }\r
- RegisterListener2(this, WH_MSG_SEARCHFTSKEY);\r
- }\r
-}\r
-\r
-function loadData2(sFile)\r
-{\r
- if(gbXML)\r
- loadDataXML(sFile);\r
- else\r
- loadData(sFile);\r
-}\r
-\r
-function findFTSKey()\r
-{\r
- gaTI=new Array();\r
- gnCurrentOp=0;\r
- gbNot=false;\r
- displayMsg(gsSearchMsg);\r
- if(gsSK!="")\r
- findOneKey();\r
-}\r
-\r
-function findOneKey()\r
-{\r
- if(gsSK && gsSK!="")\r
- {\r
- var sInput=gsSK;\r
- var sCW="";\r
- var nS=-1;\r
- var nSep=-1;\r
- for(var nChar=0;nChar<gsFtsBreakChars.length;nChar++){\r
- var nFound=sInput.indexOf(gsFtsBreakChars.charAt(nChar));\r
- if((nFound!=-1)&&((nS==-1)||(nFound<nS))){\r
- nS=nFound;\r
- nSep=nChar;\r
- }\r
- }\r
- if(nS==-1){\r
- sCW=sInput;\r
- sInput="";\r
- }else{\r
- sCW=sInput.substring(0,nS);\r
- sInput=sInput.substring(nS+1);\r
- }\r
-\r
- gsSK=sInput;\r
- \r
- if((sCW=="or")||((nSep>=0)&&(gsFtsBreakChars.charAt(nSep)=="|"))){\r
- gnCurrentOp=0;\r
- gbNot=false;\r
- }else if((sCW=="and")||((nSep>=0)&&(gsFtsBreakChars.charAt(nSep)=="&"))){\r
- gnCurrentOp=1;\r
- gbNot=false;\r
- }else if((sCW=="not")||\r
- ((nSep>=0)&&(gsFtsBreakChars.charAt(nSep)=="~"))){\r
- gbNot=!gbNot;\r
- }else if(sCW!=""&&!IsStopWord(sCW,gaFtsStop)){\r
- var sCurrentStem=GetStem(sCW);\r
- gsCW=sCurrentStem;\r
- ftsFindKeyword();\r
- return;\r
- }\r
- findOneKey();\r
- return;\r
- }\r
- else{\r
- displayTopics();\r
- checkAgain();\r
- }\r
-}\r
-\r
-function checkAgain()\r
-{\r
- gsSK=gsSK2;\r
- gsSK2=null;\r
- if(gsSK!=null)\r
- setTimeout("findFTSKey();",1);\r
-}\r
-\r
-function displayTopics()\r
-{\r
- var sHTML="";\r
- var sLine="";\r
- for(var i=0;i<gaTI.length;i++){\r
- sLine+="<dt><nobr><a href='"+_textToHtml(gaTI[i].sTopicURL)+"'>"+_textToHtml(gaTI[i].sTopicTitle)+"</a></nobr></dt>";\r
- if(i>>4<<4==i)\r
- {\r
- sHTML+=sLine;\r
- sLine="";\r
- }\r
- }\r
- if(sLine.length>0)\r
- sHTML+=sLine;\r
-\r
- if(sHTML.length==0)\r
- sHTML="<P>"+gsNoTopics+"</P>"\r
- else\r
- sHTML="<dl>"+sHTML+"</dl>";\r
-\r
- var resultDiv=getElement(gsResultDivID);\r
- if(resultDiv)\r
- resultDiv.innerHTML=sHTML;\r
-}\r
-\r
-function displayMsg(sErrorMsg)\r
-{\r
- var sHTML="<P>"+sErrorMsg+"</P>";\r
-\r
- var resultDiv=getElement(gsResultDivID);\r
- if(resultDiv)\r
- resultDiv.innerHTML=sHTML;\r
-}\r
-\r
-function ftsFindKeyword()\r
-{\r
- var sKey=gsCW;\r
- var bNeedLoad=false;\r
- var aFtsContentsCon=null;\r
- var s=0;\r
- if(sKey==null) return;\r
- if(!gsCheckKey||sKey!=gsCheckKey||gnIndexNum==0)\r
- {\r
- aFtsContentsCon=new Array();\r
- gnCheck=0;\r
- gsCheckKey=sKey;\r
- gnTopicCheck=0;\r
- gaTopicCheckInfo=null;\r
- }\r
- else{\r
- s=gnIndexNum;\r
- aFtsContentsCon=gaFtsContentsCon;\r
- }\r
- for(var i=gnCheck;i<gaaFCD.length;i++)\r
- {\r
- var oCF=getChunkedFts(i,sKey);\r
- if(oCF)\r
- {\r
- if(!oCF.aFtsKeys&&oCF.sFileName!=null)\r
- {\r
- bNeedLoad=true;\r
- oCF.nProjId=i;\r
- goCF=oCF;\r
- gnIndexNum=s;\r
- gnCheck=i;\r
- gaFtsContentsCon=aFtsContentsCon;\r
- gnLoadFts=2;\r
- beginLoading();\r
- loadData2(gaData[i].sPPath+gaData[i].sDPath+oCF.sFileName);\r
- break;\r
- }\r
- else{\r
- aFtsContentsCon[s++]=oCF;\r
- }\r
- }\r
- }\r
- if(!bNeedLoad)\r
- {\r
- var aTI=gaTopicCheckInfo;\r
- for(var m=gnTopicCheck;m<aFtsContentsCon.length;m++)\r
- {\r
- var aTIPart=getTopics(aFtsContentsCon[m],sKey);\r
- if(aTIPart==null)\r
- {\r
- gnCheck=gaaFCD.length;\r
- gnTopicCheck=m;\r
- gaTopicCheckInfo=aTI;\r
- gaFtsContentsCon=aFtsContentsCon;\r
- return;\r
- }\r
- if(m==0)\r
- aTI=aTIPart;\r
- else\r
- aTI=mergeTopics(aTI,aTIPart);\r
- }\r
- if(mergewithPreviousResult(aTI))\r
- findOneKey();\r
- else\r
- checkAgain();\r
- }\r
-}\r
-\r
-function mergewithPreviousResult(aTI)\r
-{\r
- if(aTI!=null&&aTI.length!=0)\r
- {\r
- var nNumTopics=aTI.length;\r
- if(gnCurrentOp==0){\r
- if(gbNot){\r
- displayMsg(gsHelpCannotSearch);\r
- return false;\r
- }else{\r
- var aLS,aSS;\r
- if(gaTI.length>=aTI.length)\r
- {\r
- aLS=gaTI;\r
- aSS=aTI;\r
- }\r
- else\r
- {\r
- aLS=aTI;\r
- aSS=gaTI;\r
- }\r
- var s=0;\r
- for(var i=0;i<aSS.length;i++)\r
- {\r
- var bAlreadyThere=false;\r
- for(var j=s;j<aLS.length;j++)\r
- {\r
- if(aSS[i].equalTo(aLS[j]))\r
- {\r
- bAlreadyThere=true;\r
- s=j;\r
- break;\r
- }\r
- }\r
- if(!bAlreadyThere)\r
- {\r
- insertTopic(aLS,aSS[i]);\r
- }\r
- }\r
- gaTI=aLS;\r
- }\r
- }else if(gnCurrentOp==1){\r
- if(gbNot){\r
- var s=0;\r
- for(var i=0;i<aTI.length;i++)\r
- {\r
- for(var j=s;j<gaTI.length;j++)\r
- {\r
- if(aTI[i].equalTo(gaTI[j]))\r
- {\r
- removeItemFromArray(gaTI,j);\r
- s=j;\r
- break;\r
- }\r
- }\r
- }\r
- }else{\r
- var s=0;\r
- for(var i=0;i<gaTI.length;i++)\r
- {\r
- var bFound=false;\r
- for(var j=s;j<aTI.length;j++)\r
- {\r
- if(gaTI[i].equalTo(aTI[j]))\r
- {\r
- bFound=true;\r
- s=j;\r
- }\r
- }\r
- if(!bFound)\r
- {\r
- removeItemFromArray(gaTI,i);\r
- i--;\r
- }\r
- } \r
- }\r
- }\r
- }else{\r
- if((gnCurrentOp==1)&&(!gbNot)){\r
- gaTI.length=0;\r
- }else if((gnCurrentOp==0)&&(gbNot)){\r
- displayMsg(gsHelpCannotSearch);\r
- return false;\r
- }\r
- }\r
- return true;\r
-}\r
-\r
-function insertTopic(aTI,oTI)\r
-{\r
- var nB=0;\r
- var nE=aTI.length-1;\r
- if(nE>=0)\r
- {\r
- var nM;\r
- var bFound=false;\r
- do{\r
- nM=(nB+nE)>>1;\r
- if(compare(aTI[nM].sTopicTitle,oTI.sTopicTitle)>0)\r
- nE=nM-1;\r
- else if(compare(aTI[nM].sTopicTitle,oTI.sTopicTitle)<0)\r
- nB=nM+1;\r
- else\r
- {\r
- bFound=true;\r
- break;\r
- }\r
- }while(nB<=nE);\r
- if(bFound)\r
- insertItemIntoArray(aTI,nM,oTI);\r
- else\r
- {\r
- if(compare(aTI[nM].sTopicTitle,oTI.sTopicTitle)<0)\r
- insertItemIntoArray(aTI,nM+1,oTI);\r
- else\r
- insertItemIntoArray(aTI,nM,oTI);\r
- }\r
- }\r
- else\r
- aTI[0]=oTI;\r
-}\r
-\r
-function mergeTopics(aTI1,aTI2)\r
-{\r
- var i1=0;\r
- var i2=0;\r
- var len1=aTI1.length;\r
- var len2=aTI2.length;\r
- var aTopicNew=new Array();\r
- var i=0;\r
- while(i1<len1||i2<len2)\r
- {\r
- if(i1<len1&&i2<len2)\r
- {\r
- if(compare(aTI1[i1].sTopicTitle,aTI2[i2].sTopicTitle)<0)\r
- aTopicNew[i++]=aTI1[i1++];\r
- else\r
- aTopicNew[i++]=aTI2[i2++];\r
- }\r
- else if(i1<len1)\r
- aTopicNew[i++]=aTI1[i1++];\r
- else if(i2<len2)\r
- aTopicNew[i++]=aTI2[i2++];\r
- }\r
- return aTopicNew;\r
-}\r
-\r
-function getTopics(oCF,sKey)\r
-{\r
- var aTIPart=new Array();\r
- if(oCF&&oCF.aFtsKeys)\r
- {\r
- var keys=oCF.aFtsKeys;\r
- var nB=0;\r
- var nE=keys.length-1;\r
- var nM=-1;\r
- var bFound=false;\r
- do{\r
- nM=(nB+nE)>>1;\r
- if(compare(keys[nM].sItemName,sKey)>0)\r
- nE=nM-1;\r
- else if(compare(keys[nM].sItemName,sKey)<0)\r
- nB=nM+1;\r
- else{\r
- bFound=true;\r
- break;\r
- }\r
- }while(nB<=nE);\r
- if(bFound)\r
- {\r
- if(keys[nM].aTopics)\r
- {\r
- for(var i=0;i<keys[nM].aTopics.length;i++)\r
- {\r
- var oTC=getTopicChunk(gaaFTCD[oCF.nProjId],keys[nM].aTopics[i]);\r
- if(oTC.aTopics)\r
- {\r
- aTIPart[aTIPart.length]=\r
- new topicInfo(oTC.aTopics[keys[nM].aTopics[i]-oTC.nBegin].sTopicTitle,\r
- gaData[oCF.nProjId].sPPath+oTC.aTopics[keys[nM].aTopics[i]-oTC.nBegin].sTopicURL);\r
- }\r
- else{\r
- goCTF=oTC;\r
- gnLoadFts=3;\r
- beginLoading();\r
- loadData2(gaData[oCF.nProjId].sPPath+gaData[oCF.nProjId].sDPath+oTC.sFileName);\r
- return null;\r
- }\r
- }\r
- }\r
- }\r
- }\r
- return aTIPart;\r
-}\r
-\r
-function getTopicChunk(aFTCD,nTopicId)\r
-{\r
- if(aFTCD&&aFTCD.length)\r
- {\r
- var nB=0;\r
- var nE=aFTCD.length-1;\r
- var nM=-1;\r
- var bFound=false;\r
- do{\r
- nM=(nB+nE)>>1;\r
- if(aFTCD[nM].nBegin>nTopicId)\r
- nE=nM-1;\r
- else if(aFTCD[nM].nEnd<nTopicId)\r
- nB=nM+1;\r
- else{\r
- bFound=true;\r
- break;\r
- }\r
- }while(nB<=nE);\r
- if(bFound)\r
- return aFTCD[nM];\r
- }\r
- return null;\r
-}\r
-\r
-function endLoading()\r
-{\r
- var oDiv=getElement(gsLoadingDivID);\r
- if(oDiv)\r
- oDiv.style.visibility="hidden";\r
-}\r
-\r
-function beginLoading()\r
-{\r
- var oDiv=getElement(gsLoadingDivID);\r
- if(!oDiv)\r
- {\r
- document.body.insertAdjacentHTML("afterBegin",writeLoadingDiv());\r
- oDiv=getElement(gsLoadingDivID);\r
- }\r
- \r
- if(oDiv)\r
- {\r
- oDiv.style.top=document.body.scrollTop;\r
- oDiv.style.visibility="visible";\r
- }\r
-}\r
-\r
-function writeLoadingDiv(nIIdx)\r
-{\r
- return "<div id=\""+gsLoadingDivID+"\" style=\"position:absolute;top:0;left:0;z-index:600;visibility:hidden;padding-left:4px;background-color:ivory;border-width:1;border-style:solid;border-color:black;width:150px;\">"+gsLoadingMsg+"</div>";\r
-}\r
-\r
-function topicInfo(sTopicTitle,sTopicURL)\r
-{\r
- this.sTopicTitle=sTopicTitle;\r
- this.sTopicURL=sTopicURL;\r
- this.equalTo=function(oTI)\r
- {\r
- return ((this.sTopicTitle==oTI.sTopicTitle)&&\r
- (this.sTopicURL==oTI.sTopicURL));\r
- }\r
-}\r
-\r
-function getChunkedFts(nIndex,sKey)\r
-{\r
- var oCF=null;\r
- if(nIndex<gaaFCD.length)\r
- {\r
- var len=gaaFCD[nIndex].length;\r
- if(len>0)\r
- {\r
- var nB=0;\r
- var nE=len-1;\r
- var bFound=false;\r
- do{\r
- var nM=(nB+nE)>>1;\r
- if(compare(sKey,gaaFCD[nIndex][nM].sEndKey)>0)\r
- {\r
- nB=nM+1;\r
- }\r
- else if(compare(sKey,gaaFCD[nIndex][nM].sStartKey)<0)\r
- {\r
- nE=nM-1;\r
- }\r
- else{\r
- bFound=true;\r
- break;\r
- }\r
- }while(nE>=nB);\r
- if(bFound)\r
- oCF=gaaFCD[nIndex][nM];\r
- }\r
- }\r
- return oCF;\r
-}\r
-\r
-function ftsReady(aFCD,aFTCD)\r
-{\r
- endLoading();\r
- gaaFTCD[gnCLF]=aFTCD;\r
- gaaFCD[gnCLF++]=aFCD;\r
- setTimeout("loadFD();",1);\r
-}\r
-\r
-function putFtsTData(aTopics)\r
-{\r
- endLoading();\r
- var oCTF=goCTF;\r
- if(oCTF)\r
- {\r
- oCTF.aTopics=aTopics;\r
- setTimeout("ftsFindKeyword();",1);\r
- }\r
-}\r
-\r
-function putFtsWData(aFtsContents)\r
-{\r
- endLoading();\r
- var oCF=goCF;\r
- if(oCF)\r
- {\r
- updateCache(oCF);\r
- oCF.aFtsKeys=aFtsContents;\r
- setTimeout("ftsFindKeyword();",1);\r
- }\r
-}\r
-\r
-function IsStopWord(sCW,aFtsStopArray)\r
-{\r
- var nStopArrayLen=aFtsStopArray.length;\r
- var nB=0;\r
- var nE=nStopArrayLen-1;\r
- var nM=0;\r
- var bFound=false;\r
- var sStopWord="";\r
- while(nB<=nE){\r
- nM=(nB+nE);\r
- nM>>=1;\r
- sStopWord=aFtsStopArray[nM];\r
- if(compare(sCW,sStopWord)>0){\r
- nB=(nB==nM)?nM+1:nM;\r
- }else{\r
- if(compare(sCW,sStopWord)<0){\r
- nE=(nE==nM)?nM-1:nM;\r
- }else{\r
- bFound=true;\r
- break;\r
- }\r
- }\r
- }\r
- return bFound;\r
-}\r
-\r
-function GetStem(szWord)\r
-{\r
- if(gaFtsStem==null||gaFtsStem.length==0)return szWord;\r
- var aStems=gaFtsStem;\r
-\r
- var nStemPos=0;\r
- var csStem="";\r
- for(var iStem=0;iStem<aStems.length;iStem++){\r
-\r
- if(aStems[iStem].length>=szWord.length-1) break;\r
- nStemPos=szWord.lastIndexOf(aStems[iStem]);\r
- if(nStemPos>0){\r
- var cssub=szWord.substring(nStemPos);\r
- if(cssub==aStems[iStem]){\r
- csStem=szWord;\r
- if(szWord.charAt(nStemPos-2)==szWord.charAt(nStemPos-1)){\r
- csStem=csStem.substring(0,nStemPos-1);\r
- }else{\r
- csStem=csStem.substring(0,nStemPos);\r
- }\r
- return csStem;\r
- }\r
- }\r
- }\r
- return szWord;\r
-}\r
-\r
-function FtsWriteClassStyle()\r
-{\r
- var sStyle="<STYLE TYPE='text/css'>\n";\r
- if (gsBgImage)\r
- sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
- else\r
- sStyle+="body {border-top:black 1px solid;}\n";\r
- sStyle+="P {"+getFontStyle(goErrFont)+"margin-left:"+gsIndent+";margin-top:"+gsMargin+";}\n";\r
- sStyle+="dl {"+getFontStyle(goFont)+"margin-left:"+gsIndent+";margin-top:"+gsMargin+";}\n";\r
- sStyle+="A:link {"+getFontStyle(goFont)+"}\n";\r
- sStyle+="A:visited {"+getFontStyle(goFont)+"}\n";\r
- sStyle+="A:active {background-color:"+gsABgColor+";}\n";\r
- sStyle+="A:hover {"+getFontStyle(goHoverFont)+"}\n";\r
- sStyle+="</STYLE>";\r
- document.write(sStyle);\r
-}\r
-\r
-function window_Unload()\r
-{\r
- UnRegisterListener2(this,WH_MSG_PROJECTREADY);\r
- UnRegisterListener2(this, WH_MSG_SEARCHFTSKEY);\r
-}\r
-\r
-\r
-function onSendMessage(oMsg)\r
-{\r
- var nMsgId=oMsg.nMessageId;\r
- if(nMsgId==WH_MSG_SEARCHFTSKEY)\r
- {\r
- if(oMsg.oParam)\r
- {\r
- if(gsSK==null||gsSK=="")\r
- {\r
- gsSK=oMsg.oParam.toLowerCase();\r
- findFTSKey();\r
- }\r
- else\r
- gsSK2=oMsg.oParam.toLowerCase();\r
- }\r
- }\r
- else if(nMsgId==WH_MSG_PROJECTREADY)\r
- {\r
- loadFts();\r
- }\r
- return true;\r
-}\r
-\r
-if (window.gbWhUtil&&window.gbWhLang&&window.gbWhProxy&&window.gbWhVer&&window.gbWhMsg)\r
-{\r
- goFont=new whFont("Verdana","8pt","#000000","normal","normal","none");\r
- goErrFont=new whFont("Verdana","8pt","#000000","normal","bold","none");\r
- goHoverFont=new whFont("Verdana","8pt","#007f00","normal","normal","underline");\r
- window.onload=window_OnLoad;\r
- window.onbeforeunload=window_BUnload;\r
- window.onunload=window_Unload;\r
- RegisterListener2(this,WH_MSG_PROJECTREADY);\r
- gbWhFHost=true;\r
-}\r
-else\r
- document.location.reload();
\ No newline at end of file
+++ /dev/null
-var gfunLookUp;\r
-var gbInputEnable;\r
-var gfunInit;\r
-var gstrFormName= "";\r
-var gbWithButton = false;\r
-var gsTitle="";\r
-var gsOverImage = "";\r
-var gsOutImage = "";\r
-var gsClickImage = "";\r
-var gsText = "";\r
-var gsBgColor = "#c0c0c0";\r
-var gsBgImage = "";\r
-var gbInImage = 0;\r
-var gbInputEnable = 0;\r
-\r
-var goTitleFont=null;\r
-var goInputFont=null;\r
-var goNormalFont=null;\r
-var goHoverFont=null;\r
-var gnType=-1;\r
-var gbWhForm=false;\r
-\r
-function setBackground(sBgImage)\r
-{\r
- if (sBgImage != null && sBgImage.length > 0)\r
- gsBgImage = sBgImage;\r
-\r
- if (gsBgImage && gsBgImage .length > 0)\r
- {\r
- document.body.background = gsBgImage ;\r
- }\r
-}\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
- if (sBgColor != null && sBgColor.length > 0)\r
- gsBgColor = sBgColor;\r
-\r
- if (gsBgColor&& gsBgColor.length > 0)\r
- {\r
- document.body.bgColor = gsBgColor;\r
- }\r
-}\r
-\r
-function setBtnType(sType)\r
-{\r
- if (sType == "image")\r
- {\r
- gnType = 0;\r
- }\r
- else if (sType == "text")\r
- {\r
- gnType = 1;\r
- }\r
-}\r
-\r
-function setGoImage1(sImage1)\r
-{\r
- gsOutImage = sImage1;\r
- if (gsOutImage && gsOutImage.length > 0)\r
- gbWithButton = true;\r
-}\r
-\r
-function setGoImage2(sImage2)\r
-{\r
- gsOverImage = sImage2;\r
- if (gsOverImage && gsOverImage.length > 0)\r
- gbWithButton = true;\r
-}\r
-\r
-function setGoImage3(sImage3)\r
-{\r
- gsClickImage = sImage3;\r
- if (gsClickImage && gsClickImage.length > 0)\r
- gbWithButton = true;\r
-}\r
-\r
-function setGoText(sText)\r
-{\r
- gsText = sText;\r
- if (gsText.length > 0)\r
- gbWithButton = true;\r
-}\r
-\r
-function setFont(sType, sFontName, sFontSize, sFontColor, sFontStyle, sFontWeight, sFontDecoration)\r
-{\r
- var vFont = new whFont(sFontName, sFontSize, sFontColor, sFontStyle, sFontWeight, sFontDecoration);\r
- if (sType == "Title")\r
- {\r
- goTitleFont = vFont;\r
- var vFont1 = new whFont(sFontName, sFontSize, "black", sFontStyle, sFontWeight, sFontDecoration);\r
- goInputFont=vFont1; \r
- }\r
- else if (sType == "Normal")\r
- goNormalFont = vFont;\r
- else if (sType == "Hover")\r
- goHoverFont = vFont;\r
-}\r
-\r
-function writeFormStyle()\r
-{\r
- var sStyle = "<style type='text/css'>";\r
- sStyle += "p.title {" + getFontStyle(goTitleFont) + "margin-top:0;margin-bottom:0}\n";\r
- sStyle += ".inputfield {" + getFontStyle(goInputFont) +"width:100%; }\n";\r
- sStyle+="A:link {"+getFontStyle(goNormalFont)+"}\n";\r
- sStyle+="A:visited {"+getFontStyle(goNormalFont)+"}\n";\r
- sStyle +="A:hover {"+getFontStyle(goHoverFont)+"}\n";\r
- sStyle+=".clsFormBackground{\n";\r
- if (gsBgImage)\r
- sStyle+="border-top:"+gsBgColor+" 1px solid;}\n";\r
- else\r
- sStyle+="border-top:black 1px solid;}\n";\r
-\r
- sStyle += "</style>";\r
- document.write(sStyle);\r
-}\r
-\r
-function lookupKeyDown()\r
-{\r
- if (gbInputEnable)\r
- {\r
- if (gbIE4)\r
- {\r
- if (event.keyCode == 13) //Enter key\r
- gfunLookUp(true);\r
- else\r
- gfunLookUp(false);\r
- } \r
- else\r
- gfunLookUp(false);\r
- }\r
-}\r
-\r
-function init()\r
-{\r
- if (gfunInit)\r
- gfunInit();\r
- if (!window.Array) return;\r
- document.onkeyup = lookupKeyDown;\r
-}\r
-\r
-function inputSubmit()\r
-{\r
- if ((gbInputEnable && !gbIE4)|| gbInImage)\r
- gfunLookUp(true);\r
-}\r
-\r
-function inputEnable(bEnable)\r
-{\r
- gbInputEnable = bEnable;\r
-}\r
-\r
-function inImage(bImage)\r
-{\r
- gbInImage = bImage;\r
-}\r
-\r
-function getFormHTML()\r
-{\r
- var sForm = "";\r
- sForm += "<table class=\"clsFormBackground\" width=\"100%\" cellspacing=\"0\" cellpadding=\"5\" border=\"0\">";\r
- sForm += "<form name=\"" + gstrFormName + "\" method=\"POST\" action=\"javascript:inputSubmit()\" style=\"width:100%\">";\r
- sForm += "<tr>";\r
- sForm += "<td>";\r
- sForm += "<p class=title><nobr>" + gsTitle + "</nobr><br><table width=\"100%\"><tr valign=\"middle\"><td width=\"100%\"><input class=\"inputfield\" type=\"text\" name=\"keywordField\" onfocus=\"inputEnable(1);\" onblur=\"inputEnable(0);\"></td>";\r
- if (gbWithButton && gnType >= 0)\r
- {\r
- sForm += "<td><a title=\"submit button\" href=\"javascript:void(0);\" onclick=\"" + gstrFormName + ".submit(); return false;\" onfocus=\"inImage(1);\" onblur=\"inImage(0);\" onmouseup=\"onMouseUp();\" onmousedown=\"onMouseDown();\" onmouseover=\"onMouseOver();\" onmouseout=\"onMouseOut();\">"\r
- if (gnType == 0)\r
- {\r
- if (!gsText)\r
- gsText="Go";\r
- sForm += "<img alt=\""+gsText+"\" id=\"go\" border=\"0\" src=\"" + gsOutImage + "\">";\r
- }\r
- else\r
- sForm += gsText ;\r
- sForm += "</a></td>";\r
- }\r
- sForm += "</tr></table></p></td></tr></form></table>";\r
- return sForm;\r
-}\r
-\r
-function onMouseOver()\r
-{\r
- if (getElement("go") && gsOverImage)\r
- getElement("go").src = gsOverImage;\r
-}\r
-\r
-function onMouseDown()\r
-{\r
- if (getElement("go") && gsClickImage)\r
- getElement("go").src = gsClickImage;\r
-}\r
-\r
-function onMouseUp()\r
-{\r
- if (getElement("go") && gsOutImage)\r
- getElement("go").src = gsOutImage;\r
-}\r
-\r
-function onMouseOut()\r
-{\r
- if (getElement("go") && gsOutImage)\r
- getElement("go").src = gsOutImage;\r
-}\r
-\r
-if (window.gbWhUtil&&window.gbWhVer&&window.gbWhProxy&&window.gbWhMsg)\r
-{\r
- goTitleFont=new whFont("Arial", "9pt", "#000000", "normal", "normal", "none");\r
- goNormalFont=new whFont("Arial", "9pt", "#000000", "normal", "normal", "none");\r
- goHoverFont=new whFont("Arial", "9pt", "#000000", "normal", "normal", "underline");\r
- gbWhForm=true;\r
-}\r
-else\r
- document.location.reload();
\ No newline at end of file
+++ /dev/null
-// this value should be identical to the value used in whproxy.js\r
-window.whname = "wh_stub";\r
-\r
-// this file will be used by Topic and NavBar and NavPane and other components\r
-// and this file is used in child frame html.\r
-// and the whstub.js will be used in the start page.\r
-// see reference in whstub.js.\r
-// Internal Area\r
-var gbInited = false;\r
-var gWndStubPage = null;\r
-function getStubPage()\r
-{\r
- if (!gbInited)\r
- {\r
- gWndStubPage = getStubPage_inter(window);\r
- gbInited = true;\r
- }\r
- return gWndStubPage;\r
-}\r
-\r
-function getStubPage_inter(wCurrent) {\r
- if (null == wCurrent.parent || wCurrent.parent == wCurrent)\r
- return null;\r
-\r
- if (wCurrent.parent.whname && "wh_stub" == wCurrent.parent.whname) \r
- return wCurrent.parent;\r
- else\r
- if (wCurrent.parent.frames.length != 0 && wCurrent.parent != wCurrent)\r
- return getStubPage_inter(wCurrent.parent);\r
- else \r
- return null;\r
-}\r
-\r
-// Public interface begin here................\r
-function RegisterListener(framename, nMessageId)\r
-{\r
- var wStartPage = getStubPage();\r
- if (wStartPage && wStartPage != this) {\r
- return wStartPage.RegisterListener(framename, nMessageId);\r
- }\r
- else \r
- return false;\r
-}\r
-\r
-function RegisterListener2(oframe, nMessageId)\r
-{\r
- var wStartPage = getStubPage();\r
- if (wStartPage && wStartPage != this) {\r
- return wStartPage.RegisterListener2(oframe, nMessageId);\r
- }\r
- else \r
- return false;\r
-}\r
-\r
-function UnRegisterListener2(oframe, nMessageId)\r
-{\r
- var wStartPage = getStubPage();\r
- if (wStartPage && wStartPage != this && wStartPage.UnRegisterListener2) {\r
- return wStartPage.UnRegisterListener2(oframe, nMessageId);\r
- }\r
- else \r
- return false;\r
-}\r
-\r
-function SendMessage(oMessage)\r
-{\r
- var nMsgId = oMessage.nMessageId;\r
- if (nMsgId == WH_MSG_ISINFRAMESET && oMessage.wSender != this)\r
- return true;\r
- var wStartPage = getStubPage();\r
- if (wStartPage && wStartPage != this && wStartPage.SendMessage) \r
- {\r
- return wStartPage.SendMessage(oMessage);\r
- }\r
- else \r
- return false;\r
-}\r
-var gbWhProxy=true;
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<title>Glossary Term</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmozemu.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whlang.js"></script>\r
-<script language="javascript1.2" src="whhost.js"></script>\r
-<script language="javascript1.2" src="whghost.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-if(window.gbWhGHost)\r
-{\r
- setBackgroundcolor("White"); \r
- \r
- setFont("Normal", "Tahoma","8pt","Black","Normal","Normal","none");\r
- setFont("Hover", "Tahoma","8pt","Navy","Normal","Normal","underline");\r
- setActiveBgColor("Silver");\r
- \r
- \r
- GloWriteClassStyle();\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body topmargin="2" leftmargin="2" marginwidth="0" marginheight="0" bgproperties="fixed" bgcolor="white">\r
-</body>\r
-</html>\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words List</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-<p class="ftsbody">\r
-\r
-\r
-<nobr><a name="bm_{"></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> </nobr><br><nobr>3d <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="../files/about_structure_of_med_object.htm"><b>4</b></a> <a href="../files/selection_in_visu.htm"><b>5</b></a> <a href="../files/scalar_map_presentation.htm"><b>6</b></a> <a href="../files/introduction_to_visu.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> </nobr><br>\r
-<br><br>\r
-<a name="bm_A"></a><a name="subkey_AC"></a><a href="../files/sweeping.htm"><b>acceptable</b></a> <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/selection_in_visu.htm"><b>5</b></a> <a href="../files/scalar_map_presentation.htm"><b>6</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>accuracy</b></a> <br><a href="../files/scaling_presentations.htm"><b>actions</b></a> <br><nobr>actor <a href="../files/selection_in_visu.htm"><b>1</b></a> <a href="../files/getting_elements_attributes.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_AD"></a><a name="subkey_AD"></a>additional <a href="../files/editing_field_presentations.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/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="../files/running_visu.htm"><b>9</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>10</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>adjust</b></a> <br><a href="../files/animating_presentations.htm"><b>adjusted</b></a> <br><nobr><a name="bms_AL"></a><a name="subkey_AL"></a>algorithm <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/cut_lines_presentation.htm"><b>2</b></a> </nobr><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="../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> </nobr><br><nobr>allowing <a href="../files/editing_field_presentations.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/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_tables_from_cut_lines_presentations.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="../files/about_tables.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/setting_properties_of_xy_plots.htm"><b>11</b></a> <a href="../files/selection_in_visu.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> </nobr><br><nobr>along <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/scaling_presentations.htm"><b>7</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>8</b></a> </nobr><br><nobr>already <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="../files/renaming_presentations.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_AN"></a><a name="subkey_AN"></a>angle <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="../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/animating_presentations.htm"><b>1</b></a> <a href="../files/sweeping.htm"><b>2</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/cut_lines_presentation.htm"><b>2</b></a> <a href="../files/animating_presentations.htm"><b>3</b></a> <a href="../files/sweeping.htm"><b>4</b></a> <a href="../files/stream_lines_presentation.htm"><b>5</b></a> <a href="../files/selection_in_visu.htm"><b>6</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="../files/getting_elements_attributes.htm"><b>3</b></a> </nobr><br><nobr><a name="bms_AP"></a><a name="subkey_AP"></a>appear <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/changing_visualization_parameters_of_the_presenetation.htm"><b>7</b></a> <a href="../files/animating_presentations.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/selection_in_visu.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/renaming_presentations.htm"><b>16</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>17</b></a> <a href="../files/getting_elements_attributes.htm"><b>18</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_tables_from_cut_lines_presentations.htm"><b>4</b></a> <a href="../files/creating_field_presentations.htm"><b>5</b></a> <a href="../files/about_structure_of_med_object.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> </nobr><br><nobr>apply <a href="../files/scaling_presentations.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> </nobr><br><a name="bms_AR"></a><a name="subkey_AR"></a><a href="../files/stream_lines_presentation.htm"><b>area</b></a> <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> </nobr><br><a href="../files/cut_lines_presentation.htm"><b>array</b></a> <br><a name="bms_AS"></a><a name="subkey_AS"></a><a href="../files/creating_curves.htm"><b>assign</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>associated</b></a> <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/getting_elements_attributes.htm"><b>2</b></a> </nobr><br><a name="bms_AU"></a><a name="subkey_AU"></a><a href="../files/creating_curves.htm"><b>auto</b></a> <br><nobr>automatically <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.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="../files/sweeping.htm"><b>5</b></a> <a href="../files/selection_in_visu.htm"><b>6</b></a> <a href="../files/importing_med_objects.htm"><b>7</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="../files/sweeping.htm"><b>2</b></a> </nobr><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/setting_properties_of_xy_plots.htm"><b>3</b></a> <a href="../files/scaling_presentations.htm"><b>4</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/setting_properties_of_xy_plots.htm"><b>4</b></a> </nobr><br>\r
-<br><br>\r
-<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/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../files/animating_presentations.htm"><b>3</b></a> </nobr><br><a href="../files/setting_properties_of_xy_plots.htm"><b>background</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>backward</b></a> <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/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/iso_surfaces_presentation.htm"><b>8</b></a> </nobr><br><nobr>base <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_tables_from_cut_lines_presentations.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/sweeping.htm"><b>5</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_to_visu.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> </nobr><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/setting_properties_of_xy_plots.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_med_objects.htm"><b>9</b></a> </nobr><br><a href="../files/about_tables.htm"><b>batch</b></a> <br><a name="bms_BE"></a><a name="subkey_BE"></a><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><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 name="bms_BO"></a><a name="subkey_BO"></a><a href="../files/selection_in_visu.htm"><b>borders</b></a> <br><nobr>both <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/running_visu.htm"><b>bottom</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>bound</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>boundary</b></a> <br><nobr>box <a href="../files/exploring_med_files.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/changing_visualization_parameters_of_the_presenetation.htm"><b>7</b></a> <a href="../files/animating_presentations.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/selection_in_visu.htm"><b>13</b></a> <a href="../files/scaling_presentations.htm"><b>14</b></a> <a href="../files/scalar_map_presentation.htm"><b>15</b></a> <a href="../files/running_visu.htm"><b>16</b></a> <a href="../files/renaming_presentations.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="../files/getting_elements_attributes.htm"><b>21</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><nobr><a name="bms_BR"></a><a name="subkey_BR"></a>browser <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/editing_field_presentations.htm"><b>2</b></a> <a href="../files/displaying_tables.htm"><b>3</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>4</b></a> <a href="../files/deformed_shape_presentation.htm"><b>5</b></a> <a href="../files/cut_lines_resentation.htm"><b>6</b></a> <a href="../files/cut_lines_presentation.htm"><b>7</b></a> <a href="../files/creating_xy_plot.htm"><b>8</b></a> <a href="../files/creating_tables_from_cut_lines_presentations.htm"><b>9</b></a> <a href="../files/creating_presentations.htm"><b>10</b></a> <a href="../files/creating_field_presentations.htm"><b>11</b></a> <a href="../files/creating_curves.htm"><b>12</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>13</b></a> <a href="../files/animating_presentations.htm"><b>14</b></a> <a href="../files/about_structure_of_med_object.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/selection_in_visu.htm"><b>19</b></a> <a href="../files/scalar_map_presentation.htm"><b>20</b></a> <a href="../files/renaming_presentations.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> </nobr><br><nobr><a name="bms_BU"></a><a name="subkey_BU"></a>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="../files/vectors_presentation.htm"><b>5</b></a> <a href="../files/stream_lines_presentation.htm"><b>6</b></a> <a href="../files/selection_in_visu.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/renaming_presentations.htm"><b>10</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>11</b></a> <a href="../files/importing_tables.htm"><b>12</b></a> </nobr><br>\r
-<br><br>\r
-<a name="bm_C"></a><a name="subkey_CA"></a><a href="../files/scalar_map_presentation.htm"><b>calculation</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>calculations</b></a> <br><a href="../files/scaling_presentations.htm"><b>cancel</b></a> <br><nobr>case <a href="../files/editing_field_presentations.htm"><b>1</b></a> <a href="../files/selection_in_visu.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>cases</b></a> <br><nobr><a name="bms_CE"></a><a name="subkey_CE"></a>cell <a href="../files/selection_in_visu.htm"><b>1</b></a> <a href="../files/getting_elements_attributes.htm"><b>2</b></a> </nobr><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_tables_from_cut_lines_presentations.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/about_tables.htm"><b>7</b></a> <a href="../files/about_structure_of_med_object.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/selection_in_visu.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/getting_elements_attributes.htm"><b>15</b></a> </nobr><br><nobr><a name="bms_CH"></a><a name="subkey_CH"></a>change <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/selection_in_visu.htm"><b>2</b></a> <a href="../files/renaming_presentations.htm"><b>3</b></a> </nobr><br><a href="../files/scaling_presentations.htm"><b>changes</b></a> <br><nobr>changing <a href="../files/editing_field_presentations.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.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/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/setting_properties_of_xy_plots.htm"><b>7</b></a> <a href="../files/scalar_map_presentation.htm"><b>8</b></a> </nobr><br><a href="../files/creating_curves.htm"><b>checkbox</b></a> <br><a href="../files/creating_curves.htm"><b>checked</b></a> <br><a href="../files/creating_curves.htm"><b>checkmark</b></a> <br><nobr>choice <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/renaming_presentations.htm"><b>2</b></a> <a href="../files/importing_med_objects.htm"><b>3</b></a> </nobr><br><nobr>choose <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/displaying_tables.htm"><b>2</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>3</b></a> <a href="../files/deformed_shape_presentation.htm"><b>4</b></a> <a href="../files/cut_lines_resentation.htm"><b>5</b></a> <a href="../files/cut_lines_presentation.htm"><b>6</b></a> <a href="../files/creating_xy_plot.htm"><b>7</b></a> <a href="../files/creating_presentations.htm"><b>8</b></a> <a href="../files/creating_field_presentations.htm"><b>9</b></a> <a href="../files/creating_curves.htm"><b>10</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.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/selection_in_visu.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/running_visu.htm"><b>18</b></a> <a href="../files/renaming_presentations.htm"><b>19</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>20</b></a> <a href="../files/importing_tables.htm"><b>21</b></a> <a href="../files/importing_med_objects.htm"><b>22</b></a> <a href="../files/getting_elements_attributes.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="../files/stream_lines_presentation.htm"><b>3</b></a> <a href="../files/selection_in_visu.htm"><b>4</b></a> <a href="../files/scaling_presentations.htm"><b>5</b></a> </nobr><br><nobr><a name="bms_CL"></a><a name="subkey_CL"></a>click <a href="../files/editing_field_presentations.htm"><b>1</b></a> <a href="../files/displaying_tables.htm"><b>2</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>3</b></a> <a href="../files/deformed_shape_presentation.htm"><b>4</b></a> <a href="../files/cut_lines_resentation.htm"><b>5</b></a> <a href="../files/cut_lines_presentation.htm"><b>6</b></a> <a href="../files/creating_xy_plot.htm"><b>7</b></a> <a href="../files/creating_tables_from_cut_lines_presentations.htm"><b>8</b></a> <a href="../files/creating_presentations.htm"><b>9</b></a> <a href="../files/creating_field_presentations.htm"><b>10</b></a> <a href="../files/creating_curves.htm"><b>11</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>12</b></a> <a href="../files/animating_presentations.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/setting_properties_of_xy_plots.htm"><b>17</b></a> <a href="../files/selection_in_visu.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/renaming_presentations.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> </nobr><br><a href="../files/running_visu.htm"><b>clicking</b></a> <br><a href="../files/animating_presentations.htm"><b>close</b></a> <br><br><br></p><p class="ftsbody" align="center"><a href="whlstf1.htm" target="_self" title="previous search group"><b>>></b></a>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words List</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-<p class="ftsbody" align="center"><a href="whlstf0.htm" target="_self" title="previous search group"><b><<</b></a><br><br></p>\r
-<p class="ftsbody">\r
-<a name="bms_CO"></a><a name="subkey_CO"></a><a href="../files/scaling_presentations.htm"><b>coefficient</b></a> <br><nobr>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/changing_visualization_parameters_of_the_presenetation.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/selection_in_visu.htm"><b>7</b></a> <a href="../files/scalar_map_presentation.htm"><b>8</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> </nobr><br><a href="../files/scalar_map_presentation.htm"><b>colors</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="../files/iso_surfaces_presentation.htm"><b>combines</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/stream_lines_presentation.htm"><b>complicated</b></a> <br><nobr>component <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/about_tables.htm"><b>2</b></a> <a href="../files/running_visu.htm"><b>3</b></a> <a href="../files/importing_med_objects.htm"><b>4</b></a> </nobr><br><nobr>components <a href="../files/scalar_map_presentation.htm"><b>1</b></a> <a href="../files/introduction_to_visu.htm"><b>2</b></a> </nobr><br><nobr>compose <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../files/sweeping.htm"><b>2</b></a> </nobr><br><nobr>composed <a href="../files/creating_tables_from_cut_lines_presentations.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.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/changing_visualization_parameters_of_the_presenetation.htm"><b>compressed</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>computation</b></a> <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><nobr>confirm <a href="../files/scaling_presentations.htm"><b>1</b></a> <a href="../files/renaming_presentations.htm"><b>2</b></a> <a href="../files/importing_med_objects.htm"><b>3</b></a> </nobr><br><nobr>consist <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/setting_properties_of_xy_plots.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><a href="../files/stream_lines_presentation.htm"><b>construct</b></a> <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/setting_properties_of_xy_plots.htm"><b>3</b></a> <a href="../files/scalar_map_presentation.htm"><b>4</b></a> </nobr><br><nobr>construction <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_curves.htm"><b>2</b></a> <a href="../files/stream_lines_presentation.htm"><b>3</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><nobr>contained <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../files/creating_presentations.htm"><b>2</b></a> <a href="../files/importing_tables.htm"><b>3</b></a> </nobr><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><a href="../files/creating_curves.htm"><b>containers</b></a> <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> </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="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>context</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>control</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>controls</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>convey</b></a> <br><nobr>coordinates <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> <a href="../files/getting_elements_attributes.htm"><b>3</b></a> </nobr><br><a href="../files/displaying_hiding_presentations.htm"><b>copy</b></a> <br><a href="../files/creating_curves.htm"><b>correspond</b></a> <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> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>cost</b></a> <br><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_tables_from_cut_lines_presentations.htm"><b>5</b></a> <a href="../files/creating_presentations.htm"><b>6</b></a> <a href="../files/creating_field_presentations.htm"><b>7</b></a> <a href="../files/creating_curves.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/running_visu.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="../files/getting_started.htm"><b>16</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_tables_from_cut_lines_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="../files/stream_lines_presentation.htm"><b>9</b></a> <a href="../files/scalar_map_presentation.htm"><b>10</b></a> <a href="../files/renaming_presentations.htm"><b>11</b></a> <a href="../files/iso_surfaces_presentation.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_tables_from_cut_lines_presentations.htm"><b>3</b></a> <a href="../files/creating_presentations.htm"><b>4</b></a> <a href="../files/creating_field_presentations.htm"><b>5</b></a> <a href="../files/creating_curves.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="../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> <a href="../files/importing_med_objects.htm"><b>7</b></a> </nobr><br><a name="bms_CT"></a><a name="subkey_CT"></a><a href="../files/displaying_hiding_presentations.htm"><b>ctrl</b></a> <br><a name="bms_CU"></a><a name="subkey_CU"></a><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>currently</b></a> <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> </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> </nobr><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/creating_tables_from_cut_lines_presentations.htm"><b>3</b></a> <a href="../files/about_tables.htm"><b>4</b></a> <a href="../files/sweeping.htm"><b>5</b></a> </nobr><br><a name="bms_CY"></a><a name="subkey_CY"></a><a href="../files/animating_presentations.htm"><b>cycled</b></a> <br><a href="../files/sweeping.htm"><b>cycles</b></a> <br>\r
-<br><br>\r
-<nobr><a name="bm_D"></a><a name="subkey_DA"></a>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_to_visu.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="../files/animating_presentations.htm"><b>decrease</b></a> <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_xy_plot.htm"><b>4</b></a> <a href="../files/creating_curves.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> </nobr><br><nobr>define <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/iso_surfaces_presentation.htm"><b>8</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="../files/vectors_presentation.htm"><b>3</b></a> <a href="../files/sweeping.htm"><b>4</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>5</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>6</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/sweeping.htm"><b>3</b></a> <a href="../files/stream_lines_presentation.htm"><b>4</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>defining</b></a> <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/changing_visualization_parameters_of_the_presenetation.htm"><b>3</b></a> <a href="../files/animating_presentations.htm"><b>4</b></a> <a href="../files/about_structure_of_med_object.htm"><b>5</b></a> <a href="../files/stream_lines_presentation.htm"><b>6</b></a> <a href="../files/selection_in_visu.htm"><b>7</b></a> <a href="../files/getting_elements_attributes.htm"><b>8</b></a> </nobr><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="../files/sweeping.htm"><b>2</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> </nobr><br><nobr>delete <a href="../files/editing_field_presentations.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>2</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>depending</b></a> <br><a href="../files/about_tables.htm"><b>described</b></a> <br><a href="../files/setting_properties_of_xy_plots.htm"><b>description</b></a> <br><a href="../files/selection_in_visu.htm"><b>desired</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_to_visu.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_DI"></a><a name="subkey_DI"></a>dialog <a href="../files/exploring_med_files.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/changing_visualization_parameters_of_the_presenetation.htm"><b>7</b></a> <a href="../files/animating_presentations.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/selection_in_visu.htm"><b>13</b></a> <a href="../files/scaling_presentations.htm"><b>14</b></a> <a href="../files/scalar_map_presentation.htm"><b>15</b></a> <a href="../files/renaming_presentations.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> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>different</b></a> <br><a href="../files/scalar_map_presentation.htm"><b>dimensions</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>direction</b></a> <br><a href="../files/animating_presentations.htm"><b>directory</b></a> <br><a href="../files/importing_med_objects.htm"><b>disabling</b></a> <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="../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> </nobr><br><nobr>displayed <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/displaying_tables.htm"><b>2</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>3</b></a> <a href="../files/deformed_shape_presentation.htm"><b>4</b></a> <a href="../files/cut_lines_resentation.htm"><b>5</b></a> <a href="../files/cut_lines_presentation.htm"><b>6</b></a> <a href="../files/creating_xy_plot.htm"><b>7</b></a> <a href="../files/creating_tables_from_cut_lines_presentations.htm"><b>8</b></a> <a href="../files/creating_presentations.htm"><b>9</b></a> <a href="../files/creating_field_presentations.htm"><b>10</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.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/selection_in_visu.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> </nobr><br><nobr>displaying <a href="../files/editing_field_presentations.htm"><b>1</b></a> <a href="../files/displaying_tables.htm"><b>2</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>3</b></a> <a href="../files/animating_presentations.htm"><b>4</b></a> <a href="../files/sweeping.htm"><b>5</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> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>divided</b></a> <br><nobr><a name="bms_DO"></a><a name="subkey_DO"></a>down <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/animating_presentations.htm"><b>2</b></a> <a href="../files/selection_in_visu.htm"><b>3</b></a> </nobr><br><a name="bms_DU"></a><a name="subkey_DU"></a><a href="../files/displaying_hiding_presentations.htm"><b>duplicated</b></a> <br>\r
-<br><br>\r
-<nobr><a name="bm_E"></a><a name="subkey_ED"></a>edges <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/selection_in_visu.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> </nobr><br><a href="../files/editing_field_presentations.htm"><b>editing</b></a> <br><nobr><a name="bms_EL"></a><a name="subkey_EL"></a>element <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/selection_in_visu.htm"><b>2</b></a> <a href="../files/getting_elements_attributes.htm"><b>3</b></a> </nobr><br><nobr>elements <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/selection_in_visu.htm"><b>2</b></a> <a href="../files/getting_elements_attributes.htm"><b>3</b></a> </nobr><br><a name="bms_EM"></a><a name="subkey_EM"></a><a href="../files/about_tables.htm"><b>empty</b></a> <br><a name="bms_EN"></a><a name="subkey_EN"></a><a href="../files/importing_med_objects.htm"><b>enabling</b></a> <br><nobr>end <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/sweeping.htm"><b>2</b></a> </nobr><br><a href="../files/sweeping.htm"><b>enjoy</b></a> <br><nobr>enter <a href="../files/selection_in_visu.htm"><b>1</b></a> <a href="../files/scaling_presentations.htm"><b>2</b></a> <a href="../files/scalar_map_presentation.htm"><b>3</b></a> <a href="../files/renaming_presentations.htm"><b>4</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>5</b></a> <a href="../files/importing_tables.htm"><b>6</b></a> <a href="../files/getting_elements_attributes.htm"><b>7</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><a href="../files/about_structure_of_med_object.htm"><b>entities</b></a> <br><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> </nobr><br><a name="bms_ER"></a><a name="subkey_ER"></a><a href="../files/displaying_hiding_presentations.htm"><b>erase</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 name="bms_EX"></a><a name="subkey_EX"></a><a href="../files/getting_elements_attributes.htm"><b>examine</b></a> <br><a href="../files/displaying_hiding_presentations.htm"><b>existing</b></a> <br><nobr>explore <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> </nobr><br><a href="../files/exploring_med_files.htm"><b>explored</b></a> <br><a href="../files/exploring_med_files.htm"><b>exploring</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><br><br></p><p class="ftsbody" align="center"><a href="whlstf2.htm" target="_self" title="previous search group"><b>>></b></a>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words List</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-<p class="ftsbody" align="center"><a href="whlstf1.htm" target="_self" title="previous search group"><b><<</b></a><br><br></p>\r
-<p class="ftsbody">\r
-\r
-\r
-<a name="bm_F"></a><a name="subkey_FA"></a><a href="../files/about_structure_of_med_object.htm"><b>faces</b></a> <br><nobr>factor <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/vectors_presentation.htm"><b>2</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>families</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>family</b></a> <br><a name="bms_FE"></a><a name="subkey_FE"></a><a href="../files/scaling_presentations.htm"><b>feature</b></a> <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/editing_field_presentations.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_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="../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/selection_in_visu.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/renaming_presentations.htm"><b>15</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>16</b></a> <a href="../files/getting_started.htm"><b>17</b></a> <a href="../files/getting_elements_attributes.htm"><b>18</b></a> </nobr><br><nobr>fields <a href="../files/creating_field_presentations.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/stream_lines_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="../files/introduction_to_visu.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> </nobr><br><nobr>file <a href="../files/exploring_med_files.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>files <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/about_tables.htm"><b>2</b></a> <a href="../files/about_structure_of_med_object.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> </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> </nobr><br><a href="../files/animating_presentations.htm"><b>first</b></a> <br><nobr><a name="bms_FO"></a><a name="subkey_FO"></a>folder <a href="../files/about_structure_of_med_object.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/about_structure_of_med_object.htm"><b>folders</b></a> <br><nobr>following <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_field_presentations.htm"><b>5</b></a> <a href="../files/creating_curves.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="../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/setting_properties_of_xy_plots.htm"><b>13</b></a> <a href="../files/selection_in_visu.htm"><b>14</b></a> <a href="../files/scalar_map_presentation.htm"><b>15</b></a> <a href="../files/running_visu.htm"><b>16</b></a> <a href="../files/renaming_presentations.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_elements_attributes.htm"><b>20</b></a> </nobr><br><nobr>follows <a href="../files/setting_properties_of_xy_plots.htm"><b>1</b></a> <a href="../files/running_visu.htm"><b>2</b></a> </nobr><br><a href="../files/scalar_map_presentation.htm"><b>font</b></a> <br><nobr>forming <a href="../files/creating_tables_from_cut_lines_presentations.htm"><b>1</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>2</b></a> <a href="../files/getting_elements_attributes.htm"><b>3</b></a> </nobr><br><a href="../files/introduction_to_visu.htm"><b>forms</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>forward</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> </nobr><br><nobr>frames <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/sweeping.htm"><b>2</b></a> </nobr><br><a href="../files/iso_surfaces_presentation.htm"><b>framework</b></a> <br><a name="bms_FU"></a><a name="subkey_FU"></a><a href="../files/importing_med_objects.htm"><b>full</b></a> <br><a href="../files/scaling_presentations.htm"><b>function</b></a> <br><a href="../files/editing_field_presentations.htm"><b>functional</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> </nobr><br>\r
-<br><br>\r
-<a name="bm_G"></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/selection_in_visu.htm"><b>5</b></a> <a href="../files/iso_surfaces_presentation.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="../files/about_structure_of_med_object.htm"><b>geometrical</b></a> <br><a href="../files/getting_elements_attributes.htm"><b>get</b></a> <br><nobr>getting <a href="../files/getting_started.htm"><b>1</b></a> <a href="../files/getting_elements_attributes.htm"><b>2</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> </nobr><br><a name="bms_GL"></a><a name="subkey_GL"></a><a href="../files/vectors_presentation.htm"><b>glyphs</b></a> <br><a name="bms_GR"></a><a name="subkey_GR"></a><a href="../files/scalar_map_presentation.htm"><b>graduation</b></a> <br><a href="../files/vectors_presentation.htm"><b>graphical</b></a> <br><a href="../files/setting_properties_of_xy_plots.htm"><b>grid</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>grouped</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>groups</b></a> <br>\r
-<br><br>\r
-<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="../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><a name="bms_HE"></a><a name="subkey_HE"></a><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/creating_curves.htm"><b>2</b></a> <a href="../files/animating_presentations.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> </nobr><br><a name="bms_HI"></a><a name="subkey_HI"></a><a href="../files/displaying_hiding_presentations.htm"><b>hidden</b></a> <br><a href="../files/displaying_hiding_presentations.htm"><b>hide</b></a> <br><a href="../files/editing_field_presentations.htm"><b>hiding</b></a> <br><nobr>highlighted <a href="../files/selection_in_visu.htm"><b>1</b></a> <a href="../files/getting_elements_attributes.htm"><b>2</b></a> </nobr><br><nobr><a name="bms_HO"></a><a name="subkey_HO"></a>hold <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/selection_in_visu.htm"><b>2</b></a> </nobr><br><nobr>horizontal <a href="../files/setting_properties_of_xy_plots.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> </nobr><br>\r
-<br><br>\r
-<nobr><a name="bm_I"></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="../files/vectors_presentation.htm"><b>4</b></a> <a href="../files/stream_lines_presentation.htm"><b>5</b></a> <a href="../files/scaling_presentations.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> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>icons</b></a> <br><a name="bms_ID"></a><a name="subkey_ID"></a><a href="../files/getting_elements_attributes.htm"><b>id</b></a> <br><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/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/selection_in_visu.htm"><b>7</b></a> <a href="../files/scalar_map_presentation.htm"><b>8</b></a> <a href="../files/getting_elements_attributes.htm"><b>9</b></a> </nobr><br><a name="bms_IM"></a><a name="subkey_IM"></a><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>image</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="../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_med_objects.htm"><b>9</b></a> <a href="../files/getting_elements_attributes.htm"><b>10</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/exploring_med_files.htm"><b>imports</b></a> <br><a href="../files/scalar_map_presentation.htm"><b>imposed</b></a> <br><a name="bms_IN"></a><a name="subkey_IN"></a><a href="../files/scalar_map_presentation.htm"><b>inactive</b></a> <br><nobr>including <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/stream_lines_presentation.htm"><b>2</b></a> <a href="../files/introduction_to_visu.htm"><b>3</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>increase</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>independently</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="../files/getting_elements_attributes.htm"><b>info</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>information</b></a> <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/selection_in_visu.htm"><b>3</b></a> <a href="../files/running_visu.htm"><b>4</b></a> </nobr><br><a href="../files/cut_lines_presentation.htm"><b>inside</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>insideframe</b></a> <br><a href="../files/exploring_med_files.htm"><b>integrated</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>integration</b></a> <br><a href="../files/animating_presentations.htm"><b>intended</b></a> <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><a href="../files/introduction_to_visu.htm"><b>introduction</b></a> <br><nobr><a name="bms_IS"></a><a name="subkey_IS"></a>iso <a href="../files/sweeping.htm"><b>1</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>2</b></a> </nobr><br><a href="../files/iso_surfaces_presentation.htm"><b>isobaric</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/setting_properties_of_xy_plots.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>\r
-<br><br>\r
-<a name="bm_L"></a><a name="subkey_LA"></a><a href="../files/scalar_map_presentation.htm"><b>labels</b></a> <br><a href="../files/scalar_map_presentation.htm"><b>larger</b></a> <br><a href="../files/animating_presentations.htm"><b>last</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/exploring_med_files.htm"><b>launches</b></a> <br><a href="../files/running_visu.htm"><b>launching</b></a> <br><a name="bms_LE"></a><a name="subkey_LE"></a><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="../files/selection_in_visu.htm"><b>2</b></a> </nobr><br><a href="../files/setting_properties_of_xy_plots.htm"><b>legend</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>length</b></a> <br><a href="../files/scalar_map_presentation.htm"><b>less</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> <a href="../files/getting_elements_attributes.htm"><b>3</b></a> </nobr><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> </nobr><br><nobr>linear <a href="../files/setting_properties_of_xy_plots.htm"><b>1</b></a> <a href="../files/scaling_presentations.htm"><b>2</b></a> </nobr><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_tables_from_cut_lines_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/about_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="../files/setting_properties_of_xy_plots.htm"><b>9</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="../files/stream_lines_presentation.htm"><b>4</b></a> </nobr><br><a name="bms_LO"></a><a name="subkey_LO"></a><a href="../files/importing_med_objects.htm"><b>loading</b></a> <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/stream_lines_presentation.htm"><b>3</b></a> <a href="../files/importing_tables.htm"><b>4</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> </nobr><br><a href="../files/running_visu.htm"><b>look</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>lot</b></a> <br>\r
-<br><br>\r
-<nobr><a name="bm_M"></a><a name="subkey_MA"></a>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/exploring_med_files.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_field_presentations.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="../files/about_structure_of_med_object.htm"><b>10</b></a> <a href="../files/vectors_presentation.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/setting_properties_of_xy_plots.htm"><b>14</b></a> <a href="../files/selection_in_visu.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/running_visu.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/getting_elements_attributes.htm"><b>21</b></a> </nobr><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> <a href="../files/selection_in_visu.htm"><b>3</b></a> </nobr><br><nobr>management <a href="../files/editing_field_presentations.htm"><b>1</b></a> <a href="../files/animating_presentations.htm"><b>2</b></a> </nobr><br><a href="../files/about_tables.htm"><b>manual</b></a> <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> </nobr><br><nobr>map <a href="../files/sweeping.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> </nobr><br><nobr>marked <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>2</b></a> </nobr><br><nobr>marker <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>2</b></a> </nobr><br><a href="../files/setting_properties_of_xy_plots.htm"><b>markers</b></a> <br><a href="../files/setting_properties_of_xy_plots.htm"><b>marks</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>massless</b></a> <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> </nobr><br><a name="bms_ME"></a><a name="subkey_ME"></a><a href="../files/stream_lines_presentation.htm"><b>measured</b></a> <br><nobr>menu <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/editing_field_presentations.htm"><b>2</b></a> <a href="../files/displaying_tables.htm"><b>3</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>4</b></a> <a href="../files/deformed_shape_presentation.htm"><b>5</b></a> <a href="../files/cut_lines_resentation.htm"><b>6</b></a> <a href="../files/cut_lines_presentation.htm"><b>7</b></a> <a href="../files/creating_xy_plot.htm"><b>8</b></a> <a href="../files/creating_tables_from_cut_lines_presentations.htm"><b>9</b></a> <a href="../files/creating_presentations.htm"><b>10</b></a> <a href="../files/creating_field_presentations.htm"><b>11</b></a> <a href="../files/creating_curves.htm"><b>12</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>13</b></a> <a href="../files/animating_presentations.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/selection_in_visu.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/renaming_presentations.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="../files/getting_elements_attributes.htm"><b>25</b></a> </nobr><br><a href="../files/running_visu.htm"><b>menus</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/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="../files/vectors_presentation.htm"><b>6</b></a> <a href="../files/stream_lines_presentation.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> </nobr><br><a href="../files/getting_elements_attributes.htm"><b>meshes</b></a> <br><a href="../files/about_tables.htm"><b>methods</b></a> <br><br><br></p><p class="ftsbody" align="center"><a href="whlstf3.htm" target="_self" title="previous search group"><b>>></b></a>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words List</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-<p class="ftsbody" align="center"><a href="whlstf2.htm" target="_self" title="previous search group"><b><<</b></a><br><br></p>\r
-<p class="ftsbody">\r
-<a name="bms_MI"></a><a name="subkey_MI"></a><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> </nobr><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="../files/about_tables.htm"><b>2</b></a> <a href="../files/vectors_presentation.htm"><b>3</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>4</b></a> <a href="../files/selection_in_visu.htm"><b>5</b></a> <a href="../files/scalar_map_presentation.htm"><b>6</b></a> </nobr><br><a href="../files/displaying_hiding_presentations.htm"><b>modify</b></a> <br><a href="../files/creating_tables_from_cut_lines_presentations.htm"><b>modifying</b></a> <br><nobr>module <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/about_structure_of_med_object.htm"><b>2</b></a> <a href="../files/selection_in_visu.htm"><b>3</b></a> <a href="../files/scalar_map_presentation.htm"><b>4</b></a> <a href="../files/running_visu.htm"><b>5</b></a> <a href="../files/introduction_to_visu.htm"><b>6</b></a> <a href="../files/getting_started.htm"><b>7</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>moment</b></a> <br><nobr>mouse <a href="../files/displaying_hiding_presentations.htm"><b>1</b></a> <a href="../files/selection_in_visu.htm"><b>2</b></a> </nobr><br><a href="../files/creating_xy_plot.htm"><b>move</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>\r
-<br><br>\r
-<nobr><a name="bm_N"></a><a name="subkey_NA"></a>name <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../files/creating_curves.htm"><b>2</b></a> <a href="../files/renaming_presentations.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><a href="../files/setting_properties_of_xy_plots.htm"><b>names</b></a> <br><a name="bms_NB"></a><a name="subkey_NB"></a><a href="../files/scalar_map_presentation.htm"><b>nb</b></a> <br><a name="bms_NE"></a><a name="subkey_NE"></a><a href="../files/importing_tables.htm"><b>necessary</b></a> <br><nobr>new <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../files/creating_tables_from_cut_lines_presentations.htm"><b>2</b></a> <a href="../files/creating_field_presentations.htm"><b>3</b></a> <a href="../files/scalar_map_presentation.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> </nobr><br><a href="../files/animating_presentations.htm"><b>next</b></a> <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/stream_lines_presentation.htm"><b>1</b></a> <a href="../files/scaling_presentations.htm"><b>2</b></a> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>normal</b></a> <br><a href="../files/scalar_map_presentation.htm"><b>note</b></a> <br><nobr><a name="bms_NU"></a><a name="subkey_NU"></a>number <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/sweeping.htm"><b>3</b></a> <a href="../files/stream_lines_presentation.htm"><b>4</b></a> <a href="../files/selection_in_visu.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> </nobr><br><a href="../files/setting_properties_of_xy_plots.htm"><b>numerical</b></a> <br>\r
-<br><br>\r
-<nobr><a name="bm_O"></a><a name="subkey_OB"></a>object <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/editing_field_presentations.htm"><b>2</b></a> <a href="../files/displaying_tables.htm"><b>3</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>4</b></a> <a href="../files/deformed_shape_presentation.htm"><b>5</b></a> <a href="../files/cut_lines_resentation.htm"><b>6</b></a> <a href="../files/cut_lines_presentation.htm"><b>7</b></a> <a href="../files/creating_xy_plot.htm"><b>8</b></a> <a href="../files/creating_tables_from_cut_lines_presentations.htm"><b>9</b></a> <a href="../files/creating_presentations.htm"><b>10</b></a> <a href="../files/creating_field_presentations.htm"><b>11</b></a> <a href="../files/creating_curves.htm"><b>12</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>13</b></a> <a href="../files/animating_presentations.htm"><b>14</b></a> <a href="../files/about_structure_of_med_object.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/selection_in_visu.htm"><b>19</b></a> <a href="../files/scalar_map_presentation.htm"><b>20</b></a> <a href="../files/renaming_presentations.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="../files/getting_elements_attributes.htm"><b>25</b></a> </nobr><br><nobr>objects <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="../files/importing_med_objects.htm"><b>3</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 name="bms_OF"></a><a name="subkey_OF"></a><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/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_curves.htm"><b>5</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.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/selection_in_visu.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/renaming_presentations.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> </nobr><br><a name="bms_ON"></a><a name="subkey_ON"></a><a href="../files/creating_curves.htm"><b>once</b></a> <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/changing_visualization_parameters_of_the_presenetation.htm"><b>8</b></a> <a href="../files/animating_presentations.htm"><b>9</b></a> <a href="../files/about_structure_of_med_object.htm"><b>10</b></a> <a href="../files/vectors_presentation.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/selection_in_visu.htm"><b>14</b></a> <a href="../files/scaling_presentations.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> </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>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> </nobr><br><a href="../files/cut_lines_presentation.htm"><b>operation</b></a> <br><a href="../files/displaying_hiding_presentations.htm"><b>operations</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>optimization</b></a> <br><nobr>option <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/editing_field_presentations.htm"><b>2</b></a> <a href="../files/displaying_tables.htm"><b>3</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>4</b></a> <a href="../files/deformed_shape_presentation.htm"><b>5</b></a> <a href="../files/creating_tables_from_cut_lines_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="../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/selection_in_visu.htm"><b>13</b></a> <a href="../files/importing_med_objects.htm"><b>14</b></a> </nobr><br><nobr>options <a href="../files/editing_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/setting_properties_of_xy_plots.htm"><b>4</b></a> <a href="../files/importing_med_objects.htm"><b>5</b></a> </nobr><br><nobr><a name="bms_OR"></a><a name="subkey_OR"></a>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="../files/scalar_map_presentation.htm"><b>3</b></a> </nobr><br><a href="../files/scalar_map_presentation.htm"><b>origin</b></a> <br><a name="bms_OU"></a><a name="subkey_OU"></a><a href="../files/scalar_map_presentation.htm"><b>out</b></a> <br><a href="../files/selection_in_visu.htm"><b>outline</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>output</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>\r
-<br><br>\r
-<nobr><a name="bm_P"></a><a name="subkey_PA"></a>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> </nobr><br><nobr>parameters <a href="../files/editing_field_presentations.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_curves.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/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/iso_surfaces_presentation.htm"><b>13</b></a> <a href="../files/getting_started.htm"><b>14</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/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/stream_lines_presentation.htm"><b>4</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>parts</b></a> <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 name="bms_PE"></a><a name="subkey_PE"></a><a href="../files/about_structure_of_med_object.htm"><b>performed</b></a> <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="../files/renaming_presentations.htm"><b>personal</b></a> <br><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>picture <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/importing_tables.htm"><b>2</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>pictures</b></a> <br><nobr><a name="bms_PL"></a><a name="subkey_PL"></a>placed <a href="../files/cut_lines_presentation.htm"><b>1</b></a> <a href="../files/creating_curves.htm"><b>2</b></a> </nobr><br><a href="../files/cut_lines_presentation.htm"><b>plane</b></a> <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/sweeping.htm"><b>3</b></a> </nobr><br><nobr>platform <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/running_visu.htm"><b>2</b></a> <a href="../files/introduction_to_visu.htm"><b>3</b></a> </nobr><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> </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><nobr>plot2dview <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../files/creating_curves.htm"><b>2</b></a> </nobr><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/creating_curves.htm"><b>3</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>4</b></a> <a href="../files/introduction_to_visu.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="../files/selection_in_visu.htm"><b>2</b></a> <a href="../files/getting_elements_attributes.htm"><b>3</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="../files/stream_lines_presentation.htm"><b>3</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>4</b></a> <a href="../files/selection_in_visu.htm"><b>5</b></a> <a href="../files/getting_elements_attributes.htm"><b>6</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>polyline</b></a> <br><nobr>pop <a href="../files/editing_field_presentations.htm"><b>1</b></a> <a href="../files/displaying_tables.htm"><b>2</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>3</b></a> <a href="../files/deformed_shape_presentation.htm"><b>4</b></a> <a href="../files/cut_lines_resentation.htm"><b>5</b></a> <a href="../files/cut_lines_presentation.htm"><b>6</b></a> <a href="../files/creating_xy_plot.htm"><b>7</b></a> <a href="../files/creating_tables_from_cut_lines_presentations.htm"><b>8</b></a> <a href="../files/creating_presentations.htm"><b>9</b></a> <a href="../files/creating_field_presentations.htm"><b>10</b></a> <a href="../files/creating_curves.htm"><b>11</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>12</b></a> <a href="../files/animating_presentations.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/selection_in_visu.htm"><b>17</b></a> <a href="../files/scalar_map_presentation.htm"><b>18</b></a> <a href="../files/renaming_presentations.htm"><b>19</b></a> <a href="../files/iso_surfaces_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="../files/vectors_presentation.htm"><b>3</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>4</b></a> </nobr><br><a href="../files/creating_field_presentations.htm"><b>possible</b></a> <br><a href="../files/introduction_to_visu.htm"><b>post</b></a> <br><nobr><a name="bms_PR"></a><a name="subkey_PR"></a>preferences <a href="../files/sweeping.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> <a href="../files/running_visu.htm"><b>3</b></a> <a href="../files/importing_med_objects.htm"><b>4</b></a> </nobr><br><a href="../files/scalar_map_presentation.htm"><b>present</b></a> <br><nobr>presentation <a href="../files/editing_field_presentations.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_tables_from_cut_lines_presentations.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="../files/animating_presentations.htm"><b>10</b></a> <a href="../files/about_structure_of_med_object.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/selection_in_visu.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/renaming_presentations.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> </nobr><br><nobr>presentations <a href="../files/editing_field_presentations.htm"><b>1</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>2</b></a> <a href="../files/cut_lines_presentation.htm"><b>3</b></a> <a href="../files/creating_tables_from_cut_lines_presentations.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_tables.htm"><b>9</b></a> <a href="../files/about_structure_of_med_object.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/selection_in_visu.htm"><b>13</b></a> <a href="../files/scaling_presentations.htm"><b>14</b></a> <a href="../files/scalar_map_presentation.htm"><b>15</b></a> <a href="../files/running_visu.htm"><b>16</b></a> <a href="../files/renaming_presentations.htm"><b>17</b></a> <a href="../files/introduction_to_visu.htm"><b>18</b></a> <a href="../files/importing_med_objects.htm"><b>19</b></a> <a href="../files/getting_started.htm"><b>20</b></a> </nobr><br><a href="../files/selection_in_visu.htm"><b>press</b></a> <br><a href="../files/selection_in_visu.htm"><b>pressed</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> </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="../files/iso_surfaces_presentation.htm"><b>3</b></a> <a href="../files/importing_tables.htm"><b>4</b></a> </nobr><br><a href="../files/about_tables.htm"><b>pro</b></a> <br><a href="../files/cut_lines_presentation.htm"><b>procedure</b></a> <br><a href="../files/sweeping.htm"><b>process</b></a> <br><a href="../files/introduction_to_visu.htm"><b>processing</b></a> <br><a href="../files/introduction_to_visu.htm"><b>produced</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="../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> </nobr><br><a href="../files/animating_presentations.htm"><b>proportional</b></a> <br><a href="../files/introduction_to_visu.htm"><b>provides</b></a> <br><a name="bms_PS"></a><a name="subkey_PS"></a><a href="../files/sweeping.htm"><b>pseudo</b></a> <br><a name="bms_PU"></a><a name="subkey_PU"></a><a href="../files/stream_lines_presentation.htm"><b>purposes</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="../files/about_tables.htm"><b>python</b></a> <br>\r
-<br><br>\r
-<a name="bm_Q"></a><a name="subkey_QU"></a><a href="../files/about_structure_of_med_object.htm"><b>quadrangles</b></a> <br><nobr>quit <a href="../files/creating_xy_plot.htm"><b>1</b></a> <a href="../files/scaling_presentations.htm"><b>2</b></a> </nobr><br>\r
-<br><br>\r
-<nobr><a name="bm_R"></a><a name="subkey_RA"></a>range <a href="../files/deformed_shape_presentation.htm"><b>1</b></a> <a href="../files/animating_presentations.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="../files/iso_surfaces_presentation.htm"><b>5</b></a> </nobr><br><a href="../files/about_tables.htm"><b>ranged</b></a> <br><a href="../files/about_tables.htm"><b>rarefied</b></a> <br><br><br></p><p class="ftsbody" align="center"><a href="whlstf4.htm" target="_self" title="previous search group"><b>>></b></a>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words List</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-<p class="ftsbody" align="center"><a href="whlstf3.htm" target="_self" title="previous search group"><b><<</b></a><br><br></p>\r
-<p class="ftsbody">\r
-<a name="bms_RE"></a><a name="subkey_RE"></a><a href="../files/animating_presentations.htm"><b>real</b></a> <br><a href="../files/about_tables.htm"><b>reference</b></a> <br><a href="../files/creating_xy_plot.htm"><b>references</b></a> <br><a href="../files/sweeping.htm"><b>regarding</b></a> <br><a href="../files/cut_lines_presentation.htm"><b>regular</b></a> <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/cut_lines_presentation.htm"><b>2</b></a> </nobr><br><a href="../files/scalar_map_presentation.htm"><b>relevant</b></a> <br><a href="../files/creating_curves.htm"><b>remove</b></a> <br><a href="../files/renaming_presentations.htm"><b>rename</b></a> <br><nobr>renaming <a href="../files/editing_field_presentations.htm"><b>1</b></a> <a href="../files/renaming_presentations.htm"><b>2</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>render</b></a> <br><a href="../files/sweeping.htm"><b>repeated</b></a> <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/sweeping.htm"><b>3</b></a> <a href="../files/scaling_presentations.htm"><b>4</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>representations</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>represented</b></a> <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> </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> </nobr><br><nobr>required <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/displaying_tables.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/getting_elements_attributes.htm"><b>6</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>requires</b></a> <br><a href="../files/scaling_presentations.htm"><b>reset</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>resources</b></a> <br><a href="../files/cut_lines_presentation.htm"><b>result</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>resulting</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>results</b></a> <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> </nobr><br><a href="../files/cut_lines_presentation.htm"><b>reuses</b></a> <br><nobr><a name="bms_RI"></a><a name="subkey_RI"></a>right <a href="../files/editing_field_presentations.htm"><b>1</b></a> <a href="../files/displaying_tables.htm"><b>2</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>3</b></a> <a href="../files/deformed_shape_presentation.htm"><b>4</b></a> <a href="../files/cut_lines_resentation.htm"><b>5</b></a> <a href="../files/cut_lines_presentation.htm"><b>6</b></a> <a href="../files/creating_xy_plot.htm"><b>7</b></a> <a href="../files/creating_tables_from_cut_lines_presentations.htm"><b>8</b></a> <a href="../files/creating_presentations.htm"><b>9</b></a> <a href="../files/creating_field_presentations.htm"><b>10</b></a> <a href="../files/creating_curves.htm"><b>11</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>12</b></a> <a href="../files/animating_presentations.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/setting_properties_of_xy_plots.htm"><b>17</b></a> <a href="../files/selection_in_visu.htm"><b>18</b></a> <a href="../files/scalar_map_presentation.htm"><b>19</b></a> <a href="../files/renaming_presentations.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> </nobr><br><nobr><a name="bms_RO"></a><a name="subkey_RO"></a>rotation <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>rotations <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>row <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/about_tables.htm"><b>2</b></a> </nobr><br><a name="bms_RU"></a><a name="subkey_RU"></a><a href="../files/running_visu.htm"><b>run</b></a> <br><nobr>running <a href="../files/animating_presentations.htm"><b>1</b></a> <a href="../files/running_visu.htm"><b>2</b></a> </nobr><br>\r
-<br><br>\r
-<a name="bm_S"></a><a name="subkey_S{"></a><a href="../files/about_structure_of_med_object.htm"><b>s</b></a> <br><nobr><a name="bms_SA"></a><a name="subkey_SA"></a>salome <a href="../files/exploring_med_files.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/sweeping.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/running_visu.htm"><b>7</b></a> <a href="../files/introduction_to_visu.htm"><b>8</b></a> <a href="../files/importing_med_objects.htm"><b>9</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="../files/scalar_map_presentation.htm"><b>5</b></a> <a href="../files/importing_med_objects.htm"><b>6</b></a> </nobr><br><nobr>save <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="../files/scalar_map_presentation.htm"><b>3</b></a> </nobr><br><a href="../files/sweeping.htm"><b>saved</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_tables_from_cut_lines_presentations.htm"><b>4</b></a> <a href="../files/creating_field_presentations.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="../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/setting_properties_of_xy_plots.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> </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/scaling_presentations.htm"><b>3</b></a> <a href="../files/scalar_map_presentation.htm"><b>4</b></a> </nobr><br><nobr>scaling <a href="../files/editing_field_presentations.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/vectors_presentation.htm"><b>3</b></a> <a href="../files/setting_properties_of_xy_plots.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> </nobr><br><a href="../files/about_tables.htm"><b>script</b></a> <br><nobr><a name="bms_SE"></a><a name="subkey_SE"></a>search <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/importing_med_objects.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_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_tables.htm"><b>7</b></a> <a href="../files/about_structure_of_med_object.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_tables.htm"><b>13</b></a> <a href="../files/importing_med_objects.htm"><b>14</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/editing_field_presentations.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_tables_from_cut_lines_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/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/setting_properties_of_xy_plots.htm"><b>15</b></a> <a href="../files/selection_in_visu.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/running_visu.htm"><b>19</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>20</b></a> <a href="../files/importing_tables.htm"><b>21</b></a> <a href="../files/importing_med_objects.htm"><b>22</b></a> </nobr><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/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/selection_in_visu.htm"><b>7</b></a> <a href="../files/scalar_map_presentation.htm"><b>8</b></a> <a href="../files/getting_elements_attributes.htm"><b>9</b></a> </nobr><br><a href="../files/editing_field_presentations.htm"><b>selecting</b></a> <br><nobr>selection <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/selection_in_visu.htm"><b>2</b></a> <a href="../files/getting_elements_attributes.htm"><b>3</b></a> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>sensitive</b></a> <br><a href="../files/displaying_tables.htm"><b>separate</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>serve</b></a> <br><nobr>sessions <a href="../files/sweeping.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.htm"><b>2</b></a> </nobr><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/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/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/setting_properties_of_xy_plots.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/iso_surfaces_presentation.htm"><b>15</b></a> <a href="../files/importing_med_objects.htm"><b>16</b></a> <a href="../files/getting_started.htm"><b>17</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/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="../files/setting_properties_of_xy_plots.htm"><b>7</b></a> <a href="../files/scalar_map_presentation.htm"><b>8</b></a> <a href="../files/running_visu.htm"><b>9</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>10</b></a> </nobr><br><a href="../files/setting_properties_of_xy_plots.htm"><b>settings</b></a> <br><a href="../files/animating_presentations.htm"><b>setup</b></a> <br><nobr><a name="bms_SH"></a><a name="subkey_SH"></a>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="../files/sweeping.htm"><b>3</b></a> </nobr><br><a href="../files/selection_in_visu.htm"><b>shift</b></a> <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/about_structure_of_med_object.htm"><b>4</b></a> <a href="../files/sweeping.htm"><b>5</b></a> <a href="../files/running_visu.htm"><b>6</b></a> <a href="../files/getting_elements_attributes.htm"><b>7</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="../files/setting_properties_of_xy_plots.htm"><b>4</b></a> </nobr><br><a href="../files/animating_presentations.htm"><b>shows</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>shrink</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>shrinked</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>shrinking</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="../files/cut_lines_presentation.htm"><b>2</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>similar</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/importing_med_objects.htm"><b>3</b></a> </nobr><br><nobr>size <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="../files/getting_elements_attributes.htm"><b>3</b></a> </nobr><br><a name="bms_SM"></a><a name="subkey_SM"></a><a href="../files/stream_lines_presentation.htm"><b>smaller</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>smoother</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>smoothness</b></a> <br><a name="bms_SO"></a><a name="subkey_SO"></a><a href="../files/animating_presentations.htm"><b>so</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/selection_in_visu.htm"><b>3</b></a> <a href="../files/getting_elements_attributes.htm"><b>4</b></a> </nobr><br><a href="../files/about_tables.htm"><b>special</b></a> <br><a href="../files/editing_field_presentations.htm"><b>specific</b></a> <br><a href="../files/animating_presentations.htm"><b>specified</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>specify</b></a> <br><a href="../files/stream_lines_presentation.htm"><b>specifying</b></a> <br><a href="../files/animating_presentations.htm"><b>speed</b></a> <br><a href="../files/setting_properties_of_xy_plots.htm"><b>spline</b></a> <br><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/animating_presentations.htm"><b>3</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="../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> </nobr><br><nobr>standard <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>2</b></a> <a href="../files/running_visu.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> </nobr><br><nobr>start <a href="../files/animating_presentations.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="../files/getting_started.htm"><b>started</b></a> <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/getting_started.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> </nobr><br><nobr>stored <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>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><nobr>structure <a href="../files/exploring_med_files.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_structure_of_med_object.htm"><b>4</b></a> <a href="../files/stream_lines_presentation.htm"><b>5</b></a> <a href="../files/importing_med_objects.htm"><b>6</b></a> </nobr><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/running_visu.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="../files/getting_started.htm"><b>7</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/about_structure_of_med_object.htm"><b>3</b></a> </nobr><br><a href="../files/about_structure_of_med_object.htm"><b>subfolders</b></a> <br><nobr>submenu <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> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>submenus</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/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="../files/renaming_presentations.htm"><b>5</b></a> <a href="../files/getting_started.htm"><b>6</b></a> <a href="../files/getting_elements_attributes.htm"><b>7</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_to_visu.htm"><b>3</b></a> </nobr><br><a href="../files/importing_med_objects.htm"><b>supplementary</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> </nobr><br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>surfaceframe</b></a> <br><nobr>surfaces <a href="../files/cut_lines_resentation.htm"><b>1</b></a> <a href="../files/sweeping.htm"><b>2</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>3</b></a> </nobr><br><br><br></p><p class="ftsbody" align="center"><a href="whlstf5.htm" target="_self" title="previous search group"><b>>></b></a>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words List</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-<p class="ftsbody" align="center"><a href="whlstf4.htm" target="_self" title="previous search group"><b><<</b></a><br><br></p>\r
-<p class="ftsbody">\r
-<a name="bms_SW"></a><a name="subkey_SW"></a><a href="../files/sweeping.htm"><b>sweep</b></a> <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>\r
-<br><br>\r
-<nobr><a name="bm_T"></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> </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_tables_from_cut_lines_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="../files/setting_properties_of_xy_plots.htm"><b>7</b></a> <a href="../files/importing_tables.htm"><b>8</b></a> <a href="../files/getting_started.htm"><b>9</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_tables_from_cut_lines_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/setting_properties_of_xy_plots.htm"><b>6</b></a> <a href="../files/introduction_to_visu.htm"><b>7</b></a> <a href="../files/importing_tables.htm"><b>8</b></a> </nobr><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> </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="../files/scalar_map_presentation.htm"><b>text</b></a> <br><nobr><a name="bms_TH"></a><a name="subkey_TH"></a>them <a href="../files/about_tables.htm"><b>1</b></a> <a href="../files/selection_in_visu.htm"><b>2</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>3</b></a> <a href="../files/importing_med_objects.htm"><b>4</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>thought</b></a> <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> </nobr><br><nobr><a name="bms_TI"></a><a name="subkey_TI"></a>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/animating_presentations.htm"><b>6</b></a> <a href="../files/about_structure_of_med_object.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/importing_med_objects.htm"><b>13</b></a> </nobr><br><a href="../files/sweeping.htm"><b>times</b></a> <br><a href="../files/animating_presentations.htm"><b>timing</b></a> <br><nobr>title <a href="../files/setting_properties_of_xy_plots.htm"><b>1</b></a> <a href="../files/scalar_map_presentation.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><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="../files/changing_visualization_parameters_of_the_presenetation.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/selection_in_visu.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/running_visu.htm"><b>12</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>13</b></a> </nobr><br><a href="../files/running_visu.htm"><b>toolbars</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><a href="../files/about_structure_of_med_object.htm"><b>tree</b></a> <br><a href="../files/about_structure_of_med_object.htm"><b>triangles</b></a> <br><nobr><a name="bms_TW"></a><a name="subkey_TW"></a>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="../files/importing_med_objects.htm"><b>5</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/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="../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> </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> </nobr><br>\r
-<br><br>\r
-<nobr><a name="bm_U"></a><a name="subkey_UN"></a>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="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>unshrink</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>unshrinked</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>unshrinking</b></a> <br><nobr><a name="bms_UP"></a><a name="subkey_UP"></a>up <a href="../files/editing_field_presentations.htm"><b>1</b></a> <a href="../files/displaying_tables.htm"><b>2</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>3</b></a> <a href="../files/deformed_shape_presentation.htm"><b>4</b></a> <a href="../files/cut_lines_resentation.htm"><b>5</b></a> <a href="../files/cut_lines_presentation.htm"><b>6</b></a> <a href="../files/creating_xy_plot.htm"><b>7</b></a> <a href="../files/creating_tables_from_cut_lines_presentations.htm"><b>8</b></a> <a href="../files/creating_presentations.htm"><b>9</b></a> <a href="../files/creating_field_presentations.htm"><b>10</b></a> <a href="../files/creating_curves.htm"><b>11</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>12</b></a> <a href="../files/animating_presentations.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/selection_in_visu.htm"><b>17</b></a> <a href="../files/scalar_map_presentation.htm"><b>18</b></a> <a href="../files/renaming_presentations.htm"><b>19</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>20</b></a> </nobr><br><nobr>update <a href="../files/creating_tables_from_cut_lines_presentations.htm"><b>1</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>2</b></a> </nobr><br><a href="../files/running_visu.htm"><b>updated</b></a> <br><a href="../files/importing_med_objects.htm"><b>uploaded</b></a> <br><nobr><a name="bms_US"></a><a name="subkey_US"></a>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/creating_curves.htm"><b>3</b></a> <a href="../files/animating_presentations.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> </nobr><br><nobr>user <a href="../files/about_structure_of_med_object.htm"><b>1</b></a> <a href="../files/sweeping.htm"><b>2</b></a> </nobr><br><nobr>using <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/deformed_shape_presentation.htm"><b>2</b></a> <a href="../files/creating_curves.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/getting_elements_attributes.htm"><b>7</b></a> </nobr><br><a href="../files/stream_lines_presentation.htm"><b>usually</b></a> <br>\r
-<br><br>\r
-<a name="bm_V"></a><a name="subkey_V{"></a><a href="../files/creating_curves.htm"><b>v</b></a> <br><nobr><a name="bms_VA"></a><a name="subkey_VA"></a>validate <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>1</b></a> <a href="../files/animating_presentations.htm"><b>2</b></a> </nobr><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="../files/stream_lines_presentation.htm"><b>4</b></a> <a href="../files/scalar_map_presentation.htm"><b>5</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>6</b></a> <a href="../files/getting_elements_attributes.htm"><b>7</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_tables_from_cut_lines_presentations.htm"><b>4</b></a> <a href="../files/creating_field_presentations.htm"><b>5</b></a> <a href="../files/creating_curves.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="../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> </nobr><br><a href="../files/introduction_to_visu.htm"><b>various</b></a> <br><nobr><a name="bms_VE"></a><a name="subkey_VE"></a>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> </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> </nobr><br><nobr>vertical <a href="../files/setting_properties_of_xy_plots.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>very</b></a> <br><nobr><a name="bms_VI"></a><a name="subkey_VI"></a>view <a href="../files/editing_field_presentations.htm"><b>1</b></a> <a href="../files/displaying_tables.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/about_structure_of_med_object.htm"><b>5</b></a> <a href="../files/getting_started.htm"><b>6</b></a> <a href="../files/getting_elements_attributes.htm"><b>7</b></a> </nobr><br><nobr>viewer <a href="../files/editing_field_presentations.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_tables_from_cut_lines_presentations.htm"><b>7</b></a> <a href="../files/creating_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/about_tables.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/setting_properties_of_xy_plots.htm"><b>15</b></a> <a href="../files/selection_in_visu.htm"><b>16</b></a> <a href="../files/scalar_map_presentation.htm"><b>17</b></a> <a href="../files/running_visu.htm"><b>18</b></a> <a href="../files/renaming_presentations.htm"><b>19</b></a> <a href="../files/iso_surfaces_presentation.htm"><b>20</b></a> <a href="../files/getting_elements_attributes.htm"><b>21</b></a> </nobr><br><nobr>visu <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/editing_field_presentations.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_tables_from_cut_lines_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/animating_presentations.htm"><b>8</b></a> <a href="../files/about_tables.htm"><b>9</b></a> <a href="../files/about_structure_of_med_object.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/selection_in_visu.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_to_visu.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> </nobr><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="../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/introduction_to_visu.htm"><b>10</b></a> </nobr><br><a href="../files/vectors_presentation.htm"><b>visualize</b></a> <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><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>visually</b></a> <br><a name="bms_VT"></a><a name="subkey_VT"></a><a href="../files/running_visu.htm"><b>vtk</b></a> <br>\r
-<br><br>\r
-<a name="bm_W"></a><a name="subkey_WA"></a><a href="../files/selection_in_visu.htm"><b>want</b></a> <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/selection_in_visu.htm"><b>2</b></a> <a href="../files/scalar_map_presentation.htm"><b>3</b></a> </nobr><br><a name="bms_WH"></a><a name="subkey_WH"></a><a href="../files/animating_presentations.htm"><b>wheel</b></a> <br><a href="../files/selection_in_visu.htm"><b>white</b></a> <br><nobr>whole <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/selection_in_visu.htm"><b>3</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> </nobr><br><nobr>will <a href="../files/exploring_med_files.htm"><b>1</b></a> <a href="../files/displaying_tables.htm"><b>2</b></a> <a href="../files/displaying_hiding_presentations.htm"><b>3</b></a> <a href="../files/deformed_shape_presentation.htm"><b>4</b></a> <a href="../files/cut_lines_resentation.htm"><b>5</b></a> <a href="../files/cut_lines_presentation.htm"><b>6</b></a> <a href="../files/creating_xy_plot.htm"><b>7</b></a> <a href="../files/creating_tables_from_cut_lines_presentations.htm"><b>8</b></a> <a href="../files/creating_presentations.htm"><b>9</b></a> <a href="../files/creating_field_presentations.htm"><b>10</b></a> <a href="../files/creating_curves.htm"><b>11</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>12</b></a> <a href="../files/animating_presentations.htm"><b>13</b></a> <a href="../files/about_structure_of_med_object.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/selection_in_visu.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/renaming_presentations.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> </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="../files/selection_in_visu.htm"><b>3</b></a> <a href="../files/running_visu.htm"><b>4</b></a> </nobr><br><a href="../files/creating_xy_plot.htm"><b>windows</b></a> <br><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>wireframe</b></a> <br><a href="../files/about_tables.htm"><b>without</b></a> <br><a name="bms_WO"></a><a name="subkey_WO"></a><a href="../files/importing_med_objects.htm"><b>work</b></a> <br><a href="../files/getting_elements_attributes.htm"><b>would</b></a> <br>\r
-<br><br>\r
-<nobr><a name="bm_X"></a><a name="subkey_X{"></a>x <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>2</b></a> <a href="../files/scaling_presentations.htm"><b>3</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><a name="bms_XM"></a><a name="subkey_XM"></a><a href="../files/importing_tables.htm"><b>xml</b></a> <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/creating_curves.htm"><b>4</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>5</b></a> <a href="../files/introduction_to_visu.htm"><b>6</b></a> </nobr><br>\r
-<br><br>\r
-<nobr><a name="bm_Y"></a><a name="subkey_Y{"></a>y <a href="../files/creating_curves.htm"><b>1</b></a> <a href="../files/setting_properties_of_xy_plots.htm"><b>2</b></a> <a href="../files/scaling_presentations.htm"><b>3</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_tables_from_cut_lines_presentations.htm"><b>7</b></a> <a href="../files/creating_curves.htm"><b>8</b></a> <a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><b>9</b></a> <a href="../files/animating_presentations.htm"><b>10</b></a> <a href="../files/vectors_presentation.htm"><b>11</b></a> <a href="../files/stream_lines_presentation.htm"><b>12</b></a> <a href="../files/selection_in_visu.htm"><b>13</b></a> <a href="../files/scaling_presentations.htm"><b>14</b></a> <a href="../files/scalar_map_presentation.htm"><b>15</b></a> <a href="../files/renaming_presentations.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> </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> </nobr><br>\r
-<br><br>\r
-<a name="bm_Z"></a><a name="subkey_Z{"></a><a href="../files/scaling_presentations.htm"><b>z</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> </nobr><br><br><br></p>\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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 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_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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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_BO" target="ftslist" title="search letter BO"><b>BO</b></a> <a href="whlstf0.htm#bms_BR" target="ftslist" title="search letter BR"><b>BR</b></a> <a href="whlstf0.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf2.htm#bm_M" target="ftslist" title="search letter MA"><b>MA</b></a> <a href="whlstf2.htm#bms_ME" target="ftslist" title="search letter ME"><b>ME</b></a> <a href="whlstf3.htm#bms_MI" target="ftslist" title="search letter MI"><b>MI</b></a> <a href="whlstf3.htm#bms_MO" target="ftslist" title="search letter MO"><b>MO</b></a> <a href="whlstf3.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf3.htm#bm_N" target="ftslist" title="search letter NA"><b>NA</b></a> <a href="whlstf3.htm#bms_NB" target="ftslist" title="search letter NB"><b>NB</b></a> <a href="whlstf3.htm#bms_NE" target="ftslist" title="search letter NE"><b>NE</b></a> <a href="whlstf3.htm#bms_NO" target="ftslist" title="search letter NO"><b>NO</b></a> <a href="whlstf3.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf3.htm#bm_O" target="ftslist" title="search letter OB"><b>OB</b></a> <a href="whlstf3.htm#bms_OF" target="ftslist" title="search letter OF"><b>OF</b></a> <a href="whlstf3.htm#bms_OK" target="ftslist" title="search letter OK"><b>OK</b></a> <a href="whlstf3.htm#bms_ON" target="ftslist" title="search letter ON"><b>ON</b></a> <a href="whlstf3.htm#bms_OP" target="ftslist" title="search letter OP"><b>OP</b></a> <a href="whlstf3.htm#bms_OR" target="ftslist" title="search letter OR"><b>OR</b></a> <a href="whlstf3.htm#bms_OU" target="ftslist" title="search letter OU"><b>OU</b></a> <a href="whlstf3.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf3.htm#bm_P" target="ftslist" title="search letter PA"><b>PA</b></a> <a href="whlstf3.htm#bms_PE" target="ftslist" title="search letter PE"><b>PE</b></a> <a href="whlstf3.htm#bms_PH" target="ftslist" title="search letter PH"><b>PH</b></a> <a href="whlstf3.htm#bms_PI" target="ftslist" title="search letter PI"><b>PI</b></a> <a href="whlstf3.htm#bms_PL" target="ftslist" title="search letter PL"><b>PL</b></a> <a href="whlstf3.htm#bms_PO" target="ftslist" title="search letter PO"><b>PO</b></a> <a href="whlstf3.htm#bms_PR" target="ftslist" title="search letter PR"><b>PR</b></a> <a href="whlstf3.htm#bms_PS" target="ftslist" title="search letter PS"><b>PS</b></a> <a href="whlstf3.htm#bms_PU" target="ftslist" title="search letter PU"><b>PU</b></a> <a href="whlstf3.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf3.htm#bm_R" target="ftslist" title="search letter RA"><b>RA</b></a> <a href="whlstf4.htm#bms_RE" target="ftslist" title="search letter RE"><b>RE</b></a> <a href="whlstf4.htm#bms_RI" target="ftslist" title="search letter RI"><b>RI</b></a> <a href="whlstf4.htm#bms_RO" target="ftslist" title="search letter RO"><b>RO</b></a> <a href="whlstf4.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf4.htm#bm_S" target="ftslist" title="search letter S "><b>S </b></a> <a href="whlstf4.htm#bms_SA" target="ftslist" title="search letter SA"><b>SA</b></a> <a href="whlstf4.htm#bms_SC" target="ftslist" title="search letter SC"><b>SC</b></a> <a href="whlstf4.htm#bms_SE" target="ftslist" title="search letter SE"><b>SE</b></a> <a href="whlstf4.htm#bms_SH" target="ftslist" title="search letter SH"><b>SH</b></a> <a href="whlstf4.htm#bms_SI" target="ftslist" title="search letter SI"><b>SI</b></a> <a href="whlstf4.htm#bms_SM" target="ftslist" title="search letter SM"><b>SM</b></a> <a href="whlstf4.htm#bms_SO" target="ftslist" title="search letter SO"><b>SO</b></a> <a href="whlstf4.htm#bms_SP" target="ftslist" title="search letter SP"><b>SP</b></a> <a href="whlstf4.htm#bms_ST" target="ftslist" title="search letter ST"><b>ST</b></a> <a href="whlstf4.htm#bms_SU" target="ftslist" title="search letter SU"><b>SU</b></a> <a href="whlstf5.htm#bms_SW" target="ftslist" title="search letter SW"><b>SW</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf5.htm#bm_T" target="ftslist" title="search letter TA"><b>TA</b></a> <a href="whlstf5.htm#bms_TE" target="ftslist" title="search letter TE"><b>TE</b></a> <a href="whlstf5.htm#bms_TH" target="ftslist" title="search letter TH"><b>TH</b></a> <a href="whlstf5.htm#bms_TI" target="ftslist" title="search letter TI"><b>TI</b></a> <a href="whlstf5.htm#bms_TO" target="ftslist" title="search letter TO"><b>TO</b></a> <a href="whlstf5.htm#bms_TR" target="ftslist" title="search letter TR"><b>TR</b></a> <a href="whlstf5.htm#bms_TW" target="ftslist" title="search letter TW"><b>TW</b></a> <a href="whlstf5.htm#bms_TX" target="ftslist" title="search letter TX"><b>TX</b></a> <a href="whlstf5.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf5.htm#bm_U" target="ftslist" title="search letter UN"><b>UN</b></a> <a href="whlstf5.htm#bms_UP" target="ftslist" title="search letter UP"><b>UP</b></a> <a href="whlstf5.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf5.htm#bm_V" target="ftslist" title="search letter V "><b>V </b></a> <a href="whlstf5.htm#bms_VA" target="ftslist" title="search letter VA"><b>VA</b></a> <a href="whlstf5.htm#bms_VE" target="ftslist" title="search letter VE"><b>VE</b></a> <a href="whlstf5.htm#bms_VI" target="ftslist" title="search letter VI"><b>VI</b></a> <a href="whlstf5.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf5.htm#bm_W" target="ftslist" title="search letter WA"><b>WA</b></a> <a href="whlstf5.htm#bms_WE" target="ftslist" title="search letter WE"><b>WE</b></a> <a href="whlstf5.htm#bms_WH" target="ftslist" title="search letter WH"><b>WH</b></a> <a href="whlstf5.htm#bms_WI" target="ftslist" title="search letter WI"><b>WI</b></a> <a href="whlstf5.htm#bms_WO" target="ftslist" title="search letter WO"><b>WO</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf0.htm#bm_C" target="ftslist" title="search letter CA"><b>CA</b></a> <a href="whlstf0.htm#bms_CE" target="ftslist" title="search letter CE"><b>CE</b></a> <a href="whlstf0.htm#bms_CH" target="ftslist" title="search letter CH"><b>CH</b></a> <a href="whlstf0.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="whlstf1.htm#bms_CR" target="ftslist" title="search letter CR"><b>CR</b></a> <a href="whlstf1.htm#bms_CT" target="ftslist" title="search letter CT"><b>CT</b></a> <a href="whlstf1.htm#bms_CU" target="ftslist" title="search letter CU"><b>CU</b></a> <a href="whlstf1.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf5.htm#bm_X" target="ftslist" title="search letter X "><b>X </b></a> <a href="whlstf5.htm#bms_XL" target="ftslist" title="search letter XL"><b>XL</b></a> <a href="whlstf5.htm#bms_XM" target="ftslist" title="search letter XM"><b>XM</b></a> <a href="whlstf5.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf5.htm#bm_Y" target="ftslist" title="search letter Y "><b>Y </b></a> <a href="whlstf5.htm#bms_YO" target="ftslist" title="search letter YO"><b>YO</b></a> <a href="whlstf5.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf5.htm#bm_Z" target="ftslist" title="search letter Z "><b>Z </b></a> <a href="whlstf5.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf1.htm#bm_D" target="ftslist" title="search letter DA"><b>DA</b></a> <a href="whlstf1.htm#bms_DE" target="ftslist" title="search letter DE"><b>DE</b></a> <a href="whlstf1.htm#bms_DI" target="ftslist" title="search letter DI"><b>DI</b></a> <a href="whlstf1.htm#bms_DO" target="ftslist" title="search letter DO"><b>DO</b></a> <a href="whlstf1.htm#bms_DU" target="ftslist" title="search letter DU"><b>DU</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf1.htm#bm_E" target="ftslist" title="search letter ED"><b>ED</b></a> <a href="whlstf1.htm#bms_EL" target="ftslist" title="search letter EL"><b>EL</b></a> <a href="whlstf1.htm#bms_EM" target="ftslist" title="search letter EM"><b>EM</b></a> <a href="whlstf1.htm#bms_EN" target="ftslist" title="search letter EN"><b>EN</b></a> <a href="whlstf1.htm#bms_EQ" target="ftslist" title="search letter EQ"><b>EQ</b></a> <a href="whlstf1.htm#bms_ER" target="ftslist" title="search letter ER"><b>ER</b></a> <a href="whlstf1.htm#bms_EV" target="ftslist" title="search letter EV"><b>EV</b></a> <a href="whlstf1.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf2.htm#bm_F" target="ftslist" title="search letter FA"><b>FA</b></a> <a href="whlstf2.htm#bms_FE" target="ftslist" title="search letter FE"><b>FE</b></a> <a href="whlstf2.htm#bms_FI" target="ftslist" title="search letter FI"><b>FI</b></a> <a href="whlstf2.htm#bms_FO" target="ftslist" title="search letter FO"><b>FO</b></a> <a href="whlstf2.htm#bms_FR" target="ftslist" title="search letter FR"><b>FR</b></a> <a href="whlstf2.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf2.htm#bm_G" target="ftslist" title="search letter GE"><b>GE</b></a> <a href="whlstf2.htm#bms_GI" target="ftslist" title="search letter GI"><b>GI</b></a> <a href="whlstf2.htm#bms_GL" target="ftslist" title="search letter GL"><b>GL</b></a> <a href="whlstf2.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf2.htm#bm_H" target="ftslist" title="search letter H "><b>H </b></a> <a href="whlstf2.htm#bms_HA" target="ftslist" title="search letter HA"><b>HA</b></a> <a href="whlstf2.htm#bms_HE" target="ftslist" title="search letter HE"><b>HE</b></a> <a href="whlstf2.htm#bms_HI" target="ftslist" title="search letter HI"><b>HI</b></a> <a href="whlstf2.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf2.htm#bm_I" target="ftslist" title="search letter IC"><b>IC</b></a> <a href="whlstf2.htm#bms_ID" target="ftslist" title="search letter ID"><b>ID</b></a> <a href="whlstf2.htm#bms_IF" target="ftslist" title="search letter IF"><b>IF</b></a> <a href="whlstf2.htm#bms_IM" target="ftslist" title="search letter IM"><b>IM</b></a> <a href="whlstf2.htm#bms_IN" target="ftslist" title="search letter IN"><b>IN</b></a> <a href="whlstf2.htm#bms_IS" target="ftslist" title="search letter IS"><b>IS</b></a> <a href="whlstf2.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>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Search Words letter</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<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="whlstf2.htm#bm_L" target="ftslist" title="search letter LA"><b>LA</b></a> <a href="whlstf2.htm#bms_LE" target="ftslist" title="search letter LE"><b>LE</b></a> <a href="whlstf2.htm#bms_LI" target="ftslist" title="search letter LI"><b>LI</b></a> <a href="whlstf2.htm#bms_LO" target="ftslist" title="search letter LO"><b>LO</b></a> <a href="whnvl32.htm#home" target="_self" title="back to top level"><b>^</b></a></p>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Glossary words list</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.glsheader {margin-left:10pt; margin-top:0pt;}\r
-.glsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.glsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; }A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-<p class="glsbody">\r
-\r
-<br><a name="bm_C"></a>\r
-<nobr><b>Cell</b></nobr><br>\r
-Element of a mesh. Cells are determined by their connectivity. They can have 0,1,2 or 3 dimension.<br>\r
-\r
-<br><a name=""></a>\r
-<nobr><b>Component</b></nobr><br>\r
-One integer or real value can correspond to each component of a field and to each entity of a mesh<br>\r
-\r
-<br><a name="bm_D"></a>\r
-<nobr><b>Descendant connectivity</b></nobr><br>\r
-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.<br>\r
-\r
-<br><a name="bm_E"></a>\r
-<nobr><b>Edge</b></nobr><br>\r
-An edge of a volumetric or surface mesh. It is composed of 2 or 3 nodes (2 vertex nodes and optionally one middle node).<br>\r
-\r
-<br><a name=""></a>\r
-<nobr><b>Entity of a mesh</b></nobr><br>\r
-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.<br>\r
-\r
-<br><a name=""></a>\r
-<nobr><b>Equivalence</b></nobr><br>\r
-Equivalence represents a list of correspondance 2 by 2 of the entities of the same dimension.<br>\r
-\r
-<br><a name="bm_F"></a>\r
-<nobr><b>Face</b></nobr><br>\r
-Face of a volumetrical cell (triangle, quadrangle).<br>\r
-\r
-<br><a name=""></a>\r
-<nobr><b>Family</b></nobr><br>\r
-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.<br>\r
-\r
-<br><a name=""></a>\r
-<nobr><b>Field</b></nobr><br>\r
-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.<br>\r
-\r
-<br><a name=""></a>\r
-<nobr><b>Field profile</b></nobr><br>\r
-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.<br>\r
-\r
-<br><a name="bm_G"></a>\r
-<nobr><b>Group</b></nobr><br>\r
-Unordered set of entities of a mesh. One entity can belong to several groups.<br>\r
-\r
-<br><a name="bm_M"></a>\r
-<nobr><b>Mesh</b></nobr><br>\r
-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).<br>\r
-\r
-<br><a name="bm_N"></a>\r
-<nobr><b>Nodal connectivity</b></nobr><br>\r
-It is a description of an entity of the mesh by an ordered list of nodes constituting this entity.<br>\r
-\r
-<br><a name=""></a>\r
-<nobr><b>Node</b></nobr><br>\r
-Node can be an isolated node of a mesh, a vertex or middle node of an edge. A node is associated to a point.<br>\r
-\r
-<br><a name="bm_P"></a>\r
-<nobr><b>Point</b></nobr><br>\r
-Geometrical entity determined by its coordinates in the space.<br>\r
-\r
-<br><a name="bm_R"></a>\r
-<nobr><b>Reference connectivity</b></nobr><br>\r
-For each type of entity of a mesh, reference connectivity define the topology of an entity.<br>\r
-\r
-<br><a name=""></a>\r
-<nobr><b>Result</b></nobr><br>\r
-List of fields referring to one mesh.<br>\r
-\r
-<br><a name="bm_S"></a>\r
-<nobr><b>Study</b></nobr><br>\r
-Study represents a chain of sequences of calculations.<br>\r
-<br><br></p>\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Index words list</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ndxheader {margin-left:10pt; margin-top:0pt;}\r
-.ndxbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-\r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Content</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.tocbody {margin-left:10pt; margin-top:0pt;}\r
-.bo {}\r
-.bc {}\r
-.pn {}\r
-.pr {}\r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-<table border=0>\r
-<tr><td>\r
-<p class="tocbody">\r
-<nobr><a name="1"></a><a href="whlstt1.htm#1" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> VISU module</a></nobr><br>\r
-</p>\r
-\r
-</td></tr>\r
-<tr><td>\r
-<p><img src="whexpbar.gif" > <p>\r
-</td></tr>\r
-</table>\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Content</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.tocbody {margin-left:10pt; margin-top:0pt;}\r
-.bo {}\r
-.bc {}\r
-.pn {}\r
-.pr {}\r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-<table border=0>\r
-<tr><td>\r
-<p class="tocbody">\r
-<nobr><a name="1"></a><a href="whlstt0.htm#1" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> VISU module</a></nobr><br>\r
- <nobr><a href="../files/introduction_to_visu.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Introduction to VISU</a></nobr><br>\r
- <nobr><a href="../files/getting_started.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Getting started</a></nobr><br>\r
- <nobr><a href="../files/running_visu.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Running VISU</a></nobr><br>\r
- <nobr><a href="../files/importing_med_objects.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Importing MED files</a></nobr><br>\r
- <nobr><a href="../files/about_structure_of_med_object.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> About the structure of MED objects</a></nobr><br>\r
- <nobr><a name="2"></a><a href="whlstt2.htm#2" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> 3D presentations</a></nobr><br>\r
- <nobr><a name="5"></a><a href="whlstt5.htm#5" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> Table presentations</a></nobr><br>\r
- <nobr><a name="6"></a><a href="whlstt6.htm#6" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> XY plots</a></nobr><br>\r
-</p>\r
-\r
-</td></tr>\r
-<tr><td>\r
-<p><img src="whexpbar.gif" > <p>\r
-</td></tr>\r
-</table>\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Content</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.tocbody {margin-left:10pt; margin-top:0pt;}\r
-.bo {}\r
-.bc {}\r
-.pn {}\r
-.pr {}\r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-<table border=0>\r
-<tr><td>\r
-<p class="tocbody">\r
-<nobr><a name="1"></a><a href="whlstt0.htm#1" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> VISU module</a></nobr><br>\r
- <nobr><a href="../files/introduction_to_visu.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Introduction to VISU</a></nobr><br>\r
- <nobr><a href="../files/getting_started.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Getting started</a></nobr><br>\r
- <nobr><a href="../files/running_visu.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Running VISU</a></nobr><br>\r
- <nobr><a href="../files/importing_med_objects.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Importing MED files</a></nobr><br>\r
- <nobr><a href="../files/about_structure_of_med_object.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> About the structure of MED objects</a></nobr><br>\r
- <nobr><a name="2"></a><a href="whlstt1.htm#2" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> 3D presentations</a></nobr><br>\r
- <nobr><a name="3"></a><a href="whlstt3.htm#3" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> Presentations of submeshes</a></nobr><br>\r
- <nobr><a name="4"></a><a href="whlstt4.htm#4" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> Field presentations</a></nobr><br>\r
- <nobr><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Setting presentation view parameters </a></nobr><br>\r
- <nobr><a href="../files/displaying_hiding_presentations.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Operations with presentations</a></nobr><br>\r
- <nobr><a href="../files/renaming_presentations.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Renaming presentations</a></nobr><br>\r
- <nobr><a href="../files/scaling_presentations.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Scaling presentations</a></nobr><br>\r
- <nobr><a href="../files/getting_elements_attributes.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Getting elements attributes</a></nobr><br>\r
- <nobr><a name="5"></a><a href="whlstt5.htm#5" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> Table presentations</a></nobr><br>\r
- <nobr><a name="6"></a><a href="whlstt6.htm#6" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> XY plots</a></nobr><br>\r
-</p>\r
-\r
-</td></tr>\r
-<tr><td>\r
-<p><img src="whexpbar.gif" > <p>\r
-</td></tr>\r
-</table>\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Content</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.tocbody {margin-left:10pt; margin-top:0pt;}\r
-.bo {}\r
-.bc {}\r
-.pn {}\r
-.pr {}\r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-<table border=0>\r
-<tr><td>\r
-<p class="tocbody">\r
-<nobr><a name="1"></a><a href="whlstt0.htm#1" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> VISU module</a></nobr><br>\r
- <nobr><a href="../files/introduction_to_visu.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Introduction to VISU</a></nobr><br>\r
- <nobr><a href="../files/getting_started.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Getting started</a></nobr><br>\r
- <nobr><a href="../files/running_visu.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Running VISU</a></nobr><br>\r
- <nobr><a href="../files/importing_med_objects.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Importing MED files</a></nobr><br>\r
- <nobr><a href="../files/about_structure_of_med_object.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> About the structure of MED objects</a></nobr><br>\r
- <nobr><a name="2"></a><a href="whlstt1.htm#2" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> 3D presentations</a></nobr><br>\r
- <nobr><a name="3"></a><a href="whlstt2.htm#3" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> Presentations of submeshes</a></nobr><br>\r
- <nobr><a href="../files/creating_presentations.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Creating presentations</a></nobr><br>\r
- <nobr><a name="4"></a><a href="whlstt4.htm#4" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> Field presentations</a></nobr><br>\r
- <nobr><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Setting presentation view parameters </a></nobr><br>\r
- <nobr><a href="../files/displaying_hiding_presentations.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Operations with presentations</a></nobr><br>\r
- <nobr><a href="../files/renaming_presentations.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Renaming presentations</a></nobr><br>\r
- <nobr><a href="../files/scaling_presentations.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Scaling presentations</a></nobr><br>\r
- <nobr><a href="../files/getting_elements_attributes.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Getting elements attributes</a></nobr><br>\r
- <nobr><a name="5"></a><a href="whlstt5.htm#5" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> Table presentations</a></nobr><br>\r
- <nobr><a name="6"></a><a href="whlstt6.htm#6" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> XY plots</a></nobr><br>\r
-</p>\r
-\r
-</td></tr>\r
-<tr><td>\r
-<p><img src="whexpbar.gif" > <p>\r
-</td></tr>\r
-</table>\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Content</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.tocbody {margin-left:10pt; margin-top:0pt;}\r
-.bo {}\r
-.bc {}\r
-.pn {}\r
-.pr {}\r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-<table border=0>\r
-<tr><td>\r
-<p class="tocbody">\r
-<nobr><a name="1"></a><a href="whlstt0.htm#1" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> VISU module</a></nobr><br>\r
- <nobr><a href="../files/introduction_to_visu.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Introduction to VISU</a></nobr><br>\r
- <nobr><a href="../files/getting_started.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Getting started</a></nobr><br>\r
- <nobr><a href="../files/running_visu.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Running VISU</a></nobr><br>\r
- <nobr><a href="../files/importing_med_objects.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Importing MED files</a></nobr><br>\r
- <nobr><a href="../files/about_structure_of_med_object.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> About the structure of MED objects</a></nobr><br>\r
- <nobr><a name="2"></a><a href="whlstt1.htm#2" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> 3D presentations</a></nobr><br>\r
- <nobr><a name="3"></a><a href="whlstt3.htm#3" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> Presentations of submeshes</a></nobr><br>\r
- <nobr><a name="4"></a><a href="whlstt2.htm#4" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> Field presentations</a></nobr><br>\r
- <nobr><a href="../files/creating_field_presentations.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Creating field presentations</a></nobr><br>\r
- <nobr><a href="../files/scalar_map_presentation.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Scalar Map presentation</a></nobr><br>\r
- <nobr><a href="../files/iso_surfaces_presentation.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Iso Surfaces presentation</a></nobr><br>\r
- <nobr><a href="../files/cut_lines_resentation.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Cut Planes presentation</a></nobr><br>\r
- <nobr><a href="../files/cut_lines_presentation.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Cut Lines presentation</a></nobr><br>\r
- <nobr><a href="../files/deformed_shape_presentation.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Deformed Shape presentation</a></nobr><br>\r
- <nobr><a href="../files/vectors_presentation.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Vectors presentation</a></nobr><br>\r
- <nobr><a href="../files/stream_lines_presentation.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Stream Lines presentation</a></nobr><br>\r
- <nobr><a href="../files/editing_field_presentations.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Editing field presentations</a></nobr><br>\r
- <nobr><a href="../files/sweeping.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Sweeping</a></nobr><br>\r
- <nobr><a href="../files/animating_presentations.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Animating presentations</a></nobr><br>\r
- <nobr><a href="../files/changing_visualization_parameters_of_the_presenetation.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Setting presentation view parameters </a></nobr><br>\r
- <nobr><a href="../files/displaying_hiding_presentations.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Operations with presentations</a></nobr><br>\r
- <nobr><a href="../files/renaming_presentations.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Renaming presentations</a></nobr><br>\r
- <nobr><a href="../files/scaling_presentations.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Scaling presentations</a></nobr><br>\r
- <nobr><a href="../files/getting_elements_attributes.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Getting elements attributes</a></nobr><br>\r
- <nobr><a name="5"></a><a href="whlstt5.htm#5" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> Table presentations</a></nobr><br>\r
- <nobr><a name="6"></a><a href="whlstt6.htm#6" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> XY plots</a></nobr><br>\r
-</p>\r
-\r
-</td></tr>\r
-<tr><td>\r
-<p><img src="whexpbar.gif" > <p>\r
-</td></tr>\r
-</table>\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Content</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.tocbody {margin-left:10pt; margin-top:0pt;}\r
-.bo {}\r
-.bc {}\r
-.pn {}\r
-.pr {}\r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-<table border=0>\r
-<tr><td>\r
-<p class="tocbody">\r
-<nobr><a name="1"></a><a href="whlstt0.htm#1" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> VISU module</a></nobr><br>\r
- <nobr><a href="../files/introduction_to_visu.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Introduction to VISU</a></nobr><br>\r
- <nobr><a href="../files/getting_started.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Getting started</a></nobr><br>\r
- <nobr><a href="../files/running_visu.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Running VISU</a></nobr><br>\r
- <nobr><a href="../files/importing_med_objects.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Importing MED files</a></nobr><br>\r
- <nobr><a href="../files/about_structure_of_med_object.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> About the structure of MED objects</a></nobr><br>\r
- <nobr><a name="2"></a><a href="whlstt2.htm#2" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> 3D presentations</a></nobr><br>\r
- <nobr><a name="5"></a><a href="whlstt1.htm#5" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> Table presentations</a></nobr><br>\r
- <nobr><a href="../files/about_tables.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> About tables</a></nobr><br>\r
- <nobr><a href="../files/importing_tables.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Importing/exporting tables</a></nobr><br>\r
- <nobr><a href="../files/displaying_tables.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Displaying tables</a></nobr><br>\r
- <nobr><a name="6"></a><a href="whlstt6.htm#6" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> XY plots</a></nobr><br>\r
-</p>\r
-\r
-</td></tr>\r
-<tr><td>\r
-<p><img src="whexpbar.gif" > <p>\r
-</td></tr>\r
-</table>\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Content</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.tocbody {margin-left:10pt; margin-top:0pt;}\r
-.bo {}\r
-.bc {}\r
-.pn {}\r
-.pr {}\r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-<table border=0>\r
-<tr><td>\r
-<p class="tocbody">\r
-<nobr><a name="1"></a><a href="whlstt0.htm#1" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> VISU module</a></nobr><br>\r
- <nobr><a href="../files/introduction_to_visu.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Introduction to VISU</a></nobr><br>\r
- <nobr><a href="../files/getting_started.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Getting started</a></nobr><br>\r
- <nobr><a href="../files/running_visu.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Running VISU</a></nobr><br>\r
- <nobr><a href="../files/importing_med_objects.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Importing MED files</a></nobr><br>\r
- <nobr><a href="../files/about_structure_of_med_object.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> About the structure of MED objects</a></nobr><br>\r
- <nobr><a name="2"></a><a href="whlstt2.htm#2" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> 3D presentations</a></nobr><br>\r
- <nobr><a name="5"></a><a href="whlstt5.htm#5" target="_self" title="closed book"><img src="../wht_toc1.gif" border="0" align="absmiddle"> Table presentations</a></nobr><br>\r
- <nobr><a name="6"></a><a href="whlstt1.htm#6" target="_self"><img src="../wht_toc2.gif" border="0" align="absmiddle"> XY plots</a></nobr><br>\r
- <nobr><a href="../files/creating_curves.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Creating curves</a></nobr><br>\r
- <nobr><a href="../files/creating_xy_plot.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Creating XY plots</a></nobr><br>\r
- <nobr><a href="../files/setting_properties_of_xy_plots.htm"><img src="../wht_toc3.gif" border="0" align="absmiddle"> Setting properties of XY plots</a></nobr><br>\r
-</p>\r
-\r
-</td></tr>\r
-<tr><td>\r
-<p><img src="whexpbar.gif" > <p>\r
-</td></tr>\r
-</table>\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>toc frame</title>\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-</head>\r
-<frameset rows="100%, *" border="0" frameborder="0">\r
- <frame name="toctree" title="toc tree frame" src="whlstt0.htm"></frame>\r
-</frameset>\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Index frame</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-</head>\r
-<frameset rows="40, *" border="0" frameborder="0">\r
- <frame name="ndxletter" title="index letter frame" src="whnvl31.htm" noresize frameborder="1" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>\r
- <frame name="ndxlist" title="index list frame" src="whlsti0.htm"></frame>\r
-</frameset>\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>search frame</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-</head>\r
-<frameset rows="40, *" border="0" frameborder="0">\r
- <frame name="ftsletter" title="search letter frame" src="whnvl32.htm" noresize frameborder="1" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>\r
- <frame name="ftslist" title="seach word frame" src="whlstf0.htm"></frame>\r
-</frameset>\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Glossary frame</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-</head>\r
-<frameset rows="40, *" border="0" frameborder="0">\r
- <frame name="glsletter" title="glossary letter frame" src="whnvl33.htm" noresize frameborder="1" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>\r
- <frame name="glslist" title="glossary defination frame" src="whlstg0.htm"></frame>\r
-</frameset>\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Index Letters</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ndxheader {margin-left:10pt; margin-top:0pt;}\r
-.ndxbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-\r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-\r
-<body>\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Search Letters</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-<p class="ftsheader">\r
-<a name="home"></a> <a href="whlstf0.htm#bm_{" target="ftslist"title="search non-alphabet letter" ><b>#</b></a> \r
- <a href="whlstfl0.htm#subkey_A" target="_self"title="search letter A"><b>A</b></a> \r
- <a href="whlstfl1.htm#subkey_B" target="_self"title="search letter B"><b>B</b></a> \r
- <a href="whlstfl2.htm#subkey_C" target="_self"title="search letter C"><b>C</b></a> \r
- <a href="whlstfl3.htm#subkey_D" target="_self"title="search letter D"><b>D</b></a> \r
- <a href="whlstfl4.htm#subkey_E" target="_self"title="search letter E"><b>E</b></a> \r
- <a href="whlstfl5.htm#subkey_F" target="_self"title="search letter F"><b>F</b></a> \r
- <a href="whlstfl6.htm#subkey_G" target="_self"title="search letter G"><b>G</b></a> \r
- <a href="whlstfl7.htm#subkey_H" target="_self"title="search letter H"><b>H</b></a> \r
- <a href="whlstfl8.htm#subkey_I" target="_self"title="search letter I"><b>I</b></a> \r
- <font class="inactive">J</font> \r
- <font class="inactive">K</font> \r
- <a href="whlstfl9.htm#subkey_L" target="_self"title="search letter L"><b>L</b></a> \r
- <a href="whlstfl10.htm#subkey_M" target="_self"title="search letter M"><b>M</b></a> \r
- <a href="whlstfl11.htm#subkey_N" target="_self"title="search letter N"><b>N</b></a> \r
- <a href="whlstfl12.htm#subkey_O" target="_self"title="search letter O"><b>O</b></a> \r
- <a href="whlstfl13.htm#subkey_P" target="_self"title="search letter P"><b>P</b></a> \r
- <a href="whlstf3.htm#bm_Q" target="ftslist"title="search letter Q" ><b>Q</b></a> \r
- <a href="whlstfl14.htm#subkey_R" target="_self"title="search letter R"><b>R</b></a> \r
- <a href="whlstfl15.htm#subkey_S" target="_self"title="search letter S"><b>S</b></a> \r
- <a href="whlstfl16.htm#subkey_T" target="_self"title="search letter T"><b>T</b></a> \r
- <a href="whlstfl17.htm#subkey_U" target="_self"title="search letter U"><b>U</b></a> \r
- <a href="whlstfl18.htm#subkey_V" target="_self"title="search letter V"><b>V</b></a> \r
- <a href="whlstfl19.htm#subkey_W" target="_self"title="search letter W"><b>W</b></a> \r
- <a href="whlstfl20.htm#subkey_X" target="_self"title="search letter X"><b>X</b></a> \r
- <a href="whlstfl21.htm#subkey_Y" target="_self"title="search letter Y"><b>Y</b></a> \r
- <a href="whlstfl22.htm#subkey_Z" target="_self"title="search letter Z"><b>Z</b></a> \r
-</p>\r
-\r
-<body>\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Glossary Letters</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.glsheader {margin-left:10pt; margin-top:0pt;}\r
-.glsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.glsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; }A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-<style>\r
-<!--\r
-body {background-color:White; } \r
--->\r
-</style>\r
-</head>\r
-<body marginheight="0" marginwidth="0">\r
-<p class="glsheader">\r
- <font class="inactive">#</font> \r
- <font class="inactive">A</font> \r
- <font class="inactive">B</font> \r
- <a href="whlstg0.htm#bm_C" target="glslist"title="glossary letter C"><b>C</b></a> \r
- <a href="whlstg0.htm#bm_D" target="glslist"title="glossary letter D"><b>D</b></a> \r
- <a href="whlstg0.htm#bm_E" target="glslist"title="glossary letter E"><b>E</b></a> \r
- <a href="whlstg0.htm#bm_F" target="glslist"title="glossary letter F"><b>F</b></a> \r
- <a href="whlstg0.htm#bm_G" target="glslist"title="glossary letter G"><b>G</b></a> \r
- <font class="inactive">H</font> \r
- <font class="inactive">I</font> \r
- <font class="inactive">J</font> \r
- <font class="inactive">K</font> \r
- <font class="inactive">L</font> \r
- <a href="whlstg0.htm#bm_M" target="glslist"title="glossary letter M"><b>M</b></a> \r
- <a href="whlstg0.htm#bm_N" target="glslist"title="glossary letter N"><b>N</b></a> \r
- <font class="inactive">O</font> \r
- <a href="whlstg0.htm#bm_P" target="glslist"title="glossary letter P"><b>P</b></a> \r
- <font class="inactive">Q</font> \r
- <a href="whlstg0.htm#bm_R" target="glslist"title="glossary letter R"><b>R</b></a> \r
- <a href="whlstg0.htm#bm_S" target="glslist"title="glossary letter S"><b>S</b></a> \r
- <font class="inactive">T</font> \r
- <font class="inactive">U</font> \r
- <font class="inactive">V</font> \r
- <font class="inactive">W</font> \r
- <font class="inactive">X</font> \r
- <font class="inactive">Y</font> \r
- <font class="inactive">Z</font> \r
-</p>\r
-\r
-<body>\r
-</html>\r
-\r
+++ /dev/null
-<!-- WebHelp version 2002 -->\r
-<html>\r
-<head>\r
-<title> Content Navigation Pane </title>\r
-<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
-<style>\r
-\r
-</style>\r
-</head>\r
-<frameset rows="36, *" border="0" frameborder="0">\r
- <frame name="toctabs" title="tab selection frame" src="whnvt30.htm" noresize frameborder="no" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>\r
- <frame name="toclist" title="content frame" src="whlstt0.htm"></frame>\r
-</frameset>\r
-</html>
\ No newline at end of file
+++ /dev/null
-<!-- WebHelp version 2002 -->\r
-<html>\r
-<head>\r
-<title> Index Navigation Pane </title>\r
-<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
-<style>\r
-\r
-</style>\r
-</head>\r
-<frameset rows="36, *" border="0" frameborder="0">\r
- <frame name="ndxtabs" title="tab selection frame" src="whnvt31.htm" noresize frameborder="no" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>\r
- <frame name="ndxdata" title="index frame" src="whnvf31.htm"></frame>\r
-</frameset>\r
-</html>
\ No newline at end of file
+++ /dev/null
-<!-- WebHelp version 2002 -->\r
-<html>\r
-<head>\r
-<title> Search Navigation Pane </title>\r
-<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
-<style>\r
-\r
-</style>\r
-<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
-</head>\r
-<frameset rows="36, *" border="0" frameborder="0">\r
- <frame name="ftstabs" title="tab selection frame" src="whnvt32.htm" noresize frameborder="no" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>\r
- <frame name="ftsdata" title="search frame" src="whnvf32.htm"></frame>\r
-</frameset>\r
-</html>
\ No newline at end of file
+++ /dev/null
-<!-- WebHelp version 2002 -->\r
-<html>\r
-<head>\r
-<title> Glossary Navigation Pane </title>\r
-<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
-<style>\r
-\r
-</style>\r
-</head>\r
-<frameset rows="36, *" border="0" frameborder="0">\r
- <frame name="glstabs" title="tab selection frame" src="whnvt33.htm" noresize frameborder="no" scrolling="no" border="0" marginheight="0" marginwidth="0" ></frame>\r
- <frame name="glsdata" title="glossary frame" src="whnvf33.htm"></frame>\r
-</frameset>\r
-</html>
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Content Navigation Tab</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.tocbody {margin-left:10pt; margin-top:0pt;}\r
-.bo {}\r
-.bc {}\r
-.pn {}\r
-.pr {}\r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body class="tabs" marginheight="0" marginwidth="0">\r
-<table class="tabs" width="100%">\r
- <tr> \r
- <td class="tabs">\r
- <nobr><a href="javascript:void(0)"><img src="../wht_tab1.gif" border="0"></a><a href="whnvp32.htm" target="_parent"><img src="../wht_tab6.gif" border="0"></a><a href="whnvp33.htm" target="_parent"><img src="../wht_tab8.gif" border="0"></a></nobr>\r
- </td>\r
- </tr>\r
-</table>\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Index Navigation Tab</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ndxheader {margin-left:10pt; margin-top:0pt;}\r
-.ndxbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-\r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body class="tabs" marginheight="0" marginwidth="0">\r
-<table class="tabs" width="100%">\r
- <tr> \r
- <td class="tabs">\r
- <nobr><a href="whnvp30.htm" target="_parent"><img src="../wht_tab2.gif" border="0"></a><a href="whnvp32.htm" target="_parent"><img src="../wht_tab6.gif" border="0"></a><a href="whnvp33.htm" target="_parent"><img src="../wht_tab8.gif" border="0"></a></nobr>\r
- </td>\r
- </tr>\r
-</table>\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Search Navigation Tab</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.ftsheader {margin-left:10pt; margin-top:0pt;}\r
-.ftsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.ftsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; } A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body class="tabs" marginheight="0" marginwidth="0">\r
-<table class="tabs" width="100%">\r
- <tr> \r
- <td class="tabs">\r
- <nobr><a href="whnvp30.htm" target="_parent"><img src="../wht_tab2.gif" border="0"></a><a href="javascript:void(0)"><img src="../wht_tab5.gif" border="0"></a><a href="whnvp33.htm" target="_parent"><img src="../wht_tab8.gif" border="0"></a></nobr>\r
- </td>\r
- </tr>\r
-</table>\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<!-- WebHelp version 2002 -->\r
-<title>Glossary Navigation Tab</title>\r
-<base target="bsscright">\r
-<meta name="generator" content="RoboHELP by eHelp Corporation www.ehelp.com">\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<style>\r
-<!--\r
-body {margin-left:1pt; margin-top:1pt; margin-right:1pt;font-family:Arial; font-size:9pt;}\r
-\r
-A:link {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:visited {font-family:Arial; font-size:9pt; color:#000000; font-style:normal; text-decoration:none; }\r
-A:active {background-color:#cccccc;}\r
-A:hover {font-family:Arial; font-size:9pt; color:#007f00; font-style:normal; text-decoration:underline; }\r
-\r
-.tabs {background-color:#c0c0c0;}\r
-.glsheader {margin-left:10pt; margin-top:0pt;}\r
-.glsbody {margin-left:10pt; margin-top:0pt;}\r
-.inactive {color:#666666;}\r
-.glsheader {background-color:White; } \r
-\r
-body {background-color:White; } \r
-p {color:Black; } p {font-family:Tahoma; } p {font-size:8pt; } p {font-style:Normal; } p {text-decoration:none; } \r
-A:link {color:Black; } A:link {font-family:Tahoma; } A:link {font-size:8pt; } A:link {font-style:Normal; } A:link {text-decoration:none; } \r
-A:visited {color:Black; } A:visited {font-family:Tahoma; }A:visited {font-size:8pt; } A:visited {font-style:Normal; } A:visited {text-decoration:none; } \r
-A:active {background-color:Silver; } \r
-A:hover {color:Navy; } A:hover {font-family:Tahoma; } A:hover {font-size:8pt; } A:hover {font-style:Normal; } A:hover {text-decoration:underline; } \r
-\r
--->\r
-</style>\r
-</head>\r
-<body class="tabs" marginheight="0" marginwidth="0">\r
-<table class="tabs" width="100%">\r
- <tr> \r
- <td class="tabs">\r
- <nobr><a href="whnvp30.htm" target="_parent"><img src="../wht_tab2.gif" border="0"></a><a href="whnvp32.htm" target="_parent"><img src="../wht_tab6.gif" border="0"></a><a href="javascript:void(0)"><img src="../wht_tab7.gif" border="0"></a></nobr>\r
- </td>\r
- </tr>\r
-</table>\r
-</body>\r
-\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Glossary Definition</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-var gsBgColor="#ffffff";\r
-var gsBgImage="";\r
-var goGloFont=null;\r
-\r
-function setBackground(sBgImage)\r
-{\r
- gsBgImage=sBgImage;\r
-}\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
- gsBgColor=sBgColor;\r
-}\r
-\r
-function window_Unload()\r
-{\r
- UnRegisterListener2(this, WH_MSG_SHOWGLODEF);\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
- if(gsBgImage&&gsBgImage.length>0)\r
- document.body.background=gsBgImage;\r
- if(gsBgColor&&gsBgColor.length>0)\r
- document.body.bgColor=gsBgColor;\r
-}\r
-\r
-function setFont(sType, sFontName, sFontSize, sFontColor, sFontStyle, sFontWeight, sFontDecoration)\r
-{\r
- var vFont = new whFont(sFontName, sFontSize, sFontColor, sFontStyle, sFontWeight, sFontDecoration);\r
- if (sType == "Normal")\r
- goGloFont = vFont;\r
-}\r
-\r
-function textToHtml_nbsp_specialcare(sText)\r
-{\r
- if (sText == null) return null;\r
- var sHTML= sText;\r
- var re = new RegExp(" ","g");\r
- sHTML= sHTML.replace(re, " ");\r
- return sHTML;\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
- var nMsgId = oMsg.nMessageId;\r
- if (nMsgId == WH_MSG_SHOWGLODEF)\r
- {\r
- document.body.innerHTML = sDefHead + textToHtml_nbsp_specialcare(oMsg.oParam.sDef) + sDefTail;\r
- return true;\r
- }\r
-}\r
-\r
-function GDefWriteClassStyle()\r
-{\r
- var sStyle="<STYLE TYPE='text/css'>\n";\r
- if (gsBgImage)\r
- sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
- else\r
- sStyle+="body {border-top:black 1px solid;}\n";\r
- sStyle+=".definition {"+getFontStyle(goGloFont)+"margin:2;}\n";\r
- sStyle+="</STYLE>";\r
- document.write(sStyle);\r
-}\r
-\r
-if (window.gbWhMsg&&window.gbWhUtil&&window.gbWhProxy&&window.gbWhVer)\r
-{\r
- window.onload=window_OnLoad;\r
- window.onunload = window_Unload;\r
- goGloFont=new whFont("Verdana", "8pt", "#000000", "normal", "normal", "none");\r
- setBackgroundcolor("White"); \r
- \r
- setFont("Normal", "Tahoma","8pt","Black","Normal","Normal","none");\r
- GDefWriteClassStyle();\r
- RegisterListener2(this, WH_MSG_SHOWGLODEF);\r
- var sDefHead = "<p class=\"definition\">";\r
- var sDefTail = "</p>";\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body bgproperties="fixed" bgcolor="white">\r
-</body>\r
-</html>\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Glossary</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-</head>\r
-<body bgcolor=#c0c0c0 scroll=no RIGHTMARGIN=0 BOTTOMMARGIN=0 TOPMARGIN=0 LEFTMARGIN=0>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmozemu.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-var gsBgImage="";\r
-var gsBgColor="";\r
-var goTitleFont=null;\r
-\r
-function setBackground(sBgImage)\r
-{\r
- gsBgImage=sBgImage;\r
-}\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
- gsBgColor=sBgColor;\r
-}\r
-\r
-function setFont(sType, sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
-{\r
- var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
- if(sType=="Title")\r
- goTitleFont=vFont;\r
-}\r
-\r
-function getTermText()\r
-{\r
- var strString="Term:";\r
-strString = "Term:";\r
- return strString;\r
-}\r
-\r
-function getDefinitionText()\r
-{\r
- var strString="Definition for:";\r
-strString = "Definition:";\r
- return strString;\r
-}\r
-\r
-function getHTML()\r
-{\r
- var sHTML="";\r
- sHTML+="<P class=title><nobr> " + getTermText() + "</nobr></p>";\r
- sHTML+="<iframe id=glossaryIFrame title=\"glossary term\" src=\"whgbody.htm\" width=100% height=200 MARGINHEIGHT=0 MARGINWIDTH=0></iframe>";\r
- sHTML+="<P class=title><nobr> " + getDefinitionText() + " <b id=Name></b></nobr></p>";\r
- sHTML+="<iframe id=defIFrame title=\"glossary definition\" src=\"whgdef.htm\" width=100% height=100% MARGINHEIGHT=0 MARGINWIDTH=0></iframe>";\r
- return sHTML;\r
-}\r
-\r
-function writeStyle()\r
-{\r
- var sStyle="<style type='text/css'>";\r
- sStyle+="p.title {" + getFontStyle(goTitleFont) + "margin-top:4;margin-bottom:4}\n";\r
- if (gsBgImage)\r
- sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
- else\r
- sStyle+="body {border-top:black 1px solid;}\n";\r
- sStyle+="</style>";\r
- document.write(sStyle);\r
-}\r
-\r
-\r
-function window_OnResize()\r
-{\r
- setIFrameHeight();\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
- if(gsBgImage&&gsBgImage.length>0)\r
- document.body.background=gsBgImage;\r
- if(gsBgColor&&gsBgColor.length>0)\r
- document.body.bgColor=gsBgColor;\r
- setIFrameHeight();\r
-}\r
-\r
-function setIFrameHeight()\r
-{\r
- var tH=0;\r
- if(gbNav6)\r
- {\r
- tH=parseInt(window.innerHeight)-30;\r
- }\r
- else\r
- {\r
- tH=parseInt(document.body.clientHeight)-4;\r
- }\r
- \r
- var oEle=getElement("glossaryIFrame");\r
- if(oEle)\r
- {\r
- tH=tH-2*parseInt(oEle.offsetTop);\r
- if(tH>0)\r
- {\r
- oEle.style.height=Math.floor(tH*.6);\r
- var oEleDef=getElement("defIFrame");\r
- if(oEleDef)\r
- {\r
- oEleDef.style.height=tH-parseInt(oEle.style.height);\r
- }\r
- }\r
- }\r
-}\r
-\r
-function window_Unload()\r
-{\r
- UnRegisterListener2(this,WH_MSG_SHOWGLODEF);\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
- var nMsgId=oMsg.nMessageId;\r
- if(nMsgId==WH_MSG_SHOWGLODEF)\r
- {\r
- if(getElement("Name"))\r
- getElement("Name").innerHTML=oMsg.oParam.sName;\r
- return true;\r
- }\r
-}\r
-\r
-if(window.gbWhVer&&window.gbWhMsg&&window.gbWhUtil&&window.gbWhProxy)\r
-{\r
- goTitleFont=new whFont("Arial","9pt","#000000","normal","normal","none");\r
- setFont("Title", "Tahoma","8pt","Navy","Normal","Normal","none");\r
- \r
- setBackgroundcolor("White");\r
- window.onresize=window_OnResize;\r
- window.onload=window_OnLoad;\r
- window.onunload=window_Unload;\r
- RegisterListener2(this,WH_MSG_SHOWGLODEF);\r
- writeStyle();\r
- document.write(getHTML());\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-</body>\r
-</html>\r
+++ /dev/null
-var gbXML=false;\r
-var gaDef=new Array();\r
-var gsBgColor="#ffffff";\r
-var gsBgImage="";\r
-var goFont=null;\r
-var goHoverFont=null;\r
-var gsMargin="2pt";\r
-var gsIndent="2pt";\r
-var gsActiveBgColor="#cccccc";\r
-var gbWhGHost=false;\r
-\r
-function setBackground(sBgImage)\r
-{\r
- gsBgImage=sBgImage;\r
-}\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
- gsBgColor=sBgColor;\r
-}\r
-\r
-function setFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
-{\r
- var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
- if(sType=="Normal")\r
- goFont=vFont;\r
- else if(sType=="Hover")\r
- goHoverFont=vFont;\r
-}\r
-\r
-function setActiveBgColor(sBgColor)\r
-{\r
- gsActiveBgColor=sBgColor;\r
-}\r
-\r
-function setMargin(sMargin)\r
-{\r
- gsMargin=sMargin;\r
-}\r
-\r
-function setIndent(sIndent)\r
-{\r
- gsIndent=sIndent;\r
-}\r
-\r
-function writeOneItem(oHTML,bDown,aDataCon,aCurIdxSet,n,aPos,nLevel)\r
-{\r
-\r
- var sHTML="";\r
- var nIdxSet=aCurIdxSet[n];\r
- var nIIdx=aPos[nIdxSet];\r
- var sRawKName = getItemName(aDataCon,nIdxSet,nIIdx);\r
- var sKName=_textToHtml(sRawKName);\r
- var nIndex=insertDef(sKName,_textToHtml_nonbsp(getDef(aDataCon,nIdxSet,nIIdx)));\r
- if(nLevel==1){\r
- sHTML+="<p><nobr><a alt=\"" + sKName+"\" href=\"javascript:void(0);\" onclick=\"showDef("+nIndex;\r
- sHTML+=");return false;\">"+sKName+"</a></nobr></p>";\r
- }\r
- oHTML.addHTML(sHTML,1,bDown,true,sRawKName);\r
-}\r
-\r
-function insertDef(sKName,sDef)\r
-{\r
- var nLength=gaDef.length\r
- var oGlo=new nameDefPair(sKName,sDef);\r
- gaDef[nLength]=oGlo;\r
- return nLength;\r
-}\r
-\r
-function showDef(nDef)\r
-{\r
- if(nDef<gaDef.length)\r
- { \r
- var oParam=gaDef[nDef];\r
- var oMsg=new whMessage(WH_MSG_SHOWGLODEF,this,1,oParam);\r
- SendMessage(oMsg);\r
- }\r
-}\r
-\r
-function nameDefPair(sName,sDef)\r
-{\r
- this.sName=sName;\r
- this.sDef=sDef;\r
-}\r
-\r
-function mergeItems(oHTML,bDown,aDataCon,aCurIdxSet,nLength,aPos,nLevel)\r
-{\r
- for(var i=0;i<nLength;i++)\r
- writeOneItem(oHTML,bDown,aDataCon,aCurIdxSet,i,aPos,nLevel);\r
-}\r
-\r
-function adjustPosition(bDown,aDataCon,aCurIdxSet,nLength,aPos)\r
-{\r
- if(bDown)\r
- {\r
- for(var i=0;i<nLength;i++)\r
- aPos[aCurIdxSet[i]]++;\r
- }\r
- else{\r
- for(var i=0;i<nLength;i++)\r
- aPos[aCurIdxSet[i]]--;\r
- }\r
-}\r
-\r
-function getDef(aDataCon,nIdxSet,nIIdx)\r
-{\r
- if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
- return aDataCon[nIdxSet].aKs[nIIdx].sDef;\r
- else\r
- return null;\r
-}\r
-\r
-function getItemName(aDataCon,nIdxSet,nIIdx)\r
-{\r
- if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
- return aDataCon[nIdxSet].aKs[nIIdx].sName;\r
- else\r
- return null;\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
- if(gsBgImage&&gsBgImage.length>0)\r
- document.body.background=gsBgImage;\r
- if(gsBgColor&&gsBgColor.length>0)\r
- document.body.bgColor=gsBgColor;\r
- document.body.insertAdjacentHTML("beforeEnd",writeLoadingDiv());\r
- loadGlo();\r
- var oMsg=new whMessage(WH_MSG_SHOWGLO,this,1,null)\r
- SendMessage(oMsg);\r
-}\r
-\r
-function loadGlo()\r
-{\r
- if(!gbReady)\r
- {\r
- var oResMsg=new whMessage(WH_MSG_GETPROJINFO,this,1,null);\r
- if(SendMessage(oResMsg)&&oResMsg.oParam)\r
- {\r
- gbReady=true;\r
- var oProj=oResMsg.oParam;\r
- var aProj=oProj.aProj;\r
- gbXML=oProj.bXML;\r
- if(aProj.length>0)\r
- {\r
- var sLangId=aProj[0].sLangId;\r
- for(var i=0;i<aProj.length;i++)\r
- {\r
- if(aProj[i].sGlo!=null&&aProj[i].sGlo!=""&&aProj[i].sLangId==sLangId)\r
- addProjInfo(aProj[i].sPPath,aProj[i].sDPath,aProj[i].sGlo);\r
- }\r
- }\r
- writeDataIFrame();\r
- enEvt();\r
- } \r
- }\r
-}\r
-\r
-function findCKInDom()\r
-{\r
- return true;\r
-}\r
-\r
-function GloWriteClassStyle()\r
-{\r
- var sStyle="<STYLE TYPE='text/css'>\n";\r
- if (gsBgImage)\r
- sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
- else\r
- sStyle+="body {border-top:black 1px solid;}\n";\r
- sStyle+="P {"+getFontStyle(goFont)+"margin-top:"+gsMargin+";margin-bottom:"+gsMargin+";margin-left:"+gsIndent+";}\n";\r
- sStyle+="A:link {"+getFontStyle(goFont)+"}\n";\r
- sStyle+="A:visited {"+getFontStyle(goFont)+"}\n";\r
- sStyle+="A:active {background-color:"+gsActiveBgColor+";}\n";\r
- sStyle+="A:hover {"+getFontStyle(goHoverFont)+"}\n";\r
- sStyle+="</STYLE>"; \r
- document.write(sStyle);\r
-}\r
-\r
-function window_Unload()\r
-{\r
- UnRegisterListener2(this,WH_MSG_PROJECTREADY);\r
- UnRegisterListener2(this,WH_MSG_SHOWGLO);\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
- if(oMsg)\r
- {\r
- var nMsgId=oMsg.nMessageId;\r
- if(nMsgId==WH_MSG_SHOWGLO)\r
- {\r
- if(!gbNav6)\r
- document.body.focus();\r
- }\r
- else if(nMsgId==WH_MSG_PROJECTREADY)\r
- {\r
- loadGlo();\r
- }\r
- }\r
- return true;\r
-}\r
-\r
-if (window.gbWhUtil&&window.gbWhProxy&&window.gbWhVer&&window.gbWhLang&&window.gbWhMsg&&window.gbWhHost)\r
-{\r
- RegisterListener2(this,WH_MSG_PROJECTREADY);\r
- RegisterListener2(this,WH_MSG_SHOWGLO);\r
- goFont=new whFont("Verdana","8pt","#000000","normal","normal","none");\r
- goHoverFont=new whFont("Verdana","8pt","#007f00","normal","normal","underline");\r
- window.onload=window_OnLoad;\r
- window.onbeforeunload=window_BUnload;\r
- window.onunload=window_Unload;\r
- gbWhGHost=true;\r
-}\r
-else\r
- document.location.reload();\r
-\r
+++ /dev/null
-var gaChunks=new Array();\r
-var gaFakes=new Array();\r
-var gaDataCon=null;\r
-var gaData=new Array();\r
-\r
-var gbFindCK=false;;\r
-var gbNeedCalc=false;\r
-var gbScrl=false;\r
-var gbProcess=false;\r
-var gbReady=false;\r
-\r
-var gnCheck=0;\r
-var gnNum=0;\r
-var gnIns=-1;\r
-var gnLoad=0;\r
-var gnRef=-1;\r
-var gnMaxItems=0;\r
-var gnMaxMargin=32000;\r
-var gnNeeded=0;\r
-var gnNKI=-1;\r
-var gnRE=0;\r
-var gnScrlMgn=30;\r
-var gnSE=0;\r
-var gnVisible=0;\r
-var gnItems=0;\r
-var gnUHeight=1;\r
-\r
-var gsBCK=null;\r
-var gsChK=null;\r
-var gsCK=null;\r
-var gsLoadingDivID="LoadingDiv";\r
-var gsLoadingMsg="Loading data, please wait...";\r
-var gsSKA=null;\r
-var gsSKB=null;\r
-\r
-var gbLoadInfo=false;\r
-\r
-function putDataXML(xmlDoc,sDocPath)\r
-{\r
- if(gbLoadInfo)\r
- {\r
- var node=xmlDoc.lastChild;\r
- if(node)\r
- {\r
- var nTotal=0\r
- var aChunk=new Array();\r
- var oC=node.firstChild;\r
- while(oC)\r
- {\r
- if(oC.nodeName=="chunkinfo")\r
- {\r
- var item=new Object();\r
- item.sBK=oC.getAttribute("first");\r
- item.sEK=oC.getAttribute("last");\r
- item.sFileName=oC.getAttribute("url");\r
- item.nNum=parseInt(oC.getAttribute("num"));\r
- nTotal+=item.nNum;\r
- item.nTotal=nTotal;\r
- aChunk[aChunk.length]=item;\r
- }\r
- oC=oC.nextSibling;\r
- }\r
- projReady(aChunk);\r
- }\r
- }\r
- else\r
- {\r
- var node=xmlDoc.lastChild;\r
- if(node)\r
- {\r
- var aData=new Array();\r
- var nPrev=0;\r
- var nNext=0;\r
- var oC=node.firstChild;\r
- while(oC)\r
- {\r
- nPrev=nNext;\r
- if(oC.nodeName=="key")\r
- {\r
- var sName=oC.getAttribute("name");\r
- if(sName&&sName.length>0)\r
- {\r
- var sTarget=oC.getAttribute("target");\r
- var item=new Object();\r
- item.nType=2;\r
- item.sName=sName;\r
- if(sTarget)\r
- item.sTarget=sTarget;\r
- item.nPKOff=nPrev;\r
- aData[aData.length]=item;\r
- var nCurIndex=aData.length;\r
- processKey(oC,aData,item);\r
- nNext=aData.length-nCurIndex;\r
- item.nNKOff=nNext;\r
- }\r
- }\r
- else if(oC.nodeName=="letter")\r
- {\r
- var name=oC.getAttribute("name");\r
- if(name&&name.length>0)\r
- {\r
- var item=new Object();\r
- item.nType=1;\r
- item.sName=name;\r
- item.nPKOff=nPrev;\r
- nNext=0;\r
- item.nNKOff=nNext;\r
- aData[aData.length]=item;\r
- }\r
- }\r
- else if(oC.nodeName=="entry")\r
- {\r
- var name=oC.getAttribute("name");\r
- var def=oC.getAttribute("value");\r
- if(name&&name.length>0)\r
- {\r
- var item=new Object();\r
- item.sName=name;\r
- item.sDef=def;\r
- item.nPKOff=nPrev;\r
- nNext=0;\r
- item.nNKOff=nNext;\r
- aData[aData.length]=item;\r
- }\r
- }\r
- oC=oC.nextSibling;\r
- }\r
- putData(aData);\r
- }\r
- }\r
-}\r
-\r
-function processKey(element,aData,item)\r
-{\r
- var i=0;\r
- var nPrev=0;\r
- var nNext=0;\r
- var oC=element.firstChild;\r
- while(oC)\r
- {\r
- if(oC.nodeName=="topic")\r
- {\r
- var name=oC.getAttribute("name");\r
- var url=oC.getAttribute("url");\r
- if(url&&url.length!=0)\r
- {\r
- if(!name||name.length==0)\r
- name=url;\r
- var topic=new Object();\r
- topic.sName=name;\r
- topic.sURL=url;\r
- if(!item.aTopics)\r
- item.aTopics=new Array();\r
- item.aTopics[item.aTopics.length]=topic;\r
- }\r
- }\r
- else if(oC.nodeName=="key")\r
- {\r
- nPrev=nNext;\r
- var name=oC.getAttribute("name");\r
- if(name&&name.length!=0)\r
- {\r
- var subItem=new Object();\r
- subItem.sName=name;\r
- subItem.nType=3;\r
- subItem.nPKOff=nPrev;\r
- aData[aData.length]=subItem;\r
- var nCurIndex=aData.length;\r
- processKey(oC,aData,subItem);\r
- nNext=aData.length-nCurIndex;\r
- subItem.nNKOff=nNext;\r
- }\r
- }\r
- oC=oC.nextSibling;\r
- }\r
-}\r
-\r
-function putData(aData)\r
-{\r
- endLoading();\r
- var oCData=goCData;\r
- if(oCData)\r
- {\r
- oCData.aKs=aData;\r
- if(gnNKI==-1)\r
- setTimeout("checkReady();",1);\r
- else\r
- {\r
- gsSKA=getKByIdx(oCData,gnNKI);\r
- gbNeedCalc=true;\r
- gbScrl=true;\r
- gnNKI=-1;\r
- if(gsSKA)\r
- setTimeout("checkReady();",1);\r
- else\r
- {\r
- markEnd();\r
- setTimeout("checkAgain();",50);\r
- }\r
- }\r
- }\r
-}\r
-\r
-function markEnd()\r
-{\r
- if(gbProcess)\r
- gbProcess=false;\r
-}\r
-\r
-function endLoading()\r
-{\r
- var oDiv=getElement(gsLoadingDivID);\r
- if(oDiv)\r
- oDiv.style.visibility="hidden";\r
-}\r
-\r
-function markBegin()\r
-{\r
- gbProcess=true;\r
-}\r
-\r
-function beginLoading()\r
-{\r
- var oDiv=getElement(gsLoadingDivID);\r
- if(oDiv)\r
- {\r
- oDiv.style.top=document.body.scrollTop;\r
- oDiv.style.visibility="visible";\r
- }\r
-}\r
-\r
-function indexHTMLPart()\r
-{\r
- this.sHTML="";\r
- this.nNeeded=0;\r
- this.nCurrent=0;\r
- this.nConsumed=0;\r
- this.sFK=null;\r
- this.sLK=null;\r
- this.addHTML=function(sHTML,nConsumed,bDown,bK,sK){\r
- if(bDown)\r
- this.sHTML+=sHTML;\r
- else\r
- this.sHTML=sHTML+this.sHTML;\r
- this.nCurrent++; \r
- this.nConsumed+=nConsumed;\r
- if(bK)\r
- {\r
- if(!this.sFK)\r
- this.sFK=sK;\r
- if(!this.sLK)\r
- this.sLK=sK;\r
- if(bDown)\r
- this.sLK=sK;\r
- else\r
- this.sFK=sK;\r
- }\r
- }\r
- this.appendHTML=function(oHTML,bDown){\r
- this.addSubHTML(oHTML,bDown);\r
- if(!this.sFK)\r
- this.sFK=oHTML.sFK;\r
- if(!this.sLK)\r
- this.sLK=oHTML.sLK;\r
- if(bDown)\r
- this.sLK=oHTML.sLK;\r
- else\r
- this.sFK=oHTML.sFK;\r
- } \r
- \r
- this.addSubHTML=function(oHTML,bDown){\r
- if(bDown)\r
- this.sHTML+=oHTML.sHTML;\r
- else\r
- this.sHTML=oHTML.sHTML+this.sHTML;\r
- this.nCurrent+=oHTML.nCurrent;\r
- this.nConsumed+=oHTML.nConsumed; \r
- }\r
-}\r
-\r
-function getMaxUnits()\r
-{\r
- return Math.floor(gnMaxMargin/gnUHeight)+1;\r
-}\r
-\r
-function getFakeItemsHTMLbyCount(nB,nCount)\r
-{\r
- var nMU=getMaxUnits();\r
- var nNum=Math.floor(nCount/nMU);\r
- var sHTML="";\r
- for(var i=0;i<nNum;i++)\r
- sHTML+=getFakeItemHTML(nB,nMU-1);\r
- \r
- var nRest=nCount%nMU;\r
- sHTML+=getFakeItemHTML(nB,nRest-1);\r
- return sHTML;\r
-}\r
-\r
-function getFakeItemHTML(nB,nNum)\r
-{\r
- return "<h6 name=fk"+nB+" id=fk"+nB+" style=\"margin-top:"+gnUHeight*nNum+";margin-bottom:0\"> </h6>";\r
-}\r
-\r
-function fakeItemsArea(nB,n,sKA,sKB,obj)\r
-{\r
- this.nB=nB;\r
- this.nNum=n;\r
- this.sKA=sKA;\r
- this.sKB=sKB;\r
- this.obj=obj;\r
- this.nMargin=(n-1)*gnUHeight;\r
-\r
- this.setNum=function(n)\r
- {\r
- var nLastobj=-1;\r
- var nDelta=this.nMargin;\r
- this.nMargin=(n-1)*gnUHeight;\r
- nDelta=nDelta-this.nMargin;\r
- if(n>0)\r
- {\r
- this.nNum=n;\r
- var nMU=getMaxUnits();\r
- nLastobj=Math.floor((n-1)/nMU);\r
- if(this.obj.length)\r
- this.obj[nLastobj].style.marginTop=((n-1)%nMU)*gnUHeight;\r
- else\r
- this.obj.style.marginTop=((n-1)%nMU)*gnUHeight;\r
- }\r
- if(this.obj.length)\r
- {\r
- for(var i=this.obj.length-1;i>nLastobj;i--)\r
- removeThis(this.obj[i]);\r
- }\r
- else\r
- {\r
- if(nLastobj==-1)\r
- removeThis(this.obj);\r
- }\r
- return nDelta;\r
- }\r
- this.insertAdjacentHTML=function(sWhere,sHTML)\r
- {\r
- if(sWhere=="beforeBegin")\r
- {\r
- if(this.obj.length)\r
- this.obj[0].insertAdjacentHTML(sWhere,sHTML);\r
- else\r
- this.obj.insertAdjacentHTML(sWhere,sHTML);\r
- }\r
- else if(sWhere=="afterEnd")\r
- {\r
- if(this.obj.length)\r
- {\r
- if(gbMac&&gbIE5&&this.obj[this.obj.length-1].nextSibling)\r
- this.obj[this.obj.length-1].nextSibling.insertAdjacentHTML("beforeBegin",sHTML);\r
- else\r
- this.obj[this.obj.length-1].insertAdjacentHTML(sWhere,sHTML);\r
- }\r
- else\r
- {\r
- if(gbMac&&gbIE5&&this.obj.nextSibling)\r
- this.obj.nextSibling.insertAdjacentHTML("beforeBegin",sHTML);\r
- else\r
- this.obj.insertAdjacentHTML(sWhere,sHTML);\r
- }\r
- }\r
- }\r
- this.getBtm=function()\r
- {\r
- if(this.obj.length)\r
- return this.obj[this.obj.length-1].offsetTop;\r
- else\r
- return this.obj.offsetTop;\r
- }\r
- this.getTop=function()\r
- {\r
- return this.getBtm()-this.nMargin;\r
- }\r
-}\r
-\r
-function usedItems(nB,nE)\r
-{\r
- this.nB=nB;\r
- this.nE=nE;\r
- this.oN=null;\r
-}\r
-\r
-function checkReady()\r
-{\r
- var len=gaChunks.length;\r
- var bNeedLoad=false;\r
- var aDataCon;\r
- var s=0;\r
- var bDown=(gsSKB==null);\r
- var sK=bDown?gsSKA:gsSKB;\r
- if(sK==null)\r
- {\r
- markEnd();\r
- setTimeout("checkAgain();",50);\r
- return;\r
- }\r
- if(!gsChK||sK!=gsChK||gnNum==0)\r
- {\r
- gnCheck=0;\r
- gsChK=sK;\r
- aDataCon=new Array();\r
- }\r
- else{\r
- s=gnNum;\r
- aDataCon=gaDataCon;\r
- }\r
- for(var i=gnCheck;i<len;i++)\r
- {\r
- var oCData=getChunkedData(i,bDown,sK);\r
- if(oCData)\r
- {\r
- if(!oCData.aKs&&oCData.sFileName!=null)\r
- {\r
- bNeedLoad=true;\r
- goCData=oCData;\r
- gnNum=s;\r
- gnCheck=i;\r
- gaDataCon=aDataCon;\r
- oCData.nProjId=i;\r
- gbLoadInfo=false;\r
- beginLoading();\r
- loadData2(gaData[i].sPPath+gaData[i].sDPath+oCData.sFileName);\r
- return;\r
- }\r
- else{\r
- aDataCon[s++]=oCData;\r
- }\r
- }\r
- }\r
- if(!bNeedLoad)\r
- {\r
- gnNum=0;\r
- gsSKA=gsSKB=gsShowK=null;\r
- \r
- var oHTML=new indexHTMLPart();\r
- var aPos=new Array();\r
- var aOriPos=new Array();\r
- var aMaxPos=new Array();\r
- var aMinPos=new Array();\r
- \r
- if(gbNeedCalc||gbFindCK) gnIns=0;\r
- for(i=0;i<aDataCon.length;i++)\r
- {\r
- aPos[i]=getIdxPos(aDataCon[i],bDown,sK);\r
- if(gbNeedCalc||gbFindCK)\r
- {\r
- gnIns+=aPos[i]+aDataCon[i].nTotal-aDataCon[i].nNum;\r
- if(!bDown)\r
- {\r
- if(aPos[i]!=-1)\r
- {\r
- if(aDataCon[i].aKs)\r
- gnIns+=aDataCon[i].aKs[aPos[i]].nNKOff;\r
- else\r
- {\r
- var n=aPos[i]+1;\r
- while(n<aDataCon[i].aKsOnly.length&&!aDataCon[i].aKsOnly[n])\r
- n++;\r
- n=n-aPos[i]-1;\r
- gnIns+=n;\r
- }\r
- }\r
- }\r
- }\r
- aOriPos[i]=aPos[i];\r
- getLimit(aDataCon,aPos,aMaxPos,aMinPos,i);\r
- }\r
- if((gbNeedCalc||gbFindCK)&&!bDown&&gnIns!=-1)\r
- {\r
- gnIns+=(aDataCon.length-1)\r
- }\r
- if(gnIns!=-1||gbFindCK)\r
- {\r
- oHTML.nNeeded=gnNeeded;\r
- var bDone=writeItems(oHTML,aDataCon,aPos,aMinPos,aMaxPos,bDown,1);\r
- if(oHTML.nConsumed!=0)\r
- {\r
- var nB;\r
- if(!bDown)\r
- nB=gnIns-oHTML.nConsumed+1;\r
- else\r
- nB=gnIns;\r
- \r
- var oldScrollPos=document.body.scrollTop;\r
- if(insertIdxKs(nB,oHTML,gbScrl))\r
- {\r
- updateUsedK(aDataCon,aOriPos,aPos,bDown);\r
- if(!gbScrl&&gbMac)\r
- {\r
- while(document.body.scrollTop!=oldScrollPos)\r
- document.body.scrollTop=oldScrollPos;\r
- }\r
- gbScrl=false;\r
- }\r
- if(gbFindCK)\r
- {\r
- gbFindCK=false;\r
- gbNeedCalc=true;\r
- gsSKB=oHTML.sFK;\r
- gnIns=-1;\r
- setTimeout("checkReady();",50);\r
- return;\r
- }\r
- }\r
- else if(gbFindCK)\r
- {\r
- gbFindCK=false;\r
- gbNeedCalc=true;\r
- gsSKB=getFirstKeyFromPos(aDataCon,aPos);\r
- gnIns=-1;\r
- setTimeout("checkReady();",50);\r
- return;\r
- }\r
- if(!findCKInDom()) return;\r
-\r
- gnNeeded=gnNeeded-oHTML.nCurrent;\r
- gnIns=-1;\r
- markEnd();\r
- setTimeout("checkAgain();",50);\r
- gbNeedCalc=false;\r
- }\r
- else\r
- {\r
- if(!findCKInDom()) return;\r
- markEnd();\r
- setTimeout("checkAgain();",50);\r
- }\r
- }\r
-}\r
-\r
-function getFirstKeyFromPos(aDataCon,aPos)\r
-{\r
- var sCurrentK=getBiggestChar();\r
- for(var i=0;i<aPos.length;i++)\r
- {\r
- if(aDataCon[i].aKs&&aDataCon[i].aKs.length>0&&aPos[i]>=0&&aPos[i]<aDataCon[i].aKs.length)\r
- {\r
- if(sCurrentK==""||\r
- compare(sCurrentK,aDataCon[i].aKs[aPos[i]].sName)>0)\r
- {\r
- sCurrentK=aDataCon[i].aKs[aPos[i]].sName;\r
- }\r
- }\r
- }\r
- return sCurrentK;\r
-}\r
-\r
-function checkAgain()\r
-{\r
- if(!gbProcess)\r
- {\r
- if(gsBCK!=null)\r
- {\r
- gsCK=gsBCK;\r
- gsBCK=null;\r
- findCK();\r
- }\r
- else\r
- {\r
- markBegin();\r
- getUnitIdx(document.body.scrollTop,document.body.clientHeight);\r
- }\r
- }\r
- else\r
- setTimeout("checkAgain()",50);\r
-}\r
-\r
-function getLimit(aDataCon,aPos,aMaxPos,aMinPos,i)\r
-{\r
- aMaxPos[i]=aDataCon[i].nNum;\r
- aMinPos[i]=-1;\r
- var oPNode=null;\r
- if(aDataCon[i].oUsedItems)\r
- {\r
- var oUsedItems=aDataCon[i].oUsedItems;\r
- do{\r
- if(oUsedItems.nB>aPos[i])\r
- {\r
- aMaxPos[i]=oUsedItems.nB;\r
- break;\r
- }\r
- oPNode=oUsedItems;\r
- oUsedItems=oUsedItems.oN;\r
- }while(oUsedItems!=null);\r
- if(oPNode)\r
- aMinPos[i]=oPNode.nE;\r
- }\r
- else if(aDataCon[i].aKs==null)\r
- {\r
- aMaxPos[i]=aMinPos[i]=aPos[i];\r
- }\r
- if(aMinPos[i]>=aPos[i]||aMaxPos[i]<=aPos[i])\r
- {\r
- aMaxPos[i]=aMinPos[i]=aPos[i];\r
- }\r
-}\r
-\r
-function getIdxPos(oIdx,bDown,sK)\r
-{\r
- var aKs=oIdx.aKs;\r
- var nIdx;\r
- if(bDown)\r
- nIdx=oIdx.nNum;\r
- else\r
- nIdx=-1;\r
- if(aKs!=null)\r
- {\r
- for(var i=0;i<aKs.length;i++)\r
- { \r
- if(bDown)\r
- {\r
- if(compare(aKs[i].sName,sK)>0)\r
- {\r
- nIdx=i;\r
- break;\r
- }\r
- }\r
- else\r
- {\r
- if(compare(aKs[i].sName,sK)<0)\r
- nIdx=i;\r
- else\r
- break;\r
- }\r
- i+=aKs[i].nNKOff;\r
- }\r
- }\r
- else if(oIdx.aKsOnly)\r
- {\r
- var aKsOnly=oIdx.aKsOnly;\r
- for(var i=0;i<aKsOnly.length;i++)\r
- { \r
- if(aKsOnly[i])\r
- {\r
- if(bDown)\r
- {\r
- if(compare(aKsOnly[i],sK)>0)\r
- {\r
- nIdx=i;\r
- break;\r
- }\r
- }\r
- else\r
- {\r
- if(compare(aKsOnly[i],sK)<0)\r
- nIdx=i;\r
- else\r
- break;\r
- }\r
- }\r
- }\r
- }\r
- return nIdx;\r
-}\r
-\r
-function writeItems(oHTML,aDataCon,aPos,aMinPos,aMaxPos,bDown,nLevel)\r
-{\r
- var aOldPos=new Array();\r
- for(var i=0;i<aPos.length;i++)\r
- {\r
- aOldPos[i]=aPos[i];\r
- }\r
- var p;\r
- do{\r
- var sCurrentK="";\r
- var aCurIdxSet=new Array();\r
- p=0;\r
- for(i=0;i<aDataCon.length;i++)\r
- {\r
- if(aDataCon[i].aKs&&aDataCon[i].aKs.length&&aPos[i]!=-1&&\r
- (bDown&&aPos[i]<aMaxPos[i])||(!bDown&&aPos[i]>aMinPos[i]))\r
- {\r
- if(sCurrentK==""||\r
- (bDown&&compare(sCurrentK,aDataCon[i].aKs[aPos[i]].sName)>0)||\r
- (!bDown&&compare(sCurrentK,aDataCon[i].aKs[aPos[i]].sName)<0))\r
- {\r
- sCurrentK=aDataCon[i].aKs[aPos[i]].sName;\r
- p=0;\r
- aCurIdxSet[p++]=i;\r
- }\r
- else if(sCurrentK==aDataCon[i].aKs[aPos[i]].sName){\r
- aCurIdxSet[p++]=i;\r
- }\r
- }\r
- else if(nLevel==1&&aMaxPos[i]!=aMinPos[i]){\r
- if(bDown&&aPos[i]==aMaxPos[i])\r
- {\r
- if(aDataCon[i].aKs)\r
- {\r
- gsSKA=aDataCon[i].aKs[aOldPos[i]].sName;\r
- return false;\r
- }\r
- }\r
- else if(!bDown&&aPos[i]==aMinPos[i])\r
- {\r
- if(aDataCon[i].aKs)\r
- {\r
- gsSKB=aDataCon[i].aKs[aOldPos[i]].sName;\r
- return false;\r
- }\r
- }\r
- }\r
- }\r
- if(p>=1){\r
- for(var s=0;s<p;s++)\r
- {\r
- aOldPos[aCurIdxSet[s]]=aPos[aCurIdxSet[s]];\r
- }\r
- mergeItems(oHTML,bDown,aDataCon,aCurIdxSet,p,aPos,nLevel);\r
- adjustPosition(bDown,aDataCon,aCurIdxSet,p,aPos);\r
- \r
- if(nLevel==1&&oHTML.nNeeded<=oHTML.nCurrent){\r
- return true;\r
- }\r
- }\r
- }while(p>0);\r
- return true;\r
-}\r
-\r
-function updateUsedK(aDataCon,aOriPos,aOldPos,bDown)\r
-{\r
- for(var i=0;i<aDataCon.length;i++)\r
- {\r
- if (aOldPos[i]!=aOriPos[i])\r
- {\r
- var nBP=0;\r
- var nEP=0;\r
- if(bDown)\r
- {\r
- nBP=aOriPos[i];\r
- nEP=aOldPos[i]-1;\r
- }\r
- else\r
- {\r
- if (aOldPos[i]!=-1)\r
- nBP=aOldPos[i]+aDataCon[i].aKs[aOldPos[i]].nNKOff+1;\r
- else\r
- nBP=0;\r
- nEP=aOriPos[i]+aDataCon[i].aKs[aOriPos[i]].nNKOff;\r
- }\r
- if(nBP<=nEP)\r
- {\r
- setContentsUsed(aDataCon[i],nBP,nEP);\r
- \r
- var oFirstPair=aDataCon[i].oUsedItems;\r
- if(oFirstPair.oN==null&&oFirstPair.nB==0&&oFirstPair.nE==aDataCon[i].nNum-1)\r
- {\r
- storeKeysOnly(aDataCon[i]);\r
- aDataCon[i].oUsedItems=aDataCon[i].aKs=aDataCon[i].sFileName=null;\r
- }\r
- }\r
- }\r
- }\r
-}\r
-\r
-function storeKeysOnly(oCData)\r
-{\r
- oCData.aKsOnly=new Array();\r
- for(var i=0;i<oCData.aKs.length;i++)\r
- {\r
- oCData.aKsOnly[i]=oCData.aKs[i].sName;\r
- i+=oCData.aKs[i].nNKOff;\r
- }\r
-}\r
-\r
-function setContentsUsed(oIdx,nB,nE)\r
-{\r
- if(!oIdx.oUsedItems)\r
- oIdx.oUsedItems=new usedItems(nB,nE);\r
- else\r
- {\r
- var oUsedItems=oIdx.oUsedItems;\r
- var oPNode=null;\r
- do{\r
- if(oUsedItems.nB>nB)\r
- {\r
- if(oUsedItems.nB==nE+1)\r
- {\r
- oUsedItems.nB=nB;\r
- }\r
- else{\r
- var oNewNode=new usedItems(oUsedItems.nB,oUsedItems.nE);\r
- oNewNode.oN=oUsedItems.oN;\r
- oUsedItems.nB=nB;\r
- oUsedItems.nE=nE;\r
- oUsedItems.oN=oNewNode;\r
- }\r
- break;\r
- }\r
- oPNode=oUsedItems;\r
- oUsedItems=oUsedItems.oN;\r
- }while(oUsedItems);\r
- if(!oUsedItems)\r
- {\r
- if(oPNode!=null)\r
- oPNode.oN=new usedItems(nB,nE);\r
- }\r
- if(oPNode!=null){\r
- if(oPNode.nE==oPNode.oN.nB-1)\r
- {\r
- oPNode.nE=oPNode.oN.nE;\r
- oPNode.oN=oPNode.oN.oN;\r
- }\r
- }\r
- }\r
-}\r
-\r
-function projInfo(sPPath,sDPath,sFile)\r
-{\r
- this.sPPath=sPPath;\r
- this.sDPath=sDPath;\r
- this.sFile=sFile;\r
-}\r
-\r
-function addProjInfo(sPPath,sDPath,sFile)\r
-{\r
- var oIdxInfo=new projInfo(sPPath,sDPath,sFile);\r
- gaData[gaData.length]=oIdxInfo;\r
- return oIdxInfo;\r
-}\r
-\r
-function writeDataIFrame()\r
-{\r
- if(gnLoad<gaData.length)\r
- {\r
- gbLoadInfo=true;\r
- loadData2(gaData[gnLoad].sPPath+gaData[gnLoad].sDPath+gaData[gnLoad].sFile);\r
- }\r
- else{\r
- if(gnItems!=0)\r
- {\r
- markBegin();\r
- writeFakeItems();\r
- gsSKA="";\r
- gnNeeded=gnVisible;\r
- gnIns=0;\r
- checkReady();\r
- }\r
- }\r
-}\r
-\r
-function getH6ById(nPos)\r
-{\r
- if(document.all)\r
- return document.all("fk"+nPos);\r
- else if(document.getElementsByName)\r
- return document.getElementsByName("fk"+nPos);\r
- return null; \r
-}\r
-\r
-function showItemsInEvaluation(nBP)\r
-{\r
- var bRtn=true;\r
- var fPer=nBP/gnItems;\r
- var nB=Math.floor(fPer*gnMaxItems);\r
- var oCData=getChunkByIdx(gnRef,nB);\r
- if(oCData)\r
- {\r
- if(!oCData.aKs&&oCData.sFileName!=null)\r
- {\r
- gnNKI=nB;\r
- goCData=oCData;\r
- oCData.nProjId=gnRef;\r
- gbLoadInfo=false;\r
- beginLoading();\r
- loadData2(gaData[gnRef].sPPath+gaData[gnRef].sDPath+oCData.sFileName);\r
- }\r
- else{\r
- gsSKA=getKByIdx(oCData,nB);\r
- if(gsSKA)\r
- {\r
- gsSKB=null;\r
- gbNeedCalc=true;\r
- gbScrl=true;\r
- checkReady()\r
- }\r
- else\r
- {\r
- markEnd();\r
- bRtn=false;\r
- }\r
- }\r
- }\r
- else\r
- {\r
- markEnd();\r
- bRtn=false;\r
- }\r
- return bRtn;\r
-}\r
-\r
-function isUsed(oCData,nPos)\r
-{\r
- var oUsed=oCData.oUsedItems;\r
- while(oUsed&&oUsed.nB<=nPos)\r
- {\r
- if(oUsed.nE>=nPos) return true;\r
- oUsed=oUsed.oN;\r
- }\r
- return false;\r
-}\r
-\r
-function getKByIdx(oCData,nB)\r
-{\r
- var nRelPos=nB-(oCData.nTotal-oCData.nNum);\r
- var aIKs=oCData.aKs;\r
- if(nRelPos>=0&&aIKs&&nRelPos<aIKs.length)\r
- {\r
- var oK=null;\r
- do{\r
- oK=aIKs[nRelPos++];\r
- } \r
- while((oK.nType==3||isUsed(oCData,nRelPos-1))&&nRelPos<aIKs.length);\r
- if(oK.nType!=3)\r
- {\r
- return oK.sName;\r
- }\r
- else{\r
- nRelPos=nB-(oCData.nTotal-oCData.nNum)-1;\r
- if(nRelPos>=0)\r
- {\r
- do{\r
- oK=aIKs[nRelPos--];\r
- }\r
- while((oK.nType==3||isUsed(oCData,nRelPos+1))&&nRelPos>=0);\r
- }\r
- if(oK.nType!=3)\r
- {\r
- return oK.sName;\r
- }\r
- }\r
- }\r
- return null;\r
-}\r
-\r
-function loadData2(sFileName)\r
-{\r
- disEvt();\r
- if(gbXML)\r
- loadDataXML(sFileName);\r
- else\r
- loadData(sFileName);\r
- enEvt();\r
-}\r
-\r
-function projReady(aChunk)\r
-{\r
- gaChunks[gnLoad++]=aChunk;\r
- var len=aChunk.length;\r
- var nTotal=0;\r
- if(len>0)\r
- nTotal=aChunk[len-1].nTotal;\r
- gnItems+=nTotal;\r
- if(nTotal>gnMaxItems)\r
- {\r
- gnMaxItems=nTotal;\r
- gnRef=gnLoad-1;\r
- }\r
- setTimeout("writeDataIFrame();",1);\r
-}\r
-\r
-function writeFakeItems()\r
-{\r
- disEvt();\r
- gnUHeight=15;\r
- var sHTML=getFakeItemsHTMLbyCount(0,gnItems);\r
- document.body.insertAdjacentHTML("beforeEnd",sHTML);\r
- var obj=getH6ById(0);\r
- if (document.body != null)\r
- {\r
- gnVisible=Math.ceil(document.body.clientHeight/gnUHeight);\r
- }\r
- gaFakes[0]=new fakeItemsArea(0,gnItems,"",getEndString(),obj);\r
- enEvt();\r
-}\r
-\r
-function getEndString()\r
-{\r
- var sBC=getBiggestChar();\r
- return sBC+sBC+sBC+sBC+sBC+sBC+sBC+sBC;\r
-}\r
-\r
-function getUnitIdx(nScrl,nHeight)\r
-{\r
- if(gaFakes.length==0)\r
- {\r
- markEnd();\r
- return;\r
- }\r
- var nB=0;\r
- var nE=gaFakes.length-1;\r
- var nM=-1;\r
- var nTop=0;\r
- var nBtm=0;\r
- var bF=false;\r
- do{\r
- nM=(nB+nE)>>1;\r
- nBtm=gaFakes[nM].getBtm();\r
- nTop=gaFakes[nM].getTop();\r
- \r
- if(nTop>=nScrl+nHeight)\r
- nE=nM-1;\r
- else if(nBtm<nScrl)\r
- nB=nM+1;\r
- else{\r
- bF=true;\r
- break;\r
- }\r
- }while(nE>=nB);\r
- if(bF)\r
- {\r
- if(nTop>=nScrl){\r
- gsSKA=gaFakes[nM].sKA;\r
- gsSKB=null;\r
- gnNeeded=Math.ceil((nHeight-nTop+nScrl)/gnUHeight);\r
- gnIns=gaFakes[nM].nB;\r
- checkReady();\r
- }\r
- else if(nBtm<=nScrl+nHeight){\r
- gsSKB=gaFakes[nM].sKB;\r
- gsSKA=null;\r
- gnNeeded=Math.ceil((nBtm-nScrl+gnScrlMgn)/gnUHeight);\r
- gbNeedCalc=true;\r
- checkReady();\r
- }\r
- else{\r
- gnNeeded=gnVisible;\r
- var nUnitIdx=gaFakes[nM].nB+Math.floor((nScrl-nTop)/gnUHeight);\r
- if (!showItemsInEvaluation(nUnitIdx))\r
- {\r
- gsSKA=gaFakes[nM].sKA;\r
- gsSKB=null;\r
- gnNeeded=Math.ceil(nHeight/gnUHeight);\r
- gnIns=gaFakes[nM].nB;\r
- checkReady();\r
- }\r
- }\r
- }\r
- else\r
- markEnd();\r
-}\r
-\r
-function disEvt()\r
-{\r
- window.onscroll=null;\r
- window.onresize=null;\r
-}\r
-\r
-function enEvt()\r
-{\r
- window.onscroll=window_OnScroll;\r
- window.onresize=window_OnResize;\r
-}\r
-\r
-function insertIdxKs(nIns,oHTML,bScrl)\r
-{\r
- var bRtn=true;\r
- disEvt();\r
- var nCount=oHTML.nConsumed;\r
- var nB=0;\r
- var nE=gaFakes.length-1;\r
- var nM=-1;\r
- var bF=false;\r
- do{\r
- nM=(nB+nE)>>1;\r
- if(gaFakes[nM].nB>nIns)\r
- nE=nM-1;\r
- else if(gaFakes[nM].nB+gaFakes[nM].nNum<=nIns)\r
- nB=nM+1;\r
- else{\r
- bF=true;\r
- break;\r
- }\r
- }while(nE>=nB);\r
- if(bF)\r
- {\r
- var oFIA=gaFakes[nM];\r
- var nOffsetTop=oFIA.getTop();\r
- var nOffsetBottom=oFIA.getBtm();\r
- var nDelta=0;\r
- var nHDiff=nIns-oFIA.nB;\r
- var nTDiff=oFIA.nNum+oFIA.nB-(nIns+nCount);\r
- if(nHDiff>0)\r
- {\r
- nDelta=oFIA.setNum(nHDiff);\r
- var sOldKBefore=oFIA.sKB;\r
- oFIA.sKB=oHTML.sFK;\r
- if(nTDiff>0)\r
- {\r
- var sHTML=getFakeItemsHTMLbyCount(nIns,nTDiff);\r
- oFIA.insertAdjacentHTML("afterEnd",sHTML);\r
- var obj=getH6ById(nIns);\r
- insertItemIntoArray(gaFakes,nM+1,new fakeItemsArea(nIns+nCount,nTDiff,oHTML.sLK,sOldKBefore,obj));\r
- }\r
- oFIA.insertAdjacentHTML("afterEnd",oHTML.sHTML); \r
- if(bScrl)\r
- {\r
- if(gbMac&&gbIE4)\r
- {\r
- var nScrollPos=nOffsetBottom-nDelta;\r
- while(document.body.scrollTop!=nScrollPos)\r
- document.body.scrollTop=nScrollPos;\r
- }\r
- else\r
- window.scrollTo(0,nOffsetBottom-nDelta);\r
- }\r
- }\r
- else{\r
- oFIA.insertAdjacentHTML("beforeBegin",oHTML.sHTML);\r
- if(bScrl){\r
- if(gbMac&&gbIE4)\r
- {\r
- var nScrollPos=nOffsetTop;\r
- while(document.body.scrollTop!=nScrollPos)\r
- document.body.scrollTop=nScrollPos;\r
- }\r
- else\r
- window.scrollTo(0,nOffsetTop);\r
- }\r
- \r
- if(nTDiff>0)\r
- {\r
- oFIA.nB=nIns+nCount;\r
- nDelta=oFIA.setNum(nTDiff);\r
- oFIA.sKA=oHTML.sLK;\r
- } \r
- else{\r
- gaFakes[nM].setNum(0);\r
- removeItemFromArray(gaFakes,nM);\r
- }\r
- }\r
- }\r
- else\r
- bRtn=false;\r
- enEvt();\r
- return bRtn;\r
-}\r
-\r
-function window_OnScroll()\r
-{\r
- gnSE++;\r
- setTimeout("procScroll();",50); \r
-}\r
-\r
-function procScroll()\r
-{\r
- if(gnSE==1&&!gbProcess)\r
- {\r
- markBegin();\r
- getUnitIdx(document.body.scrollTop,document.body.clientHeight);\r
- }\r
- gnSE--;\r
-}\r
-\r
-function window_OnResize()\r
-{\r
- gnRE++;\r
- setTimeout("procResize();",50);\r
-}\r
-\r
-function procResize()\r
-{\r
- if(gnRE==1&&!gbProcess)\r
- {\r
- markBegin();\r
- gnVisible=Math.ceil(document.body.clientHeight/gnUHeight);\r
- if(gnIns==-1)\r
- getUnitIdx(document.body.scrollTop,document.body.clientHeight);\r
- }\r
- gnRE--;\r
-}\r
-\r
-function getChunkByIdx(nIdx,nPosition)\r
-{\r
- var oCData=null;\r
- if(nIdx<gaChunks.length)\r
- {\r
- var len=gaChunks[nIdx].length;\r
- if(len>0)\r
- {\r
- var nB=0;\r
- var nE=len-1;\r
- var bF=false;\r
- do{\r
- var nM=(nB+nE)>>1;\r
- if(nPosition<gaChunks[nIdx][nM].nTotal)\r
- {\r
- bF=true;\r
- nE=nM;\r
- }\r
- else\r
- nB=nM+1;\r
- }while(nE>nB);\r
- if(bF)\r
- oCData=gaChunks[nIdx][nE];\r
- else if(nPosition<gaChunks[nIdx][nB].nTotal)\r
- oCData=gaChunks[nIdx][nB];\r
- }\r
- }\r
- return oCData;\r
-}\r
-\r
-function getChunkedData(nIdx,bDown,sK)\r
-{\r
- var oCData=null;\r
- var nCandId=-1;\r
- if(nIdx<gaChunks.length)\r
- {\r
- var len=gaChunks[nIdx].length;\r
- if(len>0)\r
- {\r
- var nB=0;\r
- var nE=len-1;\r
- var bF=false;\r
- do{\r
- var nM=(nB+nE+(bDown?0:1))>>1;\r
- if(bDown)\r
- {\r
- if(compare(sK,gaChunks[nIdx][nM].sEK)<0)\r
- {\r
- bF=true;\r
- nE=nM;\r
- }\r
- else\r
- nB=nM+1;\r
- }\r
- else\r
- {\r
- if(compare(sK,gaChunks[nIdx][nM].sBK)>0)\r
- {\r
- bF=true;\r
- nB=nM;\r
- }\r
- else\r
- nE=nM-1;\r
- }\r
- }while(nE>nB);\r
- if(bF)\r
- {\r
- if(bDown)\r
- nCandId=nE;\r
- else\r
- nCandId=nB;\r
- }\r
- else\r
- {\r
- if(bDown)\r
- {\r
- if(gaChunks[nIdx].length>nB&&compare(sK,gaChunks[nIdx][nB].sEK)<0)\r
- nCandId=nB;\r
- else\r
- nCandId=gaChunks[nIdx].length-1;\r
- }\r
- else\r
- {\r
- if(0<=nE&&compare(sK,gaChunks[nIdx][nE].sBK)>0)\r
- nCandId=nE;\r
- else\r
- nCandId=0;\r
- }\r
- }\r
- return gaChunks[nIdx][nCandId];\r
- }\r
- }\r
- return null;\r
-}\r
-\r
-function findCK()\r
-{\r
- if(gsCK!=null)\r
- {\r
- gsSKA=gsCK;\r
- gbFindCK=true;\r
- gnNeeded=1;\r
- markBegin();\r
- checkReady();\r
- }\r
-}\r
-\r
-function writeLoadingDiv(nIIdx)\r
-{\r
- return "<div id=\""+gsLoadingDivID+"\" style=\"position:absolute;top:0;left:0;z-index:600;visibility:hidden;padding-left:4px;background-color:ivory;border-width:1;border-style:solid;border-color:black;width:150px;\">"+gsLoadingMsg+"</div>";\r
-}\r
-\r
-var gbWhHost=true;
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<title>Index content</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmozemu.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whlang.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whhost.js"></script>\r
-<script language="javascript1.2" src="whihost.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-var gnPageWidth = 0;\r
-var gnPageHeight = 0;\r
-var goPopup = null;\r
-var gITE = new Array();\r
-var gIndexLetterArray = new Array();\r
-var gbPopupMenuTimeoutExpired=false;\r
-var gBsClientWidth=640;\r
-var gBsClientHeight=480;\r
-var g_bIsPopupMenuInit=false;\r
-\r
-function WritePopupMenuLayer()\r
-{\r
- if (!g_bIsPopupMenuInit)\r
- {\r
- document.write("<DIV ID='PopupMenu' STYLE='position:absolute; left:0px; top:0px; z-index:4; visibility:hidden;'></DIV>");\r
- document.write("<STYLE TYPE='text/css'>");\r
- if (gbMac && gbIE4) {\r
- document.write(".PopupOver {font-family:'Arial'; color:white; background:navy; font-size:10pt; text-decoration:none;}");\r
- document.write(".PopupNotOver {font-family:'Arial'; color:black; background:#c0c0c0; font-size:10pt; text-decoration:none;}");\r
- } else {\r
- document.write(".PopupOver {font-family:'Arial'; color:white; background:navy; font-size:8pt; text-decoration:none;}");\r
- document.write(".PopupNotOver {font-family:'Arial'; color:black; background:#c0c0c0; font-size:8pt; text-decoration:none;}");\r
- }\r
- document.write("</STYLE>");\r
- }\r
- g_bIsPopupMenuInit = true;\r
-}\r
-\r
-function PopupMenu_Invoke()\r
-{\r
- if (gbNav6)\r
- resetHighLight();\r
- \r
- if (!gbNav6 && document.readyState != "complete")\r
- return false;\r
- var fn_arguments = PopupMenu_Invoke.arguments; \r
- // Make sure we have reasonable arguments\r
- var argLen = fn_arguments.length;\r
- if (argLen < 3) {\r
- return false;\r
- }\r
-\r
- // Check to see if we only have one target\r
- var strTarget = "";\r
- \r
- strTarget = "TARGET='" + fn_arguments[1] + "'";\r
- \r
- if (argLen < 5) {\r
- // Get the place that we will be putting the topic into\r
- var strURL = fn_arguments[3];\r
-\r
- if (fn_arguments[1] != null && typeof(fn_arguments[1]) != "undefined")\r
- window.open(strURL, fn_arguments[1]);\r
- else\r
- window.open(strURL);\r
- \r
- return false;\r
- }\r
- \r
- var strMenu = '<TABLE STYLE="border:2px outset white;" CELLSPACING=0';\r
- if (gbMac && gbIE4) {\r
- strMenu += ' CELLPADDING=4';\r
- } else {\r
- strMenu += ' CELLPADDING=2';\r
- } \r
- strMenu += ' BGCOLOR=#c0c0c0>';\r
-\r
- // Add each of the items\r
- if (gbIE55)\r
- {\r
- var i = 2;\r
- while (i <= argLen - 1) {\r
- strMenu += '<TR><TD><NOBR>'\r
- strMenu += '<DIV STYLE="padding-left:3pt; padding-right:3pt;"><A ';\r
- strMenu += ' onclick="parent.PopupMenu_2HandleClick(\'' + fn_arguments[i + 1] + '\', \'' + fn_arguments[1] + '\');"';\r
- strMenu += ' onmouseover="parent.PopupMenu_Over(event);"';\r
- strMenu += ' onmouseout="parent.PopupMenu_Out(event);"';\r
- strMenu += '>';\r
- strMenu += '<SPAN CLASS="PopupNotOver">' + fn_arguments[i] + '</SPAN>';\r
- strMenu += '</A></DIV></NOBR></TD></TR>';\r
- i += 2;\r
- }\r
- }\r
- else\r
- {\r
- var i = 2;\r
- while (i <= argLen - 1) {\r
- strMenu += '<TR><TD><NOBR>'\r
- strMenu += '<DIV STYLE="padding-left:3pt; padding-right:3pt;"><A HREF="' + fn_arguments[i + 1] + '" ' + strTarget;\r
- strMenu += ' onclick="PopupMenu_HandleClick(event);"';\r
- strMenu += ' onmouseover="PopupMenu_Over(event);"';\r
- strMenu += ' onmouseout="PopupMenu_Out(event);"';\r
- strMenu += '>';\r
- strMenu += '<SPAN CLASS="PopupNotOver">' + fn_arguments[i] + '</SPAN>';\r
- strMenu += '</A></DIV></NOBR></TD></TR>';\r
- i += 2;\r
- }\r
- }\r
- strMenu += "</TABLE>";\r
-\r
- if (gbMac && gbIE4) {\r
- // ie5 in mac need something. </TABLE> is one of them.\r
- strMenu +="<TABLE></TABLE>";\r
- }\r
-\r
- var layerPopup = null;\r
- var stylePopup = null;\r
- var nEventX = 0;\r
- var nEventY = 0;\r
- var nWindowWidth = 0;\r
- if (gbIE4)\r
- {\r
- layerPopup = document.all["PopupMenu"];\r
- layerPopup.innerHTML = strMenu;\r
- stylePopup = layerPopup.style;\r
-\r
- _BSPSGetClientSize();\r
-\r
- // Get the position of the item causing the event (relative to its parent)\r
- nEventX = window.event.clientX;\r
- nEventY = window.event.clientY;\r
- \r
- if (nEventY + layerPopup.scrollHeight + 10 < gBsClientHeight) {\r
- nEventY += document.body.scrollTop + 10;\r
- } else {\r
- nEventY = (document.body.scrollTop + gBsClientHeight) - layerPopup.scrollHeight - 20;\r
- }\r
- stylePopup.top = nEventY;\r
-\r
- if (nEventX + layerPopup.scrollWidth + 20 > gBsClientWidth) {\r
- if (gBsClientWidth - layerPopup.scrollWidth < 5) {\r
- stylePopup.left = 5;\r
- } else {\r
- stylePopup.left = gBsClientWidth - layerPopup.scrollWidth - 5;\r
- }\r
- } else {\r
- stylePopup.left = nEventX + document.body.scrollLeft + 20;\r
- }\r
-\r
- if (gbIE55) {\r
- var nPosX = window.event.clientX;\r
- var nPosY = window.event.clientY;\r
- if (window.event.srcElement)\r
- {\r
- nPosX = window.event.srcElement.offsetLeft + window.event.srcElement.offsetWidth - document.body.scrollLeft;\r
- nPosY = window.event.srcElement.offsetTop + window.event.srcElement.offsetHeight - document.body.scrollTop;\r
- }\r
- goPopup = window.createPopup();\r
- var oPopupBody = goPopup.document.body;\r
- goPopup.document.createStyleSheet();\r
- goPopup.document.styleSheets[0].addRule(".PopupOver", "{font-family:\"Arial\"; cursor: hand;color:white; background:navy; font-size:8pt; text-decoration:none;}");\r
- goPopup.document.styleSheets[0].addRule(".PopupNotOver", "{font-family:\"Arial\"; color:black; background:#c0c0c0; font-size:8pt; text-decoration:none;}");\r
- oPopupBody.insertAdjacentHTML("afterBegin", strMenu);\r
- goPopup.show(nPosX, nPosY, layerPopup.scrollWidth, layerPopup.scrollHeight, document.body);\r
- }\r
- else \r
- {\r
- stylePopup.visibility = "visible";\r
- document.onclick = PopupMenu_HandleClick;\r
- }\r
- } else if (gbNav6) {\r
- layerPopup = document.getElementById("PopupMenu");\r
- layerPopup.style.visibility = "hidden";\r
- \r
- var e = fn_arguments[0];\r
- nEventX = e.pageX;\r
- nEventY = e.pageY;\r
- _BSPSGetClientSize();\r
- layerPopup.innerHTML = strMenu;\r
-\r
- if (nEventY + layerPopup.offsetHeight + 20 < window.pageYOffset + gBsClientHeight) {\r
- nEventY += 20;\r
- } else {\r
- nEventY = gBsClientHeight + window.pageYOffset - layerPopup.offsetHeight - 20;\r
- }\r
-\r
- if (nEventX + layerPopup.offsetWidth + 20 > gBsClientWidth + window.pageXOffset) {\r
- if (gBsClientWidth + window.pageXOffset - layerPopup.offsetWidth < 20) {\r
- nEventX = 5;\r
- } else {\r
- nEventX = gBsClientWidth + window.pageXOffset - layerPopup.offsetWidth - 20;\r
- }\r
- } else {\r
- nEventX += 20;\r
- }\r
- layerPopup.style.top = nEventY;\r
- layerPopup.style.left = nEventX;\r
-\r
- // set again to avoid the frash in netscape 6.\r
- layerPopup.innerHTML = strMenu;\r
- layerPopup.style.visibility = "visible";\r
- window.onclick = PopupMenu_HandleClick;\r
- } \r
-\r
- window.gbPopupMenuTimeoutExpired = false;\r
- setTimeout("PopupMenu_Timeout();", 100);\r
- return false;\r
-}\r
-\r
-function PopupMenu_Timeout()\r
-{\r
- window.gbPopupMenuTimeoutExpired = true;\r
-}\r
-\r
-function PopupMenu_Over(e)\r
-{\r
- if (gbIE4)\r
- e.srcElement.className = "PopupOver";\r
- else if (gbNav6)\r
- e.target.parentNode.className = "PopupOver";\r
-}\r
-\r
-function PopupMenu_Out(e)\r
-{\r
- if (gbIE4)\r
- e.srcElement.className = "PopupNotOver";\r
- else if (gbNav6)\r
- e.target.parentNode.className = "PopupNotOver";\r
-}\r
-\r
-function PopupMenu_2HandleClick(surl, starget)\r
-{\r
- window.open(surl, starget);\r
- goPopup.hide();\r
-}\r
-\r
-function PopupMenu_HandleClick(e)\r
-{\r
- if (!window.gbPopupMenuTimeoutExpired) {\r
- return;\r
- }\r
-\r
- var layerPopup = getElement("PopupMenu");\r
- layerPopup.style.visibility = "hidden";\r
-\r
- return;\r
-}\r
-\r
-//Get client size info\r
-function _BSPSGetClientSize()\r
-{\r
- gBsClientWidth = document.body.clientWidth;\r
- gBsClientHeight = document.body.clientHeight;\r
-}\r
-\r
-if (window.gbWhIHost)\r
-{\r
- setBackgroundcolor("White");\r
- \r
- setFont("Normal", "Tahoma","8pt","Black","Normal","Normal","none");\r
- setFont("Empty", "Tahoma","8pt","Black","Normal","Normal","none");\r
- setFont("Hover", "Tahoma","8pt","Navy","Normal","Normal","underline");\r
- setActiveBgColor("Silver");\r
- \r
- \r
- IndexWriteClassStyle();\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body topmargin="2" leftmargin="2" marginwidth="0" marginheight="0" bgproperties="fixed" scroll="auto" bgcolor="white">\r
-<script languageE="JavaScript">\r
-<!--\r
-WritePopupMenuLayer();\r
-//-->\r
-</script>\r
-</body>\r
-</html>\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Index</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-</head>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-var gbIndexLayerInit = false;\r
-if (window.gbWhProxy&&window.gbWhMsg&&window.gbWhVer)\r
-{\r
- var strWrite;\r
- if (gbMac)\r
- strWrite="<FRAMESET ROWS='45,100%' framespacing=0 frameborder=0>";\r
- else\r
- strWrite="<FRAMESET ROWS='60,100%' framespacing=0 frameborder=0>";\r
- strWrite +="<FRAME SRC='whiform.htm' title='index form frame' name='idxform' noresize='yes' scrolling='no'>";\r
- strWrite +="<FRAME SRC='whibody.htm' title='index content frame' name='idxbody' scrolling='yes'>";\r
- strWrite +="</FRAMESET>";\r
- document.write(strWrite);\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-</html>\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Index form</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-</head>\r
-<style>\r
-<!--\r
-body {margin:0;}\r
--->\r
-</style>\r
-<body bgcolor="#c0c0c0">\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whform.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-function indexLookup(bCR)\r
-{\r
- var strInput = document.IndexInputForm.keywordField.value.toUpperCase();\r
- if (strInput != "") {\r
- var oParam = new Object();\r
- oParam.sInput = strInput;\r
- oParam.bCR = bCR;\r
- var oMessage = new whMessage(WH_MSG_SEARCHINDEXKEY, this, 1, oParam);\r
- SendMessage(oMessage);\r
- }\r
- if (gbMac) {\r
- document.IndexInputForm.keywordField.focus();\r
- }\r
-}\r
-\r
-function window_Unload()\r
-{\r
- UnRegisterListener2(this, WH_MSG_SHOWTOC);\r
- UnRegisterListener2(this, WH_MSG_SHOWIDX);\r
- UnRegisterListener2(this, WH_MSG_SHOWFTS);\r
- UnRegisterListener2(this, WH_MSG_SHOWGLO);\r
-}\r
-\r
-function onSendMessage(oMessage)\r
-{\r
- if (oMessage.nMessageId == WH_MSG_SHOWIDX)\r
- {\r
- document.IndexInputForm.keywordField.focus();\r
- }\r
- else if (oMessage.nMessageId == WH_MSG_SHOWFTS ||\r
- oMessage.nMessageId == WH_MSG_SHOWTOC || \r
- oMessage.nMessageId == WH_MSG_SHOWGLO)\r
- {\r
- document.IndexInputForm.keywordField.blur();\r
- }\r
- return true;\r
-}\r
-\r
-if (window.gbWhForm)\r
-{\r
- RegisterListener2(this, WH_MSG_SHOWTOC);\r
- RegisterListener2(this, WH_MSG_SHOWIDX);\r
- RegisterListener2(this, WH_MSG_SHOWFTS);\r
- RegisterListener2(this, WH_MSG_SHOWGLO);\r
- window.onunload=window_Unload;\r
- window.onload = init;\r
- gfunLookUp = indexLookup;\r
- gfunInit = null;\r
- gstrFormName = "IndexInputForm"\r
- gsTitle = "Type in the keyword to find:";\r
- gsTitle = "Type in the keyword to find:";\r
-\r
- setBackgroundcolor("White");\r
- \r
- setBtnType("none");\r
- \r
- \r
- \r
- setGoText("Go");\r
- setFont("Title", "Tahoma","8pt","Navy","Normal","Normal","none");\r
- \r
- \r
- document.write(getFormHTML());\r
- writeFormStyle();\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-</body>\r
-</html>
\ No newline at end of file
+++ /dev/null
-var gsDefaultTarget="bsscright";\r
-var gsBgColor="#ffffff";\r
-var gsBgImage="";\r
-var goIdxFont=null;\r
-var goIdxEmptyFont=null;\r
-var goIdxHoverFont=null;\r
-var gsIdxMargin="0pt";\r
-var gsIdxIndent="8pt";\r
-var gsIdxActiveBgColor="#cccccc";\r
-var gsCK = null;\r
-var gsBCK = null;\r
-var gbCR = false;\r
-var gbBCR = false;\r
-var gbWhIHost=true;\r
-\r
-function myEvent()\r
-{\r
- this.pageX = 0;\r
- this.pageY = 0;\r
-}\r
-var _event=new myEvent();\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
- gsBgColor=sBgColor;\r
-}\r
-\r
-function setBackground(sBgImage)\r
-{\r
- gsBgImage=sBgImage;\r
-}\r
-\r
-function setFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
-{\r
- var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
- if(sType=="Normal")\r
- goIdxFont=vFont;\r
- else if(sType=="Empty")\r
- goIdxEmptyFont=vFont;\r
- else if(sType=="Hover")\r
- goIdxHoverFont=vFont;\r
-}\r
-\r
-function setActiveBgColor(sBgColor)\r
-{\r
- gsIdxActiveBgColor=sBgColor;\r
-}\r
-\r
-function setMargin(sMargin)\r
-{\r
- gsIdxMargin=sMargin;\r
-}\r
-\r
-function setIndent(sIndent)\r
-{\r
- gsIdxIndent=sIndent;\r
-}\r
-\r
-function writeOneItem(oHTML,bDown,aDataCon,aCurIdxSet,nLength,aPos,nLevel)\r
-{\r
- var sHTML="";\r
- var nIdxSet=aCurIdxSet[0];\r
- var nIIdx=aPos[nIdxSet];\r
- var sKOriName=getItemName(aDataCon,nIdxSet,nIIdx);\r
- var sKName=_textToHtml(sKOriName);\r
-\r
- var nIdxIndent=parseInt(gsIdxIndent);\r
- var sTopics="";\r
- if(nLevel==1){\r
- if(getItemType(aDataCon,nIdxSet,nIIdx)==1)\r
- {\r
- sHTML+="<H6><nobr>";\r
- sHTML+="<b>"+sKName+"</b></nobr></H6>";\r
- }\r
- else{\r
- for(var i=0;i<nLength;i++)\r
- sTopics+=getIdxTopics(aDataCon,aCurIdxSet[i],aPos[aCurIdxSet[i]]);\r
- sHTML+="<p style=\"margin-left:"+gsIdxIndent+"\"><nobr>";\r
- sHTML+="<a alt=\"" + sKName + "\" href=\"javascript:void(0);\" onfocus=\"clearHighLight();\" onclick=\"PopupMenu_Invoke(event,'"+getTargetName(aDataCon,nIdxSet,nIIdx)+"'";\r
- if(sTopics.length>0)\r
- sHTML+=sTopics+");return false;\">"+sKName+"</a></nobr></p>";\r
- else\r
- sHTML+=");return false;\" style=\""+getFontStyle(goIdxEmptyFont)+"\">"+sKName+"</a></nobr></p>";\r
- }\r
- }\r
- else if(nLevel>=2){\r
- var nIndent=nIdxIndent*nLevel;\r
- for(var i=0;i<nLength;i++)\r
- sTopics+=getIdxTopics(aDataCon,aCurIdxSet[i],aPos[aCurIdxSet[i]]);\r
- if (nLevel==2)\r
- sHTML+="<h6 class=\"firstsub\" style=\"margin-left:"+nIndent+"pt\"><nobr>";\r
- else\r
- sHTML+="<h6 style=\"margin-left:"+nIndent+"pt\"><nobr>";\r
- sHTML+="<a alt=\"" + sKName + "\" href=\"javascript:void(0);\" onfocus=\"clearHighLight();\" onclick=\"PopupMenu_Invoke(event,'"+getTargetName(aDataCon,nIdxSet,nIIdx)+"'";\r
- if(sTopics.length>0)\r
- sHTML+=sTopics+");return false;\">"+sKName+"</a></nobr></h6>";\r
- else\r
- sHTML+=");return false;\" style=\""+getFontStyle(goIdxEmptyFont)+"\">"+sKName+"</a></nobr></h6>";\r
- }\r
- oHTML.addHTML(sHTML,nLength,bDown,(nLevel==1),sKOriName);\r
-}\r
-\r
-function getTargetName(aDataCon,nIdxSet,nIIdx)\r
-{\r
- if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
- if(aDataCon[nIdxSet].aKs[nIIdx].sTarget)\r
- return aDataCon[nIdxSet].aKs[nIIdx].sTarget;\r
- return gsDefaultTarget;\r
-}\r
-\r
-function mergeItems(oHTML,bDown,aDataCon,aCurIdxSet,nLength,aPos,nLevel)\r
-{\r
- var oLocalHTML=new indexHTMLPart();\r
- writeOneItem(oLocalHTML,bDown,aDataCon,aCurIdxSet,nLength,aPos,nLevel);\r
- \r
- var aLocalPos=new Array();\r
- var aMaxPos=new Array();\r
- for(var i=0;i<aPos.length;i++)\r
- {\r
- aLocalPos[i]=aPos[i];\r
- aMaxPos[i]=-1;\r
- }\r
- \r
- for(i=0;i<nLength;i++)\r
- {\r
- var nNKOff=getNKOff(aDataCon,aCurIdxSet[i],aLocalPos[aCurIdxSet[i]]);\r
- aLocalPos[aCurIdxSet[i]]++;\r
- if(nNKOff>0)\r
- aMaxPos[aCurIdxSet[i]]=aLocalPos[aCurIdxSet[i]]+nNKOff;\r
- }\r
- var oSubHTML=new indexHTMLPart();\r
- writeItems(oSubHTML,aDataCon,aLocalPos,null,aMaxPos,true,nLevel+1);\r
- oLocalHTML.addSubHTML(oSubHTML,true);\r
- oHTML.appendHTML(oLocalHTML,bDown);\r
-}\r
-\r
-function adjustPosition(bDown,aDataCon,aCurIdxSet,nLength,aPos)\r
-{\r
- if(bDown)\r
- {\r
- for(var i=0;i<nLength;i++)\r
- {\r
- var nNKOff=getNKOff(aDataCon,aCurIdxSet[i],aPos[aCurIdxSet[i]]);\r
- aPos[aCurIdxSet[i]]+=(1+nNKOff);\r
- }\r
- }\r
- else{\r
- for(var i=0;i<nLength;i++)\r
- {\r
- var nPKOff=getPKOff(aDataCon,aCurIdxSet[i],aPos[aCurIdxSet[i]]);\r
- aPos[aCurIdxSet[i]]-=(1+nPKOff);\r
- }\r
- }\r
-}\r
-\r
-function getItemName(aDataCon,nIdxSet,nIIdx)\r
-{\r
- if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
- return aDataCon[nIdxSet].aKs[nIIdx].sName;\r
- else\r
- return null;\r
-}\r
-\r
-function getItemType(aDataCon,nIdxSet,nIIdx)\r
-{\r
- if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
- return aDataCon[nIdxSet].aKs[nIIdx].nType;\r
- else\r
- return 0;\r
-}\r
-\r
-function getNKOff(aDataCon,nIdxSet,nIIdx)\r
-{\r
- if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
- return aDataCon[nIdxSet].aKs[nIIdx].nNKOff;\r
- else\r
- return null;\r
-}\r
-\r
-function getPKOff(aDataCon,nIdxSet,nIIdx)\r
-{\r
- if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
- return aDataCon[nIdxSet].aKs[nIIdx].nPKOff;\r
- else\r
- return null;\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
- if(gsBgImage&&gsBgImage.length>0)\r
- {\r
- document.body.background=gsBgImage;\r
- }\r
- if(gsBgColor&&gsBgColor.length>0)\r
- {\r
- document.body.bgColor=gsBgColor;\r
- }\r
- document.body.insertAdjacentHTML("beforeEnd",writeLoadingDiv());\r
- loadIdx();\r
- var oMsg=new whMessage(WH_MSG_SHOWIDX,this,1,null)\r
- SendMessage(oMsg);\r
-}\r
-\r
-function loadIdx()\r
-{\r
- if(!gbReady)\r
- {\r
- var oResMsg=new whMessage(WH_MSG_GETPROJINFO,this,1,null);\r
- if(SendMessage(oResMsg)&&oResMsg.oParam)\r
- {\r
- gbReady=true;\r
- var oProj=oResMsg.oParam;\r
- var aProj=oProj.aProj;\r
- gbXML=oProj.bXML;\r
- if(aProj.length>0)\r
- {\r
- var sLangId=aProj[0].sLangId;\r
- for(var i=0;i<aProj.length;i++)\r
- {\r
- if(aProj[i].sIdx!=null&&aProj[i].sIdx!=""&&aProj[i].sLangId==sLangId)\r
- {\r
- addProjInfo(aProj[i].sPPath,aProj[i].sDPath,aProj[i].sIdx);\r
- }\r
- }\r
- }\r
- writeDataIFrame();\r
- enEvt();\r
- } \r
- }\r
-}\r
-\r
-function getIdxTopics(aDataCon,nIdxSet,nIIdx)\r
-{\r
- var sTopics="";\r
- if(nIdxSet<aDataCon.length&&aDataCon[nIdxSet].aKs.length>nIIdx)\r
- {\r
- if(aDataCon[nIdxSet].aKs[nIIdx].aTopics)\r
- {\r
- var nLen=aDataCon[nIdxSet].aKs[nIIdx].aTopics.length;\r
- var nProj=aDataCon[nIdxSet].nProjId;\r
- var sPath=gaData[nProj].sPPath;\r
- for(var i=0;i<nLen;i++)\r
- {\r
- var sURL=aDataCon[nIdxSet].aKs[nIIdx].aTopics[i].sURL;\r
- var sFullPath=_getFullPath(sPath,sURL);\r
- sTopics+=",'"+excapeSingleQuot(_textToHtml(aDataCon[nIdxSet].aKs[nIIdx].aTopics[i].sName))+"','"+_textToHtml_nonbsp(sFullPath)+"'";\r
- }\r
- }\r
- }\r
- return sTopics; \r
-}\r
-\r
-function excapeSingleQuot(str)\r
-{\r
- if(str==null) return null;\r
- var sRes=str;\r
- var re=new RegExp("'","g");\r
- sRes=sRes.replace(re,"\\'");\r
- return sRes;\r
-}\r
-\r
-function findCKInDom()\r
-{\r
- if(gsCK!=null)\r
- {\r
- var sK=gsCK;\r
- var oP=getElementsByTag(document,"P");\r
- if(!oP) return false;\r
- var len=oP.length;\r
- var nB=0;\r
- var nE=len-1;\r
- var nM=0;\r
- var sItem="";\r
- var bF=false;\r
- while(nB<nE){\r
- nM=(nB+nE+1)>>1;\r
- sItem=getInnerText(oP[nM]);\r
- \r
- if(compare(sItem,sK)==0)\r
- {\r
- bF=true;\r
- break;\r
- }\r
- else if(compare(sItem,sK)>0)\r
- nE=nM-1;\r
- else if(compare(sItem,sK)<0)\r
- nB=nM;\r
- }\r
- if(!bF)\r
- {\r
- if(nB==nE) nM=nB;\r
- \r
- if(nM+1<len)\r
- {\r
- sItem=getInnerText(oP[nM+1]);\r
- if(compare(sItem,sK)<=0) nM++;\r
- } \r
- if(nM+1<len)\r
- {\r
- sItem=getInnerText(oP[nM+1]);\r
- if(compare(sItem.substring(0,sK.length),sK)==0) nM++;\r
- } \r
- }\r
- \r
- var oMatch=oP[nM];\r
- if(oMatch)\r
- {\r
- window.scrollTo(0,oMatch.offsetTop);\r
- var tempColl=getElementsByTag(oMatch,"A");\r
- if(tempColl&&tempColl.length>0){\r
- var nbTag=getElementsByTag(oMatch,"NOBR");\r
- if(nbTag&&nbTag.length>0)\r
- HighLightElement(nbTag[0], gsIdxActiveBgColor, "transparent");\r
- if (gbCR)\r
- {\r
- if (gbIE4)\r
- tempColl(0).click();\r
- else\r
- {\r
- var strCommand = tempColl[0].getAttribute("onClick");\r
- var nstrCommand = strCommand.indexOf(";");\r
- strCommand = strCommand.substring(0, nstrCommand);\r
- strCommand = strCommand.replace("event", "_event");\r
- window._event.pageX = oMatch.offsetLeft ;\r
- window._event.pageY = oMatch.offsetTop + 20;\r
- window.setTimeout(strCommand, 100);\r
- }\r
- }\r
- }\r
- }\r
- gsCK=gsBCK;\r
- gbCR=gbBCR;\r
- if(gsBCK!=null)\r
- {\r
- gsBCK=null;\r
- gbBCR=false;\r
- findCK();\r
- return false;\r
- }\r
- \r
- }\r
- return true;\r
-}\r
-\r
-function clearHighLight()\r
-{\r
- resetHighLight(gsBgColor);\r
-}\r
-\r
-function IndexWriteClassStyle()\r
-{\r
- var sStyle="";\r
- sStyle+="<STYLE TYPE='text/css'>";\r
- if (gsBgImage)\r
- sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
- else\r
- sStyle+="body {border-top:black 1px solid;}\n";\r
- if(gbIE4&&gbMac&&!gbIE5)\r
- {\r
- var nMargin=parseInt(gsIdxMargin);\r
- nMargin-=10;\r
- sStyle+="P {"+getFontStyle(goIdxFont)+"margin-top:"+gsIdxMargin+";margin-bottom:"+gsIdxMargin+";}\n";\r
- sStyle+="H6 {"+getFontStyle(goIdxFont)+"margin-top:"+gsIdxMargin+";margin-bottom:"+gsIdxMargin+";}\n";\r
- sStyle+="H6.firstsub {"+getFontStyle(goIdxFont)+"margin-top:"+nMargin+"pt;margin-bottom:"+gsIdxMargin+";}\n";\r
- }\r
- else\r
- {\r
- sStyle+="P {"+getFontStyle(goIdxFont)+"margin-top:"+gsIdxMargin+";margin-bottom:"+gsIdxMargin+";}\n";\r
- sStyle+="H6 {"+getFontStyle(goIdxFont)+"margin-top:"+gsIdxMargin+";margin-bottom:"+gsIdxMargin+";}\n";\r
- }\r
- sStyle+="DIV {margin-top:"+gsIdxMargin+";margin-bottom:"+gsIdxMargin+";}\n";\r
- sStyle+="A:link {"+getFontStyle(goIdxFont)+"}\n";\r
- sStyle+="A:visited {"+getFontStyle(goIdxFont)+"}\n";\r
- sStyle+="A:active {background-color:"+gsIdxActiveBgColor+";}\n";\r
- sStyle+="A:hover {"+getFontStyle(goIdxHoverFont)+"}\n";\r
- sStyle+="</STYLE>"; \r
- document.write(sStyle);\r
- return;\r
-}\r
-\r
-function window_Unload()\r
-{\r
- UnRegisterListener2(this,WH_MSG_PROJECTREADY);\r
- UnRegisterListener2(this,WH_MSG_SEARCHINDEXKEY);\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
- if(oMsg)\r
- {\r
- var nMsgId=oMsg.nMessageId;\r
- if(nMsgId==WH_MSG_SEARCHINDEXKEY)\r
- {\r
- if(oMsg.oParam && oMsg.oParam.sInput)\r
- {\r
- if(gsCK==null)\r
- {\r
- gsCK=oMsg.oParam.sInput;\r
- gbCR = oMsg.oParam.bCR;\r
- findCK();\r
- }\r
- else\r
- {\r
- gsBCK=oMsg.oParam.sInput;\r
- gbBCR = oMsg.oParam.bCR;\r
- }\r
- }\r
- }\r
- else if(nMsgId==WH_MSG_PROJECTREADY)\r
- {\r
- loadIdx();\r
- }\r
- }\r
- return true;\r
-}\r
-\r
-if(window.gbWhVer&&window.gbWhLang&&window.gbWhMsg&&window.gbWhUtil&&window.gbWhHost&&window.gbWhProxy)\r
-{\r
- RegisterListener2(this,WH_MSG_PROJECTREADY);\r
- RegisterListener2(this,WH_MSG_SEARCHINDEXKEY);\r
- goIdxFont=new whFont("Verdana","8pt","#000000","normal","normal","none");\r
- goIdxEmptyFont=new whFont("Verdana","8pt","#666666","normal","normal","none");\r
- goIdxHoverFont=new whFont("Verdana","8pt","#007f00","normal","normal","underline");\r
-\r
- window.onload=window_OnLoad;\r
- window.onbeforeunload=window_BUnload;\r
- window.onunload=window_Unload;\r
- gbWhIHost=true;\r
-}\r
-else\r
- document.location.reload();\r
-\r
+++ /dev/null
-var garrSortChar=new Array();\r
-var gaFtsStop=new Array();\r
-var gaFtsStem=new Array();\r
-var gbWhLang=false;\r
-\r
-garrSortChar[0] = 0;\r
-garrSortChar[1] = 1;\r
-garrSortChar[2] = 2;\r
-garrSortChar[3] = 3;\r
-garrSortChar[4] = 4;\r
-garrSortChar[5] = 5;\r
-garrSortChar[6] = 6;\r
-garrSortChar[7] = 7;\r
-garrSortChar[8] = 8;\r
-garrSortChar[9] = 40;\r
-garrSortChar[10] = 41;\r
-garrSortChar[11] = 42;\r
-garrSortChar[12] = 43;\r
-garrSortChar[13] = 44;\r
-garrSortChar[14] = 9;\r
-garrSortChar[15] = 10;\r
-garrSortChar[16] = 11;\r
-garrSortChar[17] = 12;\r
-garrSortChar[18] = 13;\r
-garrSortChar[19] = 14;\r
-garrSortChar[20] = 15;\r
-garrSortChar[21] = 16;\r
-garrSortChar[22] = 17;\r
-garrSortChar[23] = 18;\r
-garrSortChar[24] = 19;\r
-garrSortChar[25] = 20;\r
-garrSortChar[26] = 21;\r
-garrSortChar[27] = 22;\r
-garrSortChar[28] = 23;\r
-garrSortChar[29] = 24;\r
-garrSortChar[30] = 25;\r
-garrSortChar[31] = 26;\r
-garrSortChar[32] = 38;\r
-garrSortChar[33] = 45;\r
-garrSortChar[34] = 46;\r
-garrSortChar[35] = 47;\r
-garrSortChar[36] = 48;\r
-garrSortChar[37] = 49;\r
-garrSortChar[38] = 50;\r
-garrSortChar[39] = 33;\r
-garrSortChar[40] = 51;\r
-garrSortChar[41] = 52;\r
-garrSortChar[42] = 53;\r
-garrSortChar[43] = 88;\r
-garrSortChar[44] = 54;\r
-garrSortChar[45] = 34;\r
-garrSortChar[46] = 55;\r
-garrSortChar[47] = 56;\r
-garrSortChar[48] = 115;\r
-garrSortChar[49] = 119;\r
-garrSortChar[50] = 121;\r
-garrSortChar[51] = 123;\r
-garrSortChar[52] = 125;\r
-garrSortChar[53] = 126;\r
-garrSortChar[54] = 127;\r
-garrSortChar[55] = 128;\r
-garrSortChar[56] = 129;\r
-garrSortChar[57] = 130;\r
-garrSortChar[58] = 57;\r
-garrSortChar[59] = 58;\r
-garrSortChar[60] = 89;\r
-garrSortChar[61] = 90;\r
-garrSortChar[62] = 91;\r
-garrSortChar[63] = 59;\r
-garrSortChar[64] = 60;\r
-garrSortChar[65] = 131;\r
-garrSortChar[66] = 148;\r
-garrSortChar[67] = 150;\r
-garrSortChar[68] = 154;\r
-garrSortChar[69] = 158;\r
-garrSortChar[70] = 168;\r
-garrSortChar[71] = 171;\r
-garrSortChar[72] = 173;\r
-garrSortChar[73] = 175;\r
-garrSortChar[74] = 185;\r
-garrSortChar[75] = 187;\r
-garrSortChar[76] = 189;\r
-garrSortChar[77] = 191;\r
-garrSortChar[78] = 193;\r
-garrSortChar[79] = 197;\r
-garrSortChar[80] = 214;\r
-garrSortChar[81] = 216;\r
-garrSortChar[82] = 218;\r
-garrSortChar[83] = 220;\r
-garrSortChar[84] = 225;\r
-garrSortChar[85] = 230;\r
-garrSortChar[86] = 240;\r
-garrSortChar[87] = 242;\r
-garrSortChar[88] = 244;\r
-garrSortChar[89] = 246;\r
-garrSortChar[90] = 252;\r
-garrSortChar[91] = 61;\r
-garrSortChar[92] = 62;\r
-garrSortChar[93] = 63;\r
-garrSortChar[94] = 64;\r
-garrSortChar[95] = 66;\r
-garrSortChar[96] = 67;\r
-garrSortChar[97] = 131;\r
-garrSortChar[98] = 148;\r
-garrSortChar[99] = 150;\r
-garrSortChar[100] = 154;\r
-garrSortChar[101] = 158;\r
-garrSortChar[102] = 168;\r
-garrSortChar[103] = 171;\r
-garrSortChar[104] = 173;\r
-garrSortChar[105] = 175;\r
-garrSortChar[106] = 185;\r
-garrSortChar[107] = 187;\r
-garrSortChar[108] = 189;\r
-garrSortChar[109] = 191;\r
-garrSortChar[110] = 193;\r
-garrSortChar[111] = 197;\r
-garrSortChar[112] = 214;\r
-garrSortChar[113] = 216;\r
-garrSortChar[114] = 218;\r
-garrSortChar[115] = 220;\r
-garrSortChar[116] = 225;\r
-garrSortChar[117] = 230;\r
-garrSortChar[118] = 240;\r
-garrSortChar[119] = 242;\r
-garrSortChar[120] = 244;\r
-garrSortChar[121] = 246;\r
-garrSortChar[122] = 252;\r
-garrSortChar[123] = 68;\r
-garrSortChar[124] = 69;\r
-garrSortChar[125] = 70;\r
-garrSortChar[126] = 71;\r
-garrSortChar[127] = 27;\r
-garrSortChar[128] = 114;\r
-garrSortChar[129] = 28;\r
-garrSortChar[130] = 82;\r
-garrSortChar[131] = 170;\r
-garrSortChar[132] = 85;\r
-garrSortChar[133] = 112;\r
-garrSortChar[134] = 109;\r
-garrSortChar[135] = 110;\r
-garrSortChar[136] = 65;\r
-garrSortChar[137] = 113;\r
-garrSortChar[138] = 223;\r
-garrSortChar[139] = 86;\r
-garrSortChar[140] = 213;\r
-garrSortChar[141] = 29;\r
-garrSortChar[142] = 255;\r
-garrSortChar[143] = 30;\r
-garrSortChar[144] = 31;\r
-garrSortChar[145] = 80;\r
-garrSortChar[146] = 81;\r
-garrSortChar[147] = 83;\r
-garrSortChar[148] = 84;\r
-garrSortChar[149] = 111;\r
-garrSortChar[150] = 36;\r
-garrSortChar[151] = 37;\r
-garrSortChar[152] = 79;\r
-garrSortChar[153] = 229;\r
-garrSortChar[154] = 222;\r
-garrSortChar[155] = 87;\r
-garrSortChar[156] = 212;\r
-garrSortChar[157] = 32;\r
-garrSortChar[158] = 254;\r
-garrSortChar[159] = 251;\r
-garrSortChar[160] = 39;\r
-garrSortChar[161] = 72;\r
-garrSortChar[162] = 97;\r
-garrSortChar[163] = 98;\r
-garrSortChar[164] = 99;\r
-garrSortChar[165] = 100;\r
-garrSortChar[166] = 73;\r
-garrSortChar[167] = 101;\r
-garrSortChar[168] = 74;\r
-garrSortChar[169] = 102;\r
-garrSortChar[170] = 133;\r
-garrSortChar[171] = 93;\r
-garrSortChar[172] = 103;\r
-garrSortChar[173] = 35;\r
-garrSortChar[174] = 104;\r
-garrSortChar[175] = 75;\r
-garrSortChar[176] = 105;\r
-garrSortChar[177] = 92;\r
-garrSortChar[178] = 122;\r
-garrSortChar[179] = 124;\r
-garrSortChar[180] = 76;\r
-garrSortChar[181] = 106;\r
-garrSortChar[182] = 107;\r
-garrSortChar[183] = 108;\r
-garrSortChar[184] = 77;\r
-garrSortChar[185] = 120;\r
-garrSortChar[186] = 199;\r
-garrSortChar[187] = 94;\r
-garrSortChar[188] = 116;\r
-garrSortChar[189] = 117;\r
-garrSortChar[190] = 118;\r
-garrSortChar[191] = 78;\r
-garrSortChar[192] = 131;\r
-garrSortChar[193] = 131;\r
-garrSortChar[194] = 131;\r
-garrSortChar[195] = 131;\r
-garrSortChar[196] = 131;\r
-garrSortChar[197] = 131;\r
-garrSortChar[198] = 131;\r
-garrSortChar[199] = 150;\r
-garrSortChar[200] = 158;\r
-garrSortChar[201] = 158;\r
-garrSortChar[202] = 158;\r
-garrSortChar[203] = 158;\r
-garrSortChar[204] = 175;\r
-garrSortChar[205] = 175;\r
-garrSortChar[206] = 175;\r
-garrSortChar[207] = 175;\r
-garrSortChar[208] = 154;\r
-garrSortChar[209] = 193;\r
-garrSortChar[210] = 197;\r
-garrSortChar[211] = 197;\r
-garrSortChar[212] = 197;\r
-garrSortChar[213] = 197;\r
-garrSortChar[214] = 197;\r
-garrSortChar[215] = 95;\r
-garrSortChar[216] = 197;\r
-garrSortChar[217] = 230;\r
-garrSortChar[218] = 230;\r
-garrSortChar[219] = 230;\r
-garrSortChar[220] = 230;\r
-garrSortChar[221] = 246;\r
-garrSortChar[222] = 227;\r
-garrSortChar[223] = 224;\r
-garrSortChar[224] = 131;\r
-garrSortChar[225] = 131;\r
-garrSortChar[226] = 131;\r
-garrSortChar[227] = 131;\r
-garrSortChar[228] = 131;\r
-garrSortChar[229] = 131;\r
-garrSortChar[230] = 131;\r
-garrSortChar[231] = 150;\r
-garrSortChar[232] = 158;\r
-garrSortChar[233] = 158;\r
-garrSortChar[234] = 158;\r
-garrSortChar[235] = 158;\r
-garrSortChar[236] = 175;\r
-garrSortChar[237] = 175;\r
-garrSortChar[238] = 175;\r
-garrSortChar[239] = 175;\r
-garrSortChar[240] = 154;\r
-garrSortChar[241] = 193;\r
-garrSortChar[242] = 197;\r
-garrSortChar[243] = 197;\r
-garrSortChar[244] = 197;\r
-garrSortChar[245] = 197;\r
-garrSortChar[246] = 197;\r
-garrSortChar[247] = 96;\r
-garrSortChar[248] = 197;\r
-garrSortChar[249] = 230;\r
-garrSortChar[250] = 230;\r
-garrSortChar[251] = 230;\r
-garrSortChar[252] = 230;\r
-garrSortChar[253] = 246;\r
-garrSortChar[254] = 227;\r
-garrSortChar[255] = 250;\r
-\r
-gaFtsStop[0] = "a";\r
-gaFtsStop[1] = "about";\r
-gaFtsStop[2] = "after";\r
-gaFtsStop[3] = "against";\r
-gaFtsStop[4] = "all";\r
-gaFtsStop[5] = "also";\r
-gaFtsStop[6] = "among";\r
-gaFtsStop[7] = "an";\r
-gaFtsStop[8] = "and";\r
-gaFtsStop[9] = "are";\r
-gaFtsStop[10] = "as";\r
-gaFtsStop[11] = "at";\r
-gaFtsStop[12] = "be";\r
-gaFtsStop[13] = "became";\r
-gaFtsStop[14] = "because";\r
-gaFtsStop[15] = "been";\r
-gaFtsStop[16] = "between";\r
-gaFtsStop[17] = "but";\r
-gaFtsStop[18] = "by";\r
-gaFtsStop[19] = "can";\r
-gaFtsStop[20] = "come";\r
-gaFtsStop[21] = "do";\r
-gaFtsStop[22] = "during";\r
-gaFtsStop[23] = "each";\r
-gaFtsStop[24] = "early";\r
-gaFtsStop[25] = "for";\r
-gaFtsStop[26] = "form";\r
-gaFtsStop[27] = "found";\r
-gaFtsStop[28] = "from";\r
-gaFtsStop[29] = "had";\r
-gaFtsStop[30] = "has";\r
-gaFtsStop[31] = "have";\r
-gaFtsStop[32] = "he";\r
-gaFtsStop[33] = "her";\r
-gaFtsStop[34] = "his";\r
-gaFtsStop[35] = "however";\r
-gaFtsStop[36] = "in";\r
-gaFtsStop[37] = "include";\r
-gaFtsStop[38] = "into";\r
-gaFtsStop[39] = "is";\r
-gaFtsStop[40] = "it";\r
-gaFtsStop[41] = "its";\r
-gaFtsStop[42] = "late";\r
-gaFtsStop[43] = "later";\r
-gaFtsStop[44] = "made";\r
-gaFtsStop[45] = "many";\r
-gaFtsStop[46] = "may";\r
-gaFtsStop[47] = "me";\r
-gaFtsStop[48] = "med";\r
-gaFtsStop[49] = "more";\r
-gaFtsStop[50] = "most";\r
-gaFtsStop[51] = "near";\r
-gaFtsStop[52] = "no";\r
-gaFtsStop[53] = "non";\r
-gaFtsStop[54] = "not";\r
-gaFtsStop[55] = "of";\r
-gaFtsStop[56] = "on";\r
-gaFtsStop[57] = "only";\r
-gaFtsStop[58] = "or";\r
-gaFtsStop[59] = "other";\r
-gaFtsStop[60] = "over";\r
-gaFtsStop[61] = "several";\r
-gaFtsStop[62] = "she";\r
-gaFtsStop[63] = "some";\r
-gaFtsStop[64] = "such";\r
-gaFtsStop[65] = "than";\r
-gaFtsStop[66] = "that";\r
-gaFtsStop[67] = "the";\r
-gaFtsStop[68] = "their";\r
-gaFtsStop[69] = "then";\r
-gaFtsStop[70] = "there";\r
-gaFtsStop[71] = "these";\r
-gaFtsStop[72] = "they";\r
-gaFtsStop[73] = "this";\r
-gaFtsStop[74] = "through";\r
-gaFtsStop[75] = "to";\r
-gaFtsStop[76] = "under";\r
-gaFtsStop[77] = "until";\r
-gaFtsStop[78] = "use";\r
-gaFtsStop[79] = "was";\r
-gaFtsStop[80] = "we";\r
-gaFtsStop[81] = "were";\r
-gaFtsStop[82] = "when";\r
-gaFtsStop[83] = "where";\r
-gaFtsStop[84] = "which";\r
-gaFtsStop[85] = "who";\r
-gaFtsStop[86] = "with";\r
-gaFtsStop[87] = "you";\r
-\r
-gaFtsStem[0] = "s";\r
-gaFtsStem[1] = "e";\r
-gaFtsStem[2] = "ed";\r
-gaFtsStem[3] = "es";\r
-gaFtsStem[4] = "er";\r
-gaFtsStem[5] = "ly";\r
-gaFtsStem[6] = "ing";\r
-gaFtsStem[7] = "ingly";\r
-\r
-\r
-// as javascript 1.3 support unicode instead of ISO-Latin-1\r
-// need to transfer come code back to ISO-Latin-1 for compare purpose\r
-// Note: Different Language(Code page) maybe need different array:\r
-var gaUToC=new Array();\r
-gaUToC[8364]=128;\r
-gaUToC[8218]=130;\r
-gaUToC[402]=131;\r
-gaUToC[8222]=132;\r
-gaUToC[8230]=133;\r
-gaUToC[8224]=134;\r
-gaUToC[8225]=135;\r
-gaUToC[710]=136;\r
-gaUToC[8240]=137;\r
-gaUToC[352]=138;\r
-gaUToC[8249]=139;\r
-gaUToC[338]=140;\r
-gaUToC[381]=142;\r
-gaUToC[8216]=145;\r
-gaUToC[8217]=146;\r
-gaUToC[8220]=147;\r
-gaUToC[8221]=148;\r
-gaUToC[8226]=149;\r
-gaUToC[8211]=150;\r
-gaUToC[8212]=151;\r
-gaUToC[732]=152;\r
-gaUToC[8482]=153;\r
-gaUToC[353]=154;\r
-gaUToC[8250]=155;\r
-gaUToC[339]=156;\r
-gaUToC[382]=158;\r
-gaUToC[376]=159;\r
-\r
-var gsBiggestChar="";\r
-function getBiggestChar()\r
-{\r
- if(gsBiggestChar.length==0)\r
- {\r
- if(garrSortChar.length<256)\r
- gsBiggestChar=String.fromCharCode(255);\r
- else\r
- {\r
- var nBiggest=0;\r
- var nBigChar=0;\r
- for(var i=0;i<=255;i++)\r
- {\r
- if(garrSortChar[i]>nBiggest)\r
- {\r
- nBiggest=garrSortChar[i];\r
- nBigChar=i;\r
- }\r
- }\r
- gsBiggestChar=String.fromCharCode(nBigChar);\r
- }\r
-\r
- } \r
- return gsBiggestChar;\r
-}\r
-\r
-function getCharCode(str,i)\r
-{\r
- var code=str.charCodeAt(i)\r
- if(code>256)\r
- {\r
- code=gaUToC[code];\r
- }\r
- return code;\r
-}\r
-\r
-function compare(strText1,strText2)\r
-{\r
- if(garrSortChar.length<256)\r
- {\r
- var strt1=strText1.toLowerCase();\r
- var strt2=strText2.toLowerCase();\r
- if(strt1<strt2) return -1;\r
- if(strt1>strt2) return 1;\r
- return 0;\r
- }\r
- else\r
- {\r
- for(var i=0;i<strText1.length&&i<strText2.length;i++)\r
- {\r
- if(garrSortChar[getCharCode(strText1,i)]<garrSortChar[getCharCode(strText2,i)]) return -1;\r
- if(garrSortChar[getCharCode(strText1,i)]>garrSortChar[getCharCode(strText2,i)]) return 1;\r
- }\r
- if(strText1.length<strText2.length) return -1;\r
- if(strText1.length>strText2.length) return 1;\r
- return 0;\r
- }\r
-}\r
-gbWhLang=true;
\ No newline at end of file
+++ /dev/null
-if (! window.gbIE4 && window.gbNav6 && !document.childNodes[0].insertAdjacentHTML){\r
-\r
-HTMLElement.prototype.insertAdjacentElement = function(where,parsedNode)\r
-{\r
- switch (where){\r
- case 'beforeBegin':\r
- this.parentNode.insertBefore(parsedNode,this)\r
- break;\r
- case 'afterBegin':\r
- this.insertBefore(parsedNode,this.firstChild);\r
- break;\r
- case 'beforeEnd':\r
- this.appendChild(parsedNode);\r
- break;\r
- case 'afterEnd':\r
- if (this.nextSibling){\r
- this.parentNode.insertBefore\r
-(parsedNode,this.nextSibling);\r
- } else {\r
- this.parentNode.appendChild(parsedNode)\r
- }\r
- break;\r
- }\r
-}\r
-\r
-HTMLElement.prototype.insertAdjacentHTML = function(where,htmlStr){\r
-\r
- var r = this.ownerDocument.createRange();\r
- r.setStartBefore(this);\r
- var parsedHTML = r.createContextualFragment(htmlStr);\r
- this.insertAdjacentElement(where,parsedHTML)\r
-}\r
-\r
-\r
-HTMLElement.prototype.insertAdjacentText = function(where,txtStr){\r
-\r
- var parsedText = document.createTextNode(txtStr)\r
- this.insertAdjacentElement(where,parsedText)\r
-}\r
-}\r
-\r
-function testScroll() {\r
- // Initialize scrollbar cache if necessary\r
- if (window._pageXOffset==null) {\r
- window._pageXOffset = window.pageXOffset\r
- window._pageYOffset = window.pageYOffset\r
- }\r
- // Expose Internet Explorer compatible object model\r
- document.body.scrollTop = window.pageYOffset\r
- document.body.scrollLeft = window.pageXOffset\r
- window.document.body.scrollHeight = document.height\r
- window.document.body.scrollWidth = document.width\r
- window.document.body.clientWidth = window.innerWidth;\r
- window.document.body.clientHeight = window.innerHeight;\r
-\r
- // If cache!=current values, call the onscroll event\r
- if (((window.pageXOffset!=window._pageXOffset) || \r
- (window.pageYOffset!=window._pageYOffset)) && (window.onscroll)) \r
- window.onscroll()\r
- // Cache new values\r
- window._pageXOffset = window.pageXOffset\r
- window._pageYOffset = window.pageYOffset\r
- }\r
-\r
-// Create compatibility layer for Netscape\r
-if (window.gbNav6) {\r
- setInterval("testScroll()",50)\r
-}
\ No newline at end of file
+++ /dev/null
-var WH_MSG_RESIZEPANE =0x0100;\r
-var WH_MSG_SHOWPANE =0x0101;\r
-var WH_MSG_HIDEPANE =0x0102;\r
-var WH_MSG_SYNCTOC =0x0103;\r
-var WH_MSG_NEXT =0x0104;\r
-var WH_MSG_PREV =0x0105;\r
-var WH_MSG_ENABLEPREV =0x0106;\r
-var WH_MSG_ENABLESYNC =0x0107;\r
-var WH_MSG_ENABLEWEBSEARCH =0x0108;\r
-\r
-var WH_MSG_ISPANEVISIBLE =0x0109;\r
-var WH_MSG_PANESTATUE =0x010a;\r
-\r
-var WH_MSG_SYNCINFO =0x010b;\r
-var WH_MSG_PANEINFO =0x010c;\r
-var WH_MSG_WEBSEARCH =0x010d;\r
-\r
-var WH_MSG_SEARCHINDEXKEY =0x0201;\r
-\r
-var WH_MSG_SEARCHFTSKEY =0x020a;\r
-\r
-var WH_MSG_PROJECTREADY =0x0301;\r
-var WH_MSG_GETPROJINFO =0x0302;\r
-\r
-var WH_MSG_SHOWTOC =0x0401;\r
-var WH_MSG_SHOWIDX =0x0402;\r
-var WH_MSG_SHOWFTS =0x0403;\r
-var WH_MSG_SHOWGLO =0x0404;\r
-\r
-var WH_MSG_SHOWGLODEF =0x0500;\r
-\r
-var WH_MSG_GETTOCPATHS =0x0600;\r
-var WH_MSG_GETAVIAVENUES =0x0601;\r
-var WH_MSG_GETCURRENTAVENUE =0x0602;\r
-var WH_MSG_GETPANEINFO =0x0603;\r
-var WH_MSG_AVENUEINFO =0x0604;\r
-\r
-var WH_MSG_GETSTARTFRAME =0x0701;\r
-var WH_MSG_GETDEFAULTTOPIC =0x0702;\r
-\r
-var WH_MSG_SEARCHTHIS =0x0801;\r
-var WH_MSG_GETSEARCHS =0x0802;\r
-\r
-var WH_MSG_ISINFRAMESET =0x0900;\r
-\r
-var WH_MSG_TOOLBARORDER =0x0a00;\r
-var WH_MSG_MINIBARORDER =0x0a01;\r
-var WH_MSG_ISSYNCSSUPPORT =0x0a02;\r
-var WH_MSG_ISSEARCHSUPPORT =0x0a03;\r
-var WH_MSG_GETPANETYPE =0x0a04;\r
-var WH_MSG_BACKUPSEARCH =0x0a05;\r
-var WH_MSG_GETPANES =0x0a06;\r
-var WH_MSG_INITSEARCHSTRING =0x0a07;\r
-var WH_MSG_RELOADNS6 =0x0a08;\r
-var WH_MSG_ISAVENUESUPPORT =0x0a09;\r
-\r
-function whMessage(nMessageId,wSender,nVersion,oParam)\r
-{\r
- this.nMessageId=nMessageId;\r
- this.wSender=wSender;\r
- this.nVersion=nVersion;\r
- this.oParam=oParam;\r
-}\r
-var gbWhMsg=true;
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<title>VISU refrence manual</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whstub.js"></script>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whstart.js"></script>\r
-</head>\r
-\r
-<frameset id="whPfset" cols="260,*"><noframes><p>Your browser does not support frames. We recommend that you update your browser to a version that supports frames.</p><p>To view the Help system without frames click on this<a href="whgdata/whnvp30.htm">hyperlink.</a></p></noframes><frame src="whgdata/whnvp30.htm" title="navigation pane" name="navigation pane" scrolling="no"><frame src="files/introduction_to_visu.htm" title="topic pane" name="bsscright" scrolling="yes"></frameset>\r
-</html>
\ No newline at end of file
+++ /dev/null
-var gaProj=new Array();\r
-var gnChecked=0;\r
-var gsProjName="";\r
-var gbReady=false;\r
-var goMan=null;\r
-var gbXML=false;\r
-var gsFirstPane="";\r
-var gServerEnabled=false;\r
-var gsPath="";\r
-var gbWhPHost=false;\r
-var goDiv = null;\r
-var gsHTML = "";\r
-\r
-if (navigator.currentNavPen)\r
- gsFirstPane = navigator.currentNavPen;\r
-\r
-\r
-function delayLoad()\r
-{\r
- if (goDiv&&gsHTML)\r
- {\r
- goDiv.innerHTML=gsHTML;\r
- goDiv=null;\r
- gsHTML="";\r
- }\r
-}\r
-\r
-function whCom(sName,sComFile)\r
-{\r
- this.msName=sName;\r
- this.msDivId=sName+"Div";\r
- this.msIFrameId=sName+"IFrame";\r
- this.msComFile=sComFile;\r
- this.mbloaded=false;\r
- this.mbShow=false;\r
- this.show=function(bShow)\r
- {\r
- if(this.mbShow!=bShow)\r
- {\r
- if(bShow&&!this.mbloaded)\r
- {\r
- this.load();\r
- }\r
-\r
- var oDiv=getElement(this.msDivId);\r
- if(oDiv)\r
- {\r
- if(gbIE55||(gbIE5&&gbMac))\r
- {\r
- var oIframe=getElement(this.msIFrameId);\r
- if(oIframe)\r
- {\r
- if(bShow)\r
- {\r
- oDiv.style.zIndex=3;\r
- if(oIframe!=null)\r
- {\r
- oIframe.style.zIndex=3;\r
- if (!gbIE55)\r
- oIframe.style.visibility="visible";\r
- }\r
- }\r
- else\r
- {\r
- oDiv.style.zIndex=2;\r
- if(oIframe!=null)\r
- {\r
- oIframe.style.zIndex=2;\r
- if (!gbIE55)\r
- oIframe.style.visibility="hidden";\r
- }\r
- }\r
- }\r
- }\r
- if (!gbIE55)\r
- oDiv.style.visibility=(bShow==true)?'visible':'hidden';\r
- this.mbShow=bShow;\r
- }\r
-\r
- }\r
- }\r
- this.load=function()\r
- {\r
- if(!this.mbloaded)\r
- {\r
- if(this.msComFile.length>0){\r
- var strFile= _getFullPath(getPath(), this.msComFile);\r
- var oDiv=getElement(this.msDivId);\r
- if(oDiv){\r
- if(gbIE4){\r
- var nIFrameHeight=oDiv.style.pixelHeight;\r
- var nIFrameWidth=oDiv.style.pixelWidth;\r
- var sHTML="<IFRAME ID="+this.msIFrameId+" title=\"" + this.msName + "\" SRC=\""+strFile+"\" BORDER=0 FRAMEBORDER=no STYLE=\"width:";\r
- if(gbMac){\r
- sHTML+=nIFrameWidth+"px;height:"+nIFrameHeight+"px;\"></IFRAME>";\r
- }else{\r
- sHTML+="100%; height:100%;\"></IFRAME>";\r
- }\r
- oDiv.innerHTML=sHTML;\r
- }else if(gbNav6){\r
- gsHTML="<IFRAME ID="+this.msIFrameId+" title=\"" + this.msName + "\" SRC=\""+strFile+"\" BORDER=0 FRAMEBORDER=no STYLE=\"width:100%;border:0;height:";\r
- gsHTML+="100%;\"></IFRAME>";\r
- goDiv = oDiv;\r
- setTimeout("delayLoad()", 100);\r
- }\r
- this.mbloaded=true;\r
- }\r
- }\r
- }\r
- }\r
- this.unload=function()\r
- {\r
- var oDiv=getElement(this.msDivId);\r
- if(oDiv)\r
- oDiv.innerHTML="";\r
- }\r
- this.getDivHTML=function()\r
- {\r
- var sHTML="";\r
- if(gbMac&&gbIE4)\r
- sHTML+="<DIV ID="+this.msDivId+" ALIGN=left STYLE=\"position:absolute;z-index:1;left:0;top:0;width:100%;height:100%;margin:0;padding:0;border:0;\">";\r
- else\r
- if (gbIE5)\r
- sHTML+="<DIV ID="+this.msDivId+" ALIGN=left STYLE=\"position:absolute;z-index:1;left:0;top:0;width:100%;height:100%;\">";\r
- else\r
- sHTML+="<DIV ID="+this.msDivId+" ALIGN=left STYLE=\"position:absolute;z-index:1;left:0;top:0;width:100%;height:100%;visibility:hidden\">";\r
- sHTML+="</DIV>";\r
- return sHTML;\r
- }\r
-} \r
-\r
-function whComMan()\r
-{\r
- this.sName="";\r
- this.maCom=new Array();\r
- this.addCom=function(sName,sComFile)\r
- {\r
- var owhCom=new whCom(sName,sComFile);\r
- this.maCom[this.maCom.length]=owhCom;\r
- }\r
- this.init=function()\r
- {\r
- var sHTML="";\r
- for(var i=0;i<this.maCom.length;i++)\r
- {\r
- sHTML+=this.maCom[i].getDivHTML();\r
- }\r
- document.body.insertAdjacentHTML("beforeEnd",sHTML);\r
-\r
- }\r
- this.showById=function(nId)\r
- {\r
- for(var s=0;s<this.maCom.length;s++)\r
- {\r
- if(s!==nId)\r
- this.maCom[s].show(false);\r
- }\r
- this.maCom[nId].show(true);\r
- }\r
- this.show=function(sName)\r
- {\r
- navigator.currentNavPen = sName;\r
- var bFound=false;\r
- for(var i=0;i<this.maCom.length;i++)\r
- {\r
- if(sName==this.maCom[i].msName)\r
- {\r
- bFound=true;\r
- break;\r
- }\r
- }\r
- if(bFound)\r
- {\r
- this.showById(i);\r
- this.sName=sName;\r
- }\r
- }\r
- this.unload=function()\r
- {\r
- for(var i=0;i<this.maCom.length;i++)\r
- {\r
- this.maCom[i].unload();\r
- } \r
- }\r
- this.getCurrent=function()\r
- {\r
- return this.sName;\r
- }\r
-}\r
-\r
-function getPath()\r
-{\r
- if(gsPath=="")\r
- {\r
- gsPath=location.href;\r
- gsPath=_replaceSlash(gsPath);\r
- var nPosFile=gsPath.lastIndexOf("/");\r
- gsPath=gsPath.substring(0,nPosFile+1);\r
- }\r
- return gsPath;\r
-}\r
-\r
-goMan=new whComMan();\r
-function addPane(sName,sFileName)\r
-{\r
- goMan.addCom(sName,sFileName); \r
-}\r
-\r
-function setShowPane(sName, bForce)\r
-{\r
- if ((gsFirstPane == "") || bForce)\r
- gsFirstPane=sName;\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
- if(gsProjName!="")\r
- {\r
- goMan.init();\r
- if(gsFirstPane!="")\r
- goMan.show(gsFirstPane);\r
- else\r
- goMan.showById(0);\r
- loadData2(gsProjName);\r
- }\r
- else if (gServerEnabled)\r
- {\r
- goMan.init();\r
- if(gsFirstPane!="")\r
- goMan.show(gsFirstPane);\r
- else\r
- goMan.showById(0);\r
- }\r
-}\r
-\r
-function setServerEnabled()\r
-{\r
- gServerEnabled = true;\r
-}\r
-\r
-function loadData2(strFile)\r
-{\r
- if(gbXML)\r
- loadDataXML(strFile);\r
- else\r
- loadData(strFile);\r
-}\r
-\r
-function addProject(bPreferXML,sXMLName,sHTMLName)\r
-{\r
- var bLoadXML=bPreferXML;\r
- if(!gbIE4&&!gbNav6)\r
- return;\r
- if(gbIE4&&!gbIE5)\r
- bLoadXML=false;\r
- if (gbIE5&&!gbMac)\r
- bLoadXML=true;\r
- if(gbIE55||gbNav6)\r
- bLoadXML=true;\r
- if(bLoadXML)\r
- addProjectXML(sXMLName);\r
- else\r
- addProjectHTML(sHTMLName);\r
-}\r
-\r
-function addProjectHTML(sName)\r
-{\r
- gbXML=false;\r
- gsProjName=sName;\r
-}\r
-\r
-function addProjectXML(sName)\r
-{\r
- gbXML=true;\r
- gsProjName=sName;\r
-}\r
-\r
-function window_MyBunload()\r
-{\r
- goMan.unload();\r
- window_BUnload();\r
-}\r
-\r
-function putDataXML(xmlDoc,sdocPath)\r
-{\r
- if(xmlDoc!=null)\r
- {\r
- var projectNode=xmlDoc.getElementsByTagName("project")[0];\r
- if(projectNode)\r
- {\r
- var aRProj=new Array();\r
- aRProj[0]=new Object();\r
- aRProj[0].sPPath=_getPath(sdocPath);\r
- var sLangId=projectNode.getAttribute("langid");\r
- if(sLangId)\r
- {\r
- aRProj[0].sLangId=sLangId;\r
- }\r
- var sDPath=projectNode.getAttribute("datapath");\r
- if(sDPath)\r
- {\r
- if(sDPath.lastIndexOf("/")!=sDPath.length-1)\r
- sDPath+="/";\r
- aRProj[0].sDPath=sDPath;\r
- }\r
- else\r
- aRProj[0].sDPath="";\r
- aRProj[0].sToc=projectNode.getAttribute("toc");\r
- aRProj[0].sIdx=projectNode.getAttribute("index");\r
- aRProj[0].sFts=projectNode.getAttribute("fts");\r
- aRProj[0].sGlo=projectNode.getAttribute("glossary");\r
- var RmtProject=projectNode.getElementsByTagName("remote");\r
- var nCount=1;\r
- for (var i=0;i<RmtProject.length;i++)\r
- {\r
- var sURL=RmtProject[i].getAttribute("url");\r
- if(sURL)\r
- {\r
- aRProj[nCount]=new Object();\r
- aRProj[nCount++].sPPath=_getFullPath(aRProj[0].sPPath,sURL);\r
- }\r
- }\r
- putProjectInfo(aRProj);\r
- }\r
- else\r
- {\r
- // on Netscape 6.0 under some situation the xml file cannot be loaded.\r
- // so we use pure html instead.\r
- setTimeout("redirectToList();",100);\r
- }\r
- }\r
-}\r
-\r
-function redirectToList()\r
-{\r
- if(gbReDirectThis)\r
- document.location=gsNavReDirect;\r
- else\r
- parent.document.location=gsNavReDirect;\r
-}\r
-\r
-function putProjectInfo(aRProj)\r
-{\r
- if(gnChecked==0||isSamePath(gaProj[gnChecked].sPPath,aRProj[0].sPPath))\r
- {\r
- if(gnChecked!=0)\r
- {\r
- if(aRProj[0].sLangId!=gaProj[0].sLangId)\r
- alert("The project: "+aRProj[0].sPPath+" is using a different language to the main project, which will cause the index and full text search functionality to be disabled for this remote project.");\r
- }\r
- gaProj[gnChecked]=aRProj[0];\r
- for(var i=1;i<aRProj.length;i++)\r
- {\r
- var bFound=false;\r
- for(var j=0;j<gaProj.length;j++)\r
- {\r
- if(isSamePath(gaProj[j].sPPath,aRProj[i].sPPath))\r
- {\r
- bFound=true;\r
- break;\r
- }\r
- }\r
- if(!bFound)\r
- {\r
- gaProj[gaProj.length]=aRProj[i];\r
- }\r
- }\r
- gnChecked++;\r
- checkRemoteProject();\r
- }\r
- else\r
- alert("Could not load correctly, please click Refresh.");\r
-}\r
-\r
-function isSamePath(sPath1,sPath2)\r
-{\r
- return (sPath1.toLowerCase()==sPath2.toLowerCase());\r
-}\r
-\r
-function checkRemoteProject()\r
-{\r
- if(gaProj.length!=gnChecked)\r
- {\r
- setTimeout("cancelProj("+gnChecked+");",10000);\r
- loadData2(gaProj[gnChecked].sPPath+gsProjName);\r
- }\r
- else{\r
- var oMsg=new whMessage(WH_MSG_PROJECTREADY,this,1,null);\r
- gbReady=true;\r
- SendMessage(oMsg);\r
- }\r
-}\r
-\r
-function cancelProj(i)\r
-{\r
- if(i==gnChecked)\r
- {\r
- alert("Can't load project::"+gaProj[i].sPPath);\r
- gnChecked++;\r
- checkRemoteProject();\r
- } \r
-}\r
-\r
-function window_resize()\r
-{\r
- for(var i=0;i<goMan.maCom.length;i++)\r
- {\r
- var oFrame=getElement(goMan.maCom[i].msIFrameId);\r
- if(oFrame)\r
- {\r
- oFrame.style.height=document.body.clientHeight;\r
- oFrame.style.width=document.body.clientWidth;\r
- }\r
- }\r
- window_resize2();\r
-}\r
-\r
-function window_resize2()\r
-{\r
- if(document.body)\r
- {\r
- if(document.body.clientWidth > 1 && document.body.clientHeight>1)\r
- {\r
- var oMsg = new whMessage(WH_MSG_RESIZEPANE, this, 1, null);\r
- SendMessage(oMsg);\r
- }\r
- }\r
-}\r
-\r
-function window_unload()\r
-{\r
- UnRegisterListener2(this,WH_MSG_GETPROJINFO);\r
- UnRegisterListener2(this,WH_MSG_SHOWTOC);\r
- UnRegisterListener2(this,WH_MSG_SHOWIDX);\r
- UnRegisterListener2(this,WH_MSG_SHOWFTS);\r
- UnRegisterListener2(this,WH_MSG_SHOWGLO);\r
- UnRegisterListener2(this,WH_MSG_GETPANEINFO);\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
- if(oMsg)\r
- {\r
- var nMsgId=oMsg.nMessageId;\r
- if(nMsgId==WH_MSG_GETPROJINFO)\r
- {\r
- if(gbReady)\r
- {\r
- var oProj=new Object();\r
- oProj.aProj=gaProj;\r
- oProj.bXML=gbXML;\r
- oMsg.oParam=oProj;\r
- }\r
- else\r
- return false;\r
- }\r
- else if(nMsgId==WH_MSG_SHOWTOC)\r
- {\r
- if(goMan)\r
- goMan.show("toc");\r
- var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "toc");\r
- SendMessage(onMsg);\r
- onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
- SendMessage(onMsg);\r
- }\r
- else if(nMsgId==WH_MSG_SHOWIDX)\r
- {\r
- if(goMan)\r
- goMan.show("idx");\r
- var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "idx");\r
- SendMessage(onMsg);\r
- onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
- SendMessage(onMsg);\r
- }\r
- else if(nMsgId==WH_MSG_SHOWFTS)\r
- {\r
- if(goMan)\r
- goMan.show("fts");\r
- var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "fts");\r
- SendMessage(onMsg);\r
- onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
- SendMessage(onMsg);\r
- }\r
- else if(nMsgId==WH_MSG_SHOWGLO)\r
- {\r
- if(goMan)\r
- goMan.show("glo");\r
- var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "glo");\r
- SendMessage(onMsg);\r
- onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
- SendMessage(onMsg);\r
- }\r
- else if(nMsgId==WH_MSG_GETPANEINFO)\r
- {\r
- oMsg.oParam=goMan.getCurrent();\r
- return false;\r
- }\r
- }\r
- return true;\r
-}\r
-\r
-if(window.gbWhUtil&&window.gbWhMsg&&window.gbWhVer&&window.gbWhProxy)\r
-{\r
- RegisterListener2(this,WH_MSG_GETPROJINFO);\r
- RegisterListener2(this,WH_MSG_SHOWTOC);\r
- RegisterListener2(this,WH_MSG_SHOWIDX);\r
- RegisterListener2(this,WH_MSG_SHOWFTS);\r
- RegisterListener2(this,WH_MSG_SHOWGLO);\r
- RegisterListener2(this,WH_MSG_GETPANEINFO);\r
-\r
- if((gbMac&&gbIE4)||(gbSunOS&&gbIE5))\r
- {\r
- window.onresize=window_resize;\r
- }\r
- else if(gbIE4)\r
- {\r
- window.onresize=window_resize2;\r
- }\r
- window.onload=window_OnLoad;\r
- window.onbeforeunload=window_MyBunload;\r
- window.onunload=window_unload;\r
- gbWhPHost=true;\r
-}\r
-else\r
- document.location.reload();\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>project description</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-</head>\r
-<body>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whproj.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
- setLangId("1033");\r
- setDataPath("whdata");\r
- addToc("whtoc.htm");\r
-\r
- addFts("whfts.htm");\r
- addGlo("whglo.htm");\r
-\r
-//-->\r
-</script>\r
-</body>\r
-</html>
\ No newline at end of file
+++ /dev/null
-var gaProj=new Array();\r
-\r
-gaProj[0]=new project("");\r
-\r
-function setLangId(sLangId)\r
-{\r
- gaProj[0].sLangId=sLangId;\r
-}\r
-\r
-function setDataPath(sPath)\r
-{\r
- if(sPath.length!=0)\r
- {\r
- if(sPath.lastIndexOf("/")!=sPath.length-1)\r
- sPath+="/";\r
- gaProj[0].sDPath=sPath; \r
- }\r
- else\r
- gaProj[0].sDPath="";\r
-}\r
-\r
-function addToc(sFile)\r
-{\r
- gaProj[0].sToc=sFile;\r
-}\r
-\r
-function addIdx(sFile)\r
-{\r
- gaProj[0].sIdx=sFile;\r
-}\r
-\r
-function addFts(sFile)\r
-{\r
- gaProj[0].sFts=sFile;\r
-}\r
-\r
-function addGlo(sFile)\r
-{\r
- gaProj[0].sGlo=sFile;\r
-}\r
-\r
-function addRemoteProject(sProjRelPath)\r
-{\r
- gaProj[gaProj.length]=new project(sProjRelPath);\r
-}\r
-\r
-function project(sPPath)\r
-{\r
- this.sPPath=sPPath;\r
- this.sLangId="";\r
- this.sDPath="";\r
- this.sToc="";\r
- this.sIdx="";\r
- this.sFts="";\r
- this.sGlo="";\r
-}\r
-\r
-window.onload=window_OnLoad;\r
-\r
-function window_OnLoad()\r
-{\r
- gsName=document.location.href;\r
- gsName=_replaceSlash(gsName);\r
- var nPos=gsName.lastIndexOf("/");\r
- if(nPos!=-1)\r
- gaProj[0].sPPath=gsName.substring(0,nPos+1);\r
- else\r
- alert("Error in Loading navigation component. Please regenerate WebHelp.");\r
- patchPath(gaProj);\r
- if(parent&&parent!=this&& typeof(parent.putProjectInfo)=="function")\r
- {\r
- parent.putProjectInfo(gaProj);\r
- }\r
-}\r
-\r
-function patchPath(aProj)\r
-{\r
- for(var i=1;i<aProj.length;i++)\r
- {\r
- aProj[i].sPPath=_getFullPath(gaProj[0].sPPath,aProj[i].sPPath);\r
- }\r
-}
\ No newline at end of file
+++ /dev/null
-<?xml version='1.0' encoding='ISO-8859-1' ?>\r
-<project langid="1033" datapath="whdata" toc="whtoc.xml" fts="whfts.xml" glossary="whglo.xml" >\r
-</project>\r
+++ /dev/null
-var gbInited=false;\r
-var gWndStubPage=null;\r
-function getStubPage()\r
-{\r
- if(!gbInited)\r
- {\r
- gWndStubPage=getStubPage_inter(window);\r
- gbInited=true;\r
- }\r
- return gWndStubPage;\r
-}\r
-\r
-function getStubPage_inter(wCurrent)\r
-{\r
- if(null==wCurrent.parent||wCurrent.parent==wCurrent)\r
- return null;\r
-\r
- if(typeof(wCurrent.parent.whname)=="string"&&"wh_stub"==wCurrent.parent.whname)\r
- return wCurrent.parent;\r
- else\r
- if(wCurrent.parent.frames.length!=0&&wCurrent.parent!=wCurrent)\r
- return getStubPage_inter(wCurrent.parent);\r
- else\r
- return null;\r
-}\r
-\r
-function RegisterListener(framename,nMessageId)\r
-{\r
- var wSP=getStubPage();\r
- if(wSP&&wSP!=this)\r
- return wSP.RegisterListener(framename,nMessageId);\r
- else\r
- return false;\r
-}\r
-\r
-function RegisterListener2(oframe,nMessageId)\r
-{\r
- var wSP=getStubPage();\r
- if(wSP&&wSP!=this)\r
- return wSP.RegisterListener2(oframe,nMessageId);\r
- else\r
- return false;\r
-}\r
-\r
-function UnRegisterListener2(oframe,nMessageId)\r
-{\r
- var wSP=getStubPage();\r
- if(wSP&&wSP!=this&&wSP.UnRegisterListener2)\r
- return wSP.UnRegisterListener2(oframe,nMessageId);\r
- else\r
- return false;\r
-}\r
-\r
-function SendMessage(oMessage)\r
-{\r
- var wSP=getStubPage();\r
- if(wSP&&wSP!=this&&wSP.SendMessage)\r
- return wSP.SendMessage(oMessage);\r
- else\r
- return false;\r
-}\r
-\r
-var gbWhProxy=true;
\ No newline at end of file
+++ /dev/null
-<?xml version='1.0' encoding='ISO-8859-1' ?>\r
-<resource>\r
-<item name="Prev" value="<<" />\r
-<item name="Hide" value="Hide" />\r
-<item name="SyncTocTooltip" value="Sync TOC" />\r
-<item name="InTopicSearchBtnText" value="Go" />\r
-<item name="FtsInputPrompt" value="Type in the word(s) to search for:" />\r
-<item name="Done" value="Done" />\r
-<item name="JS_alert_cantLoadProject" value="Can't load project:" />\r
-<item name="Next" value=">>" />\r
-<item name="SyncToc" value="SyncToc" />\r
-<item name="ToolBarSearchBtnText" value="Go" />\r
-<item name="SuggestViewNoFrameMessage" value="To view the Help system without frames click on this" />\r
-<item name="Hide_Navigation_Component" value="Hide Navigation Component" />\r
-<item name="FtsBtnText" value="Go" />\r
-<item name="TopicsFound" value="Topics Found" />\r
-<item name="LoadingContentsData" value="Loading, click here to cancel..." />\r
-<item name="Definition" value="Definition:" />\r
-<item name="CompletingContents" value="Completing Contents..." />\r
-<item name="Seperate" value="|" />\r
-<item name="Contents" value="Contents" />\r
-<item name="Disabled Prev" value="<<" />\r
-<item name="Glossary" value="Glossary" />\r
-<item name="Search" value="Search" />\r
-<item name="CantSearch" value="Cannot search for that phrase." />\r
-<item name="LoadingIndex" value="Loading Index..." />\r
-<item name="LoadingData" value="Loading data, please wait..." />\r
-<item name="Show_Navigation_Component" value="Show Navigation Component" />\r
-<item name="Book" value="Book" />\r
-<item name="Disabled Next" value=">>" />\r
-<item name="Find" value="Find" />\r
-<item name="CantOpenURLorFile" value="Can't open URL or file" />\r
-<item name="Blank_topic_text" value="This topic was created by WinHelp Project Conversion Wizard, and is the destination of a missing topic or broken hyperlink." />\r
-<item name="BrowserLimitedMessage" value="Your browser does not support frames. We recommend that you update your browser to a version that supports frames." />\r
-<item name="LoadingTOCItem" value="Loading Table of Contents:" />\r
-<item name="Display" value="Display" />\r
-<item name="Cancel" value="Cancel" />\r
-<item name="SearchLabel" value="Search" />\r
-<item name="RelateTopicListPrompt" value="Click a topic, then click Display." />\r
-<item name="NextTooltip" value="Next Topic" />\r
-<item name="JS_alert_colorlimitation" value="WebHelp has detected that your display is set to 16 colors. For full WebHelp support, please set your display to use 256 or more colors." />\r
-<item name="TopicsNotFound" value="No Topics Found." />\r
-<item name="Show" value="Show" />\r
-<item name="PreTooltip" value="Previous Topic" />\r
-<item name="SearchPrompt" value="- Search -" />\r
-<item name="IndexBtnText" value="Go" />\r
-<item name="JS_alert_ProjectLoadingFail" value="Could not load correctly, please click Refresh." />\r
-<item name="LoadingContents" value="Loading contents, please wait..." />\r
-<item name="Term" value="Term:" />\r
-<item name="WebSearchButton" value="WebSearch" />\r
-<item name="Remote_Page" value="Remote Page" />\r
-<item name="WebSearch" value="WebSearch" />\r
-<item name="LoadingFTS" value="Reading Search Data..." />\r
-<item name="Index" value="Index" />\r
-<item name="JS_alert_ErrorInLoading" value="Error in Loading navigation component. Please regenerate WebHelp." />\r
-<item name="JS_alert_appletNotLoad" value="Unable to load applet. If you are using an old version of Netscape, the prefs.js file needs to be edited." />\r
-<item name="IndexInputPrompt" value="Type in the keyword to find:" />\r
-<item name="Page" value="Page" />\r
-<item name="SuggestViewNoFrameMsg2" value="hyperlink." />\r
-<item name="Searching" value="Searching..." />\r
-\r
- <item name="English" value="" />\r
- <item name="langorder" value="0,1,2,3,4,5,6,7,8,40,41,42,43,44,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,38,45,46,47,48,49,50,33,51,52,53,88,54,34,55,56,115,119,121,123,125,126,127,128,129,130,57,58,89,90,91,59,60,131,148,150,154,158,168,171,173,175,185,187,189,191,193,197,214,216,218,220,225,230,240,242,244,246,252,61,62,63,64,66,67,131,148,150,154,158,168,171,173,175,185,187,189,191,193,197,214,216,218,220,225,230,240,242,244,246,252,68,69,70,71,27,114,28,82,170,85,112,109,110,65,113,223,86,213,29,255,30,31,80,81,83,84,111,36,37,79,229,222,87,212,32,254,251,39,72,97,98,99,100,73,101,74,102,133,93,103,35,104,75,105,92,122,124,76,106,107,108,77,120,199,94,116,117,118,78,131,131,131,131,131,131,131,150,158,158,158,158,175,175,175,175,154,193,197,197,197,197,197,95,197,230,230,230,230,246,227,224,131,131,131,131,131,131,131,150,158,158,158,158,175,175,175,175,154,193,197,197,197,197,197,96,197,230,230,230,230,246,227,250," />\r
-\r
- <panes show="0">\r
- <toc />\r
- <fts />\r
- <glossary />\r
- </panes>\r
-\r
- <stopwords>\r
- <word name="a" />\r
- <word name="about" />\r
- <word name="after" />\r
- <word name="against" />\r
- <word name="all" />\r
- <word name="also" />\r
- <word name="among" />\r
- <word name="an" />\r
- <word name="and" />\r
- <word name="are" />\r
- <word name="as" />\r
- <word name="at" />\r
- <word name="be" />\r
- <word name="became" />\r
- <word name="because" />\r
- <word name="been" />\r
- <word name="between" />\r
- <word name="but" />\r
- <word name="by" />\r
- <word name="can" />\r
- <word name="come" />\r
- <word name="do" />\r
- <word name="during" />\r
- <word name="each" />\r
- <word name="early" />\r
- <word name="for" />\r
- <word name="form" />\r
- <word name="found" />\r
- <word name="from" />\r
- <word name="had" />\r
- <word name="has" />\r
- <word name="have" />\r
- <word name="he" />\r
- <word name="her" />\r
- <word name="his" />\r
- <word name="however" />\r
- <word name="in" />\r
- <word name="include" />\r
- <word name="into" />\r
- <word name="is" />\r
- <word name="it" />\r
- <word name="its" />\r
- <word name="late" />\r
- <word name="later" />\r
- <word name="made" />\r
- <word name="many" />\r
- <word name="may" />\r
- <word name="me" />\r
- <word name="med" />\r
- <word name="more" />\r
- <word name="most" />\r
- <word name="near" />\r
- <word name="no" />\r
- <word name="non" />\r
- <word name="not" />\r
- <word name="of" />\r
- <word name="on" />\r
- <word name="only" />\r
- <word name="or" />\r
- <word name="other" />\r
- <word name="over" />\r
- <word name="several" />\r
- <word name="she" />\r
- <word name="some" />\r
- <word name="such" />\r
- <word name="than" />\r
- <word name="that" />\r
- <word name="the" />\r
- <word name="their" />\r
- <word name="then" />\r
- <word name="there" />\r
- <word name="these" />\r
- <word name="they" />\r
- <word name="this" />\r
- <word name="through" />\r
- <word name="to" />\r
- <word name="under" />\r
- <word name="until" />\r
- <word name="use" />\r
- <word name="was" />\r
- <word name="we" />\r
- <word name="were" />\r
- <word name="when" />\r
- <word name="where" />\r
- <word name="which" />\r
- <word name="who" />\r
- <word name="with" />\r
- <word name="you" />\r
- </stopwords>\r
-\r
- <stems>\r
- <stem name="s" />\r
- <stem name="e" />\r
- <stem name="ed" />\r
- <stem name="es" />\r
- <stem name="er" />\r
- <stem name="ly" />\r
- <stem name="ing" />\r
- <stem name="ingly" />\r
- </stems>\r
-\r
- <paneskin>\r
- <background color="#ffffff" img="" />\r
- <font name="Tahoma" size="8pt" color="#000080" style="Normal" weight="Normal" decoration="none" />\r
- <toc>\r
- <background color="#ffffff" img="" />\r
- <icons>\r
- <book open="wht_toc2.gif" close="wht_toc1.gif" />\r
- <item local="wht_toc3.gif" remote="wht_toc4.gif" />\r
- <newbook open="" close="" />\r
- <newitem local="" remote="" />\r
- </icons>\r
- <fonts>\r
- <normal name="Tahoma" size="8pt" color="#000000" style="Normal" weight="Normal" decoration="none" />\r
- <hover name="Tahoma" size="8pt" color="#000080" style="Normal" weight="Normal" decoration="underline" />\r
- </fonts>\r
- <activebackgroundcolor attr="#c0c0c0" />\r
- <margin attr="" />\r
- <indent attr="" />\r
- </toc>\r
- <index>\r
- <form>\r
- <fonts>\r
- <title name="Tahoma" size="8pt" color="#000080" style="Normal" weight="Normal" decoration="none" />\r
- </fonts>\r
- <button normal="" hover="" />\r
- <editwith value="20" />\r
- </form>\r
- <background color="#ffffff" img="" />\r
- <fonts>\r
- <normal name="Tahoma" size="8pt" color="#000000" style="Normal" weight="Normal" decoration="none" />\r
- <hover name="Tahoma" size="8pt" color="#000080" style="Normal" weight="Normal" decoration="underline" />\r
- <empty name="" size="8pt" color="" style="" weight="" decoration="" />\r
- </fonts>\r
- <activebackgroundcolor attr="#c0c0c0" />\r
- <margin attr="" />\r
- <indent attr="" />\r
- </index>\r
- <fts>\r
- <form>\r
- <fonts>\r
- <title name="Tahoma" size="8pt" color="#000080" style="Normal" weight="Normal" decoration="none" />\r
- </fonts>\r
- <button normal="" hover="" />\r
- <editwith value="20" />\r
- </form>\r
- <background color="#ffffff" img="" />\r
- <fonts>\r
- <normal name="Tahoma" size="8pt" color="#000000" style="Normal" weight="Normal" decoration="none" />\r
- <hover name="Tahoma" size="8pt" color="#000080" style="Normal" weight="Normal" decoration="underline" />\r
- <error name="Tahoma" size="8pt" color="#000000" style="Normal" weight="Normal" decoration="none" />\r
- </fonts>\r
- <activebackgroundcolor attr="#c0c0c0" />\r
- <margin attr="" />\r
- <indent attr="" />\r
- </fts>\r
- <glossary>\r
- <background color="#ffffff" img="" />\r
- <fonts>\r
- <normal name="Tahoma" size="8pt" color="#000000" style="Normal" weight="Normal" decoration="none" />\r
- <hover name="Tahoma" size="8pt" color="#000080" style="Normal" weight="Normal" decoration="underline" />\r
- </fonts>\r
- <activebackgroundcolor attr="#c0c0c0" />\r
- <margin attr="" />\r
- <indent attr="" />\r
- </glossary>\r
- </paneskin>\r
-</resource>
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<title>About WebHelp </title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-</head>\r
-<style type="text/css">\r
-<!--\r
-P {margin-left:10pt;font-size:8pt;font-family:Verdana,sans-serif;}\r
-//-->\r
-</style>\r
-<script>\r
-<!--\r
-// this block fix: HTML Dialog Ignores Size Parameters Without SCRIPT Block\r
-//-->\r
-</script> \r
-<body bgcolor="white" scroll=no RIGHTMARGIN=0 BOTTOMMARGIN=0 TOPMARGIN=0 LEFTMARGIN=0>\r
-<table border="0" cellpadding="0" cellspacing="0" width="350">\r
- <tr>\r
- <td><img src="wht_spac.gif" width="99" height="1" border="0"></td>\r
- <td><img src="wht_spac.gif" width="251" height="1" border="0"></td>\r
- <td><img src="wht_spac.gif" width="1" height="1" border="0"></td>\r
- </tr>\r
- <tr>\r
- <td rowspan="2"><img src="wht_abgw.jpg" width="99" height="190" border="0"></td>\r
- <td><img src="wht_abtw.jpg" width="211" height="86" border="0"></td>\r
- <td><img src="wht_spac.gif" width="1" height="86" border="0"></td>\r
- </tr>\r
- <tr>\r
- <td valign="top">\r
- <p>Author: eHelp Corporation</p>\r
- <p>Powered by: WebHelp 5.00\r
- <br>Generated by: RoboHelp 2002</p>\r
- <p><a class="tail" href="http://www.ehelp.com/webhelp1" target="_blank">www.ehelp.com</a></p>\r
- </td>\r
- <td><img src="wht_spac.gif" width="1" height="104" border="0"></td>\r
- </tr>\r
-</table>\r
-</body>\r
-</html>
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<title>Blank Page</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-</head>\r
-<body>\r
-</body>\r
-</html>\r
+++ /dev/null
-\r
-<html>\r
-<head>\r
-</head>\r
-<script type="text/javascript" language="javascript" src="whver.js"></script>\r
-<script type="text/javascript" language="javascript" src="whutils.js"></script>\r
-<script type="text/javascript" language="javascript" src="whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" >\r
-<!--\r
-if (!window.gbWhVer||!window.gbWhUtil||!window.gbWhMsg)\r
- document.location.reload();\r
-//-->\r
-</script>\r
-\r
-<script type="text/javascript" language="javascript" src="whproxy.js"></script>\r
-<script type="text/javascript" language="javascript">\r
-<!--\r
-if (!window.gbWhProxy)\r
- document.location.reload();\r
-//-->\r
-</script>\r
-\r
-\r
-<script language="javascript">\r
-<!--\r
-var gsPane="";\r
-var gnType=3;\r
-\r
-var oMsgPane = new whMessage(WH_MSG_GETPANETYPE, this, 1, null);\r
-if (SendMessage(oMsgPane))\r
-{\r
- gsPane = oMsgPane.oParam.sPaneURL;\r
- gnType = oMsgPane.oParam.nType;\r
-}\r
-\r
- var strDefaultTopic = "about:blank";\r
- var oParam = new Object();\r
- oParam.sTopic = "";\r
- var oMsg = new whMessage(WH_MSG_GETDEFAULTTOPIC, this, 1, oParam);\r
- if (SendMessage(oMsg) && oParam.sTopic != "")\r
- strDefaultTopic = oParam.sTopic;\r
-var strHTML = "";\r
-if (gnType == 4)\r
-{\r
- //no navipane at all\r
- strHTML += "<frameset border=\"0\" cols=\"100%,*\">";\r
- strHTML += "<frame src=\"" + strDefaultTopic + "\" name=\"bsscright\" framespacing=\"0\" frameborder=\"0\" border=\"0\" scrolling=\"auto\">";\r
- strHTML += "<frame src=\"whskin_blank.htm\" noresize>";\r
- strHTML += "</frameset>";\r
-}\r
-else\r
- strHTML += "<frameset cols=\"220,*\" hostof=\"parent:minibar_navpane|topic!startpage:no\" frameborder=\"yes\" id=\"whPfset\"><frame src=\"whskin_frmset010.htm\" id=\"minibar_navpane\" frameborder=\"no\" border=\"0\" scrolling=\"auto\" marginheight=\"0\" marginwidth=\"0\"></frame><frame src=\""+strDefaultTopic+"\" id=\"topic\" frameborder=\"yes\" border=\"1\" scrolling=\"auto\" title=\"Topic\" name=\"bsscright\"></frame></frameset>";\r
-document.write(strHTML);\r
-// handle show pane, hide pane and query pane status message.\r
-RegisterListener2(this, WH_MSG_RESIZEPANE);\r
-RegisterListener2(this, WH_MSG_SHOWPANE);\r
-RegisterListener2(this, WH_MSG_HIDEPANE);\r
-RegisterListener2(this, WH_MSG_ISPANEVISIBLE);\r
-\r
-function window_unload()\r
-{\r
- UnRegisterListener2(this, WH_MSG_RESIZEPANE);\r
- UnRegisterListener2(this, WH_MSG_SHOWPANE);\r
- UnRegisterListener2(this, WH_MSG_HIDEPANE);\r
- UnRegisterListener2(this, WH_MSG_ISPANEVISIBLE);\r
-}\r
-\r
-window.onunload=window_unload;\r
-\r
-var gbShow=false;\r
-var gstrFrameLastSetting="";\r
-function onSendMessage(oMsg)\r
-{\r
- var oMsgout = null;\r
- var nMsgId = oMsg.nMessageId;\r
- var oFrameset = null;\r
- if (nMsgId == WH_MSG_SHOWPANE)\r
- {\r
- if (!gbShow)\r
- {\r
- oFrameset = getElement("whPfset");\r
- if (oFrameset)\r
- {\r
- if (gstrFrameLastSetting)\r
- oFrameset.cols= gstrFrameLastSetting;\r
- else\r
- oFrameset.cols= "220,*";\r
- }\r
- gbShow=true;\r
- oMsgout = new whMessage(WH_MSG_PANESTATUE, this, 1, "visible");\r
- SendMessage(oMsgout);\r
- }\r
- return false;\r
- }\r
- else if (nMsgId == WH_MSG_HIDEPANE)\r
- {\r
- oFrameset = getElement("whPfset");\r
- if (oFrameset)\r
- {\r
- gstrFrameLastSetting=oFrameset.cols; \r
- var oWnd=frames[0];\r
- if (oWnd && oWnd.document && oWnd.document.body)\r
- {\r
- var nPos=0;\r
- if ("cols"=="cols")\r
- nPos=oWnd.document.body.offsetWidth;\r
- else\r
- nPos=oWnd.document.body.offsetHeight;\r
- if(0==0)\r
- gstrFrameLastSetting=nPos+",*";\r
- else\r
- gstrFrameLastSetting="*,"+nPos;\r
- }\r
- oFrameset.cols = "0,*";\r
- }\r
- gbShow=false;\r
- oMsgout = new whMessage(WH_MSG_PANESTATUE, this, 1, "invisible");\r
- SendMessage(oMsgout);\r
- return false;\r
- }\r
- else if (nMsgId == WH_MSG_RESIZEPANE)\r
- {\r
- if (!gbShow)\r
- {\r
- gbShow=true;\r
- oMsgout = new whMessage(WH_MSG_PANESTATUE, this, 1, "visible");\r
- SendMessage(oMsgout);\r
- }\r
- return false;\r
- }\r
- else if (nMsgId == WH_MSG_ISPANEVISIBLE)\r
- {\r
- oMsg.oParam.bVisible = isNavPaneVisible();\r
- return false;\r
- }\r
- return true;\r
-}\r
-\r
-function isNavPaneVisible()\r
-{\r
- var bVisible = false;\r
- var sSplit = getElement("whPfset").cols;\r
- var nSplit = sSplit.indexOf(",");\r
- if (nSplit != -1)\r
- {\r
- var sPart1 = sSplit.substring(0, nSplit);\r
- var sPart2 = sSplit.substring(nSplit + 1);\r
- if ("minibar_navpane" == "navpane")\r
- {\r
- var sTemp = sPart1;\r
- sPart1 = sPart2;\r
- sPart2 = sTemp;\r
- }\r
-\r
- if (sPart2 != "*")\r
- {\r
- var n = parseInt(sPart2);\r
- if (n>0)\r
- bVisible = true;\r
- }\r
- else\r
- {\r
- if (sPart1 != "100%")\r
- bVisible = true;\r
- }\r
- }\r
- return bVisible;\r
-}\r
-//-->\r
-</script>\r
-\r
-</html>
\ No newline at end of file
+++ /dev/null
-\r
-<html>\r
-<head>\r
-</head>\r
-<script type="text/javascript" language="javascript" src="whver.js"></script>\r
-<script type="text/javascript" language="javascript" src="whutils.js"></script>\r
-<script type="text/javascript" language="javascript" src="whmsg.js"></script>\r
-<script type="text/javascript" language="javascript" >\r
-<!--\r
-if (!window.gbWhVer||!window.gbWhUtil||!window.gbWhMsg)\r
- document.location.reload();\r
-//-->\r
-</script>\r
-\r
-<script type="text/javascript" language="javascript" src="whproxy.js"></script>\r
-<script type="text/javascript" language="javascript">\r
-<!--\r
-if (!window.gbWhProxy)\r
- document.location.reload();\r
-//-->\r
-</script>\r
-\r
-\r
-<script language="javascript">\r
-<!--\r
-var gsPane="";\r
-var gnType=3;\r
-\r
-var oMsgPane = new whMessage(WH_MSG_GETPANETYPE, this, 1, null);\r
-if (SendMessage(oMsgPane))\r
-{\r
- gsPane = oMsgPane.oParam.sPaneURL;\r
- gnType = oMsgPane.oParam.nType;\r
-}\r
-var strHTML = "";\r
-if (gnType == 4)\r
-{\r
- //no navipane at all\r
- strHTML += "<frameset border=\"0\" cols=\"100%,*\">";\r
- strHTML += "<frame src='whskin_mbars.htm' id='minibar' frameborder='no' border='0' scrolling='no' marginheight='0' title='Mini Toolbar'></frame>";\r
- strHTML += "<frame src=\"whskin_blank.htm\" noresize>";\r
- strHTML += "</frameset>";\r
-}\r
-else\r
- strHTML += "<frameset rows=\"24,*\" hostof=\"parent:minibar|navpane!startpage:no\" frameborder=\"no\" border=\"0\"><frame src=\"whskin_mbars.htm\" id=\"minibar\" frameborder=\"no\" border=\"0\" scrolling=\"no\" marginheight=\"0\" title=\"Mini Toolbar\"></frame><frame src=\""+gsPane+"\" id=\"navpane\" frameborder=\"no\" border=\"0\" scrolling=\"no\" marginheight=\"0\" marginwidth=\"0\" title=\"Navigator Pane\"></frame></frameset>";\r
-\r
-document.write(strHTML);\r
-//-->\r
-</script>\r
-</html>
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<title>WebHelp 5.00 </title>\r
-<meta name="description" content="output from robohelp">\r
-<meta name="keywords" content="robohelp,webhelp,webhelp 2002,webhelp enterprise,webehelp enterprise 2002,roboinfo,roboinfo 2002">\r
-</head>\r
-<body>\r
-<h1> WebHelp 5.00 System Info </h1>\r
-<table>\r
-<tr><td> Start Page </td><td>visu.html</td></tr>\r
-<tr><td> Skin Name </td><td>Default</td></tr>\r
-<tr><td> Generating Time </td><td>09:58 02/18/2004</td></tr>\r
-<tr><td> Language ID </td><td>1033</td></tr>\r
-<tr><td> Compile Script </td><td>webhelp5_compile_script.xml</td></tr>\r
-<tr><td> Compile Build Version </td><td>10.00.949</td></tr>\r
-<tr><td> Product Name </td><td>WebHelp 5.00</td></tr>\r
-<tr><td> Authoring Tool Name </td><td>RoboHelp 2002</td></tr>\r
-<table>\r
-</body>\r
-</html>
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
-</head>\r
-<style>\r
-<!--\r
-body {margin:0;}\r
--->\r
-</style>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whmozemu.js"></script>\r
-<script language="javascript1.2" src="whtbar.js"></script>\r
-<body marginheight="0" marginwidth="0" bgcolor="#99ccff" scroll="no">\r
-<script language="javascript1.2">\r
-<!--\r
-if (window.gbWhTBar)\r
-{\r
- setButtonFont("avprev","Tahoma","8pt","Black","Normal","Normal","none");\r
-setButtonFont("avnext","Tahoma","8pt","Black","Normal","Normal","none");\r
-setButtonFont("synctoc","Tahoma","8pt","Black","Normal","Normal","none");\r
-setButtonFont("hide2","Tahoma","8pt","Black","Normal","Normal","none");\r
-\r
- gsIPrev = "wht_prev.gif";\r
- gsIPrevD = "wht_prev_g.gif";\r
- gsINext = "wht_next.gif";\r
- gsINextD = "wht_next_g.gif";\r
- gsISync = "wht_sync.gif";\r
- gsIHide = "wht_hide.gif";\r
- setBackgroundcolor("#99ccff");\r
- \r
- \r
- addButton("avprev",BTN_TEXT|BTN_IMG,"","","","","",0,0,"","","","","","");\r
-addButton("avnext",BTN_TEXT|BTN_IMG,"","","","","",0,0,"","","","","","");\r
-addButton("synctoc",BTN_TEXT|BTN_IMG,"","","","","",0,0,"","","","","","");\r
-addButton("hide2",BTN_TEXT|BTN_IMG,"","","","","",0,0,"","","","","","");\r
-\r
- addButton("blankblock");\r
- writeStyle(true);\r
- ReSortMinibarButtons();\r
- writeToolBar();\r
-}\r
-else\r
- document.location.reload();\r
-\r
-if (window.gbNav6)\r
-{\r
- var oMsg=new whMessage(WH_MSG_RELOADNS6,this, 1,null);\r
- SendMessage(oMsg);\r
-}\r
-//-->\r
-</script>\r
-</body>\r
-</html>
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<title>Navigation Pane</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<SCRIPT LANGUAGE="JavaScript1.2" ARCHIVE="nsdnsfix.jar" ID="ChangeProfileScriptinNavPane2"> var sd_strAgent = navigator.userAgent.toLowerCase(); var sd_strVersion = navigator.appVersion.toLowerCase(); var sd_nVerMajor = parseInt(sd_strVersion); var sd_nVerMinor = parseFloat(sd_strVersion); var sd_bNS = ((sd_strAgent.indexOf("mozilla") != -1) && ((sd_strAgent.indexOf('spoofer') == -1) && (sd_strAgent.indexOf('compatible') == -1))); var sd_bNS4 = ((sd_bNS) && (sd_nVerMajor >= 4)); if (sd_nVerMinor == 4.60) { netscape.security.PrivilegeManager.enablePrivilege("UniversalPreferencesRead"); var sd_prefValue = navigator.preference("security.lower_java_network_security_by_trusting_proxies"); if (!sd_prefValue) { alert("There are some limitations in Netscape 4.6. Please download and install the latest version of Netscape. Your current Netscape profile needs to be modified. Select 'Remember this decision' and click 'Grant' when prompted to allow the modifications. Click OK to proceed."); netscape.security.PrivilegeManager.enablePrivilege("UniversalPreferencesWrite"); navigator.preference("security.lower_java_network_security_by_trusting_proxies", true); alert("Please restart Netscape"); window.close(); } } </SCRIPT>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-var gsInitPane="toc";\r
-var gsCurrentPane="";\r
-var gbLoading = "unknown";\r
-var gbTryTime = 0;\r
-var gbMaxTryTime = 6;\r
-var gbPassPhase0 = 0;\r
-var gbretried = 0;\r
-var gbmaxretry = 3;\r
-var gbretrytime = new Array();\r
-\r
-var origWidth = 0;\r
-var origHeight = 0;\r
-\r
-gbretrytime[0]= 5000;\r
-gbretrytime[1]= 30000;\r
-gbretrytime[2]= 60000;\r
-\r
-function addPane(sName, sFile)\r
-{\r
-}\r
-\r
-function setShowPane(sName)\r
-{\r
- gsInitPane=sName;\r
-}\r
- addPane("toc","whtdhtml.htm");\r
- addPane("fts","whfdhtml.htm");\r
- addPane("glo","whgdhtml.htm");\r
- setShowPane("toc");\r
-\r
-\r
-function window_unload()\r
-{\r
- if (!gbNav4 || gbNav6) // resize will call unload, but the register code will never be called on Netscape 4.\r
- {\r
- UnRegisterListener2(this, WH_MSG_SHOWTOC);\r
- UnRegisterListener2(this, WH_MSG_SHOWIDX);\r
- UnRegisterListener2(this, WH_MSG_SHOWFTS);\r
- UnRegisterListener2(this, WH_MSG_SHOWGLO);\r
- UnRegisterListener2(this, WH_MSG_SYNCTOC);\r
- UnRegisterListener2(this, WH_MSG_SEARCHTHIS);\r
- UnRegisterListener2(this, WH_MSG_GETPANEINFO);\r
- }\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
- if (gsInitPane == "toc")\r
- {\r
- var oMsg=new whMessage(WH_MSG_SHOWTOC,this,1,null)\r
- SendMessage(oMsg); \r
- }\r
- else if (gsInitPane=="idx")\r
- {\r
- var oMsg=new whMessage(WH_MSG_SHOWIDX,this,1,null)\r
- SendMessage(oMsg); \r
- }\r
- else if (gsInitPane=="fts")\r
- {\r
- var oMsg=new whMessage(WH_MSG_SHOWFTS,this,1,null)\r
- SendMessage(oMsg); \r
- }\r
- else if (gsInitPane=="glo")\r
- {\r
- var oMsg=new whMessage(WH_MSG_SHOWGLO,this,1,null)\r
- SendMessage(oMsg); \r
- }\r
- \r
-}\r
-\r
-function onResize()\r
-{\r
- if (gbIE4)\r
- {\r
- if(document.body)\r
- {\r
- if(document.body.clientWidth > 1 && document.body.clientHeight>1)\r
- {\r
- var oMsg = new whMessage(WH_MSG_RESIZEPANE, this, 1, null);\r
- SendMessage(oMsg);\r
- }\r
- }\r
- }\r
- else \r
- {\r
- if (window.innerWidth != 0 && window.innerHeight != 0)\r
- {\r
- var oMsg = new whMessage(WH_MSG_RESIZEPANE, this, 1, null);\r
- SendMessage(oMsg);\r
- }\r
- }\r
-}\r
-\r
-function CheckLoadingPhase0()\r
-{\r
- if (!gbPassPhase0) {\r
- setTimeout("CheckLoadingPhase0()", 1000);\r
- document.applets[0];\r
- gbPassPhase0 = 1;\r
- }\r
- else {\r
- CheckLoadingPhase1();\r
- }\r
-}\r
-\r
-function CheckLoadingPhase1()\r
-{\r
- if (gbNav4) {\r
- if ("unknown" == gbLoading && document.readystate < 4) {\r
- setTimeout("CheckLoadingPhase1()", 1000);\r
- }\r
- else if ("unknown" == gbLoading) {\r
- CheckLoadingPhase2();\r
- }\r
- }\r
-}\r
-\r
-function CheckLoadingPhase2()\r
-{\r
- if (gbNav4) {\r
- gbTryTime ++;\r
- if ("unknown" == gbLoading) {\r
- if (gbTryTime <= gbMaxTryTime )\r
- setTimeout("CheckLoadingPhase2()", 1000);\r
- else {\r
- if (gnVerMinor != 4.60) {\r
- if (gnVerMinor >= 4.06)\r
- document.location.href = "nsdnsfix.htm"\r
- else {\r
- alert("Unable to load applet. If you are using an old version of Netscape, the prefs.js file needs to be edited.");\r
- }\r
- }\r
- } \r
- }\r
- }\r
-}\r
-\r
-function CheckAppletLoaded()\r
-{\r
- if (typeof(document.WebHelp) == "undefined")\r
- {\r
- document.location.reload();\r
- if (gbretried < gbmaxretry)\r
- {\r
- gbretried ++;\r
- setTimeout("CheckAppletLoaded();", gbretrytime[gbretried]);\r
- }\r
- }\r
-}\r
-\r
-function reDo() \r
-{\r
- if (innerWidth != origWidth || innerHeight != origHeight) \r
- {\r
- //reloaded applet if nessary\r
- gbretried = 0;\r
-\r
- if (gnVerMinor == 4.60) \r
- {\r
- //reload the applet again.\r
- document.location.reload();\r
- gbretried ++;\r
- }\r
- setTimeout("CheckAppletLoaded();", gbretrytime[gbretried]);\r
- }\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
- if (oMsg)\r
- { \r
- var nMsgId = oMsg.nMessageId;\r
- var WebHelpApplet = null;\r
- if (gbNav4)\r
- {\r
- WebHelpApplet = document.applets["WebHelp"];\r
- if (!WebHelpApplet.Command)\r
- document.location="whskin_plist.htm";\r
- }\r
- else\r
- WebHelpApplet = window.WebHelp;\r
-\r
- if (nMsgId == WH_MSG_SHOWTOC)\r
- {\r
- gsCurrentPane="toc";\r
- WebHelpApplet.Command("Contents",null);\r
- var onMsg=new whMessage(WH_MSG_PANEINFO,this,1,"toc");\r
- SendMessage(onMsg);\r
- onMsg=new whMessage(WH_MSG_SHOWPANE,this,1,null);\r
- SendMessage(onMsg);\r
- }\r
- else if(nMsgId==WH_MSG_SHOWIDX)\r
- {\r
- gsCurrentPane="idx";\r
- WebHelpApplet.Command("Index",null);\r
- var onMsg=new whMessage(WH_MSG_PANEINFO,this,1,"idx");\r
- SendMessage(onMsg);\r
- onMsg=new whMessage(WH_MSG_SHOWPANE,this,1,null);\r
- SendMessage(onMsg);\r
- }\r
- else if(nMsgId==WH_MSG_SHOWFTS)\r
- {\r
- gsCurrentPane="fts";\r
- WebHelpApplet.Command("Search",null);\r
- var onMsg=new whMessage(WH_MSG_PANEINFO,this,1,"fts");\r
- SendMessage(onMsg);\r
- onMsg=new whMessage(WH_MSG_SHOWPANE,this,1,null);\r
- SendMessage(onMsg);\r
- }\r
- else if(nMsgId==WH_MSG_SHOWGLO)\r
- {\r
- gsCurrentPane="glo";\r
- WebHelpApplet.Command("Glossary",null);\r
- var onMsg=new whMessage(WH_MSG_PANEINFO,this,1,"glo");\r
- SendMessage(onMsg);\r
- onMsg=new whMessage(WH_MSG_SHOWPANE,this,1,null);\r
- SendMessage(onMsg);\r
- }\r
- else if(nMsgId==WH_MSG_SYNCTOC)\r
- {\r
- gsCurrentPane="toc";\r
- var oTopicParam=oMsg.oParam;\r
- if(oTopicParam&&oTopicParam.aPaths&&oTopicParam.aPaths.length>0&&oTopicParam.sPPath)\r
- {\r
- var sPPath=_browserURLToAppletURL(oTopicParam.sPPath);\r
- var sParam="";\r
- for(var i=0;i<oTopicParam.aPaths.length;i++)\r
- {\r
- sParam+=oTopicParam.aPaths[i]+"\r\r";\r
- }\r
- if(gbLoading!="unknown")\r
- WebHelpApplet.Command("SyncToc",sPPath,sParam);\r
- }\r
- }\r
- else if(nMsgId==WH_MSG_SEARCHTHIS)\r
- {\r
- gsCurrentPane="fts";\r
- WebHelpApplet.Command("Search",oMsg.oParam);\r
- var onMsg=new whMessage(WH_MSG_PANEINFO,this,1,"fts");\r
- SendMessage(onMsg);\r
- onMsg=new whMessage(WH_MSG_SHOWPANE,this,1,null);\r
- SendMessage(onMsg);\r
- }\r
- else if(nMsgId==WH_MSG_GETPANEINFO)\r
- {\r
- oMsg.oParam=gsCurrentPane;\r
- return false;\r
- }\r
- }\r
- return true;\r
-}\r
-\r
-function _browserURLToAppletURL(sBURL)\r
-{\r
- var sAURL="";\r
- var nPos=sBURL.indexOf('%');\r
- while(nPos!=-1)\r
- {\r
- sAURL+=sBURL.substring(0,nPos);\r
- sBURL=sBURL.substring(nPos+1);\r
- var sNum="";\r
- var i=0;\r
- while(sBURL.charAt(i)>='0'&&sBURL.charAt(i)<='9')\r
- {\r
- sNum+=sBURL.charAt(i++); \r
- }\r
- if(sNum!="")\r
- {\r
- var nNum=parseInt(sNum,16);\r
- sAURL+=String.fromCharCode(nNum);\r
- sBURL=sBURL.substring(i);\r
- }\r
- nPos=sBURL.indexOf('%');\r
- }\r
- sAURL+=sBURL;\r
- return sAURL;\r
-}\r
-\r
-function getInitTocInfo()\r
-{\r
- var oParam=new Object();\r
- oParam.oTocInfo=null;\r
- var oMsg=new whMessage(WH_MSG_GETTOCPATHS,this,1,oParam);\r
- if(SendMessage(oMsg))\r
- {\r
- var oTopicParam=oMsg.oParam.oTocInfo;\r
- if(oTopicParam&&oTopicParam.aPaths&&oTopicParam.aPaths.length>0&&oTopicParam.sPPath)\r
- {\r
- var sPPath=_browserURLToAppletURL(oTopicParam.sPPath);\r
- var sParam="";\r
- for(var i=0;i<oTopicParam.aPaths.length;i++)\r
- {\r
- sParam+=oTopicParam.aPaths[i]+"\r\r";\r
- }\r
- var WebHelpApplet;\r
- if(gbNav4)\r
- WebHelpApplet=document.applets["WebHelp"];\r
- else\r
- WebHelpApplet=WebHelp;\r
- WebHelpApplet.Command("SyncToc",sPPath,sParam);\r
- }\r
- }\r
-}\r
-\r
-if(window.gbWhUtil&&window.gbWhMsg&&window.gbWhVer&&window.gbWhProxy)\r
-{\r
- RegisterListener2(this, WH_MSG_SHOWTOC);\r
- RegisterListener2(this, WH_MSG_SHOWIDX);\r
- RegisterListener2(this, WH_MSG_SHOWFTS);\r
- RegisterListener2(this, WH_MSG_SHOWGLO);\r
- RegisterListener2(this, WH_MSG_SYNCTOC);\r
- RegisterListener2(this, WH_MSG_SEARCHTHIS);\r
- RegisterListener2(this, WH_MSG_GETPANEINFO);\r
-\r
- window.onresize=onResize;\r
- window.onunload = window_unload;\r
- window.onload=window_OnLoad;\r
- window.onerror = null;\r
- var gbWindows = ((gAgent.indexOf("win") != -1) || (gAgent.indexOf("16bit") != -1));\r
-\r
- if (gbNav4 && !gbNav6 && gbWindows) {\r
- setTimeout("CheckLoadingPhase0()", 1000);\r
- }\r
- if (gbNav4)\r
- {\r
- origWidth = innerWidth;\r
- origHeight = innerHeight;\r
- onresize = reDo;\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-</head>\r
-<body topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0" bgcolor="c0c0c0">\r
-<applet code=WebHelp.class name=WebHelp archive=webhelp.jar width=100% height=100% MAYSCRIPT hspace=0 vspace=0>\r
-<PARAM name=ProjectFile value=whproj.xml><PARAM name=ResourceFile value=whres.xml>\r
-<PARAM name=HideTabs value=true>\r
-<PARAM name=Frame value=bsscright>\r
-<PARAM name=cabbase value=webhelp.cab>\r
-</applet>\r
-</body>\r
-</html>\r
+++ /dev/null
-<html>\r
-<head>\r
-<title> Navigation Pane </title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-</head>\r
-<body border=0 topmargin=0 bottommargin=0 rightmargin=0 leftmargin=0 scroll=no>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmozemu.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whphost.js"></script>\r
-<script language="javascript1.2">\r
-<!--\r
-if (window.gbWhPHost)\r
-{\r
- var gsNavReDirect="whskin_plist.htm";\r
- var gbReDirectThis=true;\r
- var oMsg = new whMessage(WH_MSG_GETPANES, this, 1, null);\r
- if (SendMessage(oMsg))\r
- {\r
- if (oMsg.oParam)\r
- {\r
- for (var i=0;i<oMsg.oParam.aPanes.length;i++)\r
- {\r
- addPane(oMsg.oParam.aPanes[i].sPaneName, oMsg.oParam.aPanes[i].sPaneURL);\r
- }\r
- setShowPane(oMsg.oParam.sDefault);\r
- setServerEnabled();\r
- }\r
- else\r
- writeWebHelpPane();\r
- }\r
- else\r
- writeWebHelpPane();\r
-}\r
-else\r
- document.location.reload();\r
-\r
-function writeWebHelpPane()\r
-{\r
- var bPreferXML = false;\r
- var strProjectFileXML = "whproj.xml";\r
- var strProjectFileHTM = "whproj.htm"; \r
- addProject(bPreferXML, strProjectFileXML, strProjectFileHTM);\r
- addPane("toc","whtdhtml.htm");\r
- addPane("fts","whfdhtml.htm");\r
- addPane("glo","whgdhtml.htm");\r
- setShowPane("toc");\r
-\r
-}\r
-//-->\r
-</script>\r
-</body>\r
-</html>
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<title> Navigation Pane </title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-</head>\r
-<script language="javascript">\r
-<!--\r
-var strFrmToc = "";\r
-var strFrmNdx = "";\r
-var strFrmFts = "";\r
-var strFrmGls = "";\r
-var strFrmDft = "";\r
-var gstrName = "";\r
-\r
-//set overwrite here\r
-function setListFrames(strToc,strNdx,strFts,strGls,strDefault)\r
-{\r
- strFrmToc = strToc;\r
- strFrmNdx = strNdx;\r
- strFrmFts = strFts;\r
- strFrmGls = strGls;\r
- strFrmDft = strDefault;\r
- if (strFrmDft == strFrmToc)\r
- {\r
- gstrName = "toc";\r
- }\r
- else if (strFrmDft == strFrmNdx) \r
- {\r
- gstrName = "idx";\r
-\r
- }\r
- else if (strFrmDft == strFrmFts) \r
- {\r
- gstrName = "fts";\r
- }\r
- else if (strFrmDft == strFrmGls) \r
- {\r
- gstrName = "glo";\r
- }\r
-}\r
-\r
-function setWebHelpPane()\r
-{\r
- setListFrames("whgdata/whnvf30.htm","whgdata/whnvf31.htm","whgdata/whnvf32.htm","whgdata/whnvf33.htm","whgdata/whnvf30.htm");\r
-}\r
-\r
-function window_unload()\r
-{\r
- if (!gbNav4 || gbNav6) // resize will call unload, but the register code will never be called on Netscape 4.\r
- {\r
- UnRegisterListener2(this,WH_MSG_SHOWTOC);\r
- UnRegisterListener2(this,WH_MSG_SHOWIDX);\r
- UnRegisterListener2(this,WH_MSG_SHOWFTS);\r
- UnRegisterListener2(this,WH_MSG_SHOWGLO);\r
- UnRegisterListener2(this, WH_MSG_GETPANEINFO);\r
- }\r
-}\r
-\r
-function window_onload()\r
-{\r
- if (gstrName)\r
- {\r
- var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, gstrName);\r
- SendMessage(onMsg);\r
- }\r
-}\r
-\r
-function switchNvp(strName)\r
-{\r
- var strFile = "";\r
- if (strName == "toc") strFile = strFrmToc;\r
- else if (strName == "idx") strFile = strFrmNdx;\r
- else if (strName == "fts") strFile = strFrmFts;\r
- else if (strName == "glo") strFile = strFrmGls;\r
-\r
- gstrName = strName;\r
- frames[0].location = strFile; \r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
- if(oMsg)\r
- {\r
- var nMsgId=oMsg.nMessageId;\r
- if (nMsgId==WH_MSG_SHOWTOC)\r
- {\r
- switchNvp("toc");\r
- var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "toc");\r
- SendMessage(onMsg);\r
- onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
- SendMessage(onMsg);\r
- }\r
- else if(nMsgId==WH_MSG_SHOWIDX)\r
- {\r
- switchNvp("idx");\r
- var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "idx");\r
- SendMessage(onMsg);\r
- onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
- SendMessage(onMsg);\r
- }\r
- else if(nMsgId==WH_MSG_SHOWFTS)\r
- {\r
- switchNvp("fts");\r
- var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "fts");\r
- SendMessage(onMsg);\r
- onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
- SendMessage(onMsg);\r
- }\r
- else if(nMsgId==WH_MSG_SHOWGLO)\r
- {\r
- switchNvp("glo");\r
- var onMsg=new whMessage(WH_MSG_PANEINFO, this, 1, "glo");\r
- SendMessage(onMsg);\r
- onMsg = new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
- SendMessage(onMsg);\r
- }\r
- else if (nMsgId==WH_MSG_GETPANEINFO)\r
- {\r
- oMsg.oParam = gstrName;\r
- return false;\r
- }\r
- }\r
- return true;\r
-}\r
-\r
-function onResize()\r
-{\r
- if (gbIE4)\r
- {\r
- if(document.body)\r
- {\r
- if(document.body.clientWidth > 1 && document.body.clientHeight>1)\r
- {\r
- var oMsg = new whMessage(WH_MSG_RESIZEPANE, this, 1, null);\r
- SendMessage(oMsg);\r
- }\r
- }\r
- }\r
- else \r
- {\r
- if (window.innerWidth != 0 && window.innerHeight != 0)\r
- {\r
- var oMsg = new whMessage(WH_MSG_RESIZEPANE, this, 1, null);\r
- SendMessage(oMsg);\r
- }\r
- }\r
-}\r
-\r
-if (window.gbWhMsg&&window.gbWhVer&&window.gbWhProxy)\r
-{\r
- var oMsg = new whMessage(WH_MSG_GETPANES, this, 1, null);\r
- if (SendMessage(oMsg))\r
- {\r
- if (oMsg.oParam)\r
- {\r
- for (var i=0;i<oMsg.oParam.aPanes.length;i++)\r
- {\r
- if (oMsg.oParam.aPanes[i].sPaneName == "toc")\r
- strFrmToc = oMsg.oParam.aPanes[i].sPaneURL;\r
- else if (oMsg.oParam.aPanes[i].sPaneName == "idx")\r
- strFrmNdx = oMsg.oParam.aPanes[i].sPaneURL;\r
- else if (oMsg.oParam.aPanes[i].sPaneName == "fts")\r
- strFrmFts = oMsg.oParam.aPanes[i].sPaneURL;\r
- else if (oMsg.oParam.aPanes[i].sPaneName == "glo")\r
- strFrmGls = oMsg.oParam.aPanes[i].sPaneURL;\r
- if (oMsg.oParam.sDefault == oMsg.oParam.aPanes[i].sPaneName)\r
- {\r
- strFrmDft = oMsg.oParam.aPanes[i].sPaneURL;\r
- }\r
- }\r
- }\r
- else\r
- setWebHelpPane();\r
- }\r
- else\r
- setWebHelpPane();\r
-\r
- RegisterListener2(this,WH_MSG_SHOWTOC);\r
- RegisterListener2(this,WH_MSG_SHOWIDX);\r
- RegisterListener2(this,WH_MSG_SHOWFTS);\r
- RegisterListener2(this,WH_MSG_SHOWGLO);\r
- RegisterListener2(this, WH_MSG_GETPANEINFO);\r
-\r
- window.onresize=onResize;\r
- window.onunload=window_unload;\r
- window.onload=window_onload;\r
-\r
- var strHtml = "";\r
- strHtml += "<frameset rows=\'100%,*\'>";\r
- strHtml += "<frame name=\'nvplist\' title=\'navpane frame\' src=\'" + strFrmDft +"\'></frame>";\r
- strHtml += "<frame src=\'whskin_blank.htm\' noresize></frame>";\r
- strHtml += "</frameset>";\r
- document.write(strHtml);\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-</html>
\ No newline at end of file
+++ /dev/null
-<html>\r
-<head>\r
-<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1">\r
-</head>\r
-<style>\r
-<!--\r
-body {margin:0;}\r
--->\r
-</style>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whmozemu.js"></script>\r
-<script language="javascript1.2" src="whtbar.js"></script>\r
-\r
-\r
-<body marginheight="0" marginwidth="0" bgcolor="#99ccff" scroll="no">\r
-<script language="javascript1.2">\r
-<!--\r
-if (window.gbWhTBar)\r
-{\r
- setButtonFont("toc","Tahoma","8pt","Black","Normal","Normal","none");\r
-setButtonFont("toc","Tahoma","8pt","White","Normal","Normal","none", true);\r
-setButtonFont("idx","Tahoma","8pt","Black","Normal","Normal","none");\r
-setButtonFont("idx","Tahoma","8pt","White","Normal","Normal","none", true);\r
-setButtonFont("fts","Tahoma","8pt","Black","Normal","Normal","none");\r
-setButtonFont("fts","Tahoma","8pt","White","Normal","Normal","none", true);\r
-setButtonFont("glo","Tahoma","8pt","Black","Normal","Normal","none");\r
-setButtonFont("glo","Tahoma","8pt","White","Normal","Normal","none", true);\r
-setButtonFont("websearch","Tahoma","8pt","Black","Normal","Normal","none");\r
-setButtonFont("websearch","Tahoma","8pt","White","Normal","Normal","none", true);\r
-setButtonFont("searchform","Tahoma","8pt","Black","Normal","Normal","none");\r
-setButtonFont("searchform","","","","","","", true);\r
-setButtonFont("banner","","","","","","");\r
-setButtonFont("banner","","","","","","", true);\r
-\r
- gsIToc = "wht_toc_n.gif";\r
- gsITocS = "wht_toc_h.gif";\r
- gsIIndex = "wht_idx_n.gif";\r
- gsIIndexS = "wht_idx_h.gif";\r
- gsISearch = "wht_fts_n.gif";\r
- gsISearchS = "wht_fts_h.gif";\r
- gsIGlossary = "wht_glo_n.gif";\r
- gsIGlossaryS = "wht_glo_h.gif";\r
- gsIWebSearch = "wht_ws.gif";\r
- gsIWebSearchD = "wht_ws_g.gif";\r
- gsIBanner = "wht_logo1.gif";\r
- gsIGo = "wht_go.gif";\r
- setBackgroundcolor("#99ccff");\r
- \r
- setAlignment("left");\r
- \r
- \r
- if (!gsBgImage)\r
- {\r
- setButtonBgColor("toc", gsBgColor);\r
- setButtonBgColor("idx", gsBgColor);\r
- setButtonBgColor("fts", gsBgColor);\r
- setButtonBgColor("glo", gsBgColor);\r
- setButtonBgColor("toc", gsTBSelectedBgColor, true);\r
- setButtonBgColor("idx", gsTBSelectedBgColor, true);\r
- setButtonBgColor("fts", gsTBSelectedBgColor, true);\r
- setButtonBgColor("glo", gsTBSelectedBgColor, true);\r
- setButtonBgColor("toc","#99ccff");\r
-setButtonBgColor("idx","#99ccff");\r
-setButtonBgColor("fts","#99ccff");\r
-setButtonBgColor("glo","#99ccff");\r
-setButtonBgColor("websearch","#99ccff");\r
-setButtonBgColor("searchform","");\r
-setButtonBgColor("banner","");\r
-\r
- }\r
- setButtonBgColor("toc","#639ace", true);\r
-setButtonBgColor("idx","#639ace", true);\r
-setButtonBgColor("fts","#639ace", true);\r
-setButtonBgColor("glo","#639ace", true);\r
-setButtonBgColor("websearch","#639ace", true);\r
-setButtonBgColor("searchform","", true);\r
-setButtonBgColor("banner","", true);\r
-\r
- addButton("toc",BTN_TEXT|BTN_IMG,"Contents","","","","",0,0,"","","","","","");\r
-addButton("fts",BTN_TEXT|BTN_IMG,"Search","","","","",0,0,"","","","","","");\r
-addButton("glo",BTN_TEXT|BTN_IMG,"Glossary","","","","",0,0,"","","","","","");\r
-addButton("searchform",BTN_TEXT,"","","","","",0,0,"","","","","","");\r
-addButton("banner",BTN_IMG,"eHelp Corporation","","","","",0,0,"","","","","","");\r
-\r
- addButton("blankblock");\r
- writeStyle(false);\r
- ReSortToolbarButtons();\r
- writeToolBar();\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-</body>\r
-</html>
\ No newline at end of file
+++ /dev/null
-<?xml version='1.0' encoding='ISO-8859-1' ?>\r
-<topictemplate>\r
- <topic type="normal">\r
- <add tag="head" pos="endbefore" >\r
- <![CDATA["<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_MESSAGE_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript\" src=\"";SF_VERSION_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_PROXY_JS ;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_UTILS_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_TOPIC_JS;"\"></script>\r
-";]]>\r
- </add>\r
- <add tag="body" pos="beginafter">\r
- <![CDATA["<script type=\"text/javascript\" language=\"javascript1.2\">\r
-<!--\r
-if (window.gbWhTopic)\r
-{\r
- if (window.addTocInfo)\r
- {\r
- ";\r
- OutputInTopicNavBarDataToc("addTocInfo(\"%s\");\r\n");\r
- OutputInTopicNavBarDataBrowse("addAvenueInfo(\"%s\",\"%s\",\"%s\");\r\n");\r
- OutputInTopicNavBarDataButtons("addButton(%s);\r\n");\r
- "\r
- }\r
- if (window.writeBtnStyle)\r
- writeBtnStyle();\r
-\r
- if (window.writeIntopicBar)\r
- writeIntopicBar(";WH_WEBSKIN.topic.bar.top.pos;");\r
-\r
- if (window.setRelStartPage)\r
- {\r
- ";\r
- OutputInTopicNavBarDataHomePage("setRelStartPage(\"%s\");\r\n");\r
- OutputInTopicNavBarDataWebSearch.href("addSearchFormHref(\"%s\");\r\n");\r
- "\r
- autoSync(";WH_USER_OPTIONS.autosync_toc;");\r
- sendSyncInfo();\r
- sendAveInfoOut();\r
- }\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>"]]> \r
- </add>\r
- <add tag="body" pos="endbefore">\r
- <![CDATA["<script type=\"text/javascript\" language=\"javascript1.2\">\r
-<!--\r
-if (window.writeIntopicBar)\r
- writeIntopicBar(";WH_WEBSKIN.topic.bar.bottom.pos;");\r
-//-->\r
-</script>";\r
-OutputInTopicNavBarDataWebSearch.form();]]> \r
- </add>\r
- </topic>\r
- <topic type="frameset">\r
- <add tag="head" pos="endbefore" >\r
- <![CDATA["<script type=\"text/javascript1.2\" language=\"javascript\" src=\"";SF_MESSAGE_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript\" src=\"";SF_VERSION_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_PROXY_JS ;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_UTILS_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript1.2\" src=\"";SF_FRAMESET_JS;"\"></script>\r
-<script type=\"text/javascript\" language=\"javascript1.2\">\r
-<!--\r
-if (window.setRelStartPage)\r
-{\r
-";\r
- OutputInTopicNavBarDataHomePage("setRelStartPage(\"%s\");\r\n");\r
- OutputInTopicNavBarDataToc("addTocInfo(\"%s\");\r\n");\r
- OutputInTopicNavBarDataBrowse("addAvenueInfo(\"%s\",\"%s\",\"%s\");\r\n");\r
-"\r
-}\r
-if (window.autoSync)\r
- autoSync(";WH_USER_OPTIONS.autosync_toc;");\r
-//-->\r
-</script>\r
-";]]>\r
- </add>\r
- </topic>\r
-</topictemplate>\r
+++ /dev/null
-RegisterListener2(this, WH_MSG_GETSTARTFRAME);\r
-RegisterListener2(this, WH_MSG_GETDEFAULTTOPIC);\r
-RegisterListener2(this, WH_MSG_MINIBARORDER);\r
-RegisterListener2(this, WH_MSG_TOOLBARORDER);\r
-RegisterListener2(this, WH_MSG_ISSEARCHSUPPORT);\r
-RegisterListener2(this, WH_MSG_ISSYNCSSUPPORT);\r
-RegisterListener2(this, WH_MSG_ISAVENUESUPPORT);\r
-RegisterListener2(this, WH_MSG_GETPANETYPE);\r
-RegisterListener2(this, WH_MSG_GETPANES);\r
-RegisterListener2(this, WH_MSG_RELOADNS6);\r
-\r
-if (gbNav6)\r
-{\r
- var gnReload=0;\r
- setTimeout("delayReload();",5000);\r
-}\r
-\r
-function delayReload()\r
-{\r
- if(!gnReload)\r
- {\r
- if(nViewFrameType&&nViewFrameType==1)\r
- document.location=document.location;\r
- }\r
-}\r
-\r
-var gsToolbarOrder = "toc|fts|glo|blankblock|banner";\r
-var gsMinibarOrder = "blankblock|hide2|";\r
-\r
-var gsTopic = "files/introduction_to_visu.htm";\r
-\r
-if (location.hash.length > 1)\r
- gsTopic = location.hash.substring(1);\r
-\r
-function setToolbarOrder(sOrder)\r
-{\r
- gsToolbarOrder = sOrder;\r
-}\r
-\r
-function setMinibarOrder(sOrder)\r
-{\r
- gsMinibarOrder = sOrder;\r
-}\r
-\r
-function onSendMessageX(oMsg)\r
-{\r
- var nMsgId = oMsg.nMessageId;\r
- if (nMsgId == WH_MSG_GETSTARTFRAME)\r
- {\r
- oMsg.oParam.oFrame = this;\r
- return false;\r
- }\r
- else if (nMsgId == WH_MSG_GETDEFAULTTOPIC)\r
- {\r
- if (this.cMRServer && cMRServer.m_strVersion)\r
- {\r
- if (cMRServer.m_strURLTopic);\r
- {\r
- oMsg.oParam.sTopic = cMRServer.m_strURLTopic;\r
- return false;\r
- }\r
-\r
- }\r
- oMsg.oParam.sTopic = gsTopic;\r
- return false;\r
- }\r
- else if (nMsgId == WH_MSG_TOOLBARORDER)\r
- {\r
- var oMsg1 = new whMessage(WH_MSG_GETPANES, this, 1, null);\r
- if (SendMessage(oMsg1))\r
- {\r
- if (oMsg1.oParam)\r
- {\r
- if (this.cMRServer && cMRServer.m_strVersion)\r
- {\r
- var aToolbarOrder=cMRServer.m_strAgentList.split(";");\r
- var i=0;\r
- for (i=0;i<aToolbarOrder.length;i++)\r
- aToolbarOrder[i]=transferANToPN2(aToolbarOrder[i]);\r
- aToolbarOrder[aToolbarOrder.length] = "blankblock";\r
- if (cMRServer.m_bShowSearchInput)\r
- {\r
- aToolbarOrder[aToolbarOrder.length] = "searchform";\r
- }\r
- aToolbarOrder[aToolbarOrder.length] = "banner";\r
- var aToolbarOrderNew = new Array();\r
- for (i=0;i<aToolbarOrder.length;i++)\r
- {\r
- if (isAPane(aToolbarOrder[i]))\r
- {\r
- if (oMsg1.oParam.aPanes && oMsg1.oParam.aPanes.length)\r
- {\r
- for (var j=0;j<oMsg1.oParam.aPanes.length;j++)\r
- {\r
- if (aToolbarOrder[i] == oMsg1.oParam.aPanes[j].sPaneName)\r
- {\r
- aToolbarOrderNew[aToolbarOrderNew.length] = aToolbarOrder[i];\r
- break;\r
- }\r
- }\r
- }\r
- }\r
- else\r
- aToolbarOrderNew[aToolbarOrderNew.length] = aToolbarOrder[i];\r
- }\r
- oMsg.oParam = aToolbarOrderNew.join("|");\r
- return false;\r
- }\r
- }\r
- }\r
- oMsg.oParam = gsToolbarOrder;\r
- return false;\r
- }\r
- else if (nMsgId == WH_MSG_MINIBARORDER)\r
- {\r
- oMsg.oParam = gsMinibarOrder;\r
- return false;\r
- }\r
- else if (nMsgId == WH_MSG_ISSYNCSSUPPORT)\r
- {\r
- if (this.cMRServer && cMRServer.m_strVersion)\r
- {\r
- if (cMRServer.m_bShowSync)\r
- oMsg.oParam=true;\r
- else\r
- oMsg.oParam=false;\r
- return false;\r
- }\r
- else\r
- {\r
- if(nViewFrameType)\r
- {\r
- oMsg.oParam= (nViewFrameType < 3);\r
- return false;\r
- }\r
- }\r
- }\r
- else if (nMsgId == WH_MSG_ISAVENUESUPPORT)\r
- {\r
- if (this.cMRServer && cMRServer.m_strVersion)\r
- {\r
- if (cMRServer.m_bShowBrowseSequences)\r
- oMsg.oParam=true;\r
- else\r
- oMsg.oParam=false;\r
- }\r
- else\r
- {\r
- oMsg.oParam=true;\r
- }\r
- return false;\r
- }\r
- else if (nMsgId == WH_MSG_ISSEARCHSUPPORT)\r
- {\r
- if(nViewFrameType)\r
- {\r
- oMsg.oParam= (nViewFrameType < 3);\r
- return false;\r
- }\r
- }\r
- else if (nMsgId == WH_MSG_GETPANETYPE)\r
- {\r
- if(nViewFrameType)\r
- {\r
- var oPaneInfo = new Object();\r
- oPaneInfo.nType = nViewFrameType;\r
- oPaneInfo.sPaneURL = strPane;\r
- oMsg.oParam = oPaneInfo;\r
- return false;\r
- }\r
- }\r
- else if (nMsgId == WH_MSG_GETPANES)\r
- {\r
- if (this.cMRServer && cMRServer.m_strVersion)\r
- {\r
- var oPanes = new Object();\r
- var aAgentNames = null;\r
- if (cMRServer.m_strDefAgent)\r
- oPanes.sDefault = transferAgentNameToPaneName(cMRServer.m_strDefAgent);\r
-\r
- aPanes = new Array();\r
- for(var i=0; i< cMRServer.m_cAgents.length; i++)\r
- {\r
- var nCur = aPanes.length;\r
- aPanes[nCur] = new Object();\r
- aPanes[nCur].sPaneName = transferAgentNameToPaneName(cMRServer.m_cAgents[i].m_strID);\r
- aPanes[nCur].sPaneURL = cMRServer.m_cAgents[i].m_strURL;\r
- }\r
- oPanes.aPanes = aPanes;\r
- oMsg.oParam = oPanes;\r
- return false;\r
- }\r
- else\r
- {\r
- oMsg.oParam = null;\r
- return false;\r
- }\r
- }\r
- else if(nMsgId==WH_MSG_RELOADNS6)\r
- {\r
- if(gbNav6)\r
- gnReload=1;\r
- return false;\r
- }\r
- return true;\r
-}\r
-\r
-function transferANToPN2(sAN)\r
-{\r
- if (sAN =="toc")\r
- return "toc";\r
- else if (sAN =="ndx")\r
- return "idx";\r
- else if (sAN =="nls")\r
- return "fts";\r
- else if (sAN =="Glossary")\r
- return "glo";\r
- else if (sAN =="WebSearch")\r
- return "websearch";\r
- else if (sAN.indexOf("custom_")==0);\r
- return "custom" + sAN.substring(7);\r
- return sAN;\r
-}\r
-\r
-function transferAgentNameToPaneName(sAgentName)\r
-{\r
- if (sAgentName =="toc")\r
- return "toc";\r
- else if (sAgentName =="ndx")\r
- return "idx";\r
- else if (sAgentName =="nls")\r
- return "fts";\r
- else if (sAgentName =="gls")\r
- return "glo";\r
- return "";\r
-}\r
-\r
-function isAPane(sPaneName)\r
-{\r
- if (sPaneName == "toc" || sPaneName == "idx" || sPaneName == "fts" || sPaneName == "glo")\r
- return true;\r
- else\r
- return false;\r
-}
\ No newline at end of file
+++ /dev/null
-window.whname="wh_stub";\r
-function getframehandle(frames,framename)\r
-{\r
- var frame=null;\r
- if(null==frames) return null;\r
- for(var i=0;i<frames.length;i++)\r
- {\r
- if(typeof(frames[i].name)!="unknown")\r
- {\r
- if(frames[i].name==framename)\r
- return frames[i];\r
- if(frames[i].frames.length>0)\r
- frame=getframehandle(frames[i].frames,framename);\r
- if(null!=frame)\r
- return frame;\r
- }\r
- }\r
- return frame;\r
-}\r
-\r
-function AddToArray(arr,obj)\r
-{\r
- var bFound=false;\r
- for(var i=0;i<arr.length;i++){\r
- if(arr[i]==obj){\r
- bFound=true;\r
- break;\r
- }\r
- else if(arr[i]==null){\r
- break;\r
- }\r
- }\r
- if(!bFound) arr[i]=obj;\r
-}\r
-\r
-var gArrayRegistedMessage=new Array();\r
-var gArrayCompoentsArray=new Array();\r
-\r
-function GetComponentsArray(nMessageId)\r
-{\r
- var len=gArrayRegistedMessage.length;\r
- for(var i=0;i<len;i++)\r
- {\r
- if(gArrayRegistedMessage[i]==nMessageId){\r
- if(gArrayCompoentsArray.length>i)\r
- return gArrayCompoentsArray[i];\r
- else\r
- return null;\r
- }\r
- }\r
- return null;\r
-}\r
-\r
-function CreateComponentsArray(nMessageId)\r
-{\r
- var len=gArrayRegistedMessage.length;\r
- gArrayRegistedMessage[len]=nMessageId;\r
- gArrayCompoentsArray[len]=new Array();\r
- return gArrayCompoentsArray[len];\r
-}\r
-\r
-function listener(sName,oWindow)\r
-{\r
- this.sName=sName;\r
- this.oWindow=oWindow;\r
-}\r
-\r
-function RegisterListener(windowName,nMessageId)\r
-{\r
- var arrayComponents=GetComponentsArray(nMessageId);\r
- if(arrayComponents==null)\r
- arrayComponents=CreateComponentsArray(nMessageId);\r
- \r
- if(arrayComponents!=null)\r
- {\r
- for (var i=0;i<arrayComponents.length;i++)\r
- {\r
- if (arrayComponents[i].sName == windowName)\r
- return false;\r
- }\r
- var oListener=new listener(windowName,null);\r
- AddToArray(arrayComponents,oListener);\r
- return true;\r
- }\r
- else\r
- return false;\r
-}\r
-\r
-function RegisterListener2(oWindow,nMessageId)\r
-{\r
- var arrayComponents=GetComponentsArray(nMessageId);\r
- if(arrayComponents==null)\r
- arrayComponents=CreateComponentsArray(nMessageId);\r
- \r
- if(arrayComponents!=null)\r
- {\r
- var oListener=new listener("",oWindow);\r
- AddToArray(arrayComponents,oListener);\r
- return true;\r
- }\r
- else\r
- return false;\r
-}\r
-\r
-function UnRegisterListener2(oWindow,nMessageId)\r
-{\r
- var arrayComponents=GetComponentsArray(nMessageId);\r
- if(arrayComponents!=null)\r
- {\r
- for(var i=0;i<arrayComponents.length;i++)\r
- {\r
- if(arrayComponents[i].oWindow==oWindow)\r
- {\r
- removeItemFromArray(arrayComponents,i);\r
- return true;\r
- }\r
- }\r
- }\r
- else\r
- return false;\r
-}\r
-\r
-function SendMessage(oMessage)\r
-{\r
- var bDelivered=false;\r
- var arrayComponents=GetComponentsArray(oMessage.nMessageId);\r
- if(arrayComponents!=null&&arrayComponents.length>0){\r
- for(var i=0;i<arrayComponents.length;i++)\r
- {\r
- if(null!=arrayComponents[i])\r
- {\r
- var pFrame;\r
- if(arrayComponents[i].oWindow==null)\r
- pFrame=getframehandle(frames,arrayComponents[i].sName);\r
- else\r
- pFrame=arrayComponents[i].oWindow;\r
- if(null!=pFrame)\r
- {\r
- if(pFrame.onSendMessageX)\r
- {\r
- bDelivered=true;\r
- if(!pFrame.onSendMessageX(oMessage))\r
- break;\r
- }\r
- if(pFrame.onSendMessage)\r
- {\r
- bDelivered=true;\r
- if(!pFrame.onSendMessage(oMessage))\r
- break;\r
- }\r
- }\r
- }\r
- }\r
- }\r
- return bDelivered;\r
-}
\ No newline at end of file
+++ /dev/null
-var gaButtons=new Array();\r
-var gaTypes=new Array();\r
-var gaBtnBgColor=new Array();\r
-var gaSelBtnBgColor=new Array();\r
-var gaOrders=null;\r
-var gaObjBtns=new Array();\r
-var BTN_TEXT=1;\r
-var BTN_IMG=2;\r
-var BTN_IMG_TOP=4\r
-var BTN_IMG_BOTTOM=8;\r
-var BTN_IMG_LEFT=16;\r
-var BTN_IMG_RIGHT=32;\r
-var gsAlign="left";\r
-var gsBgImage="";\r
-var gsBgColor="#99ccff";\r
-var gsShadow="#cccccc";\r
-var gsTBBgImage="";\r
-var gnShowHideStyle=0;\r
-var goTocInfo=null;\r
-var gbTocInfoInited=false;\r
-var goWebSearch=null;\r
-var gsTBFontFamily="Arial";\r
-var gsTBFontSize="xx-small";\r
-var gsTBFontColor="#003063";\r
-var gsTBDarkColor="#808080";\r
-var gsTBLightColor="#FFFAFA";\r
-var gsTBSelectedBgColor="#639ace";\r
-var gsTBFontSelectedColor="#ffffff";\r
-var gaOnLoads=new Array();\r
-var goWebSearchEnable=true;\r
-\r
-var goShow=null;\r
-var goHide=null;\r
-var goHide2=null;\r
-var goSync=null;\r
-\r
-var goToc=null;\r
-var goIdx=null;\r
-var goFts=null;\r
-var goGlo=null;\r
-var goNext=null;\r
-var goPrev=null;\r
-\r
-var LAYOUT=1;\r
-var HLAYOUT=0;\r
-var VLAYOUT=1;\r
-var ALIGN=2;\r
-var BALIGN=0;\r
-var EALIGN=2;\r
-var goEl=null;\r
-var gnRE=0;\r
-\r
-var gnButtonLayout=0;\r
-var gnShowHide=-1;\r
-\r
-var gbEqualSize=false;\r
-var goCusButton=new Array();\r
-var gsBtnStyle="";\r
-var gaAvenues=null;\r
-var gsCurAveName="";\r
-\r
-var gsIToc=null;\r
-var gsITocS=null;\r
-var gsIIndex=null;\r
-var gsIIndexS=null;\r
-var gsISearch=null;\r
-var gsISearchS=null;\r
-var gsIGlossary=null;\r
-var gsIGlossaryS=null;\r
-var gsIBanner=null;\r
-var gsIGo=null;\r
-\r
-var gsIHide=null;\r
-var gsIPrev=null;\r
-var gsINext=null;\r
-var gsISync=null;\r
-var gsINextD=null;\r
-var gsIPrevD=null;\r
-var gsIWebSearch=null;\r
-var gsIWebSearchD=null;\r
-\r
-var gbAveButttnInited=false;\r
-var goNextParent=null;\r
-var goPrevParent=null;\r
-var gsSearchPrompt="- Search -";\r
-\r
-var gstrSearch="";\r
-var gbPreview=false;\r
-gbPreview=false; \r
-var gsSearchFormTitle="";\r
-var gnHasNavPane=-1;\r
-var gbInitBtn=false;\r
-var gaBtns=new Array();\r
-var gbWhTBar=false;\r
-var goTextFont=null;\r
-var goSelTextFont=null;\r
-var gsPane="";\r
-var gbNeedUpdateAve=false;\r
-var gbUpdateTimerCount=0;\r
-\r
-function setGoImage(sGoImage)\r
-{\r
- if(sGoImage)\r
- {\r
- gsIGo=sGoImage;\r
- }\r
-}\r
-\r
-function btnBgColor(sType,sColor)\r
-{\r
- this.sType=sType;\r
- this.sColor=sColor;\r
-}\r
-\r
-function setBackground(sBgImage)\r
-{\r
- gsBgImage=sBgImage;\r
-}\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
- gsBgColor=sBgColor;\r
-}\r
-\r
-function setAlignment(strAlignment)\r
-{\r
- gnButtonLayout=0;\r
- if(strAlignment=="left")\r
- {\r
- gnButtonLayout=HLAYOUT|BALIGN;\r
- }\r
- else if(strAlignment=="right")\r
- {\r
- gnButtonLayout=HLAYOUT|EALIGN;\r
- }\r
- else if(strAlignment=="top")\r
- {\r
- gnButtonLayout=VLAYOUT|BALIGN;\r
- }\r
- else if(strAlignment=="bottom")\r
- {\r
- gnButtonLayout=VLAYOUT|EALIGN;\r
- }\r
-}\r
-\r
-function writeStyle(bMiniBar)\r
-{\r
- var sStyle="";\r
- sStyle+="<style type='text/css'>\n";\r
- sStyle+="<!--\n";\r
- sStyle+=".clsBtnNormal {\n";\r
- if(!(gbNav4&&!gbNav6))\r
- if (bMiniBar)\r
- sStyle+="padding:2px;\n";\r
- else\r
- sStyle+="padding:5px;\n";\r
- sStyle+="cursor:hand;\n";\r
- sStyle+="font-family:"+gsTBFontFamily+";\n";\r
- sStyle+="font-size:"+gsTBFontSize+";\n";\r
- sStyle+="color:"+gsTBFontColor+";}\n";\r
-\r
- sStyle+=".clsNoBNormal {\n";\r
- sStyle+="padding-left:2px;padding-right:2px;\n";\r
- sStyle+="cursor:hand;\n";\r
- sStyle+="font-family:"+gsTBFontFamily+";\n";\r
- sStyle+="font-size:"+gsTBFontSize+";\n";\r
- sStyle+="color:"+gsTBFontColor+";}\n";\r
-\r
- sStyle+=".clsNotBtn {\n";\r
- if(!(gbNav4&&!gbNav6))\r
- if (bMiniBar)\r
- sStyle+="padding:2px;\n";\r
- else\r
- sStyle+="padding:5px;\n";\r
- sStyle+="font-family:"+gsTBFontFamily+";\n";\r
- sStyle+="font-size:"+gsTBFontSize+";\n";\r
- sStyle+="color:"+gsTBFontColor+";}\n";\r
-\r
- sStyle+=".clsBtnUp{\n";\r
- if(!(gbNav4&&!gbNav6))\r
- if (bMiniBar)\r
- sStyle+="padding:1px;\n";\r
- else\r
- sStyle+="padding:4px;\n";\r
- sStyle+="border-bottom:"+gsTBDarkColor+" 1px solid;\n";\r
- sStyle+="border-left:"+gsTBLightColor+" 1px solid;\n";\r
- sStyle+="border-right:"+gsTBDarkColor+" 1px solid;\n";\r
- sStyle+="border-top:"+gsTBLightColor+" 1px solid;\n";\r
- sStyle+="cursor:hand;";\r
- sStyle+="font-family:"+gsTBFontFamily+";\n";\r
- sStyle+="font-size:"+gsTBFontSize+";\n";\r
- sStyle+="color:"+gsTBFontColor+";}\n";\r
-\r
- sStyle+=".clsNoBUp{\n";\r
- sStyle+="padding-left:2px;padding-right:2px;\n";\r
- sStyle+="cursor:hand;";\r
- sStyle+="font-family:"+gsTBFontFamily+";\n";\r
- sStyle+="font-size:"+gsTBFontSize+";\n";\r
- sStyle+="color:"+gsTBFontColor+";}\n";\r
-\r
- sStyle+=".clsBtnDown{\n";\r
- if(!(gbNav4&&!gbNav6))\r
- if (bMiniBar)\r
- sStyle+="padding:1px;\n";\r
- else\r
- sStyle+="padding:4px;\n";\r
- sStyle+="border-bottom:"+gsTBLightColor+" 1px solid;\n";\r
- sStyle+="border-left:"+gsTBDarkColor+" 1px solid;\n";\r
- sStyle+="border-right:"+gsTBLightColor+" 1px solid;\n";\r
- sStyle+="border-top:"+gsTBDarkColor+" 1px solid;\n";\r
- sStyle+="color:"+gsTBFontColor+";\n";\r
- sStyle+="cursor:hand;\n";\r
- sStyle+="font-family:"+gsTBFontFamily+";\n";\r
- sStyle+="font-size:"+gsTBFontSize+";}\n";\r
-\r
- sStyle+=".clsNoBDown{\n";\r
- sStyle+="padding-left:2px;padding-right:2px;\n";\r
- sStyle+="cursor:hand;";\r
- sStyle+="font-family:"+gsTBFontFamily+";\n";\r
- sStyle+="font-size:"+gsTBFontSize+";\n";\r
- sStyle+="color:"+gsTBFontColor+";}\n";\r
-\r
- sStyle+=getDefaultButtonFont();\r
- sStyle+=gsBtnStyle;\r
- sStyle+=".clsToolbarBackground{\n";\r
- sStyle+="margin:2px;}\n";\r
- sStyle+="-->\n";\r
- sStyle+=" body {\n";\r
- if (gsBgImage)\r
- sStyle+="border-top:"+gsBgColor+" 1px solid;}\n";\r
- else\r
- sStyle+="border-top:black 1px solid;}\n";\r
- sStyle+="-->\n";\r
- sStyle+="</style>\n";\r
- document.write(sStyle);\r
-}\r
-\r
-function button(sType,sText,nWidth,nHeight)\r
-{\r
- this.sType=sType;\r
- this.sText=sText;\r
- this.nWidth=nWidth;\r
- this.nHeight=nHeight;\r
- \r
- this.aIs=new Array();\r
- var i=0;\r
- while(button.arguments.length>i+4)\r
- {\r
- if (button.arguments[4+i])\r
- this.aIs[i]=_getFullPath(_getPath(document.location.href),button.arguments[4+i]);\r
- else\r
- this.aIs[i]="";\r
- i++;\r
- }\r
-}\r
-\r
-function getImage(oImage,sTitle)\r
-{\r
- if(oImage.aIs[0])\r
- {\r
- var sI="";\r
- if(sTitle=="")\r
- sTitle=oImage.sText;\r
- sI+="<img alt=\""+sTitle+"\" src=\""+oImage.aIs[0]+"\"";\r
- if(oImage.nWidth>0)\r
- sI+=" width="+oImage.nWidth;\r
- if(oImage.nHeight>0)\r
- sI+=" height="+oImage.nHeight;\r
- sI+=" border=no align=\"absmiddle\">";\r
- return sI;\r
- }\r
- return "";\r
-}\r
-\r
-function getCurrentAveName()\r
-{\r
- var oSelect=getElement("avenue");\r
- if(oSelect)\r
- return oSelect.value;\r
- else\r
- return "";\r
-}\r
-\r
-function updateWebSearch(bEnable)\r
-{\r
- var oWebSearch=getElement("btnwebsearch");\r
- var oWebSearchParent=null;\r
- if(oWebSearch)\r
- oWebSearchParent=getParentNode(oWebSearch);\r
- goWebSearchEnable=bEnable;\r
- if(oWebSearchParent)\r
- {\r
- if(bEnable)\r
- enableButton(oWebSearchParent,goWebSearch);\r
- else\r
- disableButton(oWebSearchParent,goWebSearch);\r
- }\r
-\r
-}\r
-\r
-function setState(oEL,sState)\r
-{\r
- if(gbNav6)\r
- oEL.setAttribute("state",sState);\r
- else\r
- oEL.state=sState; \r
-}\r
-\r
-function updateAvenueIfNeeded()\r
-{\r
- gbUpdateTimerCount--;\r
- if (gbNeedUpdateAve&&gbUpdateTimerCount==0)\r
- {\r
- updateAvenue();\r
- }\r
-}\r
-\r
-function updateAvenue()\r
-{\r
- var sSelect=getAvenueHTML(gaAvenues);\r
- var oSelect=getElement("avenue");\r
- if(oSelect)\r
- {\r
- if(gbNav6)\r
- {\r
- var oParent=getParentNode(oSelect);\r
- \r
- if(oParent)\r
- {\r
- removeThis(oSelect);\r
- oParent.insertAdjacentHTML("afterBegin",sSelect);\r
- }\r
- }\r
- else\r
- oSelect.outerHTML=sSelect; \r
- oSelect=getElement("avenue");\r
- if(isValidAvenue(gaAvenues,gsCurAveName))\r
- oSelect.value=gsCurAveName;\r
- }\r
- updateAveButton();\r
-}\r
-\r
-function initAveButtonObj()\r
-{\r
- if(!gbAveButttnInited)\r
- {\r
- var oNext=getElement("btnavnext");\r
- if(oNext)\r
- goNextParent=getParentNode(oNext);\r
-\r
- var oPrev=getElement("btnavprev");\r
- if(oPrev)\r
- goPrevParent=getParentNode(oPrev);\r
- }\r
- gbAveButttnInited=true;\r
-}\r
-\r
-function disableAveButton()\r
-{\r
- initAveButtonObj();\r
- if(goNextParent)\r
- disableButton(goNextParent,goNext);\r
- if(goPrevParent)\r
- disableButton(goPrevParent,goPrev);\r
-}\r
-\r
-function disableButton(oEl,oBtn)\r
-{\r
- setState(oEl,"disable");\r
- var sPF=oEl.className.substring(0,6);\r
- oEl.className=sPF+"Normal";\r
- var oIs=getElementsByTag(oEl,"img");\r
- if(oIs.length>0&&oBtn&&oBtn.aIs&&oBtn.aIs.length>3)\r
- {\r
- if(oBtn.aIs[3])\r
- oIs[0].src=oBtn.aIs[3];\r
- }\r
- else\r
- oEl.style.visibility="hidden";\r
-}\r
-\r
-function enableButton(oEl,oBtn)\r
-{\r
- setState(oEl,"normal");\r
- if(oEl==goEl)\r
- {\r
- var sPF=oEl.className.substring(0,6);\r
- oEl.className=sPF+"Up";\r
- }\r
- var oIs=getElementsByTag(oEl,"img");\r
- if(oIs.length>0&&oBtn&&oBtn.aIs&&oBtn.aIs.length>0)\r
- {\r
- if(oBtn.aIs[0])\r
- oIs[0].src=oBtn.aIs[0];\r
- }\r
- oEl.style.visibility="visible";\r
-}\r
-\r
-function updateAveButton()\r
-{\r
- initAveButtonObj(); \r
- var strAveName=getCurrentAvenue();\r
- if(strAveName!="")\r
- {\r
- if(gaAvenues)\r
- {\r
- for(var i=0;i<gaAvenues.length;i++)\r
- if(gaAvenues[i].sName==strAveName)\r
- {\r
- if(goNextParent)\r
- {\r
- if(gaAvenues[i].sNext!=null&&gaAvenues[i].sNext!="")\r
- enableButton(goNextParent,goNext);\r
- else\r
- disableButton(goNextParent,goNext);\r
- }\r
- if(goPrevParent)\r
- {\r
- if(gaAvenues[i].sPrev!=null&&gaAvenues[i].sPrev!="")\r
- enableButton(goPrevParent,goPrev);\r
- else\r
- disableButton(goPrevParent,goPrev);\r
- } \r
- break;\r
- }\r
- }\r
- }\r
- else\r
- {\r
- var bNext=false;\r
- var bPrev=false;\r
- if(gaAvenues&&gaAvenues.length>0)\r
- {\r
- for(var i=0;i<gaAvenues.length&&(!bNext||!bPrev);i++)\r
- {\r
- if(!bNext)\r
- if(gaAvenues[i].sNext!=null&&gaAvenues[i].sNext!="")\r
- bNext=true; \r
- if(!bPrev)\r
- if(gaAvenues[i].sPrev!=null&&gaAvenues[i].sPrev!="")\r
- bPrev=true; \r
- }\r
- }\r
- if(goNextParent)\r
- {\r
- if(bNext)\r
- enableButton(goNextParent,goNext);\r
- else\r
- disableButton(goNextParent,goNext);\r
- }\r
- \r
- if(goPrevParent)\r
- {\r
- if(bPrev)\r
- enableButton(goPrevParent,goPrev);\r
- else\r
- disableButton(goPrevParent,goPrev);\r
- }\r
- }\r
- \r
-}\r
-\r
-function isValidAvenue(aAvenues,sValue)\r
-{\r
- if(aAvenues)\r
- {\r
- for(var i=0;i<aAvenues.length;i++)\r
- {\r
- if(aAvenues[i].sName==sValue)\r
- return true;\r
- }\r
- }\r
- return false;\r
-}\r
-\r
-function getAvenueHTML(aAvenues)\r
-{\r
- var sSelect="<select id=\"avenue\" size=\"1\" name=\"avenue\" onchange=\"updateAveButton();\">";\r
- sSelect+="<option value=\"\" selected> - Select Avenue - </option>";\r
- if(aAvenues)\r
- {\r
- for(var i=0;i<aAvenues.length;i++)\r
- {\r
- sSelect+="<option value=\""+aAvenues[i].sName+"\">"+aAvenues[i].sName+"</option>";\r
- }\r
- }\r
- sSelect+="</select>";\r
- return sSelect;\r
-}\r
-\r
-function addAvenueSelection()\r
-{\r
- var oMsg=new whMessage(WH_MSG_GETAVIAVENUES,this,1,new Object());\r
- var sButton="";\r
- if(SendMessage(oMsg))\r
- {\r
- sButton=getAvenueHTML(oMsg.oParam.aAvenues);\r
- }\r
- else\r
- {\r
- sButton=getAvenueHTML(null);\r
- }\r
- gaButtons[gaButtons.length]="<td NOWRAP align=\"center\" valign=\"middle\">"+sButton+"</td>";\r
-}\r
-\r
-function setSearchFormTitle(sTitle)\r
-{\r
- gsSearchFormTitle=sTitle;\r
-}\r
-\r
-function highLightIfNeeded()\r
-{\r
- if(document.searchForm.searchString.value==gsSearchPrompt)\r
- {\r
- document.searchForm.searchString.select();\r
- }\r
-}\r
-\r
-function addSearchForm()\r
-{\r
- var sPropmptString=gsSearchPrompt;\r
-\r
- var nWidth=20;\r
- if(!nWidth) nWidth=20;\r
- if(gbNav4) nWidth=nWidth*.6;\r
-\r
- if(gsSearchFormTitle)\r
- sPropmptString="";\r
- var sButton="<table CELLSPACING=0 CELLPADDING=1><tr><td valign=\"middle\" NOWRAP class=\"clsNotBtn\"><span class=\"btnsearchform\">"+_textToHtml(gsSearchFormTitle)+"</span></td><td NOWRAP valign=\"middle\"><input class=\"inputsearchform\" type=\"text\" onfocus=\"highLightIfNeeded();\" name=\"searchString\" value=\""+sPropmptString+"\" size=\""+nWidth+"\"></td>";\r
- if(gbNav6)\r
- sButton="<form name=\"searchForm\" method=\"POST\" action=\"javascript:searchB()\">"+sButton;\r
- if("image"=="text")\r
- {\r
- sButton+="<td NOWRAP valign=\"middle\"><a class=\"searchbtn\" href=\"javascript:void(0);\" onclick=\"searchForm.submit(); return false;\"></a></td>";\r
- }\r
- else if("image"=="image"&&gsIGo)\r
- {\r
- sButton+="<td NOWRAP valign=\"middle\"><a class=\"searchbtn\" href=\"javascript:void(0);\" onclick=\"searchForm.submit(); return false;\">"\r
- sButton+="<img alt=\"Go\" src=\""+gsIGo+"\" border=0 align=\"absmiddle\"></a></td>";\r
- }\r
- sButton+="</tr></table>";\r
- if(gbNav6)\r
- sButton+="</form>";\r
- var nBtn=gaButtons.length;\r
- gaButtons[nBtn]="<td NOWRAP align=\"center\" valign=\"middle\">"+sButton+"</td>";\r
- gaTypes[nBtn]="searchform";\r
-}\r
-\r
-function getShowHide()\r
-{\r
- var sText="";\r
- var sI="";\r
- if(hasNavPane())\r
- {\r
- if(goHide)\r
- {\r
- if(gnShowHideStyle&BTN_TEXT)\r
- sText=goHide.sText;\r
- if(gnShowHideStyle&BTN_IMG)\r
- sI=getImage(goHide,"Hide");\r
- }\r
- }\r
- else\r
- {\r
- if(goShow)\r
- {\r
- if(gnShowHideStyle&BTN_TEXT)\r
- sText=goShow.sText;\r
- if(gnShowHideStyle&BTN_IMG)\r
- sI=getImage(goShow,"Show");\r
- }\r
- }\r
- var sButton=genButton(sText,sI,gnShowHideStyle);\r
- return sButton;\r
-}\r
-\r
-function addBanner(sImage)\r
-{\r
- if(sImage)\r
- {\r
- var nBtn=gaButtons.length;\r
- gaButtons[nBtn]="<td NOWRAP align=\"center\" valign=\"middle\"> <a href=\"javascript:void(0);\" onclick=\"showBanner();return false;\"><img alt=\"About WebHelp\"src=\""+sImage+"\" border=no align=\"absmiddle\"></a></td>";\r
- gaTypes[nBtn]="banner";\r
- }\r
-}\r
-\r
-function showBanner()\r
-{\r
- if (!gbPreview)\r
- {\r
- var nWidth=360;\r
- var nHeight=240;\r
- var nScreenWidth=screen.width;\r
- var nScreenHeight=screen.height;\r
- var nLeft=(nScreenWidth-nWidth)/2;\r
- var nTop=(nScreenHeight-nHeight)/2;\r
- if (gbIE4)\r
- {\r
- if (gbIE5)\r
- nHeight+=20;\r
- else\r
- nHeight+=40;\r
- window.showModalDialog("whskin_banner.htm","","dialogHeight:"+nHeight+"px;dialogWidth:"+nWidth+"px;resizable:no;status:no;scroll:no;help:no;center:yes;");\r
- }\r
- else\r
- window.open("whskin_banner.htm","banner","dependent,innerHeight="+nHeight+",innerWidth="+nWidth+",height="+nHeight+",width="+nWidth+",resizable=no,menubar=no,location=no,personalbar=no,status=no,scrollbar=no,toolbar=no,screenX="+nLeft+",screenY="+nTop);\r
- }\r
-}\r
-\r
-function addButton(sType,nStyle,sTitle,sHref,sOnClick,sOnMouseOver,sOnLoad,nWidth,nHeight,sI1,sI2,sI3,sI4,sI5,sI6)\r
-{\r
- var sButton="";\r
- var bMini=false;\r
- var sText="";\r
- var sI="";\r
- var bState=false;\r
- var nBtn=gaButtons.length;\r
- var bHref=false;\r
- if(sType=="show"&&isShowHideEnable())\r
- {\r
- var svTitle="Show Navigation Component";\r
- sButton="<a title=\""+svTitle+"\" id=\"btnshowhide\" class=\"btnshow\" href=\"javascript:void(0);\" onclick=\"showHidePane();return false;\">";\r
- gnShowHideStyle=nStyle;\r
- goShow=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3);\r
- gaObjBtns[nBtn]=goShow;\r
- if(gnShowHide!=-1)\r
- {\r
- nBtn=gnShowHide;\r
- }\r
- else\r
- {\r
- gnShowHide=nBtn;\r
- }\r
- sButton+=getShowHide();\r
- sButton+="</a>";\r
- bState=true;\r
- }\r
- else if(sType=="hide"&&isShowHideEnable())\r
- {\r
- var svTitle="Hide Navigation Component";\r
- sButton="<a title=\""+svTitle+"\" id=\"btnshowhide\" class=\"btnhide\" href=\"javascript:void(0);\" onclick=\"showHidePane();return false;\">";\r
- gnShowHideStyle=nStyle;\r
- goHide=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3);\r
- gaObjBtns[nBtn]=goHide;\r
- if(gnShowHide!=-1)\r
- {\r
- nBtn=gnShowHide;\r
- }\r
- else\r
- {\r
- gnShowHide=nBtn;\r
- }\r
- sButton+=getShowHide();\r
- sButton+="</a>";\r
- bState=true;\r
- }\r
- else if(sType=="hide2"&&(!gbNav4))\r
- {\r
- var svTitle="Hide Navigation Component";\r
- sButton="<a title=\""+svTitle+"\" id=\"btnhide\" class=\"btnhide\" href=\"javascript:void(0);\" onclick=\"showHidePane();return false;\">";\r
- gnShowHideStyle=nStyle;\r
- if(!sI1)\r
- sI1=gsIHide;\r
- goHide2=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3);\r
- gaObjBtns[nBtn]=goHide2;\r
- if(nStyle&BTN_TEXT)\r
- sText=goHide2.sText\r
- \r
- if(nStyle&BTN_IMG)\r
- sI=getImage(goHide2,svTitle);\r
- sButton+=genButton(sText,sI,nStyle);\r
- sButton+="</a>";\r
- bMini=true;\r
- }\r
- else if(sType=="synctoc")\r
- {\r
- var svTitle="Sync TOC";\r
- sButton="<a title=\""+svTitle+"\" id=\"btnsynctoc\" class=\"btnsynctoc\" href=\"javascript:void(0);\" onclick=\"syncWithShow();return false;\">";\r
- if(!sI1)\r
- sI1=gsISync;\r
- goSync=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3);\r
- gaObjBtns[nBtn]=goSync;\r
- if(nStyle&BTN_TEXT)\r
- sText=goSync.sText\r
- \r
- if(nStyle&BTN_IMG)\r
- sI=getImage(goSync,svTitle);\r
- sButton+=genButton(sText,sI,nStyle);\r
- sButton+="</a>";\r
- bMini=true;\r
- }\r
- else if(sType=="toc")\r
- {\r
- var svTitle="Contents";\r
- sButton="<a title=\""+svTitle+"\" id=\"btntoc\" class=\"btntoc\" href=\"javascript:void(0);\" onclick=\"showToc();return false;\">";\r
- if(!sI1)\r
- sI1=gsIToc;\r
- if(!sI2)\r
- sI2=gsITocS;\r
- if(!sI4)\r
- sI4=gsITocS;\r
- goToc=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3,sI4,sI5,sI6);\r
- gaObjBtns[nBtn]=goToc;\r
- if(nStyle&BTN_TEXT)\r
- sText=goToc.sText\r
- \r
- if(nStyle&BTN_IMG)\r
- sI=getImage(goToc,svTitle);\r
- sButton+=genButton(sText,sI,nStyle);\r
- sButton+="</a>";\r
- bState=true;\r
- }\r
- else if(sType=="idx")\r
- {\r
- var svTitle="Index";\r
- sButton="<a title=\""+svTitle+"\" id=\"btnidx\" class=\"btnidx\" href=\"javascript:void(0);\" onclick=\"showIndex();return false;\">";\r
- if(!sI1)\r
- sI1=gsIIndex;\r
- if(!sI2)\r
- sI2=gsIIndexS;\r
- if(!sI4)\r
- sI4=gsIIndexS;\r
- goIdx=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3,sI4,sI5,sI6);\r
- gaObjBtns[nBtn]=goIdx;\r
- if(nStyle&BTN_TEXT)\r
- sText=goIdx.sText\r
- \r
- if(nStyle&BTN_IMG)\r
- sI=getImage(goIdx,svTitle);\r
- sButton+=genButton(sText,sI,nStyle);\r
- sButton+="</a>";\r
- bState=true;\r
- }\r
- else if(sType=="fts")\r
- {\r
- var svTitle="Search";\r
- sButton="<a title=\""+svTitle+"\" id=\"btnfts\" class=\"btnfts\" href=\"javascript:void(0);\" onclick=\"showFts();return false;\">";\r
- if(!sI1)\r
- sI1=gsISearch;\r
- if(!sI2)\r
- sI2=gsISearchS;\r
- if(!sI4)\r
- sI4=gsISearchS;\r
- goFts=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3,sI4,sI5,sI6);\r
- gaObjBtns[nBtn]=goFts;\r
- if(nStyle&BTN_TEXT)\r
- sText=goFts.sText\r
- \r
- if(nStyle&BTN_IMG)\r
- sI=getImage(goFts,svTitle);\r
- sButton+=genButton(sText,sI,nStyle);\r
- sButton+="</a>";\r
- bState=true;\r
- }\r
- else if(sType=="glo")\r
- {\r
- var svTitle="Glossary";\r
- sButton="<a title=\""+svTitle+"\" id=\"btnglo\" class=\"btnglo\" href=\"javascript:void(0);\" onclick=\"showGlossary();return false;\">";\r
- if(!sI1)\r
- sI1=gsIGlossary;\r
- if(!sI2)\r
- sI2=gsIGlossaryS;\r
- if(!sI4)\r
- sI4=gsIGlossaryS;\r
- goGlo=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3,sI4,sI5,sI6);\r
- gaObjBtns[nBtn]=goGlo;\r
- if(nStyle&BTN_TEXT)\r
- sText=goGlo.sText\r
- \r
- if(nStyle&BTN_IMG)\r
- sI=getImage(goGlo,svTitle);\r
- sButton+=genButton(sText,sI,nStyle);\r
- sButton+="</a>";\r
- bState=true;\r
- }\r
- else if(sType=="avnext")\r
- {\r
- var svTitle="Next Topic";\r
- sButton="<a title=\""+svTitle+"\" id=\"btnavnext\" class=\"btnavnext\" href=\"javascript:void(0);\" onclick=\"goAveNext();return false;\">";\r
- if(!sI1)\r
- sI1=gsINext;\r
- if(!sI4)\r
- sI4=gsINextD;\r
- goNext=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3,sI4,sI5,sI6);\r
- gaObjBtns[nBtn]=goNext;\r
- if(nStyle&BTN_TEXT)\r
- sText=goNext.sText\r
- \r
- if(nStyle&BTN_IMG)\r
- sI=getImage(goNext,svTitle);\r
- sButton+=genButton(sText,sI,nStyle);\r
- sButton+="</a>";\r
- bMini=true;\r
- }\r
- else if(sType=="avprev")\r
- {\r
- var svTitle="Previous Topic";\r
- sButton="<a title=\""+svTitle+"\" id=\"btnavprev\" class=\"btnavprev\" href=\"javascript:void(0);\" onclick=\"goAvePrev();return false;\">";\r
- if(!sI1)\r
- sI1=gsIPrev;\r
- if(!sI4)\r
- sI4=gsIPrevD;\r
- goPrev=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3,sI4,sI5,sI6);\r
- gaObjBtns[nBtn]=goPrev;\r
- if(nStyle&BTN_TEXT)\r
- sText=goPrev.sText\r
- \r
- if(nStyle&BTN_IMG)\r
- sI=getImage(goPrev,svTitle);\r
- sButton+=genButton(sText,sI,nStyle);\r
- sButton+="</a>";\r
- bMini=true;\r
- }\r
- else if(sType=="blankblock")\r
- {\r
- gaButtons[nBtn]=null;\r
- gaTypes[nBtn]=sType;\r
- }\r
- else if(sType=="websearch")\r
- {\r
- var svTitle="WebSearch";\r
- sButton="<a title=\""+svTitle+"\" id=\"btnwebsearch\" class=\"btnwebsearch\" href=\"javascript:void(0);\" onclick=\"doWebSearch();return false;\">";\r
- if(!sI1)\r
- sI1=gsIWebSearch;\r
- if(!sI4)\r
- sI4=gsIWebSearchD;\r
- goWebSearch=new button(sType,sTitle,nWidth,nHeight,sI1,sI2,sI3,sI4,sI5,sI6);\r
- gaObjBtns[nBtn]=goWebSearch;\r
- if(nStyle&BTN_TEXT)\r
- sText=goWebSearch.sText\r
- \r
- if(nStyle&BTN_IMG)\r
- sI=getImage(goWebSearch,svTitle);\r
- sButton+=genButton(sText,sI,nStyle);\r
- sButton+="</a>";\r
- }\r
- else if(sType.indexOf("custom")==0)\r
- {\r
- var nCusBtnIdx=goCusButton.length;\r
- goCusButton[nCusBtnIdx]=new cusButton(sType,sTitle,sOnClick,sOnMouseOver,sOnLoad,nWidth,nHeight,sI1,sI2,sI3);\r
- gaObjBtns[nBtn]=goCusButton[nCusBtnIdx];\r
- var re=new RegExp("\"","g");\r
- var svTitle=sTitle.replace(re, """);\r
- if(sHref&&sHref.length!=0)\r
- {\r
- sButton="<a title=\""+svTitle+"\" id=\"btn"+sType+"\" class=\"btn"+sType+"\" target=\"bsscright\" href=\""+sHref+"\" onclick=\"cusOnClick("+nCusBtnIdx+");";\r
- bHref=true;\r
- }\r
- else\r
- sButton="<a title=\""+svTitle+"\" id=\"btn"+sType+"\" class=\"btn"+sType+"\" href=\"javascript:void(0);\" onclick=\"cusOnClick("+nCusBtnIdx+");return false;";\r
- sButton+="\" onmouseover=\"cusOnMouseOver("+nCusBtnIdx+");\" title=\""+sType+"\">";\r
- if(nStyle&BTN_TEXT)\r
- sText=sTitle;\r
- if(nStyle&BTN_IMG)\r
- sI+=getImage(goCusButton[nCusBtnIdx],sTitle);\r
- sButton+=genButton(sText,sI,nStyle);\r
- sButton+="</a>";\r
- }\r
- if(sButton.length!=0)\r
- {\r
- var btnClass="";\r
- if(sText||bMini)\r
- btnClass="clsBtnNormal";\r
- else\r
- btnClass="clsNoBNormal";\r
-\r
- if(!bState)\r
- {\r
- if(bHref)\r
- gaButtons[nBtn]="<td NOWRAP valign=\"middle\" align=\"center\" class="+btnClass+" onclick=\"onBtnClick(event);\" onmousedown=\"onBtnMouseDown(event, "+nBtn+");\" onmouseup=\"onBtnMouseUp(event, "+nBtn+");\" onmouseover=\"onBtnMouseOver(event, "+nBtn+");\" onmouseout=\"onBtnMouseOut(event, "+nBtn+");\">"+sButton+"</td>";\r
- else\r
- gaButtons[nBtn]="<td NOWRAP valign=\"middle\" align=\"center\" class="+btnClass+" onclick=\"onBtnClick(event);return false;\" onmousedown=\"onBtnMouseDown(event, "+nBtn+");\" onmouseup=\"onBtnMouseUp(event, "+nBtn+");\" onmouseover=\"onBtnMouseOver(event, "+nBtn+");\" onmouseout=\"onBtnMouseOut(event, "+nBtn+");\">"+sButton+"</td>";\r
- }\r
- else\r
- gaButtons[nBtn]="<td NOWRAP valign=\"middle\" align=\"center\" class="+btnClass+" state=\"up\" onclick=\"onBtnClick(event);return false;\" onmousedown=\"onBtnMouseDown(event, "+nBtn+");\" onmouseup=\"onBtnMouseUp(event, "+nBtn+");\" onmouseover=\"onBtnMouseOver(event, "+nBtn+");\" onmouseout=\"onBtnMouseOut(event, "+nBtn+");\">"+sButton+"</td>";\r
- gaTypes[nBtn]=sType;\r
- }\r
-\r
- if(sType=="avenuesel")\r
- addAvenueSelection();\r
- else if(sType=="searchform")\r
- addSearchForm();\r
- else if(sType=="banner")\r
- {\r
- if(!sI1)\r
- sI1=gsIBanner;\r
- addBanner(sI1);\r
- }\r
-}\r
-\r
-function isShowHideEnable()\r
-{\r
- if(gbIE4)\r
- return true;\r
- else\r
- return false;\r
-}\r
-\r
-function genButton(sText,sI,nStyle)\r
-{\r
- var sButton="";\r
- var sShowText=_textToHtml(sText);\r
- if (gbNav4 && !gbNav6)\r
- sShowText += " ";\r
- if(sText!=""&&sI!="")\r
- {\r
- if(nStyle&BTN_IMG_TOP)\r
- sButton+=sI+"<br>"+ sShowText;\r
- else if(nStyle&BTN_IMG_BOTTOM)\r
- sButton+=sText+"<br>"+sI;\r
- else if(nStyle&BTN_IMG_RIGHT)\r
- sButton+=sText+" "+sI;\r
- else\r
- sButton+=sI+" "+sShowText;\r
- }\r
- else if(sText!="")\r
- {\r
- sButton+=sShowText;\r
- }\r
- else if(sI!="")\r
- {\r
- sButton+=sI;\r
- }\r
- return sButton;\r
-}\r
-\r
-function searchB()\r
-{\r
- var onMsg=new whMessage(WH_MSG_SHOWFTS,this,1,null);\r
- SendMessage(onMsg);\r
-\r
- var oMsg=new whMessage(WH_MSG_SEARCHTHIS,this,1,document.searchForm.searchString.value);\r
- if(!SendMessage(oMsg))\r
- gstrSearch=document.searchForm.searchString.value;\r
- else\r
- gstrSearch="";\r
-}\r
-\r
-function ReSortToolbarButtons()\r
-{\r
- var bSearchEnabled=isSearchEnabled();\r
- var strOrder="";\r
- var oMsg=new whMessage(WH_MSG_TOOLBARORDER,this,1,null);\r
- if(SendMessage(oMsg))\r
- {\r
- strOrder=oMsg.oParam;\r
- }\r
- if(strOrder.length>0)\r
- {\r
- gaOrders=strOrder.split("|");\r
- var aTempButtons=new Array();\r
- var ti=0;\r
- for(var si=0;si<gaOrders.length;si++)\r
- {\r
- if(gaOrders[si]!="searchform"||bSearchEnabled)\r
- {\r
- var sb=-1;\r
- for(var st=0;st<gaTypes.length;st++)\r
- {\r
- if(gaOrders[si]==gaTypes[st])\r
- {\r
- sb=st;\r
- break;\r
- }\r
- }\r
- if(sb!=-1)\r
- {\r
- aTempButtons[aTempButtons.length]=gaButtons[sb];\r
- }\r
- }\r
- }\r
- gaButtons=aTempButtons;\r
- }\r
-}\r
-\r
-function isSyncEnabled()\r
-{\r
- var bEnabled=false;\r
- var oMsg=new whMessage(WH_MSG_ISSYNCSSUPPORT,this,1,null);\r
- if(SendMessage(oMsg))\r
- {\r
- bEnabled=oMsg.oParam;\r
- }\r
- return bEnabled;\r
-}\r
-\r
-function isAvenueEnabled()\r
-{\r
- var bEnabled=false;\r
- var oMsg=new whMessage(WH_MSG_ISAVENUESUPPORT,this,1,null);\r
- if(SendMessage(oMsg))\r
- {\r
- bEnabled=oMsg.oParam;\r
- }\r
- return bEnabled;\r
-}\r
-\r
-function isSearchEnabled()\r
-{\r
- var bEnabled=false;\r
- var oMsg=new whMessage(WH_MSG_ISSEARCHSUPPORT,this,1,null);\r
- if(SendMessage(oMsg))\r
- {\r
- bEnabled=oMsg.oParam;\r
- }\r
- return bEnabled;\r
-}\r
-\r
-function ReSortMinibarButtons()\r
-{\r
- var bSyncEnabled=isSyncEnabled();\r
- var bAvenueEnabled=isAvenueEnabled();\r
- var strOrder="";\r
- var oMsg=new whMessage(WH_MSG_MINIBARORDER,this,1,null);\r
- if(SendMessage(oMsg))\r
- {\r
- strOrder=oMsg.oParam;\r
- }\r
- if(strOrder.length>0)\r
- {\r
- gaOrders=strOrder.split("|");\r
- var aTempButtons=new Array();\r
- var ti=0;\r
- for(var si=0;si<gaOrders.length;si++)\r
- {\r
- if((gaOrders[si]!="synctoc"||bSyncEnabled)&&\r
- ((gaOrders[si]!="avnext"&&gaOrders[si]!="avprev")||bAvenueEnabled))\r
- {\r
- var sb=-1;\r
- for(var st=0;st<gaTypes.length;st++)\r
- {\r
- if(gaOrders[si]==gaTypes[st])\r
- {\r
- sb=st;\r
- break;\r
- }\r
- }\r
- if(sb!=-1)\r
- {\r
- aTempButtons[aTempButtons.length]=gaButtons[sb];\r
- }\r
- }\r
- }\r
- gaButtons=aTempButtons;\r
- }\r
-}\r
-\r
-function writeToolBar()\r
-{\r
- var sHTML="";\r
- if(gaButtons.length>0)\r
- {\r
- var strHeight="100%";\r
- var strWidth="100%";\r
- if (gbNav4)\r
- {\r
- strHeight=window.innerHeight-4;\r
- strWidth=window.innerWidth-4;\r
- }\r
- if (gbIE4)\r
- {\r
- strHeight=document.body.clientHeight-4;\r
- strWidth=document.body.clientWidth-4;\r
- }\r
- if(gbNav6)\r
- sHTML="<table class=\"clsToolbarBackground\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\" height=\""+strHeight+"\" width=\""+strWidth+"\">";\r
- else\r
- sHTML="<form name=\"searchForm\" method=\"POST\" action=\"javascript:searchB()\"><table class=\"clsToolbarBackground\" cellpadding=\"0\" cellspacing=\"0\" border=\"0\" height=\""+strHeight+"\" width=\""+strWidth+"\">";\r
- if((gnButtonLayout&LAYOUT)==HLAYOUT)\r
- {\r
- sHTML+="<tr>";\r
- for(var i=0;i<gaButtons.length;i++)\r
- {\r
- if(gaButtons[i])\r
- sHTML+=gaButtons[i];\r
- else\r
- sHTML+="<td width=\"100%\"></td>";\r
- }\r
- sHTML+="</tr>";\r
- }\r
- else\r
- {\r
- for(var i=0;i<gaButtons.length;i++)\r
- {\r
- if(gaButtons[i])\r
- sHTML+="<tr width=\"100%\">"+gaButtons[i]+"</tr>";\r
- else\r
- sHTML+="<tr height=\"100%\"><td></td></tr>";\r
- }\r
- }\r
- if(gbNav6)\r
- sHTML+="</table>";\r
- else\r
- sHTML+="</table></form>";\r
- }\r
- document.write(sHTML);\r
- if(document.body)\r
- document.body.onselectstart=onSelect;\r
- updateAveButton();\r
-}\r
-\r
-function hasNavPane()\r
-{\r
- if(gnHasNavPane==-1)\r
- {\r
- gnHasNavPane=0;\r
- var oParam=new Object();\r
- oParam.bVisible=false;\r
- var oMsg=new whMessage(WH_MSG_ISPANEVISIBLE,this,1,oParam);\r
- if(SendMessage(oMsg))\r
- {\r
- if(oParam.bVisible)\r
- gnHasNavPane=1;\r
- }\r
- \r
- }\r
- if(gnHasNavPane==1)\r
- return true;\r
- else\r
- return false;\r
-}\r
-\r
-function getTocInfo()\r
-{\r
- var oParam=new Object();\r
- oParam.oTocInfo=null;\r
- var oMsg=new whMessage(WH_MSG_GETTOCPATHS,this,1,oParam);\r
- if(SendMessage(oMsg))\r
- {\r
- goTocInfo=oParam.oTocInfo;\r
- gbTocInfoInited=true;\r
- }\r
-}\r
-\r
-function onBtnClick(e)\r
-{\r
- var oEl=null;\r
- var oElo=null;\r
- if(gbNav6)\r
- {\r
- oElo=e.target;\r
- while(oElo&&oElo.nodeName.indexOf("#")==0) oElo=getParentNode(oElo);\r
- oEl=oElo;\r
- }\r
- else\r
- {\r
- oElo=event.srcElement;\r
- oEl=oElo;\r
- event.cancelBubble=true;\r
- }\r
- while(-1==oEl.className.indexOf("clsBtn")&&-1==oEl.className.indexOf("clsNoB"))\r
- {\r
- oEl=getParentNode(oEl);\r
- if(!oEl) return;\r
- }\r
- if(oElo.tagName=="A"||oElo.tagName=="IMG") return true;\r
- var oaA=getElementsByTag(oElo,"A");\r
- if(oaA&&oaA.length)\r
- {\r
- var oA=oaA[0];\r
- if(gbNav6)\r
- {\r
- var sCmd=oA.getAttribute("onclick");\r
- var nCmd=sCmd.indexOf("return false;");\r
- if(nCmd!=-1);\r
- sCmd=sCmd.substring(0,nCmd);\r
- setTimeout(sCmd,1);\r
- }\r
- else\r
- oA.onclick();\r
- }\r
-}\r
-\r
-function onBtnMouseDown(e,nBtn)\r
-{\r
- var oEl=null;\r
- if(gbNav6)\r
- {\r
- var oElo=e.target;\r
- while(oElo&&oElo.nodeName.indexOf("#")==0) oElo=getParentNode(oElo);\r
- oEl=oElo;\r
- }\r
- else\r
- {\r
- oEl=event.srcElement;\r
- event.cancelBubble=true;\r
- }\r
- while(-1==oEl.className.indexOf("clsBtn")&&-1==oEl.className.indexOf("clsNoB"))\r
- {\r
- oEl=getParentNode(oEl);\r
- if(!oEl) return;\r
- }\r
- var sPF=oEl.className.substring(0,6);\r
- var oIs=getElementsByTag(oEl,"img");\r
- if(oIs.length>0&&gaObjBtns[nBtn]&&gaObjBtns[nBtn].aIs&&gaObjBtns[nBtn].aIs.length>2)\r
- {\r
- if(gaObjBtns[nBtn].aIs[2])\r
- oIs[0].src=gaObjBtns[nBtn].aIs[2];\r
- }\r
- var sState=getState(oEl);\r
- if(sState!="disable")\r
- {\r
- oEl.className=sPF+"Down";\r
- }\r
-}\r
-\r
-function onBtnMouseUp(e,nBtn)\r
-{\r
- var oEl=null;\r
- if(gbNav6)\r
- {\r
- var oElo=e.target;\r
- while(oElo&&oElo.nodeName.indexOf("#")==0) oElo=getParentNode(oElo);\r
- oEl=oElo;\r
- }\r
- else\r
- {\r
- oEl=event.srcElement;\r
- event.cancelBubble=true;\r
- }\r
- while(-1==oEl.className.indexOf("clsBtn")&&-1==oEl.className.indexOf("clsNoB"))\r
- {\r
- oEl=getParentNode(oEl);\r
- if(!oEl) return;\r
- }\r
- var sPF=oEl.className.substring(0,6);\r
- var sState=getState(oEl);\r
- if(sState=="down"||sState=="disable")\r
- {\r
- var oIs=getElementsByTag(oEl,"img");\r
- if(oIs.length>0&&gaObjBtns[nBtn]&&gaObjBtns[nBtn].aIs&&gaObjBtns[nBtn].aIs.length>3)\r
- {\r
- if(gaObjBtns[nBtn].aIs[3])\r
- oIs[0].src=gaObjBtns[nBtn].aIs[3];\r
- }\r
- }\r
- else\r
- {\r
- var oIs=getElementsByTag(oEl,"img");\r
- if(oIs.length>0&&gaObjBtns[nBtn]&&gaObjBtns[nBtn].aIs&&gaObjBtns[nBtn].aIs.length>0)\r
- {\r
- if(gaObjBtns[nBtn].aIs[0])\r
- oIs[0].src=gaObjBtns[nBtn].aIs[0];\r
- }\r
- }\r
- if(goEl==oEl)\r
- {\r
- if(sState!="down"&&sState!="disable")\r
- {\r
- oEl.className=sPF+"Up";\r
- }\r
- }\r
-}\r
-\r
-function getState(oEl)\r
-{\r
- var sState="";\r
- if(gbNav6)\r
- sState=oEl.getAttribute("state");\r
- else\r
- if(oEl.state)\r
- sState=oEl.state;\r
- return sState;\r
-}\r
-\r
-function onBtnMouseOver(e,nBtn)\r
-{\r
- markButton(e);\r
- var oEl=null;\r
- if(gbNav6)\r
- {\r
- var oElo=e.target;\r
- while(oElo&&oElo.nodeName.indexOf("#")==0) oElo=getParentNode(oElo);\r
- oEl=oElo;\r
- }\r
- else\r
- {\r
- oEl=event.srcElement;\r
- event.cancelBubble=true;\r
- }\r
- while(-1==oEl.className.indexOf("clsBtn")&&-1==oEl.className.indexOf("clsNoB"))\r
- {\r
- oEl=getParentNode(oEl);\r
- if(!oEl) return;\r
- }\r
- var sPF=oEl.className.substring(0,6);\r
- var sState=getState(oEl);\r
- if(sState=="down"||sState=="disable")\r
- {\r
- if(sState=="down")\r
- oEl.className=sPF+"Down";\r
- var oIs=getElementsByTag(oEl,"img");\r
- if(oIs.length>0&&gaObjBtns[nBtn]&&gaObjBtns[nBtn].aIs&&gaObjBtns[nBtn].aIs.length>4)\r
- {\r
- if(gaObjBtns[nBtn].aIs[4])\r
- oIs[0].src=gaObjBtns[nBtn].aIs[4];\r
- }\r
- }\r
- else\r
- {\r
- oEl.className=sPF+"Up";\r
- var oIs=getElementsByTag(oEl,"img");\r
- if(oIs.length>0&&gaObjBtns[nBtn]&&gaObjBtns[nBtn].aIs&&gaObjBtns[nBtn].aIs.length>1)\r
- {\r
- if(gaObjBtns[nBtn].aIs[1])\r
- oIs[0].src=gaObjBtns[nBtn].aIs[1];\r
- }\r
- }\r
-}\r
-\r
-function onBtnMouseOut(e,nBtn)\r
-{\r
- goEl=null;\r
- var oEl=null;\r
- if(gbNav6)\r
- {\r
- var oElo=e.target;\r
- while(oElo&&oElo.nodeName.indexOf("#")==0) oElo=getParentNode(oElo);\r
- oEl=oElo;\r
- }\r
- else\r
- {\r
- oEl=event.srcElement;\r
- event.cancelBubble=true;\r
- }\r
- while(-1==oEl.className.indexOf("clsBtn")&&-1==oEl.className.indexOf("clsNoB"))\r
- {\r
- oEl=getParentNode(oEl);\r
- if(!oEl) return;\r
- }\r
- var sPF=oEl.className.substring(0,6);\r
- var sState=getState(oEl);\r
- if(sState=="down"||sState=="disable")\r
- {\r
- var oIs=getElementsByTag(oEl,"img");\r
- if(oIs.length>0&&gaObjBtns[nBtn]&&gaObjBtns[nBtn].aIs&&gaObjBtns[nBtn].aIs.length>3)\r
- {\r
- if(gaObjBtns[nBtn].aIs[3])\r
- oIs[0].src=gaObjBtns[nBtn].aIs[3];\r
- }\r
- if(sState=="down")\r
- oEl.className=sPF+"Down";\r
- }\r
- else\r
- {\r
- var oIs=getElementsByTag(oEl,"img");\r
- if(oIs.length>0&&gaObjBtns[nBtn]&&gaObjBtns[nBtn].aIs&&gaObjBtns[nBtn].aIs.length>0)\r
- {\r
- if(gaObjBtns[nBtn].aIs[0])\r
- oIs[0].src=gaObjBtns[nBtn].aIs[0];\r
- }\r
- oEl.className=sPF+"Normal";\r
- }\r
-}\r
-\r
-function showToc()\r
-{\r
- var oMsg=new whMessage(WH_MSG_SHOWTOC,this,1,null)\r
- SendMessage(oMsg);\r
-}\r
-\r
-function showIndex()\r
-{\r
- var oMsg=new whMessage(WH_MSG_SHOWIDX,this,1,null)\r
- SendMessage(oMsg);\r
-}\r
-\r
-function showFts()\r
-{\r
- var oMsg=new whMessage(WH_MSG_SHOWFTS,this,1,null)\r
- SendMessage(oMsg);\r
-}\r
-\r
-function showGlossary()\r
-{\r
- var oMsg=new whMessage(WH_MSG_SHOWGLO,this,1,null)\r
- SendMessage(oMsg);\r
-}\r
-\r
-function syncWithShow()\r
-{\r
- if(!gbTocInfoInited)\r
- {\r
- getTocInfo();\r
- }\r
- if(goTocInfo)\r
- {\r
- showToc();\r
- var oParam=goTocInfo;\r
- var oMsg=new whMessage(WH_MSG_SYNCTOC,this,1,oParam);\r
- SendMessage(oMsg);\r
- }\r
-}\r
-\r
-function markButton(e)\r
-{\r
- var oEl=null;\r
- if(gbNav6)\r
- {\r
- var oElo=e.target;\r
- while(oElo&&oElo.nodeName.indexOf("#")==0) oElo=getParentNode(oElo);\r
- oEl=oElo;\r
- }\r
- else\r
- oEl=event.srcElement;\r
- while(oEl&&oEl.tagName!="TD") oEl=getParentNode(oEl);\r
- if(oEl)\r
- goEl=oEl;\r
-}\r
-\r
-function showHidePane()\r
-{\r
- var oMsg=null;\r
- if(hasNavPane())\r
- oMsg=new whMessage(WH_MSG_HIDEPANE,this,1,null);\r
- else\r
- oMsg=new whMessage(WH_MSG_SHOWPANE,this,1,null);\r
- SendMessage(oMsg);\r
-}\r
-\r
-function goAveNext()\r
-{\r
- goAvenue(true);\r
-}\r
-\r
-function goAvePrev()\r
-{\r
- goAvenue(false);\r
-}\r
-\r
-function doWebSearch()\r
-{\r
- if (goWebSearchEnable)\r
- {\r
- var oMsg=new whMessage(WH_MSG_WEBSEARCH,this,1,null);\r
- SendMessage(oMsg);\r
- }\r
-}\r
-\r
-function goAvenue(bNext)\r
-{\r
- var oMsg=null;\r
- initAveButtonObj();\r
- gsCurAveName=getCurrentAveName();\r
- if(gbNav4&&!gbNav6)\r
- {\r
- if(bNext)\r
- {\r
- gaAvenues=null;\r
- updateAvenue();\r
- oMsg=new whMessage(WH_MSG_NEXT,this,1,null);\r
- SendMessage(oMsg);\r
- }\r
- else if(!bNext)\r
- {\r
- gaAvenues=null;\r
- updateAvenue();\r
- oMsg=new whMessage(WH_MSG_PREV,this,1,null);\r
- SendMessage(oMsg);\r
- }\r
- }\r
- else\r
- {\r
- if(bNext&&goNextParent)\r
- {\r
- var sState=getState(goNextParent);\r
- if(sState!="disable")\r
- {\r
- gaAvenues=null;\r
- gbNeedUpdateAve=true;\r
- gbUpdateTimerCount++;\r
- setTimeout("updateAvenueIfNeeded();", 2000);\r
- oMsg=new whMessage(WH_MSG_NEXT,this,1,null);\r
- SendMessage(oMsg);\r
- }\r
- }\r
- else if(!bNext&&goPrevParent)\r
- {\r
- var sState=getState(goPrevParent);\r
- if(sState!="disable")\r
- {\r
- gaAvenues=null;\r
- gbNeedUpdateAve=true;\r
- gbUpdateTimerCount++;\r
- setTimeout("updateAvenueIfNeeded();", 2000);\r
- oMsg=new whMessage(WH_MSG_PREV,this,1,null);\r
- SendMessage(oMsg);\r
- }\r
- }\r
- }\r
-}\r
-\r
-function window_Unload()\r
-{\r
- if(!gbNav4||gbNav6)\r
- {\r
- UnRegisterListener2(this,WH_MSG_GETSEARCHS);\r
- UnRegisterListener2(this,WH_MSG_PANESTATUE);\r
- UnRegisterListener2(this,WH_MSG_SYNCINFO);\r
- UnRegisterListener2(this,WH_MSG_PANEINFO);\r
- UnRegisterListener2(this,WH_MSG_AVENUEINFO);\r
- UnRegisterListener2(this,WH_MSG_GETCURRENTAVENUE);\r
- UnRegisterListener2(this,WH_MSG_ENABLEWEBSEARCH);\r
- UnRegisterListener2(this,WH_MSG_INITSEARCHSTRING);\r
- }\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
- if(document.body)\r
- {\r
- if(gsBgImage&&gsBgImage.length>0)\r
- {\r
- document.body.background=gsBgImage;\r
- }\r
- if(gsBgColor&&gsBgColor.length>0)\r
- {\r
- document.body.bgColor=gsBgColor;\r
- }\r
- }\r
- doCusOnLoad();\r
- var oMsg=new whMessage(WH_MSG_GETPANEINFO,this,1,null);\r
- if(SendMessage(oMsg))\r
- {\r
- setTimeout("flipPaneButton(\""+oMsg.oParam+"\");",1);\r
- }\r
- if (!gaAvenues)\r
- {\r
- var oMsg2=new whMessage(WH_MSG_GETAVIAVENUES,this,1,new Object());\r
- if(SendMessage(oMsg2))\r
- {\r
- gaAvenues=oMsg2.oParam.aAvenues;\r
- gbNeedUpdateAve=false;\r
- setTimeout("updateAvenue();",1);\r
- }\r
- }\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
- var nMsgId=oMsg.nMessageId;\r
- if(nMsgId==WH_MSG_GETSEARCHS)\r
- {\r
- if(document.searchForm&&document.searchForm.searchString)\r
- {\r
- oMsg.oParam.sValue=document.searchForm.searchString.value;\r
- return false;\r
- }\r
- }\r
- else if(nMsgId==WH_MSG_PANESTATUE)\r
- {\r
- if(oMsg.oParam=="visible")\r
- {\r
- if(isShowHideEnable())\r
- setTimeout("flipShowHide(true);",1);\r
- setTimeout("showPaneButton();",1);\r
- }\r
- else\r
- {\r
- if(isShowHideEnable())\r
- setTimeout("flipShowHide(false);",1);\r
- setTimeout("hidePaneButton();",1);\r
- }\r
- }\r
- else if(nMsgId==WH_MSG_PANEINFO)\r
- {\r
- if(oMsg.oParam)\r
- setTimeout("flipPaneButton(\""+oMsg.oParam+"\");",1);\r
- else\r
- setTimeout("hidePaneButton();",1);\r
- }\r
- else if(nMsgId==WH_MSG_SYNCINFO)\r
- {\r
- if(oMsg.oParam)\r
- goTocInfo=oMsg.oParam;\r
- else\r
- goTocInfo=null;\r
- gbTocInfoInited=true;\r
- }\r
- else if(nMsgId==WH_MSG_AVENUEINFO)\r
- {\r
- gaAvenues=oMsg.oParam;\r
- gbNeedUpdateAve=false;\r
- setTimeout("updateAvenue();",1);\r
- }\r
- else if(nMsgId==WH_MSG_GETCURRENTAVENUE)\r
- {\r
- var sAveName=getCurrentAvenue();\r
- if(sAveName!="")\r
- {\r
- oMsg.oParam.sAvenue=sAveName;\r
- return false;\r
- }\r
- else\r
- return true;\r
- }\r
- else if(nMsgId==WH_MSG_ENABLEWEBSEARCH)\r
- {\r
- setTimeout("updateWebSearch("+oMsg.oParam+");",1);\r
- }\r
- else if(nMsgId==WH_MSG_INITSEARCHSTRING)\r
- {\r
- if(gstrSearch!="")\r
- {\r
- oMsg.oParam=gstrSearch;\r
- gstrSearch="";\r
- return false;\r
- }\r
- }\r
- return true;\r
-}\r
-\r
-function getCurrentAvenue()\r
-{\r
- var strAveName="";\r
- var oSelect=getElement("avenue");\r
- if(oSelect)\r
- {\r
- strAveName=oSelect.value;\r
- }\r
- return strAveName;\r
-}\r
-\r
-function initBtn()\r
-{\r
- var oBtn=null;\r
- oBtn=getElement("btntoc");\r
- if(oBtn)\r
- gaBtns[gaBtns.length]=oBtn;\r
- oBtn=getElement("btnidx");\r
- if(oBtn)\r
- gaBtns[gaBtns.length]=oBtn;\r
- oBtn=getElement("btnfts");\r
- if(oBtn)\r
- gaBtns[gaBtns.length]=oBtn;\r
- oBtn=getElement("btnglo");\r
- if(oBtn)\r
- gaBtns[gaBtns.length]=oBtn;\r
- gbInitBtn=true;\r
-}\r
-\r
-function showPaneButton()\r
-{\r
- flipPaneButton(gsPane);\r
-}\r
-\r
-function hidePaneButton()\r
-{\r
- flipPaneButton("");\r
-}\r
-\r
-function flipPaneButton(sPane)\r
-{\r
- if (sPane)\r
- gsPane=sPane;\r
- if(!gbInitBtn)\r
- initBtn();\r
-\r
- var oUp=null;\r
- if(sPane)\r
- {\r
- oUp=getElement("btn"+sPane);\r
- }\r
- for(var i=0;i<gaBtns.length;i++)\r
- {\r
- if(gaBtns[i])\r
- {\r
- if(gaBtns[i]==oUp)\r
- {\r
- var oEl=getParentNode(oUp);\r
- var sPF=oEl.className.substring(0,6);\r
- var sState=getState(oEl);\r
- if(sState=="up")\r
- {\r
- setState(oEl,"down");\r
- oEl.className=sPF+"Down";\r
- if(sPF=="clsBtn")\r
- {\r
- if(gaBtns[i].id)\r
- {\r
- var sColor=getBtnColor(gaBtns[i].id.substring(3),true);\r
- if(sColor)\r
- {\r
- oEl.style.backgroundColor=sColor\r
- }\r
- else\r
- {\r
- oEl.style.backgroundColor="";\r
- }\r
- }\r
- var oaA=getElementsByTag(oEl,"A");\r
- if(oaA.length>0)\r
- {\r
- var strClassName=oaA[0].className;\r
- oaA[0].className="btnsel"+strClassName.substring(3);\r
- }\r
- }\r
- var oIs=getElementsByTag(oEl,"img");\r
- var oBtn=getButtonObjByType(gaBtns[i].id.substring(3));\r
- if(oIs.length>0&&oBtn&&oBtn.aIs&&oBtn.aIs.length>3)\r
- {\r
- if(oBtn.aIs[3])\r
- oIs[0].src=oBtn.aIs[3];\r
- }\r
- }\r
- }\r
- else\r
- {\r
- var oEl=getParentNode(gaBtns[i]);\r
- var sState=getState(oEl);\r
- var sPF=oEl.className.substring(0,6);\r
- if(sState=="down")\r
- {\r
- setState(oEl,"up");\r
- if(oEl==goEl)\r
- oEl.className=sPF+"Up";\r
- else\r
- oEl.className=sPF+"Normal";\r
-\r
- if(sPF=="clsBtn")\r
- {\r
- if(gaBtns[i].id)\r
- {\r
- var sColor=getBtnColor(gaBtns[i].id.substring(3),false);\r
- if(sColor)\r
- {\r
- oEl.style.backgroundColor=sColor\r
- }\r
- else\r
- {\r
- oEl.style.backgroundColor="";\r
- }\r
- }\r
-\r
- var oaA=getElementsByTag(oEl,"A");\r
- if(oaA.length>0)\r
- {\r
- var strClassName=oaA[0].className;\r
- oaA[0].className="btn"+strClassName.substring(6);\r
- }\r
- }\r
- var oIs=getElementsByTag(oEl,"img");\r
- var oBtn=getButtonObjByType(gaBtns[i].id.substring(3));\r
- if(oIs.length>0&&oBtn&&oBtn.aIs&&oBtn.aIs.length>0)\r
- {\r
- if(oBtn.aIs[0])\r
- oIs[0].src=oBtn.aIs[0];\r
- }\r
- }\r
- }\r
- }\r
- }\r
-}\r
-\r
-function flipShowHide(bShow)\r
-{\r
- gnHasNavPane=-1; \r
- var oA=getElement("btnshowhide");\r
- if(oA)\r
- {\r
- var oEl=getParentNode(oA);\r
- var sPF=oEl.className.substring(0,6);\r
- if(oEl&&oEl.state)\r
- {\r
- if(bShow)\r
- {\r
- oEl.state="down";\r
- oEl.className=sPF+"Down";\r
- }\r
- else\r
- {\r
- oEl.state="up";\r
- \r
- if(oEl==goEl)\r
- oEl.className=sPF+"Up";\r
- else\r
- oEl.className=sPF+"Normal";\r
- }\r
- }\r
- oA.innerHTML=getShowHide();\r
- }\r
-}\r
-\r
-function cusOnClick(nIdx)\r
-{\r
- if(goCusButton.length>nIdx)\r
- {\r
- var sOnClick=goCusButton[nIdx].sOnClick;\r
- if(sOnClick&&sOnClick.length>0)\r
- {\r
- if(!gbPreview)\r
- eval(sOnClick);\r
- return false;\r
- }\r
- }\r
- return true;\r
-}\r
-\r
-function cusOnMouseOver(nIdx)\r
-{\r
- if(goCusButton.length>nIdx)\r
- {\r
- var sOnMouseOver=goCusButton[nIdx].sOnMouseOver;\r
- if(sOnMouseOver&&sOnMouseOver.length>0)\r
- {\r
- if(!gbPreview)\r
- eval(sOnMouseOver);\r
- return false;\r
- }\r
- }\r
- return true;\r
-}\r
-\r
-function doCusOnLoad()\r
-{\r
- if(!gbPreview&&gaOrders)\r
- {\r
- for(var i=0;i<gaOrders.length;i++)\r
- {\r
- for(var j=0;j<gaOnLoads.length;j++)\r
- {\r
- if(gaOrders[i]==gaOnLoads[j].sType)\r
- {\r
- eval(gaOnLoads[j].sOnLoad);\r
- break;\r
- }\r
- }\r
- }\r
- }\r
-}\r
-\r
-function registerOnLoad(sOnLoad,sType)\r
-{\r
- gaOnLoads[gaOnLoads.length]=new cusOnLoad(sType,sOnLoad); \r
-}\r
-\r
-function cusOnLoad(sType,sOnLoad)\r
-{\r
- this.sType=sType;\r
- this.sOnLoad=sOnLoad;\r
-}\r
-\r
-function cusButton(sType,sText,sOnClick,sOnMouseOver,sOnLoad,nWidth,nHeight)\r
-{\r
- this.sType=sType;\r
- this.sText=sText;\r
- this.sOnClick=sOnClick;\r
- this.sOnMouseOver=sOnMouseOver;\r
- this.sOnLoad=sOnLoad;\r
- this.nWidth=nWidth;\r
- this.nHeight=nHeight;\r
- this.aIs=new Array();\r
- var i=0;\r
- while(cusButton.arguments.length>i+7)\r
- {\r
- if (cusButton.arguments[7+i])\r
- this.aIs[i]=_getFullPath(_getPath(document.location.href),cusButton.arguments[7+i]);\r
- else\r
- this.aIs[i]="";\r
- i++;\r
- }\r
- if(sOnLoad)\r
- {\r
- registerOnLoad(sOnLoad,sType);\r
- }\r
-}\r
-\r
-function getBtnColor(sType,bSel)\r
-{\r
- var aBtnColors=null;\r
- if(bSel)\r
- aBtnColors=gaSelBtnBgColor;\r
- else\r
- aBtnColors=gaBtnBgColor;\r
- if(aBtnColors)\r
- {\r
- for(var i=0;i<aBtnColors.length;i++)\r
- {\r
- if(aBtnColors[i].sType==sType)\r
- return aBtnColors[i].sColor;\r
- }\r
- }\r
- return "";\r
-}\r
-\r
-function setButtonBgColor(sType,sColor,bSel)\r
-{\r
- if(sColor)\r
- {\r
- var aBtnColors=null;\r
- if(bSel)\r
- aBtnColors=gaSelBtnBgColor;\r
- else\r
- aBtnColors=gaBtnBgColor;\r
- if(aBtnColors!=null)\r
- {\r
- for(var i=0;i<aBtnColors.length;i++)\r
- {\r
- if(aBtnColors[i].sType==sType)\r
- {\r
- aBtnColors[i].sColor=sColor;\r
- return;\r
- }\r
- }\r
- aBtnColors[aBtnColors.length]=new btnBgColor(sType,sColor);\r
- }\r
- }\r
-}\r
-\r
-function getDefaultButtonFont()\r
-{\r
- var strFontStyle="";\r
- for(var i=0;i<gaTypes.length;i++)\r
- {\r
- strFontStyle+=".btnsel"+gaTypes[i]+"{"+getFontStyle(goSelTextFont)+"}";\r
- strFontStyle+=".btn"+gaTypes[i]+"{"+getFontStyle(goTextFont)+"}";\r
- }\r
- return strFontStyle;\r
-}\r
-\r
-function setButtonFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration,bSel)\r
-{\r
- if(sFontName)\r
- {\r
- var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
- if(bSel)\r
- gsBtnStyle+=".btnsel"+sType+"{"+getFontStyle(vFont)+"}\n";\r
- else\r
- gsBtnStyle+=".btn"+sType+"{"+getFontStyle(vFont)+"}\n";\r
- }\r
- if (sType=="searchform"&&!bSel)\r
- {\r
- var vFont1=new whFont(sFontName,sFontSize,"black",sFontStyle,sFontWeight,sFontDecoration);\r
- gsBtnStyle+=".inputsearchform {" + getFontStyle(vFont1)+"}\n";\r
- }\r
-}\r
-\r
-function getButtonObjByType(sType)\r
-{\r
- for(var i=0;i<gaObjBtns.length;i++)\r
- {\r
- if(gaObjBtns[i].sType==sType)\r
- return gaObjBtns[i];\r
- }\r
- return null;\r
-}\r
-\r
-function onSelect()\r
-{\r
- if (event.srcElement&&event.srcElement.name)\r
- {\r
- if (event.srcElement.name=="searchString")\r
- return true;\r
- }\r
- return false;\r
-}\r
-\r
-function window_onResize()\r
-{\r
- gnRE++;\r
- setTimeout("tryReload();", 100);\r
-}\r
-\r
-function tryReload()\r
-{\r
- if (gnRE==1)\r
- document.location.reload();\r
- gnRE--;\r
-}\r
-\r
-if(window.gbWhUtil&&window.gbWhMsg&&window.gbWhVer&&window.gbWhProxy)\r
-{\r
- RegisterListener2(this,WH_MSG_GETSEARCHS);\r
- RegisterListener2(this,WH_MSG_PANESTATUE);\r
- RegisterListener2(this,WH_MSG_SYNCINFO);\r
- RegisterListener2(this,WH_MSG_PANEINFO);\r
- RegisterListener2(this,WH_MSG_AVENUEINFO);\r
- RegisterListener2(this,WH_MSG_GETCURRENTAVENUE);\r
- RegisterListener2(this,WH_MSG_ENABLEWEBSEARCH);\r
- RegisterListener2(this,WH_MSG_INITSEARCHSTRING);\r
- window.onload=window_OnLoad;\r
- window.onunload=window_Unload;\r
- window.onresize=window_onResize;\r
- goTextFont=new whFont("Verdana","8pt","#003063","normal","normal","none");\r
- goSelTextFont=new whFont("Verdana","8pt","white","normal","normal","none");\r
- gbWhTBar=true;\r
-}\r
-else\r
- document.location.reload();\r
-\r
+++ /dev/null
-<html>\r
-<head>\r
-<title>Table of contents</title>\r
-<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">\r
-<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com">\r
-<meta name "description" content="WebHelp 2002">\r
-<base target="bsscright">\r
-</head>\r
-<script language="javascript" src="whver.js"></script>\r
-<script language="javascript1.2" src="whmozemu.js"></script>\r
-<script language="javascript1.2" src="whutils.js"></script>\r
-<script language="javascript1.2" src="whmsg.js"></script>\r
-<script language="javascript1.2" src="whproxy.js"></script>\r
-<script language="javascript1.2" src="whthost.js"></script>\r
-<script LANGUAGE="javascript1.2">\r
-<!--\r
-if (window.gbWhTHost)\r
-{\r
- setBackgroundcolor( "White"); \r
- \r
- setFont("Normal", "Tahoma","8pt","Black","Normal","Normal","none");\r
- setFont("Hover", "Tahoma","8pt","Navy","Normal","Normal","underline");\r
- setActiveBgColor("Silver");\r
- \r
- \r
- setIcon("BookOpen","wht_toc2.gif");\r
- setIcon("BookClose","wht_toc1.gif");\r
- setIcon("Item","wht_toc3.gif");\r
- setIcon("RemoteItem","wht_toc4.gif");\r
- \r
- \r
- \r
- \r
- TocWriteClassStyle();\r
- TocWriteFixedWidth(true,400);\r
-}\r
-else\r
- document.location.reload();\r
-//-->\r
-</script>\r
-<body topmargin="2" leftmargin="2" marginwidth="0" marginheight="0" bgproperties="fixed" bgcolor="white" scroll="auto">\r
-<script LANGUAGE="javascript1.2">\r
-<!--\r
-TocWriteFixedWidth(false,400);\r
-TocInitPage();\r
-//-->\r
-</script>\r
-</body>\r
-</html>
\ No newline at end of file
+++ /dev/null
-var gaHSLoad=new Array();\r
-var gnMinIdx=0;\r
-var gnInsIdx=-1;\r
-var gsLoadingDivID="LoadingDiv";\r
-var gsLoadingMsg="Loading, click here to cancel...";\r
-var gaProj=null;\r
-var gaTocs=new Array();\r
-var goChunk=null;\r
-var gbReady=false;\r
-var gbLoadToc=false;\r
-var gbXML=false;\r
-var gaRoot=new Array();\r
-var gnCC=-1;\r
-var gsTP="";\r
-var gaBTPs="";\r
-var gsCTPath="";\r
-var gnLT=-1;\r
-var gsPathSplit="\n";\r
-var gsBgColor="#ffffff";\r
-var gsBgImage="";\r
-var goFont=null;\r
-var goHFont=null;\r
-\r
-var gsMargin="0pt";\r
-var gsIndent="15pt";\r
-var gsABgColor="#cccccc";\r
-\r
-var giBookClose="";\r
-var giBookOpen="";\r
-var giBookItem="";\r
-var giURLItem="";\r
-var giNewBookClose="";\r
-var giNewBookOpen="";\r
-var giNewBookItem="";\r
-var giNewURLItem="";\r
-var gnImages=0;\r
-var gnLoadedImages=0;\r
-var gaImgs=new Array();\r
-var gbLoadData=false;\r
-var gobj=null;\r
-var gaTocsNs61Fix=null;\r
-var gbWhTHost=false;\r
-var gBookItems=new Array();\r
-var gInSync=false;\r
-\r
-function setBackground(sBgImage)\r
-{\r
- gsBgImage=sBgImage;\r
-}\r
-\r
-function setBackgroundcolor(sBgColor)\r
-{\r
- gsBgColor=sBgColor;\r
-}\r
-\r
-function setFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
-{\r
- var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
- if(sType=="Normal") goFont=vFont;\r
- else if(sType=="Hover") goHFont=vFont;\r
-}\r
-\r
-function setActiveBgColor(sBgColor){gsABgColor=sBgColor;}\r
-\r
-function setMargin(sMargin){gsMargin=sMargin;}\r
-\r
-function setIndent(sIndent){gsIndent=sIndent;}\r
-\r
-function setIcon(sType,sURL)\r
-{\r
- if(sType=="BookOpen")\r
- giBookOpen=sURL;\r
- else if(sType=="BookClose")\r
- giBookClose=sURL;\r
- else if(sType=="Item")\r
- giBookItem=sURL;\r
- else if(sType=="RemoteItem")\r
- giURLItem=sURL;\r
- else if(sType=="NewBookClose")\r
- giNewBookClose=sURL;\r
- else if(sType=="NewBookOpen")\r
- giNewBookOpen=sURL;\r
- else if(sType=="NewItem")\r
- giNewBookItem=sURL;\r
- else if(sType=="NewRemoteItem")\r
- giNewURLItem=sURL; \r
-}\r
-\r
-function bookItem(sTarget, sURL)\r
-{\r
- if (sTarget)\r
- this.sTarget=sTarget;\r
- else\r
- this.sTarget="bsscright";\r
- this.sURL=sURL;\r
-}\r
-\r
-function addBookItem(sBookId, sTarget, sURL)\r
-{\r
- gBookItems[sBookId] = new bookItem(sTarget, sURL); \r
-}\r
-\r
-function tocChunk(sPPath,sDPath)\r
-{\r
- this.sPPath=sPPath;\r
- this.sDPath=sDPath;\r
- this.nMI=-1;\r
- this.aTocs=null;\r
-}\r
-\r
-function addTocChunk(sPPath,sDPath)\r
-{\r
- var oChunk=new tocChunk(sPPath,sDPath);\r
- gaTocs[gaTocs.length]=oChunk;\r
- return oChunk;\r
-}\r
-\r
-function isHSLoad(nIdx)\r
-{\r
- for(var i=0;i<gaHSLoad.length;i++){\r
- if(gaHSLoad[i]==nIdx)\r
- return true;\r
- }\r
- return false;\r
-}\r
-\r
-function setHSLoad(nIdx)\r
-{\r
- if(!isHSLoad(nIdx))\r
- {\r
- var len=gaHSLoad.length;\r
- for(var i=0;i<len;i++){\r
- if(gaHSLoad[i]==-1)\r
- {\r
- gaHSLoad[i]=nIdx;\r
- return;\r
- }\r
- }\r
- gaHSLoad[len]=nIdx;\r
- }\r
-}\r
-\r
-function setHSUnLoad(nIdx)\r
-{\r
- if(isHSLoad(nIdx))\r
- {\r
- for(var i=0;i<gaHSLoad.length;i++){\r
- if(gaHSLoad[i]==nIdx)\r
- {\r
- gaHSLoad[i]=-1;\r
- return;\r
- }\r
- }\r
- }\r
-}\r
-\r
-function cancelLoading(nIdx)\r
-{\r
- var oObj=getElement(getCBId(nIdx));\r
- if(oObj)\r
- {\r
- oObj.innerHTML="";\r
- setHSUnLoad(nIdx)\r
- ExpandIt(nIdx);\r
- }\r
-}\r
-\r
-function cancelAll()\r
-{\r
- var eLoadingDivs=getElement(gsLoadingDivID);\r
- if(eLoadingDivs)\r
- cancelHSLoading(eLoadingDivs);\r
-}\r
-\r
-function cancelHSLoading(eLoadingDiv)\r
-{\r
- var eParent=eLoadingDiv.parentElement;\r
- if(eParent){\r
- var sId=eParent.id;\r
- sId=sId.substring(5);\r
- var nIdx=parseInt(sId);\r
- if(!isNaN(nIdx))\r
- cancelLoading(nIdx)\r
- }\r
-}\r
-\r
-function checkBookItem(nIdx)\r
-{\r
- if(!gInSync)\r
- {\r
- var sBookId=getBookId(nIdx);\r
- if(gBookItems[sBookId])\r
- {\r
- window.open(gBookItems[sBookId].sURL,gBookItems[sBookId].sTarget);\r
- }\r
- }\r
-}\r
-\r
-function insertBookItems(nIdx,num)\r
-{\r
- checkBookItem(nIdx);\r
- var sChildBookId=getCBId(nIdx);\r
- var eChildDiv=getElement(sChildBookId);\r
- if(eChildDiv){\r
- if((eChildDiv.childNodes&&eChildDiv.childNodes.length==0)||\r
- (eChildDiv.all&&eChildDiv.all.length==0)){\r
- var sHTML=writeBookItems(nIdx,num);\r
- eChildDiv.innerHTML=sHTML;\r
- setTimeout("syncInit()",1);\r
- }\r
- }\r
- ExpandIt(nIdx);\r
-}\r
-\r
-function writeBook(nIdx,bLocal)\r
-{\r
- var sIcon=getBookImage(nIdx,true);\r
- var sName=_textToHtml(getItemName(nIdx));\r
- sIcon=_textToHtml_nonbsp(sIcon);\r
- \r
- var sHTML="<div id=\""+getPBId(nIdx)+"\" class=parent>";\r
- sHTML+="<p><nobr><a id=\""+getBookId(nIdx)+"\" href=\"javascript:void(0);\" onfocus=\"markBook("+nIdx+");\" onclick=\"";\r
-\r
- if(getItemType(nIdx)==1)\r
- sHTML+="insertBookItems("+nIdx+", "+getItemContentsNum(nIdx);\r
- else\r
- sHTML+="tocExpandHelpSet("+nIdx+","+bLocal;\r
- sHTML+=");return false;\" title=\""+sName+"\"><img alt=\"Book\" name=\""+getBId(nIdx)+"\" src=\""+sIcon+"\" border=0 align=\"absmiddle\">";\r
- var sURL=_textToHtml_nonbsp(getItemURL(nIdx));\r
- if(sURL!="")\r
- addBookItem(getBookId(nIdx),_textToHtml_nonbsp(getTopicTarget(nIdx)),sURL);\r
- sHTML+=" "+sName+"</a></nobr></p></div><div id=\""+getCBId(nIdx)+"\" class=child></div>";\r
- return sHTML;\r
-}\r
-\r
-function getBookId(nIdx){return "B_"+nIdx;}\r
-\r
-function getItemId(nIdx){return "I_"+nIdx;}\r
-\r
-function markBook(nIdx)\r
-{\r
- var obj=getElement(getItemId(nIdx));\r
- if(obj==null)\r
- obj=getElement(getBookId(nIdx));\r
- if(gbNav6)\r
- {\r
- gobj=obj;\r
- setTimeout("delayMarkObj();",1);\r
- }\r
- else\r
- markObj(obj);\r
-}\r
-\r
-function delayMarkObj()\r
-{\r
- if(gobj)\r
- {\r
- markObj(gobj);\r
- gobj=null;\r
- }\r
-}\r
-\r
-function markObj(obj)\r
-{\r
- if(obj!=null)\r
- {\r
- HighLightElement(obj,gsABgColor,"transparent");\r
- var sPath=calTocPath(obj);\r
- if(gsCTPath!=sPath)\r
- gsCTPath=sPath;\r
- }\r
-}\r
-\r
-function markItem(nIdx)\r
-{\r
- var obj=getElement(getItemId(nIdx));\r
- if(gbNav6)\r
- {\r
- gobj=obj;\r
- setTimeout("delayMarkObj();",1);\r
- }\r
- else\r
- markObj(getElement(getItemId(nIdx)));\r
-}\r
-\r
-function calTocPath(obj)\r
-{\r
- var sPath=getInnerText(obj).substring(1);\r
- var pObj=getParentNode(obj);\r
- do\r
- {\r
- while(pObj!=null&&!isCBId(pObj.id)) pObj=getParentNode(pObj);\r
- if(pObj!=null)\r
- {\r
- var nId=getIdByCBId(pObj.id);\r
- var sObj=getElement(getPBId(nId));\r
- if(sObj!=null)\r
- {\r
- var objs=getItemsByBook(sObj);\r
- for(var i=0;i<objs.length;i++)\r
- {\r
- var sText=getInnerText(objs[i]);\r
- \r
- if(sText.length!=0)\r
- {\r
- sPath=sText.substring(1)+gsPathSplit+sPath;\r
- break;\r
- }\r
- }\r
- }\r
- pObj=getParentNode(pObj);\r
- }\r
- }while(pObj!=null);\r
- return sPath;\r
-}\r
-\r
-function writeAnItem(nIdx)\r
-{\r
- var sTarget=_textToHtml_nonbsp(getTopicTarget(nIdx));\r
- var sIcon=getItemIcon(nIdx,0);\r
- if(sIcon=="")\r
- {\r
- var nItemType=getItemType(nIdx);\r
- if(nItemType&2)\r
- sIcon=getItemImage(nIdx,false);\r
- else\r
- sIcon=getItemImage(nIdx,true);\r
- }\r
- sIcon=_textToHtml_nonbsp(sIcon);\r
- var sName=_textToHtml(getItemName(nIdx));\r
- var sHTML="<p><nobr><a id=\""+getItemId(nIdx)+"\" onfocus=\"markItem("+nIdx+");\""\r
- var sAltString="";\r
- if (nItemType&2)\r
- sAltString="Page";\r
- else\r
- sAltString="Remote Page";\r
- if(sTarget!="")\r
- sHTML+="target=\""+sTarget+"\" ";\r
- sHTML+="href=\""+_textToHtml_nonbsp(getItemURL(nIdx))+"\" title=\""+sName+"\"><img alt=\""+sAltString+"\" src=\""+sIcon+"\" border=0 align=\"absmiddle\"> "+sName+"</a></nobr></p>";\r
- return sHTML;\r
-}\r
-\r
-function writeBookItems(nIdx,num)\r
-{\r
- var sHTML="";\r
- if(num>0){\r
- var nCIdx=0;\r
- do{\r
- nCIdx++;\r
- var i=nIdx+nCIdx;\r
- var nItemType=getItemType(i);\r
- if(nItemType==1){\r
- sHTML+=writeBook(i); \r
- nCIdx+=getItemContentsNum(i); \r
- }\r
- else if(nItemType==2||nItemType==16){\r
- sHTML+=writeAnItem(i);\r
- }else if(nItemType==4){\r
- sHTML+=writeBook(i,false);\r
- }else if(nItemType==8){\r
- sHTML+=writeBook(i,true);\r
- }\r
- }\r
- while(nCIdx<num);\r
- }\r
- return sHTML;\r
-}\r
-\r
-function tocExpandHelpSet(nIdx,bLocal)\r
-{\r
- checkBookItem(nIdx);\r
- cancelAll();\r
- if(isHSLoad(nIdx))\r
- ExpandIt(nIdx);\r
- else{\r
- setHSLoad(nIdx);\r
- var sSrc="";\r
- if(bLocal){\r
- var oChunk=getChunk(nIdx);\r
- if(oChunk)\r
- {\r
- goChunk=addTocChunk(oChunk.sPPath,oChunk.sDPath);\r
- sSrc=oChunk.aTocs[nIdx-oChunk.nMI].sRefURL;\r
- }\r
- }\r
- else{\r
- sSrc=getRefURL(nIdx);\r
- var nProj=getProject(sSrc);\r
- if(nProj!=-1)\r
- {\r
- goChunk=addTocChunk(gaProj[nProj].sPPath,gaProj[nProj].sDPath);\r
- sSrc=gaRoot[nProj].sToc;\r
- }\r
- else\r
- goChunk=null;\r
- }\r
- if(goChunk)\r
- {\r
- PrepareLoading(nIdx);\r
- ExpandIt(nIdx);\r
- gbLoadToc=false;\r
- loadData2(goChunk.sPPath+goChunk.sDPath+sSrc);\r
- }\r
- }\r
-}\r
-\r
-function getProject(sSrc)\r
-{\r
- for(var i=0;i<gaProj.length;i++)\r
- {\r
- if(isSamePath(getPath(sSrc),gaProj[i].sPPath))\r
- {\r
- return i;\r
- }\r
- }\r
- return -1;\r
-}\r
-\r
-function getPath(sPath)\r
-{\r
- if(sPath!="")\r
- {\r
- sPath=_replaceSlash(sPath);\r
- var nPosFile=sPath.lastIndexOf("/");\r
- sPath=sPath.substring(0,nPosFile+1);\r
- }\r
- return sPath;\r
-}\r
-\r
-function isSamePath(sPath1,sPath2)\r
-{\r
- return (sPath1.toLowerCase()==sPath2.toLowerCase());\r
-}\r
-\r
-function PrepareLoading(nIdx)\r
-{\r
- gnInsIdx=nIdx;\r
- if(!gsTP)\r
- {\r
- var oObj=getElement(getCBId(gnInsIdx));\r
- if(oObj)\r
- oObj.innerHTML=writeLoadingDiv(nIdx);\r
- }\r
-}\r
-\r
-function writeLoadingDiv(nIdx)\r
-{\r
- return"<div id=\""+gsLoadingDivID+"\" class=parent onclick=\"cancelLoading("+nIdx+");\" style=\"padding-left:4px;background-color:ivory;border-width:1;border-style:solid;border-color:black;width:150px;\">"+gsLoadingMsg+"</div>";\r
-}\r
-\r
-function getItemName(nIdx)\r
-{\r
- var oChunk=getChunk(nIdx);\r
- if(oChunk)\r
- return oChunk.aTocs[nIdx-oChunk.nMI].sItemName;\r
- else\r
- return null;\r
-}\r
-\r
-function getItemContentsNum(nIdx)\r
-{\r
- var oChunk=getChunk(nIdx);\r
- if(oChunk)\r
- return oChunk.aTocs[nIdx-oChunk.nMI].nContents;\r
- else\r
- return null;\r
-}\r
-\r
-function getItemType(nIdx)\r
-{\r
- var oChunk=getChunk(nIdx);\r
- if(oChunk)\r
- return oChunk.aTocs[nIdx-oChunk.nMI].nType;\r
- else\r
- return 0;\r
-}\r
-\r
-function getItemURL(nIdx)\r
-{\r
- var oChunk=getChunk(nIdx);\r
- if(oChunk)\r
- {\r
- var sPath=oChunk.aTocs[nIdx-oChunk.nMI].sItemURL;\r
- if(!(sPath==null||sPath==""))\r
- {\r
- return _getFullPath(oChunk.sPPath,sPath);\r
- }\r
- }\r
- return "";\r
-}\r
-\r
-function getRefURL(nIdx)\r
-{\r
- var oChunk=getChunk(nIdx);\r
- if(oChunk)\r
- {\r
- var sPath=oChunk.aTocs[nIdx-oChunk.nMI].sRefURL;\r
- if(!(sPath==null||sPath==""))\r
- {\r
- return _getFullPath(oChunk.sPPath,sPath)\r
- }\r
- }\r
- return "";\r
-}\r
-\r
-function getTopicTarget(nIdx)\r
-{\r
- var oChunk=getChunk(nIdx);\r
- if(oChunk)\r
- {\r
- if(typeof(oChunk.aTocs[nIdx-oChunk.nMI].sTarget)!="undefined")\r
- return oChunk.aTocs[nIdx-oChunk.nMI].sTarget;\r
- }\r
- return "";\r
-}\r
-\r
-function getItemIcon(nIdx,nIconIdx)\r
-{\r
- var oChunk=getChunk(nIdx);\r
- if(oChunk)\r
- {\r
- if(typeof(oChunk.aTocs[nIdx-oChunk.nMI].sIconRef)!="undefined")\r
- {\r
- var sIconRef=oChunk.aTocs[nIdx-oChunk.nMI].sIconRef;\r
- var nIndex=sIconRef.indexOf(";");\r
- while(nIconIdx-->0&&nIndex!=-1)\r
- {\r
- sIconRef=sIconRef.substring(nIndex+1);\r
- nIndex=sIconRef.indexOf(";");\r
- }\r
- if(nIconIdx<0)\r
- {\r
- if(nIndex!=-1)\r
- sIconRef=sIconRef.substring(0,nIndex);\r
- return _getFullPath(oChunk.sPPath,sIconRef)\r
- }\r
- }\r
- }\r
- return "";\r
-}\r
-\r
-function TocWriteClassStyle()\r
-{\r
- var sStyle="<STYLE TYPE='text/css'>\n";\r
- if (gsBgImage)\r
- sStyle+="body {border-top:"+gsBgColor+" 1px solid;}\n";\r
- else\r
- sStyle+="body {border-top:black 1px solid;}\n";\r
- sStyle+="P {"+getFontStyle(goFont)+"margin-top:"+gsMargin+";margin-bottom:"+gsMargin+";}\n";\r
- sStyle+="DIV {margin-top:"+gsMargin+";margin-bottom:"+gsMargin+";}\n";\r
- sStyle+=".parent {margin-left:0pt;}\n";\r
- sStyle+=".child {display:none;margin-left:"+gsIndent+";}\n";\r
- sStyle+="A:link {"+getFontStyle(goFont)+"}\n";\r
- sStyle+="A:visited {"+getFontStyle(goFont)+"}\n";\r
- sStyle+="A:active {background-color:"+gsABgColor+";}\n";\r
- sStyle +="A:hover {"+getFontStyle(goHFont)+"}\n";\r
- sStyle+="</STYLE>";\r
- document.write(sStyle);\r
-}\r
-\r
-function TocWriteFixedWidth(bBegin,nWidth)\r
-{\r
- if((gbIE4)&&(gbMac)&&(!gbIE5)){\r
- if(bBegin)\r
- document.write("<table width="+nWidth+" border=0><tr><td>");\r
- else\r
- document.write("</td></tr></table>");\r
- }\r
-}\r
-\r
-function TocInitPage()\r
-{\r
- var tempColl=getItemsByBook(document.body);\r
- if(tempColl.length>0)\r
- tempColl[0].focus();\r
-}\r
-\r
-function getItemsFromObj(obj)\r
-{\r
- var aAnchor=new Array();\r
- var tempColl=getChildrenByTag(obj,"P");\r
- if(tempColl&&tempColl.length>0)\r
- {\r
- var anobr=new Array();\r
- for(var i=0;i<tempColl.length;i++)\r
- {\r
- var tempNobr=getChildrenByTag(tempColl[i],"NOBR");\r
- if(tempNobr&&tempNobr.length>0)\r
- {\r
- for(var j=0;j<tempNobr.length;j++)\r
- anobr[anobr.length]=tempNobr[j];\r
- }\r
- }\r
- for(var s=0;s<anobr.length;s++)\r
- {\r
- var tempAnchor=getChildrenByTag(anobr[s],"A");\r
- if(tempAnchor&&tempAnchor.length>0)\r
- {\r
- for(var u=0;u<tempAnchor.length;u++)\r
- aAnchor[aAnchor.length]=tempAnchor[u];\r
- }\r
- }\r
- }\r
- return aAnchor;\r
-}\r
-\r
-function getItemsByBook(obj)\r
-{\r
- var aAnchor=new Array();\r
- var aTAnchor=getItemsFromObj(obj);\r
- for(var i=0;i<aTAnchor.length;i++)\r
- {\r
- aAnchor[aAnchor.length]=aTAnchor[i];\r
- }\r
- var tempBook=getChildrenByTag(obj,"DIV");\r
- if(tempBook&&tempBook.length>0)\r
- {\r
- for(var j=0;j<tempBook.length;j++)\r
- {\r
- var aTAnchorDiv=getItemsFromObj(tempBook[j]);\r
- for(var s=0;s<aTAnchorDiv.length;s++)\r
- {\r
- aAnchor[aAnchor.length]=aTAnchorDiv[s];\r
- }\r
- }\r
- } \r
- return aAnchor;\r
-}\r
-\r
-function ExpandIt(nId)\r
-{\r
- if(!gsTP)\r
- ExpandIt2(nId,false);\r
-}\r
-\r
-function ExpandIt2(nId,bForceOpen)\r
-{\r
- if(gbIE4||gbNav6){\r
- var oC=TocExpand(nId,true,bForceOpen);\r
- var nNewScroll=document.body.scrollTop;\r
- if(oC.style.display=="block"){\r
- var nTop=oC.offsetTop;\r
- var nBottom=nTop+oC.offsetHeight;\r
- if(document.body.scrollTop+document.body.clientHeight<nBottom){\r
- nNewScroll=nBottom-document.body.clientHeight;\r
- }\r
- if(nBottom-nTop>document.body.clientHeight){\r
- nNewScroll=nTop-20;\r
- }\r
- }\r
- document.body.scrollTop=nNewScroll;\r
- }\r
-}\r
-\r
-function TocExpand(nId,bChangeImg,bForceOpen)\r
-{\r
- var oDiv=getElement(getCBId(nId));\r
- if(oDiv==null) return null;\r
-\r
- var whichIm=document.images[getBId(nId)];\r
- if((oDiv.style.display!="block")||bForceOpen){\r
- oDiv.style.display="block";\r
- if(bChangeImg){\r
- var sPath=getPath(whichIm.src);\r
- sPath=_getFullPath(sPath,getBookImage(nId,false));\r
- whichIm.src=sPath; \r
- }\r
- }else{\r
- oDiv.style.display="none";\r
- if(bChangeImg){\r
- var sPath=getPath(whichIm.src);\r
- sPath=_getFullPath(sPath,getBookImage(nId,true));\r
- whichIm.src=sPath;\r
- }\r
- if(gbMac&&gbIE5){\r
- this.parent.document.getElementById("tocIFrame").style.width="101%";\r
- this.parent.document.getElementById("tocIFrame").style.width="100%";\r
- }\r
- }\r
- return oDiv;\r
-}\r
-\r
-function getChunkId(n)\r
-{\r
- var nCandidate=-1;\r
- for(var i=0;i<gaTocs.length;i++){\r
- if(gaTocs[i].nMI<=n){\r
- nCandidate=i;\r
- }\r
- else\r
- break;\r
- }\r
- if(nCandidate!=-1&&gaTocs[nCandidate].nMI!=-1)\r
- return nCandidate;\r
- else\r
- return -1;\r
-}\r
-\r
-function getChunk(n)\r
-{\r
- if(gnCC!=-1&&gaTocs[gnCC].nMI<=n&&(gnCC==gaTocs.length-1||\r
- gaTocs[gnCC+1].nMI>n))\r
- { \r
- return gaTocs[gnCC];\r
- }\r
- else{\r
- gnCC=getChunkId(n);\r
- if(gnCC!=-1)\r
- return gaTocs[gnCC];\r
- else\r
- return null;\r
- }\r
-}\r
-\r
-function getBookImage(nIdx,bClosed)\r
-{\r
- var nIdx=bClosed?0:1;\r
- var sIcon=getItemIcon(nIdx,nIdx);\r
- if(sIcon=="")\r
- if(bClosed)\r
- sIcon=giBookClose;\r
- else\r
- sIcon=giBookOpen;\r
- return _getFullPath(gaProj[0].sPPath,sIcon);\r
-}\r
-\r
-function getItemImage(nIdx,bRemote)\r
-{\r
- var sIcon=getItemIcon(nIdx,0);\r
- if(sIcon=="")\r
- if(bRemote)\r
- sIcon=giURLItem;\r
- else\r
- sIcon=giBookItem;\r
- return _getFullPath(gaProj[0].sPPath,sIcon);\r
-}\r
-\r
-function expandToc(oObj,sRest,aIdList)\r
-{\r
- var len=aIdList.length;\r
- var nPos=sRest.indexOf(gsPathSplit);\r
- if(nPos!=-1)\r
- {\r
- sPart=sRest.substring(0,nPos);\r
- sRest=sRest.substring(nPos+1);\r
- }\r
- else\r
- {\r
- sPart=sRest;\r
- var aTagAs=getItemsByBook(oObj);\r
- for(var s=0;s<aTagAs.length;s++)\r
- {\r
- var sText=getInnerText(aTagAs[s]);\r
- if(sText.length>0)\r
- sText=sText.substring(1);\r
- if(sText==sPart)\r
- {\r
- aIdList[len]=aTagAs[s];\r
- return 1;\r
- }\r
- }\r
- return 0;\r
- }\r
- \r
- var aChildren=getChildrenByTag(oObj,"DIV");\r
- for(var i=0;i<aChildren.length;i++)\r
- {\r
- var sPId=aChildren[i].id;\r
- if(!isPBId(sPId))\r
- continue;\r
- var sText=getInnerText(aChildren[i]);\r
- if(sText.substring(1)!=sPart)\r
- continue;\r
- aIdList[len]=getIdByPBId(sPId);\r
- var sCId=getCBId(aIdList[len]);\r
- var oCObj=getElement(sCId);\r
- if(oCObj)\r
- {\r
- if(oCObj.innerHTML=="")\r
- {\r
- var obj=getItemsByBook(aChildren[i]);\r
- if(obj.length>0)\r
- {\r
- if(gbNav6)\r
- {\r
- var sCommand=obj[0].getAttribute("onClick");\r
- var nCommand=sCommand.indexOf(";");\r
- sCommand=sCommand.substring(0,nCommand);\r
- setTimeout(sCommand,1);\r
- }\r
- else\r
- obj[0].click();\r
- }\r
- return -1;\r
- }\r
- var nRet=expandToc(oCObj,sRest,aIdList);\r
- if(nRet)\r
- return nRet;\r
- }\r
- }\r
- aIdList.length=len;\r
- return 0;\r
-}\r
-\r
-function getIdByPBId(sPId)\r
-{\r
- return parseInt(sPId.substring(5,sPId.length-6));\r
-}\r
-\r
-function getIdByCBId(sCId)\r
-{\r
- return parseInt(sCId.substring(5,sCId.length-5));\r
-}\r
-\r
-function isPBId(sId)\r
-{\r
- return (sId&&sId.indexOf("Book_")==0&&sId.lastIndexOf("Parent")==sId.length-6);\r
-}\r
-\r
-function isCBId(sId)\r
-{\r
- return (sId&&sId.indexOf("Book_")==0&&sId.lastIndexOf("Child")==sId.length-5);\r
-}\r
-\r
-function getBId(nIdx)\r
-{\r
- return "Book_"+nIdx;\r
-}\r
-\r
-function getPBId(nIdx)\r
-{\r
- return getBId(nIdx)+"Parent";\r
-}\r
-\r
-function getCBId(nIdx)\r
-{\r
- return getBId(nIdx)+"Child";\r
-}\r
-\r
-function getClosestTocPath(aPaths)\r
-{\r
- var nMaxSimilarity=0;\r
- var nThatIndex=-1;\r
- var sPath=null;\r
- if(aPaths.length==0) return sPath;\r
- for(var i=0;i<aPaths.length;i++)\r
- {\r
- var nSimilarity=comparePath(gsCTPath,aPaths[i]);\r
- if(nSimilarity>nMaxSimilarity)\r
- {\r
- nMaxSimilarity=nSimilarity;\r
- nThatIndex=i;\r
- }\r
- }\r
- if(nThatIndex!=-1)\r
- {\r
- sPath=aPaths[nThatIndex];\r
- }\r
- else\r
- {\r
- sPath=aPaths[0];\r
- }\r
- return sPath;\r
-}\r
-\r
-function comparePath(sPath1,sPath2)\r
-{\r
- var nMaxSimilarity=0;\r
- var nStartPos1=0;\r
- var nPos1=-1;\r
- var nStartPos2=0;\r
- var nPos2=-1;\r
- do{\r
- var sCheck1=null;\r
- var sCheck2=null;\r
- nPos1=sPath1.indexOf(gsPathSplit,nStartPos1);\r
- if(nPos1!=-1)\r
- {\r
- sCheck1=sPath1.substring(nStartPos1,nPos1);\r
- nStartPos1=nPos1+1;\r
- }\r
- else\r
- {\r
- sCheck1=sPath1.substring(nStartPos1);\r
- nStartPos1=-1;\r
- }\r
- nPos2=sPath2.indexOf(gsPathSplit,nStartPos2);\r
- if(nPos1!=-1)\r
- {\r
- sCheck2=sPath2.substring(nStartPos2,nPos2);\r
- nStartPos2=nPos2+1;\r
- }\r
- else\r
- {\r
- sCheck2=sPath2.substring(nStartPos2);\r
- nStartPos2=-1;\r
- }\r
- if(sCheck1==sCheck2)\r
- nMaxSimilarity++;\r
- else\r
- break;\r
- }while(nStartPos1!=-1&&nStartPos2!=-1);\r
- return nMaxSimilarity;\r
-}\r
-\r
-function getTocPaths(oTopicParam)\r
-{\r
- var aRelTocPaths=oTopicParam.aPaths;\r
- var aPaths=new Array();\r
- for(var i=0;i<gaProj.length;i++)\r
- {\r
- if(isSamePath(gaProj[i].sPPath,oTopicParam.sPPath))\r
- {\r
- for(var j=0;j<aRelTocPaths.length;j++)\r
- {\r
- aPaths[j]=gaRoot[i].sRPath+aRelTocPaths[j];\r
- aPaths[j]=aPaths[j].substring(1);\r
- }\r
- break;\r
- }\r
- }\r
- return aPaths;\r
-}\r
-\r
-function syncInit()\r
-{\r
- if(gsTP)\r
- {\r
- gInSync=true;\r
- var obj=document.body;\r
- var aIdList=new Array();\r
- var nRet=expandToc(obj,gsTP,aIdList);\r
- if(nRet!=-1)\r
- {\r
- if(nRet==1)\r
- {\r
- if(aIdList.length)\r
- for(var i=0;i<aIdList.length-1;i++)\r
- {\r
- ExpandIt2(aIdList[i],true);\r
- }\r
- gsCTPath=gsTP;\r
- if(!gbIE55)\r
- aIdList[aIdList.length-1].focus();\r
- else\r
- HighLightElement(aIdList[aIdList.length-1],gsABgColor,"transparent");\r
- }\r
- var aPaths=gaBTPs;\r
- gsTP=null;\r
- gaBTPs=null;\r
- if(aPaths!=null)\r
- {\r
- var sPath=getClosestTocPath(aPaths);\r
- if(sPath!=null)\r
- { \r
- gsTP=sPath; \r
- setTimeout("syncInit()",1);\r
- }\r
- }\r
- }\r
- gInSync=false;\r
- }\r
-}\r
-\r
-function loadToc()\r
-{\r
- if(!gbReady)\r
- {\r
- var oResMsg=new whMessage(WH_MSG_GETPROJINFO,this,1,null);\r
- if(SendMessage(oResMsg)&&oResMsg.oParam)\r
- {\r
- var oProj=oResMsg.oParam;\r
- gaProj=oProj.aProj;\r
- gbXML=oProj.bXML;\r
- load1B1();\r
- }\r
- }\r
-}\r
-\r
-function load1B1()\r
-{\r
- if(gnLT+1<gaProj.length)\r
- {\r
- for(var i=gnLT+1;i<gaProj.length;i++)\r
- {\r
- if(gaProj[i].sToc!=null&&gaProj[i].sToc!="")\r
- {\r
- gbLoadToc=true;\r
- gnLT=i;\r
- setTimeout("loadTocInfo()",1);\r
- return true;\r
- }\r
- }\r
- }\r
- return false;\r
-}\r
-\r
-function loadTocInfo()\r
-{\r
- loadData2(gaProj[gnLT].sPPath+gaProj[gnLT].sDPath+gaProj[gnLT].sToc);\r
-}\r
-\r
-function loadData2(sFile)\r
-{\r
- if(gbXML)\r
- loadDataXML(sFile);\r
- else\r
- loadData(sFile);\r
-}\r
-\r
-function projReady(sRoot,aProj)\r
-{\r
- if(gaRoot.length<=gnLT||!gaRoot[gnLT])\r
- gaRoot[gnLT]=new Object();\r
- gaRoot[gnLT].sToc=sRoot;\r
- \r
- if(gnLT==0)\r
- gaRoot[gnLT].sRPath=gsPathSplit;\r
-\r
- updatePTPath(gnLT,aProj);\r
-\r
- if(!((gnLT+1<gaProj.length)&&load1B1()))\r
- {\r
- gbReady=true;\r
- if(gbIE4)\r
- setTimeout("loadImages();",1);\r
- else\r
- setTimeout("loadTData();",1);\r
- }\r
-}\r
-\r
-function loadTData()\r
-{\r
- if(gaProj[0].sToc!="")\r
- {\r
- goChunk=addTocChunk(gaProj[0].sPPath,gaProj[0].sDPath);\r
- gbLoadToc=false;\r
- loadData2(gaProj[0].sPPath+gaProj[0].sDPath+gaRoot[0].sToc);\r
- }\r
-}\r
-\r
-function updatePTPath(n,aProj)\r
-{\r
- if(aProj)\r
- {\r
- for(var i=0;i<aProj.length;i++)\r
- {\r
- var sFullPath=_getFullPath(gaProj[n].sPPath,aProj[i].sPPath);\r
- for(var j=0;j<gaProj.length;j++)\r
- {\r
- if(isSamePath(sFullPath,gaProj[j].sPPath))\r
- {\r
- if(gaRoot.length<=j||!gaRoot[j])\r
- gaRoot[j]=new Object();\r
- if(!gaRoot[j].sRPath)\r
- {\r
- if(gaRoot[n].sRPath)\r
- gaRoot[j].sRPath=gaRoot[n].sRPath+aProj[i].sRPath;\r
- else\r
- gaRoot[j].sRPath=aProj[i].sRPath;\r
- }\r
- break;\r
- }\r
- }\r
- }\r
- }\r
-}\r
-\r
-function putDataXML(xmlDoc,sDocPath)\r
-{\r
- if(gbLoadToc)\r
- {\r
- var tocNode=xmlDoc.getElementsByTagName("toc")[0];\r
- if(tocNode)\r
- {\r
- var sRoot=tocNode.getAttribute("root");\r
- var rmtProject=tocNode.getElementsByTagName("project");\r
- var aRProj=new Array();\r
- if(rmtProject.length>0)\r
- {\r
- for(var i=0;i<rmtProject.length;i++)\r
- {\r
- aRProj[i]=new Object();\r
- aRProj[i].sPPath=rmtProject[i].getAttribute("url");\r
- aRProj[i].sRPath=rmtProject[i].getAttribute("path");\r
- }\r
- }\r
- projReady(sRoot,aRProj);\r
- }\r
- }\r
- else\r
- {\r
- var chunkNode=xmlDoc.getElementsByTagName("tocdata")[0];\r
- if(chunkNode)\r
- {\r
- var aToc=new Array();\r
- processBook(chunkNode,aToc);\r
- putData(aToc);\r
- }\r
- }\r
-}\r
-\r
-function processBook(node,aToc)\r
-{\r
- var i=0;\r
- var entry=null;\r
- var prevEntry=null;\r
- var oChild=node.firstChild;\r
- do{\r
- if(oChild)\r
- {\r
- if(oChild.nodeName.indexOf("#")!=0)\r
- {\r
- var sName=oChild.getAttribute("name");\r
- var sURL=oChild.getAttribute("url");\r
- var sRef=oChild.getAttribute("ref");\r
- var sTarget=oChild.getAttribute("target");\r
- var sIcons=oChild.getAttribute("images");\r
- var item=new Object();\r
- item.sItemName=sName;\r
- if(sTarget)\r
- item.sTarget=sTarget;\r
- if(sIcons)\r
- item.sIconRef=sIcons;\r
- if(sURL==null) sURL="";\r
- item.sItemURL=sURL;\r
- \r
- if(oChild.nodeName=="book")\r
- {\r
- item.nType=1;\r
- aToc[aToc.length]=item;\r
- var nCurrPos=aToc.length;\r
- processBook(oChild,aToc);\r
- item.nContents=aToc.length-nCurrPos;\r
- }\r
- else if(oChild.nodeName=="item")\r
- {\r
- item.nType=2;\r
- item.nContents=0;\r
- aToc[aToc.length]=item;\r
- }\r
- else if(oChild.nodeName=="remoteitem")\r
- {\r
- item.nType=16;\r
- item.nContents=0;\r
- aToc[aToc.length]=item;\r
- }\r
- else if(oChild.nodeName=="project")\r
- {\r
- item.nType=4;\r
- item.sRefURL=sRef;\r
- item.nContents=0;\r
- aToc[aToc.length]=item;\r
- }\r
- else if(oChild.nodeName=="chunk")\r
- {\r
- item.nType=8;\r
- item.sRefURL=sRef;\r
- item.nContents=0;\r
- aToc[aToc.length]=item;\r
- }\r
- }\r
- }\r
- else\r
- break;\r
- oChild=oChild.nextSibling;\r
- }while(true);\r
-}\r
-\r
-function putData(aTocs)\r
-{\r
- gaTocsNs61Fix=aTocs;\r
- setTimeout("realPutData();",1);\r
-}\r
-\r
-function realPutData()\r
-{\r
- var aTocs=gaTocsNs61Fix;\r
- if(!aTocs) return;\r
- if(goChunk)\r
- {\r
- var n=gnMinIdx;\r
- goChunk.nMI=gnMinIdx;\r
- goChunk.aTocs=aTocs;\r
- gnMinIdx+=aTocs.length;\r
- if(gnInsIdx!=-1)\r
- {\r
- var oObj=getElement(getCBId(gnInsIdx));\r
- if(oObj)\r
- {\r
- oObj.innerHTML=writeBookItems(n-1,aTocs.length);\r
- setTimeout("syncInit()",1);\r
- }\r
- }\r
- else{\r
- document.body.insertAdjacentHTML("beforeEnd",writeBookItems(n-1,aTocs.length));\r
- var oParam=new Object();\r
- oParam.oTocInfo=null;\r
- var oMsg=new whMessage(WH_MSG_GETTOCPATHS,this,1,oParam);\r
- if(SendMessage(oMsg))\r
- {\r
- if (oMsg.oParam.oTocInfo)\r
- syncWithPaths(oMsg.oParam.oTocInfo);\r
- }\r
- } \r
- }\r
-}\r
-\r
-function syncWithPaths(oTopicParam)\r
-{\r
- var aPaths=getTocPaths(oTopicParam);\r
- if(gsTP)\r
- gaBTPs=aPaths;\r
- else{\r
- var sPath=getClosestTocPath(aPaths);\r
- if(sPath!=null)\r
- {\r
- gsTP=sPath;\r
- setTimeout("syncInit()",1);\r
- }\r
- }\r
-}\r
-\r
-function window_OnLoad()\r
-{\r
- if(gsBgImage&&gsBgImage.length>0)\r
- {\r
- document.body.background=gsBgImage;\r
- }\r
- if(gsBgColor&&gsBgColor.length>0)\r
- {\r
- document.body.bgColor=gsBgColor;\r
- }\r
- loadToc();\r
- var oMsg=new whMessage(WH_MSG_SHOWTOC,this,1,null)\r
- SendMessage(oMsg);\r
-}\r
-\r
-function loadImages()\r
-{\r
- if(giBookClose)\r
- {\r
- gaImgs[gnImages]=giBookClose;\r
- gnImages++;\r
- } \r
- if(giBookOpen)\r
- {\r
- gaImgs[gnImages]=giBookOpen;\r
- gnImages++;\r
- } \r
- if(giBookItem)\r
- {\r
- gaImgs[gnImages]=giBookItem;\r
- gnImages++;\r
- } \r
- if(giURLItem)\r
- {\r
- gaImgs[gnImages]=giURLItem;\r
- gnImages++;\r
- } \r
- if(giNewBookClose)\r
- {\r
- gaImgs[gnImages]=giNewBookClose;\r
- gnImages++;\r
- } \r
- if(giNewBookOpen)\r
- {\r
- gaImgs[gnImages]=giNewBookOpen;\r
- gnImages++;\r
- } \r
- if(giNewBookItem)\r
- {\r
- gaImgs[gnImages]=giNewBookItem;\r
- gnImages++;\r
- } \r
- if(giNewURLItem)\r
- {\r
- gaImgs[gnImages]=giNewURLItem;\r
- gnImages++;\r
- }\r
- if(gnImages>0)\r
- {\r
- setTimeout("loadDataAfter();",1000);\r
- loadImage(gaImgs[0]);\r
- }\r
- else\r
- loadDataAfter();\r
-}\r
-\r
-function loadImage(sURL)\r
-{\r
- var oImg=new Image();\r
- oImg.onload=checkImageLoading;\r
- oImg.onerror=errorImageLoading;\r
- oImg.src=_getFullPath(gaProj[0].sPPath,sURL);\r
-}\r
-\r
-function loadDataAfter()\r
-{\r
- if(!gbLoadData)\r
- {\r
- gbLoadData=true;\r
- loadTData();\r
- }\r
-}\r
-\r
-function errorImageLoading()\r
-{\r
- gnLoadedImages++;\r
- if(gnImages==gnLoadedImages)\r
- loadDataAfter();\r
- else\r
- loadImage(gaImgs[gnLoadedImages]); \r
-}\r
-\r
-function checkImageLoading()\r
-{\r
- gnLoadedImages++;\r
- if(gnImages==gnLoadedImages)\r
- loadDataAfter();\r
- else\r
- loadImage(gaImgs[gnLoadedImages]); \r
-}\r
-\r
-function window_unload()\r
-{\r
- UnRegisterListener2(this,WH_MSG_PROJECTREADY);\r
- UnRegisterListener2(this,WH_MSG_SYNCTOC);\r
- UnRegisterListener2(this,WH_MSG_SHOWTOC);\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
- if(oMsg)\r
- {\r
- var nMsgId=oMsg.nMessageId;\r
- if(nMsgId==WH_MSG_PROJECTREADY)\r
- {\r
- loadToc();\r
- }\r
- else if(nMsgId==WH_MSG_SYNCTOC)\r
- {\r
- if(gbReady)\r
- {\r
- syncWithPaths(oMsg.oParam);\r
- }\r
- }\r
- else if(nMsgId==WH_MSG_SHOWTOC)\r
- {\r
- if(!gbNav6)\r
- document.body.focus();\r
- }\r
- }\r
- return true;\r
-}\r
-\r
-if (window.gbWhUtil&&window.gbWhVer&&window.gbWhMsg&&window.gbWhProxy)\r
-{\r
- RegisterListener2(this,WH_MSG_PROJECTREADY);\r
- RegisterListener2(this,WH_MSG_SYNCTOC);\r
- RegisterListener2(this,WH_MSG_SHOWTOC);\r
- goFont=new whFont("Verdana","8pt","#000000","normal","normal","none");\r
- goHFont=new whFont("Verdana","8pt","#007f00","normal","normal","underline");\r
-\r
- window.onload=window_OnLoad;\r
- window.onbeforeunload=window_BUnload;\r
- window.onunload=window_unload;\r
- gbWhTHost=true;\r
-}\r
-else\r
- document.location.reload();\r
-\r
+++ /dev/null
-var gsPPath = "";\r
-var gaPaths = new Array();\r
-var gaAvenues = new Array();\r
-\r
-var goFrame = null;\r
-var gsStartPage = "";\r
-var gsRelCurPagePath = "";\r
-var gsSearchFormHref = "";\r
-var gnTopicOnly = -1;\r
-var gnOutmostTopic = -1;\r
-\r
-var BTN_TEXT=1;\r
-var BTN_IMG=2;\r
-\r
-var goSync = null;\r
-\r
-var goShow = null;\r
-var goHide = null;\r
-\r
-var goPrev = null;\r
-var goNext = null;\r
-var gnForm = 0;\r
-var goShowNav = null;\r
-var goHideNav = null;\r
-\r
-var goWebSearch = null;\r
-\r
-var gsBtnStyle = "";\r
-var gaButtons = new Array();\r
-var gaTypes = new Array();\r
-var whtopic_foldUnload = null;\r
-var gbWhTopic=false;\r
-var gbCheckSync=false;\r
-var gbSyncEnabled=false;\r
-\r
-function setButtonFont(sType, sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration)\r
-{\r
- var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration);\r
- gsBtnStyle += ".whtbtn" + sType + "{"+getFontStyle(vFont) + "}";\r
-}\r
-\r
-function writeBtnStyle()\r
-{\r
- if (gaButtons.length > 0)\r
- {\r
- if (gsBtnStyle.length > 0)\r
- {\r
- var sStyle = "<style type='text/css'>";\r
- sStyle+= gsBtnStyle + "</style>";\r
- document.write(sStyle);\r
- }\r
- }\r
-}\r
-\r
-function button(sText, nWidth, nHeight)\r
-{\r
- this.sText = sText;\r
- this.nWidth = nWidth;\r
- this.nHeight = nHeight;\r
- \r
- this.aImgs = new Array();\r
- var i = 0;\r
- while (button.arguments.length > i + 3)\r
- {\r
- this.aImgs[i] = button.arguments[3 + i];\r
- i ++;\r
- }\r
-}\r
-\r
-// project info\r
-function setRelStartPage(sPath)\r
-{\r
- if (gsPPath.length == 0)\r
- {\r
- gsPPath = _getFullPath(_getPath(document.location.href), _getPath(sPath));\r
- gsStartPage = _getFullPath(_getPath(document.location.href), sPath);\r
- gsRelCurPagePath = _getRelativeFileName(gsStartPage, document.location.href);\r
- }\r
-}\r
-\r
-function getImage(oImage, sType)\r
-{\r
- var sImg="";\r
- if (oImage && oImage.aImgs && (oImage.aImgs.length > 0))\r
- {\r
- sImg+="<img alt=\""+ sType + "\" src=\"" + oImage.aImgs[0] + "\"";\r
- if (oImage.nWidth > 0)\r
- sImg+=" width=" + oImage.nWidth;\r
- if (oImage.nHeight > 0)\r
- sImg+=" height=" + oImage.nHeight;\r
- sImg+=" border=no>";\r
- }\r
- return sImg;\r
-}\r
-\r
-function addTocInfo(sTocPath)\r
-{\r
- gaPaths[gaPaths.length] = sTocPath;\r
-}\r
-\r
-function addAvenueInfo(sName, sPrev, sNext)\r
-{\r
- gaAvenues[gaAvenues.length] = new avenueInfo(sName, sPrev, sNext); \r
-}\r
-\r
-function addButton(sType, nStyle, sText, sHref, sOnClick, sOnMouseOver, sOnLoad, nWidth, nHeight, sImg1, sImg2, sImg3)\r
-{\r
- var sButton = "";\r
- var nBtn=gaButtons.length;\r
- if (sType == "prev")\r
- {\r
- if (canGo(false))\r
- {\r
- var sTitle = "Previous Topic";\r
- goPrev = new button(sText, nWidth, nHeight, sImg1, sImg2, sImg3);\r
- sButton = "<a title=\"" + sTitle + "\" class=\"whtbtnprev\" href=\"javascript:void(0);\" onclick=\"goAvenue(false);return false;\">";\r
- if (nStyle == BTN_TEXT)\r
- sButton += goPrev.sText;\r
- else\r
- sButton += getImage(goPrev, sTitle);\r
- sButton += "</a>";\r
- }\r
- }\r
- else if (sType == "next")\r
- {\r
- if (canGo(true))\r
- {\r
- var sTitle = "Next Topic";\r
- goNext = new button(sText, nWidth, nHeight, sImg1, sImg2, sImg3);\r
- sButton = "<a title=\"" + sTitle + "\" class=\"whtbtnnext\" href=\"javascript:void(0);\" onclick=\"goAvenue(true);return false;\">";\r
- if (nStyle == BTN_TEXT)\r
- sButton += goNext.sText;\r
- else\r
- sButton += getImage(goNext, sTitle);\r
- sButton += "</a>";\r
- }\r
- }\r
- else if (sType == "show")\r
- {\r
- if (isTopicOnly())\r
- {\r
- var sTitle = "Show Navigation Component";\r
- goShow = new button(sText, nWidth, nHeight, sImg1, sImg2, sImg3);\r
- sButton = "<a title=\"" + sTitle + "\" class=\"whtbtnshow\" href=\"javascript:void(0);\" onclick=\"show();return false;\">";\r
- if (nStyle == BTN_TEXT)\r
- sButton += goShow.sText;\r
- else\r
- sButton += getImage(goShow, sTitle);\r
- sButton += "</a>";\r
- }\r
- }\r
- else if (sType == "hide")\r
- {\r
- if (!isTopicOnly())\r
- {\r
- var sTitle = "Hide Navigation Component";\r
- goHide = new button(sText, nWidth, nHeight, sImg1, sImg2, sImg3);\r
- sButton = "<a title=\"" + sTitle + "\" class=\"whtbtnhide\" href=\"javascript:void(0);\" onclick=\"hide();return false;\">";\r
- if (nStyle == BTN_TEXT)\r
- sButton += goHide.sText;\r
- else\r
- sButton += getImage(goHide, sTitle);\r
- sButton += "</a>";\r
- }\r
- }\r
- else if (sType == "shownav")\r
- {\r
- \r
- if (isShowHideEnable())\r
- {\r
- var sTitle = "Show Navigation Component";\r
- goShowNav = new button(sText, nWidth, nHeight, sImg1, sImg2, sImg3);\r
- sButton = "<a title=\"" + sTitle + "\" class=\"whtbtnshownav\" href=\"javascript:void(0);\" onclick=\"showHidePane(true);return false;\">";\r
- if (nStyle == BTN_TEXT)\r
- sButton += goShowNav.sText;\r
- else\r
- sButton += getImage(goShowNav, sTitle);\r
- sButton += "</a>";\r
- }\r
- }\r
- else if (sType == "hidenav")\r
- {\r
- if (isShowHideEnable())\r
- {\r
- var sTitle = "Hide Navigation Component";\r
- goHideNav = new button(sText, nWidth, nHeight, sImg1, sImg2, sImg3);\r
- sButton = "<a title=\"" + sTitle + "\" class=\"whtbtnhidenav\" href=\"javascript:void(0);\" onclick=\"showHidePane(false);return false;\">";\r
- if (nStyle == BTN_TEXT)\r
- sButton += goHideNav.sText;\r
- else\r
- sButton += getImage(goHideNav, sTitle);\r
- sButton += "</a>";\r
- }\r
- }\r
- else if (sType == "synctoc")\r
- {\r
- if (gaPaths.length > 0)\r
- {\r
- var sTitle = "Sync TOC";\r
- goSync = new button(sText, nWidth, nHeight, sImg1, sImg2, sImg3);\r
- sButton = "<a title=\""+ sTitle + "\" class=\"whtbtnsynctoc\" href=\"javascript:void(0);\" onclick=\"syncWithShow();return false;\">";\r
- if (nStyle == BTN_TEXT)\r
- sButton += goSync.sText;\r
- else\r
- sButton += getImage(goSync, sTitle);\r
- sButton += "</a>";\r
- }\r
- }\r
- else if (sType == "websearch")\r
- {\r
- if (gsSearchFormHref.length > 0)\r
- {\r
- var sTitle = "WebSearch";\r
- goWebSearch = new button(sText, nWidth, nHeight, sImg1, sImg2, sImg3);\r
- sButton = "<a title=\""+ sTitle + "\" class=\"whtbtnwebsearch\" href=\"" + gsSearchFormHref + "\">";\r
- if (nStyle == BTN_TEXT)\r
- sButton += goWebSearch.sText;\r
- else\r
- sButton += getImage(goWebSearch, sTitle);\r
- sButton += "</a>";\r
- }\r
- }\r
- else if (sType == "searchform")\r
- {\r
- gaButtons[nBtn] = "NeedSearchForm";\r
- gaTypes[nBtn] = sType;\r
- }\r
- if (sButton.length != 0)\r
- {\r
- if (nStyle == BTN_TEXT)\r
- sButton += " ";\r
- gaButtons[nBtn] = "<td>" + sButton + "</td>";\r
- gaTypes[nBtn] = sType;\r
- }\r
-}\r
-\r
-function isSyncEnabled()\r
-{\r
- if (!gbCheckSync)\r
- {\r
- var oMsg=new whMessage(WH_MSG_ISSYNCSSUPPORT,this,1,null);\r
- if(SendMessage(oMsg))\r
- {\r
- gbSyncEnabled=oMsg.oParam;\r
- }\r
- gbCheckSync=true;\r
- }\r
- return gbSyncEnabled;\r
-}\r
-\r
-function isInPopup()\r
-{\r
- return (window.name.indexOf("BSSCPopup") != -1);\r
-}\r
-\r
-function getIntopicBar(sAlign)\r
-{\r
- var sHTML = "";\r
- if (gaButtons.length > 0)\r
- {\r
- sHTML += "<div align="+ sAlign + ">";\r
-\r
- sHTML += "<table cellpadding=\"2\" cellspacing=\"0\" border=\"0\"><tr>";\r
- for (var i = 0; i < gaButtons.length; i++)\r
- {\r
- if (gaTypes[i]!="synctoc" || isSyncEnabled())\r
- {\r
- if (gaButtons[i] == "NeedSearchForm")\r
- sHTML += getSearchFormHTML();\r
- else\r
- sHTML += gaButtons[i];\r
- }\r
- }\r
- sHTML += "</tr></table>";\r
-\r
- sHTML += "</div>";\r
- }\r
- return sHTML;\r
-}\r
-\r
-\r
-function writeIntopicBar(nAligns)\r
-{\r
- if (isInPopup()) return;\r
- if (gaButtons.length > 0)\r
- {\r
- var sHTML = "";\r
- if (nAligns != 0)\r
- {\r
- sHTML += "<table width=100%><tr>"\r
- if (nAligns & 1)\r
- sHTML += "<td width=33%>" + getIntopicBar("left") + "</td>";\r
- if (nAligns & 2)\r
- sHTML += "<td width=34%>" + getIntopicBar("center") + "</td>";\r
- if (nAligns & 4)\r
- sHTML += "<td width=33%>" + getIntopicBar("right") + "</td>";\r
- sHTML += "</tr></table>";\r
- document.write(sHTML);\r
- }\r
- }\r
-}\r
-\r
-function sendAveInfoOut()\r
-{\r
- if (!isInPopup())\r
- setTimeout("sendAveInfo();", 100);\r
-}\r
-\r
-function sendAveInfo()\r
-{\r
- var oMsg = new whMessage(WH_MSG_AVENUEINFO, this, 1, gaAvenues);\r
- SendMessage(oMsg);\r
-}\r
-\r
-\r
-function onNext()\r
-{\r
- var oMsg = new whMessage(WH_MSG_NEXT, this, 1, null);\r
- SendMessage(oMsg);\r
-}\r
-\r
-function onPrev()\r
-{\r
- var oMsg = new whMessage(WH_MSG_PREV, this, 1, null);\r
- SendMessage(oMsg);\r
-}\r
-\r
-function createSyncInfo()\r
-{\r
- var oParam = new Object();\r
- if (gsPPath.length == 0)\r
- gsPPath = _getPath(document.location.href);\r
- oParam.sPPath = gsPPath;\r
- oParam.sTPath = document.location.href;\r
- oParam.aPaths = gaPaths;\r
- return oParam;\r
-}\r
-\r
-function syncWithShow()\r
-{\r
- if (isTopicOnly())\r
- show();\r
- else \r
- {\r
- sync();\r
- showTocPane();\r
- }\r
-}\r
-\r
-function showTocPane()\r
-{\r
- var oMsg = new whMessage(WH_MSG_SHOWTOC, this, 1, null);\r
- SendMessage(oMsg);\r
-}\r
-\r
-function sendSyncInfo()\r
-{\r
- if (!isInPopup())\r
- {\r
- var oParam = null;\r
- if (gaPaths.length > 0)\r
- {\r
- oParam = createSyncInfo();\r
- }\r
- var oMsg = new whMessage(WH_MSG_SYNCINFO, this, 1, oParam);\r
- SendMessage(oMsg);\r
- }\r
-}\r
-\r
-function sendInvalidSyncInfo()\r
-{\r
- if (!isInPopup())\r
- {\r
- var oMsg = new whMessage(WH_MSG_SYNCINFO, this, 1, null);\r
- SendMessage(oMsg);\r
- }\r
-}\r
-\r
-function enableWebSearch(bEnable)\r
-{\r
- if (!isInPopup())\r
- {\r
- var oMsg = new whMessage(WH_MSG_ENABLEWEBSEARCH, this, 1, bEnable);\r
- SendMessage(oMsg);\r
- }\r
-}\r
-\r
-function autoSync(nSync)\r
-{\r
- if (nSync == 0) return;\r
- if (isInPopup()) return;\r
- if (isOutMostTopic())\r
- sync();\r
-}\r
-\r
-function isOutMostTopic()\r
-{\r
- if (gnOutmostTopic == -1)\r
- {\r
- var oMessage = new whMessage(WH_MSG_ISINFRAMESET, this, 1 , null);\r
- if (SendMessage(oMessage))\r
- gnOutmostTopic = 0;\r
- else\r
- gnOutmostTopic = 1;\r
- }\r
- return (gnOutmostTopic == 1);\r
-}\r
-\r
-function sync()\r
-{\r
- if (gaPaths.length > 0)\r
- {\r
- var oParam = createSyncInfo();\r
- var oMessage = new whMessage(WH_MSG_SYNCTOC, this, 1, oParam);\r
- SendMessage(oMessage);\r
- }\r
-}\r
-\r
-\r
-function avenueInfo(sName, sPrev, sNext)\r
-{\r
- this.sName = sName;\r
- this.sPrev = sPrev;\r
- this.sNext = sNext;\r
-}\r
-\r
-function getCurrentAvenue()\r
-{\r
- var oParam = new Object();\r
- oParam.sAvenue = null;\r
- var oMessage = new whMessage(WH_MSG_GETCURRENTAVENUE, this, 1, oParam);\r
- SendMessage(oMessage);\r
- return oParam.sAvenue;\r
-}\r
-\r
-function unRegisterListener()\r
-{\r
- sendInvalidSyncInfo();\r
- enableWebSearch(false);\r
- if (whtopic_foldUnload)\r
- whtopic_foldUnload();\r
-}\r
-\r
-function onSendMessage(oMsg)\r
-{\r
- var nMsgId = oMsg.nMessageId;\r
- if (nMsgId == WH_MSG_GETAVIAVENUES)\r
- {\r
- oMsg.oParam.aAvenues = gaAvenues;\r
- return false;\r
- }\r
- else if (nMsgId == WH_MSG_GETTOCPATHS)\r
- {\r
- if (isOutMostTopic())\r
- {\r
- oMsg.oParam.oTocInfo = createSyncInfo();\r
- return false; \r
- }\r
- else\r
- return true;\r
- }\r
- else if (nMsgId == WH_MSG_NEXT)\r
- {\r
- goAvenue(true);\r
- }\r
- else if (nMsgId == WH_MSG_PREV)\r
- {\r
- goAvenue(false);\r
- }\r
- else if (nMsgId == WH_MSG_WEBSEARCH)\r
- {\r
- websearch();\r
- }\r
- return true;\r
-}\r
-\r
-function goAvenue(bNext)\r
-{\r
- var sTopic = null;\r
- var sAvenue = getCurrentAvenue();\r
- var nAvenue = -1;\r
- if (sAvenue != null && sAvenue != "")\r
- {\r
- for (var i = 0; i < gaAvenues.length ; i ++)\r
- {\r
- if (gaAvenues[i].sName == sAvenue)\r
- {\r
- nAvenue = i;\r
- break;\r
- }\r
- }\r
- if (nAvenue != -1)\r
- {\r
- if (bNext)\r
- sTopic = gaAvenues[nAvenue].sNext;\r
- else\r
- sTopic = gaAvenues[nAvenue].sPrev;\r
- }\r
- }\r
- else\r
- { \r
- for (var i = 0; i < gaAvenues.length ; i ++)\r
- {\r
- if (gaAvenues[i].sNext != null && gaAvenues[i].sNext.length > 0 && bNext)\r
- {\r
- sTopic = gaAvenues[i].sNext;\r
- break;\r
- }\r
- else if (gaAvenues[i].sPrev != null && gaAvenues[i].sPrev.length > 0 && !bNext)\r
- {\r
- sTopic = gaAvenues[i].sPrev;\r
- break;\r
- }\r
- }\r
- }\r
- \r
- if (sTopic != null && sTopic != "")\r
- {\r
- if (gsPPath != null && gsPPath != "")\r
- {\r
- sFullTopicPath = _getFullPath(gsPPath, sTopic);\r
- document.location = sFullTopicPath;\r
- }\r
- }\r
-}\r
-\r
-function canGo(bNext)\r
-{\r
- for (var i = 0; i < gaAvenues.length ; i ++)\r
- {\r
- if ((gaAvenues[i].sNext != null && gaAvenues[i].sNext.length > 0 && bNext) ||\r
- (gaAvenues[i].sPrev != null && gaAvenues[i].sPrev.length > 0 && !bNext))\r
- return true;\r
- }\r
- return false;\r
-}\r
-\r
-function show()\r
-{\r
- if (gsStartPage != "")\r
- window.location = gsStartPage + "#" + gsRelCurPagePath;\r
-}\r
-\r
-function hide()\r
-{\r
- if (goFrame != null)\r
- {\r
- goFrame.location = window.location;\r
- }\r
-}\r
-\r
-function isTopicOnly()\r
-{\r
- if (gnTopicOnly == -1)\r
- {\r
- var oParam = new Object();\r
- oParam.oFrame = null;\r
- var oMsg = new whMessage(WH_MSG_GETSTARTFRAME, this, 1, oParam);\r
- if (SendMessage(oMsg))\r
- {\r
- goFrame = oParam.oFrame;\r
- gnTopicOnly = 0;\r
- }\r
- else\r
- gnTopicOnly = 1;\r
- }\r
- if (gnTopicOnly == 1)\r
- return true;\r
- else\r
- return false;\r
-}\r
-\r
-function websearch()\r
-{\r
- if (gbNav4)\r
- {\r
- if (document.ehelpform)\r
- document.ehelpform.submit();\r
- }\r
- else\r
- {\r
- if (window.ehelpform)\r
- window.ehelpform.submit();\r
- }\r
-}\r
-\r
-function addSearchFormHref(sHref)\r
-{\r
- gsSearchFormHref = sHref;\r
- enableWebSearch(true);\r
-}\r
-\r
-function searchB(nForm)\r
-{\r
- var sValue = eval("document.searchForm" + nForm + ".searchString.value");\r
- var oMsg = new whMessage(WH_MSG_SEARCHTHIS, this, 1, sValue);\r
- SendMessage(oMsg);\r
-}\r
-\r
-function getSearchFormHTML()\r
-{\r
- var sHTML = "";\r
- gnForm ++;\r
- var sFormName = "searchForm" + gnForm;\r
- var sButton = "<form name=\"" + sFormName + "\" method=\"POST\" action=\"javascript:searchB("+ gnForm + ")\">"\r
- sButton += "<input type=\"text\" name=\"searchString\" value=\"- Full Text search -\" size=\"20\"/>";\r
- if ("" == "text")\r
- {\r
- sButton+="<a class=\"searchbtn\" href=\"javascript:void(0);\" onclick=\"" + sFormName + ".submit(); return false;\"></a>";\r
- }\r
- else if ("" == "image")\r
- {\r
- sButton+="<a class=\"searchbtn\" href=\"javascript:void(0);\" onclick=\"" + sFormName + ".submit(); return false;\">"\r
- sButton+="<img src=\"\" border=0></a>";\r
- }\r
- sButton += "</form>";\r
- sHTML ="<td align=\"center\">" + sButton + "</td>";\r
- return sHTML;\r
-}\r
-\r
-function showHidePane(bShow)\r
-{\r
- var oMsg=null;\r
- if (bShow)\r
- oMsg=new whMessage(WH_MSG_SHOWPANE, this, 1, null);\r
- else\r
- oMsg=new whMessage(WH_MSG_HIDEPANE, this, 1, null);\r
- SendMessage(oMsg);\r
-}\r
-\r
-function isShowHideEnable()\r
-{\r
- if (gbIE4)\r
- return true;\r
- else\r
- return false;\r
-}\r
-\r
-if(window.gbWhUtil&&window.gbWhMsg&&window.gbWhVer&&window.gbWhProxy)\r
-{\r
- RegisterListener("bsscright", WH_MSG_GETAVIAVENUES);\r
- RegisterListener("bsscright", WH_MSG_GETTOCPATHS);\r
- RegisterListener("bsscright", WH_MSG_NEXT);\r
- RegisterListener("bsscright", WH_MSG_PREV);\r
- RegisterListener("bsscright", WH_MSG_WEBSEARCH);\r
- if (gbMac && gbIE4)\r
- {\r
- if (typeof(window.onunload) != "unknown")\r
- whtopic_foldUnload = window.onunload;\r
- }\r
- else\r
- {\r
- if (window.onunload)\r
- whtopic_foldUnload = window.onunload;\r
- }\r
- window.onunload = unRegisterListener;\r
- setButtonFont("show","","10pt","","","","");\r
-\r
- gbWhTopic=true;\r
-}\r
-else\r
- document.location.reload();
\ No newline at end of file
+++ /dev/null
-var gsFileName="";\r
-var xmlDoc=null;\r
-var sdocPath=null;\r
-var gsInsertBeforeEndHTML="";\r
-var sReplaceStringsSrc=new Array();\r
-sReplaceStringsSrc[0]="&";\r
-sReplaceStringsSrc[1]=">";\r
-sReplaceStringsSrc[2]="<";\r
-sReplaceStringsSrc[3]=""";\r
-sReplaceStringsSrc[4]=" ";\r
-var sReplaceStringsDst=new Array();\r
-sReplaceStringsDst[0]="&";\r
-sReplaceStringsDst[1]=">";\r
-sReplaceStringsDst[2]="<";\r
-sReplaceStringsDst[3]="\"";\r
-sReplaceStringsDst[4]=" ";\r
-var goHighLighted=null;\r
-\r
-function _getRelativePath(strParentPath,strCurrentPath)\r
-{\r
- if(_isAbsPath(strCurrentPath)) return _getPath(strCurrentPath);\r
- strParentPath=_replaceSlash(strParentPath);\r
- strParentPath=_getPath(strParentPath);\r
- strCurrentPath=_replaceSlash(strCurrentPath);\r
- strCurrentPath=_getPath(strCurrentPath);\r
- for(var i=0;i<strParentPath.length&&i<strCurrentPath.length;i++)\r
- {\r
- if(strParentPath.charAt(i)!=strCurrentPath.charAt(i))\r
- break;\r
- }\r
- \r
- strParentPath=strParentPath.substring(i);\r
- strCurrentPath=strCurrentPath.substring(i); \r
- \r
- var nPathPos=0;\r
- while(nPathPos!=-1)\r
- {\r
- nPathPos=strParentPath.indexOf("/");\r
- if(nPathPos!=-1)\r
- {\r
- strParentPath=strParentPath.substring(nPathPos+1);\r
- strCurrentPath="../"+strCurrentPath;\r
- }\r
- }\r
- return strCurrentPath;\r
-}\r
-\r
-function _getRelativeFileName(strParentPath, strCurrentPath)\r
-{\r
- strParentPath=_replaceSlash(strParentPath);\r
- strParentPath=_getPath(strParentPath);\r
- strCurrentPath=_replaceSlash(strCurrentPath);\r
- for(var i=0;i<strParentPath.length&&i<strCurrentPath.length;i++)\r
- {\r
- if(strParentPath.charAt(i)!=strCurrentPath.charAt(i))\r
- break;\r
- }\r
- \r
- strParentPath=strParentPath.substring(i);\r
- strCurrentPath=strCurrentPath.substring(i); \r
- \r
- var nPathPos=0;\r
- while(nPathPos!=-1)\r
- {\r
- nPathPos=strParentPath.indexOf("/");\r
- if(nPathPos!=-1)\r
- {\r
- strParentPath=strParentPath.substring(nPathPos+1);\r
- strCurrentPath="../"+strCurrentPath;\r
- }\r
- }\r
- return strCurrentPath;\r
-}\r
-\r
-function _isAbsPathToHost(sPath)\r
-{\r
- return (sPath.indexOf("/")==0);\r
-}\r
-\r
-function _getHost(sPath)\r
-{\r
- var nPos=sPath.indexOf("//");\r
- if(nPos>0)\r
- {\r
- var nPosx=sPath.indexOf("/",nPos+2);\r
- if(nPosx>0)\r
- return sPath.substring(0,nPosx);\r
- else\r
- return sPath;\r
- }\r
- return sPath;\r
-}\r
-\r
-function _getFullPath(sPath,sRelPath)\r
-{\r
- if(_isAbsPath(sRelPath))\r
- return sRelPath;\r
- else if(_isAbsPathToHost(sRelPath))\r
- return _getHost(sPath)+sRelPath;\r
- else\r
- {\r
- var sFullPath=sPath;\r
- var nPathPos=0;\r
- while(nPathPos!=-1)\r
- {\r
- var nPathPos=sRelPath.indexOf("../");\r
- if(nPathPos!=-1)\r
- {\r
- sRelPath=sRelPath.substring(nPathPos+3);\r
- sFullPath=sFullPath.substring(0,sFullPath.length-1);\r
- var nPos2 = sFullPath.lastIndexOf("/");\r
- if(nPos2!=-1)\r
- sFullPath=sFullPath.substring(0,nPos2+1);\r
- else\r
- break;\r
- }\r
- }\r
- sFullPath+=sRelPath;\r
- return sFullPath;\r
- } \r
-}\r
-\r
-function _isAbsPath(strPath)\r
-{\r
- var strUpper=strPath.toUpperCase();\r
- return (strUpper.indexOf(":")!=-1);\r
-}\r
-\r
-function _replaceSlash(strURL)\r
-{ \r
- var re=new RegExp("\\\\","g");\r
- var strReplacedURL=strURL.replace(re,"/");\r
- return strReplacedURL;\r
-}\r
-\r
-function _getPath(strURL)\r
-{\r
- pathpos=strURL.lastIndexOf("/");\r
- if(pathpos>0)\r
- return strURL.substring(0,pathpos+1);\r
- else\r
- return "";\r
-}\r
-\r
-function removeItemFromArray(oArray,i)\r
-{\r
- if(oArray.length&&i>=0&&i<oArray.length)\r
- {\r
- var len=oArray.length;\r
- for(var s=i;s<len-1;s++)\r
- oArray[s]=oArray[s+1];\r
- oArray.length=len-1;\r
- }\r
-}\r
-\r
-function insertItemIntoArray(oArray,i,obj)\r
-{\r
- if(oArray.length&&i>=0&&i<=oArray.length)\r
- {\r
- var len=oArray.length;\r
- for(var s=len;s>i;s--)\r
- oArray[s]=oArray[s-1];\r
- oArray[i]=obj; \r
- }\r
-}\r
-\r
-function loadData(sFileName)\r
-{\r
- if(!getElement("dataDiv"))\r
- {\r
- if(!insertDataDiv())\r
- {\r
- gsFileName=sFileName;\r
- return;\r
- }\r
- }\r
- var sHTML="";\r
- if(gbMac)\r
- sHTML+="<iframe src="+sFileName+"></iframe>";\r
- else\r
- sHTML+="<iframe style=\"visibility:hidden;width:0;height:0\" src="+sFileName+"></iframe>";\r
- \r
- var oDivCon=getElement("dataDiv");\r
- if(oDivCon)\r
- {\r
- if(gbNav6)\r
- {\r
- if(oDivCon.getElementsByTagName&&oDivCon.getElementsByTagName("iFrame").length>0)\r
- {\r
- oDivCon.getElementsByTagName("iFrame")[0].src=sFileName;\r
- }\r
- else\r
- oDivCon.innerHTML=sHTML;\r
- }\r
- else\r
- oDivCon.innerHTML=sHTML;\r
- }\r
-}\r
-\r
-function loadDataXML(sFileName)\r
-{\r
- var sCurrentDocPath=_getPath(document.location.href);\r
- sdocPath=_getFullPath(sCurrentDocPath,sFileName);\r
- if(gbIE5)\r
- {\r
- xmlDoc=new ActiveXObject("Microsoft.XMLDOM");\r
- xmlDoc.async=true;\r
- xmlDoc.onreadystatechange=checkState;\r
- if(document.body!=null)\r
- xmlDoc.load(sdocPath);\r
- }\r
- else if(gbNav6)\r
- {\r
- xmlDoc=document.implementation.createDocument("","",null);\r
- xmlDoc.addEventListener("load",initializeData,false);\r
- xmlDoc.load(sdocPath,"text/xml");\r
- }\r
-}\r
-\r
-function initializeData()\r
-{\r
- if(xmlDoc!=null)\r
- putDataXML(xmlDoc,sdocPath);\r
-}\r
-\r
-function checkState()\r
-{\r
- if(xmlDoc!=null)\r
- {\r
- var state=xmlDoc.readyState;\r
- if(state==4)\r
- {\r
- var err=xmlDoc.parseError;\r
- if(err.errorCode!=0)\r
- alert(err.reason);\r
- else\r
- putDataXML(xmlDoc,sdocPath);\r
- }\r
- }\r
-}\r
-\r
-function insertDataDiv()\r
-{\r
- var sHTML="";\r
- if(gbMac)\r
- sHTML+="<div id=dataDiv style=\"display:none;\"></div>";\r
- else\r
- sHTML+="<div id=dataDiv style=\"visibility:hidden\"></div>";\r
- if((gbIE5||gbNav6)&&document.body)\r
- document.body.insertAdjacentHTML("beforeEnd",sHTML);\r
- else\r
- {\r
- gsInsertBeforeEndHTML=sHTML;\r
- setTimeout("insertWhenBodyReady();",100);\r
- return false;\r
- }\r
- return true;\r
-}\r
-\r
-function insertWhenBodyReady()\r
-{\r
- if(gsInsertBeforeEndHTML=="") return;\r
- if(document.body)\r
- {\r
- document.body.insertAdjacentHTML("beforeEnd",gsInsertBeforeEndHTML);\r
- gsInsertBeforeEndHTML="";\r
- loadData(gsFileName);\r
- }\r
- else\r
- {\r
- setTimeout("insertWhenBodyReady();",100);\r
- }\r
-}\r
-\r
-function window_BUnload()\r
-{\r
- var oDivCon=getElement("dataDiv");\r
- if(oDivCon)\r
- oDivCon.innerHTML="";\r
-}\r
-\r
-function removeThis(obj)\r
-{\r
- if(obj.parentNode)\r
- obj.parentNode.removeChild(obj);\r
- else\r
- obj.outerHTML="";\r
-}\r
-\r
-function getParentNode(obj)\r
-{\r
- if(obj.parentNode)\r
- return obj.parentNode;\r
- else if(obj.parentElement)\r
- return obj.parentElement;\r
- return null;\r
-}\r
-\r
-function getElement(sID)\r
-{\r
- if(document.getElementById)\r
- return document.getElementById(sID);\r
- else if(document.all)\r
- return document.all(sID);\r
- return null;\r
-}\r
-\r
-function getChildrenByTag(obj,sTagName)\r
-{\r
- if(obj.getElementsByTagName)\r
- {\r
- var aChildren=new Array();\r
- var aElements=getElementsByTag(obj,sTagName);\r
- if(aElements!=null)\r
- {\r
- for(var i=0;i<aElements.length;i++)\r
- {\r
- if(aElements[i].parentNode==obj)\r
- aChildren[aChildren.length]=aElements[i];\r
- }\r
- return aChildren;\r
- }\r
- else\r
- return new Array();\r
- }\r
- else if(obj.children)\r
- return obj.children.tags(sTagName);\r
-}\r
-\r
-function getElementsByTag(obj,sTagName)\r
-{\r
- if(obj.getElementsByTagName)\r
- return obj.getElementsByTagName(sTagName);\r
- else if(obj.all)\r
- return obj.all.tags(sTagName);\r
- return null;\r
-}\r
-\r
-function _htmlToText(sHTML)\r
-{\r
- if(sHTML==null) return null;\r
- var sText=sHTML;\r
- for(var i=0;i<sReplaceStringsSrc.length;i++)\r
- {\r
- var re=new RegExp(sReplaceStringsSrc[i],"g");\r
- sText=sText.replace(re,sReplaceStringsDst[i]);\r
- } \r
- return sText;\r
-}\r
-\r
-function _textToHtml_nonbsp(sText)\r
-{\r
- if(sText==null) return null;\r
- var sHTML=sText;\r
- for(var i=0;i<sReplaceStringsSrc.length-1;i++)\r
- {\r
- var re=new RegExp(sReplaceStringsDst[i],"g");\r
- sHTML=sHTML.replace(re,sReplaceStringsSrc[i]);\r
- } \r
- return sHTML;\r
-}\r
-\r
-function _textToHtml(sText)\r
-{\r
- if(sText==null) return null;\r
- var sHTML=sText;\r
- for(var i=0;i<sReplaceStringsSrc.length;i++)\r
- {\r
- var re=new RegExp(sReplaceStringsDst[i],"g");\r
- sHTML=sHTML.replace(re,sReplaceStringsSrc[i]);\r
- } \r
- return sHTML;\r
-}\r
-\r
-\r
-function getInnerText(obj)\r
-{\r
- var renbsp2sp=new RegExp("\xa0","g");\r
- if(obj.innerText)\r
- {\r
- var sText=obj.innerText;\r
- sText=sText.replace(renbsp2sp," ");\r
- return sText;\r
- }\r
- else\r
- {\r
- if(obj.nodeValue)\r
- {\r
- var sValue=obj.nodeValue;\r
- sValue=sValue.replace(renbsp2sp," ");\r
- return sValue;\r
- }\r
- else\r
- {\r
- var sText="";\r
- var oChild=obj.firstChild;\r
- while(oChild!=null)\r
- {\r
- sText+=getInnerText(oChild);\r
- oChild=oChild.nextSibling;\r
- }\r
- return sText;\r
- }\r
- }\r
- \r
-}\r
-\r
-function HighLightElement(obj,sHighLightColor,sNormalColor)\r
-{\r
- if(obj!=null)\r
- {\r
- resetHighLight(sNormalColor);\r
- obj.style.backgroundColor=sHighLightColor;\r
- goHighLighted=obj;\r
- }\r
-}\r
-\r
-function resetHighLight(sNormalColor)\r
-{\r
- if(goHighLighted!=null)\r
- {\r
- goHighLighted.style.backgroundColor=sNormalColor;\r
- goHighLighted=null;\r
- }\r
-}\r
-\r
-function whFont(sName,sSize,sColor,sStyle,sWeight,sDecoration)\r
-{\r
- this.sName=sName;\r
- this.sSize=sSize;\r
- this.sColor=sColor;\r
- this.sStyle=sStyle;\r
- this.sWeight=sWeight;\r
- this.sDecoration=sDecoration;\r
-}\r
-\r
-function getFontStyle(oFont)\r
-{\r
- var sStyle="";\r
- if(oFont)\r
- {\r
- sStyle+="font-family:"+oFont.sName+";";\r
- if(gbMac)\r
- {\r
- var nSize=parseInt(oFont.sSize);\r
- if(gbIE5)\r
- nSize+=2;\r
- else\r
- nSize+=4;\r
- sStyle+="font-size:"+nSize+"pt;";\r
- }\r
- else\r
- sStyle+="font-size:"+oFont.sSize+";";\r
- \r
- sStyle+="font-style:"+oFont.sStyle+";";\r
- sStyle+="font-weight:"+oFont.sWeight+";";\r
- sStyle+="text-decoration:"+oFont.sDecoration+";";\r
- sStyle+="color:"+oFont.sColor+";";\r
- }\r
- return sStyle;\r
-}\r
-\r
-var gbWhUtil=true;
\ No newline at end of file
+++ /dev/null
-var gbNav6=false;\r
-var gbNav61=false;\r
-var gbNav4=false;\r
-var gbIE4=false;\r
-var gbIE=false;\r
-var gbIE5=false;\r
-var gbIE55=false;\r
-\r
-var gAgent=navigator.userAgent.toLowerCase();\r
-var gbMac=(gAgent.indexOf("mac")!=-1);\r
-var gbSunOS=(gAgent.indexOf("sunos")!=-1);\r
-var gbOpera=(gAgent.indexOf("opera")!=-1);\r
-\r
-var gVersion=navigator.appVersion.toLowerCase();\r
-\r
-var gnVerMajor=parseInt(gVersion);\r
-var gnVerMinor=parseFloat(gVersion);\r
-\r
-gbIE=(navigator.appName.indexOf("Microsoft")!=-1);\r
-if(gnVerMajor>=4)\r
-{\r
- if(navigator.appName=="Netscape")\r
- {\r
- gbNav4=true;\r
- if(gnVerMajor>=5)\r
- gbNav6=true;\r
- }\r
- gbIE4=(navigator.appName.indexOf("Microsoft")!=-1);\r
-}\r
-if(gbNav6)\r
-{\r
- document.gnPageWidth=innerWidth;\r
- document.gnPageHeight=innerHeight;\r
- var nPos=gAgent.indexOf("netscape");\r
- if(nPos!=-1)\r
- {\r
- var nVersion=parseFloat(gAgent.substring(nPos+10));\r
- if(nVersion>=6.1)\r
- gbNav61=true;\r
- }\r
-}else if(gbIE4)\r
-{\r
- var nPos=gAgent.indexOf("msie");\r
- if(nPos!=-1)\r
- {\r
- var nVersion=parseFloat(gAgent.substring(nPos+5));\r
- if(nVersion>=5)\r
- gbIE5=true;\r
- if(nVersion>=5.5)\r
- gbIE55=true;\r
- }\r
-}\r
-\r
-var gbWhVer=true;
\ No newline at end of file
+++ /dev/null
-# Copyright (C) 2003 CEA/DEN, EDF R&D
-#
-#
-#
-# File : Makefile.in
-# Author : Vasily Rusyaev (Open Cascade NN)
-# Module : doc
-# $Header:
-
-top_srcdir=@top_srcdir@
-top_builddir=../../..
-root_srcdir=@ROOT_SRCDIR@
-srcdir=@srcdir@
-VPATH=.:@srcdir@
-doxygen=@DOXYGEN@
-
-@COMMENCE@
-
-docs:
- cp -fr $(srcdir)/VISU ./INPUT; \
- cd INPUT; \
- sed 's|../../../share/salome|$(root_srcdir)|' ./doxyfile > ./doxyfile1; \
- mv -f doxyfile1 doxyfile; \
- $(doxygen) ./doxyfile; \
- cd ..; \
- cp -fr $(srcdir)/VISU/sources/static/*.* ./VISU/
- cp -fr $(srcdir)/VISU/sources/ VISU/
- cp -fr $(srcdir)/VISU/HTML/ VISU/
- rm -fr INPUT
-
-clean:
- rm -fr VISU
-
-distclean: clean
- rm -fr INPUT
-
-install:
- $(INSTALL) -d $(docdir); \
- mkdir -p $(docdir)/tui
- cp -fr VISU $(docdir)/tui
-
-uninstall:
- rm -fr $(docdir)/tui/VISU
+++ /dev/null
-<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>
+++ /dev/null
-<!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>
-
-<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>
+++ /dev/null
-H1 { text-align: center; }
-CAPTION { font-weight: bold }
-A.qindex {}
-A.qindexRef {}
-A.el { text-decoration: none; font-weight: bold }
-A.elRef { font-weight: bold }
-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 }
-DIV.fragment { width: 100%; border: none; background-color: #CCCCCC }
-DIV.ah { background-color: #CCCCCC; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px }
-TD.md { background-color: lightblue; font-weight: bold; }
-TD.mdname1 { background-color: lightblue; font-weight: bold; color: #602020; }
-TD.mdname { background-color: lightblue; font-weight: bold; color: #602020; width: 600px; }
-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: url(sources/bg_salome.gif) }
-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
-}
-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 }
+++ /dev/null
-<!DOCTYPE doctype PUBLIC "-//w3c//dtd html 4.0 transitional//en">\r
-<html>\r
-<head>\r
- \r
- <meta http-equiv="Content-Type"\r
- content="text/html; charset=iso-8859-1">\r
- \r
- <meta name="GENERATOR"\r
- content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">\r
- <title>Main Page</title>\r
- \r
- <link href="doxygen.css" rel="stylesheet" type="text/css">\r
-</head>\r
- <body>\r
- \r
-<center> \r
-<table width="96%">\r
- <tbody>\r
- <tr>\r
- <td><a href="http://www.opencascade.com"><img src="sources/logocorp.gif"\r
- border="0" height="46" width="122">\r
- </a></td>\r
- <td> \r
- <div align="right"><a href="http://www.opencascade.org/SALOME/"><img\r
- src="sources/application.gif" border="0" height="46" width="108">\r
- </a></div>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- </center>\r
- \r
-<h1><a name="page2">Examples</a> </h1>\r
- <big><b><i> Interfaces:</i></b></big><br>\r
- <a class="el"\r
- href="examples_VISU.html#Base"><br>\r
- VISU::Base</a><br>\r
- <a class="el" href="#VISU_Gen">VISU::VISU_Gen</a><br>\r
- <a class="el"\r
- href="examples_VISU.html#PrsObject">VISU::PrsObject<br>\r
- </a><br>\r
- <a class="el"\r
- href="interfaceVISU_1_1Result.html">VISU::Result</a><a\r
- class="el"\r
- href="examples_VISU.html#Prs3d"><br>\r
- <br>\r
- VISU::Prs3d</a><br>\r
- <a class="el"\r
- href="examples_VISU.html#Mesh">VISU::Mesh</a><br>\r
- <a class="el"\r
- href="examples_VISU.html#ScalarMap">VISU::ScalarMap</a><br>\r
- <a class="el" href="#CutPlanes">VISU::CutPlanes</a><br>\r
- <a class="el" href="#CutLines">VISU::CutLines</a><br>\r
- <a class="el" href="#IsoSurfaces">VISU::IsoSurfaces</a><br>\r
- <a class="el"\r
- href="examples_VISU.html#DeformedShape">VISU::DeformedShape</a><br>\r
- <a class="el" href="#Vectors">VISU::Vectors</a><br>\r
- <a class="el"\r
- href="interfaceVISU_1_1StreamLines.html">VISU::StreamLines</a><br>\r
- <br>\r
- <a class="el" href="#Table">VISU::Table</a><br>\r
- <a class="el"\r
- href="interfaceVISU_1_1Curve.html">VISU::Curve</a><br>\r
- <a class="el"\r
- href="interfaceVISU_1_1Container.html">VISU::Container</a><br>\r
- <a class="el"\r
- href="interfaceVISU_1_1ViewManager.html"><br>\r
- VISU::ViewManager</a><br>\r
- <a class="el"\r
- href="interfaceVISU_1_1View.html">VISU::View</a><br>\r
- <a class="el"\r
- href="interfaceVISU_1_1View3D.html">VISU::View3D</a><br>\r
- <a class="el"\r
- href="interfaceVISU_1_1TableView.html">VISU::TableView</a><br>\r
- <a class="el"\r
- href="interfaceVISU_1_1XYPlot.html">VISU::XYPlot</a><br>\r
- \r
-<h3><a name="Base"></a>Base</h3>\r
- \r
-<table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"><a class="el"\r
- href="namespaceVISU.html#a0">IdType</a>\r
- VISU::Base::GetID </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="mdname1" valign="top" nowrap> \r
- </td>\r
- <td class="md" valign="top">) </td>\r
- <td class="md" nowrap><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- \r
-<p>#Returns ID of the object. That is IOR of CORBA representation a VISU\r
-object.<br>\r
- </p>\r
- \r
-<p>aSObject = myLocalStudy.FindObjectIOR(theResult.GetID()) <br>\r
- </p>\r
- \r
-<table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"><a class="el"\r
- href="namespaceVISU.html#a39">VISUType</a>\r
- VISU::Base::GetType </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="mdname1" valign="top" nowrap> \r
- </td>\r
- <td class="md" valign="top">) </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- \r
-<p>#Returns the type of the presentable object. It can be used for quick\r
-class definition of an VISU object<br>\r
- <br>\r
- if aVISUObject.GetType() == VISU.TSCALARMAP :<br>\r
- #do something ...<br>\r
- </p>\r
- \r
-<p><br>\r
-</p>\r
-<h3><a name="VISU_Gen"></a><big>VISU_Gen</big><br>\r
- </h3>\r
- \r
-<table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"> void VISU::VISU_Gen::SetCurrentStudy \r
- </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="md" nowrap valign="top">in <a class="el"\r
- href="interfaceSALOMEDS_1_1Study.html">SALOMEDS::Study</a> </td>\r
- <td class="mdname1" valign="top" nowrap> <em>theStudy</em> \r
- </td>\r
- <td class="md" valign="top">) </td>\r
- <td class="md" nowrap><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- <br>\r
- \r
-<p> \r
-<table width="100%" cellpadding="2" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md"> \r
- <table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"> <a class="el"\r
- href="interfaceSALOMEDS_1_1Study.html">SALOMEDS::Study</a> \r
-VISU::VISU_Gen::GetCurrentStudy </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="mdname1" valign="top" nowrap> \r
- </td>\r
- <td class="md" valign="top">) </td>\r
- <td class="md" nowrap><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- <br>\r
- #It is very important to set SALOMEDS::Study for VISU Engine before you\r
-start any work with them.<br>\r
- #Every object that you will create will be assigned to the study you set \r
-before.<br>\r
- #It can be done like this:<br>\r
- <p></p>\r
- \r
-<p>aStudy = myStudyManager.NewStudy("A foo Study")<br>\r
- if aStudy is None : raise RuntimeError, "Error"<br>\r
- else : print "OK"<br>\r
- theVisuGen.SetCurrentStudy(aStudy)<br>\r
- #to do every things you like<br>\r
- ...<br>\r
- </p>\r
- \r
-<p> \r
-<table width="100%" cellpadding="2" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md"> \r
- <table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"> <a class="el"\r
- href="interfaceVISU_1_1ViewManager.html">ViewManager</a> \r
-VISU::VISU_Gen::GetViewManager </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="mdname1" valign="top" nowrap> \r
- </td>\r
- <td class="md" valign="top">) </td>\r
- <td class="md" nowrap><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- \r
-<table cellspacing="5" cellpadding="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td> </td>\r
- <td> \r
- <p> Gets the ViewManager which is used for creation of post-processing \r
-presentations. </p>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- <br>\r
- #In order to display any VISU::PrsObject in propriate viewer you must take \r
-VISU::ViewManager interface<br>\r
- <p></p>\r
- \r
-<p>aViewManager = myVisuGen.GetViewManager()<br>\r
- #to do something for displaing some presentation<br>\r
- ...<br>\r
- </p>\r
- \r
-<p> \r
-<table width="100%" cellpadding="2" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md"> \r
- <table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"> <a class="el"\r
- href="interfaceSALOMEDS_1_1SObject.html">SALOMEDS::SObject</a> \r
-VISU::VISU_Gen::ImportTables </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="md" nowrap valign="top">in string </td>\r
- <td class="mdname1" valign="top" nowrap> <em>theFileName</em> \r
- </td>\r
- <td class="md" valign="top">) </td>\r
- <td class="md" nowrap><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- \r
-<table cellspacing="5" cellpadding="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td> </td>\r
- <td> \r
- <p> Imports tables from a file and create TableAttribute in Sudy \r
- </p>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- <br>\r
- #It is possible to import some ASCII files that include text table representation. \r
-One file can consist from more than one table.<br>\r
- <p></p>\r
- \r
-<p>aSObject = myVisuGen.ImportTables("/MyPresicousFileOfTables.txt")<br>\r
- </p>\r
- \r
-<p> \r
-<table width="100%" cellpadding="2" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md"> \r
- <table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"> <a class="el"\r
- href="interfaceVISU_1_1Result.html">Result</a> \r
-VISU::VISU_Gen::ImportFile </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="md" nowrap valign="top">in string </td>\r
- <td class="mdname1" valign="top" nowrap> <em>theFileName</em> \r
- </td>\r
- <td class="md" valign="top">) </td>\r
- <td class="md" nowrap><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- \r
-<table cellspacing="5" cellpadding="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td> </td>\r
- <td> \r
- <p> Imports data from a file. </p>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- <br>\r
- #It is possible import a med files to VISU<br>\r
- <p></p>\r
- \r
-<p>aResult = myVisuGen.ImportFile("/ItIsDreamOfMyLife.med")<br>\r
- </p>\r
- \r
-<p> \r
-<table width="100%" cellpadding="2" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md"> \r
- <table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"> <a class="el"\r
- href="interfaceVISU_1_1Result.html">Result</a> \r
-VISU::VISU_Gen::ImportMed </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="md" nowrap valign="top">in <a class="el"\r
- href="interfaceSALOMEDS_1_1SObject.html">SALOMEDS::SObject</a> </td>\r
- <td class="mdname1" valign="top" nowrap> <em>theMedSObject</em> \r
- </td>\r
- <td class="md" valign="top">) </td>\r
- <td class="md" nowrap><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- \r
-<table cellspacing="5" cellpadding="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td> </td>\r
- <td> \r
- <p> Imports data from a MED object. </p>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- <br>\r
- #<br>\r
- <p></p>\r
- \r
-<p> \r
-<table width="100%" cellpadding="2" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md"> \r
- <table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"> <a class="el"\r
- href="interfaceVISU_1_1Result.html">Result</a> \r
-VISU::VISU_Gen::ImportMedField </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="md" nowrap valign="top">in <a class="el"\r
- href="interfaceSALOME__MED_1_1FIELD.html">SALOME_MED::FIELD</a> </td>\r
- <td class="mdname1" valign="top" nowrap> <em>theField</em> \r
- </td>\r
- <td class="md" valign="top">) </td>\r
- <td class="md" nowrap><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- \r
-<table cellspacing="5" cellpadding="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td> </td>\r
- <td> \r
- <p> Imports data from a MED field. </p>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- <p></p>\r
- \r
-<p> \r
-<table width="100%" cellpadding="2" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md"> \r
- <table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"> <a class="el"\r
- href="interfaceVISU_1_1Mesh.html">Mesh</a> \r
-VISU::VISU_Gen::MeshOnEntity </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="md" nowrap valign="top">in <a class="el"\r
- href="interfaceVISU_1_1Result.html">Result</a> </td>\r
- <td class="mdname" nowrap> <em>theResult</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theMeshName</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in <a class="el"\r
- href="namespaceVISU.html#a38">Entity</a> </td>\r
- <td class="mdname" nowrap> <em>theEntity</em></td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td class="md">) </td>\r
- <td class="md" colspan="2"><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- \r
-<table cellspacing="5" cellpadding="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td> </td>\r
- <td> \r
- <p> Creates a Mesh on the basis of the data generated in other sources \r
-(MED object or file). </p>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- <p></p>\r
- \r
-<p> \r
-<table width="100%" cellpadding="2" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md"> \r
- <table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"> <a class="el"\r
- href="interfaceVISU_1_1Mesh.html">Mesh</a> \r
-VISU::VISU_Gen::FamilyMeshOnEntity </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="md" nowrap valign="top">in <a class="el"\r
- href="interfaceVISU_1_1Result.html">Result</a> </td>\r
- <td class="mdname" nowrap> <em>theResult</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theMeshName</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in <a class="el"\r
- href="namespaceVISU.html#a38">Entity</a> </td>\r
- <td class="mdname" nowrap> <em>theEntity</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theFamilyName</em></td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td class="md">) </td>\r
- <td class="md" colspan="2"><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- <p></p>\r
- \r
-<p> \r
-<table width="100%" cellpadding="2" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md"> \r
- <table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"> <a class="el"\r
- href="interfaceVISU_1_1Mesh.html">Mesh</a> \r
-VISU::VISU_Gen::GroupMesh </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="md" nowrap valign="top">in <a class="el"\r
- href="interfaceVISU_1_1Result.html">Result</a> </td>\r
- <td class="mdname" nowrap> <em>theResult</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theMeshName</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theGroupName</em></td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td class="md">) </td>\r
- <td class="md" colspan="2"><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- <p></p>\r
- \r
-<p> \r
-<table width="100%" cellpadding="2" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md"> \r
- <table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"> <a class="el"\r
- href="interfaceVISU_1_1ScalarMap.html">ScalarMap</a> \r
-VISU::VISU_Gen::ScalarMapOnField </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="md" nowrap valign="top">in <a class="el"\r
- href="interfaceVISU_1_1Result.html">Result</a> </td>\r
- <td class="mdname" nowrap> <em>theResult</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theMeshName</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in <a class="el"\r
- href="namespaceVISU.html#a38">Entity</a> </td>\r
- <td class="mdname" nowrap> <em>theEntity</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theFieldName</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in double </td>\r
- <td class="mdname" nowrap> <em>theIteration</em></td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td class="md">) </td>\r
- <td class="md" colspan="2"><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- \r
-<table cellspacing="5" cellpadding="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td> </td>\r
- <td> \r
- <p> Creates a scalar bar presentation. </p>\r
- \r
- <dl compact>\r
- <dt><b> Parameters: </b></dt>\r
- <dd> \r
- <table border="0" cellspacing="2" cellpadding="0">\r
- <tbody>\r
- <tr>\r
- <td valign="top"><em>theResult</em> </td>\r
- <td> Data generated in other sources. (MED object or file) \r
- </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theMeshName</em> </td>\r
- <td> One of the meshes presented in MED file </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theEntity</em> </td>\r
- <td> Type of entity where the field is defined </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theFieldName</em> </td>\r
- <td> Group of data attributed to the MESH. The data can\r
-be scalar or vector. </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theIteration</em> </td>\r
- <td> Number of iteration on the field </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </dd>\r
- </dl>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- <p></p>\r
- \r
-<p> \r
-<table width="100%" cellpadding="2" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md"> \r
- <table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"> <a class="el"\r
- href="interfaceVISU_1_1DeformedShape.html">DeformedShape</a> \r
-VISU::VISU_Gen::DeformedShapeOnField </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="md" nowrap valign="top">in <a class="el"\r
- href="interfaceVISU_1_1Result.html">Result</a> </td>\r
- <td class="mdname" nowrap> <em>theResult</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theMeshName</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in <a class="el"\r
- href="namespaceVISU.html#a38">Entity</a> </td>\r
- <td class="mdname" nowrap> <em>theEntity</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theFieldName</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in double </td>\r
- <td class="mdname" nowrap> <em>theIteration</em></td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td class="md">) </td>\r
- <td class="md" colspan="2"><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- \r
-<table cellspacing="5" cellpadding="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td> </td>\r
- <td> \r
- <p> Creates a deformed shape presentation. </p>\r
- \r
- <dl compact>\r
- <dt><b> Parameters: </b></dt>\r
- <dd> \r
- <table border="0" cellspacing="2" cellpadding="0">\r
- <tbody>\r
- <tr>\r
- <td valign="top"><em>theResult</em> </td>\r
- <td> Data generated in other sources. (MED object or file) \r
- </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theMeshName</em> </td>\r
- <td> One of the meshes presented in MED file </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theEntity</em> </td>\r
- <td> Type of entity where the field is defined </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theFieldName</em> </td>\r
- <td> Group of data attributed to the MESH. The data can\r
-be scalar or vector. </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theIteration</em> </td>\r
- <td> Number of iteration on the field </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </dd>\r
- </dl>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- <p></p>\r
- \r
-<p> \r
-<table width="100%" cellpadding="2" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md"> \r
- <table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"> <a class="el"\r
- href="interfaceVISU_1_1Vectors.html">Vectors</a> \r
-VISU::VISU_Gen::VectorsOnField </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="md" nowrap valign="top">in <a class="el"\r
- href="interfaceVISU_1_1Result.html">Result</a> </td>\r
- <td class="mdname" nowrap> <em>theResult</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theMeshName</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in <a class="el"\r
- href="namespaceVISU.html#a38">Entity</a> </td>\r
- <td class="mdname" nowrap> <em>theEntity</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theFieldName</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in double </td>\r
- <td class="mdname" nowrap> <em>theIteration</em></td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td class="md">) </td>\r
- <td class="md" colspan="2"><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- \r
-<table cellspacing="5" cellpadding="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td> </td>\r
- <td> \r
- <p> Creates a vector presentation. </p>\r
- \r
- <dl compact>\r
- <dt><b> Parameters: </b></dt>\r
- <dd> \r
- <table border="0" cellspacing="2" cellpadding="0">\r
- <tbody>\r
- <tr>\r
- <td valign="top"><em>theResult</em> </td>\r
- <td> Data generated in other sources. (MED object or file) \r
- </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theMeshName</em> </td>\r
- <td> One of the meshes presented in MED file </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theEntity</em> </td>\r
- <td> Type of entity where the field is defined </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theFieldName</em> </td>\r
- <td> Group of data attributed to the MESH. The data can\r
-be scalar or vector. </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theIteration</em> </td>\r
- <td> Number of iteration on the field </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </dd>\r
- </dl>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- <p></p>\r
- \r
-<p> \r
-<table width="100%" cellpadding="2" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md"> \r
- <table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"> <a class="el"\r
- href="interfaceVISU_1_1IsoSurfaces.html">IsoSurfaces</a> \r
-VISU::VISU_Gen::IsoSurfacesOnField </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="md" nowrap valign="top">in <a class="el"\r
- href="interfaceVISU_1_1Result.html">Result</a> </td>\r
- <td class="mdname" nowrap> <em>theResult</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theMeshName</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in <a class="el"\r
- href="namespaceVISU.html#a38">Entity</a> </td>\r
- <td class="mdname" nowrap> <em>theEntity</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theFieldName</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in double </td>\r
- <td class="mdname" nowrap> <em>theIteration</em></td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td class="md">) </td>\r
- <td class="md" colspan="2"><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- \r
-<table cellspacing="5" cellpadding="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td> </td>\r
- <td> \r
- <p> Creates an iso surface presentation. </p>\r
- \r
- <dl compact>\r
- <dt><b> Parameters: </b></dt>\r
- <dd> \r
- <table border="0" cellspacing="2" cellpadding="0">\r
- <tbody>\r
- <tr>\r
- <td valign="top"><em>theResult</em> </td>\r
- <td> Data generated in other sources. (MED object or file) \r
- </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theMeshName</em> </td>\r
- <td> One of the meshes presented in MED file </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theEntity</em> </td>\r
- <td> Type of entity where the field is defined </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theFieldName</em> </td>\r
- <td> Group of data attributed to the MESH. The data can\r
-be scalar or vector. </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theIteration</em> </td>\r
- <td> Number of iteration on the field </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </dd>\r
- </dl>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- <p></p>\r
- \r
-<p> \r
-<table width="100%" cellpadding="2" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md"> \r
- <table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"> <a class="el"\r
- href="interfaceVISU_1_1StreamLines.html">StreamLines</a> \r
-VISU::VISU_Gen::StreamLinesOnField </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="md" nowrap valign="top">in <a class="el"\r
- href="interfaceVISU_1_1Result.html">Result</a> </td>\r
- <td class="mdname" nowrap> <em>theResult</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theMeshName</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in <a class="el"\r
- href="namespaceVISU.html#a38">Entity</a> </td>\r
- <td class="mdname" nowrap> <em>theEntity</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theFieldName</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in double </td>\r
- <td class="mdname" nowrap> <em>theIteration</em></td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td class="md">) </td>\r
- <td class="md" colspan="2"><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- \r
-<table cellspacing="5" cellpadding="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td> </td>\r
- <td> \r
- <p> Creates an stream lines presentation. </p>\r
- \r
- <dl compact>\r
- <dt><b> Parameters: </b></dt>\r
- <dd> \r
- <table border="0" cellspacing="2" cellpadding="0">\r
- <tbody>\r
- <tr>\r
- <td valign="top"><em>theResult</em> </td>\r
- <td> Data generated in other sources. (MED object or file) \r
- </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theMeshName</em> </td>\r
- <td> One of the meshes presented in MED file </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theEntity</em> </td>\r
- <td> Type of entity where the field is defined </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theFieldName</em> </td>\r
- <td> Group of data attributed to the MESH. The data can\r
-be scalar or vector. </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theIteration</em> </td>\r
- <td> Number of iteration on the field </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </dd>\r
- </dl>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- <p></p>\r
- \r
-<p> \r
-<table width="100%" cellpadding="2" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md"> \r
- <table cellpadding="0" cellspacing="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td class="md" nowrap valign="top"> <a class="el"\r
- href="interfaceVISU_1_1CutPlanes.html">CutPlanes</a> \r
-VISU::VISU_Gen::CutPlanesOnField </td>\r
- <td class="md" valign="top">( </td>\r
- <td class="md" nowrap valign="top">in <a class="el"\r
- href="interfaceVISU_1_1Result.html">Result</a> </td>\r
- <td class="mdname" nowrap> <em>theResult</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theMeshName</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in <a class="el"\r
- href="namespaceVISU.html#a38">Entity</a> </td>\r
- <td class="mdname" nowrap> <em>theEntity</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in string </td>\r
- <td class="mdname" nowrap> <em>theFieldName</em>, \r
- </td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td><br>\r
- </td>\r
- <td class="md" nowrap>in double </td>\r
- <td class="mdname" nowrap> <em>theIteration</em></td>\r
- </tr>\r
- <tr>\r
- <td><br>\r
- </td>\r
- <td class="md">) </td>\r
- <td class="md" colspan="2"><br>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
- </table>\r
- </td>\r
- </tr>\r
- \r
- </tbody> \r
-</table>\r
- \r
-<table cellspacing="5" cellpadding="0" border="0">\r
- <tbody>\r
- <tr>\r
- <td> </td>\r
- <td> \r
- <p> Creates a presentation of cut planes. </p>\r
- \r
- <dl compact>\r
- <dt><b> Parameters: </b></dt>\r
- <dd> \r
- <table border="0" cellspacing="2" cellpadding="0">\r
- <tbody>\r
- <tr>\r
- <td valign="top"><em>theResult</em> </td>\r
- <td> Data generated in other sources. (MED object or file) \r
- </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theMeshName</em> </td>\r
- <td> One of the meshes presented in MED file </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theEntity</em> </td>\r
- <td> Type of entity where the field is defined </td>\r
- </tr>\r
- <tr>\r
- <td valign="top"><em>theFieldName</em> </td>\r
-\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\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
+++ /dev/null
-<!doctype html public "-//w3c//dtd html 4.0 transitional//en">\r
-<html>\r
-<head>\r
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">\r
- <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]">\r
- <title>Main Page</title>\r
-<link href="doxygen.css" rel="stylesheet" type="text/css">\r
-</head>\r
-<body>\r
- \r
-<center><table WIDTH="96%" >\r
-<tr>\r
-<td><a href="http://www.opencascade.com"><img src="sources/logocorp.gif" BORDER=0 height=46 width=122></a></td>\r
-\r
-\r
-<td>\r
-<div align=right><a href="http://www.opencascade.org/SALOME/"><img src="sources/application.gif" BORDER=0 height=46 width=108></a></div>\r
-</td>\r
-</tr>\r
-</table></center>\r
-\r
-\r
-<h1><a name="page2">General overview</a>\r
-</h1>\r
-<a name="cont"></a><h2>Table of contents </h2>\r
-<b><i>\r
-<ul>\r
- <li><a href="#1">1. Introduction</a></li>\r
- <li><a href="#2">2. Definitions </a></li>\r
- \r
- <li><a href="#3">3. Forms of data visualization </a></li>\r
- <ul>\r
- <li><a href="#3_1">3.1 Data tables</a></li>\r
- <li><a href="#3_2">3.2 XY plots </a></li>\r
- <li><a href="#3_3">3.3 3D presentations </a></li>\r
- </ul>\r
- <li><a href="#4">4. Data structure</a></li>\r
- <li><a href="#5">5. VISU module features and services</a></li>\r
- <ul>\r
- <li><a href="#5_1">5.1 Base class</a></li>\r
- <li><a href="#5_2">5.2 ViewManager class </a></li>\r
- <li><a href="#5_3">5.3 View class </a></li>\r
- <ul>\r
- <li><a href="#5_3_1">5.3.1 3dView class </a></li>\r
- <li><a href="#5_3_2">5.3.2 TableView class </a></li>\r
- <li><a href="#5_3_3">5.3.3 XYPlotView class </a></li>\r
- </ul>\r
- <li><a href="#5_4">5.4 Result class </a></li>\r
- <li><a href="#5_5">5.5 PrsObject class </a></li>\r
- <ul>\r
- <li><a href="#5_5_1">5.5.1 Curve class </a></li>\r
- <li><a href="#5_5_2">5.5.2 Table class </a></li>\r
- <li><a href="#5_5_3">5.5.3 Container class </a></li>\r
- <li><a href="#5_5_4">5.5.4 Prs3d class </a></li>\r
- <li><a href="#5_5_5">5.5.5 Mesh class </a></li>\r
- <li><a href="#5_5_6">5.5.6 ScalarMap class </a></li>\r
- <li><a href="#5_5_7">5.5.7 CutLines class </a></li>\r
- <li><a href="#5_5_8">5.5.8 CutPlanes class </a></li>\r
- <li><a href="#5_5_9">5.5.9 IsoSurfaces class </a></li>\r
- <li><a href="#5_5_10">5.5.10 DeformedShape class </a></li>\r
- <li><a href="#5_5_11">5.5.11 Vectors class </a></li>\r
- <li><a href="#5_5_12">5.5.12 StreamLines class </a></li>\r
- \r
- </ul>\r
- <li><a href="#5_6">5.6 Animation class </a></li>\r
- <li><a href="#5_7">5.7 VISU_Gen class </a></li>\r
- \r
- </ul>\r
-</ul>\r
-</i> </b> <br>\r
-<a name="1"></a><h2>1. Introduction </h2>\r
-<p>Post-processing module VISU for SALOME is destined for visualization of data \r
- produced by other components. VISU provides various forms of data visualization \r
- including: </p>\r
- \r
-<ul>\r
- <li>Data tables, </li>\r
- <li>XY plots based on data from tables, </li>\r
- <li>3D presentations, </li> \r
- <ul>\r
- <li> Scalar Map,</li>\r
- <li> Deformed Shape, </li>\r
- <li> Vectors,</li>\r
- <li> Iso Surfaces,</li>\r
- <li> Cut Planes,</li>\r
- <li> Stream Lines,</li>\r
- <li> Cut Lines.</li>\r
- </ul>\r
-</ul>\r
-<i><a href="#cont">Back to the contents</a></i>\r
-<a name="2"></a><h2>2. Defintions </h2>\r
-<p>The following terms are used for presentation of the VISU module:</p>\r
-<dl>\r
-<dt><b>Study</b></dt> \r
-<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>\r
-<dt><b>Component</b></dt> \r
-<dd>a SALOME software module that implements predefined interfaces. \r
-The component provides the data for the SALOME study in a form of links (stored in the Study) \r
-to the specific data stored in the component. All components are CORBA servers and it allows them \r
-to be running on different host stations.</dd>\r
-<dt><b>Geometry</b></dt> <dd>a coherent set of data produced by component GEOM or any other geometry tool \r
-and imported using geometry exchange interface (like BRep, IGES and so on).</dd>\r
-<dt><b>Mesh</b></dt> <dd>a collection of elements used as a support for numeric simulation.</dd>\r
-<dt><b>Field</b></dt> <dd>the set of results of the same type allocated to mesh elements. \r
-Fields can be one of next types: scalars, vectors, tensors, matrices, character strings.</dd>\r
-</dl>\r
-<i><a href="#cont">Back to the contents</a></i>\r
-<a name="3"></a><h2>3. Forms of data visualization </h2>\r
-<a name="3_1"></a><h3>3.1 Data tables </h3>\r
-<p>Table represents data in spreadsheet-like form. For these purposes the QTable \r
- widget will be provided. This widget can be reused in any module for any dialog \r
- box as a control. For post-processing data visualization needs this widget is \r
- used inside of Table window (based on non-modal window frame). Data represented \r
- in Table window of post-processing module is be editable. </p>\r
- <a name="3_2"></a> <h3>3.2 XY plots</h3>\r
-<p>XY plot represents calculation data in form of 2D (XY) plotting. \r
-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. \r
-The QWT extension of QT toolkit is used for XY plotting. \r
-QWT provides unlimited number of displayed curves (data sets) and supports logarithmic scale, zooming, and selection.</p>\r
-<a name="3_3"></a>\r
-<h3>3.3 3D presentations </h3>\r
-<p>A 3D presentation shows geometry, mesh and fields in 3D space. \r
-Provides selection, rotation, zooming, scaling, and panning of 3d scene. \r
-Color bar for scalar data presentation is supplied. \r
-For 3D presentation window of the current implementation of VTK viewer in study window is used.</p>\r
-<i><a href="#cont">Back to the contents</a></i>\r
-<a name="4"></a><h2>4. Data structure </h2>\r
-<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>\r
-<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>\r
-<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>\r
-<p>Presentation is represented in data structure in form of list of presentation creation parameters. This could be:</p>\r
-<ul>\r
-<li>Presentation type (table, XY plot, 3d view);</li>\r
-<li>Presentation subtype (for example for 3d: scalar map, iso-surfaces, combined view and so on);</li>\r
-<li>Parameters of the presentation dependently on its type (number of colors, type of scale, font parameters, grid parameters and so on).</li>\r
-</ul>\r
-<p>Parameters of presentation are persistent data, which will be stored in study file.</p>\r
-\r
-\r
-<div align="center"><img src="DataStruct.gif"> </div>\r
-<i><a href="#cont">Back to the contents</a></i>\r
-<a name="5"></a><h2>5. VISU module features and services </h2>\r
-<p>The functionality of the VISU module is provided by a set of classes which are combined into \r
-the <b>VISU</b> package.\r
-<p>The API reference of the VISU component can be found <a href="namespaceVISU.html">here</a>.</p>\r
-<a name="5_1"></a><h3>5.1 Base class</h3>\r
-<p>This is a root class for all objects of the VISU module.</p>\r
- <p>The API reference for this class can be found <a href="interfaceVISU_1_1Base.html">here</a>.</p>\r
-\r
-<a name="5_2"></a><h3>5.2 ViewManager class</h3>\r
-<p>This class is used for management of the view windows (creation and deletion).</p>\r
- <p>The API reference for this class can be found <a href="interfaceVISU_1_1ViewManager.html">here</a>.</p>\r
-\r
-<a name="5_3"></a><h3>5.3 View class</h3>\r
-<p>View class is a base for all other classes, necessary for creation of different views .</p>\r
- \r
-<div align="center"><img src="View.gif"> </div>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1View.html">here</a>.</p>\r
-\r
-<a name="5_3_1"></a><h4>5.3.1 3dView class</h4>\r
-<p>This class provides a set of methods for creation of a 3d view window.</p>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_13dView.html">here</a>.</p>\r
-\r
-<a name="5_3_2"></a><h4>5.3.2 TableView class</h4>\r
-<p>This class provides a set of methods for creation of a Table view window.</p>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1TableView.html">here</a>.</p>\r
-\r
-<a name="5_3_3"></a><h4>5.3.3 XYPlotView class</h4>\r
-<p>This class provides a set of methods for creation of a XYPlot view window.</p>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1XYPlotView.html">here</a>.</p>\r
-\r
-<a name="5_4"></a><h3>5.4 Result class</h3>\r
-<p>This class serves for inner representation of data generated in other sources. \r
-(MED object or file) This data is needed for further construction of graphical presentations.</p> \r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1Result.html">here</a>.</p>\r
-<a name="5_5"></a><h3>5.5 PrsObject class</h3>\r
-<p>It is the root class of all presentable objects. </p>\r
-<div align="center"><img src="PrsObj.gif"> </div>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1PrsObject.html">here</a>.</p>\r
-\r
-<a name="5_5_1"></a><h4>5.5.1 Curve class</h4>\r
-<p>Manages presentation parameters of one curve. \r
-This object can be used for presentation of set of curves using Container class. </p>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1Curve.html">here</a>.</p>\r
-\r
-<a name="5_5_2"></a><h4>5.5.2 Table class</h4>\r
-<p>Manages presentation parameters of a table. </p>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1Table.html">here</a>.</p>\r
-\r
-<a name="5_5_3"></a><h4>5.5.3 Container class</h4>\r
-<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. \r
-</p>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1Container.html">here</a>.</p>\r
-\r
-<a name="5_5_4"></a><h4>5.5.4 Prs3d class</h4>\r
-<p>Root class for all 3D presentations. </p>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1Prs3d.html">here</a>.</p>\r
-\r
-<a name="5_5_5"></a><h4>5.5.5 Mesh class</h4>\r
-<p>Manages presentation parameters of a 3D presentattion of a mesh. \r
-This object can be used for presentation of set of curves using Container class. </p>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1Mesh.html">here</a>.</p>\r
-\r
-<a name="5_5_6"></a><h4>5.5.6 ScalarMap class</h4>\r
-<p>Manages presentation parameters of the scalar bar. </p>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1ScalarMap.html">here</a>.</p>\r
-\r
-<a name="5_5_7"></a><h4>5.5.7 CutLines class</h4>\r
-<p>Manages presentation parameters of the cut lines presentation. </p>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1CutLines.html">here</a>.</p>\r
-\r
-<a name="5_5_8"></a><h4>5.5.8 CutPlanes class</h4>\r
-<p>Manages presentation parameters of the cut planes presentation. </p>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1CutPlanes.html">here</a>.</p>\r
-\r
-<a name="5_5_9"></a><h4>5.5.9 IsoSurfaces class</h4>\r
-<p>Manages presentation parameters of the iso surfaces presentation. </p>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1IsoSurfaces.html">here</a>.</p>\r
-\r
-<a name="5_5_10"></a><h4>5.5.10 DeformedShape class</h4>\r
-<p>Manages presentation parameters of the deformed shape presentation. </p>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1DeformedShape.html">here</a>.</p>\r
-\r
-<a name="5_5_11"></a><h4>5.5.11 Vectors class</h4>\r
-<p>Manages presentation parameters of the vector presentation. </p>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1Vectors.html">here</a>.</p>\r
-\r
-<a name="5_5_12"></a><h4>5.5.12 StreamLines class</h4>\r
-<p>Manages presentation parameters of the streamlines presentation. </p>\r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1StreamLines.html">here</a>.</p>\r
-\r
-<a name="5_6"></a><h3>5.6 Animation class</h3>\r
-<p>This class provides a set of methods used for:</p>\r
-<ul>\r
- <li>generating different animations, </li>\r
- <li>setting the parameters of the animations,</li>\r
- <li>playing these animations in the VISU module.</li>\r
-</ul> \r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1Animation.html">here</a>.</p>\r
-\r
-<a name="5_7"></a><h3>5.7 VISU_Gen class</h3>\r
-<p>This is the main clas of the VISU component in SALOME application. It is used for , \r
-using the views provided by ViewManager. This class provides a set of methods used for:</p>\r
-<ul>\r
- <li>creation of all types of post-processing presentations from given Result and Table object reference </li>\r
- <li>creation of animations</li>\r
- \r
-</ul> \r
-<p>The API reference for this class can be found <a href="interfaceVISU_1_1VISU__Gen.html">here</a>.</p>\r
-<i><a href="#cont">Back to the contents</a></i>\r
-</body>\r
-</html>\r
+++ /dev/null
-<!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>
-
-<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>
+++ /dev/null
-foldersTree = gFld("<b>SALOME v.2.1.0 </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"))
-*/
+++ /dev/null
-//****************************************************************
-// 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+"> </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
+++ /dev/null
-# Copyright (C) 2005 CEA/DEN, EDF R&D
-#
-#
-#
-# File : Makefile.in
-# Author : Vasily Rusyaev (Open Cascade NN)
-# Module : examples
-# $Header:
-
-top_srcdir=@top_srcdir@
-top_builddir=..
-srcdir=@srcdir@
-VPATH=.:@srcdir@
-curdir = $(shell pwd)
-instdatadir=${prefix}/examples
-
-SUBDIRS=.
-
-@COMMENCE@
-
-data:
- (cd $(srcdir) ; cp -fr `ls | grep -v "Makefile.in"` $(curdir))
-
-clean:
- rm -rf `ls | grep -v "Makefile"`
-
-install:
- rm -rf $(instdatadir)
- mkdir $(instdatadir)
- cp -rf `ls | grep -v "Makefile"` $(instdatadir)
-
-uninstall:
- rm -rf $(instdatadir)
+++ /dev/null
-# 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
-import VISU
-import os
-
-datadir = os.getenv("VISU_ROOT_DIR") + "/examples/"
-
-#%====================Stage1: Creating a new study====================%
-
-print "**** Stage1: Creating a new study"
-
-print "Creating a new study..................",
-myVisu = visu_gui.myVisu
-myVisu.SetCurrentStudy(salome.myStudy)
-myViewManager = myVisu.GetViewManager()
-if myViewManager is None : print "Error"
-else : print "OK"
-
-#%====================Stage2: Importing MED file====================%
-
-print "**** Stage2: Importing MED file"
-
-print 'Import "ResOK_0000.med"...............',
-medFile = datadir + "ResOK_0000.med"
-myResult = myVisu.ImportFile(medFile)
-if myResult is None : print "Error"
-else : print "OK"
-
-print 'Creating new View3D...................',
-myView = myViewManager.Create3DView()
-if myView is None : print "Error"
-else : print "OK"
-
-myMeshName = 'dom'
-myCellEntity = VISU.CELL
-myNodeEntity = VISU.NODE
-
-#%====================Stage3: Displaying vector field====================%
-
-print "**** Stage3: Displaying vector field"
-
-print "Creating Scalar Map.......",
-scalarmap = myVisu.ScalarMapOnField(myResult,myMeshName,myNodeEntity,'vitesse',1);
-if scalarmap is None : print "Error"
-else : print "OK"
-scalarmap.SetSize(0.15, 0.8)
-myView.DisplayOnly(scalarmap)
-myView.FitAll()
-
-print "Creating Stream Lines.....",
-streamlines = myVisu.StreamLinesOnField(myResult,myMeshName,myNodeEntity,'vitesse',1);
-if streamlines is None : print "Error"
-else : print "OK"
-myView.DisplayOnly(streamlines)
-
-print "Creating Vectors..........",
-vectors = myVisu.VectorsOnField(myResult,myMeshName,myNodeEntity,'vitesse',1);
-if vectors is None : print "Error"
-else : print "OK"
-myView.DisplayOnly(vectors)
-
-
-print "Creating Iso Surfaces.....",
-isosurfaces = myVisu.IsoSurfacesOnField(myResult,myMeshName,myNodeEntity,'vitesse',1);
-if isosurfaces is None : print "Error"
-else : print "OK"
-myView.DisplayOnly(isosurfaces)
-
-print "Creating Cut Planes.......",
-cutplanes = myVisu.CutPlanesOnField(myResult,myMeshName,myNodeEntity,'vitesse',1);
-if cutplanes is None : print "Error"
-else : print "OK"
-cutplanes.SetNbPlanes(30)
-cutplanes.SetOrientation(VISU.CutPlanes.YZ, 0, 0)
-myView.DisplayOnly(cutplanes)
-
-#%====================Stage4: Opening a new study and Med file import====================%
-
-print "**** Stage4: Opening a new study and Med file import"
-
-print "Creating a new study..................",
-newStudy = salome.myStudyManager.NewStudy('newStudy')
-myVisu.SetCurrentStudy(newStudy)
-myViewManager = myVisu.GetViewManager()
-myView = myViewManager.Create3DView()
-if myView is None : print "Error"
-else : print "OK"
-
-print 'Importing "Fields_group3D.med"........',
-medFile = datadir + "Fields_group3D.med"
-myResult1 = myVisu.ImportFile(medFile)
-if myResult1 is None : print "Error"
-myView1 = myViewManager.Create3DView()
-if myView1 is None : print "Error"
-else : print "OK"
-
-#%====================Stage5: Displaying scalar field====================%
-
-print "**** Stage5: Displaying scalar field"
-
-myMeshName1 = 'mailles_MED'
-
-print "Creating Scalar Map.......",
-scalarmap1 = myVisu.ScalarMapOnField(myResult1,myMeshName1,myCellEntity,'scalar field',1);
-if scalarmap1 is None : print "Error"
-else : print "OK"
-myView1.DisplayOnly(scalarmap1)
-myView1.FitAll()
-
-print "Creating Iso Surfaces.....",
-isosurfaces1 = myVisu.IsoSurfacesOnField(myResult1,myMeshName1,myCellEntity,'scalar field',1);
-if isosurfaces1 is None : print "Error"
-else : print "OK"
-myView1.DisplayOnly(isosurfaces1)
-
-print "Creating Cut Planes.......",
-cutplanes1 = myVisu.CutPlanesOnField(myResult1,myMeshName1,myCellEntity,'scalar field',1);
-if cutplanes1 is None : print "Error"
-else : print "OK"
-cutplanes1.SetOrientation(VISU.CutPlanes.YZ, 0, 0)
-myView1.DisplayOnly(cutplanes1)
-
-#%====================Stage6: Object browser popup====================%
-
-print "**** Stage6: Object browser popup"
-
-print "Creating mesh.............",
-mesh = myVisu.MeshOnEntity(myResult1,myMeshName1,myCellEntity);
-if mesh is None : print "Error"
-else : print "OK"
-myView1.DisplayOnly(mesh)
-
-
-print "Changing type of presentation of mesh:"
-mesh.SetPresentationType(VISU.WIREFRAME)
-PrsType = mesh.GetPresentationType()
-print "Presentation type..", PrsType
-myView1.DisplayOnly(mesh)
-
-mesh.SetPresentationType(VISU.SHADED)
-PrsType = mesh.GetPresentationType()
-print "Presentation type.....", PrsType
-myView1.DisplayOnly(mesh)
-
-mesh.SetPresentationType(VISU.POINT)
-PrsType = mesh.GetPresentationType()
-print "Presentation type......", PrsType
-myView1.DisplayOnly(mesh)
-myView1.Update()
-
-mesh.SetPresentationType(VISU.SHRINK)
-PrsType = mesh.GetPresentationType()
-print "Presentation type.....", PrsType
-myView1.DisplayOnly(mesh)
-
-print "Changing color of mesh....",
-aColor = SALOMEDS.Color(0,0,1)
-mesh.SetCellColor(aColor)
-myView1.DisplayOnly(mesh)
-print "OK"
-
-print "Renaming ScalarMap........",
-SObj = newStudy.FindObjectIOR(scalarmap1.GetID())
-newName = 'Renamed Object'
-SObj.Name = newName
-print "OK"
-
-print "Deleting Cut Planes.......",
-SObj = newStudy.FindObjectIOR(cutplanes1.GetID())
-myBuilder = newStudy.NewBuilder()
-myBuilder.RemoveObject(SObj)
-print "OK"
-
-print "Changing first IsoSurfaces",
-myVisu.SetCurrentStudy(salome.myStudy)
-myView.DisplayOnly(isosurfaces)
-isosurfaces.SetNbSurfaces(25)
-print "OK"
-
-myView.Maximize()
-myView.DisplayOnly(isosurfaces)
-
-print "Hide IsoSurfaces..........",
-myView.Erase(isosurfaces)
-print "OK"
+++ /dev/null
-# T 2.24: Save/retrieve view parameters.
-# Uses MED file fra.med from ${KERNEL_ROOT_DIR}/examples directory.
-#
-# This script is equivalent to non-regression test script 003/A3
-
-import salome
-import visu_gui
-import SALOMEDS
-import VISU
-import os
-
-medFile = os.getenv("KERNEL_ROOT_DIR") + "/examples/fra.med"
-
-#%====================Stage1: Creating a new study====================%
-
-print "**** Stage1: Creating a new study "
-
-print "Creating a new study..................",
-myVisu = visu_gui.myVisu
-myVisu.SetCurrentStudy(salome.myStudy)
-myViewManager = myVisu.GetViewManager()
-if myViewManager is None : print "Error"
-else : print "OK"
-
-#%====================Stage2: Saving view parameters before import====================%
-
-print "**** Stage2: Saving view parameters before import "
-
-myView = myViewManager.Create3DView()
-
-print "Zooming trihedron.....................",
-aScale = myView.GetParallelScale()
-myView.SetParallelScale(aScale*4)
-print "OK"
-
-print "Rotating trihedron....................",
-aPoint = (100,100,100)
-myView.SetPointOfView(aPoint)
-print "OK"
-
-print "Saving view parameters................",
-aViewParamsName1 = 'ViewParams:1'
-aSaveRes = myView.SaveViewParams(aViewParamsName1)
-if aSaveRes != 1 : print "Error"
-else : print "OK"
-
-#%====================Stage3: Import MED file====================%
-
-print "**** Stage3: Import MED file"
-
-print 'Importing "fra.med"...................',
-myResult = myVisu.ImportFile(medFile)
-if myResult is None : print "Error"
-else : print "OK"
-
-print "Creating mesh.........................",
-myMeshName = 'LE VOLUME'
-myCellEntity = VISU.CELL
-mesh = myVisu.MeshOnEntity(myResult,myMeshName,myCellEntity);
-if mesh is None : print "Error"
-else : print "OK"
-
-myView.Maximize()
-myView.Display(mesh)
-myView.FitAll()
-
-#%====================Stage4: Saving view parameters after import====================%
-
-print "**** Stage4: Saving view parameters after import"
-
-print "Creating Scalar Map...................",
-myFieldName = 'TAUX_DE_VIDE'
-myNodeEntity = VISU.NODE
-scalarmap = myVisu.ScalarMapOnField(myResult,myMeshName,myNodeEntity,myFieldName,1);
-if scalarmap is None : print "Error"
-else : print "OK"
-myView.DisplayOnly(scalarmap)
-
-print "Zooming 3D view.......................",
-aScale = myView.GetParallelScale()
-myView.SetParallelScale(aScale*2)
-print "OK"
-
-print "Setting view point(LEFT)..............",
-myView.SetView((VISU.View3D.LEFT))
-print "OK"
-
-print "Saving view parameters................",
-aViewParamsName2 = 'ViewParams:2'
-aSaveRes = myView.SaveViewParams(aViewParamsName2)
-if aSaveRes != 1 : print "Error"
-else : print "OK"
-
-print "Creating Cut Planes...................",
-cutplanes = myVisu.CutPlanesOnField(myResult,myMeshName,myNodeEntity,myFieldName,1);
-if cutplanes is None : print "Error"
-else : print "OK"
-cutplanes.SetNbPlanes(4)
-myView.DisplayOnly(cutplanes)
-
-print "Setting scaling.......................",
-
-#Define parameters of scaling:
-myXParam = 5
-myYParam = 5
-myZParam = 1
-
-myXAxis = VISU.View3D.XAxis
-myYAxis = VISU.View3D.YAxis
-myZAxis = VISU.View3D.ZAxis
-
-myView.ScaleView(myXAxis,myXParam)
-myView.ScaleView(myYAxis,myYParam)
-myView.ScaleView(myZAxis,myZParam)
-print "OK"
-
-print "Rotating 3d view......................",
-aPoint = (100,40,0)
-myView.SetPointOfView(aPoint)
-print "OK"
-
-print "Fit All...............................",
-myView.FitAll()
-print "OK"
-
-print "Saving view parameters................",
-aViewParamsName3 = 'ViewParams:3'
-aSaveRes = myView.SaveViewParams(aViewParamsName3)
-if aSaveRes != 1 : print "Error"
-else : print "OK"
-
-#%====================Stage5: Restoring view parameters====================%
-
-print "**** Stage5: Restoring view parameters"
-
-print "Restoring first view parameters.......",
-aRestoreRes = myView.RestoreViewParams(aViewParamsName1)
-if aRestoreRes != 1 : print "Error"
-else : print "OK"
-
-print "Restoring second view parameters......",
-aRestoreRes = myView.RestoreViewParams(aViewParamsName2)
-if aRestoreRes != 1 : print "Error"
-else : print "OK"
-
-print "Displaing only Scalar Map.............",
-myView.DisplayOnly(scalarmap)
-print "OK"
-
-print "Displaing only Cut Planes.............",
-myView.DisplayOnly(cutplanes)
-print "OK"
-
-print "Restoring third view parameters.......",
-aRestoreRes = myView.RestoreViewParams(aViewParamsName3)
-if aRestoreRes != 1 : print "Error"
-else : print "OK"
-
-print "Displaing only Mesh...................",
-myView.DisplayOnly(mesh)
-print "OK"
-
-print "Displaing only Scalar Map.............",
-myView.DisplayOnly(scalarmap)
-print "OK"
-
-print "Displaing only Cut Planes.............",
-myView.DisplayOnly(cutplanes)
-print "OK"
-
-#%====================Stage6: Changing of view parameters====================%
-
-print "**** Stage6: Changing of view parameters"
-
-print "Remove scaling........................",
-myView.RemoveScale()
-print "OK"
-
-print "Fit All...............................",
-myView.FitAll()
-print "OK"
-
-print "Rotating 3d view......................",
-aPoint = (0,60,150)
-myView.SetPointOfView(aPoint)
-print "OK"
-
-print "Resaving first view parameters........",
-aSaveRes = myView.SaveViewParams(aViewParamsName1)
-if aSaveRes != 1 : print "Error"
-else : print "OK"
-
-print "Restoring third view parameters.......",
-aRestoreRes = myView.RestoreViewParams(aViewParamsName3)
-if aRestoreRes != 1 : print "Error"
-else : print "OK"
-
-print "Restoring first view parameters.......",
-aRestoreRes = myView.RestoreViewParams(aViewParamsName1)
-if aRestoreRes != 1 : print "Error"
-else : print "OK"
-
-print "Displaying only Mesh..................",
-myView.DisplayOnly(mesh)
-print "OK"
-
-print "Displaying only Scalar Map............",
-myView.DisplayOnly(scalarmap)
-print "OK"
-
-#%====================Stage7: Saving of created view parameters====================%
-
-print "**** Stage7: Saving of created view parameters"
-
-print "Saving study..........................",
-
-str = os.getenv("TmpDir")
-if str == None:
- str = "/tmp"
-
-file = str+'/VISU_005.hdf'
-
-salome.myStudyManager.SaveAs(file, salome.myStudy, 0)
-study_id = salome.myStudy._get_StudyId()
-#salome.sg.CloseStudy(study_id)
-#salome.myStudyManager.Close(salome.myStudy)
-#salome.myStudy.Close()
-print "OK"
-
-print "Opening just saved study..............",
-
-openedStudy = salome.myStudyManager.Open(file)
-myVisu.SetCurrentStudy(openedStudy)
-myViewManager = myVisu.GetViewManager()
-myView1 = myViewManager.Create3DView()
-if myView1 is None : print "Error"
-else : print "OK"
-
-print "Restoring first view parameters.......",
-aRestoreRes = myView1.RestoreViewParams(aViewParamsName1)
-if aRestoreRes != 1 : print "Error"
-else : print "OK"
-
-Builder = openedStudy.NewBuilder()
-SCom = openedStudy.FindComponent("VISU")
-Builder.LoadWith(SCom ,myVisu)
-
-print "Displaying Scalar Map.................",
-SObj = openedStudy.FindObject('ScalarMap')
-scalarmap1 = visu_gui.visu.SObjectToObject(SObj)
-if scalarmap1 is None : print "Error"
-else : print "OK"
-myView1.DisplayOnly(scalarmap1)
-
-print "Displaying Cut Planes.................",
-SObj = openedStudy.FindObject('CutPlanes')
-cutplanes1 = visu_gui.visu.SObjectToObject(SObj)
-if cutplanes1 is None : print "Error"
-else : print "OK"
-myView1.DisplayOnly(cutplanes1)
-
-print "Restoring second view parameters......",
-aRestoreRes = myView1.RestoreViewParams(aViewParamsName2)
-if aRestoreRes != 1 : print "Error"
-else : print "OK"
-
-print "Displaying Scalar Map.................",
-myView1.DisplayOnly(scalarmap1)
-print "OK"
-
-print "Restoring third view parameters.......",
-aRestoreRes = myView1.RestoreViewParams(aViewParamsName3)
-if aRestoreRes != 1 : print "Error"
-else : print "OK"
-
-print "Displaying Cut Planes.................",
-myView1.DisplayOnly(cutplanes1)
-print "OK"
-
-#%====================Stage8: Changing of saved session====================%
-
-print "**** Stage8: Changing of saved session"
-
-print "Deleting ViewParams:3,1,2.............",
-SObj = openedStudy.FindObject(aViewParamsName3)
-Builder.RemoveObject(SObj)
-SObj = openedStudy.FindObject(aViewParamsName1)
-Builder.RemoveObject(SObj)
-SObj = openedStudy.FindObject(aViewParamsName2)
-Builder.RemoveObject(SObj)
-print "OK"
-
-SObjList2 = openedStudy.FindObjectByName(aViewParamsName1, "VISU")
-print "FindObjectByName(aViewParamsName1, VISU) returned ", len(SObjList2), " objects"
-
-print "Zooming trihedron.....................",
-aScale = myView.GetParallelScale()
-myView1.SetParallelScale(aScale*2)
-myView1.Update()
-print "OK"
-
-print "Rotating trihedron....................",
-aPoint = (200,40,-40)
-myView1.SetPointOfView(aPoint)
-print "OK"
-
-print "Saving view parameters................",
-aSaveRes = myView1.SaveViewParams(aViewParamsName1)
-if aSaveRes != 1 : print "Error"
-else : print "OK"
-
-print "Renaming ViewParams:1.................",
-SObj = openedStudy.FindObject(aViewParamsName1)
-SObj.Name = "New_view"
-print "OK"
-
-print "Setting scaling.......................",
-#Define parameters of scaling:
-myXParam = 4
-myYParam = 4
-myZParam = 8
-
-myXAxis = VISU.View3D.XAxis
-myYAxis = VISU.View3D.YAxis
-myZAxis = VISU.View3D.ZAxis
-
-myView1.ScaleView(myXAxis,myXParam)
-myView1.ScaleView(myYAxis,myYParam)
-myView1.ScaleView(myZAxis,myZParam)
-print "OK"
-
-myView1.FitAll()
-
-print "Saving view parameters................",
-aSaveRes = myView1.SaveViewParams(aViewParamsName2)
-if aSaveRes != 1 : print "Error"
-else : print "OK"
-
-print "Restoring first view parameters.......",
-aRestoreRes = myView1.RestoreViewParams(aViewParamsName1)
-if aSaveRes != 1 : print "Error"
-else : print "OK"
-
-print "Restoring second view parameters......",
-aRestoreRes = myView1.RestoreViewParams(aViewParamsName2)
-if aRestoreRes != 1 : print "Error"
-else : print "OK"
-
+++ /dev/null
-# 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
-import VISU
-import os
-import time
-
-medFile = os.getenv("KERNEL_ROOT_DIR") + "/examples/TimeStamps.med"
-
-print 'Importing "TimeStamps.med"................',
-myVisu = visu_gui.myVisu
-myResult = myVisu.ImportFile(medFile)
-if myResult is None : print "Error"
-else : print "OK"
-
-print "Creating Cut Lines........................",
-medMesh = 'dom'
-medField = "vitesse"
-aCutLines = myVisu.CutLinesOnField(myResult,'dom',VISU.NODE,medField,1.0)
-aCutLines.SetOrientation(VISU.CutPlanes.XY, 0, 0)
-aCutLines.SetOrientation2(VISU.CutPlanes.ZX, 0, 0)
-aCutLines.SetNbLines(20)
-if aCutLines is None : print "Error"
-else : print "OK"
-
-print "Creating a Viewer.........................",
-myViewManager = myVisu.GetViewManager();
-myView = myViewManager.Create3DView();
-if myView is None : print "Error"
-else : print "OK"
-myView.Display(aCutLines);
-myView.FitAll();
-
-aCutLinesSObj = salome.myStudy.FindObjectIOR(aCutLines.GetID())
-aFather = aCutLinesSObj.GetFather().GetFather();
-
-print "Creating an Animation.....................",
-myAnim = myVisu.CreateAnimation(myView);
-if myAnim is None : print "Error"
-else : print "OK"
-
-print "Animation.................................",
-myAnim.addField(aFather);
-myAnim.generatePresentations(0);
-myAnim.generateFrames();
-myAnim.setSpeed(33)
-myAnim.startAnimation();
-
-myView.FitAll()
-while 1:
- time.sleep(1)
- if not myAnim.isRunning():
- myAnim.stopAnimation()
- break
-
-print "OK"
+++ /dev/null
-# 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 ${KERNEL_ROOT_DIR}/examples 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
-import VISU
-import SALOMEDS
-from visu_gui import *
-
-aDelay = 1
-
-myViewManager = myVisu.GetViewManager();
-
-myView = myViewManager.Create3DView();
-myView.SetTitle("The window will be soon destroyed!")
-print "myViewManager.Create3DView()"
-time.sleep(aDelay)
-
-myView.Maximize()
-print "myView.Maximize()"
-time.sleep(aDelay)
-
-myView.Restore()
-print "myView.Restore()"
-time.sleep(aDelay)
-
-myView.Minimize()
-print "myView.Minimize()"
-time.sleep(aDelay)
-
-myViewManager.Destroy(myView)
-print "myViewManager.Destroy(myView)"
-time.sleep(aDelay)
-
-
-medFile = "fra.med"
-myFieldName = "VITESSE";
-
-aMeshName ="LE VOLUME"
-anEntity = VISU.NODE
-aTimeStampId = 1
-
-medFile = os.getenv('KERNEL_ROOT_DIR') + '/examples/' + medFile
-myResult = myVisu.ImportFile(medFile)
-
-myView = myViewManager.Create3DView();
-
-print "myView.SetBackground(...)"
-aColor = SALOMEDS.Color(0.0,0.3,1.0)
-myView.SetBackground(aColor);
-
-myView.SetTitle("The viewer will display ScalarMap")
-print "myViewManager.Create3DView()"
-
-aScalarMap = myVisu.ScalarMapOnField(myResult,aMeshName,anEntity,myFieldName,aTimeStampId)
-
-myView.Display(aScalarMap);
-print "myView.Display(aScalarMap)"
-myView.SetFocalPoint([0,0,0]);
-print "myView.SetFocalPoint(...)"
-myView.SetParallelScale(2);
-print "myView.SetParallelScale(...)"
-myView.FitAll();
-
-aMax = aScalarMap.GetMax()
-aMin = aScalarMap.GetMin()
-aDelta = (aMax - aMin)/2.0
-aNbColors = aScalarMap.GetNbColors()
-aNbColors = 64
-for i in range(2,aNbColors) :
- aScalarMap.SetNbColors(i)
- aX = aMin + aDelta*i/aNbColors
- aY = aMax - aDelta*i/aNbColors
- aScalarMap.SetRange(aX,aY)
- myView.Update();
- time.sleep(aDelay)
-
-aScalarMap.SetRange(aMin,aMax)
-
-print "myView.Update()"
-myView.Update();
-print "myView.FitAll()"
-myView.FitAll();
-
-
-myView = myViewManager.Create3DView();
-myView.SetTitle("Here we will display CutPlanes")
-
-print "myView.SetBackground(...)"
-aColor = SALOMEDS.Color(0.0,0.7,0.0)
-myView.SetBackground(aColor);
-
-aCutPlanes = myVisu.CutPlanesOnField(myResult,aMeshName,anEntity,myFieldName,aTimeStampId)
-print "myVisu.CutPlanesOnField(...)"
-
-myView.DisplayOnly(aCutPlanes);
-print "myView.DisplayOnly(aCutPlanes)"
-
-aPoint = myView.GetPointOfView();
-aPoint[0] = aPoint[0] + 10;
-myView.SetPointOfView(aPoint);
-print "myView.SetPointOfView(...)"
-myView.ScaleView(VISU.View3D.YAxis,10.0);
-myView.ScaleView(VISU.View3D.XAxis,3.0);
-print "myView.ScaleView(...)"
-time.sleep(aDelay)
-
-myView.FitAll();
-
-aNbPlanes = aCutPlanes.GetNbPlanes()
-aNbPlanes = 30
-aXAngle = aCutPlanes.GetRotateX()
-aYAngle = aCutPlanes.GetRotateY()
-anOrientation = aCutPlanes.GetOrientationType()
-for i in range(aNbPlanes,1,-1) :
- aCutPlanes.SetNbPlanes(i)
- aX = math.pi/2.0*(aNbPlanes-i)/aNbPlanes
- aY = math.pi/2.0*(aNbPlanes-i)/aNbPlanes
- aCutPlanes.SetOrientation(anOrientation,aX,aY)
- myView.Update();
- time.sleep(aDelay)
-
-aNbPlanes = 10
-aCutPlanes.SetOrientation(VISU.CutPlanes.ZX,0,0)
-for i in range(1,aNbPlanes) :
- aCutPlanes.SetNbPlanes(i)
- myView.Update();
- time.sleep(aDelay)
-
-myView.SaveViewParams('AAA')
-print "myView.SaveViewParams('AAA')"
-time.sleep(aDelay)
-
-aCutPlanes.SetOrientation(VISU.CutPlanes.XY,0,0)
-myView.RemoveScale();
-
-print "myView.Update()"
-myView.Update();
-print "myView.FitAll()"
-myView.FitAll();
-
-
-myView = myViewManager.Create3DView();
-print "myViewManager.Create3DView()"
-
-myView.SetTitle("IsoSurface's viewer")
-
-print "myView.SetBackground(...)"
-aColor = SALOMEDS.Color(1.0,0.7,0.0)
-myView.SetBackground(aColor);
-time.sleep(aDelay)
-
-aIsoSurfaces = myVisu.IsoSurfacesOnField(myResult, aMeshName, anEntity, myFieldName, aTimeStampId)
-
-myView.DisplayOnly(aIsoSurfaces);
-myView.FitAll();
-print "myView.DisplayOnly(aCutPlanes)"
-time.sleep(aDelay)
-
-aNbSurfaces = aIsoSurfaces.GetNbSurfaces()
-aNbSurfaces = 32
-for i in range(2,aNbSurfaces) :
- aIsoSurfaces.SetNbSurfaces(i)
- myView.Update();
- time.sleep(aDelay)
-
-aIsoSurfaces.SetNbSurfaces(10)
-
-print "myView.Update()"
-myView.Update();
-print "myView.FitAll()"
-myView.FitAll();
-
-
-myView = myViewManager.Create3DView();
-myView.SetTitle("The viewer for CutLines")
-print "myViewManager.Create3DView()"
-time.sleep(aDelay)
-
-print "myView.SetBackground(...)"
-aColor = SALOMEDS.Color(0.7,0.7,0.7)
-myView.SetBackground(aColor);
-time.sleep(aDelay)
-
-aCutLines = myVisu.CutLinesOnField(myResult, aMeshName, anEntity, myFieldName, aTimeStampId)
-aCutLines.SetOrientation(VISU.CutPlanes.ZX,0,0)
-aCutLines.SetOrientation2(VISU.CutPlanes.YZ,0,0)
-
-myView.DisplayOnly(aCutLines);
-myView.FitAll();
-print "myView.DisplayOnly(aCutLines)"
-time.sleep(aDelay)
-
-aSObj = myStudy.FindObjectIOR(aCutLines.GetID())
-aTable = myVisu.CreateTable( aSObj.GetID() )
-print "myVisu.CreateTable(...)"
-
-aTableView = myViewManager.CreateTableView(aTable)
-aTableView.SetTitle('Changed Title')
-
-aContainer = myVisu.CreateContainer()
-print "myVisu.CreateContainer(...)"
-
-aNbCurve = aTable.GetNbRows() - 1
-for i in range(2,aNbCurve):
- aCurve = myVisu.CreateCurve( aTable, 1, i )
- print i, aCurve
- aContainer.AddCurve(aCurve)
-
-
-myView = myViewManager.CreateXYPlot();
-myView.SetTitle("The viewer for Curves from CutLines")
-print "myViewManager.CreateXYPlot()"
-time.sleep(aDelay)
-
-myView.Display(aContainer)
-
-
-myView = myViewManager.Create3DView();
-myView.SetTitle("The viewer for Animation")
-print "myViewManager.Create3DView()"
-time.sleep(aDelay)
-
-medFile = "TimeStamps.med"
-myFieldName = "vitesse";
-
-medFile = os.getenv('KERNEL_ROOT_DIR') + '/examples/' + medFile
-myResult = myVisu.ImportFile(medFile)
-
-anAnim = myVisu.CreateAnimation(myView);
-aSObj = myStudy.FindObjectIOR(myResult.GetID())
-aSObj = aSObj.FindSubObject(1)[1]
-aSObj = aSObj.FindSubObject(2)[1]
-aSObj = aSObj.FindSubObject(2)[1]
-anAnim.addField(aSObj)
-anAnim.setPresentationType(0,VISU.TISOSURFACE)
-print "Generate presentations"
-anAnim.generatePresentations(0)
-print "Generate frames"
-anAnim.generateFrames()
-print "Start Animation"
-anAnim.setSpeed(99)
-anAnim.startAnimation()
-myView.FitAll()
-while 1:
- time.sleep(1+aDelay)
- if not anAnim.isRunning():
- anAnim.stopAnimation()
- break
+++ /dev/null
-# 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
-import VISU
-#from visu_gui import *
-
-# >>> Getting study builder ==================================================
-myStudy = salome.myStudy
-myBuilder = myStudy.NewBuilder()
-
-# >>> Getting (loading) VISU component =======================================
-myVisu = salome.lcc.FindOrLoadComponent("FactoryServer", "VISU")
-myComponent = myStudy.FindComponent("VISU")
-myVisu.SetCurrentStudy(myStudy)
-if not myComponent:
- myComponent = myBuilder.NewComponent("VISU")
- aName = myBuilder.FindOrCreateAttribute(myComponent, "AttributeName")
- aName.SetValue( salome.sg.getComponentUserName("VISU") )
-
- A2 = myBuilder.FindOrCreateAttribute(myComponent, "AttributePixMap");
- aPixmap = A2._narrow(SALOMEDS.AttributePixMap);
- aPixmap.SetPixMap( "ICON_OBJBROWSER_Visu" );
-
- myBuilder.DefineComponentInstance(myComponent,myVisu)
-
-# >>> Creating object with Table of real[ 200 * 20 ] =========================
-myTRealObject = myBuilder.NewObject(myComponent)
-AName = myBuilder.FindOrCreateAttribute(myTRealObject, "AttributeName")
-AName.SetValue("Table Of Real")
-ARealTable = myBuilder.FindOrCreateAttribute(myTRealObject, "AttributeTableOfReal")
-myHorNb = 10
-myVerNb = 200
-
-k={}
-for j in range(0,myHorNb):
- k[j] = j*10+1
-ARealTable.AddRow(k.values())
-ARealTable.SetRowTitle(1, "Frequency")
-ARealTable.SetRowUnit(1, "Hz")
-
-for i in range(1,myVerNb+1):
- for j in range(0,myHorNb):
- if j % 2 == 1:
- k[j] = math.log10(j*30*math.pi/180) * 20 + i * 15 + j*5
- else:
- k[j] = math.sin(j*30*math.pi/180) * 20 + i * 15 + j*5
- ARealTable.AddRow(k.values())
- ARealTable.SetRowTitle(i+1, "Power " + str(i))
- ARealTable.SetRowUnit(i+1, "Wt")
-
-ARealTable.SetTitle("Very useful data")
-
-# >>> Create Visu table ======================================================
-myVisuTableReal = myVisu.CreateTable( myTRealObject.GetID() )
-
-# >>> Create container and insert curves
-myContainer = myVisu.CreateContainer()
-
-# >>> Create curves ==========================================================
-for i in range(1,myVerNb+1):
- myCurve = myVisu.CreateCurve( myVisuTableReal, 1, i+1 )
- myContainer.AddCurve(myCurve)
-
-# >>> Updating Object Browser ================================================
-salome.sg.updateObjBrowser(1)
-
-# >>> Display curves in Plot2d viewer ========================================
-myViewManager = myVisu.GetViewManager();
-myView = myViewManager.CreateXYPlot();
-myView.SetTitle("The viewer for Curves from the Table")
-myView.Display(myContainer)
-
-# ============================================================================
+++ /dev/null
-# Import a table from file and show it in Plot2d viewer
-
-import salome
-import math
-import SALOMEDS
-import VISU
-#from visu_gui import *
-
-# >>> Getting study builder ==================================================
-myStudy = salome.myStudy
-myBuilder = myStudy.NewBuilder()
-
-# >>> Getting (loading) VISU component =======================================
-myVisu = salome.lcc.FindOrLoadComponent("FactoryServer", "VISU")
-myComponent = myStudy.FindComponent("VISU")
-myVisu.SetCurrentStudy(myStudy)
-if not myComponent:
- myComponent = myBuilder.NewComponent("VISU")
- aName = myBuilder.FindOrCreateAttribute(myComponent, "AttributeName")
- #aName.SetValue("Visu")
- aName.SetValue( salome.sg.getComponentUserName("VISU") )
-
- A2 = myBuilder.FindOrCreateAttribute(myComponent, "AttributePixMap");
- aPixmap = A2._narrow(SALOMEDS.AttributePixMap);
- aPixmap.SetPixMap( "ICON_OBJBROWSER_Visu" );
-
- myBuilder.DefineComponentInstance(myComponent,myVisu)
-
-# >>> Import a tables from a file ============================================
-aFileName = os.getenv("VISU_ROOT_DIR") + "/examples/tables_test.xls"
-sobj = myVisu.ImportTables(aFileName)
-
-# >>> Create container and insert curves =====================================
-myContainer = myVisu.CreateContainer()
-
-chiter = myStudy.NewChildIterator(sobj)
-while chiter.More():
- sobj_table = chiter.Value()
-
- # >>> Create Visu table ====================================================
- myVisuTableReal = myVisu.CreateTable(sobj_table.GetID())
-
- nbRows = myVisuTableReal.GetNbRows()
-
- # >>> Create curves ========================================================
- for i in range(1, nbRows):
- myCurve = myVisu.CreateCurve(myVisuTableReal, 1, i+1)
- myContainer.AddCurve(myCurve)
-
- chiter.Next()
-
-# >>> Updating Object Browser ================================================
-salome.sg.updateObjBrowser(1)
-
-# >>> Display curves in Plot2d viewer ========================================
-myViewManager = myVisu.GetViewManager();
-myView = myViewManager.CreateXYPlot();
-myView.SetTitle("The viewer for Curves from the Table")
-myView.Display(myContainer)
-
-# ============================================================================
+++ /dev/null
-0 1
-1 2
-2 2.5
-
-#TITLE: Table toto 1
-#COLUMN_TITLES: toto 1 | titi2 | subtitle 2.3
-#COLUMN_UNITS: s kg/m3 m
-# It's a comment ...
-0 4.3 -3 #TITLE: row title 1
-1 5 6 #TITLE: row title 2
-# Another comment
-2 -7 4.5 #TITLE: row title 3
-
-#TITLE: sinus
-0.0 0.0
-0.01 0.125333233564
-0.02 0.248689887165
-0.03 0.368124552685
-0.04 0.481753674102
-0.05 0.587785252292
-0.06 0.684547105929
-0.07 0.770513242776
-0.08 0.844327925502
-0.09 0.904827052466
-0.1 0.951056516295
-0.11 0.982287250729
-0.12 0.998026728428
-0.13 0.998026728428
-0.14 0.982287250729
-0.15 0.951056516295
-0.16 0.904827052466
-0.17 0.844327925502
-0.18 0.770513242776
-0.19 0.684547105929
-0.2 0.587785252292
-0.21 0.481753674102
-0.22 0.368124552685
-0.23 0.248689887165
-0.24 0.125333233564
-0.25 1.22460635382e-16
-0.26 -0.125333233564
-0.27 -0.248689887165
-0.28 -0.368124552685
-0.29 -0.481753674102
-0.3 -0.587785252292
-0.31 -0.684547105929
-0.32 -0.770513242776
-0.33 -0.844327925502
-0.34 -0.904827052466
-0.35 -0.951056516295
-0.36 -0.982287250729
-0.37 -0.998026728428
-0.38 -0.998026728428
-0.39 -0.982287250729
-0.4 -0.951056516295
-0.41 -0.904827052466
-0.42 -0.844327925502
-0.43 -0.770513242776
-0.44 -0.684547105929
-0.45 -0.587785252292
-0.46 -0.481753674102
-0.47 -0.368124552685
-0.48 -0.248689887165
-0.49 -0.125333233564
-0.5 -2.44921270764e-16
-0.51 0.125333233564
-0.52 0.248689887165
-0.53 0.368124552685
-0.54 0.481753674102
-0.55 0.587785252292
-0.56 0.684547105929
-0.57 0.770513242776
-0.58 0.844327925502
-0.59 0.904827052466
-0.6 0.951056516295
-0.61 0.982287250729
-0.62 0.998026728428
-0.63 0.998026728428
-0.64 0.982287250729
-0.65 0.951056516295
-0.66 0.904827052466
-0.67 0.844327925502
-0.68 0.770513242776
-0.69 0.684547105929
-0.7 0.587785252292
-0.71 0.481753674102
-0.72 0.368124552685
-0.73 0.248689887165
-0.74 0.125333233564
-0.75 3.67381906147e-16
-0.76 -0.125333233564
-0.77 -0.248689887165
-0.78 -0.368124552685
-0.79 -0.481753674102
-0.8 -0.587785252292
-0.81 -0.684547105929
-0.82 -0.770513242776
-0.83 -0.844327925502
-0.84 -0.904827052466
-0.85 -0.951056516295
-0.86 -0.982287250729
-0.87 -0.998026728428
-0.88 -0.998026728428
-0.89 -0.982287250729
-0.9 -0.951056516295
-0.91 -0.904827052466
-0.92 -0.844327925502
-0.93 -0.770513242776
-0.94 -0.684547105929
-0.95 -0.587785252292
-0.96 -0.481753674102
-0.97 -0.368124552685
-0.98 -0.248689887165
-0.99 -0.125333233564
-1.0 -4.89842541529e-16
+++ /dev/null
-#
-# generate dependencies for idl file :
-#
-
-# source path
-top_srcdir=@top_srcdir@
-top_builddir=..
-srcdir=@srcdir@
-VPATH=.:${KERNEL_ROOT_DIR}/idl/salome:${MED_ROOT_DIR}/idl/salome
-
-@COMMENCE@
-
-IDL_FILES = \
- VISU_Gen.idl
-
-PY_CLIENT_IDL = $(IDL_FILES)
-
-# we copy all idl file in $(top_builddir)/idl
-inc: $(top_builddir)/idl/salome $(IDL_FILES:%=$(top_builddir)/idl/salome/%)
-
-$(top_builddir)/idl/salome:
- mkdir $@
-
-$(IDL_FILES:%=$(top_builddir)/idl/salome/%):$(IDL_FILES:%=$(top_srcdir)/idl/%)
-# $(CP) $< $@
- cp -f $^ $(top_builddir)/idl/salome
-
-
-lib: pyidl
-
-PYTHON_BUILD_SITE=$(top_builddir)/lib/python$(PYTHON_VERSION)/site-packages/@PACKAGE@
-
-pyidl: $(PYTHON_BUILD_SITE) $(IDL_FILES:%.idl=$(PYTHON_BUILD_SITE)/%_idl.py)
-
-$(PYTHON_BUILD_SITE):
- $(INSTALL) -d $@
-
-$(PYTHON_BUILD_SITE)/%_idl.py: $(top_builddir)/idl/salome/%.idl
- $(OMNIORB_IDL) $(OMNIORB_IDLPYFLAGS) -C$(PYTHON_BUILD_SITE) $<
-
-
-# install python client (generated from idl file
-install: install-pyidl install-idl
-
-# create directory $(idldir) and copy idl files into it
-install-idl: $(IDL_FILES:%=$(top_builddir)/idl/salome/%)
- $(INSTALL) -d $(idldir)
- $(INSTALL_DATA) $^ $(idldir)
-
-
-install-pyidl: $(IDL_FILES:%=$(top_builddir)/idl/salome/%)
- $(INSTALL) -d $(PYTHON_SITE_INSTALL)
- @for file in $^ dummy; do \
- if [ $$file != "dummy" ]; then \
- $(OMNIORB_IDL) $(OMNIORB_IDLPYFLAGS) -C$(PYTHON_SITE_INSTALL) $$file ; \
- fi ; \
- done ;
-
-#@ CONCLUDE @
-
-cleandep:
- -$(RM) .dep*
-
-distclean:
- -$(RM) *.py
- -$(RM) $(IDL_FILES:%=$(top_builddir)/idl/salome/%)
- -$(RM) Makefile
-
+++ /dev/null
-language=en
\ No newline at end of file
+++ /dev/null
-<?xml version='1.0' encoding='us-ascii' ?>
-
-<!-- XML component catalog -->
-<begin-catalog>
-
-<!-- Path prefix information -->
-
-<path-prefix-list>
-</path-prefix-list>
-
-<!-- Component list -->
-<component-list>
- <component>
- <!-- Component identification -->
- <component-name>VISU</component-name>
- <component-username>Post-Pro</component-username>
- <component-type>VISU</component-type>
- <component-author>NRI</component-author>
- <component-version>3.0.0</component-version>
- <component-comment>Post-Pro component</component-comment>
- <component-multistudy>1</component-multistudy>
- <component-icone>ModuleVisu.png</component-icone>
- <constraint>hostname = localhost</constraint>
- </component>
-</component-list>
-</begin-catalog>
+++ /dev/null
-<?xml version='1.0' encoding='us-ascii'?>
-<!DOCTYPE application PUBLIC "" "desktop.dtd">
-
-<!-- GUI customization for VISU component -->
-
-<application> <!-- APPLICATION BEGIN -->
-
- title="Visu component"
- date="24/07/2001"
- author="Laurent CORNABE"
- appId="Visu for Salome" >
-
-<desktop> <!-- DESKTOP BEGIN -->
-<menubar> <!-- MENUBAR BEGIN -->
-
-<!-- ************************* File (menubar) ************************************** -->
-<menu-item label-id="File" item-id="1" pos-id="1">
- <popup-item item-id="199" pos-id="8" label-id="Import table from File" icon-id="" tooltip-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="112" pos-id="8" label-id="Import from File" icon-id="" tooltip-id="" accel-id="Ctrl+I" toggle-id="" execute-action=""/>
- <popup-item item-id="113" pos-id="9" label-id="Explore MED File" icon-id="" tooltip-id="" accel-id="Ctrl+M" toggle-id="" execute-action=""/>
- <!--popup-item item-id="122" pos-id="10" label-id="Export to File" icon-id="" tooltip-id="" accel-id="Ctrl+E" toggle-id="" execute-action=""/-->
- <separator pos-id="11"/>
-</menu-item>
-
-<!-- ************************* Visualization (menubar) ************************************** -->
-<menu-item label-id="Visualization" item-id="401" pos-id="3">
- <popup-item item-id="4011" pos-id="" label-id="Scalar Map" icon-id="Visu_scalars.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4012" pos-id="" label-id="Deformed Shape" icon-id="Visu_deformed.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4013" pos-id="" label-id="Vectors" icon-id="Visu_vectors.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4014" pos-id="" label-id="Iso Surfaces" icon-id="Visu_isosurfaces.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4015" pos-id="" label-id="Cut Planes" icon-id="Visu_cutplane.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4018" pos-id="" label-id="Cut Lines" icon-id="Visu_cutlines.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4016" pos-id="" label-id="Stream Lines" icon-id="Visu_streamlines.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4017" pos-id="" label-id="Plot 3D" icon-id="Visu_plot3d.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
-</menu-item>
-
-<!-- ************************* Selection (menubar) ************************************** -->
-<menu-item label-id="Selection" item-id="41" pos-id="4">
- <popup-item item-id="4111" pos-id="" label-id="Selection info..." icon-id="" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
-</menu-item>
-
-<!-- ************************* Representation (menubar) ************************************** -->
-<menu-item label-id="Representation" item-id="42" pos-id="5">
- <submenu label-id="Display Selection" item-id="421" pos-id="">
- <popup-item item-id="4213" pos-id="" label-id="Points" icon-id="Visu_points.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4211" pos-id="" label-id="Wireframe" icon-id="Visu_wireframe.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4212" pos-id="" label-id="Surface" icon-id="Visu_surface.png" tooltip-id=""accel-id="" toggle-id="" execute-action=""/>
- </submenu>
- <endsubmenu />
- <popup-item item-id="422" pos-id="" label-id="Erase All" icon-id="Visu_eraseall.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="423" pos-id="" label-id="Global Selection" icon-id="Visu_selectall.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="424" pos-id="" label-id="Partial Selection" icon-id="Visu_selectonly.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="430" pos-id="" label-id="Scaling" icon-id="Visu_scaling.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="431" pos-id="" label-id="Graduated axes" icon-id="Visu_graduated_axes.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
-</menu-item>
-
-</menubar> <!-- MENUBAR END -->
-
-<!-- ************************* Preferences (menubar) ************************************** -->
-<menu-item label-id="Preferences" item-id="4" pos-id="">
- <submenu label-id="Visu" item-id="50" pos-id="-1">
- <popup-item item-id="51" pos-id="" label-id="Scalar Bar" icon-id="" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="52" pos-id="" label-id="Sweeping" icon-id="" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <separator pos-id=""/>
- <popup-item item-id="53" pos-id="" label-id="Full med loading" icon-id="" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <!-- popup-item item-id="54" pos-id="" label-id="Build default Prs3d" icon-id="" tooltip-id="" accel-id="" toggle-id="" execute-action=""/ -->
- </submenu>
- <endsubmenu />
- <separator pos-id="-1"/>
-</menu-item>
-
-<!-- ################################# ICONS IN TOOLBAR ################################# -->
-<toolbar label-id="Representation Toolbar">
- <toolbutton-item item-id="4213" pos-id="" label-id="Points" icon-id="Visu_points.png" tooltip-id="Points" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4211" pos-id="" label-id="Wireframe" icon-id="Visu_wireframe.png" tooltip-id="Wireframe" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4212" pos-id="" label-id="Surface" icon-id="Visu_surface.png" tooltip-id="Surface" accel-id="" toggle-id="" execute-action=""/>
- <separatorTB/>
- <toolbutton-item item-id="422" pos-id="" label-id="Erase All" icon-id="Visu_eraseall.png" tooltip-id="Erase All" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="423" pos-id="" label-id="Global Selection" icon-id="Visu_selectall.png" tooltip-id="Global Selection" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="424" pos-id="" label-id="Partial Selection" icon-id="Visu_selectonly.png" tooltip-id="Partial Selection" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="430" pos-id="" label-id="Scaling" icon-id="Visu_scaling.png" tooltip-id="Scaling" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="431" pos-id="" label-id="Graduated axes" icon-id="Visu_graduated_axes.png" tooltip-id="Graduated axes" accel-id="" toggle-id="" execute-action=""/>
-</toolbar>
-
-<toolbar label-id="Visualization Toolbar">
- <toolbutton-item item-id="4011" pos-id="" label-id="Scalar Map" icon-id="Visu_scalars.png" tooltip-id="Scalar Map" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4012" pos-id="" label-id="Deformed shape" icon-id="Visu_deformed.png" tooltip-id="Deformed Shape" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4013" pos-id="" label-id="Vectors" icon-id="Visu_vectors.png" tooltip-id="Vectors" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4014" pos-id="" label-id="Iso Surfaces" icon-id="Visu_isosurfaces.png" tooltip-id="Iso Surfaces" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4015" pos-id="" label-id="Cut Planes" icon-id="Visu_cutplane.png" tooltip-id="Cut Planes" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4018" pos-id="" label-id="Cut Lines" icon-id="Visu_cutlines.png" tooltip-id="Cut Lines" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4016" pos-id="" label-id="Stream Lines" icon-id="Visu_streamlines.png" tooltip-id="Stream Lines" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4017" pos-id="" label-id="Plot 3D" icon-id="Visu_plot3d.png" tooltip-id="Plot 3D" accel-id="" toggle-id="" execute-action=""/>
-</toolbar>
-
-</desktop> <!-- DESKTOP END -->
-</application> <!-- APPLICATION END -->
+++ /dev/null
-<?xml version='1.0' encoding='us-ascii'?>
-<!DOCTYPE application PUBLIC "" "desktop.dtd">
-
-<!-- GUI customization for VISU component -->
-
-<application> <!-- APPLICATION BEGIN -->
-
- title="Visu component"
- date="24/07/2001"
- author="Laurent CORNABE"
- appId="Visu for Salome" >
-
-<desktop> <!-- DESKTOP BEGIN -->
-<menubar> <!-- MENUBAR BEGIN -->
-
-<!-- ************************* File (menubar) ************************************** -->
-<menu-item label-id="File" item-id="1" pos-id="1">
- <popup-item item-id="199" pos-id="8" label-id="Import table from File" icon-id="" tooltip-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="112" pos-id="8" label-id="Import from File" icon-id="" tooltip-id="" accel-id="Ctrl+I" toggle-id="" execute-action=""/>
- <popup-item item-id="113" pos-id="9" label-id="Explore MED File" icon-id="" tooltip-id="" accel-id="Ctrl+M" toggle-id="" execute-action=""/>
- <!--popup-item item-id="122" pos-id="10" label-id="Export to File" icon-id="" tooltip-id="" accel-id="Ctrl+E" toggle-id="" execute-action=""/-->
- <separator pos-id="11"/>
-</menu-item>
-
-<!-- ************************* Visualization (menubar) ************************************** -->
-<menu-item label-id="Visualization" item-id="401" pos-id="3">
- <popup-item item-id="4011" pos-id="" label-id="Scalar Map" icon-id="Visu_scalars.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4012" pos-id="" label-id="Deformed Shape" icon-id="Visu_deformed.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4013" pos-id="" label-id="Vectors" icon-id="Visu_vectors.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4014" pos-id="" label-id="Iso Surfaces" icon-id="Visu_isosurfaces.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4015" pos-id="" label-id="Cut Planes" icon-id="Visu_cutplane.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4018" pos-id="" label-id="Cut Lines" icon-id="Visu_cutlines.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4016" pos-id="" label-id="Stream Lines" icon-id="Visu_streamlines.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4017" pos-id="" label-id="Plot 3D" icon-id="Visu_plot3d.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
-</menu-item>
-
-<!-- ************************* Selection (menubar) ************************************** -->
-<menu-item label-id="Selection" item-id="41" pos-id="4">
- <popup-item item-id="4111" pos-id="" label-id="Selection info..." icon-id="" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
-</menu-item>
-
-<!-- ************************* Representation (menubar) ************************************** -->
-<menu-item label-id="Representation" item-id="42" pos-id="5">
- <submenu label-id="Display Selection" item-id="421" pos-id="">
- <popup-item item-id="4213" pos-id="" label-id="Points" icon-id="Visu_points.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4211" pos-id="" label-id="Wireframe" icon-id="Visu_wireframe.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="4212" pos-id="" label-id="Surface" icon-id="Visu_surface.png" tooltip-id=""accel-id="" toggle-id="" execute-action=""/>
- </submenu>
- <endsubmenu />
- <popup-item item-id="422" pos-id="" label-id="Erase All" icon-id="Visu_eraseall.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="423" pos-id="" label-id="Global Selection" icon-id="Visu_selectall.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="424" pos-id="" label-id="Partial Selection" icon-id="Visu_selectonly.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="430" pos-id="" label-id="Scaling" icon-id="Visu_scaling.png" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
-</menu-item>
-
-</menubar> <!-- MENUBAR END -->
-
-<!-- ************************* Preferences (menubar) ************************************** -->
-<menu-item label-id="Preferences" item-id="4" pos-id="">
- <submenu label-id="Visu" item-id="50" pos-id="-1">
- <popup-item item-id="51" pos-id="" label-id="Scalar Bar" icon-id="" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <popup-item item-id="52" pos-id="" label-id="Sweeping" icon-id="" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <separator pos-id=""/>
- <popup-item item-id="53" pos-id="" label-id="Full med loading" icon-id="" tooltip-id="" accel-id="" toggle-id="" execute-action=""/>
- <!-- popup-item item-id="54" pos-id="" label-id="Build default Prs3d" icon-id="" tooltip-id="" accel-id="" toggle-id="" execute-action=""/ -->
- </submenu>
- <endsubmenu />
- <separator pos-id="-1"/>
-</menu-item>
-
-<!-- ################################# ICONS IN TOOLBAR ################################# -->
-<toolbar label-id="Representation Toolbar">
- <toolbutton-item item-id="4213" pos-id="" label-id="Points" icon-id="Visu_points.png" tooltip-id="Points" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4211" pos-id="" label-id="Wireframe" icon-id="Visu_wireframe.png" tooltip-id="Wireframe" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4212" pos-id="" label-id="Surface" icon-id="Visu_surface.png" tooltip-id="Surface" accel-id="" toggle-id="" execute-action=""/>
- <separatorTB/>
- <toolbutton-item item-id="422" pos-id="" label-id="Erase All" icon-id="Visu_eraseall.png" tooltip-id="Erase All" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="423" pos-id="" label-id="Global Selection" icon-id="Visu_selectall.png" tooltip-id="Global Selection" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="424" pos-id="" label-id="Partial Selection" icon-id="Visu_selectonly.png" tooltip-id="Partial Selection" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="430" pos-id="" label-id="Scaling" icon-id="Visu_scaling.png" tooltip-id="Scaling" accel-id="" toggle-id="" execute-action=""/>
-</toolbar>
-
-<toolbar label-id="Visualization Toolbar">
- <toolbutton-item item-id="4011" pos-id="" label-id="Scalar Map" icon-id="Visu_scalars.png" tooltip-id="Scalar Map" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4012" pos-id="" label-id="Deformed shape" icon-id="Visu_deformed.png" tooltip-id="Deformed Shape" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4013" pos-id="" label-id="Vectors" icon-id="Visu_vectors.png" tooltip-id="Vectors" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4014" pos-id="" label-id="Iso Surfaces" icon-id="Visu_isosurfaces.png" tooltip-id="Iso Surfaces" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4015" pos-id="" label-id="Cut Planes" icon-id="Visu_cutplane.png" tooltip-id="Cut Planes" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4018" pos-id="" label-id="Cut Lines" icon-id="Visu_cutlines.png" tooltip-id="Cut Lines" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4016" pos-id="" label-id="Stream Lines" icon-id="Visu_streamlines.png" tooltip-id="Stream Lines" accel-id="" toggle-id="" execute-action=""/>
- <toolbutton-item item-id="4017" pos-id="" label-id="Plot 3D" icon-id="Visu_plot3d.png" tooltip-id="Plot 3D" accel-id="" toggle-id="" execute-action=""/>
-</toolbar>
-
-</desktop> <!-- DESKTOP END -->
-</application> <!-- APPLICATION END -->
+++ /dev/null
-# Copyright (C) 2003 CEA/DEN, EDF R&D
-#
-#
-#
-# File : Makefile.in
-# Author : Alexey Petrov
-# Module : VISU
-# $Header:
-
-top_srcdir=@top_srcdir@
-top_builddir=../..
-srcdir=@srcdir@
-VPATH=.:@srcdir@:@top_srcdir@/idl
-
-
-@COMMENCE@
-
-# Libraries targets
-LIB = libVISUEngine.la
-LIB_SRC = VISU_Engine_i.cc
-
-LIB_MOC =
-
-LIB_SERVER_IDL = VISU_Gen.idl SALOME_Component.idl \
- SALOME_Exception.idl SALOME_GenericObj.idl \
- SALOME_Session.idl MED.idl
-LIB_CLIENT_IDL = SALOMEDS.idl SALOMEDS_Attributes.idl SALOME_Comm.idl
-
-# Executables targets
-BIN =
-BIN_SRC =
-
-BIN_CLIENT_IDL =
-BIN_SERVER_IDL =
-
-EXPORT_HEADERS =
-
-# additionnal information to compil and link file
-CPPFLAGS += -I${KERNEL_ROOT_DIR}/include/salome
-
-LDFLAGS += -L${KERNEL_ROOT_DIR}/lib/salome -lSalomeContainer
-
-LIBS+=
-
-# additional file to be cleaned
-MOSTLYCLEAN =
-CLEAN =
-DISTCLEAN =
-
-@CONCLUDE@
\ No newline at end of file
+++ /dev/null
-# 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-#
-#
-#
-# File : Makefile.in
-# Author : Marc Tajchman (CEA)
-# Module : VISU
-# $Header$
-
-top_srcdir=@top_srcdir@
-top_builddir=../..
-srcdir=@srcdir@
-VPATH=.:@srcdir@
-
-@COMMENCE@
-
-# header files
-EXPORT_HEADERS= \
- VisuGUI_TableDlg.h
-
-# .po files to transform in .qm
-#PO_FILES = \
-# VISU_msg_en.po VISU_images.po
-
-# Libraries targets
-LIB = libVISUGUITOOLS.la
-
-LIB_SRC = VisuGUI_TableDlg.cxx
-
-LIB_MOC = VisuGUI_TableDlg.h
-
-LIB_CLIENT_IDL = SALOME_Exception.idl
-
-LIB_SERVER_IDL =
-
-# additionnal information to compil and link file
-
-CPPFLAGS += -ftemplate-depth-32 $(QT_INCLUDES) $(VTK_INCLUDES) $(OCC_INCLUDES) \
- $(PYTHON_INCLUDES) $(HDF5_INCLUDES) $(QWT_INCLUDES) \
- -I${KERNEL_ROOT_DIR}/include/salome $(BOOST_CPPFLAGS)
-
-CXXFLAGS += -ftemplate-depth-32 $(OCC_CXXFLAGS) \
- -I${KERNEL_ROOT_DIR}/include/salome -I${GUI_ROOT_DIR}/include/salome
-
-LDFLAGS += $(QWT_LIBS) -L${KERNEL_ROOT_DIR}/lib/salome -L${GUI_ROOT_DIR}/lib/salome
-
-@CONCLUDE@
+++ /dev/null
-// VISU VISUGUI : GUI of VISU component
-//
-// Copyright (C) 2003 CEA/DEN, EDF R&D
-//
-//
-//
-// File : VisuGUI_TableDlg.cxx
-// Author : Vadim SANDLER
-// Module : SALOME
-
-#include "VisuGUI_TableDlg.h"
-
-#include "SUIT_Tools.h"
-#include "SUIT_MessageBox.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 "utilities.h"
-using namespace std;
-
-#define MARGIN_SIZE 11
-#define SPACING_SIZE 6
-#define SPACER_SIZE 5
-#define MIN_TABLE_WIDTH 200
-#define MIN_TABLE_HEIGHT 200
-
-
-class VisuGUI_Table : public QTable {
-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 ) {}
-
- void setValidator( QValidator* v = 0 ) { myValidator = v; }
- bool isEditing() const { return QTable::isEditing(); }
-
-protected:
- QWidget* createEditor ( int row, int col, bool initFromCell ) const
- {
- bool testUnits = ( myOrientation == Horizontal && col == 0 ) || ( myOrientation == Vertical && row == 0 );
- QWidget* wg = QTable::createEditor( row, col, initFromCell );
- if ( wg && wg->inherits("QLineEdit") && myValidator && !testUnits )
- (( QLineEdit*)wg)->setValidator( myValidator );
- return wg;
- }
-
-protected:
- QValidator* myValidator;
- Orientation myOrientation;
-};
-
-/*!
- Constructor
-*/
-VisuGUI_TableDlg::VisuGUI_TableDlg( QWidget* parent,
- _PTR(SObject) obj,
- bool edit,
- int which,
- Orientation orient,
- bool showColumnTitles )
- : QDialog( parent, "", false, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu | WDestructiveClose),
- myIntTable( 0 ), myRealTable( 0 )
-{
- setCaption( edit ? tr( "EDIT_TABLE_TLT" ) : tr( "VIEW_TABLE_TLT" ) );
- setSizeGripEnabled( true );
-
- myObject = obj;
- bool bHasIntTable = false;
- bool bHasRealTable = false;
- if ( myObject ) {
- _PTR(GenericAttribute) anAttr;
- bHasIntTable = myObject->FindAttribute( anAttr, "AttributeTableOfInteger");
- bHasRealTable = myObject->FindAttribute( anAttr, "AttributeTableOfReal");
- }
-
- QVBoxLayout* mainLayout = new QVBoxLayout( this );
- mainLayout->setMargin( MARGIN_SIZE );
- mainLayout->setSpacing( SPACING_SIZE );
-
- bool bDoInt = which == ttInt || which == ttBoth || which == ttAuto && bHasIntTable;
- bool bDoReal = which == ttReal || which == ttBoth || which == ttAuto && bHasRealTable;
-
- QWidget* top;
- QVBoxLayout* tl;
- if ( bDoInt && bDoReal ) {
- top = new QTabWidget( this, "TabWidget" );
- ( ( QTabWidget* ) top) ->setMargin( MARGIN_SIZE );
- }
- else {
- top = new QWidget( this, "DumbWidget" );
- 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 ) );
- if ( bDoInt && bDoReal )
- ( ( QTabWidget* )top )->addTab( myIntTable, tr( "TABLE_OF_INTEGER_TLT" ) );
- else
- tl->addWidget( myIntTable );
- }
- if ( bDoReal ) {
- myRealTable = new VisuGUI_TableWidget( top, "myRealTable", edit, orient, showColumnTitles );
- myRealTable->getTable()->setValidator( new QDoubleValidator( this ) );
- 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 );
- tl->addWidget( dumbLabel );
- }
-
- QHBoxLayout* btnLayout = new QHBoxLayout;
- btnLayout->setMargin( 0 ); btnLayout->setSpacing( SPACING_SIZE );
-
- myOKBtn = new QPushButton( tr( "BUT_OK" ), this );
- if ( edit ) {
- myCancelBtn = new QPushButton( tr( "BUT_CANCEL" ), this );
- btnLayout->addWidget( myOKBtn );
- btnLayout->addItem( new QSpacerItem( SPACER_SIZE, SPACER_SIZE, QSizePolicy::Expanding, QSizePolicy::Minimum ) );
- btnLayout->addWidget( myCancelBtn );
- connect( myOKBtn, SIGNAL( clicked() ), this, SLOT( onOK() ) );
- connect( myCancelBtn, SIGNAL( clicked() ), this, SLOT( reject() ) );
- }
- else {
- btnLayout->addItem( new QSpacerItem( SPACER_SIZE, SPACER_SIZE, QSizePolicy::Expanding, QSizePolicy::Minimum ) );
- btnLayout->addWidget( myOKBtn );
- btnLayout->addItem( new QSpacerItem( SPACER_SIZE, SPACER_SIZE, QSizePolicy::Expanding, QSizePolicy::Minimum ) );
- connect( myOKBtn, SIGNAL( clicked() ), this, SLOT( accept() ) );
- }
-
- mainLayout->addWidget( top );
- mainLayout->addLayout( btnLayout );
-
- initDlg();
- resize( 500, 400 );
- SUIT_Tools::centerWidget( this, parent );
-}
-
-/*!
- Destructor
-*/
-VisuGUI_TableDlg::~VisuGUI_TableDlg()
-{
-}
-
-/*!
- <OK> button slot, saves table(s)
- Called only in create/edit mode ( <edit> parameter for constructor is true )
-*/
-void VisuGUI_TableDlg::onOK()
-{
- myOKBtn->setFocus(); // accept possible changes
- bool done = true;
-
- if ( myObject ) {
- _PTR(Study) study = myObject->GetStudy();
- _PTR(AttributeTableOfInteger) tblIntAttr;
- _PTR(AttributeTableOfReal) tblRealAttr;
-
- if ( study ) {
- _PTR(StudyBuilder) builder = study->NewBuilder();
- builder->NewCommand(); // start transaction !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- try {
- if ( myIntTable ) {
- builder->RemoveAttribute( myObject, "AttributeTableOfInteger" );
- tblIntAttr = builder->FindOrCreateAttribute( myObject, "AttributeTableOfInteger" );
-
- int i;
- int nbRows = myIntTable->getNumRows();
- int nbCols = myIntTable->getNumCols();
- QString tlt = myIntTable->getTableTitle();
- QStringList rowTitles, colTitles, units;
- myIntTable->getRowTitles( rowTitles );
- myIntTable->getColTitles( colTitles );
- myIntTable->getUnits( units );
-
- if ( nbRows > 0) {
- // data
- int nRow = 0;
- tblIntAttr->SetNbColumns( nbCols );
- for ( i = 0; i < nbRows; i++ ) {
- QStringList data;
- myIntTable->getRowData( i, data );
- bool bEmptyRow = true;
- for ( int j = 0; j < data.count(); j++ ) {
- if ( !data[ j ].isNull() ) {
- tblIntAttr->PutValue( data[ j ].toInt(), nRow+1, j+1 );
- bEmptyRow = false;
- }
- }
- if ( !bEmptyRow ) { // Skip rows with no data !!!
- // set row title
- tblIntAttr->SetRowTitle( nRow+1, rowTitles[ i ].isNull() ? "" : rowTitles[ i ].latin1() );
- // set row unit
- tblIntAttr->SetRowUnit( nRow+1, units[ i ].isNull() ? "" : units[ i ].latin1() );
- 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() );
- }
- }
- // title
- tblIntAttr->SetTitle( myIntTable->getTableTitle().latin1() );
- }
- if ( myRealTable ) {
- builder->RemoveAttribute( myObject, "AttributeTableOfReal" );
- tblRealAttr = builder->FindOrCreateAttribute( myObject, "AttributeTableOfReal" );
-
- int i;
- int nbRows = myRealTable->getNumRows();
- int nbCols = myRealTable->getNumCols();
- QString tlt = myRealTable->getTableTitle();
- QStringList rowTitles, colTitles, units;
- myRealTable->getRowTitles( rowTitles );
- myRealTable->getColTitles( colTitles );
- myRealTable->getUnits( units );
-
- if ( nbRows > 0) {
- // data
- int nRow = 0;
- tblRealAttr->SetNbColumns( nbCols );
- for ( i = 0; i < nbRows; i++ ) {
- QStringList data;
- myRealTable->getRowData( i, data );
- bool bEmptyRow = true;
- for ( int j = 0; j < data.count(); j++ ) {
- if ( !data[ j ].isNull() ) {
- tblRealAttr->PutValue( data[ j ].toDouble(), nRow+1, j+1 );
- bEmptyRow = false;
- }
- }
- if ( !bEmptyRow ) { // Skip rows with no data !!!
- // set row title
- tblRealAttr->SetRowTitle( nRow+1, rowTitles[ i ].isNull() ? "" : rowTitles[ i ].latin1() );
- // set row unit
- tblRealAttr->SetRowUnit( nRow+1, units[ i ].isNull() ? "" : units[ i ].latin1() );
- 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() );
- }
- }
- // title
- tblRealAttr->SetTitle( myRealTable->getTableTitle().latin1() );
- }
- if ( myIntTable || myRealTable)
- builder->CommitCommand(); // commit transaction !!!!!!!!!!!!!!!!!!!!!!!!!!!
- else
- builder->AbortCommand(); // abort transaction !!!!!!!!!!!!!!!!!!!!!!!!!!!
- }
- catch( ... ) {
- 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") );
- }
- }
- }
- if ( done )
- accept();
-}
-
-/*!
- Populates table with data
-*/
-void VisuGUI_TableDlg::initDlg()
-{
- int i, j;
- if ( myObject ) {
- _PTR(GenericAttribute) anAttr;
- _PTR(AttributeTableOfInteger) tblIntAttr;
- _PTR(AttributeTableOfReal) tblRealAttr;
- if ( myObject->FindAttribute( anAttr, "AttributeTableOfInteger") ) {
- tblIntAttr = anAttr;
- }
- if ( myObject->FindAttribute( anAttr, "AttributeTableOfReal") ) {
- tblRealAttr = anAttr;
- }
- // Table of integer
- if ( tblIntAttr && myIntTable ) {
- try {
- // title
- myIntTable->setTableTitle( tblIntAttr->GetTitle().c_str() );
- // nb of rows & cols
- int nbRows = tblIntAttr->GetNbRows() ;
- int nbCols = tblIntAttr->GetNbColumns();
- myIntTable->setNumRows( nbRows );
- myIntTable->setNumCols( nbCols );
- // rows titles
- QStringList strlist;
- vector<string> rowTitles = tblIntAttr->GetRowTitles();
- for ( i = 0; i < nbRows; i++ ) {
- if ( rowTitles.size() > 0 )
- strlist.append( rowTitles[i].c_str() );
- else
- strlist.append( "" );
- }
- myIntTable->setRowTitles( strlist );
- // columns titles
- strlist.clear();
- vector<string> colTitles = tblIntAttr->GetColumnTitles();
- for ( i = 0; i < nbCols; i++ ) {
- if ( colTitles.size() > 0 )
- strlist.append( colTitles[i].c_str() );
- else
- strlist.append( "" );
- }
- myIntTable->setColTitles( strlist );
- // units
- strlist.clear();
- vector<string> rowUnits = tblIntAttr->GetRowUnits();
- if ( rowUnits.size() > 0 ) {
- for ( i = 0; i < nbRows; i++ )
- strlist.append( rowUnits[i].c_str() );
- myIntTable->setUnits( strlist );
- }
- // data
- for ( i = 1; i <= nbRows; i++ ) {
- strlist.clear();
- for ( j = 1; j <= nbCols; j++ ) {
- if ( tblIntAttr->HasValue( i, j ) )
- strlist.append( QString::number( tblIntAttr->GetValue( i, j ) ) );
- else
- strlist.append( QString::null );
- }
- myIntTable->setRowData( i-1, strlist );
- }
- myIntTable->adjustTable();
- }
- catch( ... ) {
- MESSAGE("VisuGUI_TableDlg::initDlg : Exception has been caught !!!");
- }
- }
- // Table of real
- if ( tblRealAttr && myRealTable ) {
- try {
- // title
- myRealTable->setTableTitle( tblRealAttr->GetTitle().c_str() );
- // nb of rows & cols
- int nbRows = tblRealAttr->GetNbRows() ;
- int nbCols = tblRealAttr->GetNbColumns();
- myRealTable->setNumRows( nbRows );
- myRealTable->setNumCols( nbCols );
- // rows titles
- QStringList strlist;
- vector<string> rowTitles = tblRealAttr->GetRowTitles();
- for ( i = 0; i < nbRows; i++ ) {
- if ( rowTitles.size() > 0 )
- strlist.append( rowTitles[i].c_str() );
- else
- strlist.append( "" );
- }
- myRealTable->setRowTitles( strlist );
- // columns titles
- strlist.clear();
- vector<string> colTitles = tblRealAttr->GetColumnTitles();
- for ( i = 0; i < nbCols; i++ ) {
- if ( colTitles.size() > 0 )
- strlist.append( colTitles[i].c_str() );
- else
- strlist.append( "" );
- }
- myRealTable->setColTitles( strlist );
- // units
- strlist.clear();
- vector<string> rowUnits = tblRealAttr->GetRowUnits();
- if ( rowUnits.size() > 0 ) {
- for ( i = 0; i < nbRows; i++ )
- strlist.append( rowUnits[i].c_str() );
- myRealTable->setUnits( strlist );
- }
- // data
- for ( i = 1; i <= nbRows; i++ ) {
- strlist.clear();
- for ( j = 1; j <= nbCols; j++ ) {
- if ( tblRealAttr->HasValue( i, j ) )
- strlist.append( QString::number( tblRealAttr->GetValue( i, j ) ) );
- else
- strlist.append( QString::null );
- }
- myRealTable->setRowData( i-1, strlist );
- }
- myRealTable->adjustTable();
- }
- catch( ... ) {
- MESSAGE("VisuGUI_TableDlg::initDlg : Exception has been caught !!!");
- }
- }
- }
-}
-
-/*!
- Constructor
-*/
-VisuGUI_TableWidget::VisuGUI_TableWidget( QWidget* parent,
- const char* name,
- bool edit,
- Orientation orient,
- bool showColumnTitles )
- : QWidget( parent, name ), myOrientation( orient )
-{
- QGridLayout* mainLayout = new QGridLayout( this );
- mainLayout->setMargin( 0 );
- mainLayout->setSpacing( SPACING_SIZE );
-
- myTitleEdit = new QLineEdit( this, "TitleEdit" );
- myTitleEdit->setAlignment( 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->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding ) );
- myTable->setMinimumSize( MIN_TABLE_WIDTH, MIN_TABLE_HEIGHT );
- myTable->setSelectionMode( QTable::Single );
- myTable->setShowGrid( true );
- myTable->setColumnMovingEnabled( false );
- myTable->setRowMovingEnabled( false );
- myTable->setReadOnly( !edit );
- myTable->setDragEnabled( false );
- setUnitsTitle( tr( "UNITS_TLT" ) );
-
- if ( !showColumnTitles ) {
- if ( myOrientation == Horizontal ) {
- myTable->horizontalHeader()->hide();
- myTable->setTopMargin( 0 );
- }
- else {
- myTable->verticalHeader()->hide();
- myTable->setLeftMargin( 0 );
- }
- }
-
- mainLayout->addWidget( myTitleEdit, 0, 0 );
- 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" );
- QVBoxLayout* btnLayout = new QVBoxLayout; btnLayout->setMargin( 0 ); btnLayout->setSpacing( SPACING_SIZE );
- btnLayout->addWidget( myAddRowBtn );
- btnLayout->addWidget( myDelRowBtn );
- btnLayout->addWidget( myAddColBtn );
- btnLayout->addWidget( myDelColBtn );
- btnLayout->addStretch();
- btnLayout->addWidget( myAdjustBtn );
- btnLayout->addStretch();
- btnLayout->addWidget( mySelectAllBtn );
- btnLayout->addWidget( myClearBtn );
- mainLayout->addLayout( btnLayout, 1, 1 );
- connect( myTable, SIGNAL( selectionChanged() ), this, SLOT( updateButtonsState() ) );
- connect( myTable, SIGNAL( currentChanged( int, int) ), this, SLOT( updateButtonsState() ) );
- connect( myAddRowBtn, SIGNAL( clicked() ), this, SLOT( addRow() ) );
- connect( myAddColBtn, SIGNAL( clicked() ), this, SLOT( addCol() ) );
- connect( myDelRowBtn, SIGNAL( clicked() ), this, SLOT( delRow() ) );
- connect( myDelColBtn, SIGNAL( clicked() ), this, SLOT( delCol() ) );
- connect( myAdjustBtn, SIGNAL( clicked() ), this, SLOT( adjustTable() ) );
- connect( mySelectAllBtn, SIGNAL( clicked() ), this, SLOT( selectAll() ) );
- connect( myClearBtn, SIGNAL( clicked() ), this, SLOT( clearTable() ) );
- myTable->horizontalHeader()->installEventFilter( this );
- myTable->verticalHeader()->installEventFilter( this );
- myTable->installEventFilter( this );
- }
- updateButtonsState();
-}
-/*!
- Destructor
-*/
-VisuGUI_TableWidget::~VisuGUI_TableWidget()
-{
-}
-/*!
- Sets table title
-*/
-void VisuGUI_TableWidget::setTableTitle( const QString& title )
-{
- myTitleEdit->setText( title );
-}
-/*!
- Gets table title
-*/
-QString VisuGUI_TableWidget::getTableTitle()
-{
- return myTitleEdit->text();
-}
-/*!
- Sets total number of rows
-*/
-void VisuGUI_TableWidget::setNumRows( const int num )
-{
- myOrientation == Horizontal ? myTable->setNumRows( num ) : myTable->setNumCols( num );
-}
-/*!
- Gets total number of rows
-*/
-int VisuGUI_TableWidget::getNumRows()
-{
- return myOrientation == Horizontal ? myTable->numRows() : myTable->numCols();
-}
-/*!
- Sets total number of columns
-*/
-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 );
-}
-/*!
- Gets total number of columns
-*/
-int VisuGUI_TableWidget::getNumCols()
-{
- // !!! first column contains units !!!
- return myOrientation == Horizontal ? myTable->numCols()-1 : myTable->numRows()-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] );
- }
-}
-/*!
- Gets rows titles
-*/
-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 ) );
- }
- }
- else {
- for ( int i = 0; i < myTable->numCols(); i++ ) {
- tlts.append( myTable->horizontalHeader()->label( i ) );
- }
- }
-}
-/*!
- Sets columns titles
-*/
-void VisuGUI_TableWidget::setColTitles( QStringList& tlts )
-{
- // !!! 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] );
- }
- setUnitsTitle( tr( "UNITS_TLT" ) );
-}
-/*!
- Sets columns titles
-*/
-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 ) );
- }
- }
- else {
- for ( int i = 1; i < myTable->numRows(); i++ ) {
- tlts.append( myTable->verticalHeader()->label( i ) );
- }
- }
-}
-/*!
- Sets units title
-*/
-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 );
-}
-/*!
- 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] );
- }
-}
-/*!
- Gets 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 ) );
- }
-}
-/*!
- Sets row data
-*/
-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] );
- }
- }
- }
-}
-/*!
- Gets row 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 ) );
- }
- }
-}
-/*!
- Adjusts table cell to see contents, <Adjust Cells> button slot
-*/
-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 );
-}
-/*!
- Called when selection changed in table
-*/
-void VisuGUI_TableWidget::updateButtonsState()
-{
- if ( myTable->isReadOnly() )
- 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++ ) {
- if ( myTable->isRowSelected( i, true ) )
- bDR = true;
- else
- bSA = true;
- }
- c = myOrientation == Horizontal ? 1 : 0;
- for ( i = c; i < myTable->numCols(); i++ ) {
- if ( myTable->isColumnSelected( i, true ) )
- bDC = true;
- else
- bSA = true;
- }
- 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++) {
- for ( int k = ts.leftCol(); k < ts.rightCol()+1; k++) {
- if ( myTable->item( j, k ) )
- bCT = true;
- }
- }
- }
- if ( myTable->item( myTable->currentRow(), myTable->currentColumn() ) )
- bCT = true;
- myDelRowBtn->setEnabled( bDR );
- myDelColBtn->setEnabled( bDC );
- mySelectAllBtn->setEnabled( bSA );
- myClearBtn->setEnabled( bCT );
-}
-/*!
- <Add row> button slot
-*/
-void VisuGUI_TableWidget::addRow()
-{
- myTable->insertRows( myTable->numRows(), 1 );
- updateButtonsState();
-}
-/*!
- <Add column> button slot
-*/
-void VisuGUI_TableWidget::addCol()
-{
- myTable->insertColumns( myTable->numCols(), 1 );
- updateButtonsState();
-}
-/*!
- <Delete row(s)> button slot
-*/
-void VisuGUI_TableWidget::delRow()
-{
- int c = myOrientation == Horizontal ? 0 : 1;
- QValueList<int> il;
- int i;
- for ( i = c; i < myTable->numRows(); i++ )
- if ( myTable->isRowSelected( i, true ) )
- il.append( i );
- if ( il.count() > 0 ) {
- QMemArray<int> ildel( il.count() );
- for ( i = 0; i < il.count(); i++ )
- ildel[ i ] = il[ i ];
- myTable->removeRows( ildel );
- }
- updateButtonsState();
-}
-/*!
- <Delete column(s)> button slot
-*/
-void VisuGUI_TableWidget::delCol()
-{
- int c = myOrientation == Horizontal ? 1 : 0;
- QValueList<int> il;
- int i;
- for ( i = c; i < myTable->numCols(); i++ )
- if ( myTable->isColumnSelected( i, true ) )
- il.append( i );
- if ( il.count() > 0 ) {
- QMemArray<int> ildel( il.count() );
- for ( i = 0; i < il.count(); i++ )
- ildel[ i ] = il[ i ];
- myTable->removeColumns( ildel );
- }
- updateButtonsState();
-}
-/*!
- <Select All> button slot
-*/
-void VisuGUI_TableWidget::selectAll()
-{
- myTable->clearSelection();
- QTableSelection ts;
- ts.init( 0, 0 ); ts.expandTo( myTable->numRows()-1, myTable->numCols()-1 );
- myTable->addSelection( ts );
- updateButtonsState();
-}
-/*!
- <Clear> button slot
-*/
-void VisuGUI_TableWidget::clearTable()
-{
- 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 ) {
-// continue; // UNITS
- }
- for ( int k = ts.leftCol(); k < ts.rightCol()+1; k++) {
- if ( myOrientation == Horizontal && k == 0 ) {
-// continue; // UNITS
- }
- myTable->clearCell( j, k );
- }
- }
- }
- if ( nbSel == 0 )
- myTable->clearCell( myTable->currentRow(), myTable->currentColumn() );
- myTable->clearSelection();
- updateButtonsState();
-}
-/*!
- Event filter - handles titles editing
-*/
-bool VisuGUI_TableWidget::eventFilter( QObject* o, QEvent* e )
-{
- if ( e->type() == QEvent::MouseButtonDblClick) {
- QMouseEvent* me = ( QMouseEvent* )e;
- if ( me->button() == LeftButton && !myTable->isReadOnly() ) {
- 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 ) {
- bool bOk;
- QString tlt = QInputDialog::getText( tr( "SET_TITLE_TLT" ),
- tr( "TITLE_LBL" ),
- QLineEdit::Normal,
- myTable->horizontalHeader()->label( i ),
- &bOk,
- this );
- if ( bOk && !tlt.isNull() )
- myTable->horizontalHeader()->setLabel( i, tlt );
- break;
- }
- }
- }
- }
- if ( o == myTable->verticalHeader() ) {
- for ( int i = 0; i < myTable->verticalHeader()->count(); i++ ) {
- 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 ) {
- bool bOk;
- QString tlt = QInputDialog::getText( tr( "SET_TITLE_TLT" ),
- tr( "TITLE_LBL" ),
- QLineEdit::Normal,
- myTable->verticalHeader()->label( i ),
- &bOk,
- this );
- if ( bOk && !tlt.isNull() )
- myTable->verticalHeader()->setLabel( i, tlt );
- break;
- }
- }
- }
- }
- }
- }
- else if ( e->type() == QEvent::KeyRelease && o == myTable ) {
- QKeyEvent* ke = (QKeyEvent*)e;
- if ( ke->key() == Key_Delete && !myTable->isEditing() ) {
- clearTable();
- }
- else if ( ke->key() == Key_Backspace && !myTable->isEditing() ) {
- clearTable();
- int i = myTable->currentRow();
- int j = myTable->currentColumn() - 1;
- if ( j < 0 ) { j = myTable->numCols()-1; i--; }
- if ( i >= 0 && j >= 0 )
- myTable->setCurrentCell( i, j );
- }
- }
- return QWidget::eventFilter( o, e );
-}
-
-
-
+++ /dev/null
-// VISU VISUGUI : GUI of VISU component
-//
-// Copyright (C) 2003 CEA/DEN, EDF R&D
-//
-//
-//
-// 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>
-
-class VisuGUI_Table;
-class VisuGUI_TableWidget;
-
-#include <SALOMEDSClient_SObject.hxx>
-
-class VisuGUI_TableDlg : public QDialog
-{
- Q_OBJECT
-
-public:
-
- enum { ttNone, ttInt, ttReal, ttBoth, ttAuto };
-
- VisuGUI_TableDlg( QWidget* parent,
- _PTR(SObject) obj,
- bool edit = false,
- int which = ttAuto,
- Orientation orient = Horizontal,
- bool showColumnTitles = true );
- ~VisuGUI_TableDlg();
-
-public slots:
- void onOK();
-
-private:
- void initDlg();
-
-private:
- VisuGUI_TableWidget* myIntTable;
- VisuGUI_TableWidget* myRealTable;
- QPushButton* myOKBtn;
- QPushButton* myCancelBtn;
-
- _PTR(SObject) myObject;
-};
-
-class VisuGUI_TableWidget : public QWidget
-{
- Q_OBJECT
-public:
- VisuGUI_TableWidget( QWidget* parent = 0,
- const char* name = 0,
- bool edit = false,
- Orientation orient = Horizontal,
- bool showColumnTitles = true );
- ~VisuGUI_TableWidget();
-
- void setTableTitle( const QString& title );
- QString getTableTitle();
- void setNumRows( const int num );
- int getNumRows();
- void setNumCols( const int num );
- int getNumCols();
- void setRowTitles( QStringList& tlts );
- void getRowTitles( QStringList& tlts );
- void setColTitles( QStringList& tlts );
- void getColTitles( QStringList& tlts );
- void setUnitsTitle( const QString& tlt );
- void setUnits( QStringList& units );
- void getUnits( QStringList& units );
- void setRowData( int row, QStringList& data );
- void getRowData( int row, QStringList& data );
-
- VisuGUI_Table* getTable() { return myTable; }
- QLineEdit* getTitleEdit() { return myTitleEdit; }
-
- bool eventFilter( QObject* o, QEvent* e);
-
-public slots:
- void updateButtonsState();
- void addRow();
- void addCol();
- void delRow();
- void delCol();
- void adjustTable();
- void selectAll();
- void clearTable();
-
-private:
- QLineEdit* myTitleEdit;
- VisuGUI_Table* myTable;
- QPushButton* myAddRowBtn;
- QPushButton* myAddColBtn;
- QPushButton* myDelRowBtn;
- QPushButton* myDelColBtn;
- QPushButton* myAdjustBtn;
- QPushButton* mySelectAllBtn;
- QPushButton* myClearBtn;
- Orientation myOrientation;
-};
-
-#endif // VisuGUI_TABLE_DLG_H
-
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// 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_Actor.h"
-class vtkDataSetMapper;
-
-class VTKOCC_EXPORT VISU_MeshAct : public VISU_Actor {
- public:
- vtkTypeMacro(VISU_MeshAct,VISU_Actor);
- static VISU_MeshAct* New();
- ~VISU_MeshAct();
-
- virtual void setIO(const Handle(SALOME_InteractiveObject)& theIO);
- virtual void SetPrs3d(VISU::Prs3d_i* thePrs3d);
-
- virtual void AddToRender(vtkRenderer* theRenderer);
- virtual void RemoveFromRender(vtkRenderer* theRenderer);
-
- virtual void SetPipeLine(VISU_PipeLine* thePipeLine) ;
- virtual void SetTransform(VTKViewer_Transform* theTransform);
-
- virtual vtkProperty* GetSurfaceProperty();
- virtual void SetSurfaceProperty(vtkProperty* theProperty);
-
- virtual vtkProperty* GetEdgeProperty();
- virtual void SetEdgeProperty(vtkProperty* theProperty);
-
- virtual vtkProperty* GetNodeProperty();
- virtual void SetNodeProperty(vtkProperty* theProperty);
-
- virtual void SetOpacity(float theValue);
- virtual float GetOpacity();
-
- virtual void SetLineWidth(float theLineWidth);
- virtual float GetLineWidth();
-
- virtual void SetRepresentation(int theMode);
-
- virtual void SetVisibility(int theMode);
-
- virtual void SetShrinkable(bool theIsShrinkable);
- virtual void SetShrinkFactor(float theFactor = 0.8);
-
- virtual void SetShrink();
- virtual void UnShrink();
-
- virtual void Render(vtkRenderer *, vtkMapper *);
- void Modified();
-
- protected:
- VISU_MeshAct();
- VISU_Actor *mySurfaceActor, *myEdgeActor, *myNodeActor;
-};
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// 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_Actor.h"
-
-class VISU_ScalarBarActor;
-
-class VTKOCC_EXPORT VISU_ScalarMapAct : public VISU_Actor {
- public:
- vtkTypeMacro(VISU_ScalarMapAct,VISU_Actor);
- static VISU_ScalarMapAct* New();
- ~VISU_ScalarMapAct();
-
- virtual void AddToRender(vtkRenderer* theRenderer);
- virtual void RemoveFromRender(vtkRenderer* theRenderer);
-
- virtual void SetVisibility(int theMode);
- virtual int GetVisibility();
-
- virtual VISU_ScalarBarActor* GetScalarBar(){ return myScalarBar;}
-
- virtual void SetBarVisibility(bool theMode);
- virtual bool GetBarVisibility(){ return myBarVisibility;}
-
- protected:
- VISU_ScalarMapAct();
- bool myBarVisibility;
- VISU_ScalarBarActor* myScalarBar;
-};
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// File : VISU_VectorsAct.cxx
-// Author : Laurent CORNABE with help of Nicolas REJNERI
-// Module : VISU
-// $Header$
-
-#include "VISU_VectorsAct.h"
-#include "VISU_VectorsPL.hxx"
-#include "VTKViewer_PassThroughFilter.h"
-
-// VTK Includes
-#include <vtkObjectFactory.h>
-#include <vtkDataSetMapper.h>
-#include <vtkPolyDataMapper.h>
-#include <vtkPolyData.h>
-
-using namespace std;
-
-//=======================================================================
-
-vtkStandardNewMacro(VISU_VectorsAct);
-
-
-VISU_VectorsAct::VISU_VectorsAct(){}
-
-
-VISU_VectorsAct::~VISU_VectorsAct(){}
-
-
-void VISU_VectorsAct::SetPipeLine(VISU_PipeLine* thePipeLine) {
- if((myPipeLine = dynamic_cast<VISU_VectorsPL*>(thePipeLine))){
- VISU_Actor::SetPipeLine(myPipeLine);
- myPipeLine->Delete();
- }
-}
-
-
-void VISU_VectorsAct::SetTransform(VTKViewer_Transform* theTransform){
- myPipeLine->SetTransform(theTransform);
- Modified();
-}
-
-
-void VISU_VectorsAct::SetMapper(vtkMapper* theMapper){
- if(theMapper){
- myPassFilter[0]->SetInput(theMapper->GetInput());
- myPassFilter[0]->Update();
- myPassFilter[1]->SetInput(myPassFilter[0]->GetPolyDataOutput());
- myPassFilter[1]->Update();
- myPassFilter[2]->SetInput(myPassFilter[1]->GetPolyDataOutput());
- myPassFilter[2]->Update();
- myPassFilter[3]->SetInput(myPassFilter[2]->GetPolyDataOutput());
- myPassFilter[3]->Update();
- if(vtkDataSetMapper* aMapper = dynamic_cast<vtkDataSetMapper*>(theMapper))
- aMapper->SetInput(myPassFilter[3]->GetPolyDataOutput());
- else if(vtkPolyDataMapper* aMapper = dynamic_cast<vtkPolyDataMapper*>(theMapper))
- aMapper->SetInput(myPassFilter[3]->GetPolyDataOutput());
- }
- vtkLODActor::SetMapper(theMapper);
-}
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// 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_ScalarMapAct.h"
-
-class VTKViewer_Transform;
-class VISU_VectorsPL;
-
-class VTKOCC_EXPORT VISU_VectorsAct : public VISU_ScalarMapAct {
- public:
- vtkTypeMacro(VISU_VectorsAct,VISU_ScalarMapAct);
- static VISU_VectorsAct* New();
- ~VISU_VectorsAct();
-
- virtual void SetPipeLine(VISU_PipeLine* thePipeLine);
-
- virtual void SetTransform(VTKViewer_Transform* theTransform);
-
- virtual void SetMapper(vtkMapper* theMapper);
-
- protected:
- VISU_VectorsAct();
-
- VISU_VectorsPL* myPipeLine;
-};
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File: VISU_PipeLine.hxx
-// Author: Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_CutLinesPL_HeaderFile
-#define VISU_CutLinesPL_HeaderFile
-
-#include "VISU_CutPlanesPL.hxx"
-
-class vtkAppendPolyData;
-
-class VISU_CutLinesPL : public VISU_CutPlanesPL{
-protected:
- VISU_CutLinesPL();
- VISU_CutLinesPL(const VISU_CutLinesPL&);
-public:
- vtkTypeMacro(VISU_CutLinesPL,VISU_CutPlanesPL);
- static VISU_CutLinesPL* New();
- virtual void ShallowCopy(VISU_PipeLine *thePipeLine);
-
- virtual void SetPosition(float thePosition);
- virtual float GetPosition();
-
- virtual void SetDefault();
- virtual int IsDefault();
-
-public:
- virtual void Init();
- virtual void Update();
-
- static void CutWithPlanes(vtkAppendPolyData* theAppendPolyData, vtkDataSet* theDataSet,
- int theNbPlanes, float theDir[3], float theBounds[6],
- float thePlanePosition, int thePlaneCondition,
- float theDisplacement);
-
- const float* GetDirLn(){ return myDirLn;}
- const float* GetBoundPrjLn(){ return myBoundPrjLn;}
- const float* GetBasePnt(){ return myBasePnt;}
-
-protected:
- float myDirLn[3], myBoundPrjLn[3], myBasePnt[3];
- float myPosition;
- int myCondition;
-};
-
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File: VISU_CutPlanesPL.hxx
-// Author: Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_CutPlanesPL_HeaderFile
-#define VISU_CutPlanesPL_HeaderFile
-
-#include "VISU_ScalarMapPL.hxx"
-
-#include <vector>
-
-class vtkAppendPolyData;
-
-class VISU_CutPlanesPL : public VISU_ScalarMapPL{
-protected:
- VISU_CutPlanesPL();
- VISU_CutPlanesPL(const VISU_CutPlanesPL&);
-public:
- vtkTypeMacro(VISU_CutPlanesPL,VISU_ScalarMapPL);
- static VISU_CutPlanesPL* New();
- virtual ~VISU_CutPlanesPL();
- virtual void ShallowCopy(VISU_PipeLine *thePipeLine);
-
- enum PlaneOrientation {XY, YZ, ZX};
- virtual void SetOrientation(const VISU_CutPlanesPL::PlaneOrientation& theOrient,
- float theXAng, float theYAng, int theNum = 0);
-
- virtual const PlaneOrientation& GetPlaneOrientation(int theNum = 0);
- virtual float GetRotateX(int theNum = 0);
- virtual float GetRotateY(int theNum = 0);
-
- virtual float GetDisplacement(int theNum = 0) { return myDisplacement[theNum];}
- virtual void SetDisplacement(float theDisp, int theNum = 0) { myDisplacement[theNum] = theDisp;}
-
- virtual void SetPartPosition(int thePartNumber, float thePartPosition);
- virtual float GetPartPosition(int thePartNumber, int theNum = 0);
-
- virtual void SetPartDefault(int thePartNumber);
- virtual int IsPartDefault(int thePartNumber);
-
- virtual void SetNbParts(int theNb);
- virtual int GetNbParts(){ return myNbParts;}
-
-public:
- virtual void Init();
- virtual void Update();
- virtual vtkAppendPolyData* GetAppendPolyData() { return myAppendPolyData; }
-
-public:
- static float* GetRx(float theRx[3][3], float thaAng);
- static float* GetRy(float theRy[3][3], float thaAng);
- static float* GetRz(float theRz[3][3], float thaAng);
-
- static void CorrectPnt(float thePnt[3], const float BoundPrj[6]);
- static void GetBoundProject(float BoundPrj[3], const float BoundBox[6], const float Dir[3]);
-
- static void GetDir(float theDir[3],
- const float theAng[3],
- const PlaneOrientation& theBasePlane);
-
- static void ClearAppendPolyData(vtkAppendPolyData *theAppendPolyData);
-
- static void CutWithPlane(vtkAppendPolyData* theAppendPolyData, vtkDataSet* theDataSet,
- float theDir[3], float theOrig[3]);
- static void CutWithPlanes(vtkAppendPolyData* theAppendPolyData, vtkDataSet* theDataSet,
- int theNbPlanes, float theDir[3], float theBounds[6],
- const std::vector<float>& thePlanePosition,
- const std::vector<int>& thePlaneCondition,
- float theDisplacement);
-protected:
- virtual THook* DoHook();
- void SetPartPosition(int theNum = 0);
-
- int myNbParts;
- PlaneOrientation myBasePlane[2];
- float myAng[2][3], myDisplacement[2];
- vtkAppendPolyData *myAppendPolyData;
- std::vector<float> myPartPosition;
- std::vector<int> myPartCondition;
-};
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File: VISU_PipeLine.hxx
-// Author: Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_DeformedShapePL_HeaderFile
-#define VISU_DeformedShapePL_HeaderFile
-
-#include "VISU_ScalarMapPL.hxx"
-
-class vtkCellDataToPointData;
-class SALOME_Transform;
-class vtkWarpVector;
-
-class VISU_DeformedShapePL : public VISU_ScalarMapPL{
-protected:
- VISU_DeformedShapePL();
- VISU_DeformedShapePL(const VISU_DeformedShapePL&);
-public:
- vtkTypeMacro(VISU_DeformedShapePL,VISU_ScalarMapPL);
- static VISU_DeformedShapePL* New();
- virtual ~VISU_DeformedShapePL();
- virtual void ShallowCopy(VISU_PipeLine *thePipeLine);
-
- virtual void SetScale(float theScale);
- virtual float GetScale();
-
-public:
- virtual void Init();
- virtual void Update();
- virtual void SetMapScale(float theMapScale = 1.0);
-
- static float GetScaleFactor(vtkDataSet* theDataSet);
-
-protected:
- virtual THook* DoHook();
-
- float myScaleFactor;
- vtkWarpVector *myWarpVector;
- vtkCellDataToPointData* myCellDataToPointData;
-};
-
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File : VISU_Extractor.hxx
-// Author : Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_Extractor_HeaderFile
-#define VISU_Extractor_HeaderFile
-
-#include <vtkPointSetToPointSetFilter.h>
-
-class VTK_EXPORT VISU_Extractor : public vtkPointSetToPointSetFilter{
-public:
- vtkTypeMacro(VISU_Extractor,vtkPointSetToPointSetFilter);
- static VISU_Extractor *New();
-
- virtual int GetScalarMode(){ return myScalarMode;}
- virtual void SetScalarMode(int theScalarMode = 0);
-
-protected:
- VISU_Extractor();
- VISU_Extractor(const VISU_Extractor&);
- ~VISU_Extractor();
-
- virtual void Execute();
-
- int myScalarMode;
-};
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File : VISU_Extractor.hxx
-// Author : Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_FieldTransform_HeaderFile
-#define VISU_FieldTransform_HeaderFile
-
-#include <vtkDataSetToDataSetFilter.h>
-
-class VTKViewer_Transform;
-
-class VTK_EXPORT VISU_FieldTransform : public vtkDataSetToDataSetFilter{
-public:
- vtkTypeMacro(VISU_FieldTransform,vtkDataSetToDataSetFilter);
- static VISU_FieldTransform *New();
-
- virtual void Update();
- virtual unsigned long GetMTime();
-
- static double Ident(double theArg);
- static double Log10(double theArg);
- typedef double (*TTransformFun)(double);
- void SetScalarTransform(TTransformFun theFunction);
- TTransformFun GetScalarTransform() { return myFunction;}
-
- void SetSpaceTransform(VTKViewer_Transform* theTransform);
- VTKViewer_Transform* GetSpaceTransform() { return myTransform;}
-
- float* GetScalarRange(){ return myScalarRange; }
- void SetScalarRange(float theScalarRange[2]);
- void SetScalarMin(float theValue);
- void SetScalarMax(float theValue);
-
-protected:
- VISU_FieldTransform();
- virtual ~VISU_FieldTransform();
- VISU_FieldTransform(const VISU_FieldTransform&) {};
- void operator=(const VISU_FieldTransform&) {};
- void Execute();
-
- VTKViewer_Transform *myTransform;
- TTransformFun myFunction;
- float myScalarRange[2];
-};
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File: VISU_PipeLine.hxx
-// Author: Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_IsoSurfacesPL_HeaderFile
-#define VISU_IsoSurfacesPL_HeaderFile
-
-#include "VISU_ScalarMapPL.hxx"
-
-class vtkContourFilter;
-class vtkCellDataToPointData;
-
-class VISU_IsoSurfacesPL : public VISU_ScalarMapPL{
-protected:
- VISU_IsoSurfacesPL();
- VISU_IsoSurfacesPL(const VISU_IsoSurfacesPL&);
-public:
- vtkTypeMacro(VISU_IsoSurfacesPL,VISU_ScalarMapPL);
- static VISU_IsoSurfacesPL* New();
- virtual ~VISU_IsoSurfacesPL();
- virtual void ShallowCopy(VISU_PipeLine *thePipeLine);
-
- virtual int GetNbParts();
- virtual void SetNbParts(int theNb = 10);
-
- virtual void SetScaling(int theScaling = VTK_SCALE_LINEAR);
- virtual void SetRange(float theRange[2]);
- virtual float GetMin();
- virtual float GetMax();
-
-public:
- virtual void Init();
- virtual void Update();
- virtual THook* DoHook();
- virtual void SetMapScale(float theMapScale = 1.0);
-
-protected:
- int myNbParts;
- float myRange[2];
- vtkCellDataToPointData* myCellDataToPointData;
- vtkContourFilter *myContourFilter;
-};
-
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// File: VISU_PipeLine.cxx
-// Author: Alexey PETROV
-// Module : VISU
-
-
-#include "VISU_MeshPL.hxx"
-#include "VTKViewer_GeometryFilter.h"
-
-#include <vtkProperty.h>
-#include <vtkObjectFactory.h>
-#include <vtkDataSetMapper.h>
-#include <vtkUnstructuredGrid.h>
-
-vtkStandardNewMacro(VISU_MeshPL);
-
-VISU_MeshPL::VISU_MeshPL()
-{
- myIsShrinkable = true;
-}
-
-void VISU_MeshPL::Build()
-{
- myMapper->SetInput(GetInput2());
-}
-
-void VISU_MeshPL::Init()
-{
-}
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File: VISU_PipeLine.hxx
-// Author: Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_MeshPL_HeaderFile
-#define VISU_MeshPL_HeaderFile
-
-#include "VISU_PipeLine.hxx"
-
-class VISU_MeshPL : public VISU_PipeLine{
-protected:
- VISU_MeshPL();
- VISU_MeshPL(const VISU_MeshPL&);
-public:
- vtkTypeMacro(VISU_MeshPL,VISU_PipeLine);
- static VISU_MeshPL* New();
-
-public:
- virtual void Build();
- virtual void Init();
-};
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File: VISU_PipeLine.hxx
-// Author: Alexey PETROV
-// Module : VISU
-
-#include "VISU_PipeLineUtils.hxx"
-
-void VISU::Mul(const float A[3], float b, float C[3]){ // A*b;
- for(int i = 0; i < 3; i++) C[i] = A[i]*b;
-}
-
-void VISU::Sub(const float A[3], const float B[3], float C[3]){ //A-B
- for(int i = 0; i < 3; i++) C[i] = A[i] - B[i];
-}
-
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File: VISU_PipeLine.hxx
-// Author: Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_PipeLineUtils_HeaderFile
-#define VISU_PipeLineUtils_HeaderFile
-
-#include "VISU_FieldTransform.hxx"
-#include "VISU_LookupTable.hxx"
-#include "VISU_Extractor.hxx"
-
-#include <vtkProperty.h>
-#include <vtkObjectFactory.h>
-#include <vtkDataSetMapper.h>
-#include <vtkUnstructuredGrid.h>
-
-#include <vtkCellDataToPointData.h>
-#include <vtkCellCenters.h>
-#include <vtkPointData.h>
-#include <vtkCellData.h>
-#include <vtkPolyData.h>
-
-#include <vtkMath.h>
-
-#ifndef MESSAGE
-#define MESSAGE(msg) std::cout<<__FILE__<<"["<<__LINE__<<"]::"<<msg<<endl
-
-#undef EXCEPT
-#define EXCEPT(msg) QString(QString(__FILE__) + "[" + QString::number(__LINE__) + "]::" + msg)
-
-#undef EXCEPTION
-#define EXCEPTION(msg) EXCEPT(msg).latin1()
-
-#endif
-
-namespace VISU{
- void Mul(const float A[3], float b, float C[3]); // C = A * b
- void Sub(const float A[3], const float B[3], float C[3]); // C = A - B
-
- template<class TItem> void CellDataToPoint(TItem* theTItem,
- vtkCellDataToPointData *theFilter,
- vtkDataSet* theDataSet,
- VISU_FieldTransform *theFieldTransform)
- {
- if(theDataSet->GetCellData()->GetNumberOfArrays()){
- theFilter->SetInput(theFieldTransform->GetUnstructuredGridOutput());
- theFilter->PassCellDataOn();
- theTItem->SetInput(theFilter->GetUnstructuredGridOutput());
- }else
- theTItem->SetInput(theFieldTransform->GetUnstructuredGridOutput());
- }
-
- template<class TItem> void ToCellCenters(TItem* theTItem,
- vtkCellCenters *theFilter,
- vtkDataSet* theDataSet,
- VISU_FieldTransform *theFieldTransform)
- {
- if(theDataSet->GetCellData()->GetNumberOfArrays()){
- theFilter->SetInput(theFieldTransform->GetUnstructuredGridOutput());
- theFilter->VertexCellsOn();
- theTItem->SetInput(theFilter->GetOutput());
- }else
- theTItem->SetInput(theFieldTransform->GetUnstructuredGridOutput());
- }
-}
-
-#endif
-
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File: VISU_CutPlanesPL.hxx
-// Author: Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_Plot3DPL_HeaderFile
-#define VISU_Plot3DPL_HeaderFile
-
-#include "VISU_ScalarMapPL.hxx"
-#include "VISU_CutPlanesPL.hxx"
-
-class vtkWarpScalar;
-class vtkContourFilter;
-class vtkGeometryFilter;
-class vtkCellDataToPointData;
-
-class VISU_Plot3DPL : public VISU_ScalarMapPL{
-protected:
- VISU_Plot3DPL();
- VISU_Plot3DPL(const VISU_Plot3DPL&);
-
-public:
- vtkTypeMacro(VISU_Plot3DPL,VISU_ScalarMapPL);
- static VISU_Plot3DPL* New();
- virtual ~VISU_Plot3DPL();
-
- virtual
- void
- ShallowCopy(VISU_PipeLine *thePipeLine);
-
- VISU_CutPlanesPL::PlaneOrientation
- GetPlaneOrientation() const;
-
- float
- GetRotateX();
-
- float
- GetRotateY();
-
- void
- SetOrientation(VISU_CutPlanesPL::PlaneOrientation theOrientation,
- float theXAngle = 0.0,
- float theYAngle = 0.0);
-
- float
- GetPlanePosition() const;
-
- bool
- IsPositionRelative() const;
-
- void
- SetPlanePosition(float thePosition,
- bool theIsRelative);
-
- void
- SetScaleFactor(float theScaleFactor);
-
- float
- GetScaleFactor() const;
-
- void
- SetContourPrs (bool theIsContourPrs ) { myIsContour = theIsContourPrs; }
-
- bool
- GetIsContourPrs() { return myIsContour; }
-
- void
- SetNumberOfContours(int theNumber);
-
- int
- GetNumberOfContours() const;
-
- void GetBasePlane (float theOrigin[3],
- float theNormal[3],
- bool theCenterOrigine = false ) const;
-
- void GetMinMaxPosition( float& minPos, float& maxPos ) const;
-
-public:
- virtual void Init();
- virtual void Update();
-
- static
- VISU_CutPlanesPL::PlaneOrientation
- GetOrientation(vtkDataSet* theDataSet);
-
- float
- GetScaleFactor(vtkDataSet* theDataSet);
-
- void SetMapScale(float theMapScale);
-
-protected:
- virtual THook* DoHook();
-
- float myAngle[3];
- bool myIsRelative, myIsContour;
- float myPosition, myScaleFactor;
- VISU_CutPlanesPL::PlaneOrientation myOrientation;
-
- TVTKSmartPtr<vtkCellDataToPointData> myCellDataToPointData;
- TVTKSmartPtr<vtkAppendPolyData> myAppendPolyData;
- TVTKSmartPtr<vtkGeometryFilter> myGeometryFilter;
- TVTKSmartPtr<vtkContourFilter> myContourFilter;
- TVTKSmartPtr<vtkWarpScalar> myWarpScalar;
-};
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File: VISU_PipeLine.hxx
-// Author: Alexey PETROV
-// Module : VISU
-
-#include "VISU_ScalarBarActor.hxx"
-
-#include <vtkPolyDataMapper2D.h>
-#include <vtkCellArray.h>
-#include <vtkCellData.h>
-#include <vtkObjectFactory.h>
-#include <vtkPolyData.h>
-#include <vtkPolyDataMapper2D.h>
-#include <vtkScalarsToColors.h>
-#include <vtkTextMapper.h>
-#include <vtkTextProperty.h>
-#include <vtkViewport.h>
-#include <vtkWindow.h>
-#include <vtkLogLookupTable.h>
-
-using namespace std;
-
-vtkCxxRevisionMacro(VISU_ScalarBarActor, "$Revision$");
-
-vtkCxxSetObjectMacro(VISU_ScalarBarActor,LookupTable,VISU_LookupTable);
-vtkCxxSetObjectMacro(VISU_ScalarBarActor,LabelTextProperty,vtkTextProperty);
-vtkCxxSetObjectMacro(VISU_ScalarBarActor,TitleTextProperty,vtkTextProperty);
-
-//------------------------------------------------------------------------------
-VISU_ScalarBarActor* VISU_ScalarBarActor::New(){
- vtkObject* ret = vtkObjectFactory::CreateInstance("VISU_ScalarBarActor");
- if(ret)
- return (VISU_ScalarBarActor*)ret;
- return new VISU_ScalarBarActor;
-}
-
-VISU_ScalarBarActor::VISU_ScalarBarActor()
-{
- this->LookupTable = NULL;
- this->Position2Coordinate->SetValue(0.17, 0.8);
-
- this->PositionCoordinate->SetCoordinateSystemToNormalizedViewport();
- this->PositionCoordinate->SetValue(0.82,0.1);
-
- this->MaximumNumberOfColors = 64;
- this->NumberOfLabels = 5;
- this->NumberOfLabelsBuilt = 0;
- this->Orientation = VTK_ORIENT_VERTICAL;
- this->Title = NULL;
-
- this->LabelTextProperty = vtkTextProperty::New();
- this->LabelTextProperty->SetFontSize(12);
- this->LabelTextProperty->SetBold(1);
- this->LabelTextProperty->SetItalic(1);
- this->LabelTextProperty->SetShadow(1);
- this->LabelTextProperty->SetFontFamilyToArial();
-
- this->TitleTextProperty = vtkTextProperty::New();
- this->TitleTextProperty->ShallowCopy(this->LabelTextProperty);
-
- this->LabelFormat = new char[8];
- sprintf(this->LabelFormat,"%s","%-#6.3g");
-
- this->TitleMapper = vtkTextMapper::New();
- this->TitleActor = vtkActor2D::New();
- this->TitleActor->SetMapper(this->TitleMapper);
- this->TitleActor->GetPositionCoordinate()->
- SetReferenceCoordinate(this->PositionCoordinate);
-
- this->TextMappers = NULL;
- this->TextActors = NULL;
-
- this->ScalarBar = vtkPolyData::New();
- this->ScalarBarMapper = vtkPolyDataMapper2D::New();
- this->ScalarBarMapper->SetInput(this->ScalarBar);
- this->ScalarBarActor = vtkActor2D::New();
- this->ScalarBarActor->SetMapper(this->ScalarBarMapper);
- this->ScalarBarActor->GetPositionCoordinate()->
- SetReferenceCoordinate(this->PositionCoordinate);
- this->LastOrigin[0] = 0;
- this->LastOrigin[1] = 0;
- this->LastSize[0] = 0;
- this->LastSize[1] = 0;
-}
-
-void VISU_ScalarBarActor::ReleaseGraphicsResources(vtkWindow *win)
-{
- this->TitleActor->ReleaseGraphicsResources(win);
- if (this->TextMappers != NULL )
- {
- for (int i=0; i < this->NumberOfLabelsBuilt; i++)
- {
- this->TextActors[i]->ReleaseGraphicsResources(win);
- }
- }
- this->ScalarBarActor->ReleaseGraphicsResources(win);
-}
-
-VISU_ScalarBarActor::~VISU_ScalarBarActor()
-{
- if (this->LabelFormat)
- {
- delete [] this->LabelFormat;
- this->LabelFormat = NULL;
- }
-
- this->TitleMapper->Delete();
- this->TitleActor->Delete();
-
- if (this->TextMappers != NULL )
- {
- for (int i=0; i < this->NumberOfLabelsBuilt; i++)
- {
- this->TextMappers[i]->Delete();
- this->TextActors[i]->Delete();
- }
- delete [] this->TextMappers;
- delete [] this->TextActors;
- }
-
- this->ScalarBar->Delete();
- this->ScalarBarMapper->Delete();
- this->ScalarBarActor->Delete();
-
- if (this->Title)
- {
- delete [] this->Title;
- this->Title = NULL;
- }
-
- this->SetLookupTable(NULL);
- this->SetLabelTextProperty(NULL);
- this->SetTitleTextProperty(NULL);
-}
-
-int VISU_ScalarBarActor::RenderOverlay(vtkViewport *viewport)
-{
- int renderedSomething = 0;
- int i;
-
- // Everything is built, just have to render
- if (this->Title != NULL)
- {
- renderedSomething += this->TitleActor->RenderOverlay(viewport);
- }
- this->ScalarBarActor->RenderOverlay(viewport);
- if( this->TextActors == NULL)
- {
- vtkWarningMacro(<<"Need a mapper to render a scalar bar");
- return renderedSomething;
- }
-
- for (i=0; i<this->NumberOfLabels; i++)
- {
- renderedSomething += this->TextActors[i]->RenderOverlay(viewport);
- }
-
- renderedSomething = (renderedSomething > 0)?(1):(0);
-
- return renderedSomething;
-}
-
-int VISU_ScalarBarActor::RenderOpaqueGeometry(vtkViewport *viewport)
-{
- int renderedSomething = 0;
- int i;
- int size[2];
-
- if (!this->LookupTable)
- {
- vtkWarningMacro(<<"Need a mapper to render a scalar bar");
- return 0;
- }
-
- if (!this->TitleTextProperty)
- {
- vtkErrorMacro(<<"Need title text property to render a scalar bar");
- return 0;
- }
-
- if (!this->LabelTextProperty)
- {
- vtkErrorMacro(<<"Need label text property to render a scalar bar");
- return 0;
- }
-
- // Check to see whether we have to rebuild everything
- int positionsHaveChanged = 0;
- if (viewport->GetMTime() > this->BuildTime ||
- (viewport->GetVTKWindow() &&
- viewport->GetVTKWindow()->GetMTime() > this->BuildTime))
- {
- // if the viewport has changed we may - or may not need
- // to rebuild, it depends on if the projected coords chage
- int *barOrigin;
- barOrigin = this->PositionCoordinate->GetComputedViewportValue(viewport);
- size[0] =
- this->Position2Coordinate->GetComputedViewportValue(viewport)[0] -
- barOrigin[0];
- size[1] =
- this->Position2Coordinate->GetComputedViewportValue(viewport)[1] -
- barOrigin[1];
- if (this->LastSize[0] != size[0] ||
- this->LastSize[1] != size[1] ||
- this->LastOrigin[0] != barOrigin[0] ||
- this->LastOrigin[1] != barOrigin[1])
- {
- positionsHaveChanged = 1;
- }
- }
-
- // Check to see whether we have to rebuild everything
- 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
- //
- if (this->TextMappers != NULL )
- {
- for (i=0; i < this->NumberOfLabelsBuilt; i++)
- {
- this->TextMappers[i]->Delete();
- this->TextActors[i]->Delete();
- }
- delete [] this->TextMappers;
- delete [] this->TextActors;
- }
-
- // Build scalar bar object; determine its type
- //
- VISU_LookupTable *lut = this->LookupTable; //SALOME specific
- int isLogTable = lut->GetScale() == VTK_SCALE_LOG10;
-
- // we hard code how many steps to display
- int numColors = this->MaximumNumberOfColors;
- float *range = lut->GetRange();
-
- int numPts = 2*(numColors + 1);
- vtkPoints *pts = vtkPoints::New();
- pts->SetNumberOfPoints(numPts);
- vtkCellArray *polys = vtkCellArray::New();
- polys->Allocate(polys->EstimateSize(numColors,4));
- vtkUnsignedCharArray *colors = vtkUnsignedCharArray::New();
- colors->SetNumberOfComponents(3);
- colors->SetNumberOfTuples(numColors);
-
- this->ScalarBarActor->SetProperty(this->GetProperty());
- this->ScalarBar->Initialize();
- this->ScalarBar->SetPoints(pts);
- this->ScalarBar->SetPolys(polys);
- this->ScalarBar->GetCellData()->SetScalars(colors);
- pts->Delete(); polys->Delete(); colors->Delete();
-
- // get the viewport size in display coordinates
- int *barOrigin, barWidth, barHeight;
- barOrigin = this->PositionCoordinate->GetComputedViewportValue(viewport);
- size[0] =
- this->Position2Coordinate->GetComputedViewportValue(viewport)[0] -
- barOrigin[0];
- size[1] =
- this->Position2Coordinate->GetComputedViewportValue(viewport)[1] -
- barOrigin[1];
- this->LastOrigin[0] = barOrigin[0];
- this->LastOrigin[1] = barOrigin[1];
- this->LastSize[0] = size[0];
- this->LastSize[1] = size[1];
-
- // Update all the composing objects
- this->TitleActor->SetProperty(this->GetProperty());
- this->TitleMapper->SetInput(this->Title);
- if (this->TitleTextProperty->GetMTime() > this->BuildTime)
- {
- // Shallow copy here so that the size of the title prop is not affected
- // by the automatic adjustment of its text mapper's size (i.e. its
- // mapper's text property is identical except for the font size
- // which will be modified later). This allows text actors to
- // share the same text property, and in that case specifically allows
- // the title and label text prop to be the same.
- this->TitleMapper->GetTextProperty()->ShallowCopy(this->TitleTextProperty);
- this->TitleMapper->GetTextProperty()->SetJustificationToCentered();
- }
-
- // find the best size for the title font
- int titleSize[2];
- this->SizeTitle(titleSize, size, viewport);
-
- // find the best size for the ticks
- int labelSize[2];
- this->AllocateAndSizeLabels(labelSize, size, viewport,range);
- this->NumberOfLabelsBuilt = this->NumberOfLabels;
-
- // generate points
- float x[3]; x[2] = 0.0;
- float delta, val;
- if ( this->Orientation == VTK_ORIENT_VERTICAL )
- {
- barWidth = size[0] - 4 - labelSize[0];
- barHeight = (int)(0.86*size[1]);
- delta=(float)barHeight/numColors;
- for (i=0; i<numPts/2; i++)
- {
- x[0] = 0;
- x[1] = i*delta;
- pts->SetPoint(2*i,x);
- x[0] = barWidth;
- pts->SetPoint(2*i+1,x);
- }
- }
- else
- {
- barWidth = size[0];
- barHeight = (int)(0.4*size[1]);
- delta=(float)barWidth/numColors;
- for (i=0; i<numPts/2; i++)
- {
- x[0] = i*delta;
- x[1] = barHeight;
- pts->SetPoint(2*i,x);
- x[1] = 0;
- pts->SetPoint(2*i+1,x);
- }
- }
-
- //polygons & cell colors
- unsigned char *rgba, *rgb;
- vtkIdType ptIds[4];
- for (i=0; i<numColors; i++)
- {
- ptIds[0] = 2*i;
- ptIds[1] = ptIds[0] + 1;
- ptIds[2] = ptIds[1] + 2;
- ptIds[3] = ptIds[0] + 2;
- polys->InsertNextCell(4,ptIds);
-
- if ( isLogTable ){ //SALOME specific
- float rgbval = log10(range[0]) +
- i*(log10(range[1])-log10(range[0]))/(numColors -1);
- rgba = lut->MapValue(rgbval);
- }else{
- rgba = lut->MapValue(range[0] + (range[1] - range[0])*
- ((float)i /(numColors-1.0)));
- }
-
- rgb = colors->GetPointer(3*i); //write into array directly
- rgb[0] = rgba[0];
- rgb[1] = rgba[1];
- rgb[2] = rgba[2];
- }
-
- // Now position everything properly
- //
- if (this->Orientation == VTK_ORIENT_VERTICAL)
- {
- int sizeTextData[2];
-
- // center the title
- this->TitleActor->SetPosition(size[0]/2, 0.9*size[1]);
-
- for (i=0; i < this->NumberOfLabels; i++)
- {
- val = (float)i/(this->NumberOfLabels-1) *barHeight;
- this->TextMappers[i]->GetSize(viewport,sizeTextData);
- this->TextMappers[i]->GetTextProperty()->SetJustificationToLeft();
- this->TextActors[i]->SetPosition(barWidth+3,
- val - sizeTextData[1]/2);
- }
- }
- else
- {
- this->TitleActor->SetPosition(size[0]/2,
- barHeight + labelSize[1] + 0.1*size[1]);
- for (i=0; i < this->NumberOfLabels; i++)
- {
- this->TextMappers[i]->GetTextProperty()->SetJustificationToCentered();
- val = (float)i/(this->NumberOfLabels-1) * barWidth;
- this->TextActors[i]->SetPosition(val, barHeight + 0.05*size[1]);
- }
- }
-
- this->BuildTime.Modified();
- }
-
- // Everything is built, just have to render
- if (this->Title != NULL)
- {
- renderedSomething += this->TitleActor->RenderOpaqueGeometry(viewport);
- }
- this->ScalarBarActor->RenderOpaqueGeometry(viewport);
- for (i=0; i<this->NumberOfLabels; i++)
- {
- renderedSomething += this->TextActors[i]->RenderOpaqueGeometry(viewport);
- }
-
- renderedSomething = (renderedSomething > 0)?(1):(0);
-
- return renderedSomething;
-}
-
-void VISU_ScalarBarActor::PrintSelf(ostream& os, vtkIndent indent)
-{
- this->Superclass::PrintSelf(os,indent);
-
- if ( this->LookupTable )
- {
- os << indent << "Lookup Table:\n";
- this->LookupTable->PrintSelf(os,indent.GetNextIndent());
- }
- else
- {
- os << indent << "Lookup Table: (none)\n";
- }
-
- 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->LabelTextProperty)
- {
- os << indent << "Label Text Property:\n";
- this->LabelTextProperty->PrintSelf(os,indent.GetNextIndent());
- }
- else
- {
- os << indent << "Label Text Property: (none)\n";
- }
-
- os << indent << "Title: " << (this->Title ? this->Title : "(none)") << "\n";
- os << indent << "Maximum Number Of Colors: "
- << this->MaximumNumberOfColors << "\n";
- os << indent << "Number Of Labels: " << this->NumberOfLabels << "\n";
- os << indent << "Number Of Labels Built: " << this->NumberOfLabelsBuilt << "\n";
-
- os << indent << "Orientation: ";
- if ( this->Orientation == VTK_ORIENT_HORIZONTAL )
- {
- os << "Horizontal\n";
- }
- else
- {
- os << "Vertical\n";
- }
-
- os << indent << "Label Format: " << this->LabelFormat << "\n";
-}
-
-void VISU_ScalarBarActor::ShallowCopy(vtkProp *prop)
-{
- VISU_ScalarBarActor *a = VISU_ScalarBarActor::SafeDownCast(prop);
- if ( a != NULL )
- {
- this->SetPosition2(a->GetPosition2());
- this->SetLookupTable(a->GetLookupTable());
- this->SetMaximumNumberOfColors(a->GetMaximumNumberOfColors());
- this->SetOrientation(a->GetOrientation());
- this->SetLabelTextProperty(a->GetLabelTextProperty());
- this->SetTitleTextProperty(a->GetTitleTextProperty());
- this->SetLabelFormat(a->GetLabelFormat());
- this->SetTitle(a->GetTitle());
- this->GetPositionCoordinate()->SetCoordinateSystem(
- a->GetPositionCoordinate()->GetCoordinateSystem());
- this->GetPositionCoordinate()->SetValue(
- a->GetPositionCoordinate()->GetValue());
- this->GetPosition2Coordinate()->SetCoordinateSystem(
- a->GetPosition2Coordinate()->GetCoordinateSystem());
- this->GetPosition2Coordinate()->SetValue(
- a->GetPosition2Coordinate()->GetValue());
- }
-
- // Now do superclass
- this->vtkActor2D::ShallowCopy(prop);
-}
-
-void VISU_ScalarBarActor::AllocateAndSizeLabels(int *labelSize, int *size,
- vtkViewport *viewport,
- float *range)
-{
- labelSize[0] = labelSize[1] = 0;
-
- this->TextMappers = new vtkTextMapper * [this->NumberOfLabels];
- this->TextActors = new vtkActor2D * [this->NumberOfLabels];
-
- char string[512];
-
- float val;
- int i;
-
- // TODO: this should be optimized, maybe by keeping a list of
- // allocated mappers, in order to avoid creation/destruction of
- // their underlying text properties (i.e. each time a mapper is
- // created, text properties are created and shallow-assigned a font size
- // which value might be "far" from the target font size).
-
- VISU_LookupTable *lut = this->LookupTable; //SALOME specific
- int isLogTable = lut->GetScale() == VTK_SCALE_LOG10;
-
- for (i=0; i < this->NumberOfLabels; i++)
- {
- this->TextMappers[i] = vtkTextMapper::New();
-
- if(isLogTable && 0 < i && i < this->NumberOfLabels - 1){ // SALOME specific
- float lval = log10(range[0]) + (float)i/(this->NumberOfLabels-1) *
- (log10(range[1])-log10(range[0]));
- val = pow(10,lval);
- }else{
- val = range[0] + (float)i/(this->NumberOfLabels-1) * (range[1]-range[0]);
- }
- sprintf(string, this->LabelFormat, val);
- this->TextMappers[i]->SetInput(string);
-
- // Shallow copy here so that the size of the label prop is not affected
- // by the automatic adjustment of its text mapper's size (i.e. its
- // mapper's text property is identical except for the font size
- // which will be modified later). This allows text actors to
- // share the same text property, and in that case specifically allows
- // the title and label text prop to be the same.
- this->TextMappers[i]->GetTextProperty()->ShallowCopy(
- this->LabelTextProperty);
-
- this->TextActors[i] = vtkActor2D::New();
- this->TextActors[i]->SetMapper(this->TextMappers[i]);
- this->TextActors[i]->SetProperty(this->GetProperty());
- this->TextActors[i]->GetPositionCoordinate()->
- SetReferenceCoordinate(this->PositionCoordinate);
- }
-
- if (this->NumberOfLabels)
- {
- int targetWidth, targetHeight;
-
- if ( this->Orientation == VTK_ORIENT_VERTICAL )
- {
- targetWidth = (int)(0.6*size[0]);
- targetHeight = (int)(0.86*size[1]/this->NumberOfLabels);
- }
- else
- {
- targetWidth = (int)(size[0]*0.8/this->NumberOfLabels);
- targetHeight = (int)(0.25*size[1]);
- }
-
- vtkTextMapper::SetMultipleConstrainedFontSize(viewport,
- targetWidth,
- targetHeight,
- this->TextMappers,
- this->NumberOfLabels,
- labelSize);
- }
-}
-
-void VISU_ScalarBarActor::SizeTitle(int *titleSize, int *size,
- vtkViewport *viewport)
-{
- titleSize[0] = titleSize[1] = 0;
-
- if (this->Title == NULL || !strlen(this->Title))
- {
- return;
- }
-
- int targetWidth, targetHeight;
-
- targetWidth = size[0];
- if ( this->Orientation == VTK_ORIENT_VERTICAL )
- {
- targetHeight = (int)(0.1*size[1]);
- }
- else
- {
- targetHeight = (int)(0.25*size[1]);
- }
-
- this->TitleMapper->SetConstrainedFontSize(
- viewport, targetWidth, targetHeight);
-
- this->TitleMapper->GetSize(viewport, titleSize);
-}
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File: VISU_PipeLine.hxx
-// Author: Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_ScalarBarActor_HeaderFile
-#define VISU_ScalarBarActor_HeaderFile
-
-#include "VISU_LookupTable.hxx"
-
-#include <vtkActor2D.h>
-
-class vtkPolyData;
-class vtkPolyDataMapper2D;
-class vtkScalarsToColors;
-class vtkTextMapper;
-class vtkTextProperty;
-
-#ifndef VTK_ORIENT_HORIZONTAL
-#define VTK_ORIENT_HORIZONTAL 0
-#endif
-
-#ifndef VTK_ORIENT_VERTICAL
-#define VTK_ORIENT_VERTICAL 1
-#endif
-
-class VISU_ScalarBarActor : public vtkActor2D
-{
-public:
- vtkTypeRevisionMacro(VISU_ScalarBarActor,vtkActor2D);
- void PrintSelf(ostream& os, vtkIndent indent);
-
- // Description:
- // Instantiate object with 64 maximum colors; 5 labels; %%-#6.3g label
- // format, no title, and vertical orientation. The initial scalar bar
- // size is (0.05 x 0.8) of the viewport size.
- static VISU_ScalarBarActor *New();
-
- // Description:
- // Draw the scalar bar and annotation text to the screen.
- int RenderOpaqueGeometry(vtkViewport* viewport);
- int RenderTranslucentGeometry(vtkViewport*) { return 0; };
- int RenderOverlay(vtkViewport* viewport);
-
- // 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.
- virtual void ReleaseGraphicsResources(vtkWindow *);
-
- // Description:
- // Set/Get the vtkLookupTable to use. The lookup table specifies the number
- // of colors to use in the table (if not overridden), as well as the scalar
- // range.
- virtual void SetLookupTable(VISU_LookupTable*);
- vtkGetObjectMacro(LookupTable,VISU_LookupTable);
-
- // Description:
- // Set/Get the maximum number of scalar bar segments to show. This may
- // differ from the number of colors in the lookup table, in which case
- // the colors are samples from the lookup table.
- vtkSetClampMacro(MaximumNumberOfColors, int, 2, VTK_LARGE_INTEGER);
- vtkGetMacro(MaximumNumberOfColors, int);
-
- // Description:
- // Set/Get the number of annotation labels to show.
- vtkSetClampMacro(NumberOfLabels, int, 0, 64);
- vtkGetMacro(NumberOfLabels, int);
-
- // Description:
- // Control the orientation of the scalar bar.
- vtkSetClampMacro(Orientation,int,VTK_ORIENT_HORIZONTAL, VTK_ORIENT_VERTICAL);
- vtkGetMacro(Orientation, int);
- void SetOrientationToHorizontal()
- {this->SetOrientation(VTK_ORIENT_HORIZONTAL);};
- void SetOrientationToVertical() {this->SetOrientation(VTK_ORIENT_VERTICAL);};
-
- // Description:
- // Set/Get the title text property.
- virtual void SetTitleTextProperty(vtkTextProperty *p);
- vtkGetObjectMacro(TitleTextProperty,vtkTextProperty);
-
- // Description:
- // Set/Get the labels text property.
- virtual void SetLabelTextProperty(vtkTextProperty *p);
- vtkGetObjectMacro(LabelTextProperty,vtkTextProperty);
-
- // Description:
- // Set/Get the format with which to print the labels on the scalar
- // bar.
- vtkSetStringMacro(LabelFormat);
- vtkGetStringMacro(LabelFormat);
-
- // Description:
- // Set/Get the title of the scalar bar actor,
- vtkSetStringMacro(Title);
- vtkGetStringMacro(Title);
-
- // Description:
- // Shallow copy of a scalar bar actor. Overloads the virtual vtkProp method.
- void ShallowCopy(vtkProp *prop);
-
-protected:
- VISU_ScalarBarActor();
- ~VISU_ScalarBarActor();
-
- VISU_LookupTable *LookupTable;
- vtkTextProperty *TitleTextProperty;
- vtkTextProperty *LabelTextProperty;
-
- int MaximumNumberOfColors;
- int NumberOfLabels;
- int NumberOfLabelsBuilt;
- int Orientation;
- char *Title;
- char *LabelFormat;
-
- vtkTextMapper **TextMappers;
- virtual void AllocateAndSizeLabels(int *labelSize, int *size,
- vtkViewport *viewport, float *range);
-
-private:
- vtkTextMapper *TitleMapper;
- vtkActor2D *TitleActor;
-
- vtkActor2D **TextActors;
-
- vtkPolyData *ScalarBar;
- vtkPolyDataMapper2D *ScalarBarMapper;
- vtkActor2D *ScalarBarActor;
-
- vtkTimeStamp BuildTime;
- int LastSize[2];
- int LastOrigin[2];
-
- void SizeTitle(int *titleSize, int *size, vtkViewport *viewport);
-
-private:
- VISU_ScalarBarActor(const VISU_ScalarBarActor&); // Not implemented.
- void operator=(const VISU_ScalarBarActor&); // Not implemented.
-};
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File: VISU_PipeLine.hxx
-// Author: Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_StreamLinesPL_HeaderFile
-#define VISU_StreamLinesPL_HeaderFile
-
-#include "VISU_DeformedShapePL.hxx"
-#include <vtkStreamLine.h>
-
-using namespace std;
-
-class vtkPointSet;
-class vtkCellCenters;
-class VTKViewer_GeometryFilter;
-class VISU_UsedPointsFilter;
-
-class VISU_StreamLinesPL : public VISU_DeformedShapePL{
-protected:
- VISU_StreamLinesPL();
- VISU_StreamLinesPL(const VISU_StreamLinesPL&);
-public:
- vtkTypeMacro(VISU_StreamLinesPL,VISU_DeformedShapePL);
- static VISU_StreamLinesPL* New();
- virtual ~VISU_StreamLinesPL();
- virtual void ShallowCopy(VISU_PipeLine *thePipeLine);
-
- virtual int SetParams(float theIntStep,
- float thePropogationTime,
- float theStepLength,
- vtkPointSet* theSource = NULL,
- float thePercents = 0.3,
- int theDirection = VTK_INTEGRATE_BOTH_DIRECTIONS,
- int isOnlyTry = false);
- virtual vtkPointSet* GetSource();
- virtual float GetUsedPoints();
- virtual float GetIntegrationStep();
- virtual float GetPropagationTime();
- virtual float GetStepLength();
- virtual int GetDirection();
-
- virtual vtkDataSet* GetStreamerSource();
- virtual float GetVelocityCoeff();
-
- virtual float GetMaxIntegrationStep();
- virtual float GetMinIntegrationStep();
-
- virtual float GetMinStepLength();
- virtual float GetMaxStepLength();
-
- virtual float GetMinPropagationTime();
- virtual float GetMaxPropagationTime();
- virtual float GetBasePropagationTime();
-
-public:
- virtual THook* DoHook();
- virtual void Init();
- virtual void Update();
- virtual void SetMapScale(float theMapScale = 1.0);
-
-public:
- static float GetMaxIntegrationStep(vtkPointSet* theDataSet);
- static float GetMinIntegrationStep(vtkPointSet* theDataSet, float thePercents = 0.3);
- static float GetBaseIntegrationStep(vtkPointSet* theDataSet, float thePercents = 0.3);
-
- static float GetMinPropagationTime(vtkPointSet* theDataSet);
- static float GetMaxPropagationTime(vtkPointSet* theDataSet);
- static float GetBasePropagationTime(vtkPointSet* theDataSet);
-
- static float GetMinStepLength(vtkPointSet* theDataSet);
- static float GetMaxStepLength(vtkPointSet* theDataSet);
- static float GetBaseStepLength(vtkPointSet* theDataSet);
-
- static float GetVelocityCoeff(vtkPointSet* theDataSet);
-
- static int IsPossible(vtkPointSet* theDataSet, float thePercents = 0.3);
-
-protected:
- static float GetNecasseryMemorySize(vtkIdType theNbOfPoints, float theStepLength,
- float thePropogationTime, float thePercents = 0.3);
- static int FindPossibleParams(vtkPointSet* theDataSet, float& theStepLength,
- float& thePropogationTime, float& thePercents);
-
- static float CorrectIntegrationStep(float theStep, vtkPointSet* theDataSet, float thePercents = 0.3);
- static float CorrectPropagationTime(float thePropagationTime, vtkPointSet* theDataSet);
- static float CorrectStepLength(float theStep, vtkPointSet* theDataSet);
-
- vtkStreamLine* myStream;
- vtkPointSet* mySource;
- vtkCellCenters* myCenters;
- VTKViewer_GeometryFilter *myGeomFilter;
- VISU_UsedPointsFilter *myPointsFilter;
- float myPercents;
-};
-
-
-#endif
-
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File: VISU_StreamLinesPL.cxx
-// Author: Alexey PETROV
-// Module : VISU
-
-
-#include "VISU_UsedPointsFilter.hxx"
-
-#include <vtkObjectFactory.h>
-#include <vtkPointSet.h>
-#include <vtkPointData.h>
-#include <vtkCellData.h>
-#include <vtkPoints.h>
-#include <vtkIdList.h>
-
-vtkStandardNewMacro(VISU_UsedPointsFilter);
-
-VISU_UsedPointsFilter::VISU_UsedPointsFilter(){
- PercentsOfUsedPoints = 1.0;
-}
-
-VISU_UsedPointsFilter::~VISU_UsedPointsFilter(){}
-
-void VISU_UsedPointsFilter::Execute(){
- vtkPointSet *anInput = this->GetInput(), *anOutput = this->GetOutput();
- anOutput->GetPointData()->CopyAllOff();
- anOutput->GetCellData()->CopyAllOff();
- anOutput->CopyStructure(anInput);
-
- vtkPoints* aPoints = vtkPoints::New();
- vtkIdList *anIdList = vtkIdList::New();
- vtkIdType iEnd = anInput->GetNumberOfPoints();
- for(vtkIdType i = 0; i < iEnd; i++){
- anInput->GetPointCells(i,anIdList);
- if(anIdList->GetNumberOfIds() > 0)
- aPoints->InsertNextPoint(anInput->GetPoint(i));
- }
- vtkPoints* aNewPoints = vtkPoints::New();
- iEnd = aPoints->GetNumberOfPoints();
- if (PercentsOfUsedPoints > 0){
- vtkIdType anOffset = vtkIdType(1.0/PercentsOfUsedPoints);
- if(anOffset < 1) anOffset = 1;
- for(vtkIdType i = 0; i < iEnd; i += anOffset)
- aNewPoints->InsertNextPoint(aPoints->GetPoint(i));
- }
- anOutput->SetPoints(aNewPoints);
- aNewPoints->Delete();
- aPoints->Delete();
-}
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File: VISU_UsedPointsFilter.hxx
-// Author: Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_UsedPointsFilter_HeaderFile
-#define VISU_UsedPointsFilter_HeaderFile
-
-#include <vtkPointSetToPointSetFilter.h>
-
-class VISU_UsedPointsFilter : public vtkPointSetToPointSetFilter{
-protected:
- VISU_UsedPointsFilter();
- VISU_UsedPointsFilter(const VISU_UsedPointsFilter&);
-
- virtual void Execute();
- float PercentsOfUsedPoints;
-
-public:
- vtkTypeMacro(VISU_UsedPointsFilter,vtkPointSetToPointSetFilter);
- static VISU_UsedPointsFilter* New();
- virtual ~VISU_UsedPointsFilter();
-
- vtkSetMacro(PercentsOfUsedPoints,float);
- vtkGetMacro(PercentsOfUsedPoints,float);
-};
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File: VISU_PipeLine.hxx
-// Author: Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_VectorsPL_HeaderFile
-#define VISU_VectorsPL_HeaderFile
-
-#include "VISU_DeformedShapePL.hxx"
-
-class VTKViewer_TransformFilter;
-class VTKViewer_Transform;
-class vtkCellCenters;
-
-class vtkGlyphSource2D;
-class vtkConeSource;
-class vtkLineSource;
-
-class vtkGlyph3D;
-
-class VISU_VectorsPL : public VISU_DeformedShapePL{
-protected:
- VISU_VectorsPL();
- VISU_VectorsPL(const VISU_VectorsPL&);
-public:
- vtkTypeMacro(VISU_VectorsPL,VISU_DeformedShapePL);
- static VISU_VectorsPL* New();
- virtual ~VISU_VectorsPL();
- virtual void ShallowCopy(VISU_PipeLine *thePipeLine);
-
- virtual void SetScale(float theScale);
- virtual float GetScale();
-
- enum GlyphType{ ARROW, CONE2, CONE6, NONE};
- virtual void SetGlyphType(GlyphType theType) { myTypeGlyph = theType;}
- virtual GlyphType GetGlyphType() { return myTypeGlyph;}
-
- enum GlyphPos{ CENTER, TAIL,HEAD};
- virtual void SetGlyphPos(GlyphPos thePos) { myPosGlyph = thePos;}
- virtual GlyphPos GetGlyphPos() { return myPosGlyph;}
-
-public:
- virtual THook* DoHook();
- virtual void Init();
- virtual void Update();
-
- virtual void SetTransform(VTKViewer_Transform* theTransform);
- virtual VTKViewer_Transform* GetTransform();
-
- virtual void SetMapScale(float theMapScale = 1.0);
-
-protected:
- GlyphType myTypeGlyph;
- GlyphPos myPosGlyph;
- vtkGlyph3D *myGlyph;
-
- vtkGlyphSource2D *myGlyphSource;
- vtkLineSource *myLineSource;
- vtkConeSource *myConeSource;
-
- vtkCellCenters* myCenters;
- VTKViewer_TransformFilter *myTransformFilter;
-};
-
-
-#endif
#LIB_MOC = VisuGUI_SweepPrefDlg.h
LIB_SRC = VisuGUI.cxx \
- VisuGUI_Factory.cxx \
VisuGUI_Selection.cxx \
VisuGUI_Tools.cxx \
VisuGUI_PopupTools.cxx \
+++ /dev/null
-# 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-#
-#
-#
-# 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: YYYY-MM-DD\n"
-"Last-Translator: FULLNAME <EMAIL@ADDRESS>\n"
-"Content-Type: text/plain; charset=iso-8859-1\n"
-
-
-msgid "ICON_OBJBROWSER_Visu"
-msgstr "Visu_tree_visu.png"
-
-msgid "ICON_SCALAR_MAP"
-msgstr "Visu_scalars.png"
-
-msgid "ICON_DEFORMED_SHAPE"
-msgstr "Visu_deformed.png"
-
-msgid "ICON_VECTORS"
-msgstr "Visu_vectors.png"
-
-msgid "ICON_ISO_SURFACES"
-msgstr "Visu_isosurfaces.png"
-
-msgid "ICON_CUT_PLANES"
-msgstr "Visu_cutplane.png"
-
-msgid "ICON_CUT_LINES"
-msgstr "Visu_cutlines.png"
-
-msgid "ICON_STREAM_LINES"
-msgstr "Visu_streamlines.png"
+++ /dev/null
-# 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-#
-#
-#
-# 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_OBJBROWSER_Visu"
-msgstr "Visu_tree_visu.png"
-
-msgid "ICON_SCALAR_MAP"
-msgstr "Visu_scalars.png"
-
-msgid "ICON_DEFORMED_SHAPE"
-msgstr "Visu_deformed.png"
-
-msgid "ICON_VECTORS"
-msgstr "Visu_vectors.png"
-
-msgid "ICON_ISO_SURFACES"
-msgstr "Visu_isosurfaces.png"
-
-msgid "ICON_CUT_PLANES"
-msgstr "Visu_cutplane.png"
-
-msgid "ICON_CUT_LINES"
-msgstr "Visu_cutlines.png"
-
-msgid "ICON_STREAM_LINES"
-msgstr "Visu_streamlines.png"
-
-msgid "ICON_PLOT2D"
-msgstr "Visu_plot2d.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"
+++ /dev/null
-msgid ""
-msgstr ""
-"Project-Id-Version: PROJECT VERSION\n"
-"POT-Creation-Date: 2002-02-22 16:56:46 CET\n"
-"PO-Revision-Date: 2005-06-27 12:38+0400\n"
-"Last-Translator: FULLNAME <EMAIL@ADDRESS>\n"
-"Content-Type: text/plain; charset=iso-8859-1\n"
-
-msgid "BUT_OK"
-msgstr "OK"
-
-msgid "BUT_APPLY"
-msgstr "Apply"
-
-msgid "BUT_CLOSE"
-msgstr "Close"
-
-msgid "BUT_CANCEL"
-msgstr "Cancel"
-
-msgid "WRN_VISU"
-msgstr "Post-Pro Warning"
-
-msgid "INF_DONE"
-msgstr " done"
-
-msgid "WRN_STUDY_LOCKED"
-msgstr "Current Study is locked"
-
-msgid "WRN_NO_AVAILABLE_DATA"
-msgstr "No Available data in selection"
-
-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"
-
-# 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_NB_LABELS"
-msgstr "Nb. of labels"
-
-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_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_TIME_STEP"
-msgstr "Time step(second)"
-
-msgid "VISU_NB_CYCLES"
-msgstr "Number of cycles"
-
-msgid "VISU_NB_STEPS"
-msgstr "Number of steps"
-
-#: VisuGUI.cxx
-
-msgid "VisuGUI::MEN_IMPORT_FROM_FILE"
-msgstr "Import from File"
-
-msgid "VisuGUI::MEN_EXPLORE_MED_FILE"
-msgstr "Explore MED File"
-
-msgid "VisuGUI::MEN_IMPORT_TABLE"
-msgstr "Import table from File"
-
-msgid "VisuGUI::MEN_SCALAR_MAP"
-msgstr "Scalar Map"
-
-msgid "VisuGUI::MEN_DEFORMED_SHAPE"
-msgstr "Deformed Shape"
-
-msgid "VisuGUI::MEN_VISUALIZATION"
-msgstr "Visualization"
-
-msgid "VisuGUI::TOOL_VISUALISATION"
-msgstr "Visualization Toolbar"
-
-msgid "VisuGUI::TOOL_REPRESENTATION"
-msgstr "Representation Toolbar"
-
-msgid "VisuGUI::MEN_SHOW_ANIMATION"
-msgstr "Show..."
-
-msgid "VisuGUI::MEN_ANIMATION"
-msgstr "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_DISPLAY"
-msgstr "Display"
-
-msgid "VisuGUI::MEN_DISPLAY_ONLY"
-msgstr "Display 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_ERASE"
-msgstr "Erase"
-
-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_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 "Erase 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_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::ERR_ERROR_IN_THE_FILE"
-msgstr "Error in the file"
-
-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::FLT_ALL_FILES"
-msgstr "All Files (*.*)"
-
-msgid "VisuGUI::FLT_MED_FILES"
-msgstr "MED Files (*.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_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::MAGNITUDE_COLORING"
-msgstr "Magnitude coloring"
-
-msgid "VisuGUI_DeformedShapeDlg::SCALE_FACTOR"
-msgstr "Scale Factor:"
-
-
-#: 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"
-
-
-#: 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_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::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 property"
-
-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"
-
-
-#: 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"
-
-
-#: 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_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"
+++ /dev/null
-#ifndef VISUGUI_ACTIONSDEF
-#define VISUGUI_ACTIONSDEF
-
-//#define VISU_IMPORT_FROM_FILE 112
-//#define VISU_EXPLORE_MED 113
-//#define VISU_IMPORT_MED 114
-//#define VISU_IMPORT_TABLE 199
-#define VISU_IMPORT_FROM_FILE 4002
-#define VISU_EXPLORE_MED 4003
-#define VISU_IMPORT_TABLE 4004
-#define VISU_IMPORT_MED_STRUCTURE 4005
-#define VISU_IMPORT_MED_TIMESTAMP 4006
-#define VISU_IMPORT_MED_FIELD 4007
-
-#define VISU_SCALAR_MAP 4011
-#define VISU_DEFORMED_SHAPE 4012
-#define VISU_VECTORS 4013
-#define VISU_ISO_SURFACES 4014
-#define VISU_CUT_PLANES 4015
-#define VISU_STREAM_LINES 4016
-#define VISU_CUT_LINES 4017
-#define VISU_PLOT2D 4018
-#define VISU_PLOT_3D 4019
-
-//#define VISU_DELETE 4021
-#define VISU_DELETE_OBJS 4022
-
-#define VISU_SHOW_TABLE 4023
-#define VISU_CREATE_CURVES 4024
-#define VISU_EXPORT_TABLE 4025
-
-#define VISU_CREATE_PRS 4026
-#define VISU_CREATE_MANY_PRS 4027
-#define VISU_ERASE 4030
-#define VISU_DISPLAY 4031
-#define VISU_DISPLAY_ONLY 4032
-//#define VISU_DELETE_PRS 4033
-
-#define VISU_COPY_PRS 4037
-#define VISU_CURVE_PROPS 4040
-#define VISU_RENAME 4041
-#define VISU_EDIT_CONTAINER 4042
-#define VISU_CLEAR_CONTAINER 4043
-
-#define VISU_SAVE_VIEW_PARAMS_1 4045
-#define VISU_SAVE_VIEW_PARAMS 4046
-#define VISU_RESTORE_VIEW_PARAMS 4047
-#define VISU_DELETE_VIEW_PARAMS 4048
-
-#define VISU_POINTS 4050
-#define VISU_WIREFRAME 4051
-#define VISU_SURFACE 4052
-#define VISU_INSIDEFRAME 4053
-#define VISU_SURFACEFRAME 4054
-#define VISU_SHRINK 4055
-#define VISU_UNSHRINK 4056
-
-#define VISU_CELL_COLOR 4057
-#define VISU_COLOR 4058
-#define VISU_EDGE_COLOR 4059
-#define VISU_OPACITY 4060
-#define VISU_LINE_WIDTH 4061
-
-#define VISU_EDIT_SCALARMAP 40620
-#define VISU_EDIT_DEFORMEDSHAPE 40621
-#define VISU_EDIT_CUTPLANES 40622
-#define VISU_EDIT_CUTLINES 40623
-#define VISU_EDIT_ISOSURFACE 40624
-#define VISU_EDIT_VECTORS 40625
-#define VISU_EDIT_STREAMLINES 40626
-#define VISU_EDIT_PLOT3D 40627
-
-#define VISU_EDIT_PRS 4062
-#define VISU_CREATE_TABLE 4063
-#define VISU_SWEEP 4064
-#define VISU_SELECTION_INFO 4065
-#define VISU_ANIMATION 4066
-
-#define VISU_ERASE_ALL 4070
-#define VISU_GLOBAL_SELECTION 4071
-#define VISU_PARTIAL_SELECTION 4072
-#define VISU_SCALING 4073
-
-#define VISU_CUBE_AXES 4075
-#define VISU_CLIPPING 4077
-#define VISU_ARRANGE_ACTORS 4078
-
-#define VISU_TRANSLATE_PRS 4079
-#define VISU_MERGE_SCALAR_BARS 4080
-#define VISU_FREE_SCALAR_BARS 4081
-#define VISU_SHOW_ANIMATION 4082
-
-#endif
+++ /dev/null
-
-#include "VisuGUI_ClippingDlg.h"
-
-#include "VisuGUI.h"
-#include "VisuGUI_Tools.h"
-
-#include "VISU_Prs3d_i.hh"
-#include "VISU_Result_i.hh"
-
-#include "VISU_PipeLine.hxx"
-
-#include "SalomeApp_SelectionMgr.h"
-
-#include "SVTK_ViewWindow.h"
-
-#include "SUIT_Session.h"
-#include "SUIT_Desktop.h"
-#include "SUIT_MessageBox.h"
-#include "SUIT_ResourceMgr.h"
-#include "SUIT_OverrideCursor.h"
-
-#include "SALOME_Actor.h"
-
-// 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>
-
-// VTK Includes
-#include <vtkMath.h>
-#include <vtkCamera.h>
-#include <vtkRenderer.h>
-#include <vtkDataSet.h>
-#include <vtkDataSetMapper.h>
-#include <vtkImplicitFunction.h>
-#include <vtkPlaneSource.h>
-#include <vtkPolyData.h>
-#include <vtkUnstructuredGrid.h>
-
-// OCCT Includes
-#include <gp_Dir.hxx>
-
-using namespace std;
-
-namespace VISU {
- float GetFloat (const QString& theValue, float theDefault)
- {
- if (theValue.isEmpty()) return theDefault;
- SUIT_ResourceMgr* aResourceMgr = VISU::GetResourceMgr();
- QString aValue = aResourceMgr->stringValue("VISU",theValue);
- if (aValue.isEmpty()) return theDefault;
- return aValue.toFloat();
- }
-
- void RenderViewWindow (SVTK_ViewWindow* vw)
- {
- if (vw) {
- vw->getRenderer()->ResetCameraClippingRange();
- vw->Repaint();
- }
- }
-
- void RangeStepAndValidator (QtxDblSpinBox* theSpinBox, double min, double max,
- double step, unsigned short decimals)
- {
- theSpinBox->setRange(min, max);
- theSpinBox->setLineStep(step);
- ((QDoubleValidator*)theSpinBox->validator())->setRange(min, max, decimals);
- }
-};
-
-//=================================================================================
-//class : OrientedPlane
-//purpose :
-//=================================================================================
-class OrientedPlane: public vtkPlane
-{
- SVTK_ViewWindow* myViewWindow;
-
- vtkDataSetMapper* myMapper;
-
-public:
- static OrientedPlane * New() {
- return new OrientedPlane();
- }
- static OrientedPlane * New (SVTK_ViewWindow* vw) {
- return new OrientedPlane(vw);
- }
- vtkTypeMacro(OrientedPlane, vtkPlane);
-
-
- VISU::Orientation myOrientation;
- float myDistance;
- double myAngle[2];
-
- vtkPlaneSource* myPlaneSource;
- SALOME_Actor *myActor;
-
- void SetOrientation(VISU::Orientation theOrientation) {myOrientation = theOrientation;}
- VISU::Orientation GetOrientation() {return myOrientation;}
-
- void SetDistance(float theDistance) {myDistance = theDistance;}
- float GetDistance() {return myDistance;}
-
- void ShallowCopy(OrientedPlane* theOrientedPlane){
- SetNormal(theOrientedPlane->GetNormal());
- SetOrigin(theOrientedPlane->GetOrigin());
-
- myOrientation = theOrientedPlane->GetOrientation();
- myDistance = theOrientedPlane->GetDistance();
-
- myAngle[0] = theOrientedPlane->myAngle[0];
- myAngle[1] = theOrientedPlane->myAngle[1];
-
- myPlaneSource->SetNormal(theOrientedPlane->myPlaneSource->GetNormal());
- myPlaneSource->SetOrigin(theOrientedPlane->myPlaneSource->GetOrigin());
- myPlaneSource->SetPoint1(theOrientedPlane->myPlaneSource->GetPoint1());
- myPlaneSource->SetPoint2(theOrientedPlane->myPlaneSource->GetPoint2());
- }
-
-protected:
- OrientedPlane(SVTK_ViewWindow* vw):
- myOrientation(VISU::XY),
- myDistance(0.5),
- myViewWindow(vw)
- {
- Init();
- myViewWindow->AddActor(myActor);
- }
-
- OrientedPlane():
- myOrientation(VISU::XY),
- myDistance(0.5),
- myViewWindow(NULL)
- {
- Init();
- }
-
- void Init(){
- myPlaneSource = vtkPlaneSource::New();
-
- myAngle[0] = myAngle[1] = 0.0;
-
- // Create and display actor
- myMapper = vtkDataSetMapper::New();
- myMapper->SetInput(myPlaneSource->GetOutput());
-
- myActor = SALOME_Actor::New();
- myActor->VisibilityOff();
- myActor->PickableOff();
- myActor->SetInfinitive(true);
- 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->SetProperty(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->SetBackfaceProperty(aBackProp);
- aBackProp->Delete();
- }
-
- ~OrientedPlane()
- {
- if (myViewWindow)
- myViewWindow->RemoveActor(myActor);
-
- myActor->Delete();
-
- myMapper->RemoveAllInputs();
- myMapper->Delete();
-
- myPlaneSource->UnRegisterAllOutputs();
- myPlaneSource->Delete();
- };
-
-private:
- // Not implemented.
- OrientedPlane(const OrientedPlane&);
- void operator=(const OrientedPlane&);
-};
-
-struct TSetVisiblity {
- TSetVisiblity(int theIsVisible): myIsVisible(theIsVisible){}
- void operator()(VISU::TVTKPlane& theOrientedPlane){
- theOrientedPlane->myActor->SetVisibility(myIsVisible);
- }
- int myIsVisible;
-};
-
-//=================================================================================
-// class : VisuGUI_ClippingDlg()
-// purpose :
-//
-//=================================================================================
-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),
- mySelectionMgr(VISU::GetSelectionMgr(theModule)),
- myVisuGUI(theModule)
-{
- if (!name)
- setName("VisuGUI_ClippingDlg");
- setCaption(tr("TITLE"));
- setSizeGripEnabled(TRUE);
- QGridLayout* VisuGUI_ClippingDlgLayout = new QGridLayout(this);
- VisuGUI_ClippingDlgLayout->setSpacing(6);
- VisuGUI_ClippingDlgLayout->setMargin(11);
-
- // 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());
- GroupPlanesLayout->setAlignment(Qt::AlignTop);
- GroupPlanesLayout->setSpacing(6);
- GroupPlanesLayout->setMargin(11);
-
- ComboBoxPlanes = new QComboBox (GroupPlanes, "ComboBoxPlanes");
- 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->setText(tr("BUT_NEW"));
- GroupPlanesLayout->addWidget(buttonNew, 0, 2);
-
- buttonDelete = new QPushButton(GroupPlanes, "buttonDelete");
- 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());
- GroupParametersLayout->setAlignment(Qt::AlignTop);
- GroupParametersLayout->setSpacing(6);
- GroupParametersLayout->setMargin(11);
-
- 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
-
- PreviewCheckBox = new QCheckBox (tr("SHOW_PREVIEW_CHK"), this);
- PreviewCheckBox->setChecked(true);
-
- AutoApplyCheckBox = new QCheckBox (tr("AUTO_APPLY_CHK"), this);
- AutoApplyCheckBox->setChecked(false);
-
- // 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()));
- 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());
- GroupButtonsLayout->setAlignment(Qt::AlignTop);
- GroupButtonsLayout->setSpacing(6);
- GroupButtonsLayout->setMargin(11);
- buttonCancel = new QPushButton (GroupButtons, "buttonCancel");
- buttonCancel->setText(tr("BUT_CLOSE"));
- buttonCancel->setAutoDefault(TRUE);
- GroupButtonsLayout->addWidget(buttonCancel, 0, 3);
- buttonApply = new QPushButton (GroupButtons, "buttonApply");
- 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->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"));
-
- SpinBoxDistance->setValue(0.5);
-
- myPrs3d = 0;
- myIsSelectPlane = false;
- onSelectionChanged();
-
- // signals and slots connections :
- connect(ComboBoxPlanes , SIGNAL(activated(int)) , this, SLOT(onSelectPlane(int)));
- connect(buttonNew , SIGNAL(clicked()) , this, SLOT(ClickOnNew()));
- connect(buttonDelete , SIGNAL(clicked()) , this, SLOT(ClickOnDelete()));
- connect(ComboBoxOrientation , SIGNAL(activated(int)) , this, SLOT(onSelectOrientation(int)));
- 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(SpinBoxIJKIndex , SIGNAL(valueChanged(int)) , this, SLOT(SetCurrentPlaneIJKParam()));
- connect(CheckBoxIJKPlaneReverse, SIGNAL(toggled(bool)) , this, SLOT(SetCurrentPlaneIJKParam()));
- connect(TabPane , SIGNAL(currentChanged (QWidget*)), this, SLOT(onTabChanged(QWidget*)));
-
- connect(PreviewCheckBox , SIGNAL(toggled(bool)), this, SLOT(OnPreviewToggle(bool)));
- connect(AutoApplyCheckBox, SIGNAL(toggled(bool)), this, SLOT(ClickOnApply()));
-
- connect(buttonOk , SIGNAL(clicked()), this, SLOT(ClickOnOk()));
- connect(buttonApply , SIGNAL(clicked()), this, SLOT(ClickOnApply()));
- connect(buttonCancel, SIGNAL(clicked()), this, SLOT(ClickOnCancel()));
-
- connect(mySelectionMgr, SIGNAL(currentSelectionChanged()), this, SLOT(onSelectionChanged()));
-
- this->show();
-}
-
-//=================================================================================
-// function : ~VisuGUI_ClippingDlg()
-// purpose :
-//=================================================================================
-VisuGUI_ClippingDlg::~VisuGUI_ClippingDlg()
-{
- // no need to delete child widgets, Qt does it all for us
- std::for_each(myPlanes.begin(),myPlanes.end(),TSetVisiblity(false));
- VISU::RenderViewWindow(VISU::GetViewWindow(myVisuGUI));
-}
-
-//=================================================================================
-// function : createParamsTab
-// purpose :
-//=================================================================================
-QWidget* VisuGUI_ClippingDlg::createParamsTab()
-{
- QFrame* GroupParameters = new QFrame(this);
- QGridLayout* GroupParametersLayout = new QGridLayout(GroupParameters);
- GroupParametersLayout->setAlignment(Qt::AlignTop);
- GroupParametersLayout->setSpacing(6);
- GroupParametersLayout->setMargin(11);
-
- TextLabelOrientation = new QLabel(GroupParameters, "TextLabelOrientation");
- TextLabelOrientation->setText(tr("LBL_ORIENTATION"));
- GroupParametersLayout->addWidget(TextLabelOrientation, 0, 0);
-
- ComboBoxOrientation = new QComboBox(GroupParameters, "ComboBoxOrientation");
- GroupParametersLayout->addWidget(ComboBoxOrientation, 0, 1);
-
- TextLabelDistance = new QLabel(GroupParameters, "TextLabelDistance");
- TextLabelDistance->setText(tr("LBL_DISTANCE"));
- GroupParametersLayout->addWidget(TextLabelDistance, 1, 0);
-
- SpinBoxDistance = new QtxDblSpinBox(GroupParameters, "SpinBoxDistance");
- GroupParametersLayout->addWidget(SpinBoxDistance, 1, 1);
-
- TextLabelRot1 = new QLabel(GroupParameters, "TextLabelRot1");
- TextLabelRot1->setText(tr("LBL_ROTATION_YZ"));
- GroupParametersLayout->addWidget(TextLabelRot1, 2, 0);
-
- SpinBoxRot1 = new QtxDblSpinBox(GroupParameters, "SpinBoxRot1");
- GroupParametersLayout->addWidget(SpinBoxRot1, 2, 1);
-
- TextLabelRot2 = new QLabel(GroupParameters, "TextLabelRot2");
- TextLabelRot2->setText(tr("LBL_ROTATION_XZ"));
- GroupParametersLayout->addWidget(TextLabelRot2, 3, 0);
-
- SpinBoxRot2 = new QtxDblSpinBox(GroupParameters, "SpinBoxRot2");
- GroupParametersLayout->addWidget(SpinBoxRot2, 3, 1);
-
- return GroupParameters;
-}
-
-//=================================================================================
-// function : createIJKParamsTab
-// purpose :
-//=================================================================================
-QWidget* VisuGUI_ClippingDlg::createIJKParamsTab()
-{
- // tab layout
- WidgetIJKTab = new QFrame(this);
- QGridLayout* IJKParametersLayout = new QGridLayout(WidgetIJKTab);
- IJKParametersLayout->setAlignment(Qt::AlignTop);
- IJKParametersLayout->setSpacing(6);
- 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);
-
- // Index
- TextLabelIJKIndex = new QLabel(WidgetIJKTab, "TextLabelIJKIndex");
- TextLabelIJKIndex->setText(tr("LBL_IJK_INDEX"));
- SpinBoxIJKIndex = new QSpinBox(WidgetIJKTab, "SpinBoxIJKIndex");
-
- // Orientation
- CheckBoxIJKPlaneReverse = new QCheckBox (tr("REVERSE_NORMAL_CHK"), WidgetIJKTab);
- CheckBoxIJKPlaneReverse->setChecked(false);
-
- IJKParametersLayout->addMultiCellWidget(ButtonGroupIJKAxis, 0, 0, 0, 1);
- IJKParametersLayout->addWidget(TextLabelIJKIndex, 1, 0);
- IJKParametersLayout->addWidget(SpinBoxIJKIndex, 1, 1);
- IJKParametersLayout->addWidget(CheckBoxIJKPlaneReverse, 2, 0);
-
- return WidgetIJKTab;
-}
-
-//=================================================================================
-// function : ClickOnApply()
-// purpose :
-//=================================================================================
-void VisuGUI_ClippingDlg::ClickOnApply()
-{
- if (!myPrs3d)
- return;
-
- if (SVTK_ViewWindow* aViewWindow = VISU::GetViewWindow(myVisuGUI)) {
- SUIT_OverrideCursor wc;
-
- // Save clipping planes, currently applied to the presentation
- // to enable restoring this state in case of failure.
- // Refer to bugs IPAL8849, IPAL8850 for more information.
- typedef vtkSmartPointer<vtkPlane> TPln;
- typedef std::vector<TPln> TPlns;
- bool isFailed = false;
- TPlns anOldPlanes;
- int iopl = 0, nbOldPlanes = myPrs3d->GetNumberOfClippingPlanes();
- for (; iopl < nbOldPlanes; iopl++) {
- anOldPlanes.push_back(myPrs3d->GetClippingPlane(iopl));
- }
-
- // Try to apply new clipping
- myPrs3d->RemoveAllClippingPlanes();
-
- VISU::TPlanes::iterator anIter = myPlanes.begin();
- for (; anIter != myPlanes.end(); anIter++) {
- OrientedPlane* anOrientedPlane = OrientedPlane::New(aViewWindow);
- anOrientedPlane->ShallowCopy(anIter->GetPointer());
- if (!myPrs3d->AddClippingPlane(anOrientedPlane)) {
- isFailed = true;
- }
- anOrientedPlane->Delete();
- }
-
- // Check contents of the resulting (clipped) presentation data
- if (!isFailed) {
- VISU_PipeLine* aPL = myPrs3d->GetPL();
- VISU_PipeLine::TMapper* aM = aPL->GetMapper();
- vtkDataSet* aPrsData = aM->GetInput();
- aPrsData->Update();
- if (aPrsData->GetNumberOfCells() < 1) {
- isFailed = true;
- }
- }
-
- if (isFailed) {
- // Restore previous clipping state because of failure.
- myPrs3d->RemoveAllClippingPlanes();
-
- 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") );
- }
-
- //VISU::RenderViewWindow(aViewWindow);
- VISU::RepaintViewWindows(myVisuGUI, myIO);
- }
-}
-
-//=================================================================================
-// function : ClickOnOk()
-// purpose :
-//=================================================================================
-void VisuGUI_ClippingDlg::ClickOnOk()
-{
- ClickOnApply();
- ClickOnCancel();
-}
-
-//=================================================================================
-// function : ClickOnCancel()
-// purpose :
-//=================================================================================
-void VisuGUI_ClippingDlg::ClickOnCancel()
-{
- close();
-}
-
-//=================================================================================
-// function : onSelectionChanged()
-// purpose : Called when selection is changed
-//=================================================================================
-void VisuGUI_ClippingDlg::onSelectionChanged()
-{
- if (SVTK_ViewWindow* aViewWindow = VISU::GetViewWindow(myVisuGUI)) {
- Handle(SALOME_InteractiveObject) anIO;
- CORBA::Object_var anObject = VISU::GetSelectedObj(myVisuGUI, &anIO);
- myIO = anIO;
- if (CORBA::is_nil(anObject)) return;
- PortableServer::ServantBase_var aServant = VISU::GetServant(anObject);
- if (!aServant.in()) return;
-
- myPrs3d = dynamic_cast<VISU::Prs3d_i*>(aServant.in());
- if (myPrs3d) {
- std::for_each(myPlanes.begin(),myPlanes.end(),TSetVisiblity(false));
- myPlanes.clear();
-
- float anOffset [3];
- myPrs3d->GetOffset(anOffset);
-
- vtkIdType anId = 0, anEnd = myPrs3d->GetNumberOfClippingPlanes();
- for (; anId < anEnd; anId++) {
- if (vtkImplicitFunction* aFunction = myPrs3d->GetClippingPlane(anId)) {
- if (OrientedPlane* aPlane = OrientedPlane::SafeDownCast(aFunction)) {
- OrientedPlane* anOrientedPlane = OrientedPlane::New(aViewWindow);
- VISU::TVTKPlane aTVTKPlane(anOrientedPlane);
- anOrientedPlane->Delete();
- aTVTKPlane->ShallowCopy(aPlane);
- aTVTKPlane->myActor->SetPosition(anOffset);
- myPlanes.push_back(aTVTKPlane);
- }
- }
- }
-
- std::for_each(myPlanes.begin(),myPlanes.end(),
- TSetVisiblity(PreviewCheckBox->isChecked()));
- }
-
- // enable/disable IJK tab
- TabPane->setTabEnabled(WidgetIJKTab, isStructured());
- Sinchronize();
- VISU::RenderViewWindow(aViewWindow);
- }
-}
-
-//=================================================================================
-// function : onSelectPlane()
-// purpose :
-//=================================================================================
-void VisuGUI_ClippingDlg::onSelectPlane(int theIndex)
-{
- if (!myPrs3d || myPlanes.empty())
- return;
-
- OrientedPlane* aPlane = myPlanes[theIndex].GetPointer();
-
- // Orientation
- VISU::Orientation anOrientation = aPlane->GetOrientation();
-
- // Rotations
- double aRot[2] = {aPlane->myAngle[0], aPlane->myAngle[1]};
-
- // Set plane parameters in the dialog
- myIsSelectPlane = true;
- setDistance(aPlane->GetDistance());
- setRotation(aRot[0], aRot[1]);
- int item = 0;
- switch (anOrientation) {
- case VISU::XY: item = 0; break;
- case VISU::YZ: item = 1; break;
- case VISU::ZX: item = 2; break;
- }
- ComboBoxOrientation->setCurrentItem(item);
-
- bool isIJK = (TabPane->currentPage() == WidgetIJKTab);
- if (isIJK)
- setIJKByNonStructured();
- else
- onSelectOrientation(item);
-
- myIsSelectPlane = false;
-}
-
-//=================================================================================
-// function : ClickOnNew()
-// purpose :
-//=================================================================================
-void VisuGUI_ClippingDlg::ClickOnNew()
-{
- if (!myPrs3d)
- return;
-
- if (SVTK_ViewWindow* aViewWindow = VISU::GetViewWindow(myVisuGUI)) {
- OrientedPlane* aPlane = OrientedPlane::New(aViewWindow);
- VISU::TVTKPlane aTVTKPlane(aPlane);
- myPlanes.push_back(aTVTKPlane);
-
- float anOffset [3];
- myPrs3d->GetOffset(anOffset);
- aTVTKPlane->myActor->SetPosition(anOffset);
-
- if (PreviewCheckBox->isChecked())
- aTVTKPlane->myActor->VisibilityOn();
-
- Sinchronize();
- SetCurrentPlaneParam();
- }
-}
-
-//=================================================================================
-// function : ClickOnDelete()
-// purpose :
-//=================================================================================
-void VisuGUI_ClippingDlg::ClickOnDelete()
-{
- if (!myPrs3d || myPlanes.empty())
- return;
-
- int aPlaneIndex = ComboBoxPlanes->currentItem();
-
- VISU::TPlanes::iterator anIter = myPlanes.begin() + aPlaneIndex;
- anIter->GetPointer()->myActor->SetVisibility(false);
- myPlanes.erase(anIter);
-
- if(AutoApplyCheckBox->isChecked())
- ClickOnApply();
-
- Sinchronize();
- if (SVTK_ViewWindow* aViewWindow = VISU::GetViewWindow(myVisuGUI))
- VISU::RenderViewWindow(aViewWindow);
-}
-
-//=================================================================================
-// function : onSelectOrientation()
-// purpose :
-//=================================================================================
-void VisuGUI_ClippingDlg::onSelectOrientation(int theItem)
-{
- if (myPlanes.empty())
- return;
-
- if (theItem == 0) {
- TextLabelRot1->setText(tr("LBL_ROTATION_YZ"));
- TextLabelRot2->setText(tr("LBL_ROTATION_XZ"));
- }
- else if (theItem == 1) {
- TextLabelRot1->setText(tr("LBL_ROTATION_ZX"));
- TextLabelRot2->setText(tr("LBL_ROTATION_YX"));
- }
- else if (theItem == 2) {
- TextLabelRot1->setText(tr("LBL_ROTATION_XY"));
- TextLabelRot2->setText(tr("LBL_ROTATION_ZY"));
- }
-
- if((QComboBox*)sender() == ComboBoxOrientation)
- SetCurrentPlaneParam();
-}
-
-//=================================================================================
-// function : Sinchronize()
-// purpose : update control values according to plane selection
-//=================================================================================
-void VisuGUI_ClippingDlg::Sinchronize()
-{
- int aNbPlanes = myPlanes.size();
- ComboBoxPlanes->clear();
-
- QString aName;
- for (int i = 1; i<=aNbPlanes; i++) {
- aName = QString(tr("PLANES_COMBO_ITEM_i")).arg(i);
- ComboBoxPlanes->insertItem(aName);
- }
-
- int aPos = ComboBoxPlanes->count() - 1;
- ComboBoxPlanes->setCurrentItem(aPos);
-
- bool anIsControlsEnable = (aPos >= 0);
- if (anIsControlsEnable) {
- onSelectPlane(aPos);
- } else {
- ComboBoxPlanes->insertItem(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);
-
- ComboBoxOrientation ->setEnabled(anIsControlsEnable);
- SpinBoxDistance ->setEnabled(anIsControlsEnable);
- SpinBoxRot1 ->setEnabled(anIsControlsEnable);
- SpinBoxRot2 ->setEnabled(anIsControlsEnable);
-
- ButtonGroupIJKAxis ->setEnabled(anIsControlsEnable);
- SpinBoxIJKIndex ->setEnabled(anIsControlsEnable);
- CheckBoxIJKPlaneReverse->setEnabled(anIsControlsEnable);
-}
-
-//=================================================================================
-// function : setRotation()
-// purpose :
-//=================================================================================
-void VisuGUI_ClippingDlg::setRotation(const double theRot1, const double theRot2)
-{
- SpinBoxRot1->setValue(theRot1);
- SpinBoxRot2->setValue(theRot2);
-}
-
-//=================================================================================
-// function : SetCurrentPlaneParam()
-// purpose :
-//=================================================================================
-void VisuGUI_ClippingDlg::SetCurrentPlaneParam()
-{
- if (myPlanes.empty() || myIsSelectPlane)
- return;
-
- int aCurPlaneIndex = ComboBoxPlanes->currentItem();
-
- OrientedPlane* aPlane = myPlanes[aCurPlaneIndex].GetPointer();
-
- float aNormal[3];
- VISU::Orientation anOrientation;
- float aDir[3][3] = {{0, 0, 0}, {0, 0, 0}};
- {
- static double aCoeff = vtkMath::Pi()/180.0;
-
- float aRot[2] = {getRotation1(), getRotation2()};
- aPlane->myAngle[0] = aRot[0];
- aPlane->myAngle[1] = aRot[1];
-
- float anU[2] = {cos(aCoeff*aRot[0]), cos(aCoeff*aRot[1])};
- float aV[2] = {sqrt(1.0-anU[0]*anU[0]), sqrt(1.0-anU[1]*anU[1])};
- aV[0] = aRot[0] > 0? aV[0]: -aV[0];
- aV[1] = aRot[1] > 0? aV[1]: -aV[1];
-
- switch (ComboBoxOrientation->currentItem()) {
- case 0:
- anOrientation = VISU::XY;
-
- aDir[0][1] = anU[0];
- aDir[0][2] = aV[0];
-
- aDir[1][0] = anU[1];
- aDir[1][2] = aV[1];
-
- break;
- case 1:
- anOrientation = VISU::YZ;
-
- aDir[0][2] = anU[0];
- aDir[0][0] = aV[0];
-
- aDir[1][1] = anU[1];
- aDir[1][0] = aV[1];
-
- break;
- case 2:
- anOrientation = VISU::ZX;
-
- aDir[0][0] = anU[0];
- aDir[0][1] = aV[0];
-
- aDir[1][2] = anU[1];
- aDir[1][1] = aV[1];
-
- break;
- }
-
- vtkMath::Cross(aDir[1],aDir[0],aNormal);
- vtkMath::Normalize(aNormal);
- vtkMath::Cross(aNormal,aDir[1],aDir[0]);
- }
-
- aPlane->SetOrientation(anOrientation);
- aPlane->SetDistance(getDistance());
-
- myPrs3d->SetPlaneParam(aNormal, 1. - getDistance(), aPlane);
-
- vtkDataSet* aDataSet = myPrs3d->GetInput();
- float *aPnt = aDataSet->GetCenter();
-
- float* anOrigin = aPlane->GetOrigin();
- float aDel = aDataSet->GetLength()/2.0;
-
- float aDelta[2][3] = {{aDir[0][0]*aDel, aDir[0][1]*aDel, aDir[0][2]*aDel},
- {aDir[1][0]*aDel, aDir[1][1]*aDel, aDir[1][2]*aDel}};
- float aParam, aPnt0[3], aPnt1[3], aPnt2[3];
-
- float aPnt01[3] = {aPnt[0] - aDelta[0][0] - aDelta[1][0],
- aPnt[1] - aDelta[0][1] - aDelta[1][1],
- aPnt[2] - aDelta[0][2] - aDelta[1][2]};
- float aPnt02[3] = {aPnt01[0] + aNormal[0],
- aPnt01[1] + aNormal[1],
- aPnt01[2] + aNormal[2]};
- vtkPlane::IntersectWithLine(aPnt01,aPnt02,aNormal,anOrigin,aParam,aPnt0);
-
- float aPnt11[3] = {aPnt[0] - aDelta[0][0] + aDelta[1][0],
- aPnt[1] - aDelta[0][1] + aDelta[1][1],
- aPnt[2] - aDelta[0][2] + aDelta[1][2]};
- float aPnt12[3] = {aPnt11[0] + aNormal[0],
- aPnt11[1] + aNormal[1],
- aPnt11[2] + aNormal[2]};
- vtkPlane::IntersectWithLine(aPnt11,aPnt12,aNormal,anOrigin,aParam,aPnt1);
-
- float aPnt21[3] = {aPnt[0] + aDelta[0][0] - aDelta[1][0],
- aPnt[1] + aDelta[0][1] - aDelta[1][1],
- aPnt[2] + aDelta[0][2] - aDelta[1][2]};
- float aPnt22[3] = {aPnt21[0] + aNormal[0],
- aPnt21[1] + aNormal[1],
- aPnt21[2] + aNormal[2]};
- vtkPlane::IntersectWithLine(aPnt21,aPnt22,aNormal,anOrigin,aParam,aPnt2);
-
- vtkPlaneSource* aPlaneSource = aPlane->myPlaneSource;
- aPlaneSource->SetNormal(aNormal[0],aNormal[1],aNormal[2]);
- aPlaneSource->SetOrigin(aPnt0[0],aPnt0[1],aPnt0[2]);
- aPlaneSource->SetPoint1(aPnt1[0],aPnt1[1],aPnt1[2]);
- aPlaneSource->SetPoint2(aPnt2[0],aPnt2[1],aPnt2[2]);
-
- if (AutoApplyCheckBox->isChecked())
- ClickOnApply();
-
- if (SVTK_ViewWindow* vw = VISU::GetViewWindow(myVisuGUI))
- VISU::RenderViewWindow(vw);
-}
-
-//=================================================================================
-// function : onTabChanged
-// purpose :
-//=================================================================================
-void VisuGUI_ClippingDlg::onTabChanged(QWidget* newTab)
-{
- if (newTab == WidgetIJKTab) // IJK
- setIJKByNonStructured();
- else {
- // set correct labels of rotation spin boxes
- onSelectOrientation(ComboBoxOrientation->currentItem());
- }
-}
-
-//=================================================================================
-// function : SetCurrentPlaneIJKParam
-// purpose : set non structured parameters by IJK parameters
-//=================================================================================
-void VisuGUI_ClippingDlg::SetCurrentPlaneIJKParam()
-{
- if (myPlanes.empty() || myIsSelectPlane || !WidgetIJKTab->isEnabled())
- return;
-
- VISU::Result_i* result = myPrs3d ? myPrs3d->GetResult() : 0;
- if (!result)
- return;
-
- // get axis data
- int i, axId = ButtonGroupIJKAxis->id (ButtonGroupIJKAxis->selected());
- VISU::Result_i::TAxis axis = (VISU::Result_i::TAxis) axId;
- gp_Dir dir;
- const vector<float> * values =
- result->GetAxisInfo(myPrs3d->GetMeshName(), axis, dir);
- if (!values)
- return;
-
- // find distance;
- int index = SpinBoxIJKIndex->value();
- float distance = 0;
- if (index < values->size())
- distance = (*values)[ index ];
-
- // find id of axis closest to dir
- // 0 || X-Y - axis Z
- // 1 || Y-Z - azis X
- // 2 || Z-X - axiz Y
- double cos[3] = { gp::DZ() * dir, gp::DX() * dir, gp::DY() * dir };
- double maxCos = 0;
- for (i = 0; i < 3; ++i) {
- if (Abs(cos[ i ]) > Abs (maxCos)) {
- maxCos = cos[ i ];
- axId = i;
- }
- }
- // find rotation angles
- float angle[2];
- int rotId[2] = {
- (axId == 0) ? 2 : axId - 1,
- (axId == 2) ? 0 : axId + 1
- };
- static double aCoeff = 180.0/vtkMath::Pi();
- for (i = 0; i < 2; ++i) {
- float cosin = cos[ rotId[ i ]];
- if (maxCos < 0)
- cosin = -cosin;
- angle[ i ] = asin(cosin) * aCoeff;
- if (maxCos < 0)
- angle[ i ] += 180. * (angle[ i ] < 0 ? 1. : -1.);
- }
- if (CheckBoxIJKPlaneReverse->isChecked()) {
- angle[ 0 ] += 180. * (angle[ 0 ] < 0 ? 1. : -1.);
- distance = 1. - distance;
- }
- if (maxCos < 0)
- distance = 1. - distance;
-
- // set paramerets
- myIsSelectPlane = true;
- ComboBoxOrientation->setCurrentItem(axId);
- setRotation(-angle[0], -angle[1]);
- setDistance(distance);
- myIsSelectPlane = false;
-
- SetCurrentPlaneParam();
-}
-
-//=================================================================================
-// function : setIJKByNonStructured
-// purpose : convert current non structured parameters to structured ones
-//=================================================================================
-void VisuGUI_ClippingDlg::setIJKByNonStructured()
-{
- if (!myPrs3d || myPlanes.empty() || !myPrs3d->GetResult())
- return;
-
- // get plane normal
- int planeIndex = ComboBoxPlanes->currentItem();
- OrientedPlane* plane = myPlanes[ planeIndex ].GetPointer();
- vtkPlaneSource* planeSource = plane->myPlaneSource;
- float * planeNormal = planeSource->GetNormal();
- gp_Dir normal(planeNormal[0], planeNormal[1], planeNormal[2]);
-
- // find a grid axis most co-directed with plane normal
- // and cartesian axis most co-directed with plane normal
- int i, maxAx = 0, gridAxId = 0;
- gp_Dir dir, gridDir;
- double maxDot = 0;
- const vector<float> *curValues, *values = 0;
- VISU::Result_i* result = myPrs3d->GetResult();
- for (i = 0; i < 3; ++i) {
- VISU::Result_i::TAxis axis = (VISU::Result_i::TAxis) i;
- curValues = result->GetAxisInfo(myPrs3d->GetMeshName(), axis, dir);
- if (curValues) {
- double dot = normal * dir;
- if (Abs(dot) > Abs(maxDot)) {
- maxDot = dot;
- gridDir = dir;
- values = curValues;
- gridAxId = i;
- }
- }
- if (Abs (planeNormal[ maxAx ]) < Abs (planeNormal[ i ]))
- maxAx = i;
- }
- gp_XYZ axDir(0,0,0);
- axDir.SetCoord(maxAx + 1, 1.);
-
- // find index value
- double v = SpinBoxDistance->value();
- // reverse value?
- bool reverse = (normal * axDir < 0); // normal and axis are opposite
- if (gridDir * axDir < 0) // grid dir and axis are opposite
- reverse = !reverse;
- if (reverse)
- v = 1. - v;
- for (i = 0; i < values->size(); ++i)
- if ((*values)[ i ] > v)
- break;
- if (i == values->size())
- --i;
- if (i != 0 && (*values)[ i ] - v > v - (*values)[ i - 1])
- --i;
-
- // set control values
- myIsSelectPlane = true;
- CheckBoxIJKPlaneReverse->setChecked(normal * axDir < 0);
- SpinBoxIJKIndex->setValue(i);
- ButtonGroupIJKAxis->setButton(gridAxId);
- onIJKAxisChanged(gridAxId); // update label and range of index
- myIsSelectPlane = false;
-
- SetCurrentPlaneIJKParam();
-}
-
-//=================================================================================
-// function : isStructured
-// purpose : return true if mesh is structured
-//=================================================================================
-bool VisuGUI_ClippingDlg::isStructured() const
-{
- VISU::Result_i* result = myPrs3d ? myPrs3d->GetResult() : 0;
- if (result) {
- gp_Dir dir;
- return result->GetAxisInfo(myPrs3d->GetMeshName(),
- VISU::Result_i::AXIS_X,
- dir);
- }
- return false;
-}
-
-//=================================================================================
-// function : onIJKAxisChanged
-// purpose : update Index range and call SetCurrentPlaneParam()
-//=================================================================================
-void VisuGUI_ClippingDlg::onIJKAxisChanged(int axisId)
-{
- // set index range
- int maxIndex = 0;
- VISU::Result_i* result = myPrs3d ? myPrs3d->GetResult() : 0;
- if (result) {
- VISU::Result_i::TAxis axis = (VISU::Result_i::TAxis) axisId;
- gp_Dir dir;
- const vector<float> * indices = result->GetAxisInfo(myPrs3d->GetMeshName(),
- axis, dir);
- if (indices)
- maxIndex = indices->size() - 1;
- }
- QString text = tr("LBL_IJK_INDEX_TO_arg").arg(maxIndex);
- TextLabelIJKIndex->setText(text);
- SpinBoxIJKIndex->setRange(0, maxIndex);
-
- if (SpinBoxIJKIndex->value() > maxIndex)
- SpinBoxIJKIndex->setValue(0);
-
- SetCurrentPlaneIJKParam();
-}
-
-//=================================================================================
-// function : OnPreviewToggle()
-// purpose :
-//=================================================================================
-void VisuGUI_ClippingDlg::OnPreviewToggle (bool theIsToggled)
-{
- std::for_each(myPlanes.begin(),myPlanes.end(),TSetVisiblity(theIsToggled));
- if (SVTK_ViewWindow* vw = VISU::GetViewWindow(myVisuGUI))
- VISU::RenderViewWindow(vw);
-}
+++ /dev/null
-
-#ifndef DIALOGBOX_CLIPPING_H
-#define DIALOGBOX_CLIPPING_H
-
-#include "SALOME_InteractiveObject.hxx"
-
-#include "QtxDblSpinBox.h"
-
-// QT Includes
-#include <qdialog.h>
-#include <qtable.h>
-
-// VTK Includes
-#include <vtkSmartPointer.h>
-#include <vtkPlane.h>
-
-// STL Includes
-#include <vector>
-
-class QLabel;
-class QPushButton;
-class QTable;
-class QCheckBox;
-class QComboBox;
-class QHButtonGroup;
-class QSpinBox;
-class QTabWidget;
-
-class QtxDblSpinBox;
-
-class SalomeApp_SelectionMgr;
-
-class VisuGUI;
-
-class OrientedPlane;
-
-namespace VISU {
- class Prs3d_i;
-
- typedef vtkSmartPointer<OrientedPlane> TVTKPlane;
- typedef std::vector<TVTKPlane> TPlanes;
- enum Orientation {XY, YZ, ZX};
-};
-
-
-//=================================================================================
-// class : VisuGUI_ClippingDlg
-// purpose :
-//=================================================================================
-class VisuGUI_ClippingDlg : public QDialog
-{
- Q_OBJECT
-
-public:
- VisuGUI_ClippingDlg( VisuGUI* theModule,
- const char* name = 0,
- bool modal = false,
- WFlags fl = 0 );
-
- float getDistance() { return (float)SpinBoxDistance->value(); }
- void setDistance(const float theDistance) { SpinBoxDistance->setValue(theDistance); }
- double getRotation1() { return SpinBoxRot1->value(); }
- double getRotation2() { return SpinBoxRot2->value(); }
- void setRotation(const double theRot1, const double theRot2);
- void Sinchronize();
-
- ~VisuGUI_ClippingDlg();
-
-private:
-
- SalomeApp_SelectionMgr* mySelectionMgr;
- Handle(SALOME_InteractiveObject) myIO;
-
- VisuGUI * myVisuGUI;
- VISU::Prs3d_i * myPrs3d;
- VISU::TPlanes myPlanes;
-
- QComboBox* ComboBoxPlanes;
- QPushButton* buttonNew;
- QPushButton* buttonDelete;
-
- QLabel* TextLabelOrientation;
- QLabel* TextLabelDistance;
- QLabel* TextLabelRot1;
- QLabel* TextLabelRot2;
-
- QTabWidget* TabPane;
-
- QComboBox* ComboBoxOrientation;
- QtxDblSpinBox* SpinBoxDistance;
- QtxDblSpinBox* SpinBoxRot1;
- QtxDblSpinBox* SpinBoxRot2;
-
- QWidget* WidgetIJKTab;
- QHButtonGroup* ButtonGroupIJKAxis;
- QLabel* TextLabelIJKIndex;
- QSpinBox* SpinBoxIJKIndex;
- QCheckBox* CheckBoxIJKPlaneReverse;
-
- QCheckBox* PreviewCheckBox;
- QCheckBox* AutoApplyCheckBox;
-
- QPushButton* buttonOk;
- QPushButton* buttonCancel;
- QPushButton* buttonApply;
-
- bool myIsSelectPlane;
-
-protected:
- QWidget* createParamsTab();
- QWidget* createIJKParamsTab();
- void setIJKByNonStructured();
- bool isStructured() const;
-
-public slots:
-
- void onSelectPlane(int theIndex);
- void ClickOnNew();
- void ClickOnDelete();
- void onSelectOrientation(int theItem);
- void SetCurrentPlaneParam();
- void SetCurrentPlaneIJKParam();
- void onIJKAxisChanged(int axis);
- void onTabChanged(QWidget* newTab);
- void onSelectionChanged();
- void OnPreviewToggle(bool theIsToggled);
- void ClickOnOk();
- void ClickOnCancel();
- void ClickOnApply();
-};
-
-#endif // DIALOGBOX_TRANSPARENCYDLG_H
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// File : VisuGUI_CursorDlg.cxx
-// Author : Laurent CORNABE & Hubert ROLLAND
-// Module : VISU
-// $Header$
-
-using namespace std;
-#include "VisuGUI_CursorDlg.h"
-#include <qlayout.h>
-
-/*!
- 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 )
-{
- if ( !name )
- setName( "VisuGUI_CursorDlg" );
- setCaption( name );
- 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() );
- TopGroupBoxLayout->setAlignment( Qt::AlignTop );
- TopGroupBoxLayout->setSpacing( 6 );
- TopGroupBoxLayout->setMargin( 11 );
-
- Comment1 = new QLabel( tr( "TextLabel1" ), TopGroupBox, "Comment1" );
- Comment1->setAlignment( QLabel::AlignCenter );
- TopGroupBoxLayout->addWidget( Comment1, 0, 0 );
-
- Comment2 = new QLabel( tr( "TextLabel2" ), TopGroupBox, "Comment2" );
- Comment2->setAlignment( QLabel::AlignCenter );
- TopGroupBoxLayout->addWidget( Comment2, 1, 0 );
-
- SpinBox1 = new QSpinBox( 1, 100, 1, TopGroupBox, "SpinBox1" );
- SpinBox1->setValue( 100 );
- SpinBox1->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
- SpinBox1->setMinimumSize( 70, 0 );
- QHBoxLayout* SLayout = new QHBoxLayout;
- SLayout->addItem( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ) );
- SLayout->addWidget( SpinBox1 );
- SLayout->addItem( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ) );
- TopGroupBoxLayout->addLayout( SLayout, 2, 0 );
-
- 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);
-
- 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);
-
- buttonCancel = new QPushButton(tr("&Cancel") , GroupButtons, "buttonCancel");
- buttonCancel->setAutoDefault(TRUE);
- GroupButtonsLayout->addWidget(buttonCancel, 0, 2);
-
- TopLayout->addWidget(TopGroupBox, 0, 0);
- TopLayout->addWidget(GroupButtons, 1, 0);
-
- // signals and slots connections
- connect( buttonOk, SIGNAL( clicked() ), this, SLOT( accept() ) );
- connect( buttonCancel, SIGNAL( clicked() ), this, SLOT( reject() ) );
-}
-
-/*!
- Destructor
-*/
-VisuGUI_CursorDlg::~VisuGUI_CursorDlg()
-{
-}
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// 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>
-
-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();
-
- QGroupBox* TopGroupBox;
- QLabel* Comment1;
- QLabel* Comment2;
- QSpinBox* SpinBox1;
- QGroupBox* GroupButtons;
- QPushButton* buttonOk;
- QPushButton* buttonCancel;
-};
-
-#endif // VISUGUI_CURSORDLG_H
+++ /dev/null
-// VISU VISUGUI : GUI of VISU component
-//
-// Copyright (C) 2003 CEA/DEN, EDF R&D
-//
-//
-//
-// File : VisuGUI_CutLinesDlg.cxx
-// Author : VSV
-// Module : VISU
-
-#include "VisuGUI_CutLinesDlg.h"
-
-#include "VisuGUI.h"
-#include "VisuGUI_Tools.h"
-
-#include "VISU_Gen_i.hh"
-#include "VISU_CutLines_i.hh"
-
-#include "VISU_PipeLine.hxx"
-#include "VISU_CutLinesPL.hxx"
-
-#include "SVTK_ViewWindow.h"
-
-#include "SalomeApp_Application.h"
-#include "SalomeApp_Study.h"
-
-#include "SUIT_Desktop.h"
-
-#include "OB_Browser.h"
-
-#include <qlayout.h>
-#include <qhbox.h>
-#include <qtabwidget.h>
-#include <qhgroupbox.h>
-
-#include <vtkRenderer.h>
-#include <vtkPolyData.h>
-#include <vtkAppendPolyData.h>
-#include <vtkDataSetMapper.h>
-
-using namespace std;
-
-bool VisuGUI_CutLinesDlg::MYGenerateTable = true;
-bool VisuGUI_CutLinesDlg::MYGenerateCurve = true;
-
-VisuGUI_CutLinesDlg::VisuGUI_CutLinesDlg (SalomeApp_Module* theModule)
- : QDialog(VISU::GetDesktop(theModule), "VisuGUI_CutLinesDlg", false,
- WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu),
- myPreviewActor(0)
-{
- setCaption("Cut Lines Definition");
- setSizeGripEnabled(true);
-
- QVBoxLayout* aMainLayout = new QVBoxLayout (this, 7, 6);
- aMainLayout->setSpacing(5);
-
- hasInit = false;
-
- // Tab pane
- QTabWidget* aTabPane = 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 );
-
- 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
- aBzx->setChecked(true);
-
- aPlaneLayout->addWidget( mySelPlane );
-
- QGroupBox* aRotBox = new QGroupBox( tr( "LBL_ROTATION" ), aPlanePane );
- aRotBox->setColumnLayout(2, Qt::Horizontal );
-
- myRotXLbl = new QLabel( tr( "LBL_ROT_X" ), aRotBox);
- myRotXSpn = new QtxDblSpinBox( -45, 45, 5, aRotBox );
- myRotXSpn->setValue( 0 );
- myRotYLbl = new QLabel( tr( "LBL_ROT_Y" ), aRotBox );
- myRotYSpn = new QtxDblSpinBox( -45, 45, 5, aRotBox );
- myRotYSpn->setValue( 0 );
-
- aPlaneLayout->addWidget( aRotBox );
-
- QHGroupBox* aBaseBox = new QHGroupBox (tr("BASE_PLANE_POS"), aPlanePane);
- myBasePlanePos = new QLineEdit (aBaseBox);
- mydvalidator = new QDoubleValidator(this);
- mydvalidator->setDecimals(32);
- myBasePlanePos->setValidator(mydvalidator);
-
- myCBSetDef = new QCheckBox (tr("SET_DEFAULT"),aBaseBox);
-
- aPlaneLayout->addWidget(aBaseBox);
-
- QHBox* aPosBox = new QHBox (aPlanePane);
- aPosBox->setSpacing(5);
- QLabel* aPosLbl = new QLabel (tr("LBL_POS"), aPosBox);
- myPosSpn = new QtxDblSpinBox (0, 1, 0.1, aPosBox);
- myPosSpn->setValue(0.5);
- aPlaneLayout->addWidget(aPosBox);
-
- myPreviewCheck = new QCheckBox (tr("LBL_SHOW_PREVIEW"), aPlanePane);
- myPreviewCheck->setChecked(false);
- aPlaneLayout->addWidget(myPreviewCheck);
-
- myCreateTable = new QCheckBox (tr("LBL_GENERATE_TABLE"), aPlanePane);
- myCreateTable->setChecked(MYGenerateTable);
- aPlaneLayout->addWidget( myCreateTable );
-
- QHBox* aCheckPane = new QHBox(aPlanePane);
- QLabel* aLbl = new QLabel(" ", aCheckPane);
- aCheckPane->setStretchFactor(aLbl, 0);
- myCurvesCheck = new QCheckBox(tr("LBL_GENERATE_CURVES"), aCheckPane);
- aCheckPane->setStretchFactor(aCheckPane, 0);
- myCurvesCheck->setChecked(MYGenerateCurve);
- myCurvesCheck->setEnabled(MYGenerateTable);
- QLabel* aLbl2 = new QLabel(" ", aCheckPane);
- aCheckPane->setStretchFactor(aLbl2, 1);
- aPlaneLayout->addWidget( aCheckPane );
-
- aPlaneLayout->addStretch();
-
-
- aTabPane->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
- aBzx2->setEnabled(false);
- aByz2->setChecked(true);
- aLinesLayout->addWidget( mySelPlane2 );
-
- QGroupBox* aRotBox2 = new QGroupBox( tr( "LBL_ROTATION" ), aLinesPane );
- aRotBox2->setColumnLayout(2, Qt::Horizontal );
-
- myRotXLbl2 = new QLabel( tr( "LBL_ROT_X" ), aRotBox2);
- myRotXSpn2 = new QtxDblSpinBox( -45, 45, 5, aRotBox2 );
- myRotXSpn2->setValue( 0 );
- myRotYLbl2 = new QLabel( tr( "LBL_ROT_Y" ), aRotBox2 );
- myRotYSpn2 = new QtxDblSpinBox( -45, 45, 5, aRotBox2 );
- myRotYSpn2->setValue( 0 );
- aLinesLayout->addWidget( aRotBox2 );
-
- QHBox* aNbBox = new QHBox(aLinesPane);
- aNbBox->setSpacing(5);
- QLabel* aNbLbl = new QLabel( tr( "LBL_NB_PLANS" ), aNbBox );
- myNbSpn = new QtxDblSpinBox( 1, 100, 1, aNbBox );
- myNbSpn->setValue( 10 );
-
- aLinesLayout->addWidget( aNbBox );
-
- myPosTable = new QTable(aLinesPane, "Positions of cut planes" );
- myPosTable->setMaximumHeight( 227 );
- myPosTable->setMinimumWidth( 294 );
- myPosTable->setNumCols(2);
- myPosTable->setNumRows(0);
-
- QHeader *th = myPosTable->horizontalHeader();
- th->setLabel( 0, "Position" );
- th->setLabel( 1, "Set default" );
-
- aLinesLayout->addWidget( myPosTable );
-
- QHBox* aPosBox2 = new QHBox(aLinesPane);
- aPosBox2->setSpacing(5);
- QLabel* aPosLbl2 = new QLabel( tr( "LBL_POS" ), aPosBox2 );
- myPosSpn2 = new QtxDblSpinBox( 0, 1, 0.1, aPosBox2 );
- myPosSpn2->setValue( 0.5 );
- aLinesLayout->addWidget( aPosBox2 );
- aLinesLayout->addStretch();
-
- aTabPane->addTab( aLinesPane, tr("LBL_LINES_CUT") );
-
- myScalarPane = new VisuGUI_ScalarBarPane(this, false);
- myScalarPane->setMargin( 5 );
- aTabPane->addTab(myScalarPane, "Scalar Bar");
-
- aMainLayout->addWidget(aTabPane);
-
- // Dialog buttons
- QHBox* aBtnBox = new QHBox(this);
- aBtnBox->setFrameStyle(QFrame::Box | QFrame::Sunken);
- aBtnBox->setLineWidth( 1 );
- QHBoxLayout* aBtnLayout = (QHBoxLayout*) aBtnBox->layout();
- aBtnLayout->setAutoAdd( false );
- aBtnLayout->setSpacing( 5 );
- aBtnLayout->setMargin( 11 );
-
- QPushButton* aOkBtn = new QPushButton (tr("BUT_OK"), aBtnBox);
- aOkBtn->setAutoDefault( TRUE );
- aOkBtn->setDefault( true );
- aBtnLayout->addWidget(aOkBtn);
-
- aBtnLayout->addStretch();
-
- QPushButton* aCloseBtn = new QPushButton(tr("BUT_CANCEL"), aBtnBox);
- aBtnLayout->addWidget(aCloseBtn);
-
- aMainLayout->addWidget(aBtnBox);
-
- myCutLines = NULL;
-
- // signals and slots connections
- connect(mySelPlane , SIGNAL(clicked(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(myNbSpn , SIGNAL(valueChanged(double)) , this, SLOT(DrawTable()));
- connect(th , SIGNAL(clicked(int)) , this, SLOT(setDefault(int)));
- connect(myPosSpn2 , SIGNAL(valueChanged(double)) , this, SLOT(DrawTable()));
- connect(myPreviewCheck, SIGNAL(toggled(bool)) , this, SLOT(onPreviewCheck(bool)));
- connect(myPosTable , SIGNAL(valueChanged(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)));
- connect(myRotYSpn2 , SIGNAL(valueChanged(double)) , this, SLOT(onRotation(double)));
- connect(myBasePlanePos, SIGNAL(textChanged(const QString&)), this, SLOT(onPlanePos(const QString&)));
- connect(myCreateTable , SIGNAL(toggled(bool)), myCurvesCheck, SLOT(setEnabled(bool)));
-
- connect(aOkBtn, SIGNAL(clicked()), this, SLOT(accept()));
- connect(aCloseBtn, SIGNAL(clicked()), this, SLOT(reject()));
- //connect(myMgr, SIGNAL(closeAllViews()), this, SLOT(reject()));
- //connect(VisuGUI::application()->desktop(),
- // SIGNAL(windowActivated(SUIT_ViewWindow*)),
- // this, SLOT(onWindowActivated(SUIT_ViewWindow*)));
-}
-
-/*!
- Destructor
-*/
-VisuGUI_CutLinesDlg::~VisuGUI_CutLinesDlg()
-{
- cout<<"### VisuGUI_CutLinesDlg::~VisuGUI_CutLinesDlg"<<endl;
- deletePlanes();
- if (myCutLines) //delete myCutLines;
- myCutLines->Destroy();
- if (SVTK_ViewWindow* vf = VISU::GetViewWindow())
- vf->Repaint();
-}
-
-//------------------------------------------------------------------------------
-void VisuGUI_CutLinesDlg::initFromPrsObject (VISU::CutLines_i* thePrs)
-{
- myPrs = thePrs;
- myScalarPane->initFromPrsObject(thePrs);
-
- myRotXSpn->setValue(thePrs->GetRotateX()*180./PI);
- myRotYSpn->setValue(thePrs->GetRotateY()*180./PI);
- myPosSpn->setValue(thePrs->GetDisplacement());
- setOrientation(thePrs->GetOrientationType());
-
- myNbSpn->setValue( (int)thePrs->GetNbLines() );
- myRotXSpn2->setValue(thePrs->GetRotateX2()*180./PI);
- myRotYSpn2->setValue(thePrs->GetRotateY2()*180./PI);
- myPosSpn2->setValue(thePrs->GetDisplacement2());
- setOrientation2(thePrs->GetOrientationType2());
-
- hasInit = true;
- myCutLines = new VISU::CutLines_i(thePrs->GetResult(),false);
- myCutLines->SameAs(thePrs);
- myBasePlanePos->setText( QString::number(myCutLines->GetBasePlanePosition()) );
- myCBSetDef->setChecked(thePrs->IsDefault());
- DrawTable();
-
- // Draw Preview
- if (myPreviewCheck->isChecked()) {
- createPlanes();
- }
-}
-
-//------------------------------------------------------------------------------
-int VisuGUI_CutLinesDlg::storeToPrsObject (VISU::CutLines_i* thePrs)
-{
- myScalarPane->storeToPrsObject(thePrs);
-
- thePrs->SetOrientation(getOrientaion(),
- myRotXSpn->value()*PI/180.,
- myRotYSpn->value()*PI/180.);
- thePrs->SetDisplacement(myPosSpn->value());
- thePrs->SetNbLines((int)myNbSpn->value());
-
- thePrs->SetOrientation2(getOrientaion(false),
- myRotXSpn2->value()*PI/180.,
- myRotYSpn2->value()*PI/180.);
- thePrs->SetDisplacement2(myPosSpn2->value());
-
- if (!myCBSetDef->isChecked())
- thePrs->SetBasePlanePosition(myBasePlanePos->text().toDouble());
- else thePrs->SetDefault();
-
- for (int i = 0; i < (int)myNbSpn->value(); ++i) {
- if (!((QCheckTableItem*)myPosTable->item( i, 1 ))->isChecked())
- thePrs->SetLinePosition( i, myPosTable->text( i, 0 ).toDouble() );
- else thePrs->SetDefaultPosition(i);
- }
- return 1;
-}
-
-//------------------------------------------------------------------------------
-void VisuGUI_CutLinesDlg::createPlanes()
-{
- SVTK_ViewWindow* aView = VISU::GetViewWindow();
- if (aView == NULL) return;
- if (myCutLines == NULL) return;
- if (myPreviewActor != 0) return;
-
- storeToPrsObject(myCutLines);
- myCutLines->GetPL()->Update();
- vtkAppendPolyData* aPolyData = myCutLines->GetCutLinesPL()->GetAppendPolyData();
- vtkDataSetMapper* aPlaneMapper = vtkDataSetMapper::New();
- aPlaneMapper->SetInput(aPolyData->GetOutput());
- aPlaneMapper->ScalarVisibilityOff();
-
- myPreviewActor = SALOME_Actor::New();
- myPreviewActor->PickableOff();
- myPreviewActor->SetMapper(aPlaneMapper);
- aPlaneMapper->Delete();
- aView->AddActor(myPreviewActor);
- aView->getRenderer()->Render();
- aView->onFitAll();
-}
-
-//------------------------------------------------------------------------------
-void VisuGUI_CutLinesDlg::deletePlanes()
-{
- if (myPreviewActor == 0) return;
- if (SVTK_ViewWindow* aView = VISU::GetViewWindow())
- aView->RemoveActor(myPreviewActor);
- myPreviewActor->Delete();
- myPreviewActor = 0;
-}
-
-
-//------------------------------------------------------------------------------
-void VisuGUI_CutLinesDlg::onPlaneSelect (int theId)
-{
- for (int i = 0; i < mySelPlane2->count(); i++)
- mySelPlane2->find(i)->setEnabled(true);
- QButton* aBtn = mySelPlane2->find(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);
- onCutSelect(1, false);
- break;
- case 1:
- myRotXLbl->setText( tr("LBL_ROT_Y"));
- myRotYLbl->setText( tr("LBL_ROT_Z"));
- ((QRadioButton*)mySelPlane2->find(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);
- onCutSelect(0, false);
- }
- setBaseDefault(false);
- DrawTable();
-}
-
-//------------------------------------------------------------------------------
-void VisuGUI_CutLinesDlg::onCutSelect (int theId, bool theUpdate)
-{
- switch (theId) {
- case 0:
- myRotXLbl2->setText( tr("LBL_ROT_X"));
- myRotYLbl2->setText( tr("LBL_ROT_Y"));
- break;
- case 1:
- myRotXLbl2->setText( tr("LBL_ROT_Y"));
- myRotYLbl2->setText( tr("LBL_ROT_Z"));
- break;
- case 2:
- myRotXLbl2->setText( tr("LBL_ROT_Z"));
- myRotYLbl2->setText( tr("LBL_ROT_X"));
- }
- if (SVTK_ViewWindow* aView = VISU::GetViewWindow()) {
- if (theUpdate && myPreviewCheck->isChecked() && (myCutLines != NULL)) {
- /*myCutLines->SetOrientation2(getOrientaion(false),
- myRotXSpn2->value()*PI/180.,
- myRotYSpn2->value()*PI/180.);
- myCutLines->SetDisplacement2(myPosSpn2->value());*/
- //myCutLines->GetPL()->Update();
- deletePlanes();
- createPlanes();
- //aView->Repaint();
- }
- }
-}
-
-//------------------------------------------------------------------------------
-void VisuGUI_CutLinesDlg::setBaseDefault (bool theUpdate)
-{
- if (!hasInit) return;
-
- if (myCBSetDef->isChecked()) {
- if (!myCutLines->IsDefault()) myCutLines->SetDefault();
- /*myCutLines->SetOrientation(getOrientaion(),
- myRotXSpn->value()*PI/180.,
- myRotYSpn->value()*PI/180.);
- myCutLines->SetDisplacement(myPosSpn->value());*/
- /* float aPos = myCutLines->GetBasePlanePosition();
- myBasePlanePos->setText( QString::number(aPos) );
- myBasePlanePos->setEnabled(false);*/
- if (SVTK_ViewWindow* aView = VISU::GetViewWindow()) {
- if (theUpdate && myPreviewCheck->isChecked() && (myCutLines != NULL)) {
- //myCutLines->SetBasePlanePosition(aPos);
- // myCutLines->GetPL()->Update();
- deletePlanes();
- createPlanes();
- //aView->Repaint();
- }
- }
- float aPos = myCutLines->GetBasePlanePosition();
- myBasePlanePos->setText( QString::number(aPos) );
- myBasePlanePos->setEnabled(false);
- } else {
- myBasePlanePos->setEnabled(true);
- }
-}
-
-//------------------------------------------------------------------------------
-void VisuGUI_CutLinesDlg::DrawTable()
-{
- if (!hasInit) return;
-
- int aNbRows = myPosTable->numRows();
- int aNbPlanes = (int)myNbSpn->value();
-
- myCutLines->SetOrientation(getOrientaion(),
- myRotXSpn->value()*PI/180.,
- myRotYSpn->value()*PI/180.);
-
- myCutLines->SetNbLines(aNbPlanes);
- myCutLines->SetDisplacement2(myPosSpn2->value());
- myCutLines->SetOrientation2(getOrientaion(false),
- myRotXSpn2->value()*PI/180.,
- myRotYSpn2->value()*PI/180.);
-
- if (aNbRows>0)
- for (int i = 0; i < aNbRows; ++i) {
- QCheckTableItem* aItem = (QCheckTableItem*)myPosTable->item( i, 1 );
- if (aItem == 0) break;
- if (!aItem->isChecked())
- myCutLines->SetLinePosition(i, myPosTable->text(i, 0).toDouble());
- }
-
- if (aNbPlanes > aNbRows)
- myPosTable->insertRows(aNbRows, aNbPlanes - aNbRows );
- else if (aNbPlanes < aNbRows)
- myPosTable->setNumRows(aNbPlanes);
-
- 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));
- }
-
- QHeader *vh = myPosTable->verticalHeader();
- QString str("Plane# %1");
- 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));
- myPosTable->setItem(i, 0, aEditItem);
-
- QCheckTableItem* aCheck = new QCheckTableItem(myPosTable, 0);
- aCheck->setChecked(myCutLines->IsDefaultPosition(i));
- aCheck->setReplaceable(false);
- myPosTable->setItem(i, 1, aCheck);
-
- vh->setLabel( i, str.arg(i+1) );
- }
- // Update preview
- if (SVTK_ViewWindow* aView = VISU::GetViewWindow()) {
- if (myPreviewCheck->isChecked()) {
- // myCutLines->GetPL()->Update();
- deletePlanes();
- createPlanes();
- //aView->Repaint();
- }
- }
-}
-
-//------------------------------------------------------------------------------
-void VisuGUI_CutLinesDlg::setDefault (int all)
-{
- myPosTable->setCurrentCell(-1, 1);
- myPosTable->clearSelection();
- if (all == 0) return;
- if (all == 1)
- for (int i = 0; i < (int)myNbSpn->value(); ++i)
- ((QCheckTableItem*)myPosTable->item( i, 1 ))->setChecked(true);
-
- for (int i = 0; i < (int)myNbSpn->value(); ++i) {
- if ( ((QCheckTableItem*)myPosTable->item( i, 1 ))->isChecked() ) {
- 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);
- }
-}
-
-//------------------------------------------------------------------------------
-VISU::CutPlanes::Orientation VisuGUI_CutLinesDlg::getOrientaion (bool IsBasePlane)
-{
- QHButtonGroup* aBG;
-
- if (IsBasePlane)
- aBG = mySelPlane;
- else
- aBG = mySelPlane2;
-
- VISU::CutPlanes::Orientation orient;
- switch (aBG->id(aBG->selected())) {
- case 0:
- orient = VISU::CutPlanes::XY;
- break;
- case 1:
- orient = VISU::CutPlanes::YZ;
- break;
- case 2:
- orient = VISU::CutPlanes::ZX;
- }
- return orient;
-}
-
-//------------------------------------------------------------------------------
-void VisuGUI_CutLinesDlg::setOrientation (const VISU::CutPlanes::Orientation orient)
-{
- switch (orient) {
- case VISU::CutPlanes::XY:
- ((QRadioButton*)mySelPlane->find(0))->setChecked(true);
- onPlaneSelect(0);
- break;
- case VISU::CutPlanes::YZ:
- ((QRadioButton*)mySelPlane->find(1))->setChecked(true);
- onPlaneSelect(1);
- break;
- case VISU::CutPlanes::ZX:
- ((QRadioButton*)mySelPlane->find(2))->setChecked(true);
- onPlaneSelect(2);
- }
-}
-
-//------------------------------------------------------------------------------
-void VisuGUI_CutLinesDlg::setOrientation2 (const VISU::CutPlanes::Orientation orient)
-{
- switch (orient) {
- case VISU::CutPlanes::XY:
- ((QRadioButton*)mySelPlane2->find(0))->setChecked(true);
- onCutSelect(0);
- break;
- case VISU::CutPlanes::YZ:
- ((QRadioButton*)mySelPlane2->find(1))->setChecked(true);
- onCutSelect(1);
- break;
- case VISU::CutPlanes::ZX:
- ((QRadioButton*)mySelPlane2->find(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);
-
- if (SVTK_ViewWindow* aView = VISU::GetViewWindow()) {
- if (myPreviewCheck->isChecked()) {
- //Update Preview
- //myCutLines->SetLinePosition( theRow, aTxt.toDouble());
- // myCutLines->GetPL()->Update();
- deletePlanes();
- createPlanes();
- //aView->Repaint();
- }
- }
- } else {
- bool isDefault = ((QCheckTableItem*)myPosTable->item(theRow, theCol))->isChecked();
- if (isDefault) {
- //myCutLines->SetDefaultPosition(theRow);
- // myPosTable->setText(theRow, 0, QString::number(myCutLines->GetLinePosition(theRow)));
-
- if (SVTK_ViewWindow* aView = VISU::GetViewWindow()) {
- if (myPreviewCheck->isChecked()) {
- //Update Preview
- // myCutLines->GetPL()->Update();
- deletePlanes();
- createPlanes();
- //aView->Repaint();
- }
- }
- myPosTable->setText(theRow, 0, QString::number(myCutLines->GetLinePosition(theRow)));
- }
- myPosTable->item(theRow, 0)->setEnabled(!isDefault);
- }
-}
-
-void VisuGUI_CutLinesDlg::accept()
-{
- //if ( !VisuGUI::CheckActiveStudyLock() ) {
- // reject();
- // return;
- //}
- MYGenerateTable = myCreateTable->isChecked();
- MYGenerateCurve = myCurvesCheck->isChecked();
- // if (myScalarPane->check()) {
- /*jfa tmp:((QWidget*)sender())->setDisabled(true);
- storeToPrsObject(myPrs);
- if (myIsCreation) {
- if (isGenerateTable()) {
- visuGUI->GetVisuGen()->CreateTable(myPrs->GetEntry());
- if (isGenerateCurves()) {
- SALOMEDSClient_Study* aStudy = study()->studyDS();
- SALOMEDSClient_SObject* aSObject = aStudy->FindObjectID(myPrs->GetEntry());
- if( aSObject ) {
- SALOMEDSClient_ChildIterator* aIter = aStudy->NewChildIterator( aSObject );
- SALOMEDSClient_StudyBuilder* aBuilder = aStudy->NewBuilder();
- for ( ;aIter->More(); aIter->Next()) {
- SALOMEDSClient_SObject* aTblObj = aIter->Value();
- if ( aTblObj ) {
- SALOMEDSClient_GenericAttribute* anAttr;
- if (aTblObj->FindAttribute(anAttr, "AttributeName")) {
- visuGUI->CreatePlot(aTblObj);
- }
- }
- }
- }
- }
- }
- if (GET_VTK_VIEWWINDOW(myMgr)) {
- try {
- visuGUI->CreateActor(myPrs);
- } catch (...) {
- reject();
- return;
- }
- GET_VTK_VIEWWINDOW(myMgr)->onFitAll();
- }
- } else {
- visuGUI->RecreateActor(myPrs);
- if (VTKViewer_ViewWindow* vf = GET_VTK_VIEWWINDOW(myMgr)) {
- if (vf->getRenderer()->GetActors()->GetNumberOfItems() > 0) {
- vf->getRenderer()->ResetCameraClippingRange();
- vf->Repaint();
- }
- }
- // Remove old Table
- SALOMEDSClient_Study* aStudy = study()->studyDS();
- SALOMEDSClient_SObject* aSObject = aStudy->FindObjectID(myPrs->GetEntry());
- if( aSObject ) {
- SALOMEDSClient_ChildIterator* aIter = aStudy->NewChildIterator( aSObject );
- SALOMEDSClient_StudyBuilder* aBuilder = aStudy->NewBuilder();
- for ( ;aIter->More(); aIter->Next()) {
- SALOMEDSClient_SObject* aTblObj = aIter->Value();
- if ( aTblObj ) {
- SALOMEDSClient_GenericAttribute* anAttr;
- if (aTblObj->FindAttribute(anAttr, "AttributeName")) {
- aBuilder->RemoveObjectWithChildren(aIter->Value()); // We should have only one child
- break;
- }
- }
- }
- if (isGenerateTable()) {
- visuGUI->GetVisuGen()->CreateTable(aSObject->GetID().c_str());
- if (isGenerateCurves()) {
- SALOMEDSClient_Study* aStudy = study()->studyDS();
- SALOMEDSClient_ChildIterator* aIter = aStudy->NewChildIterator( aSObject );
- SALOMEDSClient_StudyBuilder* aBuilder = aStudy->NewBuilder();
- for ( ;aIter->More(); aIter->Next()) {
- SALOMEDSClient_SObject* aTblObj = aIter->Value();
- if ( aTblObj ) {
- SALOMEDSClient_GenericAttribute* anAttr;
- if (aTblObj->FindAttribute(anAttr, "AttributeName")) {
- visuGUI->CreatePlot(aTblObj);
- }
- }
- }
- }
- }
- }
- }
- VisuGUI::application()->objectBrowser()->updateTree();*/
- deletePlanes();
- QDialog::accept();
- // }
-}
-
-void VisuGUI_CutLinesDlg::reject()
-{
- /*jfa tmp:if (myIsCreation) {
- myPrs->RemoveFromStudy();
- VisuGUI::application()->objectBrowser()->updateTree();
- }*/
- deletePlanes();
- QDialog::reject();
-}
-
-void VisuGUI_CutLinesDlg::onPreviewCheck (bool thePreview)
-{
- if (SVTK_ViewWindow* vf = VISU::GetViewWindow()) {
- if (thePreview) {
- //storeToPrsObject(myCutLines);
- // myCutLines->GetPL()->Update();
- createPlanes();
- //vf->onFitAll();
- } else {
- deletePlanes();
- vf->Repaint();
- }
- }
-}
-
-void VisuGUI_CutLinesDlg::onRotation (double theValue)
-{
- if (myCutLines == NULL) return;
- if (SVTK_ViewWindow* aView = VISU::GetViewWindow()) {
- if (myPreviewCheck->isChecked()) {
-
- /*myCutLines->SetOrientation(getOrientaion(),
- myRotXSpn->value()*PI/180.,
- myRotYSpn->value()*PI/180.);
- myCutLines->SetOrientation2(getOrientaion(false),
- myRotXSpn2->value()*PI/180.,
- myRotYSpn2->value()*PI/180.);*/
- // myCutLines->GetPL()->Update();
- deletePlanes();
- createPlanes();
- //aView->Repaint();
- }
- }
-}
-
-void VisuGUI_CutLinesDlg::onPlanePos (const QString& theValue)
-{
- if (myCutLines == NULL) return;
- if (SVTK_ViewWindow* aView = VISU::GetViewWindow()) {
- if (myPreviewCheck->isChecked()) {
- //myCutLines->SetBasePlanePosition(theValue.toDouble());
- // myCutLines->GetPL()->Update();
- deletePlanes();
- createPlanes();
- //aView->Repaint();
- }
- }
-}
-
-//jfa tmp:void VisuGUI_CutLinesDlg::onWindowActivated (SUIT_ViewWindow* theWnd)
-//jfa tmp:{
-//jfa tmp: if (theWnd != myStudyWnd)
-//jfa tmp: reject();
-//jfa tmp:}
+++ /dev/null
-// VISU VISUGUI : GUI of VISU component
-//
-// Copyright (C) 2003 CEA/DEN, EDF R&D
-//
-//
-//
-// 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>
-
-class SUIT_ViewManager;
-class SalomeApp_Module;
-
-namespace VISU{
- class CutLines_i;
-}
-
-class VisuGUI_CutLinesDlg: public QDialog
-{
- Q_OBJECT
-
-public:
- VisuGUI_CutLinesDlg (SalomeApp_Module* theModule);
- ~VisuGUI_CutLinesDlg();
-
- void initFromPrsObject (VISU::CutLines_i* thePrs);
- int storeToPrsObject (VISU::CutLines_i* thePrs);
-
- bool isGenerateTable() { return myCreateTable->isChecked(); }
- bool isGenerateCurves() { return myCreateTable->isChecked() && myCurvesCheck->isChecked(); }
-
-protected slots:
- void accept();
- void reject();
-
-private slots:
- void onPlaneSelect (int theId);
- void onCutSelect (int theId, bool theUpdate = true);
- void setBaseDefault (bool theUpdate = true);
- void setDefault (int all = -1);
- void DrawTable();
- void onValueChanged (int theRow, int theCol);
- void onPreviewCheck (bool thePreview);
- void onRotation (double theValue);
- void onPlanePos (const QString& theValue);
- //jfa tmp:void onWindowActivated (SUIT_ViewWindow*);
-
-private:
- void createPlanes();
- void deletePlanes();
-
- QHButtonGroup* mySelPlane;
- QtxDblSpinBox* myRotXSpn;
- QtxDblSpinBox* myRotYSpn;
- QLabel* myRotXLbl;
- QLabel* myRotYLbl;
- QtxDblSpinBox* myPosSpn;
- QLineEdit* myBasePlanePos;
- QCheckBox* myCBSetDef;
- QCheckBox* myCreateTable;
- QCheckBox* myCurvesCheck;
-
- QHButtonGroup* mySelPlane2;
- QtxDblSpinBox* myNbSpn;
- QtxDblSpinBox* myRotXSpn2;
- QtxDblSpinBox* myRotYSpn2;
- QLabel* myRotXLbl2;
- QLabel* myRotYLbl2;
- QtxDblSpinBox* myPosSpn2;
- QTable* myPosTable;
- bool hasInit;
-
- QDoubleValidator *mydvalidator;
- VISU::CutLines_i* myCutLines;
-
- VisuGUI_ScalarBarPane* myScalarPane;
-
- VISU::CutPlanes::Orientation getOrientaion (bool IsBasePlane = true);
- void setOrientation (const VISU::CutPlanes::Orientation orient);
- void setOrientation2 (const VISU::CutPlanes::Orientation orient);
-
- SALOME_Actor* myPreviewActor;
- QCheckBox* myPreviewCheck;
-
- VISU::CutLines_i* myPrs;
-
- //jfa tmp:SUIT_ViewManager *myMgr;
- //jfa tmp:SUIT_ViewWindow *myStudyWnd;
-
- static bool MYGenerateTable;
- static bool MYGenerateCurve;
-};
-
-#endif // VISUGUI_CUTLINESDLG_H
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// File : VisuGUI_CutPlanesDlg.cxx
-// Author : Laurent CORNABE & Hubert ROLLAND
-// Module : VISU
-// $Header$
-
-#include "VisuGUI_CutPlanesDlg.h"
-
-#include "VisuGUI.h"
-#include "VisuGUI_Tools.h"
-
-#include "VISU_CutPlanes_i.hh"
-#include "VISU_CutPlanesPL.hxx"
-
-#include "OB_Browser.h"
-
-#include "SVTK_ViewWindow.h"
-
-#include "SalomeApp_Application.h"
-
-#include "SUIT_Application.h"
-#include "SUIT_Desktop.h"
-#include "SUIT_ViewWindow.h"
-#include "SUIT_ViewManager.h"
-
-#include <qlayout.h>
-#include <qcheckbox.h>
-#include <qstyle.h>
-#include <qstring.h>
-#include <qvalidator.h>
-#include <qlineedit.h>
-#include <qtabwidget.h>
-
-#include <vtkRenderer.h>
-#include <vtkPolyData.h>
-#include <vtkAppendPolyData.h>
-#include <vtkDataSetMapper.h>
-
-using namespace std;
-
-//extern VisuGUI *visuGUI;
-
-VisuGUI_CutPlanesPane::VisuGUI_CutPlanesPane (QWidget* theParent)
- : QFrame(theParent), myPreviewActor(0)
-{
- QGridLayout* TopLayout = new QGridLayout( this );
- TopLayout->setSpacing( 6 );
- TopLayout->setMargin( 10 );
-
- QButtonGroup* SelPlane = new QButtonGroup (tr("TXT_ORIENTATION"), this, "SelPlane");
- //SelPlane->setTitle(tr("TXT_ORIENTATION"));
- SelPlane->setColumnLayout(0, Qt::Vertical);
- SelPlane->layout()->setSpacing( 0 );
- SelPlane->layout()->setMargin( 0 );
- QGridLayout* SelPlaneLayout = new QGridLayout( SelPlane->layout() );
- 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");
- SelPlaneLayout->addWidget( RBxy, 0, 0 );
- SelPlaneLayout->addWidget( RByz, 0, 1 );
- SelPlaneLayout->addWidget( RBzx, 0, 2 );
-
- QLabel* LabelPosi_3 = new QLabel (tr("LBL_NB_PLANS"), this, "LabelPosi_3");
-
- nbPlan = new QSpinBox( 1, 100, 1, this, "nbPlan" );
- nbPlan->setValue( 1 );
- nbPlan->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
-
- myPosTable = new QTable (this, "Positions of planes");
- 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() );
- GBrotLayout->setAlignment( Qt::AlignTop );
- GBrotLayout->setSpacing( 6 );
- GBrotLayout->setMargin( 11 );
-
- LabelRot1 = new QLabel (tr("LBL_ROT_X"), GBrot, "LabelRot1");
- GBrotLayout->addWidget( LabelRot1, 0, 0 );
-
- Rot1 = new QtxDblSpinBox( -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");
- GBrotLayout->addWidget( LabelRot2, 1, 0 );
-
- Rot2 = new QtxDblSpinBox( -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 );
-
- 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( LabelPosi_3, 2, 0 );
- TopLayout->addWidget( nbPlan, 2, 1 );
- TopLayout->addMultiCellWidget( myPosTable, 3, 3, 0, 1 );
- TopLayout->setRowStretch ( 3, 3 );
- TopLayout->addWidget(aPosLbl, 4, 0 );
- TopLayout->addWidget(myPosSpn, 4, 1 );
- TopLayout->addMultiCellWidget( myPreviewCheck, 5, 5, 0, 1 );
-
- // signals and slots connections
- connect( SelPlane, SIGNAL( clicked( 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) ) );
-
- // default values
- myCutPlanes = NULL;
- hasInit = false;
- X1 = 0; X2 = 0;
- Y1 = 0; Y2 = 0;
- Z1 = 0; Z2 = 0;
- RByz->setChecked( true );
-
-} // End of Constructor
-
-VisuGUI_CutPlanesPane::~VisuGUI_CutPlanesPane()
-{
- cout<<"### VisuGUI_CutPlanesPane::~VisuGUI_CutPlanesPane"<<endl;
- deletePlanes();
- if (myCutPlanes)
- myCutPlanes->Destroy();
- if (SVTK_ViewWindow* vf = VISU::GetViewWindow())
- vf->Repaint();
-}
-
-void VisuGUI_CutPlanesPane::initFromPrsObject (VISU::CutPlanes_i* thePrs)
-{
- setNbPlanes(thePrs->GetNbPlanes());
- setRotation(thePrs->GetRotateX()*180./PI, thePrs->GetRotateY()*180./PI);
- setPlanePos(thePrs->GetOrientationType());
- myPosSpn->setValue(thePrs->GetDisplacement());
- hasInit = true;
- // init table
- myCutPlanes = new VISU::CutPlanes_i(thePrs->GetResult(),false);
- myCutPlanes->SameAs(thePrs);
- DrawTable();
-
- // Draw Preview
- if (myPreviewCheck->isChecked()) {
- createPlanes();
- }
-}
-
-void VisuGUI_CutPlanesPane::createPlanes()
-{
- if (VISU::GetViewWindow() == NULL) return;
- if (myCutPlanes == NULL) return;
- if (myPreviewActor != 0) return;
-
- vtkAppendPolyData* aPolyData = myCutPlanes->GetCutPlanesPL()->GetAppendPolyData();
- if (!aPolyData->GetOutput()->GetNumberOfCells()) {
- onPreviewCheck(false);
- return;
- }
- vtkDataSetMapper* aPlaneMapper = vtkDataSetMapper::New();
- aPlaneMapper->SetInput(aPolyData->GetOutput());
- aPlaneMapper->ScalarVisibilityOff();
-
- myPreviewActor = SALOME_Actor::New();
- myPreviewActor->PickableOff();
- myPreviewActor->SetMapper(aPlaneMapper);
- aPlaneMapper->Delete();
- VISU::GetViewWindow()->AddActor(myPreviewActor);
-}
-
-int VisuGUI_CutPlanesPane::storeToPrsObject (VISU::CutPlanes_i* thePrs)
-{
- thePrs->SetOrientation(getOrientaion(), getRotation1()*PI/180., getRotation2()*PI/180.);
- thePrs->SetNbPlanes(getNbPlanes());
- thePrs->SetDisplacement(myPosSpn->value());
- for (int i = 0; i < getNbPlanes(); ++i) {
- QCheckTableItem* anItem = (QCheckTableItem*)myPosTable->item(i, 1);
- if (!anItem)
- break;
- if (!anItem->isChecked())
- thePrs->SetPlanePosition(i, myPosTable->text(i, 0).toDouble());
- else
- thePrs->SetDefault(i);
- }
- return 1;
-}
-
-/*!
- Called when orientation is changed
-*/
-void VisuGUI_CutPlanesPane::orientationChanged (int Id)
-{
- if (Id == 0) { // RBxy->isChecked()
- LabelRot1->setText(tr("LBL_ROT_X"));
- LabelRot2->setText(tr("LBL_ROT_Y"));
- } else if (Id == 1) { // RByz->isChecked()
- LabelRot1->setText(tr("LBL_ROT_Y"));
- LabelRot2->setText(tr("LBL_ROT_Z"));
- } else {
- LabelRot1->setText(tr("LBL_ROT_Z"));
- LabelRot2->setText(tr("LBL_ROT_X"));
- }
- DrawTable();
-}
-
-/*!
- Sets planes orientation and position
-*/
-void VisuGUI_CutPlanesPane::setPlanePos (const VISU::CutPlanes::Orientation orient)
-{
- if (orient == VISU::CutPlanes::XY) // xy
- {
- RBxy->setChecked( true );
- orientationChanged( 0 );
- }
- else if (orient == VISU::CutPlanes::YZ) // yz
- {
- RByz->setChecked( true );
- orientationChanged( 1 );
- }
- else // zx
- {
- RBzx->setChecked( true );
- orientationChanged( 2 );
- }
-
-}
-
-/*!
- Gets planes orientation
-*/
-VISU::CutPlanes::Orientation VisuGUI_CutPlanesPane::getOrientaion()
-{
- VISU::CutPlanes::Orientation orient;
- if ( RBxy->isChecked() ) // xy
- orient = VISU::CutPlanes::XY;
- else if ( RByz->isChecked() ) // yz
- orient = VISU::CutPlanes::YZ;
- else if ( RBzx->isChecked() ) // zx
- orient = VISU::CutPlanes::ZX;
- return orient;
-}
-
-/*!
- Sets planes rotation
-*/
-void VisuGUI_CutPlanesPane::setRotation (const double r1, const double r2)
-{
- Rot1->setValue( r1 );
- Rot2->setValue( r2 );
-}
-
-/*!
- Draw the table of planes positions
-*/
-void VisuGUI_CutPlanesPane::DrawTable()
-{
- if (myCutPlanes == NULL) return;
- if (!hasInit) return;
-
- int aNbRows = myPosTable->numRows();
- int aNbPlanes = getNbPlanes();
-
- myCutPlanes->SetOrientation(getOrientaion(),getRotation1()*PI/180.,getRotation2()*PI/180.);
- myCutPlanes->SetNbPlanes(aNbPlanes);
- myCutPlanes->SetDisplacement(myPosSpn->value());
- if (aNbRows>0)
- for (int i = 0; i < aNbRows; ++i) {
- QCheckTableItem* aItem = (QCheckTableItem*)myPosTable->item( i, 1 );
- if (aItem == 0) break;
- if (!aItem->isChecked())
- myCutPlanes->SetPlanePosition(i, myPosTable->text(i, 0).toDouble());
- }
-
- if (aNbPlanes > aNbRows)
- myPosTable->insertRows(aNbRows, aNbPlanes - aNbRows );
- else if (aNbPlanes < aNbRows)
- myPosTable->setNumRows(aNbPlanes);
-
- 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));
- }
-
- QHeader *vh = myPosTable->verticalHeader();
- QString str("Plane# %1");
- 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));
- myPosTable->setItem(i, 0, aEditItem);
-
- QCheckTableItem* aCheck = new QCheckTableItem(myPosTable, 0);
- aCheck->setChecked(myCutPlanes->IsDefault(i));
- aCheck->setReplaceable(false);
- myPosTable->setItem(i, 1, aCheck);
-
- vh->setLabel( i, str.arg(i+1) );
- }
-
- // Update preview
- if (myPreviewCheck->isChecked()) {
- if (SVTK_ViewWindow* vf = VISU::GetViewWindow()) {
- myCutPlanes->GetPL()->Update();
- deletePlanes();
- createPlanes();
- vf->Repaint();
- }
- }
-}
-
-void VisuGUI_CutPlanesPane::setDefault (int all)
-{
- myPosTable->setCurrentCell(-1, 1);
- myPosTable->clearSelection();
- if (all == 0) return;
- if (all == 1)
- for (int i = 0; i < getNbPlanes(); ++i)
- ((QCheckTableItem*)myPosTable->item( i, 1 ))->setChecked(true);
-
- for (int i = 0; i < getNbPlanes(); ++i) {
- if ( ((QCheckTableItem*)myPosTable->item( i, 1 ))->isChecked() ) {
- 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);
- }
-}
-
-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);
-
- if (myPreviewCheck->isChecked()) {
- //Update Preview
- if (SVTK_ViewWindow* vf = VISU::GetViewWindow()) {
- myCutPlanes->SetPlanePosition( theRow, aTxt.toDouble());
- myCutPlanes->GetPL()->Update();
- deletePlanes();
- createPlanes();
- vf->Repaint();
- }
- }
- } else {
- bool isDefault = ((QCheckTableItem*)myPosTable->item(theRow, theCol))->isChecked();
- if (isDefault) {
- myCutPlanes->SetDefault(theRow);
- myPosTable->setText(theRow, 0, QString::number(myCutPlanes->GetPlanePosition(theRow)));
-
- if (myPreviewCheck->isChecked()) {
- if (SVTK_ViewWindow* vf = VISU::GetViewWindow()) {
- //Update Preview
- myCutPlanes->GetPL()->Update();
- deletePlanes();
- createPlanes();
- vf->Repaint();
- }
- }
- }
- myPosTable->item(theRow, 0)->setEnabled(!isDefault);
- }
-}
-
-void VisuGUI_CutPlanesPane::deletePlanes()
-{
- if (myPreviewActor == 0) return;
- if (SVTK_ViewWindow* vf = VISU::GetViewWindow())
- vf->RemoveActor(myPreviewActor);
- myPreviewActor->Delete();
- myPreviewActor = 0;
-}
-
-void VisuGUI_CutPlanesPane::onRotation (double theValue)
-{
- if (myCutPlanes == NULL) return;
- if (myPreviewCheck->isChecked()) {
- if (SVTK_ViewWindow* vf = VISU::GetViewWindow()) {
- myCutPlanes->SetOrientation(getOrientaion(),getRotation1()*PI/180.,getRotation2()*PI/180.);
- myCutPlanes->GetPL()->Update();
- deletePlanes();
- createPlanes();
- vf->Repaint();
- }
- }
-}
-
-void VisuGUI_CutPlanesPane::onPreviewCheck (bool thePreview)
-{
- if (SVTK_ViewWindow* vf = VISU::GetViewWindow()) {
- if (thePreview) {
- storeToPrsObject(myCutPlanes);
- myCutPlanes->GetPL()->Update();
- createPlanes();
- vf->onFitAll();
- } else {
- deletePlanes();
- vf->Repaint();
- }
- }
-}
-
-//###################################################################
-
-
-/*!
- Constructor
-*/
-VisuGUI_CutPlanesDlg::VisuGUI_CutPlanesDlg (SalomeApp_Module* theModule)
- : QDialog(VISU::GetDesktop(theModule), "VisuGUI_CutPlanesDlg", false,
- WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu)
-{
- setCaption("Cut Planes Definition");
- setSizeGripEnabled(true);
-
- QVBoxLayout* TopLayout = new QVBoxLayout (this);
- TopLayout->setSpacing(6);
- TopLayout->setMargin(11);
-
- // Tab pane
- QTabWidget* aTabBox = new QTabWidget(this);
- myCutPane = new VisuGUI_CutPlanesPane(this/*, myMgr*/);
- aTabBox->addTab(myCutPane, "Cut Planes");
- myScalarPane = new VisuGUI_ScalarBarPane(this, false);
- myScalarPane->setMargin(5);
- aTabBox->addTab(myScalarPane, "Scalar Bar");
-
- TopLayout->addWidget(aTabBox);
-
- QGroupBox* GroupButtons = new QGroupBox(this, "GroupButtons");
- 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());
- 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);
-
- TopLayout->addWidget(GroupButtons);
-
- connect(buttonOk, SIGNAL(clicked()), this, SLOT(accept()));
- connect(buttonCancel, SIGNAL(clicked()), this, SLOT(reject()));
- //connect(myMgr, SIGNAL(closeAllViews()), this, SLOT(reject()));
- //connect(VisuGUI::application()->desktop(),
- // SIGNAL(windowActivated(SUIT_ViewWindow*)),
- // this, SLOT(onWindowActivated(SUIT_ViewWindow*)));
-}
-
-void VisuGUI_CutPlanesDlg::initFromPrsObject (VISU::CutPlanes_i* thePrs)
-{
- myPrs = thePrs;
- myScalarPane->initFromPrsObject(thePrs);
- myCutPane->initFromPrsObject(thePrs);
-}
-
-int VisuGUI_CutPlanesDlg::storeToPrsObject (VISU::CutPlanes_i* thePrs)
-{
- return (myScalarPane->storeToPrsObject(thePrs) &&
- myCutPane->storeToPrsObject(thePrs));
-}
-
-void VisuGUI_CutPlanesDlg::accept()
-{
- //if ( !VisuGUI::CheckActiveStudyLock() ) {
- // reject();
- // return;
- //}
- if (myScalarPane->check())
- QDialog::accept();
-}
-
-void VisuGUI_CutPlanesDlg::reject() {
- QDialog::reject();
-}
-
-//void VisuGUI_CutPlanesDlg::onWindowActivated (SUIT_ViewWindow* theWnd)
-//{
-// if (theWnd != myStudyWnd)
-// reject();
-//}
-
-//###################################################################
-
-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;
-}
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// File : VisuGUI_CutPlanesDlg.h
-// Author : Laurent CORNABE & Hubert ROLLAND
-// Module : VISU
-// $Header$
-
-#ifndef VISUGUI_CUTPLANESDLG_H
-#define VISUGUI_CUTPLANESDLG_H
-
-#include "VisuGUI_ScalarBarDlg.h"
-#include "VISU_CutPlanes_i.hh"
-
-#include <SALOME_Actor.h>
-
-#include <qradiobutton.h>
-#include <qtable.h>
-
-#include "SALOMEconfig.h"
-#include CORBA_CLIENT_HEADER(VISU_Gen)
-
-class QtxDblSpinBox;
-class SUIT_ViewWindow;
-class SUIT_ViewManager;
-class SalomeApp_Module;
-
-
-class VisuGUI_CutPlanesPane : public QFrame
-{
- Q_OBJECT
-
-public:
- VisuGUI_CutPlanesPane (QWidget* parent);
- ~VisuGUI_CutPlanesPane();
-
- void setNbPlanes( const int nbp ) {nbPlan->setValue( nbp );}
- int getNbPlanes() {return nbPlan->value();}
- void setPlanePos( const VISU::CutPlanes::Orientation orient/*, const double pos1, const double pos2 */);
- VISU::CutPlanes::Orientation getOrientaion();
- void setRotation( const double r1, const double r2 );
- double getRotation1() {return Rot1->value();}
- double getRotation2() {return Rot2->value();}
-
- void initFromPrsObject(VISU::CutPlanes_i* thePrs);
- int storeToPrsObject(VISU::CutPlanes_i* thePrs);
-
-private:
- void createPlanes();
- void deletePlanes();
-
-
- QLabel* LabelRot1;
- QLabel* LabelRot2;
- QSpinBox* nbPlan;
- QtxDblSpinBox* Rot1;
- QtxDblSpinBox* Rot2;
- QRadioButton* RBzx;
- QRadioButton* RByz;
- QRadioButton* RBxy;
- QtxDblSpinBox* myPosSpn;
- QTable* myPosTable;
- VISU::CutPlanes_i* myCutPlanes;
- QCheckBox* myPreviewCheck;
- double X1, X2;
- double Y1, Y2;
- double Z1, Z2;
- bool hasInit;
-
- SALOME_Actor* myPreviewActor;
-
-private slots:
- void editScalarBar();
- void orientationChanged( int );
- void DrawTable();
- void setDefault( int all = -1);
- void onValueChanged(int theRow, int theCol);
- void onRotation(double theValue);
- void onPreviewCheck(bool thePreview);
-};
-
-
-class VisuGUI_CutPlanesDlg : public QDialog
-{
- Q_OBJECT
-
-public:
- VisuGUI_CutPlanesDlg (SalomeApp_Module* theModule);
- ~VisuGUI_CutPlanesDlg() {};
-
- void initFromPrsObject (VISU::CutPlanes_i* thePrs);
- int storeToPrsObject (VISU::CutPlanes_i* thePrs);
-
-protected slots:
- void accept();
- void reject();
- void onWindowActivated (SUIT_ViewWindow*);
-
-private:
- VisuGUI_CutPlanesPane* myCutPane;
- VisuGUI_ScalarBarPane* myScalarPane;
- VISU::CutPlanes_i* myPrs;
-};
-
-
-class VisuGUI_NumEditItem: public QTableItem
-{
-public:
- VisuGUI_NumEditItem(QTable* table, EditType et, const QString& text ):
- QTableItem(table, et, text) {};
- ~VisuGUI_NumEditItem() {};
-
- QWidget* createEditor() const;
-};
-
-#endif // VISUGUI_CUTPLANESDLG_H
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// File : VisuGUI_MagnitudeDlg.cxx
-// Author : Laurent CORNABE & Hubert ROLLAND
-// Module : VISU
-// $Header$
-
-#include "VisuGUI_DeformedShapeDlg.h"
-
-#include "VisuGUI_Tools.h"
-
-#include "VISU_DeformedShape_i.hh"
-
-#include "SalomeApp_Module.h"
-#include "SUIT_Desktop.h"
-
-#include <qlayout.h>
-#include <qtabwidget.h>
-
-using namespace std;
-
-/*!
- * Constructor
- */
-VisuGUI_DeformedShapeDlg::VisuGUI_DeformedShapeDlg (SalomeApp_Module* theModule)
- : QDialog(VISU::GetDesktop(theModule), "VisuGUI_DeformedShapeDlg", true,
- WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu)
-{
- setCaption(tr("DLG_TITLE"));
- setSizeGripEnabled(TRUE);
-
- QVBoxLayout* TopLayout = new QVBoxLayout (this);
- TopLayout->setSpacing(6);
- TopLayout->setMargin(11);
-
- QTabWidget* aTabBox = new QTabWidget (this);
-
- // 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(5);
- ScalFact->setValue(0.1);
- TopGroupLayout->addWidget(ScalFact, 0, 1);
-
- // Magnitude coloring
- UseMagn = new QCheckBox (tr("MAGNITUDE_COLORING"), TopGroup, "UseMagn");
- UseMagn->setChecked(true);
- TopGroupLayout->addMultiCellWidget(UseMagn, 1, 1, 0, 1);
-
- aTabBox->addTab(aBox, tr("DEFORMED_SHAPE_TAB"));
-
- // Scalar bar pane
- myScalarPane = new VisuGUI_ScalarBarPane (this, false);
- myScalarPane->setMargin(5);
-
- aTabBox->addTab(myScalarPane, tr("SCALAR_BAR_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);
-
- // Add Tab box and Buttons to the top layout
- TopLayout->addWidget(aTabBox);
- TopLayout->addWidget(GroupButtons);
-
- // signals and slots connections
- connect(buttonOk, SIGNAL(clicked()), this, SLOT(accept()));
- connect(buttonCancel, SIGNAL(clicked()), this, SLOT(reject()));
-}
-
-void VisuGUI_DeformedShapeDlg::initFromPrsObject (VISU::DeformedShape_i* thePrs)
-{
- myScalarPane->initFromPrsObject(thePrs);
- setFactor(thePrs->GetScale());
- UseMagn->setChecked(thePrs->IsColored());
-}
-
-int VisuGUI_DeformedShapeDlg::storeToPrsObject(VISU::DeformedShape_i* thePrs) {
- myScalarPane->storeToPrsObject(thePrs);
- thePrs->SetScale(getFactor());
- thePrs->ShowColored(isColored());
- return 1;
-}
-
-void VisuGUI_DeformedShapeDlg::accept() {
- if (myScalarPane->check()) QDialog::accept();
-}
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// File : VisuGUI_MagnitudeDlg.h
-// Author : Laurent CORNABE & Hubert ROLLAND
-// Module : VISU
-// $Header$
-
-#ifndef VISUGUI_DEFORMEDSHAPEDLS_H
-#define VISUGUI_DEFORMEDSHAPEDLS_H
-
-#include "VisuGUI_ScalarBarDlg.h"
-
-#include "QtxDblSpinBox.h"
-
-#include <qdialog.h>
-#include <qgroupbox.h>
-#include <qcheckbox.h>
-#include <qlabel.h>
-#include <qpushbutton.h>
-
-class SalomeApp_Module;
-
-namespace VISU{
- class DeformedShape_i;
-}
-
-class VisuGUI_DeformedShapeDlg : public QDialog
-{
- Q_OBJECT
-
-public:
- VisuGUI_DeformedShapeDlg (SalomeApp_Module* theModule);
- ~VisuGUI_DeformedShapeDlg() {};
-
- double getFactor()
- { return ScalFact->value(); }
- void setFactor(double theFactor)
- { ScalFact->setValue(theFactor); }
-
- bool isColored()
- { return UseMagn->isChecked(); }
-
- void initFromPrsObject(VISU::DeformedShape_i* thePrs);
- int storeToPrsObject(VISU::DeformedShape_i* thePrs);
-
-protected slots:
- void accept();
-
- private:
- QtxDblSpinBox* ScalFact;
- QCheckBox* UseMagn;
- VisuGUI_ScalarBarPane* myScalarPane;
-};
-
-#endif // VISUGUI_DEFORMEDSHAPEDLS_H
--- /dev/null
+// VISU VISUGUI : Displayer for VISU module
+//
+// 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
+//
+//
+//
+// 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_Tools.h"
+#include "VISU_Actor.h"
+
+#include <SVTK_ViewModel.h>
+#include <SVTK_ViewWindow.h>
+
+#include <SPlot2d_ViewModel.h>
+#include <SPlot2d_Prs.h>
+#include <Plot2d_ViewWindow.h>
+
+#include <SalomeApp_Application.h>
+#include <SalomeApp_Study.h>
+
+#include "VISU_ViewManager_i.hh"
+
+VisuGUI_Displayer::VisuGUI_Displayer( SalomeApp_Application* app )
+: LightApp_Displayer(),
+ myApp( app )
+{
+}
+
+VisuGUI_Displayer::~VisuGUI_Displayer()
+{
+}
+
+SALOME_Prs* VisuGUI_Displayer::buildPresentation( const QString& entry, SALOME_View* theViewFrame )
+{
+ SALOME_Prs* prs = 0;
+
+ SALOME_View* aViewFrame = theViewFrame ? theViewFrame : GetActiveView();
+ SalomeApp_Study* study = dynamic_cast<SalomeApp_Study*>( myApp->activeStudy() );
+
+ if ( study && aViewFrame )
+ {
+ _PTR(SObject) obj = study->studyDS()->FindObjectID( entry.latin1() );
+ CORBA::Object_var anObj = VISU::ClientSObjectToObject( obj );
+ if( CORBA::is_nil( anObj ) )
+ return 0;
+
+ SVTK_Viewer* vtk_viewer = dynamic_cast<SVTK_Viewer*>( aViewFrame );
+ if( vtk_viewer )
+ {
+ SVTK_ViewWindow* wnd = dynamic_cast<SVTK_ViewWindow*>( vtk_viewer->getViewManager()->getActiveView() );
+ if( wnd )
+ {
+ VISU::Prs3d_i* thePrs = dynamic_cast<VISU::Prs3d_i*>( VISU::GetServant( anObj ).in() );
+ if( thePrs )
+ {
+ buildPrs3d( wnd, thePrs );
+ prs = LightApp_Displayer::buildPresentation( entry, aViewFrame );
+ }
+ }
+ }
+
+ SPlot2d_Viewer* plot_viewer = dynamic_cast<SPlot2d_Viewer*>( aViewFrame );
+ if( plot_viewer )
+ {
+ Plot2d_ViewWindow* wnd = dynamic_cast<Plot2d_ViewWindow*>( plot_viewer->getViewManager()->getActiveView() );
+ if( !wnd )
+ return 0;
+
+ VISU::Curve_i* aCurve = dynamic_cast<VISU::Curve_i*>( VISU::GetServant( anObj ).in() );
+ SPlot2d_Prs* iprs = 0;
+ if( aCurve )
+ iprs = buildCurve( wnd, aCurve );
+
+ VISU::Container_i* aCont = dynamic_cast<VISU::Container_i*>( VISU::GetServant( anObj ).in() );
+ if( aCont )
+ iprs = buildContainer( wnd, aCont );
+
+ VISU::Table_i* aTable = dynamic_cast<VISU::Table_i*>(VISU::GetServant( anObj ).in() );
+ if( aTable )
+ iprs = buildTable( wnd, aTable );
+
+ if( iprs )
+ prs = new SPlot2d_Prs( iprs );
+
+ if( prs )
+ UpdatePrs( prs );
+ }
+ }
+ return prs;
+}
+
+void VisuGUI_Displayer::buildPrs3d( SVTK_ViewWindow* wnd, VISU::Prs3d_i* thePrs ) const
+{
+ VISU_Actor* newAct = VISU::FindActor( wnd, thePrs );
+ if( !newAct )
+ {
+ VISU_Actor* a = thePrs->CreateActor();
+ if( a )
+ newAct = a->GetParent();
+ }
+ if( newAct && newAct )
+ {
+ wnd->AddActor( newAct );
+ wnd->Repaint();
+ }
+}
+
+bool VisuGUI_Displayer::addCurve( SPlot2d_Prs* prs, Plot2d_ViewWindow* wnd, VISU::Curve_i* c ) const
+{
+ if( !prs || !wnd || !c )
+ return false;
+
+ QString entry = c->GetSObject()->GetID();
+ SPlot2d_Viewer* vv = dynamic_cast<SPlot2d_Viewer*>( wnd->getModel() );
+ if( !vv )
+ return false;
+
+ SPlot2d_Curve* curve = vv->getCurveByIO( vv->FindIObject( entry.latin1() ) );
+ if( !curve )
+ {
+ curve = c->CreatePresentation();
+ VISU::UpdateCurve( c, 0, curve, VISU::eDisplay );
+ }
+ if( curve )
+ prs->AddObject( curve );
+
+ return curve!=0;
+}
+
+SPlot2d_Prs* VisuGUI_Displayer::buildCurve( Plot2d_ViewWindow* wnd, VISU::Curve_i* c ) const
+{
+ SPlot2d_Prs* prs = new SPlot2d_Prs();
+ if( !addCurve( prs, wnd, c ) )
+ {
+ delete prs;
+ prs = 0;
+ }
+ return prs;
+}
+
+SPlot2d_Prs* VisuGUI_Displayer::buildContainer( Plot2d_ViewWindow* wnd, VISU::Container_i* c ) const
+{
+ SPlot2d_Prs* prs = new SPlot2d_Prs();
+
+ int nbCurves = c ? c->GetNbCurves() : 0;
+ for( int k=1; k<=nbCurves; k++ )
+ {
+ VISU::Curve_i* theCurve = c->GetCurve( k );
+ if( theCurve && theCurve->IsValid() )
+ addCurve( prs, wnd, theCurve );
+ }
+ if( prs->getCurves().count()==0 )
+ {
+ delete prs;
+ prs = 0;
+ }
+ return prs;
+}
+
+SPlot2d_Prs* VisuGUI_Displayer::buildTable( Plot2d_ViewWindow* wnd, VISU::Table_i* t ) const
+{
+ SPlot2d_Prs* prs = new SPlot2d_Prs();
+ SalomeApp_Study* study = dynamic_cast<SalomeApp_Study*>( myApp->activeStudy() );
+ if( !study )
+ return prs;
+
+ _PTR(SObject) TableSO = study->studyDS()->FindObjectID( t->GetEntry().latin1() );
+
+ if( !TableSO )
+ return prs;
+
+ _PTR(ChildIterator) Iter = study->studyDS()->NewChildIterator( TableSO );
+ for( ; Iter->More(); Iter->Next() )
+ {
+ CORBA::Object_var childObject = VISU::ClientSObjectToObject( Iter->Value() );
+ if( !CORBA::is_nil( childObject ) )
+ {
+ CORBA::Object_ptr aCurve = VISU::Curve::_narrow( childObject );
+ if( !CORBA::is_nil( aCurve ) )
+ {
+ VISU::Curve_i* theCurve = dynamic_cast<VISU::Curve_i*>(VISU::GetServant(aCurve).in());
+ addCurve( prs, wnd, theCurve );
+ }
+ }
+ }
+ if( prs->getCurves().count()==0 )
+ {
+ delete prs;
+ prs = 0;
+ }
+ return prs;
+}
+
+bool VisuGUI_Displayer::canBeDisplayed( const QString& entry, const QString& viewer_type ) const
+{
+ SalomeApp_Study* study = dynamic_cast<SalomeApp_Study*>( myApp->activeStudy() );
+ if( !study )
+ return false;
+
+ _PTR(SObject) obj = study->studyDS()->FindObjectID( entry.latin1() );
+ CORBA::Object_var anObj = VISU::ClientSObjectToObject( obj );
+ if( CORBA::is_nil( anObj ) )
+ return false;
+
+ if( viewer_type==SVTK_Viewer::Type() )
+ {
+ VISU::Prs3d_i* thePrs = dynamic_cast<VISU::Prs3d_i*>( VISU::GetServant( anObj ).in() );
+ return thePrs;
+ }
+ 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;
+ }
+ else
+ return false;
+}
+++ /dev/null
-// VISU VISUGUI : GUI of VISU component
-//
-// Copyright (C) 2003 CEA/DEN, EDF R&D
-//
-//
-//
-// File : VisuGUI_EditContainerDlg.cxx
-// Author : VSV
-// Module : VISU
-
-
-#include "VisuGUI_EditContainerDlg.h"
-
-#include "VisuGUI.h"
-#include "VisuGUI_Tools.h"
-
-#include "VISU_Table_i.hh"
-
-#include "SalomeApp_Application.h"
-#include "SUIT_Desktop.h"
-
-#include <qlayout.h>
-#include <qcheckbox.h>
-#include <qgroupbox.h>
-#include <qpushbutton.h>
-#include <qlabel.h>
-
-using namespace std;
-
-
-/* XPM */
-static const char * left_xpm[] = {
-"24 24 61 1",
-" c None",
-". c #323232",
-"+ c #010101",
-"@ c #4A4A4A",
-"# c #040404",
-"$ c #979797",
-"% c #7B7B7B",
-"& c #939393",
-"* c #EEEEEE",
-"= c #686868",
-"- c #030303",
-"; c #9C9C9C",
-"> c #FFFFFF",
-", c #B1B1B1",
-"' c #5E5E5E",
-") c #060606",
-"! c #C1C1C1",
-"~ c #626262",
-"{ c #000000",
-"] c #989898",
-"^ c #A1A1A1",
-"/ c #A5A5A5",
-"( c #909090",
-"_ c #868686",
-": c #616161",
-"< c #959595",
-"[ c #919191",
-"} c #848484",
-"| c #606060",
-"1 c #0B0B0B",
-"2 c #545454",
-"3 c #727272",
-"4 c #A2A2A2",
-"5 c #969696",
-"6 c #838383",
-"7 c #5F5F5F",
-"8 c #101010",
-"9 c #434343",
-"0 c #6B6B6B",
-"a c #858585",
-"b c #8E8E8E",
-"c c #373737",
-"d c #696969",
-"e c #8D8D8D",
-"f c #B5B5B5",
-"g c #111111",
-"h c #393939",
-"i c #898989",
-"j c #B0B0B0",
-"k c #191919",
-"l c #3A3A3A",
-"m c #646464",
-"n c #535353",
-"o c #050505",
-"p c #353535",
-"q c #585858",
-"r c #4C4C4C",
-"s c #0D0D0D",
-"t c #3E3E3E",
-"u c #020202",
-"v c #0A0A0A",
-" ",
-" ",
-" .+ .+ ",
-" .@# .@# ",
-" .$%# .$%# ",
-" .&*=- .&*=- ",
-" .;>,') .;>,') ",
-" .;>!;~{ .;>!;~{ ",
-" .]>!^&~{ .]>!^&~{ ",
-" ./>!/(_:{ ./>!/(_:{ ",
-" .<*!^[}}|{.<*!^[}}|{ ",
-" 123}45667{123}45667{ ",
-" 890a45b7{ 890a45b7{ ",
-" 8cdef5'{ 8cdef5'{ ",
-" gh0ij7k gh0ij7k ",
-" 8lm0no 8lm0no ",
-" 8pqr- 8pqr- ",
-" sht- sht- ",
-" 1.u 1.u ",
-" v{ v{ ",
-" ",
-" ",
-" ",
-" "};
-
-static QPixmap MYLeftPix(left_xpm);
-
-
-static const char * right_xpm[] = {
-"24 24 43 1",
-" g None",
-". g #323232",
-"+ g #5D5D5D",
-"@ g #000000",
-"# g #C4C4C4",
-"$ g #313131",
-"% g #C5C5C5",
-"& g #E4E4E4",
-"* g #2D2D2D",
-"= g #B7B7B7",
-"- g #EFEFEF",
-"; g #DCDCDC",
-"> g #282828",
-", g #AFAFAF",
-"' g #E0E0E0",
-") g #242424",
-"! g #C7C7C7",
-"~ g #9A9A9A",
-"{ g #8E8E8E",
-"] g #1F1F1F",
-"^ g #A5A5A5",
-"/ g #989898",
-"( g #888888",
-"_ g #1B1B1B",
-": g #ADADAD",
-"< g #858585",
-"[ g #838383",
-"} g #868686",
-"| g #929292",
-"1 g #C1C1C1",
-"2 g #161616",
-"3 g #909090",
-"4 g #747474",
-"5 g #3A3A3A",
-"6 g #121212",
-"7 g #0D0D0D",
-"8 g #7A7A7A",
-"9 g #8A8A8A",
-"0 g #090909",
-"a g #040404",
-"b g #707070",
-"c g #6E6E6E",
-"d g #3F3F3F",
-" ",
-" ",
-" .. .. ",
-" .+@ .+@ ",
-" .#+@ .#+@ ",
-" $%&+@ $%&+@ ",
-" *=-;+@ *=-;+@ ",
-" >,'=;+@ >,'=;+@ ",
-" ),!~{;+@ ),!~{;+@ ",
-" ]^!/({;+@ ]^!/({;+@ ",
-" _~:<[}|1+@_~:<[}|1+@ ",
-" 23~[[{:45@23~[[{:45@ ",
-" 6</[{:45@ 6</[{:45@ ",
-" 789{:45@ 789{:45@ ",
-" 08~:45@ 08~:45@ ",
-" a4~45@ a4~45@ ",
-" @b45@ @b45@ ",
-" @c5@ @c5@ ",
-" @d@ @d@ ",
-" @@ @@ ",
-" ",
-" ",
-" ",
-" "};
-
-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),
- myVisuGUI(theModule)
-{
- if (!theIsModal) {
- setWFlags(getWFlags() | WDestructiveClose);
- }
- setCaption("Edit Plot 2D Presentation");
- setSizeGripEnabled(true);
-
- QVBoxLayout* TopLayout = new QVBoxLayout (this, 6, 11);
-
- /***************************************************************/
- QFrame* aControlFrame = new QFrame (this);
- aControlFrame->setFrameStyle(QFrame::Box | QFrame::Sunken);
-
- QGridLayout* aControlLay = new QGridLayout (aControlFrame);
- aControlLay->setSpacing(6);
- aControlLay->setMargin(11);
- aControlLay->addRowSpacing(1, 30);
- aControlLay->addRowSpacing(4, 30);
- aControlLay->setRowStretch(1, 1);
- aControlLay->setRowStretch(4, 1);
- 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->setAllColumnsShowFocus(true);
- myStudyLst->setMinimumHeight(130);
- connect(myStudyLst, SIGNAL(selectionChanged()), this, SLOT(onLeftSelected()));
- aControlLay->addMultiCellWidget(myStudyLst, 1, 4, 0, 0);
-
- myRightBtn = new QToolButton (aControlFrame);
- myRightBtn->setIconSet(MYRightPix);
- myRightBtn->setEnabled(false);
- connect(myRightBtn, SIGNAL(clicked()), this, SLOT(onRightClicked()));
- aControlLay->addWidget(myRightBtn, 2, 1);
-
- myLeftBtn = new QToolButton(aControlFrame);
- myLeftBtn->setIconSet(MYLeftPix);
- myLeftBtn->setEnabled(false);
- connect(myLeftBtn, SIGNAL(clicked()), this, SLOT(onLeftClicked()));
- aControlLay->addWidget(myLeftBtn, 3, 1);
-
- 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);
-
- 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());
- 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);
-
- TopLayout->addWidget(GroupButtons);
-
- connect(buttonOk, SIGNAL(clicked()), this, SLOT(accept()));
- connect(buttonCancel, SIGNAL(clicked()), this, SLOT(reject()));
-}
-
-void VisuGUI_EditContainerDlg::initFromPrsObject (VISU::Container_i* theContainer)
-{
- _PTR(Study) aStudy = VISU::GetCStudy(VISU::GetAppStudy(myVisuGUI));
- _PTR(SComponent) aVisuSO = aStudy->FindComponent("VISU");
- if (!aVisuSO) {
- return;
- }
- QValueList<CurveStruct> aStudyCurves;
- QValueList<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();
- _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);
- }
- // Find curves in study
- _PTR(ChildIterator) aIter = aStudy->NewChildIterator(aVisuSO);
- for (aIter->InitEx(true); aIter->More(); aIter->Next()) {
- _PTR(SObject) aSObject = aIter->Value();
- CORBA::Object_var anObject = VISU::ClientSObjectToObject(aSObject);
- VISU::Base_var aVisuObj = VISU::Base::_narrow(anObject);
- if (!CORBA::is_nil(aVisuObj)) {
- if (aVisuObj->GetType() == VISU::TCURVE) {
- _PTR(SObject) aTableSO = aSObject->GetFather();
- CurveStruct aEntry;
- aEntry.TableName = getSObjectName(aTableSO);
- aEntry.CurveName = getSObjectName(aSObject);
- aEntry.CurveEntry = aSObject->GetID().c_str();
- aStudyCurves.append(aEntry);
- }
- }
- }
- //Show Curves which are not in Curve
- QValueList<CurveStruct>::iterator it;
- QValueList<CurveStruct>::iterator it2;
- bool isExist = false;
- for (it = aStudyCurves.begin(); it != aStudyCurves.end(); ++it) {
- for (it2 = aContainerCurves.begin(); it2 != aContainerCurves.end(); ++it2) {
- if (isExist = ((*it).CurveEntry == (*it2).CurveEntry))
- break;
- }
- if (!isExist)
- new QListViewItem(myStudyLst, (*it).TableName, (*it).CurveName, (*it).CurveEntry);
- }
-}
-
-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());
- if (aCurveSO) {
- CORBA::Object_var aObject = VISU::ClientSObjectToObject(aCurveSO);
- if (!CORBA::is_nil(aObject)) {
- VISU::Curve_i* aCurve = dynamic_cast<VISU::Curve_i*>(VISU::GetServant(aObject).in());
- if (aCurve) theContainer->AddCurve(aCurve->_this());
- }
- }
- anItem = anItem->nextSibling();
- }
-}
-
-QString VisuGUI_EditContainerDlg::getSObjectName (_PTR(SObject) theSObject)
-{
- if (!theSObject) return QString("");
-
- _PTR(GenericAttribute) anAttr;
- if (theSObject->FindAttribute(anAttr, "AttributeName")) {
- _PTR(AttributeName) aName (anAttr);
- return QString(aName->Value().c_str());
- }
- return QString("");
-}
-
-void VisuGUI_EditContainerDlg::onLeftClicked()
-{
- QListViewItem* anItem = myContainerLst->firstChild();
- while (anItem) {
- if (anItem->isSelected()) {
- QListViewItem* anTmpItem = anItem;
- anItem = anTmpItem->nextSibling();
- myContainerLst->takeItem(anTmpItem);
- myStudyLst->insertItem(anTmpItem);
- } else {
- anItem = anItem->nextSibling();
- }
- }
-}
-
-void VisuGUI_EditContainerDlg::onRightClicked()
-{
- QListViewItem* anItem = myStudyLst->firstChild();
- while (anItem) {
- if (anItem->isSelected()) {
- QListViewItem* anTmpItem = anItem;
- anItem = anTmpItem->nextSibling();
- myStudyLst->takeItem(anTmpItem);
- myContainerLst->insertItem(anTmpItem);
- } else {
- anItem = anItem->nextSibling();
- }
- }
-}
-
-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);
-}
-
-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);
-}
+++ /dev/null
-// VISU VISUGUI : GUI of VISU component
-//
-// Copyright (C) 2003 CEA/DEN, EDF R&D
-//
-//
-//
-// 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 "SALOMEDSClient_SObject.hxx"
-
-class VisuGUI;
-
-namespace VISU {
- class Container_i;
-}
-
-
-struct CurveStruct {
- QString TableName;
- QString CurveName;
- QString CurveEntry;
-};
-
-
-class VisuGUI_EditContainerDlg: public QDialog
-{
- Q_OBJECT;
-
- public:
- VisuGUI_EditContainerDlg (VisuGUI* theModule, bool theIsModal = true);
- ~VisuGUI_EditContainerDlg() {};
-
- void initFromPrsObject (VISU::Container_i* theContainer);
- void storeToPrsObject (VISU::Container_i* theContainer);
-
- private slots:
- void onLeftClicked();
- void onRightClicked();
- void onLeftSelected();
- void onRightSelected();
-
- private:
- QString getSObjectName (_PTR(SObject) theSObject);
-
- QListView* myStudyLst;
- QListView* myContainerLst;
- QToolButton* myLeftBtn;
- QToolButton* myRightBtn;
-
- VisuGUI* myVisuGUI;
-};
-
-#endif // VISUGUI_EDITCONTAINER_H
+++ /dev/null
-// SALOME SALOMEGUI : GUI of VISU module
-//
-// Copyright (C) 2003 CEA/DEN, EDF R&D
-//
-//
-//
-// 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 "VISUConfig.hh"
-#include "VisuGUI_FileDlg.h"
-#include "SUIT_ResourceMgr.h"
-
-using namespace std;
-
-bool VisuGUI_FileDlg::IsBuild = false;
-
-/*!
-Constructor
-*/
-VisuGUI_FileDlg::VisuGUI_FileDlg (QWidget* parent,
- bool open,
- bool showQuickDir,
- bool modal) :
- 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);
-}
-
-/*!
- Destructor
-*/
-VisuGUI_FileDlg::~VisuGUI_FileDlg()
-{
-}
-
-/*!
- Processes selection : tries to set given path or filename as selection
-*/
-bool VisuGUI_FileDlg::processPath( const QString& path )
-{
- if ( !path.isNull() ) {
- QFileInfo fi( path );
- if ( fi.exists() ) {
- if ( fi.isFile() )
- setSelection( path );
- else if ( fi.isDir() )
- setDir( path );
- return true;
- }
- else {
- if ( QFileInfo( fi.dirPath() ).exists() ) {
- setDir( fi.dirPath() );
- return true;
- }
- }
- }
- return false;
-}
-
-/*!
- Returns the file name for Open/Save [ static ]
-*/
-QString VisuGUI_FileDlg::getFileName( QWidget* parent,
- const QString& initial,
- const QStringList& filters,
- const QString& caption,
- bool open,
- bool showQuickDir,
- SUIT_FileValidator* validator )
-{
- VisuGUI_FileDlg* fd = new VisuGUI_FileDlg( parent, open, showQuickDir, true );
- if ( !caption.isEmpty() )
- fd->setCaption( caption );
- if ( !initial.isEmpty() ) {
- fd->processPath( initial ); // VSR 24/03/03 check for existing of directory has been added to avoid QFileDialog's bug
- }
- fd->setFilters( filters );
- if ( validator )
- fd->setValidator( validator );
- fd->exec();
- QString filename = fd->selectedFile();
-
- VisuGUI_FileDlg::IsBuild = fd->IsChecked();
-
- delete fd;
- qApp->processEvents();
-
- return filename;
-}
-
-bool VisuGUI_FileDlg::IsChecked()
-{
- return myCBuildAll->isChecked();
-}
+++ /dev/null
-// SALOME SALOMEGUI : GUI of VISU module
-//
-// Copyright (C) 2003 CEA/DEN, EDF R&D
-//
-//
-//
-// 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
-
-#include "SUIT_FileDlg.h"
-
-class QCheckBox;
-
-class VisuGUI_FileDlg : public SUIT_FileDlg
-{
- Q_OBJECT;
- public:
- VisuGUI_FileDlg( QWidget* parent,
- bool open,
- bool showQuickDir = true,
- bool modal = true );
- ~VisuGUI_FileDlg();
-
- public:
- static bool IsBuild;
- static QString getFileName( QWidget* parent,
- const QString& initial,
- const QStringList& filters,
- const QString& caption,
- bool open,
- bool showQuickDir = true,
- SUIT_FileValidator* validator = 0);
-
-private:
- QCheckBox* myCBuildAll;
- bool IsChecked();
- bool processPath( const QString& path );
-};
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// File : VisuGUI_IsoSurfacesDlg.cxx
-// Author : Laurent CORNABE & Hubert ROLLAND
-// Module : VISU
-// $Header$
-
-#include "VisuGUI_IsoSurfacesDlg.h"
-
-#include "VisuGUI.h"
-#include "VisuGUI_Tools.h"
-
-#include "SalomeApp_Application.h"
-
-#include "SUIT_Desktop.h"
-#include "SUIT_MessageBox.h"
-
-#include <limits.h>
-
-#include <qlayout.h>
-#include <qvalidator.h>
-#include <qtabwidget.h>
-
-using namespace std;
-
-
-VisuGUI_IsoSurfPane::VisuGUI_IsoSurfPane (QWidget* parent)
- : QVBox(parent)
-{
- QFrame* TopGroup = new QFrame( this, "TopGroup" );
- TopGroup->setFrameStyle(QFrame::Box | QFrame::Sunken);
- TopGroup->setLineWidth(1);
-
- QGridLayout* TopGroupLayout = new QGridLayout(TopGroup);
- TopGroupLayout->setAlignment( Qt::AlignTop );
- TopGroupLayout->setSpacing( 6 );
- TopGroupLayout->setMargin( 11 );
-
- QLabel* LabelNbr = new QLabel (tr("NB_SURFACES"), TopGroup, "LabelNbr");
- TopGroupLayout->addWidget( LabelNbr, 0, 0 );
- NbrIso = new QSpinBox( 1, 100, 1, TopGroup, "NbrIso" );
- NbrIso->setValue( 1 );
- TopGroupLayout->addWidget( NbrIso, 0, 1 );
-
- QLabel* LabelMin = new QLabel (tr("MIN_VALUE"), TopGroup, "LabelMin");
- TopGroupLayout->addWidget(LabelMin, 1, 0);
- //MinIso = new QtxDblSpinBox( -DBL_MAX, DBL_MAX, 0.1, TopGroup );
- MinIso = new QLineEdit( TopGroup );
- MinIso->setValidator( new QDoubleValidator(TopGroup) );
- MinIso->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
- MinIso->setMinimumSize( 70, 0 );
- LabelMin->setBuddy(MinIso);
- TopGroupLayout->addWidget( MinIso, 1, 1 );
-
- QLabel* LabelMax = new QLabel (tr("MAX_VALUE"), TopGroup, "LabelMax");
- TopGroupLayout->addWidget( LabelMax, 2, 0 );
- //MaxIso = new QtxSpinBoxDbl( -DBL_MAX, DBL_MAX, 0.1, TopGroup );
- MaxIso = new QLineEdit( TopGroup );
- MaxIso->setValidator( new QDoubleValidator(TopGroup) );
- MaxIso->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
- MaxIso->setMinimumSize( 70, 0 );
- LabelMax->setBuddy(MaxIso);
- TopGroupLayout->addWidget( MaxIso, 2, 1 );
-
-
-// CBUpdate = new QCheckBox ( tr( "Update scalar bar with these values" ), TopGroup);
-// CBUpdate->setSizePolicy( QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed) );
-// TopGroupLayout->addMultiCellWidget( CBUpdate, 4, 4, 0, 1);
-// CBUpdate->setChecked(false);
- QPushButton* aUpdateBtn = new QPushButton( "Update scalar bar range with these values", TopGroup);
- TopGroupLayout->addMultiCellWidget( aUpdateBtn, 3, 3, 0, 1);
- connect( aUpdateBtn, SIGNAL( clicked() ), this, SLOT(onCBUpdate() ) );
-
-// CBLog = new QCheckBox ( tr( "Logarithmic scaling" ), TopGroup);
-// CBLog->setSizePolicy( QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed) );
-// TopGroupLayout->addMultiCellWidget( CBLog, 3, 3, 0, 1);
-}
-
-void VisuGUI_IsoSurfPane::initFromPrsObject (VISU::IsoSurfaces_i* thePrs)
-{
- NbrIso->setValue(thePrs->GetNbSurfaces());
- MinIso->setText(QString::number(thePrs->GetSubMin()));
- MaxIso->setText(QString::number(thePrs->GetSubMax()));
-// switch(thePrs->GetScaling()){
-// case VISU::LOGARITHMIC :
-// CBLog->setChecked(true);
-// break;
-// default:
-// CBLog->setChecked(false);
-// }
-}
-
-int VisuGUI_IsoSurfPane::storeToPrsObject (VISU::IsoSurfaces_i* thePrs)
-{
- thePrs->SetNbSurfaces(NbrIso->value());
- thePrs->SetSubRange(MinIso->text().toDouble(), MaxIso->text().toDouble());
- return 1;
-// if (CBUpdate->isChecked())
-// {
-// thePrs->SetRange(MinIso->text().toDouble(), MaxIso->text().toDouble());
-// if (CBLog->isChecked())
-// thePrs->SetScaling(VISU::LOGARITHMIC);
-// else
-// thePrs->SetScaling(VISU::LINEAR);
-// }
-}
-
-void VisuGUI_IsoSurfPane::onCBUpdate()
-{
- // if (CBUpdate->isChecked()) {
- myScalarPane->setRange(MinIso->text().toDouble(), MaxIso->text().toDouble(), true);
- // }
-// CBLog->setDisabled(false);
-// else CBLog->setDisabled(true);
-}
-
-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"));
- return false;
- } // else if (/* CBUpdate->isChecked() && CBLog->isChecked() && */
-// (MinIso->text().toDouble() <=0 || MaxIso->text().toDouble() <=0) ) {
-// SUIT_MessageBox::warn1( this,
-// tr("WRN_VISU"),
-// tr("WRN_LOGARITHMIC_RANGE_ISOSURF"),
-// tr("BUT_OK"));
-// return false;
-// }
- return true;
-}
-
-
-
-
-
-/*!
- Constructor
-*/
-VisuGUI_IsoSurfacesDlg::VisuGUI_IsoSurfacesDlg (SalomeApp_Module* theModule)
- : QDialog(VISU::GetDesktop(theModule), "VisuGUI_IsoSurfacesDlg", true,
- WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu)
-{
- setCaption(tr("DEFINE_ISOSURFACES"));
- setSizeGripEnabled( TRUE );
-
- QVBoxLayout* TopLayout = new QVBoxLayout(this);
- TopLayout->setSpacing( 6 );
- TopLayout->setMargin(11);
-
- QTabWidget* aTabBox = new QTabWidget(this);
- myIsoPane = new VisuGUI_IsoSurfPane(this);
- myIsoPane->setMargin( 5 );
- aTabBox->addTab(myIsoPane, "Iso Surface");
- myScalarPane = new VisuGUI_ScalarBarPane(this, false);
- myIsoPane->setScalarBarPane(myScalarPane);
- myScalarPane->setMargin( 5 );
- aTabBox->addTab(myScalarPane, "Scalar Bar");
-
- TopLayout->addWidget(aTabBox);
-
- 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 );
-
- TopLayout->addWidget(GroupButtons);
-
- // signals and slots connections
- connect( buttonOk, SIGNAL( clicked() ), this, SLOT( accept() ) );
- connect( buttonCancel, SIGNAL( clicked() ), this, SLOT( reject() ) );
-}
-
-void VisuGUI_IsoSurfacesDlg::accept()
-{
- if (myIsoPane->check() && myScalarPane->check())
- QDialog::accept();
-}
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// File : VisuGUI_IsoSurfacesDlg.h
-// Author : Laurent CORNABE & Hubert ROLLAND
-// Module : VISU
-// $Header$
-
-#ifndef VISUGUI_ISOSURFACESDLG_H
-#define VISUGUI_ISOSURFACESDLG_H
-
-#include "VisuGUI_ScalarBarDlg.h"
-#include "VISU_IsoSurfaces_i.hh"
-
-#include <qdialog.h>
-#include <qlabel.h>
-#include <qgroupbox.h>
-#include <qspinbox.h>
-#include <qpushbutton.h>
-#include <qcheckbox.h>
-#include <qlineedit.h>
-
-class SalomeApp_Module;
-
-class VisuGUI_IsoSurfPane : public QVBox
-{
- Q_OBJECT;
-
- public:
- VisuGUI_IsoSurfPane (QWidget* parent);
- ~VisuGUI_IsoSurfPane() {};
-
- void initFromPrsObject(VISU::IsoSurfaces_i* thePrs);
- int storeToPrsObject(VISU::IsoSurfaces_i* thePrs);
-
- void setScalarBarPane(VisuGUI_ScalarBarPane* theScalarPane) {myScalarPane = theScalarPane;}
- VisuGUI_ScalarBarPane* getScalarBarPane() {return myScalarPane;}
-
- bool check();
-
- protected slots:
- void onCBUpdate();
-
- private:
- QLineEdit* MinIso;
- QLineEdit* MaxIso;
- QSpinBox* NbrIso;
- VisuGUI_ScalarBarPane* myScalarPane;
-};
-
-
-class VisuGUI_IsoSurfacesDlg : public QDialog
-{
- Q_OBJECT;
-
- public:
- VisuGUI_IsoSurfacesDlg (SalomeApp_Module* theModule);
- ~VisuGUI_IsoSurfacesDlg() {};
-
- void initFromPrsObject(VISU::IsoSurfaces_i* thePrs)
- {myScalarPane->initFromPrsObject(thePrs); myIsoPane->initFromPrsObject(thePrs);}
-
- int storeToPrsObject(VISU::IsoSurfaces_i* thePrs)
- {return myScalarPane->storeToPrsObject(thePrs) && myIsoPane->storeToPrsObject(thePrs);}
-
- protected slots:
- void accept();
-
- private:
- VisuGUI_IsoSurfPane* myIsoPane;
- VisuGUI_ScalarBarPane* myScalarPane;
-};
-
-#endif // VISUGUI_ISOSURFACESDLG_H
+++ /dev/null
-// SALOME VisuGUI : implementation of desktop and GUI kernel
-//
-// Copyright (C) 2003 CEA/DEN, EDF R&D
-//
-//
-//
-// File : VisuGUI_NameDlg.cxx
-// Author : Vadim SANDLER
-// Module : SALOME
-// $Header$
-
-#include "VisuGUI_NameDlg.h"
-
-#include <SUIT_Session.h>
-#include <SUIT_Application.h>
-#include <SUIT_Desktop.h>
-#include <SUIT_Tools.h>
-
-#include <qgroupbox.h>
-#include <qlabel.h>
-#include <qlineedit.h>
-#include <qpushbutton.h>
-#include <qlayout.h>
-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 )
-{
- setCaption( tr("TLT_RENAME") );
- setSizeGripEnabled( 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() );
- GroupC1Layout->setAlignment( Qt::AlignTop );
- GroupC1Layout->setMargin( 11 ); GroupC1Layout->setSpacing( 6 );
-
- QLabel* TextLabel = new QLabel( GroupC1, "TextLabel1" );
- TextLabel->setText( tr( "NAME_LBL" ) );
- GroupC1Layout->addWidget( TextLabel );
-
- myLineEdit = new QLineEdit( GroupC1, "LineEdit1" );
- 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() );
- GroupButtonsLayout->setAlignment( Qt::AlignTop );
- GroupButtonsLayout->setMargin( 11 ); GroupButtonsLayout->setSpacing( 6 );
-
- myButtonOk = new QPushButton( GroupButtons, "buttonOk" );
- myButtonOk->setText( tr( "BUT_OK" ) );
- myButtonOk->setAutoDefault( TRUE ); myButtonOk->setDefault( TRUE );
- GroupButtonsLayout->addWidget( myButtonOk );
-
- GroupButtonsLayout->addStretch();
-
- myButtonCancel = new QPushButton( GroupButtons, "buttonCancel" );
- myButtonCancel->setText( tr( "BUT_CANCEL" ) );
- myButtonCancel->setAutoDefault( TRUE );
- GroupButtonsLayout->addWidget( myButtonCancel );
- /***************************************************************/
-
- topLayout->addWidget( GroupC1 );
- topLayout->addWidget( GroupButtons );
-
- // signals and slots connections
- connect( myButtonOk, SIGNAL( clicked() ), this, SLOT( accept() ) );
- connect( myButtonCancel, SIGNAL( clicked() ), this, SLOT( reject() ) );
-
- /* Move widget on the botton right corner of main widget */
- SUIT_Tools::centerWidget( this, parent );
-}
-
-/*!
- Destructor
-*/
-VisuGUI_NameDlg::~VisuGUI_NameDlg()
-{
-}
-
-/*!
- Sets name
-*/
-void VisuGUI_NameDlg::setName( const QString& name )
-{
- myLineEdit->setText( name );
- myLineEdit->end(false);
- myLineEdit->home(true);
-}
-
-/*!
- Returns name entered by user
-*/
-QString VisuGUI_NameDlg::name()
-{
- return myLineEdit->text();
-}
-
-void VisuGUI_NameDlg::accept()
-{
- if ( name().stripWhiteSpace().isEmpty() )
- return;
- QDialog::accept();
-}
-
-/*!
- Creates modal <Rename> dialog and returns name entered [ static ]
-*/
-QString VisuGUI_NameDlg::getName( QWidget* parent, const QString& oldName )
-{
- QString n;
- VisuGUI_NameDlg* dlg = new VisuGUI_NameDlg( parent );
- if ( !oldName.isNull() )
- dlg->setName( oldName );
- if ( dlg->exec() == QDialog::Accepted )
- n = dlg->name();
- delete dlg;
- return n;
-}
+++ /dev/null
-// SALOME VisuGUI : implementation of desktop and GUI kernel
-//
-// Copyright (C) 2003 CEA/DEN, EDF R&D
-//
-//
-//
-// File : VisuGUI_NameDlg.h
-// Author : Vadim SANDLER
-// Module : SALOME
-// $Header$
-
-#ifndef VisuGUI_NAMEDLG_H
-#define VisuGUI_NAMEDLG_H
-
-#include <qdialog.h>
-
-class QLineEdit;
-class QPushButton;
-
-//=================================================================================
-// class : VisuGUI_NameDlg
-// purpose : Common <Rename> dialog box class
-//=================================================================================
-class VisuGUI_NameDlg : public QDialog
-{
- Q_OBJECT
-
-public:
- VisuGUI_NameDlg( QWidget* parent = 0 );
- ~VisuGUI_NameDlg();
-
- void setName( const QString& name );
- QString name();
-
- static QString getName( QWidget* parent = 0, const QString& oldName = QString::null );
-
-protected slots:
- void accept();
-
-private:
- QPushButton* myButtonOk;
- QPushButton* myButtonCancel;
- QLineEdit* myLineEdit;
-};
-
-#endif // VisuGUI_NAMEDLG_H
SALOME_ListIO selected;
mgr->selectedObjects(selected);
SALOME_ListIteratorOfListIO Itinit(selected);
+ SVTK_RenderWindowInteractor* rw = dynamic_cast<SVTK_RenderWindowInteractor*>(vf->getRWInteractor());
- if (vf)
+ if (rw)
for (; Itinit.More(); Itinit.Next()) {
- vf->highlight(Itinit.Value(), true);
+ rw->highlight(Itinit.Value(), true);
}
}
+++ /dev/null
-
-#ifndef DIALOGBOX_OFFSET_H
-#define DIALOGBOX_OFFSET_H
-
-#include "VISU_Prs3d_i.hh"
-
-// QT Includes
-#include <qdialog.h>
-#include <qptrlist.h>
-
-class QCheckBox;
-class QtxDblSpinBox;
-class VisuGUI;
-
-struct OffsetStruct {
- float myOffset[3];
-};
-
-class VisuGUI_OffsetDlg: public QDialog
-{
- Q_OBJECT
- public:
- VisuGUI_OffsetDlg (VisuGUI* theModule);
- ~VisuGUI_OffsetDlg() {};
-
- void addPresentation (VISU::Prs3d_i* thePrs);
- int getPrsCount() const { return myPrsList.count(); }
-
- void setOffset (const float* theOffset);
- void getOffset (float* theOffset) const;
- bool isToSave() const;
-
- public slots:
- void onReset();
-
- protected slots:
- virtual void accept();
- virtual void reject();
- void onApply();
-
- private:
- void updateOffset (VISU::Prs3d_i* thePrs, float* theOffset);
-
- VisuGUI * myModule;
-
- QtxDblSpinBox * myDxEdt;
- QtxDblSpinBox * myDyEdt;
- QtxDblSpinBox * myDzEdt;
- QCheckBox * mySaveChk;
-
- QPtrList<VISU::Prs3d_i> myPrsList;
- QValueList<OffsetStruct> myOldOffsets;
-};
-
-#endif // DIALOGBOX_OFFSET_H
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// File : VisuGUI_Plot3DDlg.h
-// Author : Laurent CORNABE & Hubert ROLLAND
-// Module : VISU
-// $Header$
-
-#ifndef VISUGUI_PLOT3D_H
-#define VISUGUI_PLOT3D_H
-
-#include "VisuGUI_ScalarBarDlg.h"
-
-#include "VISU_Plot3D_i.hh"
-
-#include <qhbuttongroup.h>
-
-class SalomeApp_Module;
-
-namespace VISU {
- class Plot3D_i;
-};
-
-class VISU_Plot3DPL;
-class SVTK_ViewWindow;
-class SALOME_Actor;
-class QtxDblSpinBox;
-
-class VisuGUI_Plot3DPane : public QVBox
-{
- Q_OBJECT
-
- public:
- VisuGUI_Plot3DPane(QWidget* parent);
- ~VisuGUI_Plot3DPane();
-
- void initFromPrsObject (VISU::Plot3D_i* thePrs);
- int storeToPrsObject (VISU::Plot3D_i* thePrs);
-
- bool check();
-
- VISU::Plot3D_i* GetPrs() { return myPrs; }
-
- private:
- bool myInitFromPrs;
- SALOME_Actor* myPreviewActor;
- SVTK_ViewWindow* myViewWindow;
- VISU::Plot3D_i* myPrs;
- VISU_Plot3DPL* myPipeCopy;
-
- void storePrsParams();
- void restorePrsParams();
-
- QButtonGroup * GBOrientation;
- QLabel * LabelRot1;
- QLabel * LabelRot2;
- QtxDblSpinBox * Rot1;
- QtxDblSpinBox * Rot2;
- QtxDblSpinBox * PositionSpn;
- QCheckBox * RelativeChkB;
- QtxDblSpinBox * ScaleSpn;
- QHButtonGroup * GBPrsType;
- QSpinBox * NbContoursSpn;
- QCheckBox * PreviewChkB;
-
- private slots:
-
- void orientationChanged( int );
- void onRelativePos( bool );
- void onPrsType( int );
- void onPositionSpn();
- void updatePreview();
-};
-
-
-class VisuGUI_Plot3DDlg : public QDialog
-{
- Q_OBJECT
-
- public:
- VisuGUI_Plot3DDlg (SalomeApp_Module* theModule);
- ~VisuGUI_Plot3DDlg() {};
-
- void initFromPrsObject (VISU::Plot3D_i* thePrs)
- { myScalarPane->initFromPrsObject(thePrs); myIsoPane->initFromPrsObject(thePrs); }
-
- int storeToPrsObject (VISU::Plot3D_i* thePrs)
- { return myScalarPane->storeToPrsObject(thePrs) && myIsoPane->storeToPrsObject(thePrs); }
-
- protected slots:
- void accept();
- void reject();
-
- private:
- VisuGUI_Plot3DPane* myIsoPane;
- VisuGUI_ScalarBarPane* myScalarPane;
-};
-
-#endif // VISUGUI_PLOT3D_H
class QVBox;
class QLineEdit;
class QTable;
-class SalomeApp_SelectionMgr;
+class LightApp_SelectionMgr;
class SalomeApp_Application;
class VisuGUI_SelectionDlg: public QDialog {
QLabel* myDYLbl;
QLabel* myDZLbl;
- SalomeApp_SelectionMgr* mySelectionMgr;
+ LightApp_SelectionMgr* mySelectionMgr;
bool myFl;
};
+++ /dev/null
-// VISU VISUGUI : GUI of VISU component
-//
-// Copyright (C) 2003 CEA/DEN, EDF R&D
-//
-//
-//
-// File : VisuGUI_StreamLinesDlg.cxx
-// Author : Vitaly SMETANNIKOV
-// Module : VISU
-
-#include "VisuGUI_StreamLinesDlg.h"
-
-#include "VisuGUI.h"
-#include "VisuGUI_Tools.h"
-
-#include "VISU_Mesh_i.hh"
-#include "VISU_Gen_i.hh"
-#include "VISU_StreamLines_i.hh"
-#include "VISU_StreamLinesPL.hxx"
-#include "VISU_Actor.h"
-
-#include "SalomeApp_Application.h"
-#include "SalomeApp_SelectionMgr.h"
-
-#include "SVTK_ViewWindow.h"
-
-#include "SUIT_Desktop.h"
-#include "SUIT_ResourceMgr.h"
-#include "SUIT_MessageBox.h"
-
-#include "SALOME_ListIO.hxx"
-
-#include <SALOMEDSClient_SObject.hxx>
-
-#include <limits.h>
-#include <qlayout.h>
-#include <qgroupbox.h>
-#include <qcolordialog.h>
-#include <qtabwidget.h>
-
-using namespace std;
-
-VisuGUI_StreamLinesDlg::VisuGUI_StreamLinesDlg (SalomeApp_Module* theModule)
- : QDialog(VISU::GetDesktop(theModule), "VisuGUI_StreamLinesDlg", false,
- WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu),
- myVisuGUI(theModule)
-{
- myPrs = NULL;
- setCaption(tr("DLG_TITLE"));
- setSizeGripEnabled(TRUE);
-
- QVBoxLayout* aBoxLayout = new QVBoxLayout(this);
- aBoxLayout->setSpacing( 6 );
- aBoxLayout->setMargin( 11 );
-
- QTabWidget* aTabBox = new QTabWidget(this);
-
- QFrame* aTopBox = new QFrame(this);
- aTopBox->setMargin( 11 );
- QGridLayout* TopLayout = new QGridLayout( aTopBox );
- TopLayout->setAlignment( Qt::AlignTop );
- TopLayout->setSpacing( 8 );
- TopLayout->setMargin( 11 );
-
- // Source box
- QGroupBox* aSourceBox = new QGroupBox (tr("SOURCE_GRP"), aTopBox);
- aSourceBox->setColumnLayout(0, Qt::Vertical);
- QGridLayout* aSrcLayout = new QGridLayout( aSourceBox->layout() );
- aSrcLayout->setSpacing( 6 );
- aSrcLayout->setMargin( 0 );
-
- 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);
- aSrcLayout->addWidget(myUseSrcCombo, 0, 1);
-
- mySrcCombo = new QComboBox(aSourceBox);
- mySrcCombo->setEnabled((myUseSrcCombo->currentItem() == 0));
-
- connect(myUseSrcCombo, SIGNAL(activated(int)), this, SLOT(onSourceTypeChange(int)));
-
- // Find All prs obj
- //SUIT_Study* aActiveStudy = VISU::(myVisuGUI);
- _PTR(Study) aActiveStudy = VISU::GetCStudy(VISU::GetAppStudy(myVisuGUI));
- SalomeApp_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());
- aSObject = aSObject->GetFather();
- aSObject = aSObject->GetFather();
- aSObject = aSObject->GetFather();
- aSObject = aSObject->GetFather();
- mySelectionObj = aSObject;
- CORBA::Object_var anObject = VISU::ClientSObjectToObject(mySelectionObj);
- VISU::Result_var aResult;
- if (CORBA::is_nil(anObject)) {
- mySelectionObj = mySelectionObj->GetFather();
- }
- _PTR(ChildIterator) aIter = aActiveStudy->NewChildIterator(mySelectionObj);
-
- for (aIter->InitEx(true); aIter->More(); aIter->Next()) {
- _PTR(SObject) aChildSObj = aIter->Value();
- CORBA::Object_var aChildObject = VISU::ClientSObjectToObject(aChildSObj);
-
- if (!CORBA::is_nil(aChildObject)) {
- VISU::Prs3d_var aPrsObj = VISU::Prs3d::_narrow(aChildObject);
- if (!CORBA::is_nil(aPrsObj)) { // if this is a Prs object
- if ((aPrsObj->GetType() != VISU::TSTREAMLINES) &&
- (aPrsObj->GetType() != VISU::TMESH)) {
- _PTR(GenericAttribute) anAttr;
- if (aChildSObj->FindAttribute(anAttr, "AttributeName")) {
- _PTR(AttributeName) aName (anAttr);
- myPrsLst += QString(aName->Value().c_str());
- myPrsList.append(aPrsObj);
- continue;
- }
- }
- }
- }
- // else { // This is not a Prs object
- _PTR(GenericAttribute) anAttr;
- if (aChildSObj->FindAttribute(anAttr, "AttributeComment")) {
- _PTR(AttributeComment) aComment (anAttr);
- string aComm = aComment->Value();
- QString strIn (aComm.c_str());
- VISU::Storable::TRestoringMap aMap;
- VISU::Storable::StrToMap(strIn,aMap);
- bool isExist;
- VISU::VISUType aType = (VISU::VISUType)VISU::Storable::FindValue(aMap,"myType",&isExist).toInt();
- if (isExist) {
- if ((aType == VISU::TFAMILY) || (aType == VISU::TGROUP) || (aType == VISU::TENTITY)) {
- _PTR(GenericAttribute) aNameAttr;
- if (aChildSObj->FindAttribute(aNameAttr, "AttributeName")) {
- _PTR(AttributeName) aName (aNameAttr);
- VISU::Prs3d_var aPrsObj = VISU::Prs3d::_narrow(aChildObject);
- switch (aType) {
- case VISU::TFAMILY:
- myFamilisLst += QString(aName->Value().c_str());
- myFamilyList.append(aPrsObj);
- break;
- case VISU::TGROUP:
- myGroupsLst += QString(aName->Value().c_str());
- myGroupList.append(aPrsObj);
- break;
- case VISU::TENTITY:
- myEntitiesLst += QString(aName->Value().c_str());
- myEntityList.append(aPrsObj);
- break;
- }
- }
- }
- }
- }
- }
- }
- }
-
- // connect(myUseSrcChk, SIGNAL(toggled(bool)), mySrcCombo, SLOT(setEnabled(bool)));
- aSrcLayout->addMultiCellWidget(mySrcCombo, 1, 1, 0, 1);
-
- QLabel* aPercentLbl = new QLabel (tr("LBL_USED_POINTS"), aSourceBox);
- aSrcLayout->addWidget(aPercentLbl, 2, 0);
-
- myPntPercent = new QtxDblSpinBox( 0, 1, 0.1, aSourceBox );
- aSrcLayout->addWidget(myPntPercent, 2, 1);
-
- TopLayout->addMultiCellWidget(aSourceBox, 0, 0, 0, 1);
-
- 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->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->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->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
- TopLayout->addWidget(myPropTime, 3, 1);
- connect(myPropTime, SIGNAL(valueChanged(double)), this, SLOT(PropagationTimeChanged(double)));
-
- 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");
- TopLayout->addWidget(myDirCombo, 4, 1);
-
- myUseScalar = new QCheckBox (tr("MAGNITUDE_COLORING_CHK"), aTopBox, "UseMagn");
- 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() ) );
- TopLayout->addWidget( SelColor, 5, 1);
-
- aTabBox->addTab(aTopBox, "Stream Lines");
- myScalarPane = new VisuGUI_ScalarBarPane(this, false);
- myScalarPane->setMargin( 5 );
- aTabBox->addTab(myScalarPane, "Scalar Bar");
-
- aBoxLayout->addWidget(aTabBox);
-
- QGroupBox* aGroupButtons = new QGroupBox( this, "GroupButtons" );
- aGroupButtons->setColumnLayout(0, Qt::Vertical );
- aGroupButtons->layout()->setSpacing( 0 );
- aGroupButtons->layout()->setMargin( 0 );
-
- QGridLayout* aGroupButtonsLayout = new QGridLayout( aGroupButtons->layout() );
- aGroupButtonsLayout->setAlignment( Qt::AlignTop );
- aGroupButtonsLayout->setSpacing( 6 );
- aGroupButtonsLayout->setMargin( 11 );
-
- QPushButton* aOkBtn = new QPushButton( tr( "&OK" ), aGroupButtons, "buttonOk" );
- 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" );
- aCancelBtn->setAutoDefault( TRUE );
- aGroupButtonsLayout->addWidget( aCancelBtn, 0, 2 );
- connect( aOkBtn, SIGNAL( clicked() ), this, SLOT( accept() ) );
- connect( aCancelBtn, SIGNAL( clicked() ), this, SLOT( reject() ) );
-
- aBoxLayout->addWidget(aGroupButtons);
-
- enableSetColor();
-}
-
-
-
-void VisuGUI_StreamLinesDlg::initFromPrsObject (VISU::StreamLines_i* thePrs)
-{
- myScalarPane->initFromPrsObject(thePrs);
-
- myPrs = thePrs;
- static int aNbOfSteps = 30;
- VISU_StreamLinesPL* aStreamLinesPL = thePrs->GetStreamLinesPL();
- float aMin, aMax;
- aMin = aStreamLinesPL->GetMinPropagationTime();
- aMax = aStreamLinesPL->GetMaxPropagationTime();
- myPropTime->setRange(aMin,aMax);
- myPropTime->setValue(aStreamLinesPL->GetPropagationTime());
- myPropTime->setLineStep((aMax-aMin)/aNbOfSteps);
-
- aMin = aStreamLinesPL->GetMinStepLength();
- aMax = aStreamLinesPL->GetMaxStepLength();
- myStepLen->setRange(aMin,aMax);
- myStepLen->setValue(aStreamLinesPL->GetStepLength());
- myStepLen->setLineStep((aMax-aMin)/aNbOfSteps);
-
- aMin = aStreamLinesPL->GetMinIntegrationStep();
- aMax = aStreamLinesPL->GetMaxIntegrationStep();
- myIntegStepLen->setRange(aMin,aMax);
- myIntegStepLen->setValue(aStreamLinesPL->GetIntegrationStep());
- myIntegStepLen->setLineStep((aMax-aMin)/aNbOfSteps);
-
- switch (thePrs->GetDirection()) {
- case VISU::StreamLines::FORWARD:
- myDirCombo->setCurrentItem(0);
- break;
- case VISU::StreamLines::BACKWARD:
- myDirCombo->setCurrentItem(1);
- break;
- case VISU::StreamLines::BOTH:
- myDirCombo->setCurrentItem(2);
- }
- myUseScalar->setChecked(thePrs->IsColored());
- myPntPercent->setValue(thePrs->GetUsedPoints());
-
- mySrcCombo->setEnabled(false);
- QString aSrcEntry = thePrs->GetSourceEntry();
-
- SALOMEDS::Color anOldColor = thePrs->GetColor();
- QColor aColor = QColor(int(255*anOldColor.R),int(255*anOldColor.G),int(255*anOldColor.B));
- setColor(aColor);
- enableSetColor();
-
-#define INITPRS(PRSLIST, PRSNUM) \
- 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()) { \
- onSourceTypeChange(PRSNUM); \
- myUseSrcCombo->setCurrentItem(PRSNUM); \
- mySrcCombo->setEnabled(true); \
- mySrcCombo->setCurrentItem(i); \
- return; \
- } \
- }
-
- if (!aSrcEntry.isEmpty()) {
- INITPRS(myEntityList, 1);
- INITPRS(myFamilyList, 2);
- INITPRS(myGroupList, 3);
- INITPRS(myPrsList, 4);
- }
-#undef INITPRS
-}
-
-int VisuGUI_StreamLinesDlg::storeToPrsObject (VISU::StreamLines_i* thePrs)
-{
- bool isAccepted = myScalarPane->storeToPrsObject(thePrs);
- if (isAccepted) {
- thePrs->ShowColored(myUseScalar->isChecked());
- if (!thePrs->IsColored()) {
- SALOMEDS::Color aColor;
- aColor.R = myColor.red()/255.;
- aColor.G = myColor.green()/255.;
- aColor.B = myColor.blue()/255.;
- thePrs->SetColor(aColor);
- }
-
- VISU::StreamLines::Direction aDirection = VISU::StreamLines::BOTH;
- switch (myDirCombo->currentItem()) {
- case 0:
- aDirection = VISU::StreamLines::FORWARD;
- break;
- case 1:
- aDirection = VISU::StreamLines::BACKWARD;
- break;
- case 2:
- aDirection = VISU::StreamLines::BOTH;
- }
-
- VISU::Prs3d_var aPrs;
- int aSrcSelection = myUseSrcCombo->currentItem();
- int aSrcItem = (mySrcCombo->count() > 0)? mySrcCombo->currentItem() : -1;
- if ((aSrcSelection > 0) && (aSrcItem > -1)) {
- VISU::VISUType aType;
- QString aName;
- switch (aSrcSelection) {
- case 1: // Entity
- aPrs = myEntityList[aSrcItem];
- aType = VISU::TENTITY;
- aName = myEntitiesLst[aSrcItem];
- break;
- case 2: // Family
- aPrs = myFamilyList[aSrcItem];
- aType = VISU::TFAMILY;
- aName = myFamilisLst[aSrcItem];
- break;
- case 3: // Group
- aPrs = myGroupList[aSrcItem];
- aType = VISU::TGROUP;
- aName = myGroupsLst[aSrcItem];
- break;
- case 4: // Presentation
- aPrs = myPrsList[aSrcItem];
- break;
- }
- if (CORBA::is_nil(aPrs) && aSrcSelection != 4) {
- aPrs = createMesh(aType, aName);
- }
- }
- isAccepted = thePrs->SetParams(myIntegStepLen->value(),
- myPropTime->value(),
- myStepLen->value(),
- aPrs,
- myPntPercent->value(),
- aDirection);
- }
- //if (!isAccepted)
- // SUIT_MessageBox::warn1(VisuGUI::application()->desktop(), tr("WRN_VISU"),
- // tr("ERR_CANT_BUILD_PRESENTATION"),
- // tr("BUT_OK"));
- return isAccepted;
-}
-
-/*!
- Sets color
-*/
-void VisuGUI_StreamLinesDlg::setColor( QColor color )
-{
- myColor = color;
- SelColor->setPaletteBackgroundColor(myColor);
-}
-
-
-/*!
- Called when "Select Color" buttonx clicked
-*/
-void VisuGUI_StreamLinesDlg::setVColor()
-{
- QColor cnew = QColorDialog::getColor( myColor, this );
- if ( cnew.isValid() )
- setColor( cnew );
-}
-
-
-/*!
- Enbled/disables magnitude coloring
-*/
-void VisuGUI_StreamLinesDlg::enableMagnColor( bool enable )
-{
- myUseScalar->setEnabled( enable );
- enableSetColor();
-}
-
-/*!
- Called when "Magnitude Coloring" check box clicked
-*/
-void VisuGUI_StreamLinesDlg::enableSetColor()
-{
- SelColor->setEnabled(!myUseScalar->isChecked() );
-}
-
-void VisuGUI_StreamLinesDlg::StepLengthChanged(double theValue){
-}
-
-void VisuGUI_StreamLinesDlg::IntegrationStepChanged(double theValue) {
-}
-
-void VisuGUI_StreamLinesDlg::PropagationTimeChanged(double theValue) {
- myStepLen->setMaxValue(theValue);
-}
-
-void VisuGUI_StreamLinesDlg::onSourceTypeChange(int theIndex) {
- mySrcCombo->clear();
- if (theIndex == 0) {
- mySrcCombo->setEnabled(false);
- return;
- } else
- mySrcCombo->setEnabled(true);
-
- switch(theIndex) {
- case 1: // Entity
- mySrcCombo->insertStringList(myEntitiesLst);
- return;
- case 2: // Family
- mySrcCombo->insertStringList(myFamilisLst);
- return;
- case 3: // Group
- mySrcCombo->insertStringList(myGroupsLst);
- return;
- case 4: // Presentation
- mySrcCombo->insertStringList(myPrsLst);
- return;
- }
-}
-
-
-VISU::Mesh_ptr VisuGUI_StreamLinesDlg::createMesh (VISU::VISUType theType, QString theName)
-{
- return VISU::Mesh::_nil();
-/*
- CORBA::Object_var anObject = VISU::ClientSObjectToObject(mySelectionObj);
- VISU::Result_var aResult;
- if (!CORBA::is_nil(anObject)) {
- aResult = VISU::Result::_narrow(anObject);
- }
- if (CORBA::is_nil(aResult)) {
- SUIT_MessageBox::warn1(VisuGUI::application()->desktop(), tr("VISU_WARNING"),
- tr("WRN_NO_AVAILABLE_DATA"),
- tr("BUT_OK"));
- return VISU::Mesh::_nil();
- }
- SALOMEDSClient_ChildIterator* aIter = VisuGUI::GetStudyDocument()->NewChildIterator( mySelectionObj );
- VISU::Storable::TRestoringMap aMap;
-
- for (aIter->InitEx(true); aIter->More(); aIter->Next() ) {
- SALOMEDSClient_SObject* aChildSObj = aIter->Value();
- SALOMEDSClient_GenericAttribute* anAttr;
- if (aChildSObj->FindAttribute(anAttr, "AttributeComment")) {
- SALOMEDSClient_AttributeComment* aComment = dynamic_cast<SALOMEDSClient_AttributeComment*>( anAttr );
- CORBA::String_var aComm = aComment->Value().c_str();
- QString strIn(aComm.in());
- aMap.clear();
- VISU::Storable::StrToMap(strIn,aMap);
- bool isExist;
- VISU::VISUType aType = (VISU::VISUType)VISU::Storable::FindValue(aMap,"myType",&isExist).toInt();
- if (isExist) {
- if (aType != theType) continue;
-
- SALOMEDSClient_GenericAttribute* aNameAttr;
- if ( aChildSObj->FindAttribute(aNameAttr, "AttributeName") ) {
- SALOMEDSClient_AttributeName* aName = dynamic_cast<SALOMEDSClient_AttributeName*>(aNameAttr);
- if (QString(aName->Value()) == theName) break; //use current map
- }
- }
- }
- }
- VISU::Mesh_var aMesh;
- QString aMeshName = VISU::Storable::FindValue(aMap,"myMeshName");
- switch (theType) {
- case VISU::TFAMILY:
- {
- VISU::Entity anEntity = (VISU::Entity)VISU::Storable::FindValue(aMap,"myEntityId").toInt();
- aMesh = VisuGUI::GetVisuGen()->FamilyMeshOnEntity(aResult,aMeshName.latin1(),anEntity,theName.latin1());
- }
- break;
- case VISU::TGROUP:
- {
- aMesh = VisuGUI::GetVisuGen()->GroupMesh(aResult,aMeshName.latin1(), theName.latin1());
- }
- break;
- case VISU::TENTITY:
- {
- VISU::Entity anEntity = (VISU::Entity)VISU::Storable::FindValue(aMap,"myId").toInt();
- aMesh = VisuGUI::GetVisuGen()->MeshOnEntity(aResult,aMeshName.latin1(),anEntity);
- }
- break;
- }
- if(!CORBA::is_nil(aMesh)){ // Create Actor
- VISU::Mesh_i* pPresent = dynamic_cast<VISU::Mesh_i*>(VISU::GetServant(aMesh).in());
- if(SVTK_ViewWindow* vf = VISU::GetViewWindow()){
- try{
- pPresent->SetPresentationType(VISU::POINT);
- VISU_Actor *anActor = pPresent->CreateActor();
- vf->AddActor(anActor);
- }catch(...){
- SUIT_MessageBox::warn1 ( VisuGUI::application()->desktop(), tr("VISU_WARNING"),
- tr("ERR_CANT_CREATE_ACTOR"),
- tr("BUT_OK") );
- }
- }
- } else {
- SUIT_MessageBox::warn1(VisuGUI::application()->desktop(), tr("VISU_WARNING"),
- tr("ERR_CANT_BUILD_PRESENTATION"),
- tr("BUT_OK"));
- }
- return aMesh._retn();
-*/
-}
-
-void VisuGUI_StreamLinesDlg::accept() {
- if (myScalarPane->check())
- QDialog::accept();
-}
+++ /dev/null
-// VISU VISUGUI : GUI of VISU component
-//
-// Copyright (C) 2003 CEA/DEN, EDF R&D
-//
-//
-//
-// File : VisuGUI_StreamLinesDlg.h
-// Author : Vitaly SMETANNIKOV
-// Module : VISU
-
-#ifndef VISUGUI_STREAMLINESDLG_H
-#define VISUGUI_STREAMLINESDLG_H
-
-#include "VisuGUI_ScalarBarDlg.h"
-
-#include <qdialog.h>
-#include <qcombobox.h>
-#include <qcheckbox.h>
-#include <qstringlist.h>
-
-class SalomeApp_Module;
-class QtxDblSpinBox;
-
-namespace VISU{
- class StreamLines_i;
-}
-
-class VisuGUI_StreamLinesDlg: public QDialog
-{
- Q_OBJECT
-public:
- VisuGUI_StreamLinesDlg (SalomeApp_Module* theModule);
- ~VisuGUI_StreamLinesDlg() {};
-
- void initFromPrsObject(VISU::StreamLines_i* thePrs);
- int storeToPrsObject(VISU::StreamLines_i* thePrs);
- void setColor( QColor color );
- void enableMagnColor( bool enable );
-
-protected slots:
- void accept();
-
-private slots:
- void onSelectionActive(bool theActive);
- void StepLengthChanged(double theValue);
- void IntegrationStepChanged(double theValue);
- void PropagationTimeChanged(double theValue);
- void onSourceTypeChange(int theIndex);
-
-private:
- VISU::Mesh_ptr createMesh(VISU::VISUType theType, QString theName);
-
- QtxDblSpinBox* myStepLen;
- QtxDblSpinBox* myIntegStepLen;
- QtxDblSpinBox* myPropTime;
- QComboBox* myDirCombo;
- QCheckBox* myUseScalar;
- QPushButton* SelColor;
- QColor myColor;
- //QCheckBox* myUseSrcChk;
- QComboBox* myUseSrcCombo;
- QtxDblSpinBox* myPntPercent;
- QComboBox* mySrcCombo;
-
- VisuGUI_ScalarBarPane* myScalarPane;
-
- QValueList<VISU::Prs3d_var> myPrsList;
- QValueList<VISU::Prs3d_var> myEntityList;
- QValueList<VISU::Prs3d_var> myFamilyList;
- QValueList<VISU::Prs3d_var> myGroupList;
- QStringList myEntitiesLst;
- QStringList myFamilisLst;
- QStringList myGroupsLst;
- QStringList myPrsLst;
-
- _PTR(SObject) mySelectionObj;
- VISU::StreamLines_i* myPrs;
- SalomeApp_Module* myVisuGUI;
-
-private slots:
- void setVColor();
- void enableSetColor();
-};
-
-#endif //VISUGUI_STREAMLINESDLG_H
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// File : VisuGUI_SweepPrefDlg.cxx
-// Author : Laurent CORNABE & Hubert ROLLAND
-// Module : VISU
-// $Header$
-
-using namespace std;
-#include "VisuGUI_SweepPrefDlg.h"
-#include <qlayout.h>
-
-/*!
- Constructor
-*/
-VisuGUI_SweepPrefDlg::VisuGUI_SweepPrefDlg( QWidget* parent, const char* name, bool modal, WFlags fl )
- : QDialog( parent, name, modal, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu )
-{
- if (!name)
- setName("VisuGUI_SweepPrefDlg");
- setCaption(tr("DLG_TITLE"));
- setSizeGripEnabled(TRUE);
-
- QVBoxLayout* TopLayout = new QVBoxLayout( this );
- TopLayout->setSpacing( 6 );
- TopLayout->setMargin( 11 );
-
- TopGroup = new QGroupBox( this, "TopGroup" );
- TopGroup->setColumnLayout(0, Qt::Vertical );
- TopGroup->layout()->setSpacing( 0 );
- TopGroup->layout()->setMargin( 0 );
- QGridLayout* TopGroupLayout = new QGridLayout( TopGroup->layout() );
- TopGroupLayout->setAlignment( Qt::AlignTop );
- TopGroupLayout->setSpacing( 6 );
- TopGroupLayout->setMargin( 11 );
-
- TimeLabel = new QLabel (tr("LBL_TIME_STEP"), TopGroup, "TimeLabel");
- TimeSpin = new QtxDblSpinBox( 0.1, 1000.0, 0.1, TopGroup );
- TimeSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
- TimeSpin->setMinimumSize( 70, 0 );
- TimeSpin->setValue( 0.2 );
-
- CyclesLabel = new QLabel (tr("LBL_NB_CYCLES"), TopGroup, "CyclesLabel");
- CyclesSpin = new QSpinBox( 1, 100, 1, TopGroup, "CyclesSpin" );
- CyclesSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
- CyclesSpin->setMinimumSize( 70, 0 );
- CyclesSpin->setValue( 1 );
-
- StepsLabel = new QLabel (tr("LBL_NB_STEPS"), TopGroup, "StepsLabel");
- StepsSpin = new QSpinBox( 1, 200, 1, TopGroup, "StepsSpin" );
- StepsSpin->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
- StepsSpin->setMinimumSize( 70, 0 );
- StepsSpin->setValue( 20 );
-
- TopGroupLayout->addWidget( TimeLabel, 0, 0 );
- TopGroupLayout->addWidget( TimeSpin, 0, 1 );
- TopGroupLayout->addWidget( CyclesLabel, 1, 0 );
- TopGroupLayout->addWidget( CyclesSpin, 1, 1 );
- TopGroupLayout->addWidget( StepsLabel, 2, 0 );
- TopGroupLayout->addWidget( StepsSpin, 2, 1 );
-
- GroupButtons = new QGroupBox( this, "GroupButtons" );
- 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 );
-
- 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 );
- buttonCancel = new QPushButton( tr( "&Cancel" ) , GroupButtons, "buttonCancel" );
- buttonCancel->setAutoDefault( TRUE );
- GroupButtonsLayout->addWidget( buttonCancel, 0, 2 );
-
- TopLayout->addWidget( TopGroup, 0, 0);
- TopLayout->addWidget( GroupButtons, 1, 0 );
-
- // signals and slots connections ===========================================
- connect( buttonOk, SIGNAL( clicked() ), this, SLOT( accept() ) );
- connect( buttonCancel, SIGNAL( clicked() ), this, SLOT( reject() ) );
-}
-
-/*!
- Destructor
-*/
-VisuGUI_SweepPrefDlg::~VisuGUI_SweepPrefDlg()
-{
-}
-
-/*!
- Sets Time step
-*/
-void VisuGUI_SweepPrefDlg::setTimeStep( double step )
-{
- TimeSpin->setValue( step );
-}
-
-/*!
- Gets Time step
-*/
-double VisuGUI_SweepPrefDlg::getTimeStep()
-{
- return TimeSpin->value();
-}
-
-/*!
- Sets Nb of cycles
-*/
-void VisuGUI_SweepPrefDlg::setNbCycles( int nbc )
-{
- CyclesSpin->setValue( nbc );
-}
-
-/*!
- Gets Nb of cycles
-*/
-int VisuGUI_SweepPrefDlg::getNbCycles()
-{
- return CyclesSpin->value();
-}
-
-/*!
- Sets Nb of Steps
-*/
-void VisuGUI_SweepPrefDlg::setNbSteps( int nbs )
-{
- StepsSpin->setValue( nbs );
-}
-
-/*!
- Gets Nb of Steps
-*/
-int VisuGUI_SweepPrefDlg::getNbSteps()
-{
- return StepsSpin->value();
-}
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// File : VisuGUI_SweepPrefDlg.h
-// Author : Laurent CORNABE & Hubert ROLLAND
-// Module : VISU
-// $Header$
-
-#ifndef VISUGUI_SWEEPPREFDLG_H
-#define VISUGUI_SWEEPPREFDLG_H
-
-#include <qdialog.h>
-#include <qgroupbox.h>
-#include <qpushbutton.h>
-#include <qspinbox.h>
-#include <qlabel.h>
-#include "QtxDblSpinBox.h"
-
-class VisuGUI_SweepPrefDlg : public QDialog
-{
- Q_OBJECT
-
-public:
- VisuGUI_SweepPrefDlg( QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 );
- ~VisuGUI_SweepPrefDlg();
-
- void setTimeStep( double step );
- double getTimeStep();
- void setNbCycles( int nbc );
- int getNbCycles();
- void setNbSteps ( int nbs );
- int getNbSteps ();
-
-private:
- QGroupBox* TopGroup;
- QLabel* TimeLabel;
- QtxDblSpinBox* TimeSpin;
- QLabel* CyclesLabel;
- QSpinBox* CyclesSpin;
- QLabel* StepsLabel;
- QSpinBox* StepsSpin;
- QGroupBox* GroupButtons;
- QPushButton* buttonOk;
- QPushButton* buttonCancel;
-};
-
-#endif // VISUGUI_SWEEPPREFDLG_H
return aStr;
}
- //------------------------------------------------------------
+ //************************************************************
// Selection
CORBA::Object_var
GetSelectedObj(const SalomeApp_Study* theStudy,
return CORBA::Object::_nil();
}
- VISU::Prs3d_i*
- GetPrsToModify(const SalomeApp_Module* theModule,
- Handle(SALOME_InteractiveObject)* theIO,
- VISU::Storable::TRestoringMap* theMap)
- {
- if (CheckLock(GetCStudy(GetAppStudy(theModule))))
- return NULL;
-
- CORBA::Object_var anObject = GetSelectedObj(theModule, theIO);
- if (CORBA::is_nil(anObject))
- return NULL;
-
- PortableServer::ServantBase_var aServant = VISU::GetServant(anObject);
- if (!aServant.in())
- return NULL;
-
- return dynamic_cast<VISU::Prs3d_i*>(aServant.in());
- }
-
void
Add(SalomeApp_SelectionMgr* theSelectionMgr,
const Handle(SALOME_InteractiveObject)& theIO)
_PTR(Study) theStudy,
_PTR(SObject) theSObject)
{
- SalomeApp_Study* study = GetAppStudy( theModule );
- study->deleteReferencesTo( theSObject );
-
_PTR(ChildIterator) aChildIter = theStudy->NewChildIterator(theSObject);
for (aChildIter->InitEx(true); aChildIter->More(); aChildIter->Next()) {
_PTR(SObject) aChildSObject = aChildIter->Value();
- study->deleteReferencesTo( aChildSObject );
CORBA::Object_var aChildObj = VISU::ClientSObjectToObject(aChildSObject);
ErasePrs(theModule, aChildObj);
}
}
} else {
// Remove aSObject together with all its sub-objects
-
VISU::RemoveFromStudy(theSObject,
false, // remove not only IOR attribute, but Object With Children
false); // not Destroy() sub-objects
CORBA::Object_var GetSelectedObj(const SalomeApp_Module* theModule,
Handle(SALOME_InteractiveObject)* theIO = NULL,
VISU::Storable::TRestoringMap* theMap = NULL);
- VISU::Prs3d_i* GetPrsToModify(const SalomeApp_Module* theModule,
- Handle(SALOME_InteractiveObject)* theIO = NULL,
- VISU::Storable::TRestoringMap* theMap = NULL);
void Add(SalomeApp_SelectionMgr* theSelectionMgr,
const Handle(SALOME_InteractiveObject)& theIO);
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// File : VisuGUI_VectorsDlg.cxx
-// Author : Laurent CORNABE & Hubert ROLLAND
-// Module : VISU
-// $Header$
-
-#include "VisuGUI_VectorsDlg.h"
-
-#include "VisuGUI.h"
-//#include "VisuGUI_Selection.h"
-#include "VisuGUI_Tools.h"
-
-#include "VISU_Vectors_i.hh"
-
-#include "SalomeApp_Module.h"
-#include "SUIT_Desktop.h"
-
-#include <qlayout.h>
-#include <qcolordialog.h>
-#include <qtabwidget.h>
-
-using namespace std;
-
-/*!
- Constructor
-*/
-VisuGUI_VectorsDlg::VisuGUI_VectorsDlg (SalomeApp_Module* theModule)
- : QDialog(VISU::GetDesktop(theModule), "VisuGUI_VectorsDlg", true,
- WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu)
-{
- setCaption(tr("DLG_TITLE"));
- setSizeGripEnabled(TRUE);
-
- QVBoxLayout* TopLayout = new QVBoxLayout( this );
- TopLayout->setSpacing( 6 );
- TopLayout->setMargin( 11 );
-
- QTabWidget* aTabBox = new QTabWidget(this);
-
- QVBox* aBox = new QVBox(this);
- aBox->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() );
- TopGroupLayout->setAlignment( Qt::AlignTop );
- TopGroupLayout->setSpacing( 6 );
- TopGroupLayout->setMargin( 11 );
-
- // Scale factor
- ScaleLabel = new QLabel (tr("LBL_SCALE_FACTOR"), TopGroup, "ScaleLabel");
-
- ScalFact = new QtxDblSpinBox( 1e-20, 1.0E+38, 0.1, TopGroup );
- ScalFact->setPrecision( 5 );
- ScalFact->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
- ScalFact->setValue( 0.1 );
-
- TopGroupLayout->addWidget( ScaleLabel, 0, 0 );
- TopGroupLayout->addWidget( ScalFact, 0, 1 );
-
- // Line width
- LineWidLabel = new QLabel (tr("LBL_LINE_WIDTH"), TopGroup, "LineWidLabel");
-
- LinWid = new QSpinBox( 1, 10, 1, TopGroup, "LinWid" );
- LinWid->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) );
- LinWid->setValue( 1 );
-
- TopGroupLayout->addWidget( LineWidLabel, 1, 0 );
- TopGroupLayout->addWidget( LinWid, 1, 1 );
-
- // Color
- UseMagn = new QCheckBox (tr("MAGNITUDE_COLORING_CHK"), TopGroup, "UseMagn");
- //UseMagn->setText(tr("MAGNITUDE_COLORING_CHK"));
- SelColor = new QPushButton (tr("SEL_COLOR_BTN"), TopGroup, "SelColor");
-
- /* ColorLab = new QLabel( TopGroup, "ColorLab" );
- ColorLab->setFixedSize( SelColor->sizeHint().height(), SelColor->sizeHint().height() );
- ColorLab->setFrameStyle( QLabel::Plain | QLabel::Box );
- */
- TopGroupLayout->addWidget( UseMagn, 2, 0 );
- //TopGroupLayout->addWidget( ColorLab, 2, 1 );
- TopGroupLayout->addWidget( SelColor, 2, 1 );
-
- // Gliphs
- UseGlyph = new QCheckBox (tr("USE_GLYPHS_CHK"), TopGroup, "UseGlyph");
-
- 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() );
- TypeGlyphLayout->setAlignment( Qt::AlignTop );
- TypeGlyphLayout->setSpacing( 6 );
- TypeGlyphLayout->setMargin( 11 );
-
- RBArrows = new QRadioButton (tr("ARROWS_BTN") , TypeGlyph, "RBArrows");
- TypeGlyphLayout->addWidget( RBArrows, 0, 0 );
- RBCones2 = new QRadioButton (tr("CONES2_BTN"), TypeGlyph, "RBCones2");
- TypeGlyphLayout->addWidget( RBCones2, 1, 0 );
- RBCones6 = new QRadioButton (tr("CONES6_BTN"), TypeGlyph, "RBCones6");
- 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() );
- PosGlyphLayout->setAlignment( Qt::AlignTop );
- PosGlyphLayout->setSpacing( 6 );
- PosGlyphLayout->setMargin( 11 );
-
- RBTail = new QRadioButton (tr("TAIL_BTN" ), PosGlyph, "RBTail");
- PosGlyphLayout->addWidget( RBTail, 0, 0 );
- RBCent = new QRadioButton (tr("CENTER_BTN"), PosGlyph, "RBCent");
- PosGlyphLayout->addWidget( RBCent, 1, 0 );
- RBHead = new QRadioButton (tr("HEAD_BTN" ), PosGlyph, "RBHead");
- PosGlyphLayout->addWidget( RBHead, 2, 0 );
-
- TopGroupLayout->addMultiCellWidget( UseGlyph, 3, 3, 0, 2 );
- TopGroupLayout->addWidget( TypeGlyph, 4, 0 );
- TopGroupLayout->addMultiCellWidget( PosGlyph, 4, 4, 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() );
- GroupButtonsLayout->setAlignment( Qt::AlignTop );
- GroupButtonsLayout->setSpacing( 6 );
- GroupButtonsLayout->setMargin( 11 );
-
- 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 );
- buttonCancel = new QPushButton( tr( "&Cancel" ) , GroupButtons, "buttonCancel" );
- buttonCancel->setAutoDefault( TRUE );
- GroupButtonsLayout->addWidget( buttonCancel, 0, 2 );
-
- // top layout
- aTabBox->addTab(aBox, "Vectors");
- myScalarPane = new VisuGUI_ScalarBarPane(this, false);
- myScalarPane->setMargin( 5 );
- aTabBox->addTab(myScalarPane, "Scalar Bar");
-
- TopLayout->addWidget( aTabBox );
- TopLayout->addWidget( GroupButtons );
-
- // signals and slots connections
- connect( UseGlyph, SIGNAL( clicked() ), this, SLOT( enableGlyphType() ) );
- 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() ) );
-
- // default values
- UseMagn->setChecked( TRUE );
- UseGlyph->setChecked( TRUE );
- RBArrows->setChecked( TRUE );
- RBTail->setChecked( TRUE );
- setColor( QColor( 255, 0, 0 ) );
- enableGlyphType();
- enableSetColor();
-}
-
-
-
-void VisuGUI_VectorsDlg::initFromPrsObject(VISU::Vectors_i* thePrs) {
- myScalarPane->initFromPrsObject(thePrs);
- setScaleFactor(thePrs->GetScale());
- setLineWidth((int)thePrs->GetLineWidth());
- setUseMagnColor(thePrs->IsColored());
- SALOMEDS::Color anOldColor = thePrs->GetColor();
- QColor aColor = QColor(int(255*anOldColor.R),int(255*anOldColor.G),int(255*anOldColor.B));
- setColor(aColor);
-
- if (thePrs->GetGlyphType() != VISU::Vectors::NONE) {
- setUseGlyphs(true);
- setGlyphType(thePrs->GetGlyphType());
- setGlyphPos(thePrs->GetGlyphPos());
- } else
- setUseGlyphs(false);
-
- enableSetColor();
-}
-
-
-int VisuGUI_VectorsDlg::storeToPrsObject(VISU::Vectors_i* thePrs) {
- myScalarPane->storeToPrsObject(thePrs);
- thePrs->SetScale(getScaleFactor());
- thePrs->SetLineWidth(getLineWidth());
- thePrs->ShowColored(getUseMagnColor());
- if(!thePrs->IsColored()){
- SALOMEDS::Color aColor;
- aColor.R = myColor.red()/255.;
- aColor.G = myColor.green()/255.;
- aColor.B = myColor.blue()/255.;
- thePrs->SetColor(aColor);
- }
- if (getUseGlyphs()) {
- thePrs->SetGlyphPos(getGlyphPos());
- thePrs->SetGlyphType(getGlyphType());
- } else
- thePrs->SetGlyphType(VISU::Vectors::NONE);
- return 1;
-}
-
-
-
-/*!
- Called when "Use glyphs" check box clicked
-*/
-void VisuGUI_VectorsDlg::enableGlyphType()
-{
- TypeGlyph->setEnabled( UseGlyph->isChecked() );
- PosGlyph->setEnabled( UseGlyph->isChecked() );
-}
-
-/*!
- Called when "Magnitude Coloring" check box clicked
-*/
-void VisuGUI_VectorsDlg::enableSetColor()
-{
- SelColor->setEnabled(!UseMagn->isChecked() );
- //ColorLab->setEnabled( UseMagn->isEnabled() && !UseMagn->isChecked() );
-}
-
-/*!
- Called when "Select Color" buttonx clicked
-*/
-void VisuGUI_VectorsDlg::setVColor()
-{
- QColor cnew = QColorDialog::getColor( myColor, this );
- if ( cnew.isValid() )
- setColor( cnew );
-}
-
-/*!
- Sets Scale factor
-*/
-void VisuGUI_VectorsDlg::setScaleFactor( double sf )
-{
- ScalFact->setValue( sf );
-}
-
-/*!
- Gets Scale factor
-*/
-double VisuGUI_VectorsDlg::getScaleFactor()
-{
- return ScalFact->value();
-}
-
-/*!
- Sets Line width
-*/
-void VisuGUI_VectorsDlg::setLineWidth( int lw )
-{
- LinWid->setValue( lw );
-}
-
-/*!
- Gets Line width
-*/
-int VisuGUI_VectorsDlg::getLineWidth()
-{
- return LinWid->value();
-}
-
-/*!
- Sets "Use Magnitude Coloring" flag
-*/
-void VisuGUI_VectorsDlg::setUseMagnColor( bool on )
-{
- UseMagn->setChecked( on );
- enableSetColor();
-}
-
-/*!
- Gets "Use Magnitude Coloring" flag state
-*/
-bool VisuGUI_VectorsDlg::getUseMagnColor()
-{
- return UseMagn->isChecked();
-}
-
-/*!
- Sets "Use Glyphs" flag
-*/
-void VisuGUI_VectorsDlg::setUseGlyphs( bool on )
-{
- UseGlyph->setChecked( on );
- enableGlyphType();
-}
-
-/*!
- Gets "Use Glyphs" flag state
-*/
-bool VisuGUI_VectorsDlg::getUseGlyphs()
-{
- return UseGlyph->isChecked();
-}
-
-/*!
- Sets color
-*/
-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 );*/
-}
-
-/*!
- Sets glyphs type : 0 - arrows, 1 - cones2, 2 - cones6
-*/
-void VisuGUI_VectorsDlg::setGlyphType(VISU::Vectors::GlyphType type )
-{
- if ( type == VISU::Vectors::CONE2)
- RBCones2->setChecked( true );
- else if ( type == VISU::Vectors::CONE6)
- RBCones6->setChecked( true );
- else
- RBArrows->setChecked( true );
-}
-
-/*!
- Gets glyphs type : 0 - arrows, 1 - cones2, 2 - cones6
-*/
-VISU::Vectors::GlyphType VisuGUI_VectorsDlg::getGlyphType()
-{
- VISU::Vectors::GlyphType type;
- if ( RBCones2->isChecked() )
- type = VISU::Vectors::CONE2;
- else if ( RBCones6->isChecked() )
- type = VISU::Vectors::CONE6;
- else
- type = VISU::Vectors::ARROW;
- return type;
-}
-
-/*!
- Sets glyph position : -1 - tail, 0 - center, 1 - head
-*/
-void VisuGUI_VectorsDlg::setGlyphPos(VISU::Vectors::GlyphPos pos)
-{
- if ( pos == VISU::Vectors::TAIL)
- RBTail->setChecked(true);
- else if ( pos == VISU::Vectors::HEAD)
- RBHead->setChecked(true);
- else
- RBCent->setChecked(true);
-}
-
-/*!
- Gets glyph position : -1 - tail, 0 - center, 1 - head
-*/
-VISU::Vectors::GlyphPos VisuGUI_VectorsDlg::getGlyphPos()
-{
- VISU::Vectors::GlyphPos pos;
- if ( RBTail->isChecked() )
- pos = VISU::Vectors::TAIL;
- else if ( RBHead->isChecked() )
- pos = VISU::Vectors::HEAD;
- else
- pos = VISU::Vectors::CENTER;
- return pos;
-}
-
-/*!
- Enbled/disables magnitude coloring
-*/
-void VisuGUI_VectorsDlg::enableMagnColor( bool enable )
-{
- UseMagn->setEnabled( enable );
- enableSetColor();
-}
-
-
-void VisuGUI_VectorsDlg::accept() {
- if (myScalarPane->check()) QDialog::accept();
-}
-
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-//
-// File : VisuGUI_VectorsDlg.h
-// Author : Laurent CORNABE & Hubert ROLLAND
-// Module : VISU
-// $Header$
-
-#ifndef VISUGUI_VECTORSDLG_H
-#define VISUGUI_VECTORSDLG_H
-
-#include "VisuGUI_ScalarBarDlg.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 "SALOMEconfig.h"
-#include CORBA_CLIENT_HEADER(VISU_Gen)
-
-class SalomeApp_Module;
-
-namespace VISU{
- class Vectors_i;
-}
-
-class VisuGUI_VectorsDlg : public QDialog
-{
- Q_OBJECT
-
-public:
- VisuGUI_VectorsDlg (SalomeApp_Module* theModule);
- ~VisuGUI_VectorsDlg() {};
-
- void setScaleFactor( double sf );
- double getScaleFactor();
- void setLineWidth( int lw );
- int getLineWidth();
- void setUseMagnColor( bool on );
- bool getUseMagnColor();
- void setUseGlyphs( bool on );
- bool getUseGlyphs();
- void setColor( QColor color);
- QColor getColor();
-
- void setGlyphType(VISU::Vectors::GlyphType type );
- VISU::Vectors::GlyphType getGlyphType();
-
- void setGlyphPos(VISU::Vectors::GlyphPos pos);
- VISU::Vectors::GlyphPos getGlyphPos();
- void enableMagnColor( bool enable );
-
- void initFromPrsObject(VISU::Vectors_i* thePrs);
- int storeToPrsObject(VISU::Vectors_i* thePrs);
-
-protected slots:
- void accept();
-
-private:
- QGroupBox* TopGroup;
- QCheckBox* UseMagn;
- //QLabel* ColorLab;
- QPushButton* SelColor;
- QLabel* LineWidLabel;
- QSpinBox* LinWid;
- QLabel* ScaleLabel;
- QtxDblSpinBox* ScalFact;
- QCheckBox* UseGlyph;
- QButtonGroup* TypeGlyph;
- QRadioButton* RBCones6;
- QRadioButton* RBCones2;
- QRadioButton* RBArrows;
- QButtonGroup* PosGlyph;
- QRadioButton* RBTail;
- QRadioButton* RBCent;
- QRadioButton* RBHead;
- QGroupBox* GroupButtons;
- QPushButton* buttonOk;
- QPushButton* buttonCancel;
-
- QColor myColor;
- VisuGUI_ScalarBarPane* myScalarPane;
-
-private slots:
- void enableGlyphType();
- void setVColor();
- void enableSetColor();
-};
-
-#endif // VISUGUI_VECTORSDLG_H
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File : VISUConfig.cc
-// Author : Alexey PETROV
-// Module : VISU
-
-#include "VISUConfig.hh"
-
-#include "SUIT_ResourceMgr.h"
-#include "SUIT_Session.h"
-
-#include <SALOMEDSClient_GenericAttribute.hxx>
-#include <SALOMEDSClient_AttributeIOR.hxx>
-
-#include <SalomeApp_Application.h>
-
-using namespace std;
-
-#ifdef _DEBUG_
-static int MYDEBUG = 0;
-#else
-static int MYDEBUG = 0;
-#endif
-
-namespace VISU{
-
- SUIT_Session*
- GetSession()
- {
- return SUIT_Session::session();
- }
-
- SUIT_ResourceMgr*
- GetResourceMgr()
- {
- return GetSession()->resourceMgr();
- }
-
- //===========================================================================
-
- QMutex* Base_i::myMutex = NULL; //apo - &VISUMutex;
- CORBA::ORB_var Base_i::myOrb;
- PortableServer::POA_var Base_i::myPoa;
- SALOME_NamingService* Base_i::myNamingService;
- SALOME_LifeCycleCORBA* Base_i::myEnginesLifeCycle;
- VISU_Gen_i* Base_i::myVisuGenImpl;
-
- Base_i::Base_i() {}
-
- Base_i::~Base_i() {}
-
- char* Base_i::GetID(){
- if(myID == ""){
- CORBA::Object_var anObject = _this();
- CORBA::String_var anIOR = myOrb->object_to_string(anObject);
- myID = anIOR.in();
- }
- return CORBA::string_dup(myID.c_str());
- }
-
- //===========================================================================
- static int mySCnt = 0;
- static QMutex aMutex(TRUE);
-
- Mutex::Mutex(QMutex* theMutex): myMutex(&aMutex){
- if(MYDEBUG) MESSAGE("Mutex::Mutex : "<<!mySCnt);
- if(!mySCnt++)
- myMutex->lock();
- }
-
- Mutex::~Mutex(){
- if(!(--mySCnt))
- myMutex->unlock();
- if(MYDEBUG) MESSAGE("Mutex::~Mutex : "<<!mySCnt);
- }
-
-
- //===========================================================================
- static Storable::TCallbackMap VisuStoreMap;
- string Storable::ToString(){
- ostringstream strOut;
- Storable::DataToStream( strOut, "myComment", GetComment() );
- ToStream(strOut);
- strOut<<ends;
- if(MYDEBUG) MESSAGE("Storable::ToString - "<<strOut.str());
- return strOut.str();
- }
-
- void Storable::Registry(const char* theComment, TStorableEngine theEngine)
- {
- if(!VisuStoreMap.insert(TCallbackMap::value_type(theComment,theEngine)).second){
- if(MYDEBUG) MESSAGE("Storable::Registry >> dupliacte registring !!!");
- throw std::logic_error("Storable::Registry >> dupliacte registring !!!");
- }
- }
-
- void Storable::StrToMap(const QString& theStr, VISU::Storable::TRestoringMap& theMap){
- if(0 && MYDEBUG) MESSAGE("Storable::StrToMap : string="<<theStr);
- QStringList strList = QStringList::split( ";", theStr, false );
- for ( int i = 0; i < strList.count(); i++ ) {
- QString next = strList[ i ];
- int pos = next.find("=");
- QString aName, aValue;
- if ( pos < 0 ) {
- aName = next.stripWhiteSpace();
- aValue = "";
- }
- else {
- aName = next.left( pos ).stripWhiteSpace();
- aValue = next.mid( pos+1 );
- if ( aValue.isNull() )
- aValue = "";
- }
- if ( !aName.isEmpty() )
- theMap.insert( TRestoringMap::value_type( aName.latin1(), aValue ) );
- }
- }
-
- void Storable::DataToStream(ostringstream& theStr, const QString& theName, const QString& theVal) {
- QString output = ( !theName.isNull() ? theName : QString("") )
- + QString( "=" )
- + ( !theVal.isNull() ? theVal : QString("") );
- theStr<<output.latin1()<<";";
- }
-
- void Storable::DataToStream(ostringstream& theStr, const QString& theName, const int theVal) {
- QString output = ( !theName.isNull() ? theName : QString("") )
- + QString( "=" )
- + QString::number( theVal );
- theStr<<output.latin1()<<";";
- }
-
- void Storable::DataToStream(ostringstream& theStr, const QString& theName, const double theVal) {
- QString output = ( !theName.isNull() ? theName : QString("") )
- + QString( "=" )
- + QString::number( theVal );
- theStr<<output.latin1()<<";";
- }
- Storable* Storable::Create(SALOMEDS::SObject_ptr theSObject,
- const string& thePrefix, const string& theLocalPersistentID)
- {
- try{
- QString strIn( theLocalPersistentID.c_str() );
- TRestoringMap aMap;
- StrToMap(strIn,aMap);
- bool isExist;
- QString aComment = VISU::Storable::FindValue(aMap,"myComment",&isExist);
- if ( isExist ) {
- TCallbackMap::const_iterator i = VisuStoreMap.find(aComment.latin1());
- if(MYDEBUG) MESSAGE("Storable::Create - "<<aComment.latin1()<<" "<<(i != VisuStoreMap.end()));
- if(i == VisuStoreMap.end()) return NULL;
- return (i->second)(theSObject,thePrefix,aMap);
- }
- }catch(std::logic_error& exc){
- INFOS("Follow exception was occured :\n"<<exc.what());
- }catch(...){
- INFOS("Unknown exception was occured!");
- }
- return NULL;
- }
-
- QString Storable::FindValue(const TRestoringMap& theMap, const string& theArg, bool* isFind)
- {
- TRestoringMap::const_iterator i = theMap.find(theArg);
- if(i == theMap.end()) {
- if(MYDEBUG) MESSAGE("Storable::Init >> there is no value for "<<theArg);
- if(isFind != NULL) *isFind = false;
- //throw std::logic_error(string("Storable::Init >> there is no value for ") + theArg);
- static QString BAD_VALUE("NULL");
- return BAD_VALUE;
- }
- if(isFind != NULL) *isFind = true;
- return i->second;
- }
-
-
- //===========================================================================
- PortableServer::ServantBase_var GetServant(CORBA::Object_ptr theObject){
- if(CORBA::is_nil(theObject)) return NULL;
- try{
- PortableServer::POA_ptr aPOA = Base_i::GetPOA();
- PortableServer::Servant aServant = aPOA->reference_to_servant(theObject);
- return aServant;
- } catch (...) {
- INFOS("GetServant - Unknown exception was occured!!!");
- return NULL;
- }
- }
-
-
- //===========================================================================
- CORBA::Object_var SObjectToObject(SALOMEDS::SObject_ptr theSObject){
- SALOMEDS::GenericAttribute_var anAttr;
- CORBA::Object_var anObj;
- try{
- if(theSObject->FindAttribute(anAttr, "AttributeIOR")){
- SALOMEDS::AttributeIOR_var anIOR = SALOMEDS::AttributeIOR::_narrow(anAttr);
- CORBA::String_var aValue = anIOR->Value();
- CORBA::ORB_ptr anORB = Base_i::GetORB();
- if(strcmp(aValue,"") != 0)
- anObj = anORB->string_to_object(aValue);
- }
- }catch(...){
- INFOS("SObjectToObject - Unknown exception was occured!!!");
- }
- return anObj;
- }
-
- //===========================================================================
- CORBA::Object_var ClientSObjectToObject(_PTR(SObject) theSObject){
- _PTR(GenericAttribute) anAttr;
- CORBA::Object_var anObj;
- try{
- if(theSObject->FindAttribute(anAttr, "AttributeIOR")){
- _PTR(AttributeIOR) anIOR = anAttr;
- CORBA::String_var aValue = anIOR->Value().c_str();
- CORBA::ORB_ptr anORB = Base_i::GetORB();
- if(strcmp(aValue,"") != 0)
- anObj = anORB->string_to_object(aValue);
- }
- }catch(...){
- INFOS("ClientSObjectToObject - Unknown exception was occured!!!");
- }
- return anObj;
- }
-
-
- //===========================================================================
- string FindEntryWithComment(SALOMEDS::Study_ptr theStudyDocument, const char* theStartEntry,
- const char* theComment, int IsAllLevels)
- {
- SALOMEDS::ChildIterator_var anIter =
- theStudyDocument->NewChildIterator(theStudyDocument->FindObjectID(theStartEntry));
- anIter->InitEx(IsAllLevels);
- SALOMEDS::SObject_var aFieldSO;
- for(;anIter->More();anIter->Next()) {
- SALOMEDS::GenericAttribute_var anAttr;
- if (anIter->Value()->FindAttribute(anAttr,"AttributeComment")) {
- SALOMEDS::AttributeComment_var aCmnt = SALOMEDS::AttributeComment::_narrow(anAttr);
- CORBA::String_var aString = aCmnt->Value();
- string aValue(aString);
- if (aValue == theComment) {
- aFieldSO = anIter->Value();
- aString = aFieldSO->GetID();
- aValue = aString;
- return aValue;
- }
- }
- }
- return "";
- }
- //===========================================================================
- string CreateAttributes(SALOMEDS::Study_ptr theStudyDocument,
- const char* theFatherEntry, const char* theRefFatherEntry,
- const char* theIOR, const char* theName,
- const char* thePersistentRef, const char* theComment,
- CORBA::Boolean theCreateNew)
- {
- SALOMEDS::StudyBuilder_var aStudyBuilder = theStudyDocument->NewBuilder();
- SALOMEDS::SObject_var aFather = theStudyDocument->FindObjectID(theFatherEntry);
- SALOMEDS::SObject_var newObj;
- if (theCreateNew) newObj = aStudyBuilder->NewObject(aFather);
- else newObj = aFather;
- SALOMEDS::GenericAttribute_var anAttr;
- if(strcmp(theIOR,"") != 0){
- anAttr = aStudyBuilder->FindOrCreateAttribute(newObj, "AttributeIOR");
- SALOMEDS::AttributeIOR_var anIOR = SALOMEDS::AttributeIOR::_narrow(anAttr);
- anIOR->SetValue(theIOR);
- }
- if(strcmp(theName,"") != 0){
- anAttr = aStudyBuilder->FindOrCreateAttribute(newObj, "AttributeName");
- SALOMEDS::AttributeName_var aName = SALOMEDS::AttributeName::_narrow(anAttr);
- aName->SetValue(theName);
- }
- if(strcmp(thePersistentRef,"") != 0){
- anAttr = aStudyBuilder->FindOrCreateAttribute(newObj, "AttributePersistentRef");
- SALOMEDS::AttributePersistentRef_var aPRef = SALOMEDS::AttributePersistentRef::_narrow(anAttr);
- aPRef->SetValue(thePersistentRef);
- }
- if(strcmp(theComment,"") != 0){
- anAttr = aStudyBuilder->FindOrCreateAttribute(newObj, "AttributeComment");
- SALOMEDS::AttributeComment_var aCmnt = SALOMEDS::AttributeComment::_narrow(anAttr);
- aCmnt->SetValue(theComment);
- if(MYDEBUG) INFOS("CreateAttributes - Comment = "<<theComment);
- }
- if(strcmp(theRefFatherEntry,"") != 0){
- SALOMEDS::SObject_var aRefFather = theStudyDocument->FindObjectID(theRefFatherEntry);
- SALOMEDS::SObject_var anObj = aStudyBuilder->NewObject(aRefFather);
- aStudyBuilder->Addreference(anObj,newObj);
- }
- CORBA::String_var anEntry = newObj->GetID();
- string aRet(anEntry);
- if(MYDEBUG)
- INFOS("CreateAttributes - StudyId = "<<theStudyDocument->StudyId()<<"; anEntry = "<<aRet<<"; IOR = '"<<theIOR<<"'");
- return aRet;
- }
- string CreateAttributes(_PTR(Study) theStudyDocument,
- const char* theFatherEntry, const char* theRefFatherEntry,
- const char* theIOR, const char* theName,
- const char* thePersistentRef, const char* theComment,
- CORBA::Boolean theCreateNew)
- {
- _PTR(StudyBuilder) aStudyBuilder = theStudyDocument->NewBuilder();
- _PTR(SObject) aFather = theStudyDocument->FindObjectID(theFatherEntry);
- _PTR(SObject) newObj;
- if (theCreateNew)
- newObj = aStudyBuilder->NewObject(aFather);
- else
- newObj = aFather;
-
- _PTR(GenericAttribute) anAttr;
- if (strcmp(theIOR, "") != 0) {
- anAttr = aStudyBuilder->FindOrCreateAttribute(newObj, "AttributeIOR");
- _PTR(AttributeIOR) anIOR (anAttr);
- anIOR->SetValue(theIOR);
- }
- if (strcmp(theName, "") != 0) {
- anAttr = aStudyBuilder->FindOrCreateAttribute(newObj, "AttributeName");
- _PTR(AttributeName) aName (anAttr);
- aName->SetValue(theName);
- }
- if (strcmp(thePersistentRef, "") != 0) {
- anAttr = aStudyBuilder->FindOrCreateAttribute(newObj, "AttributePersistentRef");
- _PTR(AttributePersistentRef) aPRef (anAttr);
- aPRef->SetValue(thePersistentRef);
- }
- if (strcmp(theComment, "") != 0) {
- anAttr = aStudyBuilder->FindOrCreateAttribute(newObj, "AttributeComment");
- _PTR(AttributeComment) aCmnt (anAttr);
- aCmnt->SetValue(theComment);
- if (MYDEBUG) INFOS("CreateAttributes - Comment = " << theComment);
- }
- if (strcmp(theRefFatherEntry, "") != 0) {
- _PTR(SObject) aRefFather = theStudyDocument->FindObjectID(theRefFatherEntry);
- _PTR(SObject) anObj = aStudyBuilder->NewObject(aRefFather);
- aStudyBuilder->Addreference(anObj, newObj);
- }
- string aRet = newObj->GetID();
- if (MYDEBUG)
- INFOS("CreateAttributes - StudyId = " << theStudyDocument->StudyId()
- << "; anEntry = " << aRet << "; IOR = '" << theIOR << "'");
- return aRet;
- }
-
- QString GenerateName(const string& theFmt, int theId){
- static QString aName;
- if(theId > 0)
- aName.sprintf("%s:%d",theFmt.c_str(),theId);
- else
- aName.sprintf("%s",theFmt.c_str());
- return aName;
- }
-
-
- SALOMEDS::StudyManager_var GetStudyManager()
- {
- static SALOMEDS::StudyManager_var aStudyManager;
- if(CORBA::is_nil(aStudyManager)){
- SALOME_NamingService *aNamingService = SalomeApp_Application::namingService();
- CORBA::Object_var anObject = aNamingService->Resolve("/myStudyManager");
- aStudyManager = SALOMEDS::StudyManager::_narrow(anObject);
- }
- return aStudyManager;
- }
-
-
- SALOMEDS::Study_var GetDSStudy(_PTR(Study) theStudy)
- {
- //std::string aStudyName = theStudy->Name();
- //return GetStudyManager()->GetStudyByName(aStudyName.c_str());
- int aStudyID = theStudy->StudyId();
- return GetStudyManager()->GetStudyByID(aStudyID);
- }
-
- SALOMEDS::SObject_var GetSObject( _PTR(SObject) obj )
- {
- _PTR(Study) aStudy = obj->GetStudy();
- SALOMEDS::Study_var aSalomeDSStudy = GetDSStudy( aStudy );
- std::string id = obj->GetID();
- return aSalomeDSStudy->FindObjectID( id.c_str() );
- }
-
- _PTR(SObject) GetClientSObject( SALOMEDS::SObject_var obj,
- _PTR(Study) study )
- {
- return study->FindObjectID( obj->GetID() );
-
- }
-
-
- void RemoveFromStudy (SALOMEDS::SObject_ptr theSObject,
- bool theIsAttrOnly,
- bool theDestroySubObjects)
- {
- if (theSObject->_is_nil()) return;
-
- SALOMEDS::Study_var aStudyDocument = theSObject->GetStudy();
- SALOMEDS::StudyBuilder_var aStudyBuilder = aStudyDocument->NewBuilder();
- if (theIsAttrOnly) {
- aStudyBuilder->RemoveAttribute(theSObject,"AttributeIOR");
- return;
- }
-
- // Remove possible sub-objects
- SALOMEDS::ChildIterator_var aChildIter = aStudyDocument->NewChildIterator(theSObject);
- for (aChildIter->InitEx(true); aChildIter->More(); aChildIter->Next()) {
- SALOMEDS::SObject_var aChildSObject = aChildIter->Value();
- CORBA::Object_var aChildObj = VISU::SObjectToObject(aChildSObject);
- if (CORBA::is_nil(aChildObj)) continue;
-
- VISU::RemovableObject_var aRemovableObject = VISU::RemovableObject::_narrow(aChildObj);
- if (CORBA::is_nil(aRemovableObject)) continue;
-
- aRemovableObject->RemoveFromStudy();
-
- // Destroy
- if (theDestroySubObjects) {
- VISU::Prs3d_var aPrs3d = VISU::Prs3d::_narrow(aRemovableObject);
- if (CORBA::is_nil(aPrs3d)) continue;
- aPrs3d->Destroy();
- }
- }
-
- // Remove the SObject itself
- aStudyBuilder->RemoveObjectWithChildren(theSObject);
- }
-
- void RemoveFromStudy (_PTR(SObject) theSObject,
- bool theIsAttrOnly,
- bool theDestroySubObjects)
- {
- if (!theSObject) return;
-
- _PTR(Study) aStudyDocument = theSObject->GetStudy();
- _PTR(StudyBuilder) aStudyBuilder = aStudyDocument->NewBuilder();
- if (theIsAttrOnly) {
- aStudyBuilder->RemoveAttribute(theSObject,"AttributeIOR");
- return;
- }
-
- // Remove possible sub-objects
- _PTR(ChildIterator) aChildIter = aStudyDocument->NewChildIterator(theSObject);
- for (aChildIter->InitEx(true); aChildIter->More(); aChildIter->Next()) {
- _PTR(SObject) aChildSObject = aChildIter->Value();
- CORBA::Object_var aChildObj = VISU::ClientSObjectToObject(aChildSObject);
- if (CORBA::is_nil(aChildObj)) continue;
-
- VISU::RemovableObject_var aRemovableObject = VISU::RemovableObject::_narrow(aChildObj);
- if (CORBA::is_nil(aRemovableObject)) continue;
-
- aRemovableObject->RemoveFromStudy();
-
- // Destroy
- if (theDestroySubObjects) {
- VISU::Prs3d_var aPrs3d = VISU::Prs3d::_narrow(aRemovableObject);
- if (CORBA::is_nil(aPrs3d)) continue;
- aPrs3d->Destroy();
- }
- }
-
- // Remove the SObject itself
- aStudyBuilder->RemoveObjectWithChildren(theSObject);
- }
-}
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File : VISU_DumpPython.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_ScalarMap_i.hh"
-#include "VISU_IsoSurfaces_i.hh"
-#include "VISU_DeformedShape_i.hh"
-#include "VISU_CutPlanes_i.hh"
-#include "VISU_CutLines_i.hh"
-#include "VISU_Vectors_i.hh"
-#include "VISU_StreamLines_i.hh"
-#include "VISU_Plot3D_i.hh"
-#include "VISU_Table_i.hh"
-
-#include "utilities.h"
-
-#include <cctype>
-#include <strstream>
-#include <functional>
-
-#include <qstring.h>
-#include <qfileinfo.h>
-
-//#define COUT
-
-using namespace std;
-
-namespace VISU{
- static std::string PREFIX(" ");
-
- typedef std::map<std::string,std::string> TName2EntryMap;
- typedef std::map<std::string,std::string> TEntry2NameMap;
-
- inline
- std::string
- GenerateName(std::string theName,
- SALOMEDS::SObject_ptr theSObject,
- TName2EntryMap& theName2EntryMap,
- TEntry2NameMap& theEntry2NameMap,
- char theSuffix)
- {
- if(theName2EntryMap.find(theName) != theName2EntryMap.end()){
- theName = GenerateName(theName + theSuffix, theSObject, theName2EntryMap, theEntry2NameMap, theSuffix);
- }else{
- CORBA::String_var anID = theSObject->GetID();
- theName2EntryMap[theName] = anID.in();
- theEntry2NameMap[anID.in()] = theName;
- //cout<<"GenerateName - "<<theName<<" => "<<anID.in()<<endl;
- }
-
- return theName;
- }
-
- struct TReplacePredicate{
- bool operator()(char theChar) const
- {
- return !(isdigit(theChar) || isalpha(theChar) || theChar == '_');
- }
- };
-
- inline
- std::string
- GetName(SALOMEDS::SObject_ptr theSObject)
- {
- CORBA::String_var aString = theSObject->GetName();
-
- std::string aName = QString(aString.in()).simplifyWhiteSpace().latin1();
-
- //replace_if(aName.begin(),aName.end(),not1(ptr_fun(isxdigit)),'_');
- replace_if(aName.begin(),aName.end(),TReplacePredicate(),'_');
-
- if ( isdigit( aName[0] ))
- aName.insert( 0, 1, 'a' );
-
- return aName;
- }
-
- inline
- std::string
- GenerateName(SALOMEDS::SObject_ptr theSObject,
- TName2EntryMap& theName2EntryMap,
- TEntry2NameMap& theEntry2NameMap)
- {
- std::string aName = GetName(theSObject);
-
- return GenerateName(aName,theSObject,theName2EntryMap,theEntry2NameMap,'X');
- }
-
-
- //===========================================================================
- typedef void (*TDumpToPython)(SALOMEDS::Study_ptr theStudy,
- CORBA::Boolean theIsPublished,
- CORBA::Boolean& theIsValidScript,
- SALOMEDS::SObject_ptr theSObject,
- std::ostream& theStr,
- TName2EntryMap& theName2EntryMap,
- TEntry2NameMap& theEntry2NameMap,
- std::string theArgumentName,
- std::string thePrefix);
-
-
- void
- DumpToPython(SALOMEDS::Study_ptr theStudy,
- CORBA::Boolean theIsPublished,
- CORBA::Boolean& theIsValidScript,
- SALOMEDS::SObject_ptr theSObject,
- std::ostream& theStr,
- TName2EntryMap& theName2EntryMap,
- TEntry2NameMap& theEntry2NameMap,
- std::string theArgumentName,
- std::string thePrefix);
-
-
- //===========================================================================
- std::string
- ScalarMapToPython(SALOMEDS::SObject_ptr theSObject,
- VISU::ScalarMap_i* theServant,
- std::ostream& theStr,
- std::string& theName,
- const std::string& theConstructorName,
- const std::string& theArgumentName,
- std::string thePrefix)
- {
- std::string aParam;
- switch(theServant->GetEntity()){
- case NODE:
- aParam = "VISU.NODE";
- break;
- case EDGE:
- aParam = "VISU.EDGE";
- break;
- case FACE:
- aParam = "VISU.FACE";
- break;
- case CELL:
- aParam = "VISU.CELL";
- break;
- }
-
- theStr<<thePrefix<<theName<<" = aVisu."<<theConstructorName<<"("<<theArgumentName<<
- ",'"<<theServant->GetMeshName()<<"'"<<
- ","<<aParam<<
- ",'"<<theServant->GetFieldName()<<"'"<<
- ","<<theServant->GetIteration()<<
- ")"<<endl;
-
- theStr<<thePrefix<<"if "<<theName<<":"<<endl;
- thePrefix += PREFIX;
-
- theStr<<thePrefix<<"aName2ObjectMap['"<<theName<<"'] = "<<theName<<endl;
-
- theStr<<thePrefix<<theName<<".SetScalarMode("<<theServant->GetScalarMode()<<")"<<endl;
-
- switch(theServant->GetScaling()){
- case LINEAR:
- aParam = "VISU.LINEAR";
- break;
- case LOGARITHMIC:
- aParam = "VISU.LOGARITHMIC";
- break;
- }
- theStr<<thePrefix<<theName<<".SetScaling("<<aParam<<")"<<endl;
- theStr<<thePrefix<<theName<<".SetRange("<<theServant->GetMin()<<","<<theServant->GetMax()<<")"<<endl;
-
- switch(theServant->GetBarOrientation()){
- case ScalarMap::HORIZONTAL:
- aParam = "VISU.ScalarMap.HORIZONTAL";
- break;
- case ScalarMap::VERTICAL:
- aParam = "VISU.ScalarMap.VERTICAL";
- break;
- }
- theStr<<thePrefix<<theName<<".SetBarOrientation("<<aParam<<")"<<endl;
-
- theStr<<thePrefix<<theName<<".SetPosition("<<theServant->GetPosX()<<","<<theServant->GetPosY()<<")"<<endl;
- theStr<<thePrefix<<theName<<".SetSize("<<theServant->GetWidth()<<","<<theServant->GetHeight()<<")"<<endl;
- theStr<<thePrefix<<theName<<".SetNbColors("<<theServant->GetNbColors()<<")"<<endl;
- theStr<<thePrefix<<theName<<".SetLabels("<<theServant->GetLabels()<<")"<<endl;
- theStr<<thePrefix<<theName<<".SetTitle('"<<theServant->GetTitle()<<"')"<<endl;
-
- return thePrefix;
- }
-
-
- //===========================================================================
- std::string
- DeformedShapeToPython(SALOMEDS::SObject_ptr theSObject,
- VISU::DeformedShape_i* theServant,
- std::ostream& theStr,
- std::string& theName,
- const std::string& theConstructorName,
- const std::string& theArgumentName,
- std::string thePrefix)
- {
- thePrefix = ScalarMapToPython(theSObject,theServant,theStr,theName,theConstructorName,theArgumentName,thePrefix);
- theStr<<thePrefix<<theName<<".SetScale("<<theServant->GetScale()<<")"<<endl;
- theStr<<thePrefix<<theName<<".ShowColored("<<theServant->IsColored()<<")"<<endl;
- SALOMEDS::Color aColor = theServant->GetColor();
- theStr<<thePrefix<<theName<<".SetColor(SALOMEDS.Color("<<
- aColor.R<<","<<aColor.G<<","<<aColor.B<<"))"<<endl;
-
- return thePrefix;
- }
-
- //===========================================================================
- // declaration
- void DumpChildrenToPython(SALOMEDS::Study_ptr theStudy,
- CORBA::Boolean theIsPublished,
- CORBA::Boolean& theIsValidScript,
- SALOMEDS::SObject_ptr theSObject,
- std::ostream& theStr,
- TName2EntryMap& theName2EntryMap,
- TEntry2NameMap& theEntry2NameMap,
- std::string theArgumentName,
- std::string thePrefix);
-
- //===========================================================================
- template<class TTableAttr>
- void
- TableAttrToPython(SALOMEDS::Study_ptr theStudy,
- CORBA::Boolean theIsPublished,
- CORBA::Boolean& theIsValidScript,
- SALOMEDS::SObject_ptr theSObject,
- TTableAttr theTableAttr,
- const std::string& theAttrName,
- std::ostream& theStr,
- TName2EntryMap& theName2EntryMap,
- TEntry2NameMap& theEntry2NameMap,
- std::string theArgumentName,
- std::string thePrefix)
- {
- SALOMEDS::GenericAttribute_var anAttr;
- SALOMEDS::SObject_var aFatherSObject = theSObject->GetFather();
- if(aFatherSObject->FindAttribute(anAttr,"AttributeComment")){
- SALOMEDS::AttributeComment_var aComment =
- SALOMEDS::AttributeComment::_narrow(anAttr);
- CORBA::String_var aValue = aComment->Value();
- Storable::TRestoringMap aMap;
- Storable::StrToMap(aValue.in(),aMap);
- bool anIsExist;
- QString aMethodName = VISU::Storable::FindValue(aMap,"myComment",&anIsExist);
- if(anIsExist){
- if(strcmp(aMethodName.latin1(),"ImportTables") == 0){
- return;
- }
- }
- }
-
- std::string aSObjectName = GetName(theSObject);
- theStr<<thePrefix<<aSObjectName<<" = aBuilder.NewObject(aSComponent)"<<endl;
- theStr<<thePrefix<<"if "<<aSObjectName<<":"<<endl;
- thePrefix += PREFIX;
-
- std::string aName = "aTableAttr";
- theStr<<thePrefix<<aName<<" = aBuilder.FindOrCreateAttribute("<<
- aSObjectName<<",'"<<theAttrName<<"')"<<endl;
-
- theStr<<thePrefix<<"if "<<aName<<":"<<endl;
- std::string aPrefix = thePrefix;
- thePrefix += PREFIX;
-
- CORBA::String_var aString = theTableAttr->GetTitle();
- theStr<<thePrefix<<aName<<".SetTitle('"<<aString.in()<<"')"<<endl;
-
- CORBA::Long aNbColumns = theTableAttr->GetNbColumns();
- theStr<<thePrefix<<aName<<".SetNbColumns("<<aNbColumns<<")"<<endl;
-
- CORBA::Long aNbRows = theTableAttr->GetNbRows();
-
- // push values and their indices into streams
- strstream values, rows, columns;
- string comma = "";
- for(CORBA::Long i = 1; i <= aNbColumns; i++){
- for(CORBA::Long j = aNbRows; j > 0; j--){
- if(theTableAttr->HasValue(j,i)){
- values << comma << theTableAttr->GetValue(j,i);
- rows << comma << j;
- columns << comma << i;
- if ( comma.empty() )
- comma = ",";
- }
- }
- }
- // push titles and units into streams
- strstream rowUnits, rowTitles, colTitles;
- SALOMEDS::StringSeq_var aRowUnits = theTableAttr->GetRowUnits();
- SALOMEDS::StringSeq_var aRowTitles = theTableAttr->GetRowTitles();
- comma = "";
- for(CORBA::Long j = 1; j <= aNbRows; j++){
- rowUnits << comma << "'" << aRowUnits [ j - 1 ] << "'";
- rowTitles << comma << "'" << aRowTitles[ j - 1 ] << "'";
- if ( comma.empty() )
- comma = ",";
- }
- SALOMEDS::StringSeq_var aColumnTitles = theTableAttr->GetColumnTitles();
- comma = "";
- for(CORBA::Long j = 1; j <= aNbColumns; j++){
- colTitles << comma << "'" << aColumnTitles[ j - 1 ] << "'";
- if ( comma.empty() )
- comma = ",";
- }
- values << '\0';
- rows << '\0';
- columns << '\0';
- rowUnits << '\0';
- rowTitles << '\0';
- colTitles << '\0';
- // write FillTable command
- theStr<< thePrefix << aName << "_values = [" << values.str() << "]" << endl;
- theStr<< thePrefix << aName << "_rows = [" << rows.str() << "]" << endl;
- theStr<< thePrefix << aName << "_columns = [" << columns.str() << "]" << endl;
- theStr<< thePrefix << aName << "_rUnits = [" << rowUnits.str() << "]" << endl;
- theStr<< thePrefix << aName << "_rTitles = [" << rowTitles.str() << "]" << endl;
- theStr<< thePrefix << aName << "_cTitles = [" << colTitles.str() << "]" << endl;
- theStr<< thePrefix << "visu.FillTable( "
- << aName << ", "
- << aName << "_values, "
- << aName << "_rows, "
- << aName << "_columns, "
- << aName << "_rTitles, "
- << aName << "_rUnits, "
- << aName << "_cTitles )" << endl;
-
- if(theSObject->FindAttribute(anAttr,"AttributeIOR")){
- theStr<<endl;
- std::string aName = "aTable";
- theStr<<thePrefix<<"anID = "<<aSObjectName<<".GetID()"<<endl;
- theStr<<thePrefix<<aName<<" = aVisu.CreateTable(anID)"<<endl;
- theArgumentName = aName;
-
- theStr<<thePrefix<<"if "<<aName<<":"<<endl;
- std::string aPrefix2 = thePrefix + PREFIX;
-
- DumpChildrenToPython(theStudy,
- theIsPublished,
- theIsValidScript,
- theSObject,
- theStr,
- theName2EntryMap,
- theEntry2NameMap,
- theArgumentName,
- aPrefix2);
-
- theStr<<aPrefix2<<"pass"<<endl<<endl;
- }
-
- theStr<<thePrefix<<"pass"<<endl<<endl;
- theStr<<aPrefix<<"pass"<<endl<<endl;
- }
-
-
- //===========================================================================
- void
- DumpChildrenToPython(SALOMEDS::Study_ptr theStudy,
- CORBA::Boolean theIsPublished,
- CORBA::Boolean& theIsValidScript,
- SALOMEDS::SObject_ptr theSObject,
- std::ostream& theStr,
- TName2EntryMap& theName2EntryMap,
- TEntry2NameMap& theEntry2NameMap,
- std::string theArgumentName,
- std::string thePrefix)
- {
- SALOMEDS::ChildIterator_var aChildItet = theStudy->NewChildIterator(theSObject);
- for(aChildItet->InitEx(false); aChildItet->More(); aChildItet->Next()){
- SALOMEDS::SObject_var aSObject = aChildItet->Value();
- DumpToPython(theStudy,
- theIsPublished,
- theIsValidScript,
- aSObject,
- theStr,
- theName2EntryMap,
- theEntry2NameMap,
- theArgumentName,
- thePrefix);
- }
- }
-
-
- //===========================================================================
- void
- DumpTableAttrToPython(SALOMEDS::Study_ptr theStudy,
- CORBA::Boolean theIsPublished,
- CORBA::Boolean& theIsValidScript,
- SALOMEDS::SObject_ptr theSObject,
- std::ostream& theStr,
- TName2EntryMap& theName2EntryMap,
- TEntry2NameMap& theEntry2NameMap,
- std::string theArgumentName,
- std::string thePrefix)
- {
- SALOMEDS::GenericAttribute_var anAttr;
- if(theSObject->FindAttribute(anAttr,"AttributeTableOfInteger")){
- SALOMEDS::AttributeTableOfInteger_var aTableAttr =
- SALOMEDS::AttributeTableOfInteger::_narrow(anAttr);
-
- TableAttrToPython(theStudy,
- theIsPublished,
- theIsValidScript,
- theSObject,
- aTableAttr,
- "AttributeTableOfInteger",
- theStr,
- theName2EntryMap,
- theEntry2NameMap,
- theArgumentName,
- thePrefix);
-
- }else if(theSObject->FindAttribute(anAttr,"AttributeTableOfReal")){
- SALOMEDS::AttributeTableOfReal_var aTableAttr =
- SALOMEDS::AttributeTableOfReal::_narrow(anAttr);
-
- TableAttrToPython(theStudy,
- theIsPublished,
- theIsValidScript,
- theSObject,
- aTableAttr,
- "AttributeTableOfReal",
- theStr,
- theName2EntryMap,
- theEntry2NameMap,
- theArgumentName,
- thePrefix);
- }
- }
-
-
- //===========================================================================
- void
- DumpToPython(SALOMEDS::Study_ptr theStudy,
- CORBA::Boolean theIsPublished,
- CORBA::Boolean& theIsValidScript,
- SALOMEDS::SObject_ptr theSObject,
- std::ostream& theStr,
- TName2EntryMap& theName2EntryMap,
- TEntry2NameMap& theEntry2NameMap,
- std::string theArgumentName,
- std::string thePrefix)
- {
- std::string aName = GetName(theSObject);
- if(aName == "")
- return;
-
- CORBA::Object_var anObj = SObjectToObject(theSObject);
- if(!CORBA::is_nil(anObj)){
- VISU::Base_var aBase = VISU::Base::_narrow(anObj);
- if(!CORBA::is_nil(aBase)){
- std::string aName = GenerateName(theSObject,theName2EntryMap,theEntry2NameMap);
- CORBA::String_var anID = theSObject->GetID();
-
- VISU::VISUType aType = aBase->GetType();
- switch(aType){
- case VISU::TRESULT:
- if(Result_i* aServant = dynamic_cast<Result_i*>(GetServant(anObj).in())){
- std::string aFileName = aServant->GetFileName();
- Result_i::ECreationId anId = aServant->GetCreationId();
- if(anId == Result_i::eImportFile || anId == Result_i::eCopyAndImportFile){
- switch(anId){
- case Result_i::eImportFile:
- theStr<<thePrefix<<aName<<" = aVisu.ImportFile('"<<aFileName<<"')"<<endl;
- break;
- case Result_i::eCopyAndImportFile:
- theStr<<thePrefix<<aName<<" = aVisu.CopyAndImportFile('"<<aFileName<<"')"<<endl;
- break;
- }
-
- theStr<<thePrefix<<"if "<<aName<<":"<<endl;
- thePrefix += PREFIX;
-
- theArgumentName = aName;
- DumpChildrenToPython(theStudy,
- theIsPublished,
- theIsValidScript,
- theSObject,
- theStr,
- theName2EntryMap,
- theEntry2NameMap,
- theArgumentName,
- thePrefix);
-
- theStr<<thePrefix<<"pass"<<endl<<endl;
- }else{
- SALOMEDS::SObject_var aRefSObj;
- if(theSObject->FindSubObject(1,aRefSObj)){
- SALOMEDS::SObject_var aTargetRefSObj;
- if(aRefSObj->ReferencedObject(aTargetRefSObj)){
- CORBA::String_var aString = aTargetRefSObj->GetName();
- theStr<<thePrefix<<"aSObject = theStudy.FindObject('"<<aString.in()<<"')"<<endl;
- theStr<<thePrefix<<"if aSObject:"<<endl;
- thePrefix += PREFIX;
- theStr<<thePrefix<<"anObject = aSObject.GetObject()"<<endl;
- theStr<<thePrefix<<"if anObject:"<<endl;
- std::string aPrefix1 = thePrefix;
- thePrefix += PREFIX;
-
- switch(anId){
- case Result_i::eImportMed:
- theStr<<thePrefix<<aName<<" = aVisu.ImportMed(aSObject)"<<endl;
- break;
- case Result_i::eImportMedField:
- theStr<<thePrefix<<aName<<" = aVisu.ImportMedField(anObject)"<<endl;
- break;
- }
-
- theStr<<thePrefix<<"if "<<aName<<":"<<endl;
- std::string aPrefix2 = thePrefix;
- thePrefix += PREFIX;
-
- theArgumentName = aName;
- DumpChildrenToPython(theStudy,
- theIsPublished,
- theIsValidScript,
- theSObject,
- theStr,
- theName2EntryMap,
- theEntry2NameMap,
- theArgumentName,
- thePrefix);
-
- theStr<<thePrefix<<"pass"<<endl<<endl;
- theStr<<aPrefix2<<"pass"<<endl<<endl;
- theStr<<aPrefix1<<"pass"<<endl<<endl;
- }
- }
- }
- }
- return;
- case VISU::TMESH:
- if(Mesh_i* aServant = dynamic_cast<Mesh_i*>(GetServant(anObj).in())){
- VISU::Entity anEntity = aServant->GetEntity();
- const std::string& aSubMeshName = aServant->GetSubMeshName();
- if(anEntity >= 0){
- std::string aParam;
- switch(anEntity){
- case NODE:
- aParam = "VISU.NODE";
- break;
- case EDGE:
- aParam = "VISU.EDGE";
- break;
- case FACE:
- aParam = "VISU.FACE";
- break;
- case CELL:
- aParam = "VISU.CELL";
- break;
- }
-
- if(aSubMeshName == "")
- theStr<<thePrefix<<aName<<" = aVisu.MeshOnEntity("<<theArgumentName<<
- ",'"<<aServant->GetMeshName()<<"'"<<
- ","<<aParam<<
- ")"<<endl;
- else
- theStr<<thePrefix<<aName<<" = aVisu.FamilyMeshOnEntity("<<theArgumentName<<
- ",'"<<aServant->GetMeshName()<<"'"<<
- ","<<aParam<<
- ",'"<<aSubMeshName<<"'"<<
- ")"<<endl;
- }else
- theStr<<thePrefix<<aName<<" = aVisu.GroupMesh("<<theArgumentName<<
- ",'"<<aServant->GetMeshName()<<"'"<<
- ",'"<<aSubMeshName<<"'"<<
- ")"<<endl;
-
- theStr<<thePrefix<<"if "<<aName<<":"<<endl;
- thePrefix += PREFIX;
-
- theStr<<thePrefix<<"aName2ObjectMap['"<<aName<<"'] = "<<aName<<endl;
-
- SALOMEDS::Color aColor;
- aColor = aServant->GetCellColor();
- theStr<<thePrefix<<aName<<".SetCellColor(SALOMEDS.Color("<<
- aColor.R<<","<<aColor.G<<","<<aColor.B<<"))"<<endl;
-
- aColor = aServant->GetNodeColor();
- theStr<<thePrefix<<aName<<".SetNodeColor(SALOMEDS.Color("<<
- aColor.R<<","<<aColor.G<<","<<aColor.B<<"))"<<endl;
-
- aColor = aServant->GetLinkColor();
- theStr<<thePrefix<<aName<<".SetLinkColor(SALOMEDS.Color("<<
- aColor.R<<","<<aColor.G<<","<<aColor.B<<"))"<<endl;
-
- std::string aParam;
- switch(aServant->GetPresentationType()){
- case POINT:
- aParam = "VISU.POINT";
- break;
- case WIREFRAME:
- aParam = "VISU.WIREFRAME";
- break;
- case SHADED:
- aParam = "VISU.SHADED";
- break;
- case INSIDEFRAME:
- aParam = "VISU.INSIDEFRAME";
- break;
- case SURFACEFRAME:
- aParam = "VISU.SURFACEFRAME";
- break;
- case SHRINK:
- aParam = "VISU.SHRINK";
- break;
- }
- theStr<<thePrefix<<aName<<".SetPresentationType("<<aParam<<")"<<endl;
- theStr<<endl;
-
- DumpChildrenToPython(theStudy,
- theIsPublished,
- theIsValidScript,
- theSObject,
- theStr,
- theName2EntryMap,
- theEntry2NameMap,
- theArgumentName,
- thePrefix);
-
- theStr<<thePrefix<<"pass"<<endl<<endl;
- return;
- }
- break;
- case VISU::TSCALARMAP:
- if(ScalarMap_i* aServant = dynamic_cast<ScalarMap_i*>(GetServant(anObj).in())){
- thePrefix = ScalarMapToPython(theSObject,aServant,theStr,aName,"ScalarMapOnField",theArgumentName,thePrefix);
- theStr<<thePrefix<<"pass"<<endl<<endl;
- }
- return;
- case VISU::TDEFORMEDSHAPE:
- if(DeformedShape_i* aServant = dynamic_cast<DeformedShape_i*>(GetServant(anObj).in())){
- thePrefix = DeformedShapeToPython(theSObject,aServant,theStr,aName,"DeformedShapeOnField",theArgumentName,thePrefix);
- theStr<<thePrefix<<"pass"<<endl<<endl;
- }
- return;
- case VISU::TSTREAMLINES:
- if(StreamLines_i* aServant = dynamic_cast<StreamLines_i*>(GetServant(anObj).in())){
- thePrefix = DeformedShapeToPython(theSObject,aServant,theStr,aName,"StreamLinesOnField",theArgumentName,thePrefix);
-
- std::string aParam;
- switch(aServant->GetDirection()){
- case StreamLines::FORWARD:
- aParam = "VISU.StreamLines.FORWARD";
- break;
- case StreamLines::BACKWARD:
- aParam = "VISU.StreamLines.BACKWARD";
- break;
- case StreamLines::BOTH:
- aParam = "VISU.StreamLines.BOTH";
- break;
- }
-
- theStr<<thePrefix<<"aPrs3d = None"<<endl;
- VISU::Prs3d_var aPrs3d = aServant->GetSource();
- if(!CORBA::is_nil(aPrs3d)){
- if(Prs3d_i* aServant3d = dynamic_cast<Prs3d_i*>(GetServant(aPrs3d).in())){
- SALOMEDS::SObject_var aSObject = aServant3d->GetSObject();
- CORBA::String_var anID = aSObject->GetID();
- std::string anArg = theEntry2NameMap[anID.in()];
- theStr<<thePrefix<<"if aName2ObjectMap.has_key('"<<anArg<<"'):"<<endl;
- thePrefix += PREFIX;
- theStr<<thePrefix<<"aPrs3d = aName2ObjectMap['"<<anArg<<"']"<<endl;
- }
- }
-
- theStr<<thePrefix<<aName<<".SetParams("<<
- aServant->GetIntegrationStep()<<","<<
- aServant->GetPropagationTime()<<","<<
- aServant->GetStepLength()<<","<<
- "aPrs3d"<<","<<
- aServant->GetUsedPoints()<<","<<
- aParam<<
- ")"<<endl;
-
- theStr<<thePrefix<<"pass"<<endl<<endl;
- }
- return;
- case VISU::TVECTORS:
- if(Vectors_i* aServant = dynamic_cast<Vectors_i*>(GetServant(anObj).in())){
- thePrefix = DeformedShapeToPython(theSObject,aServant,theStr,aName,"VectorsOnField",theArgumentName,thePrefix);
-
- theStr<<thePrefix<<aName<<".SetLineWidth("<<aServant->GetLineWidth()<<")"<<endl;
-
- std::string aParam;
- switch(aServant->GetGlyphType()){
- case Vectors::ARROW:
- aParam = "VISU.Vectors.ARROW";
- break;
- case Vectors::CONE2:
- aParam = "VISU.Vectors.CONE2";
- break;
- case Vectors::CONE6:
- aParam = "VISU.Vectors.CONE6";
- break;
- case Vectors::NONE:
- aParam = "VISU.Vectors.NONE";
- break;
- }
- theStr<<thePrefix<<aName<<".SetGlyphType("<<aParam<<")"<<endl;
-
- switch(aServant->GetGlyphPos()){
- case Vectors::CENTER:
- aParam = "VISU.Vectors.CENTER";
- break;
- case Vectors::TAIL:
- aParam = "VISU.Vectors.TAIL";
- break;
- case Vectors::HEAD:
- aParam = "VISU.Vectors.HEAD";
- break;
- }
- theStr<<thePrefix<<aName<<".SetGlyphPos("<<aParam<<")"<<endl;
-
- theStr<<thePrefix<<"pass"<<endl<<endl;
- }
- return;
- case VISU::TISOSURFACE:
- if(IsoSurfaces_i* aServant = dynamic_cast<IsoSurfaces_i*>(GetServant(anObj).in())){
- thePrefix = ScalarMapToPython(theSObject,aServant,theStr,aName,"IsoSurfacesOnField",theArgumentName,thePrefix);
- theStr<<thePrefix<<aName<<".SetNbSurfaces("<<aServant->GetNbSurfaces()<<")"<<endl;
- theStr<<thePrefix<<"pass"<<endl<<endl;
- }
- return;
- case VISU::TCUTPLANES:
- if(CutPlanes_i* aServant = dynamic_cast<CutPlanes_i*>(GetServant(anObj).in())){
- thePrefix = ScalarMapToPython(theSObject,aServant,theStr,aName,"CutPlanesOnField",theArgumentName,thePrefix);
-
- std::string aParam;
- switch(aServant->GetOrientationType()){
- case CutPlanes::XY:
- aParam = "VISU.CutPlanes.XY";
- break;
- case CutPlanes::YZ:
- aParam = "VISU.CutPlanes.YZ";
- break;
- case CutPlanes::ZX:
- aParam = "VISU.CutPlanes.ZX";
- break;
- }
- theStr<<thePrefix<<aName<<".SetOrientation("<<aParam<<","<<aServant->GetRotateX()<<","<<aServant->GetRotateY()<<")"<<endl;
-
- theStr<<thePrefix<<aName<<".SetDisplacement("<<aServant->GetDisplacement()<<")"<<endl;
- CORBA::Long aNbPlanes = aServant->GetNbPlanes();
- theStr<<thePrefix<<aName<<".SetNbPlanes("<<aNbPlanes<<")"<<endl;
-
- for(CORBA::Long anId = 0; anId < aNbPlanes; anId++){
- if(!aServant->IsDefault(anId))
- theStr<<thePrefix<<aName<<".SetPlanePosition("<<anId<<","<<aServant->GetPlanePosition(anId)<<")"<<endl;
- }
-
- theStr<<thePrefix<<"pass"<<endl<<endl;
- }
- return;
- case VISU::TCUTLINES:
- if(CutLines_i* aServant = dynamic_cast<CutLines_i*>(GetServant(anObj).in())){
- thePrefix = ScalarMapToPython(theSObject,aServant,theStr,aName,"CutLinesOnField",theArgumentName,thePrefix);
-
- std::string aParam;
- switch(aServant->GetOrientationType()){
- case CutPlanes::XY:
- aParam = "VISU.CutPlanes.XY";
- break;
- case CutPlanes::YZ:
- aParam = "VISU.CutPlanes.YZ";
- break;
- case CutPlanes::ZX:
- aParam = "VISU.CutPlanes.ZX";
- break;
- }
- theStr<<thePrefix<<aName<<".SetOrientation("<<aParam<<","<<aServant->GetRotateX()<<","<<aServant->GetRotateY()<<")"<<endl;
-
- switch(aServant->GetOrientationType2()){
- case CutPlanes::XY:
- aParam = "VISU.CutPlanes.XY";
- break;
- case CutPlanes::YZ:
- aParam = "VISU.CutPlanes.YZ";
- break;
- case CutPlanes::ZX:
- aParam = "VISU.CutPlanes.ZX";
- break;
- }
- theStr<<thePrefix<<aName<<".SetOrientation2("<<aParam<<","<<aServant->GetRotateX2()<<","<<aServant->GetRotateY2()<<")"<<endl;
-
- theStr<<thePrefix<<aName<<".SetDisplacement("<<aServant->GetDisplacement()<<")"<<endl;
- theStr<<thePrefix<<aName<<".SetDisplacement2("<<aServant->GetDisplacement2()<<")"<<endl;
-
- if(!aServant->IsDefault())
- theStr<<thePrefix<<aName<<".SetBasePlanePosition("<<aServant->GetBasePlanePosition()<<")"<<endl;
-
- CORBA::Long aNbLines = aServant->GetNbLines();
- theStr<<thePrefix<<aName<<".SetNbLines("<<aNbLines<<")"<<endl;
- for(CORBA::Long anId = 0; anId < aNbLines; anId++){
- if(!aServant->IsDefaultPosition(anId))
- theStr<<thePrefix<<aName<<".SetLinePosition("<<anId<<","<<aServant->GetLinePosition(anId)<<")"<<endl;
- }
-
- theStr<<endl;
-
- theArgumentName = aName;
- DumpChildrenToPython(theStudy,
- theIsPublished,
- theIsValidScript,
- theSObject,
- theStr,
- theName2EntryMap,
- theEntry2NameMap,
- theArgumentName,
- thePrefix);
-
- theStr<<thePrefix<<"pass"<<endl<<endl;
- }
- return;
- case VISU::TPLOT3D:
- if (Plot3D_i* aServant = dynamic_cast<Plot3D_i*>(GetServant(anObj).in())) {
- // jfa: TODO
- /*thePrefix = ScalarMapToPython(theSObject, aServant, theStr, aName,
- "Plot3DOnField", theArgumentName, thePrefix);
-
- std::string aParam;
- switch(aServant->GetOrientationType()){
- case CutPlanes::XY:
- aParam = "VISU.CutPlanes.XY";
- break;
- case CutPlanes::YZ:
- aParam = "VISU.CutPlanes.YZ";
- break;
- case CutPlanes::ZX:
- aParam = "VISU.CutPlanes.ZX";
- break;
- }
- theStr<<thePrefix<<aName<<".SetOrientation("<<aParam<<","<<aServant->GetRotateX()<<","<<aServant->GetRotateY()<<")"<<endl;
-
- theStr<<thePrefix<<aName<<".SetDisplacement("<<aServant->GetDisplacement()<<")"<<endl;
- CORBA::Long aNbPlanes = aServant->GetNbPlanes();
- theStr<<thePrefix<<aName<<".SetNbPlanes("<<aNbPlanes<<")"<<endl;
-
- for(CORBA::Long anId = 0; anId < aNbPlanes; anId++){
- if(!aServant->IsDefault(anId))
- theStr<<thePrefix<<aName<<".SetPlanePosition("<<anId<<","<<aServant->GetPlanePosition(anId)<<")"<<endl;
- }
-
- theStr<<thePrefix<<"pass"<<endl<<endl;*/
- }
- return;
- case VISU::TCURVE:
- if(Curve_i* aServant = dynamic_cast<Curve_i*>(GetServant(anObj).in()))
- {
- theStr << thePrefix << "aName2ObjectMap['" << aName << "'] = visu.CreateCurve(" <<
- theArgumentName<< // table
- ","<<aServant->GetHRow()<< // H row
- ","<<aServant->GetVRow()<< // V row
- ",'"<<aServant->GetTitle()<<"'"; // title
- SALOMEDS::Color aColor = aServant->GetColor();
- theStr << ",SALOMEDS.Color("<<
- aColor.R<<","<<aColor.G<<","<<aColor.B<<")"; // color
-
- std::string aParam;
- switch(aServant->GetMarker()){
- case Curve::NONE: aParam = "VISU.Curve.NONE"; break;
- case Curve::CIRCLE: aParam = "VISU.Curve.CIRCLE"; break;
- case Curve::RECTANGLE: aParam = "VISU.Curve.RECTANGLE"; break;
- case Curve::DIAMOND: aParam = "VISU.Curve.DIAMOND"; break;
- case Curve::DTRIANGLE: aParam = "VISU.Curve.DTRIANGLE"; break;
- case Curve::UTRIANGLE: aParam = "VISU.Curve.UTRIANGLE"; break;
- case Curve::LTRIANGLE: aParam = "VISU.Curve.LTRIANGLE"; break;
- case Curve::RTRIANGLE: aParam = "VISU.Curve.RTRIANGLE"; break;
- case Curve::CROSS: aParam = "VISU.Curve.CROSS"; break;
- case Curve::XCROSS: aParam = "VISU.Curve.XCROSS"; break;
- }
- theStr<<","<<aParam; // marker
-
- switch(aServant->GetLine()){
- case Curve::VOIDLINE: aParam = "VISU.Curve.VOIDLINE"; break;
- case Curve::SOLIDLINE: aParam = "VISU.Curve.SOLIDLINE"; break;
- case Curve::DASHLINE: aParam = "VISU.Curve.DASHLINE"; break;
- case Curve::DOTLINE: aParam = "VISU.Curve.DOTLINE"; break;
- case Curve::DASHDOTLINE: aParam = "VISU.Curve.DASHDOTLINE"; break;
- case Curve::DASHDOTDOTLINE: aParam = "VISU.Curve.DASHDOTDOTLINE"; break;
- }
- theStr<<","<<aParam<<","<<aServant->GetLineWidth()<<")"<<endl; // line type,width
- }
- return;
- case VISU::TTABLE:
- if(Table_i* aServant = dynamic_cast<Table_i*>(GetServant(anObj).in())){
- SALOMEDS::SObject_var aSObject = aServant->GetSObject();
- SALOMEDS::GenericAttribute_var anAttr;
- if(theSObject->FindAttribute(anAttr,"AttributeComment")){
- using namespace SALOMEDS;
- AttributeComment_var aComment = AttributeComment::_narrow(anAttr);
- CORBA::String_var aValue = aComment->Value();
- Storable::TRestoringMap aMap;
- Storable::StrToMap(aValue.in(),aMap);
- bool anIsExist;
- QString aSourceId = VISU::Storable::FindValue(aMap,"mySourceId",&anIsExist);
- if(anIsExist){
- if(strcmp(aSourceId.latin1(),"CutLines") == 0){
- theStr<<thePrefix<<"if aName2ObjectMap.has_key('"<<theArgumentName<<"'):"<<endl;
- thePrefix += PREFIX;
-
- theStr<<thePrefix<<"anObject = aName2ObjectMap['"<<theArgumentName<<"']"<<endl;
- theStr<<thePrefix<<"anIOR = anObject.GetID()"<<endl;
- theStr<<thePrefix<<"aSObject = theStudy.FindObjectIOR(anIOR)"<<endl;
- theStr<<thePrefix<<"if aSObject:"<<endl;
- std::string aPrefix = thePrefix;
- thePrefix += PREFIX;
-
- theStr<<thePrefix<<"anID = aSObject.GetID()"<<endl;
- theStr<<thePrefix<<aName<<" = aVisu.CreateTable(anID)"<<endl;
- theStr<<endl;
-
- theArgumentName = aName;
- DumpChildrenToPython(theStudy,
- theIsPublished,
- theIsValidScript,
- theSObject,
- theStr,
- theName2EntryMap,
- theEntry2NameMap,
- theArgumentName,
- thePrefix);
-
- theStr<<thePrefix<<"pass"<<endl<<endl;
- theStr<<aPrefix<<"pass"<<endl<<endl;
- }else if(strcmp(aSourceId.latin1(),"TableFile") == 0){
- 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;
- theStr<<endl;
-
- theArgumentName = aName;
- DumpChildrenToPython(theStudy,
- theIsPublished,
- theIsValidScript,
- theSObject,
- theStr,
- theName2EntryMap,
- theEntry2NameMap,
- theArgumentName,
- thePrefix);
-
- theStr<<thePrefix<<"pass"<<endl<<endl;
- }else if(strcmp(aSourceId.latin1(),"TableAttr") == 0){
- theArgumentName = aName;
- DumpTableAttrToPython(theStudy,
- theIsPublished,
- theIsValidScript,
- theSObject,
- theStr,
- theName2EntryMap,
- theEntry2NameMap,
- theArgumentName,
- thePrefix);
- }
- }
- }
- }
- return;
- }
- }
- }else{
- SALOMEDS::GenericAttribute_var anAttr;
- if(theSObject->FindAttribute(anAttr,"AttributeComment")){
- SALOMEDS::AttributeComment_var aComment =
- SALOMEDS::AttributeComment::_narrow(anAttr);
- CORBA::String_var aValue = aComment->Value();
- Storable::TRestoringMap aMap;
- Storable::StrToMap(aValue.in(),aMap);
- bool anIsExist;
- QString aTypeName = VISU::Storable::FindValue(aMap,"myComment",&anIsExist);
- if(anIsExist){
- if(strcmp(aTypeName.latin1(),"ImportTables") == 0){
- 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<<"if "<<aName<<":"<<endl;
- thePrefix += PREFIX;
-
- theArgumentName = aName;
- DumpChildrenToPython(theStudy,
- theIsPublished,
- theIsValidScript,
- theSObject,
- theStr,
- theName2EntryMap,
- theEntry2NameMap,
- theArgumentName,
- thePrefix);
-
- theStr<<thePrefix<<"pass"<<endl<<endl;
- return;
- }
- }else if(strcmp(aTypeName.latin1(),"VIEW3D") == 0){
- std::string aName = GetName(theSObject);
- theStr<<thePrefix<<aName<<" = aBuilder.NewObject(aSComponent)"<<endl;
-
- theStr<<thePrefix<<"if "<<aName<<":"<<endl;
- thePrefix += PREFIX;
-
- theStr<<thePrefix<<"anAttr = aBuilder.FindOrCreateAttribute("<<aName<<",'AttributeName')"<<endl;
- theStr<<thePrefix<<"anAttr.SetValue('"<<aName<<"')"<<endl;
-
- theStr<<thePrefix<<"anAttr = aBuilder.FindOrCreateAttribute("<<aName<<",'AttributeComment')"<<endl;
- theStr<<thePrefix<<"anAttr.SetValue('"<<aValue.in()<<"')"<<endl;
-
- theStr<<thePrefix<<"pass"<<endl<<endl;
- return;
- }
- }
- }else{
- DumpTableAttrToPython(theStudy,
- theIsPublished,
- theIsValidScript,
- theSObject,
- theStr,
- theName2EntryMap,
- theEntry2NameMap,
- theArgumentName,
- thePrefix);
- }
- }
-
- DumpChildrenToPython(theStudy,
- theIsPublished,
- theIsValidScript,
- theSObject,
- theStr,
- theName2EntryMap,
- theEntry2NameMap,
- theArgumentName,
- thePrefix);
- }
-
-
- //===========================================================================
- void
- DumpCurveToPython(SALOMEDS::Study_ptr theStudy,
- CORBA::Boolean theIsPublished,
- CORBA::Boolean& theIsValidScript,
- SALOMEDS::SObject_ptr theSObject,
- std::ostream& theStr,
- TName2EntryMap& theName2EntryMap,
- TEntry2NameMap& theEntry2NameMap,
- std::string theArgumentName,
- std::string thePrefix)
- {
- SALOMEDS::SObject_var aTargetRefSObj;
- if(theSObject->ReferencedObject(aTargetRefSObj)){
- CORBA::Object_var anObj = SObjectToObject(aTargetRefSObj);
- if(CORBA::is_nil(anObj))
- return;
-
- VISU::Base_var aBase = VISU::Base::_narrow(anObj);
- if(CORBA::is_nil(aBase))
- return;
-
- if(aBase->GetType() == VISU::TCURVE){
- CORBA::String_var anID = aTargetRefSObj->GetID();
- std::string anArg = theEntry2NameMap[anID.in()];
- theStr<<thePrefix<<"if aName2ObjectMap.has_key('"<<anArg<<"'):"<<endl;
- thePrefix += PREFIX;
- theStr<<thePrefix<<"anObject = aName2ObjectMap['"<<anArg<<"']"<<endl;
- theStr<<thePrefix<<"if anObject: " <<theArgumentName<<".AddCurve(anObject)"<<endl;
- theStr<<thePrefix<<"pass"<<endl<<endl;
- }
- }
- }
-
-
- //===========================================================================
- void
- DumpContainersToPython(SALOMEDS::Study_ptr theStudy,
- CORBA::Boolean theIsPublished,
- CORBA::Boolean& theIsValidScript,
- SALOMEDS::SObject_ptr theSObject,
- std::ostream& theStr,
- TName2EntryMap& theName2EntryMap,
- TEntry2NameMap& theEntry2NameMap,
- std::string theArgumentName,
- std::string thePrefix)
- {
- SALOMEDS::ChildIterator_var aChildItet = theStudy->NewChildIterator(theSObject);
- for(aChildItet->InitEx(false); aChildItet->More(); aChildItet->Next()){
- SALOMEDS::SObject_var aSObject = aChildItet->Value();
- CORBA::Object_var anObj = SObjectToObject(aSObject);
- if(CORBA::is_nil(anObj))
- continue;
-
- VISU::Base_var aBase = VISU::Base::_narrow(anObj);
- if(CORBA::is_nil(aBase))
- continue;
-
- if(aBase->GetType() == VISU::TCONTAINER){
- theStr<<endl;
- std::string aName = GenerateName(aSObject,theName2EntryMap,theEntry2NameMap);
- theStr<<thePrefix<<aName<<" = aVisu.CreateContainer()"<<endl;
- theStr<<thePrefix<<"if "<<aName<<":"<<endl;
- std::string aPrefix = thePrefix + PREFIX;
- theArgumentName = aName;
-
- SALOMEDS::ChildIterator_var aCurveIter = theStudy->NewChildIterator(aSObject);
- for(aCurveIter->InitEx(false); aCurveIter->More(); aCurveIter->Next()){
- SALOMEDS::SObject_var aRefSObj = aCurveIter->Value();
- DumpCurveToPython(theStudy,theIsPublished,theIsValidScript,aRefSObj,theStr,theName2EntryMap,theEntry2NameMap,theArgumentName,aPrefix);
- }
-
- theStr<<aPrefix<<"pass"<<endl<<endl;
- }
- }
- }
-
-
- //===========================================================================
- Engines::TMPFile*
- VISU_Gen_i::
- DumpPython(CORBA::Object_ptr theStudy,
- CORBA::Boolean theIsPublished,
- CORBA::Boolean& theIsValidScript)
- {
- SALOMEDS::Study_var aStudy = SALOMEDS::Study::_narrow(theStudy);
- if(CORBA::is_nil(aStudy))
- return new Engines::TMPFile(0);
-
- TName2EntryMap aName2EntryMap;
- TEntry2NameMap aEntry2NameMap;
-
-#ifndef COUT
- ostringstream aStr;
-#else
-#define aStr cout
-#endif
-
- std::string aPrefix(PREFIX);
- aStr<<"### This file is generated by SALOME automatically by dump python funcitonality"
- " of VISU component"<<endl<<endl;
- aStr<<"def RebuildData(theStudy):"<<endl;
- aStr<<aPrefix<<"from batchmode_salome import orb, naming_service, lcc, myStudyManager"<<endl;
- aStr<<aPrefix<<"import SALOME_MED"<<endl;
- aStr<<aPrefix<<"import SALOMEDS"<<endl;
- aStr<<aPrefix<<"import VISU"<<endl;
- aStr<<aPrefix<<"import visu"<<endl;
- aStr<<endl;
- aStr<<aPrefix<<"aVisu = visu.Initialize(orb,naming_service,lcc,myStudyManager,theStudy,0)"<<endl;
- aStr<<aPrefix<<"aSComponent = visu.PublishComponent(theStudy)"<<endl;
- aStr<<aPrefix<<"aMed = lcc.FindOrLoadComponent('FactoryServer','MED')"<<endl;
- aStr<<aPrefix<<"aBuilder = theStudy.NewBuilder()"<<endl;
- aStr<<aPrefix<<"aName2ObjectMap = {}"<<endl;
- aStr<<endl;
-
- SALOMEDS::SComponent_var aComponent = FindOrCreateVisuComponent(aStudy);
- VISU::DumpChildrenToPython(aStudy,theIsPublished,theIsValidScript,aComponent.in(),aStr,aName2EntryMap,aEntry2NameMap,"",aPrefix);
- VISU::DumpContainersToPython(aStudy,theIsPublished,theIsValidScript,aComponent.in(),aStr,aName2EntryMap,aEntry2NameMap,"",aPrefix);
-
- aStr<<aPrefix<<"pass"<<endl;
-
-#ifndef COUT
- std::string aResult = aStr.str();
- //ofstream anFStream("/tmp/dump.py");
- //anFStream<<aResult<<endl;
-
- CORBA::ULong aSize = aResult.size() + 1;
- char* aBuffer = new char[aSize];
- strcpy(aBuffer,&aResult[0]);
- return new Engines::TMPFile(aSize,aSize,(CORBA::Octet*)aBuffer,1);
-#else
-#undef aStr
- return new Engines::TMPFile(0);
-#endif
- }
-}
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File : VISU_PrsObject_i.hxx
-// Author : Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_Mesh_i_HeaderFile
-#define VISU_Mesh_i_HeaderFile
-
-#include "VISU_Prs3d_i.hh"
-
-class VISU_MeshPL;
-
-namespace VISU{
- class Mesh_i : public virtual POA_VISU::Mesh,
- public virtual Prs3d_i
- {
- static int myNbPresent;
- Mesh_i();
- Mesh_i(const Mesh_i&);
- public:
- explicit
- Mesh_i(Result_i* theResult);
- explicit
- Mesh_i(Result_i* theResult,
- SALOMEDS::SObject_ptr theSObject);
- virtual void SameAs(const Mesh_i* theOrigin);
- virtual ~Mesh_i();
- virtual void RemoveFromStudy();
-
- virtual VISU::VISUType GetType() { return VISU::TMESH;};
-
- virtual void SetCellColor(const SALOMEDS::Color& theColor) { myCellColor = theColor;}
- virtual SALOMEDS::Color GetCellColor() { return myCellColor;}
-
- virtual void SetNodeColor(const SALOMEDS::Color& theColor) { myNodeColor = theColor;}
- virtual SALOMEDS::Color GetNodeColor() { return myNodeColor;}
-
- virtual void SetLinkColor(const SALOMEDS::Color& theColor) { myLinkColor = theColor;}
- virtual SALOMEDS::Color GetLinkColor() { return myLinkColor;}
-
- virtual void SetPresentationType(VISU::PresentationType theType) { myPresentType = theType;}
- virtual PresentationType GetPresentationType() { return myPresentType;}
-
- typedef VISU::Mesh TInterface;
- VISU_MeshPL* GetMeshPL(){ return myMeshPL;}
-
- protected:
- Storable* Build(int theRestoring);
-
- VISU_MeshPL* myMeshPL;
-
- // std::string myMeshName; move it to Prs3d_i
- int myEntity;//jfa IPAL9284: TEntity myEntity;
- std::string mySubMeshName;
- VISU::VISUType myType;
-
- VISU::PresentationType myPresentType;
- struct SALOMEDS::Color myCellColor, myNodeColor, myLinkColor;
-
- public:
- static int IsPossible(Result_i* theResult, const char* theMeshName,
- Entity theEntity, const char* theFamilyName = "");
- virtual Storable* Create(const char* theMeshName, Entity theEntity, const char* theFamilyName = "");
-
- static int IsPossible(Result_i* theResult, const char* theMeshName, const char* theGroupName);
- virtual Storable* Create(const char* theMeshName, const char* theGroupName);
-
- const std::string& GetMeshName() const { return myMeshName;}
- VISU::Entity GetEntity() const { return VISU::Entity(myEntity);}
- const string& GetSubMeshName() const { return mySubMeshName;}
-
- virtual void ToStream(std::ostringstream& theStr);
-
- virtual const char* GetComment() const;
- static const std::string myComment;
- virtual QString GenerateName();
-
- virtual Storable* Restore(const Storable::TRestoringMap& theMap);
-
- virtual VISU_Actor* CreateActor(const Handle(SALOME_InteractiveObject)& theIO = NULL);
-
- virtual void UpdateActor(VISU_Actor* theActor);
- };
-}
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File : VISU_PrsObject_i.cxx
-// Author : Alexey PETROV
-// Module : VISU
-
-#include "VISU_PrsObject_i.hh"
-using namespace VISU;
-using namespace std;
-
-#ifdef _DEBUG_
-static int MYDEBUG = 1;
-static int MYDEBUGWITHFILES = 0;
-#else
-static int MYDEBUG = 0;
-static int MYDEBUGWITHFILES = 0;
-#endif
-
-void VISU::PrsObject_i::SetName( const char* theName )
-{
- myName = theName;
- SALOMEDS::SObject_var mySO = myStudy->FindObjectID( GetEntry() );
- if(!mySO->_is_nil()){
- SALOMEDS::StudyBuilder_var aBuilder = myStudy->NewBuilder();
- SALOMEDS::GenericAttribute_var anAttr = aBuilder->FindOrCreateAttribute( mySO, "AttributeName" );
- SALOMEDS::AttributeName_var aNameAttr = SALOMEDS::AttributeName::_narrow( anAttr );
- aNameAttr->SetValue( theName );
- }
-}
-QString VISU::PrsObject_i::GetEntry() {
- CORBA::String_var anIOR = GetID();
- SALOMEDS::SObject_var aSObject = myStudy->FindObjectIOR(anIOR.in());
- CORBA::String_var anEntry;
- if(!CORBA::is_nil(aSObject.in()))
- anEntry = aSObject->GetID();
- else
- MESSAGE("PrsObject_i::GetEntry - Cannot find SObject in the Study with StudyId = "<<myStudy->StudyId()<<" !!!");
- return anEntry.in();
-}
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File : VISU_PrsObject_i.hxx
-// Author : Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_PrsObject_i_HeaderFile
-#define VISU_PrsObject_i_HeaderFile
-
-#include "VISUConfig.hh"
-
-namespace VISU{
- class PrsObject_i : public virtual POA_VISU::PrsObject,
- public virtual RemovableObject_i
- {
- PrsObject_i(const PrsObject_i&);
-
- public:
- PrsObject_i(SALOMEDS::Study_ptr theStudy) : myStudy(SALOMEDS::Study::_duplicate(theStudy)) {};
- virtual ~PrsObject_i() {}
-
- protected:
- std::string myName;
- SALOMEDS::Study_var myStudy;
-
- public:
- virtual const char* GetName() const { return myName.c_str();}
- virtual void SetName( const char* theName );
- const SALOMEDS::Study_var& GetStudyDocument() const { return myStudy;}
- QString GetEntry();
- };
-}
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// 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 "SPlot2d_Curve.h"
-
-#include <memory>
-#include <fstream>
-#include <strstream>
-
-#include <qfileinfo.h>
-#include <qstring.h>
-#include <qfile.h>
-
-using namespace std;
-
-#ifdef _DEBUG_
-static int MYDEBUG = 0;
-#else
-static int MYDEBUG = 0;
-#endif
-//----------------------------------------------------------------
-// Table Object
-//----------------------------------------------------------------
-int VISU::Table_i::myNbPresent = 0;
-const string VISU::Table_i::myComment = "TABLE";
-/*!
- Generate unique name
-*/
-const char* VISU::Table_i::GenerateName()
-{
- return VISU::GenerateName( "Table", ++myNbPresent );
-}
-/*!
- Gets comment string
-*/
-const char* VISU::Table_i::GetComment() const
-{
- return myComment.c_str();
-}
-/*!
- Constructor
-*/
-VISU::Table_i::Table_i( SALOMEDS::Study_ptr theStudy, const char* theObjectEntry )
- : PrsObject_i(theStudy)
-{
- mySObj = SALOMEDS::SObject::_duplicate((theStudy->FindObjectID(theObjectEntry)));
- myOrientation = VISU::Table::HORIZONTAL;
-}
-/*!
- Destructor
-*/
-VISU::Table_i::~Table_i()
-{
- MESSAGE("Table_i::~Table_i");
-}
-/*!
- Gets number of rows in table
-*/
-CORBA::Long VISU::Table_i::GetNbRows()
-{
- SALOMEDS::SObject_var SO = mySObj;
- SALOMEDS::StudyBuilder_var Builder = myStudy->NewBuilder();
- if ( !SO->_is_nil() ) {
- SALOMEDS::GenericAttribute_var anAttr;
- if ( Builder->FindAttribute( SO, anAttr, "AttributeTableOfInteger" ) ) {
- SALOMEDS::AttributeTableOfInteger_var anInt = SALOMEDS::AttributeTableOfInteger::_narrow( anAttr );
- return anInt->GetNbRows();
- }
- else if ( Builder->FindAttribute( SO, anAttr, "AttributeTableOfReal" ) ) {
- SALOMEDS::AttributeTableOfReal_var aReal = SALOMEDS::AttributeTableOfReal::_narrow( anAttr );
- return aReal->GetNbRows();
- }
- }
- return 0;
-}
-/*!
- Gets number of columns in table
-*/
-CORBA::Long VISU::Table_i::GetNbColumns()
-{
- SALOMEDS::SObject_var SO = mySObj;
- SALOMEDS::StudyBuilder_var Builder = myStudy->NewBuilder();
- if ( !SO->_is_nil() ) {
- SALOMEDS::GenericAttribute_var anAttr;
- if ( Builder->FindAttribute( SO, anAttr, "AttributeTableOfInteger" ) ) {
- SALOMEDS::AttributeTableOfInteger_var anInt = SALOMEDS::AttributeTableOfInteger::_narrow( anAttr );
- return anInt->GetNbColumns();
- }
- else if ( Builder->FindAttribute( SO, anAttr, "AttributeTableOfReal" ) ) {
- SALOMEDS::AttributeTableOfReal_var aReal = SALOMEDS::AttributeTableOfReal::_narrow( anAttr );
- return aReal->GetNbColumns();
- }
- }
- return 0;
-}
-/*!
- Creates table object
-*/
-VISU::Storable* VISU::Table_i::Create()
-{
- // generate name ...
- myName = GetTableTitle();
-
- // mpv (PAL 5357): if name attribute already exist at this label, use it as name of table
- if ( myName == "" )
- 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()) myName = mySObj->GetName();
- }
-
- if ( myName == "" )
- myName = GenerateName();
- // ... and build the object
- return Build( false );
-}
-/*!
- Builds presentation of table
-*/
-VISU::Storable* VISU::Table_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::StudyBuilder_var Builder = myStudy->NewBuilder();
- SALOMEDS::GenericAttribute_var anAttr;
- // look for component
- if ( !theRestoring ) {
- SALOMEDS::SComponent_var SComponent = VISU::FindOrCreateVisuComponent( myStudy );
- // create SObject and set attributes
- QString aComment;
- if(pCutLines)
- aComment.sprintf("myComment=%s;myType=%d;mySourceId=CutLines",GetComment(),VISU::TTABLE);
- else{
- aComment.sprintf("myComment=%s;myType=%d;mySourceId=TableAttr",GetComment(),VISU::TTABLE);
- SALOMEDS::SObject_var aFatherSObject = SO->GetFather();
- if(aFatherSObject->FindAttribute(anAttr,"AttributeComment")){
- SALOMEDS::AttributeComment_var aCommentAttr =
- SALOMEDS::AttributeComment::_narrow(anAttr);
- CORBA::String_var aValue = aCommentAttr->Value();
- Storable::TRestoringMap aMap;
- Storable::StrToMap(aValue.in(),aMap);
- bool anIsExist;
- QString aMethodName = VISU::Storable::FindValue(aMap,"myComment",&anIsExist);
- if(anIsExist){
- if(strcmp(aMethodName.latin1(),"ImportTables") == 0){
- aComment.sprintf("myComment=%s;myType=%d;mySourceId=TableFile",GetComment(),VISU::TTABLE);
- }
- }
- }
- }
-
- string anEntry = CreateAttributes( myStudy,
- SO->GetID(),//SComponent->GetID(),
- "",
- GetID(),
- GetName(),
- "",
- aComment.latin1(),
- pCutLines );
- // create SObject referenced to real table object
- mySObj = SALOMEDS::SObject::_duplicate(myStudy->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::Table_i::Restore( const Storable::TRestoringMap& theMap, SALOMEDS::SObject_ptr SO)
-{
- if(MYDEBUG) MESSAGE(GetComment());
- myName = (const char*)(VISU::Storable::FindValue(theMap,"myName"));
- myTitle = (const char*)(VISU::Storable::FindValue(theMap,"myTitle"));
- myOrientation = ( VISU::Table::Orientation )( VISU::Storable::FindValue(theMap,"myOrientation").toInt() );
- mySObj = SALOMEDS::SObject::_duplicate(SO);
- return Build( true );
-}
-/*!
- Flushes table data into stream
-*/
-void VISU::Table_i::ToStream( std::ostringstream& theStr )
-{
- Storable::DataToStream( theStr, "myName", myName.c_str() );
- Storable::DataToStream( theStr, "myTitle", myTitle.c_str() );
- Storable::DataToStream( theStr, "myOrientation", myOrientation );
-}
-/*!
- Called from engine to restore table from the file
-*/
-VISU::Storable* VISU::Table_i::Restore(SALOMEDS::SObject_ptr theSObject,
- const string& thePrefix, const Storable::TRestoringMap& theMap)
-{
- SALOMEDS::Study_var aStudy = theSObject->GetStudy();
- VISU::Table_i* pResent = new VISU::Table_i( aStudy, "" );
- return pResent->Restore( theMap, theSObject);
-}
-/*!
- Gets title for the original table object
-*/
-const char* VISU::Table_i::GetTableTitle()
-{
- SALOMEDS::SObject_var SO = mySObj;
- SALOMEDS::StudyBuilder_var Builder = myStudy->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 );
- return anInt->GetTitle();
- }
- else if ( Builder->FindAttribute( SO, anAttr, "AttributeTableOfReal" ) ) {
- aReal = SALOMEDS::AttributeTableOfReal::_narrow( anAttr );
- return aReal->GetTitle();
- }
- }
- return "";
-}
-
-void VISU::Table_i::RemoveFromStudy()
-{
- // Remove the table with all curves
- VISU::RemoveFromStudy(mySObj,false);
-}
-
-//----------------------------------------------------------------
-// Curve Object
-//----------------------------------------------------------------
-/*!
- Restores table object from the stream [ static ]
-*/
-static VISU::Table_i* GetTable( SALOMEDS::Study_ptr theStudy, SALOMEDS::SObject_ptr theSO ) {
- CORBA::Object_var anObject = VISU::SObjectToObject( theSO );
- if( !CORBA::is_nil( anObject ) ) {
- CORBA::Object_ptr aTable = VISU::Table::_narrow( anObject );
- if( !CORBA::is_nil( aTable ) )
- return dynamic_cast<VISU::Table_i*>(VISU::GetServant(aTable).in());
- }
- return NULL;
-}
-
-int VISU::Curve_i::myNbPresent = 0;
-const string VISU::Curve_i::myComment = "CURVE";
-/*!
- Generate unique name
-*/
-const char* VISU::Curve_i::GenerateName()
-{
- return VISU::GenerateName( "Curve", ++myNbPresent );
-}
-/*!
- Gets comment string
-*/
-const char* VISU::Curve_i::GetComment() const
-{
- return myComment.c_str();
-}
-/*!
- Constructor
- NB : theHRow, theVRow are the indexes of rows in the Table object and numbered from the 1 to GetNbRows()
-*/
-VISU::Curve_i::Curve_i(SALOMEDS::Study_ptr theStudy, Table_i* theTable, CORBA::Long theHRow, CORBA::Long theVRow )
- : PrsObject_i(theStudy), myTable( theTable ), myHRow( theHRow ), myVRow( theVRow )
-{
- myAuto = true;
- myLine = VISU::Curve::SOLIDLINE;
- myLineWidth = 0;
- myMarker = VISU::Curve::CIRCLE;
- myColor.R = 0.0; myColor.G = 0.0; myColor.B = 0.0;
-}
-/*!
- Destructor
-*/
-VISU::Curve_i::~Curve_i()
-{
- MESSAGE("Curve_i::~Curve_i");
-}
-/*!
- Creates curve object
-*/
-VISU::Storable* VISU::Curve_i::Create()
-{
- // generate name ...
- myName = GetVerTitle();
- if ( myName == "" )
- myName = GenerateName();
- // ... and build the object
- return Build( false );
-}
-/*!
- Builds presentation of curve
-*/
-VISU::Storable* VISU::Curve_i::Build(int theRestoring )
-{
- if ( myTable != NULL ) {
- // getting table SObject by it's entry
- int nbRows = myTable->GetNbRows();
- if ( myHRow > 0 && myHRow <= nbRows && myVRow > 0 && myVRow <= nbRows ) {
- if ( !theRestoring ) {
- // look for component
- SALOMEDS::SComponent_var SComponent = VISU::FindOrCreateVisuComponent( myStudy );
- // create SObject and set attributes
- QString aComment;
- aComment.sprintf("myComment=%s;myType=%d",GetComment(),VISU::TCURVE);
- string anEntry = CreateAttributes( myStudy,
- myTable->GetObjectEntry(),
- "",
- GetID(),
- GetName(),
- "",
- aComment.latin1(),
- true );
- // create SObject referenced to real table object
- mySObj = SALOMEDS::SObject::_duplicate(myStudy->FindObjectID(anEntry.c_str()));
- }
- return this;
- }
- }
- return NULL;
-}
-
-/*!
- Returns CORBA::True if curve refers to valid table data
-*/
-CORBA::Boolean VISU::Curve_i::IsValid()
-{
- // getting table SObject by it's entry
- SALOMEDS::SObject_var SO = myStudy->FindObjectID(myTable->GetObjectEntry());
- SALOMEDS::StudyBuilder_var Builder = myStudy->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 );
- if ( myHRow > 0 && myHRow <= anInt->GetNbRows() && myVRow > 0 && myVRow <= anInt->GetNbRows() ) {
- return true;
- }
- }
- else if ( Builder->FindAttribute( SO, anAttr, "AttributeTableOfReal" ) ) {
- aReal = SALOMEDS::AttributeTableOfReal::_narrow( anAttr );
- if ( myHRow > 0 && myHRow <= aReal->GetNbRows() && myVRow > 0 && myVRow <= aReal->GetNbRows() ) {
- return true;
- }
- }
- }
- return false;
-}
-/*!
- Returns hor.axis title
-*/
-string VISU::Curve_i::GetHorTitle()
-{
- string title;
- // getting table SObject by it's entry
- SALOMEDS::SObject_var SO = myStudy->FindObjectID(myTable->GetObjectEntry());
- SALOMEDS::StudyBuilder_var Builder = myStudy->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 );
- SALOMEDS::StringSeq_var rowTitles = anInt->GetRowTitles();
- if ( rowTitles->length() > 0 && myHRow > 0 && myHRow <= anInt->GetNbRows() ) {
- title = rowTitles[ myHRow-1 ];
- }
- }
- else if ( Builder->FindAttribute( SO, anAttr, "AttributeTableOfReal" ) ) {
- aReal = SALOMEDS::AttributeTableOfReal::_narrow( anAttr );
- SALOMEDS::StringSeq_var rowTitles = aReal->GetRowTitles();
- if ( rowTitles->length() > 0 && myHRow > 0 && myHRow <= aReal->GetNbRows() ) {
- title = rowTitles[ myHRow-1 ];
- }
- }
- }
- return title;
-}
-/*!
- Returns ver.axis title
-*/
-string VISU::Curve_i::GetVerTitle()
-{
- string title;
- // getting table SObject by it's entry
- SALOMEDS::SObject_var SO = myStudy->FindObjectID(myTable->GetObjectEntry());
- SALOMEDS::StudyBuilder_var Builder = myStudy->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 );
- SALOMEDS::StringSeq_var rowTitles = anInt->GetRowTitles();
- if ( rowTitles->length() > 0 && myVRow > 0 && myVRow <= anInt->GetNbRows() )
- title = rowTitles[ myVRow-1 ];
- }
- else if ( Builder->FindAttribute( SO, anAttr, "AttributeTableOfReal" ) ) {
- aReal = SALOMEDS::AttributeTableOfReal::_narrow( anAttr );
- SALOMEDS::StringSeq_var rowTitles = aReal->GetRowTitles();
- if ( rowTitles->length() > 0 && myVRow > 0 && myVRow <= aReal->GetNbRows() )
- title = rowTitles[ myVRow-1 ];
- }
- }
- return title;
-}
-/*!
- Returns hor.axis units
-*/
-string VISU::Curve_i::GetHorUnits()
-{
- string units;
- // getting table SObject by it's entry
- SALOMEDS::SObject_var SO = myStudy->FindObjectID(myTable->GetObjectEntry());
- SALOMEDS::StudyBuilder_var Builder = myStudy->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 );
- SALOMEDS::StringSeq_var rowUnits = anInt->GetRowUnits();
- if ( rowUnits->length() > 0 && myHRow > 0 && myHRow <= anInt->GetNbRows() )
- units = rowUnits[ myHRow-1 ];
- }
- else if ( Builder->FindAttribute( SO, anAttr, "AttributeTableOfReal" ) ) {
- aReal = SALOMEDS::AttributeTableOfReal::_narrow( anAttr );
- SALOMEDS::StringSeq_var rowUnits = aReal->GetRowUnits();
- if ( rowUnits->length() > 0 && myHRow > 0 && myHRow <= aReal->GetNbRows() )
- units = rowUnits[ myHRow-1 ];
- }
- }
- return units;
-}
-/*!
- Returns ver.axis units
-*/
-string VISU::Curve_i::GetVerUnits()
-{
- string units;
- // getting table SObject by it's entry
- SALOMEDS::SObject_var SO = myStudy->FindObjectID(myTable->GetObjectEntry());
- SALOMEDS::StudyBuilder_var Builder = myStudy->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 );
- SALOMEDS::StringSeq_var rowUnits = anInt->GetRowUnits();
- if ( rowUnits->length() > 0 && myVRow > 0 && myVRow <= anInt->GetNbRows() )
- units = rowUnits[ myVRow-1];
- }
- else if ( Builder->FindAttribute( SO, anAttr, "AttributeTableOfReal" ) ) {
- aReal = SALOMEDS::AttributeTableOfReal::_narrow( anAttr );
- SALOMEDS::StringSeq_var rowUnits = aReal->GetRowUnits();
- if ( rowUnits->length() > 0 && myVRow > 0 && myVRow <= aReal->GetNbRows() )
- units = rowUnits[ myVRow-1 ];
- }
- }
- return units;
-}
-/*!
- Gets curve data
-*/
-int VISU::Curve_i::GetData( double*& theHorList, double*& theVerList )
-{
- theHorList = 0; theVerList = 0;
- // getting table SObject by it's entry
- SALOMEDS::SObject_var SO = myStudy->FindObjectID(myTable->GetObjectEntry());
- SALOMEDS::StudyBuilder_var Builder = myStudy->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 );
- int nbCols = anInt->GetNbColumns() ;
- if ( nbCols > 0 && myHRow > 0 && myHRow <= anInt->GetNbRows() && myVRow > 0 && myVRow <= anInt->GetNbRows() ) {
- int nbPoints = 0;
- for ( int j = 1; j <= nbCols; j++ ) {
- if ( anInt->HasValue( myHRow, j ) && anInt->HasValue( myVRow, j ) )
- nbPoints++;
- }
- if ( nbPoints > 0 ) {
- theHorList = new double[ nbPoints ];
- theVerList = new double[ nbPoints ];
- int k = 0;
- for ( int j = 1; j <= nbCols; j++ ) {
- if ( anInt->HasValue( myHRow, j ) && anInt->HasValue( myVRow, j ) ) {
- theHorList[k] = anInt->GetValue( myHRow, j );
- theVerList[k] = anInt->GetValue( myVRow, j );
- k++;
- }
- }
- }
- return nbPoints;
- }
- }
- else if ( Builder->FindAttribute( SO, anAttr, "AttributeTableOfReal" ) ) {
- aReal = SALOMEDS::AttributeTableOfReal::_narrow( anAttr );
- int nbCols = aReal->GetNbColumns() ;
- if ( nbCols > 0 && myHRow > 0 && myHRow <= aReal->GetNbRows() && myVRow > 0 && myVRow <= aReal->GetNbRows() ) {
- int nbPoints = 0;
- for ( int j = 1; j <= nbCols; j++ ) {
- if ( aReal->HasValue( myHRow, j ) && aReal->HasValue( myVRow, j ) )
- nbPoints++;
- }
- if ( nbPoints > 0 ) {
- theHorList = new double[ nbPoints ];
- theVerList = new double[ nbPoints ];
- int k = 0;
- for ( int j = 1; j <= nbCols; j++ ) {
- if ( aReal->HasValue( myHRow, j ) && aReal->HasValue( myVRow, j ) ) {
- theHorList[k] = aReal->GetValue( myHRow, j );
- theVerList[k] = aReal->GetValue( myVRow, j );
- k++;
- }
- }
- }
- return nbPoints;
- }
- }
- }
- return 0;
-}
-/*!
- Creates curve Plot2d presentation object
-*/
-SPlot2d_Curve* VISU::Curve_i::CreatePresentation()
-{
- SPlot2d_Curve* crv = new SPlot2d_Curve();
- crv->setHorTitle( GetHorTitle().c_str() );
- string tlt = GetTitle();
- if ( tlt.length() <= 0 )
- tlt = GetVerTitle();
- //crv->setVerTitle( strdup( GetVerTitle().c_str() ) );
- //crv->setVerTitle( strdup( GetName() ) );
- crv->setVerTitle( tlt.c_str() );
- crv->setHorUnits( GetHorUnits().c_str() );
- crv->setVerUnits( GetVerUnits().c_str() );
- double* xList = 0;
- double* yList = 0;
- int nbPoints = GetData( xList, yList );
- if ( nbPoints > 0 && xList && yList ) {
- crv->setData( xList, yList, nbPoints );
- }
- //cout << "********** Number of points: " << nbPoints <<endl;
- //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() );
- SALOMEDS::Color color = GetColor();
- crv->setColor( QColor( (int)(color.R*255.), (int)(color.G*255.), (int)(color.B*255.) ) );
- crv->setAutoAssign( IsAuto() );
- crv->setIO(new SALOME_InteractiveObject(mySObj->GetID(),"VISU",GetName()));
- if ( myTable )
- crv->setTableIO(new SALOME_InteractiveObject(myTable->GetObjectEntry(),"VISU",myTable->GetName()));
- return crv;
-}
-/*!
- Restores curve object from stream
-*/
-VISU::Storable* VISU::Curve_i::Restore( const Storable::TRestoringMap& theMap, SALOMEDS::SObject_ptr theSO)
-{
- if(MYDEBUG) MESSAGE(GetComment());
- mySObj = SALOMEDS::SObject::_duplicate(theSO);
- myName = VISU::Storable::FindValue(theMap,"myName").latin1();
- myHRow = VISU::Storable::FindValue(theMap,"myHRow").toInt();
- myVRow = VISU::Storable::FindValue(theMap,"myVRow").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();
- myMarker = ( VISU::Curve::MarkerType )( VISU::Storable::FindValue(theMap,"myMarker").toInt() );
- myLine = ( VISU::Curve::LineType )( VISU::Storable::FindValue(theMap,"myLine").toInt() );
- myLineWidth = VISU::Storable::FindValue(theMap,"myLineWidth").toInt();
- myAuto = VISU::Storable::FindValue(theMap,"myAuto").toInt();
- return Build( true );
-}
-/*!
- Flushes curve data into stream
-*/
-void VISU::Curve_i::ToStream( std::ostringstream& theStr )
-{
- Storable::DataToStream( theStr, "myName", myName.c_str() );
- Storable::DataToStream( theStr, "myHRow", myHRow );
- Storable::DataToStream( theStr, "myVRow", myVRow );
- Storable::DataToStream( theStr, "myColor.R", myColor.R );
- Storable::DataToStream( theStr, "myColor.G", myColor.G );
- Storable::DataToStream( theStr, "myColor.B", myColor.B );
- Storable::DataToStream( theStr, "myMarker", myMarker );
- Storable::DataToStream( theStr, "myLine", myLine );
- Storable::DataToStream( theStr, "myLineWidth", myLineWidth );
- Storable::DataToStream( theStr, "myAuto", myAuto );
-}
-/*!
- Gets reference table's entry
-*/
-const char* VISU::Curve_i::GetTableID() {
- return myTable->GetObjectEntry();
-}
-/*!
- Called from engine to restore curve from the file
-*/
-VISU::Storable* VISU::Curve_i::Restore(SALOMEDS::SObject_ptr theSObject,
- const string& thePrefix, const Storable::TRestoringMap& theMap)
-{
- SALOMEDS::Study_var aStudy = theSObject->GetStudy();
- VISU::Table_i* pTable = GetTable(aStudy, theSObject->GetFather());
- if( pTable != NULL ) {
- VISU::Curve_i* pResent = new VISU::Curve_i( aStudy, pTable, 0, 0 );
- return pResent->Restore( theMap, theSObject);
- }
- return NULL;
-}
-
-void VISU::Curve_i::RemoveFromStudy()
-{
- VISU::DeleteActors(this);
- VISU::RemoveFromStudy(mySObj,false);
-}
-
-SALOMEDS::SObject_var VISU::Curve_i::GetSObject()
-{
- return mySObj;
-}
-
-//----------------------------------------------------------------
-// Container Object
-//----------------------------------------------------------------
-int VISU::Container_i::myNbPresent = 0;
-const string VISU::Container_i::myComment = "CONTAINER";
-/*!
- Generate unique name
-*/
-const char* VISU::Container_i::GenerateName()
-{
- return VISU::GenerateName( "Plot2DView", ++myNbPresent );
-}
-/*!
- Gets comment string
-*/
-const char* VISU::Container_i::GetComment() const
-{
- return myComment.c_str();
-}
-/*!
- Constructor
-*/
-VISU::Container_i::Container_i( SALOMEDS::Study_ptr theStudy )
- : PrsObject_i( theStudy )
-{
-}
-/*!
- Destructor
-*/
-VISU::Container_i::~Container_i()
-{
- MESSAGE("Container_i::~Container_i");
- myCurves.clear();
-}
-/*!
- Inserts curve into the container
-*/
-void VISU::Container_i::AddCurve( Curve_ptr theCurve )
-{
- if ( myStudy->_is_nil() )
- return;
- SALOMEDS::SObject_var mySO = myStudy->FindObjectID( GetEntry() );
- if ( mySO->_is_nil() )
- return;
- 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 = myStudy->FindObjectID( entry.latin1() );
- if ( !SO->_is_nil() && myCurves.find( entry ) == myCurves.end() ) {
- myCurves.append( entry );
- SALOMEDS::StudyBuilder_var Builder = myStudy->NewBuilder();
- SALOMEDS::SObject_var newSO = Builder->NewObject( mySO );
- Builder->Addreference( newSO, SO );
- }
- }
-}
-/*!
- Removes curve from the container
-*/
-void VISU::Container_i::RemoveCurve( Curve_ptr theCurve )
-{
- if ( myStudy->_is_nil() )
- return;
- SALOMEDS::SObject_var mySO = myStudy->FindObjectID( GetEntry() );
- if ( mySO->_is_nil() )
- return;
- 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() ) {
- // found !!!
- myCurves.remove( entry );
- SALOMEDS::StudyBuilder_var Builder = myStudy->NewBuilder();
- SALOMEDS::ChildIterator_var CI = myStudy->NewChildIterator( mySO );
- for ( ; CI->More(); CI->Next() ) {
- SALOMEDS::SObject_var childSO = CI->Value();
- SALOMEDS::SObject_var refSO;
- if ( childSO->ReferencedObject( refSO ) && !refSO->_is_nil() && entry == QString( refSO->GetID() ) ) {
- Builder->RemoveObject( childSO );
- }
- }
- }
- }
-}
-/*!
- Gets number of curves in the container
-*/
-CORBA::Long VISU::Container_i::GetNbCurves()
-{
- Update();
- return myCurves.count();
-}
-/*!
- Clears container
-*/
-void VISU::Container_i::Clear()
-{
- if ( myStudy->_is_nil() )
- return;
- SALOMEDS::SObject_var mySO = myStudy->FindObjectID( GetEntry() );
- if ( mySO->_is_nil() )
- return;
- QStringList toDelete;
- SALOMEDS::ChildIterator_var CI = myStudy->NewChildIterator( mySO );
- for ( ; CI->More(); CI->Next() ) {
- toDelete.append( CI->Value()->GetID() );
- }
- SALOMEDS::StudyBuilder_var Builder = myStudy->NewBuilder();
- for ( int i = 0; i < toDelete.count(); i++ ) {
- SALOMEDS::SObject_var SO = myStudy->FindObjectID( toDelete[i].latin1() );
- Builder->RemoveObject( SO );
- }
- myCurves.clear();
-}
-/*!
- Creates container object
-*/
-VISU::Storable* VISU::Container_i::Create()
-{
- // generate name ...
- myName = GenerateName();
- // ... and build the object
- return Build( false );
-}
-/*!
- Builds presentation of container
-*/
-VISU::Storable* VISU::Container_i::Build( int theRestoring )
-{
- if ( !theRestoring ) {
- // looking for component
- SALOMEDS::SComponent_var SComponent = VISU::FindOrCreateVisuComponent( myStudy );
- // create SObject and set attributes
- QString aComment;
- aComment.sprintf("myComment=%s;myType=%d",GetComment(),VISU::TCONTAINER);
- string anEntry = CreateAttributes( myStudy,
- SComponent->GetID(),
- "",
- GetID(),
- GetName(),
- "",
- aComment.latin1(),
- true );
- mySObj = SALOMEDS::SObject::_duplicate(myStudy->FindObjectID(anEntry.c_str()));
- }
- return this;
-}
-/*!
- Updates presentation of container
-*/
-void VISU::Container_i::Update()
-{
- if ( myStudy->_is_nil() )
- return;
- SALOMEDS::StudyBuilder_var Builder = myStudy->NewBuilder();
- SALOMEDS::SObject_var mySO = myStudy->FindObjectID( GetEntry() );
- SALOMEDS::GenericAttribute_var anAttr;
- if ( !mySO->_is_nil() ) {
- QStringList toDelete;
- int i;
- for ( i = 0; i < myCurves.count(); i++ ) {
- SALOMEDS::SObject_var SO = myStudy->FindObjectID( myCurves[i].latin1() );
- if ( !SO->_is_nil() && Builder->FindAttribute( SO, anAttr, "AttributeIOR" ) ) {
- // if real Curve Object still exists
- SALOMEDS::ChildIterator_var CI = myStudy->NewChildIterator( mySO );
- bool bFound = false;
- for ( ; CI->More(); CI->Next() ) {
- SALOMEDS::SObject_var childSO = CI->Value();
- SALOMEDS::SObject_var refSO;
- if ( childSO->ReferencedObject( refSO ) && !refSO->_is_nil() && myCurves[i] == QString( refSO->GetID() ) ) {
- bFound = true; break;
- }
- }
- if (! bFound ) {
- // create SObject referenced to real curve object if is not yet added
- SALOMEDS::SObject_var newSO = Builder->NewObject( mySO );
- Builder->Addreference( newSO, SO );
- }
- }
- else {
- // real Curve Object doesn't exist (might be removed)
- toDelete.append( myCurves[i] );
- }
- }
- for ( i = 0; i < toDelete.count(); i++ ) {
- myCurves.remove( toDelete[i] );
- }
- toDelete.clear();
- SALOMEDS::ChildIterator_var CI = myStudy->NewChildIterator( mySO );
- for ( ; CI->More(); CI->Next() ) {
- 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() ) ) {
- toDelete.append( childSO->GetID() );
- }
- }
- for ( i = 0; i < toDelete.count(); i++ ) {
- SALOMEDS::ChildIterator_var CI = myStudy->NewChildIterator( mySO );
- for ( ; CI->More(); CI->Next() ) {
- SALOMEDS::SObject_var childSO = CI->Value();
- if ( toDelete[i] == CI->Value()->GetID() ) {
- Builder->RemoveObject( childSO );
- }
- }
- }
- }
-}
-/*!
- Gets curve from container by index
- NB : curves are numbered from 1
-*/
-VISU::Curve_i* VISU::Container_i::GetCurve( CORBA::Long theIndex )
-{
- if ( theIndex > 0 && theIndex <= myCurves.count() ) {
- SALOMEDS::StudyBuilder_var Builder = myStudy->NewBuilder();
- SALOMEDS::GenericAttribute_var anAttr;
- SALOMEDS::SObject_var SO = myStudy->FindObjectID( myCurves[ theIndex-1 ].latin1() );
- CORBA::Object_var anObject = VISU::SObjectToObject( SO );
- if( !CORBA::is_nil( anObject ) ) {
- // if real Curve Object exists
- CORBA::Object_ptr aCurve = VISU::Curve::_narrow( anObject );
- if( !CORBA::is_nil( aCurve ) )
- return dynamic_cast<VISU::Curve_i*>(VISU::GetServant(aCurve).in());
- }
- }
- return NULL;
-}
-/*!
- Restores container data from the stream
-*/
-VISU::Storable* VISU::Container_i::Restore( const Storable::TRestoringMap& theMap, SALOMEDS::SObject_ptr SO )
-{
- if(MYDEBUG) MESSAGE(GetComment());
- mySObj = SALOMEDS::SObject::_duplicate(SO);
- myName = VISU::Storable::FindValue( theMap, "myName" ).latin1();
- QString val = VISU::Storable::FindValue( theMap, "myCurves" );
- myCurves = QStringList::split( QString( "*" ), val, false );
- return Build( true );
-}
-/*!
- Flushes container data into the stream
-*/
-void VISU::Container_i::ToStream( std::ostringstream& theStr )
-{
- Storable::DataToStream( theStr, "myName", myName.c_str() );
- Storable::DataToStream( theStr, "myCurves", myCurves.join( QString( "*" ) ) );
-// theStr<<" myName "<<myName;
-// theStr<<" myCurves "<<myCurves.join( QString( "*" ) ).latin1()<<"* ";
-}
-/*!
- Called from engine to restore container from the file
-*/
-VISU::Storable* VISU::Container_i::Restore(SALOMEDS::SObject_ptr theSObject,
- const string& thePrefix, const Storable::TRestoringMap& theMap)
-{
- SALOMEDS::Study_var aStudy = theSObject->GetStudy();
- VISU::Container_i* pResent = new VISU::Container_i( aStudy );
- return pResent->Restore( theMap, theSObject );
-}
-
-void VISU::Container_i::RemoveFromStudy()
-{
- VISU::RemoveFromStudy(mySObj,false);
-}
-
-//-------------------------------------------------------------
-// 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;
- }
- QStringList aValList = QStringList::split( " ", data );
- 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){
- 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);
- SALOMEDS::GenericAttribute_var anAttr =
- aStudyBuilder->FindOrCreateAttribute(aFileObject, "AttributeName");
- SALOMEDS::AttributeName_var aName = SALOMEDS::AttributeName::_narrow(anAttr);
- QFileInfo aFileInfo(theFileName);
- aName->SetValue(aFileInfo.fileName().latin1());
- anAttr = aStudyBuilder->FindOrCreateAttribute(aFileObject, "AttributeComment");
- SALOMEDS::AttributeComment_var aComment = SALOMEDS::AttributeComment::_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];
- 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 != "")
- aName->SetValue(aTable2D.myTitle.c_str());
- else{
- QString aNewName;
- aNewName.sprintf("Table:%d",i);
- aName->SetValue(aNewName.latin1());
- }
- anAttr = aStudyBuilder->FindOrCreateAttribute(aRealObject, "AttributeTableOfReal");
- SALOMEDS::AttributeTableOfReal_var aTableOfReal = SALOMEDS::AttributeTableOfReal::_narrow(anAttr);
- aTableOfReal->SetTitle(aTable2D.myTitle.c_str());
- TTable2D aNewTable2D;
- aTable2D.getColumns(aNewTable2D);
- 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;
-
- 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))
- aTableOfReal->PutValue(aValue,j+1,k+1);
- }
-
- aTableOfReal->SetRowTitle(j+1,aNewTable2D.myRows[j].myTitle.c_str());
- aTableOfReal->SetRowUnit(j+1,aNewTable2D.myRows[j].myUnit.c_str());
- }
- for(int k = 0; k < kEnd; k++)
- aTableOfReal->SetColumnTitle(k+1,aNewTable2D.myColumnTitles[k].c_str());
- }
- return aFileObject;
-}
-
-template<class TTableAttr> bool ExportTableToFile(const TTableAttr& aTabAttr,
- const char* theFileName)
-{
- if (!CORBA::is_nil(aTabAttr)) {
- QFile aFile(theFileName);
- aFile.open(IO_WriteOnly);
-
- /* extract the tabe info and write it into file */
-
- QString aTitle(aTabAttr->GetTitle()); /*Table title*/
- int aRowsNb = aTabAttr->GetNbRows();
- int aColNb = aTabAttr->GetNbColumns();
-
- SALOMEDS::StringSeq_var aRowTitles = aTabAttr->GetRowTitles();
- QString anAbscissTitle(aRowTitles[0]); /*Absciss row title (X coord)*/
- anAbscissTitle.stripWhiteSpace();
-
- SALOMEDS::StringSeq_var aRowUnits = aTabAttr->GetRowUnits();
- QString anAbscissUnit(aRowUnits[0]);
- anAbscissUnit.stripWhiteSpace();
-
- SALOMEDS::StringSeq_var aColumnTitles = aTabAttr->GetColumnTitles();
- 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();
-
- aLine = "#TITLE: " + aTitle +
- ((anOrdinate.length())? anOrdinate :
- (aRowsNb>2)? aTail.sprintf("%d",i-1) : aTail.sprintf("") ) + "\n";
- aFile.writeBlock(aLine, aLine.length() );
-
- /* COLUMN_TITLES */
- if ( anAbscissTitle.length() || anOrdinate.length() ) {
- aLine = "#COLUMN_TITLES: " + anAbscissTitle + " | " + anOrdinate + "\n";
- aFile.writeBlock(aLine, aLine.length() );
- }
-
- /* COLUMN_UNITS */
- aLine = anAbscissUnit + " " +aRowUnits[i-1];
- if (!aLine.stripWhiteSpace().isEmpty()) {
- aLine = "#COLUMN_UNITS: " + aLine + "\n";
- aFile.writeBlock(aLine, aLine.length() );
- }
-
- /* CURVE COORDINATES */
- for (int j = 1; j <= aColNb; j++)
- {
- if ( aTabAttr -> HasValue(i,j) && aTabAttr -> HasValue(1, j)) {
- 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() ) {
- QString aColTitle(aColumnTitles[j-1]);
- if ( !aColTitle.stripWhiteSpace().isEmpty() )
- aLine = aLine + " #TITLE: " + aColTitle ;
- aFile.writeBlock(aLine + "\n", aLine.length() + 1);
- }
- }
- }
- aFile.writeBlock("\n", 1);
- }
- aFile.close();
- return true;
- }
- return false;
-}
-
-bool VISU::ExportTableToFile(SALOMEDS::SObject_ptr theTable, const char* theFileName)
-{
- //Find table
- SALOMEDS::GenericAttribute_var anAttr ;
- if (theTable->FindAttribute(anAttr, "AttributeTableOfReal"))
- {
- SALOMEDS::AttributeTableOfReal_var aTabAttr = SALOMEDS::AttributeTableOfReal ::_narrow(anAttr);
- return ExportTableToFile ( aTabAttr , theFileName);
-
- }
- else if (theTable->FindAttribute(anAttr, "AttributeTableOfInteger")) {
-
- SALOMEDS::AttributeTableOfInteger_var aTabAttr = SALOMEDS::AttributeTableOfInteger ::_narrow(anAttr);
- return ExportTableToFile ( aTabAttr , theFileName);
-
- }
- return false;
-}
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// 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>
-
-class SPlot2d_Curve;
-
-namespace VISU{
- //==============================================================================
- class Table_i : public virtual POA_VISU::Table,
- public virtual PrsObject_i
- {
- static int myNbPresent;
- Table_i();
- Table_i( const Table_i& );
- public:
- Table_i( SALOMEDS::Study_ptr theStudy, const char* theObject );
- virtual ~Table_i();
- virtual VISU::VISUType GetType() { return VISU::TTABLE;};
-
- virtual void SetTitle( const char* theName ) { SetName( theName ); }
- virtual char* GetTitle() { return CORBA::string_dup( GetName() ); }
-
- virtual void SetOrientation( VISU::Table::Orientation theOrientation ) { myOrientation = theOrientation; }
- virtual VISU::Table::Orientation GetOrientation() { return myOrientation; }
-
- virtual CORBA::Long GetNbRows();
- virtual CORBA::Long GetNbColumns();
-
- virtual void RemoveFromStudy();
-
- protected:
- Storable* Build(int theRestoring);
-
- protected:
- VISU::Table::Orientation myOrientation;
- std::string myTitle;
- SALOMEDS::SObject_var mySObj;
-
- public:
- virtual Storable* Create();
- SALOMEDS::SObject_var GetSObject() const { return mySObj;}
-
- virtual Storable* Restore( const Storable::TRestoringMap& theMap, SALOMEDS::SObject_ptr SO);
- static Storable* Restore(SALOMEDS::SObject_ptr theSObject,
- const std::string& thePrefix,
- const Storable::TRestoringMap& theMap);
- virtual void ToStream( std::ostringstream& theStr );
- static const std::string myComment;
- virtual const char* GetComment() const;
- virtual const char* GenerateName();
- virtual const char* GetTableTitle();
-
- virtual char* GetObjectEntry() { return CORBA::string_dup( mySObj->GetID() ); }
- };
- SALOMEDS::SObject_var ImportTables(const char* theFileName, SALOMEDS::Study_ptr theStudy);
- bool ExportTableToFile(SALOMEDS::SObject_ptr theTable, const char* theFileName);
- //==============================================================================
- class Curve_i : public virtual POA_VISU::Curve,
- public virtual PrsObject_i
- {
- static int myNbPresent;
- Curve_i();
- Curve_i( const Curve_i& );
- public:
- Curve_i( SALOMEDS::Study_ptr theStudy, Table_i* theTable, CORBA::Long theHRow, CORBA::Long theVRow );
- virtual ~Curve_i();
- virtual VISU::VISUType GetType() { return VISU::TCURVE;};
-
- virtual void SetTitle( const char* theName ) { SetName( theName ); }
- virtual char* GetTitle() { return CORBA::string_dup( GetName() ); }
-
- virtual void SetColor( const SALOMEDS::Color& theColor ) { myColor = theColor; myAuto = false; }
- virtual SALOMEDS::Color GetColor() { return myColor; }
-
- virtual void SetMarker( VISU::Curve::MarkerType theType ) { myMarker = theType; myAuto = false; }
- virtual VISU::Curve::MarkerType GetMarker() { return myMarker; }
-
- virtual void SetLine( VISU::Curve::LineType theType, CORBA::Long theWidth )
- { myLine = theType; myLineWidth = theWidth; myAuto = false; }
- virtual VISU::Curve::LineType GetLine() { return myLine; }
- virtual CORBA::Long GetLineWidth() { return myLineWidth; }
-
- virtual void RemoveFromStudy();
-
- virtual SALOMEDS::SObject_var GetSObject();
-
- protected:
- Storable* Build(int theRestoring);
-
- protected:
- Table_i* myTable;
- int myHRow;
- int myVRow;
- struct SALOMEDS::Color myColor;
- VISU::Curve::MarkerType myMarker;
- VISU::Curve::LineType myLine;
- int myLineWidth;
- std::string myTitle;
- bool myAuto;
- SALOMEDS::SObject_var mySObj;
-
- public:
- virtual Storable* Create();
-
- int GetHRow() const { return myHRow;}
- int GetVRow() const { return myVRow;}
-
- virtual Storable* Restore( const Storable::TRestoringMap& theMap, SALOMEDS::SObject_ptr theSO);
-
- static Storable* Restore(SALOMEDS::SObject_ptr theSObject,
- const std::string& thePrefix,
- const Storable::TRestoringMap& theMap);
-
- virtual void ToStream( std::ostringstream& theStr );
- static const std::string myComment;
- virtual const char* GetComment() const;
- virtual const char* GenerateName();
- virtual const char* GetTableID();
-
- virtual CORBA::Boolean IsAuto() { return myAuto; }
- virtual CORBA::Boolean IsValid();
- virtual std::string GetHorTitle();
- virtual std::string GetVerTitle();
- virtual std::string GetHorUnits();
- virtual std::string GetVerUnits();
- virtual int GetData( double*& theHorList, double*& theVerList );
-
- virtual SPlot2d_Curve* CreatePresentation();
- };
-
- //==============================================================================
- class Container_i : public virtual POA_VISU::Container,
- public virtual PrsObject_i
- {
- static int myNbPresent;
- Container_i();
- Container_i( const Container_i& );
- public:
- Container_i(SALOMEDS::Study_ptr theStudy);
- virtual ~Container_i();
- virtual VISU::VISUType GetType() { return VISU::TCONTAINER;};
-
- virtual void AddCurve( Curve_ptr theCurve );
- virtual void RemoveCurve( Curve_ptr theCurve );
-
- virtual CORBA::Long GetNbCurves();
- virtual void Clear();
-
- virtual void RemoveFromStudy();
-
- protected:
- Storable* Build(int theRestoring);
-
- protected:
- QStringList myCurves;
- SALOMEDS::SObject_var mySObj;
-
- public:
- virtual Storable* Create();
- virtual Storable* Restore( const Storable::TRestoringMap& theMap, SALOMEDS::SObject_ptr SO );
-
- static Storable* Restore(SALOMEDS::SObject_ptr theSObject,
- const std::string& thePrefix,
- const Storable::TRestoringMap& theMap);
-
- virtual void ToStream( std::ostringstream& theStr );
- static const std::string myComment;
- virtual const char* GetComment() const;
- virtual const char* GenerateName();
-
- void Update();
- VISU::Curve_i* GetCurve( CORBA::Long theIndex );
-
- };
-}
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File : VISU_ViewManager_i.hh
-// Author : Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_ViewManager_i_HeaderFile
-#define VISU_ViewManager_i_HeaderFile
-
-#include "VISUConfig.hh"
-
-class SalomeApp_Application;
-
-class VISU_Actor;
-
-class SUIT_ViewWindow;
-
-class SVTK_ViewWindow;
-class Plot2d_ViewFrame;
-
-class vtkRenderer;
-class vtkCamera;
-
-
-namespace VISU {
- class Prs3d_i;
- class Curve_i;
-
- class ViewManager_i : public virtual POA_VISU::ViewManager,
- public virtual Base_i
- {
- public:
- ViewManager_i(SALOMEDS::Study_ptr theStudy);
- virtual ~ViewManager_i();
- virtual VISU::VISUType GetType() { return VISU::TVIEWMANAGER;};
-
- virtual View3D_ptr Create3DView();
- virtual View_ptr GetCurrentView();
- virtual TableView_ptr CreateTableView(VISU::Table_ptr theTable);
- virtual XYPlot_ptr CreateXYPlot();
- virtual void Destroy(View_ptr theView);
-
- protected:
- SalomeApp_Application *myApplication;
- };
-
- SVTK_ViewWindow* GetViewWindow (SUIT_ViewWindow* theStudyFrame);
- vtkRenderer* GetRenderer (SUIT_ViewWindow* theStudyFrame);
- vtkCamera* GetCamera (SUIT_ViewWindow* theStudyFrame);
-
- void RepaintView (SUIT_ViewWindow* theStudyFrame);
-
- enum Displaing {eDisplayAll, eDisplay, eDisplayOnly, eErase, eEraseAll};
- VISU_Actor* UpdateViewer (SUIT_ViewWindow* theStudyFrame, int theDisplaing, Prs3d_i* thePrs = NULL);
- void UpdatePlot2d (Plot2d_ViewFrame *theView, int theDisplaying, Curve_i* theCurve);
-
- VISU_Actor* GetActor (VISU::Prs3d_i* thePrs, SVTK_ViewWindow* theViewWindow);
-
- void DeleteActors (VISU::Prs3d_i* thePrs);
- void DeleteActors (VISU::Curve_i* thePrs);
-}
-
-#endif
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File : VISU_View_i.hh
-// Author : Alexey PETROV
-// Module : VISU
-
-#ifndef VISU_View_i_HeaderFile
-#define VISU_View_i_HeaderFile
-
-#include "VISUConfig.hh"
-
-class QWidget;
-
-class VisuGUI_TableDlg;
-
-class SalomeApp_Application;
-
-class SUIT_ViewManager;
-class SUIT_ViewWindow;
-
-class Plot2d_ViewFrame;
-
-namespace VISU
-{
- class Prs3d_i;
- class Curve_i;
-
- class View_i : public virtual POA_VISU::View,
- public virtual Storable
- {
- public:
- QWidget *myWorkspace;
- SUIT_ViewWindow *myViewWindow;
-
- protected:
- SalomeApp_Application *myApplication;
- SUIT_ViewManager *myViewManager;
-
- View_i (SalomeApp_Application *theApplication,
- SUIT_ViewManager* theViewManager);
- virtual ~View_i();
-
- public:
- virtual void ShowPart( VISU::View::ViewRepresentation ViewRepr, CORBA::Boolean state );
- virtual CORBA::Boolean IsPartShown( VISU::View::ViewRepresentation ViewRepr );
-
- // Begin: New methods for view parameters management
- virtual void SplitRight();
- virtual void SplitLeft();
- virtual void SplitBottom();
- virtual void SplitTop();
-
- virtual void OnTop();
-
- virtual void Attract (VISU::View_ptr theView);
- virtual void AttractAll(VISU::View_ptr theView);
-
- virtual void SetRelativePositionInSplitter(CORBA::Double thePosition);
- virtual void SetRelativeSizeInSplitter(CORBA::Double theSize);
-
- virtual void SetRelativePositionX(CORBA::Double thePosition);
- virtual void SetRelativePositionY(CORBA::Double thePosition);
-
- virtual void SetRelativeSizeX(CORBA::Double theSize);
- virtual void SetRelativeSizeY(CORBA::Double theSize);
- // End: New methods for view parameters management
-
- // Begin: Old methods for view parameters management, they don't work now
- virtual void SetViewWidth(CORBA::Long Width);
- virtual void SetViewHeight(CORBA::Long Height);
- virtual CORBA::Long GetViewWidth();
- virtual CORBA::Long GetViewHeight();
- virtual void SetViewPositionHorizontal(VISU::View::ViewPosition ViewPosHor);
- virtual void SetViewPositionVertical(VISU::View::ViewPosition ViewPosVer);
- virtual void SetRelativePosition( CORBA::Double x, CORBA::Double y );
- virtual void SetRelativeSize( CORBA::Double x, CORBA::Double y );
- virtual void Minimize();
- virtual void Restore();
- virtual void Maximize();
- // End: Old methods for view parameters management, they don't work now
-
- virtual void SetBackground(const SALOMEDS::Color& theColor);
- virtual SALOMEDS::Color GetBackground();
-
- virtual void EraseAll();
- virtual void DisplayAll();
- virtual void Erase(PrsObject_ptr thePrsObj);
- virtual void Display(PrsObject_ptr thePrsObj);
- virtual void DisplayOnly(PrsObject_ptr thePrsObj);
-
- virtual void Update();
-
- virtual CORBA::Boolean SavePicture(const char* theFileName);
-
- virtual void Close() = 0;
- virtual void ToStream(std::ostringstream& theStr);
- virtual const char* GetComment() const;
- };
-
-
- //===========================================================================
- class XYPlot_i : public virtual POA_VISU::XYPlot,
- public virtual View_i
- {
- public:
- typedef VISU::XYPlot TInterface;
-
- XYPlot_i (SalomeApp_Application *theApplication);
- virtual ~XYPlot_i();
-
- virtual VISU::VISUType GetType() { return VISU::TXYPLOT; };
-
- virtual void SetTitle (const char* theTitle);
- virtual char* GetTitle();
-
- virtual void SetSubTitle (const char* theTitle);
- virtual char* GetSubTitle();
-
- virtual void SetCurveType (VISU::XYPlot::CurveType theType);
- virtual VISU::XYPlot::CurveType GetCurveType();
-
- virtual void SetMarkerSize (CORBA::Long theSize);
- virtual CORBA::Long GetMarkerSize();
-
- virtual void EnableXGrid (CORBA::Boolean theMajor, CORBA::Long theNumMajor,
- CORBA::Boolean theMinor, CORBA::Long theNumMinor);
- virtual void EnableYGrid (CORBA::Boolean theMajor, CORBA::Long theNumMajor,
- CORBA::Boolean theMinor, CORBA::Long theNumMinor);
-
- virtual void SetHorScaling (VISU::Scaling theScaling);
- virtual VISU::Scaling GetHorScaling();
- virtual void SetVerScaling (VISU::Scaling theScaling);
- virtual VISU::Scaling GetVerScaling();
-
- virtual void SetXTitle (const char* theTitle);
- virtual char* GetXTitle();
-
- virtual void SetYTitle (const char* theTitle);
- virtual char* GetYTitle();
-
- virtual void ShowLegend (CORBA::Boolean theShowing);
-
- virtual void EraseAll();
- virtual void Erase (PrsObject_ptr thePrsObj);
- virtual void Display (PrsObject_ptr thePrsObj);
- virtual void DisplayOnly (PrsObject_ptr thePrsObj);
- virtual void Update();
-
- virtual void FitAll();
-
- virtual void Close();
- protected:
- Plot2d_ViewFrame* myView;
- public:
- virtual Storable* Create (int theNew);
- };
-
-
- //===========================================================================
- class TableView_i : public virtual POA_VISU::TableView,
- public virtual View_i
- {
- public:
- typedef VISU::TableView TInterface;
-
- TableView_i (SalomeApp_Application *theApplication);
- virtual ~TableView_i();
-
- virtual VISU::VISUType GetType() { return VISU::TTABLEVIEW; };
-
- virtual void SetTitle (const char* theTitle);
- virtual char* GetTitle();
-
- virtual void Close();
- protected:
- VisuGUI_TableDlg* myView;
- public:
- virtual Storable* Create (VISU::Table_ptr theTable);
- };
-
-
- //===========================================================================
- class View3D_i : public virtual POA_VISU::View3D,
- public virtual View_i
- {
- public:
- typedef VISU::View3D TInterface;
-
- View3D_i (SalomeApp_Application *theApplication);
- virtual ~View3D_i();
-
- virtual VISU::VISUType GetType() { return VISU::TVIEW3D; };
-
- //View interface
- virtual void SetTitle (const char* theTitle);
- virtual char* GetTitle();
-
- static void SetBackground (SUIT_ViewWindow* theStudyFrame,
- const SALOMEDS::Color& theColor);
-
- static SALOMEDS::Color GetBackground (SUIT_ViewWindow* theStudyFrame);
-
- virtual void EraseAll();
- virtual void DisplayAll();
- virtual void Erase (PrsObject_ptr thePrsObj);
- virtual void Display (PrsObject_ptr thePrsObj);
- virtual void DisplayOnly (PrsObject_ptr thePrsObj);
- virtual void Update();
-
- //View3D interface
- virtual void FitAll();
- virtual void SetView (VISU::View3D::ViewType theType);
-
- static void SetPointOfView (SUIT_ViewWindow* theStudyFrame,
- const CORBA::Double thePosition[3]);
- virtual void SetPointOfView (const VISU::View3D::XYZ theCoord);
-
- static void GetPointOfView (SUIT_ViewWindow* theStudyFrame,
- CORBA::Double thePosition[3]);
- virtual VISU::View3D::XYZ_slice* GetPointOfView();
-
- static void SetViewUp (SUIT_ViewWindow* theStudyFrame,
- const CORBA::Double theViewUp[3]);
- virtual void SetViewUp (const VISU::View3D::XYZ theDir);
-
- static void GetViewUp (SUIT_ViewWindow* theStudyFrame, CORBA::Double theViewUp[3]);
- virtual VISU::View3D::XYZ_slice* GetViewUp();
-
- static void SetFocalPoint (SUIT_ViewWindow* theStudyFrame, const CORBA::Double theFocalPnt[3]);
- virtual void SetFocalPoint (const VISU::View3D::XYZ theCoord);
-
- static void View3D_i::GetFocalPoint (SUIT_ViewWindow* theStudyFrame, CORBA::Double theFocalPnt[3]);
- virtual VISU::View3D::XYZ_slice* GetFocalPoint();
-
- static void SetParallelScale (SUIT_ViewWindow* theStudyFrame, CORBA::Double theScale);
- virtual void SetParallelScale (CORBA::Double theScale);
-
- static CORBA::Double GetParallelScale (SUIT_ViewWindow* theStudyFrame);
- virtual CORBA::Double GetParallelScale ();
-
- static void ScaleView (SUIT_ViewWindow* theStudyFrame,
- VISU::View3D::Axis theAxis, CORBA::Double theParam);
- virtual void ScaleView (VISU::View3D::Axis theAxis, CORBA::Double theParam);
- virtual void RemoveScale();
-
- static std::string ToString (SUIT_ViewWindow* theStudyFrame);
-
- static void ToStream (SUIT_ViewWindow* theStudyFrame, std::ostringstream& theStr);
-
- static bool SaveViewParams (SUIT_ViewManager* theViewManager,
- const char* theName);
- virtual CORBA::Boolean SaveViewParams (const char* theName);
-
- static bool RestoreViewParams (SUIT_ViewManager* theViewManager,
- const char* theName);
- virtual CORBA::Boolean RestoreViewParams (const char* theName);
-
- static QString GenerateViewParamsName();
-
- static void Restore (SUIT_ViewWindow* theStudyFrame,
- const Storable::TRestoringMap& theMap);
-
- virtual void Close();
-
- protected:
- static int myNbViewParams;
-
- public:
- virtual Storable* Create (int theNew);
- virtual void ToStream (std::ostringstream& theStr);
- virtual const char* GetComment() const;
- static const std::string myComment;
- };
-}
-
-#endif
# Libraries targets
-LIB = libVISU_Swigcmodule.la
+LIB = libVISU_Swigcmodule.la
LIB_SRC = VISU_Gen_s.cc
-SWIG_FLAGS +=
+SWIG_FLAGS +=
SWIG_DEF = libVISU_Swig.i
EXPORT_PYSCRIPTS = libVISU_Swig.py 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 test_events.py batch_test_events.py visu_split_views.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 test_events.py batch_test_events.py
EXPORT_SHAREDPYSCRIPTS = VISU_shared_modules.py
-LIB_CLIENT_IDL =
+LIB_CLIENT_IDL =
CPPFLAGS += -ftemplate-depth-32 $(PYTHON_INCLUDES) $(HDF5_INCLUDES) $(QT_INCLUDES) \
$(VTK_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome $(BOOST_CPPFLAGS)
LDFLAGS += $(PYTHON_LIBS) -lVisuConvertor -lVisuPipeLine
@CONCLUDE@
+
\ No newline at end of file
+++ /dev/null
-// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
-//
-//
-// File : VISU_Gen_s.hh
-// Author : Alexey PETROV
-// Module : VISU
-
-#ifndef __VISU_VISU_Gen_s_H__
-#define __VISU_VISU_Gen_s_H__
-
-class VISU_Convertor;
-class Convertor{
- VISU_Convertor* myConvertor;
-public:
- Convertor() : myConvertor(0) {};
- Convertor(const char* theFileName);
-
- VISU_Convertor* GetImpl(){ return myConvertor;}
-};
-
-class VISU_ScalarMapPL;
-class ScalarMap{
- VISU_ScalarMapPL* myScalarMap;
-public:
- ScalarMap() : myScalarMap(0) {};
- ScalarMap(Convertor* theConvertor, const char* theMeshName, int theEntity,
- const char* theFieldName, int theIteration);
-
- VISU_ScalarMapPL* GetImpl(){ return myScalarMap;}
-};
-
-class vtkRenderer;
-class vtkRenderWindow;
-class vtkRenderWindowInteractor;
-class View3D{
- vtkRenderer *myRen;
- vtkRenderWindow *myRenWin;
- vtkRenderWindowInteractor *myIRen;
-public:
- View3D();
- ~View3D();
-
- void SetPosition(int theX, int theY);
- void Display(ScalarMap* theScalarMap);
-};
-
-
-#endif
+++ /dev/null
-"""
-
-"""
-
-# force VISU importation at interpretor initialization
-# see salome_shared_modules.py
-# (avoids incomplete import at run time)
-
-print "============== import VISU ======================="
-
-import VISU
-
-# this function is required
-
-def init_shared_modules():
- """
- This function initializes shared modules that need to be
- """
- pass
+++ /dev/null
-###############################################################
-#
-# 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();
-
+++ /dev/null
-# VISU VISU_SWIG : binding of C++ implementation and Python
-#
-# Copyright (C) 2003 CEA/DEN, EDF R&D
-#
-#
-#
-# File : batchmode_visu.py
-# Module : VISU
-
-from batchmode_salome import *
-import visu
-
-myVisu = visu.Initialize(orb,naming_service,lcc,myStudyManager,myStudy,10)
-if myVisu is None:
- raise RuntimeError, "myVisu is none, VISU component is not loaded or found"
-
-def try_mesh_parameters(theMeshPattern):
- aResult = []
- if theMeshPattern is None : return aResult ;
- theMeshPattern = theMeshPattern._narrow(VISU.Mesh)
- if theMeshPattern is None : return aResult ;
-
- aTYPES = [VISU.POINT, VISU.WIREFRAME, VISU.SHADED, VISU.INSIDEFRAME, VISU.SHRINK]
- import copy; import os;
- for ind in aTYPES:
- aNewMesh = copy.deepcopy(theMeshPattern);
- aNewMesh.SetPresentationType(ind)
- aResult.append(aNewMesh)
-
- return aResult
-
-def try_scalarmap_parameters(thePattern, theNum):
- aList = []
- if thePattern is None : return aList
- thePattern = thePattern._narrow(VISU.ScalarMap)
- if thePattern is None : return aList
- SCALING = [VISU.LINEAR, VISU.LOGARITHMIC]
- import copy
- import random
- for ind in range(0,theNum):
- anObj = copy.deepcopy(thePattern);
- if ind%2 :
- #try incorrect value deliberately (but allowed by idl description)
- #try SetScalarMode(long)
- mode = random.randint(-100000,100000); #incorrect value deliberately
- else:
- #correct value of ScalarMode
- mode = random.randint(0, 3)
-
- print "\tSetScalarMode(" + str(mode) +")"
- anObj.SetScalarMode(mode)
-
- # --- SCALING ---
- scal = random.randint(0,1)
- print "\tSetScaling(" + str(SCALING[scal]) +")"
- anObj.SetScaling(SCALING[scal])
-
- # --- BOUNDARIES ---
- if ind%2 :
- alfa = random.random()*random.randint(-100000,100000)
- betta = random.random()*random.randint(-100000,100000)
- aMin = alfa; aMax = betta
- else:
- #more correct set
- aPMin = thePattern.GetMin()
- aPMax = thePattern.GetMax()
- aLen = aPMax - aPMin
- alfa = random.random()%0.5
- betta = random.random()%0.5
- aMin = alfa*aLen*random.randint(-1,1) + aPMin
- aMax = betta*aLen*random.randint(-1,1) + aPMax
- print "\tSetRange(" + str(aMin) + ", " + str(aMax) + ")"
- anObj.SetRange(aMin, aMax)
- aList.append(anObj)
-
- return aList
+++ /dev/null
-# VISU VISU_SWIG : binding of C++ implementation and Python
-#
-# Copyright (C) 2003 CEA/DEN, EDF R&D
-#
-#
-#
-# File : visu_big_table.py
-# Author : Vadim SANDLER
-# Module : VISU
-# $Header$
-
-from batchmode_salome import *
-import batchmode_visu
-import SALOMEDS
-import VISU
-import math
-
-#--------------------------------------------------------------------------
-modulecatalog = naming_service.Resolve("/Kernel/ModulCatalog")
-
-# >>> Getting study builder ==================================================
-myBuilder = myStudy.NewBuilder()
-
-# >>> Getting (loading) VISU component =======================================
-myVisu = lcc.FindOrLoadComponent("FactoryServer", "VISU")
-myComponent = myStudy.FindComponent("VISU")
-myVisu.SetCurrentStudy(myStudy)
-if not myComponent:
- myComponent = myBuilder.NewComponent("VISU")
- aName = myBuilder.FindOrCreateAttribute(myComponent, "AttributeName")
- #aName.SetValue("Visu")
- Comp = modulecatalog.GetComponent( "VISU" )
- aName.SetValue( Comp._get_componentusername() )
-
- A2 = myBuilder.FindOrCreateAttribute(myComponent, "AttributePixMap");
- aPixmap = A2._narrow(SALOMEDS.AttributePixMap);
- aPixmap.SetPixMap( "ICON_OBJBROWSER_Visu" );
-
- myBuilder.DefineComponentInstance(myComponent,myVisu)
-
-# >>> Creating object with Table of real[ 200 * 20 ] ========================
-myTRealObject = myBuilder.NewObject(myComponent)
-AName = myBuilder.FindOrCreateAttribute(myTRealObject, "AttributeName")
-AName.SetValue("Table Of Real")
-ARealTable = myBuilder.FindOrCreateAttribute(myTRealObject, "AttributeTableOfReal")
-myHorNb = 10
-myVerNb = 200
-
-k={}
-for j in range(0,myHorNb):
- k[j] = j*10+1
-ARealTable.AddRow(k.values())
-ARealTable.SetRowTitle(1, "Frequency")
-ARealTable.SetRowUnit(1, "Hz")
-
-for i in range(1,myVerNb+1):
- for j in range(0,myHorNb):
- if j % 2 == 1:
- k[j] = math.log10(j*30*math.pi/180) * 20 + i * 15 + j*5
- else:
- k[j] = math.sin(j*30*math.pi/180) * 20 + i * 15 + j*5
- ARealTable.AddRow(k.values())
- ARealTable.SetRowTitle(i+1, "Power " + str(i))
- ARealTable.SetRowUnit(i+1, "Wt")
-ARealTable.SetTitle("Very useful data")
-
-# >>> Create Visu table
-myVisuTableReal = myVisu.CreateTable( myTRealObject.GetID() )
-
-# >>> Create container and insert curves
-myContainer = myVisu.CreateContainer()
-
-# >>> Create curves
-for i in range(1,myVerNb+1):
- myCurve = myVisu.CreateCurve( myVisuTableReal, 1, i+1 )
- myContainer.AddCurve(myCurve)
-# ============================================================================
+++ /dev/null
-# VISU VISU_SWIG : binding of C++ implementation and Python
-#
-# Copyright (C) 2003 CEA/DEN, EDF R&D
-#
-#
-#
-# File : test_table.py
-# Author : Alexey Petrov
-# Module : VISU
-# $Header:
-
-from VISU import *
-from batchmode_visu_table import *
-
-myViewMan = myVisu.GetViewManager()
-
-myTable = myViewMan.CreateTableView(myVisuTableReal)
-myTitle = myTable.GetTitle()
-myTable.SetTitle('Changed Title')
-
-myPlot = myViewMan.CreateXYPlot()
-myTitle = myPlot.GetTitle()
-myPlot.SetTitle('Change the title from python')
-
-mySubTitle = myPlot.GetSubTitle()
-myPlot.SetSubTitle(myTitle)
-
-myXTitle = myPlot.GetXTitle()
-myYTitle = myPlot.GetYTitle()
-myPlot.SetXTitle(myYTitle)
-myPlot.SetYTitle(myXTitle)
-
-myPlot.GetMarkerSize()
-myPlot.SetMarkerSize(20)
-myPlot.GetMarkerSize()
-myPlot.ShowLegend(0)
-
-myPlot.SetCurveType(VISU.XYPlot.POINTS)
-myPlot.SetCurveType(VISU.XYPlot.MULTYLINE)
-myPlot.GetCurveType()
-myPlot.SetCurveType(VISU.XYPlot.SPLINE)
-
-myPlot.SetHorScaling(VISU.LOGARITHMIC)
-myPlot.EnableXGrid(1,3,1,4)
-myPlot.SetHorScaling(VISU.LINEAR)
-myPlot.EnableXGrid(1,10,1,10)
-myPlot.GetHorScaling()
-
-myPlot.SetVerScaling(VISU.LOGARITHMIC)
-myPlot.GetVerScaling()
-myPlot.EnableYGrid(1,2,1,10)
-
-myPlot.ShowLegend(1)
-myPlot.SetMarkerSize(5)
-myPlot.GetMarkerSize()
-
-myPlot.Display(myContainer)
+++ /dev/null
-# VISU VISU_SWIG : binding of C++ implementation and Python
-#
-# Copyright (C) 2003 CEA/DEN, EDF R&D
-#
-#
-#
-# File : batchmode_visu_view3d.py
-# Module : VISU
-
-import os
-import time
-import math
-import VISU
-import SALOMEDS
-from batchmode_visu import *
-
-aDelay = 0
-
-#mySession = batchmode_visu.mySession
-
-myViewManager = myVisu.GetViewManager();
-
-myView = myViewManager.Create3DView();
-myView.SetTitle("The window will be soon destroyed!")
-print "myViewManager.Create3DView()"
-time.sleep(aDelay)
-
-myView.Maximize()
-print "myView.Maximize()"
-time.sleep(aDelay)
-
-myView.Restore()
-print "myView.Restore()"
-time.sleep(aDelay)
-
-myView.Minimize()
-print "myView.Minimize()"
-time.sleep(aDelay)
-
-myViewManager.Destroy(myView)
-print "myViewManager.Destroy(myView)"
-time.sleep(aDelay)
-
-
-
-medFile = "fra.med"
-myFieldName = "VITESSE";
-
-aMeshName ="LE VOLUME"
-anEntity = VISU.NODE
-aTimeStampId = 1
-
-medFile = os.getenv('KERNEL_ROOT_DIR') + '/examples/' + medFile
-myResult = myVisu.ImportFile(medFile)
-
-
-
-myView = myViewManager.Create3DView();
-
-print "myView.SetBackground(...)"
-aColor = SALOMEDS.Color(0.0,0.3,1.0)
-myView.SetBackground(aColor);
-
-myView.SetTitle("The viewer will display ScalarMap")
-print "myViewManager.Create3DView()"
-
-aScalarMap = myVisu.ScalarMapOnField(myResult,aMeshName,anEntity,myFieldName,aTimeStampId)
-
-myView.Display(aScalarMap);
-print "myView.Display(aScalarMap)"
-myView.SetFocalPoint([0,0,0]);
-print "myView.SetFocalPoint(...)"
-myView.SetParallelScale(2);
-print "myView.SetParallelScale(...)"
-myView.FitAll();
-
-aMax = aScalarMap.GetMax()
-aMin = aScalarMap.GetMin()
-aDelta = (aMax - aMin)/2.0
-aNbColors = aScalarMap.GetNbColors()
-aNbColors = 64
-for i in range(2,aNbColors) :
- aScalarMap.SetNbColors(i)
- aX = aMin + aDelta*i/aNbColors
- aY = aMax - aDelta*i/aNbColors
- aScalarMap.SetRange(aX,aY)
- myView.Update();
- time.sleep(aDelay)
-
-aScalarMap.SetRange(aMin,aMax)
-
-print "myView.Update()"
-myView.Update();
-print "myView.FitAll()"
-myView.FitAll();
-
-
-
-myView = myViewManager.Create3DView();
-myView.SetTitle("Here we will display CutPlanes")
-
-print "myView.SetBackground(...)"
-aColor = SALOMEDS.Color(0.0,0.7,0.0)
-myView.SetBackground(aColor);
-
-aCutPlanes = myVisu.CutPlanesOnField(myResult,aMeshName,anEntity,myFieldName,aTimeStampId)
-print "myVisu.CutPlanesOnField(...)"
-
-myView.DisplayOnly(aCutPlanes);
-print "myView.DisplayOnly(aCutPlanes)"
-
-aPoint = myView.GetPointOfView();
-aPoint[0] = aPoint[0] + 10;
-myView.SetPointOfView(aPoint);
-print "myView.SetPointOfView(...)"
-myView.ScaleView(VISU.View3D.YAxis,10.0);
-myView.ScaleView(VISU.View3D.XAxis,3.0);
-print "myView.ScaleView(...)"
-time.sleep(aDelay)
-
-myView.FitAll();
-
-aNbPlanes = aCutPlanes.GetNbPlanes()
-aNbPlanes = 30
-aXAngle = aCutPlanes.GetRotateX()
-aYAngle = aCutPlanes.GetRotateY()
-anOrientation = aCutPlanes.GetOrientationType()
-for i in range(aNbPlanes,1,-1) :
- aCutPlanes.SetNbPlanes(i)
- aX = math.pi/2.0*(aNbPlanes-i)/aNbPlanes
- aY = math.pi/2.0*(aNbPlanes-i)/aNbPlanes
- aCutPlanes.SetOrientation(anOrientation,aX,aY)
- myView.Update();
- time.sleep(aDelay)
-
-aNbPlanes = 10
-aCutPlanes.SetOrientation(VISU.CutPlanes.ZX,0,0)
-for i in range(1,aNbPlanes) :
- aCutPlanes.SetNbPlanes(i)
- myView.Update();
- time.sleep(aDelay)
-
-myView.SaveViewParams('AAA')
-print "myView.SaveViewParams('AAA')"
-time.sleep(aDelay)
-
-aCutPlanes.SetOrientation(VISU.CutPlanes.XY,0,0)
-myView.RemoveScale();
-
-print "myView.Update()"
-myView.Update();
-print "myView.FitAll()"
-myView.FitAll();
-
-
-
-myView = myViewManager.Create3DView();
-print "myViewManager.Create3DView()"
-
-myView.SetTitle("IsoSurface's viewer")
-
-print "myView.SetBackground(...)"
-aColor = SALOMEDS.Color(1.0,0.7,0.0)
-myView.SetBackground(aColor);
-time.sleep(aDelay)
-
-aIsoSurfaces = myVisu.IsoSurfacesOnField(myResult, aMeshName, anEntity, myFieldName, aTimeStampId)
-
-myView.DisplayOnly(aIsoSurfaces);
-myView.FitAll();
-print "myView.DisplayOnly(aCutPlanes)"
-time.sleep(aDelay)
-
-aNbSurfaces = aIsoSurfaces.GetNbSurfaces()
-aNbSurfaces = 32
-for i in range(2,aNbSurfaces) :
- aIsoSurfaces.SetNbSurfaces(i)
- myView.Update();
- time.sleep(aDelay)
-
-aIsoSurfaces.SetNbSurfaces(10)
-
-print "myView.Update()"
-myView.Update();
-print "myView.FitAll()"
-myView.FitAll();
-
-
-
-myView = myViewManager.Create3DView();
-myView.SetTitle("The viewer for CutLines")
-print "myViewManager.Create3DView()"
-time.sleep(aDelay)
-
-print "myView.SetBackground(...)"
-aColor = SALOMEDS.Color(0.7,0.7,0.7)
-myView.SetBackground(aColor);
-time.sleep(aDelay)
-
-aCutLines = myVisu.CutLinesOnField(myResult, aMeshName, anEntity, myFieldName, aTimeStampId)
-aCutLines.SetOrientation(VISU.CutPlanes.ZX,0,0)
-aCutLines.SetOrientation2(VISU.CutPlanes.YZ,0,0)
-
-myView.DisplayOnly(aCutLines);
-myView.FitAll();
-print "myView.DisplayOnly(aCutLines)"
-time.sleep(aDelay)
-
-aSObj = myStudy.FindObjectIOR(aCutLines.GetID())
-aTable = myVisu.CreateTable( aSObj.GetID() )
-print "myVisu.CreateTable(...)"
-
-aTableView = myViewManager.CreateTableView(aTable)
-aTableView.SetTitle('Changed Title')
-
-aContainer = myVisu.CreateContainer()
-print "myVisu.CreateContainer(...)"
-
-aNbCurve = aTable.GetNbRows() - 1
-for i in range(2,aNbCurve):
- aCurve = myVisu.CreateCurve( aTable, 1, i )
- print i, aCurve
- aContainer.AddCurve(aCurve)
-
-
-myView = myViewManager.CreateXYPlot();
-myView.SetTitle("The viewer for Curves from CutLines")
-print "myViewManager.CreateXYPlot()"
-time.sleep(aDelay)
-
-myView.Display(aContainer)
-
-
-
-myView = myViewManager.Create3DView();
-myView.SetTitle("The viewer for Animation")
-print "myViewManager.Create3DView()"
-time.sleep(aDelay)
-
-medFile = "TimeStamps.med"
-myFieldName = "vitesse";
-
-medFile = os.getenv('KERNEL_ROOT_DIR') + '/examples/' + medFile
-myResult = myVisu.ImportFile(medFile)
-
-anAnim = myVisu.CreateAnimation(myView);
-aSObj = myStudy.FindObjectIOR(myResult.GetID())
-aSObj = aSObj.FindSubObject(1)[1]
-aSObj = aSObj.FindSubObject(2)[1]
-aSObj = aSObj.FindSubObject(2)[1]
-anAnim.addField(aSObj)
-anAnim.setPresentationType(0,VISU.TISOSURFACE)
-print "Generate presentations"
-anAnim.generatePresentations(0)
-print "Generate frames"
-anAnim.generateFrames()
-print "Start Animation"
-anAnim.setSpeed(99)
-#anAnim.setCycling(1)
-anAnim.startAnimation()
-myView.FitAll()
-while 1:
- time.sleep(1+aDelay)
- if not anAnim.isRunning():
- anAnim.stopAnimation()
- break
-
-#anAnim.clearView()
+++ /dev/null
-// VISU VISU_SWIG : binding of C++ implementation and Python
-//
-// 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
-//
-//
-//
-// File : libVISU_Swig.i
-// Author : Paul RASCLE, EDF
-// Module : VISU
-// $Header$
-
-%module libVISU_Swig
-%{
-#include "VISU_Gen_s.hh"
-%}
-
-
-class Convertor{
-public:
- Convertor(){};
- Convertor(const char* theFileName);
-};
-
-
-class ScalarMap{
-public:
- ScalarMap(){};
- ScalarMap(Convertor* theConvertor, const char* theMeshName, int theEntity,
- const char* theFieldName, int theIteration);
-};
-
-class View3D{
-public:
- View3D();
- void Display(ScalarMap* theScalarMap);
- void SetPosition(int theX, int theY);
-};
\ No newline at end of file
+++ /dev/null
-###############################################################
-#
-# 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();
-
+++ /dev/null
-# VISU VISU_SWIG : binding of C++ implementation and Python
-#
-# Copyright (C) 2003 CEA/DEN, EDF R&D
-#
-#
-#
-# File : visu.py
-# Module : VISU
-
-import os
-import re
-from time import sleep
-
-import VISU
-import SALOME
-import SALOME_Session_idl
-import SALOMEDS
-import SALOME_MED
-from omniORB import CORBA
-from string import *
-from time import sleep
-
-myORB = None
-myNamingService = None
-myLifeCycleCORBA = None
-myNamingService = None
-myLocalStudyManager = None
-myLocalStudy = None
-myLocalVisu = None
-myDelay = None
-mySession = None
-
-def Initialize(theORB, theNamingService, theLifeCycleCORBA, theStudyManager, theStudy, theDelay) :
- global myORB, myNamingService, myLifeCycleCORBA, myLocalStudyManager, myLocalStudy
- global mySession, myLocalVisu, myDelay
- myDelay = theDelay
- myORB = theORB
- myNamingService = theNamingService
- myLifeCycleCORBA = theLifeCycleCORBA
- myLocalStudyManager = theStudyManager
- while mySession == None:
- mySession = myNamingService.Resolve("/Kernel/Session")
- mySession = mySession._narrow(SALOME.Session)
- mySession.GetInterface()
- myDelay = theDelay
- sleep(myDelay)
- myLocalVisu = myLifeCycleCORBA.FindOrLoadComponent("FactoryServer", "VISU")
- myLocalStudy = theStudy
- myLocalVisu.SetCurrentStudy(myLocalStudy)
- return myLocalVisu
-
-def PublishComponent(theStudyDocument):
- aComponentDataType = myLocalVisu.ComponentDataType()
- aSComponent = theStudyDocument.FindComponent(aComponentDataType)
- if aSComponent == None:
- aStudyBuilder = theStudyDocument.NewBuilder()
- aStudyBuilder.NewCommand()
- aLocked = theStudyDocument.GetProperties().IsLocked()
- if aLocked:
- theStudyDocument.GetProperties().SetLocked(0)
- pass
-
- aSComponent = aStudyBuilder.NewComponent(aComponentDataType);
- aName = aStudyBuilder.FindOrCreateAttribute(aSComponent,"AttributeName")
- aModuleCatalog = myNamingService.Resolve("/Kernel/ModulCatalog");
- aComponent = aModuleCatalog.GetComponent(aComponentDataType);
- if aComponent != None:
- aComponentUserName = aComponent._get_componentusername()
- aName.SetValue(aComponentUserName)
- pass
-
- aPixMap = aStudyBuilder.FindOrCreateAttribute(aSComponent,"AttributePixMap")
- aPixMap.SetPixMap("ICON_OBJBROWSER_Visu")
-
- aStudyBuilder.DefineComponentInstance(aSComponent,myLocalVisu);
- if aLocked:
- theStudyDocument.GetProperties().SetLocked(1);
- pass
-
- aStudyBuilder.CommitCommand();
- pass
-
- return aSComponent;
-
-def StrToMap(theString) :
- aPairList = split(theString,";")
- aMap = {}
- iEnd = len(aPairList)
- for i in range(iEnd) :
- aPair = split(aPairList[i],"=")
- aMap[aPair[0]] = aPair[1]
- return aMap
-
-def IntToEntity(theInt) :
- theInt = atoi(theInt)
- if theInt == 0 :
- return VISU.NODE;
- elif theInt == 1 :
- return VISU.EDGE;
- elif theInt == 2 :
- return VISU.FACE;
- else :
- return VISU.CELL;
-
-def HasValue(theList, theValue) :
- try :
- return theList.index(theValue) + 1
- except StandardError, e :
- return 0
-
-def CreateStudyForMed(theVisu, theFileName) :
- print "CreateStudyForMed ", theFileName,
- if os.path.isfile(theFileName) :
- if re.search("\.med$", theFileName) is not None :
- print "OK"
- aStudyName = os.path.basename(theFileName)
- aStudyName = re.sub(r'\.med', "", aStudyName)
- aStudyName = generateName(aStudyName)
- print "myLocalStudyManager.NewStudy -", aStudyName, "...",
- aStudy = myLocalStudyManager.NewStudy(aStudyName)
- if aStudy is None : raise RuntimeError, "Error"
- else : print "OK"
-
- print "CreateStudyForMed - Creating a 3D viewer...",
- theVisu.SetCurrentStudy(aStudy)
- myViewManager = theVisu.GetViewManager()
- if myViewManager is None : raise RuntimeError, "Error - theVisu.GetViewManager"
- myView = myViewManager.Create3DView()
- if myView is None : raise RuntimeError, "Error - myViewManager.Create3DView"
- myView.Maximize()
- print "OK"
-
- return [aStudy, myViewManager, myView]
- raise RuntimeError, "Error: There is no shuch file."
-
-def getMedSObject(theStudy = myLocalStudy ):
- if theStudy is None:
- theStudy = myLocalStudy
- aSO = theStudy.FindObject("Med")
- anIsPresetn, aSObject = aSO.FindSubObject(1)
- return aSObject
-
-def getMedObjectFromStudy(theStudy = myLocalStudy):
- aSObject = getMedSObject(theStudy)
- if aSObject:
- anAttr = aSObject.FindAttribute("AttributeIOR")[1]
- anObj = myORB.string_to_object(anAttr.Value())
- return anObj._narrow(SALOME_MED.MED)
- return None
-
-def getFieldObjectFromStudy(number, subnumber, theStudy = myLocalStudy):
- if theStudy is None:
- theStudy = myLocalStudy
- mySO = theStudy.FindObject("MEDFIELD")
- if mySO is None:
- raise Runtime, "getFieldObjectFromStudy mySO is None"
- mysub = mySO.FindSubObject(number)[1]
- if mysub:
- mysubsub = mysub.FindSubObject(subnumber)[1]
- if mysubsub:
- Builder = theStudy.NewBuilder()
- anAttr = Builder.FindOrCreateAttribute(mysubsub, "AttributeIOR")
- obj = myORB.string_to_object(anAttr.Value())
- myObj = obj._narrow(SALOME_MED.FIELDINT)
- if (myObj == None):
- myObj = obj._narrow(SALOME_MED.FIELDDOUBLE)
- return myObj
- else:
- print "ERROR: No Field Object stored in this Study"
- return None
-
-def SObjectToObject(theSObject) :
- # global myORB
- if theSObject is None :
- print "SObjectToObject : argument is None"
- anObj = None
- res,Attr = theSObject.FindAttribute("AttributeIOR")
- if (res != 0) and (Attr is not None) :
- anIOR = Attr._narrow(SALOMEDS.AttributeIOR);
- aValue = anIOR.Value();
- if(len(aValue) != 0) :
- anObj = myORB.string_to_object(aValue);
- else:
- print "SObjectToObject - IOR = ''"
- return anObj;
-
-def CreatePrsForMed(theVisu, theFileName, thePrsTypeList, thePictureDir, thePictureExt) :
-# try:
- global myLifeCycleCORBA
- print "lcc.FindOrLoadComponent...",
- aMedComp = myLifeCycleCORBA.FindOrLoadComponent("FactoryServer", "MED")
- if aMedComp is None : print "Error"
- else : print "OK"
-
- aVISUObjList = [myLocalStudy, myViewManager, myView] = CreateStudyForMed(theVisu, theFileName)
-
- print "aMedComp.readStructFileWithFieldType...",
- aMedComp.readStructFileWithFieldType(theFileName,myLocalStudy._get_Name())
- aMedSObj = getMedSObject(myLocalStudy)
- if aMedSObj is None : raise RuntimeError, "Error"
- else : print "OK"
-
- print "theVisu.ImportMed...",
- aResult = theVisu.ImportMed(aMedSObj)
- if aResult is None : raise RuntimeError, "Error"
- else : print "OK"
- aVISUObjList.append(aResult)
- aVISUObjList.extend(CreatePrsForResult(theVisu, aResult, myView, thePrsTypeList, thePictureDir, thePictureExt))
-
- aFolderIter = myLocalStudy.NewChildIterator(aMedSObj.GetFather());
- while aFolderIter.More() :
- aFolderSObj = aFolderIter.Value()
- aFolderIter.Next()
- anAttr = aFolderSObj.FindAttribute("AttributeName")[1]
- anAttr = anAttr._narrow(SALOMEDS.AttributeName);
- aFolderName = anAttr.Value()
- print " ", aFolderName
-
- if aFolderName == 'MEDMESH' :
- aMeshIter = myLocalStudy.NewChildIterator(aFolderSObj);
- while aMeshIter.More() :
- aMeshSObj = aMeshIter.Value()
- aMeshIter.Next()
- anAttr = aMeshSObj.FindAttribute("AttributeName")[1]
- anAttr = anAttr._narrow(SALOMEDS.AttributeName);
- aMeshName = anAttr.Value()
- print " ", aMeshName
-
- aSupportIter = myLocalStudy.NewChildIterator(aMeshSObj);
- while aSupportIter.More() :
- aSupportSObj = aSupportIter.Value()
- aSupportIter.Next()
- anAttr = aSupportSObj.FindAttribute("AttributeName")[1]
- anAttr = anAttr._narrow(SALOMEDS.AttributeName);
- aSupportName = anAttr.Value()
- print " ", aSupportName
-
- if aFolderName == 'MEDFIELD' :
- aFieldIter = myLocalStudy.NewChildIterator(aFolderSObj);
- while aFieldIter.More() :
- aFieldSObj = aFieldIter.Value()
- aFieldIter.Next()
- anAttr = aFieldSObj.FindAttribute("AttributeName")[1]
- anAttr = anAttr._narrow(SALOMEDS.AttributeName);
- aFieldName = anAttr.Value()
- print " ", aFieldName
-
- print "theVisu.ImportMed...",
- aResult = theVisu.ImportMed(aFieldSObj)
- if aResult is None : raise RuntimeError, "Error"
- else : print "OK"
- aVISUObjList.append(aResult)
- aVISUObjList.extend(CreatePrsForResult(theVisu, aResult, myView, thePrsTypeList, thePictureDir, thePictureExt))
-
- aTimeStampIter = myLocalStudy.NewChildIterator(aFieldSObj);
- if aTimeStampIter.More() :
- aTimeStampIter.Next()
- while aTimeStampIter.More() :
- aTimeStampSObj = aTimeStampIter.Value()
- aTimeStampIter.Next()
- anAttr = aTimeStampSObj.FindAttribute("AttributeName")[1]
- anAttr = anAttr._narrow(SALOMEDS.AttributeName);
- aTimeStampName = anAttr.Value()
- print " ", aTimeStampName
-
- print "theVisu.ImportMed...",
- aMedField = SObjectToObject(aTimeStampSObj)
- aResult = theVisu.ImportMedField(aMedField)
- if aResult is None : raise RuntimeError, "Error"
- else : print "OK"
- aVISUObjList.append(aResult)
- aVISUObjList.extend(CreatePrsForResult(theVisu, aResult, myView, thePrsTypeList, thePictureDir, thePictureExt))
-
- return aVISUObjList
-
-# except Exception, e:
-# print str(e)
-
-def CreatePrsForFile(theVisu, theFileName, thePrsTypeList, thePictureDir, thePictureExt) :
- # try:
- aVISUObjList = [myLocalStudy, myViewManager, myView] = CreateStudyForMed(theVisu, theFileName)
-
- print "theVisu.ImportMed...",
- aResult = theVisu.ImportFile(theFileName)
- if aResult is None : raise RuntimeError, "Error"
- else : print "OK"
-
- aVISUObjList.extend(CreatePrsForResult(theVisu, aResult, myView, thePrsTypeList, thePictureDir, thePictureExt))
-
- return aVISUObjList
-
-# except Exception, e:
-# print str(e)
-
-def CreatePrsForResult(theVisu, theResult, theView, thePrsTypeList, thePictureDir, thePictureExt) :
- aVISUObjList = []
- print "CreatePrsForResult - myLocalStudy.FindObjectIOR...",
- myLocalStudy = theVisu.GetCurrentStudy()
- aSObj = myLocalStudy.FindObjectIOR(theResult.GetID())
- if aSObj is None : raise RuntimeError, "Error"
- else : print "OK"
- aMeshIter = myLocalStudy.NewChildIterator(aSObj);
- while aMeshIter.More() :
- aMeshSObj = aMeshIter.Value()
- aMeshIter.Next()
- anAttr = aMeshSObj.FindAttribute("AttributeName")[1]
- if anAttr is None :
- aMeshSObj = aMeshIter.Value()
- aMeshIter.Next()
- anAttr = aMeshSObj.FindAttribute("AttributeName")[1]
- anAttr = anAttr._narrow(SALOMEDS.AttributeName);
- aMeshName = anAttr.Value()
- aMeshNamePic = re.sub(".","_",aMeshName)
- print " ", aMeshName
-
- aFolderIter = myLocalStudy.NewChildIterator(aMeshSObj);
- while aFolderIter.More() :
- aFolderSObj = aFolderIter.Value()
- aFolderIter.Next()
- anAttr = aFolderSObj.FindAttribute("AttributeName")[1]
- anAttr = anAttr._narrow(SALOMEDS.AttributeName);
- aFolderName = anAttr.Value()
- print " ", aFolderName
-
- if aFolderName == 'Families' :
- anEntityIter = myLocalStudy.NewChildIterator(aFolderSObj);
- while anEntityIter.More() :
- anEntitySObj = anEntityIter.Value()
- anEntityIter.Next()
- anAttr = anEntitySObj.FindAttribute("AttributeName")[1]
- anAttr = anAttr._narrow(SALOMEDS.AttributeName);
- anEntityName = anAttr.Value()
-
- anEntityId = "3"
- if anEntityName == 'onNodes' :
- anEntity = VISU.NODE
- anEntityId = "0"
- if anEntityName == 'onEdges' :
- anEntity = VISU.EDGE
- anEntityId = "1"
- if anEntityName == 'onFaces' :
- anEntity = VISU.FACE
- anEntityId = "2"
- if anEntityName == 'onCells' :
- anEntity = VISU.CELL
- anEntityId = "3"
-
- if HasValue(thePrsTypeList,VISU.TMESH) :
- print " ", anEntityName, aMeshName,
- aMesh = theVisu.MeshOnEntity(theResult,aMeshName,anEntity)
- if aMesh is None : print "Error"
- else : print ",OK"
- theView.DisplayOnly(aMesh)
- theView.FitAll()
- aPictureName = thePictureDir + aMeshNamePic + "_" + anEntityId + "." + thePictureExt
- aPictureName = re.sub("\s+","_", aPictureName);
- theView.SavePicture(aPictureName)
- aVISUObjList.append(aMesh)
-
- anFamilyIter = myLocalStudy.NewChildIterator(anEntitySObj);
- while anFamilyIter.More() :
- aFamilySObj = anFamilyIter.Value()
- anFamilyIter.Next()
- anAttr = aFamilySObj.FindAttribute("AttributeName")[1]
- anAttr = anAttr._narrow(SALOMEDS.AttributeName);
- anFamilyName = anAttr.Value()
- if HasValue(thePrsTypeList,VISU.TMESH) :
- print " ", anFamilyName,
- aMesh = theVisu.FamilyMeshOnEntity(theResult,aMeshName,anEntity,anFamilyName)
- if aMesh is None : print "Error"
- else : print ",OK"
- theView.DisplayOnly(aMesh)
- theView.FitAll()
- aPictureName = thePictureDir + aMeshNamePic + "_" + anEntityId + "_" + anFamilyName + "." + thePictureExt
- aPictureName = re.sub("\s+","_", aPictureName);
- theView.SavePicture(aPictureName)
- aVISUObjList.append(aMesh)
-
- if aFolderName == 'Groups' :
- aGroupIter = myLocalStudy.NewChildIterator(aFolderSObj);
- while aGroupIter.More() :
- aGroupSObj = aGroupIter.Value()
- aGroupIter.Next()
- anAttr = aGroupSObj.FindAttribute("AttributeName")[1]
- anAttr = anAttr._narrow(SALOMEDS.AttributeName);
- aGroupName = anAttr.Value()
- if HasValue(thePrsTypeList,VISU.TMESH) :
- print " ", aGroupName,
- aMesh = theVisu.GroupMesh(theResult,aMeshName,aGroupName)
- if aMesh is None : print "Error"
- else : print ",OK"
- theView.DisplayOnly(aMesh)
- theView.FitAll()
- aPictureName = thePictureDir + aMeshNamePic + "_" + aGroupName + "." + thePictureExt
- aPictureName = re.sub("\s+","_", aPictureName);
- theView.SavePicture(aPictureName)
- aVISUObjList.append(aMesh)
-
- if aFolderName == 'Fields' :
- aFieldIter = myLocalStudy.NewChildIterator(aFolderSObj);
- while aFieldIter.More() :
- aFieldSObj = aFieldIter.Value()
- aFieldIter.Next()
- anAttr = aFieldSObj.FindAttribute("AttributeName")[1]
- anAttr = anAttr._narrow(SALOMEDS.AttributeName);
- aFieldName = anAttr.Value()
- print " ", aFieldName
-
- anAttr = aFieldSObj.FindAttribute("AttributeComment")[1]
- anAttr = anAttr._narrow(SALOMEDS.AttributeComment);
- aFieldComment = anAttr.Value()
- aMap = StrToMap(aFieldComment)
-
- aTimeStampIter = myLocalStudy.NewChildIterator(aFieldSObj);
- if aTimeStampIter.More() :
- aTimeStampIter.Next()
- while aTimeStampIter.More() :
- aTimeStampSObj = aTimeStampIter.Value()
- aTimeStampIter.Next()
- anAttr = aTimeStampSObj.FindAttribute("AttributeName")[1]
- anAttr = anAttr._narrow(SALOMEDS.AttributeName);
- aTimeStampName = anAttr.Value()
- print " ", aTimeStampName
-
- anAttr = aTimeStampSObj.FindAttribute("AttributeComment")[1]
- anAttr = anAttr._narrow(SALOMEDS.AttributeComment);
- aTimeStampComment = anAttr.Value()
- aMap = StrToMap(aTimeStampComment)
- aMeshName = aMap["myMeshName"]
- aFieldName = aMap["myFieldName"]
- aTimeStampId = atoi(aMap["myTimeStampId"])
- anEntity = IntToEntity(aMap["myEntityId"])
- anEntityId = str(aMap["myEntityId"]);
- #print aMeshName, aFieldName, anEntity, aTimeStampId
- if HasValue(thePrsTypeList,VISU.TSCALARMAP) :
- print " Creating ScalarMapOnField",
- aPrsObj = theVisu.ScalarMapOnField(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) + "_TSCALARMAP." + thePictureExt
- aPictureName = re.sub("\s+","_", aPictureName);
- theView.SavePicture(aPictureName)
- aVISUObjList.append(aPrsObj)
-
- if HasValue(thePrsTypeList,VISU.TISOSURFACE) :
- print " Creating IsoSurfacesOnField",
- aPrsObj = theVisu.IsoSurfacesOnField(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) + "_TISOSURFACE." + thePictureExt
- aPictureName = re.sub("\s+","_", aPictureName);
- theView.SavePicture(aPictureName)
- aVISUObjList.append(aPrsObj)
-
- if HasValue(thePrsTypeList,VISU.TCUTPLANES) :
- print " Creating CutPlanesOnField",
- aPrsObj = theVisu.CutPlanesOnField(theResult,aMeshName,anEntity,aFieldName,aTimeStampId)
- if aPrsObj is None : print "Error"
- else : print ",OK"
- aPrsObj.SetOrientation(VISU.CutPlanes.ZX,aPrsObj.GetRotateX(),aPrsObj.GetRotateY())
- theView.DisplayOnly(aPrsObj)
- theView.FitAll()
- aPictureName = thePictureDir + aMeshNamePic + "_" + anEntityId + "_" + aFieldName + "_" + str(aTimeStampId) + "_TCUTPLANES." + thePictureExt
- aPictureName = re.sub("\s+","_", aPictureName)
- theView.SavePicture(aPictureName)
- aVISUObjList.append(aPrsObj)
-
- if HasValue(thePrsTypeList,VISU.TCUTLINES) :
- print " Creating CutLinesOnField",
- aPrsObj = theVisu.CutLinesOnField(theResult,aMeshName,anEntity,aFieldName,aTimeStampId)
- if aPrsObj is None : print "Error"
- else : print ",OK"
- aPrsObj.SetOrientation(VISU.CutPlanes.XY,aPrsObj.GetRotateX(),aPrsObj.GetRotateY())
- aPrsObj.SetOrientation2(VISU.CutPlanes.ZX,aPrsObj.GetRotateX2(),aPrsObj.GetRotateY2())
- theView.DisplayOnly(aPrsObj)
- theView.FitAll()
- aPictureName = thePictureDir + aMeshNamePic + "_" + anEntityId + "_" + aFieldName + "_" + str(aTimeStampId) + "_TCUTLINES." + thePictureExt
- aPictureName = re.sub("\s+","_", aPictureName)
- theView.SavePicture(aPictureName)
- aVISUObjList.append(aPrsObj)
-
- if HasValue(thePrsTypeList,VISU.TPLOT3D) :
- print " Creating Plot3DOnField",
- aPrsObj = theVisu.Plot3DOnField(theResult,aMeshName,anEntity,
- aFieldName,aTimeStampId)
- if aPrsObj is None : print "Error"
- else : print ",OK"
- #aPrsObj.SetOrientation(VISU.CutPlanes.ZX,
- # aPrsObj.GetRotateX(),
- # aPrsObj.GetRotateY())
- theView.DisplayOnly(aPrsObj)
- theView.FitAll()
- aPictureName = thePictureDir + aMeshNamePic + "_" + anEntityId + "_" + aFieldName + "_" + str(aTimeStampId) + "_TPLOT3D." + thePictureExt
- aPictureName = re.sub("\s+","_", aPictureName)
- theView.SavePicture(aPictureName)
- aVISUObjList.append(aPrsObj)
-
- aNumComponent = atoi(aMap["myNumComponent"])
- if aNumComponent > 1 :
- if HasValue(thePrsTypeList,VISU.TDEFORMEDSHAPE) :
- print " Creating DeformedShapeOnField",
- aPrsObj = theVisu.DeformedShapeOnField(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) + "_TDEFORMEDSHAPE." + thePictureExt
- aPictureName = re.sub("\s+","_", aPictureName)
- theView.SavePicture(aPictureName)
- aVISUObjList.append(aPrsObj)
-
- if HasValue(thePrsTypeList,VISU.TVECTORS) :
- print " Creating VectorsOnField",
- aPrsObj = theVisu.VectorsOnField(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) + "_TVECTORS." + thePictureExt
- aPictureName = re.sub("\s+","_", aPictureName)
- theView.SavePicture(aPictureName)
- aVISUObjList.append(aPrsObj)
-
- if HasValue(thePrsTypeList,VISU.TSTREAMLINES) :
- print " Creating StreamLinesOnField",
- aPrsObj = theVisu.StreamLinesOnField(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) + "_TSTREAMLINES." + thePictureExt
- aPictureName = re.sub("\s+","_", aPictureName)
- theView.SavePicture(aPictureName)
- aVISUObjList.append(aPrsObj)
-
- return aVISUObjList
-
-
-def generateName(prefix = None):
- import whrandom;
- int = whrandom.randint(1,1000);
- if prefix is None:
- return "Study" + str(int)
- else :
- return prefix + str(int)
-
-
-
-# ----------------------
-# MESH
-# ----------------------
-def try_mesh_parameters(theMeshPattern):
- aResult = []
- if theMeshPattern is None : return aResult ;
- theMeshPattern = theMeshPattern._narrow(VISU.Mesh)
- if theMeshPattern is None : return aResult ;
-
- aTYPES = [VISU.POINT, VISU.WIREFRAME, VISU.SHADED, VISU.INSIDEFRAME, VISU.SHRINK]
- import copy; import os;
- for ind in aTYPES:
- aNewMesh = copy.deepcopy(theMeshPattern);
- aNewMesh.SetPresentationType(ind)
- aResult.append(aNewMesh)
-
- return aResult
-
-
-# ----------------------------
-# SCALAR MAP
-# ----------------------------
-ind=1 #try safe way
-def try_scalarmap_parameters(thePattern, dump = 0):
-
- if thePattern is None : return None
-
- SCALING = [VISU.LINEAR, VISU.LOGARITHMIC]
- import copy
- import random
-
- anObj = thePattern#copy.deepcopy(thePattern);
- #ind = random.randint(1,2)
- if ind%2 :
- #try incorrect value deliberately (but allowed by idl description)
- #try SetScalarMode(long)
- mode = random.randint(-100000,100000); #incorrect value deliberately
- else:
- #correct value of ScalarMode
- mode = random.randint(0, 3)
-
- if dump : print "\tSetScalarMode(" + str(mode) +")"
- anObj.SetScalarMode(mode)
-
- # --- SCALING ---
- scal = random.randint(0,1)
- if dump : print "\tSetScaling(" + str(SCALING[scal]) +")"
- anObj.SetScaling(SCALING[scal])
-
- # --- BOUNDARIES ---
- if ind%2 :
- alfa = random.random()*random.randint(-100000,100000)
- betta = random.random()*random.randint(-100000,100000)
- aMin = alfa; aMax = betta
- else:
- #more correct set
- aPMin = thePattern.GetMin()
- aPMax = thePattern.GetMax()
- aLen = aPMax - aPMin
- alfa = random.random()%0.5
- betta = random.random()%0.5
- aMin = alfa*aLen*random.randint(-1,1) + aPMin
- aMax = betta*aLen*random.randint(-1,1) + aPMax
- if dump : print "\tSetRange(" + str(aMin) + ", " + str(aMax) + ")"
- anObj.SetRange(aMin, aMax)
-
- # --- POSITION ---
- if ind%2:
- X=random.random()*random.randint(-100000,100000)
- Y=random.random()*random.randint(-100000,100000)
- else :
- X=random.random()
- Y=random.random()
- if dump : print "SetPosition("+ str(X) + ", " + str(Y) + " )"
- anObj.SetPosition(X, Y)
-
- # --- SCALAR BAR SIZE ---
- if ind%2:
- aWidth=random.random()*random.randint(-100000,100000)
- aHeight=random.random()*random.randint(-100000,100000)
- else :
- aWidth=random.random()
- aHeight=random.random()
- if dump : print " SCALAR BAR Width = " + str(aWidth) + " Height = ", str(aHeight)
- anObj.SetSize(aWidth, aHeight)
-
- return anObj
-
-
-def dump_scalarmap_parameters(anObj):
-
- print "\tGetScalarMode() = " + str(anObj.GetScalarMode())
- print "\tGetScaling() = " + str(anObj.GetScaling())
- print "\tGetMin() = " + str(anObj.GetMin()) + " GetMax() = " + str (anObj.GetMax())
- print "\tGetOrientation() = " + str(anObj.GetOrientation())
- print "\tGetPosX() = ", str(anObj.GetPosX()) + " GetPosY() = ", str(anObj.GetPosY())
- print "\tGetWidth() = ", str ( anObj.GetWidth()) + " GetHeight() = " + str(anObj.GetHeight())
-
-# ----------------------
-# DEFORMED SHAPE
-# ----------------------
-def try_deformedshape_parameters(thePattern) :
-
- if thePattern is None : return None
- import copy
- import random
-
- anObj = try_scalarmap_parameters(thePattern)
-
- # --- SCALING ---
- if ind%2:
- anObj.SetScale( random.random()*random.randint(-100000, 100000))
- else :
- anObj.SetScale( anObj.GetScale()*random.random())
-
- return anObj
-
-
-def dump_deformedshape_parameters(theObject):
- dump_scalarmap_parameters(theObject)
- print "GetScale() = ", theObject.GetScale()
-
-# ----------------------
-# CUT PLANES
-# ----------------------
-def try_cutplanes_parameters(thePattern) :
-
- if thePattern is None : return aList
- import copy
- import random
-
- ORIENT = [VISU.CutPlanes.XY, VISU.CutPlanes.YZ, VISU.CutPlanes.ZX]
-
- ind = random.randint(1,2)
- anObj = try_scalarmap_parameters(thePattern)
-
- if ind%2 : anObj.SetNbPlanes(random.randint(-40,40))
- else : anObj.SetNbPlanes(random.randint(0,10)) #try behaivor if NbPlanes=0
-
- # --- DISPLACEMENT ---
- anObj.SetDisplacement(random.randint(-100000,100000))
-
- # --- PLANE POSITION ---
- if ind%2:
- PlaneNb = random.randint(-100000,100000) #incorrect value is possible
- else : PlaneNb = random.randint(0, anObj.GetNbPlanes())
-
- anObj.SetPlanePosition(PlaneNb, random.random()*random.randint(-100000,100000))
-
- # --- SET DEFAULT ---
- anObj.SetDefault(PlaneNb)
-
- # --- SET X,Y,Z ROTATION ---
- if ind%2 :
- angle1 = random.random()*random.randint(-100000,100000)
- angle2 = random.random()*random.randint(-100000,100000)
- else :
- angle1 = random.random()*3.14
- angle2 = random.random()*3.14
-
- # --- ORIENTATION ---
- anObj.SetOrientation(ORIENT[random.randint(0,2)],angle1,angle2)
-
- return anObj
-
-def dump_cutplanes_parameters(theObject):
- dump_saclarmap_parameters(theObject)
-
- print "GetOrientationType = " + str(theObject.GetOrientationType())
- PlanesNb = theObject.GetNbPlanes()
- print "GetNbPlanes() = ", str(PlanesNb)
- for i in range(0,PlanesNb+1):
- if theObject.IsDefault(i) :
- print "Default plane : "+str(i); break
- print "GetPlanePosition(" + str(i) + ") = ", theObject.GetPlanePosition(i)
- print "GetDisplacement() = ", str(theObject.GetDisplacement())
- print "GetRotateX() = ", str(theObject.GetRotateX())
- print "GetRotateY() = ", str(theObject.GetRotateY())
- print "GetRotateZ() = ", str(theObject.GetRotateZ())
-
-# ----------------------
-# CUT LINES
-# ----------------------
-def try_cutlines_parameters(thePattern):
-
- if thePattern is None : return None
- import copy
- import random
-
- ORIENT = [VISU.CutPlanes.XY, VISU.CutPlanes.YZ, VISU.CutPlanes.ZX]
- ind = random.randint(1,2)
- anObj = try_scalarmap_parameters(thePattern)
-
- # --- ORIENTATION ---
- anObj.SetOrientation(ORIENT[random.randint(0,2)],
- random.randint(-100,100)*random.random(),
- random.randint(-100,100)*random.random())
- anObj.SetOrientation2(ORIENT[random.randint(0,2)],
- random.randint(-100,100)*random.random(),
- random.randint(-100,100)*random.random())
-
- # --- Base Plane Position ---
- anObj.SetBasePlanePosition( random.random()*random.randint(-100000,100000))
-
- # --- NUMBER OF LINES ---
- if ind%2:
- anObj.SetNbLines(random.randint(-5, 50))
-
- return anObj
-
-def dump_cutlines_parameters(theObject):
- dump_scalarmap_parameters(theObject)
-
- print "GetOrientationType() = " + str(theObject.GetOrientationType())
- print "GetOrientationType2() = " + str(theObject.GetOrientationType2())
- print "GetBasePlanePosition() = "+ str(theObject.GetBasePlanePosition())
- print "GetNbLines() = " + str(theObject.GetNbLines())
- print "GetRotateX() = ", str(theObject.GetRotateX())
- print "GetRotateX2() = ", str(theObject.GetRotateX2())
- print "GetRotateY() = ", str(theObject.GetRotateY())
- print "GetRotateY2() = ", str(theObject.GetRotateY2())
-
-# ----------------------
-# STREAM LINES
-# ----------------------
-def try_streamlines_parameters(thePattern):
-
- if thePattern is None : return None
- import copy
- import random
-
- DIRECTION = [VISU.StreamLines.FORWARD, VISU.StreamLines.BACKWARD, VISU.StreamLines.BOTH]
-
- ind = random.randint(1,2)
- anObj = (try_deformedshape_parameters(thePattern))[0]
-
- # --- DIREACTION ---
- anObj.SetDirection(DIRECTION[random.randint(0,2)])
-
- # --- STEP LENGTH ---
- if ind%2 : anObj.SetStepLength(random.random()*random.randint(-1000,1000))
- else :
- aLen = anObj.GetMax() - anObj.GetMin()
- anObj.SetStepLength(aLen/random.randint(1,100))
-
- # --- PROPAGATION TIME ---
- anObj.SetPropagationTime(random.random()*random.randint(1,100))
-
- # --- INTEGRATION STEP ---
- if ind%2 :
- anObj.SetIntegrationStep(random.random()*random.randint(-1000,1000))
- else:
- anObj.SetIntegrationStep(random.random())
-
- # --- USED POINT ---
- anObj.SetUsedPoints(random.random()*random.randint(-10000,10000))
-
- return anObj
-
-def dump_streamlines_parameters(theObject):
-
- dump_deformedshape_parameters(theObject)
-
- print "GetDirection() = " + str(theObject.GetDirection())
- print "GetStepLength() = " + str(theObject.GetStepLength())
- print "GetPropagationTime() =" + str(theObject.GetPropagationTime())
- print "GetIntegrationStep() =" + str(theObject.GetIntegrationStep())
- print "GetUsedPoints() =" + str(theObject.GetUsedPoints())
-
-# ----------------------
-# VECTORS
-# ----------------------
-def try_vectors_parameters(thePattern, theNum):
-
- if thePattern is None : return None
- import copy
- import random
- GLIPH_TYPE = [VISU.Vectors.ARROW, VISU.Vectors.CONE2, VISU.Vectors.CONE6, VISU.Vectors.NONE]
- GLIPH_POS = [VISU.Vectors.CENTER, VISU.Vectors.TAIL, VISU.Vectors.HEAD]
- ind = random.randint(1,2)
- anObj = (try_deformedshape_parameters(thePattern))[0]
-
- # --- LINE WIDTH ---
- if ind%2 :
- anObj.SetLineWidth(random.random()*random.randint(-10000,10000))
- else :
- anObj.SetLineWidth(random.randint(1, 10))
-
- # --- GLIPH TYPE ---
- anObj.SetGlyphType(GLIPH_TYPE[random.randint(0, len(GLIPH_TYPE)-1)])
-
- # --- GLIPH POS ---
- anObj.SetGlyphPos(GLIPH_POS[random.randint(0, len(GLIPH_POS)-1)])
-
- return anObj
-
-def dump_vetctors_parameters(theObject):
-
- dump_deformedshape_parameters(theObject)
-
- print "GetLineWidth() = " +str(theObject.GetLineWidth())
- print "GetGlyphType() = " +str(theObject.GetGlyphType())
- print "GetGlyphPos() = " +str(theObject.GetGlyphPos())
-
-
-# ----------------------
-# ISO SURFACES
-# ----------------------
-
-def try_isosurfaces_parameters(thePattern) :
- if thePattern is None : return None
- import copy
- import random
-
- anObj = try_scalarmap_parameters(thePattern)
- ind = random.randint(1,2)
- # --- SURFACES NUMBER ---
- if ind%2 :
- anObj.SetNbSurfaces(random.randint(-100000,100000))
- else:
- anObj.SetNbSurfaces(random.randint(1, 50))
-
- return anObj
-
-def dump_isosurfaces_parameters(theObject):
-
- dump_scalarmap_parameters(theObject)
- print "GetNbSurfaces() = "+ str(theObject.GetNbSurfaces())
-
-
-# ----------------------
-# TABLES AND CURVES
-# ----------------------
-
-def FillTable( theTable, theValues, theRows, theColumns, theRowTitles, theRowUnits, theColumnTitles ):
- if theTable is None: return
- if len(theRows) != len(theColumns): return
- if len(theRows) != len(theValues): return
- i = 0
- for value in theValues:
- theTable.PutValue( value, theRows[ i ], theColumns[ i ])
- i = i + 1
- pass
- i = 1
- for title in theRowTitles:
- theTable.SetRowTitle( i, title )
- theTable.SetRowUnit( i, theRowUnits[ i - 1 ])
- i = i + 1
- pass
- i = 1
- for title in theColumnTitles:
- theTable.SetColumnTitle( i, title )
- i = i + 1
- pass
- pass
-
-def CreateCurve( theTable, theHRow, theVRow, theTitle, theColor, theMarker, theLineType, theLineWidth ):
- if theTitle is None: return
- curve = myLocalVisu.CreateCurve( theTable, theHRow, theVRow );
- if curve:
- curve.SetTitle( theTitle )
- curve.SetColor( theColor )
- curve.SetMarker( theMarker )
- curve.SetLine( theLineType, theLineWidth )
- pass
- return curve
+++ /dev/null
-# VISU VISU_SWIG : binding of C++ implementation and Python
-#
-# Copyright (C) 2003 CEA/DEN, EDF R&D
-#
-#
-#
-# File : visu_big_table.py
-# Author : Vadim SANDLER
-# Module : VISU
-# $Header$
-
-import salome
-import math
-import SALOMEDS
-import VISU
-
-# >>> Getting study builder ==================================================
-myStudy = salome.myStudy
-myBuilder = myStudy.NewBuilder()
-
-# >>> Getting (loading) VISU component =======================================
-myVisu = salome.lcc.FindOrLoadComponent("FactoryServer", "VISU")
-myComponent = myStudy.FindComponent("VISU")
-myVisu.SetCurrentStudy(myStudy)
-if not myComponent:
- myComponent = myBuilder.NewComponent("VISU")
- aName = myBuilder.FindOrCreateAttribute(myComponent, "AttributeName")
- #aName.SetValue("Visu")
- aName.SetValue( salome.sg.getComponentUserName("VISU") )
-
- A2 = myBuilder.FindOrCreateAttribute(myComponent, "AttributePixMap");
- aPixmap = A2._narrow(SALOMEDS.AttributePixMap);
- aPixmap.SetPixMap( "ICON_OBJBROWSER_Visu" );
-
- myBuilder.DefineComponentInstance(myComponent,myVisu)
-
-# >>> Creating object with Table of real[ 200 * 20 ] ========================
-myTRealObject = myBuilder.NewObject(myComponent)
-AName = myBuilder.FindOrCreateAttribute(myTRealObject, "AttributeName")
-AName.SetValue("Table Of Real")
-ARealTable = myBuilder.FindOrCreateAttribute(myTRealObject, "AttributeTableOfReal")
-myHorNb = 10
-myVerNb = 200
-
-k={}
-for j in range(0,myHorNb):
- k[j] = j*10+1
-ARealTable.AddRow(k.values())
-ARealTable.SetRowTitle(1, "Frequency")
-ARealTable.SetRowUnit(1, "Hz")
-
-for i in range(1,myVerNb+1):
- for j in range(0,myHorNb):
- if j % 2 == 1:
- k[j] = math.log10(j*30*math.pi/180) * 20 + i * 15 + j*5
- else:
- k[j] = math.sin(j*30*math.pi/180) * 20 + i * 15 + j*5
- ARealTable.AddRow(k.values())
- ARealTable.SetRowTitle(i+1, "Power " + str(i))
- ARealTable.SetRowUnit(i+1, "Wt")
-ARealTable.SetTitle("Very useful data")
-
-# >>> Create Visu table
-myVisuTableReal = myVisu.CreateTable( myTRealObject.GetID() )
-
-# >>> Create container and insert curves
-myContainer = myVisu.CreateContainer()
-
-# >>> Create curves
-for i in range(1,myVerNb+1):
- myCurve = myVisu.CreateCurve( myVisuTableReal, 1, i+1 )
- myContainer.AddCurve(myCurve)
-
-# >>> Updating Object Browser ================================================
-salome.sg.updateObjBrowser(1)
-
-# ============================================================================
+++ /dev/null
-import VISU
-import SALOMEDS
-from visu_gui import *
-
-myViewManager = myVisu.GetViewManager();
-myView = myViewManager.Create3DView();
-
-medFile = "fra.med"
-myFieldName = "VITESSE";
-
-aMeshName ="LE VOLUME"
-anEntity = VISU.NODE
-aTimeStampId = 1
-
-medFile = os.getenv('KERNEL_ROOT_DIR') + '/examples/' + medFile
-myResult = myVisu.ImportFile(medFile)
-
-aScalarMap = myVisu.ScalarMapOnField(myResult,aMeshName,anEntity,myFieldName,aTimeStampId)
-myView.Display(aScalarMap);
-myView.FitAll();
-
-aCutPlanes = myVisu.CutPlanesOnField(myResult,aMeshName,anEntity,myFieldName,aTimeStampId)
-myView = myViewManager.Create3DView();
-myView.Display(aCutPlanes);
-myView.FitAll();
-
-myVisu.DeletePrs3d(aScalarMap)
-myVisu.DeleteResult(myResult)
+++ /dev/null
-# VISU VISU_SWIG : binding of C++ implementation and Python
-#
-# Copyright (C) 2003 CEA/DEN, EDF R&D
-#
-#
-#
-# File : visu_gui.py
-# Module : VISU
-
-import sys
-import os
-
-import SALOMEDS
-import SALOME
-import SALOME_MED
-import VISU
-
-from salome import *
-import visu
-
-myVisu = visu.Initialize(orb, naming_service,lcc,myStudyManager,myStudy, 2)
-if myVisu is None:
- raise RuntimeError, "myVisu is none, VISU component is not loaded or found"
+++ /dev/null
-# VISU VISU_SWIG : binding of C++ implementation and Python
-#
-# Copyright (C) 2003 CEA/DEN, EDF R&D
-#
-#
-#
-# File : visu_med.py
-# Module : VISU
-
-import os
-import salome
-import SALOMEDS
-import SALOME_MED
-import VISU
-
-from libSALOME_Swig import *
-sg = SALOMEGUI_Swig()
-
-def getMedObjectFromStudy():
- mySO = salome.myStudy.FindObject("Objet MED")
- anAttr = mySO.FindAttribute("AttributeIOR")[1]
- obj = salome.orb.string_to_object(anAttr.Value())
- myObj = obj._narrow(SALOME_MED.MED)
- return myObj
-
-def getFieldObjectFromStudy(number,subnumber):
- mySO = salome.myStudy.FindObject("MEDFIELD")
- mysub = mySO.FindSubObject(number)[1]
- if mysub:
- mysubsub = mysub.FindSubObject(subnumber)[1]
- if mysubsub:
- Builder = salome.myStudy.NewBuilder()
- anAttr = Builder.FindOrCreateAttribute(mysubsub, "AttributeIOR")
- obj = salome.orb.string_to_object(anAttr.Value())
- myObj = obj._narrow(SALOME_MED.FIELDINT)
- if (myObj == None):
- myObj = obj._narrow(SALOME_MED.FIELDDOUBLE)
- return myObj
- else:
- print "ERROR: No Field Object stored in this Study"
- return None
-
-med_comp = salome.lcc.FindOrLoadComponent("FactoryServer", "MED")
-
-medDir = os.getenv('KERNEL_ROOT_DIR') + '/examples/'
-
-def importMedFrom(medDir,medFile):
- medFile = medDir + medFile
- med_comp.readStructFileWithFieldType(medFile,salome.myStudyName)
- sg.updateObjBrowser(1)
-
-def importMed(medFile):
- importMedFrom(medDir,medFile)
-
-#med_obj = getMedObjectFromStudy()
-myVisu = salome.lcc.FindOrLoadComponent("FactoryServer", "VISU")
-print "Use importMed(medFile) or importMedFrom(medDir,medFile) functions !"
-
-#myField = getFieldObjectFromStudy(2,1)
-#myResult = myVisu.ImportMed(myField)
-#aMesh = myVisu.CreateMesh(myResult);
-#aScalarMap = myVisu.CreateScalarMap(myResult,myField.getName(),0)
-#if(myField.getNumberOfComponents() > 1) :
-# aScalarMap = myVisu.CreateVectors(myResult,myField.getName(),0)
-
-#myResult = myVisu.ImportFile(medFile)
-#aMesh = myVisu.CreateMesh(myResult);
-#aScalarMap = myVisu.CreateScalarMap(myResult,myField.getName(),0)
-#if(myField.getNumberOfComponents() > 1) :
-# aScalarMap = myVisu.CreateCutPlanes(myResult,myField.getName(),0)
+++ /dev/null
-# VISU VISU_SWIG : binding of C++ implementation and Python
-#
-# Copyright (C) 2003 CEA/DEN, EDF R&D
-#
-#
-#
-# File : visu_prs_exam.py
-# Module : VISU
-
-import sys
-import os
-import salome
-import SALOMEDS
-import SALOME
-import SALOME_MED
-import VISU
-
-from libSALOME_Swig import *
-sg = SALOMEGUI_Swig()
-
-import visu_gui
-myVisu = visu_gui.myVisu
-
-medFile = "pointe.med"
-medFile = os.getenv('KERNEL_ROOT_DIR') + '/examples/' + medFile
-print medFile
-
-studyCurrent = salome.myStudyName
-
-med_comp = salome.lcc.FindOrLoadComponent("FactoryServer", "MED")
-#myVisu = salome.lcc.FindOrLoadComponent("FactoryServer", "Visu")
-
-try:
- if os.access(medFile, os.R_OK) :
- if os.access(medFile, os.W_OK) :
- med_comp.readStructFileWithFieldType(medFile,studyCurrent)
- med_obj = visu_gui.visu.getMedObjectFromStudy()
- print "med_obj - ", med_obj
-
- myField = visu_gui.visu.getFieldObjectFromStudy(2,1)
- aMeshName = "FILED_DOUBLE_MESH"
- anEntity = VISU.NODE
- aTimeStampId = 0
-
- myResult1 = myVisu.ImportMedField(myField)
- aMesh1 = myVisu.MeshOnEntity(myResult1, aMeshName, anEntity);
-
- aScalarMap1= myVisu.ScalarMapOnField(myResult1, aMeshName, anEntity, myField.getName(), aTimeStampId)
- if(myField.getNumberOfComponents() > 1) :
- aVectors = myVisu.VectorsOnField(myResult1, aMeshName, anEntity, myField.getName(), aTimeStampId)
-
- myResult2 = myVisu.ImportFile(medFile)
- aMeshName = "maa1"
- anEntity = VISU.NODE
- aMesh2 = myVisu.MeshOnEntity(myResult2, aMeshName, anEntity)
-
- aScalarMap2 = myVisu.ScalarMapOnField(myResult2, aMeshName, anEntity, myField.getName(), aTimeStampId)
- if(myField.getNumberOfComponents() > 1) :
- aCutPlanes = myVisu.CutPlanesOnField(myResult2, aMeshName, anEntity, myField.getName(), aTimeStampId)
-
- sg.updateObjBrowser(0)
- else : print "We have no permission to rewrite medFile, so readStructFileWithFieldType can't open this file";
- else : print "We have no permission to read medFile, it will not be opened";
-except:
- if sys.exc_type == SALOME.SALOME_Exception :
- print "There is no permission to read " + medFile
- else :
- print sys.exc_type
- print sys.exc_value
- print sys.exc_traceback
-
+++ /dev/null
-
-import VISU
-import SALOMEDS
-from visu_gui import *
-
-myViewManager = myVisu.GetViewManager()
-
-################################################
-
-myView1 = myViewManager.Create3DView()
-myView1.SetTitle("The window will be soon destroyed!")
-print "myView1 = myViewManager.Create3DView()"
-
-myView1.Maximize()
-print "myView1.Maximize()"
-
-myView1.Restore()
-print "myView1.Restore()"
-
-myView1.Minimize()
-print "myView1.Minimize()"
-
-myViewManager.Destroy(myView1)
-print "myViewManager.Destroy(myView1)"
-
-################################################
-
-myView2 = myViewManager.Create3DView()
-print "myView2 = myViewManager.Create3DView()"
-myView2.SetTitle("myView2")
-
-aColor = SALOMEDS.Color(0.0,0.3,1.0)
-myView2.SetBackground(aColor)
-print "aColor = SALOMEDS.Color(0.0,0.3,1.0)"
-print "myView2.SetBackground(aColor)"
-
-myView2.SetFocalPoint([0,0,0])
-print "myView2.SetFocalPoint([0,0,0])"
-myView2.SetParallelScale(2)
-print "myView2.SetParallelScale(2)"
-
-################################################
-
-myView3 = myViewManager.Create3DView()
-print "myView3 = myViewManager.Create3DView()"
-myView3.SetTitle("myView3")
-
-myView3.SplitRight()
-print "myView3.SplitRight()"
-
-aColor = SALOMEDS.Color(0.0,0.7,0.0)
-print "aColor = SALOMEDS.Color(0.0,0.7,0.0)"
-myView3.SetBackground(aColor)
-print "myView3.SetBackground(aColor)"
-
-aPoint = myView3.GetPointOfView()
-aPoint[0] = aPoint[0] + 10
-myView3.SetPointOfView(aPoint)
-print "myView3.SetPointOfView(...)"
-myView3.ScaleView(VISU.View3D.YAxis,10.0)
-myView3.ScaleView(VISU.View3D.XAxis,3.0)
-print "myView3.ScaleView(...)"
-
-myView3.FitAll()
-
-myView3.SaveViewParams('AAA')
-print "myView3.SaveViewParams('AAA')"
-
-myView3.RemoveScale()
-print "myView3.RemoveScale()"
-
-myView3.Update()
-print "myView3.Update()"
-myView3.FitAll()
-print "myView3.FitAll()"
-
-################################################
-
-myView4 = myViewManager.Create3DView()
-print "myView4 = myViewManager.Create3DView()"
-myView4.SetTitle("myView4")
-
-aColor = SALOMEDS.Color(1.0,0.7,0.0)
-print "aColor = SALOMEDS.Color(1.0,0.7,0.0)"
-myView4.SetBackground(aColor)
-print "myView4.SetBackground(aColor)"
-
-################################################
-
-myView5 = myViewManager.Create3DView()
-print "myView5 = myViewManager.Create3DView()"
-myView5.SetTitle("myView5")
-
-myView5.SplitTop()
-print "myView5.SplitTop()"
-
-aColor = SALOMEDS.Color(0.7,0.7,0.7)
-print "aColor = SALOMEDS.Color(0.7,0.7,0.7)"
-myView5.SetBackground(aColor)
-print "myView5.SetBackground(aColor)"
-
-################################################
-
-myView6 = myViewManager.CreateXYPlot()
-print "myView6 = myViewManager.CreateXYPlot()"
-myView6.SetTitle("myView6")
-
-################################################
-
-myView7 = myViewManager.Create3DView()
-print "myView7 = myViewManager.Create3DView()"
-myView7.SetTitle("myView7")
-
-################################################
-
-myView6.OnTop()
-print "myView6.OnTop()"
-
-myView4.Attract(myView2)
-print "myView4.Attract(myView2)"
-
-myView4.SetRelativePositionInSplitter(0.7)
-print "myView4.SetRelativePositionInSplitter(0.7)"
-
-myView4.SetRelativePositionX(0.2)
-print "myView4.SetRelativePositionX(0.7)"
-
-#myView4.SetRelativePositionY(0.2)
-#print "myView4.SetRelativePositionY(0.2)"
+++ /dev/null
-from libVISU_Swig import *
-medFile = os.getenv('KERNEL_ROOT_DIR') + '/examples/fra.med'
-myCon=Convertor(medFile)
-myPrs=ScalarMap(myCon,"LE VOLUME",0,"VITESSE",1)
-myView=View3D()
-myView.Display(myPrs)
+++ /dev/null
-# VISU VISU_SWIG : binding of C++ implementation and Python
-#
-# Copyright (C) 2003 CEA/DEN, EDF R&D
-#
-#
-#
-# File : visu_table.py
-# Author : Vadim SANDLER
-# Module : VISU
-# $Header$
-
-import salome
-import math
-import SALOMEDS
-import VISU
-
-# >>> Getting study builder ==================================================
-myStudy = salome.myStudy
-myBuilder = myStudy.NewBuilder()
-
-# >>> Getting (loading) VISU component =======================================
-myVisu = salome.lcc.FindOrLoadComponent("FactoryServer", "VISU")
-myComponent = myStudy.FindComponent("VISU")
-myVisu.SetCurrentStudy(myStudy)
-if not myComponent:
- myComponent = myBuilder.NewComponent("VISU")
- aName = myBuilder.FindOrCreateAttribute(myComponent, "AttributeName")
- #aName.SetValue("Visu")
- aName.SetValue( salome.sg.getComponentUserName("VISU") )
-
- A2 = myBuilder.FindOrCreateAttribute(myComponent, "AttributePixMap");
- aPixmap = A2._narrow(SALOMEDS.AttributePixMap);
- aPixmap.SetPixMap( "ICON_OBJBROWSER_Visu" );
-
- myBuilder.DefineComponentInstance(myComponent,myVisu)
-
-# >>> Creating object with Table of integer ==================================
-myTIntObject = myBuilder.NewObject(myComponent)
-AName = myBuilder.FindOrCreateAttribute(myTIntObject, "AttributeName")
-AName.SetValue("Table Of Integer")
-AIntTable = myBuilder.FindOrCreateAttribute(myTIntObject, "AttributeTableOfInteger")
-
-a=[1,2,3,4,5,6,7,8,9,10]
-AIntTable.AddRow(a)
-a=[110,120,130,140,150,160,170,180,190,200]
-AIntTable.AddRow(a)
-a=[-1,272,0,0,-642,10000,13,578,-578,99]
-AIntTable.AddRow(a)
-AIntTable.SetTitle("TEST table of integer")
-AIntTable.SetRowTitle(1,"FR")
-AIntTable.SetRowUnit(1,"m/h")
-AIntTable.SetRowTitle(2,"SR")
-AIntTable.SetRowUnit(2,"s")
-AIntTable.SetRowTitle(3,"TR")
-AIntTable.SetRowUnit(3,"$")
-c=["C1","C2","C3","C4","C5","C6","C7","C8","C9","C10"]
-AIntTable.SetColumnTitles(c)
-
-# >>> Creating object with Table of real =====================================
-myTRealObject = myBuilder.NewObject(myComponent)
-AName = myBuilder.FindOrCreateAttribute(myTRealObject, "AttributeName")
-AName.SetValue("Table Of Real")
-ARealTable = myBuilder.FindOrCreateAttribute(myTRealObject, "AttributeTableOfReal")
-
-k={}
-l={}
-for j in range(0,20):
- k[j] = j*10+1
- l[j] = "C"+str(j+1)
-ARealTable.AddRow(k.values())
-ARealTable.SetRowTitle(1, "Row 0")
-ARealTable.SetRowUnit(1, "Hz")
-ARealTable.SetColumnTitles(l.values())
-for i in range(1,11):
- for j in range(1,21):
- if j % 2 == 1:
- k[j] = math.log10(j*30*math.pi/180) * 20 + i * 15 + j*5
- else:
- k[j] = math.sin(j*30*math.pi/180) * 20 + i * 15 + j*5
- ARealTable.AddRow(k.values())
- ARealTable.SetRowTitle(i+1, "Row " + str(i))
- ARealTable.SetRowUnit(i+1, "Wt")
-ARealTable.SetTitle("TEST table of real")
-
-# >>> Creating object with integer attribute =================================
-myIntObject = myBuilder.NewObject(myComponent)
-AName = myBuilder.FindOrCreateAttribute(myIntObject, "AttributeName")
-AName.SetValue("Integer")
-AInt = myBuilder.FindOrCreateAttribute(myIntObject, "AttributeInteger")
-AInt.SetValue(123)
-
-# >>> Creating object with real attribute ====================================
-myRealObject = myBuilder.NewObject(myComponent)
-AName = myBuilder.FindOrCreateAttribute(myRealObject, "AttributeName")
-AName.SetValue("Real")
-AReal = myBuilder.FindOrCreateAttribute(myRealObject, "AttributeReal")
-AReal.SetValue(-56.9634)
-
-# >>> Creating object with comment attribute =================================
-myCmtObject = myBuilder.NewObject(myComponent)
-AName = myBuilder.FindOrCreateAttribute(myCmtObject, "AttributeName")
-AName.SetValue("Comment")
-ACmt = myBuilder.FindOrCreateAttribute(myCmtObject, "AttributeComment")
-ACmt.SetValue("Just a comment")
-
-# >>> Create VISU presentable objects ========================================
-# >>> Create table of real
-myVisuTableReal = myVisu.CreateTable( myTRealObject.GetID() )
-
-# >>> Create curves
-myCurve1 = myVisu.CreateCurve( myVisuTableReal, 1, 2 )
-myCurve2 = myVisu.CreateCurve( myVisuTableReal, 1, 3 )
-myCurve3 = myVisu.CreateCurve( myVisuTableReal, 1, 4 )
-myCurve4 = myVisu.CreateCurve( myVisuTableReal, 1, 6 )
-myCurve5 = myVisu.CreateCurve( myVisuTableReal, 1, 8 )
-myCurve6 = myVisu.CreateCurve( myVisuTableReal, 1, 11 )
-
-# >>> Set curve parameters
-myCurve4.SetMarker( VISU.Curve.RECTANGLE )
-myCurve4.SetLine( VISU.Curve.DASHLINE, 3 )
-myCurve4.SetColor( SALOMEDS.Color(0, 0.7, 0.3) )
-myCurve6.SetMarker( VISU.Curve.LTRIANGLE )
-myCurve6.SetLine( VISU.Curve.DOTLINE, 2 )
-myCurve6.SetColor( SALOMEDS.Color(0.2, 0.2, 0.9) )
-
-# >>> Create container and insert curves
-myContainer1 = myVisu.CreateContainer()
-myContainer1.AddCurve(myCurve1)
-myContainer1.AddCurve(myCurve2)
-myContainer1.AddCurve(myCurve3)
-myContainer1.AddCurve(myCurve4)
-myContainer1.AddCurve(myCurve5)
-myContainer1.AddCurve(myCurve6)
-
-# >>> Create container and insert curves
-myContainer2 = myVisu.CreateContainer()
-myContainer2.AddCurve(myCurve4)
-
-# >>> Create table of integer
-myVisuTableInt = myVisu.CreateTable( myTIntObject.GetID() )
-
-# >>> Create curves
-myCurve101 = myVisu.CreateCurve( myVisuTableInt, 1, 1 )
-myCurve102 = myVisu.CreateCurve( myVisuTableInt, 1, 3 )
-
-# >>> Set curve parameters
-myCurve101.SetMarker( VISU.Curve.RECTANGLE )
-myCurve101.SetLine( VISU.Curve.DASHLINE, 3 )
-myCurve101.SetColor( SALOMEDS.Color(0, 0.7, 0.3) )
-myCurve101.SetTitle( "Very useful data" )
-
-# >>> Create container and insert curves
-myContainer3 = myVisu.CreateContainer()
-myContainer3.AddCurve(myCurve101)
-myContainer3.AddCurve(myCurve102)
-
-# >>> Updating Object Browser ================================================
-salome.sg.updateObjBrowser(1)
-
-# ============================================================================
-
-
-
+++ /dev/null
-# VISU VISU_SWIG : binding of C++ implementation and Python
-#
-# Copyright (C) 2003 CEA/DEN, EDF R&D
-#
-#
-#
-# File : test_table.py
-# Author : Alexey Petrov
-# Module : VISU
-# $Header:
-
-import SALOMEDS
-import VISU
-
-import salome
-import SALOMEDS
-from VISU import *
-
-from visu_table import *
-
-myViewMan = myVisu.GetViewManager()
-
-myTable = myViewMan.CreateTableView(myVisuTableReal)
-myTitle = myTable.GetTitle()
-myTable.SetTitle('Changed Title')
-
-myPlot = myViewMan.CreateXYPlot()
-myTitle = myPlot.GetTitle()
-myPlot.SetTitle('Change the title from python')
-
-mySubTitle = myPlot.GetSubTitle()
-myPlot.SetSubTitle(myTitle)
-
-myXTitle = myPlot.GetXTitle()
-myYTitle = myPlot.GetYTitle()
-myPlot.SetXTitle(myYTitle)
-myPlot.SetYTitle(myXTitle)
-
-myPlot.GetMarkerSize()
-myPlot.SetMarkerSize(20)
-myPlot.GetMarkerSize()
-myPlot.ShowLegend(0)
-
-myPlot.SetCurveType(VISU.XYPlot.POINTS)
-myPlot.SetCurveType(VISU.XYPlot.MULTYLINE)
-myPlot.GetCurveType()
-myPlot.SetCurveType(VISU.XYPlot.SPLINE)
-
-myPlot.SetHorScaling(VISU.LOGARITHMIC)
-myPlot.EnableXGrid(1,3,1,4)
-myPlot.SetHorScaling(VISU.LINEAR)
-myPlot.EnableXGrid(1,10,1,10)
-myPlot.GetHorScaling()
-
-myPlot.SetVerScaling(VISU.LOGARITHMIC)
-myPlot.GetVerScaling()
-myPlot.EnableYGrid(1,2,1,10)
-
-myPlot.ShowLegend(1)
-myPlot.SetMarkerSize(5)
-myPlot.GetMarkerSize()
-
+++ /dev/null
-# VISU VISU_SWIG : binding of C++ implementation and Python
-#
-# Copyright (C) 2003 CEA/DEN, EDF R&D
-#
-#
-#
-# File : batchmode_visu_view3d.py
-# Module : VISU
-
-import os
-import time
-import math
-import VISU
-import SALOMEDS
-from visu_gui import *
-
-aDelay = 0
-
-#mySession = batchmode_visu.mySession
-
-myViewManager = myVisu.GetViewManager();
-
-myView = myViewManager.Create3DView();
-myView.SetTitle("The window will be soon destroyed!")
-print "myViewManager.Create3DView()"
-time.sleep(aDelay)
-
-myView.Maximize()
-print "myView.Maximize()"
-time.sleep(aDelay)
-
-myView.Restore()
-print "myView.Restore()"
-time.sleep(aDelay)
-
-myView.Minimize()
-print "myView.Minimize()"
-time.sleep(aDelay)
-
-myViewManager.Destroy(myView)
-print "myViewManager.Destroy(myView)"
-time.sleep(aDelay)
-
-
-
-medFile = "fra.med"
-myFieldName = "VITESSE";
-
-aMeshName ="LE VOLUME"
-anEntity = VISU.NODE
-aTimeStampId = 1
-
-medFile = os.getenv('KERNEL_ROOT_DIR') + '/examples/' + medFile
-myResult = myVisu.ImportFile(medFile)
-
-
-
-myView = myViewManager.Create3DView();
-
-print "myView.SetBackground(...)"
-aColor = SALOMEDS.Color(0.0,0.3,1.0)
-myView.SetBackground(aColor);
-
-myView.SetTitle("The viewer will display ScalarMap")
-print "myViewManager.Create3DView()"
-
-aScalarMap = myVisu.ScalarMapOnField(myResult,aMeshName,anEntity,myFieldName,aTimeStampId)
-
-myView.Display(aScalarMap);
-print "myView.Display(aScalarMap)"
-myView.SetFocalPoint([0,0,0]);
-print "myView.SetFocalPoint(...)"
-myView.SetParallelScale(2);
-print "myView.SetParallelScale(...)"
-myView.FitAll();
-
-aMax = aScalarMap.GetMax()
-aMin = aScalarMap.GetMin()
-aDelta = (aMax - aMin)/2.0
-aNbColors = aScalarMap.GetNbColors()
-aNbColors = 64
-for i in range(2,aNbColors) :
- aScalarMap.SetNbColors(i)
- aX = aMin + aDelta*i/aNbColors
- aY = aMax - aDelta*i/aNbColors
- aScalarMap.SetRange(aX,aY)
- myView.Update();
- time.sleep(aDelay)
-
-aScalarMap.SetRange(aMin,aMax)
-
-print "myView.Update()"
-myView.Update();
-print "myView.FitAll()"
-myView.FitAll();
-
-#aWidth = myView.GetViewWidth()
-#print "a View Width before = ", aWidth
-#myView.SetViewWidth(aWidth/2)
-#aWidth = myView.GetViewWidth()
-#print "a View Width after = ", aWidth
-
-
-myView = myViewManager.Create3DView();
-myView.SetTitle("Here we will display CutPlanes")
-
-myView.SplitRight()
-
-print "myView.SetBackground(...)"
-aColor = SALOMEDS.Color(0.0,0.7,0.0)
-myView.SetBackground(aColor);
-
-aCutPlanes = myVisu.CutPlanesOnField(myResult,aMeshName,anEntity,myFieldName,aTimeStampId)
-print "myVisu.CutPlanesOnField(...)"
-
-myView.DisplayOnly(aCutPlanes);
-print "myView.DisplayOnly(aCutPlanes)"
-
-aPoint = myView.GetPointOfView();
-aPoint[0] = aPoint[0] + 10;
-myView.SetPointOfView(aPoint);
-print "myView.SetPointOfView(...)"
-myView.ScaleView(VISU.View3D.YAxis,10.0);
-myView.ScaleView(VISU.View3D.XAxis,3.0);
-print "myView.ScaleView(...)"
-time.sleep(aDelay)
-
-myView.FitAll();
-
-aNbPlanes = aCutPlanes.GetNbPlanes()
-aNbPlanes = 30
-aXAngle = aCutPlanes.GetRotateX()
-aYAngle = aCutPlanes.GetRotateY()
-anOrientation = aCutPlanes.GetOrientationType()
-for i in range(aNbPlanes,1,-1) :
- aCutPlanes.SetNbPlanes(i)
- aX = math.pi/2.0*(aNbPlanes-i)/aNbPlanes
- aY = math.pi/2.0*(aNbPlanes-i)/aNbPlanes
- aCutPlanes.SetOrientation(anOrientation,aX,aY)
- myView.Update();
- time.sleep(aDelay)
-
-aNbPlanes = 10
-aCutPlanes.SetOrientation(VISU.CutPlanes.ZX,0,0)
-for i in range(1,aNbPlanes) :
- aCutPlanes.SetNbPlanes(i)
- myView.Update();
- time.sleep(aDelay)
-
-myView.SaveViewParams('AAA')
-print "myView.SaveViewParams('AAA')"
-time.sleep(aDelay)
-
-aCutPlanes.SetOrientation(VISU.CutPlanes.XY,0,0)
-myView.RemoveScale();
-
-print "myView.Update()"
-myView.Update();
-print "myView.FitAll()"
-myView.FitAll();
-
-
-
-myView = myViewManager.Create3DView();
-print "myViewManager.Create3DView()"
-
-myView.SetTitle("IsoSurface's viewer")
-
-print "myView.SetBackground(...)"
-aColor = SALOMEDS.Color(1.0,0.7,0.0)
-myView.SetBackground(aColor);
-time.sleep(aDelay)
-
-aIsoSurfaces = myVisu.IsoSurfacesOnField(myResult, aMeshName, anEntity, myFieldName, aTimeStampId)
-
-myView.DisplayOnly(aIsoSurfaces);
-myView.FitAll();
-print "myView.DisplayOnly(aCutPlanes)"
-time.sleep(aDelay)
-
-aNbSurfaces = aIsoSurfaces.GetNbSurfaces()
-aNbSurfaces = 32
-for i in range(2,aNbSurfaces) :
- aIsoSurfaces.SetNbSurfaces(i)
- myView.Update();
- time.sleep(aDelay)
-
-aIsoSurfaces.SetNbSurfaces(10)
-
-print "myView.Update()"
-myView.Update();
-print "myView.FitAll()"
-myView.FitAll();
-
-
-
-myView = myViewManager.Create3DView();
-myView.SetTitle("The viewer for CutLines")
-print "myViewManager.Create3DView()"
-time.sleep(aDelay)
-
-print "myView.SetBackground(...)"
-aColor = SALOMEDS.Color(0.7,0.7,0.7)
-myView.SetBackground(aColor);
-time.sleep(aDelay)
-
-aCutLines = myVisu.CutLinesOnField(myResult, aMeshName, anEntity, myFieldName, aTimeStampId)
-aCutLines.SetOrientation(VISU.CutPlanes.ZX,0,0)
-aCutLines.SetOrientation2(VISU.CutPlanes.YZ,0,0)
-
-myView.DisplayOnly(aCutLines);
-myView.FitAll();
-print "myView.DisplayOnly(aCutLines)"
-time.sleep(aDelay)
-
-aSObj = myStudy.FindObjectIOR(aCutLines.GetID())
-aTable = myVisu.CreateTable( aSObj.GetID() )
-print "myVisu.CreateTable(...)"
-
-aTableView = myViewManager.CreateTableView(aTable)
-aTableView.SetTitle('Changed Title')
-
-aContainer = myVisu.CreateContainer()
-print "myVisu.CreateContainer(...)"
-
-aNbCurve = aTable.GetNbRows() - 1
-for i in range(2,aNbCurve):
- aCurve = myVisu.CreateCurve( aTable, 1, i )
- print i, aCurve
- aContainer.AddCurve(aCurve)
-
-
-myView = myViewManager.CreateXYPlot();
-myView.SetTitle("The viewer for Curves from CutLines")
-print "myViewManager.CreateXYPlot()"
-time.sleep(aDelay)
-
-myView.Display(aContainer)
-
-
-
-myView = myViewManager.Create3DView();
-myView.SetTitle("The viewer for Animation")
-print "myViewManager.Create3DView()"
-time.sleep(aDelay)
-
-medFile = "TimeStamps.med"
-myFieldName = "vitesse";
-
-medFile = os.getenv('KERNEL_ROOT_DIR') + '/examples/' + medFile
-myResult = myVisu.ImportFile(medFile)
-
-anAnim = myVisu.CreateAnimation(myView);
-aSObj = myStudy.FindObjectIOR(myResult.GetID())
-aSObj = aSObj.FindSubObject(1)[1]
-aSObj = aSObj.FindSubObject(2)[1]
-aSObj = aSObj.FindSubObject(2)[1]
-anAnim.addField(aSObj)
-anAnim.setPresentationType(0,VISU.TISOSURFACE)
-print "Generate presentations"
-anAnim.generatePresentations(0)
-print "Generate frames"
-anAnim.generateFrames()
-print "Start Animation"
-anAnim.setSpeed(99)
-#anAnim.setCycling(1)
-anAnim.startAnimation()
-myView.FitAll()
-while 1:
- time.sleep(1+aDelay)
- if not anAnim.isRunning():
- anAnim.stopAnimation()
- break
-
-#anAnim.clearView()