mirror of
https://git.salome-platform.org/gitpub/modules/smesh.git
synced 2025-02-23 17:15:36 +05:00

Cherrypick from master 2005-12-28 09:17:39 UTC jfa <jfa@opencascade.com> 'Join modifications from branch BR_3_1_0deb': INSTALL Makefile.in adm_local/unix/make_commence.in bin/VERSION build_configure configure.in.base doc/salome/Makefile.in doc/salome/SMESH_index_v3.1.0.html doc/salome/gui/SMESH/about_viewing_meshes.htm doc/salome/gui/SMESH/aspect_ratio_3d.htm doc/salome/gui/SMESH/borders_at_multi-connection.htm doc/salome/gui/SMESH/borders_at_multiconnection_2d.htm doc/salome/gui/SMESH/clipping.htm doc/salome/gui/SMESH/constructing_meshes.htm doc/salome/gui/SMESH/cshdat_robohelp.htm doc/salome/gui/SMESH/cshdat_webhelp.htm doc/salome/gui/SMESH/default.css doc/salome/gui/SMESH/default_ns.css doc/salome/gui/SMESH/defining_hypotheses_tui.htm doc/salome/gui/SMESH/deleting_groups.htm doc/salome/gui/SMESH/display_entity.htm doc/salome/gui/SMESH/ehelp.xml doc/salome/gui/SMESH/ehlpdhtm.js doc/salome/gui/SMESH/extrusion.htm doc/salome/gui/SMESH/extrusion_along_a_path.htm doc/salome/gui/SMESH/files/about_hypotheses.htm doc/salome/gui/SMESH/files/about_meshes.htm doc/salome/gui/SMESH/files/about_meshing_algorithms.htm doc/salome/gui/SMESH/files/about_quality_controls.htm doc/salome/gui/SMESH/files/adding_nodes_and_elements.htm doc/salome/gui/SMESH/files/area_of_elements.htm doc/salome/gui/SMESH/files/arithmetic_1d.htm doc/salome/gui/SMESH/files/aspect_ratio.htm doc/salome/gui/SMESH/files/changing_orientation_of_elements.htm doc/salome/gui/SMESH/files/constructing_groups_of_specific_elements.htm doc/salome/gui/SMESH/files/constructing_meshes.htm doc/salome/gui/SMESH/files/constructing_submeshes.htm doc/salome/gui/SMESH/files/creating_groups.htm doc/salome/gui/SMESH/files/cutting_quadrangles.htm doc/salome/gui/SMESH/files/diagonal_iversion_of_elements.htm doc/salome/gui/SMESH/files/displacing_nodes.htm doc/salome/gui/SMESH/files/displaying_nodes_numbers.htm doc/salome/gui/SMESH/files/editing_groups.htm doc/salome/gui/SMESH/files/importing_and_exporting_meshes.htm doc/salome/gui/SMESH/files/introduction_to_smesh.htm doc/salome/gui/SMESH/files/length_of_edges.htm doc/salome/gui/SMESH/files/max._element_area_hypothesis.htm doc/salome/gui/SMESH/files/max._element_volume_hypothsis.htm doc/salome/gui/SMESH/files/merging_nodes.htm doc/salome/gui/SMESH/files/minimum_angle.htm doc/salome/gui/SMESH/files/non_conform_mesh_allowed_hypothesis.htm doc/salome/gui/SMESH/files/reassigning_hypotheses_and_algorithms.htm doc/salome/gui/SMESH/files/removing_nodes_and_elements.htm doc/salome/gui/SMESH/files/renumbering_nodes_and_elements.htm doc/salome/gui/SMESH/files/rotation.htm doc/salome/gui/SMESH/files/running_smesh_module.htm doc/salome/gui/SMESH/files/sewing_meshes.htm doc/salome/gui/SMESH/files/skew.htm doc/salome/gui/SMESH/files/smoothing.htm doc/salome/gui/SMESH/files/symmetry.htm doc/salome/gui/SMESH/files/taper.htm doc/salome/gui/SMESH/files/translation.htm doc/salome/gui/SMESH/files/uniting_a_set_of_triangles.htm doc/salome/gui/SMESH/files/uniting_two_triangles.htm doc/salome/gui/SMESH/files/using_operations_on_groups.htm doc/salome/gui/SMESH/files/viewing_mesh_info.htm doc/salome/gui/SMESH/files/warp.htm doc/salome/gui/SMESH/free_borders.htm doc/salome/gui/SMESH/free_edges.htm doc/salome/gui/SMESH/grouping_elements.htm doc/salome/gui/SMESH/image10.jpg doc/salome/gui/SMESH/image101.gif doc/salome/gui/SMESH/image102.gif doc/salome/gui/SMESH/image103.gif doc/salome/gui/SMESH/image104.gif doc/salome/gui/SMESH/image105.gif doc/salome/gui/SMESH/image106.gif doc/salome/gui/SMESH/image108.gif doc/salome/gui/SMESH/image119.gif doc/salome/gui/SMESH/image120.gif doc/salome/gui/SMESH/image121.gif doc/salome/gui/SMESH/image122.gif doc/salome/gui/SMESH/image123.gif doc/salome/gui/SMESH/image124.gif doc/salome/gui/SMESH/image125.gif doc/salome/gui/SMESH/image126.gif doc/salome/gui/SMESH/image127.gif doc/salome/gui/SMESH/image129.gif doc/salome/gui/SMESH/image130.gif doc/salome/gui/SMESH/image131.gif doc/salome/gui/SMESH/image132.gif doc/salome/gui/SMESH/image133.gif doc/salome/gui/SMESH/image134.gif doc/salome/gui/SMESH/image135.gif doc/salome/gui/SMESH/image136.gif doc/salome/gui/SMESH/image137.gif doc/salome/gui/SMESH/image138.gif doc/salome/gui/SMESH/image139.gif doc/salome/gui/SMESH/image18.gif doc/salome/gui/SMESH/image19.gif doc/salome/gui/SMESH/image19.jpg doc/salome/gui/SMESH/image20.gif doc/salome/gui/SMESH/image21.gif doc/salome/gui/SMESH/image23.gif doc/salome/gui/SMESH/image27.gif doc/salome/gui/SMESH/image30.gif doc/salome/gui/SMESH/image37.jpg doc/salome/gui/SMESH/image49.gif doc/salome/gui/SMESH/image5.jpg doc/salome/gui/SMESH/image50.gif doc/salome/gui/SMESH/image53.gif doc/salome/gui/SMESH/image55.gif doc/salome/gui/SMESH/image56.gif doc/salome/gui/SMESH/image56.jpg doc/salome/gui/SMESH/image58.gif doc/salome/gui/SMESH/image7.jpg doc/salome/gui/SMESH/image79.jpg doc/salome/gui/SMESH/image86.jpg doc/salome/gui/SMESH/image88.jpg doc/salome/gui/SMESH/image90.jpg doc/salome/gui/SMESH/image92.jpg doc/salome/gui/SMESH/image93.jpg doc/salome/gui/SMESH/image94.jpg doc/salome/gui/SMESH/image95.jpg doc/salome/gui/SMESH/image96.jpg doc/salome/gui/SMESH/image97.jpg doc/salome/gui/SMESH/image99.gif doc/salome/gui/SMESH/length.htm doc/salome/gui/SMESH/modifying_meshes.htm doc/salome/gui/SMESH/pattern_mapping.htm doc/salome/gui/SMESH/pics/a-advmeshinfo.png doc/salome/gui/SMESH/pics/a-arithmetic1d.png doc/salome/gui/SMESH/pics/a-averagelength.png doc/salome/gui/SMESH/pics/a-clipping2.png doc/salome/gui/SMESH/pics/a-creategroup.png doc/salome/gui/SMESH/pics/a-createmesh1.png doc/salome/gui/SMESH/pics/a-createpolyhedralvolume.png doc/salome/gui/SMESH/pics/a-cuttingofquadrangles.png doc/salome/gui/SMESH/pics/a-deflection1d.png doc/salome/gui/SMESH/pics/a-editmesh.png doc/salome/gui/SMESH/pics/a-exportmesh.png doc/salome/gui/SMESH/pics/a-extusionalongapath2.png doc/salome/gui/SMESH/pics/a-filteronedges.png doc/salome/gui/SMESH/pics/a-maxelarea.png doc/salome/gui/SMESH/pics/a-maxelvolume.png doc/salome/gui/SMESH/pics/a-nbsegments1.png doc/salome/gui/SMESH/pics/a-nbsegments2.png doc/salome/gui/SMESH/pics/a-nbsegments3.png doc/salome/gui/SMESH/pics/a-nbsegments4.png doc/salome/gui/SMESH/pics/a-patterntype.png doc/salome/gui/SMESH/pics/a-patterntype1.png doc/salome/gui/SMESH/pics/a-standmeshinfo.png doc/salome/gui/SMESH/pics/a-startendlength.png doc/salome/gui/SMESH/pics/a-transparency.png doc/salome/gui/SMESH/pics/a-unionoftriangles.png doc/salome/gui/SMESH/pics/a-viewgeneral.png doc/salome/gui/SMESH/pics/add_edge.png doc/salome/gui/SMESH/pics/add_node.png doc/salome/gui/SMESH/pics/add_polygone.png doc/salome/gui/SMESH/pics/add_polyhedron.png doc/salome/gui/SMESH/pics/add_quadrangle.png doc/salome/gui/SMESH/pics/add_triangle.png doc/salome/gui/SMESH/pics/addedge.png doc/salome/gui/SMESH/pics/addhexahedron.png doc/salome/gui/SMESH/pics/addnode.png doc/salome/gui/SMESH/pics/addpolygon.png doc/salome/gui/SMESH/pics/addquadrangle.png doc/salome/gui/SMESH/pics/addtetrahedron.png doc/salome/gui/SMESH/pics/addtriangle.png doc/salome/gui/SMESH/pics/b-art_end_length.png doc/salome/gui/SMESH/pics/b-create_group.png doc/salome/gui/SMESH/pics/b-erage_length.png doc/salome/gui/SMESH/pics/b-flection1d.png doc/salome/gui/SMESH/pics/b-ithmetic1d.png doc/salome/gui/SMESH/pics/b-mberofsegments.png doc/salome/gui/SMESH/pics/b-mesh_infos.png doc/salome/gui/SMESH/pics/borders_at_multi_connections1.png doc/salome/gui/SMESH/pics/c-createmesh.png doc/salome/gui/SMESH/pics/c-editmesh.png doc/salome/gui/SMESH/pics/create_group.png doc/salome/gui/SMESH/pics/creategroup.png doc/salome/gui/SMESH/pics/cut_groups1.png doc/salome/gui/SMESH/pics/cut_groups2.png doc/salome/gui/SMESH/pics/cut_groups3.png doc/salome/gui/SMESH/pics/cutgroups.png doc/salome/gui/SMESH/pics/deletegroups.png doc/salome/gui/SMESH/pics/diagonalinversion.png doc/salome/gui/SMESH/pics/edit_mesh1.png doc/salome/gui/SMESH/pics/edit_mesh_change_value_hyp.png doc/salome/gui/SMESH/pics/edit_mesh_remove_hyp.png doc/salome/gui/SMESH/pics/editgroup.png doc/salome/gui/SMESH/pics/editing_groups1.png doc/salome/gui/SMESH/pics/editing_groups2.png doc/salome/gui/SMESH/pics/extrusionalongaline1.png doc/salome/gui/SMESH/pics/extrusionalongaline2.png doc/salome/gui/SMESH/pics/free_borders1.png doc/salome/gui/SMESH/pics/free_edges.png doc/salome/gui/SMESH/pics/importmesh.png doc/salome/gui/SMESH/pics/intersect_groups1.png doc/salome/gui/SMESH/pics/intersect_groups2.png doc/salome/gui/SMESH/pics/intersect_groups3.png doc/salome/gui/SMESH/pics/intersectgroups.png doc/salome/gui/SMESH/pics/length1.png doc/salome/gui/SMESH/pics/length2d.png doc/salome/gui/SMESH/pics/max_el_area.png doc/salome/gui/SMESH/pics/mergenodes.png doc/salome/gui/SMESH/pics/merging_nodes1.png doc/salome/gui/SMESH/pics/merging_nodes2.png doc/salome/gui/SMESH/pics/movenodes.png doc/salome/gui/SMESH/pics/moving_nodes1.png doc/salome/gui/SMESH/pics/moving_nodes2.png doc/salome/gui/SMESH/pics/orientaation1.png doc/salome/gui/SMESH/pics/patternmapping1.png doc/salome/gui/SMESH/pics/patternmapping2.png doc/salome/gui/SMESH/pics/remove_elements1.png doc/salome/gui/SMESH/pics/remove_elements2.png doc/salome/gui/SMESH/pics/remove_nodes1.png doc/salome/gui/SMESH/pics/remove_nodes2.png doc/salome/gui/SMESH/pics/removeelements.png doc/salome/gui/SMESH/pics/removenodes.png doc/salome/gui/SMESH/pics/renumberelements.png doc/salome/gui/SMESH/pics/renumbernodes.png doc/salome/gui/SMESH/pics/revolution1.png doc/salome/gui/SMESH/pics/revolution2.png doc/salome/gui/SMESH/pics/rotation.png doc/salome/gui/SMESH/pics/rotation1.png doc/salome/gui/SMESH/pics/rotation2.png doc/salome/gui/SMESH/pics/selectionfilterlibrary.png doc/salome/gui/SMESH/pics/sewing1.png doc/salome/gui/SMESH/pics/sewing2.png doc/salome/gui/SMESH/pics/sewing3.png doc/salome/gui/SMESH/pics/sewing4.png doc/salome/gui/SMESH/pics/smoothing.png doc/salome/gui/SMESH/pics/smoothing1.png doc/salome/gui/SMESH/pics/smoothing2.png doc/salome/gui/SMESH/pics/submeshconstruction.png doc/salome/gui/SMESH/pics/symmetry1.png doc/salome/gui/SMESH/pics/symmetry2.png doc/salome/gui/SMESH/pics/symmetry3.png doc/salome/gui/SMESH/pics/translation1.png doc/salome/gui/SMESH/pics/translation2.png doc/salome/gui/SMESH/pics/union_groups1.png doc/salome/gui/SMESH/pics/union_groups2.png doc/salome/gui/SMESH/pics/union_groups3.png doc/salome/gui/SMESH/pics/uniongroups.png doc/salome/gui/SMESH/pics/unionoftwotriangles.png doc/salome/gui/SMESH/pics/uniting_a_set_of_triangles1.png doc/salome/gui/SMESH/pics/uniting_a_set_of_triangles2.png doc/salome/gui/SMESH/pics/uniting_two_triangles1.png doc/salome/gui/SMESH/pics/uniting_two_triangles2.png doc/salome/gui/SMESH/presentation.htm doc/salome/gui/SMESH/quality_controls.htm doc/salome/gui/SMESH/revolution.htm doc/salome/gui/SMESH/selection_filter_library.htm doc/salome/gui/SMESH/smesh.htm doc/salome/gui/SMESH/smesh.log doc/salome/gui/SMESH/smesh_csh.htm doc/salome/gui/SMESH/smesh_rhc.htm doc/salome/gui/SMESH/transforming_meshes.htm doc/salome/gui/SMESH/transparency.htm doc/salome/gui/SMESH/viewing_meshes.htm doc/salome/gui/SMESH/webhelp.cab doc/salome/gui/SMESH/webhelp.jar doc/salome/gui/SMESH/whcsh_home.htm doc/salome/gui/SMESH/whcshdata.htm doc/salome/gui/SMESH/whdata/whftdata.js doc/salome/gui/SMESH/whdata/whftdata0.htm doc/salome/gui/SMESH/whdata/whfts.htm doc/salome/gui/SMESH/whdata/whfts.js doc/salome/gui/SMESH/whdata/whfwdata.js doc/salome/gui/SMESH/whdata/whfwdata0.htm doc/salome/gui/SMESH/whdata/whgdata.js doc/salome/gui/SMESH/whdata/whgdata0.htm doc/salome/gui/SMESH/whdata/whglo.htm doc/salome/gui/SMESH/whdata/whglo.js doc/salome/gui/SMESH/whdata/whidata.js doc/salome/gui/SMESH/whdata/whidx.htm doc/salome/gui/SMESH/whdata/whidx.js doc/salome/gui/SMESH/whdata/whtdata.js doc/salome/gui/SMESH/whdata/whtdata0.htm doc/salome/gui/SMESH/whdata/whtoc.htm doc/salome/gui/SMESH/whdata/whtoc.js doc/salome/gui/SMESH/whfbody.htm doc/salome/gui/SMESH/whfdhtml.htm doc/salome/gui/SMESH/whfform.htm doc/salome/gui/SMESH/whfhost.js doc/salome/gui/SMESH/whform.js doc/salome/gui/SMESH/whframes.js doc/salome/gui/SMESH/whgbody.htm doc/salome/gui/SMESH/whgdata/whlstf0.htm doc/salome/gui/SMESH/whgdata/whlstf1.htm doc/salome/gui/SMESH/whgdata/whlstf10.htm doc/salome/gui/SMESH/whgdata/whlstf11.htm doc/salome/gui/SMESH/whgdata/whlstf12.htm doc/salome/gui/SMESH/whgdata/whlstf2.htm doc/salome/gui/SMESH/whgdata/whlstf3.htm doc/salome/gui/SMESH/whgdata/whlstf4.htm doc/salome/gui/SMESH/whgdata/whlstf5.htm doc/salome/gui/SMESH/whgdata/whlstf6.htm doc/salome/gui/SMESH/whgdata/whlstf7.htm doc/salome/gui/SMESH/whgdata/whlstf8.htm doc/salome/gui/SMESH/whgdata/whlstf9.htm doc/salome/gui/SMESH/whgdata/whlstfl0.htm doc/salome/gui/SMESH/whgdata/whlstfl1.htm doc/salome/gui/SMESH/whgdata/whlstfl10.htm doc/salome/gui/SMESH/whgdata/whlstfl11.htm doc/salome/gui/SMESH/whgdata/whlstfl12.htm doc/salome/gui/SMESH/whgdata/whlstfl13.htm doc/salome/gui/SMESH/whgdata/whlstfl14.htm doc/salome/gui/SMESH/whgdata/whlstfl15.htm doc/salome/gui/SMESH/whgdata/whlstfl16.htm doc/salome/gui/SMESH/whgdata/whlstfl17.htm doc/salome/gui/SMESH/whgdata/whlstfl18.htm doc/salome/gui/SMESH/whgdata/whlstfl19.htm doc/salome/gui/SMESH/whgdata/whlstfl2.htm doc/salome/gui/SMESH/whgdata/whlstfl20.htm doc/salome/gui/SMESH/whgdata/whlstfl21.htm doc/salome/gui/SMESH/whgdata/whlstfl22.htm doc/salome/gui/SMESH/whgdata/whlstfl23.htm doc/salome/gui/SMESH/whgdata/whlstfl24.htm doc/salome/gui/SMESH/whgdata/whlstfl25.htm doc/salome/gui/SMESH/whgdata/whlstfl3.htm doc/salome/gui/SMESH/whgdata/whlstfl4.htm doc/salome/gui/SMESH/whgdata/whlstfl5.htm doc/salome/gui/SMESH/whgdata/whlstfl6.htm doc/salome/gui/SMESH/whgdata/whlstfl7.htm doc/salome/gui/SMESH/whgdata/whlstfl8.htm doc/salome/gui/SMESH/whgdata/whlstfl9.htm doc/salome/gui/SMESH/whgdata/whlstg0.htm doc/salome/gui/SMESH/whgdata/whlsti0.htm doc/salome/gui/SMESH/whgdata/whlstt0.htm doc/salome/gui/SMESH/whgdata/whlstt1.htm doc/salome/gui/SMESH/whgdata/whlstt2.htm doc/salome/gui/SMESH/whgdata/whlstt3.htm doc/salome/gui/SMESH/whgdata/whlstt4.htm doc/salome/gui/SMESH/whgdata/whlstt5.htm doc/salome/gui/SMESH/whgdata/whlstt6.htm doc/salome/gui/SMESH/whgdata/whlstt7.htm doc/salome/gui/SMESH/whgdata/whlstt8.htm doc/salome/gui/SMESH/whgdata/whlstt9.htm doc/salome/gui/SMESH/whgdata/whnvf30.htm doc/salome/gui/SMESH/whgdata/whnvf31.htm doc/salome/gui/SMESH/whgdata/whnvf32.htm doc/salome/gui/SMESH/whgdata/whnvf33.htm doc/salome/gui/SMESH/whgdata/whnvl31.htm doc/salome/gui/SMESH/whgdata/whnvl32.htm doc/salome/gui/SMESH/whgdata/whnvl33.htm doc/salome/gui/SMESH/whgdata/whnvp30.htm doc/salome/gui/SMESH/whgdata/whnvp31.htm doc/salome/gui/SMESH/whgdata/whnvp32.htm doc/salome/gui/SMESH/whgdata/whnvp33.htm doc/salome/gui/SMESH/whgdata/whnvt30.htm doc/salome/gui/SMESH/whgdata/whnvt31.htm doc/salome/gui/SMESH/whgdata/whnvt32.htm doc/salome/gui/SMESH/whgdata/whnvt33.htm doc/salome/gui/SMESH/whgdef.htm doc/salome/gui/SMESH/whgdhtml.htm doc/salome/gui/SMESH/whghost.js doc/salome/gui/SMESH/whhost.js doc/salome/gui/SMESH/whibody.htm doc/salome/gui/SMESH/whidhtml.htm doc/salome/gui/SMESH/whiform.htm doc/salome/gui/SMESH/whihost.js doc/salome/gui/SMESH/whlang.js doc/salome/gui/SMESH/whmozemu.js doc/salome/gui/SMESH/whmsg.js doc/salome/gui/SMESH/whnjs.htm doc/salome/gui/SMESH/whphost.js doc/salome/gui/SMESH/whproj.htm doc/salome/gui/SMESH/whproj.js doc/salome/gui/SMESH/whproj.xml doc/salome/gui/SMESH/whproxy.js doc/salome/gui/SMESH/whres.xml doc/salome/gui/SMESH/whskin_banner.htm doc/salome/gui/SMESH/whskin_blank.htm doc/salome/gui/SMESH/whskin_frmset01.htm doc/salome/gui/SMESH/whskin_frmset010.htm doc/salome/gui/SMESH/whskin_homepage.htm doc/salome/gui/SMESH/whskin_info.htm doc/salome/gui/SMESH/whskin_mbars.htm doc/salome/gui/SMESH/whskin_papplet.htm doc/salome/gui/SMESH/whskin_pdhtml.htm doc/salome/gui/SMESH/whskin_pickup.htm doc/salome/gui/SMESH/whskin_plist.htm doc/salome/gui/SMESH/whskin_tbars.htm doc/salome/gui/SMESH/whskin_tw.htm doc/salome/gui/SMESH/whst_topics.xml doc/salome/gui/SMESH/whstart.js doc/salome/gui/SMESH/whstub.js doc/salome/gui/SMESH/wht_abge.jpg doc/salome/gui/SMESH/wht_abgi.jpg doc/salome/gui/SMESH/wht_abgw.jpg doc/salome/gui/SMESH/wht_abte.jpg doc/salome/gui/SMESH/wht_abti.jpg doc/salome/gui/SMESH/wht_abtw.jpg doc/salome/gui/SMESH/whtbar.js doc/salome/gui/SMESH/whtdhtml.htm doc/salome/gui/SMESH/whthost.js doc/salome/gui/SMESH/whtopic.js doc/salome/gui/SMESH/whutils.js doc/salome/gui/SMESH/whver.js doc/salome/gui/SMESH/whxdata/whftdata0.xml doc/salome/gui/SMESH/whxdata/whfts.xml doc/salome/gui/SMESH/whxdata/whfwdata0.xml doc/salome/gui/SMESH/whxdata/whgdata0.xml doc/salome/gui/SMESH/whxdata/whglo.xml doc/salome/gui/SMESH/whxdata/whidx.xml doc/salome/gui/SMESH/whxdata/whtdata0.xml doc/salome/gui/SMESH/whxdata/whtoc.xml doc/salome/tui/SMESH/doxyfile doc/salome/tui/SMESH/doxyfile_py doc/salome/tui/SMESH/sources/static/tree.js idl/SMESH_BasicHypothesis.idl idl/SMESH_Filter.idl idl/SMESH_Gen.idl idl/SMESH_Mesh.idl resources/SMESHCatalog.xml resources/StdMeshers.xml resources/mesh_volume_3d.png src/Controls/SMESH_Controls.cxx src/DriverUNV/DriverUNV_R_SMDS_Mesh.cxx src/MEFISTO2/Makefile.in src/NETGENPlugin/NETGENPlugin_NETGEN_3D.cxx src/NETGENPlugin/NETGENPlugin_NETGEN_3D.hxx src/SMDS/SMDS_VolumeTool.cxx src/SMESH/Makefile.in src/SMESH/SMESH_Algo.cxx src/SMESH/SMESH_Algo.hxx src/SMESH/SMESH_DataMapOfElemPtrSequenceOfElemPtr.hxx src/SMESH/SMESH_Gen.cxx src/SMESH/SMESH_Gen.hxx src/SMESH/SMESH_IndexedDataMapOfShapeIndexedMapOfShape.hxx src/SMESH/SMESH_MeshEditor.cxx src/SMESH/SMESH_MeshEditor.hxx src/SMESH/SMESH_Pattern.cxx src/SMESH/SMESH_Pattern.hxx src/SMESH/SMESH_SequenceOfElemPtr.hxx src/SMESH/SMESH_SequenceOfNode.hxx src/SMESH/SMESH_subMesh.cxx src/SMESHDS/SMESHDS_Mesh.hxx src/SMESHFiltersSelection/SMESH_LogicalFilter.cxx src/SMESHFiltersSelection/SMESH_LogicalFilter.hxx src/SMESHFiltersSelection/SMESH_NumberFilter.cxx src/SMESHFiltersSelection/SMESH_NumberFilter.hxx src/SMESHFiltersSelection/SMESH_Type.h src/SMESHFiltersSelection/SMESH_TypeFilter.cxx src/SMESHFiltersSelection/SMESH_TypeFilter.hxx src/SMESHFiltersSelection/SMESH_TypeFilter.jxx src/SMESHGUI/Makefile.in src/SMESHGUI/SMESHBin.cxx src/SMESHGUI/SMESHGUI.h src/SMESHGUI/SMESHGUI_AddMeshElementDlg.cxx src/SMESHGUI/SMESHGUI_AddMeshElementDlg.h src/SMESHGUI/SMESHGUI_ClippingDlg.cxx src/SMESHGUI/SMESHGUI_ClippingDlg.h src/SMESHGUI/SMESHGUI_CreateHypothesesDlg.cxx src/SMESHGUI/SMESHGUI_CreatePatternDlg.cxx src/SMESHGUI/SMESHGUI_CreatePatternDlg.h src/SMESHGUI/SMESHGUI_CreatePolyhedralVolumeDlg.cxx src/SMESHGUI/SMESHGUI_CreatePolyhedralVolumeDlg.h src/SMESHGUI/SMESHGUI_DeleteGroupDlg.cxx src/SMESHGUI/SMESHGUI_DeleteGroupDlg.h src/SMESHGUI/SMESHGUI_Dialog.cxx src/SMESHGUI/SMESHGUI_Dialog.h src/SMESHGUI/SMESHGUI_Displayer.cxx src/SMESHGUI/SMESHGUI_Displayer.h src/SMESHGUI/SMESHGUI_EditHypothesesDlg.h src/SMESHGUI/SMESHGUI_EditMeshDlg.cxx src/SMESHGUI/SMESHGUI_EditMeshDlg.h src/SMESHGUI/SMESHGUI_ExtrusionAlongPathDlg.cxx src/SMESHGUI/SMESHGUI_ExtrusionAlongPathDlg.h src/SMESHGUI/SMESHGUI_ExtrusionDlg.cxx src/SMESHGUI/SMESHGUI_ExtrusionDlg.h src/SMESHGUI/SMESHGUI_FilterDlg.h src/SMESHGUI/SMESHGUI_GroupDlg.h src/SMESHGUI/SMESHGUI_GroupOpDlg.cxx src/SMESHGUI/SMESHGUI_GroupOpDlg.h src/SMESHGUI/SMESHGUI_Hypotheses.cxx src/SMESHGUI/SMESHGUI_Hypotheses.h src/SMESHGUI/SMESHGUI_HypothesesUtils.cxx src/SMESHGUI/SMESHGUI_HypothesesUtils.h src/SMESHGUI/SMESHGUI_MergeNodesDlg.cxx src/SMESHGUI/SMESHGUI_MergeNodesDlg.h src/SMESHGUI/SMESHGUI_MeshDlg.cxx src/SMESHGUI/SMESHGUI_MeshDlg.h src/SMESHGUI/SMESHGUI_MeshInfosDlg.cxx src/SMESHGUI/SMESHGUI_MeshInfosDlg.h src/SMESHGUI/SMESHGUI_MeshOp.cxx src/SMESHGUI/SMESHGUI_MeshOp.h src/SMESHGUI/SMESHGUI_MeshPatternDlg.cxx src/SMESHGUI/SMESHGUI_MeshPatternDlg.h src/SMESHGUI/SMESHGUI_MoveNodesDlg.cxx src/SMESHGUI/SMESHGUI_MoveNodesDlg.h src/SMESHGUI/SMESHGUI_MultiEditDlg.h src/SMESHGUI/SMESHGUI_NodesDlg.cxx src/SMESHGUI/SMESHGUI_NodesDlg.h src/SMESHGUI/SMESHGUI_Operation.cxx src/SMESHGUI/SMESHGUI_Operation.h src/SMESHGUI/SMESHGUI_Preferences_ScalarBarDlg.cxx src/SMESHGUI/SMESHGUI_Preferences_ScalarBarDlg.h src/SMESHGUI/SMESHGUI_RemoveElementsDlg.h src/SMESHGUI/SMESHGUI_RemoveNodesDlg.h src/SMESHGUI/SMESHGUI_RenumberingDlg.cxx src/SMESHGUI/SMESHGUI_RenumberingDlg.h src/SMESHGUI/SMESHGUI_RevolutionDlg.cxx src/SMESHGUI/SMESHGUI_RevolutionDlg.h src/SMESHGUI/SMESHGUI_RotationDlg.cxx src/SMESHGUI/SMESHGUI_RotationDlg.h src/SMESHGUI/SMESHGUI_Selection.h src/SMESHGUI/SMESHGUI_SelectionOp.cxx src/SMESHGUI/SMESHGUI_SelectionOp.h src/SMESHGUI/SMESHGUI_SewingDlg.cxx src/SMESHGUI/SMESHGUI_SewingDlg.h src/SMESHGUI/SMESHGUI_SingleEditDlg.cxx src/SMESHGUI/SMESHGUI_SingleEditDlg.h src/SMESHGUI/SMESHGUI_SmoothingDlg.cxx src/SMESHGUI/SMESHGUI_SmoothingDlg.h src/SMESHGUI/SMESHGUI_StandardMeshInfosDlg.cxx src/SMESHGUI/SMESHGUI_StandardMeshInfosDlg.h src/SMESHGUI/SMESHGUI_SymmetryDlg.cxx src/SMESHGUI/SMESHGUI_SymmetryDlg.h src/SMESHGUI/SMESHGUI_TranslationDlg.cxx src/SMESHGUI/SMESHGUI_TranslationDlg.h src/SMESHGUI/SMESHGUI_TransparencyDlg.cxx src/SMESHGUI/SMESHGUI_TransparencyDlg.h src/SMESHGUI/SMESHGUI_Utils.cxx src/SMESHGUI/SMESHGUI_Utils.h src/SMESHGUI/SMESHGUI_XmlHandler.cxx src/SMESHGUI/SMESHGUI_XmlHandler.h src/SMESHGUI/SMESHGUI_aParameter.h src/SMESHGUI/SMESH_images.po src/SMESHGUI/SMESH_msg_en.po src/SMESH_I/SMESH_2smeshpy.cxx src/SMESH_I/SMESH_2smeshpy.hxx src/SMESH_I/SMESH_DumpPython.cxx src/SMESH_I/SMESH_Filter_i.cxx src/SMESH_I/SMESH_Filter_i.hxx src/SMESH_I/SMESH_Gen_i.cxx src/SMESH_I/SMESH_Gen_i.hxx src/SMESH_I/SMESH_Group_i.cxx src/SMESH_I/SMESH_MeshEditor_i.cxx src/SMESH_I/SMESH_MeshEditor_i.hxx src/SMESH_I/SMESH_Mesh_i.cxx src/SMESH_I/SMESH_Pattern_i.cxx src/SMESH_I/SMESH_PythonDump.hxx src/SMESH_SWIG/SMESH_reg.py src/SMESH_SWIG/smesh.py src/StdMeshers/Makefile.in src/StdMeshers/StdMeshers_AutomaticLength.cxx src/StdMeshers/StdMeshers_AutomaticLength.hxx src/StdMeshers/StdMeshers_Distribution.cxx src/StdMeshers/StdMeshers_Distribution.hxx src/StdMeshers/StdMeshers_NumberOfSegments.cxx src/StdMeshers/StdMeshers_NumberOfSegments.hxx src/StdMeshers/StdMeshers_QuadranglePreference.cxx src/StdMeshers/StdMeshers_QuadranglePreference.hxx src/StdMeshers/StdMeshers_Quadrangle_2D.cxx src/StdMeshers/StdMeshers_Quadrangle_2D.hxx src/StdMeshers/StdMeshers_Regular_1D.cxx src/StdMeshers/StdMeshers_Regular_1D.hxx src/StdMeshersGUI/Makefile.in src/StdMeshersGUI/StdMeshersGUI.cxx src/StdMeshersGUI/StdMeshersGUI_DistrPreview.cxx src/StdMeshersGUI/StdMeshersGUI_DistrPreview.h src/StdMeshersGUI/StdMeshersGUI_DistrTable.cxx src/StdMeshersGUI/StdMeshersGUI_DistrTable.h src/StdMeshersGUI/StdMeshersGUI_NbSegmentsCreator.cxx src/StdMeshersGUI/StdMeshersGUI_NbSegmentsCreator.h src/StdMeshersGUI/StdMeshersGUI_StdHypothesisCreator.cxx src/StdMeshersGUI/StdMeshersGUI_StdHypothesisCreator.h src/StdMeshersGUI/StdMeshers_images.po src/StdMeshersGUI/StdMeshers_msg_en.po src/StdMeshers_I/Makefile.in src/StdMeshers_I/StdMeshers_Arithmetic1D_i.cxx src/StdMeshers_I/StdMeshers_AutomaticLength_i.cxx src/StdMeshers_I/StdMeshers_AutomaticLength_i.hxx src/StdMeshers_I/StdMeshers_Deflection1D_i.cxx src/StdMeshers_I/StdMeshers_LocalLength_i.cxx src/StdMeshers_I/StdMeshers_MaxElementArea_i.cxx src/StdMeshers_I/StdMeshers_MaxElementVolume_i.cxx src/StdMeshers_I/StdMeshers_NumberOfSegments_i.cxx src/StdMeshers_I/StdMeshers_NumberOfSegments_i.hxx src/StdMeshers_I/StdMeshers_QuadranglePreference_i.cxx src/StdMeshers_I/StdMeshers_QuadranglePreference_i.hxx src/StdMeshers_I/StdMeshers_StartEndLength_i.cxx src/StdMeshers_I/StdMeshers_i.cxx
1489 lines
34 KiB
HTML
Executable File
1489 lines
34 KiB
HTML
Executable File
<!doctype HTML public "-//W3C//DTD HTML 4.0 Frameset//EN">
|
|
|
|
<html>
|
|
|
|
<head>
|
|
<title>Defining hypotheses TUI</title>
|
|
<meta http-equiv="content-type" content="text/html; charset=windows-1252">
|
|
<meta name="generator" content="RoboHelp by eHelp Corporation www.ehelp.com"><style>
|
|
<!--
|
|
P { margin-top:0pt; margin-bottom:0pt; }
|
|
LI.kadov-P { }
|
|
-->
|
|
</style><style type="text/css">
|
|
<!--
|
|
p.whs1 { font-weight:bold; }
|
|
p.whs2 { font-family:'Lucida Console' , monospace; }
|
|
p.whs3 { font-family:'Times New Roman' , serif; }
|
|
p.whs4 { margin-top:0pt; margin-bottom:0pt; font-family:'Lucida Console' , monospace; }
|
|
p.whs5 { margin-top:0pt; margin-bottom:0pt; }
|
|
p.whs6 { margin-top:0pt; margin-bottom:0pt; font-family:Tahoma, sans-serif; }
|
|
p.whs7 { margin-top:0pt; margin-bottom:0pt; font-family:'Times New Roman' , serif; }
|
|
-->
|
|
</style><script type="text/javascript" language="JavaScript">
|
|
<!--
|
|
if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) == 4))
|
|
{
|
|
var strNSS = "<style type='text/css'>";
|
|
strNSS += "p.whs4 {margin-top:1pt;margin-bottom:1pt; }";
|
|
strNSS += "p.whs5 {margin-top:1pt;margin-bottom:1pt; }";
|
|
strNSS += "p.whs6 {margin-top:1pt;margin-bottom:1pt; }";
|
|
strNSS += "p.whs7 {margin-top:1pt;margin-bottom:1pt; }";
|
|
strNSS +="</style>";
|
|
document.write(strNSS);
|
|
}
|
|
//-->
|
|
</script>
|
|
<script type="text/javascript" language="JavaScript" title="WebHelpInlineScript">
|
|
<!--
|
|
function reDo() {
|
|
if (innerWidth != origWidth || innerHeight != origHeight)
|
|
location.reload();
|
|
}
|
|
if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
|
|
origWidth = innerWidth;
|
|
origHeight = innerHeight;
|
|
onresize = reDo;
|
|
}
|
|
onerror = null;
|
|
//-->
|
|
</script>
|
|
<style type="text/css">
|
|
<!--
|
|
div.WebHelpPopupMenu { position:absolute; left:0px; top:0px; z-index:4; visibility:hidden; }
|
|
-->
|
|
</style><script type="text/javascript" language="javascript1.2" src="whmsg.js"></script>
|
|
<script type="text/javascript" language="javascript" src="whver.js"></script>
|
|
<script type="text/javascript" language="javascript1.2" src="whproxy.js"></script>
|
|
<script type="text/javascript" language="javascript1.2" src="whutils.js"></script>
|
|
<script type="text/javascript" language="javascript1.2" src="whtopic.js"></script>
|
|
</head>
|
|
<body><script type="text/javascript" language="javascript1.2">
|
|
<!--
|
|
if (window.gbWhTopic)
|
|
{
|
|
if (window.addTocInfo)
|
|
{
|
|
addTocInfo("MESH module\nTUI Scripts\nDefining Hypotheses");
|
|
addButton("show",BTN_TEXT,"Show","","","","",0,0,"","","");
|
|
|
|
}
|
|
if (window.writeBtnStyle)
|
|
writeBtnStyle();
|
|
|
|
if (window.writeIntopicBar)
|
|
writeIntopicBar(1);
|
|
|
|
if (window.setRelStartPage)
|
|
{
|
|
setRelStartPage("smesh.htm");
|
|
|
|
autoSync(1);
|
|
sendSyncInfo();
|
|
sendAveInfoOut();
|
|
}
|
|
}
|
|
else
|
|
if (window.gbIE4)
|
|
document.location.reload();
|
|
//-->
|
|
</script>
|
|
<h1>Defining Hypotheses and Algorithms</h1>
|
|
|
|
<h3>Defining 1D Hypotheses</h3>
|
|
|
|
<p class="whs1"><a name=bookmark>1D Arithmetic</a></p>
|
|
|
|
<p> </p>
|
|
|
|
<p class="whs2">from geompy import
|
|
*</p>
|
|
|
|
<p class="whs2">import smesh</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create vertices</p>
|
|
|
|
<p class="whs2">Point111 = MakeVertex(
|
|
0, 0, 0)</p>
|
|
|
|
<p class="whs2">Point211 = MakeVertex(10,
|
|
0, 0)</p>
|
|
|
|
<p class="whs2">Point121 = MakeVertex(
|
|
0, 10, 0)</p>
|
|
|
|
<p class="whs2">Point221 = MakeVertex(10,
|
|
10, 0)</p>
|
|
|
|
<p class="whs2">Point112 = MakeVertex(
|
|
0, 0, 10)</p>
|
|
|
|
<p class="whs2">Point212 = MakeVertex(10,
|
|
0, 10)</p>
|
|
|
|
<p class="whs2">Point122 = MakeVertex(
|
|
0, 10, 10)</p>
|
|
|
|
<p class="whs2">Point222 = MakeVertex(10,
|
|
10, 10)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create edges</p>
|
|
|
|
<p class="whs2">EdgeX111 = MakeEdge(Point111,
|
|
Point211)</p>
|
|
|
|
<p class="whs2">EdgeX121 = MakeEdge(Point121,
|
|
Point221)</p>
|
|
|
|
<p class="whs2">EdgeX112 = MakeEdge(Point112,
|
|
Point212)</p>
|
|
|
|
<p class="whs2">EdgeX122 = MakeEdge(Point122,
|
|
Point222)</p>
|
|
|
|
<p class="whs2">EdgeY11 = MakeEdge(Point111,
|
|
Point121)</p>
|
|
|
|
<p class="whs2">EdgeY21 = MakeEdge(Point211,
|
|
Point221)</p>
|
|
|
|
<p class="whs2">EdgeY12 = MakeEdge(Point112,
|
|
Point122)</p>
|
|
|
|
<p class="whs2">EdgeY22 = MakeEdge(Point212,
|
|
Point222)</p>
|
|
|
|
<p class="whs2">EdgeZ111 = MakeEdge(Point111,
|
|
Point112)</p>
|
|
|
|
<p class="whs2">EdgeZ211 = MakeEdge(Point211,
|
|
Point212)</p>
|
|
|
|
<p class="whs2">EdgeZ121 = MakeEdge(Point121,
|
|
Point122)</p>
|
|
|
|
<p class="whs2">EdgeZ221 = MakeEdge(Point221,
|
|
Point222)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create faces</p>
|
|
|
|
<p class="whs2">FaceX11 = MakeQuad(EdgeY11,
|
|
EdgeZ111, EdgeY12, EdgeZ121)</p>
|
|
|
|
<p class="whs2">FaceX21 = MakeQuad(EdgeY21,
|
|
EdgeZ211, EdgeY22, EdgeZ221)</p>
|
|
|
|
<p class="whs2">FaceY111 = MakeQuad(EdgeX111,
|
|
EdgeZ111, EdgeX112, EdgeZ211)</p>
|
|
|
|
<p class="whs2">FaceY121 = MakeQuad(EdgeX121,
|
|
EdgeZ121, EdgeX122, EdgeZ221)</p>
|
|
|
|
<p class="whs2">FaceZ11 = MakeQuad(EdgeX111,
|
|
EdgeY11, EdgeX121, EdgeY21)</p>
|
|
|
|
<p class="whs2">FaceZ12 = MakeQuad(EdgeX112,
|
|
EdgeY12, EdgeX122, EdgeY22)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create a solid</p>
|
|
|
|
<p class="whs2">Block = MakeHexa(FaceX11,
|
|
FaceX21, FaceY111, FaceY121, FaceZ11, FaceZ12)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create a compound</p>
|
|
|
|
<p class="whs2">box = MakeCompound([Block])</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># add in the study</p>
|
|
|
|
<p class="whs2">box_id = addToStudy(box,
|
|
"Box compound")</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create a hexahedral mesh on the box</p>
|
|
|
|
<p class="whs2">hexa = smesh.Mesh(box,
|
|
"Box compound : hexahedrical mesh")</p>
|
|
|
|
<p class="whs2">algo = hexa.Segment()</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># define "NumberOfSegments" hypothesis to cut an edge in a
|
|
fixed number of segments</p>
|
|
|
|
<p class="whs2">algo.NumberOfSegments(4)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create a quadrangle 2D algorithm for faces</p>
|
|
|
|
<p class="whs2">hexa.Quadrangle()</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create a hexahedron 3D algorithm for solids</p>
|
|
|
|
<p class="whs2">hexa.Hexahedron()</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create a local hypothesis</p>
|
|
|
|
<p class="whs2">algo = hexa.Segment(EdgeX111)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># define "Arithmetic1D" hypothesis to cut an edge in several
|
|
segments with arithmetic length increasing</p>
|
|
|
|
<p class="whs2">algo.Arithmetic1D(1,
|
|
4)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># define "Propagation" hypothesis that propagates all other
|
|
hypothesis on all edges on the opposite side in case of quadrangular faces</p>
|
|
|
|
<p class="whs2">algo.Propagation()</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># compute the mesh</p>
|
|
|
|
<p class="whs2">hexa.Compute() </p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<h4><a name=bookmark9>Deflection 1D and Number of Segments</a></h4>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs2">import smesh</p>
|
|
|
|
<p class="whs2">import geompy</p>
|
|
|
|
<p class="whs2">import salome</p>
|
|
|
|
<p class="whs2">gg = salome.ImportComponentGUI("GEOM")</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create vertices</p>
|
|
|
|
<p class="whs2">px =
|
|
geompy.MakeVertex(100., 0. ,
|
|
0. )</p>
|
|
|
|
<p class="whs2">py =
|
|
geompy.MakeVertex(0. ,
|
|
100., 0. )</p>
|
|
|
|
<p class="whs2">pz =
|
|
geompy.MakeVertex(0. ,
|
|
0. , 100.)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a vector from
|
|
two points</p>
|
|
|
|
<p class="whs2">vxy = geompy.MakeVector(px,
|
|
py)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create an arc from
|
|
three points</p>
|
|
|
|
<p class="whs2">arc = geompy.MakeArc(py,
|
|
pz, px)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a wire</p>
|
|
|
|
<p class="whs2">wire = geompy.MakeWire([vxy,
|
|
arc])</p>
|
|
|
|
<p class="whs2">isPlanarFace = 1</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a face from
|
|
the wire</p>
|
|
|
|
<p class="whs2">face1 = geompy.MakeFace(wire,
|
|
isPlanarFace)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># add objects in the
|
|
study</p>
|
|
|
|
<p class="whs2">id_face1 = geompy.addToStudy(face1,"Face1")</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># display faces</p>
|
|
|
|
<p class="whs2">gg.createAndDisplayGO(id_face1)</p>
|
|
|
|
<p class="whs2">gg.setDisplayMode(id_face1,1)</p>
|
|
|
|
<p class="whs2">gg.setTransparency(id_face1,0.2)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create hexahedral mesh</p>
|
|
|
|
<p class="whs2">hexa = smesh.Mesh(face1,
|
|
"Face compound : hexahedrical mesh")</p>
|
|
|
|
<p class="whs2">algo = hexa.Triangle()</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># define "MaxElementArea"
|
|
hypothesis to be applied to
|
|
each triangle</p>
|
|
|
|
<p class="whs2">algo.MaxElementArea(30)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a quadrangle
|
|
2D algorithm for faces</p>
|
|
|
|
<p class="whs2">hexa.Quadrangle()</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a local hypothesis</p>
|
|
|
|
<p class="whs2">algo = hexa.Segment(wire)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># define "NumberOfSegments"
|
|
hypothesis to cut an edge in a fixed number of segments</p>
|
|
|
|
<p class="whs2">algo.NumberOfSegments(6)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># define "Deflection1D"
|
|
hypothesis</p>
|
|
|
|
<p class="whs2">algo.Deflection1D(1)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># compute the mesh</p>
|
|
|
|
<p class="whs2">hexa.Compute() </p>
|
|
|
|
<p> </p>
|
|
|
|
<h4><a name=bookmark2>Start and End Length</a></h4>
|
|
|
|
<p class="whs2">from geompy import
|
|
*</p>
|
|
|
|
<p class="whs2">import smesh</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create vertices</p>
|
|
|
|
<p class="whs2">Point111 = MakeVertex(
|
|
0, 0, 0)</p>
|
|
|
|
<p class="whs2">Point211 = MakeVertex(10,
|
|
0, 0)</p>
|
|
|
|
<p class="whs2">Point121 = MakeVertex(
|
|
0, 10, 0)</p>
|
|
|
|
<p class="whs2">Point221 = MakeVertex(10,
|
|
10, 0)</p>
|
|
|
|
<p class="whs2">Point112 = MakeVertex(
|
|
0, 0, 10)</p>
|
|
|
|
<p class="whs2">Point212 = MakeVertex(10,
|
|
0, 10)</p>
|
|
|
|
<p class="whs2">Point122 = MakeVertex(
|
|
0, 10, 10)</p>
|
|
|
|
<p class="whs2">Point222 = MakeVertex(10,
|
|
10, 10)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create edges</p>
|
|
|
|
<p class="whs2">EdgeX111 = MakeEdge(Point111,
|
|
Point211)</p>
|
|
|
|
<p class="whs2">EdgeX121 = MakeEdge(Point121,
|
|
Point221)</p>
|
|
|
|
<p class="whs2">EdgeX112 = MakeEdge(Point112,
|
|
Point212)</p>
|
|
|
|
<p class="whs2">EdgeX122 = MakeEdge(Point122,
|
|
Point222)</p>
|
|
|
|
<p class="whs2">EdgeY11 = MakeEdge(Point111,
|
|
Point121)</p>
|
|
|
|
<p class="whs2">EdgeY21 = MakeEdge(Point211,
|
|
Point221)</p>
|
|
|
|
<p class="whs2">EdgeY12 = MakeEdge(Point112,
|
|
Point122)</p>
|
|
|
|
<p class="whs2">EdgeY22 = MakeEdge(Point212,
|
|
Point222)</p>
|
|
|
|
<p class="whs2">EdgeZ111 = MakeEdge(Point111,
|
|
Point112)</p>
|
|
|
|
<p class="whs2">EdgeZ211 = MakeEdge(Point211,
|
|
Point212)</p>
|
|
|
|
<p class="whs2">EdgeZ121 = MakeEdge(Point121,
|
|
Point122)</p>
|
|
|
|
<p class="whs2">EdgeZ221 = MakeEdge(Point221,
|
|
Point222)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create faces</p>
|
|
|
|
<p class="whs2">FaceX11 = MakeQuad(EdgeY11,
|
|
EdgeZ111, EdgeY12, EdgeZ121)</p>
|
|
|
|
<p class="whs2">FaceX21 = MakeQuad(EdgeY21,
|
|
EdgeZ211, EdgeY22, EdgeZ221)</p>
|
|
|
|
<p class="whs2">FaceY111 = MakeQuad(EdgeX111,
|
|
EdgeZ111, EdgeX112, EdgeZ211)</p>
|
|
|
|
<p class="whs2">FaceY121 = MakeQuad(EdgeX121,
|
|
EdgeZ121, EdgeX122, EdgeZ221)</p>
|
|
|
|
<p class="whs2">FaceZ11 = MakeQuad(EdgeX111,
|
|
EdgeY11, EdgeX121, EdgeY21)</p>
|
|
|
|
<p class="whs2">FaceZ12 = MakeQuad(EdgeX112,
|
|
EdgeY12, EdgeX122, EdgeY22)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create a solid</p>
|
|
|
|
<p class="whs2">Block = MakeHexa(FaceX11,
|
|
FaceX21, FaceY111, FaceY121, FaceZ11, FaceZ12)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create a compound</p>
|
|
|
|
<p class="whs2">box = MakeCompound([Block])</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># add in the study</p>
|
|
|
|
<p class="whs2">box_id = addToStudy(box,
|
|
"Box compound")</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create a hexahedral mesh on the box</p>
|
|
|
|
<p class="whs2">hexa = smesh.Mesh(box,
|
|
"Box compound : hexahedrical mesh")</p>
|
|
|
|
<p class="whs2">algo = hexa.Segment()</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># define "NumberOfSegments" hypothesis to cut an edge in a
|
|
fixed number of segments</p>
|
|
|
|
<p class="whs2">algo.NumberOfSegments(4)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create a quadrangle 2D algorithm for faces</p>
|
|
|
|
<p class="whs2">hexa.Quadrangle()</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create a hexahedron 3D algorithm for solids</p>
|
|
|
|
<p class="whs2">hexa.Hexahedron()</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create a local hypothesis</p>
|
|
|
|
<p class="whs2">algo = hexa.Segment(EdgeX111)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># define "StartEndLength" hypothesis to cut an edge in several
|
|
segments with increasing geometric length </p>
|
|
|
|
<p class="whs2">algo.StartEndLength(1,
|
|
6)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># define "Propagation" hypothesis that propagates all other
|
|
hypothesis on all edges on the opposite side in case of quadrangular faces</p>
|
|
|
|
<p class="whs2">algo.Propagation()</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># compute the mesh</p>
|
|
|
|
<p class="whs2">hexa.Compute() </p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<h4><a name=bookmark3>Average Length</a></h4>
|
|
|
|
<p class="whs2">from geompy import
|
|
*</p>
|
|
|
|
<p class="whs2">import smesh</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create vertices</p>
|
|
|
|
<p class="whs2">Point111 = MakeVertex(
|
|
0, 0, 0)</p>
|
|
|
|
<p class="whs2">Point211 = MakeVertex(10,
|
|
0, 0)</p>
|
|
|
|
<p class="whs2">Point121 = MakeVertex(
|
|
0, 10, 0)</p>
|
|
|
|
<p class="whs2">Point221 = MakeVertex(10,
|
|
10, 0)</p>
|
|
|
|
<p class="whs2">Point112 = MakeVertex(
|
|
0, 0, 10)</p>
|
|
|
|
<p class="whs2">Point212 = MakeVertex(10,
|
|
0, 10)</p>
|
|
|
|
<p class="whs2">Point122 = MakeVertex(
|
|
0, 10, 10)</p>
|
|
|
|
<p class="whs2">Point222 = MakeVertex(10,
|
|
10, 10)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create edges</p>
|
|
|
|
<p class="whs2">EdgeX111 = MakeEdge(Point111,
|
|
Point211)</p>
|
|
|
|
<p class="whs2">EdgeX121 = MakeEdge(Point121,
|
|
Point221)</p>
|
|
|
|
<p class="whs2">EdgeX112 = MakeEdge(Point112,
|
|
Point212)</p>
|
|
|
|
<p class="whs2">EdgeX122 = MakeEdge(Point122,
|
|
Point222)</p>
|
|
|
|
<p class="whs2">EdgeY11 = MakeEdge(Point111,
|
|
Point121)</p>
|
|
|
|
<p class="whs2">EdgeY21 = MakeEdge(Point211,
|
|
Point221)</p>
|
|
|
|
<p class="whs2">EdgeY12 = MakeEdge(Point112,
|
|
Point122)</p>
|
|
|
|
<p class="whs2">EdgeY22 = MakeEdge(Point212,
|
|
Point222)</p>
|
|
|
|
<p class="whs2">EdgeZ111 = MakeEdge(Point111,
|
|
Point112)</p>
|
|
|
|
<p class="whs2">EdgeZ211 = MakeEdge(Point211,
|
|
Point212)</p>
|
|
|
|
<p class="whs2">EdgeZ121 = MakeEdge(Point121,
|
|
Point122)</p>
|
|
|
|
<p class="whs2">EdgeZ221 = MakeEdge(Point221,
|
|
Point222)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create faces</p>
|
|
|
|
<p class="whs2">FaceX11 = MakeQuad(EdgeY11,
|
|
EdgeZ111, EdgeY12, EdgeZ121)</p>
|
|
|
|
<p class="whs2">FaceX21 = MakeQuad(EdgeY21,
|
|
EdgeZ211, EdgeY22, EdgeZ221)</p>
|
|
|
|
<p class="whs2">FaceY111 = MakeQuad(EdgeX111,
|
|
EdgeZ111, EdgeX112, EdgeZ211)</p>
|
|
|
|
<p class="whs2">FaceY121 = MakeQuad(EdgeX121,
|
|
EdgeZ121, EdgeX122, EdgeZ221)</p>
|
|
|
|
<p class="whs2">FaceZ11 = MakeQuad(EdgeX111,
|
|
EdgeY11, EdgeX121, EdgeY21)</p>
|
|
|
|
<p class="whs2">FaceZ12 = MakeQuad(EdgeX112,
|
|
EdgeY12, EdgeX122, EdgeY22)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a solid</p>
|
|
|
|
<p class="whs2">Block = MakeHexa(FaceX11,
|
|
FaceX21, FaceY111, FaceY121, FaceZ11, FaceZ12)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a compound</p>
|
|
|
|
<p class="whs2">box = MakeCompound([Block])</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># add in the study</p>
|
|
|
|
<p class="whs2">box_id = addToStudy(box,
|
|
"Box compound")</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a hexahedral
|
|
mesh on the box</p>
|
|
|
|
<p class="whs2">hexa = smesh.Mesh(box,
|
|
"Box compound : hexahedrical mesh")</p>
|
|
|
|
<p class="whs2">algo = hexa.Segment()</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># define "NumberOfSegments"
|
|
hypothesis to cut an edge in a fixed number of segments</p>
|
|
|
|
<p class="whs2">algo.NumberOfSegments(4)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a quadrangle
|
|
2D algorithm for faces</p>
|
|
|
|
<p class="whs2">hexa.Quadrangle()</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a hexahedron
|
|
3D algorithm for solids</p>
|
|
|
|
<p class="whs2">hexa.Hexahedron()</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a local hypothesis</p>
|
|
|
|
<p class="whs2">algo = hexa.Segment(EdgeX111)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># define "LocalLength"
|
|
hypothesis to cut an edge in several segments with the same length</p>
|
|
|
|
<p class="whs2">algo.LocalLength(2)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># define "Propagation"
|
|
hypothesis that propagates all other hypothesis on all edges on<span style="font-family: 'Times New Roman', serif;">
|
|
the opposite side in case of quadrangular faces</span></p>
|
|
|
|
<p class="whs2">algo.Propagation()</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># compute the mesh</p>
|
|
|
|
<p class="whs2">hexa.Compute() </p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<h3>Defining 2D and 3D hypotheses</h3>
|
|
|
|
<h4><a name=bookmark4>Maximum Element Area</a></h4>
|
|
|
|
<p class="whs4">import smesh</p>
|
|
|
|
<p class="whs4">import geompy</p>
|
|
|
|
<p class="whs4">import salome</p>
|
|
|
|
<p class="whs4">gg = salome.ImportComponentGUI("GEOM")</p>
|
|
|
|
<p class="whs5"> </p>
|
|
|
|
<p class="whs5"># create vertices</p>
|
|
|
|
<p class="whs4">px =
|
|
geompy.MakeVertex(100., 0. ,
|
|
0. )</p>
|
|
|
|
<p class="whs4">py =
|
|
geompy.MakeVertex(0. ,
|
|
100., 0. )</p>
|
|
|
|
<p class="whs4">pz =
|
|
geompy.MakeVertex(0. ,
|
|
0. , 100.)</p>
|
|
|
|
<p class="whs5"> </p>
|
|
|
|
<p class="whs5"># create a vector from
|
|
two points</p>
|
|
|
|
<p class="whs4">vxy = geompy.MakeVector(px,
|
|
py)</p>
|
|
|
|
<p class="whs5"> </p>
|
|
|
|
<p class="whs5"># create an arc from three
|
|
points</p>
|
|
|
|
<p class="whs4">arc = geompy.MakeArc(py,
|
|
pz, px)</p>
|
|
|
|
<p class="whs5"> </p>
|
|
|
|
<p class="whs5"># create a wire</p>
|
|
|
|
<p class="whs4">wire = geompy.MakeWire([vxy,
|
|
arc])</p>
|
|
|
|
<p class="whs4">isPlanarFace = 1</p>
|
|
|
|
<p class="whs5"> </p>
|
|
|
|
<p class="whs5"># create a face from the
|
|
wire</p>
|
|
|
|
<p class="whs4">face1 = geompy.MakeFace(wire,
|
|
isPlanarFace)</p>
|
|
|
|
<p class="whs5"> </p>
|
|
|
|
<p class="whs5"># add objects in the study</p>
|
|
|
|
<p class="whs4">id_face1 = geompy.addToStudy(face1,"Face1")</p>
|
|
|
|
<p class="whs5"> </p>
|
|
|
|
<p class="whs5"># display faces</p>
|
|
|
|
<p class="whs4">gg.createAndDisplayGO(id_face1)</p>
|
|
|
|
<p class="whs4">gg.setDisplayMode(id_face1,1)</p>
|
|
|
|
<p class="whs4">gg.setTransparency(id_face1,0.2)</p>
|
|
|
|
<p class="whs5"> </p>
|
|
|
|
<p class="whs5"># create a hexahedral mesh</p>
|
|
|
|
<p class="whs4">hexa = smesh.Mesh(face1,
|
|
"Face compound : hexahedrical mesh")</p>
|
|
|
|
<p class="whs4">algo = hexa.Triangle()</p>
|
|
|
|
<p class="whs5"> </p>
|
|
|
|
<p class="whs5"># define "MaxElementArea"
|
|
hypothesis to be applied to each triangle</p>
|
|
|
|
<p class="whs4">algo.MaxElementArea(7)</p>
|
|
|
|
<p class="whs5"> </p>
|
|
|
|
<p class="whs5"># create a quadrangle 2D
|
|
algorithm for faces</p>
|
|
|
|
<p class="whs4">hexa.Quadrangle()</p>
|
|
|
|
<p class="whs5"> </p>
|
|
|
|
<p class="whs5"># create a local hypothesis</p>
|
|
|
|
<p class="whs6">algo = hexa.Segment(wire)</p>
|
|
|
|
<p class="whs5"> </p>
|
|
|
|
<p class="whs5"># define "NumberOfSegments"
|
|
hypothesis to cut an edge in a fixed number of segments</p>
|
|
|
|
<p class="whs4">algo.NumberOfSegments(10)</p>
|
|
|
|
<p class="whs5"> </p>
|
|
|
|
<p class="whs5"># compute the mesh</p>
|
|
|
|
<p class="whs4">hexa.Compute() </p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<h4><a name=bookmark5>Maximum Element Volume</a></h4>
|
|
|
|
<p class="whs4"><span style="font-family: 'Lucida Console', monospace;">import
|
|
salome</span></p>
|
|
|
|
<p class="whs4">import geompy</p>
|
|
|
|
<p class="whs4">import StdMeshers</p>
|
|
|
|
<p class="whs4">smesh = salome.lcc.FindOrLoadComponent("FactoryServer",
|
|
"SMESH")</p>
|
|
|
|
<p class="whs4">smeshgui = salome.ImportComponentGUI("SMESH")</p>
|
|
|
|
<p class="whs4">smeshgui.Init(salome.myStudyId);</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs7"># create a box</p>
|
|
|
|
<p class="whs4">box = geompy.MakeCylinderRH(30,
|
|
50) #MakeBox(0., 0., 0., 100., 200., 300.)</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs7"># add the box to the
|
|
study</p>
|
|
|
|
<p class="whs4">idbox = geompy.addToStudy(box,
|
|
"box")</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs7"># create vertices</p>
|
|
|
|
<p class="whs4">px =
|
|
geompy.MakeVertex(100., 0. ,
|
|
0. )</p>
|
|
|
|
<p class="whs4">py =
|
|
geompy.MakeVertex(0. ,
|
|
100., 0. )</p>
|
|
|
|
<p class="whs4">pz =
|
|
geompy.MakeVertex(0. ,
|
|
0. , 100.)</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs7"># create a vector from
|
|
two points</p>
|
|
|
|
<p class="whs4">vxy = geompy.MakeVector(px,
|
|
py)</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs7"># create an arc from
|
|
three points</p>
|
|
|
|
<p class="whs4">arc = geompy.MakeArc(py,
|
|
pz, px)</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs7"># create a wire</p>
|
|
|
|
<p class="whs4">wire = geompy.MakeWire([vxy,
|
|
arc])</p>
|
|
|
|
<p class="whs4">isPlanarFace = 1</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs7"># create a face from
|
|
the wire</p>
|
|
|
|
<p class="whs4">#face1</p>
|
|
|
|
<p class="whs4">box = geompy.MakeFace(wire,
|
|
isPlanarFace)</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs7"># add objects in the
|
|
study</p>
|
|
|
|
<p class="whs4">id_face1 = geompy.addToStudy(box,"Face1")</p>
|
|
|
|
<p class="whs4">#geompy.addToStudy(face1,"Face1")</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs7"># display faces</p>
|
|
|
|
<p class="whs4">gg.createAndDisplayGO(id_face1)</p>
|
|
|
|
<p class="whs4">gg.setDisplayMode(id_face1,1)</p>
|
|
|
|
<p class="whs4">gg.setTransparency(id_face1,0.2)</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs7"># create a hypothesis</p>
|
|
|
|
<p class="whs4">print "--------------------------
|
|
create Hypothesis"</p>
|
|
|
|
<p class="whs4">print "--------------------------
|
|
NumberOfSegments"</p>
|
|
|
|
<p class="whs4">numberOfSegments
|
|
= 7</p>
|
|
|
|
<p class="whs4">hypNbSeg = smesh.CreateHypothesis("NumberOfSegments",
|
|
"libStdMeshersEngine.so")</p>
|
|
|
|
<p class="whs4">hypNbSeg.SetNumberOfSegments(numberOfSegments)</p>
|
|
|
|
<p class="whs4">print hypNbSeg.GetName()</p>
|
|
|
|
<p class="whs4">print hypNbSeg.GetId()</p>
|
|
|
|
<p class="whs4">print hypNbSeg.GetNumberOfSegments()</p>
|
|
|
|
<p class="whs4">smeshgui.SetName(salome.ObjectToID(hypNbSeg),
|
|
"NumberOfSegments_10")</p>
|
|
|
|
<p class="whs4">print "--------------------------
|
|
MaxElementArea"</p>
|
|
|
|
<p class="whs4">maxElementArea =
|
|
800</p>
|
|
|
|
<p class="whs4">hypArea = smesh.CreateHypothesis("MaxElementArea",
|
|
"libStdMeshersEngine.so")</p>
|
|
|
|
<p class="whs4">hypArea.SetMaxElementArea(maxElementArea)</p>
|
|
|
|
<p class="whs4">print hypArea.GetName()</p>
|
|
|
|
<p class="whs4">print hypArea.GetId()</p>
|
|
|
|
<p class="whs4">print hypArea.GetMaxElementArea()</p>
|
|
|
|
<p class="whs4">smeshgui.SetName(salome.ObjectToID(hypArea),
|
|
"MaxElementArea_800")</p>
|
|
|
|
<p class="whs4">print "--------------------------
|
|
MaxElementVolume"</p>
|
|
|
|
<p class="whs4">maxElementVolume
|
|
= 900</p>
|
|
|
|
<p class="whs4">hypVolume = smesh.CreateHypothesis("MaxElementVolume",
|
|
"libStdMeshersEngine.so")</p>
|
|
|
|
<p class="whs4">hypVolume.SetMaxElementVolume(maxElementVolume)</p>
|
|
|
|
<p class="whs4">print hypVolume.GetName()</p>
|
|
|
|
<p class="whs4">print hypVolume.GetId()</p>
|
|
|
|
<p class="whs4">print hypVolume.GetMaxElementVolume()</p>
|
|
|
|
<p class="whs4">smeshgui.SetName(salome.ObjectToID(hypVolume),
|
|
"MaxElementVolume_900")</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs7"># create algorithms</p>
|
|
|
|
<p class="whs4">print "--------------------------
|
|
create Algorithms"</p>
|
|
|
|
<p class="whs4">print "--------------------------
|
|
Regular_1D"</p>
|
|
|
|
<p class="whs4">regular1D = smesh.CreateHypothesis("Regular_1D",
|
|
"libStdMeshersEngine.so")</p>
|
|
|
|
<p class="whs4">smeshgui.SetName(salome.ObjectToID(regular1D),
|
|
"Wire Discretisation")</p>
|
|
|
|
<p class="whs4">print "--------------------------
|
|
MEFISTO_2D"</p>
|
|
|
|
<p class="whs4">mefisto2D = smesh.CreateHypothesis("MEFISTO_2D",
|
|
"libStdMeshersEngine.so")</p>
|
|
|
|
<p class="whs4">smeshgui.SetName(salome.ObjectToID(mefisto2D),
|
|
"MEFISTO_2D")</p>
|
|
|
|
<p class="whs4">#print "--------------------------
|
|
Hexa_3D (Hexahedron meshing algorithm)"</p>
|
|
|
|
<p class="whs4">hexa3D = smesh.CreateHypothesis("Hexa_3D",
|
|
"libStdMeshersEngine.so")</p>
|
|
|
|
<p class="whs4">smeshgui.SetName(salome.ObjectToID(hexa3D),
|
|
"HEXA_3D")</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs7"># initialize a mesh
|
|
with the box</p>
|
|
|
|
<p class="whs4">mesh = smesh.CreateMesh(box)</p>
|
|
|
|
<p class="whs4">smeshgui.SetName(salome.ObjectToID(mesh),
|
|
"MeshBox")</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs7"># add a hypothesis
|
|
to the box</p>
|
|
|
|
<p class="whs4">print "--------------------------
|
|
add hypothesis to the box"</p>
|
|
|
|
<p class="whs4">mesh.AddHypothesis(box,hypNbSeg)</p>
|
|
|
|
<p class="whs4">mesh.AddHypothesis(box,hypArea)</p>
|
|
|
|
<p class="whs4">mesh.AddHypothesis(box,hypVolume)</p>
|
|
|
|
<p class="whs4">mesh.AddHypothesis(box,regular1D)</p>
|
|
|
|
<p class="whs4">mesh.AddHypothesis(box,mefisto2D)</p>
|
|
|
|
<p class="whs4">mesh.AddHypothesis(box,hexa3D)</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs7"># compute the mesh</p>
|
|
|
|
<p class="whs4">print "--------------------------
|
|
compute the mesh of the box"</p>
|
|
|
|
<p class="whs4">ret = smesh.Compute(mesh,box)</p>
|
|
|
|
<p class="whs4">print ret</p>
|
|
|
|
<p class="whs4">if ret == 0:</p>
|
|
|
|
<p class="whs4"> print
|
|
"probleme when computing the mesh"</p>
|
|
|
|
<p class="whs4">salome.sg.updateObjBrowser(1)</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<h3>Defining Additional Hypotheses</h3>
|
|
|
|
<h4><a name=bookmark6>Length from Edges</a></h4>
|
|
|
|
<p class="whs2">import smesh</p>
|
|
|
|
<p class="whs2">import geompy</p>
|
|
|
|
<p class="whs2">import salome</p>
|
|
|
|
<p class="whs2">gg = salome.ImportComponentGUI("GEOM")</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create sketchers</p>
|
|
|
|
<p class="whs2">sketcher1 = geompy.MakeSketcher("Sketcher:F
|
|
0 0:TT 70 0:TT 70 70:TT 0 70:WW")</p>
|
|
|
|
<p class="whs2">sketcher2 = geompy.MakeSketcher("Sketcher:F
|
|
20 20:TT 50 20:TT 50 50:TT 20 50:WW")</p>
|
|
|
|
<p class="whs2">isPlanarFace = 1</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create faces from two wires</p>
|
|
|
|
<p class="whs2">face1 = geompy.MakeFaces([sketcher1,
|
|
sketcher2],isPlanarFace)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># add objects in the study</p>
|
|
|
|
<p class="whs2">id_face1 = geompy.addToStudy(face1,"Face1")</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># display faces</p>
|
|
|
|
<p class="whs2">gg.createAndDisplayGO(id_face1)</p>
|
|
|
|
<p class="whs2">gg.setDisplayMode(id_face1,1)</p>
|
|
|
|
<p class="whs2">gg.setTransparency(id_face1,0.2)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create a mesh</p>
|
|
|
|
<p class="whs2">hexa = smesh.Mesh(face1,
|
|
"Face : triangle 2D mesh")</p>
|
|
|
|
<p class="whs2">algo = hexa.Triangle()</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># define "MaxElementArea" hypothesis to be applied to each
|
|
triangle</p>
|
|
|
|
<p class="whs2">algo.MaxElementArea(30)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># define "LengthFromEdges" hypothesis to build triangles based
|
|
on the length of the edges taken from the wire</p>
|
|
|
|
<p class="whs2">algo.LengthFromEdges()</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># create local hypothesis</p>
|
|
|
|
<p class="whs2">algo = hexa.Segment()</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># define "NumberOfSegments" hypothesis to cut an edge in a
|
|
fixed number of segments</p>
|
|
|
|
<p class="whs2">algo.NumberOfSegments(2)</p>
|
|
|
|
<p> </p>
|
|
|
|
<p># compute the mesh</p>
|
|
|
|
<p class="whs2">hexa.Compute() </p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<h4><a name=bookmark7>Propagation</a></h4>
|
|
|
|
<p class="whs2">from geompy import
|
|
*</p>
|
|
|
|
<p class="whs2">import smesh</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create vertices</p>
|
|
|
|
<p class="whs2">Point111 = MakeVertex(
|
|
0, 0, 0)</p>
|
|
|
|
<p class="whs2">Point211 = MakeVertex(10,
|
|
0, 0)</p>
|
|
|
|
<p class="whs2">Point121 = MakeVertex(
|
|
0, 10, 0)</p>
|
|
|
|
<p class="whs2">Point221 = MakeVertex(10,
|
|
10, 0)</p>
|
|
|
|
<p class="whs2">Point112 = MakeVertex(
|
|
0, 0, 10)</p>
|
|
|
|
<p class="whs2">Point212 = MakeVertex(10,
|
|
0, 10)</p>
|
|
|
|
<p class="whs2">Point122 = MakeVertex(
|
|
0, 10, 10)</p>
|
|
|
|
<p class="whs2">Point222 = MakeVertex(10,
|
|
10, 10)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create edges</p>
|
|
|
|
<p class="whs2">EdgeX111 = MakeEdge(Point111,
|
|
Point211)</p>
|
|
|
|
<p class="whs2">EdgeX121 = MakeEdge(Point121,
|
|
Point221)</p>
|
|
|
|
<p class="whs2">EdgeX112 = MakeEdge(Point112,
|
|
Point212)</p>
|
|
|
|
<p class="whs2">EdgeX122 = MakeEdge(Point122,
|
|
Point222)</p>
|
|
|
|
<p class="whs2">EdgeY11 = MakeEdge(Point111,
|
|
Point121)</p>
|
|
|
|
<p class="whs2">EdgeY21 = MakeEdge(Point211,
|
|
Point221)</p>
|
|
|
|
<p class="whs2">EdgeY12 = MakeEdge(Point112,
|
|
Point122)</p>
|
|
|
|
<p class="whs2">EdgeY22 = MakeEdge(Point212,
|
|
Point222)</p>
|
|
|
|
<p class="whs2">EdgeZ111 = MakeEdge(Point111,
|
|
Point112)</p>
|
|
|
|
<p class="whs2">EdgeZ211 = MakeEdge(Point211,
|
|
Point212)</p>
|
|
|
|
<p class="whs2">EdgeZ121 = MakeEdge(Point121,
|
|
Point122)</p>
|
|
|
|
<p class="whs2">EdgeZ221 = MakeEdge(Point221,
|
|
Point222)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create faces</p>
|
|
|
|
<p class="whs2">FaceX11 = MakeQuad(EdgeY11,
|
|
EdgeZ111, EdgeY12, EdgeZ121)</p>
|
|
|
|
<p class="whs2">FaceX21 = MakeQuad(EdgeY21,
|
|
EdgeZ211, EdgeY22, EdgeZ221)</p>
|
|
|
|
<p class="whs2">FaceY111 = MakeQuad(EdgeX111,
|
|
EdgeZ111, EdgeX112, EdgeZ211)</p>
|
|
|
|
<p class="whs2">FaceY121 = MakeQuad(EdgeX121,
|
|
EdgeZ121, EdgeX122, EdgeZ221)</p>
|
|
|
|
<p class="whs2">FaceZ11 = MakeQuad(EdgeX111,
|
|
EdgeY11, EdgeX121, EdgeY21)</p>
|
|
|
|
<p class="whs2">FaceZ12 = MakeQuad(EdgeX112,
|
|
EdgeY12, EdgeX122, EdgeY22)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a solid</p>
|
|
|
|
<p class="whs2">Block = MakeHexa(FaceX11,
|
|
FaceX21, FaceY111, FaceY121, FaceZ11, FaceZ12)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a compound</p>
|
|
|
|
<p class="whs2">box = MakeCompound([Block])</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># add in the study</p>
|
|
|
|
<p class="whs2">box_id = addToStudy(box,
|
|
"Box compound")</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a hexahedral
|
|
mesh on the box</p>
|
|
|
|
<p class="whs2">hexa = smesh.Mesh(box,
|
|
"Box compound : hexahedrical mesh")</p>
|
|
|
|
<p class="whs2">algo = hexa.Segment()</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># define "NumberOfSegments"
|
|
hypothesis to cut an edge in a fixed number of segments</p>
|
|
|
|
<p class="whs2">algo.NumberOfSegments(4)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a quadrangle
|
|
2D algorithm for faces</p>
|
|
|
|
<p class="whs2">hexa.Quadrangle()</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a hexahedron
|
|
3D algorithm for solids</p>
|
|
|
|
<p class="whs2">hexa.Hexahedron()</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># create a local hypothesis</p>
|
|
|
|
<p class="whs2">algo = hexa.Segment(EdgeX111)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs2"><span style="font-family: 'Times New Roman', serif;">#
|
|
define "Arithmetic1D" hypothesis to cut an edge in several segments
|
|
with arithmetic length</span> </p>
|
|
|
|
<p class="whs2">increasing</p>
|
|
|
|
<p class="whs2">algo.Arithmetic1D(1,
|
|
4)</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># define "Propagation"
|
|
hypothesis that propagatea all other hypothesis on all edges on the opposite
|
|
side in case of quadrangular faces</p>
|
|
|
|
<p class="whs2">algo.Propagation()</p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<p class="whs3"># compute the mesh</p>
|
|
|
|
<p class="whs2">hexa.Compute() </p>
|
|
|
|
<p class="whs2"> </p>
|
|
|
|
<h3><a name=bookmark8>Defining Meshing Algorithms</a></h3>
|
|
|
|
<p class="whs4"><span style="font-family: 'Lucida Console', monospace;">import
|
|
salome</span></p>
|
|
|
|
<p class="whs4">import StdMeshers</p>
|
|
|
|
<p class="whs4">import NETGENPlugin</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs4">smesh = salome.lcc.FindOrLoadComponent("FactoryServer",
|
|
"SMESH")</p>
|
|
|
|
<p class="whs4">smeshgui = salome.ImportComponentGUI("SMESH")</p>
|
|
|
|
<p class="whs4">smeshgui.Init(salome.myStudyId);</p>
|
|
|
|
<p class="whs5"> </p>
|
|
|
|
<p class="whs5"># create algorithms</p>
|
|
|
|
<p class="whs4">print "--------------------------
|
|
create Algorithms"</p>
|
|
|
|
<p class="whs4">print "--------------------------
|
|
Regular_1D (Wire discretisation)"</p>
|
|
|
|
<p class="whs4">regular1D = smesh.CreateHypothesis("Regular_1D",
|
|
"libStdMeshersEngine.so")</p>
|
|
|
|
<p class="whs4">smeshgui.SetName(salome.ObjectToID(regular1D),
|
|
"Wire Discretisation")</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs4">print "--------------------------
|
|
MEFISTO_2D (Triangle meshing algorithm)"</p>
|
|
|
|
<p class="whs4">mefisto2D = smesh.CreateHypothesis("MEFISTO_2D",
|
|
"libStdMeshersEngine.so")</p>
|
|
|
|
<p class="whs4">smeshgui.SetName(salome.ObjectToID(mefisto2D),
|
|
"MEFISTO_2D")</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs4">print "--------------------------
|
|
Quadrangle_2D (Quadrangle meshing algorithm)"</p>
|
|
|
|
<p class="whs4">quad2D = smesh.CreateHypothesis(
|
|
"Quadrangle_2D", "libStdMeshersEngine.so" )</p>
|
|
|
|
<p class="whs4">smeshgui.SetName(salome.ObjectToID(quad2D),
|
|
"Quadrangle_2D")</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs4">print "--------------------------
|
|
Hexa_3D (Hexahedron meshing algorithm)"</p>
|
|
|
|
<p class="whs4">hexa3D = smesh.CreateHypothesis("Hexa_3D",
|
|
"libStdMeshersEngine.so")</p>
|
|
|
|
<p class="whs4">smeshgui.SetName(salome.ObjectToID(hexa3D),
|
|
"HEXA_3D")</p>
|
|
|
|
<p class="whs4"> </p>
|
|
|
|
<p class="whs4">print "--------------------------
|
|
NETGEN_3D (Tetrahedron meshing algorithm)"</p>
|
|
|
|
<p class="whs4">netgen3D = smesh.CreateHypothesis("NETGEN_3D",
|
|
"libNETGENEngine.so")</p>
|
|
|
|
<p class="whs4">smeshgui.SetName(salome.ObjectToID(netgen3D),
|
|
"NETGEN_3D")</p>
|
|
|
|
<p class="whs4">salome.sg.updateObjBrowser(1)</p>
|
|
|
|
<p class="whs5"> </p>
|
|
|
|
<script type="text/javascript" language="javascript1.2">
|
|
<!--
|
|
if (window.writeIntopicBar)
|
|
writeIntopicBar(0);
|
|
//-->
|
|
</script>
|
|
</body>
|
|
</html>
|