From: vsr Date: Mon, 11 Feb 2008 15:08:07 +0000 (+0000) Subject: Merge from BR_Dev_For_4_0 branch (from mergeto_BR_QT4_Dev_17Jan08 tag) X-Git-Tag: VSR_280308~35 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=85b1cfc1f07d0b93d88803c6c0ccadf8f3349719;p=modules%2Fsmesh.git Merge from BR_Dev_For_4_0 branch (from mergeto_BR_QT4_Dev_17Jan08 tag) --- BEFORE PORTING TO QT 4 --- --- diff --git a/adm_local/unix/config_files/check_SMESH.m4 b/adm_local/unix/config_files/check_SMESH.m4 index f1dbf22f1..5518cfa24 100644 --- a/adm_local/unix/config_files/check_SMESH.m4 +++ b/adm_local/unix/config_files/check_SMESH.m4 @@ -28,7 +28,9 @@ if test "x$SMESH_DIR" == "x" ; then else # search SMESH binaries in PATH variable - AC_PATH_PROG(TEMP, libSMESH_Swig.py) + #CCRTAC_PATH_PROG(TEMP, libSMESH_Swig.py) + #AC_PATH_PROG(TEMP, MED_Test) + AC_PATH_PROG(TEMP, smesh.py) if test "x$TEMP" != "x" ; then SMESH_BIN_DIR=`dirname $TEMP` SMESH_DIR=`dirname $SMESH_BIN_DIR` @@ -38,7 +40,9 @@ if test "x$SMESH_DIR" == "x" ; then # fi -if test -f ${SMESH_DIR}/bin/salome/libSMESH_Swig.py ; then +#CCRTif test -f ${SMESH_DIR}/bin/salome/libSMESH_Swig.py ; then +#if test -f ${SMESH_DIR}/bin/salome/MED_Test ; then +if test -f ${SMESH_DIR}/bin/salome/smesh.py ; then SMesh_ok=yes AC_MSG_RESULT(Using SMesh module distribution in ${SMESH_DIR}) diff --git a/build_configure b/build_configure index 9a1d6494b..66f991e57 100755 --- a/build_configure +++ b/build_configure @@ -12,6 +12,7 @@ ORIG_DIR=`pwd` CONF_DIR=`echo $0 | sed -e "s,[^/]*$,,;s,/$,,;s,^$,.,"` +SMESH_WITH_GUI="yes" ######################################################################## # Test if the KERNEL_ROOT_DIR is set correctly @@ -28,12 +29,26 @@ fi # exit #fi +for option +do + case $option in + -with-ihm | --with-ihm) + SMESH_WITH_GUI="yes" + break;; + -without-ihm | --without-ihm | -with-ihm=no | --with-ihm=no) + SMESH_WITH_GUI="no" + break;; + esac +done + ######################################################################## # Test if the GUI_ROOT_DIR is set correctly -if test ! -d "${GUI_ROOT_DIR}"; then - echo "failed : GUI_ROOT_DIR variable is not correct !" - exit +if test ${SMESH_WITH_GUI} = yes; then + if test ! -d "${GUI_ROOT_DIR}"; then + echo "failed : GUI_ROOT_DIR variable is not correct !" + exit + fi fi ######################################################################## @@ -56,23 +71,28 @@ fi cd ${CONF_DIR} ABS_CONF_DIR=`pwd` +####################################################################### +# Update configure.ac script: to set SMESH_WITH_GUI variable +sed -e s/SMESH_WITH_GUI=[a-z]*/SMESH_WITH_GUI=${SMESH_WITH_GUI}/g configure.ac > configure.tmp +mv -f configure.tmp configure.ac + mkdir -p salome_adm/unix/config_files -cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files/* salome_adm/unix/config_files -cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/pythonbe.py salome_adm/unix +#cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files/* salome_adm/unix/config_files +#cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/pythonbe.py salome_adm/unix cp -f ${KERNEL_ROOT_DIR}/salome_adm/unix/SALOMEconfig.h.in salome_adm/unix -cp -f ${GUI_ROOT_DIR}/adm_local/unix/config_files/* salome_adm/unix/config_files -cp -f ${MED_ROOT_DIR}/adm_local/unix/config_files/* salome_adm/unix/config_files -cp -f ${GEOM_ROOT_DIR}/adm_local/unix/config_files/* salome_adm/unix/config_files +#cp -f ${GUI_ROOT_DIR}/adm_local/unix/config_files/* salome_adm/unix/config_files +#cp -f ${MED_ROOT_DIR}/adm_local/unix/config_files/* salome_adm/unix/config_files +#cp -f ${GEOM_ROOT_DIR}/adm_local/unix/config_files/* salome_adm/unix/config_files # remove KERNEL deprecated configure files -for deprecated in ac_cc_warnings.m4 ac_cxx_partial_specialization.m4 \ - check_mico.m4 config.guess ltmain.sh ac_cxx_bool.m4 ltconfig ac_cxx_typename.m4 \ - check_pthreads.m4 config.sub libtool.m4 ac_cxx_mutable.m4 missing - do - rm -f salome_adm/unix/config_files/${deprecated} - done +#for deprecated in ac_cc_warnings.m4 ac_cxx_partial_specialization.m4 \ +# check_mico.m4 config.guess ltmain.sh ac_cxx_bool.m4 ltconfig ac_cxx_typename.m4 \ +# check_pthreads.m4 config.sub libtool.m4 ac_cxx_mutable.m4 missing +# do +# rm -f salome_adm/unix/config_files/${deprecated} +# done # ____________________________________________________________________ @@ -84,7 +104,18 @@ for deprecated in ac_cc_warnings.m4 ac_cxx_partial_specialization.m4 \ # autom4te.cache (directory) echo "====================================================== aclocal" -aclocal -I adm_local/unix/config_files -I salome_adm/unix/config_files || exit 1 +if test ${SMESH_WITH_GUI} = yes; then + aclocal -I adm_local/unix/config_files \ + -I ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files \ + -I ${GUI_ROOT_DIR}/adm_local/unix/config_files \ + -I ${MED_ROOT_DIR}/adm_local/unix/config_files \ + -I ${GEOM_ROOT_DIR}/adm_local/unix/config_files || exit 1 +else + aclocal -I adm_local/unix/config_files \ + -I ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files \ + -I ${MED_ROOT_DIR}/adm_local/unix/config_files \ + -I ${GEOM_ROOT_DIR}/adm_local/unix/config_files || exit 1 +fi # ____________________________________________________________________ # libtoolize creates some configuration files (ltmain.sh, diff --git a/configure.ac b/configure.ac index b4585ccc7..63eca7ec2 100644 --- a/configure.ac +++ b/configure.ac @@ -9,18 +9,13 @@ # -AC_INIT([Salome2 Project SMESH module], [4.0.0], [gboulant@CS], [salome]) +AC_INIT([Salome2 Project SMESH module], [4.1.1], [webmaster.salome@opencascade.com], [salome]) AC_CONFIG_AUX_DIR(salome_adm/unix/config_files) AC_CANONICAL_HOST AC_CANONICAL_TARGET AM_INIT_AUTOMAKE -PACKAGE=salome -AC_SUBST(PACKAGE) - -VERSION=4.0.0 -XVERSION=0x040000 -AC_SUBST(VERSION) +XVERSION=`echo $VERSION | awk -F. '{printf("0x%02x%02x%02x",$1,$2,$3)}'` AC_SUBST(XVERSION) # set up MODULE_NAME variable for dynamic construction of directories (resources, etc.) @@ -199,14 +194,30 @@ echo ENABLE_PTHREADS -if test "x${GUI_DISABLE_CORBA}" != "xyes" ; then +SMESH_WITH_GUI=yes + +AM_CONDITIONAL(SMESH_ENABLE_GUI, [test "${SMESH_WITH_GUI}" = "yes"]) + +if test "${SMESH_WITH_GUI}" = "yes"; then + echo echo --------------------------------------------- -echo testing omniORB +echo testing msg2qm echo --------------------------------------------- echo -CHECK_OMNIORB +CHECK_MSG2QM + +fi + +if test "x${GUI_DISABLE_CORBA}" != "xyes" ; then + echo + echo --------------------------------------------- + echo testing omniORB + echo --------------------------------------------- + echo + + CHECK_OMNIORB dnl echo dnl echo --------------------------------------------- @@ -216,58 +227,74 @@ dnl echo dnl CHECK_MICO -echo -echo --------------------------------------------- -echo default ORB : omniORB -echo --------------------------------------------- -echo + echo + echo --------------------------------------------- + echo default ORB : omniORB + echo --------------------------------------------- + echo -DEFAULT_ORB=omniORB + DEFAULT_ORB=omniORB -echo -echo --------------------------------------------- -echo testing Corba -echo --------------------------------------------- -echo + echo + echo --------------------------------------------- + echo testing Corba + echo --------------------------------------------- + echo -CHECK_CORBA + CHECK_CORBA -AC_SUBST_FILE(CORBA) -corba=make_$ORB -CORBA=adm_local/unix/$corba + AC_SUBST_FILE(CORBA) + corba=make_$ORB + CORBA=adm_local/unix/$corba fi -echo -echo --------------------------------------------- -echo testing openGL -echo --------------------------------------------- -echo -CHECK_OPENGL -echo -echo --------------------------------------------- -echo testing QT -echo --------------------------------------------- -echo +if test "${SMESH_WITH_GUI}" = "yes"; then + echo + echo --------------------------------------------- + echo testing openGL + echo --------------------------------------------- + echo -CHECK_QT + CHECK_OPENGL -echo -echo --------------------------------------------- -echo testing msg2qm -echo --------------------------------------------- -echo + echo + echo --------------------------------------------- + echo testing QT + echo --------------------------------------------- + echo -CHECK_MSG2QM + CHECK_QT -echo -echo --------------------------------------------- -echo testing VTK -echo --------------------------------------------- -echo + echo + echo --------------------------------------------- + echo testing VTK + echo --------------------------------------------- + echo + + CHECK_VTK -CHECK_VTK + echo + echo --------------------------------------------- + echo Testing GUI + echo --------------------------------------------- + echo + + CHECK_SALOME_GUI + + echo + echo --------------------------------------------- + echo Testing full GUI + echo --------------------------------------------- + echo + + CHECK_CORBA_IN_GUI + if test "x${CORBA_IN_GUI}" != "xyes"; then + echo "failed : For configure SMESH module necessary full GUI !" + exit + fi +fi echo echo --------------------------------------------- @@ -293,6 +320,8 @@ echo CHECK_CAS +if test "${SMESH_WITH_GUI}" = "yes"; then + echo echo --------------------------------------------- echo Testing qwt @@ -301,6 +330,8 @@ echo CHECK_QWT +fi + echo echo --------------------------------------------- echo Testing html generators @@ -309,26 +340,6 @@ echo CHECK_HTML_GENERATORS -echo -echo --------------------------------------------- -echo Testing GUI -echo --------------------------------------------- -echo - -CHECK_SALOME_GUI - -echo -echo --------------------------------------------- -echo Testing full GUI -echo --------------------------------------------- -echo - -CHECK_CORBA_IN_GUI -if test "x${CORBA_IN_GUI}" != "xyes"; then - echo "failed : For configure SMESH module necessary full GUI !" - exit -fi - echo echo --------------------------------------------- echo Testing Kernel @@ -362,7 +373,13 @@ echo --------------------------------------------- echo echo Configure +if test "${SMESH_WITH_GUI}" = "yes"; then variables="cc_ok fortran_ok boost_ok lex_yacc_ok python_ok swig_ok threads_ok OpenGL_ok qt_ok vtk_ok hdf5_ok omniORB_ok occ_ok doxygen_ok graphviz_ok qwt_ok Kernel_ok Geom_ok Med_ok" +fi + +if test "${SMESH_WITH_GUI}" = "no"; then +variables="cc_ok fortran_ok boost_ok lex_yacc_ok python_ok swig_ok threads_ok hdf5_ok omniORB_ok occ_ok doxygen_ok graphviz_ok Kernel_ok Geom_ok Med_ok" +fi for var in $variables do @@ -443,6 +460,8 @@ AC_OUTPUT([ \ ./doc/Makefile \ ./doc/salome/Makefile \ ./doc/salome/gui/Makefile \ + ./doc/salome/gui/SMESH/doxyfile \ + ./doc/salome/gui/SMESH/doxyfile_py \ ./doc/salome/tui/Makefile \ ./doc/salome/tui/SMESH/doxyfile \ ./doc/salome/tui/SMESH/sources/static/tree.js \ @@ -463,6 +482,7 @@ AC_OUTPUT([ \ ./src/SMESHGUI/Makefile \ ./src/SMESH_I/Makefile \ ./src/SMESH_SWIG/Makefile \ + ./src/SMESH_SWIG_WITHIHM/Makefile \ ./src/StdMeshers/Makefile \ ./src/StdMeshersGUI/Makefile \ ./src/StdMeshers_I/Makefile \ diff --git a/doc/salome/gui/Makefile.am b/doc/salome/gui/Makefile.am index f1bbb6dcc..e7c5dc8ae 100644 --- a/doc/salome/gui/Makefile.am +++ b/doc/salome/gui/Makefile.am @@ -25,9 +25,16 @@ include $(top_srcdir)/adm_local/unix/make_common_starter.am EXTRA_DIST+=SMESH +doxygen=@DOXYGEN@ + usr_docs: - cp -fr $(srcdir)/SMESH ./ - -find $(PWD) -name CVS -prune -exec rm -rf {} \; + cd ./SMESH; \ + echo "Processing smeshDC.py file: "; \ + $(doxygen) ./doxyfile_py; \ + sed 's|../../../share/salome|$(top_srcdir)|' ./doxyfile > ./doxyfile1; \ + mv -f doxyfile1 doxyfile; \ + echo "Running doxygen in directory: "`pwd`; \ + $(doxygen) ./doxyfile; docs: usr_docs @@ -42,3 +49,10 @@ install-data-local: usr_docs uninstall-local: rm -rf $(docdir)/gui/SMESH + +docguidir=$(docdir)/gui/SMESH + +nodist_docgui_DATA= SMESH/doxyfile +nodist_docgui_DATA+= SMESH/doxyfile_py +EXTRA_DIST+= SMESH/doxyfile.in +EXTRA_DIST+= SMESH/doxyfile_py.in diff --git a/doc/salome/gui/SMESH/about_viewing_meshes.htm b/doc/salome/gui/SMESH/about_viewing_meshes.htm deleted file mode 100755 index fcddab5db..000000000 --- a/doc/salome/gui/SMESH/about_viewing_meshes.htm +++ /dev/null @@ -1,174 +0,0 @@ - - - - - -About viewing meshes - - - - - - - - - - - - -

Viewing meshes

- -

After definition of algorithms and hypotheses a new mesh is listed in - the Object Browser. Right-click on it and select Compute - the mesh will be automatically - displayed in the VTK 3D Viewer. - Alternatively click Display only - to hide all other objects at the same time.

- -

 

- -

VTK 3D - Viewer is detailly described in the documentation on GUI - module.

- -

After the mesh has appeared in the Viewer, you can select it with left - mouse click and  get - information about it, change its presentation parameters and access to - other useful options by right-clicking on the selected mesh.

- -

  

- -

- -

 

- - - -

 

- - - - diff --git a/doc/salome/gui/SMESH/adding_quadratic_nodes_and_elements.htm b/doc/salome/gui/SMESH/adding_quadratic_nodes_and_elements.htm deleted file mode 100755 index b4d5067d2..000000000 --- a/doc/salome/gui/SMESH/adding_quadratic_nodes_and_elements.htm +++ /dev/null @@ -1,124 +0,0 @@ - - - - - -Adding Quadratic Nodes and Elements - - - - - - - - - - -

Adding Quadratic Elements

- -

MESH modules allows you to work with Quadratic - Elements.

- -

Quadratic Edge in not a straight but a broken line and can be defined - by three points: first, middle and last. All more complex Quadratic - Elements differ from ordinary ones in that they consist of Quadratic - Edges.

- -

To - add a quadratic element to your mesh:

- -

1. Select your mesh in the Object Browser - or in the 3D viewer.

- -

2. From the Modification - menu choose the Add item - and select one of the following:

- -

- -

To create any Quadratic - Element specify the nodes which will form your triangle by selecting - them in the 3D viewer with pressed Shift button. Their numbers will appear - in the dialog box as Corner Nodes - (alternatively you can just input numbers in this field without selection).The - edges formed by the corner nodes will appear in the table. To define the - middle nodes for each edge double-click on the respective field and input - the number of the node. All edges and the object formed by them will be - displayed in the Object browser. When all edges are defined you will be - able to click OK or Apply - button to add the element to the mesh.

- -

 

- -

Reverse - button for Quadratic Edges switches the first and the last nodes. For all other elements it reverses the element. -

- -

 

- - - - diff --git a/doc/salome/gui/SMESH/aspect_ratio_3d.htm b/doc/salome/gui/SMESH/aspect_ratio_3d.htm deleted file mode 100755 index bd1d7ddfc..000000000 --- a/doc/salome/gui/SMESH/aspect_ratio_3d.htm +++ /dev/null @@ -1,203 +0,0 @@ - - - - - -Aspect ratio 3D - - - - - - - - - - - - - -

Aspect ratio 3D

- -

- -

 

- -

The Aspect Ratio 3D mesh quality criterion calculates - the same parameter as the Aspect ratio - criterion, but it is applied to 3D mesh elements: tetrahedrons, pentahedrons, - hexahedrons, etc.  

- -

 

- - - -

 

- -

 

- -

,

- -

 

- -

where SK is the sum of surfaces of the faces - of К and VK is the volume of К :

- -

 

- -

T

- -

 

- - - -

, where Qi represents the value of Qk for all possible simplexes (of the - same dimension as the element) that compose the element.

- -

For example, a hexahedron is split in 6 tetrahedrons, the Aspect - ratio 3D is calculated for each of them, then the greatest Qk is considered to be the  Aspect ratio 3D - criterion for the whole  hexahedron.

- -

- -

 

- -

To apply the Aspect Ratio 3D quality criterion to your mesh:

- -

 

- -

1. Display your mesh in the viewer.

- -

 

- -

2. Choose Controls - > Aspect Ratio 3D or click button of the toolbar. - Your mesh will be displayed in the viewer with its elements colored according - to the applied mesh quality control criterion:

- -

 

- -

See Also - a sample TUI Script of an Aspect - Ratio 3D quality control operation.  

- -

 

- -

 

- -

 

- -

 

- - - - diff --git a/doc/salome/gui/SMESH/borders_at_multi-connection.htm b/doc/salome/gui/SMESH/borders_at_multi-connection.htm deleted file mode 100755 index 8ad86b523..000000000 --- a/doc/salome/gui/SMESH/borders_at_multi-connection.htm +++ /dev/null @@ -1,121 +0,0 @@ - - - - - -Borders at multi-connection - - - - - - - - - - - - - -

Borders at multi-connection

- -

This mesh quality control highlights borders of faces - consisting of edges belonging to several faces. The amount of faces is - specified by user.

- -

 

- -

- -

 

- -

In this picture the borders at multi-connection are displayed in blue.

- -

 

- -

See Also - a sample TUI Script of a Borders - at Multi-Connection quality control operation.  

- -

 

- - - - diff --git a/doc/salome/gui/SMESH/borders_at_multiconnection_2d.htm b/doc/salome/gui/SMESH/borders_at_multiconnection_2d.htm deleted file mode 100755 index 2e9e180c0..000000000 --- a/doc/salome/gui/SMESH/borders_at_multiconnection_2d.htm +++ /dev/null @@ -1,115 +0,0 @@ - - - - - -Borders at multiconnection 2D - - - - - - - - - - - - - -

Borders at multi-connection 2D

- -

This mesh quality control highlights borders of elements - of mesh, consisting of edges belonging to several elements of mesh.

- -

 

- -

        

- -

 

- -

See Also - a sample TUI Script of a Borders - at Multi-Connection quality control operation.  

- -

 

- - - - diff --git a/doc/salome/gui/SMESH/building_compounds.htm b/doc/salome/gui/SMESH/building_compounds.htm deleted file mode 100755 index 475759694..000000000 --- a/doc/salome/gui/SMESH/building_compounds.htm +++ /dev/null @@ -1,160 +0,0 @@ - - - - - -Building Compounds - - - - - - - - - - - -

Building Compounds

- -

Compound Mesh is a combination of several meshes.

- -

 To - Build a compound:

- -

From the Mesh - menu select Build Compound or - click button in the toolbar. The following dialog box will - appear:

- -

- - - -

Example:

- -

- -

 

- - - - diff --git a/doc/salome/gui/SMESH/clipping.htm b/doc/salome/gui/SMESH/clipping.htm deleted file mode 100755 index dec479c99..000000000 --- a/doc/salome/gui/SMESH/clipping.htm +++ /dev/null @@ -1,140 +0,0 @@ - - - - - -Clipping - - - - - - - - - - - - -

Clipping

- -

Using this menu you can create cross-section views (clipping planes) - of your mesh.

- -

 

- -

To start, click on the New button.

- -

 

- -

- -

 

- -

Now you can define the parameters of your cross-section: Orientation -  (X-Y, X-Z - or Y-Z); Distance between the - opposite extremities of the object, if - it is set to 0.5 the object is split in two halves; and Rotation - (in angle degrees) around X (Y to Z) - and around Y (X to Z). - If the Show preview button is - on, you can see the clipping plane in the Object - window.

- -

 

- -

- -

 

- -

If the - Auto Apply button is on, you can preview - the cross-section in the Object window

- -

 

- -

- -

 

- -

To get - a new object from Clipping, click - Ok.

- -

 

- -

 

- - - - diff --git a/doc/salome/gui/SMESH/constructing_meshes.htm b/doc/salome/gui/SMESH/constructing_meshes.htm deleted file mode 100755 index a643f436f..000000000 --- a/doc/salome/gui/SMESH/constructing_meshes.htm +++ /dev/null @@ -1,448 +0,0 @@ - - - - - -Constructing Meshes - - - - - - - - - - - -

Creating Meshes

- -

First of all see Example - of 3d mesh generation, which is an example of good python script style - for Mesh module.

- -

Other examples of python - scripts will be also updated soon to use smesh package instead of direct - usage of idl interface.

- -

Construction of a Mesh

- -

import - geompy

- -

import smesh

- -

 

- -

# create a box

- -

box = geompy.MakeBox(0., - 0., 0., 100., 200., 300.)

- -

idbox = geompy.addToStudy(box, - "box")

- -

 

- -

# create a mesh

- -

tetra = smesh.Mesh(box, - "MeshBox")

- -

 

- -

algo1D = tetra.Segment()

- -

algo1D.NumberOfSegments(7)

- -

 

- -

algo2D = tetra.Triangle()

- -

algo2D.MaxElementArea(800.)

- -

 

- -

algo3D = tetra.Tetrahedron(smesh.NETGEN)

- -

algo3D.MaxElementVolume(900.)

- -

 

- -

# compute the mesh

- -

ret = tetra.Compute()

- -

if ret == 0:

- -

    print - "problem when computing the mesh"

- -

else:

- -

    print - "mesh computed"

- -

    pass -

- -

 

- -

 

- -

Construction of a Submesh

- -

from - geompy import *

- -

import smesh

- -

 

- -

# create a box

- -

box = MakeBoxDXDYDZ(10., 10., 10.)

- -

addToStudy(box, "Box")

- -

 

- -

# select one edge of - the box for definition of a local hypothesis

- -

p5 = MakeVertex(5., 0., 0.)

- -

EdgeX = GetEdgeNearPoint(box, p5)

- -

addToStudyInFather(box, EdgeX, "Edge - [0,0,0 - 10,0,0]")

- -

 

- -

# create a hexahedral - mesh on the box

- -

quadra = smesh.Mesh(box, "Box : quadrangle - 2D mesh")

- -

 

- -

# create a regular - 1D algorithm for the faces

- -

algo1D = quadra.Segment()

- -

 

- -

# define "NumberOfSegments" - hypothesis to cut

- -

# all the edges in - a fixed number of segments

- -

algo1D.NumberOfSegments(4)

- -

 

- -

# create a quadrangle - 2D algorithm for the faces

- -

quadra.Quadrangle()

- -

 

- -

# construct a submesh - on the edge with a local hypothesis

- -

algo_local = quadra.Segment(EdgeX)

- -

 

- -

# define "Arithmetic1D" - hypothesis to cut the edge - in several segments with increasing arithmetic length

- -

algo_local.Arithmetic1D(1, 4)

- -

 

- -

# define "Propagation" - hypothesis that propagates all other hypotheses

- -

# on all edges of the - opposite side in case of quadrangular faces

- -

algo_local.Propagation()

- -

 

- -

# compute the mesh

- -

quadra.Compute()

- -

 

- -

Editing of a mesh

- -

import - geompy

- -

import smesh

- -

 

- -

def PrintMeshInfo(theMesh):

- -

    aMesh - = theMesh.GetMesh()

- -

    print - "Information about mesh:"

- -

    print - "Number of nodes       : - ", aMesh.NbNodes()

- -

    print - "Number of edges       : - ", aMesh.NbEdges()

- -

    print - "Number of faces       : - ", aMesh.NbFaces()

- -

    print - "Number of volumes     : - ", aMesh.NbVolumes()

- -

    pass

- -

 

- -

# create a box

- -

box = geompy.MakeBox(0., 0., 0., 20., - 20., 20.)

- -

geompy.addToStudy(box, "box")

- -

 

- -

# select one edge of - the box for definition of a local hypothesis

- -

subShapeList = geompy.SubShapeAll(box, - geompy.ShapeType["EDGE"])

- -

edge = subShapeList[0]

- -

name = geompy.SubShapeName(edge, box)

- -

geompy.addToStudyInFather(box, edge, name)

- -

 

- -

# create a mesh

- -

tria = smesh.Mesh(box, "Mesh 2D")

- -

algo1D = tria.Segment()

- -

hyp1 = algo1D.NumberOfSegments(3)

- -

algo2D = tria.Triangle()

- -

hyp2 = algo2D.MaxElementArea(10.)

- -

 

- -

# create a sub-mesh

- -

algo_local = tria.Segment(edge)

- -

hyp3 = algo_local.Arithmetic1D(1, 6)

- -

hyp4 = algo_local.Propagation()

- -

 

- -

# compute the mesh

- -

tria.Compute()

- -

PrintMeshInfo(tria)

- -

 

- -

# remove a local hypothesis

- -

mesh = tria.GetMesh()

- -

mesh.RemoveHypothesis(edge, hyp4)

- -

 

- -

# compute the mesh

- -

tria.Compute()

- -

PrintMeshInfo(tria)

- -

 

- -

# change the value - of the 2D hypothesis

- -

hyp2.SetMaxElementArea(2.)

- -

 

- -

# compute the mesh

- -

tria.Compute()

- -

PrintMeshInfo(tria)

- -

 

- -

Export of a Mesh

- -

import geompy

- -

import smesh

- -

 

- -

# create a box

- -

box = geompy.MakeBox(0., - 0., 0., 100., 200., 300.)

- -

idbox = geompy.addToStudy(box, - "box")

- -

 

- -

# create a mesh

- -

tetra = smesh.Mesh(box, - "MeshBox")

- -

 

- -

algo1D = tetra.Segment()

- -

algo1D.NumberOfSegments(7)

- -

 

- -

algo2D = tetra.Triangle()

- -

algo2D.MaxElementArea(800.)

- -

 

- -

algo3D = tetra.Tetrahedron(smesh.NETGEN)

- -

algo3D.MaxElementVolume(900.)

- -

 

- -

# compute the mesh

- -

tetra.Compute()

- -

 

- -

# export the mesh in a - MED file

- -

tetra.ExportMED("/tmp/meshMED.med", - 0)

- - - - diff --git a/doc/salome/gui/SMESH/cshdat_robohelp.htm b/doc/salome/gui/SMESH/cshdat_robohelp.htm deleted file mode 100755 index 4a4ee57e1..000000000 --- a/doc/salome/gui/SMESH/cshdat_robohelp.htm +++ /dev/null @@ -1,258 +0,0 @@ - - -Mesh Module Reference Manual - - - - - - - - - - - - - - - - - diff --git a/doc/salome/gui/SMESH/cshdat_webhelp.htm b/doc/salome/gui/SMESH/cshdat_webhelp.htm deleted file mode 100755 index db3b49a38..000000000 --- a/doc/salome/gui/SMESH/cshdat_webhelp.htm +++ /dev/null @@ -1,251 +0,0 @@ - - -Mesh Module Reference Manual - - - - - - - - - - - - - - - - - diff --git a/doc/salome/gui/SMESH/default.css b/doc/salome/gui/SMESH/default.css deleted file mode 100755 index 1f8d6d772..000000000 --- a/doc/salome/gui/SMESH/default.css +++ /dev/null @@ -1,101 +0,0 @@ -BODY { - background-color:#ffffff; - font-family:"Times New Roman" , serif; } -H1 { - font-weight:bold; - font-size:24.0pt; } -LI.kadov-H1 { - font-weight:bold; - font-size:24.0pt; } -H2 { - font-weight:bold; - font-size:18.0pt; } -LI.kadov-H2 { - font-weight:bold; - font-size:18.0pt; } -H3 { - font-weight:bold; - font-size:14.0pt; } -LI.kadov-H3 { - font-weight:bold; - font-size:14.0pt; } -H4 { - font-weight:bold; - font-size:12.0pt; } -LI.kadov-H4 { - font-weight:bold; - font-size:12.0pt; } -H5 { - font-weight:bold; - font-size:10.0pt; } -LI.kadov-H5 { - font-weight:bold; - font-size:10.0pt; } -H6 { - font-weight:bold; - font-size:8.0pt; } -LI.kadov-H6 { - font-weight:bold; - font-size:8.0pt; } -P { - font-size:12.0pt; - margin-top:0pt; - margin-bottom:0pt; } -LI.kadov-P { - font-size:12.0pt; } -A.expandspot { - color:#008000; - cursor:hand; - font-style:italic; - x-text-underline:off; - x-text-overline:off; - x-text-line-through:off; - text-decoration:none none none; } -SPAN.expandtext { - font-style:italic; - font-weight:normal; - color:#ff0000; } -A.dropspot { - cursor:hand; - color:#008000; - font-style:italic; - x-text-underline:off; - x-text-overline:off; - x-text-line-through:off; - text-decoration:none none none; } -A.glossterm { - color:#800000; - cursor:hand; - font-style:italic; - x-text-underline:off; - x-text-overline:off; - x-text-line-through:off; - text-decoration:none none none; } -SPAN.glosstext { - font-style:italic; - font-weight:normal; - color:#0000ff; } -OL { - margin-top:0px; - margin-bottom:0px; } -UL { - margin-top:0px; - margin-bottom:0px; } -A:active { } -A:hover { - x-text-underline:Off; - text-decoration:none; } -A:link { - x-text-underline:Off; - text-decoration:none; } -A:visited { - x-text-underline:Off; - text-decoration:none; } -P.TODO { - font-weight:normal; - font-style:italic; - font-family:"Arial Black" , sans-serif; } -LI.kadov-P-CTODO { - font-weight:normal; - font-style:italic; - font-family:"Arial Black" , sans-serif; } diff --git a/doc/salome/gui/SMESH/default_ns.css b/doc/salome/gui/SMESH/default_ns.css deleted file mode 100755 index 46e8b0018..000000000 --- a/doc/salome/gui/SMESH/default_ns.css +++ /dev/null @@ -1,118 +0,0 @@ -BODY { - background-color:#ffffff; - font-family:"Times New Roman" , serif; } -H1 { - font-weight:bold; - font-size:24.0pt; - font-family:"Times New Roman" , serif; } -LI.kadov-H1 { - font-weight:bold; - font-size:24.0pt; } -H2 { - font-weight:bold; - font-size:18.0pt; - font-family:"Times New Roman" , serif; } -LI.kadov-H2 { - font-weight:bold; - font-size:18.0pt; } -H3 { - font-weight:bold; - font-size:14.0pt; - font-family:"Times New Roman" , serif; } -LI.kadov-H3 { - font-weight:bold; - font-size:14.0pt; } -H4 { - font-weight:bold; - font-size:12.0pt; - font-family:"Times New Roman" , serif; } -LI.kadov-H4 { - font-weight:bold; - font-size:12.0pt; } -H5 { - font-weight:bold; - font-size:10.0pt; - font-family:"Times New Roman" , serif; } -LI.kadov-H5 { - font-weight:bold; - font-size:10.0pt; } -H6 { - font-weight:bold; - font-size:8.0pt; - font-family:"Times New Roman" , serif; } -LI.kadov-H6 { - font-weight:bold; - font-size:8.0pt; } -P { - font-size:12.0pt; - margin-top:1pt; - margin-bottom:1pt; - font-family:"Times New Roman" , serif; } -LI.kadov-P { - font-size:12.0pt; } -A.expandspot { - color:#008000; - cursor:hand; - font-style:italic; - x-text-underline:off; - x-text-overline:off; - x-text-line-through:off; - text-decoration:none none none; } -SPAN.expandtext { - font-style:italic; - font-weight:normal; - color:#ff0000; } -A.dropspot { - cursor:hand; - color:#008000; - font-style:italic; - x-text-underline:off; - x-text-overline:off; - x-text-line-through:off; - text-decoration:none none none; } -A.glossterm { - color:#800000; - cursor:hand; - font-style:italic; - x-text-underline:off; - x-text-overline:off; - x-text-line-through:off; - text-decoration:none none none; } -SPAN.glosstext { - font-style:italic; - font-weight:normal; - color:#0000ff; } -OL { - margin-top:0px; - margin-bottom:0px; - font-family:"Times New Roman" , serif; } -UL { - margin-top:0px; - margin-bottom:0px; - font-family:"Times New Roman" , serif; } -A:active { } -A:hover { - x-text-underline:Off; - text-decoration:none; } -A:link { - x-text-underline:Off; - text-decoration:none; } -A:visited { - x-text-underline:Off; - text-decoration:none; } -P.TODO { - font-weight:normal; - font-style:italic; - font-family:"Arial Black" , sans-serif; } -LI.kadov-P-CTODO { - font-weight:normal; - font-style:italic; - font-family:"Arial Black" , sans-serif; } -ol ol { - margin-top:1px; } -ol ul { - margin-top:1px; } -ul ul { - margin-top:1px; } -ul ol { - margin-top:1px; } diff --git a/doc/salome/gui/SMESH/defining_hypotheses_tui.htm b/doc/salome/gui/SMESH/defining_hypotheses_tui.htm deleted file mode 100755 index 420dc0a8b..000000000 --- a/doc/salome/gui/SMESH/defining_hypotheses_tui.htm +++ /dev/null @@ -1,883 +0,0 @@ - - - - - -Defining hypotheses TUI - - - - - - - - - - - -

Defining Hypotheses and Algorithms

- -

Defining 1D Hypotheses

- -

1D Arithmetic

- -

 

- -

import - geompy

- -

import smesh

- -

 

- -

# create a box

- -

box = geompy.MakeBoxDXDYDZ(10., - 10., 10.)

- -

geompy.addToStudy(box, - "Box")

- -

 

- -

# create a hexahedral - mesh on the box

- -

hexa = smesh.Mesh(box, - "Box : hexahedrical mesh")

- -

 

- -

# create a Regular 1D - algorithm for edges

- -

algo1D = hexa.Segment()

- -

 

- -

# define "Arithmetic1D" - hypothesis to cut all edges in several segments with increasing arithmetic - length

- -

algo1D.Arithmetic1D(1, - 4)

- -

 

- -

# create a quadrangle - 2D algorithm for faces

- -

hexa.Quadrangle()

- -

 

- -

# create a hexahedron - 3D algorithm for solids

- -

hexa.Hexahedron()

- -

 

- -

# compute the mesh

- -

hexa.Compute()

- -

 

- -

Deflection 1D and Number of Segments

- -

import - geompy

- -

import smesh

- -

 

- -

# create a face from - arc and straight segment

- -

px = geompy.MakeVertex(100., - 0.  , 0. -  )

- -

py = geompy.MakeVertex(0. -  , 100., - 0.  )

- -

pz = geompy.MakeVertex(0. -  , 0.  , - 100.)

- -

 

- -

exy = geompy.MakeEdge(px, - py)

- -

arc = geompy.MakeArc(py, - pz, px)

- -

 

- -

wire = geompy.MakeWire([exy, - arc])

- -

 

- -

isPlanarFace = 1

- -

face1 = geompy.MakeFace(wire, - isPlanarFace)

- -

geompy.addToStudy(face1,"Face1")

- -

 

- -

# get edges from the - face

- -

e_straight,e_arc = - geompy.SubShapeAll(face1, geompy.ShapeType["EDGE"])

- -

geompy.addToStudyInFather(face1, - e_arc, "Arc Edge")

- -

 

- -

# create hexahedral mesh

- -

hexa = smesh.Mesh(face1, - "Face : triangle mesh")

- -

 

- -

# define "NumberOfSegments" - hypothesis to cut a straight edge in a fixed number of segments

- -

algo1D = hexa.Segment()

- -

algo1D.NumberOfSegments(6)

- -

 

- -

# define "MaxElementArea" - hypothesis

- -

algo2D = hexa.Triangle()

- -

algo2D.MaxElementArea(70.0)

- -

 

- -

# define a local "Deflection1D" - hypothesis on the arc

- -

algo_local = hexa.Segment(e_arc)

- -

algo_local.Deflection1D(1.0)

- -

 

- -

# compute the mesh

- -

hexa.Compute()

- -

Start and End Length

- -

from - geompy import *

- -

import smesh

- -

 

- -

# create a box

- -

box = MakeBoxDXDYDZ(10., - 10., 10.)

- -

addToStudy(box, "Box")

- -

 

- -

# get one edge of the - box to put local hypothesis on

- -

p5 = MakeVertex(5., - 0., 0.)

- -

EdgeX = GetEdgeNearPoint(box, - p5)

- -

addToStudyInFather(box, - EdgeX, "Edge [0,0,0 - 10,0,0]")

- -

 

- -

# create a hexahedral - mesh on the box

- -

hexa = smesh.Mesh(box, - "Box : hexahedrical mesh")

- -

 

- -

# set algorithms

- -

algo1D = hexa.Segment()

- -

hexa.Quadrangle()

- -

hexa.Hexahedron()

- -

 

- -

# define "NumberOfSegments" - hypothesis to cut an edge in a fixed number of segments

- -

algo1D.NumberOfSegments(4)

- -

 

- -

# create a local hypothesis

- -

algo_local = hexa.Segment(EdgeX)

- -

 

- -

# define "StartEndLength" - hypothesis to cut an edge in several segments with increasing geometric - length

- -

algo_local.StartEndLength(1, - 6)

- -

 

- -

# define "Propagation" - hypothesis that propagates all other hypothesis

- -

# on all edges on the - opposite side in case of quadrangular faces

- -

algo_local.Propagation()

- -

 

- -

# compute the mesh

- -

hexa.Compute()

- -

Average Length

- -

from - geompy import *

- -

import smesh

- -

 

- -

# create a box

- -

box = MakeBoxDXDYDZ(10., - 10., 10.)

- -

addToStudy(box, "Box")

- -

 

- -

# get one edge of the - box to put local hypothesis on

- -

p5 = MakeVertex(5., - 0., 0.)

- -

EdgeX = GetEdgeNearPoint(box, - p5)

- -

addToStudyInFather(box, - EdgeX, "Edge [0,0,0 - 10,0,0]")

- -

 

- -

# create a hexahedral - mesh on the box

- -

hexa = smesh.Mesh(box, - "Box : hexahedrical mesh")

- -

 

- -

# set algorithms

- -

algo1D = hexa.Segment()

- -

hexa.Quadrangle()

- -

hexa.Hexahedron()

- -

 

- -

# define "NumberOfSegments" - hypothesis to cut all edges in a fixed number of segments

- -

algo1D.NumberOfSegments(4)

- -

 

- -

# create a sub-mesh

- -

algo_local = hexa.Segment(EdgeX)

- -

 

- -

# define "LocalLength" - hypothesis to cut an edge in several segments with the same length

- -

algo_local.LocalLength(2.)

- -

 

- -

# define "Propagation" - hypothesis that propagates all other hypothesis

- -

# on all edges on the - opposite side in case of quadrangular faces

- -

algo_local.Propagation()

- -

 

- -

# compute the mesh

- -

hexa.Compute()

- -

Defining 2D and 3D hypotheses

- -

Maximum Element Area

- -

import - geompy

- -

import smesh

- -

import salome

- -

 

- -

# create a face

- -

px   = - geompy.MakeVertex(100., 0.  , - 0.  )

- -

py   = - geompy.MakeVertex(0.  , - 100., 0.  )

- -

pz   = - geompy.MakeVertex(0.  , - 0.  , 100.)

- -

 

- -

vxy = geompy.MakeVector(px, - py)

- -

arc = geompy.MakeArc(py, - pz, px)

- -

wire = geompy.MakeWire([vxy, - arc])

- -

 

- -

isPlanarFace = 1

- -

face = geompy.MakeFace(wire, - isPlanarFace)

- -

 

- -

# add the face in the - study

- -

id_face = geompy.addToStudy(face, - "Face to be meshed")

- -

 

- -

# create a mesh

- -

tria_mesh = smesh.Mesh(face, - "Face : triangulation")

- -

 

- -

# define 1D meshing:

- -

algo = tria_mesh.Segment()

- -

algo.NumberOfSegments(20)

- -

 

- -

# define 2D meshing:

- -

 

- -

# assign triangulation - algorithm

- -

algo = tria_mesh.Triangle()

- -

 

- -

# apply "Max Element - Area" hypothesis to each triangle

- -

algo.MaxElementArea(100)

- -

 

- -

# compute the mesh

- -

tria_mesh.Compute() -  

- -

 

- -

Maximum Element Volume

- -

import - geompy

- -

import smesh

- -

 

- -

# create a cylinder

- -

cyl = geompy.MakeCylinderRH(30., - 50.)

- -

geompy.addToStudy(cyl, - "cyl")

- -

 

- -

# create a mesh on - the cylinder

- -

tetra = smesh.Mesh(cyl, - "Cylinder : tetrahedrical mesh")

- -

 

- -

# assign algorithms

- -

algo1D = tetra.Segment()

- -

algo2D = tetra.Triangle()

- -

algo3D = tetra.Tetrahedron(smesh.NETGEN)

- -

 

- -

# assign 1D and 2D - hypotheses

- -

algo1D.NumberOfSegments(7)

- -

algo2D.MaxElementArea(150.)

- -

 

- -

# assign Max Element - Volume hypothesis

- -

algo3D.MaxElementVolume(200.)

- -

 

- -

# compute the mesh

- -

ret = tetra.Compute()

- -

if ret == 0:

- -

    print - "probleme when computing the mesh"

- -

else:

- -

    print - "Computation succeded"

- -

Length from Edges

- -

import - geompy

- -

import smesh

- -

 

- -

# create sketchers

- -

sketcher1 = geompy.MakeSketcher("Sketcher:F - 0 0:TT 70 0:TT 70 70:TT 0 70:WW")

- -

sketcher2 = geompy.MakeSketcher("Sketcher:F - 20 20:TT 50 20:TT 50 50:TT 20 50:WW")

- -

 

- -

# create a face from - two wires

- -

isPlanarFace = 1

- -

face1 = geompy.MakeFaces([sketcher1, - sketcher2], isPlanarFace)

- -

geompy.addToStudy(face1, - "Face1")

- -

 

- -

# create a mesh

- -

tria = smesh.Mesh(face1, - "Face : triangle 2D mesh")

- -

 

- -

# Define 1D meshing

- -

algo1D = tria.Segment()

- -

algo1D.NumberOfSegments(2)

- -

 

- -

# create and assign the - algorithm for 2D meshing with triangles

- -

algo2D = tria.Triangle()

- -

 

- -

# create and assign "LengthFromEdges" - hypothesis to build triangles - based on the length of the edges taken from the wire

- -

algo2D.LengthFromEdges()

- -

 

- -

# compute the mesh

- -

tria.Compute()

- -

 

- -

Defining Additional Hypotheses

- -

Propagation

- -

from geompy import - *

- -

import smesh

- -

 

- -

# create a box

- -

box = MakeBoxDXDYDZ(10., - 10., 10.)

- -

addToStudy(box, "Box")

- -

 

- -

# get one edge of the - box to put local hypothesis on

- -

p5 = MakeVertex(5., - 0., 0.)

- -

EdgeX = GetEdgeNearPoint(box, - p5)

- -

addToStudyInFather(box, - EdgeX, "Edge [0,0,0 - 10,0,0]")

- -

 

- -

# create a hexahedral - mesh on the box

- -

hexa = smesh.Mesh(box, - "Box : hexahedrical mesh")

- -

 

- -

# set global algorithms - and hypotheses

- -

algo1D = hexa.Segment()

- -

hexa.Quadrangle()

- -

hexa.Hexahedron()

- -

algo1D.NumberOfSegments(4)

- -

 

- -

# create a sub-mesh with - local 1D hypothesis and propagation

- -

algo_local = hexa.Segment(EdgeX)

- -

 

- -

# define "Arithmetic1D" - hypothesis to cut an edge in several segments with increasing length

- -

algo_local.Arithmetic1D(1, - 4)

- -

 

- -

# define "Propagation" - hypothesis that propagates all other 1D hypotheses

- -

# from all edges on the - opposite side of a face in case of quadrangular faces

- -

algo_local.Propagation()

- -

 

- -

# compute the mesh

- -

hexa.Compute() -

- -

Defining Meshing Algorithms

- -

import geompy

- -

import smesh

- -

 

- -

# create a box

- -

box = geompy.MakeBoxDXDYDZ(10., - 10., 10.)

- -

geompy.addToStudy(box, - "Box")

- -

 

- -

# 1. Create a hexahedral - mesh on the box

- -

hexa = smesh.Mesh(box, - "Box : hexahedrical mesh")

- -

 

- -

# create a Regular 1D algorithm - for edges

- -

algo1D = hexa.Segment()

- -

 

- -

# create a quadrangle 2D - algorithm for faces

- -

algo2D = hexa.Quadrangle()

- -

 

- -

# create a hexahedron 3D - algorithm for solids

- -

algo3D = hexa.Hexahedron()

- -

 

- -

# define hypotheses

- -

algo1D.Arithmetic1D(1, - 4)

- -

 

- -

# compute the mesh

- -

hexa.Compute()

- -

 

- -

# 2. Create a tetrahedral - mesh on the box

- -

tetra = smesh.Mesh(box, - "Box : tetrahedrical mesh")

- -

 

- -

# create a Regular 1D algorithm - for edges

- -

algo1D = tetra.Segment()

- -

 

- -

# create a Mefisto 2D algorithm - for faces

- -

algo2D = tetra.Triangle()

- -

 

- -

# create a Netgen 3D algorithm - for solids

- -

algo3D = tetra.Tetrahedron(smesh.NETGEN)

- -

 

- -

# define hypotheses

- -

algo1D.Arithmetic1D(1, - 4)

- -

algo2D.LengthFromEdges()

- -

 

- -

# compute the mesh

- -

tetra.Compute()

- -

 

- -

# 3. Create a tetrahedral - mesh on the box with NETGEN_2D3D algorithm

- -

tetraN = smesh.Mesh(box, - "Box : tetrahedrical mesh by NETGEN_2D3D")

- -

 

- -

# create a Netgen_2D3D - algorithm for solids

- -

algo3D = tetraN.Tetrahedron(smesh.FULL_NETGEN) -

- -

 

- -

# define hypotheses

- -

n23_params = algo3D.Parameters()

- -

 

- -

# compute the mesh

- -

tetraN.Compute() -

- - - - diff --git a/doc/salome/gui/SMESH/deleting_groups.htm b/doc/salome/gui/SMESH/deleting_groups.htm deleted file mode 100755 index 02a7b47e2..000000000 --- a/doc/salome/gui/SMESH/deleting_groups.htm +++ /dev/null @@ -1,119 +0,0 @@ - - - - - -Deleting Groups - - - - - - - - - - - -

Deleting Groups

- -

To delete a group in the - Main Menu select Mesh - -> Delete Groups and select one or several - groups you wish to delete in the 3D viewer or in the Object Browser.

- -

The selected groups will - be listed in Delete groups with contents - menu. Then click Ok button to remove the selected groups and close the - menu or Apply button to remove them and proceed with the selection.

- -

 

- -

- -

    

- -

 

- -

Please, note that this - operation removes groups with their elements. - To delete a group and leave its elements intact, right-click on the group - in the Object Browser and select Delete - in the pop-up menu or select the group and choose Edit - -> Delete in the Main Menu. -   

- - - - diff --git a/doc/salome/gui/SMESH/display_entity.htm b/doc/salome/gui/SMESH/display_entity.htm deleted file mode 100755 index 51d7d6604..000000000 --- a/doc/salome/gui/SMESH/display_entity.htm +++ /dev/null @@ -1,101 +0,0 @@ - - - - - -Display Entity - - - - - - - - - - - - -

Display Entity

- -

In this submenu you can choose to display only volumes, faces or edges - or combine them.

- -

 

- -

Only Faces                                                  Only - Edges

- -

 

- -

 

- - - - diff --git a/doc/salome/gui/SMESH/doxyfile.in b/doc/salome/gui/SMESH/doxyfile.in new file mode 100755 index 000000000..37ef2d45f --- /dev/null +++ b/doc/salome/gui/SMESH/doxyfile.in @@ -0,0 +1,49 @@ +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- +PROJECT_NAME = "Mesh Module Reference Manual v.@VERSION@" +OUTPUT_DIRECTORY = ./ +CREATE_SUBDIRS = NO +OUTPUT_LANGUAGE = English +TAB_SIZE = 5 + +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- +QUIET = NO +WARNINGS = YES + +#--------------------------------------------------------------------------- +#Input related options +#--------------------------------------------------------------------------- +INPUT = @srcdir@/input +FILE_PATTERNS = *.doc +IMAGE_PATH = @srcdir@/images +EXAMPLE_PATH = ../../../share/salome/src/SMESH_SWIG +#--------------------------------------------------------------------------- +#HTML related options +#--------------------------------------------------------------------------- +GENERATE_HTML = YES +HTML_OUTPUT = ./ +HTML_HEADER = @srcdir@/static/header.html +HTML_FOOTER = @srcdir@/static/footer.html +#HTML_STYLESHEET = @srcdir@/static/doxygen.css +TOC_EXPAND = YES +DISABLE_INDEX = NO +GENERATE_TREEVIEW = YES +TREEVIEW_WIDTH = 300 + +#--------------------------------------------------------------------------- +#LaTeX related option +#--------------------------------------------------------------------------- +GENERATE_LATEX = NO + +#--------------------------------------------------------------------------- +#RTF related options +#--------------------------------------------------------------------------- +GENERATE_RTF = NO + +#--------------------------------------------------------------------------- +#External reference options +#--------------------------------------------------------------------------- +TAGFILES = smeshpy_doc.tag=./smeshpy_doc diff --git a/doc/salome/gui/SMESH/doxyfile_py.in b/doc/salome/gui/SMESH/doxyfile_py.in new file mode 100755 index 000000000..ff847e50e --- /dev/null +++ b/doc/salome/gui/SMESH/doxyfile_py.in @@ -0,0 +1,137 @@ +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- +PROJECT_NAME = "Mesh Module Reference Manual v.@VERSION@" +OUTPUT_DIRECTORY = ./ +CREATE_SUBDIRS = NO +OUTPUT_LANGUAGE = English +USE_WINDOWS_ENCODING = NO +BRIEF_MEMBER_DESC = YES +REPEAT_BRIEF = NO +ALWAYS_DETAILED_SEC = YES +INLINE_INHERITED_MEMB = YES +FULL_PATH_NAMES = NO +SHORT_NAMES = NO +JAVADOC_AUTOBRIEF = YES +MULTILINE_CPP_IS_BRIEF = NO +DETAILS_AT_TOP = NO +INHERIT_DOCS = YES +SEPARATE_MEMBER_PAGES = NO +TAB_SIZE = 5 +OPTIMIZE_OUTPUT_FOR_C = YES +OPTIMIZE_OUTPUT_JAVA = YES +BUILTIN_STL_SUPPORT = NO +DISTRIBUTE_GROUP_DOC = NO +SUBGROUPING = YES + +#--------------------------------------------------------------------------- +# Build related options +#--------------------------------------------------------------------------- +EXTRACT_ALL = YES +EXTRACT_PRIVATE = YES +EXTRACT_STATIC = NO +EXTRACT_LOCAL_CLASSES = YES +EXTRACT_LOCAL_METHODS = NO +HIDE_UNDOC_MEMBERS = NO +HIDE_UNDOC_CLASSES = NO +HIDE_FRIEND_COMPOUNDS = NO +HIDE_IN_BODY_DOCS = NO +INTERNAL_DOCS = YES +CASE_SENSE_NAMES = YES +HIDE_SCOPE_NAMES = NO +SHOW_INCLUDE_FILES = YES +INLINE_INFO = YES +SORT_MEMBER_DOCS = NO +SORT_BRIEF_DOCS = NO +SORT_BY_SCOPE_NAME = NO +GENERATE_TODOLIST = YES +GENERATE_TESTLIST = YES +GENERATE_BUGLIST = YES +GENERATE_DEPRECATEDLIST= YES +MAX_INITIALIZER_LINES = 25 +SHOW_USED_FILES = NO +SHOW_DIRECTORIES = NO + +#--------------------------------------------------------------------------- +# configuration options related to source browsing +#--------------------------------------------------------------------------- +SOURCE_BROWSER = NO +INLINE_SOURCES = NO +STRIP_CODE_COMMENTS = YES +REFERENCED_BY_RELATION = NO +REFERENCES_RELATION = YES +USE_HTAGS = NO +VERBATIM_HEADERS = YES + +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- +QUIET = NO +WARNINGS = YES +WARN_IF_UNDOCUMENTED = YES +WARN_IF_DOC_ERROR = YES +WARN_NO_PARAMDOC = NO +EXCLUDE_SYMLINKS = NO +EXAMPLE_RECURSIVE = NO + +#--------------------------------------------------------------------------- +#Input related options +#--------------------------------------------------------------------------- +INPUT = @top_srcdir@/src/SMESH_SWIG +FILE_PATTERNS = smeshDC.py +IMAGE_PATH = @srcdir@/images +RECURSIVE = NO + +#--------------------------------------------------------------------------- +#HTML related options +#--------------------------------------------------------------------------- +GENERATE_HTML = YES +HTML_OUTPUT = ./smeshpy_doc +HTML_HEADER = @srcdir@/static/header.html +HTML_FOOTER = @srcdir@/static/footer.html +#HTML_STYLESHEET = @srcdir@/static/doxygen.css +TOC_EXPAND = YES +DISABLE_INDEX = YES +GENERATE_TREEVIEW = NO + +#--------------------------------------------------------------------------- +#LaTeX related option +#--------------------------------------------------------------------------- +GENERATE_LATEX = NO + +#--------------------------------------------------------------------------- +#RTF related options +#--------------------------------------------------------------------------- +GENERATE_RTF = NO + +#--------------------------------------------------------------------------- +# Configuration options related to the dot tool +#--------------------------------------------------------------------------- +CLASS_DIAGRAMS = YES +HIDE_UNDOC_RELATIONS = NO +HAVE_DOT = YES +CLASS_GRAPH = YES +COLLABORATION_GRAPH = NO +GROUP_GRAPHS = NO +UML_LOOK = NO +TEMPLATE_RELATIONS = YES +INCLUDE_GRAPH = YES +INCLUDED_BY_GRAPH = NO +CALL_GRAPH = NO +GRAPHICAL_HIERARCHY = YES +DIRECTORY_GRAPH = YES +DOT_IMAGE_FORMAT = jpg +DOT_PATH = +DOTFILE_DIRS = +MAX_DOT_GRAPH_WIDTH = 1024 +MAX_DOT_GRAPH_HEIGHT = 1200 +MAX_DOT_GRAPH_DEPTH = 0 +DOT_TRANSPARENT = NO +DOT_MULTI_TARGETS = NO +GENERATE_LEGEND = NO +DOT_CLEANUP = YES + +#--------------------------------------------------------------------------- +#External reference options +#--------------------------------------------------------------------------- +GENERATE_TAGFILE = smeshpy_doc.tag diff --git a/doc/salome/gui/SMESH/ehelp.xml b/doc/salome/gui/SMESH/ehelp.xml deleted file mode 100755 index 8d61adcdc..000000000 --- a/doc/salome/gui/SMESH/ehelp.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - WebSearch - - \ No newline at end of file diff --git a/doc/salome/gui/SMESH/ehlpdhtm.js b/doc/salome/gui/SMESH/ehlpdhtm.js deleted file mode 100755 index 7bcb24993..000000000 --- a/doc/salome/gui/SMESH/ehlpdhtm.js +++ /dev/null @@ -1,4239 +0,0 @@ -// eHelp® Corporation Dynamic HTML JavaScript -// Copyright© 1998-2003 eHelp® Corporation.All rights reserved. -// Version=4.82 - -// Warning:Do not modify this file.It is generated by RoboHELP® and changes will be overwritten. - -//// Segment Begin -- (JavaScript 1.0) - -/// Section Begin - General and relative topics(JavaScript 1.0) - -//{{HH_SYMBOL_SECTION -var HH_ChmFilename = ""; -var HH_WindowName = ""; -var HH_GlossaryFont = ""; -var HH_Glossary = ""; -var HH_Avenue = ""; -var HH_ActiveX = false; -//}}HH_SYMBOL_SECTION - -//Begin to support previous generic parameters -//Get the information about the browser. -var gstrBsAgent = navigator.userAgent.toLowerCase(); -var gnBsVer = parseInt(navigator.appVersion); - -var gbBsOpera = (gstrBsAgent.indexOf('opera') != -1); -var gbBsKonqueror = (gstrBsAgent.indexOf('konqueror') != -1); -var gbBsSafari = (gstrBsAgent.indexOf('safari') != -1); -var gbBsIE = (gstrBsAgent.indexOf('msie') != -1) && !gbBsOpera && !gbBsKonqueror && !gbBsSafari; -var gbBsNS = (gstrBsAgent.indexOf('mozilla') != -1) && ((gstrBsAgent.indexOf('spoofer') == -1) && (gstrBsAgent.indexOf('compatible') == -1)) && !gbBsOpera && !gbBsKonqueror && !gbBsSafari; - -var gbBsMac = (gstrBsAgent.indexOf('mac') != -1); -var gbBsWindows = ((gstrBsAgent.indexOf('win') != -1) || (gstrBsAgent.indexOf('16bit') != -1)); -var gbBsSunOS = (gstrBsAgent.indexOf("sunos") != -1); - -var gbBsIE3Before = ((gbBsIE) && (gnBsVer <= 2)); -var gbBsNS3Before = ((gbBsNS) && (gnBsVer <= 3)); - -var gbBsNS2 = ((gbBsNS) && (gnBsVer <= 2)); -var gbBsNS3 = ((gbBsNS) && (gnBsVer == 3)); -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))); -var gbBsIE302 = ((gbBsIE) && (gnBsVer == 2) && (gstrBsAgent.indexOf("3.02") != -1)); - -var gbBsNS4 = ((gbBsNS) && (gnBsVer >= 4)); -var gbBsNS6 = ((gbBsNS) && (gnBsVer >= 5)); -var gbBsNS7 = false; - -var gbBsIE4 = ((gbBsIE) && (gnBsVer >= 4)); -var gbBsIE5 = false; -var gbBsIE55 = false; - -var gbBsOpera6 = false; -var gbBsOpera7 = false; - -var gbBsKonqueror3 = false; - - - -gbBsIE = (navigator.appName.indexOf("Microsoft") != -1) && !gbBsOpera && !gbBsKonqueror && !gbBsSafari;; -if (gbBsIE) -{ - if (parseInt(navigator.appVersion) >= 4) { - gbBsIE4 = true; - if (gbBsIE4) { - var nPos = gstrBsAgent.indexOf("msie"); - var strIEversion = gstrBsAgent.substring(nPos + 5); - var nVersion = parseFloat(strIEversion); - if (nVersion >= 5) - gbBsIE5 = true; - if (nVersion >= 5.5) - gbBsIE55 = true; - } - } -} -if (gbBsNS6) -{ - var nPos=gstrBsAgent.indexOf("gecko"); - if(nPos!=-1) - { - var nPos2=gstrBsAgent.indexOf("/", nPos); - if(nPos2!=-1) - { - var nVersion=parseFloat(gstrBsAgent.substring(nPos2+1)); - if (nVersion>=20020823) - gbBsNS7=true; - } - } -} -if (gbBsOpera) -{ - var nPos = gstrBsAgent.indexOf("opera"); - if(nPos!=-1) - { - var nVersion = parseFloat(gstrBsAgent.substring(nPos+6)); - if (nVersion >= 6) - { - gbBsOpera6=true; - if (nVersion >=7) - gbBsOpera7=true; - } - } -} -if (gbBsKonqueror) -{ - var nPos = gstrBsAgent.indexOf("konqueror"); - if(nPos!=-1) - { - var nVersion = parseFloat(gstrBsAgent.substring(nPos+10)); - if (nVersion >= 3) - { - gbBsKonqueror3=true; - } - } -} - -function insertAdjacentHTML(obj, where, htmlStr) -{ - if (gbBsIE || gbBsOpera7) - { - obj.insertAdjacentHTML(where, htmlStr); - } - else if (gbBsNS6 || gbBsSafari) - { - var r = obj.ownerDocument.createRange(); - r.setStartBefore(obj); - var parsedHTML = r.createContextualFragment(htmlStr); - - switch (where){ - case 'beforeBegin': - obj.parentNode.insertBefore(parsedHTML,obj); - break; - case 'afterBegin': - obj.insertBefore(parsedHTML,obj.firstChild); - break; - case 'beforeEnd': - obj.appendChild(parsedHTML); - break; - case 'afterEnd': - if (obj.nextSibling){ - obj.parentNode.insertBefore(parsedHTML,obj.nextSibling); - } else { - obj.parentNode.appendChild(parsedHTML); - } - break; - } - } -} - -// Utilities functions. -function BsscHasExtJs() -{ - if( gbBsIE3Before || gbBsNS3Before) - return false; - return true; -} - -// Register event handler -var gBsOnLoads = new Array(); // An array holds all the onload event handler. -var gBsOnClicks = new Array(); // An array holds all the onClick event handler. -var gBsOnUnLoads = new Array(); // An array holds all the OnUnLoad event handler. -var gBsOnMouseOvers = new Array(); // An array holds all the OnMouseOver event handler. -var gBsOnMouseOuts = new Array(); // An array holds all the OnMouseOut event handler. - -var gbOrignalOnMouseDown = null; - -function BsscRegisterOnLoad(funcHandler) -{ - var nLength = gBsOnLoads.length; - gBsOnLoads[nLength] = funcHandler; -} - -function BsscRegisterOnClick(funcHandler) -{ - var nLength = gBsOnClicks.length; - gBsOnClicks[nLength] = funcHandler; -} - -function BsscRegisterOnUnLoad(funcHandler) -{ - var nLength = gBsOnUnLoads.length; - gBsOnUnLoads[nLength] = funcHandler; -} - -function BsscRegisterOnMouseOver(funcHandler) -{ - var nLength = gBsOnMouseOvers.length; - gBsOnMouseOvers[nLength] = funcHandler; -} - -function BsscRegisterOnMouseOut(funcHandler) -{ - var nLength = gBsOnMouseOuts.length; - gBsOnMouseOuts[nLength] = funcHandler; -} - -function BsGeneralOnLoad() -{ - if (!gbBsIE4 && !gbBsNS4) - return; - - // Make everything visible in navigator - if (gbBsNS4 && !gbBsNS6) { - // Make some special effects items visible - for (var iLayer = 0; iLayer < document.layers.length; iLayer++) { - document.layers[iLayer].visibility = "show"; - document.layers[iLayer].left = 0; - } - } -} - -// If resize the netscape browser, need to reload it. -function BsReDo() -{ - if (innerWidth != origWidth || innerHeight != origHeight) - location.reload(); -} -// End of the local functions. - -// The following functions are used by the html files. -function BSSCOnLoad() -{ - if( !BsscHasExtJs() ) - return; - for (var nElement = gBsOnLoads.length - 1; nElement >= 0; nElement--) - gBsOnLoads[nElement](); -} - -function BSSCOnClick() -{ - if (!BsscHasExtJs()) return; - - for (var nElement = gBsOnClicks.length - 1; nElement >= 0; nElement--) - gBsOnClicks[nElement](); -} - -function BSSCOnUnload() -{ - if (!BsscHasExtJs()) return; - for (var nElement = gBsOnUnLoads.length - 1; nElement >= 0; nElement--) - gBsOnUnLoads[nElement](); -} - -function BSSCOnMouseOver() -{ - if (!BsscHasExtJs()) return; - for (var nElement = gBsOnMouseOvers.length - 1; nElement >= 0; nElement--) - gBsOnMouseOvers[nElement](); -} - -function BSSCOnMouseOut() -{ - if (!BsscHasExtJs()) return; - for (var nElement = gBsOnMouseOuts.length - 1; nElement >= 0; nElement--) - { - gBsOnMouseOuts[nElement](); - } -} -// End of invocation of the event handle functions. - -// Add the GereralOnLoad to the onload array. -if (typeof(BsscRegisterOnLoad) != "undefined") -{ - BsscRegisterOnLoad(BsGeneralOnLoad); -} -if (gbBsNS4&&!gbBsNS6) { - origWidth = innerWidth; - origHeight = innerHeight; - onresize = BsReDo; -} -//End to support previous generic parameters - -//Begin to support previous HHActiveX invoking -function BsHHActivateComponents() -{ - if( HH_ActiveX && (HH_ChmFilename != "") && ((self == top) || (self == top.frames[0]))) - { - var objBody = getElementsByTag(document,"BODY")[0]; - if( typeof(objBody) == "object" ) - { - insertAdjacentHTML(objBody, "beforeEnd", ''); - if (HHComponentActivator.object) - HHComponentActivator.Activate(HH_ChmFilename, HH_WindowName, HH_GlossaryFont, HH_Glossary, HH_Avenue); - } - } -} - -function BsHHActivXOnLoad() -{ - if( gbBsIE4 ) - BsHHActivateComponents(); -} - -if( typeof(BsscRegisterOnLoad) != "undefined" ) -{ - BsscRegisterOnLoad(BsHHActivXOnLoad); -} -//End to support previous HHActiveX invoking - -//Begin to support previous relative topics -//If webHelp needs Related Topics DHTMLcode, it's supposed to add it here -var gbPopupMenuTimeoutExpired = false; -var gbInPopupMenu = false; -var gbPopupMenuTopicList = null; -var gOlddocumentClick = null; - -////////////////////////////////////////////////////////////////////////////////////////// -// -// Popup Menu code -// -////////////////////////////////////////////////////////////////////////////////////////// - -var g_bIsPopupMenuInit = false; -function _WritePopupMenuLayer() -{ - if (!g_bIsPopupMenuInit) - { - if (gbBsNS4&&!gbBsNS6) { -//Do not try to write ininle styles for NS! NS can not handle it and will not stop downloading the html page... - document.write("
"); - } else{ - document.write(""); - if (!(gbBsNS4&&!gbBsNS6)) { - document.write(""); - } - } - g_bIsPopupMenuInit = true; - } -} - -//Seek for the bsscright frame -function _SeekFrameByName( cRoot, strName ) -{ - if( cRoot == null ) return null; - if( cRoot.frames == null ) return null; - if( cRoot.frames[strName] != null ) return cRoot.frames[strName]; - for (var i=0; i'; - } else { - strMenu += '' + gbPopupMenuTopicList[fn_arguments[i]].strTitle + ''; - } - strMenu += ''; - - if (isNaN(fn_arguments[i]) || (gbPopupMenuTopicList == null)) { - i += 2; - } else { - i += 1; - } - } - strMenu += ""; - - if (gbBsMac) { - // totally hack. because ie5 in mac need something. is one of them. mac is mad. - strMenu +="
"; - } - - var layerPopup = null; - var stylePopup = null; - var nEventX = 0; - var nEventY = 0; - var nWindowWidth = 0; - if (gbBsIE4 || gbBsOpera7) { - - layerPopup = getElement("PopupMenu"); - layerPopup.innerHTML = strMenu; - stylePopup = layerPopup.style; - - _BSPSGetClientSize(); - - // Get the position of the item causing the event (relative to its parent) - nEventX = window.event.clientX; - nEventY = window.event.clientY; - - if (nEventY + layerPopup.scrollHeight + 10 < gBsClientHeight) { - nEventY += document.body.scrollTop + 10; - } else { - nEventY = (document.body.scrollTop + gBsClientHeight) - layerPopup.scrollHeight - 20; - } - stylePopup.top = nEventY; - - var nPopupWidth = layerPopup.scrollWidth; - if (gbBsMac) { - nPopupWidth = 80; // we have no idea how to get the dynamic width of the popup. - } - if (nEventX + nPopupWidth + 20 > gBsClientWidth) { - if (gBsClientWidth - nPopupWidth < 5) { - stylePopup.left = 5; - } else { - stylePopup.left = gBsClientWidth - nPopupWidth - 5; - } - } else { - stylePopup.left = nEventX + document.body.scrollLeft + 20; - } - - stylePopup.visibility = "visible"; - if (!gOlddocumentClick && document.onclick) - gOlddocumentClick = document.onclick; - document.onclick = PopupMenu_HandleClick; - - } else if (gbBsNS6 || gbBsKonqueror3||gbBsSafari) { - layerPopup = getElement("PopupMenu"); - layerPopup.style.visibility = "hidden"; - - if (gbBsNS6) - { - var e = fn_arguments[0]; - nEventX = e.pageX; - nEventY = e.pageY; - } - else - { - nEventX = window.event.clientX; - nEventY = window.event.clientY; - } - _BSPSGetClientSize(); - layerPopup.innerHTML = strMenu; - - if (nEventY + layerPopup.offsetHeight + 20 < window.pageYOffset + gBsClientHeight) { - nEventY += 20; - } else { - nEventY = gBsClientHeight + window.pageYOffset - layerPopup.offsetHeight - 20; - } - - if (nEventX + layerPopup.offsetWidth + 20 > gBsClientWidth + window.pageXOffset) { - if (gBsClientWidth + window.pageXOffset - layerPopup.offsetWidth < 20) { - nEventX = 5; - } else { - nEventX = gBsClientWidth + window.pageXOffset - layerPopup.offsetWidth - 20; - } - } else { - nEventX += 20; - } - layerPopup.style.top = nEventY; - layerPopup.style.left = nEventX; - // set again to avoid the stupid frash in netscape 6. - layerPopup.innerHTML = strMenu; - layerPopup.style.visibility = "visible"; - //window.captureEvents(Event.MOUSEDOWN); - if (!gOlddocumentClick && document.onclick) - gOlddocumentClick = document.onclick; - window.onclick = PopupMenu_HandleClick; - } - else if (gbBsNS4) { - layerPopup = document.layers.PopupMenu; - layerPopup.visibility = "hide"; - stylePopup = layerPopup.document; - stylePopup.write(strMenu); - stylePopup.close(); - var e = fn_arguments[0]; - nEventX = e.pageX; - nEventY = e.pageY; - _BSPSGetClientSize(); - if (nEventY + layerPopup.clip.height + 20 < window.pageYOffset + gBsClientHeight) { - nEventY += 20; - } else { - nEventY = gBsClientHeight + window.pageYOffset- layerPopup.clip.height - 20; - } - layerPopup.top = nEventY; - - if (nEventX + layerPopup.clip.width + 20 > gBsClientWidth + window.pageXOffset) { - if (gBsClientWidth + window.pageXOffset - layerPopup.clip.width < 20) { - nEventX = 5; - } else { - nEventX = gBsClientWidth + window.pageXOffset - layerPopup.clip.width - 20; - } - } else { - nEventX += 20; - } - - layerPopup.left = nEventX; - - layerPopup.visibility = "show"; - - window.captureEvents(Event.MOUSEDOWN); - if (!gOlddocumentClick && document.onmousedown) - gOlddocumentClick = document.onmousedown; - window.onmousedown = PopupMenu_HandleClick; - } - - window.gbInPopupMenu = true; - window.gbPopupMenuTimeoutExpired = false; - setTimeout("PopupMenu_Timeout();", 100); - return false; -} - -function PopupMenu_Timeout() -{ - window.gbPopupMenuTimeoutExpired = true; -} - -function PopupMenu_Over(e) -{ - if (gbBsIE4||gbBsOpera7) - e.srcElement.className = "PopupOver"; - else if (gbBsNS6) - e.target.parentNode.className = "PopupOver"; - return; -} - -function PopupMenu_Out(e) -{ - if (gbBsIE4||gbBsOpera7) - e.srcElement.className = "PopupNotOver"; - else if (gbBsNS6) - e.target.parentNode.className = "PopupNotOver"; - return; -} - -function PopupMenu_HandleClick(e) -{ - if (window.gbPopupMenuTimeoutExpired) { - window.gbInPopupMenu = false; - if (gbBsNS4 && !gbBsNS6) { - window.releaseEvents(Event.MOUSEDOWN); - } - - var layerPopup = null; - if (gbBsNS4&&!gbBsNS6) { - layerPopup = document.layers.PopupMenu; - layerPopup.visibility = "hide"; - } else { - layerPopup = getElement("PopupMenu"); - layerPopup.style.visibility = "hidden"; - } - - if (gOlddocumentClick) - { - if (gbBsNS4 && !gbBsNS6) - document.onmousedown = gOlddocumentClick; - else - document.onclick = gOlddocumentClick; - } - } - return; -} - -function BSSCPopup_ClickMac() -{ - if ((!DHTMLPopupSupport()) && (gbBsIE4 || gbBsOpera7)) - { - var bClickOnAnchor = false; - var el; - if ((window.event != null) && - (window.event.srcElement != null)) - { - el = window.event.srcElement; - while (el != null) - { - if ((el.tagName == "A") || (el.tagName == "AREA")) { - bClickOnAnchor = true; - break; - } - if (el.tagName == "BODY") { - break; - } - el = getParentNode(el); - } - } - if (BSSCPopup_IsPopup()) - { - if (!bClickOnAnchor) { - parent.window.gPopupWindow = null; - self.close(); - } - } - else - { - bClosePopupWindow = true; - if ((bClickOnAnchor) && - (el.href) && - ((el.href.indexOf("javascript:BSSCPopup") != -1) || (el.href.indexOf("javascript:null") != -1) || (el.href.indexOf("javascript:void(0)") != -1))) - { - bClosePopupWindow = false; - } - if (bClosePopupWindow) - { - if (window.gPopupWindow != null && !window.gPopupWindow.closed ) - { - window.gPopupWindow.close(); - } - } - } - } -} - -function BsPopupOnClick() -{ - if (!gbBsIE4 && !gbBsOpera7) - return; - - BSSCPopup_ClickMac(); -} - -function _BSSCOnError(message) -{ - if(-1 != message.indexOf("denied") - || -1 != message.indexOf("Object required")) - return true; -} - -//End to support previous relative topics - -/// Section End - General and relative topics (JavaScript 1.0) - -/// Section Begin - Popup (JavaScript 1.0) -//Begin to support previous popup functions - -//variables used to isolate the browser type -var gBsStyVisShow = null; -var gBsStyVisHide = null; -var gBsClientWidth = 640; -var gBsClientHeight = 480; - -// here is the varible for judge popup windows size. these parameter is for IE5.0, it may need adjust for others. -var gBRateH_W = 0.618; // 1.618 Golden cut. -var gBMaxXOfParent = 0.8; -var gBMaxYOfParent = 0.8; -var gBscrollHeight = 16; -var gBscrollWidth = 16; -var gBpermitXDelta = 3; -var gBpermitYDelta = 3; - - -var arrayPopupURL = new Array(); -var arrayAbsPopupURL = new Array(); - -var arrayDirty = new Array(); - -function setAbsPopupURL(nIndex, strURL) -{ - arrayAbsPopupURL[nIndex] = strURL; -} - -function getAbsPopupURL(nIndex) -{ - if (nIndex == -1 || arrayAbsPopupURL.length <= nIndex) return null; - else - return arrayAbsPopupURL[nIndex]; -} - -function getPopupURL(nIndex) -{ - if (nIndex == -1 || arrayPopupURL.length <= nIndex) return null; - else - return arrayPopupURL[nIndex]; -} - -function getPopupID(nIndex) -{ - return gstrPopupID + nIndex; -} - -function getPopupShadowID(nIndex) -{ - return gstrPopupShadowID + nIndex; -} - -function getPopupTopicID(nIndex) -{ - return gstrPopupTopicID + nIndex; -} - -function getPopupIFrameID(nIndex) -{ - return gstrPopupIFrameID + nIndex; -} - -function getPopupIFrameName(nIndex) -{ - return gstrPopupIFrameName + nIndex; -} - - -function getPopupTopicStyle(nIndex) -{ - return getElement(getPopupTopicID(nIndex)).style; -} - -function getPopupShadowStyle(nIndex) -{ - return getElement(getPopupShadowID(nIndex)).style; -} - -function getPopupIFrame(nIndex) -{ - if (gbBsNS6) - return eval("window.frames['" + getPopupIFrameName(nIndex) + "']"); - else - return eval("document.frames['" + getPopupIFrameName(nIndex) + "']"); -} - -function getPopupDivStyle(nIndex) -{ - return getElement(getPopupID(nIndex)).style; -} - -function getPopupIFrameStyle(nIndex) -{ - return getElement(getPopupIFrameID(nIndex)).style; -} - - -function findDiv(strURL) -{ - for (var i = 0; i < arrayPopupURL.length; i ++ ) { - if (arrayPopupURL[i] == strURL) { - return i; - } - } - return -1; -} - -var gnToken = -1; -function takeToken() -{ - gnToken ++; - if (gnToken > 10000) gnToken = 0; - return gnToken; -} - -function IsValidToken(nToken) -{ - return (gnToken == nToken); -} - -function addDiv(strURL) -{ - for (var i = 0; i < arrayPopupURL.length; i ++) { - if (arrayPopupURL[i] == null) { - arrayPopupURL[i] = strURL; - return i; - } - } - arrayPopupURL[i] = strURL; - arrayDirty[i] = true; - return i; -} - -function setDirty() -{ - for (var i = 0; i < arrayPopupURL.length; i ++ ) - arrayDirty[i] = true; -} - -function IsDirty(nIndex) -{ - if (nIndex == -1) - return true; - else - if (arrayDirty.length > nIndex) - return arrayDirty[nIndex]; - else - return true; -} - -function hideAll() -{ - for (var i = 0; i < arrayPopupURL.length; i ++ ) - { - getPopupDivStyle(i).visibility = gBsStyVisHide; - getPopupIFrameStyle(i).visibility = gBsStyVisHide; - } -} - -function getCurrentPopupIFrame() -{ - for (var i = 0; i < arrayPopupURL.length; i ++) - if (getPopupDivStyle(i).visibility == gBsStyVisShow) - return getPopupIFrame(i); - return null; -} - -function setClear(nIndex) -{ - if (nIndex != -1) - arrayDirty[nIndex] = false; -} - -function _BSSCCreatePopupDiv(strURL) -{ - var nIndex = findDiv(strURL); - if (nIndex == -1 ) { - nIndex = addDiv(strURL); - BsPopup_CreateDiv(nIndex); - } - else { - if (IsDirty(nIndex)) { - if("object" == typeof(getPopupIFrame(nIndex).document)) - getPopupIFrame(nIndex).document.location.href = strURL; - } - } - return nIndex; -} - -//Here is the browser type -function _BSPSGetBrowserInfo() -{ - if (gbBsNS4&&!gbBsNS6) - { - gBsStyVisShow = "show"; - gBsStyVisHide = "hide"; - } - else - { - gBsStyVisShow = "visible"; - gBsStyVisHide = "hidden"; - } -} - -_BSPSGetBrowserInfo(); - -//Get client size info -function _BSPSGetClientSize() -{ - if (gbBsNS4||gbBsKonqueror3||gbBsSafari) - { - gBsClientWidth = innerWidth; - gBsClientHeight = innerHeight; - } - else if (gbBsIE4 || gbBsOpera7) - { - gBsClientWidth = document.body.clientWidth; - gBsClientHeight = document.body.clientHeight; - } -} - -var gstrPopupID = 'BSSCPopup'; -var gstrPopupShadowID = 'BSSCPopupShadow'; -var gstrPopupTopicID = 'BSSCPopupTopic'; -var gstrPopupIFrameID = 'BSSCPopupIFrame'; -var gstrPopupIFrameName = 'BSSCPopupIFrameName'; - -var gstrPopupSecondWindowName = 'BSSCPopup'; - -var gPopupWindow = null; -var gnPopupClickX = 0; -var gnPopupClickY = 0; - -var gnPopupScreenClickX = 0; -var gnPopupScreenClickY = 0; - -var gbPopupTimeoutExpired = false; - -function DHTMLPopupSupport() -{ - if (((gbBsIE4) && (!gbBsMac))||gbBsOpera7|| gbBsNS7) { - return true; - } - return false; -} - -function BSSCPopup_IsPopup() -{ - if (DHTMLPopupSupport() && (this.name.indexOf(gstrPopupIFrameName) != -1)) { - return true; - } else if ((gbBsNS4 || gbBsIE4 || gbBsOpera7) && (this.name.indexOf(gstrPopupID) != -1)) { - return true; - } else { - return false; - } -} - -// If there is a hyperlink in a popup window, display the hyperlink in -// the original window. (bsscright) -if (BSSCPopup_IsPopup() && !gbBsIE4 && !gbBsOpera7) { - document.write(""); -} - -// Local functions. -function BsPopup_CreateDiv(nIndex) -{ - if(!DHTMLPopupSupport()) - return; - // DO NOT SET Width and height for the div, otherwize it will make IE4 popup do not work when view the topic alone. - var strPopupDiv = ""; - - var objBody = getElementsByTag(document, "BODY")[0]; - if( typeof(objBody) != "object" ) - return; - - insertAdjacentHTML(objBody, "beforeEnd", strPopupDiv); -} - -function handleLoadNS() -{ - if (this.id) - { - var nIndex = parseInt(this.id.substring(gstrPopupIFrameID.length)); - BSSCPopup_PostWork(nIndex); - } -} - -function BSSCPopup_PostWork(nIndex) -{ - getPopupDivStyle(nIndex).visibility = gBsStyVisShow; - getPopupIFrameStyle(nIndex).visibility =gBsStyVisShow; - - setClear(nIndex); - window.gbPopupTimeoutExpired = true; - - BSSCPopup_ChangeTargettoParent(getPopupIFrame(nIndex).document); - if (gbBsNS6) - getPopupIFrame(nIndex).document.body.addEventListener("click",BSSCPopupClicked,false); - else - getPopupIFrame(nIndex).document.body.onclick = BSSCPopupClicked; - - if (!gbOrignalOnMouseDown && document.onmousedown) - gbOrignalOnMouseDown = document.onmousedown; - - if (gbBsNS6) - document.addEventListener("mousedown", BSSCPopupParentClicked,false); - else - document.onmousedown = BSSCPopupParentClicked; -} - -function BSSCPopup_Timeout(nIndex, nToken) -{ - if (!IsValidToken(nToken)) return; - - if (gbBsNS6||((getPopupIFrame(nIndex).document.readyState == "complete") && - (getPopupIFrame(nIndex).document.body != null))) { - BSSCPopup_PostWork(nIndex); - } else { - setTimeout("BSSCPopup_Timeout(" + nIndex + "," + nToken + ")", 100); - } -} - -// VH 08/10/00 -// do not change target to parent if the href is using javascript -function BSSCPopup_ChangeTargettoParent(tagsObject) -{ - var collA = getElementsByTag(tagsObject, "A"); - BSSCPopup_ChangeTargettoParent2(collA); - - var collIMG = getElementsByTag(tagsObject,"IMG"); - BSSCPopup_ChangeTargettoParent2(collIMG); -} - -function BSSCPopup_ChangeTargettoParent2(colls) -{ - if (colls != null) { - for (var j = 0; j < colls.length; j ++ ) - { - var strtemp = colls[j].href; - if (strtemp) - { - strtemp = strtemp.toLowerCase(); - if (strtemp.indexOf("javascript:") == -1) - if (colls[j].target == "") - colls[j].target = "_parent"; - } - } - } -} - -function BSPSPopupTopicWinHelp(strURL) -{ - _BSSCPopup(strURL); - return; -} - -function _BSSCPopup(strURL, width, height) -{ - var cuswidth = 0; - var cusheight = 0; - if ("undefined" != typeof(width) && "undefined" != typeof(height)) { - cuswidth = width; - cusheight= height; - } - - if (DHTMLPopupSupport()) { - var nToken = takeToken(); // take token first. - var nIndex = _BSSCCreatePopupDiv(strURL); - window.gbPopupTimeoutExpired = false; - var ntWidth = gBsClientWidth; - var ntHeight = gBsClientHeight; - _BSPSGetClientSize(); - if (ntWidth != gBsClientWidth || ntHeight != gBsClientHeight) { - setDirty(); - } - - if (IsDirty(nIndex)) { - if (gbBsMac) { - setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight +")", 400); - } else { - setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight + ")", 100); - } - } - else { - MoveDivAndShow(nIndex ,nToken, cuswidth, cusheight); - } - } else { - _BSSCPopup2(strURL, cuswidth, cusheight); - } - return; -} - -if (gbBsIE55) -{ - var ehlpdhtm_fOldBefureUnload = window.onbeforeunload; - var gnBsUnload=0; - window.onbeforeunload = window_BUnload; -} - -function window_BUnload() -{ - gnBsUnload++; - if (gnBsUnload>1) - return; - for (var i = 0; i < arrayPopupURL.length; i ++) - removeThis(document.all(getPopupID(i))); - arrayPopupURL.length = 0; - if (ehlpdhtm_fOldBefureUnload) - ehlpdhtm_fOldBefureUnload(); -} - -function _BSSCPopup2(strURL, width, height) -{ - if (gbBsOpera6&&gbBsMac) - { - var wmTemp = window.open(document.location.href, gstrPopupSecondWindowName); - wmTemp.close(); - setTimeout("_BSSCPopup3(\""+strURL+"\","+width+","+height+");",100); - } - else - _BSSCPopup3(strURL, width, height); -} - -function _BSSCPopup3(strURL, width, height) -{ - if (window.name == gstrPopupSecondWindowName) { - window.location = strURL; - } else { - if (!gbBsMac || !gbBsNS4) { - BSSCHidePopupWindow(); - } - var nX = 0; - var nY = 0; - var nHeight = 300; - var nWidth = 400; - if (width > 0 && height > 0) { - nHeight = height; - nWidth = width; - } - _BSPSGetClientSize(); - - nX = window.gnPopupScreenClickX; - nY = window.gnPopupScreenClickY; - - if (nY + nHeight + 40 > screen.availHeight) { - nY = screen.availHeight - nHeight - 40; - } - if (nX + nWidth + 40 > screen.availWidth) { - nX = screen.availWidth - nWidth - 40; - } - - // Launch a separate window - var strParam="titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=yes"; - if (gbBsNS) { - if (gbBsNS6) { - strParam += ",Height=" + nHeight + ",Width=" + nWidth; - strParam += ",screenX=" + nX + ",screenY=" + nY; - strParam += ",dependent=yes"; - } - else { - strParam += ",OuterHeight=" + nHeight + ",OuterWidth=" + nWidth; - strParam += ",screenX=" + nX + ",screenY=" + nY; - strParam += ",dependent=yes"; - } - } - else { - strParam += ",height=" + nHeight + ",width=" + nWidth; - strParam += ",left=" + nX + ",top=" + nY; - } - if (gbBsSafari) - { - if (window.gPopupWindow) - window.gPopupWindow.close(); - window.gPopupWindow = window.open(strURL, "", strParam); - window.gPopupWindow.name = gstrPopupSecondWindowName; - window.gPopupWindow.moveTo(nX, nY); - widnow.gPopupWindow.document.location.reload(); - } - else - { - var wmTemp=null; - if (gbBsKonqueror3) - { - if (window.gPopupWindow) - window.gPopupWindow.close(); - } - if (gbBsOpera&&gbBsMac) - { - wmTemp= window.open(document.location.href, "Temp", strParam); - } - window.gPopupWindow = window.open(strURL, gstrPopupSecondWindowName, strParam); - if (!gbBsIE) - window.gPopupWindow.focus(); - - if (wmTemp) - wmTemp.close(); - } - - if (gbBsNS4) - setEventHandle(); - else if (gbBsIE4 || gbBsOpera7||gbBsKonqueror3) - setTimeout("setPopupFocus();", 100); - } - return; -} - -function setEventHandle() -{ - window.gPopupWindow.captureEvents(Event.CLICK | Event.BLUR); - window.gPopupWindow.onclick = NonIEPopup_HandleClick; - window.gPopupWindow.onblur = NonIEPopup_HandleBlur; -} - -function setPopupFocus() -{ - window.gPopupWindow.focus(); -} - -function NonIEPopup_HandleBlur(e) -{ - window.gPopupWindow.focus(); -} - -function NonIEPopup_HandleClick(e) -{ - // Because navigator will give the event to the handler before the hyperlink, let's - // first route the event to see if we are clicking on a Popup menu in a popup. - document.routeEvent(e); - - // If a popup menu is active then don't do anything with the click - if (window.gPopupWindow.gbInPopupMenu) { - window.gPopupWindow.captureEvents(Event.CLICK); - window.gPopupWindow.onclick = NonIEPopup_HandleClick; - return false; - } - - // Close the popup window - if(e.target.href) - { - if(e.target.href.indexOf("javascript:")==-1) - { - if (e.target.target=="") - window.location.href = e.target.href; - else - window.open(e.target.href, e.target.target); - this.close(); - } - } - else - this.close(); - return false; -} - -function BSSCPopup_AfterLoad(nIndex, nToken, cuswidth, cusheight) -{ - if (!window.getPopupIFrame(nIndex).document) { - _BSSCPopup2(getPopupURL(nIndex), cuswidth, cusheight); - return; - } - - if (!IsValidToken(nToken)) return; - - if (gbBsNS6) - { - setAbsPopupURL(nIndex, window.getPopupIFrame(nIndex).document.location.href); // change URL to abs url. - BSSCPopup_ResizeAfterLoad(nIndex, nToken, cuswidth, cusheight); - return; - } - - if ((window.getPopupIFrame(nIndex).document.readyState == "complete") && - (window.getPopupIFrame(nIndex).document.body != null)) { - 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. - window.getPopupIFrame(nIndex).document.location = getPopupURL(nIndex); - setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight + ")", 200); - } - else - { - setAbsPopupURL(nIndex, window.getPopupIFrame(nIndex).document.location.href); // change URL to abs url. - BSSCPopup_ResizeAfterLoad(nIndex, nToken, cuswidth, cusheight); - } - } else { - setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight + ")", 200); - } -} - -function BSSCPopup_ResizeAfterLoad(nIndex, nToken, cuswidth, cusheight) -{ - if (window.gbPopupTimeoutExpired) return; - - if (!IsValidToken(nToken)) return; - - getPopupDivStyle(nIndex).visibility = gBsStyVisHide; - getPopupIFrameStyle(nIndex).visibility = gBsStyVisHide; - - // Determine the width and height for the window - _BSPSGetClientSize(); - - var size = new BSSCSize(0, 0); - - if (cuswidth <= 0 || cusheight <= 0) - BSSCGetContentSize(window.getPopupIFrame(nIndex), size); - else { - size.x = cuswidth; - size.y = cusheight; - } - - // Determine the width and height for the window - var nWidth = size.x; - var nHeight = size.y; - - // for small popup size, we should allow any size. - // The popup size should be ok if bigger than 0 - if (nWidth < 0 || nHeight < 0) return; // there must be something terribly wrong. - - getPopupDivStyle(nIndex).width = nWidth; - getPopupDivStyle(nIndex).height = nHeight; - - getPopupShadowStyle(nIndex).width = nWidth; - getPopupShadowStyle(nIndex).height = nHeight; - getPopupTopicStyle(nIndex).width = nWidth; - getPopupTopicStyle(nIndex).height = nHeight; - if (gbBsIE55) - { - getPopupShadowStyle(nIndex).width = nWidth + 2; - getPopupShadowStyle(nIndex).height = nHeight + 2; - getPopupTopicStyle(nIndex).width = nWidth + 2; - getPopupTopicStyle(nIndex).height = nHeight + 2; - } - - getPopupIFrameStyle(nIndex).width = nWidth; - getPopupIFrameStyle(nIndex).height = nHeight; - if (gbBsIE55 || gbBsNS6) - { - getPopupIFrameStyle(nIndex).top = 0; - getPopupIFrameStyle(nIndex).left = 0; - } - - var strURL = getPopupURL(nIndex); - if (strURL.indexOf("#") != -1&&gbBsNS6) - getPopupIFrame(nIndex).location.reload(); - else if (strURL.indexOf("#") != -1||gbBsNS6) - getPopupIFrame(nIndex).location.href = strURL; // reload again, this will fix the bookmark misunderstand in IE5. - - MoveDivAndShow(nIndex, nToken, cuswidth, cusheight); -} - -function getScrollLeft() -{ - if (document.body.scrollLeft) - return document.body.scrollLeft; - else if (window.pageXOffset) - return window.pageXOffset; - else - return 0; -} - -function getScrollTop() -{ - if (document.body.scrollTop) - return document.body.scrollTop; - else if (window.pageYOffset) - return window.pageYOffset; - else - return 0; -} - - -function MoveDivAndShow(nIndex, nToken, cuswidth, cusheight) -{ - if (window.getPopupIFrame(nIndex).document.location.href != getAbsPopupURL(nIndex)) { // if redirect, reload again. - window.getPopupIFrame(nIndex).document.location = getPopupURL(nIndex); - setTimeout("BSSCPopup_AfterLoad(" + nIndex + "," + nToken + "," + cuswidth + "," + cusheight + ")", 200); - return; - } - - // Determine the position of the window - var nClickX = window.gnPopupClickX; - var nClickY = window.gnPopupClickY; - var nTop = 0; - var nLeft = 0; - - var nWidth = parseInt(getPopupDivStyle(nIndex).width); - var nHeight = parseInt(getPopupDivStyle(nIndex).height); - - if (nClickY + nHeight + 20 < gBsClientHeight + getScrollTop()) { - nTop = nClickY + 10; - } else { - nTop = (getScrollTop() + gBsClientHeight) - nHeight - 20; - } - if (nClickX + nWidth < gBsClientWidth + getScrollLeft()) { - nLeft = nClickX; - } else { - nLeft = (getScrollLeft() + gBsClientWidth) - nWidth - 8; - } - - if (nTop < getScrollTop()) nTop = getScrollTop() + 1; - if (nLeft< getScrollLeft()) nLeft = getScrollLeft() + 1; - - getPopupDivStyle(nIndex).left = nLeft; - getPopupDivStyle(nIndex).top = nTop; - - // Set the location of the background blocks - getPopupShadowStyle(nIndex).left = 6; - getPopupShadowStyle(nIndex).top = 6; - if (gbBsIE55) - { - getPopupShadowStyle(nIndex).left = 4; - getPopupShadowStyle(nIndex).top = 4; - } - - if (gbBsMac&&gbBsIE4) { - // Total hack on the iMac to get the IFrame to position properly - getPopupIFrameStyle(nIndex).pixelLeft = 100; - getPopupIFrameStyle(nIndex).pixelLeft = 0; - // Explicitly call BSSCOnLoad because the Mac doesn't seem to do it - getPopupIFrame(nIndex).window.BSSCOnLoad(); - } - - if (gbBsNS6&&IsDirty(nIndex)) - getElement(getPopupIFrameID(nIndex)).addEventListener("load", handleLoadNS, false); - else - BSSCPopup_Timeout(nIndex , nToken ); - return; -} - -function BSSCSize(x, y) -{ - this.x = x; - this.y = y; -} - -function BSSCGetContentSize(thisWindow, size) -{ - if (!gbBsIE4 && !gbBsOpera7 && !gbBsNS4) - return; - - if ((gbBsMac&&gbBsIE4)||gbBsNS4||gbBsOpera7) { - size.x = 320; - size.y = 180; - return; - } - - // Resize the width until it is wide enough to handle the content - // The trick is to start wide and determine when the scrollHeight changes - // because then we know a scrollbar is necessary. We can then go back - // to the next widest size (for no scrollbar) - - var ClientRate = gBsClientHeight / gBsClientWidth; - - - var GoldenSize = new BSSCSize(0,0); - GoldenSize.x = gBsClientWidth * gBMaxXOfParent; - GoldenSize.y = gBsClientHeight *gBMaxYOfParent ; - - if (ClientRate > gBRateH_W) { - GoldenSize.y = GoldenSize.x * gBRateH_W; - } - else { - GoldenSize.x = GoldenSize.y / gBRateH_W; - } - - // Try to using parent specified max x. - var x = 0; - var maxgoldx = GoldenSize.x; - var maxx = gBsClientWidth * gBMaxXOfParent; - - // This double resize causes the document to re-render (and we need it to) - if (!gbBsIE5) - thisWindow.moveTo(10000,10000); // this is used to fix the flash on IE4. - - thisWindow.resizeTo(1, 1); - thisWindow.resizeTo(1, 1); - thisWindow.resizeTo(maxgoldx, thisWindow.document.body.scrollHeight + gBscrollHeight); - thisWindow.resizeTo(maxgoldx, thisWindow.document.body.scrollHeight + gBscrollHeight); - - var miny = thisWindow.document.body.scrollHeight + gBscrollHeight; - - 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 - { - thisWindow.resizeTo(maxx , thisWindow.document.body.scrollHeight + gBscrollHeight); - thisWindow.resizeTo(maxx , thisWindow.document.body.scrollHeight + gBscrollHeight); - - miny = thisWindow.document.body.scrollHeight + gBscrollHeight; - maxy = gBsClientHeight * gBMaxYOfParent; - - if (miny > maxy) { // the popup must have a scroll, OK let it be. - miny = maxy; - size.x = maxx; - size.y = maxy; - thisWindow.document.body.scroll = 'yes'; // At this time we do want to show scroll any more. so it will looks better a little. - } - else { // popup still can fit in the parent area by someway. now we choose the same h/w rate as parent. - size.y = miny; - - // downsize from maxx , now I try to using binary divide. - x = maxx; - deltax = -maxx/2; - //j = 0; - while (true) { - x = x + deltax; - thisWindow.resizeTo(x, miny); - thisWindow.resizeTo(x, miny); - diffy = thisWindow.document.body.scrollHeight + gBscrollHeight - x * ClientRate; - if (diffy > gBpermitYDelta ) // it is higher than wanted, so x need to be wide a little bitter - deltax = Math.abs(deltax) /2; - else if (diffy < -gBpermitYDelta) // it is shorter than wanted, so x need to be narrow a little bitter - deltax = -Math.abs(deltax) /2; - else - // the y is close enough to wanted. - break; - if (Math.abs(deltax) < gBpermitXDelta) // the next change is too slight and it can be ignore. - break; - } - size.x = thisWindow.document.body.scrollWidth; //+ gBscrollWidth; - size.y = thisWindow.document.body.scrollHeight;// + gBscrollHeight; - thisWindow.document.body.scroll = 'no'; - } - } - else { - if (thisWindow.document.body.scrollWidth > maxgoldx) { - size.x = maxx; - size.y = miny; - thisWindow.document.body.scroll = 'yes'; - } - else { - // downsize from maxgoldx , now I try to using binary divide. - x = maxgoldx; - deltax = -maxgoldx/2; - while (true) { - x = x + deltax; - thisWindow.resizeTo(x, miny); - thisWindow.resizeTo(x, miny); - diffy = thisWindow.document.body.scrollHeight + gBscrollHeight - x * gBRateH_W; - if (diffy > gBpermitYDelta ) // it is higher than wanted, so x need to be wide a little bitter - deltax = Math.abs(deltax) /2; - else if (diffy < -gBpermitYDelta) // it is shorter than wanted, so x need to be narrow a little bitter - deltax = -Math.abs(deltax) /2; - else - // the y is close enough to wanted. - break; - if (Math.abs(deltax) < gBpermitXDelta) // the next change is too slight and it can be ignore. - break; - } - size.x = thisWindow.document.body.scrollWidth; //+ gBscrollWidth; - size.y = thisWindow.document.body.scrollHeight ; - thisWindow.document.body.scroll = 'no'; // At this time we do not want to show scroll any more. so it will looks better a little. - thisWindow.resizeTo(size.x, size.y); - if (thisWindow.document.body.scrollWidth > size.x) - { - size.x = thisWindow.document.body.scrollWidth; - } - if (thisWindow.document.body.scrollHeight > size.y) - { - size.y = thisWindow.document.body.scrollHeight; - } - } - } - thisWindow.resizeTo(size.x, size.y); - thisWindow.resizeTo(size.x, size.y); - return; -} - -function BSSCPopupParentClicked() -{ - if (!window.gbPopupTimeoutExpired) { - return false; - } - - document.onmousedown = gbOrignalOnMouseDown; - - // Simply hide the popup - hideAll(); - - window.gbPopupTimeoutExpired = false; - - return true; -} - -function isInsideHyperLink(obj) -{ - if (obj&&obj!=getParentNode(obj)) - { - if (obj.tagName=="A"||obj.tagName=="IMG") - return true; - else - return isInsideHyperLink(getParentNode(obj)); - } - else - return false; -} - -function BSSCPopupClicked(e) -{ - if (!window.gbPopupTimeoutExpired) { - return false; - } - - var popupIFrame = getCurrentPopupIFrame(); - if (popupIFrame == null) { - return true; - } - - if (gbBsIE4 && (!((popupIFrame.window.event != null) && - (popupIFrame.window.event.srcElement != null) && - isInsideHyperLink(popupIFrame.window.event.srcElement)))) { - document.onmousedown = gbOrignalOnMouseDown; - - // Simply hide the popup - hideAll(); - window.gbPopupTimeoutExpired = false; - return true; - } - else if (gbBsNS6 && (!((e != null) && - (e.target!= null) && isInsideHyperLink(e.target)))) - { - document.addEventListener("mousedown", gbOrignalOnMouseDown,false); - // Simply hide the popup - hideAll(); - window.gbPopupTimeoutExpired = false; - return true; - } -} - -//trace the mouse over's position for hotspot -function BSPSPopupOnMouseOver(event) -{ - if (gbBsIE4 || gbBsOpera7||gbBsKonqueror3) { - window.gnPopupClickX = event.clientX + getScrollLeft(); - window.gnPopupClickY = event.clientY + getScrollTop(); - window.gnPopupScreenClickX = event.screenX; - window.gnPopupScreenClickY = event.screenY; - } else if (gbBsSafari) { - window.gnPopupClickX = event.clientX + getScrollLeft(); - window.gnPopupClickY = event.clientY + getScrollTop(); - window.gnPopupScreenClickX = event.screenX + window.screenX; - window.gnPopupScreenClickY = event.screenY + window.screenY; - } else if (gbBsNS4) { - window.gnPopupClickX = event.pageX - window.pageXOffset; - window.gnPopupClickY = event.pageY - window.pageYOffset; - window.gnPopupScreenClickX = event.screenX - window.pageXOffset; - window.gnPopupScreenClickY = event.screenY - window.pageYOffset; - } -} - -function BSSCHidePopupWindow() -{ - if (window.gPopupWindow != null) { - if (gbBsNS4) { - if ((typeof window.gPopupWindow != "undefined") && (!window.gPopupWindow.closed)) { - window.gPopupWindow.close(); - window.gPopupWindow = null; - } - } - } - return; -} - -// Add the PopupOnClick to the onclick array. -if (typeof(BsscRegisterOnClick) != "undefined") -{ - BsscRegisterOnClick(BsPopupOnClick); -} -//End to support previous popup functions - -/// Section End - Popup (JavaScript 1.0) - -/// Section Begin - Embedded Stub (JavaScript 1.0) - -function BSSCCreatePopupDiv() -{ - return; -} - -function WritePopupMenuLayer() -{ - if (BsscHasExtJs()) {_WritePopupMenuLayer();} -} - -function BSSCPopup(strURL, width, height) -{ - var re = new RegExp("'", 'g'); - strURL = strURL.replace(re, "%27"); - - if (BsscHasExtJs()) { - _BSSCPopup(strURL, width, height); - }else{ - //Create a temporary window first to ensure the real popup comes up on top - var wndTemp = null; - if (!gbBsNS3) { - wndTemp = window.open("", "temp", "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=yes,height=3,width=4"); - } - // Create the real popup window - var wndPopup = window.open(strURL, "BSSCPopup", "titlebar=no,toolbar=no,status=no,location=no,menubar=no,resizable=yes,scrollbars=yes,height=300,width=400"); - // Close the temporary - if (!gbBsNS3) { - wndTemp.close(); - } else { - wndPopup.focus(); - } - } -} - -var gbWndTemp = null, gbWndPopupLinks = null; -var gbstrParaTotal = ""; - -function PopupMenu_Invoke() -{ - if (typeof(wfRelatedTopic) == 'function' && typeof(IsFlashSupported) == 'function') - { - if (Number(gsSkinVersion) > 2 && IsFlashSupported()) - { - return wfRelatedTopic(PopupMenu_Invoke.arguments); - } - } - if (BsscHasExtJs()) { - return _PopupMenu_Invoke(PopupMenu_Invoke.arguments); - } - if (gbBsNS3Before || gbBsIE3Before ) { - var argLen = PopupMenu_Invoke.arguments.length; - if (argLen < 5) { - window.document.location.href = PopupMenu_Invoke.arguments[3]; - return false; - } - gbWndTemp = null; - gbWndPopupLinks = null; - gbstrParaTotal = ""; - for (var i = 0; i < (argLen - 2) / 2; i++) { - var strParaLine = ""; - if (gbBsNS2){ - strParaLine += "" - strParaLine += PopupMenu_Invoke.arguments[2 * i + 2]; - strParaLine += ""; - } else { - strParaLine += ""); - if (gbBsNS2) { - gbWndPopupLinks.document.write(""); - } else { - //YJ: IE301,302 and NS3.x works fine - gbWndPopupLinks.document.write("<"); - gbWndPopupLinks.document.write("script>"); - gbWndPopupLinks.document.write("function gotoUrl(aUrl) {opener.window.location=aUrl; close();}"); - gbWndPopupLinks.document.write("<"); - gbWndPopupLinks.document.write("/script>"); - } - gbWndPopupLinks.document.write(""); - gbWndPopupLinks.document.write(gbstrParaTotal); - gbWndPopupLinks.document.write(""); - gbWndPopupLinks.document.close(); - - // Close the temporary - if (!gbBsNS3 && gbWndTemp != null) { - gbWndTemp.close(); - }else { - gbWndPopupLinks.focus(); - } - - return true; - } - return false; -} - -/// Section End - Embedded Stub (JavaScript 1.0) - -//// Segment End -- (JavaScript 1.0) - -//// Segment Begin -- (JavaScript 1.2) -/// Section Begin - kadov DHTM (JavaScript 1.2) - -//Begin to support extended and dropdown text effects. -function kadovIsParagraph(el) -{ - return( el.tagName == "P" || el.tagName.indexOf("H") == 0 ) ? true : false; -} - -function kadovInitEachChild(el) -{ - for(var i=0; i "") ) - child.style.setAttribute( "x-on-pageload", "" ); - } - - var href = child.getAttribute("href") - if( href != null && href > "" && href.indexOf( "BSSCPopup" ) >= 0 ) - kadovFilePopupInit(child.id); // Init for Popup - else if( child.className == "dropspot" || child.className == "expandspot" || - child.className == "glossterm" ) - kadovTextPopupInit(child.id);// Init for Expanding/Glossary or DropDown text - else if( child.className == "trigger") - kadovInitTrigger(child.id);// Init for Trigger - else - { - kadovInitEffects(child.id);// Init for DHTML effects - CEngine.SetOneTargetInitialState( child.id ); - } - } - - if( (child.tagName == "IMG") && (child.getAttribute("dynsrc") > "") ) - child.start = "mouseover";// to start a AVI file. fileopen doesn't work - - kadovInitEachChild(child); - } -} - -function kadovRetrieveTextInner(el) -{ - var x = ""; - if( (!el) || (el.tagName == "!") || (el.tagName == "SCRIPT" )) - return x; - - if( kadovIsParagraph(el) ) - { - var strNewID = " "; - if( el.id != "" ) - strNewID += "id=" + el.id + "_NewSpan "; - x = "" + el.innerHTML + ""; - } - else - { - for(var i=0; i 0 ) - if( (nTagClose - nTagOpen) != nDistance ) - return strRawHTML; - - var strCleanOnce = strRawHTML.substring(0, nTagOpen) + strRawHTML.substr(nTagClose + strTagClose.length) ; - return kadovRetrieveCleanHTML( strCleanOnce, strTagOpen, strTagClose ); -} - -function kadovAdjustObjectTag(strRawHTML, nStartPos) -{// adjust object tag for related topics HTML control, because innerHTML misses out the item settings - - //Is there any DTC? - var strDTCTagOpen = ''; - var nDTCTagOpen = strRawHTML.indexOf( strDTCTagOpen, nStartPos ); - if( nDTCTagOpen < 0 ) - return strRawHTML; - var nDTCTagClose = strRawHTML.indexOf( strDTCTagClose, nDTCTagOpen ); - if( nDTCTagClose < nDTCTagOpen) - return strRawHTML; // no Design Time Controls; - - //Is the DTC HTML Help Control? - var strRTObjTagOpen = 'classid=clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11'; - var strRTObjTagClose = ''; - var nRTObjTagOpen = strRawHTML.indexOf( strRTObjTagOpen, nDTCTagOpen ); - if( nRTObjTagOpen < nDTCTagOpen ) - return strRawHTML; - var nRTObjTagClose = strRawHTML.indexOf( strRTObjTagClose, nRTObjTagOpen ); - if( nRTObjTagClose < nRTObjTagOpen ) - return strRawHTML; // is not a HTML help control - - // Is it a related Topics html help control? - var strRTObjLabel = ''; - } - - // to insert the reconstructed item params into runtime object tag - var strAdjustedHTML = strRawHTML.substring(0,nRTObjTagClose) + strRunTimeItemParam + strRawHTML.substring(nRTObjTagClose, strRawHTML.length); - return kadovAdjustObjectTag(strAdjustedHTML, nDTCTagClose + strDTCTagClose.length); -} - -function kadovTextPopupOnLoad( el ) -{ - if( typeof(el) == "string" ) - el = getElement(el); - - var src = el.getAttribute( "x-use-popup" ); - var bNeedMove=true; - if(!src&&el.id) - { - for (var i=0;i"); - strCleanHTML = kadovRetrieveCleanHTML(strCleanHTML, ""); - - //work around the bug in HH.exe that highlight the phrases when use Search tab - //this approach is just removing the tag inserted by Microsoft in the runtime - strCleanHTML = kadovRetrieveCleanHTML(strCleanHTML, "", 52); - - var strStyle = " style='display:none; position:relative;"; - var newDiv = "
" + strCleanHTML + "
"; - - removeThis(srcDiv); // empty the original DIV tag - var elParentPra = kadovFindParentParagraph(el); - if( elParentPra ) - insertAdjacentHTML(elParentPra, "afterEnd", newDiv ); - } - else if( type == "expanding" ) - { - var inner = kadovRetrieveTextInner(srcDiv); - if( inner == "" ) - inner = srcDiv.innerHTML; - var strAdjust = kadovAdjustObjectTag(inner,0); - var strCleanHTML = kadovRetrieveCleanHTML(strAdjust, ""); - strCleanHTML = kadovRetrieveCleanHTML(strCleanHTML, ""); - var strClassName = (el.className == "glossterm") ? "glosstext" : "expandtext"; - var newSpan = ""; - removeThis(srcDiv); // empty the original DIV tag - insertAdjacentHTML(el, "afterEnd", newSpan ); - } - } - } - else - { - srcDiv.style.display = "none"; - } - return 0; -} - -function getElementsByTag(obj,sTagName) -{ - if(obj.getElementsByTagName) - return obj.getElementsByTagName(sTagName); - else if(obj.all) - return obj.all.tags(sTagName); - return null; -} - -function getElement(sID) -{ - if(document.getElementById) - return document.getElementById(sID); - else if(document.all) - return document.all(sID); - return null; -} - -function getParentNode(obj) -{ - if(obj.parentNode) - return obj.parentNode; - else if(obj.parentElement) - return obj.parentElement; - return null; -} - -function getChildNodes(obj) -{ - if(obj.childNodes) - { - var children = new Array(); - for (var i = 0; i < obj.childNodes.length; i++) - { - if (obj.childNodes[i].nodeType == 1) - children[children.length] = obj.childNodes[i]; - } - return children; - } - else if(obj.children) - return obj.children; - return null; -} - -function removeThis(obj) -{ - if(obj.parentNode) - obj.parentNode.removeChild(obj); - else - obj.outerHTML=""; -} - -function kadovTextPopup( el ) -{ - if (!gbBsIE4 && !gbBsOpera7 && !gbBsSafari && !gbBsNS6 && !gbBsKonqueror3 ) - return; - - var bNeedMove=true; - - if (window.event) - window.event.cancelBubble = true; - - if( typeof(el) == "string" ) - el = getElement(el); - - if (!el||el==window) - return; - - var src = el.getAttribute( "x-use-popup" ); - if(!src&&el.id) - { - for (var i=0;i= 0 && nNext < values.length ) - { - functions[nIdx] = values.substr( nStart, nNext-nStart+1); - nStart = nNext + 1; - nIdx++; - nNext = values.indexOf( "\)", nStart); - } - - for( var i=0; i= 0 ) - { - nPageClick = arrForClickCount[j].indexOf("="); - if( nPageClick > 0 ) - { - nClickTimes = arrForClickCount[j].substring( nPageClick + 1, arrForClickCount[j].length) * 1; - break; - } - } - } - var args = srcargs; - if( j < arrForClickCount.length ) - {// to strip out the "clicks=99" from the arguments string - args = ""; - for( var k = 0; k < arrForClickCount.length; k ++ ) - { - if( k != j ) - { - args += arrForClickCount[k]; - if( k < arrForClickCount.length - 1 ) - args += ","; - } - } - } - bsscFXInit( null, id, translatedProp, fnname, args, nClickTimes ); - } -} - -function kadovTranslateProp( prop ) -{ - switch( prop ) - { - case "x-on-hover" : return "bsschover"; - case "x-on-pageclick" : return "bsscpageclick"; - case "x-on-pageload" : return "bsscpageload"; - case "x-on-trigger-1" : return "bssctrigger1"; - case "x-on-trigger-2" : return "bssctrigger2"; - } - return null; -} -//End to convert iWrite format to RoboEditor Format for DHTML effects - -//Begin the definition of one entry to DHTML effects -function bsscFXInit( trigger_ID, target_ID, event_type, - action_type, action_setting, event_addional ) -{ - if( (!gbBsWindows && !gbBsSunOS && !(gbBsMac&&gbBsIE5)) || typeof(target_ID) != "string" )//MUST have a target_ID - return; // we don't support Navigator yet - - if( typeof(event_type) == "string" ) - event_type = event_type.toLowerCase(); - if( typeof(action_type) == "string" ) - action_type = action_type.toLowerCase(); - if( typeof(action_setting) == "string" ) - action_setting = action_setting.toLowerCase(); - - // to get the target element then add it to the target list - var eleTarget = CCSSP.GetObject( target_ID ); - if( (eleTarget != null) && (event_type != null) && (action_type != null) ) - { - CEngine.AddOneTarget( target_ID, eleTarget ); - CEngine.BuildTargetObject(target_ID, event_type, action_type, action_setting, event_addional); - } - - // to validate the trigger_ID parameter - if( typeof(trigger_ID) == "string" && trigger_ID != "" ) - CEngine.BuildTriggerObject( trigger_ID, target_ID ); -} -//End the definition of one entry to DHTML effects - -/// Section End - kadov DHTM (JavaScript 1.2) - -/// Section Begin - CCSSP DHTM (JavaScript 1.2) - -//Begin JavaScript libary for cross-platform positioning object. -function CCSSP(){} // constructor of CCSSP class - -CCSSP.GetObject = function( obj ) -{//convert object name string or reference into a valid object reference - if( typeof(obj) == "object" ) - return obj; - else if( typeof(obj) == "string" && obj != "") - { - if( gbBsNS4 ) - return eval("document." + obj); - else - return eval("document.all(\"" + obj + "\")"); - } - else - return null; -} - -CCSSP.MoveObjectTo = function(obj, x, y) -{//positioning an object at a specific pixel coordinate - if( gbBsNS4 ) - obj.moveTo(x,y); - else - { - obj.style.pixelLeft = x; - obj.style.pixelTop = y; - } -} - -CCSSP.MoveObjectBy = function(obj, dx, dy) -{//moveing a object by x and/or y pixel - if( gbBsNS4 ) - obj.moveBy(dx,dy); - else - { - obj.style.pixelLeft += dx; - obj.style.pixelTop += dy; - } -} - -CCSSP.SetObjectBGColor = function(obj, color) -{//set the background color of an object - if( gbBsNS4 ) - obj.bgColor = color; - else - obj.style.backgroundColor = color; -} - -CCSSP.ShowObject = function(obj, bShow) -{// set the object to be visible or invisible - if( gbBsNS4 ) - obj.visibility = (bShow == true) ? 'show' : 'hide'; - else - obj.style.visibility = (bShow == true) ? 'visible' : 'hidden';// when hidden, it still occupy some space. -} - -CCSSP.GetObjectLeft = function(obj) -{// retrieve the x coordinate of a posionable object - if( gbBsNS4 ) - return obj.left; - else - return obj.style.pixelLeft; -} - -CCSSP.GetObjectTop = function(obj) -{// retrieve the y coordinate of a posionable object - if( gbBsNS4 ) - return obj.top; - else - return obj.style.pixelTop; -} - -CCSSP.GetObjectContainLeft = function(obj) -{// retrieve the x coordinate of a posionable object relative to it's parent element - if( gbBsNS4 ) - return obj.pageX; - else - { - if( obj == document.body ) - return obj.clientLeft; - else - return obj.offsetLeft; - } -} - -CCSSP.GetObjectWindowLeft = function(obj) -{// retrieve the x coordinate of a posionable object relative to browser window - if( gbBsNS4 ) - return obj.pageX; - else - { - var nOffsetWindowLeft = 0; - for(var element = obj; element; element = element.offsetParent) - nOffsetWindowLeft += CCSSP.GetObjectContainLeft(element); - return nOffsetWindowLeft; - } -} - -CCSSP.GetObjectContainTop = function(obj) -{// retrieve the y coordinate of a posionable object relative to it's parent element - if( gbBsNS4 ) - return obj.pageY; - else - { - if( obj == document.body ) - return obj.clientTop; - else - return obj.offsetTop; - } -} - -CCSSP.GetObjectWindowTop = function(obj) -{// retrieve the y coordinate of a posionable object relative to browser window - if( gbBsNS4 ) - return obj.pageY; - else - { - var nOffsetWindowTop = 0; - for(var element = obj; element; element = element.offsetParent) - nOffsetWindowTop += CCSSP.GetObjectContainTop(element); - return nOffsetWindowTop; - } -} - -CCSSP.GetObjectHeight = function(obj) -{// retrieve the height of a posionable object - if( gbBsNS4 ) - return obj.clip.height; - else - return obj.offsetHeight; -} - -CCSSP.GetObjectWidth = function(obj) -{// retrieve the width of a posionable object - if( gbBsNS4 ) - return obj.clip.width; - else - return obj.offsetWidth; -} - -CCSSP.RegisterEventHandler = function( srcObj, rawEventName, funcHandler ) -{ // to add the "funcHandler" as the "rawEventName" 's handler to the "srcObj" object,the original event handler will be combined - if (gbBsNS4 && !gbBsNS6) - return ; - - var oldHandler = ""; - - if (gbBsMac &&gbBsIE4&&!gbBsIE5) - { - if (typeof(srcObj[rawEventName.toLowerCase()])=="unknown") - { //search for - - - - - - - - - -

Extrusion

- -

Extrusion is a type of surface meshing by generation from discretized - lines. It is used to build mesh elements of plus one dimension than the - swept ones. Each swept 1D element produces one or more quadrangles (or - triangles if one node of a rotated element lays on the revolution axis).

- -

 

- -

To use extrusion:

- -

 

- -

1. From the Modification - menu choose the Extrusion item - or click button in the toolbar. The following dialog box - will appear:

- -

 

- -

 

- -

 

- -

2. In this dialog box you should select

- -
    - -
  • the type of elements - which will be extruded (1D or 2D),

  • - -
  • specify the IDs of - the elements which will be extruded by selecting them in the 3D viewer - or select the whole mesh or submesh,

  • - -
  • specify the vector - along which the elements will be extruded,

  • - -
  • number of steps

  • -
- -

 

- -

3. Click the Apply - or OK button.

- -

 

- -

 

- - --- - - - -
-

-

- -

 

- -
- -

 

- - - - diff --git a/doc/salome/gui/SMESH/extrusion_along_a_path.htm b/doc/salome/gui/SMESH/extrusion_along_a_path.htm deleted file mode 100755 index 74b811ab6..000000000 --- a/doc/salome/gui/SMESH/extrusion_along_a_path.htm +++ /dev/null @@ -1,378 +0,0 @@ - - - - - -Extrusion along a path - - - - - - - - - - - - - -

Extrusion along a path

- -

In principle, Extrusion along a path - works in the same way as Extrusion, - the main difference is that we define not a vector, but a path of extrusion - which must be a meshed edge. To get an idea of how this algorithm works, - examine several examples, starting from the most simple case of extrusion - along a straight edge. In all examples the same mesh will be extruded - along different paths and with different parameters. This sample 2D mesh - has two quadrangle faces and seven edges. Look at the picture, where white - digits are the node numbers and green are the element numbers:

- -

.

- -

 

- -
    - -
  • Extrusion along - a straight edge (not using base point or angles)

  • -
- - --- - - - -
-

-

- -

   

- -

The left image shows a 1D path mesh, built - on a linear edge, and the initial 2D mesh. The right image shows the result - of extrusion of two edges (#1 and #2) of the initial mesh along the path. - Node #1 of path mesh has been selected as Start - node.

- -

 

- -
    - -
  • Extrusion along - a curvilinear edge (with and without angles)

  • -
- - ---- - - - - - - - - - -
-

-

-

-

The left image shows a 1D path mesh, built on curvilinear edge, and - the initial  2D - mesh.

-

The central image shows the result of extrusion of one edge (#2) of - the initial mesh along the path.  Node - #1 of path mesh has been selected as Start - node.

-

The same, but using angles {45, 45, 45, 0, -45, -45, -45}

- -

 

- -
    - -
  • Extrusion - along a sub-mesh.

  • -
- - --- - - - -
-

-

- -

 

- -

In this example the path mesh has been built - on a wire (polyline with six edges). The first edge of the wire was used - as Shape (edge), node #1 as Start node. The angles have been defined - as {10, 10, 10}. The middle edge (#4) of the initial mesh has been extruded.

- -

 

- -
    - -
  • Extrusion - of 2d elements along a sub-mesh.

  • -
- - --- - - - -
-

-

- -

 

- -

This extrusion bases on the same path mesh - as in the previous example but the third edge of the wire was set as Shape (edge) and node #4 as Start - node. Please note, that the extrusion has been done in direction - from node #4 to node #3, i.e. against the wire direction. In this example - both faces of the initial mesh have been extruded.

- -

 

- -
    - -
  • Extrusion of 2d elements - along a closed path.

  • -
- - ---- - - - - - - - - - -
-

-

-

-

The left image shows a path mesh built on a closed edge (circle).

-

The central image shows the result of extrusion of both faces of the - initial mesh. Note, that no sewing has been done, so, there are six coincident - nodes and two coincident faces in the resulting mesh.

-

The same, but using angles {45, -45, 45, -45, 45, -45, 45, -45}

- -

 

- -

 

- -

To use Extrusion along a path:

- -

1. From the Modification - menu choose the Extrusion along - a path item or click button in the toolbar. The - following dialog box will appear:

- -

 

- -

- -

 

- -

2. In the dialog box you should  

- -
    - -
  • select the type of - elements which will be extruded (1D or 2D),

  • - -
  • specify the IDs - of the elements which will be extruded by selecting them in the - 3D viewer or Select the whole mesh, submesh - or group,

  • - -
  • define the Path - along which the elements will be extruded,

  • -
- -

Path definition consists of several elements -

- -
    - -
  • Mesh - - containing a 1D sub-mesh on the edge, - along which proceeds the extrusion.

  • - -
  • Shape - (edge) - as the mesh can be complex, - the edge is used to define the sub-mesh for the path.

  • - -
  • Start - node -  the - first or the last node on the edge. It is used to define the direction - of extrusion.

  • -
- -

 

- -

3. There are two optional parameters, which - can be very useful.

- -
    - -
  • If the path of extrusion - is curvilinear, at each iteration the extruded shape is rotated to keep - its initial angularity to the curve. By default, the Base - Point around which the shape is rotated is the mass center of the - shape, however, you can specify any point as the Base - Point and the shape will be rotated with respect to this point.

  • - -
  • The shape can also - be rotated around the path to get the resulting mesh in a helical fashion. - You can set the values of angles at the right, add them to the list of - angles at the left by pressing the button and remove them - from the list by pressing the button.

  • -
- -

4. Click the Apply - or OK button. Mesh edges - will be extruded into faces, faces into volumes. The external surface - of the resulting 3d mesh (if faces have been extruded) is covered with - faces, and corners with edges. If the path is closed, the resulting mesh - can contain duplicated nodes and faces, because no sewing is done.

- -

 

- -

 See - Also a sample TUI Script of an Extrusion - along a Path operation.  

- -

 

- -

 

- - - - diff --git a/doc/salome/gui/SMESH/files/viewing_mesh_info.htm b/doc/salome/gui/SMESH/files/viewing_mesh_info.htm index e6a9ffb21..79ea7f764 100755 --- a/doc/salome/gui/SMESH/files/viewing_mesh_info.htm +++ b/doc/salome/gui/SMESH/files/viewing_mesh_info.htm @@ -23,8 +23,11 @@ img_whs6 { border:none; width:271px; height:269px; float:none; border-style:none img_whs7 { border:none; width:22px; height:27px; border-style:none; } img_whs8 { border:none; border-style:none; width:451px; height:506px; float:none; } img_whs9 { border:none; width:866px; height:287px; float:none; border-style:none; } -p.whs10 { margin-left:0px; } -p.whs11 { margin-left:80px; } +p.whs8 { margin-left:0px; } +p.whs9 { margin-left:48px; } +img_whs10 { border:none; width:310px; height:391px; float:none; border-style:none; } +img_whs11 { border:none; width:310px; float:none; height:391px; border-style:none; } +p.whs12 { margin-left:80px; } --> - - - - - - - - - - -

Free borders

- -

This mesh quality control highlights borders of faces - consisting of edges belonging to one face only.

- -

 

- -

 

- -

 

- -

In this picture the free borders are displayed in white.

- -

 

- -

See Also - a sample TUI Script of a Free - Borders quality control operation.  

- -

 

- - - - diff --git a/doc/salome/gui/SMESH/free_edges.htm b/doc/salome/gui/SMESH/free_edges.htm deleted file mode 100755 index fe7146d12..000000000 --- a/doc/salome/gui/SMESH/free_edges.htm +++ /dev/null @@ -1,122 +0,0 @@ - - - - - -Free_edges - - - - - - - - - - - - - -

Free edges

- -

  This - mesh quality control highlights borders of  elements - of mesh consisting of edges belonging to one element of mesh only.

- -

 

- -

- -

 

- -

In this picture some elements of mesh have - been deleted and the "holes" are outlined in red.

- -

 

- -

See Also - a sample TUI Script of a Free - Edges quality control operation.  

- -

 

- - - - diff --git a/doc/salome/gui/SMESH/grouping_elements.htm b/doc/salome/gui/SMESH/grouping_elements.htm deleted file mode 100755 index 0231e5df7..000000000 --- a/doc/salome/gui/SMESH/grouping_elements.htm +++ /dev/null @@ -1,662 +0,0 @@ - - - - - -Grouping Elements - - - - - - - - - - - -

Grouping Elements

- -

Create a Standalone Group

- -

import SMESH_mechanic

- -

 

- -

smesh  = - SMESH_mechanic.smesh

- -

mesh   = - SMESH_mechanic.mesh

- -

salome = SMESH_mechanic.salome

- -

 

- -

# Get ids of all faces - with area > 100

- -

aFilter = smesh.GetFilter(smesh.FACE, - smesh.FT_Area, smesh.FT_MoreThan, 100.)

- -

 

- -

anIds = mesh.GetIdsFromFilter(aFilter) -

- -

 

- -

# create a group consisting - of faces with area > 100

- -

 

- -

aGroup = mesh.MakeGroupByIds("Area - > 100", smesh.FACE, anIds)

- -

 

- -

salome.sg.updateObjBrowser(1) -

- -

 

- -

- -

Create a Group on Geometry

- -

import salome

- -

import geompy

- -

import smesh

- -

 

- -

# create a box

- -

box = geompy.MakeBox(0., - 0., 0., 100., 100., 100.)

- -

geompy.addToStudy(box, - "box")

- -

 

- -

# add the first face - of the box to the study

- -

subShapeList - = geompy.SubShapeAll(box, geompy.ShapeType["FACE"])

- -

face = subShapeList[0]

- -

geompy.addToStudyInFather(box, - face, "face 1")

- -

 

- -

# create group of edges - on the face

- -

aGeomGroupE - = geompy.CreateGroup(face, geompy.ShapeType["EDGE"])

- -

geompy.AddObject(aGeomGroupE, - 3)

- -

geompy.AddObject(aGeomGroupE, - 6)

- -

geompy.AddObject(aGeomGroupE, - 8)

- -

geompy.AddObject(aGeomGroupE, - 10)

- -

geompy.addToStudyInFather(face, - aGeomGroupE, "Group of Edges")

- -

 

- -

# create quadrangle - 2D mesh on the box

- -

quadra - = smesh.Mesh(box, "Box : quadrangle 2D mesh")

- -

algo1D = quadra.Segment()

- -

quadra.Quadrangle()

- -

algo1D.NumberOfSegments(7) -

- -

 

- -

# compute the mesh

- -

quadra.Compute()

- -

 

- -

# create SMESH group - on the face with name "SMESHGroup1"

- -

aSmeshGroup1 - = quadra.GroupOnGeom(face, "SMESHGroup1")

- -

 

- -

# create SMESH group - on <aGeomGroupE> with default name

- -

aSmeshGroup2 = quadra.GroupOnGeom(aGeomGroupE) -

- -

 

- -

salome.sg.updateObjBrowser(1) -

- -

Edit a Group

- -

import SMESH_mechanic

- -

 

- -

smesh  = - SMESH_mechanic.smesh

- -

mesh   = - SMESH_mechanic.mesh

- -

salome = SMESH_mechanic.salome

- -

 

- -

# Get ids of all faces - with area > 35

- -

aFilter = smesh.GetFilter(smesh.FACE, - smesh.FT_Area, smesh.FT_MoreThan, 35.)

- -

 

- -

anIds = mesh.GetIdsFromFilter(aFilter) -

- -

 

- -

print "Criterion: - Area > 35, Nb = ", len(anIds)

- -

 

- -

# create a group by - adding elements with area > 35

- -

aGroup - = mesh.CreateEmptyGroup(smesh.FACE, "Area > 35")

- -

aGroup.Add(anIds) -

- -

 

- -

# Get ids of all faces - with area > 40

- -

aFilter = smesh.GetFilter(smesh.FACE, - smesh.FT_Area, smesh.FT_MoreThan, 40.)

- -

 

- -

anIds = mesh.GetIdsFromFilter(aFilter)

- -

 

- -

print "Criterion: - Area > 40, Nb = ", len(anIds)

- -

 

- -

# create a group of - elements with area [35; 40] by removing elements with area > 40 from - group aGroup

- -

aGroup.Remove(anIds) -

- -

 

- -

# print the result

- -

aGroupElemIDs = - aGroup.GetListOfID()

- -

 

- -

print "Criterion: - 35 < Area < 40, Nb = ", len(aGroupElemIDs)

- -

j = 1

- -

for i in range(len(aGroupElemIDs)):

- -

  if - j > 20: j = 1; print ""

- -

  print - aGroupElemIDs[i],

- -

  j - = j + 1

- -

  pass

- -

print ""

- -

 

- -

salome.sg.updateObjBrowser(1) -

- -

 

- -

 

- -

Union of two groups

- -

import SMESH_mechanic

- -

 

- -

smesh  = - SMESH_mechanic.smesh

- -

mesh   = - SMESH_mechanic.mesh

- -

salome = SMESH_mechanic.salome

- -

 

- -

# Criterion : AREA - > 20

- -

aFilter = smesh.GetFilter(smesh.FACE, - smesh.FT_Area, smesh.FT_MoreThan, 20.)

- -

 

- -

anIds = mesh.GetIdsFromFilter(aFilter)

- -

 

- -

print "Criterion: - Area > 20, Nb = ", len( anIds )

- -

 

- -

# create a group by - adding elements with area > 20

- -

aGroup1 = mesh.CreateEmptyGroup(SMESH.FACE, - "Area > 20")

- -

aGroup1.Add(anIds)

- -

 

- -

# Criterion : AREA - = 20

- -

aFilter - = smesh.GetFilter(smesh.FACE, smesh.FT_Area, smesh.FT_EqualTo, 20.)

- -

 

- -

anIds = mesh.GetIdsFromFilter(aFilter)

- -

 

- -

print "Criterion: - Area = 20, Nb = ", len( anIds )

- -

 

- -

# create a group by - adding elements with area = 20

- -

aGroup2 = mesh.CreateEmptyGroup( - smesh.FACE, "Area = 20" )

- -

 

- -

aGroup2.Add(anIds)

- -

 

- -

# create union group - : area >= 20

- -

aGroup3 - = mesh.UnionGroups(aGroup1, aGroup2, "Area >= 20")

- -

print "Criterion: - Area >= 20, Nb = ", len(aGroup3.GetListOfID())

- -

 

- -

# Criterion : AREA - < 20

- -

aFilter - = smesh.GetFilter(smesh.FACE, smesh.FT_Area, smesh.FT_LessThan, 20.)

- -

 

- -

anIds = mesh.GetIdsFromFilter(aFilter)

- -

 

- -

print "Criterion: - Area < 20, Nb = ", len(anIds)

- -

 

- -

# create a group by - adding elements with area < 20

- -

aGroup4 - = mesh.CreateEmptyGroup(smesh.FACE, "Area < 20")

- -

aGroup4.Add(anIds)

- -

 

- -

# create union group - : area >= 20 and area < 20

- -

aGroup5 - = mesh.UnionGroups(aGroup3, aGroup4, "Any Area")

- -

print "Criterion: - Any Area, Nb = ", len(aGroup5.GetListOfID())

- -

 

- -

salome.sg.updateObjBrowser(1) -

- -

 

- -

- -

 

- -

- -

 

- -

Intersection of two groups

- -

import SMESH_mechanic

- -

 

- -

smesh  = - SMESH_mechanic.smesh

- -

mesh   = - SMESH_mechanic.mesh

- -

salome = SMESH_mechanic.salome

- -

 

- -

# Criterion : AREA - > 20

- -

aFilter = smesh.GetFilter(smesh.FACE, - smesh.FT_Area, smesh.FT_MoreThan, 20.)

- -

 

- -

anIds = mesh.GetIdsFromFilter(aFilter)

- -

 

- -

print "Criterion: - Area > 20, Nb = ", len(anIds)

- -

 

- -

# create a group by - adding elements with area > 20

- -

aGroup1 = mesh.CreateEmptyGroup(SMESH.FACE, - "Area > 20")

- -

aGroup1.Add(anIds)

- -

 

- -

# Criterion : AREA - < 60

- -

aFilter = smesh.GetFilter(smesh.FACE, - smesh.FT_Area, smesh.FT_LessThan, 60.)

- -

 

- -

anIds = mesh.GetIdsFromFilter(aFilter)

- -

 

- -

print "Criterion: - Area < 60, Nb = ", len(anIds)

- -

 

- -

# create a group by - adding elements with area < 60

- -

aGroup2 = mesh.CreateEmptyGroup(SMESH.FACE, - "Area < 60")

- -

aGroup2.Add(anIds)

- -

 

- -

# create an intersection - of groups : 20 < area < 60

- -

aGroup3 - = mesh.IntersectGroups(aGroup1, aGroup2, "20 < Area < 60")

- -

print "Criterion: - 20 < Area < 60, Nb = ", len(aGroup3.GetListOfID())

- -

 

- -

salome.sg.updateObjBrowser(1) -

- -

 

- -

   

- -

Cut of two groups

- -

import SMESH_mechanic

- -

 

- -

smesh  = - SMESH_mechanic.smesh

- -

mesh   = - SMESH_mechanic.mesh

- -

salome = SMESH_mechanic.salome

- -

 

- -

# Criterion : AREA - > 20

- -

aFilter = smesh.GetFilter(smesh.FACE, - smesh.FT_Area, smesh.FT_MoreThan, 20.)

- -

 

- -

anIds = mesh.GetIdsFromFilter(aFilter)

- -

 

- -

print "Criterion: - Area > 20, Nb = ", len(anIds)

- -

 

- -

# create a group by - adding elements with area > 20

- -

aGroupMain - = mesh.MakeGroupByIds("Area > 20", smesh.FACE, anIds)

- -

 

- -

# Criterion : AREA - < 60

- -

aFilter = smesh.GetFilter(smesh.FACE, - smesh.FT_Area, smesh.FT_LessThan, 60.)

- -

 

- -

anIds = mesh.GetIdsFromFilter(aFilter)

- -

 

- -

print "Criterion: - Area < 60, Nb = ", len(anIds)

- -

 

- -

# create a group by - adding elements with area < 60

- -

aGroupTool - = mesh.MakeGroupByIds("Area < 60", smesh.FACE, anIds)

- -

 

- -

# create a cut of groups - : area >= 60

- -

aGroupRes - = mesh.CutGroups(aGroupMain, aGroupTool, "Area >= 60")

- -

print "Criterion: - Area >= 60, Nb = ", len(aGroupRes.GetListOfID())

- -

 

- -

salome.sg.updateObjBrowser(1) -

- -

 

- -

   

- - - - diff --git a/doc/salome/gui/SMESH/i_blue.jpg b/doc/salome/gui/SMESH/i_blue.jpg deleted file mode 100755 index ed3acfac2..000000000 Binary files a/doc/salome/gui/SMESH/i_blue.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image10.jpg b/doc/salome/gui/SMESH/image10.jpg deleted file mode 100755 index 14cea8618..000000000 Binary files a/doc/salome/gui/SMESH/image10.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image101.gif b/doc/salome/gui/SMESH/image101.gif deleted file mode 100755 index b761fec72..000000000 Binary files a/doc/salome/gui/SMESH/image101.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image103.gif b/doc/salome/gui/SMESH/image103.gif deleted file mode 100755 index f3d6951da..000000000 Binary files a/doc/salome/gui/SMESH/image103.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image105.gif b/doc/salome/gui/SMESH/image105.gif deleted file mode 100755 index 0f7454573..000000000 Binary files a/doc/salome/gui/SMESH/image105.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image106.gif b/doc/salome/gui/SMESH/image106.gif deleted file mode 100755 index 71bda2e9a..000000000 Binary files a/doc/salome/gui/SMESH/image106.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image108.gif b/doc/salome/gui/SMESH/image108.gif deleted file mode 100755 index 5f0ed45b4..000000000 Binary files a/doc/salome/gui/SMESH/image108.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image119.gif b/doc/salome/gui/SMESH/image119.gif deleted file mode 100755 index 5294d844d..000000000 Binary files a/doc/salome/gui/SMESH/image119.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image120.gif b/doc/salome/gui/SMESH/image120.gif deleted file mode 100755 index 18ddeca6d..000000000 Binary files a/doc/salome/gui/SMESH/image120.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image121.gif b/doc/salome/gui/SMESH/image121.gif deleted file mode 100755 index 7a2ffd66c..000000000 Binary files a/doc/salome/gui/SMESH/image121.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image122.gif b/doc/salome/gui/SMESH/image122.gif deleted file mode 100755 index 207d30b97..000000000 Binary files a/doc/salome/gui/SMESH/image122.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image123.gif b/doc/salome/gui/SMESH/image123.gif deleted file mode 100755 index 2780e70d4..000000000 Binary files a/doc/salome/gui/SMESH/image123.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image124.gif b/doc/salome/gui/SMESH/image124.gif deleted file mode 100755 index 98f0c40b6..000000000 Binary files a/doc/salome/gui/SMESH/image124.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image125.gif b/doc/salome/gui/SMESH/image125.gif deleted file mode 100755 index 198351307..000000000 Binary files a/doc/salome/gui/SMESH/image125.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image126.gif b/doc/salome/gui/SMESH/image126.gif deleted file mode 100755 index e2e695519..000000000 Binary files a/doc/salome/gui/SMESH/image126.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image127.gif b/doc/salome/gui/SMESH/image127.gif deleted file mode 100755 index 79bccc66f..000000000 Binary files a/doc/salome/gui/SMESH/image127.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image130.gif b/doc/salome/gui/SMESH/image130.gif deleted file mode 100755 index cc8c3a5e1..000000000 Binary files a/doc/salome/gui/SMESH/image130.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image131.gif b/doc/salome/gui/SMESH/image131.gif deleted file mode 100755 index dc6433146..000000000 Binary files a/doc/salome/gui/SMESH/image131.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image132.gif b/doc/salome/gui/SMESH/image132.gif deleted file mode 100755 index e7577ea7c..000000000 Binary files a/doc/salome/gui/SMESH/image132.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image133.gif b/doc/salome/gui/SMESH/image133.gif deleted file mode 100755 index 60a4b9605..000000000 Binary files a/doc/salome/gui/SMESH/image133.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image134.gif b/doc/salome/gui/SMESH/image134.gif deleted file mode 100755 index 60148bab7..000000000 Binary files a/doc/salome/gui/SMESH/image134.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image135.gif b/doc/salome/gui/SMESH/image135.gif deleted file mode 100755 index 13b7b089b..000000000 Binary files a/doc/salome/gui/SMESH/image135.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image136.gif b/doc/salome/gui/SMESH/image136.gif deleted file mode 100755 index 9b17450fc..000000000 Binary files a/doc/salome/gui/SMESH/image136.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image137.gif b/doc/salome/gui/SMESH/image137.gif deleted file mode 100755 index 7f4cd13fe..000000000 Binary files a/doc/salome/gui/SMESH/image137.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image142.gif b/doc/salome/gui/SMESH/image142.gif deleted file mode 100755 index 2f411e58d..000000000 Binary files a/doc/salome/gui/SMESH/image142.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image143.gif b/doc/salome/gui/SMESH/image143.gif deleted file mode 100755 index de9df148f..000000000 Binary files a/doc/salome/gui/SMESH/image143.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image144.gif b/doc/salome/gui/SMESH/image144.gif deleted file mode 100755 index 3dffd53ff..000000000 Binary files a/doc/salome/gui/SMESH/image144.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image145.gif b/doc/salome/gui/SMESH/image145.gif deleted file mode 100755 index 8005557e1..000000000 Binary files a/doc/salome/gui/SMESH/image145.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image146.gif b/doc/salome/gui/SMESH/image146.gif deleted file mode 100755 index 18f22241d..000000000 Binary files a/doc/salome/gui/SMESH/image146.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image147.gif b/doc/salome/gui/SMESH/image147.gif deleted file mode 100755 index 7b9a354b9..000000000 Binary files a/doc/salome/gui/SMESH/image147.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image148.gif b/doc/salome/gui/SMESH/image148.gif deleted file mode 100755 index 0ef414777..000000000 Binary files a/doc/salome/gui/SMESH/image148.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image15.jpg b/doc/salome/gui/SMESH/image15.jpg deleted file mode 100755 index 15edee5b3..000000000 Binary files a/doc/salome/gui/SMESH/image15.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image151.gif b/doc/salome/gui/SMESH/image151.gif deleted file mode 100755 index 5c4a20e9a..000000000 Binary files a/doc/salome/gui/SMESH/image151.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image152.gif b/doc/salome/gui/SMESH/image152.gif deleted file mode 100755 index 2005d3fff..000000000 Binary files a/doc/salome/gui/SMESH/image152.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image157.gif b/doc/salome/gui/SMESH/image157.gif deleted file mode 100644 index 459215172..000000000 Binary files a/doc/salome/gui/SMESH/image157.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image159.gif b/doc/salome/gui/SMESH/image159.gif deleted file mode 100755 index 45a024ec7..000000000 Binary files a/doc/salome/gui/SMESH/image159.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image160.gif b/doc/salome/gui/SMESH/image160.gif deleted file mode 100755 index 6baffdb30..000000000 Binary files a/doc/salome/gui/SMESH/image160.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image161.gif b/doc/salome/gui/SMESH/image161.gif deleted file mode 100755 index 54364d260..000000000 Binary files a/doc/salome/gui/SMESH/image161.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image18.gif b/doc/salome/gui/SMESH/image18.gif deleted file mode 100755 index a5ae8d8fc..000000000 Binary files a/doc/salome/gui/SMESH/image18.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image19.gif b/doc/salome/gui/SMESH/image19.gif deleted file mode 100755 index 3cf748a52..000000000 Binary files a/doc/salome/gui/SMESH/image19.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image20.gif b/doc/salome/gui/SMESH/image20.gif deleted file mode 100755 index 5417f896b..000000000 Binary files a/doc/salome/gui/SMESH/image20.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image22.jpg b/doc/salome/gui/SMESH/image22.jpg deleted file mode 100755 index b6a5e8db6..000000000 Binary files a/doc/salome/gui/SMESH/image22.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image23.jpg b/doc/salome/gui/SMESH/image23.jpg deleted file mode 100755 index 74f899b00..000000000 Binary files a/doc/salome/gui/SMESH/image23.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image24.gif b/doc/salome/gui/SMESH/image24.gif deleted file mode 100755 index 3d8032bf0..000000000 Binary files a/doc/salome/gui/SMESH/image24.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image25.gif b/doc/salome/gui/SMESH/image25.gif deleted file mode 100755 index cd7c967bc..000000000 Binary files a/doc/salome/gui/SMESH/image25.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image25.jpg b/doc/salome/gui/SMESH/image25.jpg deleted file mode 100755 index 4b2d4dfe4..000000000 Binary files a/doc/salome/gui/SMESH/image25.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image27.jpg b/doc/salome/gui/SMESH/image27.jpg deleted file mode 100755 index d2f32b184..000000000 Binary files a/doc/salome/gui/SMESH/image27.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image28.gif b/doc/salome/gui/SMESH/image28.gif deleted file mode 100755 index 21f54bf45..000000000 Binary files a/doc/salome/gui/SMESH/image28.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image30.gif b/doc/salome/gui/SMESH/image30.gif deleted file mode 100755 index 55859c763..000000000 Binary files a/doc/salome/gui/SMESH/image30.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image30.jpg b/doc/salome/gui/SMESH/image30.jpg deleted file mode 100755 index 997a36e35..000000000 Binary files a/doc/salome/gui/SMESH/image30.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image31.jpg b/doc/salome/gui/SMESH/image31.jpg deleted file mode 100755 index aa004031b..000000000 Binary files a/doc/salome/gui/SMESH/image31.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image32.gif b/doc/salome/gui/SMESH/image32.gif deleted file mode 100755 index a1ee2ee02..000000000 Binary files a/doc/salome/gui/SMESH/image32.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image32.jpg b/doc/salome/gui/SMESH/image32.jpg deleted file mode 100755 index 77d595dce..000000000 Binary files a/doc/salome/gui/SMESH/image32.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image33.gif b/doc/salome/gui/SMESH/image33.gif deleted file mode 100755 index ecdd47b0b..000000000 Binary files a/doc/salome/gui/SMESH/image33.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image34.gif b/doc/salome/gui/SMESH/image34.gif deleted file mode 100755 index 963095fe8..000000000 Binary files a/doc/salome/gui/SMESH/image34.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image35.gif b/doc/salome/gui/SMESH/image35.gif deleted file mode 100755 index 0e3b30fd0..000000000 Binary files a/doc/salome/gui/SMESH/image35.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image36.gif b/doc/salome/gui/SMESH/image36.gif deleted file mode 100755 index 7236ef8b9..000000000 Binary files a/doc/salome/gui/SMESH/image36.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image36.jpg b/doc/salome/gui/SMESH/image36.jpg deleted file mode 100755 index 9b44dc727..000000000 Binary files a/doc/salome/gui/SMESH/image36.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image37.gif b/doc/salome/gui/SMESH/image37.gif deleted file mode 100755 index 43592da64..000000000 Binary files a/doc/salome/gui/SMESH/image37.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image37.jpg b/doc/salome/gui/SMESH/image37.jpg deleted file mode 100755 index 5fba91a2f..000000000 Binary files a/doc/salome/gui/SMESH/image37.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image38.gif b/doc/salome/gui/SMESH/image38.gif deleted file mode 100755 index 087f6e2be..000000000 Binary files a/doc/salome/gui/SMESH/image38.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image38.jpg b/doc/salome/gui/SMESH/image38.jpg deleted file mode 100755 index 29d5e716c..000000000 Binary files a/doc/salome/gui/SMESH/image38.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image39.gif b/doc/salome/gui/SMESH/image39.gif deleted file mode 100755 index b206af116..000000000 Binary files a/doc/salome/gui/SMESH/image39.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image40.gif b/doc/salome/gui/SMESH/image40.gif deleted file mode 100755 index becc12a47..000000000 Binary files a/doc/salome/gui/SMESH/image40.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image41.gif b/doc/salome/gui/SMESH/image41.gif deleted file mode 100755 index 2e132c239..000000000 Binary files a/doc/salome/gui/SMESH/image41.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image46.gif b/doc/salome/gui/SMESH/image46.gif deleted file mode 100755 index 0f00ea7cf..000000000 Binary files a/doc/salome/gui/SMESH/image46.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image49.gif b/doc/salome/gui/SMESH/image49.gif deleted file mode 100755 index d10d9c4df..000000000 Binary files a/doc/salome/gui/SMESH/image49.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image5.jpg b/doc/salome/gui/SMESH/image5.jpg deleted file mode 100755 index f195ac88a..000000000 Binary files a/doc/salome/gui/SMESH/image5.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image50.gif b/doc/salome/gui/SMESH/image50.gif deleted file mode 100755 index 72d39545a..000000000 Binary files a/doc/salome/gui/SMESH/image50.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image51.jpg b/doc/salome/gui/SMESH/image51.jpg deleted file mode 100755 index dfe3bc606..000000000 Binary files a/doc/salome/gui/SMESH/image51.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image52.jpg b/doc/salome/gui/SMESH/image52.jpg deleted file mode 100755 index 1c83b35f8..000000000 Binary files a/doc/salome/gui/SMESH/image52.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image53.gif b/doc/salome/gui/SMESH/image53.gif deleted file mode 100755 index 8f728207f..000000000 Binary files a/doc/salome/gui/SMESH/image53.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image55.gif b/doc/salome/gui/SMESH/image55.gif deleted file mode 100755 index cc1b80e48..000000000 Binary files a/doc/salome/gui/SMESH/image55.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image56.gif b/doc/salome/gui/SMESH/image56.gif deleted file mode 100755 index ffe1e9521..000000000 Binary files a/doc/salome/gui/SMESH/image56.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image56.jpg b/doc/salome/gui/SMESH/image56.jpg deleted file mode 100755 index 5fba91a2f..000000000 Binary files a/doc/salome/gui/SMESH/image56.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image58.gif b/doc/salome/gui/SMESH/image58.gif deleted file mode 100755 index 45e28568e..000000000 Binary files a/doc/salome/gui/SMESH/image58.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image63.gif b/doc/salome/gui/SMESH/image63.gif deleted file mode 100755 index 6a9c2c86d..000000000 Binary files a/doc/salome/gui/SMESH/image63.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image64.gif b/doc/salome/gui/SMESH/image64.gif deleted file mode 100755 index 1d92c81f1..000000000 Binary files a/doc/salome/gui/SMESH/image64.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image67.gif b/doc/salome/gui/SMESH/image67.gif deleted file mode 100755 index 68bd3e383..000000000 Binary files a/doc/salome/gui/SMESH/image67.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image7.jpg b/doc/salome/gui/SMESH/image7.jpg deleted file mode 100755 index ded3ae99a..000000000 Binary files a/doc/salome/gui/SMESH/image7.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image70.gif b/doc/salome/gui/SMESH/image70.gif deleted file mode 100755 index 120b8e8ef..000000000 Binary files a/doc/salome/gui/SMESH/image70.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image70.jpg b/doc/salome/gui/SMESH/image70.jpg deleted file mode 100755 index 0df360f68..000000000 Binary files a/doc/salome/gui/SMESH/image70.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image71.gif b/doc/salome/gui/SMESH/image71.gif deleted file mode 100755 index 0008354f6..000000000 Binary files a/doc/salome/gui/SMESH/image71.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image71.jpg b/doc/salome/gui/SMESH/image71.jpg deleted file mode 100755 index bdb07ea6b..000000000 Binary files a/doc/salome/gui/SMESH/image71.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image74.gif b/doc/salome/gui/SMESH/image74.gif deleted file mode 100755 index db8a4c8cd..000000000 Binary files a/doc/salome/gui/SMESH/image74.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image76.jpg b/doc/salome/gui/SMESH/image76.jpg deleted file mode 100755 index 88ec89ffe..000000000 Binary files a/doc/salome/gui/SMESH/image76.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image77.jpg b/doc/salome/gui/SMESH/image77.jpg deleted file mode 100755 index c253eacae..000000000 Binary files a/doc/salome/gui/SMESH/image77.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image78.jpg b/doc/salome/gui/SMESH/image78.jpg deleted file mode 100755 index 80c2a1633..000000000 Binary files a/doc/salome/gui/SMESH/image78.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image79.gif b/doc/salome/gui/SMESH/image79.gif deleted file mode 100755 index 9711ccbc9..000000000 Binary files a/doc/salome/gui/SMESH/image79.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image79.jpg b/doc/salome/gui/SMESH/image79.jpg deleted file mode 100755 index 6d164167f..000000000 Binary files a/doc/salome/gui/SMESH/image79.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image80.gif b/doc/salome/gui/SMESH/image80.gif deleted file mode 100755 index 399af0a9a..000000000 Binary files a/doc/salome/gui/SMESH/image80.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image82.gif b/doc/salome/gui/SMESH/image82.gif deleted file mode 100755 index 93c6c9b96..000000000 Binary files a/doc/salome/gui/SMESH/image82.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image83.gif b/doc/salome/gui/SMESH/image83.gif deleted file mode 100755 index 331b64a10..000000000 Binary files a/doc/salome/gui/SMESH/image83.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image84.gif b/doc/salome/gui/SMESH/image84.gif deleted file mode 100755 index ea8ec56bc..000000000 Binary files a/doc/salome/gui/SMESH/image84.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image86.jpg b/doc/salome/gui/SMESH/image86.jpg deleted file mode 100755 index 168b43e2c..000000000 Binary files a/doc/salome/gui/SMESH/image86.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image88.gif b/doc/salome/gui/SMESH/image88.gif deleted file mode 100755 index b2d4b73fc..000000000 Binary files a/doc/salome/gui/SMESH/image88.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image88.jpg b/doc/salome/gui/SMESH/image88.jpg deleted file mode 100755 index 3b2a9739c..000000000 Binary files a/doc/salome/gui/SMESH/image88.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image90.jpg b/doc/salome/gui/SMESH/image90.jpg deleted file mode 100755 index 4f4c301d4..000000000 Binary files a/doc/salome/gui/SMESH/image90.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image91.gif b/doc/salome/gui/SMESH/image91.gif deleted file mode 100755 index a09ab9e76..000000000 Binary files a/doc/salome/gui/SMESH/image91.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image92.gif b/doc/salome/gui/SMESH/image92.gif deleted file mode 100755 index 9e0517f5d..000000000 Binary files a/doc/salome/gui/SMESH/image92.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image92.jpg b/doc/salome/gui/SMESH/image92.jpg deleted file mode 100755 index bf6e61049..000000000 Binary files a/doc/salome/gui/SMESH/image92.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image93.jpg b/doc/salome/gui/SMESH/image93.jpg deleted file mode 100755 index f9780b4ba..000000000 Binary files a/doc/salome/gui/SMESH/image93.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image94.gif b/doc/salome/gui/SMESH/image94.gif deleted file mode 100755 index 7313f5deb..000000000 Binary files a/doc/salome/gui/SMESH/image94.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image94.jpg b/doc/salome/gui/SMESH/image94.jpg deleted file mode 100755 index 789166734..000000000 Binary files a/doc/salome/gui/SMESH/image94.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image95.gif b/doc/salome/gui/SMESH/image95.gif deleted file mode 100755 index 6491f27d4..000000000 Binary files a/doc/salome/gui/SMESH/image95.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image95.jpg b/doc/salome/gui/SMESH/image95.jpg deleted file mode 100755 index 047dccf64..000000000 Binary files a/doc/salome/gui/SMESH/image95.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image96.gif b/doc/salome/gui/SMESH/image96.gif deleted file mode 100755 index 1392ee705..000000000 Binary files a/doc/salome/gui/SMESH/image96.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image96.jpg b/doc/salome/gui/SMESH/image96.jpg deleted file mode 100755 index 5f3128eb9..000000000 Binary files a/doc/salome/gui/SMESH/image96.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image97.gif b/doc/salome/gui/SMESH/image97.gif deleted file mode 100755 index 480b584ed..000000000 Binary files a/doc/salome/gui/SMESH/image97.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image97.jpg b/doc/salome/gui/SMESH/image97.jpg deleted file mode 100755 index 275f2e396..000000000 Binary files a/doc/salome/gui/SMESH/image97.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/image98.gif b/doc/salome/gui/SMESH/image98.gif deleted file mode 100755 index 5f375b774..000000000 Binary files a/doc/salome/gui/SMESH/image98.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/image99.gif b/doc/salome/gui/SMESH/image99.gif deleted file mode 100755 index 4959ed825..000000000 Binary files a/doc/salome/gui/SMESH/image99.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/images/a-arithmetic1d.png b/doc/salome/gui/SMESH/images/a-arithmetic1d.png new file mode 100755 index 000000000..d34a5e24c Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-arithmetic1d.png differ diff --git a/doc/salome/gui/SMESH/images/a-averagelength.png b/doc/salome/gui/SMESH/images/a-averagelength.png new file mode 100755 index 000000000..70e2afd26 Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-averagelength.png differ diff --git a/doc/salome/gui/SMESH/images/a-clipping2.png b/doc/salome/gui/SMESH/images/a-clipping2.png new file mode 100755 index 000000000..639792ca3 Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-clipping2.png differ diff --git a/doc/salome/gui/SMESH/images/a-creategroup.png b/doc/salome/gui/SMESH/images/a-creategroup.png new file mode 100755 index 000000000..38ef5a856 Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-creategroup.png differ diff --git a/doc/salome/gui/SMESH/images/a-createpolyhedralvolume.png b/doc/salome/gui/SMESH/images/a-createpolyhedralvolume.png new file mode 100755 index 000000000..532eac08f Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-createpolyhedralvolume.png differ diff --git a/doc/salome/gui/SMESH/images/a-cuttingofquadrangles.png b/doc/salome/gui/SMESH/images/a-cuttingofquadrangles.png new file mode 100755 index 000000000..ff9ae68e1 Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-cuttingofquadrangles.png differ diff --git a/doc/salome/gui/SMESH/images/a-deflection1d.png b/doc/salome/gui/SMESH/images/a-deflection1d.png new file mode 100755 index 000000000..57fd8597a Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-deflection1d.png differ diff --git a/doc/salome/gui/SMESH/images/a-filteronedges.png b/doc/salome/gui/SMESH/images/a-filteronedges.png new file mode 100755 index 000000000..48b3ece01 Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-filteronedges.png differ diff --git a/doc/salome/gui/SMESH/images/a-maxelarea.png b/doc/salome/gui/SMESH/images/a-maxelarea.png new file mode 100755 index 000000000..b4af4b23f Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-maxelarea.png differ diff --git a/doc/salome/gui/SMESH/images/a-maxelvolume.png b/doc/salome/gui/SMESH/images/a-maxelvolume.png new file mode 100755 index 000000000..2611807fd Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-maxelvolume.png differ diff --git a/doc/salome/gui/SMESH/images/a-nbsegments1.png b/doc/salome/gui/SMESH/images/a-nbsegments1.png new file mode 100755 index 000000000..35c09094d Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-nbsegments1.png differ diff --git a/doc/salome/gui/SMESH/images/a-nbsegments2.png b/doc/salome/gui/SMESH/images/a-nbsegments2.png new file mode 100755 index 000000000..7f33c61ff Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-nbsegments2.png differ diff --git a/doc/salome/gui/SMESH/images/a-patterntype.png b/doc/salome/gui/SMESH/images/a-patterntype.png new file mode 100755 index 000000000..3383cd75e Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-patterntype.png differ diff --git a/doc/salome/gui/SMESH/images/a-patterntype1.png b/doc/salome/gui/SMESH/images/a-patterntype1.png new file mode 100755 index 000000000..38449225a Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-patterntype1.png differ diff --git a/doc/salome/gui/SMESH/images/a-standmeshinfo.png b/doc/salome/gui/SMESH/images/a-standmeshinfo.png new file mode 100755 index 000000000..6b35f0a99 Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-standmeshinfo.png differ diff --git a/doc/salome/gui/SMESH/images/a-startendlength.png b/doc/salome/gui/SMESH/images/a-startendlength.png new file mode 100755 index 000000000..e48f617d2 Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-startendlength.png differ diff --git a/doc/salome/gui/SMESH/images/a-transparency.png b/doc/salome/gui/SMESH/images/a-transparency.png new file mode 100755 index 000000000..8e7498d58 Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-transparency.png differ diff --git a/doc/salome/gui/SMESH/images/a-unionoftriangles.png b/doc/salome/gui/SMESH/images/a-unionoftriangles.png new file mode 100755 index 000000000..d9ef53c11 Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-unionoftriangles.png differ diff --git a/doc/salome/gui/SMESH/images/a-viewgeneral.png b/doc/salome/gui/SMESH/images/a-viewgeneral.png new file mode 100755 index 000000000..09b7c2391 Binary files /dev/null and b/doc/salome/gui/SMESH/images/a-viewgeneral.png differ diff --git a/doc/salome/gui/SMESH/images/add.gif b/doc/salome/gui/SMESH/images/add.gif new file mode 100644 index 000000000..26350e420 Binary files /dev/null and b/doc/salome/gui/SMESH/images/add.gif differ diff --git a/doc/salome/gui/SMESH/images/add_edge.png b/doc/salome/gui/SMESH/images/add_edge.png new file mode 100755 index 000000000..8a532e1d9 Binary files /dev/null and b/doc/salome/gui/SMESH/images/add_edge.png differ diff --git a/doc/salome/gui/SMESH/images/add_node.png b/doc/salome/gui/SMESH/images/add_node.png new file mode 100755 index 000000000..cb50bf6e6 Binary files /dev/null and b/doc/salome/gui/SMESH/images/add_node.png differ diff --git a/doc/salome/gui/SMESH/images/add_polygone.png b/doc/salome/gui/SMESH/images/add_polygone.png new file mode 100755 index 000000000..a76baceae Binary files /dev/null and b/doc/salome/gui/SMESH/images/add_polygone.png differ diff --git a/doc/salome/gui/SMESH/images/add_polyhedron.png b/doc/salome/gui/SMESH/images/add_polyhedron.png new file mode 100755 index 000000000..2e23634c9 Binary files /dev/null and b/doc/salome/gui/SMESH/images/add_polyhedron.png differ diff --git a/doc/salome/gui/SMESH/images/add_quadrangle.png b/doc/salome/gui/SMESH/images/add_quadrangle.png new file mode 100755 index 000000000..f25b94d9f Binary files /dev/null and b/doc/salome/gui/SMESH/images/add_quadrangle.png differ diff --git a/doc/salome/gui/SMESH/images/add_triangle.png b/doc/salome/gui/SMESH/images/add_triangle.png new file mode 100755 index 000000000..41c335929 Binary files /dev/null and b/doc/salome/gui/SMESH/images/add_triangle.png differ diff --git a/doc/salome/gui/SMESH/images/addedge.png b/doc/salome/gui/SMESH/images/addedge.png new file mode 100755 index 000000000..c9eeaf970 Binary files /dev/null and b/doc/salome/gui/SMESH/images/addedge.png differ diff --git a/doc/salome/gui/SMESH/images/addhexahedron.png b/doc/salome/gui/SMESH/images/addhexahedron.png new file mode 100755 index 000000000..fd2ef245a Binary files /dev/null and b/doc/salome/gui/SMESH/images/addhexahedron.png differ diff --git a/doc/salome/gui/SMESH/images/addnode.png b/doc/salome/gui/SMESH/images/addnode.png new file mode 100755 index 000000000..167a966b8 Binary files /dev/null and b/doc/salome/gui/SMESH/images/addnode.png differ diff --git a/doc/salome/gui/SMESH/images/addpolygon.png b/doc/salome/gui/SMESH/images/addpolygon.png new file mode 100755 index 000000000..785a62341 Binary files /dev/null and b/doc/salome/gui/SMESH/images/addpolygon.png differ diff --git a/doc/salome/gui/SMESH/images/addquadrangle.png b/doc/salome/gui/SMESH/images/addquadrangle.png new file mode 100755 index 000000000..2bbddf158 Binary files /dev/null and b/doc/salome/gui/SMESH/images/addquadrangle.png differ diff --git a/doc/salome/gui/SMESH/images/addtetrahedron.png b/doc/salome/gui/SMESH/images/addtetrahedron.png new file mode 100755 index 000000000..0a415707a Binary files /dev/null and b/doc/salome/gui/SMESH/images/addtetrahedron.png differ diff --git a/doc/salome/gui/SMESH/images/addtriangle.png b/doc/salome/gui/SMESH/images/addtriangle.png new file mode 100755 index 000000000..405d6f57f Binary files /dev/null and b/doc/salome/gui/SMESH/images/addtriangle.png differ diff --git a/doc/salome/gui/SMESH/images/advanced_mesh_infos.png b/doc/salome/gui/SMESH/images/advanced_mesh_infos.png new file mode 100755 index 000000000..f8341e892 Binary files /dev/null and b/doc/salome/gui/SMESH/images/advanced_mesh_infos.png differ diff --git a/doc/salome/gui/SMESH/images/aqt.png b/doc/salome/gui/SMESH/images/aqt.png new file mode 100755 index 000000000..32e36bd0e Binary files /dev/null and b/doc/salome/gui/SMESH/images/aqt.png differ diff --git a/doc/salome/gui/SMESH/images/automaticlength.png b/doc/salome/gui/SMESH/images/automaticlength.png new file mode 100755 index 000000000..d96ffc82d Binary files /dev/null and b/doc/salome/gui/SMESH/images/automaticlength.png differ diff --git a/doc/salome/gui/SMESH/images/b-art_end_length.png b/doc/salome/gui/SMESH/images/b-art_end_length.png new file mode 100755 index 000000000..26da5fa73 Binary files /dev/null and b/doc/salome/gui/SMESH/images/b-art_end_length.png differ diff --git a/doc/salome/gui/SMESH/images/b-erage_length.png b/doc/salome/gui/SMESH/images/b-erage_length.png new file mode 100755 index 000000000..f64077c90 Binary files /dev/null and b/doc/salome/gui/SMESH/images/b-erage_length.png differ diff --git a/doc/salome/gui/SMESH/images/b-flection1d.png b/doc/salome/gui/SMESH/images/b-flection1d.png new file mode 100755 index 000000000..e160cf55d Binary files /dev/null and b/doc/salome/gui/SMESH/images/b-flection1d.png differ diff --git a/doc/salome/gui/SMESH/images/b-ithmetic1d.png b/doc/salome/gui/SMESH/images/b-ithmetic1d.png new file mode 100755 index 000000000..72f76b951 Binary files /dev/null and b/doc/salome/gui/SMESH/images/b-ithmetic1d.png differ diff --git a/doc/salome/gui/SMESH/images/b-mberofsegments.png b/doc/salome/gui/SMESH/images/b-mberofsegments.png new file mode 100755 index 000000000..27f68685e Binary files /dev/null and b/doc/salome/gui/SMESH/images/b-mberofsegments.png differ diff --git a/doc/salome/gui/SMESH/images/b-mesh_infos.png b/doc/salome/gui/SMESH/images/b-mesh_infos.png new file mode 100755 index 000000000..6abd3c184 Binary files /dev/null and b/doc/salome/gui/SMESH/images/b-mesh_infos.png differ diff --git a/doc/salome/gui/SMESH/images/buildcompound.png b/doc/salome/gui/SMESH/images/buildcompound.png new file mode 100755 index 000000000..79a6073f2 Binary files /dev/null and b/doc/salome/gui/SMESH/images/buildcompound.png differ diff --git a/doc/salome/gui/SMESH/images/circle_angles_after.png b/doc/salome/gui/SMESH/images/circle_angles_after.png new file mode 100644 index 000000000..f4c606bde Binary files /dev/null and b/doc/salome/gui/SMESH/images/circle_angles_after.png differ diff --git a/doc/salome/gui/SMESH/images/circle_simple_after.png b/doc/salome/gui/SMESH/images/circle_simple_after.png new file mode 100644 index 000000000..99f65b558 Binary files /dev/null and b/doc/salome/gui/SMESH/images/circle_simple_after.png differ diff --git a/doc/salome/gui/SMESH/images/circle_simple_before.png b/doc/salome/gui/SMESH/images/circle_simple_before.png new file mode 100644 index 000000000..95b90373f Binary files /dev/null and b/doc/salome/gui/SMESH/images/circle_simple_before.png differ diff --git a/doc/salome/gui/SMESH/images/convert.png b/doc/salome/gui/SMESH/images/convert.png new file mode 100644 index 000000000..5c0e64a05 Binary files /dev/null and b/doc/salome/gui/SMESH/images/convert.png differ diff --git a/doc/salome/gui/SMESH/images/create_group.png b/doc/salome/gui/SMESH/images/create_group.png new file mode 100755 index 000000000..6fc2367b3 Binary files /dev/null and b/doc/salome/gui/SMESH/images/create_group.png differ diff --git a/doc/salome/gui/SMESH/images/creategroup.png b/doc/salome/gui/SMESH/images/creategroup.png new file mode 100755 index 000000000..207e2099e Binary files /dev/null and b/doc/salome/gui/SMESH/images/creategroup.png differ diff --git a/doc/salome/gui/SMESH/images/createmesh-inv.png b/doc/salome/gui/SMESH/images/createmesh-inv.png new file mode 100755 index 000000000..8273aac45 Binary files /dev/null and b/doc/salome/gui/SMESH/images/createmesh-inv.png differ diff --git a/doc/salome/gui/SMESH/images/createmesh-inv2.png b/doc/salome/gui/SMESH/images/createmesh-inv2.png new file mode 100755 index 000000000..2bee11b7c Binary files /dev/null and b/doc/salome/gui/SMESH/images/createmesh-inv2.png differ diff --git a/doc/salome/gui/SMESH/images/createmesh-inv3.png b/doc/salome/gui/SMESH/images/createmesh-inv3.png new file mode 100755 index 000000000..6dfabaaa8 Binary files /dev/null and b/doc/salome/gui/SMESH/images/createmesh-inv3.png differ diff --git a/doc/salome/gui/SMESH/images/curvi_angles_after.png b/doc/salome/gui/SMESH/images/curvi_angles_after.png new file mode 100644 index 000000000..9d06262b0 Binary files /dev/null and b/doc/salome/gui/SMESH/images/curvi_angles_after.png differ diff --git a/doc/salome/gui/SMESH/images/curvi_simple_after.png b/doc/salome/gui/SMESH/images/curvi_simple_after.png new file mode 100644 index 000000000..ae1d98fdf Binary files /dev/null and b/doc/salome/gui/SMESH/images/curvi_simple_after.png differ diff --git a/doc/salome/gui/SMESH/images/curvi_simple_before.png b/doc/salome/gui/SMESH/images/curvi_simple_before.png new file mode 100644 index 000000000..a0bbf73bd Binary files /dev/null and b/doc/salome/gui/SMESH/images/curvi_simple_before.png differ diff --git a/doc/salome/gui/SMESH/images/cut_groups1.png b/doc/salome/gui/SMESH/images/cut_groups1.png new file mode 100755 index 000000000..f066a5541 Binary files /dev/null and b/doc/salome/gui/SMESH/images/cut_groups1.png differ diff --git a/doc/salome/gui/SMESH/images/cut_groups2.png b/doc/salome/gui/SMESH/images/cut_groups2.png new file mode 100755 index 000000000..3ec7a93d1 Binary files /dev/null and b/doc/salome/gui/SMESH/images/cut_groups2.png differ diff --git a/doc/salome/gui/SMESH/images/cut_groups3.png b/doc/salome/gui/SMESH/images/cut_groups3.png new file mode 100755 index 000000000..1c5ebed80 Binary files /dev/null and b/doc/salome/gui/SMESH/images/cut_groups3.png differ diff --git a/doc/salome/gui/SMESH/images/cutgroups.png b/doc/salome/gui/SMESH/images/cutgroups.png new file mode 100755 index 000000000..87e6da88b Binary files /dev/null and b/doc/salome/gui/SMESH/images/cutgroups.png differ diff --git a/doc/salome/gui/SMESH/images/deletegroups.png b/doc/salome/gui/SMESH/images/deletegroups.png new file mode 100755 index 000000000..383a79aa8 Binary files /dev/null and b/doc/salome/gui/SMESH/images/deletegroups.png differ diff --git a/doc/salome/gui/SMESH/images/diagonalinversion.png b/doc/salome/gui/SMESH/images/diagonalinversion.png new file mode 100755 index 000000000..967e7a12e Binary files /dev/null and b/doc/salome/gui/SMESH/images/diagonalinversion.png differ diff --git a/doc/salome/gui/SMESH/images/dialog.png b/doc/salome/gui/SMESH/images/dialog.png new file mode 100755 index 000000000..12c7fa273 Binary files /dev/null and b/doc/salome/gui/SMESH/images/dialog.png differ diff --git a/doc/salome/gui/SMESH/images/distribution_of_layers.png b/doc/salome/gui/SMESH/images/distribution_of_layers.png new file mode 100644 index 000000000..3d01d66f4 Binary files /dev/null and b/doc/salome/gui/SMESH/images/distribution_of_layers.png differ diff --git a/doc/salome/gui/SMESH/images/distributionwithanalyticdensity.png b/doc/salome/gui/SMESH/images/distributionwithanalyticdensity.png new file mode 100755 index 000000000..87ebc5ffe Binary files /dev/null and b/doc/salome/gui/SMESH/images/distributionwithanalyticdensity.png differ diff --git a/doc/salome/gui/SMESH/images/distributionwithtabledensity.png b/doc/salome/gui/SMESH/images/distributionwithtabledensity.png new file mode 100755 index 000000000..9ea6cab98 Binary files /dev/null and b/doc/salome/gui/SMESH/images/distributionwithtabledensity.png differ diff --git a/doc/salome/gui/SMESH/images/edge_wire_3d_after.png b/doc/salome/gui/SMESH/images/edge_wire_3d_after.png new file mode 100644 index 000000000..3fab59803 Binary files /dev/null and b/doc/salome/gui/SMESH/images/edge_wire_3d_after.png differ diff --git a/doc/salome/gui/SMESH/images/edge_wire_3d_before.png b/doc/salome/gui/SMESH/images/edge_wire_3d_before.png new file mode 100644 index 000000000..28f986830 Binary files /dev/null and b/doc/salome/gui/SMESH/images/edge_wire_3d_before.png differ diff --git a/doc/salome/gui/SMESH/images/edge_wire_after.png b/doc/salome/gui/SMESH/images/edge_wire_after.png new file mode 100644 index 000000000..408480ecd Binary files /dev/null and b/doc/salome/gui/SMESH/images/edge_wire_after.png differ diff --git a/doc/salome/gui/SMESH/images/edge_wire_before.png b/doc/salome/gui/SMESH/images/edge_wire_before.png new file mode 100644 index 000000000..186528ec7 Binary files /dev/null and b/doc/salome/gui/SMESH/images/edge_wire_before.png differ diff --git a/doc/salome/gui/SMESH/images/edit_mesh1.png b/doc/salome/gui/SMESH/images/edit_mesh1.png new file mode 100755 index 000000000..4369e51b4 Binary files /dev/null and b/doc/salome/gui/SMESH/images/edit_mesh1.png differ diff --git a/doc/salome/gui/SMESH/images/edit_mesh_change_value_hyp.png b/doc/salome/gui/SMESH/images/edit_mesh_change_value_hyp.png new file mode 100755 index 000000000..7dee01f7d Binary files /dev/null and b/doc/salome/gui/SMESH/images/edit_mesh_change_value_hyp.png differ diff --git a/doc/salome/gui/SMESH/images/edit_mesh_remove_hyp.png b/doc/salome/gui/SMESH/images/edit_mesh_remove_hyp.png new file mode 100755 index 000000000..0a45639aa Binary files /dev/null and b/doc/salome/gui/SMESH/images/edit_mesh_remove_hyp.png differ diff --git a/doc/salome/gui/SMESH/images/editgroup.png b/doc/salome/gui/SMESH/images/editgroup.png new file mode 100755 index 000000000..c0a50f36f Binary files /dev/null and b/doc/salome/gui/SMESH/images/editgroup.png differ diff --git a/doc/salome/gui/SMESH/images/editing_groups1.png b/doc/salome/gui/SMESH/images/editing_groups1.png new file mode 100755 index 000000000..beb946ab7 Binary files /dev/null and b/doc/salome/gui/SMESH/images/editing_groups1.png differ diff --git a/doc/salome/gui/SMESH/images/editing_groups2.png b/doc/salome/gui/SMESH/images/editing_groups2.png new file mode 100755 index 000000000..7cff1819c Binary files /dev/null and b/doc/salome/gui/SMESH/images/editing_groups2.png differ diff --git a/doc/salome/gui/SMESH/images/eleminfo1.png b/doc/salome/gui/SMESH/images/eleminfo1.png new file mode 100755 index 000000000..5e2c2a0c0 Binary files /dev/null and b/doc/salome/gui/SMESH/images/eleminfo1.png differ diff --git a/doc/salome/gui/SMESH/images/eleminfo2.png b/doc/salome/gui/SMESH/images/eleminfo2.png new file mode 100755 index 000000000..3ff8d1d9c Binary files /dev/null and b/doc/salome/gui/SMESH/images/eleminfo2.png differ diff --git a/doc/salome/gui/SMESH/images/extrusion1.png b/doc/salome/gui/SMESH/images/extrusion1.png new file mode 100644 index 000000000..b48278242 Binary files /dev/null and b/doc/salome/gui/SMESH/images/extrusion1.png differ diff --git a/doc/salome/gui/SMESH/images/extrusion2.png b/doc/salome/gui/SMESH/images/extrusion2.png new file mode 100755 index 000000000..d1d6d0823 Binary files /dev/null and b/doc/salome/gui/SMESH/images/extrusion2.png differ diff --git a/doc/salome/gui/SMESH/images/extrusionalongaline1.png b/doc/salome/gui/SMESH/images/extrusionalongaline1.png new file mode 100755 index 000000000..300d24228 Binary files /dev/null and b/doc/salome/gui/SMESH/images/extrusionalongaline1.png differ diff --git a/doc/salome/gui/SMESH/images/extrusionalongaline2.png b/doc/salome/gui/SMESH/images/extrusionalongaline2.png new file mode 100755 index 000000000..23ca6060f Binary files /dev/null and b/doc/salome/gui/SMESH/images/extrusionalongaline2.png differ diff --git a/doc/salome/gui/SMESH/images/failed_computation.png b/doc/salome/gui/SMESH/images/failed_computation.png new file mode 100644 index 000000000..e44a538f2 Binary files /dev/null and b/doc/salome/gui/SMESH/images/failed_computation.png differ diff --git a/doc/salome/gui/SMESH/images/formula1.png b/doc/salome/gui/SMESH/images/formula1.png new file mode 100644 index 000000000..2f8d2f518 Binary files /dev/null and b/doc/salome/gui/SMESH/images/formula1.png differ diff --git a/doc/salome/gui/SMESH/images/formula2.png b/doc/salome/gui/SMESH/images/formula2.png new file mode 100644 index 000000000..ff189aa8e Binary files /dev/null and b/doc/salome/gui/SMESH/images/formula2.png differ diff --git a/doc/salome/gui/SMESH/images/formula4.png b/doc/salome/gui/SMESH/images/formula4.png new file mode 100644 index 000000000..170f25558 Binary files /dev/null and b/doc/salome/gui/SMESH/images/formula4.png differ diff --git a/doc/salome/gui/SMESH/images/free_borders1.png b/doc/salome/gui/SMESH/images/free_borders1.png new file mode 100755 index 000000000..6e73c9329 Binary files /dev/null and b/doc/salome/gui/SMESH/images/free_borders1.png differ diff --git a/doc/salome/gui/SMESH/images/free_edges.png b/doc/salome/gui/SMESH/images/free_edges.png new file mode 100755 index 000000000..6f1100c87 Binary files /dev/null and b/doc/salome/gui/SMESH/images/free_edges.png differ diff --git a/doc/salome/gui/SMESH/images/image10.jpg b/doc/salome/gui/SMESH/images/image10.jpg new file mode 100755 index 000000000..5a15643bb Binary files /dev/null and b/doc/salome/gui/SMESH/images/image10.jpg differ diff --git a/doc/salome/gui/SMESH/images/image101.gif b/doc/salome/gui/SMESH/images/image101.gif new file mode 100755 index 000000000..b761fec72 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image101.gif differ diff --git a/doc/salome/gui/SMESH/images/image105.gif b/doc/salome/gui/SMESH/images/image105.gif new file mode 100755 index 000000000..0f7454573 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image105.gif differ diff --git a/doc/salome/gui/SMESH/images/image106.gif b/doc/salome/gui/SMESH/images/image106.gif new file mode 100755 index 000000000..71bda2e9a Binary files /dev/null and b/doc/salome/gui/SMESH/images/image106.gif differ diff --git a/doc/salome/gui/SMESH/images/image120.gif b/doc/salome/gui/SMESH/images/image120.gif new file mode 100755 index 000000000..18ddeca6d Binary files /dev/null and b/doc/salome/gui/SMESH/images/image120.gif differ diff --git a/doc/salome/gui/SMESH/images/image121.gif b/doc/salome/gui/SMESH/images/image121.gif new file mode 100755 index 000000000..7a2ffd66c Binary files /dev/null and b/doc/salome/gui/SMESH/images/image121.gif differ diff --git a/doc/salome/gui/SMESH/images/image122.gif b/doc/salome/gui/SMESH/images/image122.gif new file mode 100755 index 000000000..207d30b97 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image122.gif differ diff --git a/doc/salome/gui/SMESH/images/image123.gif b/doc/salome/gui/SMESH/images/image123.gif new file mode 100755 index 000000000..2780e70d4 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image123.gif differ diff --git a/doc/salome/gui/SMESH/images/image124.gif b/doc/salome/gui/SMESH/images/image124.gif new file mode 100755 index 000000000..98f0c40b6 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image124.gif differ diff --git a/doc/salome/gui/SMESH/images/image125.gif b/doc/salome/gui/SMESH/images/image125.gif new file mode 100755 index 000000000..198351307 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image125.gif differ diff --git a/doc/salome/gui/SMESH/images/image126.gif b/doc/salome/gui/SMESH/images/image126.gif new file mode 100755 index 000000000..e2e695519 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image126.gif differ diff --git a/doc/salome/gui/SMESH/images/image127.gif b/doc/salome/gui/SMESH/images/image127.gif new file mode 100755 index 000000000..79bccc66f Binary files /dev/null and b/doc/salome/gui/SMESH/images/image127.gif differ diff --git a/doc/salome/gui/SMESH/images/image130.gif b/doc/salome/gui/SMESH/images/image130.gif new file mode 100755 index 000000000..cc8c3a5e1 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image130.gif differ diff --git a/doc/salome/gui/SMESH/images/image131.gif b/doc/salome/gui/SMESH/images/image131.gif new file mode 100755 index 000000000..8ca3453fd Binary files /dev/null and b/doc/salome/gui/SMESH/images/image131.gif differ diff --git a/doc/salome/gui/SMESH/images/image132.gif b/doc/salome/gui/SMESH/images/image132.gif new file mode 100755 index 000000000..e7577ea7c Binary files /dev/null and b/doc/salome/gui/SMESH/images/image132.gif differ diff --git a/doc/salome/gui/SMESH/images/image133.gif b/doc/salome/gui/SMESH/images/image133.gif new file mode 100755 index 000000000..60a4b9605 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image133.gif differ diff --git a/doc/salome/gui/SMESH/images/image134.gif b/doc/salome/gui/SMESH/images/image134.gif new file mode 100755 index 000000000..60148bab7 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image134.gif differ diff --git a/doc/salome/gui/SMESH/images/image135.gif b/doc/salome/gui/SMESH/images/image135.gif new file mode 100755 index 000000000..13b7b089b Binary files /dev/null and b/doc/salome/gui/SMESH/images/image135.gif differ diff --git a/doc/salome/gui/SMESH/images/image136.gif b/doc/salome/gui/SMESH/images/image136.gif new file mode 100755 index 000000000..9b17450fc Binary files /dev/null and b/doc/salome/gui/SMESH/images/image136.gif differ diff --git a/doc/salome/gui/SMESH/images/image137.gif b/doc/salome/gui/SMESH/images/image137.gif new file mode 100755 index 000000000..7f4cd13fe Binary files /dev/null and b/doc/salome/gui/SMESH/images/image137.gif differ diff --git a/doc/salome/gui/SMESH/images/image138.gif b/doc/salome/gui/SMESH/images/image138.gif new file mode 100644 index 000000000..1659aab9f Binary files /dev/null and b/doc/salome/gui/SMESH/images/image138.gif differ diff --git a/doc/salome/gui/SMESH/images/image143.gif b/doc/salome/gui/SMESH/images/image143.gif new file mode 100755 index 000000000..de9df148f Binary files /dev/null and b/doc/salome/gui/SMESH/images/image143.gif differ diff --git a/doc/salome/gui/SMESH/images/image144.gif b/doc/salome/gui/SMESH/images/image144.gif new file mode 100644 index 000000000..3dffd53ff Binary files /dev/null and b/doc/salome/gui/SMESH/images/image144.gif differ diff --git a/doc/salome/gui/SMESH/images/image145.gif b/doc/salome/gui/SMESH/images/image145.gif new file mode 100755 index 000000000..8005557e1 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image145.gif differ diff --git a/doc/salome/gui/SMESH/images/image146.gif b/doc/salome/gui/SMESH/images/image146.gif new file mode 100755 index 000000000..18f22241d Binary files /dev/null and b/doc/salome/gui/SMESH/images/image146.gif differ diff --git a/doc/salome/gui/SMESH/images/image147.gif b/doc/salome/gui/SMESH/images/image147.gif new file mode 100755 index 000000000..7b9a354b9 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image147.gif differ diff --git a/doc/salome/gui/SMESH/images/image148.gif b/doc/salome/gui/SMESH/images/image148.gif new file mode 100755 index 000000000..0ef414777 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image148.gif differ diff --git a/doc/salome/gui/SMESH/images/image15.jpg b/doc/salome/gui/SMESH/images/image15.jpg new file mode 100755 index 000000000..15edee5b3 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image15.jpg differ diff --git a/doc/salome/gui/SMESH/images/image151.gif b/doc/salome/gui/SMESH/images/image151.gif new file mode 100755 index 000000000..5c4a20e9a Binary files /dev/null and b/doc/salome/gui/SMESH/images/image151.gif differ diff --git a/doc/salome/gui/SMESH/images/image152.gif b/doc/salome/gui/SMESH/images/image152.gif new file mode 100755 index 000000000..2005d3fff Binary files /dev/null and b/doc/salome/gui/SMESH/images/image152.gif differ diff --git a/doc/salome/gui/SMESH/images/image154.gif b/doc/salome/gui/SMESH/images/image154.gif new file mode 100644 index 000000000..2d527fbbb Binary files /dev/null and b/doc/salome/gui/SMESH/images/image154.gif differ diff --git a/doc/salome/gui/SMESH/images/image155.gif b/doc/salome/gui/SMESH/images/image155.gif new file mode 100644 index 000000000..fe03093b8 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image155.gif differ diff --git a/doc/salome/gui/SMESH/images/image156.gif b/doc/salome/gui/SMESH/images/image156.gif new file mode 100644 index 000000000..36b37c8d1 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image156.gif differ diff --git a/doc/salome/gui/SMESH/images/image157.gif b/doc/salome/gui/SMESH/images/image157.gif new file mode 100644 index 000000000..459215172 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image157.gif differ diff --git a/doc/salome/gui/SMESH/images/image160.gif b/doc/salome/gui/SMESH/images/image160.gif new file mode 100755 index 000000000..6baffdb30 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image160.gif differ diff --git a/doc/salome/gui/SMESH/images/image161.gif b/doc/salome/gui/SMESH/images/image161.gif new file mode 100755 index 000000000..54364d260 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image161.gif differ diff --git a/doc/salome/gui/SMESH/images/image22.jpg b/doc/salome/gui/SMESH/images/image22.jpg new file mode 100755 index 000000000..b6a5e8db6 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image22.jpg differ diff --git a/doc/salome/gui/SMESH/images/image23.jpg b/doc/salome/gui/SMESH/images/image23.jpg new file mode 100755 index 000000000..74f899b00 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image23.jpg differ diff --git a/doc/salome/gui/SMESH/images/image24.gif b/doc/salome/gui/SMESH/images/image24.gif new file mode 100755 index 000000000..3d8032bf0 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image24.gif differ diff --git a/doc/salome/gui/SMESH/images/image25.gif b/doc/salome/gui/SMESH/images/image25.gif new file mode 100755 index 000000000..cd7c967bc Binary files /dev/null and b/doc/salome/gui/SMESH/images/image25.gif differ diff --git a/doc/salome/gui/SMESH/images/image25.jpg b/doc/salome/gui/SMESH/images/image25.jpg new file mode 100755 index 000000000..4b2d4dfe4 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image25.jpg differ diff --git a/doc/salome/gui/SMESH/images/image27.jpg b/doc/salome/gui/SMESH/images/image27.jpg new file mode 100755 index 000000000..d2f32b184 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image27.jpg differ diff --git a/doc/salome/gui/SMESH/images/image28.gif b/doc/salome/gui/SMESH/images/image28.gif new file mode 100755 index 000000000..21f54bf45 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image28.gif differ diff --git a/doc/salome/gui/SMESH/images/image30.jpg b/doc/salome/gui/SMESH/images/image30.jpg new file mode 100755 index 000000000..997a36e35 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image30.jpg differ diff --git a/doc/salome/gui/SMESH/images/image31.jpg b/doc/salome/gui/SMESH/images/image31.jpg new file mode 100755 index 000000000..aa004031b Binary files /dev/null and b/doc/salome/gui/SMESH/images/image31.jpg differ diff --git a/doc/salome/gui/SMESH/images/image32.gif b/doc/salome/gui/SMESH/images/image32.gif new file mode 100755 index 000000000..a1ee2ee02 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image32.gif differ diff --git a/doc/salome/gui/SMESH/images/image32.jpg b/doc/salome/gui/SMESH/images/image32.jpg new file mode 100755 index 000000000..77d595dce Binary files /dev/null and b/doc/salome/gui/SMESH/images/image32.jpg differ diff --git a/doc/salome/gui/SMESH/images/image33.gif b/doc/salome/gui/SMESH/images/image33.gif new file mode 100755 index 000000000..ecdd47b0b Binary files /dev/null and b/doc/salome/gui/SMESH/images/image33.gif differ diff --git a/doc/salome/gui/SMESH/images/image34.gif b/doc/salome/gui/SMESH/images/image34.gif new file mode 100755 index 000000000..963095fe8 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image34.gif differ diff --git a/doc/salome/gui/SMESH/images/image35.gif b/doc/salome/gui/SMESH/images/image35.gif new file mode 100755 index 000000000..0e3b30fd0 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image35.gif differ diff --git a/doc/salome/gui/SMESH/images/image36.gif b/doc/salome/gui/SMESH/images/image36.gif new file mode 100755 index 000000000..7236ef8b9 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image36.gif differ diff --git a/doc/salome/gui/SMESH/images/image36.jpg b/doc/salome/gui/SMESH/images/image36.jpg new file mode 100755 index 000000000..9b44dc727 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image36.jpg differ diff --git a/doc/salome/gui/SMESH/images/image37.gif b/doc/salome/gui/SMESH/images/image37.gif new file mode 100644 index 000000000..edd5263d8 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image37.gif differ diff --git a/doc/salome/gui/SMESH/images/image37.jpg b/doc/salome/gui/SMESH/images/image37.jpg new file mode 100755 index 000000000..5fba91a2f Binary files /dev/null and b/doc/salome/gui/SMESH/images/image37.jpg differ diff --git a/doc/salome/gui/SMESH/images/image38.gif b/doc/salome/gui/SMESH/images/image38.gif new file mode 100755 index 000000000..087f6e2be Binary files /dev/null and b/doc/salome/gui/SMESH/images/image38.gif differ diff --git a/doc/salome/gui/SMESH/images/image38.jpg b/doc/salome/gui/SMESH/images/image38.jpg new file mode 100755 index 000000000..29d5e716c Binary files /dev/null and b/doc/salome/gui/SMESH/images/image38.jpg differ diff --git a/doc/salome/gui/SMESH/images/image39.gif b/doc/salome/gui/SMESH/images/image39.gif new file mode 100755 index 000000000..b206af116 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image39.gif differ diff --git a/doc/salome/gui/SMESH/images/image40.gif b/doc/salome/gui/SMESH/images/image40.gif new file mode 100755 index 000000000..becc12a47 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image40.gif differ diff --git a/doc/salome/gui/SMESH/images/image41.gif b/doc/salome/gui/SMESH/images/image41.gif new file mode 100755 index 000000000..2e132c239 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image41.gif differ diff --git a/doc/salome/gui/SMESH/images/image46.gif b/doc/salome/gui/SMESH/images/image46.gif new file mode 100755 index 000000000..0f00ea7cf Binary files /dev/null and b/doc/salome/gui/SMESH/images/image46.gif differ diff --git a/doc/salome/gui/SMESH/images/image49.gif b/doc/salome/gui/SMESH/images/image49.gif new file mode 100755 index 000000000..d10d9c4df Binary files /dev/null and b/doc/salome/gui/SMESH/images/image49.gif differ diff --git a/doc/salome/gui/SMESH/images/image5.jpg b/doc/salome/gui/SMESH/images/image5.jpg new file mode 100755 index 000000000..f195ac88a Binary files /dev/null and b/doc/salome/gui/SMESH/images/image5.jpg differ diff --git a/doc/salome/gui/SMESH/images/image50.gif b/doc/salome/gui/SMESH/images/image50.gif new file mode 100755 index 000000000..72d39545a Binary files /dev/null and b/doc/salome/gui/SMESH/images/image50.gif differ diff --git a/doc/salome/gui/SMESH/images/image51.jpg b/doc/salome/gui/SMESH/images/image51.jpg new file mode 100755 index 000000000..dfe3bc606 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image51.jpg differ diff --git a/doc/salome/gui/SMESH/images/image52.jpg b/doc/salome/gui/SMESH/images/image52.jpg new file mode 100755 index 000000000..1c83b35f8 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image52.jpg differ diff --git a/doc/salome/gui/SMESH/images/image53.gif b/doc/salome/gui/SMESH/images/image53.gif new file mode 100755 index 000000000..8f728207f Binary files /dev/null and b/doc/salome/gui/SMESH/images/image53.gif differ diff --git a/doc/salome/gui/SMESH/images/image55.gif b/doc/salome/gui/SMESH/images/image55.gif new file mode 100755 index 000000000..cc1b80e48 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image55.gif differ diff --git a/doc/salome/gui/SMESH/images/image56.gif b/doc/salome/gui/SMESH/images/image56.gif new file mode 100755 index 000000000..ffe1e9521 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image56.gif differ diff --git a/doc/salome/gui/SMESH/images/image56.jpg b/doc/salome/gui/SMESH/images/image56.jpg new file mode 100755 index 000000000..5fba91a2f Binary files /dev/null and b/doc/salome/gui/SMESH/images/image56.jpg differ diff --git a/doc/salome/gui/SMESH/images/image58.gif b/doc/salome/gui/SMESH/images/image58.gif new file mode 100755 index 000000000..45e28568e Binary files /dev/null and b/doc/salome/gui/SMESH/images/image58.gif differ diff --git a/doc/salome/gui/SMESH/images/image63.gif b/doc/salome/gui/SMESH/images/image63.gif new file mode 100755 index 000000000..6a9c2c86d Binary files /dev/null and b/doc/salome/gui/SMESH/images/image63.gif differ diff --git a/doc/salome/gui/SMESH/images/image64.gif b/doc/salome/gui/SMESH/images/image64.gif new file mode 100755 index 000000000..1d92c81f1 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image64.gif differ diff --git a/doc/salome/gui/SMESH/images/image67.gif b/doc/salome/gui/SMESH/images/image67.gif new file mode 100755 index 000000000..68bd3e383 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image67.gif differ diff --git a/doc/salome/gui/SMESH/images/image7.jpg b/doc/salome/gui/SMESH/images/image7.jpg new file mode 100644 index 000000000..cbd6170ee Binary files /dev/null and b/doc/salome/gui/SMESH/images/image7.jpg differ diff --git a/doc/salome/gui/SMESH/images/image70.gif b/doc/salome/gui/SMESH/images/image70.gif new file mode 100755 index 000000000..120b8e8ef Binary files /dev/null and b/doc/salome/gui/SMESH/images/image70.gif differ diff --git a/doc/salome/gui/SMESH/images/image70.jpg b/doc/salome/gui/SMESH/images/image70.jpg new file mode 100755 index 000000000..0df360f68 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image70.jpg differ diff --git a/doc/salome/gui/SMESH/images/image71.gif b/doc/salome/gui/SMESH/images/image71.gif new file mode 100755 index 000000000..0008354f6 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image71.gif differ diff --git a/doc/salome/gui/SMESH/images/image71.jpg b/doc/salome/gui/SMESH/images/image71.jpg new file mode 100755 index 000000000..cb1223d38 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image71.jpg differ diff --git a/doc/salome/gui/SMESH/images/image74.gif b/doc/salome/gui/SMESH/images/image74.gif new file mode 100755 index 000000000..c66029e74 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image74.gif differ diff --git a/doc/salome/gui/SMESH/images/image76.jpg b/doc/salome/gui/SMESH/images/image76.jpg new file mode 100755 index 000000000..88ec89ffe Binary files /dev/null and b/doc/salome/gui/SMESH/images/image76.jpg differ diff --git a/doc/salome/gui/SMESH/images/image77.jpg b/doc/salome/gui/SMESH/images/image77.jpg new file mode 100755 index 000000000..c253eacae Binary files /dev/null and b/doc/salome/gui/SMESH/images/image77.jpg differ diff --git a/doc/salome/gui/SMESH/images/image78.jpg b/doc/salome/gui/SMESH/images/image78.jpg new file mode 100755 index 000000000..80c2a1633 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image78.jpg differ diff --git a/doc/salome/gui/SMESH/images/image79.gif b/doc/salome/gui/SMESH/images/image79.gif new file mode 100755 index 000000000..9711ccbc9 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image79.gif differ diff --git a/doc/salome/gui/SMESH/images/image79.jpg b/doc/salome/gui/SMESH/images/image79.jpg new file mode 100755 index 000000000..6d164167f Binary files /dev/null and b/doc/salome/gui/SMESH/images/image79.jpg differ diff --git a/doc/salome/gui/SMESH/images/image80.gif b/doc/salome/gui/SMESH/images/image80.gif new file mode 100755 index 000000000..399af0a9a Binary files /dev/null and b/doc/salome/gui/SMESH/images/image80.gif differ diff --git a/doc/salome/gui/SMESH/images/image82.gif b/doc/salome/gui/SMESH/images/image82.gif new file mode 100755 index 000000000..93c6c9b96 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image82.gif differ diff --git a/doc/salome/gui/SMESH/images/image83.gif b/doc/salome/gui/SMESH/images/image83.gif new file mode 100755 index 000000000..331b64a10 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image83.gif differ diff --git a/doc/salome/gui/SMESH/images/image84.gif b/doc/salome/gui/SMESH/images/image84.gif new file mode 100755 index 000000000..ea8ec56bc Binary files /dev/null and b/doc/salome/gui/SMESH/images/image84.gif differ diff --git a/doc/salome/gui/SMESH/images/image86.jpg b/doc/salome/gui/SMESH/images/image86.jpg new file mode 100644 index 000000000..168b43e2c Binary files /dev/null and b/doc/salome/gui/SMESH/images/image86.jpg differ diff --git a/doc/salome/gui/SMESH/images/image88.gif b/doc/salome/gui/SMESH/images/image88.gif new file mode 100755 index 000000000..b2d4b73fc Binary files /dev/null and b/doc/salome/gui/SMESH/images/image88.gif differ diff --git a/doc/salome/gui/SMESH/images/image88.jpg b/doc/salome/gui/SMESH/images/image88.jpg new file mode 100755 index 000000000..3b2a9739c Binary files /dev/null and b/doc/salome/gui/SMESH/images/image88.jpg differ diff --git a/doc/salome/gui/SMESH/images/image90.jpg b/doc/salome/gui/SMESH/images/image90.jpg new file mode 100755 index 000000000..4f4c301d4 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image90.jpg differ diff --git a/doc/salome/gui/SMESH/images/image91.gif b/doc/salome/gui/SMESH/images/image91.gif new file mode 100755 index 000000000..a09ab9e76 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image91.gif differ diff --git a/doc/salome/gui/SMESH/images/image92.gif b/doc/salome/gui/SMESH/images/image92.gif new file mode 100755 index 000000000..9e0517f5d Binary files /dev/null and b/doc/salome/gui/SMESH/images/image92.gif differ diff --git a/doc/salome/gui/SMESH/images/image92.jpg b/doc/salome/gui/SMESH/images/image92.jpg new file mode 100755 index 000000000..bf6e61049 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image92.jpg differ diff --git a/doc/salome/gui/SMESH/images/image93.jpg b/doc/salome/gui/SMESH/images/image93.jpg new file mode 100755 index 000000000..f9780b4ba Binary files /dev/null and b/doc/salome/gui/SMESH/images/image93.jpg differ diff --git a/doc/salome/gui/SMESH/images/image94.gif b/doc/salome/gui/SMESH/images/image94.gif new file mode 100755 index 000000000..7313f5deb Binary files /dev/null and b/doc/salome/gui/SMESH/images/image94.gif differ diff --git a/doc/salome/gui/SMESH/images/image94.jpg b/doc/salome/gui/SMESH/images/image94.jpg new file mode 100644 index 000000000..789166734 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image94.jpg differ diff --git a/doc/salome/gui/SMESH/images/image95.gif b/doc/salome/gui/SMESH/images/image95.gif new file mode 100755 index 000000000..6491f27d4 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image95.gif differ diff --git a/doc/salome/gui/SMESH/images/image95.jpg b/doc/salome/gui/SMESH/images/image95.jpg new file mode 100755 index 000000000..047dccf64 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image95.jpg differ diff --git a/doc/salome/gui/SMESH/images/image96.gif b/doc/salome/gui/SMESH/images/image96.gif new file mode 100755 index 000000000..1392ee705 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image96.gif differ diff --git a/doc/salome/gui/SMESH/images/image96.jpg b/doc/salome/gui/SMESH/images/image96.jpg new file mode 100755 index 000000000..5f3128eb9 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image96.jpg differ diff --git a/doc/salome/gui/SMESH/images/image97.gif b/doc/salome/gui/SMESH/images/image97.gif new file mode 100755 index 000000000..480b584ed Binary files /dev/null and b/doc/salome/gui/SMESH/images/image97.gif differ diff --git a/doc/salome/gui/SMESH/images/image97.jpg b/doc/salome/gui/SMESH/images/image97.jpg new file mode 100755 index 000000000..275f2e396 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image97.jpg differ diff --git a/doc/salome/gui/SMESH/images/image98.gif b/doc/salome/gui/SMESH/images/image98.gif new file mode 100755 index 000000000..5f375b774 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image98.gif differ diff --git a/doc/salome/gui/SMESH/images/image99.gif b/doc/salome/gui/SMESH/images/image99.gif new file mode 100755 index 000000000..4959ed825 Binary files /dev/null and b/doc/salome/gui/SMESH/images/image99.gif differ diff --git a/doc/salome/gui/SMESH/images/intersect_groups1.png b/doc/salome/gui/SMESH/images/intersect_groups1.png new file mode 100755 index 000000000..9251b0e7a Binary files /dev/null and b/doc/salome/gui/SMESH/images/intersect_groups1.png differ diff --git a/doc/salome/gui/SMESH/images/intersect_groups2.png b/doc/salome/gui/SMESH/images/intersect_groups2.png new file mode 100755 index 000000000..eeaed8da1 Binary files /dev/null and b/doc/salome/gui/SMESH/images/intersect_groups2.png differ diff --git a/doc/salome/gui/SMESH/images/intersect_groups3.png b/doc/salome/gui/SMESH/images/intersect_groups3.png new file mode 100755 index 000000000..74f5c2d76 Binary files /dev/null and b/doc/salome/gui/SMESH/images/intersect_groups3.png differ diff --git a/doc/salome/gui/SMESH/images/intersectgroups.png b/doc/salome/gui/SMESH/images/intersectgroups.png new file mode 100755 index 000000000..b28b4d4d6 Binary files /dev/null and b/doc/salome/gui/SMESH/images/intersectgroups.png differ diff --git a/doc/salome/gui/SMESH/images/length-crit.png b/doc/salome/gui/SMESH/images/length-crit.png new file mode 100755 index 000000000..96836cd87 Binary files /dev/null and b/doc/salome/gui/SMESH/images/length-crit.png differ diff --git a/doc/salome/gui/SMESH/images/length2d.png b/doc/salome/gui/SMESH/images/length2d.png new file mode 100755 index 000000000..9a5264a02 Binary files /dev/null and b/doc/salome/gui/SMESH/images/length2d.png differ diff --git a/doc/salome/gui/SMESH/images/lengthnearvertex.png b/doc/salome/gui/SMESH/images/lengthnearvertex.png new file mode 100755 index 000000000..008dcb16e Binary files /dev/null and b/doc/salome/gui/SMESH/images/lengthnearvertex.png differ diff --git a/doc/salome/gui/SMESH/images/max_el_area.png b/doc/salome/gui/SMESH/images/max_el_area.png new file mode 100755 index 000000000..88db3d6f8 Binary files /dev/null and b/doc/salome/gui/SMESH/images/max_el_area.png differ diff --git a/doc/salome/gui/SMESH/images/mergeelems.png b/doc/salome/gui/SMESH/images/mergeelems.png new file mode 100755 index 000000000..dbd87877e Binary files /dev/null and b/doc/salome/gui/SMESH/images/mergeelems.png differ diff --git a/doc/salome/gui/SMESH/images/mergenodes.png b/doc/salome/gui/SMESH/images/mergenodes.png new file mode 100755 index 000000000..d7437e400 Binary files /dev/null and b/doc/salome/gui/SMESH/images/mergenodes.png differ diff --git a/doc/salome/gui/SMESH/images/merging_nodes1.png b/doc/salome/gui/SMESH/images/merging_nodes1.png new file mode 100755 index 000000000..f64bdcbe2 Binary files /dev/null and b/doc/salome/gui/SMESH/images/merging_nodes1.png differ diff --git a/doc/salome/gui/SMESH/images/merging_nodes2.png b/doc/salome/gui/SMESH/images/merging_nodes2.png new file mode 100755 index 000000000..8d7cfdd09 Binary files /dev/null and b/doc/salome/gui/SMESH/images/merging_nodes2.png differ diff --git a/doc/salome/gui/SMESH/images/mesh_cylinder_hexa.png b/doc/salome/gui/SMESH/images/mesh_cylinder_hexa.png new file mode 100644 index 000000000..f95dc67f7 Binary files /dev/null and b/doc/salome/gui/SMESH/images/mesh_cylinder_hexa.png differ diff --git a/doc/salome/gui/SMESH/images/mesh_for_extr_along_path.png b/doc/salome/gui/SMESH/images/mesh_for_extr_along_path.png new file mode 100644 index 000000000..4ee52ebfa Binary files /dev/null and b/doc/salome/gui/SMESH/images/mesh_for_extr_along_path.png differ diff --git a/doc/salome/gui/SMESH/images/mesh_node_to_point.png b/doc/salome/gui/SMESH/images/mesh_node_to_point.png new file mode 100644 index 000000000..5d534cb9d Binary files /dev/null and b/doc/salome/gui/SMESH/images/mesh_node_to_point.png differ diff --git a/doc/salome/gui/SMESH/images/meshcomputationfail.png b/doc/salome/gui/SMESH/images/meshcomputationfail.png new file mode 100644 index 000000000..9c26158e2 Binary files /dev/null and b/doc/salome/gui/SMESH/images/meshcomputationfail.png differ diff --git a/doc/salome/gui/SMESH/images/meshcomputationsucceed.png b/doc/salome/gui/SMESH/images/meshcomputationsucceed.png new file mode 100644 index 000000000..ab2357910 Binary files /dev/null and b/doc/salome/gui/SMESH/images/meshcomputationsucceed.png differ diff --git a/doc/salome/gui/SMESH/images/meshexportmesh.png b/doc/salome/gui/SMESH/images/meshexportmesh.png new file mode 100755 index 000000000..a84b25207 Binary files /dev/null and b/doc/salome/gui/SMESH/images/meshexportmesh.png differ diff --git a/doc/salome/gui/SMESH/images/meshimportmesh.png b/doc/salome/gui/SMESH/images/meshimportmesh.png new file mode 100755 index 000000000..f87250bf4 Binary files /dev/null and b/doc/salome/gui/SMESH/images/meshimportmesh.png differ diff --git a/doc/salome/gui/SMESH/images/meshtopass.png b/doc/salome/gui/SMESH/images/meshtopass.png new file mode 100755 index 000000000..044c0164b Binary files /dev/null and b/doc/salome/gui/SMESH/images/meshtopass.png differ diff --git a/doc/salome/gui/SMESH/images/meshtrianglemergeelem1.png b/doc/salome/gui/SMESH/images/meshtrianglemergeelem1.png new file mode 100755 index 000000000..0f9bd5215 Binary files /dev/null and b/doc/salome/gui/SMESH/images/meshtrianglemergeelem1.png differ diff --git a/doc/salome/gui/SMESH/images/movenodes.png b/doc/salome/gui/SMESH/images/movenodes.png new file mode 100755 index 000000000..16e9e6262 Binary files /dev/null and b/doc/salome/gui/SMESH/images/movenodes.png differ diff --git a/doc/salome/gui/SMESH/images/moving_nodes1.png b/doc/salome/gui/SMESH/images/moving_nodes1.png new file mode 100755 index 000000000..2bae38850 Binary files /dev/null and b/doc/salome/gui/SMESH/images/moving_nodes1.png differ diff --git a/doc/salome/gui/SMESH/images/moving_nodes2.png b/doc/salome/gui/SMESH/images/moving_nodes2.png new file mode 100755 index 000000000..b65e57ae9 Binary files /dev/null and b/doc/salome/gui/SMESH/images/moving_nodes2.png differ diff --git a/doc/salome/gui/SMESH/images/netgen2d.png b/doc/salome/gui/SMESH/images/netgen2d.png new file mode 100644 index 000000000..b2a9f25ed Binary files /dev/null and b/doc/salome/gui/SMESH/images/netgen2d.png differ diff --git a/doc/salome/gui/SMESH/images/number_of_layers.png b/doc/salome/gui/SMESH/images/number_of_layers.png new file mode 100644 index 000000000..846fa2c3e Binary files /dev/null and b/doc/salome/gui/SMESH/images/number_of_layers.png differ diff --git a/doc/salome/gui/SMESH/images/orientaation1.png b/doc/salome/gui/SMESH/images/orientaation1.png new file mode 100755 index 000000000..c23b0b8a8 Binary files /dev/null and b/doc/salome/gui/SMESH/images/orientaation1.png differ diff --git a/doc/salome/gui/SMESH/images/patternmapping1.png b/doc/salome/gui/SMESH/images/patternmapping1.png new file mode 100755 index 000000000..14daae187 Binary files /dev/null and b/doc/salome/gui/SMESH/images/patternmapping1.png differ diff --git a/doc/salome/gui/SMESH/images/patternmapping2.png b/doc/salome/gui/SMESH/images/patternmapping2.png new file mode 100755 index 000000000..fbcf35544 Binary files /dev/null and b/doc/salome/gui/SMESH/images/patternmapping2.png differ diff --git a/doc/salome/gui/SMESH/images/projection_1d.png b/doc/salome/gui/SMESH/images/projection_1d.png new file mode 100644 index 000000000..1560acaee Binary files /dev/null and b/doc/salome/gui/SMESH/images/projection_1d.png differ diff --git a/doc/salome/gui/SMESH/images/projection_2d.png b/doc/salome/gui/SMESH/images/projection_2d.png new file mode 100644 index 000000000..91d446b5c Binary files /dev/null and b/doc/salome/gui/SMESH/images/projection_2d.png differ diff --git a/doc/salome/gui/SMESH/images/projection_3d.png b/doc/salome/gui/SMESH/images/projection_3d.png new file mode 100644 index 000000000..aeffc7a48 Binary files /dev/null and b/doc/salome/gui/SMESH/images/projection_3d.png differ diff --git a/doc/salome/gui/SMESH/images/remove.gif b/doc/salome/gui/SMESH/images/remove.gif new file mode 100644 index 000000000..8b81cb25e Binary files /dev/null and b/doc/salome/gui/SMESH/images/remove.gif differ diff --git a/doc/salome/gui/SMESH/images/remove_elements1.png b/doc/salome/gui/SMESH/images/remove_elements1.png new file mode 100755 index 000000000..538460f43 Binary files /dev/null and b/doc/salome/gui/SMESH/images/remove_elements1.png differ diff --git a/doc/salome/gui/SMESH/images/remove_elements2.png b/doc/salome/gui/SMESH/images/remove_elements2.png new file mode 100755 index 000000000..888188cc7 Binary files /dev/null and b/doc/salome/gui/SMESH/images/remove_elements2.png differ diff --git a/doc/salome/gui/SMESH/images/remove_elements_icon.png b/doc/salome/gui/SMESH/images/remove_elements_icon.png new file mode 100644 index 000000000..a2bb0f12a Binary files /dev/null and b/doc/salome/gui/SMESH/images/remove_elements_icon.png differ diff --git a/doc/salome/gui/SMESH/images/remove_nodes1.png b/doc/salome/gui/SMESH/images/remove_nodes1.png new file mode 100755 index 000000000..94caae679 Binary files /dev/null and b/doc/salome/gui/SMESH/images/remove_nodes1.png differ diff --git a/doc/salome/gui/SMESH/images/remove_nodes2.png b/doc/salome/gui/SMESH/images/remove_nodes2.png new file mode 100755 index 000000000..e9f806402 Binary files /dev/null and b/doc/salome/gui/SMESH/images/remove_nodes2.png differ diff --git a/doc/salome/gui/SMESH/images/removeelements.png b/doc/salome/gui/SMESH/images/removeelements.png new file mode 100755 index 000000000..42a79b5b1 Binary files /dev/null and b/doc/salome/gui/SMESH/images/removeelements.png differ diff --git a/doc/salome/gui/SMESH/images/removenodes.png b/doc/salome/gui/SMESH/images/removenodes.png new file mode 100755 index 000000000..cfcb777c6 Binary files /dev/null and b/doc/salome/gui/SMESH/images/removenodes.png differ diff --git a/doc/salome/gui/SMESH/images/renumberelements.png b/doc/salome/gui/SMESH/images/renumberelements.png new file mode 100755 index 000000000..0812b5066 Binary files /dev/null and b/doc/salome/gui/SMESH/images/renumberelements.png differ diff --git a/doc/salome/gui/SMESH/images/renumbernodes.png b/doc/salome/gui/SMESH/images/renumbernodes.png new file mode 100755 index 000000000..90a0eda13 Binary files /dev/null and b/doc/salome/gui/SMESH/images/renumbernodes.png differ diff --git a/doc/salome/gui/SMESH/images/revolution1.png b/doc/salome/gui/SMESH/images/revolution1.png new file mode 100755 index 000000000..0334e3b7e Binary files /dev/null and b/doc/salome/gui/SMESH/images/revolution1.png differ diff --git a/doc/salome/gui/SMESH/images/revolution2.png b/doc/salome/gui/SMESH/images/revolution2.png new file mode 100755 index 000000000..5612f9106 Binary files /dev/null and b/doc/salome/gui/SMESH/images/revolution2.png differ diff --git a/doc/salome/gui/SMESH/images/rotation.png b/doc/salome/gui/SMESH/images/rotation.png new file mode 100755 index 000000000..aed7744ba Binary files /dev/null and b/doc/salome/gui/SMESH/images/rotation.png differ diff --git a/doc/salome/gui/SMESH/images/rotation1.png b/doc/salome/gui/SMESH/images/rotation1.png new file mode 100755 index 000000000..5a4ad9901 Binary files /dev/null and b/doc/salome/gui/SMESH/images/rotation1.png differ diff --git a/doc/salome/gui/SMESH/images/rotation2.png b/doc/salome/gui/SMESH/images/rotation2.png new file mode 100755 index 000000000..366771a69 Binary files /dev/null and b/doc/salome/gui/SMESH/images/rotation2.png differ diff --git a/doc/salome/gui/SMESH/images/selectionfilterlibrary.png b/doc/salome/gui/SMESH/images/selectionfilterlibrary.png new file mode 100755 index 000000000..f07c09641 Binary files /dev/null and b/doc/salome/gui/SMESH/images/selectionfilterlibrary.png differ diff --git a/doc/salome/gui/SMESH/images/sewing1.png b/doc/salome/gui/SMESH/images/sewing1.png new file mode 100755 index 000000000..795d7a06b Binary files /dev/null and b/doc/salome/gui/SMESH/images/sewing1.png differ diff --git a/doc/salome/gui/SMESH/images/sewing2.png b/doc/salome/gui/SMESH/images/sewing2.png new file mode 100755 index 000000000..66a409973 Binary files /dev/null and b/doc/salome/gui/SMESH/images/sewing2.png differ diff --git a/doc/salome/gui/SMESH/images/sewing3.png b/doc/salome/gui/SMESH/images/sewing3.png new file mode 100755 index 000000000..6c74f1cbf Binary files /dev/null and b/doc/salome/gui/SMESH/images/sewing3.png differ diff --git a/doc/salome/gui/SMESH/images/sewing4.png b/doc/salome/gui/SMESH/images/sewing4.png new file mode 100755 index 000000000..cd9869a85 Binary files /dev/null and b/doc/salome/gui/SMESH/images/sewing4.png differ diff --git a/doc/salome/gui/SMESH/images/smoothing.png b/doc/salome/gui/SMESH/images/smoothing.png new file mode 100755 index 000000000..0fda00a22 Binary files /dev/null and b/doc/salome/gui/SMESH/images/smoothing.png differ diff --git a/doc/salome/gui/SMESH/images/smoothing1.png b/doc/salome/gui/SMESH/images/smoothing1.png new file mode 100755 index 000000000..763a5300b Binary files /dev/null and b/doc/salome/gui/SMESH/images/smoothing1.png differ diff --git a/doc/salome/gui/SMESH/images/smoothing2.png b/doc/salome/gui/SMESH/images/smoothing2.png new file mode 100755 index 000000000..bfce45739 Binary files /dev/null and b/doc/salome/gui/SMESH/images/smoothing2.png differ diff --git a/doc/salome/gui/SMESH/images/sort.gif b/doc/salome/gui/SMESH/images/sort.gif new file mode 100644 index 000000000..28a5dff29 Binary files /dev/null and b/doc/salome/gui/SMESH/images/sort.gif differ diff --git a/doc/salome/gui/SMESH/images/straight_after.png b/doc/salome/gui/SMESH/images/straight_after.png new file mode 100644 index 000000000..4572fea7b Binary files /dev/null and b/doc/salome/gui/SMESH/images/straight_after.png differ diff --git a/doc/salome/gui/SMESH/images/straight_before.png b/doc/salome/gui/SMESH/images/straight_before.png new file mode 100644 index 000000000..200aad85d Binary files /dev/null and b/doc/salome/gui/SMESH/images/straight_before.png differ diff --git a/doc/salome/gui/SMESH/images/symmetry1.png b/doc/salome/gui/SMESH/images/symmetry1.png new file mode 100755 index 000000000..c8fda3e9d Binary files /dev/null and b/doc/salome/gui/SMESH/images/symmetry1.png differ diff --git a/doc/salome/gui/SMESH/images/symmetry2.png b/doc/salome/gui/SMESH/images/symmetry2.png new file mode 100755 index 000000000..b92fdd9f6 Binary files /dev/null and b/doc/salome/gui/SMESH/images/symmetry2.png differ diff --git a/doc/salome/gui/SMESH/images/symmetry3.png b/doc/salome/gui/SMESH/images/symmetry3.png new file mode 100755 index 000000000..b573636bc Binary files /dev/null and b/doc/salome/gui/SMESH/images/symmetry3.png differ diff --git a/doc/salome/gui/SMESH/images/translation1.png b/doc/salome/gui/SMESH/images/translation1.png new file mode 100755 index 000000000..f6909fbdb Binary files /dev/null and b/doc/salome/gui/SMESH/images/translation1.png differ diff --git a/doc/salome/gui/SMESH/images/translation2.png b/doc/salome/gui/SMESH/images/translation2.png new file mode 100755 index 000000000..d1923e67f Binary files /dev/null and b/doc/salome/gui/SMESH/images/translation2.png differ diff --git a/doc/salome/gui/SMESH/images/union_groups1.png b/doc/salome/gui/SMESH/images/union_groups1.png new file mode 100755 index 000000000..7b2fc7511 Binary files /dev/null and b/doc/salome/gui/SMESH/images/union_groups1.png differ diff --git a/doc/salome/gui/SMESH/images/union_groups2.png b/doc/salome/gui/SMESH/images/union_groups2.png new file mode 100755 index 000000000..980e48d41 Binary files /dev/null and b/doc/salome/gui/SMESH/images/union_groups2.png differ diff --git a/doc/salome/gui/SMESH/images/union_groups3.png b/doc/salome/gui/SMESH/images/union_groups3.png new file mode 100755 index 000000000..caf6bb42b Binary files /dev/null and b/doc/salome/gui/SMESH/images/union_groups3.png differ diff --git a/doc/salome/gui/SMESH/images/uniongroups.png b/doc/salome/gui/SMESH/images/uniongroups.png new file mode 100755 index 000000000..936c3b9f7 Binary files /dev/null and b/doc/salome/gui/SMESH/images/uniongroups.png differ diff --git a/doc/salome/gui/SMESH/images/unionoftwotriangles.png b/doc/salome/gui/SMESH/images/unionoftwotriangles.png new file mode 100755 index 000000000..b9d2bdbd7 Binary files /dev/null and b/doc/salome/gui/SMESH/images/unionoftwotriangles.png differ diff --git a/doc/salome/gui/SMESH/images/uniting_a_set_of_triangles1.png b/doc/salome/gui/SMESH/images/uniting_a_set_of_triangles1.png new file mode 100755 index 000000000..fb00167a5 Binary files /dev/null and b/doc/salome/gui/SMESH/images/uniting_a_set_of_triangles1.png differ diff --git a/doc/salome/gui/SMESH/images/uniting_a_set_of_triangles2.png b/doc/salome/gui/SMESH/images/uniting_a_set_of_triangles2.png new file mode 100755 index 000000000..16d135112 Binary files /dev/null and b/doc/salome/gui/SMESH/images/uniting_a_set_of_triangles2.png differ diff --git a/doc/salome/gui/SMESH/images/uniting_two_triangles1.png b/doc/salome/gui/SMESH/images/uniting_two_triangles1.png new file mode 100755 index 000000000..e94be3a0f Binary files /dev/null and b/doc/salome/gui/SMESH/images/uniting_two_triangles1.png differ diff --git a/doc/salome/gui/SMESH/images/uniting_two_triangles2.png b/doc/salome/gui/SMESH/images/uniting_two_triangles2.png new file mode 100755 index 000000000..5cac5f541 Binary files /dev/null and b/doc/salome/gui/SMESH/images/uniting_two_triangles2.png differ diff --git a/doc/salome/gui/SMESH/index.htm b/doc/salome/gui/SMESH/index.htm deleted file mode 100755 index 3163eee1b..000000000 --- a/doc/salome/gui/SMESH/index.htm +++ /dev/null @@ -1,180 +0,0 @@ - - -Mesh Module Reference Manual - - - - - - - - - - - - - diff --git a/doc/salome/gui/SMESH/index_csh.htm b/doc/salome/gui/SMESH/index_csh.htm deleted file mode 100755 index 867d877c9..000000000 --- a/doc/salome/gui/SMESH/index_csh.htm +++ /dev/null @@ -1,106 +0,0 @@ - - -Mesh Module Reference Manual - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/salome/gui/SMESH/index_rhc.htm b/doc/salome/gui/SMESH/index_rhc.htm deleted file mode 100755 index b751bd4c8..000000000 --- a/doc/salome/gui/SMESH/index_rhc.htm +++ /dev/null @@ -1,106 +0,0 @@ - - -Mesh Module Reference Manual - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/1d_meshing_hypo.doc b/doc/salome/gui/SMESH/input/1d_meshing_hypo.doc new file mode 100644 index 000000000..716ddd90d --- /dev/null +++ b/doc/salome/gui/SMESH/input/1d_meshing_hypo.doc @@ -0,0 +1,167 @@ +/*! + +\page a1d_meshing_hypo_page 1D Meshing Hypotheses + +
+
    +
  • \ref arithmetic_1d_anchor "Arithmetic 1D"
  • +
  • \ref average_length_anchor "Average Length"
  • +
  • \ref deflection_1d_anchor "Deflection 1D"
  • +
  • \ref number_of_segments_anchor "Number of segments"
  • +
  • \ref start_and_end_length_anchor "Start and end length"
  • +
  • \ref automatic_length_anchor "Automatic Length"
  • +
+ +
+\anchor arithmetic_1d_anchor +

Arithmetic 1D hypothesis

+ +Arithmetic 1D hypothesis allows to split edges into segments with a +length that changes in arithmetic progression (Lk = Lk-1 + d) +beginning from a given starting length and up to a given end length. + +\image html a-arithmetic1d.png + +\image html b-ithmetic1d.png + +See Also a sample TUI Script of a +\ref tui_1d_arithmetic "Defining Arithmetic 1D hypothesis" operation. + +
+\anchor deflection_1d_anchor +

Deflection 1D hypothesis

+ +Deflection 1D hypothesis can be applied for meshing curvilinear edges +composing your geometrical object. It uses only one parameter: the +value of deflection. +\n A geometrical edge is divided into equal segments. The maximum +distance between a point on the edge within a segment and the line +connecting the ends of the segment should not exceed the specified +value of deflection . Then mesh nodes are constructed at end segment +locations and 1D mesh elements are constructed on segments. + +\image html a-deflection1d.png + +\image html b-flection1d.png + +See Also a sample TUI Script of a +\ref tui_deflection_1d "Defining Deflection 1D hypothesis" operation. + +
+\anchor average_length_anchor +

Average Length hypothesis

+ +Average Length hypothesis can be applied for meshing of edges +composing your geometrical object. Definition of this hypothesis +consists of setting the \b length of segments, which will split these +edges, and the \b precision of rounding. The points on the edges +generated by these segments will represent nodes of your mesh. +Later these nodes will be used for meshing of the faces abutting to +these edges. + +The \b precision parameter is used to allow rounding a number of +segments, calculated from the edge length and average length of +segment, to the lower integer, if this value outstands from it in +bounds of the precision. Otherwise, the number of segments is rounded +to the higher integer. Use value 0.5 to provide rounding to the +nearest integer, 1.0 for the lower integer, 0.0 for the higher +integer. Default value is 1e-07. + +\image html image41.gif + +\image html a-averagelength.png + +\image html b-erage_length.png + +See Also a sample TUI Script of a +\ref tui_average_length "Defining Average Length" hypothesis +operation. + +
+\anchor number_of_segments_anchor +

Number of segments hypothesis

+ +Number of segments hypothesis can be applied for meshing of edges +composing your geometrical object. Definition of this hypothesis +consists of setting the number of segments, which will split these +edges. In other words your edges will be split into a definite number +of segments with approximately the same length. The points on the +edges generated by these segments will represent nodes of your +mesh. Later these nodes will be used for meshing of the faces abutting +to these edges. + +\image html image46.gif + +You can set the type of distribution for this hypothesis in the +Hypothesis Construction dialog bog : + +\image html a-nbsegments1.png + +
Equidistant Distribution - all segments will have the same +length, you define only the Number of Segments. + +\image html b-mberofsegments.png + +
Scale Distribution - each next segment differs from the +previous according to the formula: Ai+1 = Ai * k, where \b k is a +Scale Factor. + +\image html a-nbsegments2.png + +
Distribution with Table Density - you input a number of +pairs t - F(t), where \b t ranges from 0 to 1, and the module computes the +formula, which will rule the change of length of segments and shows +the curve in the plot. You can select the Conversion mode from +\b Exponent and Cut negative. + +\image html distributionwithtabledensity.png + +
Distribution with Analytic Density - you input the formula, +which will rule the change of length of segments and the module shows +the curve in the plot. + +\image html distributionwithanalyticdensity.png + +See Also a sample TUI Script of a +\ref tui_deflection_1d "Defining Number of Segments" hypothesis +operation. + +
+\anchor start_and_end_length_anchor +

Start and End Length hypothesis

+ +Start and End Length hypothesis allows to divide a geometrical edge +into segments so that the first and the last segments have a specified +length. The length of each but the first segment differs from length +of the previous one by a constant factor. Then mesh nodes are +constructed at segment ends location and 1D mesh elements are +constructed on them. + +\image html a-startendlength.png + +\image html b-art_end_length.png + +See Also a sample TUI Script of a +\ref tui_start_and_end_length "Defining Start and End Length" +hypothesis operation. + +
+\anchor automatic_length_anchor +

Automatic Length

+ +This hypothesis is automatically applied when you select Assign a +set of hypotheses option in Create Mesh menu. + +\image html automaticlength.png + +The dialog box prompts you to define the quality of the future mesh by +only one parameter, which is \b Fineness, ranging from 0 (coarse mesh, +low number of elements) to 1 (extremely fine mesh, great number of +elements). Compare one and the same object (sphere) meshed with +minimum and maximum value of this parameter. + +\image html image147.gif + +\image html image148.gif + +*/ diff --git a/doc/salome/gui/SMESH/input/2d_meshing_hypo.doc b/doc/salome/gui/SMESH/input/2d_meshing_hypo.doc new file mode 100644 index 000000000..05ab6dd36 --- /dev/null +++ b/doc/salome/gui/SMESH/input/2d_meshing_hypo.doc @@ -0,0 +1,51 @@ +/*! + +\page a2d_meshing_hypo_page 2D Meshing Hypotheses + +
+
    +
  • \ref max_element_area_anchor "Max Element Area"
  • +
  • \ref length_from_edges_anchor "Length from Edges"
  • +
  • \ref quadrangle_preference_anchor "Quadrangle Preference"
  • +
+ +
+\anchor max_element_area_anchor +

Max Element Area

+ +Max Element Area hypothesis is applied for meshing of 2D faces +composing your geometrical object. Definition of this hypothesis +consists of setting the maximum area of meshing elements (depending on +the chosen meshing algorithm it can be triangles or quadrangles), +which will compose the mesh of these 2D faces. + +\image html a-maxelarea.png + +\image html max_el_area.png + +See Also a sample TUI Script of a +\ref tui_max_element_area "Maximum Element Area" hypothesis +operation. + +
+\anchor length_from_edges_anchor +

Length from Edges

+ +Length from edges hypothesis builds 2D mesh segments having a +length calculated as an average edge length for a given wire. + +See Also a sample TUI Script of a +\ref tui_length_from_edges "Length from Edges" hypothesis operation. + +
+\anchor quadrangle_preference_anchor +

Quadrangle Preference

+ +This algorithm can be used only together with Quadrangle (Mapping) +algorithm. It allows to build quadrangular meshes even if the number +of nodes at the opposite edges of a meshed face is not equal, +otherwise this mesh will contain some triangular elements. +
+This hypothesis has one restriction on its work: the total quantity of +segments on all four sides of the face must be even (divisible by 2). +*/ diff --git a/doc/salome/gui/SMESH/input/about_hypo.doc b/doc/salome/gui/SMESH/input/about_hypo.doc new file mode 100644 index 000000000..40b8ff590 --- /dev/null +++ b/doc/salome/gui/SMESH/input/about_hypo.doc @@ -0,0 +1,52 @@ +/*! + +\page about_hypo_page About Hypotheses + +\n \b Hypotheses represent boundary conditions which will be taken into +account at calculations of meshes or submeshes basing on geometrical +objects. These hypotheses allow you to manage the level of detail of +the resulting meshes or submeshes: when applying different hypotheses +with different parameters you can preset the quantity of meshing +elements which will compose your mesh. So, it will be possible to +generate a rough or a more refined mesh or submesh. + +In \b MESH there are the following Basic Hypotheses (to introduce +them, you operate numerical values): +
    +
  • \ref a1d_meshing_hypo_page "1D Hypotheses" (for meshing of +edges):
  • +
      +
    • \ref arithmetic_1d_anchor "Arithmetic 1D"
    • +
    • \ref average_length_anchor "Average Length"
    • +
    • \ref deflection_1d_anchor "Deflection 1D"
    • +
    • \ref number_of_segments_anchor "Number of segments"
    • +
    • \ref start_and_end_length_anchor "Start and end length"
    • +
    • \ref automatic_length_anchor "Automatic Length"
    • +
    +
  • \ref a2d_meshing_hypo_page "2D Hypotheses" (for meshing of faces):
  • +
      +
    • \ref max_element_area_anchor "Max Element Area"
    • +
    • \ref length_from_edges_anchor "Length from Edges"
    • +
    • \ref quadrangle_preference_anchor "Quadrangle Preference"
    • +
    +
  • 3D Hypothesis (for meshing of volumes):
  • +
      +
    • \ref max_element_volume_hypo_page "Max Element Volume"
    • +
    +
+ +There also exist some +\ref additional_hypo_page "Additional Hypotheses": +
    +
  • Propagation of 1D Hypothesis on opposite edges
  • +
  • Non conform mesh allowed
  • +
  • Quadratic mesh
  • +
+ +The choice of a hypothesis depends on: +
    +
  • the geometrical object (shape) which will be meshed
  • +
  • the algorithm, which will be selected for meshing of this geometrical object (shape)
  • +
+ +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/about_meshes.doc b/doc/salome/gui/SMESH/input/about_meshes.doc new file mode 100644 index 000000000..3864329e4 --- /dev/null +++ b/doc/salome/gui/SMESH/input/about_meshes.doc @@ -0,0 +1,86 @@ +/*! + +\page about_meshes_page About meshes + +\n \b MESH represents a discretization of a geometrical CAD model into +a set of entities with a simple topology. In MESH there are two +options of creation of meshes, you can: + +
    +
  • generate meshes on the basis of geometrical shapes produced in the GEOM module,
  • +
  • create your own meshes using the MESH functions destined for modification of generated meshes.
  • +
+ +The topology of a mesh is described by the relationships between its +entities including: + +
    +
  • \b Node — 0D object of a mesh presented by a point with coordinates (x, y, z).
  • +
  • \b Edge — 1D element of a mesh defined by two nodes.
  • +
  • \b Face — 2D element of a mesh defined by three or four edges (closed contour).
  • +
  • \b Volume — 3D element of a mesh defined by several faces.
  • +
+ +        These entities are +considered as topological entities and they don't +imply any geometric representation. Only \b Nodes reference geometric +representations of points with definite coordinates. The node entity +will contain additional information about its position in the space +and its relations with the meshed CAD model. Its position could be +described in the following way: + +
    +
  • 2D position. It is a free position defined by only two coordinates x,y.
  • +
  • 3D position. It is a free position defined by three coordinates x,y and z.
  • +
  • Surface position. It characterizes the position of a node on a +geometric surface and is defined by the u,v position in the parametric +space of the corresponding surface.
  • +
  • Line position. It characterizes the position of a node on a +geometric curve and is defined by the u parameter and the +corresponding curve.
  • +
  • Vertex position. It characterizes the position of a node on a +geometric point of the meshed CAD model and is defined by the x,y,z +coordinates of the corresponding vertex.
  • +
+ +

Connections

+ +Each mesh entity bounds 0 or more mesh entities of higher +dimension. In the same way each mesh entity is bounded by 0 or more +mesh entities of lower dimension: + +
    +
  • A node bounds edges, faces and volumes
  • +
  • An edge bounds faces, and volumes
  • +
  • A face bounds volumes
  • +
  • A volume is bounded by faces, edges and nodes
  • +
  • A face is bounded by edges, and nodes
  • +
  • An edge is bounded by nodes
  • +
+ +You can notice that there are two types of connections: \b inverse and +\b direct connections. + +

Inverse connections

+ +This relationship has a particularity that the order of bounded +entities has not a direct meaning. Also the number of bounded entities +is not fixed. + +\b Example: The edges surrounding a node. The 3rd edge has no more +sense that the 5th one. + +

Direct connections

+ +This relationship has a particularity that the order of bounding +entities is meaningful. The number of bounding entities is fixed and +depends on the type of the entity (hexahedron, tetrahedron,?). + +\b Example: An edge is composed of two nodes. A face is composed of 3 +or 4 edges depending if we are dealing with triangles or quadrangles. + +The connections are not only restricted to entities of one dimension +higher or lower. For example some algorithms may be interested to +retrieve all the faces surrounding a node. + +*/ diff --git a/doc/salome/gui/SMESH/input/about_quality_controls.doc b/doc/salome/gui/SMESH/input/about_quality_controls.doc new file mode 100644 index 000000000..f197bae0c --- /dev/null +++ b/doc/salome/gui/SMESH/input/about_quality_controls.doc @@ -0,0 +1,44 @@ +/*! + +\page about_quality_controls_page About quality controls + +\n Mesh quality control in MESH is destined for visual control of the generated mesh. + +Application of a definite quality control consists of usage of the +corresponding algorithm, which calculates a value of a definite +geometric characteristic (Area, Length of edges, etc) for all meshing +elements, composing your mesh. Then all meshing elements are colored +according the calculated values. The reference between the coloring of +the meshing elements and these calculated values is shown with the +help of a scalar bar, which is displayed near the presentation of your +mesh. + +There are 1D, 2D and 3D quality controls. + +1D mesh quality controls: +
    +
  • \ref free_borders_page "Free borders"
  • +
  • \ref borders_at_multi_connection_page "Borders at multi-connection"
  • +
  • \ref length_page "Length"
  • +
+ +2D mesh quality controls: +
    +
  • \ref free_edges_page "Free edges"
  • +
  • \ref length_2d_page "Length 2D"
  • +
  • \ref borders_at_multi_connection_2d_page "Borders at multi-connection 2D"
  • +
  • \ref area_page "Area"
  • +
  • \ref taper_page "Taper"
  • +
  • \ref aspect_ratio_page "Aspect ratio"
  • +
  • \ref minimum_angle_page "Minimum angle"
  • +
  • \ref warping_page "Warping"
  • +
  • \ref skew_page "Skew"
  • +
+ +3D mesh quality controls: +
    +
  • \ref aspect_ratio_3d_page "Aspect ratio 3D"
  • +
  • \ref volume_page "Volume"
  • +
+ +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/adding_nodes_and_elements.doc b/doc/salome/gui/SMESH/input/adding_nodes_and_elements.doc new file mode 100644 index 000000000..f55d75d8d --- /dev/null +++ b/doc/salome/gui/SMESH/input/adding_nodes_and_elements.doc @@ -0,0 +1,140 @@ +/*! + +\page adding_nodes_and_elements_page Adding nodes and elements + +\n In MESH you can add to your mesh different elements such as: + +
    +
  • \ref adding_nodes_anchor "Nodes"
  • +
  • \ref adding_edges_anchor "Edges"
  • +
  • \ref adding_triangles_anchor "Triangles"
  • +
  • \ref adding_quadrangles_anchor "Quadrangles"
  • +
  • \ref adding_polygons_anchor "Polygons"
  • +
  • \ref adding_tetrahedrons_anchor "Tetrahedrons"
  • +
  • \ref adding_hexahedrons_anchor "Hexahedrons"
  • +
  • \ref adding_polyhedrons_anchor "Polyhedrons"
  • +
+ +To add a node or an element to your mesh: +
    +
  1. Select your mesh in the Object Browser or in the 3D viewer.
  2. + +
  3. From the \b Modification menu choose the \b Add item, the +following associated submenu will appear:
  4. + +\image html image146.gif + +From this submenu select the type of element which you would like to add to your mesh. +
+ +See Also sample TUI Scripts of +\ref tui_adding_nodes_and_elements "Adding Nodes and Elements" +operations. + +
+\anchor adding_nodes_anchor +

Adding nodes

+ +\image html addnode.png + +In this dialog box set coordinates for your node in the \b Coordinates +set of fields and click the \b Apply or \b OK button. Your node will be +created: + +\image html add_node.png + +
+\anchor adding_edges_anchor +

Adding edges

+ +\image html addedge.png + +In this dialog box specify the nodes which will form your edge by +selecting them in the 3D viewer with pressed Shift button and click +the \b Apply or \b OK button. Your edge will be created: + +\image html add_edge.png + +
+\anchor adding_triangles_anchor +

Adding triangles

+ +\image html addtriangle.png + +In this dialog box specify the nodes which will form your triangle by +selecting them in the 3D viewer with pressed Shift button and click +the \b Apply or \b OK button. Your triangle will be created: + +\image html add_triangle.png + +
+\anchor adding_quadrangles_anchor +

Adding quadrangles

+ +\image html addquadrangle.png + +In this dialog box specify the nodes which will form your quadrangle +by selecting them in the 3D viewer with pressed Shift button and click +the \b Apply or \b OK button. Your quadrangle will be created: + +\image html add_quadrangle.png + +
+\anchor adding_polygons_anchor +

Adding polygons

+ +\image html addpolygon.png + +In this dialog box specify the nodes which will form your polygon by +selecting them in the 3D viewer with pressed Shift button and click +the \b Apply or \b OK button. + +\image html add_polygone.png + +
+\anchor adding_tetrahedrons_anchor +

Adding tetrahedrons

+ +\image html addtetrahedron.png + +In this dialog box specify the nodes which will form your tetrahedron +by selecting them in the 3D viewer with pressed Shift button and click +the \b Apply or \b OK button. Your tetrahedron will be created: + +\image html image70.jpg + +
+\anchor adding_hexahedrons_anchor +

Adding hexahedrons

+ +\image html addhexahedron.png + +In this dialog box specify the nodes which will form your hexahedron +by selecting them in the 3D viewer with pressed Shift button and click +the \b Apply or \b OK button. Your hexahedron will be created: + +\image html image71.jpg + +
+\anchor adding_polyhedrons_anchor +

Adding polyhedrons

+ +\image html a-createpolyhedralvolume.png + +There are two different ways to add polyhedral volumes. +\n If you select \b Node as Elements Type you will specify the +nodes which will form the faces of your polyhedron by selecting the +nodes in the 3D viewer with pressed Shift button and clicking the \b +Add button to add the face in the list of Faces by Nodes, which will +form your polyhedron. Note, that it could be very useful to toggle +Polyhedron Preview checkbox to see the results of your selection. +\n The second way is somewhat simpler, however, there are cases when +it does not provide you with the necessary level of precision. If you +select \b Face as Elements Type, you will be able to select the faces +which will form your polyhedron in the 3D viewer with pressed Shift +button. If you've managed to obtain the necessary result, click the +\b Apply or \b OK button. Your polyhedron will be created: + +\image html add_polyhedron.png + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/adding_quadratic_elements.doc b/doc/salome/gui/SMESH/input/adding_quadratic_elements.doc new file mode 100644 index 000000000..50d8eafb1 --- /dev/null +++ b/doc/salome/gui/SMESH/input/adding_quadratic_elements.doc @@ -0,0 +1,41 @@ +/*! + +\page adding_quadratic_elements_page Adding Quadratic Elements + +\n MESH modules allows you to work with Quadratic Elements. + +Quadratic Edge is not a straight but a broken line and can be defined +by three points: first, middle and last. All more complex \b Quadratic +\b Elements differ from ordinary ones in that they consist of Quadratic +Edges. + +To add a quadratic element to your mesh: +
    +
  1. Select your mesh in the Object Browser or in the 3D viewer.
  2. + +
  3. From the \b Modification menu choose the \b Add item and select +one of the following: + +\image html image152.gif + +To create any Quadratic Element specify the nodes which will form your +triangle by selecting them in the 3D viewer with pressed Shift +button. Their numbers will appear in the dialog box as Corner Nodes +(alternatively you can just input numbers in this field without +selection).The edges formed by the corner nodes will appear in the +table. To define the middle nodes for each edge double-click on the +respective field and input the number of the node. All edges and the +object formed by them will be displayed in the Object browser. When +all edges are defined you will be able to click \b OK or \b Apply button to +add the element to the mesh. + +\image html aqt.png + +\b Reverse button for Quadratic Edges switches the first and the last +nodes. For all other elements it reverses the element. +
  4. +
+ + + +*/ diff --git a/doc/salome/gui/SMESH/input/additional_hypo.doc b/doc/salome/gui/SMESH/input/additional_hypo.doc new file mode 100644 index 000000000..9687bdf2d --- /dev/null +++ b/doc/salome/gui/SMESH/input/additional_hypo.doc @@ -0,0 +1,35 @@ +/*! + +\page additional_hypo_page Additional Hypotheses + +\n Additional Hypotheses can be applied as a supplement to the +main hypotheses, introducing additional concepts to mesh creation. + +To define an Additional Hypothesis simply select it in +Create Mesh menu. These hypotheses are actually changes in the +rules of mesh creation and as such don't possess adjustable values. + +

Non Conform mesh allowed hypothesis

+ +Non Conform mesh allowed hypothesis allows to generate non-conform +meshes (that is, meshes having some edges ending on an edge or face of +adjacent elements). + +

Quadratic Mesh

+ +Quadratic Mesh hypothesis allows to build a quadratic mesh (whose +edges are not straight but broken lines and can be defined by three +points: first, middle and last) instead of an ordinary one. + +

Propagation of 1D Hypothesis on opposite edges

+ +Propagation of 1D Hypothesis on opposite edges allows to propagate a +hypothesis onto an opposite edge. If a local hypothesis and +propagation are defined on an edge of a quadrangular face, the +opposite edge will have the same hypothesis, unless another hypothesis +has been locally defined on the opposite edge. + +
See Also a sample TUI Script of a +\ref tui_propagation "Propagation hypothesis" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/area.doc b/doc/salome/gui/SMESH/input/area.doc new file mode 100644 index 000000000..553b9e935 --- /dev/null +++ b/doc/salome/gui/SMESH/input/area.doc @@ -0,0 +1,29 @@ +/*! + +\page area_page Area + +\n \b Area mesh quality control is based on the algorithm of area +calculation of meshing elements. It can be applied to meshes +consisting of 2D meshing elements with 3 and 4 nodes (triangles and +quadrangles). + +To apply the Area quality control to your mesh: +
    +
  1. Display your mesh in the viewer.
  2. + +
  3. Choose Controls > Area or click "Area" button. + +\image html image35.gif +
    "Area" button
    + +Your mesh will be displayed in the viewer with its elements colored +according to the applied mesh quality control criterion: + +\image html image5.jpg +
  4. +
+ +
See Also a sample TUI Script of an +\ref tui_area "Area quality control" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/aspect_ratio.doc b/doc/salome/gui/SMESH/input/aspect_ratio.doc new file mode 100644 index 000000000..660b94c3b --- /dev/null +++ b/doc/salome/gui/SMESH/input/aspect_ratio.doc @@ -0,0 +1,44 @@ +/*! + +\page aspect_ratio_page Aspect Ratio + +\n The Aspect Ratio quality criterion for mesh elements reveals +the degree of conformity of a mesh element to the regular element of +its type (with all edges having the same length). + + + +- The Aspect Ratio of a \b triangle 2D element consisting of 3 +nodes is calculated by the formula: + +\image html formula4.png + +- The Aspect Ratio of a \b quadrangle 2D element consisting of + 4 nodes is the worst (i.e. the greatest) value from all triangles + which can be built taking three nodes of the quadrangle. There are + four triangles to consider: + +\image html image138.gif + +To apply the Aspect Ratio quality criterion to your mesh: +
    +
  1. Display your mesh in the viewer.
  2. + +
  3. Choose Controls > Aspect Ratio or click "Aspect +Ratio" button in the toolbar. + +\image html image37.gif +
    "Aspect Ratio" button
    + +Your mesh will be displayed in the viewer with its elements colored +according to the applied mesh quality control criterion: + +\image html image94.jpg +
  4. +
+ +
See Also a sample TUI Script of an +\ref tui_aspect_ratio "Aspect Ratio quality control" operation. + +*/ + diff --git a/doc/salome/gui/SMESH/input/aspect_ratio_3d.doc b/doc/salome/gui/SMESH/input/aspect_ratio_3d.doc new file mode 100644 index 000000000..1f573226c --- /dev/null +++ b/doc/salome/gui/SMESH/input/aspect_ratio_3d.doc @@ -0,0 +1,40 @@ +/*! + +\page aspect_ratio_3d_page Aspect ratio 3D + +\n The Aspect Ratio 3D mesh quality criterion calculates the same +parameter as the \ref aspect_ratio_page "Aspect ratio" criterion, but +it is applied to 3D mesh elements: tetrahedrons, pentahedrons, +hexahedrons, etc. + +- The Aspect Ratio of a \b tetrahedron 3D element is calculated +by the formula: + +\image html formula1.png + +- Other element types like polyhedron, pentahedron and hexahedron use + the following formula: + +\image html formula2.png + +To apply the Aspect Ratio 3D quality criterion to your mesh: +
    +
  1. Display your mesh in the viewer.
  2. + +
  3. Choose Controls > Aspect Ratio 3D or click "Aspect Ratio 3D" +button of the toolbar. + +\image html image144.gif +
    "Aspect Ratio 3D" button
    + +Your mesh will be displayed in the viewer with its elements colored +according to the applied mesh quality control criterion: + +\image html image86.jpg +
  4. +
+ +
See Also a sample TUI Script of a +\ref tui_aspect_ratio_3d "Aspect Ratio 3D quality control" operation. + +*/ diff --git a/doc/salome/gui/SMESH/input/basic_meshing_algos.doc b/doc/salome/gui/SMESH/input/basic_meshing_algos.doc new file mode 100644 index 000000000..fa1772524 --- /dev/null +++ b/doc/salome/gui/SMESH/input/basic_meshing_algos.doc @@ -0,0 +1,61 @@ +/*! + +\page basic_meshing_algos_page Basic meshing algorithms + +\n The MESH module contains a set of meshing algorithms, which are +used for meshing entities (1D, 2D, 3D) composing geometrical objects. + +
    +
  • For meshing of 1D entities (edges):
  • + +
      +
    • Wire Discretisation meshing algorithm - splits a wire into a +number of mesh segments following any 1D hypothesis.
    • +
    • Composite Side Discretisation algorithm - allows to apply any 1D +hypothesis to a whole side of a geometrical face even if it is +composed of several edges provided that they form C1 curve, have the +same hypotheses assigned and form one side in all faces of the main +shape of a mesh.
    • +
    + +
  • For meshing of 2D entities (faces):
  • + +
      +
    • Triangle meshing algorithms (Mefisto and Netgen 1D-2D ) - Faces +are split into triangular elements.
    • +
    • Quadrangle meshing algorithm (Mapping) - Faces are split into +quadrangular elements.
    • +
    + +\image html image123.gif + +\image html image124.gif + +
  • For meshing of 3D entities (volume objects):
  • + +
      +
    • Hexahedron meshing algorithm (i,j,k) - Volumes are split into +hexahedral (cubic) elements.
    • +
    • Tetrahedron (Netgen) meshing algorithm - Volumes are split into +tetrahedral (pyramidal) elements.
    • +
    + +\image html image125.gif + +\image html image126.gif +
+ +There also is a number of more specific algorithms: +
    +
  • \ref projection_algos_page "for meshing by projection of another mesh"
  • +
  • \ref radial_prism_algo_page "for meshing geometrical objects with cavities"
  • +
  • \ref prism_3d_algo_page "for meshing prismatic shapes"
  • +
+ +\ref constructing_meshes_page "Constructing meshes" page describes in +detail how to apply meshing algorithms. + +
See Also a sample TUI Script of a +\ref tui_defining_meshing_algos "Define Meshing Algorithm" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/borders_at_multi_connection.doc b/doc/salome/gui/SMESH/input/borders_at_multi_connection.doc new file mode 100644 index 000000000..8f92d3995 --- /dev/null +++ b/doc/salome/gui/SMESH/input/borders_at_multi_connection.doc @@ -0,0 +1,16 @@ +/*! + +\page borders_at_multi_connection_page Borders at multi-connection + +\n This mesh quality control highlights borders of faces consisting of +edges belonging to several faces. The amount of faces is specified by +user. + +\image html image151.gif + +In this picture the borders at multi-connection are displayed in blue. + +
See Also a sample TUI Script of a +\ref tui_borders_at_multiconnection "Borders at Multi-Connection quality control" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/borders_at_multi_connection_2d.doc b/doc/salome/gui/SMESH/input/borders_at_multi_connection_2d.doc new file mode 100644 index 000000000..a0fe04290 --- /dev/null +++ b/doc/salome/gui/SMESH/input/borders_at_multi_connection_2d.doc @@ -0,0 +1,13 @@ +/*! + +\page borders_at_multi_connection_2d_page Borders at multi-connection 2D + +\n This mesh quality control highlights borders of elements of mesh, +consisting of edges belonging to several elements of mesh. + +\image html image127.gif + +
See Also a sample TUI Script of a +\ref tui_borders_at_multiconnection_2d "Borders at Multi-Connection quality control" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/building_compounds.doc b/doc/salome/gui/SMESH/input/building_compounds.doc new file mode 100644 index 000000000..5905565d5 --- /dev/null +++ b/doc/salome/gui/SMESH/input/building_compounds.doc @@ -0,0 +1,46 @@ +/*! + +\page building_compounds_page Building Compounds + +\n Compound Mesh is a combination of several meshes. + +To Build a compound: + +\par +From the \b Mesh menu select Build Compound or click "Build +Compound Mesh" button in the toolbar. + +\image html image161.gif +
"Build Compound Mesh" button
+ +\par +The following dialog box will appear: + +\image html buildcompound.png + +\par +
    +
  • \b Name - allows selecting the name of the resulting \b Compound.
  • +
  • \b Meshes - allows selecting the meshes which will be +concatenated. They can be chosen in the Object Browser while holding +\b Ctrl button.
  • +
  • Processing identical groups - allows selecting the method +of processing the namesake existing on the united meshes. +\n They can be either
  • +
      +
    • \b United - all elements of Group1 on Mesh_1 and Group1 on Mesh_2 +become the elements of Group1 on the Compound_Mesh, or
    • +
    • \b Renamed - Group1 on Mesh_1 becomes Group1_1 and Group1 on Mesh_2 +becomes Group1_2. See \ref grouping_elements_page "Creating Groups" +for more information about groups.
    • +
    +
  • You can simply unite meshes or choose to Merge coincident nodes +and elements, in which case it is possible to define the \b Tolerance +for this operation.
  • +
+ +\n Example: + +\image html image160.gif + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/changing_orientation_of_elements.doc b/doc/salome/gui/SMESH/input/changing_orientation_of_elements.doc new file mode 100644 index 000000000..5cd4e48d9 --- /dev/null +++ b/doc/salome/gui/SMESH/input/changing_orientation_of_elements.doc @@ -0,0 +1,44 @@ +/*! + +\page changing_orientation_of_elements_page Changing orientation of elements + +\n Orientation of an element is changed by reverting the order of +nodes of the selected elements. + +To change orientation of elements: +
    +
  1. Display a mesh or a submesh in the 3D viewer.
  2. +
  3. In the \b Modification menu select the \b Orientation item or click +Orientation button in the toolbar. + +\image html image79.gif +
    "Orientation" button
    + +The following dialog box will appear: + +\image html orientaation1.png + +
      +
    • The main list shall contain the elements which will be +reoriented. You can click on an element in the 3D viewer and it will +be highlighted. After that click the \b Add button and the ID of this +element will be added to the list. To remove a selected element or +elements from the list click the \b Remove button. The \b Sort button +allows to sort the list of elements IDs. The Set filter button +allows to apply a definite filter to selection of elements of your +group.
    • +
    • Apply to all radio button allows to modify the orientation +of all elements of the currently displayed mesh or submesh.
    • +
    • Select from set of fields allows to choose a submesh or an +existing group whose elements will be automatically added to the +list.
    • +
    + +
  4. +
  5. Click the \b Apply or \b OK button to confirm the operation.
  6. +
+ +
See Also a sample TUI Script of a +\ref tui_orientation "Change Orientation" operation. + +*/ diff --git a/doc/salome/gui/SMESH/input/clipping.doc b/doc/salome/gui/SMESH/input/clipping.doc new file mode 100644 index 000000000..858789e9a --- /dev/null +++ b/doc/salome/gui/SMESH/input/clipping.doc @@ -0,0 +1,28 @@ +/*! + +\page clipping_page Clipping + +\n Using this menu you can create cross-section views (clipping planes) +of your mesh. + +To start, click on the \em New button. + +\image html a-clipping2.png + +Now you can define the parameters of your cross-section: \b Orientation +(X-Y, X-Z or Y-Z); \b Distance between the opposite extremities of the +object, if it is set to 0.5 the object is split in two halves; and +\b Rotation (in angle degrees) around X (Y to Z) and around Y (X to +Z). If the Show preview button is on, you can see the clipping plane +in the 3D Viewer. + +\image html image79.jpg + +If the Auto Apply button is on, you can preview the +cross-section in the 3D Viewer. + +\image html image99.gif + +To get a new object from \b Clipping, click \b Ok. + +*/ diff --git a/doc/salome/gui/SMESH/input/constructing_groups_of_specific_elements.doc b/doc/salome/gui/SMESH/input/constructing_groups_of_specific_elements.doc new file mode 100644 index 000000000..654b6aab8 --- /dev/null +++ b/doc/salome/gui/SMESH/input/constructing_groups_of_specific_elements.doc @@ -0,0 +1,17 @@ +/*! + +\page constructing_groups_of_specific_elements_page Constructing groups of specific elements + +\n In MESH you can easily construct groups of specific elements (nodes, +edges, faces or volumes) which will be taken from a definite submesh. + +To construct a group of specific elements: + +\par +Right-click on a submesh in the Object Browser and choose the +Construct Group item or select your submesh in the Object Browser and +in the \b Mesh menu choose the Construct Group item. MESH will construct +several groups consisting of elements of the definite type: nodes, +edges, faces or volumes. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/constructing_meshes.doc b/doc/salome/gui/SMESH/input/constructing_meshes.doc new file mode 100644 index 000000000..995ee4377 --- /dev/null +++ b/doc/salome/gui/SMESH/input/constructing_meshes.doc @@ -0,0 +1,112 @@ +/*! + +\page constructing_meshes_page Constructing meshes + +\n Construction of a mesh consists of: +
    +
  • Selecting a geometrical object for meshing
  • +
  • Applying \ref basic_meshing_algos_page "meshing algorithms" and +\ref about_hypo_page "hypotheses" which will be used at computation of +this mesh.
  • +
+ +To construct a mesh: +
    +
  1. In the \b Mesh menu select Create Mesh or click "Create +Mesh" button in the toolbar. + +\image html image32.gif +
    "Create Mesh" button
    + +The following dialog box will appear: + +\image html createmesh-inv.png +
  2. +
  3. For example, you need to mesh a 3d object. +\n First, type the name for your mesh in the "Name" box, by default, +it is "Mesh_1". Then select the object you wish to mesh in the Object +Browser and click the "Add" button. + +\image html image120.gif +
    "Add" button
    + +Now you can define 1d Algorithm and 1d Hypotheses, which will be +applied to the edges of your object. (Note that any object has edges, +even if their existence is not apparent, for example, a sphere has 4 +edges). Click the "Add Hypothesis" button to add a hypothesis. + +\image html image121.gif +
    "Add Hypothesis" button
    + +Click the "Edit Hypothesis" button to define values for the +current hypothesis. + +\image html image122.gif +
    "Edit Hypothesis" button
    + +The use of additional hypotheses is optional (i.e. you may leave +"None" in this box). + +Proceed in the same way with 2d and 3d Algorithms and Hypotheses, note +that the choice of hypotheses depends on the algorithm. There must be +one Algorithm and one or several Hypotheses for each dimension of your +object, otherwise you will not get any mesh at all. Of course, if you +wish to mesh a face, which is a 2d object, you don't need to define 3d +Algorithm and Hypotheses. +\n In the Object Browser the structure of the new mesh will be +displayed as follows: + +\image html image88.jpg + +It contains: +
      +
    • a reference to the geometrical object on the basis of which the mesh has been constructed;
    • +
    • Applied hypotheses folder containing the references to the +hypotheses applied to the construction of the mesh;
    • +
    • Applied algorithms folder containing the references to the +algorithms applied to the construction of the mesh.
    • +
    + +There is an alternative way to create a mesh on an object simply by +clicking Assign a set of hypotheses button and selecting between +Automatic Tetrahedralization or Hexahedralization. The program will +automatically generate a 3D mesh with the most appropriate +settings. In the same way you can apply this functionality for meshing +2D objects, in which case 3D algorithms are not applied.
  4. +
  5. Now, when everything is ready, select your mesh in the Object +Browser. From the \b Mesh menu select \b Compute or click "Compute" button of the +toolbar. + +\image html image28.gif +
    "Compute" button
    + +The Mesh Computation information box appears. + +\image html meshcomputationsucceed.png + +If the mesh computation failed, the information about the cause of the +failure is provided. + +\image html meshcomputationfail.png + +After you select the error, Show Subshape button allows +visualizing the mesh elements that cause it. + +\image html failed_computation.png + +Publish Subshape button allows importing it in a separate MED +or UNV file. + +NOTE It is possible to define a 1D or a 2D mesh in a +python script and then use such submeshes in the construction of a 3D +mesh. For this, there exist two algorithms: Use existing edges and Use +existing faces. They are not entirely usable from the GUI, so a +mesh created using these algorithms should be exported into a python +script, edited and then imported into the GUi. + +Consider trying a sample script for construction of a mesh from our +\ref tui_creating_meshes_page "TUI Scripts" section. +
  6. +
+ +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/constructing_submeshes.doc b/doc/salome/gui/SMESH/input/constructing_submeshes.doc new file mode 100644 index 000000000..571740e5f --- /dev/null +++ b/doc/salome/gui/SMESH/input/constructing_submeshes.doc @@ -0,0 +1,53 @@ +/*! + +\page constructing_submeshes_page Constructing submeshes + +\n Construction of a submesh consists of: +
    +
  • Selecting a mesh which will encapsulate your submesh
  • +
  • Selecting a geometrical object for meshing
  • +
  • Applying one or several previously described +\ref about_hypo_page "hypotheses" and +\ref basic_meshing_algos_page "meshing algorithms" which will be used +at computation of this submesh
  • +
+ +
To construct a submesh: +\par +From the \b Mesh menu select Local Hyp. or click "Create +Sum-mesh" button in the toolbar. + +\image html image33.gif +
"Create Sum-mesh" button
+ +\par +The following dialog box will appear: + +\image html createmesh-inv2.png + +\par +It allows to define the \b Name, the parent \b Mesh and the \b +Geometry (e.g. a face if the parent mesh has been built on box) of the +submesh. You can define algorithms and hypotheses in the same way as +in \ref constructing_meshes_page "Create mesh" menu. + +\par +In the Object Browser the structure of the new submesh will be +displayed as follows: + +\image html image10.jpg + +\par +It contains: +
    +
  • a reference to the geometrical object on the basis of which the submesh has been constructed;
  • +
  • Applied hypotheses folder containing the references to the +hypotheses applied to the construction of the submesh;
  • +
  • Applied algorithms folder containing the references to the +algorithms applied to the construction of the submesh.
  • +
+ +
See Also a sample TUI Script of a +\ref tui_construction_submesh "Construct Submesh" operation. + +*/ diff --git a/doc/salome/gui/SMESH/input/convert_to_from_quadratic_mesh.doc b/doc/salome/gui/SMESH/input/convert_to_from_quadratic_mesh.doc new file mode 100644 index 000000000..84974a21c --- /dev/null +++ b/doc/salome/gui/SMESH/input/convert_to_from_quadratic_mesh.doc @@ -0,0 +1,40 @@ +/*! + +\page convert_to_from_quadratic_mesh_page Convert to/from Quadratic Mesh + +\n This functionality allows you to transtorm standard meshes to +quadratic and vice versa. See \ref adding_quadratic_elements_page "Adding quadratic elements" +for more information about quadratic meshes. + +To produce a conversion: +
    +
  1. From the Modification menu choose the Convert to/from Quadratic +Mesh item, or click "Convert to/from quadratic" button in the +toolbar. + +\image html image154.gif +
    "Convert to/from quadratic" button
    + +The following dialog box will appear: + +\image html convert.png + +
  2. +
  3. In this dialog box you should select: + +
      +
    • if you wish to convert standard mesh to quadratic or quadratic to standard;
    • +
    • if you wish to place medium nodes of the quadratic mesh on the geometry (meshed object).
    • +
    + +\image html image156.gif +
    Standard mesh (coarse mesh on a torus)
    + +\image html image155.gif +
    Quadratic mesh
    + +
  4. +
  5. Click the \b Apply or \b OK button.
  6. +
+ +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/creating_groups.doc b/doc/salome/gui/SMESH/input/creating_groups.doc new file mode 100644 index 000000000..bba92d58a --- /dev/null +++ b/doc/salome/gui/SMESH/input/creating_groups.doc @@ -0,0 +1,84 @@ +/*! + +\page creating_groups_page Creating groups + +\n In MESH you can create groups of elements of different types. To +create a group of elements in the \b Mesh menu select Create +Group. +\n To create any group you should define the following: +
    +
  • Mesh - the name of the mesh whose elements will form your +group. You can select your mesh in the Objet Browser or in the 3D +viewer.
  • +
  • Elements Type - set of radio buttons allows to select the type of +elements which will form your group:
  • +
      +
    • Nodes
    • +
    • Edges
    • +
    • Faces
    • +
    • Volumes
    • +
    +
  • Name field allows to enter the name of your new group.
  • +
+SALOME Platform distinguishes between the two Group types: +Standalone Group and Group on Geometry. + +

Standalone Group

+ +Standalone Group consists of mesh elements, which you can define in +two possible ways. +
    +
  • Choosing them manually with the mouse in the 3D Viewer. You can +click on an element in the 3D viewer and it will be highlighted. After +that click the \b Add button and the ID of this element will be added to +the list.
  • +
  • Applying Filters. The Set filter button allows to apply a +definite filter to selection of the elements of your group. See more +about filters on the +\ref selection_filter_library_page "Selection filter library" page.
  • +
+To remove a selected element or elements from the list click the +\b Remove button. The Sort List button allows to sort the list of IDs of +mesh elements. +\n Select from set of fields allows to choose a submesh or an existing +group whose elements of the previously defined type will be added to +the list of elements which will form your group. +\n Color Number (integer only, ranging from 0 to 9999) - allows to +assign to the group a certain index, for example, defining boundary +conditions. This feature introduces a useful element of preprocessing +in Mesh module. Note that Color number attribute has nothing to do +with the colors used for the display of the elements of the group. + +\image html creategroup.png + +\image html image130.gif +
In this picture the brown cells belong to a group defined manually.
+ +\image html image131.gif +
In this picture the brown cells belong to the group defined by the criterion +Taper > 0.
+ +See Also a sample TUI Script of a +\ref tui_create_standalone_group "Create a Standalone Group" +operation. + +

Group on Geometry

+ +To create a group on geometry check Group on geometry in the \b Group +\b type field. Group on geometry contains the elements of a certain type +belonging to the selected geometrical object. To define a group select +in the Objet Browser or in the 3D viewer a geometrical object from +which the elements will be taken. After confirmation of the operation +a new group of mesh elements will be created. + +\image html a-creategroup.png + +\image html image132.gif +
In this picture the cells which belong to a certain face are +selected in green.
+ +See Also a sample TUI Script of a +\ref tui_create_group_on_geometry "Create a Group on Geometry" +operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/creating_meshes.doc b/doc/salome/gui/SMESH/input/creating_meshes.doc new file mode 100644 index 000000000..3f392f2fc --- /dev/null +++ b/doc/salome/gui/SMESH/input/creating_meshes.doc @@ -0,0 +1,31 @@ +/*! + +\page creating_meshes_page Creating meshes + +
    +
  • \subpage about_meshes_page
  • +
  • \subpage importing_exporting_meshes_page
  • +
  • \subpage constructing_meshes_page
  • +
  • \subpage defining_algos_page
  • +
      +
    • \ref basic_meshing_algos_page
    • +
    • \ref projection_algos_page
    • +
    • \ref radial_prism_algo_page
    • +
    • \ref segments_around_vertex_algo_page
    • +
    • \ref prism_3d_algo_page
    • +
    +
  • \subpage defining_hypo_page
  • +
      +
    • \ref about_hypo_page
    • +
    • \ref a1d_meshing_hypo_page
    • +
    • \ref a2d_meshing_hypo_page
    • +
    • \ref max_element_volume_hypo_page
    • +
    • \ref netgen_2d_3d_hypo_page
    • +
    • \ref additional_hypo_page
    • +
    +
  • \subpage constructing_submeshes_page
  • +
  • \subpage building_compounds_page
  • +
  • \subpage editing_meshes_page
  • +
+ +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/cutting_quadrangles.doc b/doc/salome/gui/SMESH/input/cutting_quadrangles.doc new file mode 100644 index 000000000..d857165e1 --- /dev/null +++ b/doc/salome/gui/SMESH/input/cutting_quadrangles.doc @@ -0,0 +1,63 @@ +/*! + +\page cutting_quadrangles_page Cutting quadrangles + +\n This operation allows to cut one or several quadrangle elements by +addition of a supplementary edge which will connect two opposite +corners. + +To cut quadrangles: +
    +
  1. Display a mesh or a submesh in the 3D viewer.
  2. +
  3. In the \b Modification menu select the Cutting of quadrangles item or +click "Cutting of quadrangles" button in the toolbar. + +\image html image82.gif +
    "Cutting of quadrangles" button
    + +The following dialog box will appear: + +\image html a-cuttingofquadrangles.png + +\par +
      +
    • The main list contains the list of quadrangles. You can click on +an quadrangle in the 3D viewer and it will be highlighted (lock Shift +keyboard button to select several quadrangles). Click \b Add button and +the ID of this quadrangle will be added to the list. To remove a +selected element or elements from the list click \b Remove button. Sort +list button allows to sort the list of IDs. \b Filter button allows to +apply a definite filter to the selection of quadrangles.
    • +
    • Apply to all radio button allows to modify the orientation of all +quadrangles of the currently displayed mesh or submesh.
    • +
    • \b Preview - provides a preview of cutting in the viewer.
    • +
    + +
      +
    • \b Criterion +
        +
      • Use diagonal 1-3 and Use diagonal 2-4 allows to +specify the opposite corners which will be connected by the cutting +edge.
      • +
      • Use numeric factor - allows to apply the operation only to +those objects which meet the chosen criterion (from the list of +Quality Controls, i.e. Skew, Warping, Minimum Angle, etc.)
      • +
      +
    • +
    • Select from - allows to choose a submesh or an existing +group whose quadrangle elements will be automatically added to the +list.
    • +
    + +
  4. +
  5. Click the \b Apply or \b OK button to confirm the operation.
  6. +
+ +\image html image52.jpg + +\image html image51.jpg + +
See Also a sample TUI Script of a +\ref tui_cutting_quadrangles "Cutting Quadrangles" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/defining_algos.doc b/doc/salome/gui/SMESH/input/defining_algos.doc new file mode 100644 index 000000000..1ddac9f37 --- /dev/null +++ b/doc/salome/gui/SMESH/input/defining_algos.doc @@ -0,0 +1,13 @@ +/*! + +\page defining_algos_page Defining Algorithms + +
    +
  • \subpage basic_meshing_algos_page
  • +
  • \subpage projection_algos_page
  • +
  • \subpage radial_prism_algo_page
  • +
  • \subpage segments_around_vertex_algo_page
  • +
  • \subpage prism_3d_algo_page
  • +
+ +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/defining_hypo.doc b/doc/salome/gui/SMESH/input/defining_hypo.doc new file mode 100644 index 000000000..5a4eb7503 --- /dev/null +++ b/doc/salome/gui/SMESH/input/defining_hypo.doc @@ -0,0 +1,14 @@ +/*! + +\page defining_hypo_page Defining hypotheses + +
    +
  • \subpage about_hypo_page
  • +
  • \subpage a1d_meshing_hypo_page
  • +
  • \subpage a2d_meshing_hypo_page
  • +
  • \subpage max_element_volume_hypo_page
  • +
  • \subpage netgen_2d_3d_hypo_page
  • +
  • \subpage additional_hypo_page
  • +
+ +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/deleting_groups.doc b/doc/salome/gui/SMESH/input/deleting_groups.doc new file mode 100644 index 000000000..02779cde6 --- /dev/null +++ b/doc/salome/gui/SMESH/input/deleting_groups.doc @@ -0,0 +1,19 @@ +/*! + +\page deleting_groups_page Deleting Groups + +\n To delete a group in the Main Menu select Mesh -> Delete Groups and +select one or several groups you wish to delete in the 3D viewer or in +the Object Browser. +\n The selected groups will be listed in Delete groups with contents +menu. Then click Ok button to remove the selected groups and close the +menu or Apply button to remove them and proceed with the selection. + +\image html deletegroups.png + +\n Please, note that this operation removes groups with their +elements. To delete a group and leave its elements intact, right-click +on the group in the Object Browser and select \b Delete in the pop-up +menu or select the group and choose Edit -> Delete in the Main Menu. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/diagonal_inversion_of_elements.doc b/doc/salome/gui/SMESH/input/diagonal_inversion_of_elements.doc new file mode 100644 index 000000000..871e110cc --- /dev/null +++ b/doc/salome/gui/SMESH/input/diagonal_inversion_of_elements.doc @@ -0,0 +1,33 @@ +/*! + +\page diagonal_inversion_of_elements_page Diagonal inversion of elements + +\n In MESH you can inverse the diagonal (edge) of a pseudo-quadrangle +formed by two neighboring triangles with one common edge. + +To inverse the diagonal: +
    +
  1. From the \b Modification menu choose the Diagonal inversion item or +click "Diagonal Inversion" button in the toolbar. + +\image html image70.gif +
    "Diagonal Inversion" button
    + +The following dialog box shall appear: + +\image html diagonalinversion.png + +
  2. +
  3. Enter the ID of the required edge in the \b Edge field or select +this edge in the 3D viewer.
  4. +
  5. Click the \b Apply or \b OK button.
  6. +
+ +\image html image38.jpg + +\image html image36.jpg + +
See Also a sample TUI Script of a +\ref tui_diagonal_inversion "Diagonal Inversion of Elements" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/display_entity.doc b/doc/salome/gui/SMESH/input/display_entity.doc new file mode 100644 index 000000000..570674017 --- /dev/null +++ b/doc/salome/gui/SMESH/input/display_entity.doc @@ -0,0 +1,12 @@ +/*! + +\page display_entity_page Display Entity + +\n In this submenu you can choose to display only volumes, faces or +edges or combine them. + +\image html image56.jpg Only Faces + +\image html image58.gif Only Edges + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/display_mode.doc b/doc/salome/gui/SMESH/input/display_mode.doc new file mode 100644 index 000000000..7ba8e54bf --- /dev/null +++ b/doc/salome/gui/SMESH/input/display_mode.doc @@ -0,0 +1,22 @@ +/*! + +\page display_mode_page Display Mode + +\n By default your objects are represented as set in \b Preferences. +\n However, right-clicking on the mesh in the Object Browser, +and selecting Display Mode, you can display your mesh as: + +\image html image53.gif Wireframe + +\image html image37.jpg Shading + +\image html image56.gif Nodes + +\b Wireframe can combine with \b Nodes and \b Shading. + +\b Shading and \b Wireframe modes can combine with \b Shrink, however +\b Nodes can't. + +\image html image55.gif + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/editing_groups.doc b/doc/salome/gui/SMESH/input/editing_groups.doc new file mode 100644 index 000000000..5658f2f4e --- /dev/null +++ b/doc/salome/gui/SMESH/input/editing_groups.doc @@ -0,0 +1,27 @@ +/*! + +\page editing_groups_page Editing groups + +\n To edit an existing group of elements: +
    +
  1. Select your group in the Object Browser and in the \b Mesh menu click +the Edit Group item or "Edit Group" button in the toolbar.
  2. + +\image html image74.gif +
    "Edit Group" button
    + +The following dialog box will appear: + +\image html editgroup.png + +In this dialog box you can modify the name of your group and add or +remove the elements forming it. For more information see +\ref creating_groups_page "Creating Groups" page. +
  3. Click the \b OK or \b Apply button to confirm modification of the +group.
  4. +
+ +
See Also a sample TUI Script of an +\ref tui_edit_group "Edit Group" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/editing_meshes.doc b/doc/salome/gui/SMESH/input/editing_meshes.doc new file mode 100644 index 000000000..b36f7849f --- /dev/null +++ b/doc/salome/gui/SMESH/input/editing_meshes.doc @@ -0,0 +1,31 @@ +/*! + +\page editing_meshes_page Editing Meshes + +\n After you have created a mesh or submesh with definite applied +hypotheses and algorithms you can edit your mesh by \b assigning new +hypotheses and algorithms or \b unassigning the applied hypotheses and +algorithms. The editing proceeds in the same way as Mesh +Creation. + +\image html createmesh-inv3.png + +You can also change values for the current hypothesis by clicking the +"Edit Hypothesis" button. + +\image html image122.gif +
"Edit Hypothesis" button
+ +See how a mesh constructed on one and the same geometrical object +changes if we apply different algorithms to it. + +\image html edit_mesh1.png + +\image html edit_mesh_remove_hyp.png + +\image html edit_mesh_change_value_hyp.png + +
See Also a sample TUI Script of an +\ref tui_editing_mesh "Edit Mesh" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/extrusion.doc b/doc/salome/gui/SMESH/input/extrusion.doc new file mode 100644 index 000000000..674a9d9b4 --- /dev/null +++ b/doc/salome/gui/SMESH/input/extrusion.doc @@ -0,0 +1,49 @@ +/*! + +\page extrusion_page Extrusion + +\n Extrusion is used to build mesh elements of plus one +dimension than the input ones. Any line or planar element can be +extruded. Line elements will extrude into quadrilateral plane elements. +Triangular and Quadrilateral plane elements extrude into Pentahedron +and Hexahedron solids respectively. + +To use extrusion: +
    +
  1. From the \b Modification menu choose the \b Extrusion item or click +"Extrusion" button in the toolbar. + +\image html image91.gif +
    "Extrusion" button
    + +The following dialog box will appear: + +\image html extrusionalongaline1.png + +\image html extrusionalongaline2.png +
  2. + +
  3. In this dialog box you should select: +
      +
    • the type of elements which will be extruded (1D or 2D),
    • +
    • specify the IDs of the elements which will be extruded by +selecting them in the 3D viewer or select the whole mesh or +submesh,
    • +
    • specify the vector along which the elements will be extruded,
    • +
    • number of steps.
    • +
    +
  4. Generate Groups checkbox allows copying the groups of +elements of the source mesh to the newly created one.
  5. + + +
  6. Click the \b Apply or \b OK button.
  7. +
+ +\image html image77.jpg + +\image html image76.jpg + +
See Also a sample TUI Script of an +\ref tui_extrusion "Extrusion" operation. + +*/ diff --git a/doc/salome/gui/SMESH/input/extrusion_along_path.doc b/doc/salome/gui/SMESH/input/extrusion_along_path.doc new file mode 100644 index 000000000..ce96f99d9 --- /dev/null +++ b/doc/salome/gui/SMESH/input/extrusion_along_path.doc @@ -0,0 +1,153 @@ +/*! + +\page extrusion_along_path_page Extrusion along a path + +\n In principle, Extrusion along a path works in the same way +as \b Extrusion, the main difference is that we define not a vector, +but a path of extrusion which must be a meshed edge. To get an idea of +how this algorithm works, examine several examples, starting from the +most simple case of extrusion along a straight edge. In all examples +the same mesh will be extruded along different paths and with +different parameters. This sample 2D mesh has two quadrangle faces and +seven edges. Look at the picture, where white digits are the node +numbers and green are the element numbers: + +\image html mesh_for_extr_along_path.png + +

Extrusion along a straight edge

(not using base point +or angles)
+ +\image html straight_before.png +
The image shows a 1D path mesh, built on a linear edge, and the initial 2D mesh.
+ +\image html straight_after.png +
The image shows the result of extrusion of two edges +(#1 and #2) of the initial mesh along the path. \n Node #1 of path mesh +has been selected as Start node.
+ +

Extrusion along a curvilinear edge

(with and +without angles)
+ +\image html curvi_simple_before.png +
The image shows a 1D path mesh, built on curvilinear edge, and +the initial 2D mesh.
+ +\image html curvi_simple_after.png +
The central image shows the result of extrusion of one edge +(#2) of the initial mesh along the path. \n Node #1 of path mesh has +been selected as Start node.
+ +\image html curvi_angles_after.png +
The same, but using angles {45, 45, 45, 0, -45, -45, -45}
+ +

Extrusion along a sub-mesh

+ +In this example the path mesh has been built on a wire (polyline with +six edges). The first edge of the wire was used as Shape (edge), node +#1 as Start node. The angles have been defined as {10, 10, 10}. The +middle edge (#4) of the initial mesh has been extruded. + +\image html edge_wire_before.png + +\image html edge_wire_after.png + +

Extrusion of 2d elements along a sub-mesh

+ +This extrusion bases on the same path mesh as in the previous example +but the third edge of the wire was set as Shape (edge) and node +#4 as Start node. Please note, that the extrusion has been done +in direction from node #4 to node #3, i.e. against the wire +direction. In this example both faces of the initial mesh have been +extruded. + +\image html edge_wire_3d_before.png + +\image html edge_wire_3d_after.png + +

Extrusion of 2d elements along a closed path

+ +\image html circle_simple_before.png +
The image shows a path mesh built on a closed edge +(circle).
+ +\image html circle_simple_after.png +
The central image shows the result of extrusion of both faces +of the initial mesh. \n Note, that no sewing has been done, so, there are +six coincident nodes and two coincident faces in the resulting +mesh.
+ +\image html circle_angles_after.png +
The same, but using angles {45, -45, 45, -45, 45, -45, 45, +-45}
+ +
To use Extrusion along a path: +
    +
  1. From the \b Modification menu choose the Extrusion along a +path item or click "Extrusion along a path" button in the toolbar. + +\image html image101.gif +
    "Extrusion along a path" button
    + +The following dialog box will appear: + +\image html extrusion1.png + +\image html extrusion2.png +
  2. + +
  3. In the dialog box you should: +
      +
    • select the type of elements which will be extruded (1D or 2D),
    • +
    • specify the IDs of the elements which will be extruded by +selecting them in the 3D viewer or Select the whole mesh, submesh +or group, +
    • +
    • define the Path along which the elements will be extruded, +\n Path definition consists of several elements: +
        +
      • \b Mesh - containing a 1D sub-mesh on the edge, along which proceeds the extrusion
      • +
      • Shape (edge) - as the mesh can be complex, the edge is used to define the sub-mesh for the path
      • +
      • Start node - the first or the last node on the edge. It is used to define the direction of extrusion
      • +
      +
    • +
    • Generate Groups checkbox allows copying the groups of +elements of the source mesh to the newly created one.
    • +
    +
  4. + +
  5. There are two optional parameters, which can be very useful: +
      +
    • If the path of extrusion is curvilinear, at each iteration the +extruded shape is rotated to keep its initial angularity to the +curve. By default, the Base Point around which the shape is rotated is +the mass center of the shape, however, you can specify any point as +the Base Point and the shape will be rotated with respect to this +point. +
    • +
    • The shape can also be rotated around the path to get the resulting +mesh in a helical fashion. You can set the values of angles at the +right, add them to the list of angles at the left by pressing the "Add" +button and remove them from the list by pressing the "Remove" button. + +\image html image105.gif +
      "Add" button
      + +\image html image106.gif +
      "Remove" button
      + +
    • +
    +
  6. + +
  7. Click the \b Apply or \b OK button. Mesh edges will be extruded into +faces, faces into volumes. The external surface of the resulting 3d +mesh (if faces have been extruded) is covered with faces, and corners +with edges. If the path is closed, the resulting mesh can contain +duplicated nodes and faces, because no sewing is done. +
  8. +
+ +
See Also a sample TUI Script of an +\ref tui_extrusion_along_path "Extrusion along a Path" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/free_borders.doc b/doc/salome/gui/SMESH/input/free_borders.doc new file mode 100644 index 000000000..824fbd9e0 --- /dev/null +++ b/doc/salome/gui/SMESH/input/free_borders.doc @@ -0,0 +1,15 @@ +/*! + +\page free_borders_page Free borders + +\n This mesh quality control highlights borders of faces consisting of +edges belonging to one face only. + +\image html free_borders1.png + +In this picture the free borders are displayed in white. + +
See Also a sample TUI Script of a +\ref tui_free_borders "Free Borders quality control" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/free_edges.doc b/doc/salome/gui/SMESH/input/free_edges.doc new file mode 100644 index 000000000..2d51733fc --- /dev/null +++ b/doc/salome/gui/SMESH/input/free_edges.doc @@ -0,0 +1,15 @@ +/*! + +\page free_edges_page Free edges + +\n This mesh quality control highlights borders of elements of mesh +consisting of edges belonging to one element of mesh only. + +\image html free_edges.png +
In this picture some elements of mesh have been deleted and +the "holes" are outlined in red.
+ +
See Also a sample TUI Script of a +\ref tui_free_edges "Free Edges quality control" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/grouping_elements.doc b/doc/salome/gui/SMESH/input/grouping_elements.doc new file mode 100644 index 000000000..a9a636793 --- /dev/null +++ b/doc/salome/gui/SMESH/input/grouping_elements.doc @@ -0,0 +1,14 @@ +/*! + +\page grouping_elements_page Grouping elements + +
    +
  • \subpage creating_groups_page
  • +
  • \subpage editing_groups_page
  • +
  • \subpage using_operations_on_groups_page
  • +
  • \subpage constructing_groups_of_specific_elements_page
  • +
  • \subpage deleting_groups_page
  • +
  • \subpage selection_filter_library_page
  • +
+ +*/ diff --git a/doc/salome/gui/SMESH/input/importing_exporting_meshes.doc b/doc/salome/gui/SMESH/input/importing_exporting_meshes.doc new file mode 100644 index 000000000..e016ffff1 --- /dev/null +++ b/doc/salome/gui/SMESH/input/importing_exporting_meshes.doc @@ -0,0 +1,37 @@ +/*! + +\page importing_exporting_meshes_page Importing and exporting meshes + +\n In MESH there is a functionality allowing importation/exportation +of meshes from \b MED, \b UNV (I-DEAS 10), \b DAT (Nastran) and STL format files. + +To import a mesh: + +
    +
  1. From the \b File menu choose the \b Import item, from its sub-menu +select the corresponding format (MED, UNV and DAT) of the file containing +your mesh.
  2. +
  3. In the standard Search File dialog box find the file for +importation.
  4. +
  5. Click the \b OK button.
  6. +
+ +\image html meshimportmesh.png + +To export a mesh: + +
    +
  1. Select the object you wish to export.
  2. +
  3. From the \b File menu choose the \b Export item, from its sub-menu +select the format (MED, UNV, DAT and STL) of the file which will contain your +exported mesh.
  4. +
  5. In the standard Search File select a location for the +exported file and enter its name.
  6. +
  7. Click the \b OK button.
  8. +
+ +\image html meshexportmesh.png + +
See Also a sample TUI Script of an \ref tui_export_mesh "Export Mesh" operation. + +*/ diff --git a/doc/salome/gui/SMESH/input/index.doc b/doc/salome/gui/SMESH/input/index.doc new file mode 100644 index 000000000..f09cdea83 --- /dev/null +++ b/doc/salome/gui/SMESH/input/index.doc @@ -0,0 +1,114 @@ +/*! + +\mainpage SMESH Module Reference Documentation + +
    +
  • \subpage introduction_to_mesh_page
  • +
  • \subpage running_mesh_module_page
  • +
  • \subpage introduction_to_mesh_python_page
  • +
  • \subpage creating_meshes_page
  • +
      +
    • \ref about_meshes_page
    • +
    • \ref importing_exporting_meshes_page
    • +
    • \ref constructing_meshes_page
    • +
    • \ref defining_algos_page
    • +
        +
      • \ref basic_meshing_algos_page
      • +
      • \ref projection_algos_page
      • +
      • \ref radial_prism_algo_page
      • +
      • \ref segments_around_vertex_algo_page
      • +
      • \ref prism_3d_algo_page
      • +
      +
    • \ref defining_hypo_page
    • +
        +
      • \ref about_hypo_page
      • +
      • \ref a1d_meshing_hypo_page
      • +
      • \ref a2d_meshing_hypo_page
      • +
      • \ref max_element_volume_hypo_page
      • +
      • \ref netgen_2d_3d_hypo_page
      • +
      • \ref additional_hypo_page
      • +
      +
    • \ref constructing_submeshes_page
    • +
    • \ref building_compounds_page
    • +
    • \ref editing_meshes_page
    • +
    +
  • \subpage viewing_meshes_page
  • +
      +
    • \ref viewing_meshes_overview_page
    • +
    • \ref mesh_infos_page
    • +
    • \ref numbering_page
    • +
    • \ref display_mode_page
    • +
    • \ref display_entity_page
    • +
    • \ref transparency_page
    • +
    • \ref clipping_page
    • +
    +
  • \subpage quality_controls_page
  • +
      +
    • \ref about_quality_controls_page
    • +
    • \ref free_borders_page
    • +
    • \ref borders_at_multi_connection_page
    • +
    • \ref length_page
    • +
    • \ref free_edges_page
    • +
    • \ref length_2d_page
    • +
    • \ref borders_at_multi_connection_2d_page
    • +
    • \ref area_page
    • +
    • \ref taper_page
    • +
    • \ref aspect_ratio_page
    • +
    • \ref minimum_angle_page
    • +
    • \ref warping_page
    • +
    • \ref skew_page
    • +
    • \ref aspect_ratio_3d_page
    • +
    • \ref volume_page
    • +
    +
  • \subpage grouping_elements_page
  • +
      +
    • \ref creating_groups_page
    • +
    • \ref editing_groups_page
    • +
    • \ref using_operations_on_groups_page
    • +
    • \ref constructing_groups_of_specific_elements_page
    • +
    • \ref deleting_groups_page
    • +
    • \ref selection_filter_library_page
    • +
    +
  • \subpage modifying_meshes_page
  • +
      +
    • \ref adding_nodes_and_elements_page
    • +
    • \ref adding_quadratic_elements_page
    • +
    • \ref removing_nodes_and_elements_page
    • +
    • \ref renumbering_nodes_and_elements_page
    • +
    • \ref transforming_meshes_page
    • +
        +
      • \ref translation_page
      • +
      • \ref rotation_page
      • +
      • \ref symmetry_page
      • +
      • \ref sewing_meshes_page
      • +
      • \ref merging_nodes_page
      • +
      • \ref merging_elements_page
      • +
      +
    • \ref moving_nodes_page
    • +
    • \ref mesh_through_point_page
    • +
    • \ref diagonal_inversion_of_elements_page
    • +
    • \ref uniting_two_triangles_page
    • +
    • \ref uniting_set_of_triangles_page
    • +
    • \ref changing_orientation_of_elements_page
    • +
    • \ref cutting_quadrangles_page
    • +
    • \ref smoothing_page
    • +
    • \ref extrusion_page
    • +
    • \ref extrusion_along_path_page
    • +
    • \ref revolution_page
    • +
    • \ref pattern_mapping_page
    • +
    • \ref convert_to_from_quadratic_mesh_page
    • +
    +
  • \subpage smeshpy_interface_page
  • +
  • \subpage tui_scripts_page
  • +
      +
    • \ref tui_creating_meshes_page
    • +
    • \ref tui_viewing_meshes_page
    • +
    • \ref tui_defining_hypotheses_page
    • +
    • \ref tui_quality_controls_page
    • +
    • \ref tui_grouping_elements_page
    • +
    • \ref tui_modifying_meshes_page
    • +
    • \ref tui_transforming_meshes_page
    • +
    +
+ +*/ diff --git a/doc/salome/gui/SMESH/input/introduction_to_mesh.doc b/doc/salome/gui/SMESH/input/introduction_to_mesh.doc new file mode 100644 index 000000000..5b80bb158 --- /dev/null +++ b/doc/salome/gui/SMESH/input/introduction_to_mesh.doc @@ -0,0 +1,64 @@ +/*! + +\page introduction_to_mesh_page Introduction to MESH + +\n \b MESH module of SALOME is destined for: +
    +
  • \ref importing_exporting_meshes_page "import and export of meshes in MED format",
  • +
  • \ref constructing_meshes_page "meshing geometrical models" +previously created or imported by the GEOM component. MESH module +allows to apply 1D, 2D, 3D meshing algorithms and a set of hypotheses: +
      +
    • \ref arithmetic_1d_anchor "Arithmetic 1D"
    • +
    • \ref average_length_anchor "Average Length"
    • +
    • \ref deflection_1d_anchor "Deflection 1D"
    • +
    • \ref number_of_segments_anchor "Number of segments"
    • +
    • \ref start_and_end_length_anchor "Start and end length"
    • +
    • \ref automatic_length_anchor "Automatic Length"
    • +
    • \ref max_element_area_anchor "Max Element Area"
    • +
    • \ref length_from_edges_anchor "Length from Edges"
    • +
    • \ref quadrangle_preference_anchor "Quadrangle Preference"
    • +
    • \ref max_element_volume_hypo_page "Max Element Volume"
    • +
    +
  • +
  • modification of locally generated meshes by +
      +
    • \ref adding_nodes_and_elements_page "Addition" of nodes and elements
    • +
    • \ref removing_nodes_and_elements_page "Removal" of nodes and elements
    • +
    +
  • +
  • \ref creating_groups_page "grouping mesh elements" and +\ref using_operations_on_groups_page "performing operations on these groups"
  • +
  • \ref about_quality_controls_page "quality control" of meshes basing on a set of definite criteria - + +for edges: +
      +
    • \ref length_page "Length of edges"
    • +
    • \ref borders_at_multi_connection_page "Borders at multi-connection"
    • +
    • \ref free_borders_page "Free borders"
    • +
    + +for faces: +
      +
    • \ref area_page "Area"
    • +
    • \ref free_edges_page "Free edges"
    • +
    • \ref borders_at_multi_connection_2d_page "Borders at multi-connection 2D"
    • +
    • \ref length_2d_page "Length 2D"
    • +
    • \ref minimum_angle_page "Minimum angle"
    • +
    • \ref taper_page "Taper"
    • +
    • \ref aspect_ratio_page "Aspect Ratio"
    • +
    • \ref warping_page "Warping"
    • +
    • \ref skew_page "Skew"
    • +
    + +for solids: +
      +
    • \ref aspect_ratio_3d_page "Aspect ratio 3D"
    • +
    • \ref volume_page "Volume"
    • +
    +
  • +
+ +\image html image7.jpg + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/introduction_to_mesh_python.doc b/doc/salome/gui/SMESH/input/introduction_to_mesh_python.doc new file mode 100644 index 000000000..2fcc329a2 --- /dev/null +++ b/doc/salome/gui/SMESH/input/introduction_to_mesh_python.doc @@ -0,0 +1,77 @@ +/*! + +\page introduction_to_mesh_python_page Introduction to MESH module python interface + +\n Package smesh provides a standard API for creation and edition of meshes. +\n Below you can see an example of usage of the package smesh for 3d mesh generation. + +

Example of 3d mesh generation with NETGEN:

+ +\n from geompy import * +\n import smesh + +# Geometry +\n # an assembly of a box, a cylinder and a truncated cone meshed with tetrahedral. + +# Define values +\n name = "ex21_lamp" +\n cote = 60 +\n section = 20 +\n size = 200 +\n radius_1 = 80 +\n radius_2 = 40 +\n height = 100 + +# Build a box +\n box = MakeBox(-cote, -cote, -cote, +cote, +cote, +cote) + +# Build a cylinder +\n pt1 = MakeVertex(0, 0, cote/3) +\n di1 = MakeVectorDXDYDZ(0, 0, 1) +\n cyl = MakeCylinder(pt1, di1, section, size) + +# Build a truncated cone +\n pt2 = MakeVertex(0, 0, size) +\n cone = MakeCone(pt2, di1, radius_1, radius_2, height) + +# Fuse +\n box_cyl = MakeFuse(box, cyl) +\n piece = MakeFuse(box_cyl, cone) + +# Add in study +\n addToStudy(piece, name) + +# Create a group of faces +\n group = CreateGroup(piece, ShapeType["FACE"]) +\n group_name = name + "_grp" +\n addToStudy(group, group_name) +\n group.SetName(group_name) + +# Add faces in the group +\n faces = SubShapeAllIDs(piece, ShapeType["FACE"]) +\n UnionIDs(group, faces) + +# Create a mesh + +# Define a mesh on a geometry +\n tetra = smesh.Mesh(piece, name) + +# Define 1D hypothesis +\n algo1d = tetra.Segment() +\n algo1d.LocalLength(10) + +# Define 2D hypothesis +\n algo2d = tetra.Triangle() +\n algo2d.LengthFromEdges() + +# Define 3D hypothesis +\n algo3d = tetra.Tetrahedron(smesh.NETGEN) +\n algo3d.MaxElementVolume(100) + +# Compute the mesh +\n tetra.Compute() + +# Create a groupe of faces +\n tetra.Group(group) + +*/ diff --git a/doc/salome/gui/SMESH/input/length.doc b/doc/salome/gui/SMESH/input/length.doc new file mode 100644 index 000000000..e8210294d --- /dev/null +++ b/doc/salome/gui/SMESH/input/length.doc @@ -0,0 +1,13 @@ +/*! + +\page length_page Length + +\n Length quality control criterion returns a value of length of +edge. + +\image html length-crit.png + +
See Also a sample TUI Script of a +\ref tui_length_1d "Length quality control" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/length_2d.doc b/doc/salome/gui/SMESH/input/length_2d.doc new file mode 100644 index 000000000..50bab5574 --- /dev/null +++ b/doc/salome/gui/SMESH/input/length_2d.doc @@ -0,0 +1,28 @@ +/*! + +\page length_2d_page Length 2D + +\n This quality control criterion consists of calculation of length of +the edges combining the meshing elements (triangles and quadrangles) +of your mesh. + +To apply the Length 2D quality criterion to your mesh: +
    +
  1. Display your mesh in the viewer.
  2. + +
  3. Choose Controls > Length 2D or click "Length 2D" +button in the toolbar. + +\image html image34.gif +
    "Length 2D" button
    + +Your mesh will be displayed in the viewer with its elements colored according to the applied mesh quality control criterion: + +\image html length2d.png +
  4. +
+ +
See Also a sample TUI Script of a +\ref tui_length_2d "Length 2D quality control" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/max_element_volume_hypo.doc b/doc/salome/gui/SMESH/input/max_element_volume_hypo.doc new file mode 100644 index 000000000..1dd459161 --- /dev/null +++ b/doc/salome/gui/SMESH/input/max_element_volume_hypo.doc @@ -0,0 +1,16 @@ +/*! + +\page max_element_volume_hypo_page Max Element Volume hypothesis + +\n Max Element Volume hypothesis is applied for meshing of 3D objects +composing your geometrical object. Definition of this hypothesis +consists of setting the maximum volume of 3D meshing elements +(depending on the chosen meshing algorithm it can be \b hexahedrons or +\b tetrahedrons), which will compose the mesh of these 3D objects. + +\image html a-maxelvolume.png + +
See Also a sample TUI Script of a +\ref tui_max_element_volume "Maximum Element Volume hypothesis" operation. + +*/ diff --git a/doc/salome/gui/SMESH/input/merging_elements.doc b/doc/salome/gui/SMESH/input/merging_elements.doc new file mode 100644 index 000000000..fef7cd25a --- /dev/null +++ b/doc/salome/gui/SMESH/input/merging_elements.doc @@ -0,0 +1,56 @@ +/*! + +\page merging_elements_page Merging Elements + +\n This functionality allows to merge coincident elements of a mesh +selectable in the dialog box. + +\image html mergeelems.png + +
    +
  • \b Name is the name of the mesh whose elements will be merged.
  • +
  • \b Tolerance is a maximum distance between elements sufficient for +merging. +
      +
    • \b Detect button generates the list of coincident elements for the given +\b Tolerance.
    • +
    +
  • +
  • Coincident elements is a list of groupes of elements for +merging. All elements of each group will form one after the operation. +
      +
    • \b Remove button deletes the selected group from the list.
    • +
    • \b Add button adds to the list a group of elements selected in the +viewer with pressed "Shift" key.
    • +
    • Select all checkbox selects all groups.
    • +
    +
  • +
  • Edit selected group list allows editing the selected +group: +

    +\image html add.gif +
    adds to the group the element selected in the viewer.
    +
    +\image html remove.gif +
    removes from the group the selected element.
    +
    +\image html sort.gif +
    moves the selected element to the first position in the +group. This means that all other elements will be merged into this +one.

    +
  • +
+ +
  • To confirm your choice click \b OK or \b Apply button.
  • + + +In this picture you see a triangle which coincides with one of the +elements of the mesh. After we apply Merge Elements functionality, the +triangle will be completely merged with the mesh. + +\image html meshtrianglemergeelem1.png + +
    See Also a sample TUI Script of a +\ref tui_merging_elements "Merge Elements" operation. + +*/ diff --git a/doc/salome/gui/SMESH/input/merging_nodes.doc b/doc/salome/gui/SMESH/input/merging_nodes.doc new file mode 100644 index 000000000..7c5d62273 --- /dev/null +++ b/doc/salome/gui/SMESH/input/merging_nodes.doc @@ -0,0 +1,61 @@ +/*! + +\page merging_nodes_page Merging nodes + +\n This functionality allows user to detect groups of coincident nodes +with desirable tolerance, edit these groups and merge. + +To merge nodes of your mesh: +
      +
    1. From the \b Modification choose \b Transformation and from its +sub-menu select the Merge nodes item. The following dialog box +shall appear: + +\image html mergenodes.png + +
        +
      • \b Name is the name of the mesh whose nodes will be merged.
      • +
      • \b Tolerance is a maximum distance between nodes sufficient for +merging. +
          +
        • \b Detect button generates the list of coincident nodes for the given +\b Tolerance.
        • +
        +
      • +
      • Coincident nodes is a list of groupes of nodes for +merging. All nodes of each group will form one after the +operation. +
          +
        • \b Remove button deletes the selected group from the list.
        • +
        • \b Add button adds to the list a group of nodes selected in the +viewer with pressed "Shift" key.
        • +
        • Select all checkbox selects all groups.
        • +
        +
      • +
      • Edit selected group list allows editing the selected +group: +

        +\image html add.gif +
        adds to the group the node selected in the viewer.
        +
        +\image html remove.gif +
        removes from the group the selected node.
        +
        +\image html sort.gif +
        moves the selected node to the first position in the +group. This means that all other nodes will be merged into this +one.

        +
      • +
      +
    2. +
    3. To confirm your choice click \b OK or \b Apply button.
    4. +
    + +\image html merging_nodes1.png + +\image html merging_nodes2.png + +
    See Also a sample TUI Script of a +\ref tui_merging_nodes "Merge Nodes" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/mesh_infos.doc b/doc/salome/gui/SMESH/input/mesh_infos.doc new file mode 100644 index 000000000..259828995 --- /dev/null +++ b/doc/salome/gui/SMESH/input/mesh_infos.doc @@ -0,0 +1,63 @@ +/*! + +\page mesh_infos_page Mesh infos + +\n There are three information boxes: Standard Mesh +Infos, Advanced Mesh Infos and Mesh Element Info. + +
    +\anchor standard_mesh_infos_anchor +

    Standard Mesh Infos

    + +The Standard Mesh Infos box gives only the information on the +number of elements of maximum dimension and the number of nodes in the +mesh. However, from this Info you can learn about groups selected on +this mesh. +\n To view the Standard Mesh Infos, select your mesh or submesh +in the Object Browser and select Standard Mesh Infos +from the \b Mesh menu or click "Standard Mesh Infos" button +in the toolbar. + +\image html image49.gif +
    "Standard Mesh Infos" button
    + +The following information will be displayed: + +\image html a-standmeshinfo.png + +
    +\anchor advanced_mesh_infos_anchor +

    Advanced Mesh Infos

    + +The Advanced Mesh Infos box gives more information about the mesh, +including the total number of faces and volumes and their geometrical +types. +\n To view the Advanced Mesh Infos, select your mesh or submesh +in the Object Browser and select Advanced Mesh Infos +from the \b Mesh menu or click "Advanced Mesh Infos" button +in the toolbar. + +\image html image50.gif +
    "Advanced Mesh Infos" button
    + +The following information will be displayed: + +\image html advanced_mesh_infos.png + +In case you get Mesh Infos via a \ref tui_viewing_mesh_infos "TUI script", +the information is displayed in Python Console. + +\image html b-mesh_infos.png + +
    +\anchor mesh_element_info_anchor +

    Mesh Element Info

    + +The Mesh Element Info box gives basic information about the +type and the coordinates of the selected mesh element. + +\image html eleminfo1.png + +\image html eleminfo2.png + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/mesh_through_point.doc b/doc/salome/gui/SMESH/input/mesh_through_point.doc new file mode 100644 index 000000000..cd0d68ea9 --- /dev/null +++ b/doc/salome/gui/SMESH/input/mesh_through_point.doc @@ -0,0 +1,34 @@ +/*! + +\page mesh_through_point_page Mesh through point + +\n In mesh you can define a node at a certain point either by creation +of a new node, by movement of the node closest to the point or by +movement of any node to the point. + +To create a mesh passing through a point: +
      +
    1. From the \b Modification menu choose the Mesh through point item or +click "Mesh to pass through a point" button in the toolbar. + +\image html mesh_node_to_point.png +
      "Mesh to pass through a point" button
      + +The following dialog box shall appear: + +\image html meshtopass.png + +
    2. +
    3. Enter the coordinates of the point.
    4. +
    5. Choose one of several methods: you can either \b Create a new node at +the indicated point or Move the existing node to the point. In the +latter case you can check in Automatic search of the closest node or +select the necessary node manually. \b Preview check-box allows to see +the results of the operation.
    6. +
    7. Click the \b Apply or \b OK button.
    8. +
    + +
    See Also a sample TUI Script of a +\ref tui_mesh_through_point "Mesh through point" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/minimum_angle.doc b/doc/salome/gui/SMESH/input/minimum_angle.doc new file mode 100644 index 000000000..172374575 --- /dev/null +++ b/doc/salome/gui/SMESH/input/minimum_angle.doc @@ -0,0 +1,28 @@ +/*! + +\page minimum_angle_page Minimum angle + +\n Minimum angle mesh quality criterion consists of calculation of the +minimum value of angle between two adjacent sides of a 2D meshing +element (triangle or quadrangle). + +To apply the Minimum angle quality criterion to your mesh: +
      +
    1. Display your mesh in the viewer.
    2. + +
    3. Choose Controls > Minimum angle or click "Minimum Angle" button. + +\image html image38.gif +
      "Minimum Angle" button
      + +Your mesh will be displayed in the viewer with its elements colored +according to the applied mesh quality control criterion: + +\image html image92.jpg +
    4. +
    + +
    See Also a sample TUI Script of a +\ref tui_minimum_angle "Minimum Angle quality control" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/modifying_meshes.doc b/doc/salome/gui/SMESH/input/modifying_meshes.doc new file mode 100644 index 000000000..d7e1cdb62 --- /dev/null +++ b/doc/salome/gui/SMESH/input/modifying_meshes.doc @@ -0,0 +1,34 @@ +/*! + +\page modifying_meshes_page Modifying meshes + +
      +
    • \subpage adding_nodes_and_elements_page
    • +
    • \subpage adding_quadratic_elements_page
    • +
    • \subpage removing_nodes_and_elements_page
    • +
    • \subpage renumbering_nodes_and_elements_page
    • +
    • \subpage transforming_meshes_page
    • +
        +
      • \ref translation_page
      • +
      • \ref rotation_page
      • +
      • \ref symmetry_page
      • +
      • \ref sewing_meshes_page
      • +
      • \ref merging_nodes_page
      • +
      • \ref merging_elements_page
      • +
      +
    • \subpage moving_nodes_page
    • +
    • \subpage mesh_through_point_page
    • +
    • \subpage diagonal_inversion_of_elements_page
    • +
    • \subpage uniting_two_triangles_page
    • +
    • \subpage uniting_set_of_triangles_page
    • +
    • \subpage changing_orientation_of_elements_page
    • +
    • \subpage cutting_quadrangles_page
    • +
    • \subpage smoothing_page
    • +
    • \subpage extrusion_page
    • +
    • \subpage extrusion_along_path_page
    • +
    • \subpage revolution_page
    • +
    • \subpage pattern_mapping_page
    • +
    • \subpage convert_to_from_quadratic_mesh_page
    • +
    + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/moving_nodes.doc b/doc/salome/gui/SMESH/input/moving_nodes.doc new file mode 100644 index 000000000..2c0cd795b --- /dev/null +++ b/doc/salome/gui/SMESH/input/moving_nodes.doc @@ -0,0 +1,36 @@ +/*! + +\page moving_nodes_page Moving nodes + +\n In MESH you can change the location of any node of your mesh. In +this case all adjacent elements (edges) will be also transformed right +after the displaced node. + +To displace a node: +
      +
    1. From the \b Modification menu choose the Move node item or +click "Move Node" button in the toolbar. + +\image html image67.gif +
      "Move Node" button
      + +The following dialog box shall appear: + +\image html movenodes.png + +
    2. +
    3. Enter the ID of the required node in the Node ID field or +select this node in the 3D viewer. The coordinates of your node will +be automatically displayed in the \b Coordinates set of fields.
    4. +
    5. Set new coordinates for your node in the \b Coordinates set of fields.
    6. +
    7. Click the \b Apply or \b OK button.
    8. +
    + +\image html moving_nodes1.png + +\image html moving_nodes2.png + +
    See Also a sample TUI Script of a +\ref tui_moving_nodes "Moving Nodes" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/netgen_2d_3d_hypo.doc b/doc/salome/gui/SMESH/input/netgen_2d_3d_hypo.doc new file mode 100644 index 000000000..395283ca1 --- /dev/null +++ b/doc/salome/gui/SMESH/input/netgen_2d_3d_hypo.doc @@ -0,0 +1,37 @@ +/*! + +\page netgen_2d_3d_hypo_page Netgen 2D and 3D hypotheses + +\n Netgen 2D and Netgen 3D hypotheses work only with Netgen 1D-2D and +Netgen 1D-2D-3D algorithms. These algorithms do not require +definition of lower-level hypotheses and algorithms (2D and 1D for +meshing 3D objects and 1D for meshing 2D objects). They prove to be +useful if lower-level meshing is homogeneous for all wires and faces +of the meshed object. + +\image html netgen2d.png + +
      +
    • Name - allows to define the name for the algorithm (Netgen +2D (or 3D) Parameters by default).
    • +
    • Max Size - maximum linear dimensions for mesh cells.
    • +
    • Second Order - if this box is checked in, the algorithm will +create second order nodes on the mesh, which actually will become +\ref adding_quadratic_elements_page "Quadratic".
    • +
    • Fineness - ranging from Very Coarse to Very Fine allows to set the +level of meshing detalization using the three parameters below. You +can select Custom to define them manually.
    • +
    • Growth rate - allows to define how much the linear dimensions of +two adjacent cells can differ (i.e. 0.3 means 30%).
    • +
    • Nb. Segs per Edge and Nb Segs per Radius - allows to define the +minimum number of mesh segments in which edges and radiuses will be +split.
    • +
    • Allow Quadrangles - allows to use quadrangle elements in a +triangle 2D mesh. This checkbox is not present in Netgen 3D parameters +because currently building a tetrahedral mesh with quadrangle faces is +not possible.
    • +
    • Optimize - if this box is checked in, the algorithm will try to +create regular (possessing even sides) elements.
    • +
    + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/numbering.doc b/doc/salome/gui/SMESH/input/numbering.doc new file mode 100644 index 000000000..78d8fb414 --- /dev/null +++ b/doc/salome/gui/SMESH/input/numbering.doc @@ -0,0 +1,38 @@ +/*! + +\page numbering_page Numbering + +

    Displaying nodes numbers

    + +In MESH you can display the ID numbers of all nodes of your mesh in +the viewer. + +To display ID numbers of nodes: +
      +
    1. Display your mesh in the viewer
    2. +
    3. Right-click on the mesh in the 3D viewer and from the associated +pop-up menu choose Numbering > Display Nodes #.
    4. +
    + +It will look like as follows: + +\image html image96.jpg + +

    Displaying elements numbers

    + +In MESH you can display the ID numbers of all meshing elements +composing your mesh in the viewer. + +To display ID numbers of elements: +
      +
    1. Display your mesh in the viewer
    2. +
    3. Right-click on the mesh in the 3D viewer and from the associated +pop-up menu choose Numbering > Display Elements #.
    4. +
    + +It will look like as follows: + +\image html image95.jpg + +*/ + diff --git a/doc/salome/gui/SMESH/input/pattern_mapping.doc b/doc/salome/gui/SMESH/input/pattern_mapping.doc new file mode 100644 index 000000000..e9ce36172 --- /dev/null +++ b/doc/salome/gui/SMESH/input/pattern_mapping.doc @@ -0,0 +1,135 @@ +/*! + +\page pattern_mapping_page Pattern mapping + +

    About patterns

    + +The pattern describes a mesh to generate: positions of nodes within a +geometrical domain and nodal connectivity of elements. As well, a +pattern specifies the so-called key-points, i.e. nodes that will be +located at geometrical vertices. Pattern description is stored in +\.smp file. + +The smp file contains 4 sections: +
      +
    1. The first line holds the number of nodes (N).
    2. + +
    3. The next N lines describe nodes coordinates. Each line holds 2 +coordinates of a node.
    4. + +
    5. A key-points line: indices of nodes to be mapped on geometrical +vertices. An index n refers to a node described on an n-th line of +section 2. The first node index is zero.
    6. + +
    7. The rest lines describe nodal connectivity of elements, one line +for an element. A line holds indices of nodes forming an element. An +index n refers to a node described on an n-th line of the section +2. The first node index is zero. There must be 3 or 4 indices on a +line: only 2d elements are allowed.
    8. +
    + +The 2D pattern must contain at least one element and at least one +key-point. All key-points must lay on boundaries. + +An example of a simple smp file and a preview of a pattern described +in this file: + +\image html image94.gif + +

    Application of pattern mapping

    + +To apply pattern mapping to a geometrical object: + +From the \b Modification menu choose the Pattern Mapping item or click +"Pattern mapping" button in the toolbar. + +\image html image98.gif +
    "Pattern mapping" button
    + +The following dialog box shall appear: + +\image html patternmapping1.png + +\image html patternmapping2.png + +To apply a pattern to a geometrical object, you should specify: +
      +
    • a face having the number of vertices equal to the number of +key-points in the pattern; the number of key-points on internal +boundaries of a pattern must also be equal to the number of vertices +on internal boundaries of a face;
    • +
    • a vertex to which the first key-point should be mapped;
    • +
    • reverse or not the order of key-points. (The order of vertices of +a face is counterclockwise looking from outside).
    • +
    + +Then you either load a .smp pattern file previously created manually +by clicking on the "Load pattern" button, or click on the \b +New button for automatic generation. +\n For an automatic generation you just specify a geometrical face +having a mesh built on it. Mesh nodes lying on face vertices become +key-points. Additionally, you may choose the way of getting nodes +coordinates by projecting nodes on the face instead of using +"positions on face" generated by mesher (if there is any). Faces +having a seam edge can?t be used for automatic pattern creation. + +When creating a pattern from an existing mesh, there are two possible +cases: +
      +
    1. A sub-mesh on face is selected. A pattern is created from the 2d +elements bound to a face by mesher. Node coordinates are either +"positions on face" computed by mesher, or coordinates got by node +projection on a geometrical surface, according to your choice.
    2. +
    3. A mesh where the main shape is a face, is selected. A pattern is +created from all the 2d elements in a mesh. If all mesh elements are +build by mesher, the user can select the way of getting nodes +coordinates, else all nodes are projected on a face surface.
    4. +
    + +\image html a-patterntype.png + +\image html a-patterntype1.png + +

    Mapping algorithm

    + +The mapping algorithm is as follows: +
      +
    1. Key-points are set in the order that they are encountered when +walking along a pattern boundary so that elements are on the left. The +first key-point is preserved. +
    2. + +
    3. Find geometrical vertices corresponding to key-points by vertices +order in a face boundary; here, "Reverse order of key-points" flag is +taken into account. + +\image html image95.gif +
    4. + +
    5. Boundary nodes of a pattern are mapped onto edges of a face: a +node located between certain key-points on a pattern boundary is +mapped on a geometrical edge limited by corresponding geometrical +vertices. Node position on an edge reflects its distance from two +key-points. + +\image html image96.gif +
    6. + +
    7. Coordinates of a non-boundary node in a parametric space of a face +are defined as following. In a parametric space of a pattern, a node +lays at the intersection of two iso-lines, each of which intersects a +pattern boundary at least at two points. Knowing mapped positions of +boundary nodes, we find where isoline-boundary intersection points are +mapped to, and hence we can find mapped isolines direction and then, +two node positions on two mapped isolines. The eventual mapped +position of a node is found as an average of positions on mapped +isolines. + +\image html image97.gif +
    8. +
    + +
    See Also a sample TUI Script of a +\ref tui_pattern_mapping "Pattern Mapping" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/prism_3d_algo.doc b/doc/salome/gui/SMESH/input/prism_3d_algo.doc new file mode 100644 index 000000000..272bef236 --- /dev/null +++ b/doc/salome/gui/SMESH/input/prism_3d_algo.doc @@ -0,0 +1,20 @@ +/*! + +\page prism_3d_algo_page 3D extrusion meshing algorithm + +3D extrusion algorithm can be used for meshing prisms, i.e. 3D Shapes +defined by two opposing faces having the same number of vertices and +edges and meshed using the \ref projection_algos_page "2D Projection" +algorithm. These two faces should be connected by quadrangle "side" +faces. + +The opposing faces can be meshed with either quadrangles or triangles, +while the side faces should be meshed with quadrangles only. + +\image html image157.gif + +As you can see, the 3D extrusion algorithm permits to build and to +have in the same 3D mesh such elements as hexahedrons, prisms and +polyhedrons. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/projection_algos.doc b/doc/salome/gui/SMESH/input/projection_algos.doc new file mode 100644 index 000000000..02a617e83 --- /dev/null +++ b/doc/salome/gui/SMESH/input/projection_algos.doc @@ -0,0 +1,74 @@ +/*! + +\page projection_algos_page Projection Algorithms + +\n Projection algorithms allow to define the mesh of a geometrical +object by the projection of another already meshed geometrical object. + +Projection 1D algorithm permits to define the mesh of an edge +(or group of edges) +by the projection of another already meshed edge (or group of edges). +\n To apply this algorithm select the edge to be meshed (indicated in +the field \b Geometry of Create mesh dialog box), +Projection1D in the list of 1D algorithms and click the +"Add Hypothesis" button. +The following dialog box will appear: + +\image html projection_1d.png + +In this menu you can define the \b Name of the algorithm, the algeady +meshed source \b Edge and the \b Mesh (optional, use it if there are several +different meshes on the same edge). It could also be necessary to +define the orientation of edges, which is done by indicating the +Source Vertex being the first point of the Source Edge and the +Target Vertex being the first point of the created \b Edge. For +a group of edges, Source and Target vertices should be +shared by only one edge of the group. If Source and +Target vectors are specified, the elements of the group must be ajacent. + +\n Projection 2D algorithm permits to define the mesh of a face +(or group of faces) by the +projection of another already meshed face (or group of faces). This +algorithm works only +if all edges of the target face have been meshed as 1D Projections of +the edges of the source face. + +To apply this algorithm select the face to be meshed (indicated in the +field \b Geometry of Create mesh dialog box), Projection +2D in the list +of 2D algorithms and click the "Add Hypothesis" button. The +following dialog box will appear: + +\image html projection_2d.png + +In this menu you can define the \b Name of the algorithm, the algeady +meshed source \b Face and the \b Mesh (optional, use it if there are several +different meshes on the same face). It could also be necessary to +define the orientation of mesh on the face, which is done by +indicating two Source Vertices, which belong to the same edge of the +source face, and two Target Vertices, which belong to the same edge of +the created \b Face. + +\n Projection 3D algorithm permits to define the mesh of a shape by +the projection of another already meshed shape. This algorithm works +only if all faces and edges of the target face have been meshed as 1D +Projections of the faces and edges of the source face. Another +limitation is that this algorithm currently works only on boxes. + +To apply this algorithm select the solid to be meshed (indicated in +the field \b Geometry of Create mesh dialog box), Projection +3D in the list of 3D algorithms and click the button. The +following dialog box will appear: + +\image html projection_3d.png + +In this menu you can define the \b Name of the algorithm, the algeady +meshed source 3D shape and the \b Mesh (optional, use it if there are +several different meshes on the same shape). It could also be +necessary to define the orientation of mesh on the shape, which is +done by indicating two Source Vertices, which belong to the same edge +of the source 3D Shape, and two Target Vertices, which belong to the +same edge of the source 3D Shape. + +*/ + diff --git a/doc/salome/gui/SMESH/input/quality_controls.doc b/doc/salome/gui/SMESH/input/quality_controls.doc new file mode 100644 index 000000000..5a36e7bdb --- /dev/null +++ b/doc/salome/gui/SMESH/input/quality_controls.doc @@ -0,0 +1,23 @@ +/*! + +\page quality_controls_page Quality controls + +
      +
    • \subpage about_quality_controls_page
    • +
    • \subpage free_borders_page
    • +
    • \subpage borders_at_multi_connection_page
    • +
    • \subpage length_page
    • +
    • \subpage free_edges_page
    • +
    • \subpage length_2d_page
    • +
    • \subpage borders_at_multi_connection_2d_page
    • +
    • \subpage area_page
    • +
    • \subpage taper_page
    • +
    • \subpage aspect_ratio_page
    • +
    • \subpage minimum_angle_page
    • +
    • \subpage warping_page
    • +
    • \subpage skew_page
    • +
    • \subpage aspect_ratio_3d_page
    • +
    • \subpage volume_page
    • +
    + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/radial_prism_algo.doc b/doc/salome/gui/SMESH/input/radial_prism_algo.doc new file mode 100644 index 000000000..756e0329a --- /dev/null +++ b/doc/salome/gui/SMESH/input/radial_prism_algo.doc @@ -0,0 +1,24 @@ +/*! + +\page radial_prism_algo_page Radial Prism + +\n This algorithm applies to the meshing of a hollow 3D shape, +i.e. such shape should be composed of two meshed shells: an outer +shell and an internal shell without intersection with the outer +shell. One of the shells should be a 2D Projection of the other +shell. The meshes of the shells can consist both of triangles and +quadrangles. + +The Radial Prism algorithm would fill the space between the two shells +with meshes. + +This algorithm also needs the information concerning the number and +distribution of mesh layers between the inner and the outer shapes. + +\image html number_of_layers.png + +Distribution of layers can be set with any of 1D Hypotheses. + +\image html distribution_of_layers.png + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/removing_nodes_and_elements.doc b/doc/salome/gui/SMESH/input/removing_nodes_and_elements.doc new file mode 100644 index 000000000..be1944a48 --- /dev/null +++ b/doc/salome/gui/SMESH/input/removing_nodes_and_elements.doc @@ -0,0 +1,76 @@ +/*! + +\page removing_nodes_and_elements_page Removing nodes and elements + +\n In MESH you can remove nodes and all types of cells of your mesh. + +
      +
    • \ref removing_nodes_anchor "Nodes"
    • +
    • \ref removing_elements_anchor "Elements"
    • +
    + +
    +\anchor removing_nodes_anchor +

    Removing nodes

    + +To remove a node: +
      +
    1. Select your mesh in the Object Browser or in the 3D viewer.
    2. + +
    3. From the Modification menu choose Remove and from the associated +submenu select the Remove nodes, or just click "Remove nodes" +button in the toolbar. + +\image html image88.gif +
      "Remove nodes" button
      + +The following dialog box will appear: + +\image html removenodes.png + +In this dialog box you can specify one or several nodes (with pressed +Shift button) by choosing them in the 3D viewer. +
    4. +
    + +\note Be careful while removing nodes because if you remove a definite +node of your mesh all adjacent elements will be also deleted. + +\image html remove_nodes1.png + +\image html remove_nodes2.png + +
    +\anchor removing_elements_anchor +

    Removing elements

    + +To remove an element: +
      +
    1. Select your mesh in the Object Browser or in the 3D viewer.
    2. + +
    3. From the \b Modification menu choose \b Remove and from the +associated submenu select the Remove elements, or just click +"Remove elements" button in the toolbar. + +\image html remove_elements_icon.png +
      "Remove elements" button
      + +The following dialog box will appear: + +\image html removeelements.png + +In this dialog box you can specify one or several elements of your +mesh (with pressed Shift button) by choosing them in the 3D viewer. +
    4. +
    5. Click OK or Apply to confirm deletion of the specified elements.
    6. +
    + +\image html remove_elements1.png + +\image html remove_elements2.png + +
    See Also a sample TUI Script of a +\ref tui_removing_nodes_and_elements "Removing Nodes and Elements" operation. + +*/ + diff --git a/doc/salome/gui/SMESH/input/renumbering_nodes_and_elements.doc b/doc/salome/gui/SMESH/input/renumbering_nodes_and_elements.doc new file mode 100644 index 000000000..9ed74c377 --- /dev/null +++ b/doc/salome/gui/SMESH/input/renumbering_nodes_and_elements.doc @@ -0,0 +1,61 @@ +/*! + +\page renumbering_nodes_and_elements_page Renumbering nodes and elements + +\n In MESH you can renumber the nodes and elements of your mesh. + +
      +
    • \ref renumbering_nodes_anchor "Nodes"
    • +
    • \ref renumbering_elements_anchor "Elements"
    • +
    + +
    +\anchor renumbering_nodes_anchor +

    Renumbering nodes

    + +To renumber the nodes of your mesh: +
      +
    1. In the \b Modification menu select \b Renumbering submenu and +choose the \b Nodes item or click "Renumbering nodes" button +in the toolbar. + +\image html image63.gif +
      "Renumbering nodes" button
      + +The following dialog box will appear: + +\image html renumbernodes.png +
    2. + +
    3. Fill the \b Mesh field by selecting your mesh in the Object +Browser or in the 3D viewer.
    4. +
    5. Click the \b Apply or \b OK button to perform the operation.
    6. +
    + +
    +\anchor renumbering_elements_anchor +

    Renumbering elements

    + +To renumber the elements of your mesh: +
      +
    1. In the \b Modification menu select \b Renumbering submenu and +choose the \b Elements item or click "Renumbering elements" +button in the toolbar. + +\image html image64.gif +
      "Renumbering elements" button
      + +The following dialog box will appear: + +\image html renumberelements.png +
    2. + +
    3. Fill the \b Mesh field by selecting your mesh in the Object +Browser or in the 3D viewer.
    4. +
    5. Click the \b Apply or \b OK button to perform the operation.
    6. +
    + +
    See Also a sample TUI Script of a +\ref tui_renumbering_nodes_and_elements "Renumbering Nodes and Elements" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/revolution.doc b/doc/salome/gui/SMESH/input/revolution.doc new file mode 100644 index 000000000..60ee2ab8e --- /dev/null +++ b/doc/salome/gui/SMESH/input/revolution.doc @@ -0,0 +1,51 @@ +/*! + +\page revolution_page Revolution + +\n Revolution is a type of surface meshing by generation from +discretized lines. It is used to build mesh elements of plus one +dimension than the swept ones. Each swept 1D element produces one or +more quadrangles (or triangles if one node of a rotated element lays +on the revolution axis). + +To apply revolution: +
      +
    1. From the \b Modification menu choose the \b Revolution item or click +"Revolution" button in the toolbar. + +\image html image92.gif +
      "Revolution" button
      + +The following dialog box shall appear: + +\image html revolution1.png + +\image html revolution2.png +
    2. + +
    3. +In this dialog box you should specify: +
        +
      • the type of elements which will be extruded (1D or 2D),
      • +
      • specify the IDs of the elements which will be revolved by +selecting them in the 3D viewer or select the whole mesh or +submesh,
      • +
      • specify the axis (point and vector) around which the elements will +be revolved,
      • +
      • angle of rotation,
      • +
      • number of steps,
      • +
      • tolerance of rotation
      • +
      +
    4. Generate Groups checkbox allows copying the groups of +elements of the source mesh to the newly created one.
    5. + + +
    6. Click the \b Apply or \b OK button.
    7. +
    + +\image html image78.jpg + +
    See Also a sample TUI Script of a +\ref tui_revolution "Revolution" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/rotation.doc b/doc/salome/gui/SMESH/input/rotation.doc new file mode 100644 index 000000000..bf2ca4978 --- /dev/null +++ b/doc/salome/gui/SMESH/input/rotation.doc @@ -0,0 +1,37 @@ +/*! + +\page rotation_page Rotation + +\n This geometrical operation allows to rotate in space your mesh or +some of its elements. + +To rotate your mesh: +\par +From the \b Modification choose \b Transformation and from its sub-menu +select the \b Rotation item. The following dialog box shall appear: + +\image html rotation.png +\par +In this dialog box you can specify the elements which should be +rotated and the rotation parameters: +
      +
    • \b Axis: point and vector
    • +
    • \b Angle of rotation
    • +
    + +\n Toggle the corresponding checkbox to Select whole mesh, submesh or group. +\n When Move elements radio button is selected, the source mesh (or elements) is created at the new location and erased from its previous location +\n When Copy elements radio button is selected,the source mesh (or elements) is created at the new location, but it also remains at its previous location and is considered one and single mesh with the result of the rotation. +\n When Create as new mesh radio button is selected, the source mesh (or elements) remains at its previous location and a new mesh is created at the new location and appears in the Object Browser with the default name MeshName_rotated (you can change this name in the adjacent box). +\n Copy groups checkbox allows copying the groups of elements of the source mesh to the newly created one. +\par + + +\image html rotation1.png + +\image html rotation2.png + +
    See Also a sample TUI Script of a +\ref tui_rotation "Rotation" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/running_mesh_module.doc b/doc/salome/gui/SMESH/input/running_mesh_module.doc new file mode 100644 index 000000000..d7a794474 --- /dev/null +++ b/doc/salome/gui/SMESH/input/running_mesh_module.doc @@ -0,0 +1,16 @@ +/*! + +\page running_mesh_module_page Running MESH module + +\n To start MESH module in SALOME click "Mesh" icon in the "Modules" toolbar or +select \b Mesh from the Choose box. + +\image html image25.jpg +
    "Mesh" icon
    + +The desktop of the SALOME platform will be updated with additional +toolbars and menus related to the \b MESH component . + +\image html a-viewgeneral.png + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/segments_around_vertex_algo.doc b/doc/salome/gui/SMESH/input/segments_around_vertex_algo.doc new file mode 100644 index 000000000..f6250d2e5 --- /dev/null +++ b/doc/salome/gui/SMESH/input/segments_around_vertex_algo.doc @@ -0,0 +1,17 @@ +/*! + +\page segments_around_vertex_algo_page Segments around Vertex + +\n Segments around Vertex algorithm is considered to be a 0D meshing +algorithm, but, of course, it doesn't mesh nodes. It allows to define +the local size of the elements in the neighborhood of a certain +node. If we choose an object of higher dimension, it applies to all +its tops, i.e. corners of a box. The 0D algorithm combines with the +algorithms of higher dimensions, but it is not necessarily required +for their successful implementation. + +This algorithm allows only one hypothesis. + +\image html lengthnearvertex.png + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/selection_filter_library.doc b/doc/salome/gui/SMESH/input/selection_filter_library.doc new file mode 100644 index 000000000..613febb9c --- /dev/null +++ b/doc/salome/gui/SMESH/input/selection_filter_library.doc @@ -0,0 +1,46 @@ +/*! + +\page selection_filter_library_page Selection filter library + +\n Selection filter library is a powerful tool enabling to create +filters to be used on meshes. You can access to it from the Main Menu +via Tools / Selection filter library. + +\image html selectionfilterlibrary.png + +Library file name shows the path and the file name where your +filters will be stored. By clicking the Browse button you can load an +existing filter library. +\n Names of filters lists the filters created or uploaded for +the current study. You can \b Add or \b Delete filters. +\n In Filter name box you can specify the name for your +filter. By default it is prefixed with the corresponding entity type. +\n Each filter can be applicable to \b Nodes, \b Edges, \b Faces or \b +Volumes. You can combine many criteria in one filter, but they all +must be of the same Entity type. +\n The \b Add button creates a new criterion at the end of the list of +criteria. The \b Insert button creates a new criterion before the +selected criterion. The \b Remove button deletes the selected +criterion. The \b Clear button deletes all criteria. +\n Each Entity type has its specific list of criteria, however all +filters have common syntax. For each criterion you should specify the +Threshold Value and whether we search for the elements that should be +\b More, \b Less or \b Equal to this \b Value. You should also specify if the +criterion is \b Unary or \b Binary. +\n Some criteria should have the additional parameter of \b Tolerance. + +When we create a Standalone Group using filters (for this click +Set Filters button in the Create Group menu), the menu +for setting filters looks a bit differently. Toggling Insert filter +in viewer checkbox enables to preview the group selected with your +current filter in the viewer. +\n In the \b Source field you choose if the filter will be applied to +the whole \b Mesh, the Initial Selection or the Current Group. +\n Copy from... button gives you a possibility to load an +existing filter from Selection filter library and Add +to... button gives you a possibility to save your current filter +in the Library. + +\image html a-filteronedges.png + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/sewing_meshes.doc b/doc/salome/gui/SMESH/input/sewing_meshes.doc new file mode 100644 index 000000000..e40f8fdc8 --- /dev/null +++ b/doc/salome/gui/SMESH/input/sewing_meshes.doc @@ -0,0 +1,159 @@ +/*! + +\page sewing_meshes_page Sewing meshes + +\n In SMESH you can sew elements of different meshes. The current +functionality allows you to sew: +
      +
    • \ref free_borders_anchor "Free borders"
    • +
    • \ref conform_free_borders_anchor "Conform free borders"
    • +
    • \ref border_to_side_anchor "Border to side"
    • +
    • \ref side_elements_anchor "Side elements"
    • +
    + +To sew elements of different meshes: +
      +
    1. From the \b Modification menu choose the \b Transformation item +and from its sub-menu select the \b Sewing item.
    2. +
    3. Check in the dialog box one of the radio buttons corresponding to +the type of sewing operation you would like to perform.
    4. +
    5. Fill the other fields available in the dialog box.
    6. +
    7. Click the \b OK or \b Apply button to perform the operation of sewing.
    8. +
    + +
    +\anchor free_borders_anchor +

    Sew free borders

    + +This functionality allows you to unite two free borders of a 2D mesh. + +\image html sewing1.png + +For sewing free borders you should define three points on each border: +first, second and the last node: +
      +
    • the first node specifies beginning of the border;
    • +
    • the second node specifies the part of the border which should be +considered (as far as the free border usually forms a closed +contour);
    • +
    • the last node specifies the end of the border.
    • +
    + +You can select these nodes in the 3D viewer or define by its id. + +The first and the second nodes should belong to the same link of a +face. The second and the last nodes of a border can be the same. The +first and the last nodes of two borders can be the same. The +corresponding end nodes of two borders will be merged. Intermediate +nodes of two borders will be either merged or inserted into faces of +the opposite border. + +The sewing algorithm is as follows: +
      +
    1. The parameter (U) of each node within a border is computed. So +that the first node has U=0.0, the last node has U=1.0, for the rest +nodes 0.0 < U < 1.0;
    2. +
    3. Compare node parameters of the two borders. If two nodes of the +opposite borders have close parameters, they are merged, i.e. a node +of the first border is replaced in all elements by a node of the +second border. If a node has no node with a close parameter in the +opposite border, it is inserted into an edge of element of the +opposite border, an element is split. Two nodes are considered close +enough to merge, if difference of their parameters is less than one +fifth of minimum length of adjacent face edges on the borders.
    4. +
    + +\image html image22.jpg + +See Also a sample TUI Script of a +\ref tui_sew_free_borders "Sew Free Borders" operation. + +
    +\anchor conform_free_borders_anchor +

    Sew conform free borders

    + +This functionality can be used to unite two free borders of a 2D mesh. + +\image html sewing2.png + +The borders of meshes for sewing are defined as for "Sew free borders" +except that the second free border is not limited and can be defined +by the first and the second nodes only. The first nodes of two borders +can be the same. + +The algorithm is following: counting nodes starting at the first ones, +the n-th node of the first border is merged with the n-th node of the +other border, until the end of either of borders. Nodes of the first +border are replaced in all elements with corresponding nodes of the +second border. +\n For sewing conform free borders you should define three points on +the first border and two points on the second one. User can select +these nodes in 3D viewer or define node by its id. + +\image html image22.jpg + +See Also a sample TUI Script of a +\ref tui_sew_conform_free_borders "Sew Conform Free Borders" +operation. + +
    +\anchor border_to_side_anchor +

    Sew border to side

    + +"Sew border to side" is intended to sew a free border to a mesh +surface. +\n The free border is defined as for "Sewing of free borders". The +place where to sew the border is defined by two nodes, between which +the border faces are placed, so that the first border node is merged +with the first node on the side and the last node of the border is +merged with the second specified node on the side. + +\image html sewing3.png + +The algorithm is following. +
      +
    1. Find a sequence of linked nodes on the side such that the found +links to be most co-directed with the links of the free border.
    2. +
    3. Sew two sequences of nodes using algorithm of "Sewing of free berders". +\n For sewing border to side you should define three points on the +border and two points on the side. User can select these nodes in 3D +viewer or define node by its id.
    4. +
    + +\image html image30.jpg + +See Also a sample TUI Script of a +\ref tui_sew_meshes_border_to_side "Sew Border to Side" operation. + +
    +\anchor side_elements_anchor +

    Sew side elements

    + +This operation is intended to unite two mesh surfaces. + +\image html sewing4.png + +Surfaces may be defined by either 2d or 3d elements. The number of +given elements of the sides must be the same. The sets of given +elements must be topologically equal, i.e. each node of one element +set must have a corresponding node in the other element set and +corresponding nodes must be equally linked. If there are 3d elements +in a set, only their free faces must obey to that rule. +\n Two corresponding nodes on each side must be specified. They must +belong to one element and must be located on an element set boundary. + +Sewing algorithm finds and merges the corresponding nodes starting +from the specified ones. + +\image html image31.jpg + +\image html image32.jpg + +For sewing side elements you should define elements for sewing and two +nodes for merging on the each side. User can select these elements and +nodes in 3D viewer or define them by its id. + +See Also a sample TUI Script of a +\ref tui_sew_side_elements "Sew Side Elements" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/skew.doc b/doc/salome/gui/SMESH/input/skew.doc new file mode 100644 index 000000000..582ada3a1 --- /dev/null +++ b/doc/salome/gui/SMESH/input/skew.doc @@ -0,0 +1,32 @@ +/*! + +\page skew_page Skew + +\n \b Skew mesh quality criterion reflects the angle between the lines +that join opposite sides of a quadrangle element or the greatesr angle +between three medians in triangle elements. This mesh quality +criterion can be applied to elements composed of 4 and 3 nodes +(quadrangles and triangles). + +\image html image27.jpg + +To apply the Skew quality criterion to your mesh: +
      +
    1. Display your mesh in the viewer.
    2. + +
    3. Choose Controls > Skew or click "Skew" button of the toolbar. + +\image html image40.gif +
      "Skew" button
      + +Your mesh will be displayed in the viewer with its elements colored +according to the applied mesh quality control criterion: + +\image html image93.jpg +
    4. +
    + +
    See Also a sample TUI Script of a +\ref tui_skew "Skew quality control" operation. + +*/ diff --git a/doc/salome/gui/SMESH/input/smeshpy_interface.doc b/doc/salome/gui/SMESH/input/smeshpy_interface.doc new file mode 100644 index 000000000..4fbf3d3b5 --- /dev/null +++ b/doc/salome/gui/SMESH/input/smeshpy_interface.doc @@ -0,0 +1,10 @@ +/*! + +\page smeshpy_interface_page Python interface smesh.py + +\n Python package smesh defines several classes, destined for easy and +clear mesh creation and edition (see the \ref introduction_to_mesh_python_page "example"). + +\n Also, please see \ref smeshDC "documentation for smesh.py" + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/smoothing.doc b/doc/salome/gui/SMESH/input/smoothing.doc new file mode 100644 index 000000000..f1991d62b --- /dev/null +++ b/doc/salome/gui/SMESH/input/smoothing.doc @@ -0,0 +1,77 @@ +/*! + +\page smoothing_page Smoothing + +\n Smoothing is used to adjust the locations of element corners +(nodes) to reduce distortions in these elements. + +To apply smoothing to the elements of your mesh: +
      +
    1. Display a mesh or a submesh in the 3D viewer.
    2. +
    3. In the \b Modification menu select the \b Smoothing item or click +"Smoothing" button in the toolbar. + +\image html image84.gif +
      "Smoothing" button
      + +The dialog box contains the following fields which should be +specified: + +\image html smoothing.png + +
        +
      • Id Elements field allows to specify the elements which +should be smoothed by selecting them in the 3D viewer (lock \b Shift +button to select several elements).
      • +
      • Select whole mesh, submesh or group - smoothing is applied +to the whole mesh or its part.
      • +
      • Fixed nodes ids: some nodes keep their location during +smoothing. If a mesh is built on a geometry shape, the nodes built on +geometrical edges are always fixed. If smoothing is applied to a part +of a mesh then the boundary nodes of an elements set are also +fixed. Any other nodes may be additionally fixed.
      • +
      • Smoothing Method: +
          +
        • \b Laplacian smoothing pulls a node toward the center of +surrounding nodes directly connected to that node along an element +edge. +
        • \b Centroidal smoothing pulls a node toward the +element-area-weighted centroid of the surrounding elements.
        • + +Typically, the Laplacian method will produce the mesh with the least element +distortion. It is also the faster method.Centroidal smoothing usually +produces a mesh that has more uniform element sizes. Both methods +produce good results with "free" meshes. +
        + +\image html image83.gif + +
      • +
      • Iteration limit: both of the smoothing methods use an +iterative procedure to converge toward a smoothed mesh. All nodes are +smoothed according to one of the techniques shown above. Then the +smoothing is reevaluated with the updated nodal locations. This +process continues until the maximum number of iterations has been +exceeded, or all elements has aspect ratio less or equal than the +specified one.
      • +
      • Max. aspect ratio allows to define the quality at which the +smoothing algorithm should stop the iterations as the target of the +operation has been reached.
      • +
      • When in parametric space radio button is checked, the +algorithm tries to improve the shape of faces in the parametric space +of geometrical surfaces on which they are generated, else the shape of +faces in the 3D space is improved.
      • +
      + +
    4. +
    5. Click the \b Apply or \b OK button to confirm the operation.
    6. +
    + +\image html smoothing1.png + +\image html smoothing2.png + +
    See Also a sample TUI Script of a +\ref tui_smoothing "Smoothing" operation. + +*/ diff --git a/doc/salome/gui/SMESH/input/symmetry.doc b/doc/salome/gui/SMESH/input/symmetry.doc new file mode 100644 index 000000000..efbad6595 --- /dev/null +++ b/doc/salome/gui/SMESH/input/symmetry.doc @@ -0,0 +1,42 @@ +/*! + +\page symmetry_page Symmetry + +\n This geometrical operation allows to perform a symmetrical copy of +your mesh or some of its elements. + +To apply symmetry to your mesh: +\par +From the \b Modification choose \b Transformation and from its +sub-menu select the \b Symmetry item. The following dialog box shall +appear: + +\image html symmetry1.png + +\image html symmetry2.png + +\image html symmetry3.png + +\par +This operation has three options, you can symmetrically copy your mesh +or some of its elements specifying: +
      +
    • one point
    • +
    • one axis (point and vector)
    • +
    • one plane (point and normal)
    • +
    + + +\n Toggle the corresponding checkbox to Select whole mesh, submesh or group. +\n When Move elements radio button is selected, the source mesh (or elements) is created at the new location and erased from its previous location +\n When Copy elements radio button is selected,the source mesh (or elements) is created at the new location, but it also remains at its previous location and is considered one and single mesh with the result of the translation. +\n When Create as new mesh radio button is selected, the source mesh (or elements) remains at its previous location and a new mesh is created at the new location and appears in the Object Browser with the default name MeshName_mirrored (you can change this name in the adjacent box). +\n Copy groups checkbox allows copying the groups of elements of the source mesh to the newly created one. + +. +\par + +
    See Also a sample TUI Script of a +\ref tui_symmetry "Symmetry" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/taper.doc b/doc/salome/gui/SMESH/input/taper.doc new file mode 100644 index 000000000..a207990b7 --- /dev/null +++ b/doc/salome/gui/SMESH/input/taper.doc @@ -0,0 +1,32 @@ +/*! + +\page taper_page Taper + +\n \b Taper mesh quality criterion represents the ratio of the areas +of two triangles separated by a diagonal. So it can be calculated only +for elements consisting of 4 nodes. + +\image html image25.gif + +
    To apply the Taper quality criterion to your mesh: + +
      +
    1. Display your mesh in the viewer.
    2. + +
    3. Choose Controls > Taper or click "Taper" button in +the toolbar. + +\image html image36.gif +
      "Taper" button
      + +Your mesh will be displayed in the viewer with its elements colored +according to the applied mesh quality control criterion: + +\image html image90.jpg +
    4. +
    + +
    See Also a sample TUI Script of a +\ref tui_taper "Taper quality control" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/transforming_meshes.doc b/doc/salome/gui/SMESH/input/transforming_meshes.doc new file mode 100644 index 000000000..206c6401c --- /dev/null +++ b/doc/salome/gui/SMESH/input/transforming_meshes.doc @@ -0,0 +1,14 @@ +/*! + +\page transforming_meshes_page Transforming meshes + +
      +
    • \subpage translation_page
    • +
    • \subpage rotation_page
    • +
    • \subpage symmetry_page
    • +
    • \subpage sewing_meshes_page
    • +
    • \subpage merging_nodes_page
    • +
    • \subpage merging_elements_page
    • +
    + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/translation.doc b/doc/salome/gui/SMESH/input/translation.doc new file mode 100644 index 000000000..1f48901d5 --- /dev/null +++ b/doc/salome/gui/SMESH/input/translation.doc @@ -0,0 +1,35 @@ +/*! + +\page translation_page Translation + +\n This geometrical operation allows to translate in space your mesh +or some of its elements. + +To translate your mesh: +\par +From the \b Modification choose \b Transformation and from its +sub-menu select the \b Translation item. The following dialog box +shall appear: + +\image html translation1.png + +\image html translation2.png + +\par +This operation has two options, you can translate in space your mesh +or some of its elements specifying: +
      +
    • two points (starting and ending)
    • +
    • one vector
    • +
    +Toggle the corresponding checkbox to Select whole mesh, submesh or +group. +\n When Move elements radio button is selected, the source mesh (or elements) is created at the new location and erased from its previous location +\n When Copy elements radio button is selected,the source mesh (or elements) is created at the new location, but it also remains at its previous location and is considered one and single mesh with the result of the translation. +\n When Create as new mesh radio button is selected, the source mesh (or elements) remains at its previous location and a new mesh is created at the new location and appears in the Object Browser with the default name MeshName_translated (you can change this name in the adjacent box). +\n Copy groups checkbox allows copying the groups of elements of the source mesh to the newly created one. + +
    See Also a sample TUI Script of a +\ref tui_translation "Translation" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/transparency.doc b/doc/salome/gui/SMESH/input/transparency.doc new file mode 100644 index 000000000..91734abf8 --- /dev/null +++ b/doc/salome/gui/SMESH/input/transparency.doc @@ -0,0 +1,11 @@ +/*! + +\page transparency_page Transparency + +\image html a-transparency.png + +Using this slider you can set the transparency of shading. Absolutely +transparent shading will be invisible. By default it is absolutely +opaque. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/tui_creating_meshes.doc b/doc/salome/gui/SMESH/input/tui_creating_meshes.doc new file mode 100644 index 000000000..f174e863f --- /dev/null +++ b/doc/salome/gui/SMESH/input/tui_creating_meshes.doc @@ -0,0 +1,184 @@ +/*! + +\page tui_creating_meshes_page Creating Meshes + +\n First of all see \ref introduction_to_mesh_python_page "Example of 3d mesh generation", + which is an example of good python script style for Mesh module. + +
    +

    Construction of a Mesh

    + +\code +import geompy +import smesh + +# create a box +box = geompy.MakeBox(0., 0., 0., 100., 200., 300.) +idbox = geompy.addToStudy(box, "box") + +# create a mesh +tetra = smesh.Mesh(box, "MeshBox") + +algo1D = tetra.Segment() +algo1D.NumberOfSegments(7) + +algo2D = tetra.Triangle() +algo2D.MaxElementArea(800.) + +algo3D = tetra.Tetrahedron(smesh.NETGEN) +algo3D.MaxElementVolume(900.) + +# compute the mesh +ret = tetra.Compute() +if ret == 0: + print "problem when computing the mesh" +else: + print "mesh computed" + pass +\endcode + +
    +\anchor tui_construction_submesh +

    Construction of a Submesh

    + +\code +from geompy import * +import smesh + +# create a box +box = MakeBoxDXDYDZ(10., 10., 10.) +addToStudy(box, "Box") + +# select one edge of the box for definition of a local hypothesis +p5 = MakeVertex(5., 0., 0.) +EdgeX = GetEdgeNearPoint(box, p5) +addToStudyInFather(box, EdgeX, "Edge [0,0,0 - 10,0,0]") + +# create a hexahedral mesh on the box +quadra = smesh.Mesh(box, "Box : quadrangle 2D mesh") + +# create a regular 1D algorithm for the faces +algo1D = quadra.Segment() + +# define "NumberOfSegments" hypothesis to cut +# all the edges in a fixed number of segments +algo1D.NumberOfSegments(4) + +# create a quadrangle 2D algorithm for the faces +quadra.Quadrangle() + +# construct a submesh on the edge with a local hypothesis +algo_local = quadra.Segment(EdgeX) + +# define "Arithmetic1D" hypothesis to cut the edge in several segments with increasing arithmetic length +algo_local.Arithmetic1D(1, 4) + +# define "Propagation" hypothesis that propagates all other hypotheses +# on all edges of the opposite side in case of quadrangular faces +algo_local.Propagation() + +# compute the mesh +quadra.Compute() + +\endcode + +
    +\anchor tui_editing_mesh +

    Editing of a mesh

    + +\code +import geompy +import smesh + +def PrintMeshInfo(theMesh): + aMesh = theMesh.GetMesh() + print "Information about mesh:" + print "Number of nodes : ", aMesh.NbNodes() + print "Number of edges : ", aMesh.NbEdges() + print "Number of faces : ", aMesh.NbFaces() + print "Number of volumes : ", aMesh.NbVolumes() + pass + +# create a box +box = geompy.MakeBox(0., 0., 0., 20., 20., 20.) +geompy.addToStudy(box, "box") + +# select one edge of the box for definition of a local hypothesis +subShapeList = geompy.SubShapeAll(box, geompy.ShapeType["EDGE"]) +edge = subShapeList[0] +name = geompy.SubShapeName(edge, box) +geompy.addToStudyInFather(box, edge, name) + +# create a mesh +tria = smesh.Mesh(box, "Mesh 2D") +algo1D = tria.Segment() +hyp1 = algo1D.NumberOfSegments(3) +algo2D = tria.Triangle() +hyp2 = algo2D.MaxElementArea(10.) + +# create a sub-mesh +algo_local = tria.Segment(edge) +hyp3 = algo_local.Arithmetic1D(1, 6) +hyp4 = algo_local.Propagation() + +# compute the mesh +tria.Compute() +PrintMeshInfo(tria) + +# remove a local hypothesis +mesh = tria.GetMesh() +mesh.RemoveHypothesis(edge, hyp4) + +# compute the mesh +tria.Compute() +PrintMeshInfo(tria) + +# change the value of the 2D hypothesis +hyp2.SetMaxElementArea(2.) + +# compute the mesh +tria.Compute() +PrintMeshInfo(tria) +\endcode + +
    +\anchor tui_export_mesh +

    Export of a Mesh

    + +\code +import geompy +import smesh + +# create a box +box = geompy.MakeBox(0., 0., 0., 100., 200., 300.) +idbox = geompy.addToStudy(box, "box") + +# create a mesh +tetra = smesh.Mesh(box, "MeshBox") + +algo1D = tetra.Segment() +algo1D.NumberOfSegments(7) + +algo2D = tetra.Triangle() +algo2D.MaxElementArea(800.) + +algo3D = tetra.Tetrahedron(smesh.NETGEN) +algo3D.MaxElementVolume(900.) + +# compute the mesh +tetra.Compute() + +# export the mesh in a MED file +tetra.ExportMED("/tmp/meshMED.med", 0) +\endcode + +
    +

    How to mesh a cylinder with hexahedrons?

    +Here you can see an example of python script, creating a hexahedral +mesh on a cylinder. And a picture below the source code of the script, +demonstrating the resulting mesh. +\include ex24_cylinder.py + +\image html mesh_cylinder_hexa.png + +*/ diff --git a/doc/salome/gui/SMESH/input/tui_defining_hypotheses.doc b/doc/salome/gui/SMESH/input/tui_defining_hypotheses.doc new file mode 100644 index 000000000..bd9fbbb10 --- /dev/null +++ b/doc/salome/gui/SMESH/input/tui_defining_hypotheses.doc @@ -0,0 +1,385 @@ +/*! + +\page tui_defining_hypotheses_page Defining Hypotheses and Algorithms + +

    Defining 1D Hypotheses

    + +
    +\anchor tui_1d_arithmetic +

    1D Arithmetic

    + +\code +import geompy +import smesh + +# create a box +box = geompy.MakeBoxDXDYDZ(10., 10., 10.) +geompy.addToStudy(box, "Box") + +# create a hexahedral mesh on the box +hexa = smesh.Mesh(box, "Box : hexahedrical mesh") + +# create a Regular 1D algorithm for edges +algo1D = hexa.Segment() + +# define "Arithmetic1D" hypothesis to cut all edges in several segments with increasing arithmetic length +algo1D.Arithmetic1D(1, 4) + +# create a quadrangle 2D algorithm for faces +hexa.Quadrangle() + +# create a hexahedron 3D algorithm for solids +hexa.Hexahedron() + +# compute the mesh +hexa.Compute() +\endcode + +
    +\anchor tui_deflection_1d +

    Deflection 1D and Number of Segments

    + +\code +import geompy +import smesh + +# create a face from arc and straight segment +px = geompy.MakeVertex(100., 0. , 0. ) +py = geompy.MakeVertex(0. , 100., 0. ) +pz = geompy.MakeVertex(0. , 0. , 100.) + +exy = geompy.MakeEdge(px, py) +arc = geompy.MakeArc(py, pz, px) + +wire = geompy.MakeWire([exy, arc]) + +isPlanarFace = 1 +face1 = geompy.MakeFace(wire, isPlanarFace) +geompy.addToStudy(face1,"Face1") + +# get edges from the face +e_straight,e_arc = geompy.SubShapeAll(face1, geompy.ShapeType["EDGE"]) +geompy.addToStudyInFather(face1, e_arc, "Arc Edge") + +# create hexahedral mesh +hexa = smesh.Mesh(face1, "Face : triangle mesh") + +# define "NumberOfSegments" hypothesis to cut a straight edge in a fixed number of segments +algo1D = hexa.Segment() +algo1D.NumberOfSegments(6) + +# define "MaxElementArea" hypothesis +algo2D = hexa.Triangle() +algo2D.MaxElementArea(70.0) + +# define a local "Deflection1D" hypothesis on the arc +algo_local = hexa.Segment(e_arc) +algo_local.Deflection1D(1.0) + +# compute the mesh +hexa.Compute() +\endcode + +
    +\anchor tui_start_and_end_length +

    Start and End Length

    + +\code +from geompy import * +import smesh + +# create a box +box = MakeBoxDXDYDZ(10., 10., 10.) +addToStudy(box, "Box") + +# get one edge of the box to put local hypothesis on +p5 = MakeVertex(5., 0., 0.) +EdgeX = GetEdgeNearPoint(box, p5) +addToStudyInFather(box, EdgeX, "Edge [0,0,0 - 10,0,0]") + +# create a hexahedral mesh on the box +hexa = smesh.Mesh(box, "Box : hexahedrical mesh") + +# set algorithms +algo1D = hexa.Segment() +hexa.Quadrangle() +hexa.Hexahedron() + +# define "NumberOfSegments" hypothesis to cut an edge in a fixed number of segments +algo1D.NumberOfSegments(4) + +# create a local hypothesis +algo_local = hexa.Segment(EdgeX) + +# define "StartEndLength" hypothesis to cut an edge in several segments with increasing geometric length +algo_local.StartEndLength(1, 6) + +# define "Propagation" hypothesis that propagates all other hypothesis +# on all edges on the opposite side in case of quadrangular faces +algo_local.Propagation() + +# compute the mesh +hexa.Compute() +\endcode + +
    +\anchor tui_average_length +

    Average Length

    + +\code +from geompy import * +import smesh + +# create a box +box = MakeBoxDXDYDZ(10., 10., 10.) +addToStudy(box, "Box") + +# get one edge of the box to put local hypothesis on +p5 = MakeVertex(5., 0., 0.) +EdgeX = GetEdgeNearPoint(box, p5) +addToStudyInFather(box, EdgeX, "Edge [0,0,0 - 10,0,0]") + +# create a hexahedral mesh on the box +hexa = smesh.Mesh(box, "Box : hexahedrical mesh") + +# set algorithms +algo1D = hexa.Segment() +hexa.Quadrangle() +hexa.Hexahedron() + +# define "NumberOfSegments" hypothesis to cut all edges in a fixed number of segments +algo1D.NumberOfSegments(4) + +# create a sub-mesh +algo_local = hexa.Segment(EdgeX) + +# define "LocalLength" hypothesis to cut an edge in several segments with the same length +algo_local.LocalLength(2.) + +# define "Propagation" hypothesis that propagates all other hypothesis +# on all edges on the opposite side in case of quadrangular faces +algo_local.Propagation() + +# compute the mesh +hexa.Compute() +\endcode + +

    Defining 2D and 3D hypotheses

    + +
    +\anchor tui_max_element_area +

    Maximum Element Area

    + +\code +import geompy +import smesh +import salome + +# create a face +px = geompy.MakeVertex(100., 0. , 0. ) +py = geompy.MakeVertex(0. , 100., 0. ) +pz = geompy.MakeVertex(0. , 0. , 100.) + +vxy = geompy.MakeVector(px, py) +arc = geompy.MakeArc(py, pz, px) +wire = geompy.MakeWire([vxy, arc]) + +isPlanarFace = 1 +face = geompy.MakeFace(wire, isPlanarFace) + +# add the face in the study +id_face = geompy.addToStudy(face, "Face to be meshed") + +# create a mesh +tria_mesh = smesh.Mesh(face, "Face : triangulation") + +# define 1D meshing: +algo = tria_mesh.Segment() +algo.NumberOfSegments(20) + +# define 2D meshing: + +# assign triangulation algorithm +algo = tria_mesh.Triangle() + +# apply "Max Element Area" hypothesis to each triangle +algo.MaxElementArea(100) + +# compute the mesh +tria_mesh.Compute() +\endcode + +
    +\anchor tui_max_element_volume +

    Maximum Element Volume

    + +\code +import geompy +import smesh + +# create a cylinder +cyl = geompy.MakeCylinderRH(30., 50.) +geompy.addToStudy(cyl, "cyl") + +# create a mesh on the cylinder +tetra = smesh.Mesh(cyl, "Cylinder : tetrahedrical mesh") + +# assign algorithms +algo1D = tetra.Segment() +algo2D = tetra.Triangle() +algo3D = tetra.Tetrahedron(smesh.NETGEN) + +# assign 1D and 2D hypotheses +algo1D.NumberOfSegments(7) +algo2D.MaxElementArea(150.) + +# assign Max Element Volume hypothesis +algo3D.MaxElementVolume(200.) + +# compute the mesh +ret = tetra.Compute() +if ret == 0: + print "probleme when computing the mesh" +else: + print "Computation succeded" +\endcode + +
    +\anchor tui_length_from_edges +

    Length from Edges

    + +\code +import geompy +import smesh + +# create sketchers +sketcher1 = geompy.MakeSketcher("Sketcher:F 0 0:TT 70 0:TT 70 70:TT 0 70:WW") +sketcher2 = geompy.MakeSketcher("Sketcher:F 20 20:TT 50 20:TT 50 50:TT 20 50:WW") + +# create a face from two wires +isPlanarFace = 1 +face1 = geompy.MakeFaces([sketcher1, sketcher2], isPlanarFace) +geompy.addToStudy(face1, "Face1") + +# create a mesh +tria = smesh.Mesh(face1, "Face : triangle 2D mesh") + +# Define 1D meshing +algo1D = tria.Segment() +algo1D.NumberOfSegments(2) + +# create and assign the algorithm for 2D meshing with triangles +algo2D = tria.Triangle() + +# create and assign "LengthFromEdges" hypothesis to build triangles based on the length of the edges taken from the wire +algo2D.LengthFromEdges() + +# compute the mesh +tria.Compute() +\endcode + +

    Defining Additional Hypotheses

    + +
    +\anchor tui_propagation +

    Propagation

    + +\code +from geompy import * +import smesh + +# create a box +box = MakeBoxDXDYDZ(10., 10., 10.) +addToStudy(box, "Box") + +# get one edge of the box to put local hypothesis on +p5 = MakeVertex(5., 0., 0.) +EdgeX = GetEdgeNearPoint(box, p5) +addToStudyInFather(box, EdgeX, "Edge [0,0,0 - 10,0,0]") + +# create a hexahedral mesh on the box +hexa = smesh.Mesh(box, "Box : hexahedrical mesh") + +# set global algorithms and hypotheses +algo1D = hexa.Segment() +hexa.Quadrangle() +hexa.Hexahedron() +algo1D.NumberOfSegments(4) + +# create a sub-mesh with local 1D hypothesis and propagation +algo_local = hexa.Segment(EdgeX) + +# define "Arithmetic1D" hypothesis to cut an edge in several segments with increasing length +algo_local.Arithmetic1D(1, 4) + +# define "Propagation" hypothesis that propagates all other 1D hypotheses +# from all edges on the opposite side of a face in case of quadrangular faces +algo_local.Propagation() + +# compute the mesh +hexa.Compute() +\endcode + +
    +\anchor tui_defining_meshing_algos +

    Defining Meshing Algorithms

    + +\code +import geompy +import smesh + +# create a box +box = geompy.MakeBoxDXDYDZ(10., 10., 10.) +geompy.addToStudy(box, "Box") + +# 1. Create a hexahedral mesh on the box +hexa = smesh.Mesh(box, "Box : hexahedrical mesh") + +# create a Regular 1D algorithm for edges +algo1D = hexa.Segment() + +# create a quadrangle 2D algorithm for faces +algo2D = hexa.Quadrangle() + +# create a hexahedron 3D algorithm for solids +algo3D = hexa.Hexahedron() + +# define hypotheses +algo1D.Arithmetic1D(1, 4) + +# compute the mesh +hexa.Compute() + +# 2. Create a tetrahedral mesh on the box +tetra = smesh.Mesh(box, "Box : tetrahedrical mesh") + +# create a Regular 1D algorithm for edges +algo1D = tetra.Segment() + +# create a Mefisto 2D algorithm for faces +algo2D = tetra.Triangle() + +# create a Netgen 3D algorithm for solids +algo3D = tetra.Tetrahedron(smesh.NETGEN) + +# define hypotheses +algo1D.Arithmetic1D(1, 4) +algo2D.LengthFromEdges() + +# compute the mesh +tetra.Compute() + +# 3. Create a tetrahedral mesh on the box with NETGEN_2D3D algorithm +tetraN = smesh.Mesh(box, "Box : tetrahedrical mesh by NETGEN_2D3D") + +# create a Netgen_2D3D algorithm for solids +algo3D = tetraN.Tetrahedron(smesh.FULL_NETGEN) + +# define hypotheses +n23_params = algo3D.Parameters() + +# compute the mesh +tetraN.Compute() +\endcode + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/tui_grouping_elements.doc b/doc/salome/gui/SMESH/input/tui_grouping_elements.doc new file mode 100644 index 000000000..8b9f6391c --- /dev/null +++ b/doc/salome/gui/SMESH/input/tui_grouping_elements.doc @@ -0,0 +1,277 @@ +/*! + +\page tui_grouping_elements_page Grouping Elements + +
    +\anchor tui_create_standalone_group +

    Create a Standalone Group

    + +\code +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh +salome = SMESH_mechanic.salome + +# Get ids of all faces with area > 100 +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Area, smesh.FT_MoreThan, 100.) + +anIds = mesh.GetIdsFromFilter(aFilter) + +# create a group consisting of faces with area > 100 +aGroup = mesh.MakeGroupByIds("Area > 100", smesh.FACE, anIds) + +salome.sg.updateObjBrowser(1) +\endcode + +\image html create_group.png + +
    +\anchor tui_create_group_on_geometry +

    Create a Group on Geometry

    + +\code +import salome +import geompy +import smesh + +# create a box +box = geompy.MakeBox(0., 0., 0., 100., 100., 100.) +geompy.addToStudy(box, "box") + +# add the first face of the box to the study +subShapeList = geompy.SubShapeAll(box, geompy.ShapeType["FACE"]) +face = subShapeList[0] +geompy.addToStudyInFather(box, face, "face 1") + +# create group of edges on the face +aGeomGroupE = geompy.CreateGroup(face, geompy.ShapeType["EDGE"]) +geompy.AddObject(aGeomGroupE, 3) +geompy.AddObject(aGeomGroupE, 6) +geompy.AddObject(aGeomGroupE, 8) +geompy.AddObject(aGeomGroupE, 10) +geompy.addToStudyInFather(face, aGeomGroupE, "Group of Edges") + +# create quadrangle 2D mesh on the box +quadra = smesh.Mesh(box, "Box : quadrangle 2D mesh") +algo1D = quadra.Segment() +quadra.Quadrangle() +algo1D.NumberOfSegments(7) + +# compute the mesh +quadra.Compute() + +# create SMESH group on the face with name "SMESHGroup1" +aSmeshGroup1 = quadra.GroupOnGeom(face, "SMESHGroup1") + +# create SMESH group on with default name +aSmeshGroup2 = quadra.GroupOnGeom(aGeomGroupE) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_edit_group +

    Edit a Group

    + +\code +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh +salome = SMESH_mechanic.salome + +# Get ids of all faces with area > 35 +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Area, smesh.FT_MoreThan, 35.) + +anIds = mesh.GetIdsFromFilter(aFilter) + +print "Criterion: Area > 35, Nb = ", len(anIds) + +# create a group by adding elements with area > 35 +aGroup = mesh.CreateEmptyGroup(smesh.FACE, "Area > 35") +aGroup.Add(anIds) + +# Get ids of all faces with area > 40 +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Area, smesh.FT_MoreThan, 40.) + +anIds = mesh.GetIdsFromFilter(aFilter) + +print "Criterion: Area > 40, Nb = ", len(anIds) + +# create a group of elements with area [35; 40] by removing elements with area > 40 from group aGroup +aGroup.Remove(anIds) + +# print the result +aGroupElemIDs = aGroup.GetListOfID() + +print "Criterion: 35 < Area < 40, Nb = ", len(aGroupElemIDs) + +j = 1 +for i in range(len(aGroupElemIDs)): + if j > 20: j = 1; print "" + print aGroupElemIDs[i], + j = j + 1 + pass +print "" + +salome.sg.updateObjBrowser(1) +\endcode + +\image html editing_groups1.png + +\image html editing_groups2.png + +
    +\anchor tui_union_of_two_groups +

    Union of two groups

    + +\code +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh +salome = SMESH_mechanic.salome + +# Criterion : AREA > 20 +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Area, smesh.FT_MoreThan, 20.) + +anIds = mesh.GetIdsFromFilter(aFilter) + +print "Criterion: Area > 20, Nb = ", len( anIds ) + +# create a group by adding elements with area > 20 +aGroup1 = mesh.CreateEmptyGroup(SMESH.FACE, "Area > 20") +aGroup1.Add(anIds) + +# Criterion : AREA = 20 +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Area, smesh.FT_EqualTo, 20.) + +anIds = mesh.GetIdsFromFilter(aFilter) + +print "Criterion: Area = 20, Nb = ", len( anIds ) + +# create a group by adding elements with area = 20 +aGroup2 = mesh.CreateEmptyGroup( smesh.FACE, "Area = 20" ) + +aGroup2.Add(anIds) + +# create union group : area >= 20 +aGroup3 = mesh.UnionGroups(aGroup1, aGroup2, "Area >= 20") +print "Criterion: Area >= 20, Nb = ", len(aGroup3.GetListOfID()) + +# Criterion : AREA < 20 +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Area, smesh.FT_LessThan, 20.) + +anIds = mesh.GetIdsFromFilter(aFilter) + +print "Criterion: Area < 20, Nb = ", len(anIds) + +# create a group by adding elements with area < 20 +aGroup4 = mesh.CreateEmptyGroup(smesh.FACE, "Area < 20") +aGroup4.Add(anIds) + +# create union group : area >= 20 and area < 20 +aGroup5 = mesh.UnionGroups(aGroup3, aGroup4, "Any Area") +print "Criterion: Any Area, Nb = ", len(aGroup5.GetListOfID()) + +salome.sg.updateObjBrowser(1) +\endcode + +\image html union_groups1.png + +\image html union_groups2.png + +\image html union_groups3.png + +
    +\anchor tui_intersection_of_two_groups +

    Intersection of two groups

    + +\code +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh +salome = SMESH_mechanic.salome + +# Criterion : AREA > 20 +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Area, smesh.FT_MoreThan, 20.) + +anIds = mesh.GetIdsFromFilter(aFilter) + +print "Criterion: Area > 20, Nb = ", len(anIds) + +# create a group by adding elements with area > 20 +aGroup1 = mesh.CreateEmptyGroup(SMESH.FACE, "Area > 20") +aGroup1.Add(anIds) + +# Criterion : AREA < 60 +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Area, smesh.FT_LessThan, 60.) + +anIds = mesh.GetIdsFromFilter(aFilter) + +print "Criterion: Area < 60, Nb = ", len(anIds) + +# create a group by adding elements with area < 60 +aGroup2 = mesh.CreateEmptyGroup(SMESH.FACE, "Area < 60") +aGroup2.Add(anIds) + +# create an intersection of groups : 20 < area < 60 +aGroup3 = mesh.IntersectGroups(aGroup1, aGroup2, "20 < Area < 60") +print "Criterion: 20 < Area < 60, Nb = ", len(aGroup3.GetListOfID()) + +salome.sg.updateObjBrowser(1) +\endcode + +\image html intersect_groups1.png + +\image html intersect_groups2.png + +\image html intersect_groups3.png + +
    +\anchor tui_cut_of_two_groups +

    Cut of two groups

    + +\code +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh +salome = SMESH_mechanic.salome + +# Criterion : AREA > 20 +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Area, smesh.FT_MoreThan, 20.) + +anIds = mesh.GetIdsFromFilter(aFilter) + +print "Criterion: Area > 20, Nb = ", len(anIds) + +# create a group by adding elements with area > 20 +aGroupMain = mesh.MakeGroupByIds("Area > 20", smesh.FACE, anIds) + +# Criterion : AREA < 60 +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Area, smesh.FT_LessThan, 60.) + +anIds = mesh.GetIdsFromFilter(aFilter) + +print "Criterion: Area < 60, Nb = ", len(anIds) + +# create a group by adding elements with area < 60 +aGroupTool = mesh.MakeGroupByIds("Area < 60", smesh.FACE, anIds) + +# create a cut of groups : area >= 60 +aGroupRes = mesh.CutGroups(aGroupMain, aGroupTool, "Area >= 60") +print "Criterion: Area >= 60, Nb = ", len(aGroupRes.GetListOfID()) + +salome.sg.updateObjBrowser(1) +\endcode + +\image html cut_groups1.png + +\image html cut_groups2.png + +\image html cut_groups3.png + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/tui_modifying_meshes.doc b/doc/salome/gui/SMESH/input/tui_modifying_meshes.doc new file mode 100644 index 000000000..342968ff7 --- /dev/null +++ b/doc/salome/gui/SMESH/input/tui_modifying_meshes.doc @@ -0,0 +1,817 @@ +/*! + +\page tui_modifying_meshes_page Modifying Meshes + +
    +\anchor tui_adding_nodes_and_elements +

    Adding Nodes and Elements

    + +
    +\anchor tui_add_node +

    Add Node

    + +\code +import SMESH_mechanic + +mesh = SMESH_mechanic.mesh + +# add node +new_id = mesh.AddNode(50, 10, 0) +print "" +if new_id == 0: print "KO node addition." +else: print "New Node has been added with ID ", new_id +\endcode + +
    +\anchor tui_add_edge +

    Add Edge

    + +\code +import SMESH_mechanic + +mesh = SMESH_mechanic.mesh +print "" + +# add node +n1 = mesh.AddNode(50, 10, 0) +if n1 == 0: print "KO node addition." + +# add edge +e1 = mesh.AddEdge([n1, 38]) +if e1 == 0: print "KO edge addition." +else: print "New Edge has been added with ID ", e1 +\endcode + +
    +\anchor tui_add_triangle +

    Add Triangle

    + +\code +import SMESH_mechanic + +mesh = SMESH_mechanic.mesh +print "" + +# add node +n1 = mesh.AddNode(50, 10, 0) +if n1 == 0: print "KO node addition." + +# add triangle +t1 = mesh.AddFace([n1, 38, 39]) +if t1 == 0: print "KO triangle addition." +else: print "New Triangle has been added with ID ", t1 +\endcode + +
    +\anchor tui_add_quadrangle +

    Add Quadrangle

    + +\code +import SMESH_mechanic + +mesh = SMESH_mechanic.mesh +print "" + +# add node +n1 = mesh.AddNode(50, 10, 0) +if n1 == 0: print "KO node addition." + +n2 = mesh.AddNode(40, 20, 0) +if n2 == 0: print "KO node addition." + +# add quadrangle +q1 = mesh.AddFace([n2, n1, 38, 39]) +if q1 == 0: print "KO quadrangle addition." +else: print "New Quadrangle has been added with ID ", q1 +\endcode + +
    +\anchor tui_add_tetrahedron +

    Add Tetrahedron

    + +\code +import SMESH_mechanic + +mesh = SMESH_mechanic.mesh +print "" + +# add node +n1 = mesh.AddNode(50, 10, 0) +if n1 == 0: print "KO node addition." + +# add tetrahedron +t1 = mesh.AddVolume([n1, 38, 39, 246]) +if t1 == 0: print "KO tetrahedron addition." +else: print "New Tetrahedron has been added with ID ", t1 +\endcode + +
    +\anchor tui_add_hexahedron +

    Add Hexahedron

    + +\code +import SMESH_mechanic + +mesh = SMESH_mechanic.mesh +print "" + +# add nodes +nId1 = mesh.AddNode(50, 10, 0) +nId2 = mesh.AddNode(47, 12, 0) +nId3 = mesh.AddNode(50, 10, 10) +nId4 = mesh.AddNode(47, 12, 10) + +if nId1 == 0 or nId2 == 0 or nId3 == 0 or nId4 == 0: print "KO node addition." + +# add hexahedron +vId = mesh.AddVolume([nId2, nId1, 38, 39, nId4, nId3, 245, 246]) +if vId == 0: print "KO Hexahedron addition." +else: print "New Hexahedron has been added with ID ", vId +\endcode + +
    +\anchor tui_add_polygon +

    Add Polygon

    + +\code +import math +import salome + +import smesh + +# create an empty mesh structure +mesh = smesh.Mesh() + +# a method to build a polygonal mesh element with angles: +def MakePolygon (a_mesh, x0, y0, z0, radius, nb_vert): + al = 2.0 * math.pi / nb_vert + node_ids = [] + + # Create nodes for a polygon + for ii in range(nb_vert): + nid = mesh.AddNode(x0 + radius * math.cos(ii*al), + y0 + radius * math.sin(ii*al), + z0) + node_ids.append(nid) + pass + + # Create a polygon + return mesh.AddPolygonalFace(node_ids) + +# Create three polygons +f1 = MakePolygon(mesh, 0, 0, 0, 30, 13) +f2 = MakePolygon(mesh, 0, 0, 10, 21, 9) +f3 = MakePolygon(mesh, 0, 0, 20, 13, 6) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_add_polyhedron +

    Add Polyhedron

    + +\code +import salome +import math + +# create an empty mesh structure +mesh = smesh.Mesh() + +# Create nodes for 12-hedron with pentagonal faces +al = 2 * math.pi / 5.0 +cosal = math.cos(al) +aa = 13 +rr = aa / (2.0 * math.sin(al/2.0)) +dr = 2.0 * rr * cosal +r1 = rr + dr +dh = rr * math.sqrt(2.0 * (1.0 - cosal * (1.0 + 2.0 * cosal))) +hh = 2.0 * dh - dr * (rr*(cosal - 1) + (rr + dr)*(math.cos(al/2) - 1)) / dh + +dd = [] # top +cc = [] # below top +bb = [] # above bottom +aa = [] # bottom + +for i in range(5): + cos_bot = math.cos(i*al) + sin_bot = math.sin(i*al) + + cos_top = math.cos(i*al + al/2.0) + sin_top = math.sin(i*al + al/2.0) + + nd = mesh.AddNode(rr * cos_top, rr * sin_top, hh ) # top + nc = mesh.AddNode(r1 * cos_top, r1 * sin_top, hh - dh) # below top + nb = mesh.AddNode(r1 * cos_bot, r1 * sin_bot, dh) # above bottom + na = mesh.AddNode(rr * cos_bot, rr * sin_bot, 0) # bottom + dd.append(nd) # top + cc.append(nc) # below top + bb.append(nb) # above bottom + aa.append(na) # bottom + pass + +# Create a polyhedral volume (12-hedron with pentagonal faces) +MeshEditor.AddPolyhedralVolume([dd[0], dd[1], dd[2], dd[3], dd[4], # top + dd[0], cc[0], bb[1], cc[1], dd[1], # - + dd[1], cc[1], bb[2], cc[2], dd[2], # - + dd[2], cc[2], bb[3], cc[3], dd[3], # - below top + dd[3], cc[3], bb[4], cc[4], dd[4], # - + dd[4], cc[4], bb[0], cc[0], dd[0], # - + aa[4], bb[4], cc[4], bb[0], aa[0], # . + aa[3], bb[3], cc[3], bb[4], aa[4], # . + aa[2], bb[2], cc[2], bb[3], aa[3], # . above bottom + aa[1], bb[1], cc[1], bb[2], aa[2], # . + aa[0], bb[0], cc[0], bb[1], aa[1], # . + aa[0], aa[1], aa[2], aa[3], aa[4]], # bottom + [5,5,5,5,5,5,5,5,5,5,5,5]) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_removing_nodes_and_elements +

    Removing Nodes and Elements

    + +
    +\anchor tui_removing_nodes +

    Removing Nodes

    + +\code +import SMESH_mechanic + +mesh = SMESH_mechanic.mesh + +# remove nodes #246 and #255 +res = mesh.RemoveNodes([246, 255]) +if res == 1: print "Nodes removing is OK!" +else: print "KO nodes removing." +\endcode + +
    +\anchor tui_removing_elements +

    Removing Elements

    + +\code +import SMESH_mechanic + +mesh = SMESH_mechanic.mesh + +# remove three elements: #850, #859 and #814 +res = mesh.RemoveElements([850, 859, 814]) +if res == 1: print "Elements removing is OK!" +else: print "KO Elements removing." +\endcode + +
    +\anchor tui_renumbering_nodes_and_elements +

    Renumbering Nodes and Elements

    + +\code +import SMESH_mechanic + +mesh = SMESH_mechanic.mesh + +mesh.RenumberNodes() + +mesh.RenumberElements() +\endcode + +
    +\anchor tui_moving_nodes +

    Moving Nodes

    + +\code +import SMESH_mechanic + +mesh = SMESH_mechanic.mesh + +# move node #38 +mesh.MoveNode(38, 20., 10., 0.) +\endcode + +
    +\anchor tui_mesh_through_point +

    Mesh through point

    + +\code +from geompy import * +from smesh import * + +box = MakeBoxDXDYDZ(200, 200, 200) + +mesh = Mesh( box ) +mesh.Segment().AutomaticLength(0.1) +mesh.Quadrangle() +mesh.Compute() + +# find node at (0,0,0) +node000 = None +for vId in SubShapeAllIDs( box, ShapeType["VERTEX"]): + if node000: break + nodeIds = mesh.GetSubMeshNodesId( vId, True ) + for node in nodeIds: + xyz = mesh.GetNodeXYZ( node ) + if xyz[0] == 0 and xyz[1] == 0 and xyz[2] == 0 : + node000 = node + pass + pass + pass + +if not node000: + raise "node000 not found" + +# find node000 using the tested function +n = mesh.FindNodeClosestTo( -1,-1,-1 ) +if not n == node000: + raise "FindNodeClosestTo() returns " + str( n ) + " != " + str( node000 ) + +# check if any node will be found for a point inside a box +n = mesh.FindNodeClosestTo( 100, 100, 100 ) +if not n > 0: + raise "FindNodeClosestTo( 100, 100, 100 ) fails" + +# move node000 to a new location +x,y,z = -10, -10, -10 +n = mesh.MeshToPassThroughAPoint( x,y,z ) +if not n == node000: + raise "FindNodeClosestTo() returns " + str( n ) + " != " + str( node000 ) + +# check the coordinates of the node000 +xyz = mesh.GetNodeXYZ( node000 ) +if not ( xyz[0] == x and xyz[1] == y and xyz[2] == z) : + raise "Wrong coordinates: " + str( xyz ) + " != " + str( [x,y,z] ) +\endcode + +
    +\anchor tui_diagonal_inversion +

    Diagonal Inversion

    + +\code +import salome +import smesh + +# create an empty mesh structure +mesh = smesh.Mesh() + +# create the following mesh: +# .----.----.----. +# | /| /| /| +# | / | / | / | +# | / | / | / | +# |/ |/ |/ | +# .----.----.----. + +bb = [0, 0, 0, 0] +tt = [0, 0, 0, 0] +ff = [0, 0, 0, 0, 0, 0] + +bb[0] = mesh.AddNode( 0., 0., 0.) +bb[1] = mesh.AddNode(10., 0., 0.) +bb[2] = mesh.AddNode(20., 0., 0.) +bb[3] = mesh.AddNode(30., 0., 0.) + +tt[0] = mesh.AddNode( 0., 15., 0.) +tt[1] = mesh.AddNode(10., 15., 0.) +tt[2] = mesh.AddNode(20., 15., 0.) +tt[3] = mesh.AddNode(30., 15., 0.) + +ff[0] = mesh.AddFace([bb[0], bb[1], tt[1]]) +ff[1] = mesh.AddFace([bb[0], tt[1], tt[0]]) +ff[2] = mesh.AddFace([bb[1], bb[2], tt[2]]) +ff[3] = mesh.AddFace([bb[1], tt[2], tt[1]]) +ff[4] = mesh.AddFace([bb[2], bb[3], tt[3]]) +ff[5] = mesh.AddFace([bb[2], tt[3], tt[2]]) + +# inverse the diagonal bb[1] - tt[2] +print "\nDiagonal inversion ... ", +res = mesh.InverseDiag(bb[1], tt[2]) +if not res: print "failed!" +else: print "done." + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_uniting_two_triangles +

    Uniting two Triangles

    + +\code +import salome +import smesh + +# create an empty mesh structure +mesh = smesh.Mesh() + +# create the following mesh: +# .----.----.----. +# | /| /| /| +# | / | / | / | +# | / | / | / | +# |/ |/ |/ | +# .----.----.----. + +bb = [0, 0, 0, 0] +tt = [0, 0, 0, 0] +ff = [0, 0, 0, 0, 0, 0] + +bb[0] = mesh.AddNode( 0., 0., 0.) +bb[1] = mesh.AddNode(10., 0., 0.) +bb[2] = mesh.AddNode(20., 0., 0.) +bb[3] = mesh.AddNode(30., 0., 0.) + +tt[0] = mesh.AddNode( 0., 15., 0.) +tt[1] = mesh.AddNode(10., 15., 0.) +tt[2] = mesh.AddNode(20., 15., 0.) +tt[3] = mesh.AddNode(30., 15., 0.) + +ff[0] = mesh.AddFace([bb[0], bb[1], tt[1]]) +ff[1] = mesh.AddFace([bb[0], tt[1], tt[0]]) +ff[2] = mesh.AddFace([bb[1], bb[2], tt[2]]) +ff[3] = mesh.AddFace([bb[1], tt[2], tt[1]]) +ff[4] = mesh.AddFace([bb[2], bb[3], tt[3]]) +ff[5] = mesh.AddFace([bb[2], tt[3], tt[2]]) + +# delete the diagonal bb[1] - tt[2] +print "\nUnite two triangles ... ", +res = mesh.DeleteDiag(bb[1], tt[2]) +if not res: print "failed!" +else: print "done." + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_uniting_set_of_triangles +

    Uniting a Set of Triangles

    + +\code +import salome +import smesh + +# create an empty mesh structure +mesh = smesh.Mesh() + +# create the following mesh: +# .----.----.----. +# | /| /| /| +# | / | / | / | +# | / | / | / | +# |/ |/ |/ | +# .----.----.----. + +bb = [0, 0, 0, 0] +tt = [0, 0, 0, 0] +ff = [0, 0, 0, 0, 0, 0] + +bb[0] = mesh.AddNode( 0., 0., 0.) +bb[1] = mesh.AddNode(10., 0., 0.) +bb[2] = mesh.AddNode(20., 0., 0.) +bb[3] = mesh.AddNode(30., 0., 0.) + +tt[0] = mesh.AddNode( 0., 15., 0.) +tt[1] = mesh.AddNode(10., 15., 0.) +tt[2] = mesh.AddNode(20., 15., 0.) +tt[3] = mesh.AddNode(30., 15., 0.) + +ff[0] = mesh.AddFace([bb[0], bb[1], tt[1]]) +ff[1] = mesh.AddFace([bb[0], tt[1], tt[0]]) +ff[2] = mesh.AddFace([bb[1], bb[2], tt[2]]) +ff[3] = mesh.AddFace([bb[1], tt[2], tt[1]]) +ff[4] = mesh.AddFace([bb[2], bb[3], tt[3]]) +ff[5] = mesh.AddFace([bb[2], tt[3], tt[2]]) + +# unite a set of triangles +print "\nUnite a set of triangles ... ", +res = mesh.TriToQuad([ff[2], ff[3], ff[4], ff[5]], smesh.FT_MinimumAngle, 60.) +if not res: print "failed!" +else: print "done." + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_orientation +

    Orientation

    + +\code +import salome +import smesh + +# create an empty mesh structure +mesh = smesh.Mesh() + +# build five quadrangles: +dx = 10 +dy = 20 + +n1 = mesh.AddNode(0.0 * dx, 0, 0) +n2 = mesh.AddNode(1.0 * dx, 0, 0) +n3 = mesh.AddNode(2.0 * dx, 0, 0) +n4 = mesh.AddNode(3.0 * dx, 0, 0) +n5 = mesh.AddNode(4.0 * dx, 0, 0) +n6 = mesh.AddNode(5.0 * dx, 0, 0) +n7 = mesh.AddNode(0.0 * dx, dy, 0) +n8 = mesh.AddNode(1.0 * dx, dy, 0) +n9 = mesh.AddNode(2.0 * dx, dy, 0) +n10 = mesh.AddNode(3.0 * dx, dy, 0) +n11 = mesh.AddNode(4.0 * dx, dy, 0) +n12 = mesh.AddNode(5.0 * dx, dy, 0) + +f1 = mesh.AddFace([n1, n2, n8 , n7 ]) +f2 = mesh.AddFace([n2, n3, n9 , n8 ]) +f3 = mesh.AddFace([n3, n4, n10, n9 ]) +f4 = mesh.AddFace([n4, n5, n11, n10]) +f5 = mesh.AddFace([n5, n6, n12, n11]) + +# Change the orientation of the second and the fourth faces. +mesh.Reorient([2, 4]) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_cutting_quadrangles +

    Cutting Quadrangles

    + +\code +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh + +# cut two quadrangles: 405 and 406 +mesh.QuadToTri([405, 406], smesh.FT_MinimumAngle) +\endcode + +
    +\anchor tui_smoothing +

    Smoothing

    + +\code +import salome +import geompy + +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh + +# select the top face +faces = geompy.SubShapeAllSorted(SMESH_mechanic.shape_mesh, geompy.ShapeType["FACE"]) +face = faces[3] +geompy.addToStudyInFather(SMESH_mechanic.shape_mesh, face, "face planar with hole") + +# create a group of faces to be smoothed +GroupSmooth = mesh.GroupOnGeom(face, "Group of faces (smooth)", smesh.FACE) + +# perform smoothing + +# boolean SmoothObject(Object, IDsOfFixedNodes, MaxNbOfIterations, MaxAspectRatio, Method) +res = mesh.SmoothObject(GroupSmooth, [], 20, 2., smesh.CENTROIDAL_SMOOTH) +print "\nSmoothing ... ", +if not res: print "failed!" +else: print "done." + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_extrusion +

    Extrusion

    + +\code +import salome +import geompy + +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh + +# select the top face +faces = geompy.SubShapeAllSorted(SMESH_mechanic.shape_mesh, geompy.ShapeType["FACE"]) +face = faces[7] +geompy.addToStudyInFather(SMESH_mechanic.shape_mesh, face, "face circular top") + +# create a vector for extrusion +point = smesh.PointStruct(0., 0., 5.) +vector = smesh.DirStruct(point) + +# create a group to be extruded +GroupTri = mesh.GroupOnGeom(face, "Group of faces (extrusion)", smesh.FACE) + +# perform extrusion of the group +mesh.ExtrusionSweepObject(GroupTri, vector, 5) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_extrusion_along_path +

    Extrusion along a Path

    + +\code +import math +import salome + +# Geometry +import geompy + +# 1. Create points +points = [[0, 0], [50, 30], [50, 110], [0, 150], [-80, 150], [-130, 70], [-130, -20]] + +iv = 1 +vertices = [] +for point in points: + vert = geompy.MakeVertex(point[0], point[1], 0) + geompy.addToStudy(vert, "Vertex_" + `iv`) + vertices.append(vert) + iv += 1 + pass + +# 2. Create edges and wires +Edge_straight = geompy.MakeEdge(vertices[0], vertices[4]) +Edge_bezierrr = geompy.MakeBezier(vertices) +Wire_polyline = geompy.MakePolyline(vertices) +Edge_Circle = geompy.MakeCircleThreePnt(vertices[0], vertices[1], vertices[2]) + +geompy.addToStudy(Edge_straight, "Edge_straight") +geompy.addToStudy(Edge_bezierrr, "Edge_bezierrr") +geompy.addToStudy(Wire_polyline, "Wire_polyline") +geompy.addToStudy(Edge_Circle , "Edge_Circle") + +# 3. Explode wire on edges, as they will be used for mesh extrusion +Wire_polyline_edges = geompy.SubShapeAll(Wire_polyline, geompy.ShapeType["EDGE"]) +for ii in range(len(Wire_polyline_edges)): + geompy.addToStudyInFather(Wire_polyline, Wire_polyline_edges[ii], "Edge_" + `ii + 1`) + pass + +# Mesh +import smesh + +# Mesh the given shape with the given 1d hypothesis +def Mesh1D(shape1d, nbSeg, name): + mesh1d_tool = smesh.Mesh(shape1d, name) + algo = mesh1d_tool.Segment() + hyp = algo.NumberOfSegments(nbSeg) + isDone = mesh1d_tool.Compute() + if not isDone: print 'Mesh ', name, ': computation failed' + return mesh1d_tool + +# Create a mesh with six nodes, seven edges and two quadrangle faces +def MakeQuadMesh2(mesh_name): + quad_1 = smesh.Mesh(name = mesh_name) + + # six nodes + n1 = quad_1.AddNode(0, 20, 10) + n2 = quad_1.AddNode(0, 40, 10) + n3 = quad_1.AddNode(0, 40, 30) + n4 = quad_1.AddNode(0, 20, 30) + n5 = quad_1.AddNode(0, 0, 30) + n6 = quad_1.AddNode(0, 0, 10) + + # seven edges + quad_1.AddEdge([n1, n2]) # 1 + quad_1.AddEdge([n2, n3]) # 2 + quad_1.AddEdge([n3, n4]) # 3 + quad_1.AddEdge([n4, n1]) # 4 + quad_1.AddEdge([n4, n5]) # 5 + quad_1.AddEdge([n5, n6]) # 6 + quad_1.AddEdge([n6, n1]) # 7 + + # two quadrangle faces + quad_1.AddFace([n1, n2, n3, n4]) # 8 + quad_1.AddFace([n1, n4, n5, n6]) # 9 + return [quad_1, [1,2,3,4,5,6,7], [8,9]] + +# Path meshes +Edge_straight_mesh = Mesh1D(Edge_straight, 7, "Edge_straight") +Edge_bezierrr_mesh = Mesh1D(Edge_bezierrr, 7, "Edge_bezierrr") +Wire_polyline_mesh = Mesh1D(Wire_polyline, 3, "Wire_polyline") +Edge_Circle_mesh = Mesh1D(Edge_Circle , 8, "Edge_Circle") + +# Initial meshes (to be extruded) +[quad_1, ee_1, ff_1] = MakeQuadMesh2("quad_1") +[quad_2, ee_2, ff_2] = MakeQuadMesh2("quad_2") +[quad_3, ee_3, ff_3] = MakeQuadMesh2("quad_3") +[quad_4, ee_4, ff_4] = MakeQuadMesh2("quad_4") +[quad_5, ee_5, ff_5] = MakeQuadMesh2("quad_5") +[quad_6, ee_6, ff_6] = MakeQuadMesh2("quad_6") +[quad_7, ee_7, ff_7] = MakeQuadMesh2("quad_7") + +# ExtrusionAlongPath +# IDsOfElements, PathMesh, PathShape, NodeStart, +# HasAngles, Angles, HasRefPoint, RefPoint +refPoint = smesh.PointStruct(0, 0, 0) +a10 = 10.0*math.pi/180.0 +a45 = 45.0*math.pi/180.0 + +# 1. Extrusion of two mesh edges along a straight path +error = quad_1.ExtrusionAlongPath([1,2], Edge_straight_mesh, Edge_straight, 1, + 0, [], 0, refPoint) + +# 2. Extrusion of one mesh edge along a curved path +error = quad_2.ExtrusionAlongPath([2], Edge_bezierrr_mesh, Edge_bezierrr, 1, + 0, [], 0, refPoint) + +# 3. Extrusion of one mesh edge along a curved path with usage of angles +error = quad_3.ExtrusionAlongPath([2], Edge_bezierrr_mesh, Edge_bezierrr, 1, + 1, [a45, a45, a45, 0, -a45, -a45, -a45], 0, refPoint) + +# 4. Extrusion of one mesh edge along the path, which is a part of a meshed wire +error = quad_4.ExtrusionAlongPath([4], Wire_polyline_mesh, Wire_polyline_edges[0], 1, + 1, [a10, a10, a10], 0, refPoint) + +# 5. Extrusion of two mesh faces along the path, which is a part of a meshed wire +error = quad_5.ExtrusionAlongPath(ff_5 , Wire_polyline_mesh, Wire_polyline_edges[2], 4, + 0, [], 0, refPoint) + +# 6. Extrusion of two mesh faces along a closed path +error = quad_6.ExtrusionAlongPath(ff_6 , Edge_Circle_mesh, Edge_Circle, 1, + 0, [], 0, refPoint) + +# 7. Extrusion of two mesh faces along a closed path with usage of angles +error = quad_7.ExtrusionAlongPath(ff_7, Edge_Circle_mesh, Edge_Circle, 1, + 1, [a45, -a45, a45, -a45, a45, -a45, a45, -a45], 0, refPoint) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_revolution +

    Revolution

    + +\code +import math + +import SMESH_mechanic + +mesh = SMESH_mechanic.mesh +smesh = SMESH_mechanic.smesh + +# create a group of faces to be revolved +FacesRotate = [492, 493, 502, 503] +GroupRotate = mesh.CreateGroup(SMESH.FACE,"Group of faces (rotate)") +GroupRotate.Add(FacesRotate) + +# define revolution angle and axis +angle45 = 45 * math.pi / 180 +axisXYZ = SMESH.AxisStruct(-38.3128, -73.3658, -23.321, -13.3402, -13.3265, 6.66632) + +# perform revolution of an object +mesh.RotationSweepObject(GroupRotate, axisXYZ, angle45, 4, 1e-5) +\endcode + +
    +\anchor tui_pattern_mapping +

    Pattern Mapping

    + +\code +import geompy + +import smesh + +# define the geometry +Box_1 = geompy.MakeBoxDXDYDZ(200., 200., 200.) +geompy.addToStudy(Box_1, "Box_1") + +faces = geompy.SubShapeAll(Box_1, geompy.ShapeType["FACE"]) +Face_1 = faces[0] +Face_2 = faces[1] + +geompy.addToStudyInFather(Box_1, Face_1, "Face_1") +geompy.addToStudyInFather(Box_1, Face_2, "Face_2") + +# build a quadrangle mesh 3x3 on Face_1 +Mesh_1 = smesh.Mesh(Face_1) +algo1D = Mesh_1.Segment() +algo1D.NumberOfSegments(3) +Mesh_1.Quadrangle() + +isDone = Mesh_1.Compute() +if not isDone: print 'Mesh Mesh_1 : computation failed' + +# build a triangle mesh on Face_2 +Mesh_2 = smesh.Mesh(Face_2) + +algo1D = Mesh_2.Segment() +algo1D.NumberOfSegments(1) +algo2D = Mesh_2.Triangle() +algo2D.MaxElementArea(240) + +isDone = Mesh_2.Compute() +if not isDone: print 'Mesh Mesh_2 : computation failed' + +# create a pattern +pattern = smesh.GetPattern() + +isDone = pattern.LoadFromFace(Mesh_2.GetMesh(), Face_2, 0) +if (isDone != 1): print 'LoadFromFace :', pattern.GetErrorCode() + +# apply the pattern to a face of the first mesh +pattern.ApplyToMeshFaces(Mesh_1.GetMesh(), [17], 0, 0) + +isDone = pattern.MakeMesh(Mesh_1.GetMesh(), 0, 0) +if (isDone != 1): print 'MakeMesh :', pattern.GetErrorCode() +\endcode + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/tui_quality_controls.doc b/doc/salome/gui/SMESH/input/tui_quality_controls.doc new file mode 100644 index 000000000..e1b8b700e --- /dev/null +++ b/doc/salome/gui/SMESH/input/tui_quality_controls.doc @@ -0,0 +1,575 @@ +/*! + +\page tui_quality_controls_page Quality Controls + +
    +\anchor tui_free_borders +

    Free Borders

    + +\code +import salome +import geompy + +import smesh + +# create open shell: a box without one plane +box = geompy.MakeBox(0., 0., 0., 20., 20., 15.) +FaceList = geompy.SubShapeAll(box, geompy.ShapeType["FACE"]) +FaceList.remove(FaceList[5]) +box = geompy.MakeShell(FaceList) +idbox = geompy.addToStudy(box, "box") + +# create a mesh +mesh = smesh.Mesh(box, "Mesh_free_borders") +algo = mesh.Segment() +algo.NumberOfSegments(5) +algo = mesh.Triangle() +algo.MaxElementArea(20.) +mesh.Compute() + +# criterion : free borders +aFilter = smesh.GetFilter(smesh.EDGE, smesh.FT_FreeBorders) +anIds = mesh.GetIdsFromFilter(aFilter) + +# print the result +print "Criterion: Free borders Nb = ", len(anIds) +j = 1 +for i in range(len(anIds)): + if j > 20: j = 1; print "" + print anIds[i], + j = j + 1 + pass +print "" + +# create a group +aGroup = mesh.CreateGroup(SMESH.EDGE, "Free borders") +aGroup.Add(anIds) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_borders_at_multiconnection +

    Borders at Multiconnection

    + +\code +import salome +import geompy + +import smesh +import SMESH + +# create open shell: a box without one plane +box = geompy.MakeBox(0., 0., 0., 20., 20., 15.) +FaceList = geompy.SubShapeAll(box, geompy.ShapeType["FACE"]) +FaceList.remove(FaceList[5]) +box = geompy.MakeShell(FaceList) +idbox = geompy.addToStudy(box, "box") + +# create a mesh +mesh = smesh.Mesh(box, "Mesh_borders_at_multi-connections") +algo = mesh.Segment() +algo.NumberOfSegments(5) +algo = mesh.Triangle() +algo.MaxElementArea(20.) +mesh.Compute() + +# Criterion : Borders at multi-connection +nb_conn = 2 + +aFilter = smesh.GetFilter(smesh.EDGE, smesh.FT_MultiConnection, smesh.FT_EqualTo, nb_conn) +anIds = mesh.GetIdsFromFilter(aFilter) + +# print the result +print "Criterion: Borders at multi-connections Nb = ", len(anIds) +j = 1 +for i in range(len(anIds)): + if j > 20: j = 1; print "" + print anIds[i], + j = j + 1 + pass +print "" + +# create a group +aGroup = mesh.CreateGroup(SMESH.EDGE, "Borders at multi-connections") +aGroup.Add(anIds) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_length_1d +

    Length 1D

    + +\code +import salome +import geompy + +import smesh + +# create open shell: a box without one plane +box = geompy.MakeBox(0., 0., 0., 20., 20., 15.) +FaceList = geompy.SubShapeAll(box, geompy.ShapeType["FACE"]) +FaceList.remove(FaceList[5]) +box = geompy.MakeShell(FaceList) +idbox = geompy.addToStudy(box, "box") + +# create a mesh +mesh = smesh.Mesh(box, "Mesh_Length_1D") +algo = mesh.Segment() +algo.NumberOfSegments(5) +algo = mesh.Triangle() +algo.MaxElementArea(20.) +mesh.Compute() + +# Criterion : Length > 3. +length_margin = 3. + +aFilter = smesh.GetFilter(smesh.EDGE, smesh.FT_Length, smesh.FT_MoreThan, length_margin) +anIds = mesh.GetIdsFromFilter(aFilter) + +# print the result +print "Criterion: Edges length > ", length_margin, " Nb = ", len(anIds) +j = 1 +for i in range(len(anIds)): + if j > 20: j = 1; print "" + print anIds[i], + j = j + 1 + pass +print "" + +# create a group +aGroup = mesh.CreateGroup(SMESH.EDGE, "Edges with length > " + `length_margin`) +aGroup.Add(anIds) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_free_edges +

    Free Edges

    + +\code +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh +salome = SMESH_mechanic.salome + +aFilterMgr = smesh.CreateFilterManager() + +# Remove some elements to obtain free edges +# Criterion : AREA > 95. +area_margin = 95. + +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Area, smesh.FT_MoreThan, area_margin) + +anIds = mesh.GetIdsFromFilter(aFilter) + +mesh.RemoveElements(anIds) + +# Criterion : Free Edges +aBorders = mesh.GetFreeBorders() + +# create groups +aGroupF = mesh.CreateGroup(SMESH.FACE, "Faces with free edges") +aGroupN = mesh.CreateGroup(SMESH.NODE, "Nodes on free edges") + +# fill groups with elements, corresponding to the criterion +print "" +print "Criterion: Free edges Nb = ", len(aBorders) +for i in range(len(aBorders)): + aBorder = aBorders[i] + print "Face # ", aBorder.myElemId, " : Edge between nodes (", + print aBorder.myPnt1, ", ", aBorder.myPnt2, ")" + + aGroupF.Add([aBorder.myElemId]) + aGroupN.Add([aBorder.myPnt1, aBorder.myPnt2]) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_length_2d +

    Length 2D

    + +\code +import salome +import geompy + +import smesh + +# create open shell: a box without one plane +box = geompy.MakeBox(0., 0., 0., 20., 20., 15.) +FaceList = geompy.SubShapeAll(box, geompy.ShapeType["FACE"]) +FaceList.remove(FaceList[5]) +box = geompy.MakeShell(FaceList) +idbox = geompy.addToStudy(box, "box") + +# create a mesh +mesh = smesh.Mesh(box, "Mesh_Length_2D") +algo = mesh.Segment() +algo.NumberOfSegments(5) +algo = mesh.Triangle() +algo.MaxElementArea(20.) +mesh.Compute() + +# Criterion : Length 2D > 5.7 +length_margin = 5.7 + +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Length2D, smesh.FT_MoreThan, length_margin) + +anIds = mesh.GetIdsFromFilter(aFilter) + +# print the result +print "Criterion: Edges length 2D > ", length_margin, " Nb = ", len(anIds) +j = 1 +for i in range(len(anIds)): + if j > 20: j = 1; print "" + print anIds[i], + j = j + 1 + pass +print "" + +# create a group +aGroup = mesh.CreateEmptyGroup(smesh.FACE, "Faces with length 2D > " + `length_margin`) +aGroup.Add(anIds) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_borders_at_multiconnection_2d +

    Borders at Multiconnection 2D

    + +\code +import salome +import geompy + +import smesh + +# create a compound of two glued boxes +box1 = geompy.MakeBox(0., 0., 0., 20., 20., 15.) +box2 = geompy.MakeTranslation(box1, 0., 20., 0) +comp = geompy.MakeCompound([box1, box2]) +box = geompy.MakeGlueFaces(comp, 0.000001) +idbox = geompy.addToStudy(box, "box") + +# create a mesh +mesh = smesh.Mesh(box, "Box compound : 2D triangle mesh") +algo = mesh.Segment() +algo.NumberOfSegments(5) +algo = mesh.Triangle() +algo.MaxElementArea(20.) +mesh.Compute() + +# Criterion : MULTI-CONNECTION 2D = 3 +nb_conn = 3 + +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_MultiConnection2D, smesh.FT_EqualTo, nb_conn) + +anIds = mesh.GetIdsFromFilter(aFilter) + +# print the result +print "Criterion: Borders at multi-connection 2D = ", nb_conn, " Nb = ", len(anIds) +j = 1 +for i in range(len(anIds)): + if j > 20: j = 1; print "" + print anIds[i], + j = j + 1 + pass +print "" + +# create a group +aGroup = mesh.CreateEmptyGroup(smesh.FACE, "Borders at multi-connection 2D = " + `nb_conn`) +aGroup.Add(anIds) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_area +

    Area

    + +\code +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh +salome = SMESH_mechanic.salome + +# Criterion : AREA > 100. +area_margin = 100. + +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Area, smesh.FT_MoreThan, area_margin) + +anIds = mesh.GetIdsFromFilter(aFilter) + +# print the result +print "Criterion: Area > ", area_margin, " Nb = ", len(anIds) +j = 1 +for i in range(len(anIds)): + if j > 20: j = 1; print "" + print anIds[i], + j = j + 1 + pass +print "" + +# create a group +aGroup = mesh.CreateEmptyGroup(smesh.FACE, "Area > " + `area_margin`) +aGroup.Add(anIds) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_taper +

    Taper

    + +\code +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh +salome = SMESH_mechanic.salome + +# Criterion : Taper > 3e-20 +taper_margin = 3e-20 + +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Taper, smesh.FT_MoreThan, taper_margin) + +anIds = mesh.GetIdsFromFilter(aFilter) + +# print the result +print "Criterion: Taper > ", taper_margin, " Nb = ", len(anIds) +j = 1 +for i in range(len(anIds)): + if j > 20: j = 1; print "" + print anIds[i], + j = j + 1 + pass +print "" + +# create a group +aGroup = mesh.CreateEmptyGroup(smesh.FACE, "Taper > " + `taper_margin`) +aGroup.Add(anIds) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_aspect_ratio +

    Aspect Ratio

    + +\code +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh +salome = SMESH_mechanic.salome + +# Criterion : ASPECT RATIO > 1.8 +ar_margin = 1.8 + +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_AspectRatio, smesh.FT_MoreThan, ar_margin) + +anIds = mesh.GetIdsFromFilter(aFilter) + +# print the result +print "Criterion: Aspect Ratio > ", ar_margin, " Nb = ", len(anIds) +j = 1 +for i in range(len(anIds)): + if j > 20: j = 1; print "" + print anIds[i], + j = j + 1 + pass +print "" + +# create a group +aGroup = mesh.CreateEmptyGroup(smesh.FACE, "Aspect Ratio > " + `ar_margin`) +aGroup.Add(anIds) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_minimum_angle +

    Minimum Angle

    + +\code +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh +salome = SMESH_mechanic.salome + +# Criterion : MINIMUM ANGLE < 35. +min_angle = 35. + +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_MinimumAngle, smesh.FT_LessThan, min_angle) + +anIds = mesh.GetIdsFromFilter(aFilter) + +# print the result +print "Criterion: Minimum Angle < ", min_angle, " Nb = ", len(anIds) +j = 1 +for i in range(len(anIds)): + if j > 20: j = 1; print "" + print anIds[i], + j = j + 1 + pass +print "" + +# create a group +aGroup = mesh.CreateEmptyGroup(smesh.FACE, "Minimum Angle < " + `min_angle`) + +aGroup.Add(anIds) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_warping +

    Warping

    + +\code +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh +salome = SMESH_mechanic.salome + +# Criterion : WARP ANGLE > 1e-15 +wa_margin = 1e-15 + +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Warping, smesh.FT_MoreThan, wa_margin) + +anIds = mesh.GetIdsFromFilter(aFilter) + +# print the result +print "Criterion: Warp > ", wa_margin, " Nb = ", len(anIds) +j = 1 +for i in range(len(anIds)): + if j > 20: j = 1; print "" + print anIds[i], + j = j + 1 + pass +print "" + +# create a group +aGroup = mesh.CreateEmptyGroup(smesh.FACE, "Warp > " + `wa_margin`) + +aGroup.Add(anIds) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_skew +

    Skew

    + +\code +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh +salome = SMESH_mechanic.salome + +# Criterion : Skew > 38. +skew_margin = 38. + +aFilter = smesh.GetFilter(smesh.FACE, smesh.FT_Skew, smesh.FT_MoreThan, skew_margin) + +anIds = mesh.GetIdsFromFilter(aFilter) + +# print the result +print "Criterion: Skew > ", skew_margin, " Nb = ", len(anIds) +j = 1 +for i in range(len(anIds)): + if j > 20: j = 1; print "" + print anIds[i], + j = j + 1 + pass +print "" + +# create a group +aGroup = mesh.CreateEmptyGroup(smesh.FACE, "Skew > " + `skew_margin`) +aGroup.Add(anIds) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_aspect_ratio_3d +

    Aspect Ratio 3D

    + +\code +import SMESH_mechanic_tetra + +smesh = SMESH_mechanic_tetra.smesh +mesh = SMESH_mechanic_tetra.mesh +salome = SMESH_mechanic_tetra.salome + +# Criterion : ASPECT RATIO 3D > 4.5 +ar_margin = 4.5 + +aFilter = smesh.GetFilter(smesh.VOLUME, smesh.FT_AspectRatio3D, smesh.FT_MoreThan, ar_margin) + +anIds = mesh.GetIdsFromFilter(aFilter) + +# print the result +print "Criterion: Aspect Ratio 3D > ", ar_margin, " Nb = ", len(anIds) +j = 1 +for i in range(len(anIds)): + if j > 20: j = 1; print "" + print anIds[i], + j = j + 1 + pass +print "" + +# create a group +aGroup = mesh.CreateEmptyGroup(smesh.VOLUME, "Aspect Ratio 3D > " + `ar_margin`) + +aGroup.Add(anIds) + +salome.sg.updateObjBrowser(1) +\endcode + +
    +\anchor tui_volume +

    Volume

    + +\code +import SMESH_mechanic_tetra + +smesh = SMESH_mechanic_tetra.smesh +mesh = SMESH_mechanic_tetra.mesh +salome = SMESH_mechanic_tetra.salome + +# Criterion : VOLUME < 7. +volume_margin = 7. + +aFilter = smesh.GetFilter(smesh.VOLUME, smesh.FT_Volume3D, smesh.FT_LessThan, volume_margin) + +anIds = mesh.GetIdsFromFilter(aFilter) + +# print the result +print "" +print "Criterion: Volume < ", volume_margin, " Nb = ", len(anIds) +j = 1 +for i in range(len(anIds)): + if j > 20: j = 1; print "" + print anIds[i], + j = j + 1 + pass +print "" + +# create a group +aGroup = mesh.CreateEmptyGroup(smesh.VOLUME, "Volume < " + `volume_margin`) + +aGroup.Add(anIds) + +salome.sg.updateObjBrowser(1) +\endcode + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/tui_scripts.doc b/doc/salome/gui/SMESH/input/tui_scripts.doc new file mode 100644 index 000000000..4c19b9d7b --- /dev/null +++ b/doc/salome/gui/SMESH/input/tui_scripts.doc @@ -0,0 +1,15 @@ +/*! + +\page tui_scripts_page TUI Scripts + +
      +
    • \subpage tui_creating_meshes_page
    • +
    • \subpage tui_viewing_meshes_page
    • +
    • \subpage tui_defining_hypotheses_page
    • +
    • \subpage tui_quality_controls_page
    • +
    • \subpage tui_grouping_elements_page
    • +
    • \subpage tui_modifying_meshes_page
    • +
    • \subpage tui_transforming_meshes_page
    • +
    + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/tui_transforming_meshes.doc b/doc/salome/gui/SMESH/input/tui_transforming_meshes.doc new file mode 100644 index 000000000..163afe0e4 --- /dev/null +++ b/doc/salome/gui/SMESH/input/tui_transforming_meshes.doc @@ -0,0 +1,322 @@ +/*! + +\page tui_transforming_meshes_page Transforming Meshes + +

    Transforming Meshes

    + +
    +\anchor tui_translation +

    Translation

    + +\code +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh + +# define translation vector +point = smesh.PointStruct(-150., -150., 0.) +vector =smesh.DirStruct(point) + +# translate a mesh +doCopy = 1 + +mesh.Translate([], vector, doCopy) +\endcode + +
    +\anchor tui_rotation +

    Rotation

    + +\code +import math + +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh + +# define rotation axis and angle +axisXYZ = smesh.AxisStruct(0., 0., 0., 5., 5., 20.) +angle270 = 1.5 * math.pi + +# rotate a mesh +mesh.Rotate([], axisXYZ, angle270, 1) +\endcode + +
    +\anchor tui_symmetry +

    Symmetry

    + +\code +import math + +import SMESH_mechanic + +smesh = SMESH_mechanic.smesh +mesh = SMESH_mechanic.mesh + +# create a symmetrical copy of the mesh mirrored through a point +axis = SMESH.AxisStruct(0, 0, 0, 0, 0, 0) + +mesh.Mirror([], axis, smesh.POINT, 1) +\endcode + +
    +\anchor tui_merging_nodes +

    Merging Nodes

    + +\code +import SMESH_mechanic +mesh = SMESH_mechanic.mesh + +# merge nodes +Tolerance = 25.0 + +GroupsOfNodes = mesh.FindCoincidentNodes(Tolerance) +mesh.MergeNodes(GroupsOfNodes) +\endcode + +
    +\anchor tui_merging_elements +

    Merging Elements

    + +\code +import salome +import geompy +import smesh + +# create a face to be meshed +px = geompy.MakeVertex(100., 0. , 0. ) +py = geompy.MakeVertex(0. , 100., 0. ) +pz = geompy.MakeVertex(0. , 0. , 100.) + +vxy = geompy.MakeVector(px, py) +arc = geompy.MakeArc(py, pz, px) + +wire = geompy.MakeWire([vxy, arc]) +isPlanarFace = 1 + +face1 = geompy.MakeFace(wire, isPlanarFace) +id_face1 = geompy.addToStudy(face1, "Face1") + +# create a circle to be an extrusion path +px1 = geompy.MakeVertex( 100., 100., 0.) +py1 = geompy.MakeVertex(-100., -100., 0.) +pz1 = geompy.MakeVertex( 0., 0., 50.) + +circle = geompy.MakeCircleThreePnt(py1, pz1, px1) +id_circle = geompy.addToStudy(circle, "Path") + +# create a 2D mesh on the face +trias = smesh.Mesh(face1, "Face : 2D mesh") + +algo1D = trias.Segment() +algo1D.NumberOfSegments(6) +algo2D = trias.Triangle() +algo2D.LengthFromEdges() + +trias.Compute() + +# create a path mesh +circlemesh = smesh.Mesh(circle, "Path mesh") +algo = circlemesh.Segment() +algo.NumberOfSegments(10) +circlemesh.Compute() + +# extrusion of the mesh +trias.ExtrusionAlongPath([], circlemesh, circle, + 1, 0, [], 0, smesh.PointStruct(0, 0, 0)) + +# merge nodes +print "Number of nodes before MergeNodes:", +trias.NbNodes() +tolerance = 0.001 +array_of_nodes_groups = trias.FindCoincidentNodes(tolerance) + +trias.MergeNodes(array_of_nodes_groups) + +print "Number of nodes after MergeNodes:", trias.NbNodes() +print "" +print "Number of elements before MergeEqualElements:" +print "Edges : ", trias.NbEdges() +print "Triangles : ", trias.NbTriangles() +print "Quadrangles: ", trias.NbQuadrangles() +print "Volumes : ", trias.NbVolumes() + +# merge elements +trias.MergeEqualElements() +print "Number of elements after MergeEqualElements:" +print "Edges : ", trias.NbEdges() +print "Triangles : ", trias.NbTriangles() +print "Quadrangles: ", trias.NbQuadrangles() +print "Volumes : ", trias.NbVolumes() + +salome.sg.updateObjBrowser(1) +\endcode + +

    Sewing Meshes

    + +
    +\anchor tui_sew_meshes_border_to_side +

    Sew Meshes Border to Side

    + +\code +import geompy +import smesh + +# create two faces of a box +box1 = geompy.MakeBox(0., 0., -10., 30., 20., 25.) +facesList1 = geompy.SubShapeAll(box1, geompy.ShapeType["FACE"]) +face1 = facesList1[2] + +box2 = geompy.MakeBox(0., 5., 0., 20., 20., 15.) +facesList2 = geompy.SubShapeAll(box2, geompy.ShapeType["FACE"]) +face2 = facesList2[1] + +edgesList = geompy.SubShapeAll(face2, geompy.ShapeType["EDGE"]) +edge1 = edgesList[2] + +aComp = geompy.MakeCompound([face1, face2]) +geompy.addToStudy(aComp, "Two faces") + +# create a mesh on two faces +mesh = smesh.Mesh(aComp, "Two faces : quadrangle mesh") + +algo1D = mesh.Segment() +algo1D.NumberOfSegments(9) +algo2D = mesh.Quadrangle() + +algo_local = mesh.Segment(edge1) +algo_local.Arithmetic1D(1, 4) +algo_local.Propagation() + +mesh.Compute() + +# sew border to side +# FirstNodeIDOnFreeBorder, SecondNodeIDOnFreeBorder, LastNodeIDOnFreeBorder, +# FirstNodeIDOnSide, LastNodeIDOnSide, +# CreatePolygons, CreatePolyedrs +mesh.SewBorderToSide(5, 45, 6, 113, 109, 0, 0) +\endcode + +
    +\anchor tui_sew_conform_free_borders +

    Sew Conform Free Borders

    + +\code +import geompy +import smesh + +# create two faces of the box +box1 = geompy.MakeBox(0., 0., -10., 20., 20., 15.) +facesList1 = geompy.SubShapeAll(box1, geompy.ShapeType["FACE"]) +face1 = facesList1[2] + +box2 = geompy.MakeBox(0., 5., 0., 20., 20., 15.) +facesList2 = geompy.SubShapeAll(box2, geompy.ShapeType["FACE"]) +face2 = facesList2[1] + +edgesList = geompy.SubShapeAll(face2, geompy.ShapeType["EDGE"]) +edge1 = edgesList[2] + +aComp = geompy.MakeCompound([face1, face2]) +geompy.addToStudy(aComp, "Two faces") + +# create a mesh on two faces +mesh = smesh.Mesh(aComp, "Two faces : quadrangle mesh") + +algo1D = mesh.Segment() +algo1D.NumberOfSegments(9) +algo2D = mesh.Quadrangle() + +algo_local = mesh.Segment(edge1) +algo_local.Arithmetic1D(1, 4) +algo_local.Propagation() + +mesh.Compute() + +# sew conform free borders +# FirstNodeID1, SecondNodeID1, LastNodeID1, FirstNodeID2, SecondNodeID2 +mesh.SewConformFreeBorders(5, 45, 6, 3, 24) +\endcode + +
    +\anchor tui_sew_free_borders +

    Sew Free Borders

    + +\code +import geompy +import smesh + +# create two faces of the box +box1 = geompy.MakeBox(0., 0., 0., 20., 20., 15.) +facesList1 = geompy.SubShapeAll(box1, geompy.ShapeType["FACE"]) +face1 = facesList1[2] + +box2 = geompy.MakeBox(0., 5., 0., 20., 20., 15.) +facesList2 = geompy.SubShapeAll(box2, geompy.ShapeType["FACE"]) +face2 = facesList2[1] + +edgesList = geompy.SubShapeAll(face2, geompy.ShapeType["EDGE"]) +edge1 = edgesList[2] + +aComp = geompy.MakeCompound([face1, face2]) +geompy.addToStudy(aComp, "Two faces") + +# create a mesh on two faces +mesh = smesh.Mesh(aComp, "Two faces : quadrangle mesh") + +algo1D = mesh.Segment() +algo1D.NumberOfSegments(4) +algo2D = mesh.Quadrangle() + +algo_local = mesh.Segment(edge1) +algo_local.Arithmetic1D(1, 4) +algo_local.Propagation() + +mesh.Compute() + +# sew free borders +# FirstNodeID1, SecondNodeID1, LastNodeID1, +# FirstNodeID2, SecondNodeID2, LastNodeID2, CreatePolygons, CreatePolyedrs +mesh.SewFreeBorders(6, 21, 5, 1, 12, 3, 0, 0) +\endcode + +
    +\anchor tui_sew_side_elements +

    Sew Side Elements

    + +\code +import geompy +import smesh + +# create two boxes +box1 = geompy.MakeBox(0., 0., 0., 10., 10., 10.) +box2 = geompy.MakeBox(0., 15., 0., 20., 25., 10.) + +EdgesList = geompy.SubShapeAll(box2, geompy.ShapeType["EDGE"]) + +aComp = geompy.MakeCompound([box1, box2]) +geompy.addToStudy(aComp, "Two boxes") + +# create a mesh on two boxes +mesh = smesh.Mesh(aComp, "Two faces : quadrangle mesh") + +algo1D = mesh.Segment() +algo1D.NumberOfSegments(2) +algo2D = mesh.Quadrangle() + +algo_local = mesh.Segment(EdgesList[8]) +algo_local.NumberOfSegments(4) +algo_local.Propagation() + +mesh.Compute() + +# sew side elements +# IDsOfSide1Elements, IDsOfSide2Elements, +# NodeID1OfSide1ToMerge, NodeID1OfSide2ToMerge, NodeID2OfSide1ToMerge, NodeID2OfSide2ToMerge +mesh.SewSideElements([69, 70, 71, 72], [91, 92, 89, 90], 8, 38, 23, 58) +\endcode + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/tui_viewing_meshes.doc b/doc/salome/gui/SMESH/input/tui_viewing_meshes.doc new file mode 100644 index 000000000..59681c16b --- /dev/null +++ b/doc/salome/gui/SMESH/input/tui_viewing_meshes.doc @@ -0,0 +1,47 @@ +/*! + +\page tui_viewing_meshes_page Viewing Meshes + +
    +\anchor tui_viewing_mesh_infos +

    Viewing Mesh Infos

    + +\code +import geompy +import smesh + +# create a box +box = geompy.MakeBox(0., 0., 0., 20., 20., 20.) +geompy.addToStudy(box, "box") + +# create a mesh +tetra = smesh.Mesh(box, "MeshBox") + +algo1D = tetra.Segment() +algo1D.NumberOfSegments(3) + +algo2D = tetra.Triangle() +algo2D.MaxElementArea(10.) + +algo3D = tetra.Tetrahedron(smesh.NETGEN) +algo3D.MaxElementVolume(900.) + +# compute the mesh +tetra.Compute() + +# print information about the mesh +print "Information about mesh:" +print "Number of nodes : ", tetra.NbNodes() +print "Number of edges : ", tetra.NbEdges() +print "Number of faces : ", tetra.NbFaces() +print " triangles : ", tetra.NbTriangles() +print " quadrangles : ", tetra.NbQuadrangles() +print " polygons : ", tetra.NbPolygons() +print "Number of volumes : ", tetra.NbVolumes() +print " tetrahedrons: ", tetra.NbTetras() +print " hexahedrons : ", tetra.NbHexas() +print " prisms : ", tetra.NbPrisms() +print " pyramids : ", tetra.NbPyramids() +print " polyhedrons : ", tetra.NbPolyhedrons() +\endcode +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/uniting_set_of_triangles.doc b/doc/salome/gui/SMESH/input/uniting_set_of_triangles.doc new file mode 100644 index 000000000..fc3a74aed --- /dev/null +++ b/doc/salome/gui/SMESH/input/uniting_set_of_triangles.doc @@ -0,0 +1,53 @@ +/*! + +\page uniting_set_of_triangles_page Uniting a set of triangles + +\n In contrast to the previous operation this one allows to unite at +once many triangles if they have adjacent edges. + +To union several triangles: +
      +
    1. Display a mesh or a submesh in the 3D viewer.
    2. +
    3. In the \b Modification menu select the Union of triangles +item or click "Union of triangles" button in the toolbar. + +\image html image80.gif +
      "Union of triangles" button
      + +The following dialog box will appear: + +\image html a-unionoftriangles.png + +
        +
      • The main list shall contain the triangles which will be +united. You can click on an triangle in the 3D viewer and it will be +highlighted. After that click the \b Add button and the ID of this +triangle will be added to the list. To remove a selected element or +elements from the list click the \b Remove button. The \b Sort button allows +to sort the list of IDs. The Set filter button allows to apply a +definite filter to selection of triangles.
      • +
      • Apply to all radio button allows to modify connectivity and +type of all triangles of the currently displayed mesh or submesh.
      • +
      • \b Criterion menu allows to apply the operation only to those +object which meet the chosen criterion (from the list of Quality +Controls, i.e. Skew, Warping, Minimum Angle, etc.)
      • +
      • Select from set of fields allows to choose a submesh or an +existing group whose triangle elements will be automatically added to +the list.
      • +
      + +
    4. +
    5. Click the \b Apply or \b OK button to confirm the operation.
    6. +
    + +If some selected triangle elements have no adjacent edges with one of +the others, the operation on these elements shall take no effect. + +\image html uniting_a_set_of_triangles1.png + +\image html uniting_a_set_of_triangles2.png + +
    See Also a sample TUI Script of a +\ref tui_uniting_set_of_triangles "Uniting a Set of Triangles" operation. + +*/ diff --git a/doc/salome/gui/SMESH/input/uniting_two_triangles.doc b/doc/salome/gui/SMESH/input/uniting_two_triangles.doc new file mode 100644 index 000000000..36d46f688 --- /dev/null +++ b/doc/salome/gui/SMESH/input/uniting_two_triangles.doc @@ -0,0 +1,34 @@ +/*! + +\page uniting_two_triangles_page Uniting two triangles + +\n In MESH you can union two neighboring triangles (cells) by deletion +of the common edge. + +To unite two triangles: +
      +
    1. From the \b Modification menu choose the Union of two +triangles item or click "Union of two triangles" button +in the toolbar. + +\image html image71.gif +
      "Union of two triangles" button
      + +The following dialog box shall appear: + +\image html unionoftwotriangles.png + +
    2. +
    3. Enter the ID of the required edge in the \b Edge field or select +this edge in the 3D viewer.
    4. +
    5. Click the \b Apply or \b OK button.
    6. +
    + +\image html uniting_two_triangles1.png + +\image html uniting_two_triangles2.png + +
    See Also a sample TUI Script of a +\ref tui_uniting_two_triangles "Uniting Two Triangles" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/using_operations_on_groups.doc b/doc/salome/gui/SMESH/input/using_operations_on_groups.doc new file mode 100644 index 000000000..c6d4d75a7 --- /dev/null +++ b/doc/salome/gui/SMESH/input/using_operations_on_groups.doc @@ -0,0 +1,123 @@ +/*! + +\page using_operations_on_groups_page Using operations on groups + +\n In MESH you can perform some Boolean operations on groups, which +belong to one and the same mesh. +
      +
    • \ref union_anchor "Union"
    • +
    • \ref intersection_anchor "Intersection"
    • +
    • \ref cut_anchor "Cut"
    • +
    + + +
    +\anchor union_anchor +

    Union of two groups

    + +This operation allows to create a new group in such a way that all +mesh elements that are present in the initial groups will be added to +the new one. + +To union two groups: +
      +
    1. In the \b Mesh menu select the Union Groups item. The following +dialog box will appear: + +\image html uniongroups.png + +In this dialog box you should specify the name of the resulting group +and two groups which will be united. + +For example, we have two groups Group1 and Group2. +\n The result of their \b Union will be Group12: + +\image html image133.gif +
      Group1
      + +\image html image134.gif +
      Group2
      + +\image html image135.gif +
      Group12
      +
    2. +
    3. Click the \b Ok or \b Apply button to confirm creation of the group.
    4. +
    + +See Also a sample TUI Script of a +\ref tui_union_of_two_groups "Union of two Groups" operation. + +
    +\anchor intersection_anchor +

    Intersection of two groups

    + +This operation allows to create a new group in such a way that all +mesh elements that are present in both initial groups are added to the +new one. + +To intersect two groups: +
      +
    1. In the \b Mesh menu select the Intersect Groups item. The +following dialog box will appear: + +\image html intersectgroups.png + +In this dialog box you should specify the name of the resulting group +and two groups which will be intersected. + +For example, we have two groups Group1 and Group2. +\n The result of their \b Intersection will be Group12a: + +\image html image133.gif +
      Group1
      + +\image html image134.gif +
      Group2
      + +\image html image136.gif +
      Group12a
      +
    2. +
    3. Click the \b Ok or \b Apply button to confirm creation of the group.
    4. +
    + +See Also a sample TUI Script of an +\ref tui_intersection_of_two_groups "Intersection of two Groups" operation. + +
    +\anchor cut_anchor +

    Cut of two groups

    + +This operation allows to create a new group in such a way that all +mesh elements that are present in the main group but are absent in the +tool group are added to the new one. + +To cut two groups: +
      +
    1. In the \b Mesh menu select the Cut Groups item. The +following dialog box will appear: + +\image html cutgroups.png + +In this dialog box you should specify the name of the resulting group +and two groups which will be cut. + +For example, we have two groups Group1 and Group2. +\n The result of their \b Cut will be Group12b: + +\image html image133.gif +
      Group1
      + +\image html image134.gif +
      Group2
      + +\image html image137.gif +
      Group12b
      +
    2. +
    3. Click the \b Ok or \b Apply button to confirm creation of the +group.
    4. +
    + +See Also a sample TUI Script of a +\ref tui_cut_of_two_groups "Cut of two Groups" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/viewing_meshes.doc b/doc/salome/gui/SMESH/input/viewing_meshes.doc new file mode 100644 index 000000000..aac10da54 --- /dev/null +++ b/doc/salome/gui/SMESH/input/viewing_meshes.doc @@ -0,0 +1,15 @@ +/*! + +\page viewing_meshes_page Viewing meshes + +
      +
    • \subpage viewing_meshes_overview_page
    • +
    • \subpage mesh_infos_page
    • +
    • \subpage numbering_page
    • +
    • \subpage display_mode_page
    • +
    • \subpage display_entity_page
    • +
    • \subpage transparency_page
    • +
    • \subpage clipping_page
    • +
    + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/viewing_meshes_overview.doc b/doc/salome/gui/SMESH/input/viewing_meshes_overview.doc new file mode 100644 index 000000000..5cddd5db3 --- /dev/null +++ b/doc/salome/gui/SMESH/input/viewing_meshes_overview.doc @@ -0,0 +1,50 @@ +/*! + +\page viewing_meshes_overview_page Overview + +\n After definition of algorithms and hypotheses a new mesh is listed +in the Object Browser. Right-click on it and select \b Compute - the +mesh will be automatically displayed in the VTK 3D Viewer. +Alternatively click Display only to hide all other objects at +the same time. + +VTK 3D Viewer is detailly described in the documentation on GUI module. +\n After the mesh has appeared in the Viewer, you can select it with +left mouse click and get information about it, change its +presentation parameters and access to other useful options by +right-clicking on the selected mesh. + +\image html dialog.png + +
      +
    • Hide all - allows to hide all objects in the viewer.
    • +
    • Update - refreshes the presentation of your mesh in the +Object Browser, applying all recent changes.
    • +
    • \ref advanced_mesh_infos_anchor "Advanced Mesh Infos" - provides +more detailed information about the mesh.
    • +
    • \ref standard_mesh_infos_anchor "Standard Mesh Infos" - provides +basic information about the mesh.
    • +
    • \ref mesh_element_info_anchor "Mesh Element Info" - provides basic +information about the selected element of the mesh.
    • +
    • \ref numbering_page "Numbering" - allows to display the ID +numbers of all meshing elements or nodes composing your mesh in the +viewer.
    • +
    • \ref display_mode_page "Display Mode" - allows to select between +Wireframe, Shading and Nodes presentation.
    • +
    • \ref display_entity_page "Display Entity" - allows to display +Faces, Edges or both.
    • +
    • Colors / Size - allows to select color and size of +meshes.
    • +
    • \ref transparency_page "Transparency" - allows to change the +transparency of mesh elements.
    • +
    • \ref clipping_page "Clipping" - allows to create cross-sections of the selected objects.
    • +
    • \ref about_quality_controls_page "Controls" - graphically +presents various information about meshes.
    • +
    • Hide - allows to hide the selected mesh from the viewer.
    • +
    • Show Only -allows to display only the selected mesh, hiding all other from the viewer.
    • +
    • Dump view - exports an object from the viewer in bmp, png, jpg or jpeg image format.
    • +
    • Change background - allows to redefine the background color. By default it is black.
    • +
    + +*/ + diff --git a/doc/salome/gui/SMESH/input/volume.doc b/doc/salome/gui/SMESH/input/volume.doc new file mode 100644 index 000000000..391b09023 --- /dev/null +++ b/doc/salome/gui/SMESH/input/volume.doc @@ -0,0 +1,28 @@ +/*! + +\page volume_page Volume + +\n \b Volume mesh quality criterion reflects the volume of meshes of a +3D object. + +To apply the Volume quality criterion to your mesh: +
      +
    1. Display your mesh in the viewer.
    2. + +
    3. Choose Controls > Volume or click "Volume" button +in the toolbar. + +\image html image145.gif +
      "Volume" button
      + +Your mesh will be displayed in the viewer with its elements colored +according to the applied mesh quality control criterion: + +\image html image143.gif +
    4. +
    + +
    See Also a sample TUI Script of a +\ref tui_volume "Volume quality control" operation. + +*/ \ No newline at end of file diff --git a/doc/salome/gui/SMESH/input/warping.doc b/doc/salome/gui/SMESH/input/warping.doc new file mode 100644 index 000000000..9b97aa6a2 --- /dev/null +++ b/doc/salome/gui/SMESH/input/warping.doc @@ -0,0 +1,43 @@ +/*! + +\page warping_page Warping + +\image html image24.gif + +\n \b Warping indicates that a face is not planar and is applied only to +2D elements with 4 nodes. This quality control criterion is based on a +projection plane created by: +
      +
    1. bisecting the four element edges,
    2. +
    3. creating a point on the plane at the vector average of the +corners, where the x-axis extends from the point to the bisector on +edge 2.
    4. +
    +The plane normal is in the direction of the cross product of the +x-axis and the vector from the origin to the bisector of edge 3. Every +corner of the quad will then be a distance ?h? from the plane. The +length of each half edge is measured and the shortest length is +assigned ?l?. The warp angle is the arcsine of the ratio of the +projection height ?h? to the half edge length ?l?. + +To apply the Warping quality criterion to your mesh: +
      +
    1. Display your mesh in the viewer.
    2. + +
    3. Choose Controls > Warping Angle or click "Warping angle" +button of the toolbar. + +\image html image39.gif +
      "Warping angle" button
      + +Your mesh will be displayed in the viewer with its elements colored +according to the applied mesh quality control criterion: + +\image html image97.jpg +
    4. +
    + +
    See Also a sample TUI Script of a +\ref tui_warping "Warping quality control" operation. + +*/ diff --git a/doc/salome/gui/SMESH/length.htm b/doc/salome/gui/SMESH/length.htm deleted file mode 100755 index db7b0ae0f..000000000 --- a/doc/salome/gui/SMESH/length.htm +++ /dev/null @@ -1,118 +0,0 @@ - - - - - -Length - - - - - - - - - - - - - -

    Length

    - -

    The Length quality control criterion returns a value - of length of edge.

    - -

     

    - -

    - -

     

    - -

     

    - -

    See Also - a sample TUI Script of a  Length - quality control operation.  

    - -

    .

    - - - - diff --git a/doc/salome/gui/SMESH/merge_elements.htm b/doc/salome/gui/SMESH/merge_elements.htm deleted file mode 100755 index f210b6af8..000000000 --- a/doc/salome/gui/SMESH/merge_elements.htm +++ /dev/null @@ -1,101 +0,0 @@ - - - - - -Merge Elements - - - - - - - - - - -

    Merging Elements

    - -

    This functionality allows to merge coincident elements - of a mesh selectable in the dialog box.

    - -

    - -

    In this picture you see a triangle which coincides with one of the elements - of the mesh. After we apply Merge Elements - functionality, the triangle will be completely merged with the mesh.

    - -

    - -

      See - Also a sample TUI Script of a Merge - Elements operation.  

    - -

     

    - -

     

    - - - - diff --git a/doc/salome/gui/SMESH/mesh.htm b/doc/salome/gui/SMESH/mesh.htm deleted file mode 100755 index f849df81a..000000000 --- a/doc/salome/gui/SMESH/mesh.htm +++ /dev/null @@ -1,216 +0,0 @@ - - - - - -mesh - - - - - - - - - - - -

    Introduction to MESH

    - -

     

    - -

    MESH - module of SALOME is destined for:

    - - - -

    - -

    for edges:

    - -
      - - -
    - -

    for faces:

    - -
      - - -
    - -

    for solids:

    - -
      - - -
    - -

    .

    - - - - diff --git a/doc/salome/gui/SMESH/mesh_through_point.htm b/doc/salome/gui/SMESH/mesh_through_point.htm deleted file mode 100755 index bf8e6f4ab..000000000 --- a/doc/salome/gui/SMESH/mesh_through_point.htm +++ /dev/null @@ -1,132 +0,0 @@ - - - - - -Mesh through point - - - - - - - - - - - -

    Mesh through point

    - -

    In mesh you can define a node at a certain point either by creation - of a new node, by movement of the node closest to the point or by movement - of any node to the point.

    - -

    To create a mesh passing through a point:

    - -

    1. From the Modification - menu choose the Mesh through point - item or click button in the toolbar. The following - dialog box shall appear:

    - -

    - -

    2. Enter the coordinates of the point

    - -

    3. Choose one of several methods: you can - either Create a new node at the - indicated point or Move the existing node to the point. In the latter - case you can check in Automatic search - of the closest node or select the necessary node manually. Preview - check-box allows to see the results of the operation.

    - -

    4. Click the Apply - or OK button.

    - -

     See - Also a sample TUI Script of a Mesh - through point operation.  

    - -

     

    - -

     

    - -

     

    - -

     

    - - - - diff --git a/doc/salome/gui/SMESH/modifying_meshes.htm b/doc/salome/gui/SMESH/modifying_meshes.htm deleted file mode 100755 index e33ea8c4b..000000000 --- a/doc/salome/gui/SMESH/modifying_meshes.htm +++ /dev/null @@ -1,1881 +0,0 @@ - - - - - -Modifying Meshes - - - - - - - - - - - -

    Modifying Meshes

    - -

    Adding Nodes and Elements

    - -

    Add Node

    - -

    import SMESH_mechanic

    - -

     

    - -

    mesh = SMESH_mechanic.mesh

    - -

     

    - -

    # add node

    - -

    new_id - = mesh.AddNode(50, 10, 0)

    - -

    print ""

    - -

    if new_id == 0: - print "KO node addition."

    - -

    else:           print - "New Node has been added with ID ", new_id  

    - -

     

    - -

    Add Edge

    - -

    import SMESH_mechanic

    - -

     

    - -

    mesh = SMESH_mechanic.mesh

    - -

    print ""

    - -

     

    - -

    # add node

    - -

    n1 - = mesh.AddNode(50, 10, 0)

    - -

    if n1 == 0: print - "KO node addition."

    - -

     

    - -

    # add edge

    - -

    e1 - = mesh.AddEdge([n1, 38])

    - -

    if e1 == 0: print - "KO edge addition."

    - -

    else:       print - "New Edge has been added with ID ", e1

    - -

    Add Triangle

    - -

    import SMESH_mechanic

    - -

     

    - -

    mesh = SMESH_mechanic.mesh

    - -

    print ""

    - -

     

    - -

    # add node

    - -

    n1 = mesh.AddNode(50, - 10, 0)

    - -

    if n1 == 0: print - "KO node addition."

    - -

     

    - -

    # add triangle

    - -

    t1 = mesh.AddFace([n1, - 38, 39])

    - -

    if t1 == 0: print - "KO triangle addition."

    - -

    else:       print - "New Triangle has been added with ID ", t1

    - -

    Add Quadrangle

    - -

    import SMESH_mechanic

    - -

     

    - -

    mesh = SMESH_mechanic.mesh

    - -

    print ""

    - -

     

    - -

    # add node

    - -

    n1 = mesh.AddNode(50, - 10, 0)

    - -

    if n1 == 0: print - "KO node addition."

    - -

     

    - -

    n2 = mesh.AddNode(40, - 20, 0)

    - -

    if n2 == 0: print - "KO node addition."

    - -

     

    - -

    # add quadrangle

    - -

    q1 = mesh.AddFace([n2, - n1, 38, 39])

    - -

    if q1 == 0: print - "KO quadrangle addition."

    - -

    else: -       print - "New Quadrangle has been added with ID ", q1

    - -

    Add Tetrahedron

    - -

    import SMESH_mechanic

    - -

     

    - -

    mesh = SMESH_mechanic.mesh

    - -

    print ""

    - -

     

    - -

    # add node

    - -

    n1 = mesh.AddNode(50, - 10, 0)

    - -

    if n1 == 0: print - "KO node addition."

    - -

     

    - -

    # add tetrahedron

    - -

    t1 = mesh.AddVolume([n1, - 38, 39, 246])

    - -

    if t1 == 0: print - "KO tetrahedron addition."

    - -

    else: -       print - "New Tetrahedron has been added with ID ", t1

    - -

    Add Hexahedron

    - -

    import SMESH_mechanic

    - -

     

    - -

    mesh = SMESH_mechanic.mesh

    - -

    print ""

    - -

     

    - -

    # add nodes

    - -

    nId1 = mesh.AddNode(50, - 10, 0)

    - -

    nId2 = mesh.AddNode(47, - 12, 0)

    - -

    nId3 = mesh.AddNode(50, - 10, 10)

    - -

    nId4 = mesh.AddNode(47, - 12, 10)

    - -

     

    - -

    if nId1 == 0 or - nId2 == 0 or nId3 == 0 or nId4 == 0: print "KO node addition."

    - -

     

    - -

    # add hexahedron

    - -

    vId = mesh.AddVolume([nId2, - nId1, 38, 39, nId4, nId3, 245, 246])

    - -

    if vId == 0: print - "KO Hexahedron addition."

    - -

    else:        print - "New Hexahedron has been added with ID ", vId

    - -

     

    - -

    Add Polygon

    - -

    import - math

    - -

    import salome

    - -

     

    - -

    import smesh

    - -

     

    - -

    # create an empty mesh - structure

    - -

    mesh = smesh.Mesh() -

    - -

     

    - -

    # a method to build - a polygonal mesh element with <nb_vert> angles:

    - -

    def MakePolygon - (a_mesh, x0, y0, z0, radius, nb_vert):

    - -

        al - = 2.0 * math.pi / nb_vert

    - -

        node_ids - = []

    - -

     

    - -

              # - Create nodes for a polygon

    - -

        for - ii in range(nb_vert):

    - -

            nid - = mesh.AddNode(x0 + radius * math.cos(ii*al),

    - -

                                     y0 - + radius * math.sin(ii*al),

    - -

                                     z0)

    - -

            node_ids.append(nid)

    - -

            pass

    - -

     

    - -

              # - Create a polygon

    - -

        return - mesh.AddPolygonalFace(node_ids)

    - -

     

    - -

    # Create three polygons

    - -

    f1 = MakePolygon(mesh, - 0, 0,  0, - 30, 13)

    - -

    f2 = MakePolygon(mesh, - 0, 0, 10, 21,  9)

    - -

    f3 = MakePolygon(mesh, - 0, 0, 20, 13,  6)

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

    Add Polyhedron

    - -

    import - salome

    - -

    import math

    - -

     

    - -

    # create an empty mesh - structure

    - -

    mesh = smesh.Mesh() -  

    - -

     

    - -

    # Create nodes for - 12-hedron with pentagonal faces

    - -

    al = 2 * math.pi - / 5.0

    - -

    cosal = math.cos(al)

    - -

    aa = 13

    - -

    rr = aa / (2.0 * - math.sin(al/2.0))

    - -

    dr = 2.0 * rr * - cosal

    - -

    r1 = rr + dr

    - -

    dh = rr * math.sqrt(2.0 - * (1.0 - cosal * (1.0 + 2.0 * cosal)))

    - -

    hh = 2.0 * dh - - dr * (rr*(cosal - 1) + (rr + dr)*(math.cos(al/2) - 1)) / dh

    - -

     

    - -

    dd = [] # - top

    - -

    cc = [] # - below top

    - -

    bb = [] # - above bottom

    - -

    aa = [] # - bottom

    - -

     

    - -

    for i in range(5):

    - -

        cos_bot - = math.cos(i*al)

    - -

        sin_bot - = math.sin(i*al)

    - -

     

    - -

        cos_top - = math.cos(i*al + al/2.0)

    - -

        sin_top - = math.sin(i*al + al/2.0)

    - -

     

    - -

        nd - = mesh.AddNode(rr * cos_top, rr * sin_top, hh     ) - # top

    - -

        nc - = mesh.AddNode(r1 * cos_top, r1 * sin_top, hh - dh) # - below top

    - -

        nb - = mesh.AddNode(r1 * cos_bot, r1 * sin_bot,      dh) - # above bottom

    - -

        na - = mesh.AddNode(rr * cos_bot, rr * sin_bot,       0) - # bottom

    - -

        dd.append(nd) - # top

    - -

        cc.append(nc) - # below top

    - -

        bb.append(nb) - # above bottom

    - -

        aa.append(na) - # bottom

    - -

     

    - -

        pass

    - -

     

    - -

    # Create a polyhedral - volume (12-hedron with pentagonal faces)

    - -

    MeshEditor.AddPolyhedralVolume([dd[0], - dd[1], dd[2], dd[3], dd[4],  # - top

    - -

                                    dd[0], - cc[0], bb[1], cc[1], dd[1],  # - -

    - -

                                    dd[1], - cc[1], bb[2], cc[2], dd[2],  # - -

    - -

                                    dd[2], - cc[2], bb[3], cc[3], dd[3],  # - - below top

    - -

                                    dd[3], - cc[3], bb[4], cc[4], dd[4],  # - -

    - -

                                    dd[4], - cc[4], bb[0], cc[0], dd[0],  # - -

    - -

                                    aa[4], - bb[4], cc[4], bb[0], aa[0],  # - .

    - -

                                    aa[3], - bb[3], cc[3], bb[4], aa[4],  # - .

    - -

                                    aa[2], - bb[2], cc[2], bb[3], aa[3],  # - . above bottom

    - -

                                    aa[1], - bb[1], cc[1], bb[2], aa[2],  # - .

    - -

                                    aa[0], - bb[0], cc[0], bb[1], aa[1],  # - .

    - -

                                    aa[0], - aa[1], aa[2], aa[3], aa[4]], # - bottom

    - -

                                   [5,5,5,5,5,5,5,5,5,5,5,5])

    - -

    salome.sg.updateObjBrowser(1) -

    - -

     

    - -

    Removing Nodes and Elements

    - -

    Removing Nodes

    - -

     

    - -

    import - SMESH_mechanic

    - -

     

    - -

    mesh = SMESH_mechanic.mesh

    - -

     

    - -

    # remove nodes #246 - and #255

    - -

    res = mesh.RemoveNodes([246, - 255])

    - -

    if res == 1: print - "Nodes removing is OK!"

    - -

    else:        print - "KO nodes removing."

    - -

     

    - -

    Removing Elements

    - -

    import SMESH_mechanic

    - -

     

    - -

    mesh = SMESH_mechanic.mesh

    - -

     

    - -

    # remove three elements: - #850, #859 and #814

    - -

    res = mesh.RemoveElements([850, - 859, 814])

    - -

    if res == 1: print - "Elements removing is OK!"

    - -

    else:        print - "KO Elements removing."  

    - -

     

    - -

    Renumbering Nodes and Elements

    - -

    import SMESH_mechanic

    - -

     

    - -

    mesh = SMESH_mechanic.mesh

    - -

     

    - -

    mesh.RenumberNodes() -

    - -

    Moving Nodes

    - -

    import SMESH_mechanic

    - -

     

    - -

    mesh = SMESH_mechanic.mesh

    - -

     

    - -

    # move node #38

    - -

    mesh.MoveNode(38, - 20., 10., 0.)

    - -

     

    - -

     

    - -

    Mesh - through point

    - -

     

    - -

    from geompy import - *

    - -

    from smesh import - *

    - -

     

    - -

    box = MakeBoxDXDYDZ(200, - 200, 200)

    - -

     

    - -

    mesh = Mesh( box - )

    - -

    mesh.Segment().AutomaticLength(0.1)

    - -

    mesh.Quadrangle()

    - -

    mesh.Compute()

    - -

     

    - -

    # find node at (0,0,0)

    - -

    node000 = None

    - -

    for vId in SubShapeAllIDs( - box, ShapeType["VERTEX"]):

    - -

        if - node000: break

    - -

        nodeIds - = mesh.GetSubMeshNodesId( vId, True )

    - -

        for - node in nodeIds:

    - -

            xyz - = mesh.GetNodeXYZ( node )

    - -

            if - xyz[0] == 0 and xyz[1] == 0 and xyz[2] == 0 :

    - -

                node000 - = node

    - -

                pass

    - -

            pass

    - -

        pass

    - -

    if not node000:

    - -

        raise - "node000 not found"

    - -

     

    - -

    # find node000 using the - tested function

    - -

    n = mesh.FindNodeClosestTo( - -1,-1,-1 )

    - -

    if not n == node000:

    - -

        raise - "FindNodeClosestTo() returns " + str( n ) + " != " - + str( node000 )

    - -

     

    - -

    # check if any node will - be found for a point inside a box

    - -

    n = mesh.FindNodeClosestTo( - 100, 100, 100 )

    - -

    if not n > 0:

    - -

        raise - "FindNodeClosestTo( 100, 100, 100 ) fails"

    - -

     

    - -

    # move node000 to a new - location

    - -

    x,y,z = -10, -10, - -10

    - -

    n = mesh.MeshToPassThroughAPoint( - x,y,z )

    - -

    if not n == node000:

    - -

        raise - "FindNodeClosestTo() returns " + str( n ) + " != " - + str( node000 )

    - -

     

    - -

    # check the coordinates - of the node000

    - -

    xyz = mesh.GetNodeXYZ( - node000 )

    - -

    if not ( xyz[0] - == x and xyz[1] == y and xyz[2] == z) :

    - -

        raise - "Wrong coordinates: " + str( xyz ) + " != " + str( - [x,y,z] )

    - -

    Diagonal Inversion

    - -

    import salome

    - -

    import smesh

    - -

     

    - -

    # create an empty mesh - structure

    - -

    mesh = smesh.Mesh() -

    - -

     

    - -

    # create the following - mesh:

    - -

    # .----.----.----.

    - -

    # |   /| -   /| -   /|

    - -

    # |  / - |  / |  / - |

    - -

    # | /  | - /  | /  |

    - -

    # |/   |/ -   |/ -   |

    - -

    # .----.----.----.

    - -

     

    - -

    bb = [0, 0, 0, 0]

    - -

    tt = [0, 0, 0, 0]

    - -

    ff = [0, 0, 0, 0, - 0, 0]

    - -

     

    - -

    bb[0] = mesh.AddNode( - 0., 0., 0.)

    - -

    bb[1] = mesh.AddNode(10., - 0., 0.)

    - -

    bb[2] = mesh.AddNode(20., - 0., 0.)

    - -

    bb[3] = mesh.AddNode(30., - 0., 0.)

    - -

     

    - -

    tt[0] = mesh.AddNode( - 0., 15., 0.)

    - -

    tt[1] = mesh.AddNode(10., - 15., 0.)

    - -

    tt[2] = mesh.AddNode(20., - 15., 0.)

    - -

    tt[3] = mesh.AddNode(30., - 15., 0.)

    - -

     

    - -

    ff[0] = mesh.AddFace([bb[0], - bb[1], tt[1]])

    - -

    ff[1] = mesh.AddFace([bb[0], - tt[1], tt[0]])

    - -

    ff[2] = mesh.AddFace([bb[1], - bb[2], tt[2]])

    - -

    ff[3] = mesh.AddFace([bb[1], - tt[2], tt[1]])

    - -

    ff[4] = mesh.AddFace([bb[2], - bb[3], tt[3]])

    - -

    ff[5] = mesh.AddFace([bb[2], - tt[3], tt[2]])

    - -

     

    - -

    # inverse the diagonal - bb[1] - tt[2]

    - -

    print "\nDiagonal - inversion ... ",

    - -

    res = mesh.InverseDiag(bb[1], - tt[2])

    - -

    if not res: print - "failed!"

    - -

    else:       print - "done."

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

    Uniting two Triangles

    - -

    import salome

    - -

    import smesh

    - -

     

    - -

    # create an empty mesh structure

    - -

    mesh = smesh.Mesh() -

    - -

     

    - -

    # create the following mesh:

    - -

    # .----.----.----.

    - -

    # |   /| -   /| -   /|

    - -

    # |  / - |  / |  / - |

    - -

    # | /  | - /  | /  |

    - -

    # |/   |/ -   |/ -   |

    - -

    # .----.----.----.

    - -

     

    - -

    bb = [0, 0, 0, 0]

    - -

    tt = [0, 0, 0, 0]

    - -

    ff = [0, 0, 0, 0, - 0, 0]

    - -

     

    - -

    bb[0] - = mesh.AddNode( 0., 0., 0.)

    - -

    bb[1] = mesh.AddNode(10., - 0., 0.)

    - -

    bb[2] = mesh.AddNode(20., - 0., 0.)

    - -

    bb[3] = mesh.AddNode(30., - 0., 0.)

    - -

     

    - -

    tt[0] = mesh.AddNode( - 0., 15., 0.)

    - -

    tt[1] = mesh.AddNode(10., - 15., 0.)

    - -

    tt[2] = mesh.AddNode(20., - 15., 0.)

    - -

    tt[3] = mesh.AddNode(30., - 15., 0.)

    - -

     

    - -

    ff[0] = mesh.AddFace([bb[0], - bb[1], tt[1]])

    - -

    ff[1] = mesh.AddFace([bb[0], - tt[1], tt[0]])

    - -

    ff[2] = mesh.AddFace([bb[1], - bb[2], tt[2]])

    - -

    ff[3] = mesh.AddFace([bb[1], - tt[2], tt[1]])

    - -

    ff[4] = mesh.AddFace([bb[2], - bb[3], tt[3]])

    - -

    ff[5] = mesh.AddFace([bb[2], - tt[3], tt[2]])

    - -

     

    - -

    # delete the diagonal bb[1] - tt[2]

    - -

    print "\nUnite - two triangles ... ",

    - -

    res = mesh.DeleteDiag(bb[1], - tt[2])

    - -

    if not res: print - "failed!"

    - -

    else:       print - "done."

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

    Uniting a Set of Triangles

    - -

    import salome

    - -

    import smesh

    - -

     

    - -

    # create an empty mesh - structure

    - -

    mesh = smesh.Mesh() -

    - -

     

    - -

    # create the following - mesh:

    - -

    # .----.----.----.

    - -

    # |   /| -   /| -   /|

    - -

    # |  / - |  / |  / - |

    - -

    # | /  | - /  | /  |

    - -

    # |/   |/ -   |/ -   |

    - -

    # .----.----.----.

    - -

     

    - -

    bb = [0, 0, 0, 0]

    - -

    tt = [0, 0, 0, 0]

    - -

    ff = [0, 0, 0, 0, - 0, 0]

    - -

     

    - -

    bb[0] - = mesh.AddNode( 0., 0., 0.)

    - -

    bb[1] = mesh.AddNode(10., - 0., 0.)

    - -

    bb[2] = mesh.AddNode(20., - 0., 0.)

    - -

    bb[3] = mesh.AddNode(30., - 0., 0.)

    - -

     

    - -

    tt[0] = mesh.AddNode( - 0., 15., 0.)

    - -

    tt[1] = mesh.AddNode(10., - 15., 0.)

    - -

    tt[2] = mesh.AddNode(20., - 15., 0.)

    - -

    tt[3] = mesh.AddNode(30., - 15., 0.)

    - -

     

    - -

    ff[0] = mesh.AddFace([bb[0], - bb[1], tt[1]])

    - -

    ff[1] = mesh.AddFace([bb[0], - tt[1], tt[0]])

    - -

    ff[2] = mesh.AddFace([bb[1], - bb[2], tt[2]])

    - -

    ff[3] = mesh.AddFace([bb[1], - tt[2], tt[1]])

    - -

    ff[4] = mesh.AddFace([bb[2], - bb[3], tt[3]])

    - -

    ff[5] = mesh.AddFace([bb[2], - tt[3], tt[2]])

    - -

     

    - -

    # unite a set of triangles

    - -

    print - "\nUnite a set of triangles ... ",

    - -

    res = mesh.TriToQuad([ff[2], - ff[3], ff[4], ff[5]], smesh.FT_MinimumAngle, 60.)

    - -

    if not res: print - "failed!"

    - -

    else:       print - "done."

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -  

    - -

    Orientation

    - -

    import salome

    - -

    import smesh

    - -

     

    - -

    # create an empty mesh structure

    - -

    mesh = smesh.Mesh() -

    - -

     

    - -

    # build five quadrangles:

    - -

    dx = 10

    - -

    dy = 20

    - -

     

    - -

    n1 -  = mesh.AddNode(0.0 - * dx, 0, 0)

    - -

    n2  = - mesh.AddNode(1.0 * dx, 0, 0)

    - -

    n3  = - mesh.AddNode(2.0 * dx, 0, 0)

    - -

    n4  = - mesh.AddNode(3.0 * dx, 0, 0)

    - -

    n5  = - mesh.AddNode(4.0 * dx, 0, 0)

    - -

    n6  = - mesh.AddNode(5.0 * dx, 0, 0)

    - -

    n7  = - mesh.AddNode(0.0 * dx, dy, 0)

    - -

    n8  = - mesh.AddNode(1.0 * dx, dy, 0)

    - -

    n9  = - mesh.AddNode(2.0 * dx, dy, 0)

    - -

    n10 = mesh.AddNode(3.0 - * dx, dy, 0)

    - -

    n11 = mesh.AddNode(4.0 - * dx, dy, 0)

    - -

    n12 = mesh.AddNode(5.0 - * dx, dy, 0)

    - -

     

    - -

    f1 = mesh.AddFace([n1, - n2, n8 , n7 ])

    - -

    f2 = mesh.AddFace([n2, - n3, n9 , n8 ])

    - -

    f3 = mesh.AddFace([n3, - n4, n10, n9 ])

    - -

    f4 = mesh.AddFace([n4, - n5, n11, n10])

    - -

    f5 = mesh.AddFace([n5, - n6, n12, n11])

    - -

     

    - -

    # Change the orientation - of the second and the fourth faces.

    - -

    mesh.Reorient([2, - 4])

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

     

    - -

    Cutting Quadrangles

    - -

    import SMESH_mechanic

    - -

     

    - -

    smesh = SMESH_mechanic.smesh

    - -

    mesh  = - SMESH_mechanic.mesh

    - -

     

    - -

    # cut two quadrangles: - 405 and 406

    - -

    mesh.QuadToTri([405, - 406], smesh.FT_MinimumAngle)  

    - -

     

    - -

    Smoothing

    - -

    import salome

    - -

    import geompy

    - -

     

    - -

    import SMESH_mechanic

    - -

     

    - -

    smesh - = SMESH_mechanic.smesh

    - -

    mesh = SMESH_mechanic.mesh

    - -

     

    - -

    # select the top face

    - -

    faces - = geompy.SubShapeAllSorted(SMESH_mechanic.shape_mesh, geompy.ShapeType["FACE"])

    - -

    face = faces[3]

    - -

    geompy.addToStudyInFather(SMESH_mechanic.shape_mesh, - face, "face planar with hole")

    - -

     

    - -

    # create a group of - faces to be smoothed

    - -

    GroupSmooth = mesh.GroupOnGeom(face, - "Group of faces (smooth)", smesh.FACE)

    - -

     

    - -

    # perform smoothing

    - -

     

    - -

    # boolean SmoothObject(Object, - IDsOfFixedNodes, MaxNbOfIterations, MaxAspectRatio, Method)

    - -

    res = mesh.SmoothObject(GroupSmooth, - [], 20, 2., smesh.CENTROIDAL_SMOOTH)

    - -

    print "\nSmoothing - ... ",

    - -

    if not res: print - "failed!"

    - -

    else:       print - "done."

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

     

    - -

    Extrusion

    - -

    import salome

    - -

    import geompy

    - -

     

    - -

    import SMESH_mechanic

    - -

     

    - -

    smesh - = SMESH_mechanic.smesh

    - -

    mesh = SMESH_mechanic.mesh -

    - -

     

    - -

    # select the top face

    - -

    faces = geompy.SubShapeAllSorted(SMESH_mechanic.shape_mesh, - geompy.ShapeType["FACE"])

    - -

    face = faces[7]

    - -

    geompy.addToStudyInFather(SMESH_mechanic.shape_mesh, - face, "face circular top")

    - -

     

    - -

    # create a vector - for extrusion

    - -

    point = smesh.PointStruct(0., - 0., 5.)

    - -

    vector = smesh.DirStruct(point)

    - -

     

    - -

    # create a group to - be extruded

    - -

    GroupTri = mesh.GroupOnGeom(face, - "Group of faces (extrusion)", smesh.FACE)

    - -

     

    - -

    # perform extrusion - of the group

    - -

    mesh.ExtrusionSweepObject(GroupTri, - vector, 5)

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

    Extrusion along a Path

    - -

    import math

    - -

    import salome

    - -

     

    - -

    # Geometry

    - -

    import geompy

    - -

     

    - -

    # 1. Create points

    - -

    points = [[0, 0], - [50, 30], [50, 110], [0, 150], [-80, 150], [-130, 70], [-130, -20]]

    - -

     

    - -

    iv = 1

    - -

    vertices = []

    - -

    for point in points:

    - -

    vert - = geompy.MakeVertex(point[0], point[1], 0)

    - -

    geompy.addToStudy(vert, - "Vertex_" + `iv`)

    - -

    vertices.append(vert)

    - -

    iv - += 1

    - -

    pass

    - -

     

    - -

    # 2. Create edges and - wires

    - -

    Edge_straight = geompy.MakeEdge(vertices[0], - vertices[4])

    - -

    Edge_bezierrr = geompy.MakeBezier(vertices)

    - -

    Wire_polyline = geompy.MakePolyline(vertices)

    - -

    Edge_Circle   = - geompy.MakeCircleThreePnt(vertices[0], vertices[1], vertices[2])

    - -

     

    - -

    geompy.addToStudy(Edge_straight, - "Edge_straight")

    - -

    geompy.addToStudy(Edge_bezierrr, - "Edge_bezierrr")

    - -

    geompy.addToStudy(Wire_polyline, - "Wire_polyline")

    - -

    geompy.addToStudy(Edge_Circle -  , "Edge_Circle")

    - -

     

    - -

    # 3. Explode wire on - edges, as they will be used for mesh extrusion

    - -

    Wire_polyline_edges - = geompy.SubShapeAll(Wire_polyline, geompy.ShapeType["EDGE"])

    - -

    for ii in range(len(Wire_polyline_edges)):

    - -

    geompy.addToStudyInFather(Wire_polyline, - Wire_polyline_edges[ii], "Edge_" + `ii + 1`)

    - -

    pass

    - -

     

    - -

    # Mesh

    - -

    import smesh

    - -

     

    - -

    # Mesh - the given shape with the given 1d hypothesis

    - -

    def - Mesh1D(shape1d, nbSeg, name):

    - -

      mesh1d_tool - = smesh.Mesh(shape1d, name)

    - -

      algo - = mesh1d_tool.Segment()

    - -

      hyp -  = algo.NumberOfSegments(nbSeg)

    - -

      isDone - = mesh1d_tool.Compute()

    - -

      if - not isDone: print 'Mesh ', name, ': computation failed'

    - -

      return - mesh1d_tool

    - -

    # Create - a mesh with six nodes, seven edges and two quadrangle faces

    - -

    def - MakeQuadMesh2(mesh_name):

    - -

      quad_1 - = smesh.Mesh(name = mesh_name)

    - -

      

    - -

      # - six nodes

    - -

      n1 - = quad_1.AddNode(0, 20, 10)

    - -

      n2 - = quad_1.AddNode(0, 40, 10)

    - -

      n3 - = quad_1.AddNode(0, 40, 30)

    - -

      n4 - = quad_1.AddNode(0, 20, 30)

    - -

      n5 - = quad_1.AddNode(0,  0, - 30)

    - -

      n6 - = quad_1.AddNode(0,  0, - 10)

    - -

      

    - -

      # - seven edges

    - -

      quad_1.AddEdge([n1, - n2]) # 1

    - -

      quad_1.AddEdge([n2, - n3]) # 2

    - -

      quad_1.AddEdge([n3, - n4]) # 3

    - -

      quad_1.AddEdge([n4, - n1]) # 4

    - -

      quad_1.AddEdge([n4, - n5]) # 5

    - -

      quad_1.AddEdge([n5, - n6]) # 6

    - -

      quad_1.AddEdge([n6, - n1]) # 7

    - -

     

    - -

      # - two quadrangle faces

    - -

      quad_1.AddFace([n1, - n2, n3, n4]) # 8

    - -

      quad_1.AddFace([n1, - n4, n5, n6]) # 9

    - -

      return - [quad_1, [1,2,3,4,5,6,7], [8,9]]

    - -

     

    - -

    # Path - meshes

    - -

    Edge_straight_mesh - = Mesh1D(Edge_straight, 7, "Edge_straight")

    - -

    Edge_bezierrr_mesh - = Mesh1D(Edge_bezierrr, 7, "Edge_bezierrr")

    - -

    Wire_polyline_mesh - = Mesh1D(Wire_polyline, 3, "Wire_polyline")

    - -

    Edge_Circle_mesh -   = - Mesh1D(Edge_Circle  , - 8, "Edge_Circle")

    - -

     

    - -

    # Initial - meshes (to be extruded)

    - -

    [quad_1, - ee_1, ff_1] = MakeQuadMesh2("quad_1")

    - -

    [quad_2, - ee_2, ff_2] = MakeQuadMesh2("quad_2")

    - -

    [quad_3, - ee_3, ff_3] = MakeQuadMesh2("quad_3")

    - -

    [quad_4, - ee_4, ff_4] = MakeQuadMesh2("quad_4")

    - -

    [quad_5, - ee_5, ff_5] = MakeQuadMesh2("quad_5")

    - -

    [quad_6, - ee_6, ff_6] = MakeQuadMesh2("quad_6")

    - -

    [quad_7, - ee_7, ff_7] = MakeQuadMesh2("quad_7")

    - -

     

    - -

    # ExtrusionAlongPath

    - -

    # IDsOfElements, - PathMesh, PathShape, NodeStart,

    - -

    # HasAngles, - Angles, HasRefPoint, RefPoint

    - -

    refPoint - = smesh.PointStruct(0, 0, 0)

    - -

    a10 - = 10.0*math.pi/180.0

    - -

    a45 - = 45.0*math.pi/180.0

    - -

     

    - -

    # 1. - Extrusion of two mesh edges along a straight path

    - -

    error - = quad_1.ExtrusionAlongPath([1,2], Edge_straight_mesh, Edge_straight, - 1,

    - -

                                      0, - [], 0, refPoint)

    - -

     

    - -

    # 2. - Extrusion of one mesh edge along a curved path

    - -

    error - = quad_2.ExtrusionAlongPath([2], Edge_bezierrr_mesh, Edge_bezierrr, 1,

    - -

                                      0, - [], 0, refPoint)

    - -

     

    - -

    # 3. - Extrusion of one mesh edge along a curved path with usage of angles

    - -

    error - = quad_3.ExtrusionAlongPath([2], Edge_bezierrr_mesh, Edge_bezierrr, 1,

    - -

                                      1, - [a45, a45, a45, 0, -a45, -a45, -a45], 0, refPoint)

    - -

     

    - -

    # 4. - Extrusion of one mesh edge along the path, which is a part of a meshed - wire

    - -

    error - = quad_4.ExtrusionAlongPath([4], Wire_polyline_mesh, Wire_polyline_edges[0], - 1,

    - -

                                      1, - [a10, a10, a10], 0, refPoint)

    - -

     

    - -

    # 5. - Extrusion of two mesh faces along the path, which is a part of a meshed - wire

    - -

    error - = quad_5.ExtrusionAlongPath(ff_5 , Wire_polyline_mesh, Wire_polyline_edges[2], - 4,

    - -

                                      0, - [], 0, refPoint)

    - -

     

    - -

    # 6. - Extrusion of two mesh faces along a closed path

    - -

    error - = quad_6.ExtrusionAlongPath(ff_6 , Edge_Circle_mesh, Edge_Circle, 1,

    - -

                                      0, - [], 0, refPoint)

    - -

     

    - -

    # 7. - Extrusion of two mesh faces along a closed path with usage of angles

    - -

    error - = quad_7.ExtrusionAlongPath(ff_7, Edge_Circle_mesh, Edge_Circle, 1,

    - -

                                      1, - [a45, -a45, a45, -a45, a45, -a45, a45, -a45], 0, refPoint)

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

    Revolution

    - -

    import math

    - -

     

    - -

    import SMESH_mechanic

    - -

     

    - -

    mesh -  = SMESH_mechanic.mesh

    - -

    smesh = SMESH_mechanic.smesh

    - -

     

    - -

    # create a group of faces - to be revolved

    - -

    FacesRotate = [492, - 493, 502, 503]

    - -

    GroupRotate = mesh.CreateGroup(SMESH.FACE,"Group - of faces (rotate)")

    - -

    GroupRotate.Add(FacesRotate)

    - -

     

    - -

    # define revolution angle - and axis

    - -

    angle45 = 45 * math.pi - / 180

    - -

    axisXYZ = SMESH.AxisStruct(-38.3128, - -73.3658, -23.321, -13.3402, -13.3265, 6.66632)

    - -

     

    - -

    # perform revolution - of an object

    - -

    mesh.RotationSweepObject(GroupRotate, - axisXYZ, angle45, 4, 1e-5)

    - -

     

    - -

    Pattern Mapping

    - -

    import geompy

    - -

     

    - -

    import smesh

    - -

     

    - -

    # define the geometry

    - -

    Box_1 = geompy.MakeBoxDXDYDZ(200., - 200., 200.)

    - -

    geompy.addToStudy(Box_1, - "Box_1")

    - -

     

    - -

    faces = geompy.SubShapeAll(Box_1, - geompy.ShapeType["FACE"])

    - -

    Face_1 = faces[0]

    - -

    Face_2 = faces[1]

    - -

     

    - -

    geompy.addToStudyInFather(Box_1, - Face_1, "Face_1")

    - -

    geompy.addToStudyInFather(Box_1, - Face_2, "Face_2")

    - -

     

    - -

    # build a quadrangle - mesh 3x3 on Face_1

    - -

    Mesh_1 = smesh.Mesh(Face_1)

    - -

    algo1D = Mesh_1.Segment()

    - -

    algo1D.NumberOfSegments(3)

    - -

    Mesh_1.Quadrangle()

    - -

     

    - -

    isDone = Mesh_1.Compute()

    - -

    if not isDone: print - 'Mesh Mesh_1 : computation failed'

    - -

     

    - -

    # build a triangle - mesh on Face_2

    - -

    Mesh_2 = smesh.Mesh(Face_2)

    - -

     

    - -

    algo1D = Mesh_2.Segment()

    - -

    algo1D.NumberOfSegments(1)

    - -

    algo2D = Mesh_2.Triangle()

    - -

    algo2D.MaxElementArea(240)

    - -

     

    - -

    isDone = Mesh_2.Compute()

    - -

    if not isDone: print - 'Mesh Mesh_2 : computation failed'

    - -

     

    - -

    # create a pattern

    - -

    pattern = smesh.GetPattern()

    - -

     

    - -

    isDone = pattern.LoadFromFace(Mesh_2.GetMesh(), - Face_2, 0)

    - -

    if (isDone != 1): print - 'LoadFromFace :', pattern.GetErrorCode()

    - -

     

    - -

    # apply the pattern - to a face of the first mesh

    - -

    pattern.ApplyToMeshFaces(Mesh_1.GetMesh(), - [17], 0, 0)

    - -

     

    - -

    isDone = pattern.MakeMesh(Mesh_1.GetMesh(), - 0, 0)

    - -

    if (isDone != 1): print - 'MakeMesh :', pattern.GetErrorCode()  

    - - - - diff --git a/doc/salome/gui/SMESH/netgen_2d_and_3d_hypotheses.htm b/doc/salome/gui/SMESH/netgen_2d_and_3d_hypotheses.htm deleted file mode 100644 index 1413f3baf..000000000 --- a/doc/salome/gui/SMESH/netgen_2d_and_3d_hypotheses.htm +++ /dev/null @@ -1,146 +0,0 @@ - - - - - -Netgen 2D and 3D hypotheses - - - - - - - - - - - -

    Netgen 2D and 3D hypotheses

    - -

    Netgen 2D and Netgen - 3D hypotheses work only with Netgen 1D-2D and Netgen - 1D-2D-3D algorithms. These algorithms - do not require definition of lower-level  hypotheses - and algorithms (2D and 1D for meshing 3D objects and 1D for meshing 2D - objects). They prove to be useful if lower-level meshing is homogeneous - for all wires and faces of the meshed object.

    - -

    - -
      - -
    • Name - - allows to define the name for the algorithm (Netgen 2D (or 3D) Parameters - by default)

    • - -
    • Max - Size - maximum linear dimensions for mesh cells.

    • - -
    • Second - Order - if this box is checked in, the algorithm will create second - order nodes on the mesh, which actually will become Quadratic. -   

    • - -
    • Fineness - - ranging from Very Coarse to Very Fine allows to set the level of meshing - detalization using the three parameters below. You can select Custom to - define them manually.

    • - -
    • Growth - rate - allows to define how much the linear dimensions of two adjacent - cells can differ (i.e. 0.3 means 30%).

    • - -
    • Nb. - Segs per Edge and Nb Segs per - Radius - allows to define the minimum number of mesh segments in - which edges and radiuses will be split.

    • - -
    • Allow - Quadrangles - allows to use quadrangle elements in a triangle 2D - mesh. This checkbox is not present in Netgen 3D parameters because currently - building a tetrahedral mesh with quadrangle faces is not possible.

    • - -
    • Optimize - - if this box is checked in, the algorithm will try to create regular - (possessing even sides) elements.

    • -
    - - - - diff --git a/doc/salome/gui/SMESH/note1.gif b/doc/salome/gui/SMESH/note1.gif deleted file mode 100755 index b53e21d0a..000000000 Binary files a/doc/salome/gui/SMESH/note1.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/pattern_mapping.htm b/doc/salome/gui/SMESH/pattern_mapping.htm deleted file mode 100755 index 87685f026..000000000 --- a/doc/salome/gui/SMESH/pattern_mapping.htm +++ /dev/null @@ -1,311 +0,0 @@ - - - - - -Pattern mapping - - - - - - - - - - - - - -

    Pattern mapping

    - -

    About patterns

    - -

    The pattern describes a mesh to generate: positions of - nodes within a geometrical domain and nodal connectivity of elements. - As well, a pattern specifies the so-called key-points, i.e. nodes that - will be located at geometrical vertices. Pattern description is stored - in <pattern_name>.smp file.

    - -

     

    - -

    The smp file contains 4 sections:

    - -

     

    - -

    1. The first line holds the number of nodes - (N).

    - -

     

    - -

    2. The next N lines describe nodes coordinates. - Each line holds 2 coordinates of a node.

    - -

     

    - -

    3. A key-points line: indices of nodes to - be mapped on geometrical vertices. An index n refers to a node described - on an n-th line of section 2. The first node index is zero.

    - -

     

    - -

    4. The rest lines describe nodal connectivity - of elements, one line for an element. A line holds indices of nodes forming - an element. An index n refers to a node described on an n-th line of the - section 2. The first node index is zero. There must be 3 or 4 indices - on a line: only 2d elements are allowed.

    - -

     

    - -

    The 2D pattern must contain at least one element and at least one key-point. - All key-points must lay on boundaries.

    - -

     

    - -

    An example of a simple smp file and a preview of a pattern described - in this file:

    - -

     

    - -

    - -

     

    - -

     

    - -

    Application of pattern mapping

    - -

    To apply pattern mapping to a geometrical object:

    - -

     

    - -

    1. From the Modification - menu choose the Pattern Mapping - item or click button in the toolbar. The following - dialog box shall appear:

    - -

     

    - - --- - - - -
    -

    -

    - -

     

    - -

    To apply a pattern to a geometrical object, you should specify:

    - -

    - a face having the number of vertices equal - to the number of key-points in the pattern; the number of key-points on - internal boundaries of a pattern must also be equal to the number of vertices - on internal boundaries of a face;

    - -

    - a vertex to which the first key-point should - be mapped,

    - -

    - reverse or not the order of key-points. - (The order of vertices of a face is counterclockwise looking from outside).

    - -

     

    - -

    Then you either load a .smp pattern file previously created manually - by clicking on the button, or click on the New - button for automatic generation.

    - -

    For an automatic generation you just specify a geometrical face having - a mesh built on it. Mesh nodes lying on face vertices become key-points. - Additionally, you may choose the way of getting nodes coordinates by projecting nodes on the face instead - of using "positions on face" generated by mesher (if there is - any). Faces having a seam edge can’t be used for automatic pattern creation.

    - -

     

    - -

    When creating a pattern from an existing mesh, there are two possible - cases:

    - -

     

    - -

    1. A sub-mesh on face is selected. A pattern is created from the 2d - elements bound to a face by mesher. Node coordinates are either "positions - on face" computed by mesher, or coordinates got by node projection - on a geometrical surface, according to your choice.

    - -

    2. A mesh where the main shape is a face, is selected. A pattern is - created from all the 2d elements in a mesh. If all mesh elements are build - by mesher, the user can select the way of getting nodes coordinates, else - all nodes are projected on a face surface.

    - - --- - - - -
    -

    -

    - -

     

    - -

    Mapping algorithm:

    - -

    The mapping algorithm is as follows:

    - -

     

    - -

    1. Key-points are set in the order that they - are encountered when walking along a pattern boundary so that elements - are on the left. The first key-point is preserved.

    - -

    2. Find geometrical vertices corresponding - to key-points by vertices order in a face boundary; here, "Reverse - order of key-points" flag is taken into account.

    - -

     

    - -

    - -

     

    - -

    3. Boundary nodes of a pattern are mapped - onto edges of a face: a node located between certain key-points on a pattern - boundary is mapped on a geometrical edge limited by corresponding geometrical - vertices. Node position on an edge reflects its distance from two key-points.

    - -

     

    - -

    - -

     

    - -

    4. Coordinates of a non-boundary node in - a parametric space of a face are defined as following. In a parametric - space of a pattern, a node lays at the intersection of two iso-lines, - each of which intersects a pattern boundary at least at two points. Knowing - mapped positions of boundary nodes, we find where isoline-boundary intersection - points are mapped to, and hence we can find mapped isolines direction - and then, two node positions on two mapped isolines. The eventual mapped - position of a node is found as an average of positions on mapped isolines.

    - -

     

    - -

    - -

     

    - -

     See - Also a sample TUI Script of a Pattern - Mapping operation.  

    - -

     

    - - - - diff --git a/doc/salome/gui/SMESH/pics/dialog.png b/doc/salome/gui/SMESH/pics/dialog.png new file mode 100755 index 000000000..38ece87dc Binary files /dev/null and b/doc/salome/gui/SMESH/pics/dialog.png differ diff --git a/doc/salome/gui/SMESH/pics/eleminfo1.png b/doc/salome/gui/SMESH/pics/eleminfo1.png new file mode 100755 index 000000000..5e2c2a0c0 Binary files /dev/null and b/doc/salome/gui/SMESH/pics/eleminfo1.png differ diff --git a/doc/salome/gui/SMESH/pics/eleminfo2.png b/doc/salome/gui/SMESH/pics/eleminfo2.png new file mode 100755 index 000000000..3ff8d1d9c Binary files /dev/null and b/doc/salome/gui/SMESH/pics/eleminfo2.png differ diff --git a/doc/salome/gui/SMESH/pics/mergeelems.png b/doc/salome/gui/SMESH/pics/mergeelems.png index 9314da8c3..dbd87877e 100755 Binary files a/doc/salome/gui/SMESH/pics/mergeelems.png and b/doc/salome/gui/SMESH/pics/mergeelems.png differ diff --git a/doc/salome/gui/SMESH/presentation.htm b/doc/salome/gui/SMESH/presentation.htm deleted file mode 100755 index 21c5ae4cc..000000000 --- a/doc/salome/gui/SMESH/presentation.htm +++ /dev/null @@ -1,138 +0,0 @@ - - - - - -Presentation - - - - - - - - - - - - -

    Display Mode

    - -

    By default your objects are represented as set in Preferences.

    - -

    However, right-clicking on the mesh in the Object - Browser, and selecting Display - Mode, you can display your mesh as: -

    - -

     

    - -

    Wireframe -

    - -

    - -

     

    - -

    Shading

    - -

    - -

     

    - -

    or - Nodes.

    - -

    - -

     

    - -

    Wireframe can - combine with Nodes and - Shading.

    - -

     

    - -

    Shading - and Wireframe modes can combine - with Shrink, however - Nodes can't.

    - -

    - -

     

    - - - - diff --git a/doc/salome/gui/SMESH/prism_3d_algorithm.htm b/doc/salome/gui/SMESH/prism_3d_algorithm.htm deleted file mode 100644 index 9bdf4a4ef..000000000 --- a/doc/salome/gui/SMESH/prism_3d_algorithm.htm +++ /dev/null @@ -1,114 +0,0 @@ - - - - - -3D extrusion meshing algorithm - - - - - - - - - - - -

    3D extrusion meshing algorithm

    - -

    3D extrusion algorithm can be used for meshing prisms, i.e. -3D Shapes defined by - two opposing faces having the same number of vertices and edges and meshed using the - 2D Projection algorithm. These - two faces should be connected by quadrangle "side" faces.

    - -

    The opposing faces can be meshed with - either quadrangles or triangles, while the side faces should be meshed - with quadrangles only.

    - -

    - -

     

    - -

    As you can see, the 3D extrusion - algorithm permits to build and to have in the same 3D mesh such elements - as hexahedrons, prisms and polyhedrons.

    - - - - diff --git a/doc/salome/gui/SMESH/projection_algorithms.htm b/doc/salome/gui/SMESH/projection_algorithms.htm deleted file mode 100644 index 3e1059b6b..000000000 --- a/doc/salome/gui/SMESH/projection_algorithms.htm +++ /dev/null @@ -1,179 +0,0 @@ - - - - - -Projection Algorithms - - - - - - - - - - - -

    Projection Algorithms

    - -

    Projection algorithms allow - to define the mesh of a geometrical object by the projection of another - already meshed geometrical object.

    - -

     

    - -

    Projection - 1D algorithm permits to define the mesh of an edge by the projection - of another already meshed edge.

    - -

    To apply this algorithm - select the edge to be meshed (indicated in the field Geometry - of Create mesh dialog box), Projection 1D in the list of 1D algorithms - and click the button. The following dialog box will appear: -

    - -

    - -

    In this menu you can define the Name - of the algorithm, the algeady meshed source Edge - and the Mesh (optional, use it - if there are several different meshes on the same edge). It could also - be necessary to define the orientation of edges, which is done by indicating - the Source Vertex being the first - point of the Source Edge and the Target - Vertex being the first point of the created Edge.

    - -

    Projection 2D algorithm permits to define the mesh of a face - by the projection of another already meshed face. This algorithm works - only if all edges of the target - face have been meshed as 1D Projections of the edges of the source face.

    - -

    To apply this algorithm select the face to be meshed (indicated in the - field Geometry of - Create mesh dialog box), Projection - 2D in the list of 2D algorithms and click the button. - The following dialog box will appear:

    - -

    - -

    In this menu you can define the Name - of the algorithm, the algeady meshed source Face - and the Mesh (optional, use it - if there are several different meshes on the same face). It could also - be necessary to define the orientation of mesh on the face, which is done - by indicating two Source Vertices, which - belong to the same edge of the source - face, and two Target Vertices, - which belong to the same edge of the created - Face.

    - -

    Projection 3D algorithm permits - to define the mesh of a shape by the projection of another already meshed - shape.  This - algorithm works only if all faces and edges of the - target face have been meshed as 1D Projections of the faces and - edges of the source face. Another limitation is that this algorithm currently - works only on boxes.

    - -

    To apply this algorithm select the solid to be meshed (indicated in - the field Geometry of - Create mesh dialog box), Projection - 3D in the list of 3D algorithms and click the button. - The following dialog box will appear:

    - -

    - -

    In this menu you can define the Name - of the algorithm, the algeady meshed source 3D - shape and the Mesh (optional, - use it if there are several different meshes on the same shape). It could - also be necessary to define the orientation of mesh on the shape, which - is done by indicating two Source Vertices, - which belong to the same edge of the - source 3D Shape, and two Target Vertices, which belong to the - same edge of the source 3D Shape.

    - - - - diff --git a/doc/salome/gui/SMESH/quality_controls.htm b/doc/salome/gui/SMESH/quality_controls.htm deleted file mode 100755 index 064d7b9eb..000000000 --- a/doc/salome/gui/SMESH/quality_controls.htm +++ /dev/null @@ -1,1270 +0,0 @@ - - - - - -Quality Controls - - - - - - - - - - - -

    Quality Controls

    - -

    Free Borders

    - -

    import salome

    - -

    import geompy

    - -

     

    - -

    import smesh

    - -

     

    - -

    # create open shell: a - box without one plane

    - -

    box - = geompy.MakeBox(0., 0., 0., 20., 20., 15.)

    - -

    FaceList = geompy.SubShapeAll(box, - geompy.ShapeType["FACE"])

    - -

    FaceList.remove(FaceList[5])

    - -

    box = geompy.MakeShell(FaceList)

    - -

    idbox = geompy.addToStudy(box, - "box")

    - -

     

    - -

    # create a mesh

    - -

    mesh - = smesh.Mesh(box, "Mesh_free_borders")

    - -

    algo = mesh.Segment()

    - -

    algo.NumberOfSegments(5)

    - -

    algo = mesh.Triangle()

    - -

    algo.MaxElementArea(20.)

    - -

    mesh.Compute()

    - -

     

    - -

    # criterion : free borders

    - -

    aFilter - = smesh.GetFilter(smesh.EDGE, smesh.FT_FreeBorders)

    - -

    anIds = mesh.GetIdsFromFilter(aFilter)

    - -

     

    - -

     

    - -

    # print the result

    - -

    print "Criterion: - Free borders Nb = ", len(anIds)

    - -

    j = 1

    - -

    for i in range(len(anIds)):

    - -

      if - j > 20: j = 1; print ""

    - -

      print - anIds[i],

    - -

      j - = j + 1

    - -

      pass

    - -

    print ""

    - -

     

    - -

    # create a group

    - -

    aGroup = mesh.CreateGroup(SMESH.EDGE, - "Free borders")

    - -

    aGroup.Add(anIds)

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

    Borders at Multiconnection

    - -

    import salome

    - -

    import geompy

    - -

     

    - -

    import smesh

    - -

    import SMESH

    - -

     

    - -

    # create open shell: - a box without one plane

    - -

    box = geompy.MakeBox(0., - 0., 0., 20., 20., 15.)

    - -

    FaceList = geompy.SubShapeAll(box, - geompy.ShapeType["FACE"])

    - -

    FaceList.remove(FaceList[5])

    - -

    box = geompy.MakeShell(FaceList)

    - -

    idbox = geompy.addToStudy(box, - "box")

    - -

     

    - -

    # create a mesh

    - -

    mesh - = smesh.Mesh(box, "Mesh_borders_at_multi-connections")

    - -

    algo = mesh.Segment()

    - -

    algo.NumberOfSegments(5)

    - -

    algo = mesh.Triangle()

    - -

    algo.MaxElementArea(20.)

    - -

    mesh.Compute()

    - -

     

    - -

    # Criterion : Borders - at multi-connection

    - -

    nb_conn = 2

    - -

     

    - -

    aFilter - = smesh.GetFilter(smesh.EDGE, smesh.FT_MultiConnection, smesh.FT_EqualTo, - nb_conn)

    - -

    anIds = mesh.GetIdsFromFilter(aFilter)

    - -

     

    - -

     

    - -

    # print the result

    - -

    print "Criterion: - Borders at multi-connections Nb = ", len(anIds)

    - -

    j = 1

    - -

    for i in range(len(anIds)):

    - -

      if - j > 20: j = 1; print ""

    - -

      print - anIds[i],

    - -

      j - = j + 1

    - -

      pass

    - -

    print ""

    - -

     

    - -

    # create a group

    - -

    aGroup = mesh.CreateGroup(SMESH.EDGE, - "Borders at multi-connections")

    - -

    aGroup.Add(anIds)

    - -

    salome.sg.updateObjBrowser(1) -

    - -

    Length 1D

    - -

    import salome

    - -

    import geompy

    - -

     

    - -

    import smesh

    - -

     

    - -

    # create open shell: a - box without one plane

    - -

    box = geompy.MakeBox(0., - 0., 0., 20., 20., 15.)

    - -

    FaceList = geompy.SubShapeAll(box, - geompy.ShapeType["FACE"])

    - -

    FaceList.remove(FaceList[5])

    - -

    box = geompy.MakeShell(FaceList)

    - -

    idbox = geompy.addToStudy(box, - "box")

    - -

     

    - -

    # create a mesh

    - -

    mesh - = smesh.Mesh(box, "Mesh_Length_1D")

    - -

    algo = mesh.Segment()

    - -

    algo.NumberOfSegments(5)

    - -

    algo = mesh.Triangle()

    - -

    algo.MaxElementArea(20.)

    - -

    mesh.Compute()

    - -

     

    - -

    # Criterion : Length > - 3.

    - -

    length_margin = - 3.

    - -

     

    - -

    aFilter - = smesh.GetFilter(smesh.EDGE, smesh.FT_Length, smesh.FT_MoreThan, length_margin)

    - -

    anIds = mesh.GetIdsFromFilter(aFilter) -

    - -

     

    - -

    # print the result

    - -

    print "Criterion: - Edges length > ", length_margin, " Nb = ", len(anIds)

    - -

    j = 1

    - -

    for i in range(len(anIds)):

    - -

      if - j > 20: j = 1; print ""

    - -

      print - anIds[i],

    - -

      j - = j + 1

    - -

      pass

    - -

    print ""

    - -

     

    - -

    # create a group

    - -

    aGroup = mesh.CreateGroup(SMESH.EDGE, - "Edges with length > " + `length_margin`)

    - -

    aGroup.Add(anIds)

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

    Free Edges

    - -

    import SMESH_mechanic

    - -

     

    - -

    smesh  = - SMESH_mechanic.smesh

    - -

    mesh   = - SMESH_mechanic.mesh

    - -

    salome = SMESH_mechanic.salome

    - -

     

    - -

    aFilterMgr = smesh.CreateFilterManager()

    - -

     

    - -

    # Remove some elements - to obtain free edges

    - -

    # Criterion : AREA - > 95.

    - -

    area_margin = 95.

    - -

     

    - -

    aFilter - = smesh.GetFilter(smesh.FACE, smesh.FT_Area, smesh.FT_MoreThan, area_margin)

    - -

     

    - -

    anIds = mesh.GetIdsFromFilter(aFilter)

    - -

     

    - -

    mesh.RemoveElements(anIds)

    - -

     

    - -

    # Criterion : Free - Edges

    - -

    aBorders = mesh.GetFreeBorders() -

    - -

     

    - -

    # create groups

    - -

    aGroupF = mesh.CreateGroup(SMESH.FACE, - "Faces with free edges")

    - -

    aGroupN = mesh.CreateGroup(SMESH.NODE, - "Nodes on free edges")

    - -

     

    - -

    # fill groups with - elements, corresponding to the criterion

    - -

    print ""

    - -

    print "Criterion: - Free edges Nb = ", len(aBorders)

    - -

    for i in range(len(aBorders)):

    - -

      aBorder - = aBorders[i]

    - -

      print - "Face # ", aBorder.myElemId, " : Edge between nodes (",

    - -

      print - aBorder.myPnt1, ", ", aBorder.myPnt2, ")"

    - -

     

    - -

      aGroupF.Add([aBorder.myElemId])

    - -

      aGroupN.Add([aBorder.myPnt1, - aBorder.myPnt2])

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

     

    - -

    Length 2D

    - -

    import salome

    - -

    import geompy

    - -

     

    - -

    import smesh

    - -

     

    - -

    # create open shell: - a box without one plane

    - -

    box = geompy.MakeBox(0., - 0., 0., 20., 20., 15.)

    - -

    FaceList = geompy.SubShapeAll(box, - geompy.ShapeType["FACE"])

    - -

    FaceList.remove(FaceList[5])

    - -

    box = geompy.MakeShell(FaceList)

    - -

    idbox = geompy.addToStudy(box, - "box")

    - -

     

    - -

    # create a mesh

    - -

    mesh - = smesh.Mesh(box, "Mesh_Length_2D")

    - -

    algo = mesh.Segment()

    - -

    algo.NumberOfSegments(5)

    - -

    algo = mesh.Triangle()

    - -

    algo.MaxElementArea(20.)

    - -

    mesh.Compute()

    - -

     

    - -

    # Criterion : Length - 2D > 5.7

    - -

    length_margin = - 5.7

    - -

     

    - -

    aFilter - = smesh.GetFilter(smesh.FACE, smesh.FT_Length2D, smesh.FT_MoreThan, length_margin)

    - -

     

    - -

    anIds = mesh.GetIdsFromFilter(aFilter)

    - -

     

    - -

    # print the result

    - -

    print "Criterion: - Edges length 2D > ", length_margin, " Nb = ", len(anIds)

    - -

    j = 1

    - -

    for i in range(len(anIds)):

    - -

      if - j > 20: j = 1; print ""

    - -

      print - anIds[i],

    - -

      j - = j + 1

    - -

      pass

    - -

    print ""

    - -

     

    - -

    # create a group

    - -

    aGroup - = mesh.CreateEmptyGroup(smesh.FACE, "Faces with length 2D > " - + `length_margin`)

    - -

    aGroup.Add(anIds)

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

     

    - -

    Borders at Multiconnection 2D

    - -

    import salome

    - -

    import geompy

    - -

     

    - -

    import smesh

    - -

     

    - -

    # create a compound - of two glued boxes

    - -

    box1 = geompy.MakeBox(0., - 0., 0., 20., 20., 15.)

    - -

    box2 = geompy.MakeTranslation(box1, - 0., 20., 0)

    - -

    comp = geompy.MakeCompound([box1, - box2])

    - -

    box = geompy.MakeGlueFaces(comp, - 0.000001)

    - -

    idbox = geompy.addToStudy(box, - "box")

    - -

     

    - -

    # create a mesh

    - -

    mesh - = smesh.Mesh(box, "Box compound : 2D triangle mesh")

    - -

    algo = mesh.Segment()

    - -

    algo.NumberOfSegments(5)

    - -

    algo = mesh.Triangle()

    - -

    algo.MaxElementArea(20.)

    - -

    mesh.Compute()

    - -

     

    - -

    # Criterion : MULTI-CONNECTION - 2D = 3

    - -

    nb_conn = 3

    - -

     

    - -

    aFilter - = smesh.GetFilter(smesh.FACE, smesh.FT_MultiConnection2D, smesh.FT_EqualTo, - nb_conn)

    - -

     

    - -

    anIds = mesh.GetIdsFromFilter(aFilter) -

    - -

     

    - -

    # print the result

    - -

    print "Criterion: - Borders at multi-connection 2D = ", nb_conn, " Nb = ", - len(anIds)

    - -

    j = 1

    - -

    for i in range(len(anIds)):

    - -

      if - j > 20: j = 1; print ""

    - -

      print - anIds[i],

    - -

      j - = j + 1

    - -

      pass

    - -

    print ""

    - -

     

    - -

    # create a group

    - -

    aGroup - = mesh.CreateEmptyGroup(smesh.FACE, "Borders at multi-connection - 2D = " + `nb_conn`)

    - -

    aGroup.Add(anIds)

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

     

    - -

    Area

    - -

    import SMESH_mechanic

    - -

     

    - -

    smesh  = - SMESH_mechanic.smesh

    - -

    mesh   = - SMESH_mechanic.mesh

    - -

    salome = SMESH_mechanic.salome

    - -

     

    - -

    # Criterion : AREA > - 100.

    - -

    area_margin = 100.

    - -

     

    - -

    aFilter = smesh.GetFilter(smesh.FACE, - smesh.FT_Area, smesh.FT_MoreThan, area_margin)

    - -

     

    - -

    anIds = mesh.GetIdsFromFilter(aFilter) -

    - -

     

    - -

    # print the result

    - -

    print "Criterion: - Area > ", area_margin, " Nb = ", len(anIds)

    - -

    j = 1

    - -

    for i in range(len(anIds)):

    - -

      if - j > 20: j = 1; print ""

    - -

      print - anIds[i],

    - -

      j - = j + 1

    - -

      pass

    - -

    print ""

    - -

     

    - -

    # create a group

    - -

    aGroup = mesh.CreateEmptyGroup(smesh.FACE, - "Area > " + `area_margin`)

    - -

    aGroup.Add(anIds)

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -  

    - -

    Taper

    - -

    import SMESH_mechanic

    - -

     

    - -

    smesh  = - SMESH_mechanic.smesh

    - -

    mesh   = - SMESH_mechanic.mesh

    - -

    salome = SMESH_mechanic.salome

    - -

     

    - -

    # Criterion : Taper - > 3e-20

    - -

    taper_margin = 3e-20

    - -

     

    - -

    aFilter = smesh.GetFilter(smesh.FACE, - smesh.FT_Taper, smesh.FT_MoreThan, taper_margin)

    - -

     

    - -

    anIds = mesh.GetIdsFromFilter(aFilter) -

    - -

     

    - -

    # print the result

    - -

    print "Criterion: - Taper > ", taper_margin, " Nb = ", len(anIds)

    - -

    j = 1

    - -

    for i in range(len(anIds)):

    - -

      if - j > 20: j = 1; print ""

    - -

      print - anIds[i],

    - -

      j - = j + 1

    - -

      pass

    - -

    print ""

    - -

     

    - -

    # create a group

    - -

    aGroup - = mesh.CreateEmptyGroup(smesh.FACE, "Taper > " + `taper_margin`)

    - -

    aGroup.Add(anIds)

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -  

    - -

    Aspect Ratio

    - -

    import SMESH_mechanic

    - -

     

    - -

    smesh  = - SMESH_mechanic.smesh

    - -

    mesh   = - SMESH_mechanic.mesh

    - -

    salome = SMESH_mechanic.salome

    - -

     

    - -

    # Criterion : ASPECT - RATIO > 1.8

    - -

    ar_margin = 1.8

    - -

     

    - -

    aFilter - = smesh.GetFilter(smesh.FACE, smesh.FT_AspectRatio, smesh.FT_MoreThan, - ar_margin)

    - -

     

    - -

    anIds = mesh.GetIdsFromFilter(aFilter) -

    - -

     

    - -

    # print the result

    - -

    print "Criterion: - Aspect Ratio > ", ar_margin, " Nb = ", len(anIds)

    - -

    j = 1

    - -

    for i in range(len(anIds)):

    - -

      if - j > 20: j = 1; print ""

    - -

      print - anIds[i],

    - -

      j - = j + 1

    - -

      pass

    - -

    print ""

    - -

     

    - -

    # create a group

    - -

    aGroup - = mesh.CreateEmptyGroup(smesh.FACE, "Aspect Ratio > " + `ar_margin`)

    - -

    aGroup.Add(anIds)

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

     

    - -

    Minimum Angle

    - -

    import SMESH_mechanic

    - -

     

    - -

    smesh  = - SMESH_mechanic.smesh

    - -

    mesh   = - SMESH_mechanic.mesh

    - -

    salome = SMESH_mechanic.salome

    - -

     

    - -

    # Criterion : MINIMUM - ANGLE < 35.

    - -

    min_angle = 35.

    - -

     

    - -

    aFilter = smesh.GetFilter(smesh.FACE, - smesh.FT_MinimumAngle, smesh.FT_LessThan, min_angle)

    - -

     

    - -

    anIds = mesh.GetIdsFromFilter(aFilter) -

    - -

     

    - -

    # print the result

    - -

    print "Criterion: - Minimum Angle < ", min_angle, " Nb = ", len(anIds)

    - -

    j = 1

    - -

    for i in range(len(anIds)):

    - -

      if - j > 20: j = 1; print ""

    - -

      print - anIds[i],

    - -

      j - = j + 1

    - -

      pass

    - -

    print ""

    - -

     

    - -

    # create a group

    - -

    aGroup - = mesh.CreateEmptyGroup(smesh.FACE, "Minimum Angle < " + - `min_angle`)

    - -

     

    - -

    aGroup.Add(anIds)

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

     

    - -

    Warping

    - -

    import SMESH_mechanic

    - -

     

    - -

    smesh  = - SMESH_mechanic.smesh

    - -

    mesh   = - SMESH_mechanic.mesh

    - -

    salome = SMESH_mechanic.salome

    - -

     

    - -

    # Criterion : WARP - ANGLE > 1e-15

    - -

    wa_margin = 1e-15

    - -

     

    - -

    aFilter = smesh.GetFilter(smesh.FACE, - smesh.FT_Warping, smesh.FT_MoreThan, wa_margin)

    - -

     

    - -

    anIds = mesh.GetIdsFromFilter(aFilter) -

    - -

     

    - -

    # print the result

    - -

    print "Criterion: - Warp > ", wa_margin, " Nb = ", len(anIds)

    - -

    j = 1

    - -

    for i in range(len(anIds)):

    - -

      if - j > 20: j = 1; print ""

    - -

      print - anIds[i],

    - -

      j - = j + 1

    - -

      pass

    - -

    print ""

    - -

     

    - -

    # create a group

    - -

    aGroup = mesh.CreateEmptyGroup(smesh.FACE, - "Warp > " + `wa_margin`)

    - -

     

    - -

    aGroup.Add(anIds)

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

     

    - -

    Skew

    - -

    import SMESH_mechanic

    - -

     

    - -

    smesh  = - SMESH_mechanic.smesh

    - -

    mesh   = - SMESH_mechanic.mesh

    - -

    salome = SMESH_mechanic.salome

    - -

     

    - -

    # Criterion : Skew - > 38.

    - -

    skew_margin = 38.

    - -

     

    - -

    aFilter = smesh.GetFilter(smesh.FACE, - smesh.FT_Skew, smesh.FT_MoreThan, skew_margin)

    - -

     

    - -

    anIds = mesh.GetIdsFromFilter(aFilter)

    - -

     

    - -

    # print the result

    - -

    print "Criterion: - Skew > ", skew_margin, " Nb = ", len(anIds)

    - -

    j = 1

    - -

    for i in range(len(anIds)):

    - -

      if - j > 20: j = 1; print ""

    - -

      print - anIds[i],

    - -

      j - = j + 1

    - -

      pass

    - -

    print ""

    - -

     

    - -

    # create a group

    - -

    aGroup - = mesh.CreateEmptyGroup(smesh.FACE, "Skew > " + `skew_margin`)

    - -

    aGroup.Add(anIds)

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

     

    - -

    Aspect Ratio 3D

    - -

    import SMESH_mechanic_tetra -

    - -

     

    - -

    smesh  = - SMESH_mechanic_tetra.smesh

    - -

    mesh   = - SMESH_mechanic_tetra.mesh

    - -

    salome = SMESH_mechanic_tetra.salome

    - -

     

    - -

    # Criterion : ASPECT - RATIO 3D > 4.5

    - -

    ar_margin = 4.5

    - -

     

    - -

    aFilter = smesh.GetFilter(smesh.VOLUME, - smesh.FT_AspectRatio3D, smesh.FT_MoreThan, ar_margin)

    - -

     

    - -

    anIds = mesh.GetIdsFromFilter(aFilter) -

    - -

     

    - -

    # print the result

    - -

    print "Criterion: - Aspect Ratio 3D > ", ar_margin, " Nb = ", len(anIds)

    - -

    j = 1

    - -

    for i in range(len(anIds)):

    - -

      if - j > 20: j = 1; print ""

    - -

      print - anIds[i],

    - -

      j - = j + 1

    - -

      pass

    - -

    print ""

    - -

     

    - -

    # create a group

    - -

    aGroup = mesh.CreateEmptyGroup(smesh.VOLUME, - "Aspect Ratio 3D > " + `ar_margin`)

    - -

     

    - -

    aGroup.Add(anIds)

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

    Volume

    - -

    import SMESH_mechanic_tetra

    - -

     

    - -

    smesh  = - SMESH_mechanic_tetra.smesh

    - -

    mesh   = - SMESH_mechanic_tetra.mesh

    - -

    salome = SMESH_mechanic_tetra.salome

    - -

     

    - -

    # Criterion : VOLUME < - 7.

    - -

    volume_margin = - 7.

    - -

     

    - -

    aFilter = smesh.GetFilter(smesh.VOLUME, - smesh.FT_Volume3D, smesh.FT_LessThan, volume_margin)

    - -

     

    - -

    anIds = mesh.GetIdsFromFilter(aFilter) -

    - -

     

    - -

    # print the result

    - -

    print ""

    - -

    print "Criterion: - Volume < ", volume_margin, " Nb = ", len(anIds)

    - -

    j = 1

    - -

    for i in range(len(anIds)):

    - -

      if - j > 20: j = 1; print ""

    - -

      print - anIds[i],

    - -

      j - = j + 1

    - -

      pass

    - -

    print ""

    - -

     

    - -

    # create a group

    - -

    aGroup = mesh.CreateEmptyGroup(smesh.VOLUME, - "Volume < " + `volume_margin`)

    - -

     

    - -

    aGroup.Add(anIds)

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -  

    - - - - diff --git a/doc/salome/gui/SMESH/radial_prism.htm b/doc/salome/gui/SMESH/radial_prism.htm deleted file mode 100644 index 3ca448560..000000000 --- a/doc/salome/gui/SMESH/radial_prism.htm +++ /dev/null @@ -1,124 +0,0 @@ - - - - - -Radial Prism - - - - - - - - - - - -

    Radial Prism

    - -

    This algorithm applies to the meshing of a hollow 3D shape, i.e. such - shape should be composed of two meshed shells: an outer shell and an internal - shell without intersection with the outer shell. One of the shells should - be a 2D Projection of the other shell. The meshes of the shells can consist - both of triangles and quadrangles.

    - -

    The Radial Prism algorithm would fill the - space between the two shells with meshes.

    - -

    This algorithm also needs the information - concerning the number and distribution of mesh layers between the inner - and the outer shapes.

    - -

     

    - -

    Distribution of layers can be set with any - of 1D Hypotheses.

    - -

    - -

     

    - -

     

    - -

     

    - -

     

    - -

     

    - - - - diff --git a/doc/salome/gui/SMESH/revolution.htm b/doc/salome/gui/SMESH/revolution.htm deleted file mode 100755 index b5d7a667d..000000000 --- a/doc/salome/gui/SMESH/revolution.htm +++ /dev/null @@ -1,156 +0,0 @@ - - - - - -Revolution - - - - - - - - - - - - -

    Revolution

    - -

    Revolution is a type of surface meshing by generation from discretized - lines. It is used to build mesh elements of plus one dimension than the - swept ones. Each swept 1D element produces one or more quadrangles (or - triangles if one node of a rotated element lays on the revolution axis).

    - -

     

    - -

    To apply revolution:

    - -

     

    - -

    1. From the Modification - menu choose the Revolution item - or click button in the toolbar. The following dialog box - shall appear:

    - -

     

    - -

    - -

     

    - -

    - -

     

    - -

    2. In this dialog box you should specify:

    - -
      - -
    • the type of elements - which will be extruded (1D or 2D),

    • - -
    • specify the IDs of - the elements which will be revolved by selecting them in the 3D viewer - or select the whole mesh or submesh,

    • - -
    • specify the axis (point - and vector) around which the elements will be revolved,

    • - -
    • angle of rotation,

    • - -
    • number of steps,

    • - -
    • tolerance of rotation

    • -
    - -

     

    - -

    3. Click the Apply - or OK button.

    - -

     

    - -

    - -

     

    - -

     See - Also a sample TUI Script of a  Revolution - operation.  

    - -

     

    - - - - diff --git a/doc/salome/gui/SMESH/segments_around_vertex_algorithm.htm b/doc/salome/gui/SMESH/segments_around_vertex_algorithm.htm deleted file mode 100755 index 7e73af218..000000000 --- a/doc/salome/gui/SMESH/segments_around_vertex_algorithm.htm +++ /dev/null @@ -1,98 +0,0 @@ - - - - - -Segments around Vertex Algorithm - - - - - - - - - - -

    Segments around Vertex

    - -

    Segments around Vertex algorithm - is considered to be a 0D - meshing algorithm, but, of course, it doesn't mesh nodes. It allows to - define the local size of the elements in the neighborhood of a certain - node. If we choose an object of higher dimension, it applies to all its - tops, i.e. corners of a box.  The - 0D algorithm combines with the algorithms of higher dimensions, but it - is not necessarily required for their successful implementation.

    - -

    This algorithm allows only one hypothesis.

    - -

    - -

     

    - -

     

    - - - - diff --git a/doc/salome/gui/SMESH/selection_filter_library.htm b/doc/salome/gui/SMESH/selection_filter_library.htm deleted file mode 100755 index 2a2cb8d78..000000000 --- a/doc/salome/gui/SMESH/selection_filter_library.htm +++ /dev/null @@ -1,159 +0,0 @@ - - - - - -Selection filter library - - - - - - - - - - - - -

    Selection filter library

    - -

    Selection filter library is a powerful tool enabling to create filters - to be used on meshes. You can access to it from the Main Menu via Tools / Selection filter library.

    - -

     

    - -

    - -

     

    - -

    Library file name shows - the path and the file name where your filters will be stored. By clicking - the browse button - you can load an existing filter library.

    - -

    Names of filters lists the filters - created or uploaded for the current study. You can Add - or Delete filters.  

    - -

    In Filter name box you can specify - the name for your filter. By default it is prefixed with the corresponding - entity type.

    - -

    Each filter can be applicable to Nodes, - Edges, Faces or Volumes. - You can combine many criteria in one filter, but they all must be of the - same Entity type.

    - -

    The Add button creates a new - criterion at the end of the list of criteria. The Insert - button creates a new criterion before the selected criterion. The Remove button deletes the selected criterion. - The Clear button deletes all criteria. -  

    - -

    Each Entity type has its specific - list of criteria, however all filters have common syntax. For each criterion - you should specify the Threshold Value - and whether we search for the elements that should be More, - Less or Equal to this Value. - You should also specify if the criterion is Unary - or Binary.   

    - -

    Some criteria should have the additional parameter of Tolerance.

    - -

     

    - -

    When we create a Standalone Group - using filters (for this click Set Filters - button in the Create Group menu), - the menu for setting filters looks a bit differently. Toggling Insert - filter in viewer checkbox enables to preview the group selected - with your current filter in the viewer.

    - -

    In the Source field you choose - if the filter will be applied to the whole Mesh, - the Initial Selection or the Current Group.

    - -

    Copy from... button gives you - a possibility to load an existing filter from Selection - filter library and Add to... - button gives you a possibility to save your current filter in the Library. -  

    - -

     

    - -

    - - - - diff --git a/doc/salome/gui/SMESH/smesh.log b/doc/salome/gui/SMESH/smesh.log deleted file mode 100755 index 4222c00a5..000000000 --- a/doc/salome/gui/SMESH/smesh.log +++ /dev/null @@ -1,553 +0,0 @@ -|SourceProjectName:SMESH.hpr -|DestinationProjectName:index.htm -whhost.js -whmsg.js -whmozemu.js -whproxy.js -whstub.js -whutils.js -whver.js -whform.js -whphost.js -whstart.js -whtopic.js -whframes.js -whlang.js -whskin_info.htm -whskin_blank.htm -whskin_pickup.htm -whskin_homepage.htm -whskin_tw.htm -whnjs.htm -whthost.js -whtdhtml.htm -whihost.js -whibody.htm -whiform.htm -whfhost.js -whfbody.htm -whfform.htm -whghost.js -whgbody.htm -whgdhtml.htm -whgdef.htm -whproj.js -whproj.xml -whproj.htm -whxdata\whtoc.xml -whxdata\whidx.xml -whxdata\whfts.xml -whxdata\whglo.xml -whdata\whtoc.js -whdata\whtoc.htm -whdata\whtdata.js -whdata\whidx.js -whdata\whidx.htm -whdata\whidata.js -whdata\whfts.js -whdata\whfts.htm -whdata\whglo.js -whdata\whglo.htm -whdata\whgdata.js -whdata\whftdata.js -whdata\whfwdata.js -whres.xml -webhelp.jar -webhelp.cab -whgdata\whnvp30.htm -whgdata\whnvp31.htm -whgdata\whnvp32.htm -whgdata\whnvp33.htm -whgdata\whnvt30.htm -whgdata\whnvt31.htm -whgdata\whnvt32.htm -whgdata\whnvt33.htm -whgdata\whnvf30.htm -whgdata\whnvf31.htm -whgdata\whnvf32.htm -whgdata\whnvf33.htm -whgdata\whnvl31.htm -whgdata\whnvl32.htm -whgdata\whnvl33.htm -whgdata\whexpbar.gif -cshdat_webhelp.htm -whcsh_home.htm -whcshdata.htm -cshdat_robohelp.htm -whd_topic.xml -whd_nvp10.htm -whd_nvp20.htm -whd_tabs.htm -whd_dpns.htm -whd_tab0.gif -whd_tab1.gif -whd_tab2.gif -whd_tab3.gif -whd_tab4.gif -whd_tab5.gif -whd_tab6.gif -whd_tab7.gif -whd_tab8.gif -whd_toc1.gif -whd_toc2.gif -whd_toc3.gif -whd_toc4.gif -whd_show0.gif -whd_show1.gif -whd_show2.gif -whd_hide0.gif -whd_hide1.gif -whd_hide2.gif -whd_sync0.gif -whd_sync1.gif -whd_sync2.gif -whd_prev0.gif -whd_prev1.gif -whd_prev2.gif -whd_next0.gif -whd_next1.gif -whd_next2.gif -whd_wbsh0.gif -whd_wbsh1.gif -whd_wbsh2.gif -whidhtml.htm -whfdhtml.htm -index_hha.hhk -index.hhc -index.hhk -about_viewing_meshes.htm -adding_quadratic_nodes_and_elements.htm -aspect_ratio_3d.htm -borders_at_multi-connection.htm -borders_at_multiconnection_2d.htm -building_compounds.htm -clipping.htm -constructing_meshes.htm -convert_to_from_quadratic_mesh.htm -defining_hypotheses_tui.htm -deleting_groups.htm -display_entity.htm -extrusion.htm -extrusion_along_a_path.htm -files\about_hypotheses.htm -files\about_meshes.htm -files\about_meshing_algorithms.htm -files\about_quality_controls.htm -files\adding_nodes_and_elements.htm -files\area_of_elements.htm -files\arithmetic_1d.htm -files\aspect_ratio.htm -files\changing_orientation_of_elements.htm -files\constructing_groups_of_specific_elements.htm -files\constructing_meshes.htm -files\constructing_submeshes.htm -files\creating_groups.htm -files\cutting_quadrangles.htm -files\diagonal_iversion_of_elements.htm -files\displacing_nodes.htm -files\displaying_nodes_numbers.htm -files\editing_groups.htm -files\importing_and_exporting_meshes.htm -files\length_of_edges.htm -files\max._element_area_hypothesis.htm -files\max._element_volume_hypothsis.htm -files\merging_nodes.htm -files\minimum_angle.htm -files\non_conform_mesh_allowed_hypothesis.htm -files\reassigning_hypotheses_and_algorithms.htm -files\removing_nodes_and_elements.htm -files\renumbering_nodes_and_elements.htm -files\rotation.htm -files\running_smesh_module.htm -files\sewing_meshes.htm -files\skew.htm -files\smoothing.htm -files\symmetry.htm -files\taper.htm -files\translation.htm -files\uniting_a_set_of_triangles.htm -files\uniting_two_triangles.htm -files\using_operations_on_groups.htm -files\viewing_mesh_info.htm -files\vtk_3d_viewer.htm -files\warp.htm -free_borders.htm -free_edges.htm -grouping_elements.htm -length.htm -merge_elements.htm -mesh.htm -mesh_through_point.htm -modifying_meshes.htm -namespacesmesh.html -netgen_2d_and_3d_hypotheses.htm -pattern_mapping.htm -presentation.htm -prism_3d_algorithm.htm -projection_algorithms.htm -quality_controls.htm -radial_prism.htm -revolution.htm -segments_around_vertex_algorithm.htm -selection_filter_library.htm -smesh.py_introduction.htm -transforming_meshes.htm -transparency.htm -viewing_meshes.htm -volume.htm -ehelp.xml -texture_horiz_ltbluebubbles.jpg -index.glo -default.css -pics\curvi_simple_after.png -pics\image89.gif -pics\image100.gif -pics\image78.gif -pics\image23.gif -pics\b-mesh_infos.png -pics\remove_nodes2.png -pics\moving_nodes1.png -pics\smoothing2.png -pics\a-maxelarea.png -pics\patternmapping1.png -image94.jpg -image106.gif -image91.gif -image80.gif -pics\distributionwithtabledensity.png -pics\moving_nodes2.png -image7.jpg -pics\patternmapping2.png -pics\extrusionalongaline1.png -pics\addquadrangle.png -image95.jpg -pics\sewing1.png -image92.gif -image51.jpg -image70.gif -pics\meshtopass.png -pics\image157.gif -pics\extrusion1.png -pics\curvi_angles_after.png -pics\straight_before.png -pics\image102.gif -pics\length2d.png -pics\free_borders1.png -pics\a-creategroup.png -pics\a-startendlength.png -pics\a-patterntype.png -pics\extrusionalongaline2.png -pics\orientaation1.png -pics\unionoftwotriangles.png -image96.jpg -pics\sewing2.png -image119.gif -image108.gif -image52.jpg -image82.gif -image71.gif -image30.jpg -pics\lengthnearvertex.png -pics\straight_after.png -pics\cut_groups1.png -pics\uniting_a_set_of_triangles1.png -pics\b-erage_length.png -pics\removeelements.png -image97.jpg -pics\sewing3.png -image86.jpg -image50.gif -image94.gif -image83.gif -image31.jpg -pics\aqt.png -pics\distributionwithanalyticdensity.png -pics\meshexportmesh.png -pics\image27.gif -pics\cut_groups2.png -pics\edit_mesh_change_value_hyp.png -pics\add_node.png -pics\uniting_a_set_of_triangles2.png -pics\max_el_area.png -image10.jpg -pics\a-filteronedges.png -pics\revolution1.png -pics\addhexahedron.png -pics\addtriangle.png -pics\editgroup.png -pics\sewing4.png -image95.gif -image76.jpg -image84.gif -image32.jpg -image40.gif -i_blue.jpg -image160.gif -pics\number_of_layers.png -pics\netgen2d.png -pics\mesh_for_extr_along_path.png -pics\meshtrianglemergeelem1.png -pics\image138.gif -pics\cut_groups3.png -pics\revolution2.png -pics\renumberelements.png -pics\intersectgroups.png -image88.jpg -image30.gif -image96.gif -image77.jpg -image74.gif -image63.gif -image22.jpg -image41.gif -image161.gif -pics\createmesh-inv.png -pics\image139.gif -pics\b-art_end_length.png -pics\b-mberofsegments.png -pics\b-flection1d.png -pics\a-unionoftriangles.png -image56.jpg -image53.gif -image20.gif -image97.gif -image78.jpg -image64.gif -image23.jpg -pics\buildcompound.png -pics\projection_3d.png -image151.gif -pics\selectionfilterlibrary.png -pics\intersect_groups1.png -pics\create_group.png -pics\add_triangle.png -pics\add_edge.png -pics\rotation1.png -pics\merging_nodes1.png -pics\translation1.png -pics\cutgroups.png -image79.jpg -image98.gif -image32.gif -pics\projection_2d.png -pics\advanced_mesh_infos.png -pics\image108.gif -pics\image91.gif -image152.gif -pics\automaticlength.png -pics\intersect_groups2.png -image130.gif -pics\rotation2.png -pics\merging_nodes2.png -pics\a-cuttingofquadrangles.png -pics\a-transparency.png -pics\a-viewgeneral.png -pics\smoothing.png -pics\translation2.png -image99.gif -image55.gif -image88.gif -image36.jpg -image33.gif -image25.jpg -pics\projection_1d.png -pics\view_rotation_point.png -image153.gif -pics\image109.gif -image15.jpg -image142.gif -pics\intersect_groups3.png -image131.gif -pics\edit_mesh1.png -pics\b-ithmetic1d.png -pics\mergenodes.png -pics\rotation.png -pics\addnode.png -image120.gif -image56.gif -image37.jpg -image67.gif -image34.gif -pics\convert.png -image154.gif -pics\edge_wire_3d_after.png -pics\graduatedaxes1.png -pics\length-crit.png -image143.gif -pics\editing_groups1.png -image132.gif -pics\a-maxelvolume.png -pics\a-averagelength.png -pics\movenodes.png -pics\removenodes.png -pics\addtetrahedron.png -pics\uniongroups.png -image121.gif -image79.gif -image38.jpg -image46.gif -image35.gif -image27.jpg -image24.gif -note1.gif -pics\distribution_of_layers.png -image155.gif -pics\edge_wire_after.png -pics\edge_wire_before.png -image144.gif -pics\deletegroups.png -pics\editing_groups2.png -image133.gif -pics\add_polyhedron.png -pics\addedge.png -pics\creategroup.png -image122.gif -image58.gif -image36.gif -image25.gif -image156.gif -pics\circle_simple_after.png -image145.gif -image134.gif -pics\edit_mesh_remove_hyp.png -pics\a-patterntype1.png -image123.gif -image101.gif -image37.gif -image157.gif -pics\image96.gif -image146.gif -pics\meshimportmesh.png -image135.gif -pics\uniting_two_triangles1.png -pics\a-nbsegments1.png -pics\a-arithmetic1d.png -pics\symmetry1.png -image90.jpg -image124.gif -image49.gif -pics\exemple.gif -image38.gif -pics\set_rotation_point_dialog1.png -pics\image97.gif -image147.gif -pics\union_groups1.png -image136.gif -pics\free_edges.png -pics\uniting_two_triangles2.png -pics\a-nbsegments2.png -pics\symmetry2.png -image125.gif -image103.gif -image39.gif -image28.gif -image159.gif -pics\set_rotation_point_dialog2.png -pics\circle_angles_after.png -pics\createmesh-inv2.png -pics\image98.gif -pics\mergeelems.png -image148.gif -pics\image21.gif -pics\union_groups2.png -image137.gif -pics\add_quadrangle.png -pics\remove_elements1.png -pics\a-createpolyhedralvolume.png -pics\a-clipping2.png -pics\a-deflection1d.png -pics\diagonalinversion.png -pics\symmetry3.png -pics\renumbernodes.png -image92.jpg -image126.gif -image18.gif -image70.jpg -pics\circle_simple_before.png -pics\edge_wire_3d_before.png -pics\curvi_simple_before.png -pics\createmesh-inv3.png -pics\image99.gif -pics\image77.gif -pics\union_groups3.png -pics\add_polygone.png -pics\remove_elements2.png -pics\remove_nodes1.png -pics\smoothing1.png -pics\a-standmeshinfo.png -pics\addpolygon.png -image5.jpg -image127.gif -image93.jpg -image105.gif -image19.gif -image71.jpg -index.ppf -ehlpdhtm.js -default_ns.css -whxdata\whtdata0.xml -whxdata\whftdata0.xml -whxdata\whfwdata0.xml -whxdata\whgdata0.xml -whdata\whtdata0.htm -whdata\whftdata0.htm -whdata\whfwdata0.htm -whdata\whgdata0.htm -whgdata\whlstt0.htm -whgdata\whlstt1.htm -whgdata\whlstt2.htm -whgdata\whlstt3.htm -whgdata\whlstt4.htm -whgdata\whlstt5.htm -whgdata\whlstt6.htm -whgdata\whlstt7.htm -whgdata\whlstt8.htm -whgdata\whlstt9.htm -whgdata\whlstt10.htm -whgdata\whlsti0.htm -whgdata\whlstfl0.htm -whgdata\whlstfl1.htm -whgdata\whlstfl2.htm -whgdata\whlstfl3.htm -whgdata\whlstfl4.htm -whgdata\whlstfl5.htm -whgdata\whlstfl6.htm -whgdata\whlstfl7.htm -whgdata\whlstfl8.htm -whgdata\whlstfl9.htm -whgdata\whlstfl10.htm -whgdata\whlstfl11.htm -whgdata\whlstfl12.htm -whgdata\whlstfl13.htm -whgdata\whlstfl14.htm -whgdata\whlstfl15.htm -whgdata\whlstfl16.htm -whgdata\whlstfl17.htm -whgdata\whlstfl18.htm -whgdata\whlstfl19.htm -whgdata\whlstfl20.htm -whgdata\whlstfl21.htm -whgdata\whlstfl22.htm -whgdata\whlstfl23.htm -whgdata\whlstfl24.htm -whgdata\whlstfl25.htm -whgdata\whlstfl26.htm -whgdata\whlstf0.htm -whgdata\whlstf1.htm -whgdata\whlstf2.htm -whgdata\whlstf3.htm -whgdata\whlstf4.htm -whgdata\whlstf5.htm -whgdata\whlstf6.htm -whgdata\whlstf7.htm -whgdata\whlstf8.htm -whgdata\whlstf9.htm -whgdata\whlstf10.htm -whgdata\whlstf11.htm -whgdata\whlstf12.htm -whgdata\whlstf13.htm -whgdata\whlstf14.htm -whgdata\whlstg0.htm -index.htm -index_csh.htm -index_rhc.htm diff --git a/doc/salome/gui/SMESH/smesh.py_introduction.htm b/doc/salome/gui/SMESH/smesh.py_introduction.htm deleted file mode 100644 index fc3d04835..000000000 --- a/doc/salome/gui/SMESH/smesh.py_introduction.htm +++ /dev/null @@ -1,270 +0,0 @@ - - - - - -smesh.py_introduction - - - - - - - - - - - -

    Introduction to MESH module python interface

    - -

    Package smesh provides - a standard API for creation and edition of meshes .

    - -

    Below you can see an example - of usage of the package smesh for 3d mesh generation.

    - -

      

    - -

    Example of 3d mesh generation - with NETGEN

    - -

    from geompy import *

    - -

    import - smesh

    - -

    # Geometry

    - -

    # an assembly of a box, - a cylinder and a truncated cone meshed with tetrahedral.

    - -

     

    - -

    # Define values

    - -

    name = "ex21_lamp" -

    - -

    cote = 60

    - -

    section = 20

    - -

    size = 200

    - -

    radius_1 = 80

    - -

    radius_2 = 40

    - -

    height - = 100

    - -

     

    - -

    # Build a box

    - -

    box = MakeBox(-cote, - -cote, -cote, +cote, +cote, +cote)

    - -

     

    - -

    # Build a cylinder

    - -

    pt1 = MakeVertex(0, - 0, cote/3)

    - -

    di1 = MakeVectorDXDYDZ(0, - 0, 1)

    - -

    cyl - = MakeCylinder(pt1, di1, section, size)

    - -

     

    - -

    # Build a truncated cone -

    - -

    pt2 = MakeVertex(0, - 0, size)

    - -

    cone - = MakeCone(pt2, di1, radius_1, radius_2, height)

    - -

     

    - -

    # Fuse

    - -

    box_cyl = MakeFuse(box, - cyl)

    - -

    piece - = MakeFuse(box_cyl, cone)

    - -

     

    - -

    # Add in study

    - -

    addToStudy(piece, - name)

    - -

     

    - -

    # Create a group of faces -

    - -

    group = CreateGroup(piece, - ShapeType["FACE"])

    - -

    group_name = name - + "_grp"

    - -

    addToStudy(group, - group_name)

    - -

    group.SetName(group_name) -

    - -

     

    - -

    # Add faces in the group -

    - -

    faces = SubShapeAllIDs(piece, - ShapeType["FACE"])

    - -

    UnionIDs(group, - faces)

    - -

     

    - -

    # Create a mesh

    - -

     

    - -

    # Define a mesh on a geometry -

    - -

    tetra = smesh.Mesh(piece, - name)

    - -

     

    - -

    # Define 1D hypothesis -

    - -

    algo1d = tetra.Segment() -

    - -

    algo1d.LocalLength(10) -

    - -

     

    - -

    # Define 2D hypothesis -

    - -

    algo2d = tetra.Triangle() -

    - -

    algo2d.LengthFromEdges() -

    - -

     

    - -

    # Define 3D hypothesis -

    - -

    algo3d = tetra.Tetrahedron(smesh.NETGEN) -

    - -

    algo3d.MaxElementVolume(100) -

    - -

     

    - -

    # Compute the mesh

    - -

    tetra.Compute() -

    - -

     

    - -

    # Create a groupe of faces -

    - -

    tetra.Group(group) -

    - - - - diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh.html new file mode 100644 index 000000000..a9096b2e6 --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh.html @@ -0,0 +1,6622 @@ + + + + + + Main Page + + + + +  + + + + +

    smeshDC.Mesh Class Reference

    Class to define a mesh. +More... +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Member Functions

    def __init__
     Constructor.
    def SetMesh
     Method that inits the Mesh object from SMESH_Mesh interface.
    def GetMesh
     Method that returns the mesh.
    def GetName
     Get mesh name.
    def SetName
     Set name to mesh.
    def GetSubMesh
     Get the subMesh object associated to a subShape.
    def GetShape
     Method that returns the shape associated to the mesh.
    def SetShape
     Method that associates given shape to the mesh(entails the mesh recreation).
    def IsReadyToCompute
     Return true if hypotheses are defined well.
    def GetAlgoState
     Return errors of hypotheses definintion error list is empty if everything is OK.
    def GetGeometryByMeshElement
     Return geometrical object the given element is built on.
    def MeshDimension
     Returns mesh dimension depending on shape one.
    def Segment
     Creates a segment discretization 1D algorithm.
    def Triangle
     Creates a triangle 2D algorithm for faces.
    def Quadrangle
     Creates a quadrangle 2D algorithm for faces.
    def Tetrahedron
     Creates a tetrahedron 3D algorithm for solids.
    def Hexahedron
     Creates a hexahedron 3D algorithm for solids.
    def Netgen
     Deprecated, only for compatibility!
    def Projection1D
     Creates a projection 1D algorithm for edges.
    def Projection2D
     Creates a projection 2D algorithm for faces.
    def Projection3D
     Creates a projection 3D algorithm for solids.
    def Prism
     Creates a 3D extrusion (Prism 3D) or RadialPrism 3D algorithm for solids.
    def Compute
     Compute the mesh and return the status of the computation.
    def AutomaticTetrahedralization
     Compute tetrahedral mesh using AutomaticLength + MEFISTO + NETGEN The parameter fineness [0,-1] defines mesh fineness.
    def AutomaticHexahedralization
     Compute hexahedral mesh using AutomaticLength + Quadrangle + Hexahedron The parameter fineness [0,-1] defines mesh fineness.
    def AddHypothesis
     Assign hypothesis.
    def GetHypothesisList
     Get the list of hypothesis added on a geom.
    def RemoveGlobalHypotheses
     Removes all global hypotheses.
    def Group
     Create a mesh group based on geometric object grp and give a name,
    + if this parameter is not defined the name is the same as the geometric group name
    + Note: Works like GroupOnGeom().
    def ExportToMED
     Deprecated, only for compatibility! Please, use ExportMED() method instead.
    def ExportMED
     Export the mesh in a file with the MED format.
    def ExportDAT
     Export the mesh in a file with the DAT format.
    def ExportUNV
     Export the mesh in a file with the UNV format.
    def ExportSTL
     Export the mesh in a file with the STL format.
    def CreateEmptyGroup
     Creates an empty mesh group.
    def GroupOnGeom
     Creates a mesh group based on geometric object grp and give a name,
    + if this parameter is not defined the name is the same as the geometric group name.
    def MakeGroupByIds
     Create a mesh group by the given ids of elements.
    def MakeGroup
     Create a mesh group by the given conditions.
    def MakeGroupByCriterion
     Create a mesh group by the given criterion.
    def MakeGroupByCriteria
     Create a mesh group by the given criteria(list of criterions).
    def MakeGroupByFilter
     Create a mesh group by the given filter.
    def GetIdsFromFilter
     Pass mesh elements through the given filter and return ids.
    def GetFreeBorders
     Verify whether 2D mesh element has free edges(edges connected to one face only)
    + Returns list of special structures(borders).
    def RemoveGroup
     Remove a group.
    def RemoveGroupWithContents
     Remove group with its contents.
    def GetGroups
     Get the list of groups existing in the mesh.
    def GetGroupNames
     Get the list of names of groups existing in the mesh.
    def UnionGroups
     Union of two groups New group is created.
    def IntersectGroups
     Intersection of two groups New group is created.
    def CutGroups
     Cut of two groups New group is created.
    def GetLog
     Get the log of nodes and elements added or removed since previous clear of the log.
    def ClearLog
     Clear the log of nodes and elements added or removed since previous clear.
    def GetId
     Get the internal Id.
    def GetStudyId
     Get the study Id.
    def HasDuplicatedGroupNamesMED
     Check group names for duplications.
    def GetMeshEditor
     Obtain instance of SMESH_MeshEditor.
    def GetMEDMesh
     Get MED Mesh.
    def NbNodes
     Returns number of nodes in mesh.
    def NbElements
     Returns number of elements in mesh.
    def NbEdges
     Returns number of edges in mesh.
    def NbEdgesOfOrder
     Returns number of edges with given order in mesh.
    def NbFaces
     Returns number of faces in mesh.
    def NbFacesOfOrder
     Returns number of faces with given order in mesh.
    def NbTriangles
     Returns number of triangles in mesh.
    def NbTrianglesOfOrder
     Returns number of triangles with given order in mesh.
    def NbQuadrangles
     Returns number of quadrangles in mesh.
    def NbQuadranglesOfOrder
     Returns number of quadrangles with given order in mesh.
    def NbPolygons
     Returns number of polygons in mesh.
    def NbVolumes
     Returns number of volumes in mesh.
    def NbVolumesOfOrder
     Returns number of volumes with given order in mesh.
    def NbTetras
     Returns number of tetrahedrons in mesh.
    def NbTetrasOfOrder
     Returns number of tetrahedrons with given order in mesh.
    def NbHexas
     Returns number of hexahedrons in mesh.
    def NbHexasOfOrder
     Returns number of hexahedrons with given order in mesh.
    def NbPyramids
     Returns number of pyramids in mesh.
    def NbPyramidsOfOrder
     Returns number of pyramids with given order in mesh.
    def NbPrisms
     Returns number of prisms in mesh.
    def NbPrismsOfOrder
     Returns number of prisms with given order in mesh.
    def NbPolyhedrons
     Returns number of polyhedrons in mesh.
    def NbSubMesh
     Returns number of submeshes in mesh.
    def GetElementsId
     Returns list of mesh elements ids.
    def GetElementsByType
     Returns list of ids of mesh elements with given type.
    def GetNodesId
     Returns list of mesh nodes ids.
    def GetElementType
     Returns type of mesh element.
    def GetSubMeshElementsId
     Returns list of submesh elements ids.
    def GetSubMeshNodesId
     Returns list of submesh nodes ids.
    def GetSubMeshElementType
     Returns list of ids of submesh elements with given type.
    def Dump
     Get mesh description.
    def GetNodeXYZ
     Get XYZ coordinates of node as list of double
    + If there is not node for given ID - returns empty list.
    def GetNodeInverseElements
     For given node returns list of IDs of inverse elements
    + If there is not node for given ID - returns empty list.
    def GetShapeID
     If given element is node returns IDs of shape from position
    + If there is not node for given ID - returns -1.
    def GetShapeIDForElem
     For given element returns ID of result shape after FindShape() from SMESH_MeshEditor
    + If there is not element for given ID - returns -1.
    def GetElemNbNodes
     Returns number of nodes for given element
    + If there is not element for given ID - returns -1.
    def GetElemNode
     Returns ID of node by given index for given element
    + If there is not element for given ID - returns -1
    + If there is not node for given index - returns -2.
    def IsMediumNode
     Returns true if given node is medium node in given quadratic element.
    def IsMediumNodeOfAnyElem
     Returns true if given node is medium node in one of quadratic elements.
    def ElemNbEdges
     Returns number of edges for given element.
    def ElemNbFaces
     Returns number of faces for given element.
    def IsPoly
     Returns true if given element is polygon.
    def IsQuadratic
     Returns true if given element is quadratic.
    def BaryCenter
     Returns XYZ coordinates of bary center for given element as list of double
    + If there is not element for given ID - returns empty list.
    def RemoveElements
     Removes elements from mesh by ids.
    def RemoveNodes
     Removes nodes from mesh by ids.
    def AddNode
     Add node to mesh by coordinates.
    def AddEdge
     Create edge both similar and quadratic (this is determed by number of given nodes).
    def AddFace
     Create face both similar and quadratic (this is determed by number of given nodes).
    def AddPolygonalFace
     Add polygonal face to mesh by list of nodes ids.
    def AddVolume
     Create volume both similar and quadratic (this is determed by number of given nodes).
    def AddPolyhedralVolume
     Create volume of many faces, giving nodes for each face.
    def AddPolyhedralVolumeByFaces
     Create volume of many faces, giving IDs of existing faces.
    def MoveNode
     Move node with given id.
    def FindNodeClosestTo
     Find a node closest to a point.
    def MeshToPassThroughAPoint
     Find a node closest to a point and move it to a point location.
    def InverseDiag
     Replace two neighbour triangles sharing Node1-Node2 link with ones built on the same 4 nodes but having other common link.
    def DeleteDiag
     Replace two neighbour triangles sharing Node1-Node2 link with a quadrangle built on the same 4 nodes.
    def Reorient
     Reorient elements by ids.
    def ReorientObject
     Reorient all elements of the object.
    def TriToQuad
     Fuse neighbour triangles into quadrangles.
    def TriToQuadObject
     Fuse neighbour triangles of the object into quadrangles.
    def QuadToTri
     Split quadrangles into triangles.
    def QuadToTriObject
     Split quadrangles into triangles.
    def SplitQuad
     Split quadrangles into triangles.
    def SplitQuadObject
     Split quadrangles into triangles.
    def BestSplit
     Find better splitting of the given quadrangle.
    def SplitQuadsNearTriangularFacets
     Split quafrangle faces near triangular facets of volumes.
    def SplitHexaToTetras
     Split hexahedrons into tetrahedrons.
    def SplitHexaToPrisms
     Split hexahedrons into prisms.
    def Smooth
     Smooth elements.
    def SmoothObject
     Smooth elements belong to given object.
    def SmoothParametric
     Parametric smooth the given elements.
    def SmoothParametricObject
     Parametric smooth elements belong to given object.
    def ConvertToQuadratic
     Converts all mesh to quadratic one, deletes old elements, replacing them with quadratic ones with the same id.
    def ConvertFromQuadratic
     Converts all mesh from quadratic to ordinary ones, deletes old quadratic elements,
    + replacing them with ordinary mesh elements with the same id.
    def RenumberNodes
     Renumber mesh nodes.
    def RenumberElements
     Renumber mesh elements.
    def RotationSweep
     Generate new elements by rotation of the elements around the axis.
    def RotationSweepObject
     Generate new elements by rotation of the elements of object around the axis.
    def ExtrusionSweep
     Generate new elements by extrusion of the elements with given ids.
    def AdvancedExtrusion
     Generate new elements by extrusion of the elements with given ids.
    def ExtrusionSweepObject
     Generate new elements by extrusion of the elements belong to object.
    def ExtrusionSweepObject1D
     Generate new elements by extrusion of the elements belong to object.
    def ExtrusionSweepObject2D
     Generate new elements by extrusion of the elements belong to object.
    def ExtrusionAlongPath
     Generate new elements by extrusion of the given elements A path of extrusion must be a meshed edge.
    def ExtrusionAlongPathObject
     Generate new elements by extrusion of the elements belong to object A path of extrusion must be a meshed edge.
    def Mirror
     Symmetrical copy of mesh elements.
    def MirrorObject
     Symmetrical copy of object.
    def Translate
     Translates the elements.
    def TranslateObject
     Translates the object.
    def Rotate
     Rotates the elements.
    def RotateObject
     Rotates the object.
    def FindCoincidentNodes
     Find group of nodes close to each other within Tolerance.
    def FindCoincidentNodesOnPart
     Find group of nodes close to each other within Tolerance.
    def MergeNodes
     Merge nodes.
    def FindEqualElements
     Find elements built on the same nodes.
    def MergeElements
     Merge elements in each given group.
    def MergeEqualElements
     Remove all but one of elements built on the same nodes.
    def SewFreeBorders
     Sew free borders.
    def SewConformFreeBorders
     Sew conform free borders.
    def SewBorderToSide
     Sew border to side.
    def SewSideElements
     Sew two sides of a mesh.
    def ChangeElemNodes
     Set new nodes for given element.
    def GetLastCreatedNodes
     If during last operation of MeshEditor some nodes were created this method returns list of it's IDs,
    + if new nodes not created - returns empty list.
    def GetLastCreatedElems
     If during last operation of MeshEditor some elements were created this method returns list of it's IDs,
    + if new elements not creared - returns empty list.

    Data Fields

     smeshpyD
     geompyD
     geom
     mesh
     editor

    Static Public Attributes

    int geom = 0
    int mesh = 0
    int editor = 0
    +


    Detailed Description

    +The class contains mesh shape, SMESH_Mesh, SMESH_MeshEditor More details. +

    +


    Member Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.__init__ (  self,
      smeshpyD,
      geompyD,
      obj = 0,
      name = 0 
    )
    +
    +
    + +

    +Creates mesh on the shape geom(or the empty mesh if geom equal to 0), sets GUI name of this mesh to name.

    Parameters:
    + + + +
    obj Shape to be meshed or SMESH_Mesh object
    name Study name of the mesh
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.SetMesh (  self,
      theMesh 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    theMesh is SMESH_Mesh object
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.GetMesh (  self  ) 
    +
    +
    + +

    +

    Returns:
    SMESH_Mesh object
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.GetName (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.SetName (  self,
      name 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetSubMesh (  self,
      theSubObject,
      name 
    )
    +
    +
    + +

    +The subMesh object gives access to nodes and elements IDs.
    + SubMesh will be used instead of SubShape in a next idl version to adress a specific subMesh... +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.GetShape (  self  ) 
    +
    +
    + +

    +

    Returns:
    GEOM_Object
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.SetShape (  self,
      geom 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    geom shape to be meshed(GEOM_Object)
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.IsReadyToCompute (  self,
      theSubObject 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    theMesh is an instance of Mesh class
    theSubObject subshape of a mesh shape
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetAlgoState (  self,
      theSubObject 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    theMesh is an instance of Mesh class
    theSubObject subshape of a mesh shape
    +
    +
    Returns:
    a list of errors
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetGeometryByMeshElement (  self,
      theElementID,
      theGeomName 
    )
    +
    +
    + +

    +The returned geometrical object, if not nil, is either found in the study or is published by this method with the given name

    Parameters:
    + + + + +
    theMesh is an instance of Mesh class
    theElementID an id of the mesh element
    theGeomName user defined name of geometrical object
    +
    +
    Returns:
    GEOM.GEOM_Object instance
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.MeshDimension (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Segment (  self,
      algo = REGULAR,
      geom = 0 
    )
    +
    +
    + +

    +If the optional algo parameter is not sets, this algorithm is REGULAR. If the optional geom parameter is not sets, this algorithm is global.
    + Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    + + + +
    algo values are smesh.REGULAR or smesh.PYTHON for discretization via python function
    geom If defined, subshape to be meshed
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Triangle (  self,
      algo = MEFISTO,
      geom = 0 
    )
    +
    +
    + +

    +If the optional geom parameter is not sets, this algorithm is global.
    + Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    + + + +
    algo values are: smesh.MEFISTO or smesh.NETGEN
    geom If defined, subshape to be meshed
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Quadrangle (  self,
      geom = 0 
    )
    +
    +
    + +

    +If the optional geom parameter is not sets, this algorithm is global.
    + Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    + + +
    geom If defined, subshape to be meshed
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Tetrahedron (  self,
      algo = NETGEN,
      geom = 0 
    )
    +
    +
    + +

    +The parameter algo permits to choice the algorithm: NETGEN or GHS3D If the optional geom parameter is not sets, this algorithm is global.
    + Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    + + + +
    algo values are: smesh.NETGEN, smesh.GHS3D, smesh.FULL_NETGEN
    geom If defined, subshape to be meshed
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Hexahedron (  self,
      geom = 0 
    )
    +
    +
    + +

    +If the optional geom parameter is not sets, this algorithm is global.
    + Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    + + +
    geom If defined, subshape to be meshed
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Netgen (  self,
      is3D,
      geom = 0 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Projection1D (  self,
      geom = 0 
    )
    +
    +
    + +

    +If the optional geom parameter is not sets, this algorithm is global. Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    + + +
    geom If defined, subshape to be meshed
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Projection2D (  self,
      geom = 0 
    )
    +
    +
    + +

    +If the optional geom parameter is not sets, this algorithm is global. Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    + + +
    geom If defined, subshape to be meshed
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Projection3D (  self,
      geom = 0 
    )
    +
    +
    + +

    +If the optional geom parameter is not sets, this algorithm is global. Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    + + +
    geom If defined, subshape to be meshed
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Prism (  self,
      geom = 0 
    )
    +
    +
    + +

    +If the optional geom parameter is not sets, this algorithm is global. Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    + + +
    geom If defined, subshape to be meshed
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Compute (  self,
      geom = 0 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.AutomaticTetrahedralization (  self,
      fineness = 0 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.AutomaticHexahedralization (  self,
      fineness = 0 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.AddHypothesis (  self,
      hyp,
      geom = 0 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    hyp is a hypothesis to assign
    geom is subhape of mesh geometry
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetHypothesisList (  self,
      geom 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    geom is subhape of mesh geometry
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.RemoveGlobalHypotheses (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Group (  self,
      grp,
      name = "" 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    grp is a geometric group, a vertex, an edge, a face or a solid
    name is the name of the mesh group
    +
    +
    Returns:
    SMESH_GroupOnGeom
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.ExportToMED (  self,
      f,
      version,
      opt = 0 
    )
    +
    +
    + +

    +Export the mesh in a file with the MED format and choice the version of MED format

    Parameters:
    + + + +
    f is the file name
    version values are SMESH.MED_V2_1, SMESH.MED_V2_2
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.ExportMED (  self,
      f,
      auto_groups = 0,
      version = MED_V2_2 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + +
    f is the file name
    auto_groups boolean parameter for creating/not creating the groups Group_On_All_Nodes, Group_On_All_Faces, ... ; the typical use is auto_groups=false.
    version MED format version(MED_V2_1 or MED_V2_2)
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.ExportDAT (  self,
      f 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    f is the file name
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.ExportUNV (  self,
      f 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    f is the file name
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.ExportSTL (  self,
      f,
      ascii = 1 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    f is the file name
    ascii defined the kind of file contents
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.CreateEmptyGroup (  self,
      elementType,
      name 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    elementType is the type of elements in the group
    name is the name of the mesh group
    +
    +
    Returns:
    SMESH_Group
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GroupOnGeom (  self,
      grp,
      name = "",
      typ = None 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    grp is a geometric group, a vertex, an edge, a face or a solid
    name is the name of the mesh group
    +
    +
    Returns:
    SMESH_GroupOnGeom
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.MakeGroupByIds (  self,
      groupName,
      elementType,
      elemIDs 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + +
    groupName is the name of the mesh group
    elementType is the type of elements in the group
    elemIDs is the list of ids
    +
    +
    Returns:
    SMESH_Group
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.MakeGroup (  self,
      groupName,
      elementType,
      CritType = FT_Undefined,
      Compare = FT_EqualTo,
      Treshold = "",
      UnaryOp = FT_Undefined 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + + + +
    groupName is the name of the mesh group
    elementType is the type of elements in the group
    CritType is type of criterion( FT_Taper, FT_Area, FT_RangeOfIds, FT_LyingOnGeom etc. )
    Compare belong to {FT_LessThan, FT_MoreThan, FT_EqualTo}
    Treshold is threshold value (range of id ids as string, shape, numeric)
    UnaryOp is FT_LogicalNOT or FT_Undefined
    +
    +
    Returns:
    SMESH_Group
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.MakeGroupByCriterion (  self,
      groupName,
      Criterion 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    groupName is the name of the mesh group
    Criterion is the instance of Criterion class
    +
    +
    Returns:
    SMESH_Group
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.MakeGroupByCriteria (  self,
      groupName,
      theCriteria 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    groupName is the name of the mesh group
    Criteria is the list of criterions
    +
    +
    Returns:
    SMESH_Group
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.MakeGroupByFilter (  self,
      groupName,
      theFilter 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    groupName is the name of the mesh group
    Criterion is the instance of Filter class
    +
    +
    Returns:
    SMESH_Group
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetIdsFromFilter (  self,
      theFilter 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    theFilter is SMESH_Filter
    +
    +
    Returns:
    list of ids
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.GetFreeBorders (  self  ) 
    +
    +
    + +

    +

    Returns:
    list of SMESH.FreeEdges.Border structure: edge id and two its nodes ids.
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.RemoveGroup (  self,
      group 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.RemoveGroupWithContents (  self,
      group 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.GetGroups (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.GetGroupNames (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.UnionGroups (  self,
      group1,
      group2,
      name 
    )
    +
    +
    + +

    +All mesh elements that are present in initial groups are added to the new one +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.IntersectGroups (  self,
      group1,
      group2,
      name 
    )
    +
    +
    + +

    +All mesh elements that are present in both initial groups are added to the new one. +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.CutGroups (  self,
      mainGroup,
      toolGroup,
      name 
    )
    +
    +
    + +

    +All mesh elements that are present in main group but do not present in tool group are added to the new one +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetLog (  self,
      clearAfterGet 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    clearAfterGet log is emptied after Get (safe if concurrents access)
    +
    +
    Returns:
    list of log_block structures: commandType number coords indexes
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.ClearLog (  self  ) 
    +
    +
    + +

    +Must be used immediately after GetLog if clearAfterGet is false. +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.GetId (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.GetStudyId (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.HasDuplicatedGroupNamesMED (  self  ) 
    +
    +
    + +

    +Consider maximum group name length stored in MED file. +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.GetMeshEditor (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.GetMEDMesh (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.NbNodes (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.NbElements (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.NbEdges (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.NbEdgesOfOrder (  self,
      elementOrder 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.NbFaces (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.NbFacesOfOrder (  self,
      elementOrder 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.NbTriangles (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.NbTrianglesOfOrder (  self,
      elementOrder 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.NbQuadrangles (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.NbQuadranglesOfOrder (  self,
      elementOrder 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.NbPolygons (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.NbVolumes (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.NbVolumesOfOrder (  self,
      elementOrder 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.NbTetras (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.NbTetrasOfOrder (  self,
      elementOrder 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.NbHexas (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.NbHexasOfOrder (  self,
      elementOrder 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.NbPyramids (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.NbPyramidsOfOrder (  self,
      elementOrder 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.NbPrisms (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.NbPrismsOfOrder (  self,
      elementOrder 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.NbPolyhedrons (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.NbSubMesh (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.GetElementsId (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetElementsByType (  self,
      elementType 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    elementType is required type of elements
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.GetNodesId (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetElementType (  self,
      id,
      iselem 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetSubMeshElementsId (  self,
      shapeID 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    shapeID is geom object(subshape) IOR
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetSubMeshNodesId (  self,
      shapeID,
      all 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    shapeID is geom object(subshape) IOR
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetSubMeshElementType (  self,
      shapeID 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    shapeID is geom object(subshape) IOR
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.Dump (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetNodeXYZ (  self,
      id 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetNodeInverseElements (  self,
      id 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetShapeID (  self,
      id 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetShapeIDForElem (  self,
      id 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetElemNbNodes (  self,
      id 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.GetElemNode (  self,
      id,
      index 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.IsMediumNode (  self,
      elementID,
      nodeID 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.IsMediumNodeOfAnyElem (  self,
      nodeID,
      elementType 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.ElemNbEdges (  self,
      id 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.ElemNbFaces (  self,
      id 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.IsPoly (  self,
      id 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.IsQuadratic (  self,
      id 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.BaryCenter (  self,
      id 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.RemoveElements (  self,
      IDsOfElements 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    IDsOfElements is list of ids of elements to remove
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.RemoveNodes (  self,
      IDsOfNodes 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    IDsOfNodes is list of ids of nodes to remove
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.AddNode (  self,
      x,
      y,
      z 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.AddEdge (  self,
      IDsOfNodes 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    IdsOfNodes List of node IDs for creation of element. Needed order of nodes in this list corresponds to description of MED.
    + This description is located by the following link: http://www.salome-platform.org/salome2/web_med_internet/logiciels/medV2.2.2_doc_html/html/modele_de_donnees.html#3.
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.AddFace (  self,
      IDsOfNodes 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    IdsOfNodes List of node IDs for creation of element. Needed order of nodes in this list corresponds to description of MED.
    + This description is located by the following link: http://www.salome-platform.org/salome2/web_med_internet/logiciels/medV2.2.2_doc_html/html/modele_de_donnees.html#3.
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.AddPolygonalFace (  self,
      IdsOfNodes 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.AddVolume (  self,
      IDsOfNodes 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    IdsOfNodes List of node IDs for creation of element. Needed order of nodes in this list corresponds to description of MED.
    + This description is located by the following link: http://www.salome-platform.org/salome2/web_med_internet/logiciels/medV2.2.2_doc_html/html/modele_de_donnees.html#3.
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.AddPolyhedralVolume (  self,
      IdsOfNodes,
      Quantities 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    IdsOfNodes List of node IDs for volume creation face by face.
    Quantities List of integer values, Quantities[i] gives quantity of nodes in face number i.
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.AddPolyhedralVolumeByFaces (  self,
      IdsOfFaces 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    IdsOfFaces List of face IDs for volume creation.
    +
    +Note: The created volume will refer only to nodes of the given faces, not to the faces itself. +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.MoveNode (  self,
      NodeID,
      x,
      y,
      z 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + +
    NodeID id of the node
    x new X coordinate
    y new Y coordinate
    z new Z coordinate
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.FindNodeClosestTo (  self,
      x,
      y,
      z 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + +
    x X coordinate of a point
    y Y coordinate of a point
    z Z coordinate of a point
    +
    +
    Returns:
    id of a node
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.MeshToPassThroughAPoint (  self,
      x,
      y,
      z 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + +
    x X coordinate of a point
    y Y coordinate of a point
    z Z coordinate of a point
    +
    +
    Returns:
    id of a moved node
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.InverseDiag (  self,
      NodeID1,
      NodeID2 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    NodeID1 first node id
    NodeID2 second node id
    +
    +
    Returns:
    false if proper faces not found
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.DeleteDiag (  self,
      NodeID1,
      NodeID2 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    NodeID1 first node id
    NodeID2 second node id
    +
    +
    Returns:
    false if proper faces not found
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Reorient (  self,
      IDsOfElements = None 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    IDsOfElements if undefined reorient all mesh elements
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.ReorientObject (  self,
      theObject 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    theObject is mesh, submesh or group
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.TriToQuad (  self,
      IDsOfElements,
      theCriterion,
      MaxAngle 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + +
    IDsOfElements The triangles to be fused,
    theCriterion is FT_...; used to choose a neighbour to fuse with.
    MaxAngle is a max angle between element normals at which fusion is still performed; theMaxAngle is mesured in radians.
    +
    +
    Returns:
    TRUE in case of success, FALSE otherwise.
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.TriToQuadObject (  self,
      theObject,
      theCriterion,
      MaxAngle 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + +
    theObject is mesh, submesh or group
    theCriterion is FT_...; used to choose a neighbour to fuse with.
    MaxAngle is a max angle between element normals at which fusion is still performed; theMaxAngle is mesured in radians.
    +
    +
    Returns:
    TRUE in case of success, FALSE otherwise.
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.QuadToTri (  self,
      IDsOfElements,
      theCriterion 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + +
    IDsOfElements the faces to be splitted.
    theCriterion is FT_...; used to choose a diagonal for splitting.
     TRUE in case of success, FALSE otherwise.
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.QuadToTriObject (  self,
      theObject,
      theCriterion 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    theObject object to taking list of elements from, is mesh, submesh or group
    theCriterion is FT_...; used to choose a diagonal for splitting.
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.SplitQuad (  self,
      IDsOfElements,
      Diag13 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    theElems The faces to be splitted
    the13Diag is used to choose a diagonal for splitting.
    +
    +
    Returns:
    TRUE in case of success, FALSE otherwise.
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.SplitQuadObject (  self,
      theObject,
      Diag13 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    theObject is object to taking list of elements from, is mesh, submesh or group
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.BestSplit (  self,
      IDOfQuad,
      theCriterion 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    IDOfQuad ID of the quadrangle to be splitted.
    theCriterion is FT_...; a criterion to choose a diagonal for splitting.
    +
    +
    Returns:
    1 if 1-3 diagonal is better, 2 if 2-4 diagonal is better, 0 if error occurs.
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.SplitQuadsNearTriangularFacets (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.SplitHexaToTetras (  self,
      theObject,
      theNode000,
      theNode001 
    )
    +
    +
    + +

    +Use pattern mapping functionality for splitting.

    Parameters:
    + + + + +
    theObject object to take list of hexahedrons from; is mesh, submesh or group.
    theNode000,theNode001 is in range [0,7]; give an orientation of the pattern relatively each hexahedron: the (0,0,0) key-point of pattern will be mapped into <theNode000>-th node of each volume, the (0,0,1) key-point will be mapped into <theNode001>-th node of each volume. The (0,0,0) key-point of used pattern corresponds to not split corner.
     TRUE in case of success, FALSE otherwise.
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.SplitHexaToPrisms (  self,
      theObject,
      theNode000,
      theNode001 
    )
    +
    +
    + +

    +Use pattern mapping functionality for splitting.

    Parameters:
    + + + + +
    theObject object to take list of hexahedrons from; is mesh, submesh or group.
    theNode000,theNode001 is in range [0,7]; give an orientation of the pattern relatively each hexahedron: the (0,0,0) key-point of pattern will be mapped into <theNode000>-th node of each volume, the (0,0,1) key-point will be mapped into <theNode001>-th node of each volume. The edge (0,0,0)-(0,0,1) of used pattern connects two not split corners.
     TRUE in case of success, FALSE otherwise.
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Smooth (  self,
      IDsOfElements,
      IDsOfFixedNodes,
      MaxNbOfIterations,
      MaxAspectRatio,
      Method 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + + +
    IDsOfElements list if ids of elements to smooth
    IDsOfFixedNodes list of ids of fixed nodes. Note that nodes built on edges and boundary nodes are always fixed.
    MaxNbOfIterations maximum number of iterations
    MaxAspectRatio varies in range [1.0, inf]
    Method is Laplacian(LAPLACIAN_SMOOTH) or Centroidal(CENTROIDAL_SMOOTH)
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.SmoothObject (  self,
      theObject,
      IDsOfFixedNodes,
      MaxNbOfIterations,
      MaxxAspectRatio,
      Method 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + + +
    theObject object to smooth
    IDsOfFixedNodes list of ids of fixed nodes. Note that nodes built on edges and boundary nodes are always fixed.
    MaxNbOfIterations maximum number of iterations
    MaxAspectRatio varies in range [1.0, inf]
    Method is Laplacian(LAPLACIAN_SMOOTH) or Centroidal(CENTROIDAL_SMOOTH)
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.SmoothParametric (  self,
      IDsOfElements,
      IDsOfFixedNodes,
      MaxNbOfIterations,
      MaxAspectRatio,
      Method 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + + +
    IDsOfElements list if ids of elements to smooth
    IDsOfFixedNodes list of ids of fixed nodes. Note that nodes built on edges and boundary nodes are always fixed.
    MaxNbOfIterations maximum number of iterations
    MaxAspectRatio varies in range [1.0, inf]
    Method is Laplacian(LAPLACIAN_SMOOTH) or Centroidal(CENTROIDAL_SMOOTH)
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.SmoothParametricObject (  self,
      theObject,
      IDsOfFixedNodes,
      MaxNbOfIterations,
      MaxAspectRatio,
      Method 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + + +
    theObject object to smooth
    IDsOfFixedNodes list of ids of fixed nodes. Note that nodes built on edges and boundary nodes are always fixed.
    MaxNbOfIterations maximum number of iterations
    MaxAspectRatio varies in range [1.0, inf]
    Method is Laplacian(LAPLACIAN_SMOOTH) or Centroidal(CENTROIDAL_SMOOTH)
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.ConvertToQuadratic (  self,
      theForce3d 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.ConvertFromQuadratic (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.RenumberNodes (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.RenumberElements (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.RotationSweep (  self,
      IDsOfElements,
      Axix,
      AngleInRadians,
      NbOfSteps,
      Tolerance 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + + +
    IDsOfElements list of ids of elements to sweep
    Axix axis of rotation, AxisStruct or line(geom object)
    AngleInRadians angle of Rotation
    NbOfSteps number of steps
    Tolerance tolerance
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.RotationSweepObject (  self,
      theObject,
      Axix,
      AngleInRadians,
      NbOfSteps,
      Tolerance 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + + +
    theObject object wich elements should be sweeped
    Axix axis of rotation, AxisStruct or line(geom object)
    AngleInRadians angle of Rotation
    NbOfSteps number of steps
    Tolerance tolerance
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.ExtrusionSweep (  self,
      IDsOfElements,
      StepVector,
      NbOfSteps 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + +
    IDsOfElements list of elements ids for extrusion
    StepVector vector, defining the direction and value of extrusion
    NbOfSteps the number of steps
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.AdvancedExtrusion (  self,
      IDsOfElements,
      StepVector,
      NbOfSteps,
      ExtrFlags,
      SewTolerance 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + + +
    IDsOfElements is ids of elements
    StepVector vector, defining the direction and value of extrusion
    NbOfSteps the number of steps
    ExtrFlags set flags for performing extrusion
    SewTolerance uses for comparing locations of nodes if flag EXTRUSION_FLAG_SEW is set
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.ExtrusionSweepObject (  self,
      theObject,
      StepVector,
      NbOfSteps 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + +
    theObject object wich elements should be processed
    StepVector vector, defining the direction and value of extrusion
    NbOfSteps the number of steps
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.ExtrusionSweepObject1D (  self,
      theObject,
      StepVector,
      NbOfSteps 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + +
    theObject object wich elements should be processed
    StepVector vector, defining the direction and value of extrusion
    NbOfSteps the number of steps
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.ExtrusionSweepObject2D (  self,
      theObject,
      StepVector,
      NbOfSteps 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + +
    theObject object wich elements should be processed
    StepVector vector, defining the direction and value of extrusion
    NbOfSteps the number of steps
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.ExtrusionAlongPath (  self,
      IDsOfElements,
      PathMesh,
      PathShape,
      NodeStart,
      HasAngles,
      Angles,
      HasRefPoint,
      RefPoint,
      LinearVariation = False 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + + + + + + +
    IDsOfElements is ids of elements
    PathMesh mesh containing a 1D sub-mesh on the edge, along which proceeds the extrusion
    PathShape is shape(edge); as the mesh can be complex, the edge is used to define the sub-mesh for the path
    NodeStart the first or the last node on the edge. It is used to define the direction of extrusion
    HasAngles allows the shape to be rotated around the path to get the resulting mesh in a helical fashion
    Angles list of angles
    HasRefPoint allows to use base point
    RefPoint point around which the shape is rotated(the mass center of the shape by default). User can specify any point as the Base Point and the shape will be rotated with respect to this point.
    LinearVariation makes compute rotation angles as linear variation of given Angles along path steps
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.ExtrusionAlongPathObject (  self,
      theObject,
      PathMesh,
      PathShape,
      NodeStart,
      HasAngles,
      Angles,
      HasRefPoint,
      RefPoint,
      LinearVariation = False 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + + + + + + +
    IDsOfElements is ids of elements
    PathMesh mesh containing a 1D sub-mesh on the edge, along which proceeds the extrusion
    PathShape is shape(edge); as the mesh can be complex, the edge is used to define the sub-mesh for the path
    NodeStart the first or the last node on the edge. It is used to define the direction of extrusion
    HasAngles allows the shape to be rotated around the path to get the resulting mesh in a helical fashion
    Angles list of angles
    HasRefPoint allows to use base point
    RefPoint point around which the shape is rotated(the mass center of the shape by default). User can specify any point as the Base Point and the shape will be rotated with respect to this point.
    LinearVariation makes compute rotation angles as linear variation of given Angles along path steps
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Mirror (  self,
      IDsOfElements,
      Mirror,
      theMirrorType,
      Copy = 0 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + +
    IDsOfElements list of elements ids
    Mirror is AxisStruct or geom object(point, line, plane)
    theMirrorType is POINT, AXIS or PLANE If the Mirror is geom object this parameter is unnecessary
    Copy allows to copy element(Copy is 1) or to replace with its mirroring(Copy is 0)
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.MirrorObject (  self,
      theObject,
      Mirror,
      theMirrorType,
      Copy = 0 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + +
    theObject mesh, submesh or group
    Mirror is AxisStruct or geom object(point, line, plane)
    theMirrorType is POINT, AXIS or PLANE If the Mirror is geom object this parameter is unnecessary
    Copy allows to copy element(Copy is 1) or to replace with its mirroring(Copy is 0)
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Translate (  self,
      IDsOfElements,
      Vector,
      Copy 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + +
    IDsOfElements list of elements ids
    Vector direction of translation(DirStruct or vector)
    Copy allows to copy the translated elements
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.TranslateObject (  self,
      theObject,
      Vector,
      Copy 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + +
    theObject object to translate(mesh, submesh, or group)
    Vector direction of translation(DirStruct or geom vector)
    Copy allows to copy the translated elements
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.Rotate (  self,
      IDsOfElements,
      Axis,
      AngleInRadians,
      Copy 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + +
    IDsOfElements list of elements ids
    Axis axis of rotation(AxisStruct or geom line)
    AngleInRadians angle of rotation(in radians)
    Copy allows to copy the rotated elements
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.RotateObject (  self,
      theObject,
      Axis,
      AngleInRadians,
      Copy 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + +
    theObject object to rotate(mesh, submesh, or group)
    Axis axis of rotation(AxisStruct or geom line)
    AngleInRadians angle of rotation(in radians)
    Copy allows to copy the rotated elements
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.FindCoincidentNodes (  self,
      Tolerance 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    Tolerance tolerance value
    list of group of nodes
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.FindCoincidentNodesOnPart (  self,
      SubMeshOrGroup,
      Tolerance 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + +
    Tolerance tolerance value
    SubMeshOrGroup SubMesh or Group
    list of group of nodes
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.MergeNodes (  self,
      GroupsOfNodes 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    list of group of nodes
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.FindEqualElements (  self,
      MeshOrSubMeshOrGroup 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    MeshOrSubMeshOrGroup Mesh or SubMesh, or Group of elements for searching
    +
    +
    Returns:
    a list of groups of equal elements
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.MergeElements (  self,
      GroupsOfElementsID 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    GroupsOfElementsID groups of elements for merging
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.MergeEqualElements (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.SewFreeBorders (  self,
      FirstNodeID1,
      SecondNodeID1,
      LastNodeID1,
      FirstNodeID2,
      SecondNodeID2,
      LastNodeID2,
      CreatePolygons,
      CreatePolyedrs 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.SewConformFreeBorders (  self,
      FirstNodeID1,
      SecondNodeID1,
      LastNodeID1,
      FirstNodeID2,
      SecondNodeID2 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.SewBorderToSide (  self,
      FirstNodeIDOnFreeBorder,
      SecondNodeIDOnFreeBorder,
      LastNodeIDOnFreeBorder,
      FirstNodeIDOnSide,
      LastNodeIDOnSide,
      CreatePolygons,
      CreatePolyedrs 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.SewSideElements (  self,
      IDsOfSide1Elements,
      IDsOfSide2Elements,
      NodeID1OfSide1ToMerge,
      NodeID1OfSide2ToMerge,
      NodeID2OfSide1ToMerge,
      NodeID2OfSide2ToMerge 
    )
    +
    +
    + +

    +Nodes belonging to Side1 are merged with nodes of elements of Side2. Number of elements in theSide1 and in theSide2 must be equal and they should have similar node connectivity. The nodes to merge should belong to sides borders and the first node should be linked to the second. +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh.ChangeElemNodes (  self,
      ide,
      newIDs 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    ide the element id
    newIDs nodes ids
    +
    +
    Returns:
    If number of nodes is not corresponded to type of element - returns false
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.GetLastCreatedNodes (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh.GetLastCreatedElems (  self  ) 
    +
    +
    + +

    + +

    +

    +


    Field Documentation

    + +
    +
    + + + + +
    int smeshDC.Mesh.geom = 0 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.Mesh.mesh = 0 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.Mesh.editor = 0 [static]
    +
    +
    + +

    + +

    +

    + +

    + +
    + +

    + +

    +

    + +

    + +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh.geom
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh.mesh
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh.editor
    +
    +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Algorithm.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Algorithm.html new file mode 100644 index 000000000..eb602f62b --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Algorithm.html @@ -0,0 +1,408 @@ + + + + + + Main Page + + + + +  + + + + +

    smeshDC.Mesh_Algorithm Class Reference

    Mother class to define algorithm, recommended to don't use directly. +More... +

    +Inheritance diagram for smeshDC.Mesh_Algorithm:

    Inheritance graph
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Member Functions

    def __init__
    def GetSubMesh
     If the algorithm is global, return 0;
    + else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     smesh
     mesh
     geom
     subm
     algo
    +

    Detailed Description

    +More details. +

    +


    Member Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.__init__ (  self,
      smesh 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetSubMesh (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetAlgorithm (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetCompatibleHypothesis (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetName (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.SetName (  self,
      name 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetId (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Create (  self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so" 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Hypothesis (  self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so" 
    )
    +
    +
    + +

    + +

    +

    +


    Field Documentation

    + +
    + +
    + +

    + +

    +

    + +

    + +
    + +

    + +

    +

    + +

    + +
    + +

    + +

    +Reimplemented in smeshDC.Mesh_Segment. +

    +

    + +

    + +
    + +

    + +

    +

    + +

    + +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Algorithm__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Algorithm__inherit__graph.jpg new file mode 100644 index 000000000..0380c6a14 Binary files /dev/null and b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Algorithm__inherit__graph.jpg differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__CompositeSegment.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__CompositeSegment.html new file mode 100644 index 000000000..1cd07fcc5 --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__CompositeSegment.html @@ -0,0 +1,772 @@ + + + + + + Main Page + + + + +  + + + + +

    smeshDC.Mesh_CompositeSegment Class Reference

    Class to define a segment 1D algorithm for discretization. +More... +

    +Inheritance diagram for smeshDC.Mesh_CompositeSegment:

    Inheritance graph
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Member Functions

    def __init__
     Private constructor.
    def __init__
    def LocalLength
     Define "LocalLength" hypothesis to cut an edge in several segments with the same length.
    def NumberOfSegments
     Define "NumberOfSegments" hypothesis to cut an edge in several fixed number of segments.
    def Arithmetic1D
     Define "Arithmetic1D" hypothesis to cut an edge in several segments with arithmetic length increasing.
    def StartEndLength
     Define "StartEndLength" hypothesis to cut an edge in several segments with geometric length increasing.
    def Deflection1D
     Define "Deflection1D" hypothesis.
    def Propagation
     Define "Propagation" hypothesis that propagate all other hypothesis on all others edges that are in the opposite side in the case of quadrangular faces.
    def AutomaticLength
     Define "AutomaticLength" hypothesis.
    def LengthNearVertex
     Define "SegmentLengthAroundVertex" hypothesis.
    def QuadraticMesh
     Define "QuadraticMesh" hypothesis, forcing construction of quadratic edges.
    def GetSubMesh
     If the algorithm is global, return 0;
    + else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     geom
     smesh
     mesh
     subm
     algo
    +

    Detailed Description

    +More details. +

    +


    Member Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_CompositeSegment.__init__ (  self,
      mesh,
      geom = 0 
    )
    +
    +
    + +

    + +

    +Reimplemented from smeshDC.Mesh_Segment. +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.__init__ (  self,
      smesh 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.LocalLength (  self,
      l 
    ) [inherited]
    +
    +
    + +

    +

    Parameters:
    + + +
    l for the length of segments that cut an edge
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.NumberOfSegments (  self,
      n,
      s = [] 
    ) [inherited]
    +
    +
    + +

    +

    Parameters:
    + + + +
    n for the number of segments that cut an edge
    s for the scale factor (optional)
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.Arithmetic1D (  self,
      start,
      end 
    ) [inherited]
    +
    +
    + +

    +

    Parameters:
    + + + +
    start for the length of the first segment
    end for the length of the last segment
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.StartEndLength (  self,
      start,
      end 
    ) [inherited]
    +
    +
    + +

    +

    Parameters:
    + + + +
    start for the length of the first segment
    end for the length of the last segment
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.Deflection1D (  self,
      d 
    ) [inherited]
    +
    +
    + +

    +

    Parameters:
    + + +
    d for the deflection
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Segment.Propagation (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.AutomaticLength (  self,
      fineness = 0 
    ) [inherited]
    +
    +
    + +

    +

    Parameters:
    + + +
    fineness for the fineness [0-1]
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.LengthNearVertex (  self,
      length,
      vertex = 0 
    ) [inherited]
    +
    +
    + +

    +

    Parameters:
    + + + +
    length for the segment length
    vertex for the length localization: vertex index [0,1] | verext object
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Segment.QuadraticMesh (  self  )  [inherited]
    +
    +
    + +

    +If the 2D mesher sees that all boundary edges are quadratic ones, it generates quadratic faces, else it generates linear faces using medium nodes as if they were vertex ones. The 3D mesher generates quadratic volumes only if all boundary faces are quadratic ones, else it fails. +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetSubMesh (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetAlgorithm (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetCompatibleHypothesis (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetName (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.SetName (  self,
      name 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetId (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Create (  self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Hypothesis (  self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    +


    Field Documentation

    + +
    +
    + + + + +
    smeshDC.Mesh_Segment.geom [inherited]
    +
    +
    + +

    + +

    +Reimplemented from smeshDC.Mesh_Algorithm. +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.smesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.mesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.subm [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.algo [inherited]
    +
    +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__CompositeSegment__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__CompositeSegment__inherit__graph.jpg new file mode 100644 index 000000000..7d2fc4773 Binary files /dev/null and b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__CompositeSegment__inherit__graph.jpg differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Hexahedron.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Hexahedron.html new file mode 100644 index 000000000..0cd821ddb --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Hexahedron.html @@ -0,0 +1,436 @@ + + + + + + Main Page + + + + +  + + + + +

    smeshDC.Mesh_Hexahedron Class Reference

    Class to define a hexahedron 3D algorithm. +More... +

    +Inheritance diagram for smeshDC.Mesh_Hexahedron:

    Inheritance graph
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Member Functions

    def __init__
     Private constructor.
    def __init__
    def GetSubMesh
     If the algorithm is global, return 0;
    + else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     smesh
     mesh
     geom
     subm
     algo
    +

    Detailed Description

    +More details. +

    +


    Member Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Hexahedron.__init__ (  self,
      mesh,
      geom = 0 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.__init__ (  self,
      smesh 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetSubMesh (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetAlgorithm (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetCompatibleHypothesis (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetName (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.SetName (  self,
      name 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetId (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Create (  self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Hypothesis (  self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    +


    Field Documentation

    + +
    +
    + + + + +
    smeshDC.Mesh_Algorithm.smesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.mesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.geom [inherited]
    +
    +
    + +

    + +

    +Reimplemented in smeshDC.Mesh_Segment. +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.subm [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.algo [inherited]
    +
    +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Hexahedron__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Hexahedron__inherit__graph.jpg new file mode 100644 index 000000000..945396380 Binary files /dev/null and b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Hexahedron__inherit__graph.jpg differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Netgen.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Netgen.html new file mode 100644 index 000000000..8052b1916 --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Netgen.html @@ -0,0 +1,502 @@ + + + + + + Main Page + + + + +  + + + + +

    smeshDC.Mesh_Netgen Class Reference

    Class to define a NETGEN-based 2D or 3D algorithm that need no discrete boundary (i.e. +More... +

    +Inheritance diagram for smeshDC.Mesh_Netgen:

    Inheritance graph
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Member Functions

    def __init__
     Private constructor.
    def Parameters
     Define hypothesis containing parameters of the algorithm.
    def __init__
    def GetSubMesh
     If the algorithm is global, return 0;
    + else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     is3D
     smesh
     mesh
     geom
     subm
     algo

    Static Public Attributes

    int is3D = 0
    +

    Detailed Description

    +independent)

    +This class is deprecated, only for compatibility!

    +More details. +

    +


    Member Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Netgen.__init__ (  self,
      mesh,
      is3D,
      geom = 0 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Netgen.Parameters (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.__init__ (  self,
      smesh 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetSubMesh (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetAlgorithm (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetCompatibleHypothesis (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetName (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.SetName (  self,
      name 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetId (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Create (  self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Hypothesis (  self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    +


    Field Documentation

    + +
    +
    + + + + +
    int smeshDC.Mesh_Netgen.is3D = 0 [static]
    +
    +
    + +

    + +

    +

    + +

    + +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.smesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.mesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.geom [inherited]
    +
    +
    + +

    + +

    +Reimplemented in smeshDC.Mesh_Segment. +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.subm [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.algo [inherited]
    +
    +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Netgen__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Netgen__inherit__graph.jpg new file mode 100644 index 000000000..73b7e43a0 Binary files /dev/null and b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Netgen__inherit__graph.jpg differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Prism3D.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Prism3D.html new file mode 100644 index 000000000..6a5f8f092 --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Prism3D.html @@ -0,0 +1,436 @@ + + + + + + Main Page + + + + +  + + + + +

    smeshDC.Mesh_Prism3D Class Reference

    Class to define a 3D extrusion algorithm. +More... +

    +Inheritance diagram for smeshDC.Mesh_Prism3D:

    Inheritance graph
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Member Functions

    def __init__
     Private constructor.
    def __init__
    def GetSubMesh
     If the algorithm is global, return 0;
    + else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     smesh
     mesh
     geom
     subm
     algo
    +

    Detailed Description

    +More details. +

    +


    Member Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Prism3D.__init__ (  self,
      mesh,
      geom = 0 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.__init__ (  self,
      smesh 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetSubMesh (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetAlgorithm (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetCompatibleHypothesis (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetName (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.SetName (  self,
      name 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetId (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Create (  self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Hypothesis (  self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    +


    Field Documentation

    + +
    +
    + + + + +
    smeshDC.Mesh_Algorithm.smesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.mesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.geom [inherited]
    +
    +
    + +

    + +

    +Reimplemented in smeshDC.Mesh_Segment. +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.subm [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.algo [inherited]
    +
    +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Prism3D__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Prism3D__inherit__graph.jpg new file mode 100644 index 000000000..7ce49e449 Binary files /dev/null and b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Prism3D__inherit__graph.jpg differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection1D.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection1D.html new file mode 100644 index 000000000..f22c1a796 --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection1D.html @@ -0,0 +1,494 @@ + + + + + + Main Page + + + + +  + + + + +

    smeshDC.Mesh_Projection1D Class Reference

    Class to define a projection 1D algorithm. +More... +

    +Inheritance diagram for smeshDC.Mesh_Projection1D:

    Inheritance graph
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Member Functions

    def __init__
     Private constructor.
    def SourceEdge
     Define "Source Edge" hypothesis, specifying a meshed edge to take a mesh pattern from, and optionally association of vertices between the source edge and a target one (where a hipothesis is assigned to).
    def __init__
    def GetSubMesh
     If the algorithm is global, return 0;
    + else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     smesh
     mesh
     geom
     subm
     algo
    +

    Detailed Description

    +More details. +

    +


    Member Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Projection1D.__init__ (  self,
      mesh,
      geom = 0 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Projection1D.SourceEdge (  self,
      edge,
      mesh = None,
      srcV = None,
      tgtV = None 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + +
    edge to take nodes distribution from
    mesh to take nodes distribution from (optional)
    srcV is vertex of edge to associate with tgtV (optional)
    tgtV is vertex of the edge where the algorithm is assigned, to associate with srcV (optional)
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.__init__ (  self,
      smesh 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetSubMesh (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetAlgorithm (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetCompatibleHypothesis (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetName (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.SetName (  self,
      name 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetId (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Create (  self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Hypothesis (  self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    +


    Field Documentation

    + +
    +
    + + + + +
    smeshDC.Mesh_Algorithm.smesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.mesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.geom [inherited]
    +
    +
    + +

    + +

    +Reimplemented in smeshDC.Mesh_Segment. +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.subm [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.algo [inherited]
    +
    +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection1D__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection1D__inherit__graph.jpg new file mode 100644 index 000000000..b9b516791 Binary files /dev/null and b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection1D__inherit__graph.jpg differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection2D.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection2D.html new file mode 100644 index 000000000..fc2d896d4 --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection2D.html @@ -0,0 +1,508 @@ + + + + + + Main Page + + + + +  + + + + +

    smeshDC.Mesh_Projection2D Class Reference

    Class to define a projection 2D algorithm. +More... +

    +Inheritance diagram for smeshDC.Mesh_Projection2D:

    Inheritance graph
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Member Functions

    def __init__
     Private constructor.
    def SourceFace
     Define "Source Face" hypothesis, specifying a meshed face to take a mesh pattern from, and optionally association of vertices between the source face and a target one (where a hipothesis is assigned to).
    def __init__
    def GetSubMesh
     If the algorithm is global, return 0;
    + else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     smesh
     mesh
     geom
     subm
     algo
    +

    Detailed Description

    +More details. +

    +


    Member Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Projection2D.__init__ (  self,
      mesh,
      geom = 0 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Projection2D.SourceFace (  self,
      face,
      mesh = None,
      srcV1 = None,
      tgtV1 = None,
      srcV2 = None,
      tgtV2 = None 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + + + +
    face to take mesh pattern from
    mesh to take mesh pattern from (optional)
    srcV1 is vertex of face to associate with tgtV1 (optional)
    tgtV1 is vertex of the face where the algorithm is assigned, to associate with srcV1 (optional)
    srcV2 is vertex of face to associate with tgtV1 (optional)
    tgtV2 is vertex of the face where the algorithm is assigned, to associate with srcV2 (optional)
    +
    +Note: association vertices must belong to one edge of a face +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.__init__ (  self,
      smesh 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetSubMesh (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetAlgorithm (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetCompatibleHypothesis (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetName (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.SetName (  self,
      name 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetId (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Create (  self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Hypothesis (  self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    +


    Field Documentation

    + +
    +
    + + + + +
    smeshDC.Mesh_Algorithm.smesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.mesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.geom [inherited]
    +
    +
    + +

    + +

    +Reimplemented in smeshDC.Mesh_Segment. +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.subm [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.algo [inherited]
    +
    +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection2D__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection2D__inherit__graph.jpg new file mode 100644 index 000000000..ac89989bb Binary files /dev/null and b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection2D__inherit__graph.jpg differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection3D.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection3D.html new file mode 100644 index 000000000..15e2112b0 --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection3D.html @@ -0,0 +1,508 @@ + + + + + + Main Page + + + + +  + + + + +

    smeshDC.Mesh_Projection3D Class Reference

    Class to define a projection 3D algorithm. +More... +

    +Inheritance diagram for smeshDC.Mesh_Projection3D:

    Inheritance graph
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Member Functions

    def __init__
     Private constructor.
    def SourceShape3D
     Define "Source Shape 3D" hypothesis, specifying a meshed solid to take a mesh pattern from, and optionally association of vertices between the source solid and a target one (where a hipothesis is assigned to).
    def __init__
    def GetSubMesh
     If the algorithm is global, return 0;
    + else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     smesh
     mesh
     geom
     subm
     algo
    +

    Detailed Description

    +More details. +

    +


    Member Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Projection3D.__init__ (  self,
      mesh,
      geom = 0 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Projection3D.SourceShape3D (  self,
      solid,
      mesh = 0,
      srcV1 = 0,
      tgtV1 = 0,
      srcV2 = 0,
      tgtV2 = 0 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + + + +
    solid to take mesh pattern from
    mesh to take mesh pattern from (optional)
    srcV1 is vertex of solid to associate with tgtV1 (optional)
    tgtV1 is vertex of the solid where the algorithm is assigned, to associate with srcV1 (optional)
    srcV2 is vertex of solid to associate with tgtV1 (optional)
    tgtV2 is vertex of the solid where the algorithm is assigned, to associate with srcV2 (optional)
    +
    +Note: association vertices must belong to one edge of a solid +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.__init__ (  self,
      smesh 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetSubMesh (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetAlgorithm (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetCompatibleHypothesis (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetName (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.SetName (  self,
      name 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetId (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Create (  self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Hypothesis (  self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    +


    Field Documentation

    + +
    +
    + + + + +
    smeshDC.Mesh_Algorithm.smesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.mesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.geom [inherited]
    +
    +
    + +

    + +

    +Reimplemented in smeshDC.Mesh_Segment. +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.subm [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.algo [inherited]
    +
    +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection3D__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection3D__inherit__graph.jpg new file mode 100644 index 000000000..073664314 Binary files /dev/null and b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Projection3D__inherit__graph.jpg differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Quadrangle.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Quadrangle.html new file mode 100644 index 000000000..f79cf6885 --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Quadrangle.html @@ -0,0 +1,459 @@ + + + + + + Main Page + + + + +  + + + + +

    smeshDC.Mesh_Quadrangle Class Reference

    Class to define a quadrangle 2D algorithm. +More... +

    +Inheritance diagram for smeshDC.Mesh_Quadrangle:

    Inheritance graph
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Member Functions

    def __init__
     Private constructor.
    def QuadranglePreference
     Define "QuadranglePreference" hypothesis, forcing construction of quadrangles if the number of nodes on opposite edges is not the same in the case where the global number of nodes on edges is even.
    def __init__
    def GetSubMesh
     If the algorithm is global, return 0;
    + else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     smesh
     mesh
     geom
     subm
     algo
    +

    Detailed Description

    +More details. +

    +


    Member Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Quadrangle.__init__ (  self,
      mesh,
      geom = 0 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Quadrangle.QuadranglePreference (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.__init__ (  self,
      smesh 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetSubMesh (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetAlgorithm (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetCompatibleHypothesis (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetName (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.SetName (  self,
      name 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetId (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Create (  self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Hypothesis (  self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    +


    Field Documentation

    + +
    +
    + + + + +
    smeshDC.Mesh_Algorithm.smesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.mesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.geom [inherited]
    +
    +
    + +

    + +

    +Reimplemented in smeshDC.Mesh_Segment. +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.subm [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.algo [inherited]
    +
    +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Quadrangle__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Quadrangle__inherit__graph.jpg new file mode 100644 index 000000000..531a33969 Binary files /dev/null and b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Quadrangle__inherit__graph.jpg differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__RadialPrism3D.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__RadialPrism3D.html new file mode 100644 index 000000000..2b10bc4de --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__RadialPrism3D.html @@ -0,0 +1,775 @@ + + + + + + Main Page + + + + +  + + + + +

    smeshDC.Mesh_RadialPrism3D Class Reference

    Class to define a Radial Prism 3D algorithm. +More... +

    +Inheritance diagram for smeshDC.Mesh_RadialPrism3D:

    Inheritance graph
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Member Functions

    def __init__
     Private constructor.
    def Get3DHypothesis
     Return 3D hypothesis holding the 1D one.
    def OwnHypothesis
     Private method creating 1D hypothes and storing it in the LayerDistribution hypothes.
    def NumberOfLayers
     Define "NumberOfLayers" hypothesis, specifying a number of layers of prisms to build between the inner and outer shells.
    def LocalLength
     Define "LocalLength" hypothesis, specifying segment length to build between the inner and outer shells.
    def NumberOfSegments
     Define "NumberOfSegments" hypothesis, specifying a number of layers of prisms to build between the inner and outer shells.
    def Arithmetic1D
     Define "Arithmetic1D" hypothesis, specifying distribution of segments to build between the inner and outer shells as arithmetic length increasing.
    def StartEndLength
     Define "StartEndLength" hypothesis, specifying distribution of segments to build between the inner and outer shells as geometric length increasing.
    def AutomaticLength
     Define "AutomaticLength" hypothesis, specifying number of segments to build between the inner and outer shells.
    def __init__
    def GetSubMesh
     If the algorithm is global, return 0;
    + else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     distribHyp
     nbLayers
     smesh
     mesh
     geom
     subm
     algo
    +

    Detailed Description

    +More details. +

    +


    Member Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_RadialPrism3D.__init__ (  self,
      mesh,
      geom = 0 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_RadialPrism3D.Get3DHypothesis (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_RadialPrism3D.OwnHypothesis (  self,
      hypType,
      args = [],
      so = "libStdMeshersEngine.so" 
    )
    +
    +
    + +

    +Returns the created hypothes +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_RadialPrism3D.NumberOfLayers (  self,
      n 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_RadialPrism3D.LocalLength (  self,
      l 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    l for the length of segments
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_RadialPrism3D.NumberOfSegments (  self,
      n,
      s = [] 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    n for the number of segments
    s for the scale factor (optional)
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_RadialPrism3D.Arithmetic1D (  self,
      start,
      end 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    start for the length of the first segment
    end for the length of the last segment
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_RadialPrism3D.StartEndLength (  self,
      start,
      end 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    start for the length of the first segment
    end for the length of the last segment
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_RadialPrism3D.AutomaticLength (  self,
      fineness = 0 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    fineness for the fineness [0-1]
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.__init__ (  self,
      smesh 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetSubMesh (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetAlgorithm (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetCompatibleHypothesis (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetName (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.SetName (  self,
      name 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetId (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Create (  self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Hypothesis (  self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    +


    Field Documentation

    + +
    + +
    + +

    + +

    +

    + +

    + +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.smesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.mesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.geom [inherited]
    +
    +
    + +

    + +

    +Reimplemented in smeshDC.Mesh_Segment. +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.subm [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.algo [inherited]
    +
    +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__RadialPrism3D__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__RadialPrism3D__inherit__graph.jpg new file mode 100644 index 000000000..3624c762b Binary files /dev/null and b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__RadialPrism3D__inherit__graph.jpg differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Segment.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Segment.html new file mode 100644 index 000000000..5c2394041 --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Segment.html @@ -0,0 +1,773 @@ + + + + + + Main Page + + + + +  + + + + +

    smeshDC.Mesh_Segment Class Reference

    Class to define a segment 1D algorithm for discretization. +More... +

    +Inheritance diagram for smeshDC.Mesh_Segment:

    Inheritance graph
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Member Functions

    def __init__
     Private constructor.
    def LocalLength
     Define "LocalLength" hypothesis to cut an edge in several segments with the same length.
    def NumberOfSegments
     Define "NumberOfSegments" hypothesis to cut an edge in several fixed number of segments.
    def Arithmetic1D
     Define "Arithmetic1D" hypothesis to cut an edge in several segments with arithmetic length increasing.
    def StartEndLength
     Define "StartEndLength" hypothesis to cut an edge in several segments with geometric length increasing.
    def Deflection1D
     Define "Deflection1D" hypothesis.
    def Propagation
     Define "Propagation" hypothesis that propagate all other hypothesis on all others edges that are in the opposite side in the case of quadrangular faces.
    def AutomaticLength
     Define "AutomaticLength" hypothesis.
    def LengthNearVertex
     Define "SegmentLengthAroundVertex" hypothesis.
    def QuadraticMesh
     Define "QuadraticMesh" hypothesis, forcing construction of quadratic edges.
    def __init__
    def GetSubMesh
     If the algorithm is global, return 0;
    + else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     geom
     smesh
     mesh
     subm
     algo
    +

    Detailed Description

    +More details. +

    +


    Member Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.__init__ (  self,
      mesh,
      geom = 0 
    )
    +
    + +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.LocalLength (  self,
      l 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    l for the length of segments that cut an edge
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.NumberOfSegments (  self,
      n,
      s = [] 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    n for the number of segments that cut an edge
    s for the scale factor (optional)
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.Arithmetic1D (  self,
      start,
      end 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    start for the length of the first segment
    end for the length of the last segment
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.StartEndLength (  self,
      start,
      end 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    start for the length of the first segment
    end for the length of the last segment
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.Deflection1D (  self,
      d 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    d for the deflection
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Segment.Propagation (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.AutomaticLength (  self,
      fineness = 0 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    fineness for the fineness [0-1]
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.LengthNearVertex (  self,
      length,
      vertex = 0 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    length for the segment length
    vertex for the length localization: vertex index [0,1] | verext object
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Segment.QuadraticMesh (  self  ) 
    +
    +
    + +

    +If the 2D mesher sees that all boundary edges are quadratic ones, it generates quadratic faces, else it generates linear faces using medium nodes as if they were vertex ones. The 3D mesher generates quadratic volumes only if all boundary faces are quadratic ones, else it fails. +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.__init__ (  self,
      smesh 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetSubMesh (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetAlgorithm (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetCompatibleHypothesis (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetName (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.SetName (  self,
      name 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetId (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Create (  self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Hypothesis (  self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    +


    Field Documentation

    + +
    + +
    + +

    + +

    +Reimplemented from smeshDC.Mesh_Algorithm. +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.smesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.mesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.subm [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.algo [inherited]
    +
    +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Segment__Python.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Segment__Python.html new file mode 100644 index 000000000..81b2c0e57 --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Segment__Python.html @@ -0,0 +1,816 @@ + + + + + + Main Page + + + + +  + + + + +

    smeshDC.Mesh_Segment_Python Class Reference

    Class to define a segment 1D algorithm for discretization with python function. +More... +

    +Inheritance diagram for smeshDC.Mesh_Segment_Python:

    Inheritance graph
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Member Functions

    def __init__
     Private constructor.
    def PythonSplit1D
     Define "PythonSplit1D" hypothesis based on the Erwan Adam patch, awaiting equivalent SALOME functionality.
    def __init__
    def LocalLength
     Define "LocalLength" hypothesis to cut an edge in several segments with the same length.
    def NumberOfSegments
     Define "NumberOfSegments" hypothesis to cut an edge in several fixed number of segments.
    def Arithmetic1D
     Define "Arithmetic1D" hypothesis to cut an edge in several segments with arithmetic length increasing.
    def StartEndLength
     Define "StartEndLength" hypothesis to cut an edge in several segments with geometric length increasing.
    def Deflection1D
     Define "Deflection1D" hypothesis.
    def Propagation
     Define "Propagation" hypothesis that propagate all other hypothesis on all others edges that are in the opposite side in the case of quadrangular faces.
    def AutomaticLength
     Define "AutomaticLength" hypothesis.
    def LengthNearVertex
     Define "SegmentLengthAroundVertex" hypothesis.
    def QuadraticMesh
     Define "QuadraticMesh" hypothesis, forcing construction of quadratic edges.
    def GetSubMesh
     If the algorithm is global, return 0;
    + else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     geom
     smesh
     mesh
     subm
     algo
    +

    Detailed Description

    +More details. +

    +


    Member Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment_Python.__init__ (  self,
      mesh,
      geom = 0 
    )
    +
    +
    + +

    + +

    +Reimplemented from smeshDC.Mesh_Segment. +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment_Python.PythonSplit1D (  self,
      n,
      func 
    )
    +
    +
    + +

    +

    Parameters:
    + + + +
    n for the number of segments that cut an edge
    func for the python function that calculate the length of all segments
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.__init__ (  self,
      smesh 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.LocalLength (  self,
      l 
    ) [inherited]
    +
    +
    + +

    +

    Parameters:
    + + +
    l for the length of segments that cut an edge
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.NumberOfSegments (  self,
      n,
      s = [] 
    ) [inherited]
    +
    +
    + +

    +

    Parameters:
    + + + +
    n for the number of segments that cut an edge
    s for the scale factor (optional)
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.Arithmetic1D (  self,
      start,
      end 
    ) [inherited]
    +
    +
    + +

    +

    Parameters:
    + + + +
    start for the length of the first segment
    end for the length of the last segment
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.StartEndLength (  self,
      start,
      end 
    ) [inherited]
    +
    +
    + +

    +

    Parameters:
    + + + +
    start for the length of the first segment
    end for the length of the last segment
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.Deflection1D (  self,
      d 
    ) [inherited]
    +
    +
    + +

    +

    Parameters:
    + + +
    d for the deflection
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Segment.Propagation (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.AutomaticLength (  self,
      fineness = 0 
    ) [inherited]
    +
    +
    + +

    +

    Parameters:
    + + +
    fineness for the fineness [0-1]
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Segment.LengthNearVertex (  self,
      length,
      vertex = 0 
    ) [inherited]
    +
    +
    + +

    +

    Parameters:
    + + + +
    length for the segment length
    vertex for the length localization: vertex index [0,1] | verext object
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Segment.QuadraticMesh (  self  )  [inherited]
    +
    +
    + +

    +If the 2D mesher sees that all boundary edges are quadratic ones, it generates quadratic faces, else it generates linear faces using medium nodes as if they were vertex ones. The 3D mesher generates quadratic volumes only if all boundary faces are quadratic ones, else it fails. +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetSubMesh (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetAlgorithm (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetCompatibleHypothesis (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetName (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.SetName (  self,
      name 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetId (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Create (  self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Hypothesis (  self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    +


    Field Documentation

    + +
    +
    + + + + +
    smeshDC.Mesh_Segment.geom [inherited]
    +
    +
    + +

    + +

    +Reimplemented from smeshDC.Mesh_Algorithm. +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.smesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.mesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.subm [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.algo [inherited]
    +
    +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Segment__Python__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Segment__Python__inherit__graph.jpg new file mode 100644 index 000000000..22c0b79af Binary files /dev/null and b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Segment__Python__inherit__graph.jpg differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Segment__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Segment__inherit__graph.jpg new file mode 100644 index 000000000..ce167aa61 Binary files /dev/null and b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Segment__inherit__graph.jpg differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Tetrahedron.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Tetrahedron.html new file mode 100644 index 000000000..a85de467c --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Tetrahedron.html @@ -0,0 +1,800 @@ + + + + + + Main Page + + + + +  + + + + +

    smeshDC.Mesh_Tetrahedron Class Reference

    Class to define a tetrahedron 3D algorithm. +More... +

    +Inheritance diagram for smeshDC.Mesh_Tetrahedron:

    Inheritance graph
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Member Functions

    def __init__
     Private constructor.
    def MaxElementVolume
     Define "MaxElementVolume" hypothesis to give the maximun volume of each tetrahedral.
    def Parameters
     Define "Netgen 3D Parameters" hypothesis.
    def SetMaxSize
     Set MaxSize.
    def SetSecondOrder
     Set SecondOrder flag.
    def SetOptimize
     Set Optimize flag.
    def SetFineness
     Set Fineness.
    def SetGrowthRate
     Set GrowthRate.
    def SetNbSegPerEdge
     Set NbSegPerEdge.
    def SetNbSegPerRadius
     Set NbSegPerRadius.
    def __init__
    def GetSubMesh
     If the algorithm is global, return 0;
    + else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     algoType
     params
     smesh
     mesh
     geom
     subm
     algo

    Static Public Attributes

    int params = 0
    int algoType = 0
    +

    Detailed Description

    +More details. +

    +


    Member Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Tetrahedron.__init__ (  self,
      mesh,
      algoType,
      geom = 0 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Tetrahedron.MaxElementVolume (  self,
      vol 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    vol for the maximum volume of each tetrahedral
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Tetrahedron.Parameters (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Tetrahedron.SetMaxSize (  self,
      theSize 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Tetrahedron.SetSecondOrder (  self,
      theVal 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Tetrahedron.SetOptimize (  self,
      theVal 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Tetrahedron.SetFineness (  self,
      theFineness 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    theFineness is: VeryCoarse, Coarse, Moderate, Fine, VeryFine or Custom
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Tetrahedron.SetGrowthRate (  self,
      theRate 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Tetrahedron.SetNbSegPerEdge (  self,
      theVal 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Tetrahedron.SetNbSegPerRadius (  self,
      theVal 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.__init__ (  self,
      smesh 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetSubMesh (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetAlgorithm (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetCompatibleHypothesis (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetName (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.SetName (  self,
      name 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetId (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Create (  self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Hypothesis (  self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    +


    Field Documentation

    + +
    +
    + + + + +
    int smeshDC.Mesh_Tetrahedron.params = 0 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.Mesh_Tetrahedron.algoType = 0 [static]
    +
    +
    + +

    + +

    +

    + +

    + +
    + +

    + +

    +

    + +

    + +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.smesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.mesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.geom [inherited]
    +
    +
    + +

    + +

    +Reimplemented in smeshDC.Mesh_Segment. +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.subm [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.algo [inherited]
    +
    +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Tetrahedron__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Tetrahedron__inherit__graph.jpg new file mode 100644 index 000000000..04b522031 Binary files /dev/null and b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Tetrahedron__inherit__graph.jpg differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Triangle.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Triangle.html new file mode 100644 index 000000000..fafbe30e4 --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Triangle.html @@ -0,0 +1,855 @@ + + + + + + Main Page + + + + +  + + + + +

    smeshDC.Mesh_Triangle Class Reference

    Class to define a triangle 2D algorithm. +More... +

    +Inheritance diagram for smeshDC.Mesh_Triangle:

    Inheritance graph
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Member Functions

    def __init__
     Private constructor.
    def MaxElementArea
     Define "MaxElementArea" hypothesis to give the maximun area of each triangles.
    def LengthFromEdges
     Define "LengthFromEdges" hypothesis to build triangles based on the length of the edges taken from the wire.
    def Parameters
     Define "Netgen 2D Parameters" hypothesis.
    def SetMaxSize
     Set MaxSize.
    def SetSecondOrder
     Set SecondOrder flag.
    def SetOptimize
     Set Optimize flag.
    def SetFineness
     Set Fineness.
    def SetGrowthRate
     Set GrowthRate.
    def SetNbSegPerEdge
     Set NbSegPerEdge.
    def SetNbSegPerRadius
     Set NbSegPerRadius.
    def SetQuadAllowed
     Set QuadAllowed flag.
    def __init__
    def GetSubMesh
     If the algorithm is global, return 0;
    + else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     algoType
     params
     smesh
     mesh
     geom
     subm
     algo

    Static Public Attributes

    int algoType = 0
    int params = 0
    +

    Detailed Description

    +More details. +

    +


    Member Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Triangle.__init__ (  self,
      mesh,
      algoType,
      geom = 0 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Triangle.MaxElementArea (  self,
      area 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    area for the maximum area of each triangles
    +
    + +
    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Triangle.LengthFromEdges (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Triangle.Parameters (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Triangle.SetMaxSize (  self,
      theSize 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Triangle.SetSecondOrder (  self,
      theVal 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Triangle.SetOptimize (  self,
      theVal 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Triangle.SetFineness (  self,
      theFineness 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    theFineness is: VeryCoarse, Coarse, Moderate, Fine, VeryFine or Custom
    +
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Triangle.SetGrowthRate (  self,
      theRate 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Triangle.SetNbSegPerEdge (  self,
      theVal 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Triangle.SetNbSegPerRadius (  self,
      theVal 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Triangle.SetQuadAllowed (  self,
      toAllow 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.__init__ (  self,
      smesh 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetSubMesh (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetAlgorithm (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetCompatibleHypothesis (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetName (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.SetName (  self,
      name 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.GetId (  self  )  [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Create (  self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.Mesh_Algorithm.Hypothesis (  self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so" 
    ) [inherited]
    +
    +
    + +

    + +

    +

    +


    Field Documentation

    + +
    +
    + + + + +
    int smeshDC.Mesh_Triangle.algoType = 0 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.Mesh_Triangle.params = 0 [static]
    +
    +
    + +

    + +

    +

    + +

    + +
    + +

    + +

    +

    + +

    + +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.smesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.mesh [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.geom [inherited]
    +
    +
    + +

    + +

    +Reimplemented in smeshDC.Mesh_Segment. +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.subm [inherited]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.Mesh_Algorithm.algo [inherited]
    +
    +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Triangle__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Triangle__inherit__graph.jpg new file mode 100644 index 000000000..654d53760 Binary files /dev/null and b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1Mesh__Triangle__inherit__graph.jpg differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1smeshDC.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1smeshDC.html new file mode 100644 index 000000000..0502b82f3 --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1smeshDC.html @@ -0,0 +1,740 @@ + + + + + + Main Page + + + + +  + + + + +

    smeshDC.smeshDC Class Reference

    Inheritance diagram for smeshDC.smeshDC:

    Inheritance graph
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Public Member Functions

    def init_smesh
    def Mesh
    def EnumToLong
     Returns long value from enumeration Uses for SMESH.FunctorType enumeration.
    def GetPointStruct
     Get PointStruct from vertex.
    def GetDirStruct
     Get DirStruct from vector.
    def GetAxisStruct
     Get AxisStruct from object.
    def SetEmbeddedMode
     Set the current mode.
    def IsEmbeddedMode
     Get the current mode.
    def SetCurrentStudy
     Set the current study.
    def GetCurrentStudy
     Get the current study.
    def CreateMeshesFromUNV
     Create Mesh object importing data from given UNV file.
    def CreateMeshesFromMED
     Create Mesh object(s) importing data from given MED file.
    def CreateMeshesFromSTL
     Create Mesh object importing data from given STL file.
    def GetSubShapesId
     From SMESH_Gen interface.
    def GetPattern
     From SMESH_Gen interface.
    def GetEmptyCriterion
     Creates an empty criterion.
    def GetCriterion
     Creates a criterion by given parameters.
    def GetFilter
     Creates filter by given parameters of criterion.
    def GetFunctor
     Creates numerical functor by its type.

    Data Fields

     geompyD
    +

    Member Function Documentation

    + +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.smeshDC.init_smesh (  self,
      theStudy,
      geompyD 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.smeshDC.Mesh (  self,
      obj = 0,
      name = 0 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.smeshDC.EnumToLong (  self,
      theItem 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.smeshDC.GetPointStruct (  self,
      theVertex 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    theVertex is GEOM object(vertex)
    +
    +
    Returns:
    SMESH.PointStruct
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.smeshDC.GetDirStruct (  self,
      theVector 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    theVector is GEOM object(vector)
    +
    +
    Returns:
    SMESH.DirStruct
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.smeshDC.GetAxisStruct (  self,
      theObj 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    theObj is GEOM object(line or plane)
    +
    +
    Returns:
    SMESH.AxisStruct
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.smeshDC.SetEmbeddedMode (  self,
      theMode 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.smeshDC.IsEmbeddedMode (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.smeshDC.SetCurrentStudy (  self,
      theStudy 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.smeshDC.GetCurrentStudy (  self  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.smeshDC.CreateMeshesFromUNV (  self,
      theFileName 
    )
    +
    +
    + +

    +

    Returns:
    an instance of Mesh class
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.smeshDC.CreateMeshesFromMED (  self,
      theFileName 
    )
    +
    +
    + +

    +

    Returns:
    a list of Mesh class instances
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.smeshDC.CreateMeshesFromSTL (  self,
      theFileName 
    )
    +
    +
    + +

    +

    Returns:
    an instance of Mesh class
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.smeshDC.GetSubShapesId (  self,
      theMainObject,
      theListOfSubObjects 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.smeshDC.GetPattern (  self  ) 
    +
    +
    + +

    +Creates pattern +

    +

    + +

    +
    + + + + + + + + + +
    def smeshDC.smeshDC.GetEmptyCriterion (  self  ) 
    +
    +
    + +

    +

    Returns:
    SMESH.Filter.Criterion
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.smeshDC.GetCriterion (  self,
      elementType,
      CritType,
      Compare = FT_EqualTo,
      Treshold = "",
      UnaryOp = FT_Undefined,
      BinaryOp = FT_Undefined 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + + + +
    elementType is the type of elements(NODE, EDGE, FACE, VOLUME)
    CritType is type of criterion( FT_Taper, FT_Area, FT_RangeOfIds, FT_LyingOnGeom etc. )
    Compare belong to {FT_LessThan, FT_MoreThan, FT_EqualTo}
    Treshold is threshold value (range of ids as string, shape, numeric)
    UnaryOp is FT_LogicalNOT or FT_Undefined
    BinaryOp is binary logical operation FT_LogicalAND, FT_LogicalOR or FT_Undefined(must be for the last criterion in criteria)
    +
    +
    Returns:
    SMESH.Filter.Criterion
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.smeshDC.GetFilter (  self,
      elementType,
      CritType = FT_Undefined,
      Compare = FT_EqualTo,
      Treshold = "",
      UnaryOp = FT_Undefined 
    )
    +
    +
    + +

    +

    Parameters:
    + + + + + + +
    elementType is the type of elements in the group
    CritType is type of criterion( FT_Taper, FT_Area, FT_RangeOfIds, FT_LyingOnGeom etc. )
    Compare belong to {FT_LessThan, FT_MoreThan, FT_EqualTo}
    Treshold is threshold value (range of id ids as string, shape, numeric)
    UnaryOp is FT_LogicalNOT or FT_Undefined
    +
    +
    Returns:
    SMESH_Filter
    + +
    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.smeshDC.GetFunctor (  self,
      theCriterion 
    )
    +
    +
    + +

    +

    Parameters:
    + + +
    theCrierion is FT_...; functor type
    +
    +
    Returns:
    SMESH_NumericalFunctor
    + +
    +

    +


    Field Documentation

    + +
    + +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1smeshDC__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1smeshDC__inherit__graph.jpg new file mode 100644 index 000000000..879ced852 Binary files /dev/null and b/doc/salome/gui/SMESH/smeshpy_doc/classsmeshDC_1_1smeshDC__inherit__graph.jpg differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh.html deleted file mode 100644 index 51edc45d3..000000000 --- a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh.html +++ /dev/null @@ -1,7910 +0,0 @@ - - - - - - Main Page - - - - -  - - - - -

    smesh.Mesh Class Reference

    Class to define a mesh. -More... -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Public Member Functions

    def __init__
     Constructor.
    def SetMesh
     Method that inits the Mesh object from SMESH_Mesh interface.
    def GetMesh
     Method that returns the mesh.
    def GetName
     Get mesh name.
    def SetName
     Set name to mesh.
    def GetSubMesh
     Get the subMesh object associated to a subShape.
    def GetShape
     Method that returns the shape associated to the mesh.
    def SetShape
     Method that associates given shape to the mesh(entails the mesh recreation).
    def IsReadyToCompute
     Return true if hypotheses are defined well.
    def GetAlgoState
     Return errors of hypotheses definintion error list is empty if everything is OK.
    def GetGeometryByMeshElement
     Return geometrical object the given element is built on.
    def MeshDimension
     Returns mesh dimension depending on shape one.
    def Segment
     Creates a segment discretization 1D algorithm.
    def Triangle
     Creates a triangle 2D algorithm for faces.
    def Quadrangle
     Creates a quadrangle 2D algorithm for faces.
    def Tetrahedron
     Creates a tetrahedron 3D algorithm for solids.
    def Hexahedron
     Creates a hexahedron 3D algorithm for solids.
    def Netgen
     Deprecated, only for compatibility!
    def Projection1D
     Creates a projection 1D algorithm for edges.
    def Projection2D
     Creates a projection 2D algorithm for faces.
    def Projection3D
     Creates a projection 3D algorithm for solids.
    def Prism
     Creates a 3D extrusion (Prism 3D) or RadialPrism 3D algorithm for solids.
    def Compute
     Compute the mesh and return the status of the computation.
    def AutomaticTetrahedralization
     Compute tetrahedral mesh using AutomaticLength + MEFISTO + NETGEN The parameter fineness [0,-1] defines mesh fineness.
    def AutomaticHexahedralization
     Compute hexahedral mesh using AutomaticLength + Quadrangle + Hexahedron The parameter fineness [0,-1] defines mesh fineness.
    def AddHypothesis
     Assign hypothesis.
    def GetHypothesisList
     Get the list of hypothesis added on a geom.
    def RemoveGlobalHypotheses
     Removes all global hypotheses.
    def Group
     Create a mesh group based on geometric object grp and give a name,
    - if this parameter is not defined the name is the same as the geometric group name
    - Note: Works like GroupOnGeom().
    def ExportToMED
     Deprecated, only for compatibility! Please, use ExportMED() method instead.
    def ExportMED
     Export the mesh in a file with the MED format.
    def ExportDAT
     Export the mesh in a file with the DAT format.
    def ExportUNV
     Export the mesh in a file with the UNV format.
    def ExportSTL
     Export the mesh in a file with the STL format.
    def CreateEmptyGroup
     Creates an empty mesh group.
    def GroupOnGeom
     Creates a mesh group based on geometric object grp and give a name,
    - if this parameter is not defined the name is the same as the geometric group name.
    def MakeGroupByIds
     Create a mesh group by the given ids of elements.
    def MakeGroup
     Create a mesh group by the given conditions.
    def MakeGroupByCriterion
     Create a mesh group by the given criterion.
    def MakeGroupByCriteria
     Create a mesh group by the given criteria(list of criterions).
    def MakeGroupByFilter
     Create a mesh group by the given filter.
    def GetIdsFromFilter
     Pass mesh elements through the given filter and return ids.
    def GetFreeBorders
     Verify whether 2D mesh element has free edges(edges connected to one face only)
    - Returns list of special structures(borders).
    def RemoveGroup
     Remove a group.
    def RemoveGroupWithContents
     Remove group with its contents.
    def GetGroups
     Get the list of groups existing in the mesh.
    def GetGroupNames
     Get the list of names of groups existing in the mesh.
    def UnionGroups
     Union of two groups New group is created.
    def IntersectGroups
     Intersection of two groups New group is created.
    def CutGroups
     Cut of two groups New group is created.
    def GetLog
     Get the log of nodes and elements added or removed since previous clear of the log.
    def ClearLog
     Clear the log of nodes and elements added or removed since previous clear.
    def GetId
     Get the internal Id.
    def GetStudyId
     Get the study Id.
    def HasDuplicatedGroupNamesMED
     Check group names for duplications.
    def GetMeshEditor
     Obtain instance of SMESH_MeshEditor.
    def GetMEDMesh
     Get MED Mesh.
    def NbNodes
     Returns number of nodes in mesh.
    def NbElements
     Returns number of elements in mesh.
    def NbEdges
     Returns number of edges in mesh.
    def NbEdgesOfOrder
     Returns number of edges with given order in mesh.
    def NbFaces
     Returns number of faces in mesh.
    def NbFacesOfOrder
     Returns number of faces with given order in mesh.
    def NbTriangles
     Returns number of triangles in mesh.
    def NbTrianglesOfOrder
     Returns number of triangles with given order in mesh.
    def NbQuadrangles
     Returns number of quadrangles in mesh.
    def NbQuadranglesOfOrder
     Returns number of quadrangles with given order in mesh.
    def NbPolygons
     Returns number of polygons in mesh.
    def NbVolumes
     Returns number of volumes in mesh.
    def NbVolumesOfOrder
     Returns number of volumes with given order in mesh.
    def NbTetras
     Returns number of tetrahedrons in mesh.
    def NbTetrasOfOrder
     Returns number of tetrahedrons with given order in mesh.
    def NbHexas
     Returns number of hexahedrons in mesh.
    def NbHexasOfOrder
     Returns number of hexahedrons with given order in mesh.
    def NbPyramids
     Returns number of pyramids in mesh.
    def NbPyramidsOfOrder
     Returns number of pyramids with given order in mesh.
    def NbPrisms
     Returns number of prisms in mesh.
    def NbPrismsOfOrder
     Returns number of prisms with given order in mesh.
    def NbPolyhedrons
     Returns number of polyhedrons in mesh.
    def NbSubMesh
     Returns number of submeshes in mesh.
    def GetElementsId
     Returns list of mesh elements ids.
    def GetElementsByType
     Returns list of ids of mesh elements with given type.
    def GetNodesId
     Returns list of mesh nodes ids.
    def GetElementType
     Returns type of mesh element.
    def GetSubMeshElementsId
     Returns list of submesh elements ids.
    def GetSubMeshNodesId
     Returns list of submesh nodes ids.
    def GetSubMeshElementType
     Returns list of ids of submesh elements with given type.
    def Dump
     Get mesh description.
    def GetNodeXYZ
     Get XYZ coordinates of node as list of double
    - If there is not node for given ID - returns empty list.
    def GetNodeInverseElements
     For given node returns list of IDs of inverse elements
    - If there is not node for given ID - returns empty list.
    def GetShapeID
     If given element is node returns IDs of shape from position
    - If there is not node for given ID - returns -1.
    def GetShapeIDForElem
     For given element returns ID of result shape after FindShape() from SMESH_MeshEditor
    - If there is not element for given ID - returns -1.
    def GetElemNbNodes
     Returns number of nodes for given element
    - If there is not element for given ID - returns -1.
    def GetElemNode
     Returns ID of node by given index for given element
    - If there is not element for given ID - returns -1
    - If there is not node for given index - returns -2.
    def IsMediumNode
     Returns true if given node is medium node in given quadratic element.
    def IsMediumNodeOfAnyElem
     Returns true if given node is medium node in one of quadratic elements.
    def ElemNbEdges
     Returns number of edges for given element.
    def ElemNbFaces
     Returns number of faces for given element.
    def IsPoly
     Returns true if given element is polygon.
    def IsQuadratic
     Returns true if given element is quadratic.
    def BaryCenter
     Returns XYZ coordinates of bary center for given element as list of double
    - If there is not element for given ID - returns empty list.
    def RemoveElements
     Removes elements from mesh by ids.
    def RemoveNodes
     Removes nodes from mesh by ids.
    def AddNode
     Add node to mesh by coordinates.
    def AddEdge
     Create edge both similar and quadratic (this is determed by number of given nodes).
    def AddFace
     Create face both similar and quadratic (this is determed by number of given nodes).
    def AddPolygonalFace
     Add polygonal face to mesh by list of nodes ids.
    def AddVolume
     Create volume both similar and quadratic (this is determed by number of given nodes).
    def AddPolyhedralVolume
     Create volume of many faces, giving nodes for each face.
    def AddPolyhedralVolumeByFaces
     Create volume of many faces, giving IDs of existing faces.
    def MoveNode
     Move node with given id.
    def FindNodeClosestTo
     Find a node closest to a point.
    def MeshToPassThroughAPoint
     Find a node closest to a point and move it to a point location.
    def InverseDiag
     Replace two neighbour triangles sharing Node1-Node2 link with ones built on the same 4 nodes but having other common link.
    def DeleteDiag
     Replace two neighbour triangles sharing Node1-Node2 link with a quadrangle built on the same 4 nodes.
    def Reorient
     Reorient elements by ids.
    def ReorientObject
     Reorient all elements of the object.
    def TriToQuad
     Fuse neighbour triangles into quadrangles.
    def TriToQuadObject
     Fuse neighbour triangles of the object into quadrangles.
    def QuadToTri
     Split quadrangles into triangles.
    def QuadToTriObject
     Split quadrangles into triangles.
    def SplitQuad
     Split quadrangles into triangles.
    def SplitQuadObject
     Split quadrangles into triangles.
    def BestSplit
     Find better splitting of the given quadrangle.
    def SplitQuadsNearTriangularFacets
     Split quafrangle faces near triangular facets of volumes.
    def SplitHexaToTetras
     Split hexahedrons into tetrahedrons.
    def SplitHexaToPrisms
     Split hexahedrons into prisms.
    def Smooth
     Smooth elements.
    def SmoothObject
     Smooth elements belong to given object.
    def SmoothParametric
     Parametric smooth the given elements.
    def SmoothParametricObject
     Parametric smooth elements belong to given object.
    def ConvertToQuadratic
     Converts all mesh to quadratic one, deletes old elements, replacing them with quadratic ones with the same id.
    def ConvertFromQuadratic
     Converts all mesh from quadratic to ordinary ones, deletes old quadratic elements,
    - replacing them with ordinary mesh elements with the same id.
    def RenumberNodes
     Renumber mesh nodes.
    def RenumberElements
     Renumber mesh elements.
    def RotationSweep
     Generate new elements by rotation of the elements around the axis.
    def RotationSweepObject
     Generate new elements by rotation of the elements of object around the axis.
    def ExtrusionSweep
     Generate new elements by extrusion of the elements with given ids.
    def AdvancedExtrusion
     Generate new elements by extrusion of the elements with given ids.
    def ExtrusionSweepObject
     Generate new elements by extrusion of the elements belong to object.
    def ExtrusionSweepObject1D
     Generate new elements by extrusion of the elements belong to object.
    def ExtrusionSweepObject2D
     Generate new elements by extrusion of the elements belong to object.
    def ExtrusionAlongPath
     Generate new elements by extrusion of the given elements A path of extrusion must be a meshed edge.
    def ExtrusionAlongPathObject
     Generate new elements by extrusion of the elements belong to object A path of extrusion must be a meshed edge.
    def Mirror
     Symmetrical copy of mesh elements.
    def MirrorObject
     Symmetrical copy of object.
    def Translate
     Translates the elements.
    def TranslateObject
     Translates the object.
    def Rotate
     Rotates the elements.
    def RotateObject
     Rotates the object.
    def FindCoincidentNodes
     Find group of nodes close to each other within Tolerance.
    def FindCoincidentNodesOnPart
     Find group of nodes close to each other within Tolerance.
    def MergeNodes
     Merge nodes.
    def FindEqualElements
     Find elements built on the same nodes.
    def MergeElements
     Merge elements in each given group.
    def MergeEqualElements
     Remove all but one of elements built on the same nodes.
    def SewFreeBorders
     Sew free borders.
    def SewConformFreeBorders
     Sew conform free borders.
    def SewBorderToSide
     Sew border to side.
    def SewSideElements
     Sew two sides of a mesh.
    def ChangeElemNodes
     Set new nodes for given element.
    def GetLastCreatedNodes
     If during last operation of MeshEditor some nodes were created this method returns list of it's IDs,
    - if new nodes not created - returns empty list.
    def GetLastCreatedElems
     If during last operation of MeshEditor some elements were created this method returns list of it's IDs,
    - if new elements not creared - returns empty list.

    Data Fields

     geom
     mesh
     editor

    Static Public Attributes

    int geom = 0
    int mesh = 0
    int editor = 0
    -


    Detailed Description

    -The class contains mesh shape, SMESH_Mesh, SMESH_MeshEditor More details. -

    -


    Member Function Documentation

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.__init__   self,
      obj = 0,
      name = 0
    -
    - - - - - -
    -   - - -

    -Creates mesh on the shape geom(or the empty mesh if geom equal to 0), sets GUI name of this mesh to name.

    Parameters:
    - - - -
    obj Shape to be meshed or SMESH_Mesh object
    name Study name of the mesh
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.SetMesh   self,
      theMesh
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    theMesh is SMESH_Mesh object
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.GetMesh   self  ) 
    -
    - - - - - -
    -   - - -

    -

    Returns:
    SMESH_Mesh object
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.GetName   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.SetName   self,
      name
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GetSubMesh   self,
      theSubObject,
      name
    -
    - - - - - -
    -   - - -

    -The subMesh object gives access to nodes and elements IDs.
    - SubMesh will be used instead of SubShape in a next idl version to adress a specific subMesh...

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.GetShape   self  ) 
    -
    - - - - - -
    -   - - -

    -

    Returns:
    GEOM_Object
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.SetShape   self,
      geom
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    geom shape to be meshed(GEOM_Object)
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.IsReadyToCompute   self,
      theSubObject
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    theMesh is an instance of Mesh class
    theSubObject subshape of a mesh shape
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GetAlgoState   self,
      theSubObject
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    theMesh is an instance of Mesh class
    theSubObject subshape of a mesh shape
    -
    -
    Returns:
    a list of errors
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GetGeometryByMeshElement   self,
      theElementID,
      theGeomName
    -
    - - - - - -
    -   - - -

    -The returned geometrical object, if not nil, is either found in the study or is published by this method with the given name

    Parameters:
    - - - - -
    theMesh is an instance of Mesh class
    theElementID an id of the mesh element
    theGeomName user defined name of geometrical object
    -
    -
    Returns:
    GEOM.GEOM_Object instance
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.MeshDimension   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Segment   self,
      algo = REGULAR,
      geom = 0
    -
    - - - - - -
    -   - - -

    -If the optional algo parameter is not sets, this algorithm is REGULAR. If the optional geom parameter is not sets, this algorithm is global.
    - Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    - - - -
    algo values are smesh.REGULAR or smesh.PYTHON for discretization via python function
    geom If defined, subshape to be meshed
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Triangle   self,
      algo = MEFISTO,
      geom = 0
    -
    - - - - - -
    -   - - -

    -If the optional geom parameter is not sets, this algorithm is global.
    - Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    - - - -
    algo values are: smesh.MEFISTO or smesh.NETGEN
    geom If defined, subshape to be meshed
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Quadrangle   self,
      geom = 0
    -
    - - - - - -
    -   - - -

    -If the optional geom parameter is not sets, this algorithm is global.
    - Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    - - -
    geom If defined, subshape to be meshed
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Tetrahedron   self,
      algo = NETGEN,
      geom = 0
    -
    - - - - - -
    -   - - -

    -The parameter algo permits to choice the algorithm: NETGEN or GHS3D If the optional geom parameter is not sets, this algorithm is global.
    - Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    - - - -
    algo values are: smesh.NETGEN, smesh.GHS3D, smesh.FULL_NETGEN
    geom If defined, subshape to be meshed
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Hexahedron   self,
      geom = 0
    -
    - - - - - -
    -   - - -

    -If the optional geom parameter is not sets, this algorithm is global.
    - Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    - - -
    geom If defined, subshape to be meshed
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Netgen   self,
      is3D,
      geom = 0
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Projection1D   self,
      geom = 0
    -
    - - - - - -
    -   - - -

    -If the optional geom parameter is not sets, this algorithm is global. Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    - - -
    geom If defined, subshape to be meshed
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Projection2D   self,
      geom = 0
    -
    - - - - - -
    -   - - -

    -If the optional geom parameter is not sets, this algorithm is global. Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    - - -
    geom If defined, subshape to be meshed
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Projection3D   self,
      geom = 0
    -
    - - - - - -
    -   - - -

    -If the optional geom parameter is not sets, this algorithm is global. Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    - - -
    geom If defined, subshape to be meshed
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Prism   self,
      geom = 0
    -
    - - - - - -
    -   - - -

    -If the optional geom parameter is not sets, this algorithm is global. Otherwise, this algorithm define a submesh based on geom subshape.

    Parameters:
    - - -
    geom If defined, subshape to be meshed
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Compute   self,
      geom = 0
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.AutomaticTetrahedralization   self,
      fineness = 0
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.AutomaticHexahedralization   self,
      fineness = 0
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.AddHypothesis   self,
      hyp,
      geom = 0
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    hyp is a hypothesis to assign
    geom is subhape of mesh geometry
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GetHypothesisList   self,
      geom
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    geom is subhape of mesh geometry
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.RemoveGlobalHypotheses   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Group   self,
      grp,
      name = ""
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    grp is a geometric group, a vertex, an edge, a face or a solid
    name is the name of the mesh group
    -
    -
    Returns:
    SMESH_GroupOnGeom
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.ExportToMED   self,
      f,
      version,
      opt = 0
    -
    - - - - - -
    -   - - -

    -Export the mesh in a file with the MED format and choice the version of MED format

    Parameters:
    - - - -
    f is the file name
    version values are SMESH.MED_V2_1, SMESH.MED_V2_2
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.ExportMED   self,
      f,
      auto_groups = 0,
      version = MED_V2_2
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - -
    f is the file name
    auto_groups boolean parameter for creating/not creating the groups Group_On_All_Nodes, Group_On_All_Faces, ... ; the typical use is auto_groups=false.
    version MED format version(MED_V2_1 or MED_V2_2)
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.ExportDAT   self,
      f
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    f is the file name
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.ExportUNV   self,
      f
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    f is the file name
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.ExportSTL   self,
      f,
      ascii = 1
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    f is the file name
    ascii defined the kind of file contents
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.CreateEmptyGroup   self,
      elementType,
      name
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    elementType is the type of elements in the group
    name is the name of the mesh group
    -
    -
    Returns:
    SMESH_Group
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GroupOnGeom   self,
      grp,
      name = "",
      type = None
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    grp is a geometric group, a vertex, an edge, a face or a solid
    name is the name of the mesh group
    -
    -
    Returns:
    SMESH_GroupOnGeom
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.MakeGroupByIds   self,
      groupName,
      elementType,
      elemIDs
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - -
    groupName is the name of the mesh group
    elementType is the type of elements in the group
    elemIDs is the list of ids
    -
    -
    Returns:
    SMESH_Group
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.MakeGroup   self,
      groupName,
      elementType,
      CritType = FT_Undefined,
      Compare = FT_EqualTo,
      Treshold = "",
      UnaryOp = FT_Undefined
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - - - -
    groupName is the name of the mesh group
    elementType is the type of elements in the group
    CritType is type of criterion( FT_Taper, FT_Area, FT_RangeOfIds, FT_LyingOnGeom etc. )
    Compare belong to {FT_LessThan, FT_MoreThan, FT_EqualTo}
    Treshold is threshold value (range of id ids as string, shape, numeric)
    UnaryOp is FT_LogicalNOT or FT_Undefined
    -
    -
    Returns:
    SMESH_Group
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.MakeGroupByCriterion   self,
      groupName,
      Criterion
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    groupName is the name of the mesh group
    Criterion is the instance of Criterion class
    -
    -
    Returns:
    SMESH_Group
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.MakeGroupByCriteria   self,
      groupName,
      theCriteria
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    groupName is the name of the mesh group
    Criteria is the list of criterions
    -
    -
    Returns:
    SMESH_Group
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.MakeGroupByFilter   self,
      groupName,
      theFilter
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    groupName is the name of the mesh group
    Criterion is the instance of Filter class
    -
    -
    Returns:
    SMESH_Group
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GetIdsFromFilter   self,
      theFilter
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    theFilter is SMESH_Filter
    -
    -
    Returns:
    list of ids
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.GetFreeBorders   self  ) 
    -
    - - - - - -
    -   - - -

    -

    Returns:
    list of SMESH.FreeEdges.Border structure: edge id and two its nodes ids.
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.RemoveGroup   self,
      group
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.RemoveGroupWithContents   self,
      group
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.GetGroups   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.GetGroupNames   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.UnionGroups   self,
      group1,
      group2,
      name
    -
    - - - - - -
    -   - - -

    -All mesh elements that are present in initial groups are added to the new one

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.IntersectGroups   self,
      group1,
      group2,
      name
    -
    - - - - - -
    -   - - -

    -All mesh elements that are present in both initial groups are added to the new one.

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.CutGroups   self,
      mainGroup,
      toolGroup,
      name
    -
    - - - - - -
    -   - - -

    -All mesh elements that are present in main group but do not present in tool group are added to the new one

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GetLog   self,
      clearAfterGet
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    clearAfterGet log is emptied after Get (safe if concurrents access)
    -
    -
    Returns:
    list of log_block structures: commandType number coords indexes
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.ClearLog   self  ) 
    -
    - - - - - -
    -   - - -

    -Must be used immediately after GetLog if clearAfterGet is false.

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.GetId   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.GetStudyId   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.HasDuplicatedGroupNamesMED   self  ) 
    -
    - - - - - -
    -   - - -

    -Consider maximum group name length stored in MED file.

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.GetMeshEditor   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.GetMEDMesh   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.NbNodes   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.NbElements   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.NbEdges   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.NbEdgesOfOrder   self,
      elementOrder
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.NbFaces   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.NbFacesOfOrder   self,
      elementOrder
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.NbTriangles   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.NbTrianglesOfOrder   self,
      elementOrder
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.NbQuadrangles   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.NbQuadranglesOfOrder   self,
      elementOrder
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.NbPolygons   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.NbVolumes   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.NbVolumesOfOrder   self,
      elementOrder
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.NbTetras   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.NbTetrasOfOrder   self,
      elementOrder
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.NbHexas   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.NbHexasOfOrder   self,
      elementOrder
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.NbPyramids   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.NbPyramidsOfOrder   self,
      elementOrder
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.NbPrisms   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.NbPrismsOfOrder   self,
      elementOrder
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    elementOrder is order of elements: ORDER_ANY, ORDER_LINEAR or ORDER_QUADRATIC
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.NbPolyhedrons   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.NbSubMesh   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.GetElementsId   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GetElementsByType   self,
      elementType
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    elementType is required type of elements
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.GetNodesId   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GetElementType   self,
      id,
      iselem
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GetSubMeshElementsId   self,
      shapeID
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    shapeID is geom object(subshape) IOR
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GetSubMeshNodesId   self,
      shapeID,
      all
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    shapeID is geom object(subshape) IOR
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GetSubMeshElementType   self,
      shapeID
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    shapeID is geom object(subshape) IOR
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.Dump   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GetNodeXYZ   self,
      id
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GetNodeInverseElements   self,
      id
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GetShapeID   self,
      id
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.GetShapeIDForElem   id  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GetElemNbNodes   self,
      id
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.GetElemNode   self,
      id,
      index
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.IsMediumNode   self,
      elementID,
      nodeID
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.IsMediumNodeOfAnyElem   self,
      nodeID,
      elementType
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.ElemNbEdges   self,
      id
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.ElemNbFaces   self,
      id
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.IsPoly   self,
      id
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.IsQuadratic   self,
      id
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.BaryCenter   self,
      id
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.RemoveElements   self,
      IDsOfElements
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    IDsOfElements is list of ids of elements to remove
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.RemoveNodes   self,
      IDsOfNodes
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    IDsOfNodes is list of ids of nodes to remove
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.AddNode   self,
      x,
      y,
      z
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.AddEdge   self,
      IDsOfNodes
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    IdsOfNodes List of node IDs for creation of element. Needed order of nodes in this list corresponds to description of MED.
    - This description is located by the following link: http://www.salome-platform.org/salome2/web_med_internet/logiciels/medV2.2.2_doc_html/html/modele_de_donnees.html#3.
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.AddFace   self,
      IDsOfNodes
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    IdsOfNodes List of node IDs for creation of element. Needed order of nodes in this list corresponds to description of MED.
    - This description is located by the following link: http://www.salome-platform.org/salome2/web_med_internet/logiciels/medV2.2.2_doc_html/html/modele_de_donnees.html#3.
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.AddPolygonalFace   self,
      IdsOfNodes
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.AddVolume   self,
      IDsOfNodes
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    IdsOfNodes List of node IDs for creation of element. Needed order of nodes in this list corresponds to description of MED.
    - This description is located by the following link: http://www.salome-platform.org/salome2/web_med_internet/logiciels/medV2.2.2_doc_html/html/modele_de_donnees.html#3.
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.AddPolyhedralVolume   self,
      IdsOfNodes,
      Quantities
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    IdsOfNodes List of node IDs for volume creation face by face.
    Quantities List of integer values, Quantities[i] gives quantity of nodes in face number i.
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.AddPolyhedralVolumeByFaces   self,
      IdsOfFaces
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    IdsOfFaces List of face IDs for volume creation.
    -
    -Note: The created volume will refer only to nodes of the given faces, not to the faces itself.
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.MoveNode   self,
      NodeID,
      x,
      y,
      z
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - -
    NodeID id of the node
    x new X coordinate
    y new Y coordinate
    z new Z coordinate
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.FindNodeClosestTo   self,
      x,
      y,
      z
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - -
    x X coordinate of a point
    y Y coordinate of a point
    z Z coordinate of a point
    -
    -
    Returns:
    id of a node
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.MeshToPassThroughAPoint   self,
      x,
      y,
      z
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - -
    x X coordinate of a point
    y Y coordinate of a point
    z Z coordinate of a point
    -
    -
    Returns:
    id of a moved node
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.InverseDiag   self,
      NodeID1,
      NodeID2
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    NodeID1 first node id
    NodeID2 second node id
    -
    -
    Returns:
    false if proper faces not found
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.DeleteDiag   self,
      NodeID1,
      NodeID2
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    NodeID1 first node id
    NodeID2 second node id
    -
    -
    Returns:
    false if proper faces not found
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Reorient   self,
      IDsOfElements = None
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    IDsOfElements if undefined reorient all mesh elements
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.ReorientObject   self,
      theObject
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    theObject is mesh, submesh or group
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.TriToQuad   self,
      IDsOfElements,
      theCriterion,
      MaxAngle
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - -
    IDsOfElements The triangles to be fused,
    theCriterion is FT_...; used to choose a neighbour to fuse with.
    MaxAngle is a max angle between element normals at which fusion is still performed; theMaxAngle is mesured in radians.
    -
    -
    Returns:
    TRUE in case of success, FALSE otherwise.
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.TriToQuadObject   self,
      theObject,
      theCriterion,
      MaxAngle
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - -
    theObject is mesh, submesh or group
    theCriterion is FT_...; used to choose a neighbour to fuse with.
    MaxAngle is a max angle between element normals at which fusion is still performed; theMaxAngle is mesured in radians.
    -
    -
    Returns:
    TRUE in case of success, FALSE otherwise.
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.QuadToTri   self,
      IDsOfElements,
      theCriterion
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - -
    IDsOfElements the faces to be splitted.
    theCriterion is FT_...; used to choose a diagonal for splitting.
     TRUE in case of success, FALSE otherwise.
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.QuadToTriObject   self,
      theObject,
      theCriterion
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    theObject object to taking list of elements from, is mesh, submesh or group
    theCriterion is FT_...; used to choose a diagonal for splitting.
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.SplitQuad   self,
      IDsOfElements,
      Diag13
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    theElems The faces to be splitted
    the13Diag is used to choose a diagonal for splitting.
    -
    -
    Returns:
    TRUE in case of success, FALSE otherwise.
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.SplitQuadObject   self,
      theObject,
      Diag13
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    theObject is object to taking list of elements from, is mesh, submesh or group
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.BestSplit   self,
      IDOfQuad,
      theCriterion
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    IDOfQuad ID of the quadrangle to be splitted.
    theCriterion is FT_...; a criterion to choose a diagonal for splitting.
    -
    -
    Returns:
    1 if 1-3 diagonal is better, 2 if 2-4 diagonal is better, 0 if error occurs.
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.SplitQuadsNearTriangularFacets   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.SplitHexaToTetras   self,
      theObject,
      theNode000,
      theNode001
    -
    - - - - - -
    -   - - -

    -Use pattern mapping functionality for splitting.

    Parameters:
    - - - - -
    theObject object to take list of hexahedrons from; is mesh, submesh or group.
    theNode000,theNode001 is in range [0,7]; give an orientation of the pattern relatively each hexahedron: the (0,0,0) key-point of pattern will be mapped into <theNode000>-th node of each volume, the (0,0,1) key-point will be mapped into <theNode001>-th node of each volume. The (0,0,0) key-point of used pattern corresponds to not split corner.
     TRUE in case of success, FALSE otherwise.
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.SplitHexaToPrisms   self,
      theObject,
      theNode000,
      theNode001
    -
    - - - - - -
    -   - - -

    -Use pattern mapping functionality for splitting.

    Parameters:
    - - - - -
    theObject object to take list of hexahedrons from; is mesh, submesh or group.
    theNode000,theNode001 is in range [0,7]; give an orientation of the pattern relatively each hexahedron: the (0,0,0) key-point of pattern will be mapped into <theNode000>-th node of each volume, the (0,0,1) key-point will be mapped into <theNode001>-th node of each volume. The edge (0,0,0)-(0,0,1) of used pattern connects two not split corners.
     TRUE in case of success, FALSE otherwise.
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Smooth   self,
      IDsOfElements,
      IDsOfFixedNodes,
      MaxNbOfIterations,
      MaxAspectRatio,
      Method
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - - -
    IDsOfElements list if ids of elements to smooth
    IDsOfFixedNodes list of ids of fixed nodes. Note that nodes built on edges and boundary nodes are always fixed.
    MaxNbOfIterations maximum number of iterations
    MaxAspectRatio varies in range [1.0, inf]
    Method is Laplacian(LAPLACIAN_SMOOTH) or Centroidal(CENTROIDAL_SMOOTH)
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.SmoothObject   self,
      theObject,
      IDsOfFixedNodes,
      MaxNbOfIterations,
      MaxxAspectRatio,
      Method
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - - -
    theObject object to smooth
    IDsOfFixedNodes list of ids of fixed nodes. Note that nodes built on edges and boundary nodes are always fixed.
    MaxNbOfIterations maximum number of iterations
    MaxAspectRatio varies in range [1.0, inf]
    Method is Laplacian(LAPLACIAN_SMOOTH) or Centroidal(CENTROIDAL_SMOOTH)
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.SmoothParametric   IDsOfElements,
      IDsOfFixedNodes,
      MaxNbOfIterations,
      MaxAspectRatio,
      Method
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - - -
    IDsOfElements list if ids of elements to smooth
    IDsOfFixedNodes list of ids of fixed nodes. Note that nodes built on edges and boundary nodes are always fixed.
    MaxNbOfIterations maximum number of iterations
    MaxAspectRatio varies in range [1.0, inf]
    Method is Laplacian(LAPLACIAN_SMOOTH) or Centroidal(CENTROIDAL_SMOOTH)
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.SmoothParametricObject   self,
      theObject,
      IDsOfFixedNodes,
      MaxNbOfIterations,
      MaxAspectRatio,
      Method
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - - -
    theObject object to smooth
    IDsOfFixedNodes list of ids of fixed nodes. Note that nodes built on edges and boundary nodes are always fixed.
    MaxNbOfIterations maximum number of iterations
    MaxAspectRatio varies in range [1.0, inf]
    Method is Laplacian(LAPLACIAN_SMOOTH) or Centroidal(CENTROIDAL_SMOOTH)
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.ConvertToQuadratic   self,
      theForce3d
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.ConvertFromQuadratic   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.RenumberNodes   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.RenumberElements   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.RotationSweep   self,
      IDsOfElements,
      Axix,
      AngleInRadians,
      NbOfSteps,
      Tolerance
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - - -
    IDsOfElements list of ids of elements to sweep
    Axix axis of rotation, AxisStruct or line(geom object)
    AngleInRadians angle of Rotation
    NbOfSteps number of steps
    Tolerance tolerance
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.RotationSweepObject   self,
      theObject,
      Axix,
      AngleInRadians,
      NbOfSteps,
      Tolerance
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - - -
    theObject object wich elements should be sweeped
    Axix axis of rotation, AxisStruct or line(geom object)
    AngleInRadians angle of Rotation
    NbOfSteps number of steps
    Tolerance tolerance
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.ExtrusionSweep   self,
      IDsOfElements,
      StepVector,
      NbOfSteps
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - -
    IDsOfElements list of elements ids for extrusion
    StepVector vector, defining the direction and value of extrusion
    NbOfSteps the number of steps
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.AdvancedExtrusion   self,
      IDsOfElements,
      StepVector,
      NbOfSteps,
      ExtrFlags,
      SewTolerance
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - - -
    IDsOfElements is ids of elements
    StepVector vector, defining the direction and value of extrusion
    NbOfSteps the number of steps
    ExtrFlags set flags for performing extrusion
    SewTolerance uses for comparing locations of nodes if flag EXTRUSION_FLAG_SEW is set
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.ExtrusionSweepObject   self,
      theObject,
      StepVector,
      NbOfSteps
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - -
    theObject object wich elements should be processed
    StepVector vector, defining the direction and value of extrusion
    NbOfSteps the number of steps
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.ExtrusionSweepObject1D   self,
      theObject,
      StepVector,
      NbOfSteps
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - -
    theObject object wich elements should be processed
    StepVector vector, defining the direction and value of extrusion
    NbOfSteps the number of steps
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.ExtrusionSweepObject2D   self,
      theObject,
      StepVector,
      NbOfSteps
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - -
    theObject object wich elements should be processed
    StepVector vector, defining the direction and value of extrusion
    NbOfSteps the number of steps
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.ExtrusionAlongPath   self,
      IDsOfElements,
      PathMesh,
      PathShape,
      NodeStart,
      HasAngles,
      Angles,
      HasRefPoint,
      RefPoint,
      LinearVariation = False
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - - - - - - -
    IDsOfElements is ids of elements
    PathMesh mesh containing a 1D sub-mesh on the edge, along which proceeds the extrusion
    PathShape is shape(edge); as the mesh can be complex, the edge is used to define the sub-mesh for the path
    NodeStart the first or the last node on the edge. It is used to define the direction of extrusion
    HasAngles allows the shape to be rotated around the path to get the resulting mesh in a helical fashion
    Angles list of angles
    HasRefPoint allows to use base point
    RefPoint point around which the shape is rotated(the mass center of the shape by default). User can specify any point as the Base Point and the shape will be rotated with respect to this point.
    LinearVariation makes compute rotation angles as linear variation of given Angles along path steps
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.ExtrusionAlongPathObject   self,
      theObject,
      PathMesh,
      PathShape,
      NodeStart,
      HasAngles,
      Angles,
      HasRefPoint,
      RefPoint,
      LinearVariation = False
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - - - - - - -
    IDsOfElements is ids of elements
    PathMesh mesh containing a 1D sub-mesh on the edge, along which proceeds the extrusion
    PathShape is shape(edge); as the mesh can be complex, the edge is used to define the sub-mesh for the path
    NodeStart the first or the last node on the edge. It is used to define the direction of extrusion
    HasAngles allows the shape to be rotated around the path to get the resulting mesh in a helical fashion
    Angles list of angles
    HasRefPoint allows to use base point
    RefPoint point around which the shape is rotated(the mass center of the shape by default). User can specify any point as the Base Point and the shape will be rotated with respect to this point.
    LinearVariation makes compute rotation angles as linear variation of given Angles along path steps
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Mirror   self,
      IDsOfElements,
      Mirror,
      theMirrorType,
      Copy = 0
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - -
    IDsOfElements list of elements ids
    Mirror is AxisStruct or geom object(point, line, plane)
    theMirrorType is POINT, AXIS or PLANE If the Mirror is geom object this parameter is unnecessary
    Copy allows to copy element(Copy is 1) or to replace with its mirroring(Copy is 0)
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.MirrorObject   self,
      theObject,
      Mirror,
      theMirrorType,
      Copy = 0
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - -
    theObject mesh, submesh or group
    Mirror is AxisStruct or geom object(point, line, plane)
    theMirrorType is POINT, AXIS or PLANE If the Mirror is geom object this parameter is unnecessary
    Copy allows to copy element(Copy is 1) or to replace with its mirroring(Copy is 0)
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Translate   self,
      IDsOfElements,
      Vector,
      Copy
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - -
    IDsOfElements list of elements ids
    Vector direction of translation(DirStruct or vector)
    Copy allows to copy the translated elements
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.TranslateObject   self,
      theObject,
      Vector,
      Copy
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - -
    theObject object to translate(mesh, submesh, or group)
    Vector direction of translation(DirStruct or geom vector)
    Copy allows to copy the translated elements
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.Rotate   self,
      IDsOfElements,
      Axis,
      AngleInRadians,
      Copy
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - -
    IDsOfElements list of elements ids
    Axis axis of rotation(AxisStruct or geom line)
    AngleInRadians angle of rotation(in radians)
    Copy allows to copy the rotated elements
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.RotateObject   self,
      theObject,
      Axis,
      AngleInRadians,
      Copy
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - -
    theObject object to rotate(mesh, submesh, or group)
    Axis axis of rotation(AxisStruct or geom line)
    AngleInRadians angle of rotation(in radians)
    Copy allows to copy the rotated elements
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.FindCoincidentNodes   self,
      Tolerance
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    Tolerance tolerance value
    list of group of nodes
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.FindCoincidentNodesOnPart   self,
      SubMeshOrGroup,
      Tolerance
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - -
    Tolerance tolerance value
    SubMeshOrGroup SubMesh or Group
    list of group of nodes
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.MergeNodes   self,
      GroupsOfNodes
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    list of group of nodes
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.FindEqualElements   self,
      MeshOrSubMeshOrGroup
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    MeshOrSubMeshOrGroup Mesh or SubMesh, or Group of elements for searching
    -
    -
    Returns:
    a list of groups of equal elements
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.MergeElements   self,
      GroupsOfElementsID
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    GroupsOfElementsID groups of elements for merging
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.MergeEqualElements   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.SewFreeBorders   self,
      FirstNodeID1,
      SecondNodeID1,
      LastNodeID1,
      FirstNodeID2,
      SecondNodeID2,
      LastNodeID2,
      CreatePolygons,
      CreatePolyedrs
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.SewConformFreeBorders   self,
      FirstNodeID1,
      SecondNodeID1,
      LastNodeID1,
      FirstNodeID2,
      SecondNodeID2
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.SewBorderToSide   self,
      FirstNodeIDOnFreeBorder,
      SecondNodeIDOnFreeBorder,
      LastNodeIDOnFreeBorder,
      FirstNodeIDOnSide,
      LastNodeIDOnSide,
      CreatePolygons,
      CreatePolyedrs
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.SewSideElements   self,
      IDsOfSide1Elements,
      IDsOfSide2Elements,
      NodeID1OfSide1ToMerge,
      NodeID1OfSide2ToMerge,
      NodeID2OfSide1ToMerge,
      NodeID2OfSide2ToMerge
    -
    - - - - - -
    -   - - -

    -Nodes belonging to Side1 are merged with nodes of elements of Side2. Number of elements in theSide1 and in theSide2 must be equal and they should have similar node connectivity. The nodes to merge should belong to sides borders and the first node should be linked to the second.

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh.ChangeElemNodes   self,
      ide,
      newIDs
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    ide the element id
    newIDs nodes ids
    -
    -
    Returns:
    If number of nodes is not corresponded to type of element - returns false
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.GetLastCreatedNodes   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh.GetLastCreatedElems   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -


    Field Documentation

    -

    - - - - -
    - - - - -
    int smesh.Mesh.geom = 0 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh.mesh = 0 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh.editor = 0 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh.geom
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh.mesh
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh.editor
    -
    - - - - - -
    -   - - -

    -

    - - diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Algorithm.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Algorithm.html deleted file mode 100644 index f960f7109..000000000 --- a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Algorithm.html +++ /dev/null @@ -1,556 +0,0 @@ - - - - - - Main Page - - - - -  - - - -

    -

    smesh.Mesh_Algorithm Class Reference

    Mother class to define algorithm, recommended to don't use directly. -More... -

    -Inheritance diagram for smesh.Mesh_Algorithm:

    Inheritance graph
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Public Member Functions

    def GetSubMesh
     If the algorithm is global, return 0;
    - else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     mesh
     geom
     subm
     algo

    Static Public Attributes

    int mesh = 0
    int geom = 0
    int subm = 0
    int algo = 0
    -

    Detailed Description

    -More details. -

    -


    Member Function Documentation

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetSubMesh   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetAlgorithm   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetCompatibleHypothesis   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetName   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.SetName   self,
      name
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetId   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Create   self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so"
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Hypothesis   self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so"
    -
    - - - - - -
    -   - - -

    -

    -


    Field Documentation

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.mesh = 0 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.geom = 0 [static]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.subm = 0 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.algo = 0 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.mesh
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.geom
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.subm
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.algo
    -
    - - - - - -
    -   - - -

    -

    - - diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Algorithm__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Algorithm__inherit__graph.jpg deleted file mode 100644 index 5cc00367f..000000000 Binary files a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Algorithm__inherit__graph.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__CompositeSegment.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__CompositeSegment.html deleted file mode 100644 index 5b9b534ce..000000000 --- a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__CompositeSegment.html +++ /dev/null @@ -1,973 +0,0 @@ - - - - - - Main Page - - - - -  - - - -

    -

    smesh.Mesh_CompositeSegment Class Reference

    Class to define a segment 1D algorithm for discretization. -More... -

    -Inheritance diagram for smesh.Mesh_CompositeSegment:

    Inheritance graph
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Public Member Functions

    def __init__
     Private constructor.
    def LocalLength
     Define "LocalLength" hypothesis to cut an edge in several segments with the same length.
    def NumberOfSegments
     Define "NumberOfSegments" hypothesis to cut an edge in several fixed number of segments.
    def Arithmetic1D
     Define "Arithmetic1D" hypothesis to cut an edge in several segments with arithmetic length increasing.
    def StartEndLength
     Define "StartEndLength" hypothesis to cut an edge in several segments with geometric length increasing.
    def Deflection1D
     Define "Deflection1D" hypothesis.
    def Propagation
     Define "Propagation" hypothesis that propagate all other hypothesis on all others edges that are in the opposite side in the case of quadrangular faces.
    def AutomaticLength
     Define "AutomaticLength" hypothesis.
    def LengthNearVertex
     Define "SegmentLengthAroundVertex" hypothesis.
    def QuadraticMesh
     Define "QuadraticMesh" hypothesis, forcing construction of quadratic edges.
    def GetSubMesh
     If the algorithm is global, return 0;
    - else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     geom
     mesh
     subm
     algo

    Static Public Attributes

    int mesh = 0
    int subm = 0
    int algo = 0
    -

    Detailed Description

    -More details. -

    -


    Member Function Documentation

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_CompositeSegment.__init__   self,
      mesh,
      geom = 0
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented from smesh.Mesh_Segment.

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.LocalLength   self,
      l
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    l for the length of segments that cut an edge
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.NumberOfSegments   self,
      n,
      s = []
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    n for the number of segments that cut an edge
    s for the scale factor (optional)
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.Arithmetic1D   self,
      start,
      end
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    start for the length of the first segment
    end for the length of the last segment
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.StartEndLength   self,
      start,
      end
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    start for the length of the first segment
    end for the length of the last segment
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.Deflection1D   self,
      d
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    d for the deflection
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Segment.Propagation   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.AutomaticLength   self,
      fineness = 0
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    fineness for the fineness [0-1]
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.LengthNearVertex   self,
      length,
      vertex = 0
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    length for the segment length
    vertex for the length localization: vertex index [0,1] | verext object
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Segment.QuadraticMesh   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -If the 2D mesher sees that all boundary edges are quadratic ones, it generates quadratic faces, else it generates linear faces using medium nodes as if they were vertex ones. The 3D mesher generates quadratic volumes only if all boundary faces are quadratic ones, else it fails.

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetSubMesh   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetAlgorithm   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetCompatibleHypothesis   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetName   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.SetName   self,
      name
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetId   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Create   self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Hypothesis   self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -


    Field Documentation

    -

    - - - - -
    - - - - -
    smesh.Mesh_Segment.geom [inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented from smesh.Mesh_Algorithm.

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.mesh = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.mesh [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.subm = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.subm [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.algo = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.algo [inherited]
    -
    - - - - - -
    -   - - -

    -

    - - diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__CompositeSegment__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__CompositeSegment__inherit__graph.jpg deleted file mode 100644 index f24ab014c..000000000 Binary files a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__CompositeSegment__inherit__graph.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Hexahedron.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Hexahedron.html deleted file mode 100644 index 4489d1f23..000000000 --- a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Hexahedron.html +++ /dev/null @@ -1,592 +0,0 @@ - - - - - - Main Page - - - - -  - - - -

    -

    smesh.Mesh_Hexahedron Class Reference

    Class to define a hexahedron 3D algorithm. -More... -

    -Inheritance diagram for smesh.Mesh_Hexahedron:

    Inheritance graph
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Public Member Functions

    def __init__
     Private constructor.
    def GetSubMesh
     If the algorithm is global, return 0;
    - else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     mesh
     geom
     subm
     algo

    Static Public Attributes

    int mesh = 0
    int geom = 0
    int subm = 0
    int algo = 0
    -

    Detailed Description

    -More details. -

    -


    Member Function Documentation

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Hexahedron.__init__   self,
      mesh,
      geom = 0
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetSubMesh   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetAlgorithm   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetCompatibleHypothesis   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetName   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.SetName   self,
      name
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetId   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Create   self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Hypothesis   self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -


    Field Documentation

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.mesh = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.mesh [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.geom = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.geom [inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.subm = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.subm [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.algo = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.algo [inherited]
    -
    - - - - - -
    -   - - -

    -

    - - diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Hexahedron__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Hexahedron__inherit__graph.jpg deleted file mode 100644 index 08777ef7c..000000000 Binary files a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Hexahedron__inherit__graph.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Netgen.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Netgen.html deleted file mode 100644 index cde572c63..000000000 --- a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Netgen.html +++ /dev/null @@ -1,681 +0,0 @@ - - - - - - Main Page - - - - -  - - - -

    -

    smesh.Mesh_Netgen Class Reference

    Class to define a NETGEN-based 2D or 3D algorithm that need no discrete boundary (i.e. -More... -

    -Inheritance diagram for smesh.Mesh_Netgen:

    Inheritance graph
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Public Member Functions

    def __init__
     Private constructor.
    def Parameters
     Define hypothesis containing parameters of the algorithm.
    def GetSubMesh
     If the algorithm is global, return 0;
    - else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     is3D
     mesh
     geom
     subm
     algo

    Static Public Attributes

    int is3D = 0
    int mesh = 0
    int geom = 0
    int subm = 0
    int algo = 0
    -

    Detailed Description

    -independent)

    -This class is deprecated, only for compatibility!

    -More details. -

    -


    Member Function Documentation

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Netgen.__init__   self,
      mesh,
      is3D,
      geom = 0
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Netgen.Parameters   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetSubMesh   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetAlgorithm   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetCompatibleHypothesis   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetName   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.SetName   self,
      name
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetId   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Create   self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Hypothesis   self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -


    Field Documentation

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Netgen.is3D = 0 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Netgen.is3D
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.mesh = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.mesh [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.geom = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.geom [inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.subm = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.subm [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.algo = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.algo [inherited]
    -
    - - - - - -
    -   - - -

    -

    - - diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Netgen__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Netgen__inherit__graph.jpg deleted file mode 100644 index d82cacddc..000000000 Binary files a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Netgen__inherit__graph.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Prism3D.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Prism3D.html deleted file mode 100644 index a3b06f9de..000000000 --- a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Prism3D.html +++ /dev/null @@ -1,592 +0,0 @@ - - - - - - Main Page - - - - -  - - - -

    -

    smesh.Mesh_Prism3D Class Reference

    Class to define a 3D extrusion algorithm. -More... -

    -Inheritance diagram for smesh.Mesh_Prism3D:

    Inheritance graph
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Public Member Functions

    def __init__
     Private constructor.
    def GetSubMesh
     If the algorithm is global, return 0;
    - else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     mesh
     geom
     subm
     algo

    Static Public Attributes

    int mesh = 0
    int geom = 0
    int subm = 0
    int algo = 0
    -

    Detailed Description

    -More details. -

    -


    Member Function Documentation

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Prism3D.__init__   self,
      mesh,
      geom = 0
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetSubMesh   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetAlgorithm   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetCompatibleHypothesis   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetName   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.SetName   self,
      name
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetId   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Create   self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Hypothesis   self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -


    Field Documentation

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.mesh = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.mesh [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.geom = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.geom [inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.subm = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.subm [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.algo = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.algo [inherited]
    -
    - - - - - -
    -   - - -

    -

    - - diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Prism3D__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Prism3D__inherit__graph.jpg deleted file mode 100644 index fdf7cb8c1..000000000 Binary files a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Prism3D__inherit__graph.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection1D.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection1D.html deleted file mode 100644 index 94c282715..000000000 --- a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection1D.html +++ /dev/null @@ -1,658 +0,0 @@ - - - - - - Main Page - - - - -  - - - -

    -

    smesh.Mesh_Projection1D Class Reference

    Class to define a projection 1D algorithm. -More... -

    -Inheritance diagram for smesh.Mesh_Projection1D:

    Inheritance graph
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Public Member Functions

    def __init__
     Private constructor.
    def SourceEdge
     Define "Source Edge" hypothesis, specifying a meshed edge to take a mesh pattern from, and optionally association of vertices between the source edge and a target one (where a hipothesis is assigned to).
    def GetSubMesh
     If the algorithm is global, return 0;
    - else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     mesh
     geom
     subm
     algo

    Static Public Attributes

    int mesh = 0
    int geom = 0
    int subm = 0
    int algo = 0
    -

    Detailed Description

    -More details. -

    -


    Member Function Documentation

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Projection1D.__init__   self,
      mesh,
      geom = 0
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Projection1D.SourceEdge   self,
      edge,
      mesh = None,
      srcV = None,
      tgtV = None
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - -
    edge to take nodes distribution from
    mesh to take nodes distribution from (optional)
    srcV is vertex of edge to associate with tgtV (optional)
    tgtV is vertex of the edge where the algorithm is assigned, to associate with srcV (optional)
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetSubMesh   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetAlgorithm   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetCompatibleHypothesis   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetName   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.SetName   self,
      name
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetId   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Create   self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Hypothesis   self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -


    Field Documentation

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.mesh = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.mesh [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.geom = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.geom [inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.subm = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.subm [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.algo = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.algo [inherited]
    -
    - - - - - -
    -   - - -

    -

    - - diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection1D__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection1D__inherit__graph.jpg deleted file mode 100644 index 8d038d0b0..000000000 Binary files a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection1D__inherit__graph.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection2D.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection2D.html deleted file mode 100644 index f2985f61a..000000000 --- a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection2D.html +++ /dev/null @@ -1,672 +0,0 @@ - - - - - - Main Page - - - - -  - - - -

    -

    smesh.Mesh_Projection2D Class Reference

    Class to define a projection 2D algorithm. -More... -

    -Inheritance diagram for smesh.Mesh_Projection2D:

    Inheritance graph
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Public Member Functions

    def __init__
     Private constructor.
    def SourceFace
     Define "Source Face" hypothesis, specifying a meshed face to take a mesh pattern from, and optionally association of vertices between the source face and a target one (where a hipothesis is assigned to).
    def GetSubMesh
     If the algorithm is global, return 0;
    - else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     mesh
     geom
     subm
     algo

    Static Public Attributes

    int mesh = 0
    int geom = 0
    int subm = 0
    int algo = 0
    -

    Detailed Description

    -More details. -

    -


    Member Function Documentation

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Projection2D.__init__   self,
      mesh,
      geom = 0
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Projection2D.SourceFace   self,
      face,
      mesh = None,
      srcV1 = None,
      tgtV1 = None,
      srcV2 = None,
      tgtV2 = None
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - - - -
    face to take mesh pattern from
    mesh to take mesh pattern from (optional)
    srcV1 is vertex of face to associate with tgtV1 (optional)
    tgtV1 is vertex of the face where the algorithm is assigned, to associate with srcV1 (optional)
    srcV2 is vertex of face to associate with tgtV1 (optional)
    tgtV2 is vertex of the face where the algorithm is assigned, to associate with srcV2 (optional)
    -
    -Note: association vertices must belong to one edge of a face
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetSubMesh   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetAlgorithm   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetCompatibleHypothesis   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetName   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.SetName   self,
      name
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetId   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Create   self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Hypothesis   self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -


    Field Documentation

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.mesh = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.mesh [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.geom = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.geom [inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.subm = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.subm [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.algo = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.algo [inherited]
    -
    - - - - - -
    -   - - -

    -

    - - diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection2D__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection2D__inherit__graph.jpg deleted file mode 100644 index 0433234b9..000000000 Binary files a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection2D__inherit__graph.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection3D.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection3D.html deleted file mode 100644 index 9393e9fd7..000000000 --- a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection3D.html +++ /dev/null @@ -1,672 +0,0 @@ - - - - - - Main Page - - - - -  - - - -

    -

    smesh.Mesh_Projection3D Class Reference

    Class to define a projection 3D algorithm. -More... -

    -Inheritance diagram for smesh.Mesh_Projection3D:

    Inheritance graph
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Public Member Functions

    def __init__
     Private constructor.
    def SourceShape3D
     Define "Source Shape 3D" hypothesis, specifying a meshed solid to take a mesh pattern from, and optionally association of vertices between the source solid and a target one (where a hipothesis is assigned to).
    def GetSubMesh
     If the algorithm is global, return 0;
    - else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     mesh
     geom
     subm
     algo

    Static Public Attributes

    int mesh = 0
    int geom = 0
    int subm = 0
    int algo = 0
    -

    Detailed Description

    -More details. -

    -


    Member Function Documentation

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Projection3D.__init__   self,
      mesh,
      geom = 0
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Projection3D.SourceShape3D   self,
      solid,
      mesh = 0,
      srcV1 = 0,
      tgtV1 = 0,
      srcV2 = 0,
      tgtV2 = 0
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - - - -
    solid to take mesh pattern from
    mesh to take mesh pattern from (optional)
    srcV1 is vertex of solid to associate with tgtV1 (optional)
    tgtV1 is vertex of the solid where the algorithm is assigned, to associate with srcV1 (optional)
    srcV2 is vertex of solid to associate with tgtV1 (optional)
    tgtV2 is vertex of the solid where the algorithm is assigned, to associate with srcV2 (optional)
    -
    -Note: association vertices must belong to one edge of a solid
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetSubMesh   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetAlgorithm   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetCompatibleHypothesis   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetName   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.SetName   self,
      name
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetId   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Create   self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Hypothesis   self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -


    Field Documentation

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.mesh = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.mesh [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.geom = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.geom [inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.subm = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.subm [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.algo = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.algo [inherited]
    -
    - - - - - -
    -   - - -

    -

    - - diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection3D__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection3D__inherit__graph.jpg deleted file mode 100644 index 17aaff156..000000000 Binary files a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Projection3D__inherit__graph.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Quadrangle.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Quadrangle.html deleted file mode 100644 index 6cf4f44f2..000000000 --- a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Quadrangle.html +++ /dev/null @@ -1,623 +0,0 @@ - - - - - - Main Page - - - - -  - - - -

    -

    smesh.Mesh_Quadrangle Class Reference

    Class to define a quadrangle 2D algorithm. -More... -

    -Inheritance diagram for smesh.Mesh_Quadrangle:

    Inheritance graph
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Public Member Functions

    def __init__
     Private constructor.
    def QuadranglePreference
     Define "QuadranglePreference" hypothesis, forcing construction of quadrangles if the number of nodes on opposite edges is not the same in the case where the global number of nodes on edges is even.
    def GetSubMesh
     If the algorithm is global, return 0;
    - else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     mesh
     geom
     subm
     algo

    Static Public Attributes

    int mesh = 0
    int geom = 0
    int subm = 0
    int algo = 0
    -

    Detailed Description

    -More details. -

    -


    Member Function Documentation

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Quadrangle.__init__   self,
      mesh,
      geom = 0
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Quadrangle.QuadranglePreference   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetSubMesh   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetAlgorithm   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetCompatibleHypothesis   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetName   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.SetName   self,
      name
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetId   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Create   self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Hypothesis   self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -


    Field Documentation

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.mesh = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.mesh [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.geom = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.geom [inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.subm = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.subm [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.algo = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.algo [inherited]
    -
    - - - - - -
    -   - - -

    -

    - - diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Quadrangle__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Quadrangle__inherit__graph.jpg deleted file mode 100644 index 38172d200..000000000 Binary files a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Quadrangle__inherit__graph.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__RadialPrism3D.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__RadialPrism3D.html deleted file mode 100644 index cad682748..000000000 --- a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__RadialPrism3D.html +++ /dev/null @@ -1,1011 +0,0 @@ - - - - - - Main Page - - - - -  - - - -

    -

    smesh.Mesh_RadialPrism3D Class Reference

    Class to define a Radial Prism 3D algorithm. -More... -

    -Inheritance diagram for smesh.Mesh_RadialPrism3D:

    Inheritance graph
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Public Member Functions

    def __init__
     Private constructor.
    def Get3DHypothesis
     Return 3D hypothesis holding the 1D one.
    def OwnHypothesis
     Private method creating 1D hypothes and storing it in the LayerDistribution hypothes.
    def NumberOfLayers
     Define "NumberOfLayers" hypothesis, specifying a number of layers of prisms to build between the inner and outer shells.
    def LocalLength
     Define "LocalLength" hypothesis, specifying segment length to build between the inner and outer shells.
    def NumberOfSegments
     Define "NumberOfSegments" hypothesis, specifying a number of layers of prisms to build between the inner and outer shells.
    def Arithmetic1D
     Define "Arithmetic1D" hypothesis, specifying distribution of segments to build between the inner and outer shells as arithmetic length increasing.
    def StartEndLength
     Define "StartEndLength" hypothesis, specifying distribution of segments to build between the inner and outer shells as geometric length increasing.
    def AutomaticLength
     Define "AutomaticLength" hypothesis, specifying number of segments to build between the inner and outer shells.
    def GetSubMesh
     If the algorithm is global, return 0;
    - else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     distribHyp
     nbLayers
     mesh
     geom
     subm
     algo

    Static Public Attributes

    int mesh = 0
    int geom = 0
    int subm = 0
    int algo = 0
    -

    Detailed Description

    -More details. -

    -


    Member Function Documentation

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_RadialPrism3D.__init__   self,
      mesh,
      geom = 0
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_RadialPrism3D.Get3DHypothesis   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_RadialPrism3D.OwnHypothesis   self,
      hypType,
      args = [],
      so = "libStdMeshersEngine.so"
    -
    - - - - - -
    -   - - -

    -Returns the created hypothes

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_RadialPrism3D.NumberOfLayers   self,
      n
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_RadialPrism3D.LocalLength   self,
      l
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    l for the length of segments
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_RadialPrism3D.NumberOfSegments   self,
      n,
      s = []
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    n for the number of segments
    s for the scale factor (optional)
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_RadialPrism3D.Arithmetic1D   self,
      start,
      end
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    start for the length of the first segment
    end for the length of the last segment
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_RadialPrism3D.StartEndLength   self,
      start,
      end
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    start for the length of the first segment
    end for the length of the last segment
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_RadialPrism3D.AutomaticLength   self,
      fineness = 0
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    fineness for the fineness [0-1]
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetSubMesh   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetAlgorithm   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetCompatibleHypothesis   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetName   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.SetName   self,
      name
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetId   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Create   self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Hypothesis   self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -


    Field Documentation

    -

    - - - - -
    - - - - -
    smesh.Mesh_RadialPrism3D.distribHyp
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_RadialPrism3D.nbLayers
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.mesh = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.mesh [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.geom = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.geom [inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.subm = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.subm [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.algo = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.algo [inherited]
    -
    - - - - - -
    -   - - -

    -

    - - diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__RadialPrism3D__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__RadialPrism3D__inherit__graph.jpg deleted file mode 100644 index 326430da5..000000000 Binary files a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__RadialPrism3D__inherit__graph.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Segment.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Segment.html deleted file mode 100644 index fa5868ad0..000000000 --- a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Segment.html +++ /dev/null @@ -1,974 +0,0 @@ - - - - - - Main Page - - - - -  - - - -

    -

    smesh.Mesh_Segment Class Reference

    Class to define a segment 1D algorithm for discretization. -More... -

    -Inheritance diagram for smesh.Mesh_Segment:

    Inheritance graph
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Public Member Functions

    def __init__
     Private constructor.
    def LocalLength
     Define "LocalLength" hypothesis to cut an edge in several segments with the same length.
    def NumberOfSegments
     Define "NumberOfSegments" hypothesis to cut an edge in several fixed number of segments.
    def Arithmetic1D
     Define "Arithmetic1D" hypothesis to cut an edge in several segments with arithmetic length increasing.
    def StartEndLength
     Define "StartEndLength" hypothesis to cut an edge in several segments with geometric length increasing.
    def Deflection1D
     Define "Deflection1D" hypothesis.
    def Propagation
     Define "Propagation" hypothesis that propagate all other hypothesis on all others edges that are in the opposite side in the case of quadrangular faces.
    def AutomaticLength
     Define "AutomaticLength" hypothesis.
    def LengthNearVertex
     Define "SegmentLengthAroundVertex" hypothesis.
    def QuadraticMesh
     Define "QuadraticMesh" hypothesis, forcing construction of quadratic edges.
    def GetSubMesh
     If the algorithm is global, return 0;
    - else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     geom
     mesh
     subm
     algo

    Static Public Attributes

    int mesh = 0
    int subm = 0
    int algo = 0
    -

    Detailed Description

    -More details. -

    -


    Member Function Documentation

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.__init__   self,
      mesh,
      geom = 0
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_CompositeSegment, and smesh.Mesh_Segment_Python.

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.LocalLength   self,
      l
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    l for the length of segments that cut an edge
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.NumberOfSegments   self,
      n,
      s = []
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    n for the number of segments that cut an edge
    s for the scale factor (optional)
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.Arithmetic1D   self,
      start,
      end
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    start for the length of the first segment
    end for the length of the last segment
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.StartEndLength   self,
      start,
      end
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    start for the length of the first segment
    end for the length of the last segment
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.Deflection1D   self,
      d
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    d for the deflection
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Segment.Propagation   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.AutomaticLength   self,
      fineness = 0
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    fineness for the fineness [0-1]
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.LengthNearVertex   self,
      length,
      vertex = 0
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    length for the segment length
    vertex for the length localization: vertex index [0,1] | verext object
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Segment.QuadraticMesh   self  ) 
    -
    - - - - - -
    -   - - -

    -If the 2D mesher sees that all boundary edges are quadratic ones, it generates quadratic faces, else it generates linear faces using medium nodes as if they were vertex ones. The 3D mesher generates quadratic volumes only if all boundary faces are quadratic ones, else it fails.

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetSubMesh   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetAlgorithm   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetCompatibleHypothesis   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetName   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.SetName   self,
      name
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetId   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Create   self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Hypothesis   self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -


    Field Documentation

    -

    - - - - -
    - - - - -
    smesh.Mesh_Segment.geom
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented from smesh.Mesh_Algorithm.

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.mesh = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.mesh [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.subm = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.subm [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.algo = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.algo [inherited]
    -
    - - - - - -
    -   - - -

    -

    - - diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Segment__Python.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Segment__Python.html deleted file mode 100644 index 4107fa168..000000000 --- a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Segment__Python.html +++ /dev/null @@ -1,1025 +0,0 @@ - - - - - - Main Page - - - - -  - - - -

    -

    smesh.Mesh_Segment_Python Class Reference

    Class to define a segment 1D algorithm for discretization with python function. -More... -

    -Inheritance diagram for smesh.Mesh_Segment_Python:

    Inheritance graph
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Public Member Functions

    def __init__
     Private constructor.
    def PythonSplit1D
     Define "PythonSplit1D" hypothesis based on the Erwan Adam patch, awaiting equivalent SALOME functionality.
    def LocalLength
     Define "LocalLength" hypothesis to cut an edge in several segments with the same length.
    def NumberOfSegments
     Define "NumberOfSegments" hypothesis to cut an edge in several fixed number of segments.
    def Arithmetic1D
     Define "Arithmetic1D" hypothesis to cut an edge in several segments with arithmetic length increasing.
    def StartEndLength
     Define "StartEndLength" hypothesis to cut an edge in several segments with geometric length increasing.
    def Deflection1D
     Define "Deflection1D" hypothesis.
    def Propagation
     Define "Propagation" hypothesis that propagate all other hypothesis on all others edges that are in the opposite side in the case of quadrangular faces.
    def AutomaticLength
     Define "AutomaticLength" hypothesis.
    def LengthNearVertex
     Define "SegmentLengthAroundVertex" hypothesis.
    def QuadraticMesh
     Define "QuadraticMesh" hypothesis, forcing construction of quadratic edges.
    def GetSubMesh
     If the algorithm is global, return 0;
    - else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     geom
     mesh
     subm
     algo

    Static Public Attributes

    int mesh = 0
    int subm = 0
    int algo = 0
    -

    Detailed Description

    -More details. -

    -


    Member Function Documentation

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment_Python.__init__   self,
      mesh,
      geom = 0
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented from smesh.Mesh_Segment.

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment_Python.PythonSplit1D   self,
      n,
      func
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    n for the number of segments that cut an edge
    func for the python function that calculate the length of all segments
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.LocalLength   self,
      l
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    l for the length of segments that cut an edge
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.NumberOfSegments   self,
      n,
      s = []
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    n for the number of segments that cut an edge
    s for the scale factor (optional)
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.Arithmetic1D   self,
      start,
      end
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    start for the length of the first segment
    end for the length of the last segment
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.StartEndLength   self,
      start,
      end
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    start for the length of the first segment
    end for the length of the last segment
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.Deflection1D   self,
      d
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    d for the deflection
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Segment.Propagation   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.AutomaticLength   self,
      fineness = 0
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    fineness for the fineness [0-1]
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Segment.LengthNearVertex   self,
      length,
      vertex = 0
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - -
    length for the segment length
    vertex for the length localization: vertex index [0,1] | verext object
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Segment.QuadraticMesh   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -If the 2D mesher sees that all boundary edges are quadratic ones, it generates quadratic faces, else it generates linear faces using medium nodes as if they were vertex ones. The 3D mesher generates quadratic volumes only if all boundary faces are quadratic ones, else it fails.

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetSubMesh   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetAlgorithm   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetCompatibleHypothesis   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetName   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.SetName   self,
      name
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetId   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Create   self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Hypothesis   self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -


    Field Documentation

    -

    - - - - -
    - - - - -
    smesh.Mesh_Segment.geom [inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented from smesh.Mesh_Algorithm.

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.mesh = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.mesh [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.subm = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.subm [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.algo = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.algo [inherited]
    -
    - - - - - -
    -   - - -

    -

    - - diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Segment__Python__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Segment__Python__inherit__graph.jpg deleted file mode 100644 index 68ae8f3e6..000000000 Binary files a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Segment__Python__inherit__graph.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Segment__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Segment__inherit__graph.jpg deleted file mode 100644 index 05c33cea6..000000000 Binary files a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Segment__inherit__graph.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Tetrahedron.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Tetrahedron.html deleted file mode 100644 index f3aa6de53..000000000 --- a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Tetrahedron.html +++ /dev/null @@ -1,1059 +0,0 @@ - - - - - - Main Page - - - - -  - - - -

    -

    smesh.Mesh_Tetrahedron Class Reference

    Class to define a tetrahedron 3D algorithm. -More... -

    -Inheritance diagram for smesh.Mesh_Tetrahedron:

    Inheritance graph
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Public Member Functions

    def __init__
     Private constructor.
    def MaxElementVolume
     Define "MaxElementVolume" hypothesis to give the maximun volume of each tetrahedral.
    def Parameters
     Define "Netgen 3D Parameters" hypothesis.
    def SetMaxSize
     Set MaxSize.
    def SetSecondOrder
     Set SecondOrder flag.
    def SetOptimize
     Set Optimize flag.
    def SetFineness
     Set Fineness.
    def SetGrowthRate
     Set GrowthRate.
    def SetNbSegPerEdge
     Set NbSegPerEdge.
    def SetNbSegPerRadius
     Set NbSegPerRadius.
    def GetSubMesh
     If the algorithm is global, return 0;
    - else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     algoType
     params
     mesh
     geom
     subm
     algo

    Static Public Attributes

    int params = 0
    int algoType = 0
    int mesh = 0
    int geom = 0
    int subm = 0
    int algo = 0
    -

    Detailed Description

    -More details. -

    -


    Member Function Documentation

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Tetrahedron.__init__   self,
      mesh,
      algoType,
      geom = 0
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Tetrahedron.MaxElementVolume   self,
      vol
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    vol for the maximum volume of each tetrahedral
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Tetrahedron.Parameters   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Tetrahedron.SetMaxSize   self,
      theSize
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Tetrahedron.SetSecondOrder   self,
      theVal
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Tetrahedron.SetOptimize   self,
      theVal
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Tetrahedron.SetFineness   self,
      theFineness
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    theFineness is: VeryCoarse, Coarse, Moderate, Fine, VeryFine or Custom
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Tetrahedron.SetGrowthRate   self,
      theRate
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Tetrahedron.SetNbSegPerEdge   self,
      theVal
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Tetrahedron.SetNbSegPerRadius   self,
      theVal
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetSubMesh   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetAlgorithm   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetCompatibleHypothesis   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetName   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.SetName   self,
      name
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetId   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Create   self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Hypothesis   self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -


    Field Documentation

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Tetrahedron.params = 0 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Tetrahedron.algoType = 0 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Tetrahedron.algoType
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Tetrahedron.params
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.mesh = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.mesh [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.geom = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.geom [inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.subm = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.subm [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.algo = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.algo [inherited]
    -
    - - - - - -
    -   - - -

    -

    - - diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Tetrahedron__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Tetrahedron__inherit__graph.jpg deleted file mode 100644 index 78d01b1be..000000000 Binary files a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Tetrahedron__inherit__graph.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Triangle.html b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Triangle.html deleted file mode 100644 index 7046b0ebf..000000000 --- a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Triangle.html +++ /dev/null @@ -1,1130 +0,0 @@ - - - - - - Main Page - - - - -  - - - -

    -

    smesh.Mesh_Triangle Class Reference

    Class to define a triangle 2D algorithm. -More... -

    -Inheritance diagram for smesh.Mesh_Triangle:

    Inheritance graph
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Public Member Functions

    def __init__
     Private constructor.
    def MaxElementArea
     Define "MaxElementArea" hypothesis to give the maximun area of each triangles.
    def LengthFromEdges
     Define "LengthFromEdges" hypothesis to build triangles based on the length of the edges taken from the wire.
    def Parameters
     Define "Netgen 2D Parameters" hypothesis.
    def SetMaxSize
     Set MaxSize.
    def SetSecondOrder
     Set SecondOrder flag.
    def SetOptimize
     Set Optimize flag.
    def SetFineness
     Set Fineness.
    def SetGrowthRate
     Set GrowthRate.
    def SetNbSegPerEdge
     Set NbSegPerEdge.
    def SetNbSegPerRadius
     Set NbSegPerRadius.
    def SetQuadAllowed
     Set QuadAllowed flag.
    def GetSubMesh
     If the algorithm is global, return 0;
    - else return the submesh associated to this algorithm.
    def GetAlgorithm
     Return the wrapped mesher.
    def GetCompatibleHypothesis
     Get list of hypothesis that can be used with this algorithm.
    def GetName
     Get name of algo.
    def SetName
     Set name to algo.
    def GetId
     Get id of algo.
    def Create
     Private method.
    def Hypothesis
     Private method.

    Data Fields

     algoType
     params
     mesh
     geom
     subm
     algo

    Static Public Attributes

    int algoType = 0
    int params = 0
    int mesh = 0
    int geom = 0
    int subm = 0
    int algo = 0
    -

    Detailed Description

    -More details. -

    -


    Member Function Documentation

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Triangle.__init__   self,
      mesh,
      algoType,
      geom = 0
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Triangle.MaxElementArea   self,
      area
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    area for the maximum area of each triangles
    -
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Triangle.LengthFromEdges   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Triangle.Parameters   self  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Triangle.SetMaxSize   self,
      theSize
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Triangle.SetSecondOrder   seld,
      theVal
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Triangle.SetOptimize   self,
      theVal
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Triangle.SetFineness   self,
      theFineness
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    theFineness is: VeryCoarse, Coarse, Moderate, Fine, VeryFine or Custom
    -
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Triangle.SetGrowthRate   self,
      theRate
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Triangle.SetNbSegPerEdge   self,
      theVal
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Triangle.SetNbSegPerRadius   self,
      theVal
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Triangle.SetQuadAllowed   self,
      toAllow
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetSubMesh   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetAlgorithm   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetCompatibleHypothesis   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetName   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.SetName   self,
      name
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.Mesh_Algorithm.GetId   self  )  [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Create   self,
      mesh,
      geom,
      hypo,
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.Mesh_Algorithm.Hypothesis   self,
      hyp,
      args = [],
      so = "libStdMeshersEngine.so"
    [inherited]
    -
    - - - - - -
    -   - - -

    -

    -


    Field Documentation

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Triangle.algoType = 0 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Triangle.params = 0 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Triangle.algoType
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Triangle.params
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.mesh = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.mesh [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.geom = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.geom [inherited]
    -
    - - - - - -
    -   - - -

    - -

    -Reimplemented in smesh.Mesh_Segment.

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.subm = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.subm [inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Mesh_Algorithm.algo = 0 [static, inherited]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.Mesh_Algorithm.algo [inherited]
    -
    - - - - - -
    -   - - -

    -

    - - diff --git a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Triangle__inherit__graph.jpg b/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Triangle__inherit__graph.jpg deleted file mode 100644 index 30692a195..000000000 Binary files a/doc/salome/gui/SMESH/smeshpy_doc/classsmesh_1_1Mesh__Triangle__inherit__graph.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/smeshpy_doc/namespacesmesh.html b/doc/salome/gui/SMESH/smeshpy_doc/namespacesmesh.html index 68f0d7837..669113793 100644 --- a/doc/salome/gui/SMESH/smeshpy_doc/namespacesmesh.html +++ b/doc/salome/gui/SMESH/smeshpy_doc/namespacesmesh.html @@ -8,1380 +8,42 @@ +  + + +

    Package smesh

    -Python package smesh defines several classes, destined for easy and -clear mesh creation and edition. -

    Example.
    -
    -

    +

    +

    +For available methods and classes please see documentation of +smeshDC package. +All methods of smeshDC package are accessible via smesh namespace, +for example "mesh = smesh.Mesh(shape, name)".

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    Data Structures

    class  Mesh_Algorithm
     Mother class to define algorithm, recommended to don't use directly. More...
    class  Mesh_Segment
     Class to define a segment 1D algorithm for discretization. More...
    class  Mesh_CompositeSegment
     Class to define a segment 1D algorithm for discretization. More...
    class  Mesh_Segment_Python
     Class to define a segment 1D algorithm for discretization with python function. More...
    class  Mesh_Triangle
     Class to define a triangle 2D algorithm. More...
    class  Mesh_Quadrangle
     Class to define a quadrangle 2D algorithm. More...
    class  Mesh_Tetrahedron
     Class to define a tetrahedron 3D algorithm. More...
    class  Mesh_Hexahedron
     Class to define a hexahedron 3D algorithm. More...
    class  Mesh_Netgen
     Class to define a NETGEN-based 2D or 3D algorithm that need no discrete boundary (i.e. More...
    class  Mesh_Projection1D
     Class to define a projection 1D algorithm. More...
    class  Mesh_Projection2D
     Class to define a projection 2D algorithm. More...
    class  Mesh_Projection3D
     Class to define a projection 3D algorithm. More...
    class  Mesh_Prism3D
     Class to define a 3D extrusion algorithm. More...
    class  Mesh_RadialPrism3D
     Class to define a Radial Prism 3D algorithm. More...
    class  Mesh
     Class to define a mesh. More...

    Functions

    def GetName
     Gets object name.
    def SetName
     Sets name to object.
    def EnumToLong
     Returns long value from enumeration Uses for SMESH.FunctorType enumeration.
    def GetPointStruct
     Get PointStruct from vertex.
    def GetDirStruct
     Get DirStruct from vector.
    def GetAxisStruct
     Get AxisStruct from object.
    def SetEmbeddedMode
     Set the current mode.
    def IsEmbeddedMode
     Get the current mode.
    def SetCurrentStudy
     Set the current study.
    def GetCurrentStudy
     Get the current study.
    def CreateMeshesFromUNV
     Create Mesh object importing data from given UNV file.
    def CreateMeshesFromMED
     Create Mesh object(s) importing data from given MED file.
    def CreateMeshesFromSTL
     Create Mesh object importing data from given STL file.
    def GetSubShapesId
     From SMESH_Gen interface.
    def GetPattern
     From SMESH_Gen interface.
    def GetEmptyCriterion
     Creates an empty criterion.
    def GetCriterion
     Creates a criterion by given parameters.
    def GetFilter
     Creates filter by given parameters of criterion.
    def GetFunctor
     Creates numerical functor by its type.
    def TreatHypoStatus
     Print error message if a hypothesis was not assigned.

    Variables

    int noNETGENPlugin = 0
    int noNETGENPlugin = 1
    int REGULAR = 1
    int PYTHON = 2
    int COMPOSITE = 3
    int MEFISTO = 3
    int NETGEN = 4
    int GHS3D = 5
    int FULL_NETGEN = 6
     POINT = SMESH_MeshEditor.POINT
     AXIS = SMESH_MeshEditor.AXIS
     PLANE = SMESH_MeshEditor.PLANE
     LAPLACIAN_SMOOTH = SMESH_MeshEditor.LAPLACIAN_SMOOTH
     CENTROIDAL_SMOOTH = SMESH_MeshEditor.CENTROIDAL_SMOOTH
    int VeryCoarse = 0
    int Coarse = 1
    int Moderate = 2
    int Fine = 3
    int VeryFine = 4
    int Custom = 5
    string NO_NAME = "NoName"
    tuple smesh = salome.lcc.FindOrLoadComponent("FactoryServer", "SMESH")
    -


    Function Documentation

    -

    - - - - -
    - - - - - - - - - -
    def smesh.GetName   obj  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.SetName   obj,
      name
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.EnumToLong   theItem  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.GetPointStruct   theVertex  ) 
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    theVertex is GEOM object(vertex)
    -
    -
    Returns:
    SMESH.PointStruct
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.GetDirStruct   theVector  ) 
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    theVector is GEOM object(vector)
    -
    -
    Returns:
    SMESH.DirStruct
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.GetAxisStruct   theObj  ) 
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    theObj is GEOM object(line or plane)
    -
    -
    Returns:
    SMESH.AxisStruct
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.SetEmbeddedMode   theMode  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - -
    def smesh.IsEmbeddedMode  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.SetCurrentStudy   theStudy  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - -
    def smesh.GetCurrentStudy  ) 
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - - -
    def smesh.CreateMeshesFromUNV   theFileName  ) 
    -
    - - - - - -
    -   - - -

    -

    Returns:
    an instance of Mesh class
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.CreateMeshesFromMED   theFileName  ) 
    -
    - - - - - -
    -   - - -

    -

    Returns:
    a list of Mesh class instances
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.CreateMeshesFromSTL   theFileName  ) 
    -
    - - - - - -
    -   - - -

    -

    Returns:
    an instance of Mesh class
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - -
    def smesh.GetSubShapesId   theMainObject,
      theListOfSubObjects
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - - - - - -
    def smesh.GetPattern  ) 
    -
    - - - - - -
    -   - - -

    -Creates pattern

    -

    - - - - -
    - - - - - - - - -
    def smesh.GetEmptyCriterion  ) 
    -
    - - - - - -
    -   - - -

    -

    Returns:
    SMESH.Filter.Criterion
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.GetCriterion   elementType,
      CritType,
      Compare = FT_EqualTo,
      Treshold = "",
      UnaryOp = FT_Undefined,
      BinaryOp = FT_Undefined
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - - - -
    elementType is the type of elements(NODE, EDGE, FACE, VOLUME)
    CritType is type of criterion( FT_Taper, FT_Area, FT_RangeOfIds, FT_LyingOnGeom etc. )
    Compare belong to {FT_LessThan, FT_MoreThan, FT_EqualTo}
    Treshold is threshold value (range of ids as string, shape, numeric)
    UnaryOp is FT_LogicalNOT or FT_Undefined
    BinaryOp is binary logical operation FT_LogicalAND, FT_LogicalOR or FT_Undefined(must be for the last criterion in criteria)
    -
    -
    Returns:
    SMESH.Filter.Criterion
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.GetFilter   elementType,
      CritType = FT_Undefined,
      Compare = FT_EqualTo,
      Treshold = "",
      UnaryOp = FT_Undefined
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - - - - - -
    elementType is the type of elements in the group
    CritType is type of criterion( FT_Taper, FT_Area, FT_RangeOfIds, FT_LyingOnGeom etc. )
    Compare belong to {FT_LessThan, FT_MoreThan, FT_EqualTo}
    Treshold is threshold value (range of id ids as string, shape, numeric)
    UnaryOp is FT_LogicalNOT or FT_Undefined
    -
    -
    Returns:
    SMESH_Filter
    -
    -

    - - - - -
    - - - - - - - - - -
    def smesh.GetFunctor   theCriterion  ) 
    -
    - - - - - -
    -   - - -

    -

    Parameters:
    - - -
    theCrierion is FT_...; functor type
    -
    -
    Returns:
    SMESH_NumericalFunctor
    -
    -

    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    def smesh.TreatHypoStatus   status,
      hypName,
      geomName,
      isAlgo
    -
    - - - - -
    -   - - -

    -


    Variable Documentation

    -

    - - - - -
    - - - - -
    int smesh.noNETGENPlugin = 0 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.noNETGENPlugin = 1 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.REGULAR = 1 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.PYTHON = 2 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.COMPOSITE = 3 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.MEFISTO = 3 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.NETGEN = 4 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.GHS3D = 5 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.FULL_NETGEN = 6 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.POINT = SMESH_MeshEditor.POINT [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.AXIS = SMESH_MeshEditor.AXIS [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.PLANE = SMESH_MeshEditor.PLANE [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.LAPLACIAN_SMOOTH = SMESH_MeshEditor.LAPLACIAN_SMOOTH [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    smesh.CENTROIDAL_SMOOTH = SMESH_MeshEditor.CENTROIDAL_SMOOTH [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.VeryCoarse = 0 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Coarse = 1 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Moderate = 2 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Fine = 3 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.VeryFine = 4 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - - - - -
    int smesh.Custom = 5 [static]
    -
    - - - - - -
    -   - - -

    -

    -

    - - - - -
    - + +
    +
    +
    - +
    string smesh.NO_NAME = "NoName" [static] tuple smesh.smesh = salome.lcc.FindOrLoadComponent("FactoryServer", "SMESH") [static]
    -
    - - - - - -
    -   - + +

    -

    -

    - - - - -
    - - - - -
    tuple smesh.smesh = salome.lcc.FindOrLoadComponent("FactoryServer", "SMESH") [static]
    -
    - - - - - -
    -   - -

    -

    + +

    + +

    diff --git a/doc/salome/gui/SMESH/smeshpy_doc/namespacesmeshDC.html b/doc/salome/gui/SMESH/smeshpy_doc/namespacesmeshDC.html new file mode 100644 index 000000000..ba523db16 --- /dev/null +++ b/doc/salome/gui/SMESH/smeshpy_doc/namespacesmeshDC.html @@ -0,0 +1,530 @@ + + + + + + Main Page + + + + +  + + + +

    Package smeshDC

    +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Data Structures

    class  smeshDC
    class  Mesh_Algorithm
     Mother class to define algorithm, recommended to don't use directly. More...
    class  Mesh_Segment
     Class to define a segment 1D algorithm for discretization. More...
    class  Mesh_CompositeSegment
     Class to define a segment 1D algorithm for discretization. More...
    class  Mesh_Segment_Python
     Class to define a segment 1D algorithm for discretization with python function. More...
    class  Mesh_Triangle
     Class to define a triangle 2D algorithm. More...
    class  Mesh_Quadrangle
     Class to define a quadrangle 2D algorithm. More...
    class  Mesh_Tetrahedron
     Class to define a tetrahedron 3D algorithm. More...
    class  Mesh_Hexahedron
     Class to define a hexahedron 3D algorithm. More...
    class  Mesh_Netgen
     Class to define a NETGEN-based 2D or 3D algorithm that need no discrete boundary (i.e. More...
    class  Mesh_Projection1D
     Class to define a projection 1D algorithm. More...
    class  Mesh_Projection2D
     Class to define a projection 2D algorithm. More...
    class  Mesh_Projection3D
     Class to define a projection 3D algorithm. More...
    class  Mesh_Prism3D
     Class to define a 3D extrusion algorithm. More...
    class  Mesh_RadialPrism3D
     Class to define a Radial Prism 3D algorithm. More...
    class  Mesh
     Class to define a mesh. More...

    Functions

    def GetName
     Gets object name.
    def SetName
    def TreatHypoStatus

    Variables

    int noNETGENPlugin = 0
    int noNETGENPlugin = 1
    int REGULAR = 1
    int PYTHON = 2
    int COMPOSITE = 3
    int MEFISTO = 3
    int NETGEN = 4
    int GHS3D = 5
    int FULL_NETGEN = 6
     POINT = SMESH_MeshEditor.POINT
     AXIS = SMESH_MeshEditor.AXIS
     PLANE = SMESH_MeshEditor.PLANE
     LAPLACIAN_SMOOTH = SMESH_MeshEditor.LAPLACIAN_SMOOTH
     CENTROIDAL_SMOOTH = SMESH_MeshEditor.CENTROIDAL_SMOOTH
    int VeryCoarse = 0
    int Coarse = 1
    int Moderate = 2
    int Fine = 3
    int VeryFine = 4
    int Custom = 5
    string NO_NAME = "NoName"
    +


    Function Documentation

    + +
    +
    + + + + + + + + + +
    def smeshDC.GetName (  obj  ) 
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + +
    def smeshDC.SetName (  obj,
      name 
    )
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    def smeshDC.TreatHypoStatus (  status,
      hypName,
      geomName,
      isAlgo 
    )
    +
    +
    + +

    + +

    +

    +


    Variable Documentation

    + +
    +
    + + + + +
    int smeshDC.noNETGENPlugin = 0 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.noNETGENPlugin = 1 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.REGULAR = 1 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.PYTHON = 2 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.COMPOSITE = 3 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.MEFISTO = 3 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.NETGEN = 4 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.GHS3D = 5 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.FULL_NETGEN = 6 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.POINT = SMESH_MeshEditor.POINT [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.AXIS = SMESH_MeshEditor.AXIS [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    smeshDC.PLANE = SMESH_MeshEditor.PLANE [static]
    +
    +
    + +

    + +

    +

    + +

    + +
    + +

    + +

    +

    + +

    + +

    +
    + + + + +
    int smeshDC.VeryCoarse = 0 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.Coarse = 1 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.Moderate = 2 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.Fine = 3 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.VeryFine = 4 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    int smeshDC.Custom = 5 [static]
    +
    +
    + +

    + +

    +

    + +

    +
    + + + + +
    string smeshDC.NO_NAME = "NoName" [static]
    +
    +
    + +

    + +

    +

    + +

    + + diff --git a/doc/salome/gui/SMESH/static/doxygen.css b/doc/salome/gui/SMESH/static/doxygen.css new file mode 100755 index 000000000..88e613d23 --- /dev/null +++ b/doc/salome/gui/SMESH/static/doxygen.css @@ -0,0 +1,170 @@ +H1 { + text-align: center; +} + +CAPTION { + font-weight: bold +} + +/* Link in the top navbar */ +A.qindex {} + +A.qindexRef {} + +/* Link to any cross-referenced Doxygen element */ +A.el { + text-decoration: none; + font-weight: bold +} + +A.elRef { + font-weight: bold +} + +/* Link to any cross-referenced Doxygen element inside a code section + (ex: header) +*/ +A.code { + text-decoration: none; + font-weight: normal; + color: #4444ee +} + +A.codeRef { + font-weight: normal; + color: #4444ee +} + +A:hover { + text-decoration: none; + background-color: lightblue +} + +DL.el { + margin-left: -1cm +} + +/* A code fragment (ex: header) */ +DIV.fragment { + width: 100%; + border: none; + background-color: #CCCCCC +} + +/* In the alpha list (coumpound index), style of an alphabetical index letter */ +DIV.ah { + background-color: #CCCCCC; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px +} + +/* Method name (+ type) */ +TD.md { + background-color: lightblue; + font-weight: bold; +} + +/* Method parameter (some of them) */ +TD.mdname1 { + background-color: lightblue; + font-weight: bold; color: #602020; +} + +/* Method parameter (some of them) */ +TD.mdname { + background-color: lightblue; + font-weight: bold; + color: #602020; + width: 600px; +} + +/* Separator between methods group (usually empty, seems not supported by IE) */ +DIV.groupHeader { + margin-left: 16px; + margin-top: 12px; + margin-bottom: 6px; + font-weight: bold +} + +DIV.groupText { + margin-left: 16px; + font-style: italic; + font-size: smaller +} + +BODY { + background: #FFFFFF; +} + +/*div.div-page { + background-color: #FFFFFF; + margin-left: 1em; + margin-right: 1em; + margin-top: 1em; + margin-bottom: 0.1em; + + padding-left: 1em; + padding-right: 1em; + padding-top: 0.5em; + padding-bottom: 0.5em; + + border: 2px solid #0D299A; + border-width: 2px; + border-color: #0D299A; +}*/ + +div.tabs { + text-align: justify; + margin-left : 2px; + margin-right : 2px; + margin-top : 2px; + margin-bottom : 2px + font-weight: bold; + color: #FFFFFF; +} + +DIV.div-footer { + margin-left: 1em; + margin-right: 1em; + margin-bottom: 0.2em; + text-align: right; + font-size: 9pt; +} + +/* In File List, Coumpound List, etc, 1st column of the index */ +TD.indexkey { + background-color: #CCCCCC; + font-weight: bold; + padding-right : 10px; + padding-top : 2px; + padding-left : 10px; + padding-bottom : 2px; + margin-left : 0px; + margin-right : 0px; + margin-top : 2px; + margin-bottom : 2px +} + +/* In File List, Coumpound List, etc, 2nd column of the index */ +TD.indexvalue { + background-color: #CCCCCC; + font-style: italic; + padding-right : 10px; + padding-top : 2px; + padding-left : 10px; + padding-bottom : 2px; + margin-left : 0px; + margin-right : 0px; + margin-top : 2px; + margin-bottom : 2px +} + +span.keyword { color: #008000 } +span.keywordtype { color: #604020 } +span.keywordflow { color: #e08000 } +span.comment { color: #800000 } +span.preprocessor { color: #806020 } +span.stringliteral { color: #002080 } +span.charliteral { color: #008080 } diff --git a/doc/salome/gui/SMESH/static/footer.html b/doc/salome/gui/SMESH/static/footer.html new file mode 100755 index 000000000..56d52a61a --- /dev/null +++ b/doc/salome/gui/SMESH/static/footer.html @@ -0,0 +1,10 @@ + + + + + +
    +
    Copyright © 2003-2007 CEA, EDF
    +
    + + diff --git a/doc/salome/gui/SMESH/static/header.html b/doc/salome/gui/SMESH/static/header.html new file mode 100755 index 000000000..a70a95e30 --- /dev/null +++ b/doc/salome/gui/SMESH/static/header.html @@ -0,0 +1,12 @@ + + + + + $title + + +
    +
    +SALOME documentation central +
    +
    diff --git a/doc/salome/gui/SMESH/texture_horiz_ltbluebubbles.jpg b/doc/salome/gui/SMESH/texture_horiz_ltbluebubbles.jpg deleted file mode 100755 index a10d494a5..000000000 Binary files a/doc/salome/gui/SMESH/texture_horiz_ltbluebubbles.jpg and /dev/null differ diff --git a/doc/salome/gui/SMESH/transforming_meshes.htm b/doc/salome/gui/SMESH/transforming_meshes.htm deleted file mode 100755 index 4f740bb60..000000000 --- a/doc/salome/gui/SMESH/transforming_meshes.htm +++ /dev/null @@ -1,758 +0,0 @@ - - - - - -Transforming Meshes - - - - - - - - - - - -

    Transforming Meshes

    - -

    Transforming Meshes

    - -

     

    - -

    Translation

    - -

     

    - -

    import SMESH_mechanic

    - -

     

    - -

    smesh - = SMESH_mechanic.smesh

    - -

    mesh = SMESH_mechanic.mesh -

    - -

     

    - -

    # define translation - vector

    - -

    point - = smesh.PointStruct(-150., -150., 0.)

    - -

    vector =smesh.DirStruct(point) -

    - -

     

    - -

    # translate a mesh

    - -

    doCopy = 1

    - -

     

    - -

    mesh.Translate([], - vector, doCopy)  

    - -

     

    - -

    Rotation

    - -

     

    - -

    import math

    - -

    import SMESH_mechanic

    - -

     

    - -

    smesh - = SMESH_mechanic.smesh

    - -

    mesh = SMESH_mechanic.mesh

    - -

     

    - -

    # define rotation axis - and angle

    - -

    axisXYZ = smesh.AxisStruct(0., 0., 0., - 5., 5., 20.)

    - -

    angle270 = 1.5 * math.pi

    - -

     

    - -

    # rotate a mesh

    - -

    mesh.Rotate([], - axisXYZ, angle270, 1)  

    - -

     

    - -

    Symmetry

    - -

     

    - -

    import math

    - -

     

    - -

    import SMESH_mechanic

    - -

     

    - -

    smesh - = SMESH_mechanic.smesh

    - -

    mesh = SMESH_mechanic.mesh

    - -

     

    - -

    # create a symmetrical - copy of the mesh mirrored through a point

    - -

    axis = SMESH.AxisStruct(0, 0, 0, 0, 0, - 0)

    - -

     

    - -

    mesh.Mirror([], axis, smesh.POINT, 1) -

    - -

     

    - -

    Merging - Nodes

    - -

     

    - -

    import SMESH_mechanic

    - -

    mesh = SMESH_mechanic.mesh

    - -

     

    - -

    # merge nodes

    - -

    Tolerance = 25.0

    - -

     

    - -

    GroupsOfNodes = -  mesh.FindCoincidentNodes(Tolerance)

    - -

    mesh.MergeNodes(GroupsOfNodes) -  

    - -

     

    - -

    Merging Elements

    - -

    import salome

    - -

    import geompy

    - -

    import smesh

    - -

     

    - -

    # create a face to - be meshed

    - -

    px = geompy.MakeVertex(100., - 0.  , 0. -  )

    - -

    py = geompy.MakeVertex(0. -  , 100., - 0.  )

    - -

    pz = geompy.MakeVertex(0. -  , 0.  , - 100.)

    - -

     

    - -

    vxy = geompy.MakeVector(px, - py)

    - -

    arc = geompy.MakeArc(py, - pz, px)

    - -

     

    - -

    wire = geompy.MakeWire([vxy, - arc])

    - -

    isPlanarFace = 1

    - -

     

    - -

    face1 = geompy.MakeFace(wire, - isPlanarFace)

    - -

    id_face1 = geompy.addToStudy(face1, - "Face1")

    - -

     

    - -

    # create a circle to - be an extrusion path

    - -

    px1 = geompy.MakeVertex( - 100.,  100., -  0.)

    - -

    py1 = geompy.MakeVertex(-100., - -100.,  0.)

    - -

    pz1 = geompy.MakeVertex( -   0., -    0., - 50.)

    - -

     

    - -

    circle = geompy.MakeCircleThreePnt(py1, - pz1, px1)

    - -

    id_circle = geompy.addToStudy(circle, - "Path")

    - -

     

    - -

    # create a 2D mesh - on the face

    - -

    trias = smesh.Mesh(face1, - "Face : 2D mesh")

    - -

     

    - -

    algo1D = trias.Segment()

    - -

    algo1D.NumberOfSegments(6)

    - -

    algo2D = trias.Triangle()

    - -

    algo2D.LengthFromEdges()

    - -

     

    - -

    trias.Compute()

    - -

     

    - -

    # create a path mesh

    - -

    circlemesh = smesh.Mesh(circle, - "Path mesh")

    - -

    algo = circlemesh.Segment()

    - -

    algo.NumberOfSegments(10)

    - -

    circlemesh.Compute()

    - -

     

    - -

    # extrusion of the - mesh

    - -

    trias.ExtrusionAlongPath([], - circlemesh, circle,

    - -

                             1, - 0, [], 0, smesh.PointStruct(0, 0, 0))

    - -

     

    - -

    # merge nodes

    - -

    print "Number - of nodes before MergeNodes:",

    - -

    trias.NbNodes()

    - -

    tolerance = 0.001

    - -

    array_of_nodes_groups - = trias.FindCoincidentNodes(tolerance)

    - -

     

    - -

    trias.MergeNodes(array_of_nodes_groups)

    - -

     

    - -

    print "Number - of nodes after MergeNodes:", trias.NbNodes()

    - -

    print ""

    - -

    print "Number - of elements before MergeEqualElements:"

    - -

    print "Edges -      : - ", trias.NbEdges()

    - -

    print "Triangles -  : ", - trias.NbTriangles()

    - -

    print "Quadrangles: - ", trias.NbQuadrangles()

    - -

    print "Volumes -    : - ", trias.NbVolumes()

    - -

     

    - -

    # merge elements

    - -

    trias.MergeEqualElements()

    - -

    print "Number - of elements after MergeEqualElements:"

    - -

    print "Edges -      : - ", trias.NbEdges()

    - -

    print "Triangles -  : ", - trias.NbTriangles()

    - -

    print "Quadrangles: - ", trias.NbQuadrangles()

    - -

    print "Volumes -    : - ", trias.NbVolumes()

    - -

     

    - -

    salome.sg.updateObjBrowser(1) -

    - -

     

    - -

    Sewing Meshes

    - -

    Sew Meshes Border to Border

    - -

    import geompy

    - -

    import smesh

    - -

     

    - -

    # create two faces - of a box

    - -

    box1 = geompy.MakeBox(0., - 0., -10., 30., 20., 25.)

    - -

    facesList1 = geompy.SubShapeAll(box1, - geompy.ShapeType["FACE"])

    - -

    face1 = facesList1[2]

    - -

     

    - -

    box2 = geompy.MakeBox(0., - 5., 0., 20., 20., 15.)

    - -

    facesList2 = geompy.SubShapeAll(box2, - geompy.ShapeType["FACE"])

    - -

    face2 = facesList2[1]

    - -

     

    - -

    edgesList = geompy.SubShapeAll(face2, - geompy.ShapeType["EDGE"])

    - -

    edge1 = edgesList[2]

    - -

     

    - -

    aComp = geompy.MakeCompound([face1, - face2])

    - -

    geompy.addToStudy(aComp, - "Two faces")

    - -

     

    - -

    # create a mesh on - two faces

    - -

    mesh = smesh.Mesh(aComp, - "Two faces : quadrangle mesh")

    - -

     

    - -

    algo1D = mesh.Segment()

    - -

    algo1D.NumberOfSegments(9)

    - -

    algo2D = mesh.Quadrangle()

    - -

     

    - -

    algo_local = mesh.Segment(edge1)

    - -

    algo_local.Arithmetic1D(1, - 4)

    - -

    algo_local.Propagation()

    - -

     

    - -

    mesh.Compute()

    - -

     

    - -

    # sew border to side

    - -

    # FirstNodeIDOnFreeBorder, - SecondNodeIDOnFreeBorder, LastNodeIDOnFreeBorder,

    - -

    # FirstNodeIDOnSide, - LastNodeIDOnSide,

    - -

    # CreatePolygons, CreatePolyedrs

    - -

    mesh.SewBorderToSide(5, - 45, 6, 113, 109, 0, 0)

    - -

    Sew Conform Free Borders

    - -

    import geompy

    - -

    import smesh

    - -

     

    - -

    # create two faces - of the box

    - -

    box1 = geompy.MakeBox(0., - 0., -10., 20., 20., 15.)

    - -

    facesList1 = geompy.SubShapeAll(box1, - geompy.ShapeType["FACE"])

    - -

    face1 = facesList1[2]

    - -

     

    - -

    box2 = geompy.MakeBox(0., - 5., 0., 20., 20., 15.)

    - -

    facesList2 = geompy.SubShapeAll(box2, - geompy.ShapeType["FACE"])

    - -

    face2 = facesList2[1]

    - -

     

    - -

    edgesList = geompy.SubShapeAll(face2, - geompy.ShapeType["EDGE"])

    - -

    edge1 = edgesList[2]

    - -

     

    - -

    aComp = geompy.MakeCompound([face1, - face2])

    - -

    geompy.addToStudy(aComp, - "Two faces")

    - -

     

    - -

    # create a mesh on - two faces

    - -

    mesh = smesh.Mesh(aComp, - "Two faces : quadrangle mesh")

    - -

     

    - -

    algo1D = mesh.Segment()

    - -

    algo1D.NumberOfSegments(9)

    - -

    algo2D = mesh.Quadrangle()

    - -

     

    - -

    algo_local = mesh.Segment(edge1)

    - -

    algo_local.Arithmetic1D(1, - 4)

    - -

    algo_local.Propagation()

    - -

     

    - -

    mesh.Compute()

    - -

     

    - -

    # sew conform free - borders

    - -

    # FirstNodeID1, SecondNodeID1, - LastNodeID1, FirstNodeID2, SecondNodeID2

    - -

    mesh.SewConformFreeBorders(5, - 45, 6, 3, 24)  

    - -

    Sew Free Borders

    - -

    import geompy

    - -

    import smesh

    - -

     

    - -

    # create two faces - of the box

    - -

    box1 = geompy.MakeBox(0., - 0., 0., 20., 20., 15.)

    - -

    facesList1 = geompy.SubShapeAll(box1, - geompy.ShapeType["FACE"])

    - -

    face1 = facesList1[2]

    - -

     

    - -

    box2 = geompy.MakeBox(0., - 5., 0., 20., 20., 15.)

    - -

    facesList2 = geompy.SubShapeAll(box2, - geompy.ShapeType["FACE"])

    - -

    face2 = facesList2[1]

    - -

     

    - -

    edgesList = geompy.SubShapeAll(face2, - geompy.ShapeType["EDGE"])

    - -

    edge1 = edgesList[2]

    - -

     

    - -

    aComp = geompy.MakeCompound([face1, - face2])

    - -

    geompy.addToStudy(aComp, - "Two faces")

    - -

     

    - -

    # create a mesh on - two faces

    - -

    mesh = smesh.Mesh(aComp, - "Two faces : quadrangle mesh")

    - -

     

    - -

    algo1D = mesh.Segment()

    - -

    algo1D.NumberOfSegments(4)

    - -

    algo2D = mesh.Quadrangle()

    - -

     

    - -

    algo_local = mesh.Segment(edge1)

    - -

    algo_local.Arithmetic1D(1, - 4)

    - -

    algo_local.Propagation()

    - -

     

    - -

    mesh.Compute()

    - -

     

    - -

    # sew free borders

    - -

    # FirstNodeID1, SecondNodeID1, - LastNodeID1,

    - -

    # FirstNodeID2, SecondNodeID2, - LastNodeID2, CreatePolygons, CreatePolyedrs

    - -

    mesh.SewFreeBorders(6, - 21, 5, 1, 12, 3, 0, 0)

    - -

    Sew Side Elements

    - -

    import geompy

    - -

    import smesh

    - -

     

    - -

    # create two boxes

    - -

    box1 = geompy.MakeBox(0., -  0., 0., - 10., 10., 10.)

    - -

    box2 = geompy.MakeBox(0., - 15., 0., 20., 25., 10.)

    - -

     

    - -

    EdgesList = geompy.SubShapeAll(box2, - geompy.ShapeType["EDGE"])

    - -

     

    - -

    aComp = geompy.MakeCompound([box1, - box2])

    - -

    geompy.addToStudy(aComp, - "Two boxes")

    - -

     

    - -

    # create a mesh on - two boxes

    - -

    mesh = smesh.Mesh(aComp, - "Two faces : quadrangle mesh")

    - -

     

    - -

    algo1D = mesh.Segment()

    - -

    algo1D.NumberOfSegments(2)

    - -

    algo2D = mesh.Quadrangle()

    - -

     

    - -

    algo_local = mesh.Segment(EdgesList[8])

    - -

    algo_local.NumberOfSegments(4)

    - -

    algo_local.Propagation()

    - -

     

    - -

    mesh.Compute()

    - -

     

    - -

    # sew side elements

    - -

    # IDsOfSide1Elements, - IDsOfSide2Elements,

    - -

    # NodeID1OfSide1ToMerge, - NodeID1OfSide2ToMerge, NodeID2OfSide1ToMerge, NodeID2OfSide2ToMerge

    - -

    mesh.SewSideElements([69, - 70, 71, 72], [91, 92, 89, 90], 8, 38, 23, 58)

    - - - - diff --git a/doc/salome/gui/SMESH/transparency.htm b/doc/salome/gui/SMESH/transparency.htm deleted file mode 100755 index ab7df8c56..000000000 --- a/doc/salome/gui/SMESH/transparency.htm +++ /dev/null @@ -1,98 +0,0 @@ - - - - - -Transparency - - - - - - - - - - - - -

    Transparency

    - -

    - -

     

    - -

    Using this slider you can set the transparency of shading. Absolutely - transparent shading will be invisible. By default it is absolutely opaque. -  

    - -

     

    - - - - diff --git a/doc/salome/gui/SMESH/viewing_meshes.htm b/doc/salome/gui/SMESH/viewing_meshes.htm deleted file mode 100755 index f2eca5e99..000000000 --- a/doc/salome/gui/SMESH/viewing_meshes.htm +++ /dev/null @@ -1,187 +0,0 @@ - - - - - -Viewing Meshes - - - - - - - - - - - -

    Viewing Meshes

    - -

    Viewing Mesh Infos

    - -

    import - geompy

    - -

    import smesh

    - -

     

    - -

    # create a box

    - -

    box = geompy.MakeBox(0., 0., 0., 20., - 20., 20.)

    - -

    geompy.addToStudy(box, "box")

    - -

     

    - -

    # create a mesh

    - -

    tetra = smesh.Mesh(box, "MeshBox")

    - -

     

    - -

    algo1D = tetra.Segment()

    - -

    algo1D.NumberOfSegments(3)

    - -

     

    - -

    algo2D = tetra.Triangle()

    - -

    algo2D.MaxElementArea(10.)

    - -

     

    - -

    algo3D = tetra.Tetrahedron(smesh.NETGEN)

    - -

    algo3D.MaxElementVolume(900.)

    - -

     

    - -

    # compute the mesh

    - -

    tetra.Compute()

    - -

     

    - -

    # print information - about the mesh

    - -

    print "Information about mesh:" -

    - -

    print "Number of nodes       : - ", tetra.NbNodes()

    - -

    print "Number of edges       : - ", tetra.NbEdges()

    - -

    print "Number of faces       : - ", tetra.NbFaces()

    - -

    print "          triangles -   : - ", tetra.NbTriangles()

    - -

    print "          quadrangles - : ", tetra.NbQuadrangles()

    - -

    print "          polygons -    : - ", tetra.NbPolygons()

    - -

    print "Number of volumes     : - ", tetra.NbVolumes()

    - -

    print "          tetrahedrons: - ", tetra.NbTetras()

    - -

    print "          hexahedrons - : ", tetra.NbHexas()

    - -

    print "          prisms -      : - ", tetra.NbPrisms()

    - -

    print "          pyramids -    : - ", tetra.NbPyramids()

    - -

    print "          polyhedrons - : ", tetra.NbPolyhedrons()  

    - - - - diff --git a/doc/salome/gui/SMESH/volume.htm b/doc/salome/gui/SMESH/volume.htm deleted file mode 100755 index bb675f1e0..000000000 --- a/doc/salome/gui/SMESH/volume.htm +++ /dev/null @@ -1,123 +0,0 @@ - - - - - -Volume - - - - - - - - - - - -

    Volume

    - -

    Volume mesh quality - criterion reflects the volume of meshes of a 3D object.

    - -

    - -

    To - apply the Volume quality criterion to your mesh:

    - -

    1. Display your mesh in the viewer.

    - -

    2. Choose Controls - > Volume or click button in the toolbar. Your - mesh will be displayed in the viewer with its elements colored according - to the applied mesh quality control criterion:

    - -

    See Also - a sample TUI Script of a Volume quality control operation. -  

    - -

     

    - -

     

    - -

     

    - - - - diff --git a/doc/salome/gui/SMESH/webhelp.cab b/doc/salome/gui/SMESH/webhelp.cab deleted file mode 100755 index b942f642f..000000000 Binary files a/doc/salome/gui/SMESH/webhelp.cab and /dev/null differ diff --git a/doc/salome/gui/SMESH/webhelp.jar b/doc/salome/gui/SMESH/webhelp.jar deleted file mode 100755 index 1d1697e76..000000000 Binary files a/doc/salome/gui/SMESH/webhelp.jar and /dev/null differ diff --git a/doc/salome/gui/SMESH/whcsh_home.htm b/doc/salome/gui/SMESH/whcsh_home.htm deleted file mode 100755 index bc99598c0..000000000 --- a/doc/salome/gui/SMESH/whcsh_home.htm +++ /dev/null @@ -1,600 +0,0 @@ - - - - - - diff --git a/doc/salome/gui/SMESH/whcshdata.htm b/doc/salome/gui/SMESH/whcshdata.htm deleted file mode 100755 index a21983910..000000000 --- a/doc/salome/gui/SMESH/whcshdata.htm +++ /dev/null @@ -1,87 +0,0 @@ - - -Mesh Module Reference Manual - - - - - - - - - - diff --git a/doc/salome/gui/SMESH/whd_dpns.htm b/doc/salome/gui/SMESH/whd_dpns.htm deleted file mode 100755 index 3983ccbdd..000000000 --- a/doc/salome/gui/SMESH/whd_dpns.htm +++ /dev/null @@ -1,43 +0,0 @@ - - -Navigator Pane - - - - - - - - - - - - - - \ No newline at end of file diff --git a/doc/salome/gui/SMESH/whd_hide0.gif b/doc/salome/gui/SMESH/whd_hide0.gif deleted file mode 100755 index 97ea0bb6d..000000000 Binary files a/doc/salome/gui/SMESH/whd_hide0.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_hide1.gif b/doc/salome/gui/SMESH/whd_hide1.gif deleted file mode 100755 index 97ea0bb6d..000000000 Binary files a/doc/salome/gui/SMESH/whd_hide1.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_hide2.gif b/doc/salome/gui/SMESH/whd_hide2.gif deleted file mode 100755 index 97ea0bb6d..000000000 Binary files a/doc/salome/gui/SMESH/whd_hide2.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_next0.gif b/doc/salome/gui/SMESH/whd_next0.gif deleted file mode 100755 index d92dda522..000000000 Binary files a/doc/salome/gui/SMESH/whd_next0.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_next1.gif b/doc/salome/gui/SMESH/whd_next1.gif deleted file mode 100755 index d92dda522..000000000 Binary files a/doc/salome/gui/SMESH/whd_next1.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_next2.gif b/doc/salome/gui/SMESH/whd_next2.gif deleted file mode 100755 index d92dda522..000000000 Binary files a/doc/salome/gui/SMESH/whd_next2.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_nvp10.htm b/doc/salome/gui/SMESH/whd_nvp10.htm deleted file mode 100755 index 05b5f908c..000000000 --- a/doc/salome/gui/SMESH/whd_nvp10.htm +++ /dev/null @@ -1,15 +0,0 @@ - - -Navigation Pane - - - - - - - - - - - - diff --git a/doc/salome/gui/SMESH/whd_nvp20.htm b/doc/salome/gui/SMESH/whd_nvp20.htm deleted file mode 100755 index 23c23dc4f..000000000 --- a/doc/salome/gui/SMESH/whd_nvp20.htm +++ /dev/null @@ -1,334 +0,0 @@ - - -navigation pane - - - - - - - - - - - - - - - - - diff --git a/doc/salome/gui/SMESH/whd_prev0.gif b/doc/salome/gui/SMESH/whd_prev0.gif deleted file mode 100755 index 518561a0d..000000000 Binary files a/doc/salome/gui/SMESH/whd_prev0.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_prev1.gif b/doc/salome/gui/SMESH/whd_prev1.gif deleted file mode 100755 index 518561a0d..000000000 Binary files a/doc/salome/gui/SMESH/whd_prev1.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_prev2.gif b/doc/salome/gui/SMESH/whd_prev2.gif deleted file mode 100755 index 518561a0d..000000000 Binary files a/doc/salome/gui/SMESH/whd_prev2.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_show0.gif b/doc/salome/gui/SMESH/whd_show0.gif deleted file mode 100755 index 60e8e6897..000000000 Binary files a/doc/salome/gui/SMESH/whd_show0.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_show1.gif b/doc/salome/gui/SMESH/whd_show1.gif deleted file mode 100755 index 60e8e6897..000000000 Binary files a/doc/salome/gui/SMESH/whd_show1.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_show2.gif b/doc/salome/gui/SMESH/whd_show2.gif deleted file mode 100755 index 60e8e6897..000000000 Binary files a/doc/salome/gui/SMESH/whd_show2.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_sync0.gif b/doc/salome/gui/SMESH/whd_sync0.gif deleted file mode 100755 index 1a9785ce6..000000000 Binary files a/doc/salome/gui/SMESH/whd_sync0.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_sync1.gif b/doc/salome/gui/SMESH/whd_sync1.gif deleted file mode 100755 index 1a9785ce6..000000000 Binary files a/doc/salome/gui/SMESH/whd_sync1.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_sync2.gif b/doc/salome/gui/SMESH/whd_sync2.gif deleted file mode 100755 index 1a9785ce6..000000000 Binary files a/doc/salome/gui/SMESH/whd_sync2.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_tab0.gif b/doc/salome/gui/SMESH/whd_tab0.gif deleted file mode 100755 index 955c42f47..000000000 Binary files a/doc/salome/gui/SMESH/whd_tab0.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_tab1.gif b/doc/salome/gui/SMESH/whd_tab1.gif deleted file mode 100755 index b3ec41d6d..000000000 Binary files a/doc/salome/gui/SMESH/whd_tab1.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_tab2.gif b/doc/salome/gui/SMESH/whd_tab2.gif deleted file mode 100755 index 08fb0ce4f..000000000 Binary files a/doc/salome/gui/SMESH/whd_tab2.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_tab3.gif b/doc/salome/gui/SMESH/whd_tab3.gif deleted file mode 100755 index 1819c8e8f..000000000 Binary files a/doc/salome/gui/SMESH/whd_tab3.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_tab4.gif b/doc/salome/gui/SMESH/whd_tab4.gif deleted file mode 100755 index 1a6fc4f4a..000000000 Binary files a/doc/salome/gui/SMESH/whd_tab4.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_tab5.gif b/doc/salome/gui/SMESH/whd_tab5.gif deleted file mode 100755 index 934019260..000000000 Binary files a/doc/salome/gui/SMESH/whd_tab5.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_tab6.gif b/doc/salome/gui/SMESH/whd_tab6.gif deleted file mode 100755 index fe312d238..000000000 Binary files a/doc/salome/gui/SMESH/whd_tab6.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_tab7.gif b/doc/salome/gui/SMESH/whd_tab7.gif deleted file mode 100755 index 3b95ae24e..000000000 Binary files a/doc/salome/gui/SMESH/whd_tab7.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_tab8.gif b/doc/salome/gui/SMESH/whd_tab8.gif deleted file mode 100755 index c80acc8d5..000000000 Binary files a/doc/salome/gui/SMESH/whd_tab8.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_tabs.htm b/doc/salome/gui/SMESH/whd_tabs.htm deleted file mode 100755 index e8c498c88..000000000 --- a/doc/salome/gui/SMESH/whd_tabs.htm +++ /dev/null @@ -1,533 +0,0 @@ - - -WebHelp Tabs Frame in Navigation Pane - - - - - - - - - - - \ No newline at end of file diff --git a/doc/salome/gui/SMESH/whd_toc1.gif b/doc/salome/gui/SMESH/whd_toc1.gif deleted file mode 100755 index 11017258c..000000000 Binary files a/doc/salome/gui/SMESH/whd_toc1.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_toc2.gif b/doc/salome/gui/SMESH/whd_toc2.gif deleted file mode 100755 index 975e5f6f4..000000000 Binary files a/doc/salome/gui/SMESH/whd_toc2.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_toc3.gif b/doc/salome/gui/SMESH/whd_toc3.gif deleted file mode 100755 index 4b8122f0f..000000000 Binary files a/doc/salome/gui/SMESH/whd_toc3.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_toc4.gif b/doc/salome/gui/SMESH/whd_toc4.gif deleted file mode 100755 index 354aa6ece..000000000 Binary files a/doc/salome/gui/SMESH/whd_toc4.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_topic.xml b/doc/salome/gui/SMESH/whd_topic.xml deleted file mode 100755 index b1946d757..000000000 --- a/doc/salome/gui/SMESH/whd_topic.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - - - - - - - -"]]> - - - - -"]]> - - - - -"; -OutputInTopicNavBarDataWebSearch.form();]]> - - - - - - - - - - -"]]> - - - diff --git a/doc/salome/gui/SMESH/whd_wbsh0.gif b/doc/salome/gui/SMESH/whd_wbsh0.gif deleted file mode 100755 index 383688e7c..000000000 Binary files a/doc/salome/gui/SMESH/whd_wbsh0.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_wbsh1.gif b/doc/salome/gui/SMESH/whd_wbsh1.gif deleted file mode 100755 index 383688e7c..000000000 Binary files a/doc/salome/gui/SMESH/whd_wbsh1.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whd_wbsh2.gif b/doc/salome/gui/SMESH/whd_wbsh2.gif deleted file mode 100755 index 383688e7c..000000000 Binary files a/doc/salome/gui/SMESH/whd_wbsh2.gif and /dev/null differ diff --git a/doc/salome/gui/SMESH/whfbody.htm b/doc/salome/gui/SMESH/whfbody.htm deleted file mode 100755 index ea648e4b3..000000000 --- a/doc/salome/gui/SMESH/whfbody.htm +++ /dev/null @@ -1,37 +0,0 @@ - - -Search Result - - - - - - - - - - - - - - - - - diff --git a/doc/salome/gui/SMESH/whfdhtml.htm b/doc/salome/gui/SMESH/whfdhtml.htm deleted file mode 100755 index c2e65bea1..000000000 --- a/doc/salome/gui/SMESH/whfdhtml.htm +++ /dev/null @@ -1,30 +0,0 @@ - - -Search Frame - - - - - - - - - diff --git a/doc/salome/gui/SMESH/whfform.htm b/doc/salome/gui/SMESH/whfform.htm deleted file mode 100755 index 0f8f90ab6..000000000 --- a/doc/salome/gui/SMESH/whfform.htm +++ /dev/null @@ -1,136 +0,0 @@ - - -Search Form - - - - - - - - - - - - - - diff --git a/doc/salome/gui/SMESH/whfhost.js b/doc/salome/gui/SMESH/whfhost.js deleted file mode 100755 index c3c7144fa..000000000 --- a/doc/salome/gui/SMESH/whfhost.js +++ /dev/null @@ -1,945 +0,0 @@ -// WebHelp 5.10.003 -var gsSK2=null; -var gsSK=null; -var gsFtsBreakChars="\t\r\n\"\\ .,!@#$%^&*()~'`:;<>?/{}[]|+-=\x85\x92\x93\x94\x95\x96\x97\x99\xA9\xAE\xB7"; -var gnCLF=0; -var gsHelpCannotSearch="Cannot search for that phrase."; -var gsNoTopics="No Topics Found."; -var gsLoadingDivID="LoadingDiv"; -var gsLoadingMsg="Loading data, please wait..."; -var gsSearchMsg="Searching..."; -var gsResultDivID="ResultDiv"; -var gaaFCD=new Array(); -var gaaFTCD=new Array(); -var goCF=null; -var goCTF=null; -var gaTI=null; -var gnCurrentOp=0; -var gbNot=false; -var gbReady=false; -var gnLoadFts=1; -var gnCacheLimits=5; -var gaCCD=new Array(); -var gbXML=false; -var gaData=new Array(); -var gsBgColor="#ffffff"; -var gsBgImage=""; -var gsMargin="0pt"; -var gsIndent="0pt"; -var gsCheckKey=null; -var gnIndexNum=0; -var gaFtsContentsCon=null; -var gaTopicCheckInfo=null; -var gnTopicCheck=0; -var goFont=null; -var goErrFont=null; -var goHoverFont=null; -var gsABgColor="#cccccc"; -var gbWhFHost=false; -var gbFirst=false; - -function setBackground(sBgImage) -{ - gsBgImage=sBgImage; -} - -function setBackgroundcolor(sBgColor) -{ - gsBgColor=sBgColor; -} - -function setFont(sType,sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration) -{ - var vFont=new whFont(sFontName,sFontSize,sFontColor,sFontStyle,sFontWeight,sFontDecoration); - if(sType=="Normal") - goFont=vFont; - else if(sType=="Error") - goErrFont=vFont; - else if(sType=="Hover") - goHoverFont=vFont; -} - -function setActiveBgColor(sBgColor) -{ - gsABgColor=sBgColor; -} - -function setMargin(sMargin) -{ - gsMargin=sMargin; -} - -function setIndent(sIndent) -{ - gsIndent=sIndent; -} - -function updateCache(oCF) -{ - var len=gaCCD.length; - if(len0&&sURL) - { - var topic=new Object(); - topic.sTopicTitle=name; - topic.sTopicURL=sURL; - aTopics[aTopics.length]=topic; - } - } - oChild=oChild.nextSibling; - } - putFtsTData(aTopics); - } - } - else if(gnLoadFts==2) - { - var node=xmlDoc.lastChild; - if(node) - { - var oChild=node.firstChild; - var aFtsContents=new Array(); - while(oChild) - { - if(oChild.nodeName=="key") - { - var name=oChild.getAttribute("name"); - if(name&&name.length>0) - { - var item=new Object(); - item.sItemName=name; - aFtsContents[aFtsContents.length]=item; - var oChildChild=oChild.firstChild; - while(oChildChild) - { - if(oChildChild.nodeName=="#text") - { - var sIDs=oChildChild.nodeValue; - if(sIDs) - { - var nBPos=0; - do - { - var nPos=sIDs.indexOf(",",nBPos); - var sID=null; - if(nPos!=-1) - sID=sIDs.substring(nBPos,nPos); - else - sID=sIDs.substring(nBPos); - - if(sID) - { - var id=parseInt(sID); - if(!isNaN(id)) - { - if(!item.aTopics) - item.aTopics=new Array(); - item.aTopics[item.aTopics.length]=id; - } - } - nBPos=nPos+1; - }while(nBPos!=0&&nBPos0) - { - document.body.background=gsBgImage; - } - if(gsBgColor&&gsBgColor.length>0) - { - document.body.bgColor=gsBgColor; - } - writeResultDiv(); - loadFts(); - var oMsg=new whMessage(WH_MSG_SHOWFTS,this,1,null) - SendMessage(oMsg); -} - -function writeResultDiv() -{ - var sHTML="
    "; - document.body.insertAdjacentHTML("beforeEnd",sHTML); -} - -function loadFts() -{ - if(!gbReady) - { - var oResMsg=new whMessage(WH_MSG_GETPROJINFO,this,1,null); - if(SendMessage(oResMsg)&&oResMsg.oParam) - { - gbReady=true; - var oProj=oResMsg.oParam; - var aProj=oProj.aProj; - gbXML=oProj.bXML; - if(aProj.length>0) - { - var sLangId=aProj[0].sLangId; - for(var i=0;i=0)&&(gsFtsBreakChars.charAt(nSep)=="|"))){ - gnCurrentOp=0; - gbNot=false; - }else if((sCW=="and")||((nSep>=0)&&(gsFtsBreakChars.charAt(nSep)=="&"))){ - gnCurrentOp=1; - gbNot=false; - }else if((sCW=="not")|| - ((nSep>=0)&&(gsFtsBreakChars.charAt(nSep)=="~"))){ - gbNot=!gbNot; - }else if(sCW!=""&&!IsStopWord(sCW,gaFtsStop)){ - var sCurrentStem=GetStem(sCW); - gsCW=sCurrentStem; - ftsFindKeyword(); - return; - } - findOneKey(); - } - else{ - displayTopics(); - checkAgain(); - } -} - -function checkAgain() -{ - gsCheckKey = ""; - gnIndexNum = 0; - gsSK=gsSK2; - gsSK2=null; - if(gsSK!=null) - setTimeout("findFTSKey();",1); -} - -function displayTopics() -{ - var sHTML=""; - var sLine=""; - for(var i=0;i"+_textToHtml(gaTI[i].sTopicTitle)+""; - if(i>>4<<4==i) - { - sHTML+=sLine; - sLine=""; - } - } - if(sLine.length>0) - sHTML+=sLine; - - if(sHTML.length==0) - sHTML="

    "+gsNoTopics+"

    " - else - sHTML="
    "+sHTML+"
    "; - - var resultDiv=getElement(gsResultDivID); - if(resultDiv) - resultDiv.innerHTML=sHTML; -} - -function displayMsg(sErrorMsg) -{ - var sHTML="

    "+sErrorMsg+"

    "; - - var resultDiv=getElement(gsResultDivID); - if(resultDiv) - resultDiv.innerHTML=sHTML; -} - -function ftsFindKeyword() -{ - var sKey=gsCW; - var bNeedLoad=false; - var aFtsContentsCon=null; - var s=0; - if(sKey==null) return; - if(!gsCheckKey||sKey!=gsCheckKey||gnIndexNum==0) - { - aFtsContentsCon=new Array(); - gnCheck=0; - gsCheckKey=sKey; - gnTopicCheck=0; - gaTopicCheckInfo=null; - } - else{ - s=gnIndexNum; - aFtsContentsCon=gaFtsContentsCon; - } - for(var i=gnCheck;i=aTI.length) - { - aLS=gaTI; - aSS=aTI; - } - else - { - aLS=aTI; - aSS=gaTI; - } - var s=0; - for(var i=0;i=0) - { - var nM; - var bFound=false; - do{ - nM=(nB+nE)>>1; - if(compare(aTI[nM].sTopicTitle,oTI.sTopicTitle)>0) - nE=nM-1; - else if(compare(aTI[nM].sTopicTitle,oTI.sTopicTitle)<0) - nB=nM+1; - else - { - bFound=true; - break; - } - }while(nB<=nE); - if(bFound) - insertItemIntoArray(aTI,nM,oTI); - else - { - if(compare(aTI[nM].sTopicTitle,oTI.sTopicTitle)<0) - insertItemIntoArray(aTI,nM+1,oTI); - else - insertItemIntoArray(aTI,nM,oTI); - } - } - else - aTI[0]=oTI; -} - -function mergeTopics(aTI1,aTI2) -{ - var i1=0; - var i2=0; - var len1=aTI1.length; - var len2=aTI2.length; - var aTopicNew=new Array(); - var i=0; - while(i1>1; - if(compare(keys[nM].sItemName,sKey)>0) - nE=nM-1; - else if(compare(keys[nM].sItemName,sKey)<0) - nB=nM+1; - else{ - bFound=true; - break; - } - }while(nB<=nE); - if(bFound) - { - if(keys[nM].aTopics) - { - for(var i=0;i>1; - if(aFTCD[nM].nBegin>nTopicId) - nE=nM-1; - else if(aFTCD[nM].nEnd

     See - Also a sample TUI Script of an Extrusion - operation.