PR: add an independant exe that cuts a tetra mesh by a plane. MeshCut is adpated from EDF project XMESHLAB and works with MED files.

This commit is contained in:
prascle 2011-04-12 11:24:20 +00:00
parent 022168f9e6
commit b9db0238dc
22 changed files with 7352 additions and 2 deletions

View File

@ -499,6 +499,8 @@ AC_OUTPUT([ \
src/StdMeshersGUI/Makefile \
src/StdMeshers_I/Makefile \
src/SMESH_PY/Makefile \
src/Tools/Makefile \
src/Tools/MeshCut/Makefile \
resources/Makefile \
resources/SMESHCatalog.xml \
idl/Makefile \

View File

@ -41,7 +41,8 @@ SUBDIRS = \
MEFISTO2 \
StdMeshers \
StdMeshers_I \
SMESH_PY
SMESH_PY \
Tools
if SMESH_ENABLE_GUI
SUBDIRS += \
@ -55,4 +56,4 @@ endif
DIST_SUBDIRS = SMDS SMESHDS Controls Driver DriverMED DriverDAT DriverUNV DriverSTL SMESH \
SMESH_I SMESHClient SMESH_SWIG MEFISTO2 StdMeshers StdMeshers_I OBJECT \
SMESHFiltersSelection SMESHGUI PluginUtils SMESH_SWIG_WITHIHM StdMeshersGUI SMESH_PY
SMESHFiltersSelection SMESHGUI PluginUtils SMESH_SWIG_WITHIHM StdMeshersGUI SMESH_PY Tools

30
src/Tools/Makefile.am Normal file
View File

@ -0,0 +1,30 @@
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
# File : Makefile.in
# Author : Patrick GOLDBRONN (CEA)
# Modified by : Alexander BORODIN (OCN) - autotools usage
# Module : SMESH
# $Header$
#
include $(top_srcdir)/adm_local/unix/make_common_starter.am
SUBDIRS = MeshCut
DIST_SUBDIRS = MeshCut

863
src/Tools/Makefile.in Normal file
View File

@ -0,0 +1,863 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
$(top_srcdir)/adm_local/unix/make_common_starter.am
subdir = src/Tools
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = \
$(top_srcdir)/adm_local/unix/config_files/check_Platform.m4 \
$(top_srcdir)/adm_local/unix/config_files/check_qwt.m4 \
$(top_srcdir)/adm_local/unix/config_files/libtool.m4 \
$(top_srcdir)/adm_local/unix/config_files/ltoptions.m4 \
$(top_srcdir)/adm_local/unix/config_files/ltsugar.m4 \
$(top_srcdir)/adm_local/unix/config_files/ltversion.m4 \
$(top_srcdir)/adm_local/unix/config_files/lt~obsolete.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
html-recursive info-recursive install-data-recursive \
install-dvi-recursive install-exec-recursive \
install-html-recursive install-info-recursive \
install-pdf-recursive install-ps-recursive install-recursive \
installcheck-recursive installdirs-recursive pdf-recursive \
ps-recursive uninstall-recursive
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
distclean-recursive maintainer-clean-recursive
AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
distdir
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
sed_first='s,^\([^/]*\)/.*$$,\1,'; \
sed_rest='s,^[^/]*/*,,'; \
sed_last='s,^.*/\([^/]*\)$$,\1,'; \
sed_butlast='s,/*[^/]*$$,,'; \
while test -n "$$dir1"; do \
first=`echo "$$dir1" | sed -e "$$sed_first"`; \
if test "$$first" != "."; then \
if test "$$first" = ".."; then \
dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
else \
first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
if test "$$first2" = "$$first"; then \
dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
else \
dir2="../$$dir2"; \
fi; \
dir0="$$dir0"/"$$first"; \
fi; \
fi; \
dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
done; \
reldir="$$dir2"
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BOOST_CPPFLAGS = @BOOST_CPPFLAGS@
BOOST_LIBS = @BOOST_LIBS@
BOOST_LIBSUFFIX = @BOOST_LIBSUFFIX@
BOOST_LIB_REGEX = @BOOST_LIB_REGEX@
BOOST_LIB_SIGNALS = @BOOST_LIB_SIGNALS@
BOOST_LIB_SYSTEM = @BOOST_LIB_SYSTEM@
BOOST_LIB_THREAD = @BOOST_LIB_THREAD@
BOOST_PROGRAM_OPTIONS_LIB = @BOOST_PROGRAM_OPTIONS_LIB@
CASROOT = @CASROOT@
CAS_CPPFLAGS = @CAS_CPPFLAGS@
CAS_CXXFLAGS = @CAS_CXXFLAGS@
CAS_DATADIR = @CAS_DATADIR@
CAS_DATAEXCHANGE = @CAS_DATAEXCHANGE@
CAS_KERNEL = @CAS_KERNEL@
CAS_LDFLAGS = @CAS_LDFLAGS@
CAS_LDPATH = @CAS_LDPATH@
CAS_LIBDIR = @CAS_LIBDIR@
CAS_MATH = @CAS_MATH@
CAS_MODELER = @CAS_MODELER@
CAS_OCAF = @CAS_OCAF@
CAS_OCAFVIS = @CAS_OCAFVIS@
CAS_STDPLUGIN = @CAS_STDPLUGIN@
CAS_TKTopAlgo = @CAS_TKTopAlgo@
CAS_VIEWER = @CAS_VIEWER@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CORBA_CXXFLAGS = @CORBA_CXXFLAGS@
CORBA_INCLUDES = @CORBA_INCLUDES@
CORBA_LIBS = @CORBA_LIBS@
CORBA_ROOT = @CORBA_ROOT@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CXXTMPDPTHFLAGS = @CXXTMPDPTHFLAGS@
CXX_DEPEND_FLAG = @CXX_DEPEND_FLAG@
CYGPATH_W = @CYGPATH_W@
C_DEPEND_FLAG = @C_DEPEND_FLAG@
DEFINED_F77INT64 = @DEFINED_F77INT64@
DEFS = @DEFS@
DEPCC = @DEPCC@
DEPCXX = @DEPCXX@
DEPCXXFLAGS = @DEPCXXFLAGS@
DEPDIR = @DEPDIR@
DOT = @DOT@
DOXYGEN = @DOXYGEN@
DOXYGEN_PYTHON_EXTENSION = @DOXYGEN_PYTHON_EXTENSION@
DOXYGEN_SUPPORT_STL = @DOXYGEN_SUPPORT_STL@
DOXYGEN_WITH_PYTHON = @DOXYGEN_WITH_PYTHON@
DOXYGEN_WITH_STL = @DOXYGEN_WITH_STL@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
DVIPS = @DVIPS@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_MULTIPR = @ENABLE_MULTIPR@
EXEEXT = @EXEEXT@
F77 = @F77@
FC = @FC@
FCFLAGS = @FCFLAGS@
FCLIBS = @FCLIBS@
FFLAGS = @FFLAGS@
FGREP = @FGREP@
FLIBS = @FLIBS@
GEOM_CXXFLAGS = @GEOM_CXXFLAGS@
GEOM_LDFLAGS = @GEOM_LDFLAGS@
GEOM_ROOT_DIR = @GEOM_ROOT_DIR@
GLOBAL_INSTALL = @GLOBAL_INSTALL@
GREP = @GREP@
GUI_CXXFLAGS = @GUI_CXXFLAGS@
GUI_LDFLAGS = @GUI_LDFLAGS@
GUI_ROOT_DIR = @GUI_ROOT_DIR@
HAVE_SSTREAM = @HAVE_SSTREAM@
HDF5_INCLUDES = @HDF5_INCLUDES@
HDF5_LIBS = @HDF5_LIBS@
HDF5_MT_LIBS = @HDF5_MT_LIBS@
IDL = @IDL@
IDLCXXFLAGS = @IDLCXXFLAGS@
IDLPYFLAGS = @IDLPYFLAGS@
IDL_CLN_CXX = @IDL_CLN_CXX@
IDL_CLN_H = @IDL_CLN_H@
IDL_CLN_OBJ = @IDL_CLN_OBJ@
IDL_SRV_CXX = @IDL_SRV_CXX@
IDL_SRV_H = @IDL_SRV_H@
IDL_SRV_OBJ = @IDL_SRV_OBJ@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
KERNEL_CXXFLAGS = @KERNEL_CXXFLAGS@
KERNEL_LDFLAGS = @KERNEL_LDFLAGS@
KERNEL_ROOT_DIR = @KERNEL_ROOT_DIR@
KERNEL_SITE_DIR = @KERNEL_SITE_DIR@
LATEX = @LATEX@
LD = @LD@
LDEXPDYNFLAGS = @LDEXPDYNFLAGS@
LDFLAGS = @LDFLAGS@
LEX = @LEX@
LEXLIB = @LEXLIB@
LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIB_LOCATION_SUFFIX = @LIB_LOCATION_SUFFIX@
LIPO = @LIPO@
LN_S = @LN_S@
LRELEASE = @LRELEASE@
LTLIBOBJS = @LTLIBOBJS@
MACHINE = @MACHINE@
MAKEINFO = @MAKEINFO@
MDUMP = @MDUMP@
MED2_INCLUDES = @MED2_INCLUDES@
MED2_LIBS = @MED2_LIBS@
MED2_LIBS_C_ONLY = @MED2_LIBS_C_ONLY@
MED2_MT_LIBS = @MED2_MT_LIBS@
MED_CPPFLAGS = @MED_CPPFLAGS@
MED_CXXFLAGS = @MED_CXXFLAGS@
MED_LDFLAGS = @MED_LDFLAGS@
MED_ROOT_DIR = @MED_ROOT_DIR@
MKDIR_P = @MKDIR_P@
MOC = @MOC@
MODULE_NAME = @MODULE_NAME@
MPI_INCLUDES = @MPI_INCLUDES@
MPI_LIBS = @MPI_LIBS@
MULTIPR_CPPFLAGS = @MULTIPR_CPPFLAGS@
MULTIPR_LIBS = @MULTIPR_LIBS@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OGL_INCLUDES = @OGL_INCLUDES@
OGL_LIBS = @OGL_LIBS@
OMNIORB_CXXFLAGS = @OMNIORB_CXXFLAGS@
OMNIORB_IDL = @OMNIORB_IDL@
OMNIORB_IDLCXXFLAGS = @OMNIORB_IDLCXXFLAGS@
OMNIORB_IDLPYFLAGS = @OMNIORB_IDLPYFLAGS@
OMNIORB_IDL_CLN_CXX = @OMNIORB_IDL_CLN_CXX@
OMNIORB_IDL_CLN_H = @OMNIORB_IDL_CLN_H@
OMNIORB_IDL_CLN_OBJ = @OMNIORB_IDL_CLN_OBJ@
OMNIORB_IDL_SRV_CXX = @OMNIORB_IDL_SRV_CXX@
OMNIORB_IDL_SRV_H = @OMNIORB_IDL_SRV_H@
OMNIORB_IDL_SRV_OBJ = @OMNIORB_IDL_SRV_OBJ@
OMNIORB_IDL_TIE_CXX = @OMNIORB_IDL_TIE_CXX@
OMNIORB_IDL_TIE_H = @OMNIORB_IDL_TIE_H@
OMNIORB_INCLUDES = @OMNIORB_INCLUDES@
OMNIORB_LIBS = @OMNIORB_LIBS@
OMNIORB_ROOT = @OMNIORB_ROOT@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PDFLATEX = @PDFLATEX@
PLATFORM_INCLUDES = @PLATFORM_INCLUDES@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
PYTHON = @PYTHON@
PYTHONHOME = @PYTHONHOME@
PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
PYTHON_INCLUDES = @PYTHON_INCLUDES@
PYTHON_LIBS = @PYTHON_LIBS@
PYTHON_PLATFORM = @PYTHON_PLATFORM@
PYTHON_PREFIX = @PYTHON_PREFIX@
PYTHON_SITE = @PYTHON_SITE@
PYTHON_SITE_EXEC = @PYTHON_SITE_EXEC@
PYTHON_SITE_INSTALL = @PYTHON_SITE_INSTALL@
PYTHON_SITE_PACKAGE = @PYTHON_SITE_PACKAGE@
PYTHON_VERSION = @PYTHON_VERSION@
QRCC = @QRCC@
QTDIR = @QTDIR@
QT_ASSISTANT_INCLUDES = @QT_ASSISTANT_INCLUDES@
QT_ASSISTANT_LIBS = @QT_ASSISTANT_LIBS@
QT_CORE_LIBS = @QT_CORE_LIBS@
QT_GUI_LIBS = @QT_GUI_LIBS@
QT_INCLUDES = @QT_INCLUDES@
QT_LIBS = @QT_LIBS@
QT_LIB_DIR = @QT_LIB_DIR@
QT_MT_INCLUDES = @QT_MT_INCLUDES@
QT_MT_LIBS = @QT_MT_LIBS@
QT_OTHER_LIBS = @QT_OTHER_LIBS@
QT_ROOT = @QT_ROOT@
QT_VERSION = @QT_VERSION@
QT_VERSION_ID = @QT_VERSION_ID@
QWT_INCLUDES = @QWT_INCLUDES@
QWT_LIBS = @QWT_LIBS@
RANLIB = @RANLIB@
ROOT_BUILDDIR = @ROOT_BUILDDIR@
ROOT_SRCDIR = @ROOT_SRCDIR@
RST2HTML = @RST2HTML@
SED = @SED@
SETX = @SETX@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SPHINX = @SPHINX@
STDLIB = @STDLIB@
STRIP = @STRIP@
SWIG = @SWIG@
SWIG_FLAGS = @SWIG_FLAGS@
TEMP = @TEMP@
UIC = @UIC@
VERSION = @VERSION@
VTKPY_MODULES = @VTKPY_MODULES@
VTK_INCLUDES = @VTK_INCLUDES@
VTK_LIBS = @VTK_LIBS@
WITHMPI = @WITHMPI@
XMKMF = @XMKMF@
XVERSION = @XVERSION@
YACC = @YACC@
YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
ac_ct_F77 = @ac_ct_F77@
ac_ct_FC = @ac_ct_FC@
acx_pthread_config = @acx_pthread_config@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = $(prefix)/bin/salome
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
# Documentation directory
docdir = $(datadir)/doc/salome
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = $(prefix)/lib@LIB_LOCATION_SUFFIX@/salome
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
lt_ECHO = @lt_ECHO@
mandir = @mandir@
mkdir_p = @mkdir_p@
mpi2_ok = @mpi2_ok@
mpi_ok = @mpi_ok@
oldincludedir = @oldincludedir@
para_path = @para_path@
pdfdir = @pdfdir@
pkgpyexecdir = @pkgpyexecdir@
pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
pyexecdir = @pyexecdir@
pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target = @target@
target_alias = @target_alias@
target_cpu = @target_cpu@
target_os = @target_os@
target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
# ============================================================
# The following is to avoid PACKAGE_... env variable
# redefinition compilation warnings
# ============================================================
#
AM_CXXFLAGS = @KERNEL_CXXFLAGS@ -include SALOMEconfig.h
AM_CPPFLAGS = @KERNEL_CXXFLAGS@ -include SALOMEconfig.h
# ============================================================
# This file defines the common definitions used in several
# Makefile. This file must be included, if needed, by the file
# Makefile.am.
# ============================================================
# Standard directory for installation
#
salomeincludedir = $(includedir)/salome
salomescriptdir = $(bindir)
salomepythondir = $(pythondir)/salome
salomepyexecdir = $(pyexecdir)/salome
# Directory for installing idl files
salomeidldir = $(prefix)/idl/salome
# Directory for installing resource files
salomeresdir = $(prefix)/share/salome/resources/@MODULE_NAME@
# Directories for installing admin files
admlocaldir = $(prefix)/adm_local
admlocalunixdir = $(admlocaldir)/unix
admlocalm4dir = $(admlocaldir)/unix/config_files
# Shared modules installation directory
sharedpkgpythondir = $(salomepythondir)/shared_modules
# extra distributed files
EXTRA_DIST = $(MOC_FILES:%_moc.cxx=%.h) $(QRC_FILES:qrc_%.cxx=%.qrc) \
$(UIC_FILES:ui_%.h=%.ui) $(nodist_salomeres_DATA:%.qm=%.ts)
# File : Makefile.in
# Author : Patrick GOLDBRONN (CEA)
# Modified by : Alexander BORODIN (OCN) - autotools usage
# Module : SMESH
# $Header$
#
SUBDIRS = MeshCut
DIST_SUBDIRS = MeshCut
all: all-recursive
.SUFFIXES:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/adm_local/unix/make_common_starter.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Tools/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu src/Tools/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
mostlyclean-libtool:
-rm -f *.lo
clean-libtool:
-rm -rf .libs _libs
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
$(RECURSIVE_CLEAN_TARGETS):
@fail= failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
rev=''; for subdir in $$list; do \
if test "$$subdir" = "."; then :; else \
rev="$$subdir $$rev"; \
fi; \
done; \
rev="$$rev ."; \
target=`echo $@ | sed s/-recursive//`; \
for subdir in $$rev; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
set x; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
empty_fix=.; \
else \
include_option=--include; \
empty_fix=; \
fi; \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| $(MKDIR_P) "$(distdir)/$$subdir" \
|| exit 1; \
fi; \
done
@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
$(am__relativize); \
new_distdir=$$reldir; \
dir1=$$subdir; dir2="$(top_distdir)"; \
$(am__relativize); \
new_top_distdir=$$reldir; \
echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
($(am__cd) $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$$new_top_distdir" \
distdir="$$new_distdir" \
am__remove_distdir=: \
am__skip_length_check=: \
am__skip_mode_fix=: \
distdir) \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-recursive
all-am: Makefile
installdirs: installdirs-recursive
installdirs-am:
install: install-recursive
install-exec: install-exec-recursive
install-data: install-data-recursive
uninstall: uninstall-recursive
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-recursive
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-recursive
clean-am: clean-generic clean-libtool mostlyclean-am
distclean: distclean-recursive
-rm -f Makefile
distclean-am: clean-am distclean-generic distclean-tags
dvi: dvi-recursive
dvi-am:
html: html-recursive
html-am:
info: info-recursive
info-am:
install-data-am:
install-dvi: install-dvi-recursive
install-dvi-am:
install-exec-am:
install-html: install-html-recursive
install-html-am:
install-info: install-info-recursive
install-info-am:
install-man:
install-pdf: install-pdf-recursive
install-pdf-am:
install-ps: install-ps-recursive
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-recursive
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-recursive
mostlyclean-am: mostlyclean-generic mostlyclean-libtool \
mostlyclean-local
pdf: pdf-recursive
pdf-am:
ps: ps-recursive
ps-am:
uninstall-am:
.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
install-am install-strip tags-recursive
.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
all all-am check check-am clean clean-generic clean-libtool \
ctags ctags-recursive distclean distclean-generic \
distclean-libtool distclean-tags distdir dvi dvi-am html \
html-am info info-am install install-am install-data \
install-data-am install-dvi install-dvi-am install-exec \
install-exec-am install-html install-html-am install-info \
install-info-am install-man install-pdf install-pdf-am \
install-ps install-ps-am install-strip installcheck \
installcheck-am installdirs installdirs-am maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic \
mostlyclean-libtool mostlyclean-local pdf pdf-am ps ps-am tags \
tags-recursive uninstall uninstall-am
# common rules
# meta object implementation files generation (moc)
%_moc.cxx: %.h
$(MOC) $< -o $@
# translation (*.qm) files generation (lrelease)
%.qm: %.ts
$(LRELEASE) $< -qm $@
# resource files generation (qrcc)
qrc_%.cxx: %.qrc
$(QRCC) $< -o $@ -name $(*F)
# qt forms files generation (uic)
ui_%.h: %.ui
$(UIC) -o $@ $<
# customize clean operation
mostlyclean-local:
rm -f @builddir@/*_moc.cxx
rm -f @builddir@/*.qm
rm -f @builddir@/ui_*.h
rm -f @builddir@/qrc_*.cxx
# tests
tests: unittest
unittest: $(UNIT_TEST_PROG)
@if test "x$(UNIT_TEST_PROG)" != "x"; then \
$(UNIT_TEST_PROG); \
fi;
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

19
src/Tools/MeshCut/AUTHORS Normal file
View File

@ -0,0 +1,19 @@
// Copyright (C) 2006-2010 EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
// License as published by the Free Software Foundation; either
// version 2.1 of the License.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
// Authors: Jean Claude LALEUF, Jean Francois HERY, XMESHLAB project, EDF R&D

View File

@ -0,0 +1,38 @@
# version 2.1 of the License.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
# File : Makefile.in
# Author : Patrick GOLDBRONN (CEA)
# Modified by : Alexander BORODIN (OCN) - autotools usage
# Module : SMESH
# $Header$
#
include $(top_srcdir)/adm_local/unix/make_common_starter.am
bin_PROGRAMS = MeshCut
MeshCut_SOURCES = \
MeshCut_Carre.cxx \
MeshCut_Cube.cxx \
MeshCut_Maillage.cxx \
MeshCut_Fonctions.cxx \
MeshCut_Utils.cxx \
MeshCut_Cas.cxx \
MeshCut_DC.cxx
MeshCut_CPPFLAGS = $(MED2_INCLUDES)
MeshCut_LDFLAGS = $(MED2_LIBS) $(HDF5_LIBS)

View File

@ -0,0 +1,924 @@
# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
# version 2.1 of the License.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
# Copyright (C) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
$(top_srcdir)/adm_local/unix/make_common_starter.am AUTHORS
bin_PROGRAMS = MeshCut$(EXEEXT)
subdir = src/Tools/MeshCut
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = \
$(top_srcdir)/adm_local/unix/config_files/check_Platform.m4 \
$(top_srcdir)/adm_local/unix/config_files/check_qwt.m4 \
$(top_srcdir)/adm_local/unix/config_files/libtool.m4 \
$(top_srcdir)/adm_local/unix/config_files/ltoptions.m4 \
$(top_srcdir)/adm_local/unix/config_files/ltsugar.m4 \
$(top_srcdir)/adm_local/unix/config_files/ltversion.m4 \
$(top_srcdir)/adm_local/unix/config_files/lt~obsolete.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(bindir)"
PROGRAMS = $(bin_PROGRAMS)
am_MeshCut_OBJECTS = MeshCut-MeshCut_Carre.$(OBJEXT) \
MeshCut-MeshCut_Cube.$(OBJEXT) \
MeshCut-MeshCut_Maillage.$(OBJEXT) \
MeshCut-MeshCut_Fonctions.$(OBJEXT) \
MeshCut-MeshCut_Utils.$(OBJEXT) MeshCut-MeshCut_Cas.$(OBJEXT) \
MeshCut-MeshCut_DC.$(OBJEXT)
MeshCut_OBJECTS = $(am_MeshCut_OBJECTS)
MeshCut_LDADD = $(LDADD)
MeshCut_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) \
$(MeshCut_LDFLAGS) $(LDFLAGS) -o $@
DEFAULT_INCLUDES = -I.@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/adm_local/unix/config_files/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
CXXLD = $(CXX)
CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
--mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
$(LDFLAGS) -o $@
SOURCES = $(MeshCut_SOURCES)
DIST_SOURCES = $(MeshCut_SOURCES)
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BOOST_CPPFLAGS = @BOOST_CPPFLAGS@
BOOST_LIBS = @BOOST_LIBS@
BOOST_LIBSUFFIX = @BOOST_LIBSUFFIX@
BOOST_LIB_REGEX = @BOOST_LIB_REGEX@
BOOST_LIB_SIGNALS = @BOOST_LIB_SIGNALS@
BOOST_LIB_SYSTEM = @BOOST_LIB_SYSTEM@
BOOST_LIB_THREAD = @BOOST_LIB_THREAD@
BOOST_PROGRAM_OPTIONS_LIB = @BOOST_PROGRAM_OPTIONS_LIB@
CASROOT = @CASROOT@
CAS_CPPFLAGS = @CAS_CPPFLAGS@
CAS_CXXFLAGS = @CAS_CXXFLAGS@
CAS_DATADIR = @CAS_DATADIR@
CAS_DATAEXCHANGE = @CAS_DATAEXCHANGE@
CAS_KERNEL = @CAS_KERNEL@
CAS_LDFLAGS = @CAS_LDFLAGS@
CAS_LDPATH = @CAS_LDPATH@
CAS_LIBDIR = @CAS_LIBDIR@
CAS_MATH = @CAS_MATH@
CAS_MODELER = @CAS_MODELER@
CAS_OCAF = @CAS_OCAF@
CAS_OCAFVIS = @CAS_OCAFVIS@
CAS_STDPLUGIN = @CAS_STDPLUGIN@
CAS_TKTopAlgo = @CAS_TKTopAlgo@
CAS_VIEWER = @CAS_VIEWER@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CORBA_CXXFLAGS = @CORBA_CXXFLAGS@
CORBA_INCLUDES = @CORBA_INCLUDES@
CORBA_LIBS = @CORBA_LIBS@
CORBA_ROOT = @CORBA_ROOT@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CXXTMPDPTHFLAGS = @CXXTMPDPTHFLAGS@
CXX_DEPEND_FLAG = @CXX_DEPEND_FLAG@
CYGPATH_W = @CYGPATH_W@
C_DEPEND_FLAG = @C_DEPEND_FLAG@
DEFINED_F77INT64 = @DEFINED_F77INT64@
DEFS = @DEFS@
DEPCC = @DEPCC@
DEPCXX = @DEPCXX@
DEPCXXFLAGS = @DEPCXXFLAGS@
DEPDIR = @DEPDIR@
DOT = @DOT@
DOXYGEN = @DOXYGEN@
DOXYGEN_PYTHON_EXTENSION = @DOXYGEN_PYTHON_EXTENSION@
DOXYGEN_SUPPORT_STL = @DOXYGEN_SUPPORT_STL@
DOXYGEN_WITH_PYTHON = @DOXYGEN_WITH_PYTHON@
DOXYGEN_WITH_STL = @DOXYGEN_WITH_STL@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
DVIPS = @DVIPS@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_MULTIPR = @ENABLE_MULTIPR@
EXEEXT = @EXEEXT@
F77 = @F77@
FC = @FC@
FCFLAGS = @FCFLAGS@
FCLIBS = @FCLIBS@
FFLAGS = @FFLAGS@
FGREP = @FGREP@
FLIBS = @FLIBS@
GEOM_CXXFLAGS = @GEOM_CXXFLAGS@
GEOM_LDFLAGS = @GEOM_LDFLAGS@
GEOM_ROOT_DIR = @GEOM_ROOT_DIR@
GLOBAL_INSTALL = @GLOBAL_INSTALL@
GREP = @GREP@
GUI_CXXFLAGS = @GUI_CXXFLAGS@
GUI_LDFLAGS = @GUI_LDFLAGS@
GUI_ROOT_DIR = @GUI_ROOT_DIR@
HAVE_SSTREAM = @HAVE_SSTREAM@
HDF5_INCLUDES = @HDF5_INCLUDES@
HDF5_LIBS = @HDF5_LIBS@
HDF5_MT_LIBS = @HDF5_MT_LIBS@
IDL = @IDL@
IDLCXXFLAGS = @IDLCXXFLAGS@
IDLPYFLAGS = @IDLPYFLAGS@
IDL_CLN_CXX = @IDL_CLN_CXX@
IDL_CLN_H = @IDL_CLN_H@
IDL_CLN_OBJ = @IDL_CLN_OBJ@
IDL_SRV_CXX = @IDL_SRV_CXX@
IDL_SRV_H = @IDL_SRV_H@
IDL_SRV_OBJ = @IDL_SRV_OBJ@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
KERNEL_CXXFLAGS = @KERNEL_CXXFLAGS@
KERNEL_LDFLAGS = @KERNEL_LDFLAGS@
KERNEL_ROOT_DIR = @KERNEL_ROOT_DIR@
KERNEL_SITE_DIR = @KERNEL_SITE_DIR@
LATEX = @LATEX@
LD = @LD@
LDEXPDYNFLAGS = @LDEXPDYNFLAGS@
LDFLAGS = @LDFLAGS@
LEX = @LEX@
LEXLIB = @LEXLIB@
LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIB_LOCATION_SUFFIX = @LIB_LOCATION_SUFFIX@
LIPO = @LIPO@
LN_S = @LN_S@
LRELEASE = @LRELEASE@
LTLIBOBJS = @LTLIBOBJS@
MACHINE = @MACHINE@
MAKEINFO = @MAKEINFO@
MDUMP = @MDUMP@
MED2_INCLUDES = @MED2_INCLUDES@
MED2_LIBS = @MED2_LIBS@
MED2_LIBS_C_ONLY = @MED2_LIBS_C_ONLY@
MED2_MT_LIBS = @MED2_MT_LIBS@
MED_CPPFLAGS = @MED_CPPFLAGS@
MED_CXXFLAGS = @MED_CXXFLAGS@
MED_LDFLAGS = @MED_LDFLAGS@
MED_ROOT_DIR = @MED_ROOT_DIR@
MKDIR_P = @MKDIR_P@
MOC = @MOC@
MODULE_NAME = @MODULE_NAME@
MPI_INCLUDES = @MPI_INCLUDES@
MPI_LIBS = @MPI_LIBS@
MULTIPR_CPPFLAGS = @MULTIPR_CPPFLAGS@
MULTIPR_LIBS = @MULTIPR_LIBS@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OGL_INCLUDES = @OGL_INCLUDES@
OGL_LIBS = @OGL_LIBS@
OMNIORB_CXXFLAGS = @OMNIORB_CXXFLAGS@
OMNIORB_IDL = @OMNIORB_IDL@
OMNIORB_IDLCXXFLAGS = @OMNIORB_IDLCXXFLAGS@
OMNIORB_IDLPYFLAGS = @OMNIORB_IDLPYFLAGS@
OMNIORB_IDL_CLN_CXX = @OMNIORB_IDL_CLN_CXX@
OMNIORB_IDL_CLN_H = @OMNIORB_IDL_CLN_H@
OMNIORB_IDL_CLN_OBJ = @OMNIORB_IDL_CLN_OBJ@
OMNIORB_IDL_SRV_CXX = @OMNIORB_IDL_SRV_CXX@
OMNIORB_IDL_SRV_H = @OMNIORB_IDL_SRV_H@
OMNIORB_IDL_SRV_OBJ = @OMNIORB_IDL_SRV_OBJ@
OMNIORB_IDL_TIE_CXX = @OMNIORB_IDL_TIE_CXX@
OMNIORB_IDL_TIE_H = @OMNIORB_IDL_TIE_H@
OMNIORB_INCLUDES = @OMNIORB_INCLUDES@
OMNIORB_LIBS = @OMNIORB_LIBS@
OMNIORB_ROOT = @OMNIORB_ROOT@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PDFLATEX = @PDFLATEX@
PLATFORM_INCLUDES = @PLATFORM_INCLUDES@
PTHREAD_CC = @PTHREAD_CC@
PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
PTHREAD_LIBS = @PTHREAD_LIBS@
PYTHON = @PYTHON@
PYTHONHOME = @PYTHONHOME@
PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
PYTHON_INCLUDES = @PYTHON_INCLUDES@
PYTHON_LIBS = @PYTHON_LIBS@
PYTHON_PLATFORM = @PYTHON_PLATFORM@
PYTHON_PREFIX = @PYTHON_PREFIX@
PYTHON_SITE = @PYTHON_SITE@
PYTHON_SITE_EXEC = @PYTHON_SITE_EXEC@
PYTHON_SITE_INSTALL = @PYTHON_SITE_INSTALL@
PYTHON_SITE_PACKAGE = @PYTHON_SITE_PACKAGE@
PYTHON_VERSION = @PYTHON_VERSION@
QRCC = @QRCC@
QTDIR = @QTDIR@
QT_ASSISTANT_INCLUDES = @QT_ASSISTANT_INCLUDES@
QT_ASSISTANT_LIBS = @QT_ASSISTANT_LIBS@
QT_CORE_LIBS = @QT_CORE_LIBS@
QT_GUI_LIBS = @QT_GUI_LIBS@
QT_INCLUDES = @QT_INCLUDES@
QT_LIBS = @QT_LIBS@
QT_LIB_DIR = @QT_LIB_DIR@
QT_MT_INCLUDES = @QT_MT_INCLUDES@
QT_MT_LIBS = @QT_MT_LIBS@
QT_OTHER_LIBS = @QT_OTHER_LIBS@
QT_ROOT = @QT_ROOT@
QT_VERSION = @QT_VERSION@
QT_VERSION_ID = @QT_VERSION_ID@
QWT_INCLUDES = @QWT_INCLUDES@
QWT_LIBS = @QWT_LIBS@
RANLIB = @RANLIB@
ROOT_BUILDDIR = @ROOT_BUILDDIR@
ROOT_SRCDIR = @ROOT_SRCDIR@
RST2HTML = @RST2HTML@
SED = @SED@
SETX = @SETX@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SPHINX = @SPHINX@
STDLIB = @STDLIB@
STRIP = @STRIP@
SWIG = @SWIG@
SWIG_FLAGS = @SWIG_FLAGS@
TEMP = @TEMP@
UIC = @UIC@
VERSION = @VERSION@
VTKPY_MODULES = @VTKPY_MODULES@
VTK_INCLUDES = @VTK_INCLUDES@
VTK_LIBS = @VTK_LIBS@
WITHMPI = @WITHMPI@
XMKMF = @XMKMF@
XVERSION = @XVERSION@
YACC = @YACC@
YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
ac_ct_F77 = @ac_ct_F77@
ac_ct_FC = @ac_ct_FC@
acx_pthread_config = @acx_pthread_config@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = $(prefix)/bin/salome
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
# Documentation directory
docdir = $(datadir)/doc/salome
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = $(prefix)/lib@LIB_LOCATION_SUFFIX@/salome
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
lt_ECHO = @lt_ECHO@
mandir = @mandir@
mkdir_p = @mkdir_p@
mpi2_ok = @mpi2_ok@
mpi_ok = @mpi_ok@
oldincludedir = @oldincludedir@
para_path = @para_path@
pdfdir = @pdfdir@
pkgpyexecdir = @pkgpyexecdir@
pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
pyexecdir = @pyexecdir@
pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target = @target@
target_alias = @target_alias@
target_cpu = @target_cpu@
target_os = @target_os@
target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
# ============================================================
# The following is to avoid PACKAGE_... env variable
# redefinition compilation warnings
# ============================================================
#
AM_CXXFLAGS = @KERNEL_CXXFLAGS@ -include SALOMEconfig.h
AM_CPPFLAGS = @KERNEL_CXXFLAGS@ -include SALOMEconfig.h
# ============================================================
# This file defines the common definitions used in several
# Makefile. This file must be included, if needed, by the file
# Makefile.am.
# ============================================================
# Standard directory for installation
#
salomeincludedir = $(includedir)/salome
salomescriptdir = $(bindir)
salomepythondir = $(pythondir)/salome
salomepyexecdir = $(pyexecdir)/salome
# Directory for installing idl files
salomeidldir = $(prefix)/idl/salome
# Directory for installing resource files
salomeresdir = $(prefix)/share/salome/resources/@MODULE_NAME@
# Directories for installing admin files
admlocaldir = $(prefix)/adm_local
admlocalunixdir = $(admlocaldir)/unix
admlocalm4dir = $(admlocaldir)/unix/config_files
# Shared modules installation directory
sharedpkgpythondir = $(salomepythondir)/shared_modules
# extra distributed files
EXTRA_DIST = $(MOC_FILES:%_moc.cxx=%.h) $(QRC_FILES:qrc_%.cxx=%.qrc) \
$(UIC_FILES:ui_%.h=%.ui) $(nodist_salomeres_DATA:%.qm=%.ts)
MeshCut_SOURCES = \
MeshCut_Carre.cxx \
MeshCut_Cube.cxx \
MeshCut_Maillage.cxx \
MeshCut_Fonctions.cxx \
MeshCut_Utils.cxx \
MeshCut_Cas.cxx \
MeshCut_DC.cxx
MeshCut_CPPFLAGS = $(MED2_INCLUDES)
MeshCut_LDFLAGS = $(MED2_LIBS) $(HDF5_LIBS)
all: all-am
.SUFFIXES:
.SUFFIXES: .cxx .lo .o .obj
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/adm_local/unix/make_common_starter.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Tools/MeshCut/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --gnu src/Tools/MeshCut/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
for p in $$list; do echo "$$p $$p"; done | \
sed 's/$(EXEEXT)$$//' | \
while read p p1; do if test -f $$p || test -f $$p1; \
then echo "$$p"; echo "$$p"; else :; fi; \
done | \
sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
sed 'N;N;N;s,\n, ,g' | \
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
{ d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
if ($$2 == $$4) files[d] = files[d] " " $$1; \
else { print "f", $$3 "/" $$4, $$1; } } \
END { for (d in files) print "f", d, files[d] }' | \
while read type dir files; do \
if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
test -z "$$files" || { \
echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
$(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
} \
; done
uninstall-binPROGRAMS:
@$(NORMAL_UNINSTALL)
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
files=`for p in $$list; do echo "$$p"; done | \
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
-e 's/$$/$(EXEEXT)/' `; \
test -n "$$list" || exit 0; \
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(bindir)" && rm -f $$files
clean-binPROGRAMS:
@list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \
echo " rm -f" $$list; \
rm -f $$list || exit $$?; \
test -n "$(EXEEXT)" || exit 0; \
list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
echo " rm -f" $$list; \
rm -f $$list
MeshCut$(EXEEXT): $(MeshCut_OBJECTS) $(MeshCut_DEPENDENCIES)
@rm -f MeshCut$(EXEEXT)
$(MeshCut_LINK) $(MeshCut_OBJECTS) $(MeshCut_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
distclean-compile:
-rm -f *.tab.c
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MeshCut-MeshCut_Carre.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MeshCut-MeshCut_Cas.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MeshCut-MeshCut_Cube.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MeshCut-MeshCut_DC.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MeshCut-MeshCut_Fonctions.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MeshCut-MeshCut_Maillage.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MeshCut-MeshCut_Utils.Po@am__quote@
.cxx.o:
@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
.cxx.obj:
@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
.cxx.lo:
@am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
MeshCut-MeshCut_Carre.o: MeshCut_Carre.cxx
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MeshCut-MeshCut_Carre.o -MD -MP -MF $(DEPDIR)/MeshCut-MeshCut_Carre.Tpo -c -o MeshCut-MeshCut_Carre.o `test -f 'MeshCut_Carre.cxx' || echo '$(srcdir)/'`MeshCut_Carre.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/MeshCut-MeshCut_Carre.Tpo $(DEPDIR)/MeshCut-MeshCut_Carre.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='MeshCut_Carre.cxx' object='MeshCut-MeshCut_Carre.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MeshCut-MeshCut_Carre.o `test -f 'MeshCut_Carre.cxx' || echo '$(srcdir)/'`MeshCut_Carre.cxx
MeshCut-MeshCut_Carre.obj: MeshCut_Carre.cxx
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MeshCut-MeshCut_Carre.obj -MD -MP -MF $(DEPDIR)/MeshCut-MeshCut_Carre.Tpo -c -o MeshCut-MeshCut_Carre.obj `if test -f 'MeshCut_Carre.cxx'; then $(CYGPATH_W) 'MeshCut_Carre.cxx'; else $(CYGPATH_W) '$(srcdir)/MeshCut_Carre.cxx'; fi`
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/MeshCut-MeshCut_Carre.Tpo $(DEPDIR)/MeshCut-MeshCut_Carre.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='MeshCut_Carre.cxx' object='MeshCut-MeshCut_Carre.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MeshCut-MeshCut_Carre.obj `if test -f 'MeshCut_Carre.cxx'; then $(CYGPATH_W) 'MeshCut_Carre.cxx'; else $(CYGPATH_W) '$(srcdir)/MeshCut_Carre.cxx'; fi`
MeshCut-MeshCut_Cube.o: MeshCut_Cube.cxx
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MeshCut-MeshCut_Cube.o -MD -MP -MF $(DEPDIR)/MeshCut-MeshCut_Cube.Tpo -c -o MeshCut-MeshCut_Cube.o `test -f 'MeshCut_Cube.cxx' || echo '$(srcdir)/'`MeshCut_Cube.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/MeshCut-MeshCut_Cube.Tpo $(DEPDIR)/MeshCut-MeshCut_Cube.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='MeshCut_Cube.cxx' object='MeshCut-MeshCut_Cube.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MeshCut-MeshCut_Cube.o `test -f 'MeshCut_Cube.cxx' || echo '$(srcdir)/'`MeshCut_Cube.cxx
MeshCut-MeshCut_Cube.obj: MeshCut_Cube.cxx
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MeshCut-MeshCut_Cube.obj -MD -MP -MF $(DEPDIR)/MeshCut-MeshCut_Cube.Tpo -c -o MeshCut-MeshCut_Cube.obj `if test -f 'MeshCut_Cube.cxx'; then $(CYGPATH_W) 'MeshCut_Cube.cxx'; else $(CYGPATH_W) '$(srcdir)/MeshCut_Cube.cxx'; fi`
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/MeshCut-MeshCut_Cube.Tpo $(DEPDIR)/MeshCut-MeshCut_Cube.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='MeshCut_Cube.cxx' object='MeshCut-MeshCut_Cube.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MeshCut-MeshCut_Cube.obj `if test -f 'MeshCut_Cube.cxx'; then $(CYGPATH_W) 'MeshCut_Cube.cxx'; else $(CYGPATH_W) '$(srcdir)/MeshCut_Cube.cxx'; fi`
MeshCut-MeshCut_Maillage.o: MeshCut_Maillage.cxx
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MeshCut-MeshCut_Maillage.o -MD -MP -MF $(DEPDIR)/MeshCut-MeshCut_Maillage.Tpo -c -o MeshCut-MeshCut_Maillage.o `test -f 'MeshCut_Maillage.cxx' || echo '$(srcdir)/'`MeshCut_Maillage.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/MeshCut-MeshCut_Maillage.Tpo $(DEPDIR)/MeshCut-MeshCut_Maillage.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='MeshCut_Maillage.cxx' object='MeshCut-MeshCut_Maillage.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MeshCut-MeshCut_Maillage.o `test -f 'MeshCut_Maillage.cxx' || echo '$(srcdir)/'`MeshCut_Maillage.cxx
MeshCut-MeshCut_Maillage.obj: MeshCut_Maillage.cxx
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MeshCut-MeshCut_Maillage.obj -MD -MP -MF $(DEPDIR)/MeshCut-MeshCut_Maillage.Tpo -c -o MeshCut-MeshCut_Maillage.obj `if test -f 'MeshCut_Maillage.cxx'; then $(CYGPATH_W) 'MeshCut_Maillage.cxx'; else $(CYGPATH_W) '$(srcdir)/MeshCut_Maillage.cxx'; fi`
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/MeshCut-MeshCut_Maillage.Tpo $(DEPDIR)/MeshCut-MeshCut_Maillage.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='MeshCut_Maillage.cxx' object='MeshCut-MeshCut_Maillage.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MeshCut-MeshCut_Maillage.obj `if test -f 'MeshCut_Maillage.cxx'; then $(CYGPATH_W) 'MeshCut_Maillage.cxx'; else $(CYGPATH_W) '$(srcdir)/MeshCut_Maillage.cxx'; fi`
MeshCut-MeshCut_Fonctions.o: MeshCut_Fonctions.cxx
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MeshCut-MeshCut_Fonctions.o -MD -MP -MF $(DEPDIR)/MeshCut-MeshCut_Fonctions.Tpo -c -o MeshCut-MeshCut_Fonctions.o `test -f 'MeshCut_Fonctions.cxx' || echo '$(srcdir)/'`MeshCut_Fonctions.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/MeshCut-MeshCut_Fonctions.Tpo $(DEPDIR)/MeshCut-MeshCut_Fonctions.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='MeshCut_Fonctions.cxx' object='MeshCut-MeshCut_Fonctions.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MeshCut-MeshCut_Fonctions.o `test -f 'MeshCut_Fonctions.cxx' || echo '$(srcdir)/'`MeshCut_Fonctions.cxx
MeshCut-MeshCut_Fonctions.obj: MeshCut_Fonctions.cxx
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MeshCut-MeshCut_Fonctions.obj -MD -MP -MF $(DEPDIR)/MeshCut-MeshCut_Fonctions.Tpo -c -o MeshCut-MeshCut_Fonctions.obj `if test -f 'MeshCut_Fonctions.cxx'; then $(CYGPATH_W) 'MeshCut_Fonctions.cxx'; else $(CYGPATH_W) '$(srcdir)/MeshCut_Fonctions.cxx'; fi`
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/MeshCut-MeshCut_Fonctions.Tpo $(DEPDIR)/MeshCut-MeshCut_Fonctions.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='MeshCut_Fonctions.cxx' object='MeshCut-MeshCut_Fonctions.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MeshCut-MeshCut_Fonctions.obj `if test -f 'MeshCut_Fonctions.cxx'; then $(CYGPATH_W) 'MeshCut_Fonctions.cxx'; else $(CYGPATH_W) '$(srcdir)/MeshCut_Fonctions.cxx'; fi`
MeshCut-MeshCut_Utils.o: MeshCut_Utils.cxx
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MeshCut-MeshCut_Utils.o -MD -MP -MF $(DEPDIR)/MeshCut-MeshCut_Utils.Tpo -c -o MeshCut-MeshCut_Utils.o `test -f 'MeshCut_Utils.cxx' || echo '$(srcdir)/'`MeshCut_Utils.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/MeshCut-MeshCut_Utils.Tpo $(DEPDIR)/MeshCut-MeshCut_Utils.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='MeshCut_Utils.cxx' object='MeshCut-MeshCut_Utils.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MeshCut-MeshCut_Utils.o `test -f 'MeshCut_Utils.cxx' || echo '$(srcdir)/'`MeshCut_Utils.cxx
MeshCut-MeshCut_Utils.obj: MeshCut_Utils.cxx
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MeshCut-MeshCut_Utils.obj -MD -MP -MF $(DEPDIR)/MeshCut-MeshCut_Utils.Tpo -c -o MeshCut-MeshCut_Utils.obj `if test -f 'MeshCut_Utils.cxx'; then $(CYGPATH_W) 'MeshCut_Utils.cxx'; else $(CYGPATH_W) '$(srcdir)/MeshCut_Utils.cxx'; fi`
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/MeshCut-MeshCut_Utils.Tpo $(DEPDIR)/MeshCut-MeshCut_Utils.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='MeshCut_Utils.cxx' object='MeshCut-MeshCut_Utils.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MeshCut-MeshCut_Utils.obj `if test -f 'MeshCut_Utils.cxx'; then $(CYGPATH_W) 'MeshCut_Utils.cxx'; else $(CYGPATH_W) '$(srcdir)/MeshCut_Utils.cxx'; fi`
MeshCut-MeshCut_Cas.o: MeshCut_Cas.cxx
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MeshCut-MeshCut_Cas.o -MD -MP -MF $(DEPDIR)/MeshCut-MeshCut_Cas.Tpo -c -o MeshCut-MeshCut_Cas.o `test -f 'MeshCut_Cas.cxx' || echo '$(srcdir)/'`MeshCut_Cas.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/MeshCut-MeshCut_Cas.Tpo $(DEPDIR)/MeshCut-MeshCut_Cas.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='MeshCut_Cas.cxx' object='MeshCut-MeshCut_Cas.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MeshCut-MeshCut_Cas.o `test -f 'MeshCut_Cas.cxx' || echo '$(srcdir)/'`MeshCut_Cas.cxx
MeshCut-MeshCut_Cas.obj: MeshCut_Cas.cxx
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MeshCut-MeshCut_Cas.obj -MD -MP -MF $(DEPDIR)/MeshCut-MeshCut_Cas.Tpo -c -o MeshCut-MeshCut_Cas.obj `if test -f 'MeshCut_Cas.cxx'; then $(CYGPATH_W) 'MeshCut_Cas.cxx'; else $(CYGPATH_W) '$(srcdir)/MeshCut_Cas.cxx'; fi`
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/MeshCut-MeshCut_Cas.Tpo $(DEPDIR)/MeshCut-MeshCut_Cas.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='MeshCut_Cas.cxx' object='MeshCut-MeshCut_Cas.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MeshCut-MeshCut_Cas.obj `if test -f 'MeshCut_Cas.cxx'; then $(CYGPATH_W) 'MeshCut_Cas.cxx'; else $(CYGPATH_W) '$(srcdir)/MeshCut_Cas.cxx'; fi`
MeshCut-MeshCut_DC.o: MeshCut_DC.cxx
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MeshCut-MeshCut_DC.o -MD -MP -MF $(DEPDIR)/MeshCut-MeshCut_DC.Tpo -c -o MeshCut-MeshCut_DC.o `test -f 'MeshCut_DC.cxx' || echo '$(srcdir)/'`MeshCut_DC.cxx
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/MeshCut-MeshCut_DC.Tpo $(DEPDIR)/MeshCut-MeshCut_DC.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='MeshCut_DC.cxx' object='MeshCut-MeshCut_DC.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MeshCut-MeshCut_DC.o `test -f 'MeshCut_DC.cxx' || echo '$(srcdir)/'`MeshCut_DC.cxx
MeshCut-MeshCut_DC.obj: MeshCut_DC.cxx
@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT MeshCut-MeshCut_DC.obj -MD -MP -MF $(DEPDIR)/MeshCut-MeshCut_DC.Tpo -c -o MeshCut-MeshCut_DC.obj `if test -f 'MeshCut_DC.cxx'; then $(CYGPATH_W) 'MeshCut_DC.cxx'; else $(CYGPATH_W) '$(srcdir)/MeshCut_DC.cxx'; fi`
@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/MeshCut-MeshCut_DC.Tpo $(DEPDIR)/MeshCut-MeshCut_DC.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='MeshCut_DC.cxx' object='MeshCut-MeshCut_DC.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(MeshCut_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o MeshCut-MeshCut_DC.obj `if test -f 'MeshCut_DC.cxx'; then $(CYGPATH_W) 'MeshCut_DC.cxx'; else $(CYGPATH_W) '$(srcdir)/MeshCut_DC.cxx'; fi`
mostlyclean-libtool:
-rm -f *.lo
clean-libtool:
-rm -rf .libs _libs
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
set x; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(PROGRAMS)
installdirs:
for dir in "$(DESTDIR)$(bindir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am
distclean: distclean-am
-rm -rf ./$(DEPDIR)
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-tags
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am:
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am: install-binPROGRAMS
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -rf ./$(DEPDIR)
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-compile mostlyclean-generic \
mostlyclean-libtool mostlyclean-local
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am: uninstall-binPROGRAMS
.MAKE: install-am install-strip
.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
clean-generic clean-libtool ctags distclean distclean-compile \
distclean-generic distclean-libtool distclean-tags distdir dvi \
dvi-am html html-am info info-am install install-am \
install-binPROGRAMS install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
mostlyclean-local pdf pdf-am ps ps-am tags uninstall \
uninstall-am uninstall-binPROGRAMS
# common rules
# meta object implementation files generation (moc)
%_moc.cxx: %.h
$(MOC) $< -o $@
# translation (*.qm) files generation (lrelease)
%.qm: %.ts
$(LRELEASE) $< -qm $@
# resource files generation (qrcc)
qrc_%.cxx: %.qrc
$(QRCC) $< -o $@ -name $(*F)
# qt forms files generation (uic)
ui_%.h: %.ui
$(UIC) -o $@ $<
# customize clean operation
mostlyclean-local:
rm -f @builddir@/*_moc.cxx
rm -f @builddir@/*.qm
rm -f @builddir@/ui_*.h
rm -f @builddir@/qrc_*.cxx
# tests
tests: unittest
unittest: $(UNIT_TEST_PROG)
@if test "x$(UNIT_TEST_PROG)" != "x"; then \
$(UNIT_TEST_PROG); \
fi;
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -0,0 +1,35 @@
#include "MeshCut_Carre.hxx"
#include <iostream>
using namespace MESHCUT;
using namespace std;
Carre::Carre(float _x0, float _x1, float _y0, float _y1)
{
x0 = _x0;
x1 = _x1;
y0 = _y0;
y1 = _y1;
}
bool Carre::disjoint(Carre* c2)
{
return (x0 > c2->x1 || x1 < c2->x0 || y0 > c2->y1 || y1 < c2->y0);
}
bool Carre::contientNoeud(int ngnoeud, Maillage *MAILLAGE)
{
float x = *(MAILLAGE->XX + ngnoeud - 1);
float y = *(MAILLAGE->YY + ngnoeud - 1);
return (x >= x0 && x <= x1 && y >= y0 && y <= y1);
}
void Carre::affichage()
{
cout << "x0=" << x0 << " ";
cout << "x1=" << x1 << " ";
cout << "y0=" << y0 << " ";
cout << "y1=" << y1 << " ";
}

View File

@ -0,0 +1,20 @@
#ifndef __MESHCUT_CARRE_HXX__
#define __MESHCUT_CARRE_HXX__
#include "MeshCut_Maillage.hxx"
namespace MESHCUT
{
class Carre
{
public:
float x0, x1, y0, y1;
public:
Carre(float _x0, float _x1, float _y0, float _y1);
bool disjoint(Carre* c2);
bool contientNoeud(int ngnoeud, Maillage *MAILLAGE);
void affichage();
};
}
#endif

View File

@ -0,0 +1,926 @@
#include "MeshCut_Cas.hxx"
#include "MeshCut_Globals.hxx"
using namespace MESHCUT;
using namespace std;
/*!
* Le cas 1 traduit le fait que deux des sommets du T4 initial sont dans le plan de coupe.
* Le point d'intersection franc trouvé est sur l'arête opposée à ces deux points du T4.
* Le T4 initial produit deux nouveaux T4.
*/
void MESHCUT::cas1(int VN[6], int it4)
{
// cout << "Cas 1 - it4=" << it4 << ", VN = " << VN[0] << " " << VN[1] << " " << VN[2] << " " << VN[3] << " " << VN[4]
// << " " << VN[5] << " " << endl;
// Numéros des noeuds du TETRA4
int ng0 = MAILLAGE1->CNX[TETRA4][4 * it4 + 0];
int ng1 = MAILLAGE1->CNX[TETRA4][4 * it4 + 1];
int ng2 = MAILLAGE1->CNX[TETRA4][4 * it4 + 2];
int ng3 = MAILLAGE1->CNX[TETRA4][4 * it4 + 3];
int i1, i2;
if (VN[0] != -1)
{
// Le sommet de T4new1 servant à la détermination du groupe est le noeud 1 du T4 d'origine
// cout << "cas 1/0" << endl;
newCNX[TETRA4].push_back(VN[0]);
newCNX[TETRA4].push_back(ng1);
newCNX[TETRA4].push_back(ng2);
newCNX[TETRA4].push_back(ng3);
cptNouvellesMailles[TETRA4]++;
i1 = cptNouvellesMailles[TETRA4] - 1;
newCNX[TETRA4].push_back(ng0);
newCNX[TETRA4].push_back(VN[0]);
newCNX[TETRA4].push_back(ng2);
newCNX[TETRA4].push_back(ng3);
cptNouvellesMailles[TETRA4]++;
i2 = cptNouvellesMailles[TETRA4] - 1;
if (POSN[ng1 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i1);
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i2);
}
else
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i2);
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i1);
}
}
else if (VN[1] != -1)
{
// Le sommet de T4new1 servant à la détermination du groupe est le noeud 0 du T4 d'origine
// cout << "cas 1/1" << endl;
newCNX[TETRA4].push_back(ng0);
newCNX[TETRA4].push_back(ng1);
newCNX[TETRA4].push_back(VN[1]);
newCNX[TETRA4].push_back(ng3);
cptNouvellesMailles[TETRA4]++;
i1 = cptNouvellesMailles[TETRA4] - 1;
newCNX[TETRA4].push_back(ng1);
newCNX[TETRA4].push_back(ng2);
newCNX[TETRA4].push_back(VN[1]);
newCNX[TETRA4].push_back(ng3);
cptNouvellesMailles[TETRA4]++;
i2 = cptNouvellesMailles[TETRA4] - 1;
if (POSN[ng0 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i1);
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i2);
}
else
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i2);
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i1);
}
}
else if (VN[2] != -1)
{
// Le sommet de T4new1 servant à la détermination du groupe est le noeud 0 du T4 d'origine
// cout << "cas 1/2" << endl;
newCNX[TETRA4].push_back(ng0);
newCNX[TETRA4].push_back(ng1);
newCNX[TETRA4].push_back(ng2);
newCNX[TETRA4].push_back(VN[2]);
cptNouvellesMailles[TETRA4]++;
i1 = cptNouvellesMailles[TETRA4] - 1;
newCNX[TETRA4].push_back(ng1);
newCNX[TETRA4].push_back(ng2);
newCNX[TETRA4].push_back(VN[2]);
newCNX[TETRA4].push_back(ng3);
cptNouvellesMailles[TETRA4]++;
i2 = cptNouvellesMailles[TETRA4] - 1;
if (POSN[ng0 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i1);
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i2);
}
else
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i2);
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i1);
}
}
else if (VN[3] != -1)
{
// Le sommet de T4new1 servant à la détermination du groupe est le noeud 1 du T4 d'origine
// cout << "cas 1/3" << endl;
newCNX[TETRA4].push_back(ng0);
newCNX[TETRA4].push_back(ng1);
newCNX[TETRA4].push_back(VN[3]);
newCNX[TETRA4].push_back(ng3);
cptNouvellesMailles[TETRA4]++;
i1 = cptNouvellesMailles[TETRA4] - 1;
newCNX[TETRA4].push_back(ng0);
newCNX[TETRA4].push_back(VN[3]);
newCNX[TETRA4].push_back(ng2);
newCNX[TETRA4].push_back(ng3);
cptNouvellesMailles[TETRA4]++;
i2 = cptNouvellesMailles[TETRA4] - 1;
if (POSN[ng1 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i1);
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i2);
}
else
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i2);
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i1);
}
}
else if (VN[4] != -1)
{
// Le sommet de T4new1 servant à la détermination du groupe est le noeud 1 du T4 d'origine
// cout << "cas 1/4" << endl;
newCNX[TETRA4].push_back(ng0);
newCNX[TETRA4].push_back(ng1);
newCNX[TETRA4].push_back(ng2);
newCNX[TETRA4].push_back(VN[4]);
cptNouvellesMailles[TETRA4]++;
i1 = cptNouvellesMailles[TETRA4] - 1;
newCNX[TETRA4].push_back(ng0);
newCNX[TETRA4].push_back(VN[4]);
newCNX[TETRA4].push_back(ng2);
newCNX[TETRA4].push_back(ng3);
cptNouvellesMailles[TETRA4]++;
i2 = cptNouvellesMailles[TETRA4] - 1;
if (POSN[ng1 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i1);
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i2);
}
else
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i2);
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i1);
}
}
else if (VN[5] != -1)
{
// Le sommet de T4new1 servant à la détermination du groupe est le noeud 3 du T4 d'origine
// cout << "cas 1/5" << endl;
newCNX[TETRA4].push_back(ng0);
newCNX[TETRA4].push_back(ng1);
newCNX[TETRA4].push_back(VN[5]);
newCNX[TETRA4].push_back(ng3);
cptNouvellesMailles[TETRA4]++;
i1 = cptNouvellesMailles[TETRA4] - 1;
newCNX[TETRA4].push_back(ng0);
newCNX[TETRA4].push_back(ng1);
newCNX[TETRA4].push_back(ng2);
newCNX[TETRA4].push_back(VN[5]);
cptNouvellesMailles[TETRA4]++;
i2 = cptNouvellesMailles[TETRA4] - 1;
if (POSN[ng3 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i1);
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i2);
}
else
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i2);
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i1);
}
}
else
ERREUR(" Configuration intersections non reconnue (cas cptPI=1) ");
//int nl1 = MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i1;
//int nl2 = MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + i2;
// cout << "La maille TETRA4 " << it4 << " produit les mailles TETRA4-" << nl1 << " et TETRA4-" << nl2 << endl;
}
/*! Deux points d'intersection
* Le cas 2 traduit le fait qu'un des sommets du T4 est dans le plan de coupe.
* Ce sommet est celui des quatre qui n'appartient à aucune des deux arêtes sur lesquelles
* un point d'intersection non -1 a é calculé.
*
* Le T4 initial produit un nouveau T4 et un élément PYRAM5.
*
*/
void MESHCUT::cas2(int VN[6], int it4)
{
// cout << "Cas 2 - it4=" << it4 << ", VN = " << VN[0] << " " << VN[1] << " " << VN[2] << " " << VN[3] << " " << VN[4]
// << " " << VN[5] << " " << endl;
// Numéros des noeuds du TETRA4
int ng0 = MAILLAGE1->CNX[TETRA4][4 * it4 + 0];
int ng1 = MAILLAGE1->CNX[TETRA4][4 * it4 + 1];
int ng2 = MAILLAGE1->CNX[TETRA4][4 * it4 + 2];
int ng3 = MAILLAGE1->CNX[TETRA4][4 * it4 + 3];
if (VN[0] != -1 && VN[1] != -1)
{
// Le sommet du nouveau T4 est le noeud 0 du T4 d'origine
// cout << "cas 2.01" << endl;
newCNX[TETRA4].push_back(VN[0]);
newCNX[TETRA4].push_back(ng3);
newCNX[TETRA4].push_back(VN[1]);
newCNX[TETRA4].push_back(ng0);
cptNouvellesMailles[TETRA4]++;
newCNX[PYRAM5].push_back(VN[0]);
newCNX[PYRAM5].push_back(ng1);
newCNX[PYRAM5].push_back(ng2);
newCNX[PYRAM5].push_back(VN[1]);
newCNX[PYRAM5].push_back(ng3);
cptNouvellesMailles[PYRAM5]++;
if (POSN[ng0 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMmoins[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
else
{
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMplus[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
}
else if (VN[0] != -1 && VN[2] != -1)
{
// Le sommet du nouveau T4 est le noeud 0 du T4 d'origine
// cout << "cas 2.02" << endl;
newCNX[TETRA4].push_back(VN[0]);
newCNX[TETRA4].push_back(VN[2]);
newCNX[TETRA4].push_back(ng2);
newCNX[TETRA4].push_back(ng0);
cptNouvellesMailles[TETRA4]++;
newCNX[PYRAM5].push_back(VN[0]);
newCNX[PYRAM5].push_back(VN[2]);
newCNX[PYRAM5].push_back(ng3);
newCNX[PYRAM5].push_back(ng1);
newCNX[PYRAM5].push_back(ng2);
cptNouvellesMailles[PYRAM5]++;
if (POSN[ng0 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMmoins[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
else
{
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMplus[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
}
else if (VN[0] != -1 && VN[3] != -1)
{
// Le sommet du nouveau T4 est le noeud 1 du T4 d'origine
// cout << "cas 2.03" << endl;
newCNX[TETRA4].push_back(VN[0]);
newCNX[TETRA4].push_back(VN[3]);
newCNX[TETRA4].push_back(ng3);
newCNX[TETRA4].push_back(ng1);
cptNouvellesMailles[TETRA4]++;
newCNX[PYRAM5].push_back(VN[0]);
newCNX[PYRAM5].push_back(VN[3]);
newCNX[PYRAM5].push_back(ng2);
newCNX[PYRAM5].push_back(ng0);
newCNX[PYRAM5].push_back(ng3);
cptNouvellesMailles[PYRAM5]++;
if (POSN[ng1 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMmoins[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
else
{
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMplus[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
}
else if (VN[0] != -1 && VN[4] != -1)
{
// Le sommet du nouveau T4 est le noeud 1 du T4 d'origine
// cout << "cas 2.04" << endl;
newCNX[TETRA4].push_back(VN[0]);
newCNX[TETRA4].push_back(ng2);
newCNX[TETRA4].push_back(VN[4]);
newCNX[TETRA4].push_back(ng1);
cptNouvellesMailles[TETRA4]++;
newCNX[PYRAM5].push_back(ng0);
newCNX[PYRAM5].push_back(ng3);
newCNX[PYRAM5].push_back(VN[4]);
newCNX[PYRAM5].push_back(VN[0]);
newCNX[PYRAM5].push_back(ng2);
cptNouvellesMailles[PYRAM5]++;
if (POSN[ng1 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMmoins[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
else
{
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMplus[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
}
else if (VN[0] != -1 && VN[5] != -1)
ERREUR("Cas 2/05 interdit");
else if (VN[1] != -1 && VN[2] != -1)
{
// Le sommet du nouveau T4 est le noeud 0 du T4 d'origine
// cout << "cas 2.12" << endl;
newCNX[TETRA4].push_back(ng1);
newCNX[TETRA4].push_back(VN[2]);
newCNX[TETRA4].push_back(VN[1]);
newCNX[TETRA4].push_back(ng0);
cptNouvellesMailles[TETRA4]++;
newCNX[PYRAM5].push_back(ng2);
newCNX[PYRAM5].push_back(ng3);
newCNX[PYRAM5].push_back(VN[2]);
newCNX[PYRAM5].push_back(VN[1]);
newCNX[PYRAM5].push_back(ng1);
cptNouvellesMailles[PYRAM5]++;
if (POSN[ng0 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMmoins[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
else
{
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMplus[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
}
else if (VN[1] != -1 && VN[3] != -1)
{
// Le sommet du nouveau T4 est le noeud 2 du T4 d'origine
// cout << "cas 2.13" << endl;
newCNX[TETRA4].push_back(VN[1]);
newCNX[TETRA4].push_back(ng3);
newCNX[TETRA4].push_back(VN[3]);
newCNX[TETRA4].push_back(ng2);
cptNouvellesMailles[TETRA4]++;
newCNX[PYRAM5].push_back(ng0);
newCNX[PYRAM5].push_back(ng1);
newCNX[PYRAM5].push_back(VN[3]);
newCNX[PYRAM5].push_back(VN[1]);
newCNX[PYRAM5].push_back(ng3);
cptNouvellesMailles[PYRAM5]++;
if (POSN[ng2 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMmoins[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
else
{
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMplus[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
}
else if (VN[1] != -1 && VN[4] != -1)
ERREUR("Cas 2/14 exclu");
else if (VN[1] != -1 && VN[5] != -1)
{
// Le sommet du nouveau T4 est le noeud 2 du T4 d'origine
// cout << "cas 2.15" << endl;
newCNX[TETRA4].push_back(ng1);
newCNX[TETRA4].push_back(ng2);
newCNX[TETRA4].push_back(VN[1]);
newCNX[TETRA4].push_back(VN[5]);
cptNouvellesMailles[TETRA4]++;
newCNX[PYRAM5].push_back(VN[1]);
newCNX[PYRAM5].push_back(VN[5]);
newCNX[PYRAM5].push_back(ng3);
newCNX[PYRAM5].push_back(ng0);
newCNX[PYRAM5].push_back(ng1);
cptNouvellesMailles[PYRAM5]++;
if (POSN[ng2 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMmoins[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
else
{
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMplus[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
}
else if (VN[2] != -1 && VN[3] != -1)
ERREUR("Cas 2/23 exclu");
else if (VN[2] != -1 && VN[4] != -1)
{
// Le sommet du nouveau T4 est le noeud 3 du T4 d'origine
// cout << "cas 2.24" << endl;
newCNX[TETRA4].push_back(VN[2]);
newCNX[TETRA4].push_back(VN[4]);
newCNX[TETRA4].push_back(ng2);
newCNX[TETRA4].push_back(ng3);
cptNouvellesMailles[TETRA4]++;
newCNX[PYRAM5].push_back(ng0);
newCNX[PYRAM5].push_back(VN[2]);
newCNX[PYRAM5].push_back(VN[4]);
newCNX[PYRAM5].push_back(ng1);
newCNX[PYRAM5].push_back(ng2);
cptNouvellesMailles[PYRAM5]++;
if (POSN[ng3 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMmoins[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
else
{
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMplus[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
}
else if (VN[2] != -1 && VN[5] != -1)
{
// Le sommet du nouveau T4 est le noeud 3 du T4 d'origine
// cout << "cas 2.25" << endl;
newCNX[TETRA4].push_back(ng1);
newCNX[TETRA4].push_back(VN[5]);
newCNX[TETRA4].push_back(VN[2]);
newCNX[TETRA4].push_back(ng3);
cptNouvellesMailles[TETRA4]++;
newCNX[PYRAM5].push_back(ng0);
newCNX[PYRAM5].push_back(ng2);
newCNX[PYRAM5].push_back(VN[5]);
newCNX[PYRAM5].push_back(VN[2]);
newCNX[PYRAM5].push_back(ng1);
cptNouvellesMailles[PYRAM5]++;
if (POSN[ng3 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMmoins[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
else
{
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMplus[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
}
else if (VN[3] != -1 && VN[4] != -1)
{
// Le sommet du nouveau T4 est le noeud 1 du T4 d'origine
// cout << "cas 2.34" << endl;
newCNX[TETRA4].push_back(ng0);
newCNX[TETRA4].push_back(VN[3]);
newCNX[TETRA4].push_back(VN[4]);
newCNX[TETRA4].push_back(ng1);
cptNouvellesMailles[TETRA4]++;
newCNX[PYRAM5].push_back(VN[3]);
newCNX[PYRAM5].push_back(VN[4]);
newCNX[PYRAM5].push_back(ng3);
newCNX[PYRAM5].push_back(ng2);
newCNX[PYRAM5].push_back(ng0);
cptNouvellesMailles[PYRAM5]++;
if (POSN[ng1 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMmoins[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
else
{
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMplus[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
}
else if (VN[3] != -1 && VN[5] != -1)
{
// Le sommet du nouveau T4 est le noeud 2 du T4 d'origine
// cout << "cas 2.35" << endl;
newCNX[TETRA4].push_back(VN[3]);
newCNX[TETRA4].push_back(VN[5]);
newCNX[TETRA4].push_back(ng2);
newCNX[TETRA4].push_back(ng0);
cptNouvellesMailles[TETRA4]++;
newCNX[PYRAM5].push_back(VN[3]);
newCNX[PYRAM5].push_back(ng1);
newCNX[PYRAM5].push_back(ng3);
newCNX[PYRAM5].push_back(VN[5]);
newCNX[PYRAM5].push_back(ng0);
cptNouvellesMailles[PYRAM5]++;
if (POSN[ng2 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMmoins[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
else
{
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMplus[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
}
else if (VN[4] != -1 && VN[5] != -1)
{
// Le sommet du nouveau T4 est le noeud 3 du T4 d'origine
// cout << "cas 2.35" << endl;
newCNX[TETRA4].push_back(ng0);
newCNX[TETRA4].push_back(VN[4]);
newCNX[TETRA4].push_back(VN[5]);
newCNX[TETRA4].push_back(ng3);
cptNouvellesMailles[TETRA4]++;
newCNX[PYRAM5].push_back(ng1);
newCNX[PYRAM5].push_back(VN[4]);
newCNX[PYRAM5].push_back(VN[5]);
newCNX[PYRAM5].push_back(ng2);
newCNX[PYRAM5].push_back(ng0);
cptNouvellesMailles[PYRAM5]++;
if (POSN[ng3 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMmoins[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
else
{
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMplus[PYRAM5].push_back(MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1);
}
}
else
ERREUR(" Configuration intersections non reconnue (cas cptPI=2) ");
// int ngT4 = MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1;
// int ngP5 = MAILLAGE1->EFFECTIFS_TYPES[PYRAM5] + cptNouvellesMailles[PYRAM5] - 1;
// cout << "La maille TETRA4 " << it4 << " produit les mailles TETRA4-" << ngT4 << " et PYRAM5-" << ngP5 << endl;
}
/*! Trois points d'intersection
* ATTENTION: pour les PENTA6 on adopte la convention d'orientation SALOME :
*
* N1 N2 N3 N4 N5 N6
*
* N1 N2 N3 sont les sommets du haut et N4 N5 N6 les sommets du bas
* (selon l'orientation donnée par le sens des triangles)
*/
void MESHCUT::cas3(int VN[6], int it4)
{
// cout << "Cas 3 - it4="<<it4<<", VN = " << VN[0] << " " << VN[1] << " " << VN[2] << " " << VN[3] << " " << VN[4] << " " << VN[5] << " " << endl;
// Numéros des noeuds du TETRA4
int ng0 = MAILLAGE1->CNX[TETRA4][4 * it4 + 0];
int ng1 = MAILLAGE1->CNX[TETRA4][4 * it4 + 1];
int ng2 = MAILLAGE1->CNX[TETRA4][4 * it4 + 2];
int ng3 = MAILLAGE1->CNX[TETRA4][4 * it4 + 3];
if (VN[0] != -1 && VN[1] != -1 && VN[2] != -1)
{
// Le sommet du nouveau T4 est le noeud 0 du T4 d'origine
newCNX[TETRA4].push_back(ng0);
newCNX[TETRA4].push_back(VN[0]);
newCNX[TETRA4].push_back(VN[1]);
newCNX[TETRA4].push_back(VN[2]);
cptNouvellesMailles[TETRA4]++;
newCNX[PENTA6].push_back(ng1);
newCNX[PENTA6].push_back(ng3);
newCNX[PENTA6].push_back(ng2);
newCNX[PENTA6].push_back(VN[0]);
newCNX[PENTA6].push_back(VN[2]);
newCNX[PENTA6].push_back(VN[1]);
cptNouvellesMailles[PENTA6]++;
if (POSN[ng0 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMmoins[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + cptNouvellesMailles[PENTA6] - 1);
}
else
{
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMplus[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + cptNouvellesMailles[PENTA6] - 1);
}
}
else if (VN[0] != -1 && VN[3] != -1 && VN[4] != -1)
{
// Le sommet du nouveau T4 est le noeud 1 du T4 d'origine
//cout << "cas 3.2 (noeud sommet 1)" << endl;
newCNX[TETRA4].push_back(VN[0]);
newCNX[TETRA4].push_back(ng1);
newCNX[TETRA4].push_back(VN[3]);
newCNX[TETRA4].push_back(VN[4]);
cptNouvellesMailles[TETRA4]++;
newCNX[PENTA6].push_back(ng0);
newCNX[PENTA6].push_back(ng2);
newCNX[PENTA6].push_back(ng3);
newCNX[PENTA6].push_back(VN[0]);
newCNX[PENTA6].push_back(VN[3]);
newCNX[PENTA6].push_back(VN[4]);
cptNouvellesMailles[PENTA6]++;
if (POSN[ng1 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMmoins[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + cptNouvellesMailles[PENTA6] - 1);
}
else
{
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMplus[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + cptNouvellesMailles[PENTA6] - 1);
}
}
else if (VN[1] != -1 && VN[3] != -1 && VN[5] != -1)
{
// Le sommet du nouveau T4 est le noeud 2 du T4 d'origine
//cout << "cas 3.3 (noeud sommet 2)" << endl;
newCNX[TETRA4].push_back(VN[1]);
newCNX[TETRA4].push_back(VN[3]);
newCNX[TETRA4].push_back(ng2);
newCNX[TETRA4].push_back(VN[5]);
cptNouvellesMailles[TETRA4]++;
newCNX[PENTA6].push_back(ng0);
newCNX[PENTA6].push_back(ng3);
newCNX[PENTA6].push_back(ng1);
newCNX[PENTA6].push_back(VN[1]);
newCNX[PENTA6].push_back(VN[5]);
newCNX[PENTA6].push_back(VN[3]);
cptNouvellesMailles[PENTA6]++;
if (POSN[ng2 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMmoins[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + cptNouvellesMailles[PENTA6] - 1);
}
else
{
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMplus[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + cptNouvellesMailles[PENTA6] - 1);
}
}
else if (VN[2] != -1 && VN[4] != -1 && VN[5] != -1)
{
// Le sommet du nouveau T4 est le noeud 3 du T4 d'origine
newCNX[TETRA4].push_back(VN[2]);
newCNX[TETRA4].push_back(VN[4]);
newCNX[TETRA4].push_back(VN[5]);
newCNX[TETRA4].push_back(ng3);
cptNouvellesMailles[TETRA4]++;
newCNX[PENTA6].push_back(ng0);
newCNX[PENTA6].push_back(ng1);
newCNX[PENTA6].push_back(ng2);
newCNX[PENTA6].push_back(VN[2]);
newCNX[PENTA6].push_back(VN[4]);
newCNX[PENTA6].push_back(VN[5]);
cptNouvellesMailles[PENTA6]++;
if (POSN[ng3 - 1] == 1)
{
GMplus[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMmoins[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + cptNouvellesMailles[PENTA6] - 1);
}
else
{
GMmoins[TETRA4].push_back(MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1);
GMplus[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + cptNouvellesMailles[PENTA6] - 1);
}
}
else
{
// cout << "Cas 3 - it4=" << it4 << ", VN = " << VN[0] << " " << VN[1] << " " << VN[2] << " " << VN[3] << " "
// << VN[4] << " " << VN[5] << " " << endl;
//
// int n0 = *(MAILLAGE1->CNX[TETRA4] + it4 * 4 + 0);
// float x0 = MAILLAGE1->XX[n0 - 1];
// float y0 = MAILLAGE1->YY[n0 - 1];
// float z0 = MAILLAGE1->ZZ[n0 - 1];
//
// int n1 = *(MAILLAGE1->CNX[TETRA4] + it4 * 4 + 1);
// float x1 = MAILLAGE1->XX[n1 - 1];
// float y1 = MAILLAGE1->YY[n1 - 1];
// float z1 = MAILLAGE1->ZZ[n1 - 1];
//
// int n2 = *(MAILLAGE1->CNX[TETRA4] + it4 * 4 + 2);
// float x2 = MAILLAGE1->XX[n2 - 1];
// float y2 = MAILLAGE1->YY[n2 - 1];
// float z2 = MAILLAGE1->ZZ[n2 - 1];
//
// int n3 = *(MAILLAGE1->CNX[TETRA4] + it4 * 4 + 3);
// float x3 = MAILLAGE1->XX[n3 - 1];
// float y3 = MAILLAGE1->YY[n3 - 1];
// float z3 = MAILLAGE1->ZZ[n3 - 1];
//
// cout << x0 << " " << y0 << " " << z0 << " " << endl;
// cout << x1 << " " << y1 << " " << z1 << " " << endl;
// cout << x2 << " " << y2 << " " << z2 << " " << endl;
// cout << x3 << " " << y3 << " " << z3 << " " << endl;
ERREUR(" Configuration intersections non reconnue (cas cptPI=3) ");
}
// int ngT4 = MAILLAGE1->EFFECTIFS_TYPES[TETRA4] + cptNouvellesMailles[TETRA4] - 1;
// int ngP6 = MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + cptNouvellesMailles[PENTA6] - 1;
// cout << "La maille TETRA4 " << it4 << " produit les mailles TETRA4-" << ngT4 << " et PENTA6-" << ngP6 << endl;
}
/*! Quatre points d'intersection
*
* ATTENTION: pour les PENTA6 on adopte la convention d'orientation SALOME
*
* N1 N2 N3 N4 N5 N6
*
* N1 N2 N3 sont les sommets du haut et N4 N5 N6 les sommets du bas
* (selon l'orientation donnée par le sens des triangles)
*/
void MESHCUT::cas4(int VN[6], int it4)
{
// cout << "Cas 4 - it4=" << it4 << ", VN = " << VN[0] << " " << VN[1] << " " << VN[2] << " " << VN[3] << " " << VN[4]
// << " " << VN[5] << " " << endl;
// Numéros des noeuds du TETRA4
int ng0 = MAILLAGE1->CNX[TETRA4][4 * it4 + 0];
int ng1 = MAILLAGE1->CNX[TETRA4][4 * it4 + 1];
int ng2 = MAILLAGE1->CNX[TETRA4][4 * it4 + 2];
int ng3 = MAILLAGE1->CNX[TETRA4][4 * it4 + 3];
int i1, i2; // Numéros locaux dans le type des mailles créées
if (VN[0] == -1 && VN[5] == -1)
{
// Les deux arêtes opposées sont [0,1] et [2,3]
newCNX[PENTA6].push_back(ng0);
newCNX[PENTA6].push_back(VN[1]);
newCNX[PENTA6].push_back(VN[2]);
newCNX[PENTA6].push_back(ng1);
newCNX[PENTA6].push_back(VN[3]);
newCNX[PENTA6].push_back(VN[4]);
cptNouvellesMailles[PENTA6]++;
i1 = cptNouvellesMailles[PENTA6] - 1;
newCNX[PENTA6].push_back(ng3);
newCNX[PENTA6].push_back(VN[4]);
newCNX[PENTA6].push_back(VN[2]);
newCNX[PENTA6].push_back(ng2);
newCNX[PENTA6].push_back(VN[3]);
newCNX[PENTA6].push_back(VN[1]);
cptNouvellesMailles[PENTA6]++;
i2 = cptNouvellesMailles[PENTA6] - 1;
if (POSN[ng0 - 1] == 1)
{
GMplus[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + i1);
GMmoins[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + i2);
}
else
{
GMplus[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + i2);
GMmoins[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + i1);
}
} // if ( VN[0]==-1 && VN[5]==-1 )
else if (VN[1] == -1 && VN[4] == -1)
{
// Les deux arêtes opposées sont [0,2] et [1,3]
newCNX[PENTA6].push_back(ng2);
newCNX[PENTA6].push_back(VN[3]);
newCNX[PENTA6].push_back(VN[5]);
newCNX[PENTA6].push_back(ng0);
newCNX[PENTA6].push_back(VN[0]);
newCNX[PENTA6].push_back(VN[2]);
cptNouvellesMailles[PENTA6]++;
i1 = cptNouvellesMailles[PENTA6] - 1;
newCNX[PENTA6].push_back(ng1);
newCNX[PENTA6].push_back(VN[3]);
newCNX[PENTA6].push_back(VN[0]);
newCNX[PENTA6].push_back(ng3);
newCNX[PENTA6].push_back(VN[5]);
newCNX[PENTA6].push_back(VN[2]);
cptNouvellesMailles[PENTA6]++;
i2 = cptNouvellesMailles[PENTA6] - 1;
if (POSN[ng0 - 1] == 1)
{
GMplus[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + i1);
GMmoins[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + i2);
}
else
{
GMplus[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + i2);
GMmoins[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + i1);
}
}
else if (VN[2] == -1 && VN[3] == -1)
{
// Les deux arêtes opposées sont [0,3] et [1,2]
newCNX[PENTA6].push_back(ng0);
newCNX[PENTA6].push_back(VN[0]);
newCNX[PENTA6].push_back(VN[1]);
newCNX[PENTA6].push_back(ng3);
newCNX[PENTA6].push_back(VN[4]);
newCNX[PENTA6].push_back(VN[5]);
cptNouvellesMailles[PENTA6]++;
i1 = cptNouvellesMailles[PENTA6] - 1;
newCNX[PENTA6].push_back(ng2);
newCNX[PENTA6].push_back(VN[5]);
newCNX[PENTA6].push_back(VN[1]);
newCNX[PENTA6].push_back(ng1);
newCNX[PENTA6].push_back(VN[4]);
newCNX[PENTA6].push_back(VN[0]);
cptNouvellesMailles[PENTA6]++;
i2 = cptNouvellesMailles[PENTA6] - 1;
if (POSN[ng0 - 1] == 1)
{
GMplus[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + i1);
GMmoins[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + i2);
}
else
{
GMplus[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + i2);
GMmoins[PENTA6].push_back(MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + i1);
}
}
else
ERREUR(" Configuration intersections non reconnue (cas cptPI=4) ");
// int nl1 = MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + i1;
// int nl2 = MAILLAGE1->EFFECTIFS_TYPES[PENTA6] + i2;
// cout << "La maille TETRA4 " << it4 << " produit les mailles PENTA6-" << nl1 << " et PENTA6-" << nl2 << endl;
}

View File

@ -0,0 +1,12 @@
#ifndef __MESHCUT_CAS_HXX__
#define __MESHCUT_CAS_HXX__
namespace MESHCUT
{
void cas1(int VN[6], int it4);
void cas2(int VN[6], int it4);
void cas3(int VN[6], int it4);
void cas4(int VN[6], int it4);
}
#endif

View File

@ -0,0 +1,39 @@
#include "MeshCut_Cube.hxx"
#include <iostream>
using namespace MESHCUT;
using namespace std;
Cube::Cube(float _x0, float _x1, float _y0, float _y1, float _z0, float _z1)
{
x0 = _x0;
x1 = _x1;
y0 = _y0;
y1 = _y1;
z0 = _z0;
z1 = _z1;
}
bool Cube::disjoint(Cube* c2)
{
return (x0 > c2->x1 || x1 < c2->x0 || y0 > c2->y1 || y1 < c2->y0 || z0 > c2->z1 || z1 < c2->z0);
}
bool Cube::contientNoeud(int ngnoeud, Maillage *MAILLAGE)
{
float x = *(MAILLAGE->XX + ngnoeud - 1);
float y = *(MAILLAGE->YY + ngnoeud - 1);
float z = *(MAILLAGE->ZZ + ngnoeud - 1);
return (x >= x0 && x <= x1 && y >= y0 && y <= y1 && z >= z0 && z <= z1);
}
void Cube::affichage()
{
cout << "x0=" << x0 << " ";
cout << "x1=" << x1 << " ";
cout << "y0=" << y0 << " ";
cout << "y1=" << y1 << " ";
cout << "z0=" << z0 << " ";
cout << "z1=" << z1 << " ";
}

View File

@ -0,0 +1,20 @@
#ifndef __MESHCUT_CUBE_HXX__
#define __MESHCUT_CUBE_HXX__
#include "MeshCut_Maillage.hxx"
namespace MESHCUT
{
class Cube
{
public:
float x0, x1, y0, y1, z0, z1;
public:
Cube(float _x0, float _x1, float _y0, float _y1, float _z0, float _z1);
bool disjoint(Cube* c2);
bool contientNoeud(int ngnoeud, Maillage *MAILLAGE);
void affichage();
};
}
#endif

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,169 @@
#include "MeshCut_Fonctions.hxx"
#include "MeshCut_Globals.hxx"
#include <iostream>
#include <cmath>
using namespace MESHCUT;
using namespace std;
//=================================================================================================
// intersectionSegmentPlan
//=================================================================================================
float MESHCUT::longueurSegment(int ngA, int ngB)
{
float A[3], B[3];
A[0] = MAILLAGE1->XX[ngA - 1];
A[1] = MAILLAGE1->YY[ngA - 1];
A[2] = MAILLAGE1->ZZ[ngA - 1];
B[0] = MAILLAGE1->XX[ngB - 1];
B[1] = MAILLAGE1->YY[ngB - 1];
B[2] = MAILLAGE1->ZZ[ngB - 1];
float dx = B[0] - A[0];
float dy = B[1] - A[1];
float dz = B[2] - A[2];
return sqrt(dx * dx + dy * dy + dz * dz);
}
float MESHCUT::distanceNoeudPlan(float point[3])
{
return normale[0] * point[0] + normale[1] * point[1] + normale[2] * point[2] + d;
}
float MESHCUT::distanceNoeudPlan(int ng)
{
float A[3];
A[0] = MAILLAGE1->XX[ng - 1];
A[1] = MAILLAGE1->YY[ng - 1];
A[2] = MAILLAGE1->ZZ[ng - 1];
return distanceNoeudPlan(A);
}
int MESHCUT::positionNoeudPlan(int indiceNoeud)
{
if (distanceNoeudPlan(indiceNoeud + 1) > epsilon)
return 1;
else if (distanceNoeudPlan(indiceNoeud + 1) < -epsilon)
return -1;
else
return 0;
}
/*!
* Equation paramétrique de la droite AB: OP = OA + lambda AB
*
* Fonction caractéristique du plan : PI(X,Y,Z) = nx X + ny Y + nz Z + d
*
* Pour un point P de la droite: PI(OP) = PI(OA) + lambda n.AB avec n=(nx,ny,nz),
* L'intersection AB/plan est donnée par le point P tel que PI(OP)=0.
*
* Il lui correspond la coordonnée lambda = - PI(OA) / n.AB.
*
* Cette intersection est dans le segment si lambda est dans [0,1]
*/
int MESHCUT::intersectionSegmentPlan(int it4, int na)
{
int ngA, ngB; // Numéros des noeuds extrémités AB
float lambda, ps; //, ab; // ab = longueur AB
float A[3], B[3];
// Détermination des ng des extrémités de l'arête passée en argument na
int * offset = MAILLAGE1->CNX[TETRA4] + 4 * it4;
if (na == 0)
{
ngA = *(offset + 0);
ngB = *(offset + 1);
}
else if (na == 1)
{
ngA = *(offset + 0);
ngB = *(offset + 2);
}
else if (na == 2)
{
ngA = *(offset + 0);
ngB = *(offset + 3);
}
else if (na == 3)
{
ngA = *(offset + 1);
ngB = *(offset + 2);
}
else if (na == 4)
{
ngA = *(offset + 1);
ngB = *(offset + 3);
}
else if (na == 5)
{
ngA = *(offset + 2);
ngB = *(offset + 3);
}
else
ERREUR("Numéro d'arête supérieur à 6");
string cle1 = int2string(ngA) + (string) "_" + int2string(ngB);
string cle2 = int2string(ngB) + (string) "_" + int2string(ngA);
if (intersections[cle1])
return intersections[cle1];
else
{
A[0] = MAILLAGE1->XX[ngA - 1];
A[1] = MAILLAGE1->YY[ngA - 1];
A[2] = MAILLAGE1->ZZ[ngA - 1];
B[0] = MAILLAGE1->XX[ngB - 1];
B[1] = MAILLAGE1->YY[ngB - 1];
B[2] = MAILLAGE1->ZZ[ngB - 1];
// // Longueur AB
// float lx = B[0] - A[0], ly = B[1] - A[1], lz = B[2] - A[2];
// ab = sqrt(lx * lx + ly * ly + lz * lz);
// // La longueur maximale théorique est 2 epsilon
// if (ab < 2 * epsilon * 0.9)
// ERREUR("Arête de longueur inférieure au minimum théorique 2 epsilon");
// Calcul du produit scalaire AB.n
ps = 0.0;
for (int k = 0; k < 3; k++)
ps += (B[k] - A[k]) * normale[k];
// ps = ps / ab ;
if (debug)
{
cout << "Routine ISP : arête " << na << " - ngA=" << ngA << " ngB=" << ngB << endl;
cout << "A : " << A[0] << ' ' << A[1] << ' ' << A[2] << endl;
cout << "B : " << B[0] << ' ' << B[1] << ' ' << B[2] << endl;
cout << "N : " << normale[0] << ' ' << normale[1] << ' ' << normale[2] << endl;
}
if (fabs(ps) == 0.0)
ERREUR("Erreur sur ps nul");
// PS non nul: l'intersection AB/plan existe
lambda = -distanceNoeudPlan(A) / ps;
float inter[3];
for (int k = 0; k < 3; k++)
inter[k] = A[k] + lambda * (B[k] - A[k]);
newXX.push_back(inter[0]);
newYY.push_back(inter[1]);
newZZ.push_back(inter[2]);
indexNouveauxNoeuds++;
intersections[cle1] = indexNouveauxNoeuds;
intersections[cle2] = indexNouveauxNoeuds;
// cout << "création noeud " << indexNouveauxNoeuds << " : " << inter[0] << " " << inter[1] << " " << inter[2]
// << endl;
if (debug)
cout << " sortie nouveau noeud, lambda = " << lambda << " , noeud = " << indexNouveauxNoeuds << endl;
return indexNouveauxNoeuds;
}
}

View File

@ -0,0 +1,17 @@
#ifndef __MESHCUT_FONCTION_HXX__
#define __MESHCUT_FONCTION_HXX__
namespace MESHCUT
{
float longueurSegment(int ngA, int ngB);
float distanceNoeudPlan(float point[3]);
float distanceNoeudPlan(int ng);
int positionNoeudPlan(int indiceNoeud);
int intersectionSegmentPlan(int it4, int na);
}
#endif

View File

@ -0,0 +1,42 @@
#ifndef __MESHCUT_GLOBALS_HXX__
#define __MESHCUT_GLOBALS_HXX__
#include "MeshCut_Maillage.hxx"
#include <map>
#include <string>
#include <vector>
namespace MESHCUT
{
/*! Table des points d'intersection calculés.
* Si on a calculé une intersection entre le plan et un segment reliant N1 et N2
* de numéros globaux n1 et n2, on stocke dans ce tableau, sous les libellés "n1_n2" et "n2_n1",
* le numéro global du point d'intersection (noeud créé).
* On évite ainsi de calculer deux fois l'intersection d'une même arête de T4 avec le plan
*/
extern std::map<std::string, int> intersections;
extern int indexNouvellesMailles, indexNouveauxNoeuds, offsetMailles;
extern std::string str_id_GMplus, str_id_GMmoins;
extern Maillage *MAILLAGE1, *MAILLAGE2;
extern std::vector<float> newXX, newYY, newZZ;
extern std::map<TYPE_MAILLE, std::vector<int> > newCNX;
extern std::map<TYPE_MAILLE, int> cptNouvellesMailles;
extern std::map<TYPE_MAILLE, std::vector<int> > GMplus, GMmoins;
extern float *DNP; //!< Distance Noeud Plan
extern int *POSN; //!< Version -1/0/+1 du précédent, selon epsilon
extern std::string str_id_maillagenew;
extern float normale[3], pointPlan[3]; //!< Définition du plan de coupe
extern float d; //!< coefficient constant de l'équation du plan de coupe
extern float epsilon; //!< distance en dessous de laquelle un point est considéré comme appartenant au plan de coupe
extern bool debug;
extern int Naretes;
}
#endif

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,146 @@
#ifndef __MESHCUT_MAILLAGE_HXX__
#define __MESHCUT_MAILLAGE_HXX__
#include "MeshCut_Utils.hxx"
#include <string>
#include <vector>
#include <map>
namespace MESHCUT
{
class Maillage
{
public:
// Toutes ces variables doivent être placées au niveau du principal pour être connues de toutes les fonctions
// Vecteurs des familles d'éléments
std::map<int, std::vector<int> > FAMILLES;
std::map<int, std::vector<TYPE_MAILLE> > FAM_TYPES;
// Vecteurs des familles de noeuds
std::map<int, std::vector<int> > FAMILLES_NOEUDS;
// Description des groupes (par familles)
std::map<std::string, std::vector<int> > GROUPES_MAILLES;
std::map<std::string, std::vector<int> > GROUPES_NOEUDS;
// Commun noeuds et mailles
std::map<int, int> tailleFAMILLES; // la clé est un num. de famille
std::map<std::string, int> tailleGROUPES; // Tailles des vecteurs GROUPES_MAILLES et GROUPES_NOEUDS - la clé est un nom de groupe (de noeuds ou de mailles)
// Résidus mailles
std::map<TYPE_MAILLE, std::vector<int> > RESIDU;
public:
std::string ID;
int nombreNoeudsMaillage; // ****** MED-OBLIGATOIRE ******
int nombreMaillesMaillage; // ****** MED-OBLIGATOIRE ******
class Cube *enveloppeMaillage;
int dimensionMaillage; // ****** MED-OBLIGATOIRE ******
int dimensionEspace; // ****** MED-OBLIGATOIRE ******
char axisname[3*MED_SNAME_SIZE+1]; // ****** MED-OBLIGATOIRE ******
char unitname[3*MED_SNAME_SIZE+1]; // ****** MED-OBLIGATOIRE ******
float *XX;
float *YY;
float *ZZ; // ****** MED-OBLIGATOIRE ******
// Effectifs des éléments par type
std::map<TYPE_MAILLE, int> EFFECTIFS_TYPES; // ****** MED-OBLIGATOIRE ******
// Connectivités des types
// Le numéro global du j-ième noeud de la maille de numéro global i est stocké à l'adresse
// CNX[tm]+t*(i-1)+(j-1)
// (t = taille du type, i.e. nombre de noeuds de l'élément)
std::map<TYPE_MAILLE, int*> CNX; // ****** MED-OBLIGATOIRE ******
// Enveloppes cubiques
std::map<TYPE_MAILLE, float*> EC;
// Description des groupes
std::map<std::string, std::map<TYPE_MAILLE, std::vector<int> > > GM;
std::map<std::string, std::vector<int> > GN;
// std::vector<std::string> IDS_NOEUDS; // Indice = num. global - 1
// std::map<TYPE_MAILLE, std::vector<std::string> > IDS_MAILLES; // Indice = num local de maille dans le type
//
// std::vector<int> NUM_NOEUDS; // Indice = num. global - 1
// std::map<TYPE_MAILLE, std::vector<int> > NUM_MAILLES; // Indice = num local de maille dans le type
Maillage(std::string _ID);
virtual ~Maillage();
void creationGMtype(TYPE_MAILLE tm, std::string nomGMtype);
void afficheMailles(TYPE_MAILLE tm);
void listeMaillesType(TYPE_MAILLE tm);
void listeMaillesTousTypes();
void listeMaillesParGM();
void listeMaillesGM(std::string nomGM);
// void listeMaillesGMordonne(std::string nomGM);
void listeNoeuds();
void listeNoeudsGN(std::string nomGN);
void listeNoeudsGNordonne(std::string nomGN);
std::vector<float> G(int i, TYPE_MAILLE tm);
float distanceNoeudMaille(int ngnoeud, int imaille, TYPE_MAILLE tm);
int noeudVoisin(int ngnoeud, int imaille, TYPE_MAILLE tm);
float distanceNoeudNoeud(int ng1, int ng2);
// void encombrements()
void inputMED(std::string fichierMED);
void outputMED(std::string fichierMED);
void outputMEDold(std::string fichierMED);
void inputHL(std::string fichierHL /*, std::string ficDICnoeuds, std::string ficDICmailles, bool DICO */);
void outputHL(std::string fichierHL);
void outputVRML(std::string ficVRML, float rNoeuds, char *renduAretes, char *renduFaces, float transparence);
// std::string vrmlType(TYPE_MAILLE tm, char *renduAretes, char *renduFaces, float transparence);
// void Maillage::creationGMtype(TYPE_MAILLE tm, std::vector<int> CON_TYPE);
int NGLOBAL(TYPE_MAILLE typeMaille, int nlocal);
int NLOCAL(int nglobal, TYPE_MAILLE tm);
TYPE_MAILLE TYPE(int nglobal);
void eliminationMailles(TYPE_MAILLE typeMaille, std::vector<int> listeMaillesSuppr);
// acquisitionTYPE_inputMED appelée par inputMED
void
acquisitionTYPE_inputMED(TYPE_MAILLE TYPE, int nTYPE, med_idt fid, char maa[MED_NAME_SIZE + 1], med_int mdim);
// void infoChamps(std::string type, med_entity_type MEM, med_geometry_type MGE, med_idt fid, char *maa,
// char *nomChamp, med_field_type typeChamp, med_int nCompChamp, std::map<std::string, int> REFGAUSS);
bool NoeudDansHEXA8(int n, int n0, int n1, int n2, int n3, int n4, int n5, int n6, int n7, float epsilon);
bool NoeudDansPENTA6(int n, int n0, int n1, int n2, int n3, int n4, int n5, float epsilon);
bool NoeudDansPYRAM5(int n, int n0, int n1, int n2, int n3, int n4, float epsilon);
bool NoeudDansTETRA4(int n, int n1, int n2, int n3, int n4, float epsilon);
bool NoeudDansQUAD4(int n, int n1, int n2, int n3, int n4, float epsilon);
bool NoeudDansTRIA3(int n, int n1, int n2, int n3, float epsilon);
double volumeTETRA(int n1, int n2, int n3, int n4);
double aireTRIA(int n1, int n2, int n3);
double DET3(int n1, int n2, int n3);
double DET2(int n1, int n2);
void * chargeEnveloppesCubiques(TYPE_MAILLE tm);
void * chargeEnveloppesCarrees(TYPE_MAILLE tm);
bool noeudDeMaille(int ngnoeud, int i, TYPE_MAILLE tm);
bool NoeudDansMaille3D(int n, int i, TYPE_MAILLE tm, float epsilon);
bool NoeudDansMaille2D(int n, int i, TYPE_MAILLE tm, float epsilon);
bool NoeudDansEnveloppeMaille2D(int n, int i, TYPE_MAILLE tm, float epsilon);
bool NoeudDansEnveloppeMaille3D(int n, int i, TYPE_MAILLE tm, float epsilon);
void * afficheEnveloppesCubiques(TYPE_MAILLE tm);
void * afficheEnveloppesCarrees(TYPE_MAILLE tm);
std::vector<int> noeudsGeomCommuns(int i1, TYPE_MAILLE tm1, int i2, TYPE_MAILLE tm2);
void creationGMresidu();
float longueurMoyenne();
// void Maillage::infoChamps2(std::string type, med_entity_type MEM, med_geometry_type MGE, med_idt fid,
// char *maa, char *nomChamp, med_field_type typeChamp, med_int nCompChamp, map<string,
// int> REFGAUSS);
};
}
#endif

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,62 @@
#ifndef __MESHCUT_UTILS_HXX__
#define __MESHCUT_UTILS_HXX__
extern "C"
{
#include <med.h>
}
#include <string>
#include <vector>
#include <map>
namespace MESHCUT
{
enum TYPE_MAILLE
{
POI1, SEG2, SEG3, TRIA3, TRIA6, QUAD4, QUAD8, TETRA4, TETRA10, PYRAM5, PYRAM13, PENTA6, PENTA15, HEXA8, HEXA20
};
bool estUnTypeMaille(std::string S);
void ERREUR(const char* msg);
char* string2char(std::string str);
std::string int2string(int k);
float char2float(const char* ch);
std::string float2string(float f);
bool appartient(std::string e, std::string tableau[], int taille);
float arrondi(float x);
int numNoeudPointe(std::string b1, std::string b2, std::string b3);
std::string strip(std::string S);
std::string entierSur10_g(int i);
std::string entierSur10_d(int i);
std::string typeEnsight(std::string type);
int Nnoeuds(TYPE_MAILLE type);
int NnoeudsGeom(TYPE_MAILLE type);
int codeGMSH(std::string type);
std::string floatEnsight(float x);
bool typeComplexe(std::string type);
std::string ASTER8(std::string s);
float dObservateur(float a, float b, float c);
int copieFichier(std::string source, std::string cible);
med_geometry_type InstanceMGE(TYPE_MAILLE TYPE);
int chrono();
TYPE_MAILLE typeMaille(std::string type);
std::string MGE2string(med_geometry_type MGE);
std::string TM2string(TYPE_MAILLE MGE);
TYPE_MAILLE string2TM(std::string stm);
std::string coordIndex_ILS(TYPE_MAILLE tm);
std::string coordIndex_IFS(TYPE_MAILLE tm);
std::string SIGNE(double x);
void champType(std::string type, med_entity_type MEM, med_geometry_type MGE, med_idt fid, med_idt fidout,
char *maa, char *nomChamp, char *nomChampMoy, med_field_type typeChamp, char *compChamp,
char *unitChamp, med_int nCompChamp, std::map<std::string, int> REFGAUSS, int ichamp);
std::string nomMaille(TYPE_MAILLE tm, int nl);
bool appartientVN(int n, std::vector<int> V);
float distance2(float x1, float y1, float z1, float x2, float y2, float z2);
void conversionCNX(int *CNXtm, TYPE_MAILLE tm, int N);
}
#endif

26
src/Tools/MeshCut/README Normal file
View File

@ -0,0 +1,26 @@
Cut a tetrahedron mesh by a plane
---------------------------------
MeshCut allows to cut a mesh constituted of linear tetrahedrons by a plane.
The tetrahedrons intersected by the plane are cut and replaced by elements of various types,
(tetrahedron, pyramid, pentahedron).
MeshCut is a standalone program, reading and producing med files.
Syntax:
MeshCut input.med output.med resuMeshName aboveGroup belowGroup nx ny nz px py pz T
where:
input.med = name of the original mesh file in med format
output.med = name of the result mesh file in med format
resuMeshName = name of the result mesh
aboveGroup = name of the group of volumes above the cut plane
belowGroups = name of the group of volumes below the cut plane
nx ny nz = vector normal to the cut plane
px py pz = a point of the cut plane
T = 0 < T < 1 : vertices of a tetrahedron are considered as belonging
the cut plane if their distance to the plane is inferior to L*T
where L is the mean edge size of the tetrahedron