Merge from V6_3_BR 06/06/2011
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,4 +1,4 @@
|
||||
dnl Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
dnl Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
dnl
|
||||
dnl Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
dnl Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
dnl Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
dnl
|
||||
dnl Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
dnl Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
dnl Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
dnl
|
||||
dnl Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
dnl Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
dnl Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
dnl
|
||||
dnl Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: iso-8859-1 -*-
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!/bin/sh
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,4 +1,4 @@
|
||||
@REM Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
@REM Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
@REM
|
||||
@REM This library is free software; you can redistribute it and/or
|
||||
@REM modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!/bin/bash
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!/bin/sh
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
16
configure.ac
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
@ -24,7 +24,7 @@
|
||||
# Modified by : Alexander BORODIN (OCN) - autotools usage
|
||||
# Created from configure.in.base
|
||||
#
|
||||
AC_INIT([Salome2 Project SMESH module], [6.2.0], [webmaster.salome@opencascade.com], [SalomeSMESH])
|
||||
AC_INIT([Salome2 Project SMESH module], [6.3.0], [webmaster.salome@opencascade.com], [SalomeSMESH])
|
||||
AC_CONFIG_AUX_DIR(adm_local/unix/config_files)
|
||||
AC_CANONICAL_HOST
|
||||
AC_CANONICAL_TARGET
|
||||
@ -327,6 +327,14 @@ echo
|
||||
|
||||
CHECK_HDF5
|
||||
|
||||
echo
|
||||
echo ---------------------------------------------
|
||||
echo testing MED2
|
||||
echo ---------------------------------------------
|
||||
echo
|
||||
|
||||
CHECK_MED2
|
||||
|
||||
echo
|
||||
echo ---------------------------------------------
|
||||
echo BOOST Library
|
||||
@ -395,9 +403,9 @@ echo Configure
|
||||
if test "${gui_ok}" = "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 sphinx_ok qwt_ok Kernel_ok Geom_ok Med_ok gui_ok"
|
||||
elif test "${SalomeGUI_need}" != "no"; then
|
||||
variables="cc_ok fortran_ok boost_ok lex_yacc_ok python_ok swig_ok threads_ok vtk_ok hdf5_ok omniORB_ok occ_ok doxygen_ok graphviz_ok sphinx_ok Kernel_ok Geom_ok Med_ok gui_ok"
|
||||
variables="cc_ok fortran_ok boost_ok lex_yacc_ok python_ok swig_ok threads_ok vtk_ok hdf5_ok med2_ok omniORB_ok occ_ok doxygen_ok graphviz_ok sphinx_ok Kernel_ok Geom_ok Med_ok gui_ok"
|
||||
else
|
||||
variables="cc_ok fortran_ok boost_ok lex_yacc_ok python_ok swig_ok threads_ok vtk_ok hdf5_ok omniORB_ok occ_ok doxygen_ok graphviz_ok sphinx_ok Kernel_ok Geom_ok Med_ok"
|
||||
variables="cc_ok fortran_ok boost_ok lex_yacc_ok python_ok swig_ok threads_ok vtk_ok hdf5_ok med2_ok omniORB_ok occ_ok doxygen_ok graphviz_ok sphinx_ok Kernel_ok Geom_ok Med_ok"
|
||||
fi
|
||||
|
||||
for var in $variables
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,5 +1,5 @@
|
||||
# -*- coding: iso-8859-1 -*-
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
@ -19,19 +19,18 @@
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
#
|
||||
|
||||
include $(top_srcdir)/adm_local/unix/make_common_starter.am
|
||||
|
||||
pydocdir = $(docdir)/tui/SMESH/docutils
|
||||
|
||||
.PHONY : latex
|
||||
RSTFILES = \
|
||||
index.rst \
|
||||
overview.rst \
|
||||
docapi.rst
|
||||
|
||||
if SPHINX_IS_OK
|
||||
|
||||
html/index.html:$(RSTFILES)
|
||||
make htm
|
||||
|
||||
endif
|
||||
EXTRA_DIST += $(RSTFILES)
|
||||
|
||||
SPHINXOPTS =
|
||||
SOURCEDIR = $(srcdir)
|
||||
@ -43,7 +42,12 @@ SPHINX_PYTHONPATH = $(prefix)/lib/python$(PYTHON_VERSION)/site-packages/salome:$
|
||||
|
||||
SPHINX_LD_LIBRARY_PATH = $(KERNEL_ROOT_DIR)/lib/salome:$(OMNIORB_ROOT)/lib
|
||||
|
||||
htm:
|
||||
|
||||
.PHONY: latex
|
||||
|
||||
if SPHINX_IS_OK
|
||||
|
||||
html/index.html:$(RSTFILES)
|
||||
mkdir -p html doctrees
|
||||
PYTHONPATH=$(SPHINX_PYTHONPATH):${PYTHONPATH} \
|
||||
LD_LIBRARY_PATH=$(SPHINX_LD_LIBRARY_PATH):${LD_LIBRARY_PATH} \
|
||||
@ -51,6 +55,13 @@ htm:
|
||||
@echo
|
||||
@echo "Build finished. The HTML pages are in html."
|
||||
|
||||
else
|
||||
|
||||
html/index.html:
|
||||
@echo "Documentation for Python package not built. Sphinx was not present at configure time."
|
||||
|
||||
endif
|
||||
|
||||
latex:
|
||||
mkdir -p latex doctrees
|
||||
PYTHONPATH=$(SPHINX_PYTHONPATH):${PYTHONPATH} \
|
||||
@ -61,16 +72,6 @@ latex:
|
||||
@echo "Run \`make all-pdf' or \`make all-ps' in that directory to" \
|
||||
"run these through (pdf)latex."
|
||||
|
||||
html:
|
||||
mkdir -p $@
|
||||
|
||||
RSTFILES= \
|
||||
index.rst \
|
||||
overview.rst \
|
||||
docapi.rst
|
||||
|
||||
EXTRA_DIST+= $(RSTFILES)
|
||||
|
||||
install-data-local: html/index.html
|
||||
test -z $(pydocdir) || mkdir -p $(DESTDIR)$(pydocdir)
|
||||
if test -d "html"; then b=; else b="$(srcdir)/"; fi; \
|
||||
@ -84,5 +85,5 @@ clean-local:
|
||||
-rm -rf html latex doctrees
|
||||
if test -d "html"; then rm -rf html ; fi
|
||||
|
||||
disthook :
|
||||
dist-hook:
|
||||
-test -d html && cp -Rp html $(distdir)
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
@ -19,6 +19,7 @@
|
||||
#
|
||||
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
#
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Project related configuration options
|
||||
#---------------------------------------------------------------------------
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
@ -19,6 +19,7 @@
|
||||
#
|
||||
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
#
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Project related configuration options
|
||||
#---------------------------------------------------------------------------
|
||||
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 38 KiB After Width: | Height: | Size: 35 KiB |
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 388 KiB |
BIN
doc/salome/gui/SMESH/images/ghs3d_screenshot.png
Normal file
After Width: | Height: | Size: 68 KiB |
BIN
doc/salome/gui/SMESH/images/ghs3d_screenshot_enf1.png
Normal file
After Width: | Height: | Size: 87 KiB |
BIN
doc/salome/gui/SMESH/images/ghs3d_screenshot_enf2.png
Normal file
After Width: | Height: | Size: 90 KiB |
BIN
doc/salome/gui/SMESH/images/ghs3d_screenshot_enf3.png
Normal file
After Width: | Height: | Size: 60 KiB |
BIN
doc/salome/gui/SMESH/images/ghs3d_screenshot_enf4.png
Normal file
After Width: | Height: | Size: 63 KiB |
BIN
doc/salome/gui/SMESH/images/ghs3d_screenshot_enf5.png
Normal file
After Width: | Height: | Size: 56 KiB |
BIN
doc/salome/gui/SMESH/images/ghs3d_screenshot_enf6.png
Normal file
After Width: | Height: | Size: 62 KiB |
BIN
doc/salome/gui/SMESH/images/meshcut_plugin.png
Normal file
After Width: | Height: | Size: 32 KiB |
@ -224,26 +224,6 @@ object or to its sub-shapes (created using <b>Explode</b> command).</li>
|
||||
</ul></li>
|
||||
</ul>
|
||||
|
||||
\anchor blsurf_attractor
|
||||
<h2>Advanced maps</h2>
|
||||
\n
|
||||
\image html blsurf_parameters_sizemap2.png
|
||||
\n
|
||||
Specific size maps, called attractors can be defined on faces. They allow to define the size of the mesh elements on a face so that the mesh is the finest on the attractor shape and becomes coarser when getting far from this shape.
|
||||
The selected attractor can be either a Vertex or an Edge. The attractor doesn't have to be a sub-shape of the shape to mesh.
|
||||
\n
|
||||
Furthermore you can choose to keep the size constant until a certain distance from a shape. This option can be combined or not with the "attractor" size map described above.
|
||||
\n
|
||||
If the two options are combined the size will remain constant until the distant specified in "constant over" and grow then as prescribed by the attractor function. Else the growing is only controled by the standard arguments of BLSURF (gradation ...).
|
||||
|
||||
\image html blsurf_attractors2.png "Example of mesh created using attractors, the attractors here are the side edges and the size grow from the side of the surface towards the apex"
|
||||
\n
|
||||
\image html blsurf_const_size_near_shape2.png "Example of size map with constant size option, the size is kept constant on the left side of the surface until a certain distance"
|
||||
\n
|
||||
Remark : The validation of the hypothesis might take a few seconds if attractors are defined or the "constant size" option is used because a map of distances has to be built on the whole surface for each face where such an hypothesis has been defined.
|
||||
|
||||
<br><b>See Also</b> a sample TUI Script of the \ref tui_blsurf "creation of a BLSurf hypothesis", including size map.
|
||||
|
||||
\anchor blsurf_sizemap_computation
|
||||
<h2>Computation of the physical size</h2>
|
||||
\n
|
||||
@ -259,6 +239,37 @@ specification of the sizes. The computation depends on whether point P is intern
|
||||
</ul>
|
||||
In order to compute the mean of several values, the arithmetic mean is used by default, but this can be modified by the parameter \ref blsurf_hmean_flag "hmean flag". In the same way, in order to interpolate two values, a linear interpolation is used by default, but this can be modified by \ref blsurf_hinterpol_flag "hinterpol flag".
|
||||
|
||||
\anchor blsurf_attractor
|
||||
<h2>Advanced maps</h2>
|
||||
\n
|
||||
\image html blsurf_parameters_sizemap2.png
|
||||
\n
|
||||
More specific size maps can be defined on faces.
|
||||
|
||||
<ul>
|
||||
<li> <i> Attractors </i> allow to define the size of the mesh elements on a face so that the mesh is the finest on the attractor shape and becomes coarser when getting far from this shape.
|
||||
<ul>
|
||||
<li> The selected attractor can be a Vertex, an Edge, a Wire or a Compound mixing several entities of those types.</li>
|
||||
<li> The attractor doesn't have to be a sub-shape of the shape to mesh.</li>
|
||||
<li> The size will grow exponentially (see formula below) but is bounded by gradation, \n so if you want the formula to be strictly respected, you should set the <i>gradation</i>
|
||||
to its maximum (2.5) in the <i>arguments</i> tab.
|
||||
</ul>
|
||||
\n
|
||||
<li> Furthermore you can choose to <i> keep the size constant </i> until a certain distance from a shape. This option can be combined or not with an <i>attractor</i> size map described above.
|
||||
<ul>
|
||||
<li> If the two options are combined the size will remain constant until the distant specified in "constant over" and grow then as prescribed by the attractor function.</li>
|
||||
<li> Else the growing is only controled by the standard arguments of BLSURF (gradation ...).</li>
|
||||
</ul>
|
||||
</ul>
|
||||
|
||||
\image html blsurf_attractors2.png "Example of mesh created using attractors, the attractors here are the side edges and the size grow from the side of the surface towards the apex"
|
||||
\n
|
||||
\image html blsurf_const_size_near_shape2.png "Example of size map with constant size option, the size is kept constant on the left side of the surface until a certain distance"
|
||||
\n
|
||||
Remark : The validation of the hypothesis might take a few seconds if attractors are defined or the "constant size" option is used because a map of distances has to be built on the whole surface for each face where such an hypothesis has been defined.
|
||||
|
||||
<br><b>See Also</b> a sample TUI Script of the \ref tui_blsurf "creation of a BLSurf hypothesis", including size map.
|
||||
|
||||
\anchor blsurf_attractor_computation
|
||||
<h2>Computation of attractors</h2>
|
||||
\n
|
||||
@ -270,7 +281,6 @@ Where :
|
||||
<li>d is the distance of the current point from the attractor shape. The distance is the geodesic distance (i.e. calculated by following the surface to be meshed) </li>
|
||||
<li>R is called the distance of influence and allows controlling the growth rate of the mesh </li>
|
||||
</ul>
|
||||
Warning : The formula is respected only if it doesn't imply a gradation bigger than the one set in the "Arguments" tab. So it's better to set it to its maximum value : 2.5.
|
||||
|
||||
<h1>Custom enforced vertices</h1>
|
||||
|
||||
|
55
doc/salome/gui/SMESH/input/cut_mesh_by_plane.doc
Normal file
@ -0,0 +1,55 @@
|
||||
/*!
|
||||
|
||||
\page cut_mesh_by_plane_page Cut a tetrahedron mesh by a plane
|
||||
|
||||
\n MeshCut works only on Med files and produces Med files, and is a standalone program.
|
||||
It can be used either directly on a shell command outside SALOME, or with a GUI interface in SMESH,
|
||||
provided in a python plugin that needs to be installed in your SALOME application.
|
||||
|
||||
\n MeshCut allows to cut a mesh constituted of linear tetrahedrons by a plane.
|
||||
\n The tetrahedrons intersected by the plane are cut and replaced by elements of various types,
|
||||
(tetrahedron, pyramid, pentahedron).
|
||||
|
||||
<br>
|
||||
\anchor meshcut_standalone
|
||||
<h2>Using MeshCut as a standalone program, outside SALOME</h2>
|
||||
|
||||
\n MeshCut is a standalone program, reading and producing med files.
|
||||
\n
|
||||
\n Syntax:
|
||||
\code
|
||||
MeshCut input.med output.med resuMeshName aboveGroup belowGroup nx ny nz px py pz T
|
||||
\endcode
|
||||
|
||||
\n
|
||||
\n where:
|
||||
\n input.med = name of the original mesh file in med format
|
||||
\n output.med = name of the result mesh file in med format
|
||||
\n resuMeshName = name of the result mesh
|
||||
\n aboveGroup = name of the group of volumes above the cut plane
|
||||
\n belowGroups = name of the group of volumes below the cut plane
|
||||
\n nx ny nz = vector normal to the cut plane
|
||||
\n px py pz = a point of the cut plane
|
||||
\n T = 0 < T < 1 : vertices of a tetrahedron are considered as belonging to
|
||||
\n the cut plane if their distance to the plane is inferior to L*T
|
||||
\n where L is the mean edge size of the tetrahedron
|
||||
|
||||
<br>
|
||||
\anchor meshcut_plugin
|
||||
<h2>Using MeshCut inside SALOME</h2>
|
||||
|
||||
When the MeshCut plugin is installed, you will find it in the Mesh menu, sub-menu SMESH_plugins.
|
||||
\n If the plugin is not installed, look for a file named meshcut_plugin.py in your SMESH installation.
|
||||
The file is normally in the subdirectory bin/salome/meshcut_plugin.py.
|
||||
|
||||
\n If you already have plugins defined in a smesh_plugins.py file, add this file at the end.
|
||||
if not, copy this file as ${HOME}/Plugins/smesh_plugins.py or ${APPLI}/Plugins/smesh_plugins.py
|
||||
or in your ${PLUGINPATH} Directory.
|
||||
|
||||
<li>From the Mesh menu, sub-menu SMESH_plugins, choose "MeshCut" item
|
||||
The following dialog box will appear:
|
||||
\image html meshcut_plugin.png "MeshCut Plugin dialog box"
|
||||
</li>
|
||||
|
||||
See above for the meaning of the parameters.
|
||||
*/
|
12
doc/salome/gui/SMESH/input/generate_flat_elements.doc
Normal file
@ -0,0 +1,12 @@
|
||||
/*!
|
||||
|
||||
\page generate_flat_elements_page Generate flat elements on group boundaries or on faces
|
||||
|
||||
\n These functionalities, used in some mechanics calculations,
|
||||
allow to generate flat volume elements on the boundaries of a list
|
||||
of groups of volumes, or on a list of groups of faces.
|
||||
\n These functionalities are only available in python scripts.
|
||||
|
||||
<br><b>See </b> a sample TUI Script of a \ref tui_double_nodes_on_group_boundaries "Generate flat elements" operations.
|
||||
|
||||
*/
|
@ -5,6 +5,14 @@
|
||||
The user can obtain an information about the selected mesh object
|
||||
(mesh, sub-mesh or group) using <b>Mesh Information</b> dialog box.
|
||||
|
||||
To view the <b>Mesh Information</b>, select your mesh, sub-mesh or
|
||||
group in the <b>Object Browser</b> and invoke <b>Mesh Information</b>
|
||||
item from the \b Mesh menu or click <em>"Mesh Information"</em> button
|
||||
in the toolbar.
|
||||
|
||||
\image html image49.png
|
||||
<center><em>"Mesh Information" button</em></center>
|
||||
|
||||
The <b>Mesh Information</b> dialog box provides two tab pages:
|
||||
- <b>Base Info</b> - to show base information about selected mesh
|
||||
object
|
||||
@ -19,16 +27,6 @@ information on the selected object - mesh, sub-mesh or mesh group:
|
||||
name, type, total number of nodes and elements separately for each
|
||||
type: 0D elements, edges, faces and volumes.
|
||||
|
||||
To view the <b>Mesh Information</b>, select your mesh, sub-mesh or
|
||||
group in the <b>Object Browser</b> and invoke <b>Mesh Information</b>
|
||||
item from the \b Mesh menu or click <em>"Mesh Information"</em> button
|
||||
in the toolbar.
|
||||
|
||||
\image html image49.png
|
||||
<center><em>"Mesh Information" button</em></center>
|
||||
|
||||
The following information will be displayed:
|
||||
|
||||
\image html advanced_mesh_infos.png
|
||||
<center><em>"Base Info" page</em></center>
|
||||
|
||||
@ -39,21 +37,11 @@ The <b>Element Info</b> tab page of the dialog box gives basic
|
||||
information about the type, coordinates and connectivity of the
|
||||
selected mesh node or element.
|
||||
|
||||
To view the <b>Mesh Element Information</b>, select your mesh, sub-mesh or
|
||||
group in the <b>Object Browser</b> and invoke <b>Mesh Element Information</b>
|
||||
item from the \b Mesh menu or click <em>"Mesh Element Information"</em> button
|
||||
in the toolbar.
|
||||
|
||||
\image html elem_info.png
|
||||
<center><em>"Mesh Element Information" button</em></center>
|
||||
|
||||
The following information will be displayed:
|
||||
|
||||
\image html eleminfo1.png
|
||||
<center><em>"Element Info" page, node</em></center>
|
||||
<center><em>"Element Info" page, node information</em></center>
|
||||
<br>
|
||||
\image html eleminfo2.png
|
||||
<center><em>"Element Info" page, element</em></center>
|
||||
<center><em>"Element Info" page, element information</em></center>
|
||||
|
||||
The use can either input the ID of a node or element he wants to
|
||||
analyze directly in the dialog box or select the node or element in
|
||||
|
@ -48,6 +48,8 @@ of the selected node or edge.</li>
|
||||
<li>\subpage convert_to_from_quadratic_mesh_page "Convert regular mesh to quadratic",
|
||||
or vice versa.</li>
|
||||
<li>\subpage make_2dmesh_from_3d_page "Generate boundary elements".</li>
|
||||
<li>\subpage generate_flat_elements_page "Generate flat elements on group boundaries or on faces".</li>
|
||||
<li>\subpage cut_mesh_by_plane_page "Cut a tetrahedron mesh by a plane".</li>
|
||||
</ul>
|
||||
|
||||
\note It is possible to use the variables defined in the SALOME \b NoteBook
|
||||
|
@ -44,18 +44,17 @@ about filters in the \ref selection_filter_library_page "Selection filter librar
|
||||
|
||||
<li>specify the conditions of scale:
|
||||
<ul>
|
||||
<li>activate <b>Move elements</b> radio button to create the source
|
||||
mesh (or elements) at the new location and erase it from the previous location;</li>
|
||||
<li>activate <b>Copy elements</b> radio button to create the source
|
||||
mesh (or elements) at the new location, but leave it at the previous
|
||||
location, the source mesh will be considered one and single mesh with
|
||||
the result of the scale operation;</li>
|
||||
<li>activate <b>Move elements</b> radio button to scale the selected
|
||||
mesh (or elements) without creating a copy;</li>
|
||||
<li>activate <b>Copy elements</b> radio button to duplicate the selected
|
||||
mesh (or elements) and to apply scaling to the copy within the same mesh;</li>
|
||||
<li>activate <b>Create as new mesh</b> radio button to leave the
|
||||
source mesh (or elements) at its previous location and create a new
|
||||
mesh at the new location, the new mesh appears in the Object Browser
|
||||
selected mesh (or elements) at its previous location and create a new
|
||||
mesh of the scaled copy of the selected elements; the new mesh appears in the Object Browser
|
||||
with the default name MeshName_scaled (it is possible to change this
|
||||
name in the adjacent box);</li>
|
||||
<li>activate <b> Copy groups </b> checkbox to copy the groups of elements of the source mesh to the newly created mesh.</li>
|
||||
<li>activate <b> Copy groups </b> checkbox to copy the groups of
|
||||
elements existing in the source mesh to the newly created mesh.</li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
|
@ -19,11 +19,17 @@ Face_1 = geompy.SubShapeAllSorted(box, geompy.ShapeType["FACE"])[0]
|
||||
Edge_1 = geompy.SubShapeAllSorted(box, geompy.ShapeType["EDGE"])[0]
|
||||
Vertex_1 = geompy.SubShapeAllSorted(box, geompy.ShapeType["VERTEX"])[0]
|
||||
|
||||
Face_2 = geompy.SubShapeAllSorted(box, geompy.ShapeType["FACE"])[5]
|
||||
Wire_1 = geompy.SubShapeAllSorted(Face_2, geompy.ShapeType["WIRE"])[0]
|
||||
|
||||
# /!\ Geom object with sizemaps on them must be published in study
|
||||
geompy.addToStudyInFather(box,Face_1, "Face_1")
|
||||
geompy.addToStudyInFather(box,Edge_1, "Edge_1")
|
||||
geompy.addToStudyInFather(box,Vertex_1, "Vertex_1")
|
||||
|
||||
geompy.addToStudyInFather(box ,Face_2, "Face_2")
|
||||
geompy.addToStudyInFather(Face_2,Wire_1, "Wire_1")
|
||||
|
||||
# create a mesh on the box
|
||||
blsurfMesh = smesh.Mesh(box,"box: BLSurf mesh")
|
||||
|
||||
@ -79,6 +85,21 @@ BLSURF_Parameters.UnsetEnforcedVertices(Face_1)
|
||||
# compute the mesh
|
||||
blsurfMesh.Compute()
|
||||
|
||||
|
||||
# Add an attractor on Face_2, which shape is Wire_1
|
||||
|
||||
# The size on Wire_1 is 1 and will grow until a maximum of 36.641 (physical size set above)
|
||||
# The influence distance of the attractor is 20
|
||||
# The size is kept constant until a distance of 10
|
||||
BLSURF_Parameters.SetAttractorGeom(Face_2, Wire_1, 1, 36.641, 20, 10)
|
||||
|
||||
# In order to let the attractor control the growing of the mesh let set
|
||||
# the gradation to its maximum
|
||||
BLSURF_Parameters.SetGradation( 2.5 )
|
||||
|
||||
# compute the mesh
|
||||
blsurfMesh.Compute()
|
||||
|
||||
# End of script
|
||||
|
||||
\endcode
|
||||
|
@ -20,26 +20,197 @@ ghs3dMesh = smesh.Mesh(box,"box: Ghs3D and BLSurf mesh")
|
||||
|
||||
# create a BLSurf algorithm for faces
|
||||
BLSURF = ghs3dMesh.Triangle(algo=smesh.BLSURF)
|
||||
|
||||
# create a Ghs3D algorithm for volume
|
||||
GHS3D = ghs3dMesh.Tetrahedron(algo=smesh.GHS3D)
|
||||
|
||||
# get Ghs3D algorithm hypothesis
|
||||
GHS3D_Parameters = GHS3D.Parameters()
|
||||
|
||||
# define an enforced vertex at (50,50,100) with a physical size of 2
|
||||
GHS3D_Parameters.SetEnforcedVertex( 50, 50, 100, 2 )
|
||||
|
||||
# define an enforced vertex at (150,150,100) with a physical size of 5
|
||||
GHS3D_Parameters.SetEnforcedVertex( 150, 150, 100, 5 )
|
||||
|
||||
# compute the mesh
|
||||
ghs3dMesh.Compute()
|
||||
|
||||
# End of script
|
||||
\endcode
|
||||
|
||||
\image html ghs3d_screenshot.png Ghs3d mesh withtout hypothesis
|
||||
|
||||
<h2>Adding enforced vertices</h2>
|
||||
|
||||
\code
|
||||
|
||||
# An enforced vertex can be added via:
|
||||
# - the coordinates x,y,z
|
||||
# - a GEOM vertex or compound (No geometry, TUI only)
|
||||
#
|
||||
# The enforced nodes created can also be stored in
|
||||
# a group (No geometry, TUI only).
|
||||
|
||||
# Ex1: Add 1 enforced vertices by coords at (50,50,100)
|
||||
# with a physical size of 2
|
||||
|
||||
import geompy
|
||||
import smesh
|
||||
import BLSURFPlugin
|
||||
import GHS3DPlugin
|
||||
|
||||
# create a box
|
||||
box = geompy.MakeBoxDXDYDZ(200., 200., 200.)
|
||||
geompy.addToStudy(box, "box")
|
||||
# create a mesh on the box
|
||||
ghs3dMesh = smesh.Mesh(box,"box: Ghs3D and BLSurf mesh")
|
||||
# create a BLSurf algorithm for faces
|
||||
ghs3dMesh.Triangle(algo=smesh.BLSURF)
|
||||
# compute the mesh
|
||||
ghs3dMesh.Compute()
|
||||
|
||||
# Make a copy of the 2D mesh
|
||||
ghs3dMesh_wo_geometry = smesh.CopyMesh( ghs3dMesh, 'Ghs3D wo geometry', 0, 0)
|
||||
|
||||
# create a Ghs3D algorithm and hypothesis and assign them to the mesh
|
||||
GHS3D = smesh.CreateHypothesis('GHS3D_3D', 'GHS3DEngine')
|
||||
GHS3D_Parameters = smesh.CreateHypothesis('GHS3D_Parameters', 'GHS3DEngine')
|
||||
ghs3dMesh.AddHypothesis( GHS3D )
|
||||
ghs3dMesh.AddHypothesis( GHS3D_Parameters )
|
||||
# Create the enforced vertex
|
||||
GHS3D_Parameters.SetEnforcedVertex( 50, 50, 100, 2) # no group
|
||||
# Compute the mesh
|
||||
ghs3dMesh.Compute()
|
||||
|
||||
|
||||
# Ex2: Add 1 enforced vertices by GEOM vertex at (50,50,100)
|
||||
# with a physical size of 5 and add it to a group called "My special nodes"
|
||||
|
||||
# Create another GHS3D hypothesis and assign it to the mesh wo geometry
|
||||
GHS3D_Parameters_wo_geometry = smesh.CreateHypothesis('GHS3D_Parameters', 'GHS3DEngine')
|
||||
ghs3dMesh_wo_geometry.AddHypothesis( GHS3D )
|
||||
ghs3dMesh_wo_geometry.AddHypothesis( GHS3D_Parameters_wo_geometry )
|
||||
|
||||
# Create the enforced vertex
|
||||
p1 = geompy.MakeVertex(150, 150, 100)
|
||||
geompy.addToStudy(p1, "p1")
|
||||
GHS3D_Parameters_wo_geometry.SetEnforcedVertexGeomWithGroup( p1, 5 , "My special nodes")
|
||||
#GHS3D_Parameters.SetEnforcedVertexGeom( p1, 5 ) # no group
|
||||
|
||||
# compute the mesh
|
||||
ghs3dMesh_wo_geometry.Compute()
|
||||
|
||||
# Erase all enforced vertices
|
||||
GHS3D_Parameters.ClearEnforcedVertices()
|
||||
|
||||
# End of script
|
||||
|
||||
\endcode
|
||||
|
||||
\image html ghs3d_enforced_vertices_screenshot.png
|
||||
\image html ghs3d_screenshot_enf1.png Ghs3d mesh with enforced vertex
|
||||
\image html ghs3d_screenshot_enf2.png Ghs3d mesh with enforced vertex from GEOM vertex
|
||||
|
||||
<h2>Adding enforced mesh</h2>
|
||||
|
||||
\code
|
||||
|
||||
# It is possible to constraint GHS3D with another mesh or group.
|
||||
# The constraint can be the nodes, edges or faces.
|
||||
# This feature is available only in TUI, on meshes without geometry.
|
||||
# The constraining elements are called enforced elements for the mesh.
|
||||
# They can be recovered using groups if necessary.
|
||||
|
||||
# In the following examples, a box and a cylinder are meshed.
|
||||
# The mesh of the cylinder will be used as a constraint for the
|
||||
# 3D mesh of the box.
|
||||
|
||||
import geompy
|
||||
import smesh
|
||||
import BLSURFPlugin
|
||||
import GHS3DPlugin
|
||||
|
||||
box = geompy.MakeBoxDXDYDZ(200, 200, 200)
|
||||
geompy.addToStudy( box, "box" )
|
||||
cylindre = geompy.MakeCylinderRH(50, 50)
|
||||
geompy.TranslateDXDYDZ(cylindre, 100, 100, 30)
|
||||
face_cyl = geompy.ExtractShapes(cylindre, geompy.ShapeType["FACE"], True)[1]
|
||||
geompy.addToStudy( cylindre, 'cylindre' )
|
||||
geompy.addToStudyInFather( cylindre, face_cyl, 'face_cyl' )
|
||||
p1 = geompy.MakeVertex(20, 20, 20)
|
||||
p2 = geompy.MakeVertex(180, 180, 20)
|
||||
c = geompy.MakeCompound([p1,p2])
|
||||
geompy.addToStudy( p1, "p1" )
|
||||
geompy.addToStudy( p2, "p2" )
|
||||
geompy.addToStudy( c, "c" )
|
||||
|
||||
# Create the 2D algo and hypothesis
|
||||
BLSURF = smesh.CreateHypothesis('BLSURF', 'BLSURFEngine')
|
||||
# For the box
|
||||
BLSURF_Parameters = smesh.CreateHypothesis('BLSURF_Parameters', 'BLSURFEngine')
|
||||
BLSURF_Parameters.SetPhysicalMesh( 1 )
|
||||
BLSURF_Parameters.SetPhySize( 200 )
|
||||
# For the cylinder
|
||||
BLSURF_Parameters2 = smesh.CreateHypothesis('BLSURF_Parameters', 'BLSURFEngine')
|
||||
BLSURF_Parameters2.SetGeometricMesh( 1 )
|
||||
|
||||
# Create the 3D algo and hypothesis
|
||||
GHS3D = smesh.CreateHypothesis('GHS3D_3D', 'GHS3DEngine')
|
||||
GHS3D_Parameters_node = smesh.CreateHypothesis('GHS3D_Parameters', 'GHS3DEngine')
|
||||
#GHS3D_Parameters_node.SetToMeshHoles( 1 )
|
||||
GHS3D_Parameters_edge = smesh.CreateHypothesis('GHS3D_Parameters', 'GHS3DEngine')
|
||||
#GHS3D_Parameters_edge.SetToMeshHoles( 1 )
|
||||
GHS3D_Parameters_face = smesh.CreateHypothesis('GHS3D_Parameters', 'GHS3DEngine')
|
||||
GHS3D_Parameters_face.SetToMeshHoles( 1 ) # to mesh inside the cylinder
|
||||
GHS3D_Parameters_mesh = smesh.CreateHypothesis('GHS3D_Parameters', 'GHS3DEngine')
|
||||
GHS3D_Parameters_mesh.SetToMeshHoles( 1 ) # to mesh inside the cylinder
|
||||
|
||||
# Create the mesh on the cylinder
|
||||
Mesh_cylindre = smesh.Mesh(cylindre)
|
||||
SetName(Mesh_cylindre,"Mesh_cylindre")
|
||||
Mesh_cylindre.AddHypothesis( BLSURF )
|
||||
Mesh_cylindre.AddHypothesis( BLSURF_Parameters2 )
|
||||
# Create some groups
|
||||
face_cyl_faces = Mesh_cylindre.GroupOnGeom(face_cyl,'group_face_cyl', smesh.FACE)
|
||||
face_cyl_edges = Mesh_cylindre.GroupOnGeom(face_cyl,'group_edge_cyl', smesh.EDGE)
|
||||
face_cyl_nodes = Mesh_cylindre.GroupOnGeom(face_cyl,'group_node_cyl', smesh.NODE)
|
||||
Mesh_cyl_tri.Compute()
|
||||
|
||||
# Create the mesh on the cylinder
|
||||
Mesh_box_tri = smesh.Mesh(box)
|
||||
SetName(Mesh_box_tri,"Mesh_box_tri")
|
||||
Mesh_box_tri.AddHypothesis( BLSURF )
|
||||
Mesh_box_tri.AddHypothesis( BLSURF_Parameters )
|
||||
Mesh_box_tri.Compute()
|
||||
|
||||
# Create 4 copies of the 2D mesh to test the 3 types of contraints (NODE, EDGE, FACE)
|
||||
# from a whole mesh and from groups of elements.
|
||||
# Then the 3D algo and hypothesis are assigned to them.
|
||||
|
||||
mesh_mesh = smesh.CopyMesh( Mesh_box_tri, 'Enforced by faces of mesh', 0, 0)
|
||||
mesh_mesh.AddHypothesis( GHS3D_3D )
|
||||
mesh_mesh.AddHypothesis( GHS3D_Parameters_mesh)
|
||||
|
||||
mesh_node = smesh.CopyMesh( Mesh_box_tri, 'Enforced by group of nodes', 0, 0)
|
||||
mesh_node.AddHypothesis( GHS3D_3D )
|
||||
mesh_node.AddHypothesis( GHS3D_Parameters_node)
|
||||
|
||||
mesh_edge = smesh.CopyMesh( Mesh_box_tri, 'Enforced by group of edges', 0, 0)
|
||||
mesh_edge.AddHypothesis( GHS3D_3D )
|
||||
mesh_edge.AddHypothesis( GHS3D_Parameters_edge)
|
||||
|
||||
mesh_face = smesh.CopyMesh( Mesh_box_tri, 'Enforced by group of faces', 0, 0)
|
||||
mesh_face.AddHypothesis( GHS3D_3D )
|
||||
mesh_face.AddHypothesis( GHS3D_Parameters_face)
|
||||
|
||||
# Add the enforced elements
|
||||
GHS3D_Parameters_mesh.SetEnforcedMeshWithGroup(Mesh_cylindre.GetMesh(),smesh.FACE,"faces from cylinder")
|
||||
GHS3D_Parameters_node.SetEnforcedMeshWithGroup(face_cyl_nodes,smesh.NODE,"nodes from face_cyl_nodes")
|
||||
GHS3D_Parameters_edge.SetEnforcedMeshWithGroup(face_cyl_edges,smesh.EDGE,"edges from face_cyl_edges")
|
||||
GHS3D_Parameters_face.SetEnforcedMeshWithGroup(face_cyl_faces,smesh.FACE,"faces from face_cyl_faces")
|
||||
|
||||
#Compute the meshes
|
||||
mesh_node.Compute()
|
||||
mesh_edge.Compute()
|
||||
mesh_face.Compute()
|
||||
mesh_mesh.Compute()
|
||||
|
||||
# End of script
|
||||
|
||||
\endcode
|
||||
|
||||
\image html ghs3d_screenshot_enf3.png
|
||||
\image html ghs3d_screenshot_enf4.png
|
||||
\image html ghs3d_screenshot_enf5.png
|
||||
\image html ghs3d_screenshot_enf6.png
|
||||
|
||||
*/
|
@ -689,4 +689,25 @@ print "Number of tetrahedrons:", len(ids_tet)
|
||||
print "Number of pyramids:", len(ids_pyr)
|
||||
\endcode
|
||||
|
||||
\section combining_filters How to combine filters with Criterion structures?
|
||||
|
||||
Filters can be combined by making use of "criteria".
|
||||
|
||||
Example :
|
||||
|
||||
\code
|
||||
# create mesh
|
||||
from SMESH_mechanic import *
|
||||
# get all the quadrangle faces ...
|
||||
criterion1 = smesh.GetCriterion(smesh.FACE, smesh.FT_ElemGeomType, smesh.Geom_QUADRANGLE, smesh.FT_LogicalAND)
|
||||
# ... AND do NOT get those from sub_face3
|
||||
criterion2 = smesh.GetCriterion(smesh.FACE, smesh.FT_BelongToGeom, sub_face3, smesh.FT_LogicalNOT)
|
||||
filter = smesh.CreateFilterManager().CreateFilter()
|
||||
filter.SetCriteria([criterion1,criterion2])
|
||||
ids = mesh.GetIdsFromFilter(filter)
|
||||
|
||||
myGroup = mesh.MakeGroupByIds("Quads_on_cylindrical_faces",smesh.FACE,ids)
|
||||
\endcode
|
||||
|
||||
|
||||
*/
|
||||
|
75
doc/salome/gui/SMESH/input/tui_generate_flat_elements.doc
Normal file
@ -0,0 +1,75 @@
|
||||
/*!
|
||||
|
||||
\page tui_generate_flat_elements_page Generate flat elements
|
||||
|
||||
<br>
|
||||
\anchor tui_double_nodes_on_group_boundaries
|
||||
<h2>Double nodes on groups boundaries</h2>
|
||||
|
||||
\n Double nodes on shared faces between groups of volumes and create flat elements on demand.
|
||||
\n The list of groups must describe a partition of the mesh volumes.The nodes of the internal
|
||||
faces at the boundaries of the groups are doubled. In option, the internal faces are replaced
|
||||
by flat elements.
|
||||
\n Triangles are transformed in prisms, and quadrangles in hexahedrons.
|
||||
\n The flat elements are stored in groups of volumes.
|
||||
|
||||
\n
|
||||
\n This example represents an iron cable (a thin cylinder) in a concrete bloc (a big cylinder).
|
||||
The big cylinder is defined by two geometric volumes.
|
||||
|
||||
\code
|
||||
# geometry
|
||||
|
||||
O = geompy.MakeVertex(0, 0, 0)
|
||||
OX = geompy.MakeVectorDXDYDZ(1, 0, 0)
|
||||
OY = geompy.MakeVectorDXDYDZ(0, 1, 0)
|
||||
OZ = geompy.MakeVectorDXDYDZ(0, 0, 1)
|
||||
Vertex_1 = geompy.MakeVertex(50, 0, 0)
|
||||
Cylinder_1 = geompy.MakeCylinder(O, OX, 10, 500)
|
||||
Cylinder_2 = geompy.MakeCylinder(Vertex_1, OX, 100, 400)
|
||||
Vertex_2 = geompy.MakeVertex(-200, -200, -200)
|
||||
Vertex_3 = geompy.MakeVertex(250, 200, 200)
|
||||
Box_1 = geompy.MakeBoxTwoPnt(Vertex_2, Vertex_3)
|
||||
Cut_1 = geompy.MakeCut(Cylinder_2, Cylinder_1)
|
||||
Partition_2 = geompy.MakePartition([Cut_1], [Box_1], [], [], geompy.ShapeType["SOLID"], 0, [], 0)
|
||||
Fuse_1 = geompy.MakeFuse(Partition_2, Cylinder_1)
|
||||
Partition_1 = geompy.MakePartition([Fuse_1], [Cylinder_1], [], [], geompy.ShapeType["SOLID"], 0, [], 0)
|
||||
[Solid_1,Solid_2,Solid_3] = geompy.SubShapes(Partition_1, [53, 2, 30])
|
||||
[Face_1,Face_2] = geompy.SubShapes(Partition_1, [37, 20])
|
||||
|
||||
# meshing (linear tetrahedrons here, but other elements are OK)
|
||||
|
||||
Mesh_1 = smesh.Mesh(Partition_1)
|
||||
BLSURF = Mesh_1.Triangle(algo=smesh.BLSURF)
|
||||
BLSURF_Parameters = BLSURF.Parameters()
|
||||
BLSURF_Parameters.SetPhysicalMesh( 0 )
|
||||
BLSURF_Parameters.SetGeometricMesh( 1 )
|
||||
BLSURF_Parameters.SetAngleMeshS( 16 )
|
||||
BLSURF_Parameters.SetAngleMeshC( 16 )
|
||||
GHS3D_3D = Mesh_1.Tetrahedron(algo=smesh.GHS3D)
|
||||
isDone = Mesh_1.Compute()
|
||||
|
||||
# relevant groups of volumes and faces
|
||||
|
||||
Solid_1_1 = Mesh_1.GroupOnGeom(Solid_1,'Solid_1',SMESH.VOLUME)
|
||||
Solid_2_1 = Mesh_1.GroupOnGeom(Solid_2,'Solid_2',SMESH.VOLUME)
|
||||
Solid_3_1 = Mesh_1.GroupOnGeom(Solid_3,'Solid_3',SMESH.VOLUME)
|
||||
Face_1_1 = Mesh_1.GroupOnGeom(Face_1,'Face_1',SMESH.FACE)
|
||||
Face_2_1 = Mesh_1.GroupOnGeom(Face_2,'Face_2',SMESH.FACE)
|
||||
|
||||
\endcode
|
||||
|
||||
\n Here, the 3 groups of volumes [Solid_1_1, Solid_2_1, Solid_3_1] constitute a partition of the mesh.
|
||||
The flat elements on group boundaries and on faces are built with the following code.
|
||||
\n If the last argument (boolean) in DoubleNodesOnGroupBoundaries is set to 1,
|
||||
the flat elements are built, otherwise, there is only a duplication of the nodes.
|
||||
|
||||
\code
|
||||
Mesh_1.DoubleNodesOnGroupBoundaries([Solid_1_1, Solid_2_1, Solid_3_1], 1)
|
||||
|
||||
Mesh_1.CreateFlatElementsOnFacesGroups([Face_1_1, Face_2_1])
|
||||
\endcode
|
||||
|
||||
\n To observe the flat element groups, save the resulting mesh on a Med file and reload it.
|
||||
|
||||
*/
|
@ -17,16 +17,16 @@ right-clicking on the selected mesh.
|
||||
\image html dialog.png
|
||||
|
||||
<ul>
|
||||
<li><b>Rename</b> - allows to rename the object in the Object browser.</li>
|
||||
<li><b>Hide all</b> - allows to hide all objects in the viewer.</li>
|
||||
<li><b>Update</b> - refreshes the presentation of your mesh in the
|
||||
Object Browser, applying all recent changes. </li>
|
||||
<li>\subpage mesh_infos_page "Mesh Infos" - provides
|
||||
<li>\subpage mesh_infos_page "Mesh Information" - provides
|
||||
information about the mesh.</li>
|
||||
<li>\ref mesh_element_info_anchor "Mesh Element Info" - provides basic
|
||||
information about the selected element of the mesh. </li>
|
||||
<li>\subpage find_element_by_point_page "Find Element by Point" -
|
||||
allows to find all mesh elements, to which belongs a point with the
|
||||
given coordinates.</li>
|
||||
<li><b>Auto Color</b> - switch on / off auto-assigning colors for the groups.</li>
|
||||
<li>\subpage numbering_page "Numbering" - allows to display the ID
|
||||
numbers of all meshing elements or nodes composing your mesh in the
|
||||
viewer.</li>
|
||||
@ -44,11 +44,11 @@ the first three nodes of the face produced by vectors n1-n2 and n1-n3.</li>
|
||||
meshes.</li>
|
||||
<li>\subpage transparency_page "Transparency" - allows to change the
|
||||
transparency of mesh elements.</li>
|
||||
<li>\subpage clipping_page "Clipping" - allows to create cross-sections of the selected objects.</li>
|
||||
<li>\ref quality_page "Controls" - graphically
|
||||
presents various information about meshes.</li>
|
||||
<li><b>Hide</b> - allows to hide the selected mesh from the viewer.</li>
|
||||
<li><b>Show Only</b> -allows to display only the selected mesh, hiding all other from the viewer.</li>
|
||||
<li>\subpage clipping_page "Clipping" - allows to create cross-sections of the selected objects.</li>
|
||||
<li><b>Dump view</b> - exports an object from the viewer in bmp, png, jpg or jpeg image format.</li>
|
||||
<li><b>Change background</b> - allows to redefine the background
|
||||
color. By default it is black.</li>
|
||||
|
@ -3,7 +3,7 @@
|
||||
</div>
|
||||
<div class="footer1">
|
||||
<div style="text-align: center;">
|
||||
Copyright © 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE<br>
|
||||
Copyright © 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE<br>
|
||||
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS<br>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
@ -19,7 +19,6 @@
|
||||
#
|
||||
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
#
|
||||
# Doxyfile 1.4.6
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Project related configuration options
|
||||
@ -149,7 +148,7 @@ HHC_LOCATION =
|
||||
GENERATE_CHI = NO
|
||||
BINARY_TOC = NO
|
||||
TOC_EXPAND = NO
|
||||
DISABLE_INDEX = YES
|
||||
DISABLE_INDEX = NO
|
||||
ENUM_VALUES_PER_LINE = 4
|
||||
GENERATE_TREEVIEW = NO
|
||||
TREEVIEW_WIDTH = 250
|
||||
|
@ -6,7 +6,7 @@
|
||||
<div class="footer1">
|
||||
<!--hr style="width: 100%; height: 2px;"-->
|
||||
<div style="text-align: center;">
|
||||
Copyright © 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE<br>
|
||||
Copyright © 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE<br>
|
||||
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS<br>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
@ -53,6 +53,9 @@ nodist_libSalomeIDLSMESH_la_SOURCES = \
|
||||
SMESH_MeshEditorSK.cc \
|
||||
SMESH_MeasurementsSK.cc
|
||||
|
||||
# to be done at first, to avoid parallel compilation problems
|
||||
BUILT_SOURCES = $(nodist_libSalomeIDLSMESH_la_SOURCES)
|
||||
|
||||
# header files must be exported: other modules have to use this library
|
||||
nodist_salomeinclude_HEADERS = $(BASEIDL_FILES:%.idl=%.hh)
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
@ -70,7 +70,8 @@ module SMESH
|
||||
const long Tag_EdgeGroups = 12;
|
||||
const long Tag_FaceGroups = 13;
|
||||
const long Tag_VolumeGroups = 14;
|
||||
const long Tag_LastGroup = 14;
|
||||
const long Tag_0DElementsGroups = 15;
|
||||
const long Tag_LastGroup = 15;
|
||||
|
||||
/*!
|
||||
* Hypothesis definintion error
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,6 +1,6 @@
|
||||
<?xml version='1.0' encoding='us-ascii' ?>
|
||||
<!--
|
||||
Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
|
||||
Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,5 +1,5 @@
|
||||
<!--
|
||||
Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
|
||||
Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,7 +1,7 @@
|
||||
<?xml version='1.0' encoding='us-ascii'?>
|
||||
<!DOCTYPE meshers PUBLIC "" "desktop.dtd">
|
||||
<!--
|
||||
Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
|
||||
Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
@ -44,12 +44,9 @@ Driver_Mesh::Status DriverDAT_R_SMDS_Mesh::Perform()
|
||||
|
||||
int intNumMaille, Degre;
|
||||
int ValElement;
|
||||
int ValDegre;
|
||||
int NoeudsMaille[20];
|
||||
int NoeudMaille;
|
||||
|
||||
bool ok;
|
||||
|
||||
MESSAGE("in DriverDAT_R_SMDS_Mesh::Read()");
|
||||
/****************************************************************************
|
||||
* OUVERTURE DU FICHIER EN LECTURE *
|
||||
@ -72,7 +69,7 @@ Driver_Mesh::Status DriverDAT_R_SMDS_Mesh::Perform()
|
||||
|
||||
for (i = 0; i < nbNodes; i++){
|
||||
fscanf(aFileId, "%d %e %e %e\n", &intNumPoint, &coordX, &coordY, &coordZ);
|
||||
ok = myMesh->AddNodeWithID(coordX, coordY, coordZ, intNumPoint);
|
||||
myMesh->AddNodeWithID(coordX, coordY, coordZ, intNumPoint);
|
||||
}
|
||||
|
||||
fprintf(stdout, "%d noeuds\n", myMesh->NbNodes());
|
||||
@ -100,29 +97,25 @@ Driver_Mesh::Status DriverDAT_R_SMDS_Mesh::Perform()
|
||||
switch (ValElement) {
|
||||
case 102:
|
||||
case 103:
|
||||
ValDegre = 3;
|
||||
nbNoeuds = 2;
|
||||
ok = myMesh->AddEdgeWithID(NoeudsMaille[0], NoeudsMaille[1],
|
||||
myMesh->AddEdgeWithID(NoeudsMaille[0], NoeudsMaille[1],
|
||||
intNumMaille);
|
||||
break;
|
||||
case 204:
|
||||
case 208:
|
||||
ValDegre = 9;
|
||||
nbNoeuds = 4;
|
||||
ok = myMesh->AddFaceWithID(NoeudsMaille[0], NoeudsMaille[1],
|
||||
myMesh->AddFaceWithID(NoeudsMaille[0], NoeudsMaille[1],
|
||||
NoeudsMaille[2], NoeudsMaille[3],
|
||||
intNumMaille);
|
||||
break;
|
||||
case 203:
|
||||
case 206:
|
||||
ValDegre = 5;
|
||||
nbNoeuds = 3;
|
||||
ok = myMesh->AddFaceWithID(NoeudsMaille[0], NoeudsMaille[1],
|
||||
myMesh->AddFaceWithID(NoeudsMaille[0], NoeudsMaille[1],
|
||||
NoeudsMaille[2], intNumMaille);
|
||||
break;
|
||||
case 308:
|
||||
case 320:
|
||||
ValDegre = 12;
|
||||
nbNoeuds = 8;
|
||||
if (ValElement == 320){
|
||||
//A voir, correspondance VTK
|
||||
@ -131,7 +124,7 @@ Driver_Mesh::Status DriverDAT_R_SMDS_Mesh::Perform()
|
||||
NoeudsMaille[6] = NoeudsMaille[10];
|
||||
NoeudsMaille[7] = NoeudsMaille[11];
|
||||
}
|
||||
ok = myMesh->AddVolumeWithID(NoeudsMaille[0], NoeudsMaille[1],
|
||||
myMesh->AddVolumeWithID(NoeudsMaille[0], NoeudsMaille[1],
|
||||
NoeudsMaille[2], NoeudsMaille[3],
|
||||
NoeudsMaille[4], NoeudsMaille[5],
|
||||
NoeudsMaille[6], NoeudsMaille[7],
|
||||
@ -139,17 +132,15 @@ Driver_Mesh::Status DriverDAT_R_SMDS_Mesh::Perform()
|
||||
break;
|
||||
case 304:
|
||||
case 310:
|
||||
ValDegre = 10;
|
||||
nbNoeuds = 4;
|
||||
if (ValElement == 310)
|
||||
NoeudsMaille[3] = NoeudsMaille[6];
|
||||
ok = myMesh->AddVolumeWithID(NoeudsMaille[0], NoeudsMaille[1],
|
||||
myMesh->AddVolumeWithID(NoeudsMaille[0], NoeudsMaille[1],
|
||||
NoeudsMaille[2], NoeudsMaille[3],
|
||||
intNumMaille);
|
||||
break;
|
||||
case 306:
|
||||
case 315:
|
||||
ValDegre = 12;
|
||||
nbNoeuds = 8;
|
||||
if (ValElement == 315) {
|
||||
NoeudsMaille[3] = NoeudsMaille[6];
|
||||
@ -161,7 +152,7 @@ Driver_Mesh::Status DriverDAT_R_SMDS_Mesh::Perform()
|
||||
NoeudsMaille[5] = NoeudsMaille[4];
|
||||
NoeudsMaille[4] = NoeudsMaille[3];
|
||||
NoeudsMaille[3] = NoeudsMaille[2];
|
||||
ok = myMesh->AddVolumeWithID(NoeudsMaille[0], NoeudsMaille[1],
|
||||
myMesh->AddVolumeWithID(NoeudsMaille[0], NoeudsMaille[1],
|
||||
NoeudsMaille[2], NoeudsMaille[3],
|
||||
NoeudsMaille[4], NoeudsMaille[5],
|
||||
intNumMaille);
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
# Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|
@ -1,4 +1,4 @@
|
||||
// Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
// Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
||||
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
||||
|