diff --git a/GEOM_version.h.in b/GEOM_version.h.in index 4be8dc3e8..e511ffbba 100644 --- a/GEOM_version.h.in +++ b/GEOM_version.h.in @@ -1,26 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ +// 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 : GEOM_version.h // Author : Vadim SANDLER // Module : SALOME - +// #if !defined(__GEOM_VERSION_H__) #define __GEOM_VERSION_H__ diff --git a/Makefile.am b/Makefile.am index b92e7ddb0..5242cf83f 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,28 +17,35 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # # -* Makefile *- -# # Author : Patrick GOLDBRONN (CEA) # Date : 28/06/2001 # Modified by : Alexander BORODIN (OCN) - autotools usage # - include $(top_srcdir)/adm_local/unix/make_common_starter.am +if GEOM_ENABLE_GUI + ACLOCAL_AMFLAGS = -I adm_local/unix/config_files \ + -I ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files \ + -I ${GUI_ROOT_DIR}/adm_local/unix/config_files +else !GEOM_ENABLE_GUI + ACLOCAL_AMFLAGS = -I adm_local/unix/config_files \ + -I ${KERNEL_ROOT_DIR}/salome_adm/unix/config_files +endif + SUBDIRS = idl adm_local resources src doc bin DIST_SUBDIRS = idl adm_local resources src doc bin DISTCLEANFILES = a.out aclocal.m4 configure -salomeinclude_DATA=GEOM_version.h +salomeinclude_DATA = GEOM_version.h -EXTRA_DIST+= \ - build_configure \ - clean_configure \ +EXTRA_DIST += \ + build_configure \ + clean_configure \ LICENCE dist-hook: @@ -45,7 +54,7 @@ dist-hook: usr_docs: (cd doc && $(MAKE) $(AM_MAKEFLAGS) usr_docs) -docs:usr_docs +docs: usr_docs dev_docs: (cd doc && $(MAKE) $(AM_MAKEFLAGS) dev_docs) diff --git a/adm_local/Makefile.am b/adm_local/Makefile.am index 7ae83a6fc..f35273fac 100644 --- a/adm_local/Makefile.am +++ b/adm_local/Makefile.am @@ -1,19 +1,24 @@ -# Copyright (C) 2005 OPEN CASCADE, CEA, EDF R&D, LEG -# PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT -# 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-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +include $(top_srcdir)/adm_local/unix/make_common_starter.am + SUBDIRS = unix diff --git a/adm_local/unix/Makefile.am b/adm_local/unix/Makefile.am index facd4e6f4..5f6d5f753 100644 --- a/adm_local/unix/Makefile.am +++ b/adm_local/unix/Makefile.am @@ -1,22 +1,24 @@ -# Copyright (C) 2005 OPEN CASCADE, CEA, EDF R&D, LEG -# PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT -# 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-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# include $(top_srcdir)/adm_local/unix/make_common_starter.am SUBDIRS = config_files diff --git a/adm_local/unix/config_files/Makefile.am b/adm_local/unix/config_files/Makefile.am index 5dd0b63ae..706857c88 100644 --- a/adm_local/unix/config_files/Makefile.am +++ b/adm_local/unix/config_files/Makefile.am @@ -1,23 +1,25 @@ -# Copyright (C) 2005 OPEN CASCADE, CEA, EDF R&D, LEG -# PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT -# 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-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# include $(top_srcdir)/adm_local/unix/make_common_starter.am -dist_admlocalm4_DATA=\ -check_GEOM.m4\ -README +dist_admlocalm4_DATA = \ +check_GEOM.m4 diff --git a/adm_local/unix/config_files/README b/adm_local/unix/config_files/README deleted file mode 100644 index feb997b16..000000000 --- a/adm_local/unix/config_files/README +++ /dev/null @@ -1,3 +0,0 @@ -This file is only here for CVS: -CVS does not always create empty directory, and adm_local/unix/config_file -is needed by build_configure. diff --git a/adm_local/unix/config_files/check_GEOM.m4 b/adm_local/unix/config_files/check_GEOM.m4 index 1c4b2df93..dd30f1b07 100644 --- a/adm_local/unix/config_files/check_GEOM.m4 +++ b/adm_local/unix/config_files/check_GEOM.m4 @@ -1,3 +1,24 @@ +dnl Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +dnl +dnl Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +dnl CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +dnl +dnl This library is free software; you can redistribute it and/or +dnl modify it under the terms of the GNU Lesser General Public +dnl License as published by the Free Software Foundation; either +dnl version 2.1 of the License. +dnl +dnl This library is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +dnl Lesser General Public License for more details. +dnl +dnl You should have received a copy of the GNU Lesser General Public +dnl License along with this library; if not, write to the Free Software +dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +dnl +dnl See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +dnl # Check availability of Geom binary distribution # # Author : Nicolas REJNERI (OPEN CASCADE, 2003) diff --git a/adm_local/unix/make_common_starter.am b/adm_local/unix/make_common_starter.am index 533941331..36ad8c3a7 100644 --- a/adm_local/unix/make_common_starter.am +++ b/adm_local/unix/make_common_starter.am @@ -1,49 +1,83 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 # # ============================================================ # 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)/@PACKAGE@ -libdir = $(prefix)/lib@LIB_LOCATION_SUFFIX@/@PACKAGE@ -bindir = $(prefix)/bin/@PACKAGE@ +# +salomeincludedir = $(includedir)/salome +libdir = $(prefix)/lib@LIB_LOCATION_SUFFIX@/salome +bindir = $(prefix)/bin/salome salomescriptdir = $(bindir) +salomepythondir = $(pythondir)/salome +salomepyexecdir = $(pyexecdir)/salome # Directory for installing idl files -salomeidldir = $(prefix)/idl/@PACKAGE@ +salomeidldir = $(prefix)/idl/salome # Directory for installing resource files -salomeresdir = $(prefix)/share/@PACKAGE@/resources/@MODULE_NAME@ +salomeresdir = $(prefix)/share/salome/resources/@MODULE_NAME@ # Directories for installing admin files -admlocaldir = $(prefix)/adm_local -admlocalunixdir = $(admlocaldir)/unix -admlocalm4dir = $(admlocaldir)/unix/config_files +admlocaldir = $(prefix)/adm_local +admlocalunixdir = $(admlocaldir)/unix +admlocalm4dir = $(admlocaldir)/unix/config_files # Shared modules installation directory -sharedpkgpythondir =$(pkgpythondir)/shared_modules +sharedpkgpythondir = $(salomepythondir)/shared_modules # Documentation directory -docdir = $(datadir)/doc/@PACKAGE@ +docdir = $(datadir)/doc/salome # common rules -# moc-files generation +# meta object implementation files generation (moc) %_moc.cxx: %.h $(MOC) $< -o $@ -# qm-files generation -%.qm: %.po - $(MSG2QM) $< $@ +# translation (*.qm) files generation (lrelease) +%.qm: %.ts + $(LRELEASE) $< -qm $@ -EXTRA_DIST=$(MOC_FILES:%_moc.cxx=%.h) $(nodist_salomeres_DATA:%.qm=%.po) +# resource files generation (qrcc) +qrc_%.cxx: %.qrc + $(QRCC) $< -o $@ -name $(*F) +# qt forms files generation (uic) +ui_%.h: %.ui + $(UIC) -o $@ $< + +# 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) + +# 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 diff --git a/bin/Makefile.am b/bin/Makefile.am index e7f7da1ce..5cc39861e 100644 --- a/bin/Makefile.am +++ b/bin/Makefile.am @@ -1,35 +1,32 @@ -# Copyright (C) 2005 OPEN CASCADE, CEA, EDF R&D, LEG -# PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT -# 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 -# -* Makefile *- +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +# -* Makefile *- # Author : Guillaume Boulant (CSSI) # Module : GEOM # - include $(top_srcdir)/adm_local/unix/make_common_starter.am -# -# =============================================================== -# Files to be installed -# =============================================================== -# +# non-distributed files +nodist_salomescript_DATA = VERSION -# These files are data, module or lib files -nodist_salomescript_DATA= VERSION - -EXTRA_DIST+= VERSION.in +# distributed files +dist_salomescript_SCRIPTS = diff --git a/build_cmake b/build_cmake new file mode 100755 index 000000000..e2f5b160c --- /dev/null +++ b/build_cmake @@ -0,0 +1,31 @@ +#!/bin/sh +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# + + +CURRENT_DIR=`pwd` +CONF_DIR=`echo $0 | sed -e "s,[^/]*$,,;s,/$,,;s,^$,.,"` +cd ${CONF_DIR} +python $KERNEL_ROOT_DIR/salome_adm/cmake_files/am2cmake.py --geom +status=$? +cd ${CURRENT_DIR} +exit $status diff --git a/build_cmake.bat b/build_cmake.bat new file mode 100644 index 000000000..772c3da37 --- /dev/null +++ b/build_cmake.bat @@ -0,0 +1,2 @@ + +%PYTHONBIN% %KERNEL_ROOT_DIR%\salome_adm\cmake_files\am2cmake.py --geom diff --git a/build_configure b/build_configure index 27672f14d..d8b893183 100755 --- a/build_configure +++ b/build_configure @@ -1,17 +1,34 @@ #!/bin/bash - +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 # # Tool for updating list of .in file for the SALOME project # and regenerating configure script -# # Author : Marc Tajchman - CEA # Date : 10/10/2002 # Modified by : Alexander BORODIN (OCN) - autotools usage # $Header$ -# # 13/03/2007: Alexander BORODIN - OCN # Reorganization for usage of autotools - +# ORIG_DIR=`pwd` CONF_DIR=`echo $0 | sed -e "s,[^/]*$,,;s,/$,,;s,^$,.,"` GEOM_WITH_GUI="yes" @@ -33,10 +50,10 @@ fi for option do case $option in - -with-ihm | --with-ihm) + -with-gui | --with-gui) GEOM_WITH_GUI="yes" break;; - -without-ihm | --without-ihm | -with-ihm=no | --with-ihm=no) + -without-gui | --without-gui | -with-gui=no | --with-gui=no) GEOM_WITH_GUI="no" break;; esac diff --git a/clean_configure b/clean_configure new file mode 100755 index 000000000..f57f7b3bf --- /dev/null +++ b/clean_configure @@ -0,0 +1,35 @@ +#!/bin/sh +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +rm -rf autom4te.cache aclocal.m4 configure make_config +find . -name "*~" -print -exec rm {} \; +find . -name "*.pyc" -print -exec rm {} \; +#exit +# ==================== ON SORT AVANT + +find bin -name Makefile.in | xargs rm -f +find doc -name Makefile.in | xargs rm -f +find idl -name Makefile.in | xargs rm -f +find resources -name Makefile.in | xargs rm -f +find salome_adm -name Makefile.in | xargs rm -f +find src -name Makefile.in | xargs rm -f +rm -f Makefile.in diff --git a/configure.ac b/configure.ac index 45f01b5c8..9df51f5f8 100644 --- a/configure.ac +++ b/configure.ac @@ -1,19 +1,37 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 # # Author : Marc Tajchman (CEA) # Date : 28/06/2001 # Modified by : Patrick GOLDBRONN (CEA) # Modified by : Marc Tajchman (CEA) # Modified by : Alexander BORODIN (OCN) - autotools usage -# # Created from configure.in.base # - - -AC_INIT([Salome2 Project GEOM module], [4.1.1], [webmaster.salome@opencascade.com], [salome]) +AC_INIT([Salome2 Project GEOM module], [5.1.0], [webmaster.salome@opencascade.com], [SalomeGEOM]) AC_CONFIG_AUX_DIR(salome_adm/unix/config_files) AC_CANONICAL_HOST AC_CANONICAL_TARGET -AM_INIT_AUTOMAKE +AM_INIT_AUTOMAKE([tar-pax]) + XVERSION=`echo $VERSION | awk -F. '{printf("0x%02x%02x%02x",$1,$2,$3)}'` AC_SUBST(XVERSION) @@ -69,7 +87,7 @@ dnl libtool macro check for CC, LD, NM, LN_S, RANLIB, STRIP + pour les librairie echo echo --------------------------------------------- -echo Coniguring production +echo Configuring production echo --------------------------------------------- echo AC_ENABLE_DEBUG(yes) @@ -219,14 +237,6 @@ GEOM_WITH_GUI=yes AM_CONDITIONAL(GEOM_ENABLE_GUI, [test "${GEOM_WITH_GUI}" = "yes"]) if test "${GEOM_WITH_GUI}" = "yes"; then - echo - echo --------------------------------------------- - echo testing msg2qm - echo --------------------------------------------- - echo - - CHECK_MSG2QM - echo echo --------------------------------------------- echo testing openGL @@ -321,7 +331,7 @@ echo echo Configure if test "${GEOM_WITH_GUI}" = "yes"; then -variables="cc_ok lex_yacc_ok python_ok swig_ok threads_ok OpenGL_ok qt_ok vtk_ok hdf5_ok omniORB_ok boost_ok occ_ok doxygen_ok graphviz_ok Kernel_ok" +variables="cc_ok lex_yacc_ok python_ok swig_ok threads_ok OpenGL_ok qt_ok vtk_ok hdf5_ok omniORB_ok boost_ok occ_ok doxygen_ok graphviz_ok Kernel_ok SalomeGUI_ok" fi if test "${GEOM_WITH_GUI}" = "no"; then variables="cc_ok lex_yacc_ok python_ok swig_ok threads_ok hdf5_ok omniORB_ok boost_ok occ_ok doxygen_ok graphviz_ok Kernel_ok" @@ -338,27 +348,22 @@ echo "Default ORB : $DEFAULT_ORB" echo dnl We don t need to say when we re entering directories if we re using -dnl GNU make becuase make does it for us. +dnl GNU make because make does it for us. if test "X$GMAKE" = "Xyes"; then AC_SUBST(SETX) SETX=":" else AC_SUBST(SETX) SETX="set -x" fi -dnl copy shells and utilities contained in the bin directory -dnl excluding .in files (treated in AC-OUTPUT below) and CVS -dnl directory - - echo echo --------------------------------------------- echo generating Makefiles and configure files echo --------------------------------------------- echo -AC_OUTPUT_COMMANDS([ \ - chmod +x ./bin/*; \ -]) +#AC_OUTPUT_COMMANDS([ \ +# chmod +x ./bin/*; \ +#]) # This list is initiated using autoscan and must be updated manually # when adding a new file .in to manage. When you execute @@ -375,11 +380,12 @@ AC_OUTPUT([ \ ./doc/Makefile \ ./doc/salome/Makefile \ ./doc/salome/gui/Makefile \ + ./doc/salome/gui/GEOM/Makefile \ ./doc/salome/gui/GEOM/doxyfile \ ./doc/salome/gui/GEOM/doxyfile_py \ + ./doc/salome/gui/GEOM/doxyfile_tui \ ./doc/salome/tui/Makefile \ - ./doc/salome/tui/GEOM/doxyfile \ - ./doc/salome/tui/GEOM/sources/static/tree.js \ + ./doc/salome/tui/doxyfile \ ./src/Makefile \ ./src/ARCHIMEDE/Makefile \ ./src/BREPExport/Makefile \ @@ -408,7 +414,6 @@ AC_OUTPUT([ \ ./src/IGESExport/Makefile \ ./src/IGESImport/Makefile \ ./src/MeasureGUI/Makefile \ - ./src/NMTAlgo/Makefile \ ./src/NMTDS/Makefile \ ./src/NMTTools/Makefile \ ./src/OBJECT/Makefile \ diff --git a/doc/Makefile.am b/doc/Makefile.am index dcbc00f24..1902d9d21 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,16 +17,21 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # - # -* Makefile *- -# # Author : Patrick GOLDBRONN (CEA) # Date : 30/11/2001 -# Modified by : Alexander BORODIN (OCN) - autotools usage +# Modified by : Alexander BORODIN (OCN) - autotools usage # $Header$ -# # source path +# +SUBDIRS = salome -SUBDIRS= salome +usr_docs: + (cd salome && $(MAKE) $(AM_MAKEFLAGS) usr_docs) + +docs: usr_docs + +dev_docs: + (cd salome && $(MAKE) $(AM_MAKEFLAGS) dev_docs) diff --git a/doc/salome/Makefile.am b/doc/salome/Makefile.am index 43c97dd62..5a92861e5 100644 --- a/doc/salome/Makefile.am +++ b/doc/salome/Makefile.am @@ -1,4 +1,7 @@ -# Copyright (C) 2005 CEA/DEN, EDF R&D, OPEN CASCADE, PRINCIPIA R&D +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -14,20 +17,17 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # - # -* Makefile *- -# # Author : Patrick GOLDBRONN (CEA) # Date : 30/11/2001 # Modified by : Alexander BORODIN (OCN) - autotools usage # $Header: # - -SUBDIRS= tui gui -SUBDIRSTUI= tui -SUBDIRSGUI= gui +SUBDIRS = tui gui +SUBDIRSTUI = tui +SUBDIRSGUI = gui usr_docs: @@SETX@; for d in $(SUBDIRSGUI); do \ diff --git a/doc/salome/gui/GEOM/Makefile.am b/doc/salome/gui/GEOM/Makefile.am new file mode 100755 index 000000000..88bb9710f --- /dev/null +++ b/doc/salome/gui/GEOM/Makefile.am @@ -0,0 +1,75 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 : Vasily Rusyaev (Open Cascade NN) +# Modified by : Alexander BORODIN (OCN) - autotools usage +# Module : doc +# +include $(top_srcdir)/adm_local/unix/make_common_starter.am + +EXTRA_DIST += images input static + +usr_docs: doxyfile_tui doxyfile_py doxyfile + echo "===========================================" ; \ + echo "Replacing geompyDC by geompy" ; \ + echo "===========================================" ; \ + sed -e "/class geompyDC/d" -e "s/^ *#/#/g" -e "s/^ *def /def /g" \ + -e "s/geompyDC/geompy/g" $(top_srcdir)/src/GEOM_SWIG/geompyDC.py > \ + $(top_builddir)/src/GEOM_SWIG/geompy.py ; \ + echo "===========================================" ; \ + echo "Generating examples documentation" ; \ + echo "===========================================" ; \ + $(DOXYGEN) doxyfile_tui ; \ + echo "===========================================" ; \ + echo "Generating Python interface documentation"; \ + echo "===========================================" ; \ + $(DOXYGEN) doxyfile_py ; \ + echo "===========================================" ; \ + echo "Generating GUI documentation" ; \ + echo "===========================================" ; \ + $(DOXYGEN) doxyfile ; \ + rm -f $(top_builddir)/src/GEOM_SWIG/geompy.py + +docs: usr_docs + +clean-local: + @for filen in `find . -maxdepth 1` ; do \ + case $${filen} in \ + ./Makefile | ./doxyfile | ./doxyfile_py | ./doxyfile_tui ) ;; \ + . | .. ) ;; \ + *) echo "Removing $${filen}" ; rm -rf $${filen} ;; \ + esac ; \ + done ; + +install-data-local: usr_docs + $(INSTALL) -d $(DESTDIR)$(docdir)/gui/GEOM + @for filen in `find . -maxdepth 1` ; do \ + case $${filen} in \ + ./Makefile | ./doxyfile | ./doxyfile_py | ./doxyfile_tui ) ;; \ + ./doxyfile.bak | ./doxyfile_py.bak | ./doxyfile_tui.bak ) ;; \ + . | .. ) ;; \ + *) echo "Installing $${filen}" ; cp -rp $${filen} $(DESTDIR)$(docdir)/gui/GEOM ;; \ + esac ; \ + done ; + +uninstall-local: + rm -rf $(DESTDIR)$(docdir)/gui/GEOM diff --git a/doc/salome/gui/GEOM/doxyfile.in b/doc/salome/gui/GEOM/doxyfile.in index 75b0c99aa..cc7de8625 100755 --- a/doc/salome/gui/GEOM/doxyfile.in +++ b/doc/salome/gui/GEOM/doxyfile.in @@ -1,8 +1,30 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# + #--------------------------------------------------------------------------- # Project related configuration options #--------------------------------------------------------------------------- PROJECT_NAME = "Geometry Module Reference Manual v.@VERSION@" -OUTPUT_DIRECTORY = ./ +OUTPUT_DIRECTORY = . CREATE_SUBDIRS = NO OUTPUT_LANGUAGE = English TAB_SIZE = 5 @@ -18,13 +40,15 @@ WARNINGS = YES #--------------------------------------------------------------------------- INPUT = @srcdir@/input FILE_PATTERNS = *.doc +EXCLUDE = IMAGE_PATH = @srcdir@/images +EXAMPLE_PATH = @top_srcdir@/src/GEOM_SWIG #--------------------------------------------------------------------------- #HTML related options #--------------------------------------------------------------------------- GENERATE_HTML = YES -HTML_OUTPUT = ./ +HTML_OUTPUT = . HTML_HEADER = @srcdir@/static/header.html HTML_FOOTER = @srcdir@/static/footer.html #HTML_STYLESHEET = @srcdir@/static/doxygen.css @@ -46,4 +70,5 @@ GENERATE_RTF = NO #--------------------------------------------------------------------------- #External reference options #--------------------------------------------------------------------------- -TAGFILES = geompy_doc.tag=./geompy_doc \ No newline at end of file +TAGFILES = geompy_doc.tag=geompy_doc +ALLEXTERNALS = NO diff --git a/doc/salome/gui/GEOM/doxyfile_py.in b/doc/salome/gui/GEOM/doxyfile_py.in index 88df45eb8..efa355dfc 100755 --- a/doc/salome/gui/GEOM/doxyfile_py.in +++ b/doc/salome/gui/GEOM/doxyfile_py.in @@ -1,10 +1,32 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# + #--------------------------------------------------------------------------- # Project related configuration options #--------------------------------------------------------------------------- -PROJECT_NAME = "Geometry Module Reference Manual v.@VERSION@" -OUTPUT_DIRECTORY = ./ -CREATE_SUBDIRS = NO -OUTPUT_LANGUAGE = English +PROJECT_NAME = "Geometry Module Reference Manual v.@VERSION@" +OUTPUT_DIRECTORY = . +CREATE_SUBDIRS = NO +OUTPUT_LANGUAGE = English USE_WINDOWS_ENCODING = NO BRIEF_MEMBER_DESC = YES REPEAT_BRIEF = NO @@ -66,8 +88,8 @@ VERBATIM_HEADERS = YES #--------------------------------------------------------------------------- # configuration options related to warning and progress messages #--------------------------------------------------------------------------- -QUIET = NO -WARNINGS = YES +QUIET = NO +WARNINGS = YES WARN_IF_UNDOCUMENTED = YES WARN_IF_DOC_ERROR = YES WARN_NO_PARAMDOC = NO @@ -77,16 +99,17 @@ EXAMPLE_RECURSIVE = NO #--------------------------------------------------------------------------- #Input related options #--------------------------------------------------------------------------- -INPUT = @top_srcdir@/src/GEOM_SWIG -FILE_PATTERNS = geompyDC.py +INPUT = @top_builddir@/src/GEOM_SWIG +FILE_PATTERNS = geompy.py IMAGE_PATH = @srcdir@/images +EXAMPLE_PATH = @top_srcdir@/src/GEOM_SWIG RECURSIVE = NO #--------------------------------------------------------------------------- #HTML related options #--------------------------------------------------------------------------- GENERATE_HTML = YES -HTML_OUTPUT = ./geompy_doc +HTML_OUTPUT = geompy_doc HTML_HEADER = @srcdir@/static/header.html HTML_FOOTER = @srcdir@/static/footer.html #HTML_STYLESHEET = @srcdir@/static/doxygen.css @@ -107,24 +130,17 @@ GENERATE_RTF = NO #--------------------------------------------------------------------------- # Configuration options related to the dot tool #--------------------------------------------------------------------------- -#CLASS_DIAGRAMS = YES CLASS_DIAGRAMS = NO HIDE_UNDOC_RELATIONS = NO -#HAVE_DOT = YES HAVE_DOT = NO -#CLASS_GRAPH = YES CLASS_GRAPH = NO COLLABORATION_GRAPH = NO GROUP_GRAPHS = NO UML_LOOK = NO -#TEMPLATE_RELATIONS = YES -#INCLUDE_GRAPH = YES TEMPLATE_RELATIONS = NO INCLUDE_GRAPH = NO INCLUDED_BY_GRAPH = NO CALL_GRAPH = NO -#GRAPHICAL_HIERARCHY = YES -#DIRECTORY_GRAPH = YES GRAPHICAL_HIERARCHY = NO DIRECTORY_GRAPH = NO DOT_IMAGE_FORMAT = jpg @@ -142,3 +158,4 @@ DOT_CLEANUP = YES #External reference options #--------------------------------------------------------------------------- GENERATE_TAGFILE = geompy_doc.tag +TAGFILES = tui_examples.tag=.. diff --git a/doc/salome/gui/GEOM/doxyfile_tui.in b/doc/salome/gui/GEOM/doxyfile_tui.in new file mode 100755 index 000000000..e324105c0 --- /dev/null +++ b/doc/salome/gui/GEOM/doxyfile_tui.in @@ -0,0 +1,72 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- +PROJECT_NAME = "Geometry Module Reference Manual v.@VERSION@" +OUTPUT_DIRECTORY = . +CREATE_SUBDIRS = NO +OUTPUT_LANGUAGE = English +TAB_SIZE = 5 + +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- +QUIET = NO +WARNINGS = YES + +#--------------------------------------------------------------------------- +#Input related options +#--------------------------------------------------------------------------- +INPUT = @srcdir@/input +FILE_PATTERNS = tui_*.doc +IMAGE_PATH = @srcdir@/images +EXAMPLE_PATH = @top_srcdir@/src/GEOM_SWIG + +#--------------------------------------------------------------------------- +#HTML related options +#--------------------------------------------------------------------------- +GENERATE_HTML = YES +HTML_OUTPUT = . +HTML_HEADER = @srcdir@/static/header.html +HTML_FOOTER = @srcdir@/static/footer.html +#HTML_STYLESHEET = @srcdir@/static/doxygen.css +TOC_EXPAND = YES +DISABLE_INDEX = NO +GENERATE_TREEVIEW = YES +TREEVIEW_WIDTH = 300 + +#--------------------------------------------------------------------------- +#LaTeX related option +#--------------------------------------------------------------------------- +GENERATE_LATEX = NO + +#--------------------------------------------------------------------------- +#RTF related options +#--------------------------------------------------------------------------- +GENERATE_RTF = NO + +#--------------------------------------------------------------------------- +#External reference options +#--------------------------------------------------------------------------- +GENERATE_TAGFILE = tui_examples.tag diff --git a/doc/salome/gui/GEOM/files/introduction_to_geom.htm b/doc/salome/gui/GEOM/files/introduction_to_geom.htm deleted file mode 100755 index d39bc391f..000000000 --- a/doc/salome/gui/GEOM/files/introduction_to_geom.htm +++ /dev/null @@ -1,143 +0,0 @@ - - - - - -Introduction to GEOM - - - - - - - - - - - - -

Introduction to Geometry

- -

Geometry module - of SALOME is destined for:

- -

 

- - - -

 

- - --- - - - -
-
    - -
  • Creation of basic geometrical objects

  • - -
  • Construction of primitives

  • - -
  • Building shapes

  • - -
  • Generation of complex shapes

  • - -
  • Working with groups

  • - -
  • Geometrical repairing of objects

  • - -
  • Geometrical boolean operations

  • - -
  • Geometrical transformations

  • - -
  • Building by blocks

  • -
-

 

-

- -

 

- - - - diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image27.gif b/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image27.gif deleted file mode 100755 index 216da7531..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image27.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image29.gif b/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image29.gif deleted file mode 100755 index 5ee22f391..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image29.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image30.gif b/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image30.gif deleted file mode 100755 index a83d6d108..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image30.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image31.gif b/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image31.gif deleted file mode 100755 index 82a696852..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image31.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image32.gif b/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image32.gif deleted file mode 100755 index f74b5f036..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image32.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image33.gif b/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image33.gif deleted file mode 100755 index 72dd5f5cc..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image33.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image34.gif b/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image34.gif deleted file mode 100755 index ed0f4522d..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_basicgui_functions_salome2_sp3_basicgui_functions_image34.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_booleangui_functions.htm b/doc/salome/gui/GEOM/files/salome2_sp3_booleangui_functions.htm deleted file mode 100755 index ff110b02c..000000000 --- a/doc/salome/gui/GEOM/files/salome2_sp3_booleangui_functions.htm +++ /dev/null @@ -1,159 +0,0 @@ - - - - - -Using Boolean Operations - - - - - - - - - - - - - -

Using Boolean Operations

- -

 

- -

You can use the following - boolean operations for construction of more complex geometrical objects - (2D & 3D elements) :

- -

 

- - - - - -

 

- -

There is a general TUI command covering - all these operations, which can be used alongside with separate commands - for each operation.

- -

geompy.MakeBoolean(Shape1, - Shape2, Operation), where Shape1 is the first argument and Shape2 - is the second argument of Boolean operation, Operation is a type of the - Boolean operation (1 – Common, 2 – Cut, 3 – Fuse, 4 – Section).

- -

 

- -

Our TUI - Scripts provide you with useful examples of the use of Boolean - Operations.

- -

 

- - - - diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image1.gif b/doc/salome/gui/GEOM/files/salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image1.gif deleted file mode 100755 index 129d17d63..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image1.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image2.gif b/doc/salome/gui/GEOM/files/salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image2.gif deleted file mode 100755 index 56ec71d40..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image2.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image3.gif b/doc/salome/gui/GEOM/files/salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image3.gif deleted file mode 100755 index d210eb981..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image3.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image4.gif b/doc/salome/gui/GEOM/files/salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image4.gif deleted file mode 100755 index 3372d41c4..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_booleangui_functions_salome2_sp3_booleangui_functions_image4.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image56.gif b/doc/salome/gui/GEOM/files/salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image56.gif deleted file mode 100755 index d7adb4c4e..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image56.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image57.gif b/doc/salome/gui/GEOM/files/salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image57.gif deleted file mode 100755 index 4f7986042..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image57.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image58.gif b/doc/salome/gui/GEOM/files/salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image58.gif deleted file mode 100755 index 178eb6403..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image58.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image59.gif b/doc/salome/gui/GEOM/files/salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image59.gif deleted file mode 100755 index 18fa56742..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_generationgui_functions_salome2_sp3_generationgui_functions_image59.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_geomtoolsgui_functions.htm b/doc/salome/gui/GEOM/files/salome2_sp3_geomtoolsgui_functions.htm deleted file mode 100755 index de5df125d..000000000 --- a/doc/salome/gui/GEOM/files/salome2_sp3_geomtoolsgui_functions.htm +++ /dev/null @@ -1,146 +0,0 @@ - - - - - -Importing and exporting geometrical objects - - - - - - - - - - - - -

Importing/exporting geometrical objects

- -

In Geometry module you - can import and export geometrical objects from/into BREP, IGES, STEP files. The mechanisms of import and export - are implemented via plug-ins, which gives you the opportunity to expand - the range of available formats by adding more plug-ins (for example, CATIA - 5).  

- -  - -

To import geometrical objects from a BREP, IGES, STEP file:

- -

 

- -

From the File - menu choose Import. In - the opening dialog box Import - select the required format of the file for importation and search for - a *.brep, *.iges or *.step  file. -

- -

 

- -

- -

 

- -

Select the required file and click Open. Your file will be imported in - the module and its contents (geometrical object) will be displayed in - the Object Browser.

- -

 

- -

 

- -

To export geometrical objects into a BREP, IGES, STEP file:

- -

 

- -

Select the object you wish to export, then - from the File menu choose Export. In the opening dialog box Export define the required format, - the name and the location of the file for exportation. -

- -

 

- -

- -

 

- -

Click Save - to confirm your exportation.  

- - - - diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions.htm b/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions.htm deleted file mode 100755 index acb24e686..000000000 --- a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions.htm +++ /dev/null @@ -1,483 +0,0 @@ - - - - - -Using Measurement Tools - - - - - - - - - - - - - -

Using measurement tools

- -

Measurement tools in GEOM are necessary for getting different - data concerning created or imported geometrical objects. They are:

- -

 

- - - -

 

- -

Our TUI Scripts - show how to use Measurement Tools - with  TUI - commands.

- -

 

- -

To use measurement tools:

- -

 

- -

In the main menu select Measures - submenu.

- -

 

- -

 

- -

  Point coordinates

- -

 

- -

Returns the - coordinates of a point.

- -

 

- -

Result: Point - coordinates (X, Y, Z) in 3D space in the form of Python Tuple.

- -

TUI command: - geompy.PointCoordinates(Point), - where Point is a point whose coordinates are inquired.

- -

 

- -

- -

 

- -

 

- -

Basic properties -

- -

 

- -

Returns the properties (Length, Surface & - Volume) for the selected geometrical object.

- -

 

- -

Result: Display - Length, Surface & Volume in the form of Python Tuple.

- -

TUI command: - geompy.BasicProperties(Shape), - where Shape is a shape whose properties are inquired.

- -

 

- -

- -

 

- -

 

- -

- Center of mass

- -

 

- -

Calculates and returns the coordinates of the - gravity center for the selected geometrical object.

- -

 

- -

Result: GEOM_Object - (vertex).

- -

TUI Command: - geompy.MakeCDG(Shape), where - Shape is the shape for which a center of gravity is computed.

- -

 

- -

- -

 

- -

 

- -

Inertia -

- -

 

- -

Returns the axis of inertia for the selected - geometrical object.

- -

 

- -

Result: Displays - the matrix and moments of inertia in the form of Python Tuple (I11, I12, - I13,

- -

 I21, - I22, I23,

- -

 I31, - I32, I33,

- -

 Ix, - Iy, Iz).

- -

 

- -

TUI command: - geompy.Inertia(Shape), where - Shape is a shape for which a matrix of inertia and moment of inertia are - returned.

- -

 

- -

- -

 

- -

 

- -

Bounding - box

- -

 

- -

Returns the dimensions of the bounding box - for the selected geometrical object.

- -

 

- -

Result: Displays - the dimensions of the bounding box of a geometrical object in the form - of Python Tuple (Xmin, Xmax, Ymin, Ymax, Zmin, Zmax).

- -

TUI command: geompy.BoundingBox(Shape), where Shape is a shape for which a bounding - box is computed.

- -

 

- -

- -

 

- -

 

- -

Min. distance

- -

 

- -

Returns the minimum distance between two geometrical - objects.

- -

 

- -

TUI command: geompy.MinDistance(Shape1, - Shape2), where Shape1 and Shape2 - are shapes between which the minimal distance computed.

- -

 

- -

- -

 

- -

 

- -

- Tolerance

- -

 

- -

Returns the maximum and the minimum tolerance - for the selected geometrical object.

- -

 

- -

Result: Displays - the tolerance values (FaceMinTol, FaceMaxTol, EgdeMinTol, EgdeMaxTol, - VertexMinTol, VertexMaxTol).

- -

TUI command: geompy.Tolerance(Shape), where Shape is a shape for which minimal - and maximal tolerances are returned.

- -

 

- -

- -

 

- -

 

- -

WhatIs -

- -

 

- -

Displays types and quantities of all elements - composing the selected geometrical object.

- -

 

- -

TUI command: - geompy.WhatIs(Shape), where Shape - is a shape from which a description is returned.

- -

 

- -

- -

 

- -

 

- -

Check -

- -

 

- -

Checks the topology of the selected geometrical - object and returns True if it is valid. Check - also geometry checkbox allows to test the geometry as well.

- -

 

- -

Result: Boolean.

- -

TUI Command: - geompy.(theShape, theIsCheckGeom - = 0), where is shape which is checked for validity.

- -

 

- -

- -

 

- -

 

- -

Check compound - of blocks

- -

 

- -

Checks whether a shape is a compound of glued - blocks. To be considered as a compound of blocks, the given shape must - satisfy the following conditions:

- - - -

 

- -

Informs of the following possible errors:

- - - -

 

- -

Result: Boolean; - highlight in the viewer.

- -

TUI Command: - geompy.CheckCompoundOfBlocks(Compound). - Checks if the shape is - a valid compound of blocks. If it is true, then the validity flag is returned, - and encountered errors are printed in the python console.

- -

 

- -

- -

 

- - - - diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image71.gif b/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image71.gif deleted file mode 100755 index 02e4c8ff8..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image71.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image72.gif b/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image72.gif deleted file mode 100755 index 1aebb4f08..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image72.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image73.gif b/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image73.gif deleted file mode 100755 index f11323ae3..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image73.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image74.gif b/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image74.gif deleted file mode 100755 index c429db810..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image74.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image75.gif b/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image75.gif deleted file mode 100755 index 1c8dd915f..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image75.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image76.gif b/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image76.gif deleted file mode 100755 index 7968c6143..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image76.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image77.gif b/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image77.gif deleted file mode 100755 index a2db5a6e1..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image77.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image78.gif b/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image78.gif deleted file mode 100755 index 8de970b29..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_measuregui_functions_salome2_sp3_measuregui_functions_image78.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image87.gif b/doc/salome/gui/GEOM/files/salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image87.gif deleted file mode 100755 index 03b8391c3..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image87.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image88.gif b/doc/salome/gui/GEOM/files/salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image88.gif deleted file mode 100755 index e38dcabd8..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image88.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image89.gif b/doc/salome/gui/GEOM/files/salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image89.gif deleted file mode 100755 index 7a9aaadb4..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image89.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image90.gif b/doc/salome/gui/GEOM/files/salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image90.gif deleted file mode 100755 index 716e51b9f..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_operationgui_functions_salome2_sp3_operationgui_functions_image90.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image100.gif b/doc/salome/gui/GEOM/files/salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image100.gif deleted file mode 100755 index 871c6f09b..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image100.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image101.gif b/doc/salome/gui/GEOM/files/salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image101.gif deleted file mode 100755 index ffdbac7e8..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image101.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image102.gif b/doc/salome/gui/GEOM/files/salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image102.gif deleted file mode 100755 index 7e683cc04..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image102.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image103.gif b/doc/salome/gui/GEOM/files/salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image103.gif deleted file mode 100755 index 9aa79cf8c..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image103.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image99.gif b/doc/salome/gui/GEOM/files/salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image99.gif deleted file mode 100755 index 0f4889b96..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_primitivegui_functions_salome2_sp3_primitivegui_functions_image99.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_repairgui_functions_salome2_sp3_repairgui_functions_image119.gif b/doc/salome/gui/GEOM/files/salome2_sp3_repairgui_functions_salome2_sp3_repairgui_functions_image119.gif deleted file mode 100755 index d4b54ec3c..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_repairgui_functions_salome2_sp3_repairgui_functions_image119.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_repairgui_functions_salome2_sp3_repairgui_functions_image121.gif b/doc/salome/gui/GEOM/files/salome2_sp3_repairgui_functions_salome2_sp3_repairgui_functions_image121.gif deleted file mode 100755 index b39eb2034..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_repairgui_functions_salome2_sp3_repairgui_functions_image121.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_repairgui_functions_salome2_sp3_repairgui_functions_image122.gif b/doc/salome/gui/GEOM/files/salome2_sp3_repairgui_functions_salome2_sp3_repairgui_functions_image122.gif deleted file mode 100755 index 3917bf3e2..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_repairgui_functions_salome2_sp3_repairgui_functions_image122.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image128.gif b/doc/salome/gui/GEOM/files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image128.gif deleted file mode 100755 index 7a140ed93..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image128.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image129.gif b/doc/salome/gui/GEOM/files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image129.gif deleted file mode 100755 index d3fdead87..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image129.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image131.gif b/doc/salome/gui/GEOM/files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image131.gif deleted file mode 100755 index 2059e9d9d..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image131.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image132.gif b/doc/salome/gui/GEOM/files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image132.gif deleted file mode 100755 index 29aaddb0a..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image132.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image133.gif b/doc/salome/gui/GEOM/files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image133.gif deleted file mode 100755 index d55ff89b3..000000000 Binary files a/doc/salome/gui/GEOM/files/salome2_sp3_transformationgui_functions_salome2_sp3_transformationgui_functions_image133.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/geompy_doc/classgeompyDC_1_1geompyDC.html b/doc/salome/gui/GEOM/geompy_doc/classgeompyDC_1_1geompyDC.html deleted file mode 100644 index 60cc4ce43..000000000 --- a/doc/salome/gui/GEOM/geompy_doc/classgeompyDC_1_1geompyDC.html +++ /dev/null @@ -1,9410 +0,0 @@ - - - - - - Main Page - - - - -  - - - - -

geompyDC.geompyDC Class Reference

Inheritance diagram for geompyDC.geompyDC:

Inheritance graph
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Public Member Functions

def __init__
def init_geom
def SubShapeName
 Get name for sub-shape aSubObj of shape aMainObj.
def addToStudy
 Publish in study aShape with name aName.
def addToStudyInFather
 Publish in study aShape with name aName as sub-object of previously published aFather.
def MakeVertex
 Create point by three coordinates.
def MakeVertexWithRef
 Create a point, distant from the referenced point on the given distances along the coordinate axes.
def MakeVertexOnCurve
 Create a point, corresponding to the given parameter on the given curve.
def MakeTangentOnCurve
 Create a tangent, corresponding to the given parameter on the given curve.
def MakeVectorDXDYDZ
 Create a vector with the given components.
def MakeVector
 Create a vector between two points.
def MakeLine
 Create a line, passing through the given point and parrallel to the given direction.
def MakeLineTwoPnt
 Create a line, passing through the given points.
def MakePlane
 Create a plane, passing through the given point and normal to the given vector.
def MakePlaneThreePnt
 Create a plane, passing through the three given points.
def MakePlaneFace
 Create a plane, similar to the existing one, but with another size of representing face.
def MakeMarker
 Create a local coordinate system.
def MakeMarkerPntTwoVec
 Create a local coordinate system.
def MakeArc
 Create an arc of circle, passing through three given points.
def MakeArcCenter
 Create an arc of circle from a center and 2 points.
def MakeCircle
 Create a circle with given center, normal vector and radius.
def MakeCircleThreePnt
 Create a circle, passing through three given points.
def MakeEllipse
 Create an ellipse with given center, normal vector and radiuses.
def MakePolyline
 Create a polyline on the set of points.
def MakeBezier
 Create bezier curve on the set of points.
def MakeInterpol
 Create B-Spline curve on the set of points.
def MakeSketcher
 Create a sketcher (wire or face), following the textual description, passed through theCommand argument.
def MakeSketcherOnPlane
 Create a sketcher (wire or face), following the textual description, passed through theCommand argument.
def MakeBox
 Create a box by coordinates of two opposite vertices.
def MakeBoxDXDYDZ
 Create a box with specified dimensions along the coordinate axes and with edges, parallel to the coordinate axes.
def MakeBoxTwoPnt
 Create a box with two specified opposite vertices, and with edges, parallel to the coordinate axes.
def MakeCylinder
 Create a cylinder with given base point, axis, radius and height.
def MakeCylinderRH
 Create a cylinder with given radius and height at the origin of coordinate system.
def MakeSpherePntR
 Create a sphere with given center and radius.
def MakeSphere
 Create a sphere with given center and radius.
def MakeSphereR
 Create a sphere with given radius at the origin of coordinate system.
def MakeCone
 Create a cone with given base point, axis, height and radiuses.
def MakeConeR1R2H
 Create a cone with given height and radiuses at the origin of coordinate system.
def MakeTorus
 Create a torus with given center, normal vector and radiuses.
def MakeTorusRR
 Create a torus with given radiuses at the origin of coordinate system.
def MakePrism
 Create a shape by extrusion of the base shape along a vector, defined by two points.
def MakePrismVecH
 Create a shape by extrusion of the base shape along the vector, i.e.
def MakePipe
 Create a shape by extrusion of the base shape along the path shape.
def MakeRevolution
 Create a shape by revolution of the base shape around the axis on the given angle, i.e.
def MakeThruSections
 Create a shell or solid passing through set of sections.Sections should be wires,edges or vertices.
def MakePipeWithDifferentSections
 Create a shape by extrusion of the profile shape along the path shape.
def MakePipeWithShellSections
 Create a shape by extrusion of the profile shape along the path shape.
def MakeEdge
 Create a linear edge with specified ends.
def MakeWire
 Create a wire from the set of edges and wires.
def MakeFace
 Create a face on the given wire.
def MakeFaceWires
 Create a face on the given wires set.
def MakeFaces
 Shortcut to MakeFaceWires().
def MakeShell
 Create a shell from the set of faces and shells.
def MakeSolid
 Create a solid, bounded by the given shells.
def MakeCompound
 Create a compound of the given shapes.
def NumberOfFaces
 Gives quantity of faces in the given shape.
def NumberOfEdges
 Gives quantity of edges in the given shape.
def ChangeOrientation
 Reverses an orientation the given shape.
def OrientationChange
 Shortcut to ChangeOrientation().
def GetFreeFacesIDs
 Retrieve all free faces from the given shape.
def GetSharedShapes
 Get all sub-shapes of theShape1 of the given type, shared with theShape2.
def GetShapesOnPlane
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified plane by the certain way, defined through theState parameter.
def GetShapesOnPlaneIDs
 Works like the above method, but returns list of sub-shapes indices.
def GetShapesOnPlaneWithLocation
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified plane by the certain way, defined through theState parameter.
def GetShapesOnPlaneWithLocationIDs
 Works like the above method, but returns list of sub-shapes indices.
def GetShapesOnCylinder
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified cylinder by the certain way, defined through theState parameter.
def GetShapesOnCylinderIDs
 Works like the above method, but returns list of sub-shapes indices.
def GetShapesOnSphere
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified sphere by the certain way, defined through theState parameter.
def GetShapesOnSphereIDs
 Works like the above method, but returns list of sub-shapes indices.
def GetShapesOnQuadrangle
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified quadrangle by the certain way, defined through theState parameter.
def GetShapesOnQuadrangleIDs
 Works like the above method, but returns list of sub-shapes indices.
def GetShapesOnBox
 Find in theShape all sub-shapes of type theShapeType, situated relatively the specified theBox by the certain way, defined through theState parameter.
def GetShapesOnBoxIDs
 Works like the above method, but returns list of sub-shapes indices.
def GetInPlace
 Get sub-shape(s) of theShapeWhere, which are coincident with theShapeWhat or could be a part of it.
def GetSame
 Get sub-shape of theShapeWhere, which is equal to theShapeWhat.
def GetSubShape
 Obtain a composite sub-shape of <aShape>, composed from sub-shapes of <aShape>, selected by their unique IDs inside <aShape>.
def GetSubShapeID
 Obtain unique ID of sub-shape <aSubShape> inside <aShape>.
def SubShapeAll
 Explode a shape on subshapes of a given type.
def SubShapeAllIDs
 Explode a shape on subshapes of a given type.
def SubShapeAllSorted
 Explode a shape on subshapes of a given type.
def SubShapeAllSortedIDs
 Explode a shape on subshapes of a given type.
def SubShape
 Obtain a compound of sub-shapes of <aShape>, selected by they indices in list of all sub-shapes of type <aType>.
def SubShapeSorted
 Obtain a compound of sub-shapes of <aShape>, selected by they indices in sorted list of all sub-shapes of type <aType>.
def ProcessShape
 Apply a sequence of Shape Healing operators to the given object.
def SuppressFaces
 Remove faces from the given object (shape).
def MakeSewing
 Sewing of some shapes into single shape.
def Sew
 Sewing of the given object.
def SuppressInternalWires
 Remove internal wires and edges from the given object (face).
def SuppressHoles
 Remove internal closed contours (holes) from the given object.
def CloseContour
 Close an open wire.
def DivideEdge
 Addition of a point to a given edge object.
def ChangeOrientationShell
 Change orientation of the given object.
def ChangeOrientationShellCopy
 Change orientation of the given object.
def GetFreeBoundary
 Get a list of wires (wrapped in GEOM_Object-s), that constitute a free boundary of the given shape.
def MakeCopy
 Create a copy of the given object.
def MakeFilling
 Create a filling from the given compound of contours.
def MakeGlueFaces
 Replace coincident faces in theShape by one face.
def GetGlueFaces
 Find coincident faces in theShape for possible gluing.
def MakeGlueFacesByList
 Replace coincident faces in theShape by one face in compliance with given list of faces.
def MakeBoolean
 Perform one of boolean operations on two given shapes.
def MakeCommon
 Shortcut to MakeBoolean(s1, s2, 1).
def MakeCut
 Shortcut to MakeBoolean(s1, s2, 2).
def MakeFuse
 Shortcut to MakeBoolean(s1, s2, 3).
def MakeSection
 Shortcut to MakeBoolean(s1, s2, 4).
def MakePartition
 Perform partition operation.
def MakePartitionNonSelfIntersectedShape
 Perform partition operation.
def Partition
 Shortcut to MakePartition().
def MakeHalfPartition
 Perform partition of the Shape with the Plane.
def MakeTranslationTwoPoints
 Translate the given object along the vector, specified by its end points, creating its copy before the translation.
def MakeTranslation
 Translate the given object along the vector, specified by its components, creating its copy before the translation.
def MakeTranslationVector
 Translate the given object along the given vector, creating its copy before the translation.
def MakeRotation
 Rotate the given object around the given axis on the given angle, creating its copy before the rotatation.
def MakeRotationThreePoints
 Rotate given object around vector perpendicular to plane containing three points, creating its copy before the rotatation.
def MakeScaleTransform
 Scale the given object by the factor, creating its copy before the scaling.
def MakeMirrorByPlane
 Create an object, symmetrical to the given one relatively the given plane.
def MakeMirrorByAxis
 Create an object, symmetrical to the given one relatively the given axis.
def MakeMirrorByPoint
 Create an object, symmetrical to the given one relatively the given point.
def MakePosition
 Modify the Location of the given object by LCS, creating its copy before the setting.
def MakeOffset
 Create new object as offset of the given one.
def MakeMultiTranslation1D
 Translate the given object along the given vector a given number times.
def MakeMultiTranslation2D
 Conseqently apply two specified translations to theObject specified number of times.
def MultiRotate1D
 Rotate the given object around the given axis a given number times.
def MultiRotate2D
 Rotate the given object around the given axis on the given angle a given number times and multi-translate each rotation result.
def MakeMultiRotation1D
 The same, as MultiRotate1D(), but axis is given by direction and point.
def MakeMultiRotation2D
 The same, as MultiRotate2D(), but axis is given by direction and point.
def MakeFilletAll
 Perform a fillet on all edges of the given shape.
def MakeFillet
 Perform a fillet on the specified edges/faces of the given shape.
def MakeChamferAll
 Perform a symmetric chamfer on all edges of the given shape.
def MakeChamferEdge
 Perform a chamfer on edges, common to the specified faces, with distance D1 on the Face1.
def MakeChamferFaces
 Perform a chamfer on all edges of the specified faces, with distance D1 on the first specified face (if several for one edge).
def MakeChamfer
 Shortcut to MakeChamferEdge() and MakeChamferFaces().
def Archimede
 Perform an Archimde operation on the given shape with given parameters.
def PointCoordinates
 Get point coordinates.
def BasicProperties
 Get summarized length of all wires, area of surface and volume of the given shape.
def BoundingBox
 Get parameters of bounding box of the given shape.
def Inertia
 Get inertia matrix and moments of inertia of theShape.
def MinDistance
 Get minimal distance between the given shapes.
def Tolerance
 Get min and max tolerances of sub-shapes of theShape.
def WhatIs
 Obtain description of the given shape (number of sub-shapes of each type).
def MakeCDG
 Get a point, situated at the centre of mass of theShape.
def CheckShape
 Check a topology of the given shape.
def GetPosition
 Get position (LCS) of theShape.
def KindOfShape
 Get kind of theShape.
def Import
 Import a shape from the BREP or IGES or STEP file (depends on given format) with given name.
def ImportBREP
 Shortcut to Import() for BREP format.
def ImportIGES
 Shortcut to Import() for IGES format.
def ImportSTEP
 Shortcut to Import() for STEP format.
def Export
 Export the given shape into a file with given name.
def ExportBREP
 Shortcut to Export() for BREP format.
def ExportIGES
 Shortcut to Export() for IGES format.
def ExportSTEP
 Shortcut to Export() for STEP format.
def MakeQuad
 Create a quadrangle face from four edges.
def MakeQuad2Edges
 Create a quadrangle face on two edges.
def MakeQuad4Vertices
 Create a quadrangle face with specified corners.
def MakeHexa
 Create a hexahedral solid, bounded by the six given faces.
def MakeHexa2Faces
 Create a hexahedral solid between two given faces.
def GetPoint
 Get a vertex, found in the given shape by its coordinates.
def GetEdge
 Get an edge, found in the given shape by two given vertices.
def GetEdgeNearPoint
 Find an edge of the given shape, which has minimal distance to the given point.
def GetFaceByPoints
 Returns a face, found in the given shape by four given corner vertices.
def GetFaceByEdges
 Get a face of block, found in the given shape by two given edges.
def GetOppositeFace
 Find a face, opposite to the given one in the given block.
def GetFaceNearPoint
 Find a face of the given shape, which has minimal distance to the given point.
def GetFaceByNormale
 Find a face of block, whose outside normale has minimal angle with the given vector.
def CheckCompoundOfBlocks
 Check, if the compound of blocks is given.
def RemoveExtraEdges
 Remove all seam and degenerated edges from theShape.
def CheckAndImprove
 Check, if the given shape is a blocks compound.
def MakeBlockExplode
 Get all the blocks, contained in the given compound.
def GetBlockNearPoint
 Find block, containing the given point inside its volume or on boundary.
def GetBlockByParts
 Find block, containing all the elements, passed as the parts, or maximum quantity of them.
def GetBlocksByParts
 Return all blocks, containing all the elements, passed as the parts.
def MakeMultiTransformation1D
 Multi-transformate block and glue the result.
def MakeMultiTransformation2D
 Multi-transformate block and glue the result.
def Propagate
 Build all possible propagation groups.
def CreateGroup
 Creates a new group which will store sub shapes of theMainShape.
def AddObject
 Adds a sub object with ID theSubShapeId to the group.
def RemoveObject
 Removes a sub object with ID theSubShapeId from the group.
def UnionList
 Adds to the group all the given shapes.
def UnionIDs
 Works like the above method, but argument theSubShapes here is a list of sub-shapes indices.
def DifferenceList
 Removes from the group all the given shapes.
def DifferenceIDs
 Works like the above method, but argument theSubShapes here is a list of sub-shapes indices.
def GetObjectIDs
 Returns a list of sub objects ID stored in the group.
def GetType
 Returns a type of sub objects stored in the group.
def GetMainShape
 Returns a main shape associated with the group.
def GetEdgesByLength
 Create group of edges of theShape, whose length is in range [min_length, max_length].
def SelectEdges
 Create group of edges of selected shape, whose length is in range [min_length, max_length].
def addPath
 Add Path to load python scripts from.

Data Fields

 myBuilder
 myStudyId
 father
 BasicOp
 CurvesOp
 PrimOp
 ShapesOp
 HealOp
 InsertOp
 BoolOp
 TrsfOp
 LocalOp
 MeasuOp
 BlocksOp
 GroupOp
 myStudy
-

Member Function Documentation

- -
-
- - - - - - - - - -
def geompyDC.geompyDC.__init__ (  self  ) 
-
-
- -

- -

-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.init_geom (  self,
  theStudy 
)
-
-
- -

- -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.SubShapeName (  self,
  aSubObj,
  aMainObj 
)
-
-
- -

-Example: see GEOM_TestAll.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.addToStudy (  self,
  aShape,
  aName 
)
-
-
- -

-Example: see GEOM_TestAll.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.addToStudyInFather (  self,
  aFather,
  aShape,
  aName 
)
-
-
- -

-Example: see GEOM_TestAll.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeVertex (  self,
  theX,
  theY,
  theZ 
)
-
-
- -

-

Parameters:
- - - - -
theX The X coordinate of the point.
theY The Y coordinate of the point.
theZ The Z coordinate of the point.
-
-
Returns:
New GEOM_Object, containing the created point.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeVertexWithRef (  self,
  theReference,
  theX,
  theY,
  theZ 
)
-
-
- -

-

Parameters:
- - - - - -
theReference The referenced point.
theX Displacement from the referenced point along OX axis.
theY Displacement from the referenced point along OY axis.
theZ Displacement from the referenced point along OZ axis.
-
-
Returns:
New GEOM_Object, containing the created point.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeVertexOnCurve (  self,
  theRefCurve,
  theParameter 
)
-
-
- -

-

Parameters:
- - - -
theRefCurve The referenced curve.
theParameter Value of parameter on the referenced curve.
-
-
Returns:
New GEOM_Object, containing the created point.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeTangentOnCurve (  self,
  theRefCurve,
  theParameter 
)
-
-
- -

-

Parameters:
- - - -
theRefCurve The referenced curve.
theParameter Value of parameter on the referenced curve.
-
-
Returns:
New GEOM_Object, containing the created tangent.
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeVectorDXDYDZ (  self,
  theDX,
  theDY,
  theDZ 
)
-
-
- -

-

Parameters:
- - - - -
theDX X component of the vector.
theDY Y component of the vector.
theDZ Z component of the vector.
-
-
Returns:
New GEOM_Object, containing the created vector.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeVector (  self,
  thePnt1,
  thePnt2 
)
-
-
- -

-

Parameters:
- - - -
thePnt1 Start point for the vector.
thePnt2 End point for the vector.
-
-
Returns:
New GEOM_Object, containing the created vector.
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeLine (  self,
  thePnt,
  theDir 
)
-
-
- -

-

Parameters:
- - - -
thePnt Point. The resulting line will pass through it.
theDir Direction. The resulting line will be parallel to it.
-
-
Returns:
New GEOM_Object, containing the created line.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeLineTwoPnt (  self,
  thePnt1,
  thePnt2 
)
-
-
- -

-

Parameters:
- - - -
thePnt1 First of two points, defining the line.
thePnt2 Second of two points, defining the line.
-
-
Returns:
New GEOM_Object, containing the created line.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakePlane (  self,
  thePnt,
  theVec,
  theTrimSize 
)
-
-
- -

-

Parameters:
- - - - -
thePnt Point, the plane has to pass through.
theVec Vector, defining the plane normal direction.
theTrimSize Half size of a side of quadrangle face, representing the plane.
-
-
Returns:
New GEOM_Object, containing the created plane.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakePlaneThreePnt (  self,
  thePnt1,
  thePnt2,
  thePnt3,
  theTrimSize 
)
-
-
- -

-

Parameters:
- - - - - -
thePnt1 First of three points, defining the plane.
thePnt2 Second of three points, defining the plane.
thePnt3 Fird of three points, defining the plane.
theTrimSize Half size of a side of quadrangle face, representing the plane.
-
-
Returns:
New GEOM_Object, containing the created plane.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakePlaneFace (  self,
  theFace,
  theTrimSize 
)
-
-
- -

-

Parameters:
- - - -
theFace Referenced plane or LCS(Marker).
theTrimSize New half size of a side of quadrangle face, representing the plane.
-
-
Returns:
New GEOM_Object, containing the created plane.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeMarker (  self,
  OX,
  OY,
  OZ,
  XDX,
  XDY,
  XDZ,
  YDX,
  YDY,
  YDZ 
)
-
-
- -

-

Parameters:
- - - - -
OX,OY,OZ Three coordinates of coordinate system origin.
XDX,XDY,XDZ Three components of OX direction
YDX,YDY,YDZ Three components of OY direction
-
-
Returns:
New GEOM_Object, containing the created coordinate system.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeMarkerPntTwoVec (  self,
  theOrigin,
  theXVec,
  theYVec 
)
-
-
- -

-

Parameters:
- - - - -
theOrigin Point of coordinate system origin.
theXVec Vector of X direction
theYVec Vector of Y direction
-
-
Returns:
New GEOM_Object, containing the created coordinate system.
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeArc (  self,
  thePnt1,
  thePnt2,
  thePnt3 
)
-
-
- -

-

Parameters:
- - - - -
thePnt1 Start point of the arc.
thePnt2 Middle point of the arc.
thePnt3 End point of the arc.
-
-
Returns:
New GEOM_Object, containing the created arc.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeArcCenter (  self,
  thePnt1,
  thePnt2,
  thePnt3,
  theSense 
)
-
-
- -

-

Parameters:
- - - - -
thePnt1 Center of the arc
thePnt2 Start point of the arc. (Gives also the radius of the arc)
thePnt3 End point of the arc (Gives also a direction)
-
-
Returns:
New GEOM_Object, containing the created arc.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeCircle (  self,
  thePnt,
  theVec,
  theR 
)
-
-
- -

-

Parameters:
- - - - -
thePnt Circle center.
theVec Vector, normal to the plane of the circle.
theR Circle radius.
-
-
Returns:
New GEOM_Object, containing the created circle.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeCircleThreePnt (  self,
  thePnt1,
  thePnt2,
  thePnt3 
)
-
-
- -

-

Parameters:
- - -
thePnt1,thePnt2,thePnt3 Points, defining the circle.
-
-
Returns:
New GEOM_Object, containing the created circle.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeEllipse (  self,
  thePnt,
  theVec,
  theRMajor,
  theRMinor 
)
-
-
- -

-

Parameters:
- - - - - -
thePnt Ellipse center.
theVec Vector, normal to the plane of the ellipse.
theRMajor Major ellipse radius.
theRMinor Minor ellipse radius.
-
-
Returns:
New GEOM_Object, containing the created ellipse.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakePolyline (  self,
  thePoints 
)
-
-
- -

-

Parameters:
- - -
thePoints Sequence of points for the polyline.
-
-
Returns:
New GEOM_Object, containing the created polyline.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeBezier (  self,
  thePoints 
)
-
-
- -

-

Parameters:
- - -
thePoints Sequence of points for the bezier curve.
-
-
Returns:
New GEOM_Object, containing the created bezier curve.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeInterpol (  self,
  thePoints 
)
-
-
- -

-

Parameters:
- - -
thePoints Sequence of points for the B-Spline curve.
-
-
Returns:
New GEOM_Object, containing the created B-Spline curve.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeSketcher (  self,
  theCommand,
  theWorkingPlane = [0 
)
-
-
- -

-
- Edges of the resulting wire or face will be arcs of circles and/or linear segments.
- Format of the description string have to be the following:

-"Sketcher[:F x1 y1]:CMD[:CMD[:CMD...]]"

-Where:

    -
  • x1, y1 are coordinates of the first sketcher point (zero by default),
  • CMD is one of
      -
    • "R angle" : Set the direction by angle
    • "D dx dy" : Set the direction by DX & DY
    -
    -
      -
    • "TT x y" : Create segment by point at X & Y
    • "T dx dy" : Create segment by point with DX & DY
    • "L length" : Create segment by direction & Length
    • "IX x" : Create segment by direction & Intersect. X
    • "IY y" : Create segment by direction & Intersect. Y
    -
    -
      -
    • "C radius length" : Create arc by direction, radius and length(in degree)
    -
    -
      -
    • "WW" : Close Wire (to finish)
    • "WF" : Close Wire and build face (to finish)
    -
-

-

Parameters:
- - - -
theCommand String, defining the sketcher in local coordinates of the working plane.
theWorkingPlane Nine double values, defining origin, OZ and OX directions of the working plane.
-
-
Returns:
New GEOM_Object, containing the created wire.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeSketcherOnPlane (  self,
  theCommand,
  theWorkingPlane 
)
-
-
- -

-
- For format of the description string see the previous method.
-

Parameters:
- - - -
theCommand String, defining the sketcher in local coordinates of the working plane.
theWorkingPlane Planar Face or LCS(Marker) of the working plane.
-
-
Returns:
New GEOM_Object, containing the created wire.
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeBox (  self,
  x1,
  y1,
  z1,
  x2,
  y2,
  z2 
)
-
-
- -

-Example: see GEOM_TestAll.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeBoxDXDYDZ (  self,
  theDX,
  theDY,
  theDZ 
)
-
-
- -

-Center of the box will be at point (DX/2, DY/2, DZ/2).

Parameters:
- - - - -
theDX Length of Box edges, parallel to OX axis.
theDY Length of Box edges, parallel to OY axis.
theDZ Length of Box edges, parallel to OZ axis.
-
-
Returns:
New GEOM_Object, containing the created box.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeBoxTwoPnt (  self,
  thePnt1,
  thePnt2 
)
-
-
- -

-

Parameters:
- - - -
thePnt1 First of two opposite vertices.
thePnt2 Second of two opposite vertices.
-
-
Returns:
New GEOM_Object, containing the created box.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeCylinder (  self,
  thePnt,
  theAxis,
  theR,
  theH 
)
-
-
- -

-

Parameters:
- - - - - -
thePnt Central point of cylinder base.
theAxis Cylinder axis.
theR Cylinder radius.
theH Cylinder height.
-
-
Returns:
New GEOM_Object, containing the created cylinder.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeCylinderRH (  self,
  theR,
  theH 
)
-
-
- -

-Axis of the cylinder will be collinear to the OZ axis of the coordinate system.

Parameters:
- - - -
theR Cylinder radius.
theH Cylinder height.
-
-
Returns:
New GEOM_Object, containing the created cylinder.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeSpherePntR (  self,
  thePnt,
  theR 
)
-
-
- -

-

Parameters:
- - - -
thePnt Sphere center.
theR Sphere radius.
-
-
Returns:
New GEOM_Object, containing the created sphere.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeSphere (  self,
  x,
  y,
  z,
  theR 
)
-
-
- -

-

Parameters:
- - - -
x,y,z Coordinates of sphere center.
theR Sphere radius.
-
-
Returns:
New GEOM_Object, containing the created sphere.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeSphereR (  self,
  theR 
)
-
-
- -

-

Parameters:
- - -
theR Sphere radius.
-
-
Returns:
New GEOM_Object, containing the created sphere.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeCone (  self,
  thePnt,
  theAxis,
  theR1,
  theR2,
  theH 
)
-
-
- -

-

Parameters:
- - - - - -
thePnt Central point of the first cone base.
theAxis Cone axis.
theR1 Radius of the first cone base.
theR2 Radius of the second cone base.
-
-
Note:
If both radiuses are non-zero, the cone will be truncated.

-If the radiuses are equal, a cylinder will be created instead.

-
Parameters:
- - -
theH Cone height.
-
-
Returns:
New GEOM_Object, containing the created cone.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeConeR1R2H (  self,
  theR1,
  theR2,
  theH 
)
-
-
- -

-Axis of the cone will be collinear to the OZ axis of the coordinate system.

Parameters:
- - - -
theR1 Radius of the first cone base.
theR2 Radius of the second cone base.
-
-
Note:
If both radiuses are non-zero, the cone will be truncated.

-If the radiuses are equal, a cylinder will be created instead.

-
Parameters:
- - -
theH Cone height.
-
-
Returns:
New GEOM_Object, containing the created cone.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeTorus (  self,
  thePnt,
  theVec,
  theRMajor,
  theRMinor 
)
-
-
- -

-

Parameters:
- - - - - -
thePnt Torus central point.
theVec Torus axis of symmetry.
theRMajor Torus major radius.
theRMinor Torus minor radius.
-
-
Returns:
New GEOM_Object, containing the created torus.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeTorusRR (  self,
  theRMajor,
  theRMinor 
)
-
-
- -

-

Parameters:
- - - -
theRMajor Torus major radius.
theRMinor Torus minor radius.
-
-
Returns:
New GEOM_Object, containing the created torus.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakePrism (  self,
  theBase,
  thePoint1,
  thePoint2 
)
-
-
- -

-

Parameters:
- - - - -
theBase Base shape to be extruded.
thePoint1 First end of extrusion vector.
thePoint2 Second end of extrusion vector.
-
-
Returns:
New GEOM_Object, containing the created prism.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakePrismVecH (  self,
  theBase,
  theVec,
  theH 
)
-
-
- -

-all the space, transfixed by the base shape during its translation along the vector on the given distance.

Parameters:
- - - - -
theBase Base shape to be extruded.
theVec Direction of extrusion.
theH Prism dimension along theVec.
-
-
Returns:
New GEOM_Object, containing the created prism.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakePipe (  self,
  theBase,
  thePath 
)
-
-
- -

-The path shape can be a wire or an edge.

Parameters:
- - - -
theBase Base shape to be extruded.
thePath Path shape to extrude the base shape along it.
-
-
Returns:
New GEOM_Object, containing the created pipe.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeRevolution (  self,
  theBase,
  theAxis,
  theAngle 
)
-
-
- -

-all the space, transfixed by the base shape during its rotation around the axis on the given angle.

Parameters:
- - - - -
theBase Base shape to be rotated.
theAxis Rotation axis.
theAngle Rotation angle in radians.
-
-
Returns:
New GEOM_Object, containing the created revolution.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeThruSections (  self,
  theSeqSections,
  theModeSolid,
  thePreci,
  theRuled 
)
-
-
- -

-

Parameters:
- - - - - -
theSeqSections - set of specified sections.
theModeSolid - mode defining building solid or shell
thePreci - precision 3D used for smoothing by default 1.e-6
theRuled - mode defining type of the result surfaces (ruled or smoothed).
-
-
Returns:
New GEOM_Object, containing the created shell or solid.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakePipeWithDifferentSections (  self,
  theSeqBases,
  theLocations,
  thePath,
  theWithContact,
  theWithCorrection 
)
-
-
- -

-The path shape can be a wire or an edge. the several profiles can be specified in the several locations of path.

Parameters:
- - - - - - -
theSeqBases - list of Bases shape to be extruded.
theLocations - list of locations on the path corresponding specified list of the Bases shapes. Number of locations should be equal to number of bases or list of locations can be empty.
thePath - Path shape to extrude the base shape along it.
theWithContact - the mode defining that the section is translated to be in contact with the spine.
- WithCorrection - defining that the section is rotated to be orthogonal to the spine tangent in the correspondent point
-
-
Returns:
New GEOM_Object, containing the created pipe.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakePipeWithShellSections (  self,
  theSeqBases,
  theSeqSubBases,
  theLocations,
  thePath,
  theWithContact,
  theWithCorrection 
)
-
-
- -

-The path shape can be a shell or a face. the several profiles can be specified in the several locations of path.

Parameters:
- - - - - - - -
theSeqBases - list of Bases shape to be extruded.
theSeqSubBases - list of corresponding subshapes of section shapes.
theLocations - list of locations on the path corresponding specified list of the Bases shapes. Number of locations should be equal to number of bases or list of locations can be empty.
thePath - Path shape to extrude the base shape along it.
theWithContact - the mode defining that the section is translated to be in contact with the spine.
- WithCorrection - defining that the section is rotated to be orthogonal to the spine tangent in the correspondent point
-
-
Returns:
New GEOM_Object, containing the created solids.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeEdge (  self,
  thePnt1,
  thePnt2 
)
-
-
- -

-

Parameters:
- - - -
thePnt1 Point for the first end of edge.
thePnt2 Point for the second end of edge.
-
-
Returns:
New GEOM_Object, containing the created edge.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeWire (  self,
  theEdgesAndWires 
)
-
-
- -

-

Parameters:
- - -
theEdgesAndWires List of edges and/or wires.
-
-
Returns:
New GEOM_Object, containing the created wire.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeFace (  self,
  theWire,
  isPlanarWanted 
)
-
-
- -

-

Parameters:
- - - -
theWire closed Wire or Edge to build the face on.
isPlanarWanted If TRUE, only planar face will be built. If impossible, NULL object will be returned.
-
-
Returns:
New GEOM_Object, containing the created face.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeFaceWires (  self,
  theWires,
  isPlanarWanted 
)
-
-
- -

-

Parameters:
- - - -
theWires List of closed wires or edges to build the face on.
isPlanarWanted If TRUE, only planar face will be built. If impossible, NULL object will be returned.
-
-
Returns:
New GEOM_Object, containing the created face.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeFaces (  self,
  theWires,
  isPlanarWanted 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeShell (  self,
  theFacesAndShells 
)
-
-
- -

-

Parameters:
- - -
theFacesAndShells List of faces and/or shells.
-
-
Returns:
New GEOM_Object, containing the created shell.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeSolid (  self,
  theShells 
)
-
-
- -

-

Parameters:
- - -
theShells Sequence of bounding shells.
-
-
Returns:
New GEOM_Object, containing the created solid.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeCompound (  self,
  theShapes 
)
-
-
- -

-

Parameters:
- - -
theShapes List of shapes to put in compound.
-
-
Returns:
New GEOM_Object, containing the created compound.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.NumberOfFaces (  self,
  theShape 
)
-
-
- -

-

Parameters:
- - -
theShape Shape to count faces of.
-
-
Returns:
Quantity of faces.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.NumberOfEdges (  self,
  theShape 
)
-
-
- -

-

Parameters:
- - -
theShape Shape to count edges of.
-
-
Returns:
Quantity of edges.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.ChangeOrientation (  self,
  theShape 
)
-
-
- -

-

Parameters:
- - -
theShape Shape to be reversed.
-
-
Returns:
The reversed copy of theShape.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.OrientationChange (  self,
  theShape 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetFreeFacesIDs (  self,
  theShape 
)
-
-
- -

-Free face is a face, which is not shared between two shells of the shape.

Parameters:
- - -
theShape Shape to find free faces in.
-
-
Returns:
List of IDs of all free faces, contained in theShape.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetSharedShapes (  self,
  theShape1,
  theShape2,
  theShapeType 
)
-
-
- -

-

Parameters:
- - - - -
theShape1 Shape to find sub-shapes in.
theShape2 Shape to find shared sub-shapes with.
theShapeType Type of sub-shapes to be retrieved.
-
-
Returns:
List of sub-shapes of theShape1, shared with theShape2.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetShapesOnPlane (  self,
  theShape,
  theShapeType,
  theAx1,
  theState 
)
-
-
- -

-

Parameters:
- - - - - -
theShape Shape to find sub-shapes of.
theShapeType Type of sub-shapes to be retrieved.
theAx1 Vector (or line, or linear edge), specifying normal direction and location of the plane to find shapes on.
theState The state of the subshapes to find. It can be one of ST_ON, ST_OUT, ST_ONOUT, ST_IN, ST_ONIN.
-
-
Returns:
List of all found sub-shapes.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetShapesOnPlaneIDs (  self,
  theShape,
  theShapeType,
  theAx1,
  theState 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetShapesOnPlaneWithLocation (  self,
  theShape,
  theShapeType,
  theAx1,
  thePnt,
  theState 
)
-
-
- -

-

Parameters:
- - - - - - -
theShape Shape to find sub-shapes of.
theShapeType Type of sub-shapes to be retrieved.
theAx1 Vector (or line, or linear edge), specifying normal direction of the plane to find shapes on.
thePnt Point specifying location of the plane to find shapes on.
theState The state of the subshapes to find. It can be one of ST_ON, ST_OUT, ST_ONOUT, ST_IN, ST_ONIN.
-
-
Returns:
List of all found sub-shapes.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetShapesOnPlaneWithLocationIDs (  self,
  theShape,
  theShapeType,
  theAx1,
  thePnt,
  theState 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetShapesOnCylinder (  self,
  theShape,
  theShapeType,
  theAxis,
  theRadius,
  theState 
)
-
-
- -

-

Parameters:
- - - - - - -
theShape Shape to find sub-shapes of.
theShapeType Type of sub-shapes to be retrieved.
theAxis Vector (or line, or linear edge), specifying axis of the cylinder to find shapes on.
theRadius Radius of the cylinder to find shapes on.
theState The state of the subshapes to find. It can be one of ST_ON, ST_OUT, ST_ONOUT, ST_IN, ST_ONIN.
-
-
Returns:
List of all found sub-shapes.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetShapesOnCylinderIDs (  self,
  theShape,
  theShapeType,
  theAxis,
  theRadius,
  theState 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetShapesOnSphere (  self,
  theShape,
  theShapeType,
  theCenter,
  theRadius,
  theState 
)
-
-
- -

-

Parameters:
- - - - - - -
theShape Shape to find sub-shapes of.
theShapeType Type of sub-shapes to be retrieved.
theCenter Point, specifying center of the sphere to find shapes on.
theRadius Radius of the sphere to find shapes on.
theState The state of the subshapes to find. It can be one of ST_ON, ST_OUT, ST_ONOUT, ST_IN, ST_ONIN.
-
-
Returns:
List of all found sub-shapes.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetShapesOnSphereIDs (  self,
  theShape,
  theShapeType,
  theCenter,
  theRadius,
  theState 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetShapesOnQuadrangle (  self,
  theShape,
  theShapeType,
  theTopLeftPoint,
  theTopRigthPoint,
  theBottomLeftPoint,
  theBottomRigthPoint,
  theState 
)
-
-
- -

-

Parameters:
- - - - - - - - -
theShape Shape to find sub-shapes of.
theShapeType Type of sub-shapes to be retrieved.
theTopLeftPoint Point, specifying top left corner of a quadrangle
theTopRigthPoint Point, specifying top right corner of a quadrangle
theBottomLeftPoint Point, specifying bottom left corner of a quadrangle
theBottomRigthPoint Point, specifying bottom right corner of a quadrangle
theState The state of the subshapes to find. It can be one of ST_ON, ST_OUT, ST_ONOUT, ST_IN, ST_ONIN.
-
-
Returns:
List of all found sub-shapes.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetShapesOnQuadrangleIDs (  self,
  theShape,
  theShapeType,
  theTopLeftPoint,
  theTopRigthPoint,
  theBottomLeftPoint,
  theBottomRigthPoint,
  theState 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetShapesOnBox (  self,
  theBox,
  theShape,
  theShapeType,
  theState 
)
-
-
- -

-

Parameters:
- - - - - -
theBox Shape for relative comparing.
theShape Shape to find sub-shapes of.
theShapeType Type of sub-shapes to be retrieved.
theState The state of the subshapes to find. It can be one of ST_ON, ST_OUT, ST_ONOUT, ST_IN, ST_ONIN.
-
-
Returns:
List of all found sub-shapes.
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetShapesOnBoxIDs (  self,
  theBox,
  theShape,
  theShapeType,
  theState 
)
-
-
- -

- -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetInPlace (  self,
  theShapeWhere,
  theShapeWhat 
)
-
-
- -

-

Parameters:
- - - -
theShapeWhere Shape to find sub-shapes of.
theShapeWhat Shape, specifying what to find.
-
-
Returns:
Group of all found sub-shapes or a single found sub-shape.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetSame (  self,
  theShapeWhere,
  theShapeWhat 
)
-
-
- -

-

Parameters:
- - - -
theShapeWhere Shape to find sub-shape of.
theShapeWhat Shape, specifying what to find.
-
-
Returns:
New GEOM_Object for found sub-shape.
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetSubShape (  self,
  aShape,
  ListOfID 
)
-
-
- -

-Example: see GEOM_TestAll.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetSubShapeID (  self,
  aShape,
  aSubShape 
)
-
-
- -

-Example: see GEOM_TestAll.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.SubShapeAll (  self,
  aShape,
  aType 
)
-
-
- -

-

Parameters:
- - - -
theShape Shape to be exploded.
theShapeType Type of sub-shapes to be retrieved.
-
-
Returns:
List of sub-shapes of type theShapeType, contained in theShape.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.SubShapeAllIDs (  self,
  aShape,
  aType 
)
-
-
- -

-

Parameters:
- - - -
theShape Shape to be exploded.
theShapeType Type of sub-shapes to be retrieved.
-
-
Returns:
List of IDs of sub-shapes.
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.SubShapeAllSorted (  self,
  aShape,
  aType 
)
-
-
- -

-Sub-shapes will be sorted by coordinates of their gravity centers.

Parameters:
- - - -
theShape Shape to be exploded.
theShapeType Type of sub-shapes to be retrieved.
-
-
Returns:
List of sub-shapes of type theShapeType, contained in theShape.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.SubShapeAllSortedIDs (  self,
  aShape,
  aType 
)
-
-
- -

-Sub-shapes will be sorted by coordinates of their gravity centers.

Parameters:
- - - -
theShape Shape to be exploded.
theShapeType Type of sub-shapes to be retrieved.
-
-
Returns:
List of IDs of sub-shapes.
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.SubShape (  self,
  aShape,
  aType,
  ListOfInd 
)
-
-
- -

-Each index is in range [1, Nb_Sub-Shapes_Of_Given_Type]

-Example: see GEOM_TestAll.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.SubShapeSorted (  self,
  aShape,
  aType,
  ListOfInd 
)
-
-
- -

-Each index is in range [1, Nb_Sub-Shapes_Of_Given_Type]

-Example: see GEOM_TestAll.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.ProcessShape (  self,
  theShape,
  theOperators,
  theParameters,
  theValues 
)
-
-
- -

-

Parameters:
- - - - - -
theShape Shape to be processed.
theOperators List of names of operators ("FixShape", "SplitClosedFaces", etc.).
theParameters List of names of parameters ("FixShape.Tolerance3d", "SplitClosedFaces.NbSplitPoints", etc.).
theValues List of values of parameters, in the same order as parameters are listed in theParameters list.
-
-
Returns:
New GEOM_Object, containing processed shape.
-Example: see GEOM_TestHealing.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.SuppressFaces (  self,
  theObject,
  theFaces 
)
-
-
- -

-

Parameters:
- - - -
theObject Shape to be processed.
theFaces Indices of faces to be removed, if EMPTY then the method removes ALL faces of the given object.
-
-
Returns:
New GEOM_Object, containing processed shape.
-Example: see GEOM_TestHealing.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeSewing (  self,
  ListShape,
  theTolerance 
)
-
-
- -

-Example: see GEOM_TestHealing.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.Sew (  self,
  theObject,
  theTolerance 
)
-
-
- -

-

Parameters:
- - - -
theObject Shape to be processed.
theTolerance Required tolerance value.
-
-
Returns:
New GEOM_Object, containing processed shape.
-Example: see MakeSewing() above -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.SuppressInternalWires (  self,
  theObject,
  theWires 
)
-
-
- -

-

Parameters:
- - - -
theObject Shape to be processed.
theWires Indices of wires to be removed, if EMPTY then the method removes ALL internal wires of the given object.
-
-
Returns:
New GEOM_Object, containing processed shape.
-Example: see GEOM_TestHealing.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.SuppressHoles (  self,
  theObject,
  theWires 
)
-
-
- -

-

Parameters:
- - - -
theObject Shape to be processed.
theWires Indices of wires to be removed, if EMPTY then the method removes ALL internal holes of the given object
-
-
Returns:
New GEOM_Object, containing processed shape.
-Example: see GEOM_TestHealing.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.CloseContour (  self,
  theObject,
  theWires,
  isCommonVertex 
)
-
-
- -

-

Parameters:
- - - - -
theObject Shape to be processed.
theWires Indexes of edge(s) and wire(s) to be closed within theObject's shape, if -1, then theObject itself is a wire.
isCommonVertex If TRUE : closure by creation of a common vertex, If FALS : closure by creation of an edge between ends.
-
-
Returns:
New GEOM_Object, containing processed shape.
-Example: see GEOM_TestHealing.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.DivideEdge (  self,
  theObject,
  theEdgeIndex,
  theValue,
  isByParameter 
)
-
-
- -

-

Parameters:
- - - - - -
theObject Shape to be processed.
theEdgeIndex Index of edge to be divided within theObject's shape, if -1, then theObject itself is the edge.
theValue Value of parameter on edge or length parameter, depending on isByParameter.
isByParameter If TRUE : theValue is treated as a curve parameter [0..1], if FALSE : theValue is treated as a length parameter [0..1]
-
-
Returns:
New GEOM_Object, containing processed shape.
-Example: see GEOM_TestHealing.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.ChangeOrientationShell (  self,
  theObject 
)
-
-
- -

-

Parameters:
- - -
theObject Shape to be processed. given shape
-
- -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.ChangeOrientationShellCopy (  self,
  theObject 
)
-
-
- -

-

Parameters:
- - -
theObject Shape to be processed.
-
-
Returns:
New GEOM_Object, containing processed shape.
- -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetFreeBoundary (  self,
  theObject 
)
-
-
- -

-

Parameters:
- - -
theObject Shape to get free boundary of.
-
-
Returns:
[status, theClosedWires, theOpenWires] status: FALSE, if an error(s) occured during the method execution. theClosedWires: Closed wires on the free boundary of the given shape. theOpenWires: Open wires on the free boundary of the given shape.
-Example: see GEOM_TestHealing.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeCopy (  self,
  theOriginal 
)
-
-
- -

-Example: see GEOM_TestAll.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeFilling (  self,
  theShape,
  theMinDeg,
  theMaxDeg,
  theTol2D,
  theTol3D,
  theNbIter 
)
-
-
- -

-

Parameters:
- - - - - - - -
theShape the compound of contours
theMinDeg a minimal degree
theMaxDeg a maximal degree
theTol2D a 2d tolerance
theTol3D a 3d tolerance
theNbIter a number of iteration
-
-
Returns:
New GEOM_Object, containing the created filling surface.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeGlueFaces (  self,
  theShape,
  theTolerance 
)
-
-
- -

-

Parameters:
- - - -
theShape Initial shape.
theTolerance Maximum distance between faces, which can be considered as coincident.
-
-
Returns:
New GEOM_Object, containing a copy of theShape without coincident faces.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetGlueFaces (  self,
  theShape,
  theTolerance 
)
-
-
- -

-

Parameters:
- - - -
theShape Initial shape.
theTolerance Maximum distance between faces, which can be considered as coincident.
-
-
Returns:
ListOfGO.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeGlueFacesByList (  self,
  theShape,
  theTolerance,
  theFaces 
)
-
-
- -

-

Parameters:
- - - - -
theShape Initial shape.
theTolerance Maximum distance between faces, which can be considered as coincident.
theFaces List of faces for gluing.
-
-
Returns:
New GEOM_Object, containing a copy of theShape without some faces.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeBoolean (  self,
  theShape1,
  theShape2,
  theOperation 
)
-
-
- -

-

Parameters:
- - - - -
theShape1 First argument for boolean operation.
theShape2 Second argument for boolean operation.
theOperation Indicates the operation to be done: 1 - Common, 2 - Cut, 3 - Fuse, 4 - Section.
-
-
Returns:
New GEOM_Object, containing the result shape.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeCommon (  self,
  s1,
  s2 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeCut (  self,
  s1,
  s2 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeFuse (  self,
  s1,
  s2 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeSection (  self,
  s1,
  s2 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakePartition (  self,
  ListShapes,
  ListTools = [],
  ListKeepInside = [],
  ListRemoveInside = [],
  Limit = ShapeType["SHAPE"],
  RemoveWebs = 0,
  ListMaterials = [] 
)
-
-
- -

-

Parameters:
- - - - -
ListShapes Shapes to be intersected.
ListTools Shapes to intersect theShapes. !!!NOTE: Each compound from ListShapes and ListTools will be exploded in order to avoid possible intersection between shapes from this compound.
Limit Type of resulting shapes (corresponding to TopAbs_ShapeEnum).
-
-After implementation new version of PartitionAlgo (October 2006) other parameters are ignored by current functionality. They are kept in this function only for support old versions. Ignored parameters:
Parameters:
- - - - - -
ListKeepInside Shapes, outside which the results will be deleted. Each shape from theKeepInside must belong to theShapes also.
ListRemoveInside Shapes, inside which the results will be deleted. Each shape from theRemoveInside must belong to theShapes also.
RemoveWebs If TRUE, perform Glue 3D algorithm.
ListMaterials Material indices for each shape. Make sence, only if theRemoveWebs is TRUE.
-
-
Returns:
New GEOM_Object, containing the result shapes.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakePartitionNonSelfIntersectedShape (  self,
  ListShapes,
  ListTools = [],
  ListKeepInside = [],
  ListRemoveInside = [],
  Limit = ShapeType["SHAPE"],
  RemoveWebs = 0,
  ListMaterials = [] 
)
-
-
- -

-This method may be useful if it is needed to make a partition for compound contains nonintersected shapes. Performance will be better since intersection between shapes from compound is not performed.

-Description of all parameters as in previous method MakePartition()

-!!!NOTE: Passed compounds (via ListShapes or via ListTools) have to consist of nonintersecting shapes.

-

Returns:
New GEOM_Object, containing the result shapes.
- -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.Partition (  self,
  ListShapes,
  ListTools = [],
  ListKeepInside = [],
  ListRemoveInside = [],
  Limit = ShapeType["SHAPE"],
  RemoveWebs = 0,
  ListMaterials = [] 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeHalfPartition (  self,
  theShape,
  thePlane 
)
-
-
- -

-

Parameters:
- - - -
theShape Shape to be intersected.
thePlane Tool shape, to intersect theShape.
-
-
Returns:
New GEOM_Object, containing the result shape.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeTranslationTwoPoints (  self,
  theObject,
  thePoint1,
  thePoint2 
)
-
-
- -

-

Parameters:
- - - - -
theObject The object to be translated.
thePoint1 Start point of translation vector.
thePoint2 End point of translation vector.
-
-
Returns:
New GEOM_Object, containing the translated object.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeTranslation (  self,
  theObject,
  theDX,
  theDY,
  theDZ 
)
-
-
- -

-

Parameters:
- - - -
theObject The object to be translated.
theDX,theDY,theDZ Components of translation vector.
-
-
Returns:
New GEOM_Object, containing the translated object.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeTranslationVector (  self,
  theObject,
  theVector 
)
-
-
- -

-

Parameters:
- - - -
theObject The object to be translated.
theVector The translation vector.
-
-
Returns:
New GEOM_Object, containing the translated object.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeRotation (  self,
  theObject,
  theAxis,
  theAngle 
)
-
-
- -

-

Parameters:
- - - - -
theObject The object to be rotated.
theAxis Rotation axis.
theAngle Rotation angle in radians.
-
-
Returns:
New GEOM_Object, containing the rotated object.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeRotationThreePoints (  self,
  theObject,
  theCentPoint,
  thePoint1,
  thePoint2 
)
-
-
- -

-

Parameters:
- - - - -
theObject The object to be rotated.
theCentPoint central point - the axis is the vector perpendicular to the plane containing the three points.
thePoint1 and thePoint2 - in a perpendicular plan of the axis.
-
-
Returns:
New GEOM_Object, containing the rotated object.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeScaleTransform (  self,
  theObject,
  thePoint,
  theFactor 
)
-
-
- -

-

Parameters:
- - - - -
theObject The object to be scaled.
thePoint Center point for scaling.
theFactor Scaling factor value.
-
-
Returns:
New GEOM_Object, containing the scaled shape.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeMirrorByPlane (  self,
  theObject,
  thePlane 
)
-
-
- -

-

Parameters:
- - - -
theObject The object to be mirrored.
thePlane Plane of symmetry.
-
-
Returns:
New GEOM_Object, containing the mirrored shape.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeMirrorByAxis (  self,
  theObject,
  theAxis 
)
-
-
- -

-

Parameters:
- - - -
theObject The object to be mirrored.
theAxis Axis of symmetry.
-
-
Returns:
New GEOM_Object, containing the mirrored shape.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeMirrorByPoint (  self,
  theObject,
  thePoint 
)
-
-
- -

-

Parameters:
- - - -
theObject The object to be mirrored.
thePoint Point of symmetry.
-
-
Returns:
New GEOM_Object, containing the mirrored shape.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakePosition (  self,
  theObject,
  theStartLCS,
  theEndLCS 
)
-
-
- -

-

Parameters:
- - - - -
theObject The object to be displaced.
theStartLCS Coordinate system to perform displacement from it. If theStartLCS is NULL, displacement will be performed from global CS. If theObject itself is used as theStartLCS, its location will be changed to theEndLCS.
theEndLCS Coordinate system to perform displacement to it.
-
-
Returns:
New GEOM_Object, containing the displaced shape.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeOffset (  self,
  theObject,
  theOffset 
)
-
-
- -

-

Parameters:
- - - -
theObject The base object for the offset.
theOffset Offset value.
-
-
Returns:
New GEOM_Object, containing the offset object.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeMultiTranslation1D (  self,
  theObject,
  theVector,
  theStep,
  theNbTimes 
)
-
-
- -

-

Parameters:
- - - - - -
theObject The object to be translated.
theVector Direction of the translation.
theStep Distance to translate on.
theNbTimes Quantity of translations to be done.
-
-
Returns:
New GEOM_Object, containing compound of all the shapes, obtained after each translation.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeMultiTranslation2D (  self,
  theObject,
  theVector1,
  theStep1,
  theNbTimes1,
  theVector2,
  theStep2,
  theNbTimes2 
)
-
-
- -

-

Parameters:
- - - - - - - - -
theObject The object to be translated.
theVector1 Direction of the first translation.
theStep1 Step of the first translation.
theNbTimes1 Quantity of translations to be done along theVector1.
theVector2 Direction of the second translation.
theStep2 Step of the second translation.
theNbTimes2 Quantity of translations to be done along theVector2.
-
-
Returns:
New GEOM_Object, containing compound of all the shapes, obtained after each translation.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MultiRotate1D (  self,
  theObject,
  theAxis,
  theNbTimes 
)
-
-
- -

-Rotation angle will be 2*PI/theNbTimes.

Parameters:
- - - - -
theObject The object to be rotated.
theAxis The rotation axis.
theNbTimes Quantity of rotations to be done.
-
-
Returns:
New GEOM_Object, containing compound of all the shapes, obtained after each rotation.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MultiRotate2D (  self,
  theObject,
  theAxis,
  theAngle,
  theNbTimes1,
  theStep,
  theNbTimes2 
)
-
-
- -

-Translation direction passes through center of gravity of rotated shape and its projection on the rotation axis.

Parameters:
- - - - - - - -
theObject The object to be rotated.
theAxis Rotation axis.
theAngle Rotation angle in graduces.
theNbTimes1 Quantity of rotations to be done.
theStep Translation distance.
theNbTimes2 Quantity of translations to be done.
-
-
Returns:
New GEOM_Object, containing compound of all the shapes, obtained after each transformation.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeMultiRotation1D (  self,
  aShape,
  aDir,
  aPoint,
  aNbTimes 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeMultiRotation2D (  self,
  aShape,
  aDir,
  aPoint,
  anAngle,
  nbtimes1,
  aStep,
  nbtimes2 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeFilletAll (  self,
  theShape,
  theR 
)
-
-
- -

-

Parameters:
- - - -
theShape Shape, to perform fillet on.
theR Fillet radius.
-
-
Returns:
New GEOM_Object, containing the result shape.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeFillet (  self,
  theShape,
  theR,
  theShapeType,
  theListShapes 
)
-
-
- -

-

Parameters:
- - - - - -
theShape Shape, to perform fillet on.
theR Fillet radius.
theShapeType Type of shapes in <theListShapes>.
theListShapes Global indices of edges/faces to perform fillet on.
-
-
Note:
Global index of sub-shape can be obtained, using method geompy.GetSubShapeID().
-
Returns:
New GEOM_Object, containing the result shape.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeChamferAll (  self,
  theShape,
  theD 
)
-
-
- -

-

Parameters:
- - - -
theShape Shape, to perform chamfer on.
theD Chamfer size along each face.
-
-
Returns:
New GEOM_Object, containing the result shape.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeChamferEdge (  self,
  theShape,
  theD1,
  theD2,
  theFace1,
  theFace2 
)
-
-
- -

-

Parameters:
- - - - - -
theShape Shape, to perform chamfer on.
theD1 Chamfer size along theFace1.
theD2 Chamfer size along theFace2.
theFace1,theFace2 Global indices of two faces of theShape.
-
-
Note:
Global index of sub-shape can be obtained, using method geompy.GetSubShapeID().
-
Returns:
New GEOM_Object, containing the result shape.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeChamferFaces (  self,
  theShape,
  theD1,
  theD2,
  theFaces 
)
-
-
- -

-

Parameters:
- - - - - -
theShape Shape, to perform chamfer on.
theD1 Chamfer size along face from theFaces. If both faces, connected to the edge, are in theFaces, theD1 will be get along face, which is nearer to theFaces beginning.
theD2 Chamfer size along another of two faces, connected to the edge.
theFaces Sequence of global indices of faces of theShape.
-
-
Note:
Global index of sub-shape can be obtained, using method geompy.GetSubShapeID().
-
Returns:
New GEOM_Object, containing the result shape.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeChamfer (  self,
  aShape,
  d1,
  d2,
  aShapeType,
  ListShape 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.Archimede (  self,
  theShape,
  theWeight,
  theWaterDensity,
  theMeshDeflection 
)
-
-
- -

-The object presenting the resulting face is returned.

Parameters:
- - - - - -
theShape Shape to be put in water.
theWeight Weight og the shape.
theWaterDensity Density of the water.
theMeshDeflection Deflection of the mesh, using to compute the section.
-
-
Returns:
New GEOM_Object, containing a section of theShape by a plane, corresponding to water level.
-Example: see GEOM_TestAll.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.PointCoordinates (  self,
  Point 
)
-
-
- -

-

Returns:
[x, y, z]
-Example: see GEOM_TestMeasures.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.BasicProperties (  self,
  theShape 
)
-
-
- -

-

Parameters:
- - -
theShape Shape to define properties of.
-
-
Returns:
[theLength, theSurfArea, theVolume] theLength: Summarized length of all wires of the given shape. theSurfArea: Area of surface of the given shape. theVolume: Volume of the given shape.
-Example: see GEOM_TestMeasures.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.BoundingBox (  self,
  theShape 
)
-
-
- -

-

Parameters:
- - -
theShape Shape to obtain bounding box of.
-
-
Returns:
[Xmin,Xmax, Ymin,Ymax, Zmin,Zmax] Xmin,Xmax: Limits of shape along OX axis. Ymin,Ymax: Limits of shape along OY axis. Zmin,Zmax: Limits of shape along OZ axis.
-Example: see GEOM_TestMeasures.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.Inertia (  self,
  theShape 
)
-
-
- -

-

Parameters:
- - -
theShape Shape to calculate inertia of.
-
-
Returns:
[I11,I12,I13, I21,I22,I23, I31,I32,I33, Ix,Iy,Iz] I(1-3)(1-3): Components of the inertia matrix of the given shape. Ix,Iy,Iz: Moments of inertia of the given shape.
-Example: see GEOM_TestMeasures.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MinDistance (  self,
  theShape1,
  theShape2 
)
-
-
- -

-

Parameters:
- - -
theShape1,theShape2 Shapes to find minimal distance between.
-
-
Returns:
Value of the minimal distance between the given shapes.
-Example: see GEOM_TestMeasures.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.Tolerance (  self,
  theShape 
)
-
-
- -

-

Parameters:
- - -
theShape Shape, to get tolerances of.
-
-
Returns:
[FaceMin,FaceMax, EdgeMin,EdgeMax, VertMin,VertMax] FaceMin,FaceMax: Min and max tolerances of the faces. EdgeMin,EdgeMax: Min and max tolerances of the edges. VertMin,VertMax: Min and max tolerances of the vertices.
-Example: see GEOM_TestMeasures.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.WhatIs (  self,
  theShape 
)
-
-
- -

-

Parameters:
- - -
theShape Shape to be described.
-
-
Returns:
Description of the given shape.
-Example: see GEOM_TestMeasures.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeCDG (  self,
  theShape 
)
-
-
- -

-

Parameters:
- - -
theShape Shape to define centre of mass of.
-
-
Returns:
New GEOM_Object, containing the created point.
-Example: see GEOM_TestMeasures.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.CheckShape (  self,
  theShape,
  theIsCheckGeom = 0 
)
-
-
- -

-

Parameters:
- - - -
theShape Shape to check validity of.
theIsCheckGeom If FALSE, only the shape's topology will be checked, if TRUE, the shape's geometry will be checked also.
-
-
Returns:
TRUE, if the shape "seems to be valid". If theShape is invalid, prints a description of problem.
-Example: see GEOM_TestMeasures.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetPosition (  self,
  theShape 
)
-
-
- -

-Origin of the LCS is situated at the shape's center of mass. Axes of the LCS are obtained from shape's location or, if the shape is a planar face, from position of its plane.

-

Parameters:
- - -
theShape Shape to calculate position of.
-
-
Returns:
[Ox,Oy,Oz, Zx,Zy,Zz, Xx,Xy,Xz]. Ox,Oy,Oz: Coordinates of shape's LCS origin. Zx,Zy,Zz: Coordinates of shape's LCS normal(main) direction. Xx,Xy,Xz: Coordinates of shape's LCS X direction.
-Example: see GEOM_TestMeasures.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.KindOfShape (  self,
  theShape 
)
-
-
- -

-

Parameters:
- - -
theShape Shape to get a kind of.
-
-
Returns:
Returns a kind of shape in terms of GEOM_IKindOfShape.shape_kind enumeration and a list of parameters, describing the shape.
-
Note:
Concrete meaning of each value, returned via theIntegers or theDoubles list depends on the kind of the shape. The full list of possible outputs is:
-geompy.kind.COMPOUND nb_solids nb_faces nb_edges nb_vertices geompy.kind.COMPSOLID nb_solids nb_faces nb_edges nb_vertices

-geompy.kind.SHELL geompy.info.CLOSED nb_faces nb_edges nb_vertices geompy.kind.SHELL geompy.info.UNCLOSED nb_faces nb_edges nb_vertices

-geompy.kind.WIRE geompy.info.CLOSED nb_edges nb_vertices geompy.kind.WIRE geompy.info.UNCLOSED nb_edges nb_vertices

-geompy.kind.SPHERE xc yc zc R geompy.kind.CYLINDER xb yb zb dx dy dz R H geompy.kind.BOX xc yc zc ax ay az geompy.kind.ROTATED_BOX xc yc zc zx zy zz xx xy xz ax ay az geompy.kind.TORUS xc yc zc dx dy dz R_1 R_2 geompy.kind.CONE xb yb zb dx dy dz R_1 R_2 H geompy.kind.POLYHEDRON nb_faces nb_edges nb_vertices geompy.kind.SOLID nb_faces nb_edges nb_vertices

-geompy.kind.SPHERE2D xc yc zc R geompy.kind.CYLINDER2D xb yb zb dx dy dz R H geompy.kind.TORUS2D xc yc zc dx dy dz R_1 R_2 geompy.kind.CONE2D xc yc zc dx dy dz R_1 R_2 H geompy.kind.DISK_CIRCLE xc yc zc dx dy dz R geompy.kind.DISK_ELLIPSE xc yc zc dx dy dz R_1 R_2 geompy.kind.POLYGON xo yo zo dx dy dz nb_edges nb_vertices geompy.kind.PLANE xo yo zo dx dy dz geompy.kind.PLANAR xo yo zo dx dy dz nb_edges nb_vertices geompy.kind.FACE nb_edges nb_vertices

-geompy.kind.CIRCLE xc yc zc dx dy dz R geompy.kind.ARC_CIRCLE xc yc zc dx dy dz R x1 y1 z1 x2 y2 z2 geompy.kind.ELLIPSE xc yc zc dx dy dz R_1 R_2 geompy.kind.ARC_ELLIPSE xc yc zc dx dy dz R_1 R_2 x1 y1 z1 x2 y2 z2 geompy.kind.LINE xo yo zo dx dy dz geompy.kind.SEGMENT x1 y1 z1 x2 y2 z2 geompy.kind.EDGE nb_vertices

-geompy.kind.VERTEX x y z

-Example: see GEOM_TestMeasures.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.Import (  self,
  theFileName,
  theFormatName 
)
-
-
- -

-

Parameters:
- - - -
theFileName The file, containing the shape.
theFormatName Specify format for the file reading. Available formats can be obtained with InsertOp.ImportTranslators() method.
-
-
Returns:
New GEOM_Object, containing the imported shape.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.ImportBREP (  self,
  theFileName 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.ImportIGES (  self,
  theFileName 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.ImportSTEP (  self,
  theFileName 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.Export (  self,
  theObject,
  theFileName,
  theFormatName 
)
-
-
- -

-

Parameters:
- - - - -
theObject Shape to be stored in the file.
theFileName Name of the file to store the given shape in.
theFormatName Specify format for the shape storage. Available formats can be obtained with InsertOp.ImportTranslators() method.
-
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.ExportBREP (  self,
  theObject,
  theFileName 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.ExportIGES (  self,
  theObject,
  theFileName 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.ExportSTEP (  self,
  theObject,
  theFileName 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeQuad (  self,
  E1,
  E2,
  E3,
  E4 
)
-
-
- -

-Order of Edges is not important. It is not necessary that edges share the same vertex.

Parameters:
- - -
E1,E2,E3,E4 Edges for the face bound.
-
-
Returns:
New GEOM_Object, containing the created face.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeQuad2Edges (  self,
  E1,
  E2 
)
-
-
- -

-The missing edges will be built by creating the shortest ones.

Parameters:
- - -
E1,E2 Two opposite edges for the face.
-
-
Returns:
New GEOM_Object, containing the created face.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeQuad4Vertices (  self,
  V1,
  V2,
  V3,
  V4 
)
-
-
- -

-The missing edges will be built by creating the shortest ones.

Parameters:
- - -
V1,V2,V3,V4 Corner vertices for the face.
-
-
Returns:
New GEOM_Object, containing the created face.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeHexa (  self,
  F1,
  F2,
  F3,
  F4,
  F5,
  F6 
)
-
-
- -

-Order of faces is not important. It is not necessary that Faces share the same edge.

Parameters:
- - -
F1,F2,F3,F4,F5,F6 Faces for the hexahedral solid.
-
-
Returns:
New GEOM_Object, containing the created solid.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeHexa2Faces (  self,
  F1,
  F2 
)
-
-
- -

-The missing faces will be built by creating the smallest ones.

Parameters:
- - -
F1,F2 Two opposite faces for the hexahedral solid.
-
-
Returns:
New GEOM_Object, containing the created solid.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetPoint (  self,
  theShape,
  theX,
  theY,
  theZ,
  theEpsilon 
)
-
-
- -

-

Parameters:
- - - - -
theShape Block or a compound of blocks.
theX,theY,theZ Coordinates of the sought vertex.
theEpsilon Maximum allowed distance between the resulting vertex and point with the given coordinates.
-
-
Returns:
New GEOM_Object, containing the found vertex.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetEdge (  self,
  theShape,
  thePoint1,
  thePoint2 
)
-
-
- -

-

Parameters:
- - - -
theShape Block or a compound of blocks.
thePoint1,thePoint2 Points, close to the ends of the desired edge.
-
-
Returns:
New GEOM_Object, containing the found edge.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetEdgeNearPoint (  self,
  theShape,
  thePoint 
)
-
-
- -

-

Parameters:
- - - -
theShape Block or a compound of blocks.
thePoint Point, close to the desired edge.
-
-
Returns:
New GEOM_Object, containing the found edge.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetFaceByPoints (  self,
  theShape,
  thePoint1,
  thePoint2,
  thePoint3,
  thePoint4 
)
-
-
- -

-

Parameters:
- - - -
theShape Block or a compound of blocks.
thePoint1-thePoint4 Points, close to the corners of the desired face.
-
-
Returns:
New GEOM_Object, containing the found face.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetFaceByEdges (  self,
  theShape,
  theEdge1,
  theEdge2 
)
-
-
- -

-

Parameters:
- - - -
theShape Block or a compound of blocks.
theEdge1,theEdge2 Edges, close to the edges of the desired face.
-
-
Returns:
New GEOM_Object, containing the found face.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetOppositeFace (  self,
  theBlock,
  theFace 
)
-
-
- -

-

Parameters:
- - - -
theBlock Must be a hexahedral solid.
theFace Face of theBlock, opposite to the desired face.
-
-
Returns:
New GEOM_Object, containing the found face.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetFaceNearPoint (  self,
  theShape,
  thePoint 
)
-
-
- -

-

Parameters:
- - - -
theShape Block or a compound of blocks.
thePoint Point, close to the desired face.
-
-
Returns:
New GEOM_Object, containing the found face.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetFaceByNormale (  self,
  theBlock,
  theVector 
)
-
-
- -

-

Parameters:
- - - -
theShape Block or a compound of blocks.
theVector Vector, close to the normale of the desired face.
-
-
Returns:
New GEOM_Object, containing the found face.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.CheckCompoundOfBlocks (  self,
  theCompound 
)
-
-
- -

-To be considered as a compound of blocks, the given shape must satisfy the following conditions:

    -
  • Each element of the compound should be a Block (6 faces and 12 edges).
  • A connection between two Blocks should be an entire quadrangle face or an entire edge.
  • The compound should be connexe.
  • The glue between two quadrangle faces should be applied.
    Parameters:
    - - -
    theCompound The compound to check.
    -
    -
    Returns:
    TRUE, if the given shape is a compound of blocks. If theCompound is not valid, prints all discovered errors.
    -Example: see GEOM_Spanner.py
- -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.RemoveExtraEdges (  self,
  theShape 
)
-
-
- -

-Unite faces and edges, sharing one surface. It means that this faces must have references to one C++ surface object (handle).

Parameters:
- - -
theShape The compound or single solid to remove irregular edges from.
-
-
Returns:
Improved shape.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.CheckAndImprove (  self,
  theShape 
)
-
-
- -

-Fix all detected errors.

Note:
Single block can be also fixed by this method.
-
Parameters:
- - -
theCompound The compound to check and improve.
-
-
Returns:
Improved compound.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeBlockExplode (  self,
  theCompound,
  theMinNbFaces,
  theMaxNbFaces 
)
-
-
- -

-

Parameters:
- - - - -
theCompound The compound to explode.
theMinNbFaces If solid has lower number of faces, it is not a block.
theMaxNbFaces If solid has higher number of faces, it is not a block.
-
-
Note:
If theMaxNbFaces = 0, the maximum number of faces is not restricted.
-
Returns:
List of GEOM_Objects, containing the retrieved blocks.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetBlockNearPoint (  self,
  theCompound,
  thePoint 
)
-
-
- -

-

Parameters:
- - - -
theCompound Compound, to find block in.
thePoint Point, close to the desired block. If the point lays on boundary between some blocks, we return block with nearest center.
-
-
Returns:
New GEOM_Object, containing the found block.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetBlockByParts (  self,
  theCompound,
  theParts 
)
-
-
- -

-

Parameters:
- - - -
theCompound Compound, to find block in.
theParts List of faces and/or edges and/or vertices to be parts of the found block.
-
-
Returns:
New GEOM_Object, containing the found block.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetBlocksByParts (  self,
  theCompound,
  theParts 
)
-
-
- -

-

Parameters:
- - - -
theCompound Compound, to find blocks in.
theParts List of faces and/or edges and/or vertices to be parts of the found blocks.
-
-
Returns:
List of GEOM_Objects, containing the found blocks.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeMultiTransformation1D (  self,
  Block,
  DirFace1,
  DirFace2,
  NbTimes 
)
-
-
- -

-Transformation is defined so, as to superpose direction faces.

Parameters:
- - - - - -
Block Hexahedral solid to be multi-transformed.
DirFace1 ID of First direction face.
DirFace2 ID of Second direction face.
NbTimes Quantity of transformations to be done.
-
-
Note:
Unique ID of sub-shape can be obtained, using method GetSubShapeID().
-
Returns:
New GEOM_Object, containing the result shape.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.MakeMultiTransformation2D (  self,
  Block,
  DirFace1U,
  DirFace2U,
  NbTimesU,
  DirFace1V,
  DirFace2V,
  NbTimesV 
)
-
-
- -

-

Parameters:
- - - - - -
Block Hexahedral solid to be multi-transformed.
DirFace1U,DirFace2U IDs of Direction faces for the first transformation.
DirFace1V,DirFace2V IDs of Direction faces for the second transformation.
NbTimesU,NbTimesV Quantity of transformations to be done.
-
-
Returns:
New GEOM_Object, containing the result shape.
-Example: see GEOM_Spanner.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.Propagate (  self,
  theShape 
)
-
-
- -

-Propagation group is a set of all edges, opposite to one (main) edge of this group directly or through other opposite edges. Notion of Opposite Edge make sence only on quadrangle face.

Parameters:
- - -
theShape Shape to build propagation groups on.
-
-
Returns:
List of GEOM_Objects, each of them is a propagation group.
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.CreateGroup (  self,
  theMainShape,
  theShapeType 
)
-
-
- -

-

Parameters:
- - - -
theMainShape is a GEOM object on which the group is selected
theShapeType defines a shape type of the group
-
-
Returns:
a newly created GEOM group
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.AddObject (  self,
  theGroup,
  theSubShapeID 
)
-
-
- -

-

Parameters:
- - - -
theGroup is a GEOM group to which the new sub shape is added
theSubShapeID is a sub shape ID in the main object.
-
-
Note:
Use method GetSubShapeID() to get an unique ID of the sub shape
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.RemoveObject (  self,
  theGroup,
  theSubShapeID 
)
-
-
- -

-

Parameters:
- - - -
theGroup is a GEOM group from which the new sub shape is removed
theSubShapeID is a sub shape ID in the main object.
-
-
Note:
Use method GetSubShapeID() to get an unique ID of the sub shape
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.UnionList (  self,
  theGroup,
  theSubShapes 
)
-
-
- -

-No errors, if some shapes are alredy included.

Parameters:
- - - -
theGroup is a GEOM group to which the new sub shapes are added.
theSubShapes is a list of sub shapes to be added.
-
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.UnionIDs (  self,
  theGroup,
  theSubShapes 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.DifferenceList (  self,
  theGroup,
  theSubShapes 
)
-
-
- -

-No errors, if some shapes are not included.

Parameters:
- - - -
theGroup is a GEOM group from which the sub-shapes are removed.
theSubShapes is a list of sub-shapes to be removed.
-
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.DifferenceIDs (  self,
  theGroup,
  theSubShapes 
)
-
-
- -

-Example: see GEOM_TestOthers.py -

-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetObjectIDs (  self,
  theGroup 
)
-
-
- -

-

Parameters:
- - -
theGroup is a GEOM group for which a list of IDs is requested
-
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetType (  self,
  theGroup 
)
-
-
- -

-

Parameters:
- - -
theGroup is a GEOM group which type is returned.
-
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetMainShape (  self,
  theGroup 
)
-
-
- -

-

Parameters:
- - -
theGroup is a GEOM group for which a main shape object is requested
-
-
Returns:
a GEOM object which is a main shape for theGroup
-Example: see GEOM_TestOthers.py -
-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.GetEdgesByLength (  self,
  theShape,
  min_length,
  max_length,
  include_min = 1,
  include_max = 1 
)
-
-
- -

-If include_min/max == 0, edges with length == min/max_length will not be included in result. -

-

- -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.SelectEdges (  self,
  min_length,
  max_length,
  include_min = 1,
  include_max = 1 
)
-
-
- -

-If include_min/max == 0, edges with length == min/max_length will not be included in result. -

-

- -

-
- - - - - - - - - - - - - - - - - - -
def geompyDC.geompyDC.addPath (  self,
  Path 
)
-
-
- -

- -

-

-


Field Documentation

- -
- -
- -

- -

-

- -

- -
- -

- -

-

- -

- -
- -

- -

-

- -

- -
- -

- -

-

- -

- -
- -

- -

-

- -

- -
- -

- -

-

- -

- -
- -

- -

-

- -

- -
- -

- -

-

- -

- -
- -

- -

-

- -

- -
- -

- -

-

- -

- -
- -

- -

-

- -

- -
- -

- -

-

- -

- -
- -

- -

-

- -

- -
- -

- -

-

- -

- -
- -

- -

-

- -

- -
- -

- -

-

- -

- - diff --git a/doc/salome/gui/GEOM/geompy_doc/classgeompyDC_1_1geompyDC__inherit__graph.jpg b/doc/salome/gui/GEOM/geompy_doc/classgeompyDC_1_1geompyDC__inherit__graph.jpg deleted file mode 100644 index b635532c1..000000000 Binary files a/doc/salome/gui/GEOM/geompy_doc/classgeompyDC_1_1geompyDC__inherit__graph.jpg and /dev/null differ diff --git a/doc/salome/gui/GEOM/geompy_doc/classgeompyDC_1_1info.html b/doc/salome/gui/GEOM/geompy_doc/classgeompyDC_1_1info.html deleted file mode 100644 index dc220ec43..000000000 --- a/doc/salome/gui/GEOM/geompy_doc/classgeompyDC_1_1info.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - - Main Page - - - - -  - - - - -

geompyDC.info Class Reference

- - - - - - - - -

Static Public Attributes

int UNKNOWN = 0
int CLOSED = 1
int UNCLOSED = 2
-

Field Documentation

- -
-
- - - - -
int geompyDC.info.UNKNOWN = 0 [static]
-
-
- -

- -

-

- -

-
- - - - -
int geompyDC.info.CLOSED = 1 [static]
-
-
- -

- -

-

- -

-
- - - - -
int geompyDC.info.UNCLOSED = 2 [static]
-
-
- -

- -

-

- -

- - diff --git a/doc/salome/gui/GEOM/geompy_doc/doxygen.css b/doc/salome/gui/GEOM/geompy_doc/doxygen.css deleted file mode 100644 index dc9da5220..000000000 --- a/doc/salome/gui/GEOM/geompy_doc/doxygen.css +++ /dev/null @@ -1,218 +0,0 @@ -H1 { - text-align: center; - font-family: Geneva, Arial, Helvetica, sans-serif; -} -H2 { - font-family: Geneva, Arial, Helvetica, sans-serif; -} -CAPTION { font-weight: bold } -DIV.qindex { - width: 100%; - background-color: #eeeeff; - border: 1px solid #B0B0B0; - text-align: center; - margin: 2px; - padding: 2px; - line-height: 120%; -} -A.qindex { - text-decoration: none; - font-weight: bold; - color: #1A419D; - padding: 2px; -} -A.qindex:visited { - text-decoration: none; - font-weight: bold; - color: #1A419D - padding: 2px; -} -A.qindex:hover { - text-decoration: none; - background-color: #ddddff; - padding: 2px; -} -A.qindexHL { - text-decoration: none; - font-weight: bold; - background-color: #6666cc; - color: #ffffff; - padding: 2px 6px; - border: 1px double #9295C2; -} -A.qindexHL:hover { - text-decoration: none; - background-color: #6666cc; - color: #ffffff; - padding: 2px 6px; -} -A.qindexHL:visited { text-decoration: none; background-color: #6666cc; color: #ffffff } -A.el { text-decoration: none; font-weight: bold } -A.elRef { font-weight: bold } -A.code { text-decoration: none; font-weight: normal; color: #1A419D} -A.codeRef { font-weight: normal; color: #1A419D} -A:hover { text-decoration: none; background-color: #f2f2ff } -DL.el { margin-left: -1cm } -PRE.fragment { - border: 1px solid #CCCCCC; - background-color: #f5f5f5; - margin-top: 4px; - margin-bottom: 4px; - margin-left: 2px; - margin-right: 8px; - padding-left: 6px; - padding-right: 6px; - padding-top: 4px; - padding-bottom: 4px; -} -DIV.fragment { - border: 1px solid #CCCCCC; - background-color: #f5f5f5; - padding: 6px; -} -DIV.ah { background-color: black; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px } -TD.md { background-color: #F4F4FB; font-weight: bold; } -TD.mdname1 { background-color: #F4F4FB; font-weight: bold; color: #602020; } -TD.mdname { background-color: #F4F4FB; font-weight: bold; color: #602020; width: 600px; } -DIV.groupHeader { - margin-left: 16px; - margin-top: 12px; - margin-bottom: 6px; - font-weight: bold; - font-family: Geneva, Arial, Helvetica, sans-serif; -} -DIV.groupText { margin-left: 16px; font-style: italic; font-size: smaller } -BODY { - background: white; - color: black; - margin-right: 20px; - margin-left: 20px; -} -TD.indexkey { - background-color: #eeeeff; - font-weight: bold; - padding-right : 10px; - padding-top : 2px; - padding-left : 10px; - padding-bottom : 2px; - margin-left : 0px; - margin-right : 0px; - margin-top : 2px; - margin-bottom : 2px; - border: 1px solid #CCCCCC; -} -TD.indexvalue { - background-color: #eeeeff; - font-style: italic; - padding-right : 10px; - padding-top : 2px; - padding-left : 10px; - padding-bottom : 2px; - margin-left : 0px; - margin-right : 0px; - margin-top : 2px; - margin-bottom : 2px; - border: 1px solid #CCCCCC; -} -TR.memlist { - background-color: #f0f0f0; -} -P.formulaDsp { text-align: center; } -IMG.formulaDsp { } -IMG.formulaInl { vertical-align: middle; } -SPAN.keyword { color: #008000 } -SPAN.keywordtype { color: #604020 } -SPAN.keywordflow { color: #e08000 } -SPAN.comment { color: #800000 } -SPAN.preprocessor { color: #806020 } -SPAN.stringliteral { color: #002080 } -SPAN.charliteral { color: #008080 } -.mdTable { - border: 1px solid #868686; - background-color: #F4F4FB; -} -.mdRow { - padding: 8px 10px; -} -.mdescLeft { - font-size: smaller; - font-style: italic; - background-color: #FAFAFA; - padding-left: 8px; - border-top: 1px none #E0E0E0; - border-right: 1px none #E0E0E0; - border-bottom: 1px none #E0E0E0; - border-left: 1px none #E0E0E0; - margin: 0px; -} -.mdescRight { - font-size: smaller; - font-style: italic; - background-color: #FAFAFA; - padding-left: 4px; - border-top: 1px none #E0E0E0; - border-right: 1px none #E0E0E0; - border-bottom: 1px none #E0E0E0; - border-left: 1px none #E0E0E0; - margin: 0px; - padding-bottom: 0px; - padding-right: 8px; -} -.memItemLeft { - padding: 1px 0px 0px 8px; - margin: 4px; - border-top-width: 1px; - border-right-width: 1px; - border-bottom-width: 1px; - border-left-width: 1px; - border-top-style: solid; - border-top-color: #E0E0E0; - border-right-color: #E0E0E0; - border-bottom-color: #E0E0E0; - border-left-color: #E0E0E0; - border-right-style: none; - border-bottom-style: none; - border-left-style: none; - background-color: #FAFAFA; - font-family: Geneva, Arial, Helvetica, sans-serif; - font-size: 12px; -} -.memItemRight { - padding: 1px 0px 0px 8px; - margin: 4px; - border-top-width: 1px; - border-right-width: 1px; - border-bottom-width: 1px; - border-left-width: 1px; - border-top-style: solid; - border-top-color: #E0E0E0; - border-right-color: #E0E0E0; - border-bottom-color: #E0E0E0; - border-left-color: #E0E0E0; - border-right-style: none; - border-bottom-style: none; - border-left-style: none; - background-color: #FAFAFA; - font-family: Geneva, Arial, Helvetica, sans-serif; - font-size: 13px; -} -.search { color: #003399; - font-weight: bold; -} -FORM.search { - margin-bottom: 0px; - margin-top: 0px; -} -INPUT.search { font-size: 75%; - color: #000080; - font-weight: normal; - background-color: #eeeeff; -} -TD.tiny { font-size: 75%; -} -a { - color: #252E78; -} -a:visited { - color: #3D2185; -} diff --git a/doc/salome/gui/GEOM/geompy_doc/namespacegeompy.html b/doc/salome/gui/GEOM/geompy_doc/namespacegeompy.html deleted file mode 100644 index 5a7d6e1a2..000000000 --- a/doc/salome/gui/GEOM/geompy_doc/namespacegeompy.html +++ /dev/null @@ -1,49 +0,0 @@ - - - - - - Main Page - - - - -  - - - -

Package geompy

-

-

-For available methods please see documentation of -geompyDC class, -implemented in geompyDC.py script. -All methods of geompyDC class are accessible via geompy namespace, for example "box = geompy.MakeBoxDXDYDZ(10.,20.,30.)". -

- - - - - -

Variables

tuple geom = lcc.FindOrLoadComponent("FactoryServer", "GEOM")
-


Variable Documentation

- -
-
- - - - -
tuple geompy.geom = lcc.FindOrLoadComponent("FactoryServer", "GEOM") [static]
-
-
- -

- -

-

- -

- - diff --git a/doc/salome/gui/GEOM/geompy_doc/namespacegeompyDC.html b/doc/salome/gui/GEOM/geompy_doc/namespacegeompyDC.html deleted file mode 100644 index 313f21f5c..000000000 --- a/doc/salome/gui/GEOM/geompy_doc/namespacegeompyDC.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - - Main Page - - - - -  - - - -

Package geompyDC

-

- - - - - - - - - - - - -

Data Structures

class  info
class  geompyDC

Variables

dictionary ShapeType = {"COMPOUND":0, "COMPSOLID":1, "SOLID":2, "SHELL":3, "FACE":4, "WIRE":5, "EDGE":6, "VERTEX":7, "SHAPE":8}
 kind = GEOM.GEOM_IKindOfShape
-


Variable Documentation

- -
-
- - - - -
dictionary geompyDC.ShapeType = {"COMPOUND":0, "COMPSOLID":1, "SOLID":2, "SHELL":3, "FACE":4, "WIRE":5, "EDGE":6, "VERTEX":7, "SHAPE":8} [static]
-
-
- -

- -

-

- -

-
- - - - -
geompyDC.kind = GEOM.GEOM_IKindOfShape [static]
-
-
- -

- -

-

- -

- - diff --git a/doc/salome/gui/GEOM/images/3dsketch1.png b/doc/salome/gui/GEOM/images/3dsketch1.png new file mode 100755 index 000000000..087ea15dc Binary files /dev/null and b/doc/salome/gui/GEOM/images/3dsketch1.png differ diff --git a/doc/salome/gui/GEOM/images/3dsketch2.png b/doc/salome/gui/GEOM/images/3dsketch2.png new file mode 100755 index 000000000..51f171d9f Binary files /dev/null and b/doc/salome/gui/GEOM/images/3dsketch2.png differ diff --git a/doc/salome/gui/GEOM/images/3dsketch3.png b/doc/salome/gui/GEOM/images/3dsketch3.png new file mode 100755 index 000000000..feb56e7cb Binary files /dev/null and b/doc/salome/gui/GEOM/images/3dsketch3.png differ diff --git a/doc/salome/gui/GEOM/images/angle.png b/doc/salome/gui/GEOM/images/angle.png index fbe753880..f62f1b2cd 100755 Binary files a/doc/salome/gui/GEOM/images/angle.png and b/doc/salome/gui/GEOM/images/angle.png differ diff --git a/doc/salome/gui/GEOM/images/arc.png b/doc/salome/gui/GEOM/images/arc.png index 260a5fb7d..b7ef8777f 100755 Binary files a/doc/salome/gui/GEOM/images/arc.png and b/doc/salome/gui/GEOM/images/arc.png differ diff --git a/doc/salome/gui/GEOM/images/arc2.png b/doc/salome/gui/GEOM/images/arc2.png index 2bced2ae0..6305cac1e 100644 Binary files a/doc/salome/gui/GEOM/images/arc2.png and b/doc/salome/gui/GEOM/images/arc2.png differ diff --git a/doc/salome/gui/GEOM/images/archimede.png b/doc/salome/gui/GEOM/images/archimede.png index cd620020e..4ee2ee9b6 100755 Binary files a/doc/salome/gui/GEOM/images/archimede.png and b/doc/salome/gui/GEOM/images/archimede.png differ diff --git a/doc/salome/gui/GEOM/images/arcofellipse1.png b/doc/salome/gui/GEOM/images/arcofellipse1.png new file mode 100644 index 000000000..cd50fff1c Binary files /dev/null and b/doc/salome/gui/GEOM/images/arcofellipse1.png differ diff --git a/doc/salome/gui/GEOM/images/arcofellipse2.png b/doc/salome/gui/GEOM/images/arcofellipse2.png new file mode 100644 index 000000000..24172dfae Binary files /dev/null and b/doc/salome/gui/GEOM/images/arcofellipse2.png differ diff --git a/doc/salome/gui/GEOM/images/block1.png b/doc/salome/gui/GEOM/images/block1.png index 71a93b0c9..d3220c5f3 100755 Binary files a/doc/salome/gui/GEOM/images/block1.png and b/doc/salome/gui/GEOM/images/block1.png differ diff --git a/doc/salome/gui/GEOM/images/block2.png b/doc/salome/gui/GEOM/images/block2.png index c66dd7f02..dee06e0a1 100755 Binary files a/doc/salome/gui/GEOM/images/block2.png and b/doc/salome/gui/GEOM/images/block2.png differ diff --git a/doc/salome/gui/GEOM/images/block3.png b/doc/salome/gui/GEOM/images/block3.png index 61aad9b43..af481b7aa 100755 Binary files a/doc/salome/gui/GEOM/images/block3.png and b/doc/salome/gui/GEOM/images/block3.png differ diff --git a/doc/salome/gui/GEOM/images/block4.png b/doc/salome/gui/GEOM/images/block4.png index d0661b6e9..5ac83e27a 100755 Binary files a/doc/salome/gui/GEOM/images/block4.png and b/doc/salome/gui/GEOM/images/block4.png differ diff --git a/doc/salome/gui/GEOM/images/block5.png b/doc/salome/gui/GEOM/images/block5.png index 9810f6f0d..04159c068 100755 Binary files a/doc/salome/gui/GEOM/images/block5.png and b/doc/salome/gui/GEOM/images/block5.png differ diff --git a/doc/salome/gui/GEOM/images/bool1.png b/doc/salome/gui/GEOM/images/bool1.png index 3f997a772..4cee18f8c 100755 Binary files a/doc/salome/gui/GEOM/images/bool1.png and b/doc/salome/gui/GEOM/images/bool1.png differ diff --git a/doc/salome/gui/GEOM/images/bool2.png b/doc/salome/gui/GEOM/images/bool2.png index 4e9b96862..bf027eb3a 100755 Binary files a/doc/salome/gui/GEOM/images/bool2.png and b/doc/salome/gui/GEOM/images/bool2.png differ diff --git a/doc/salome/gui/GEOM/images/bool3.png b/doc/salome/gui/GEOM/images/bool3.png index af409a15e..91fffb130 100755 Binary files a/doc/salome/gui/GEOM/images/bool3.png and b/doc/salome/gui/GEOM/images/bool3.png differ diff --git a/doc/salome/gui/GEOM/images/box1.png b/doc/salome/gui/GEOM/images/box1.png index 812027dcf..d5ce8e240 100755 Binary files a/doc/salome/gui/GEOM/images/box1.png and b/doc/salome/gui/GEOM/images/box1.png differ diff --git a/doc/salome/gui/GEOM/images/box2.png b/doc/salome/gui/GEOM/images/box2.png index 85a737afb..cf3be7e1f 100755 Binary files a/doc/salome/gui/GEOM/images/box2.png and b/doc/salome/gui/GEOM/images/box2.png differ diff --git a/doc/salome/gui/GEOM/images/box3.png b/doc/salome/gui/GEOM/images/box3.png new file mode 100755 index 000000000..b64fdf983 Binary files /dev/null and b/doc/salome/gui/GEOM/images/box3.png differ diff --git a/doc/salome/gui/GEOM/images/chamfer1.png b/doc/salome/gui/GEOM/images/chamfer1.png index fdbe02fbd..d5cbde120 100755 Binary files a/doc/salome/gui/GEOM/images/chamfer1.png and b/doc/salome/gui/GEOM/images/chamfer1.png differ diff --git a/doc/salome/gui/GEOM/images/chamfer2.png b/doc/salome/gui/GEOM/images/chamfer2.png index 24d6e124e..65c563221 100755 Binary files a/doc/salome/gui/GEOM/images/chamfer2.png and b/doc/salome/gui/GEOM/images/chamfer2.png differ diff --git a/doc/salome/gui/GEOM/images/chamfer3.png b/doc/salome/gui/GEOM/images/chamfer3.png index 801f8db2f..e0af355ac 100755 Binary files a/doc/salome/gui/GEOM/images/chamfer3.png and b/doc/salome/gui/GEOM/images/chamfer3.png differ diff --git a/doc/salome/gui/GEOM/images/chamfer4.png b/doc/salome/gui/GEOM/images/chamfer4.png index 14476b447..74d5bd54a 100755 Binary files a/doc/salome/gui/GEOM/images/chamfer4.png and b/doc/salome/gui/GEOM/images/chamfer4.png differ diff --git a/doc/salome/gui/GEOM/images/changeorientation.png b/doc/salome/gui/GEOM/images/changeorientation.png index 95322ed69..4e8811cc8 100755 Binary files a/doc/salome/gui/GEOM/images/changeorientation.png and b/doc/salome/gui/GEOM/images/changeorientation.png differ diff --git a/doc/salome/gui/GEOM/images/circle1.png b/doc/salome/gui/GEOM/images/circle1.png index 21933a545..40bf4168c 100755 Binary files a/doc/salome/gui/GEOM/images/circle1.png and b/doc/salome/gui/GEOM/images/circle1.png differ diff --git a/doc/salome/gui/GEOM/images/circle2.png b/doc/salome/gui/GEOM/images/circle2.png index 77299521c..2597148d6 100755 Binary files a/doc/salome/gui/GEOM/images/circle2.png and b/doc/salome/gui/GEOM/images/circle2.png differ diff --git a/doc/salome/gui/GEOM/images/circle3.png b/doc/salome/gui/GEOM/images/circle3.png index 39aa5b1ba..22481c9ff 100755 Binary files a/doc/salome/gui/GEOM/images/circle3.png and b/doc/salome/gui/GEOM/images/circle3.png differ diff --git a/doc/salome/gui/GEOM/images/cone1.png b/doc/salome/gui/GEOM/images/cone1.png index f5a95922a..d59c3a7fd 100755 Binary files a/doc/salome/gui/GEOM/images/cone1.png and b/doc/salome/gui/GEOM/images/cone1.png differ diff --git a/doc/salome/gui/GEOM/images/cone2.png b/doc/salome/gui/GEOM/images/cone2.png index 1b0582140..953691e1b 100755 Binary files a/doc/salome/gui/GEOM/images/cone2.png and b/doc/salome/gui/GEOM/images/cone2.png differ diff --git a/doc/salome/gui/GEOM/images/creategroup.png b/doc/salome/gui/GEOM/images/creategroup.png new file mode 100755 index 000000000..f629103d8 Binary files /dev/null and b/doc/salome/gui/GEOM/images/creategroup.png differ diff --git a/doc/salome/gui/GEOM/images/curve.png b/doc/salome/gui/GEOM/images/curve.png index a9541de0a..b9af501eb 100755 Binary files a/doc/salome/gui/GEOM/images/curve.png and b/doc/salome/gui/GEOM/images/curve.png differ diff --git a/doc/salome/gui/GEOM/images/cylinder1.png b/doc/salome/gui/GEOM/images/cylinder1.png index 71b619df8..089dac282 100755 Binary files a/doc/salome/gui/GEOM/images/cylinder1.png and b/doc/salome/gui/GEOM/images/cylinder1.png differ diff --git a/doc/salome/gui/GEOM/images/cylinder2.png b/doc/salome/gui/GEOM/images/cylinder2.png index ee6ed12e6..ad6af2947 100755 Binary files a/doc/salome/gui/GEOM/images/cylinder2.png and b/doc/salome/gui/GEOM/images/cylinder2.png differ diff --git a/doc/salome/gui/GEOM/images/dialog.png b/doc/salome/gui/GEOM/images/dialog.png index 63f984b75..53a2f41b5 100755 Binary files a/doc/salome/gui/GEOM/images/dialog.png and b/doc/salome/gui/GEOM/images/dialog.png differ diff --git a/doc/salome/gui/GEOM/images/disk1.png b/doc/salome/gui/GEOM/images/disk1.png new file mode 100644 index 000000000..215df98d3 Binary files /dev/null and b/doc/salome/gui/GEOM/images/disk1.png differ diff --git a/doc/salome/gui/GEOM/images/disk2.png b/doc/salome/gui/GEOM/images/disk2.png new file mode 100644 index 000000000..d6a7a3dab Binary files /dev/null and b/doc/salome/gui/GEOM/images/disk2.png differ diff --git a/doc/salome/gui/GEOM/images/disk3.png b/doc/salome/gui/GEOM/images/disk3.png new file mode 100644 index 000000000..5dd30b554 Binary files /dev/null and b/doc/salome/gui/GEOM/images/disk3.png differ diff --git a/doc/salome/gui/GEOM/images/disks.png b/doc/salome/gui/GEOM/images/disks.png new file mode 100644 index 000000000..368d9b6be Binary files /dev/null and b/doc/salome/gui/GEOM/images/disks.png differ diff --git a/doc/salome/gui/GEOM/images/distance.png b/doc/salome/gui/GEOM/images/distance.png index 141ec8e5a..594bef905 100755 Binary files a/doc/salome/gui/GEOM/images/distance.png and b/doc/salome/gui/GEOM/images/distance.png differ diff --git a/doc/salome/gui/GEOM/images/editgroup.png b/doc/salome/gui/GEOM/images/editgroup.png index db3e23575..25a55f8a7 100755 Binary files a/doc/salome/gui/GEOM/images/editgroup.png and b/doc/salome/gui/GEOM/images/editgroup.png differ diff --git a/doc/salome/gui/GEOM/images/ellipse.png b/doc/salome/gui/GEOM/images/ellipse.png index 0888b5021..8eea6cae6 100755 Binary files a/doc/salome/gui/GEOM/images/ellipse.png and b/doc/salome/gui/GEOM/images/ellipse.png differ diff --git a/doc/salome/gui/GEOM/images/explode.png b/doc/salome/gui/GEOM/images/explode.png new file mode 100755 index 000000000..34a6b6629 Binary files /dev/null and b/doc/salome/gui/GEOM/images/explode.png differ diff --git a/doc/salome/gui/GEOM/images/extrusion1.png b/doc/salome/gui/GEOM/images/extrusion1.png index 44a182225..5ec63e0b8 100755 Binary files a/doc/salome/gui/GEOM/images/extrusion1.png and b/doc/salome/gui/GEOM/images/extrusion1.png differ diff --git a/doc/salome/gui/GEOM/images/extrusion2.png b/doc/salome/gui/GEOM/images/extrusion2.png index 53dbe7d72..28ef20217 100755 Binary files a/doc/salome/gui/GEOM/images/extrusion2.png and b/doc/salome/gui/GEOM/images/extrusion2.png differ diff --git a/doc/salome/gui/GEOM/images/extrusion3.png b/doc/salome/gui/GEOM/images/extrusion3.png new file mode 100644 index 000000000..5147f78c1 Binary files /dev/null and b/doc/salome/gui/GEOM/images/extrusion3.png differ diff --git a/doc/salome/gui/GEOM/images/face1.png b/doc/salome/gui/GEOM/images/face1.png new file mode 100644 index 000000000..2fbea98ae Binary files /dev/null and b/doc/salome/gui/GEOM/images/face1.png differ diff --git a/doc/salome/gui/GEOM/images/face2.png b/doc/salome/gui/GEOM/images/face2.png new file mode 100644 index 000000000..97ce397a0 Binary files /dev/null and b/doc/salome/gui/GEOM/images/face2.png differ diff --git a/doc/salome/gui/GEOM/images/faces.png b/doc/salome/gui/GEOM/images/faces.png new file mode 100644 index 000000000..b97e81edd Binary files /dev/null and b/doc/salome/gui/GEOM/images/faces.png differ diff --git a/doc/salome/gui/GEOM/images/fillet1.png b/doc/salome/gui/GEOM/images/fillet1.png index 7fd3db53f..99093f6d5 100755 Binary files a/doc/salome/gui/GEOM/images/fillet1.png and b/doc/salome/gui/GEOM/images/fillet1.png differ diff --git a/doc/salome/gui/GEOM/images/fillet2.png b/doc/salome/gui/GEOM/images/fillet2.png index 2eab8754b..3c94f1410 100755 Binary files a/doc/salome/gui/GEOM/images/fillet2.png and b/doc/salome/gui/GEOM/images/fillet2.png differ diff --git a/doc/salome/gui/GEOM/images/fillet2d_1.png b/doc/salome/gui/GEOM/images/fillet2d_1.png new file mode 100755 index 000000000..859796aae Binary files /dev/null and b/doc/salome/gui/GEOM/images/fillet2d_1.png differ diff --git a/doc/salome/gui/GEOM/images/fillet2d_2.png b/doc/salome/gui/GEOM/images/fillet2d_2.png new file mode 100755 index 000000000..58579c47d Binary files /dev/null and b/doc/salome/gui/GEOM/images/fillet2d_2.png differ diff --git a/doc/salome/gui/GEOM/images/fillet3.png b/doc/salome/gui/GEOM/images/fillet3.png index 6e46e05dd..62564feba 100755 Binary files a/doc/salome/gui/GEOM/images/fillet3.png and b/doc/salome/gui/GEOM/images/fillet3.png differ diff --git a/doc/salome/gui/GEOM/images/filling.png b/doc/salome/gui/GEOM/images/filling.png index 1fb29455c..3263ea475 100755 Binary files a/doc/salome/gui/GEOM/images/filling.png and b/doc/salome/gui/GEOM/images/filling.png differ diff --git a/doc/salome/gui/GEOM/images/geomcreategroup.png b/doc/salome/gui/GEOM/images/geomcreategroup.png index f51ab22fd..8e0706a40 100755 Binary files a/doc/salome/gui/GEOM/images/geomcreategroup.png and b/doc/salome/gui/GEOM/images/geomcreategroup.png differ diff --git a/doc/salome/gui/GEOM/images/geomeimport.png b/doc/salome/gui/GEOM/images/geomeimport.png new file mode 100755 index 000000000..8e44ae07a Binary files /dev/null and b/doc/salome/gui/GEOM/images/geomeimport.png differ diff --git a/doc/salome/gui/GEOM/images/geomexport.png b/doc/salome/gui/GEOM/images/geomexport.png index c37713941..4d4d3fb33 100755 Binary files a/doc/salome/gui/GEOM/images/geomexport.png and b/doc/salome/gui/GEOM/images/geomexport.png differ diff --git a/doc/salome/gui/GEOM/images/geomimport.png b/doc/salome/gui/GEOM/images/geomimport.png index 516a819bd..d194ec5b6 100755 Binary files a/doc/salome/gui/GEOM/images/geomimport.png and b/doc/salome/gui/GEOM/images/geomimport.png differ diff --git a/doc/salome/gui/GEOM/images/geomimport_reopen.png b/doc/salome/gui/GEOM/images/geomimport_reopen.png new file mode 100644 index 000000000..9d6745db4 Binary files /dev/null and b/doc/salome/gui/GEOM/images/geomimport_reopen.png differ diff --git a/doc/salome/gui/GEOM/images/geomscreen.png b/doc/salome/gui/GEOM/images/geomscreen.png new file mode 100755 index 000000000..a8df645d2 Binary files /dev/null and b/doc/salome/gui/GEOM/images/geomscreen.png differ diff --git a/doc/salome/gui/GEOM/images/glue1.png b/doc/salome/gui/GEOM/images/glue1.png index 54fa5bf6e..48a40d6e1 100644 Binary files a/doc/salome/gui/GEOM/images/glue1.png and b/doc/salome/gui/GEOM/images/glue1.png differ diff --git a/doc/salome/gui/GEOM/images/glue2.png b/doc/salome/gui/GEOM/images/glue2.png index 475e54f65..08fb4f97e 100644 Binary files a/doc/salome/gui/GEOM/images/glue2.png and b/doc/salome/gui/GEOM/images/glue2.png differ diff --git a/doc/salome/gui/GEOM/images/glue3.png b/doc/salome/gui/GEOM/images/glue3.png index a8c6d884e..de80520b9 100644 Binary files a/doc/salome/gui/GEOM/images/glue3.png and b/doc/salome/gui/GEOM/images/glue3.png differ diff --git a/doc/salome/gui/GEOM/images/image18.gif b/doc/salome/gui/GEOM/images/image18.gif deleted file mode 100755 index 511bd44e8..000000000 Binary files a/doc/salome/gui/GEOM/images/image18.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/images/image18.png b/doc/salome/gui/GEOM/images/image18.png new file mode 100755 index 000000000..7f34b8b53 Binary files /dev/null and b/doc/salome/gui/GEOM/images/image18.png differ diff --git a/doc/salome/gui/GEOM/images/image2.jpg b/doc/salome/gui/GEOM/images/image2.jpg index ddfeaa1fb..5857ccc61 100755 Binary files a/doc/salome/gui/GEOM/images/image2.jpg and b/doc/salome/gui/GEOM/images/image2.jpg differ diff --git a/doc/salome/gui/GEOM/images/image2.png b/doc/salome/gui/GEOM/images/image2.png new file mode 100755 index 000000000..de2a436c1 Binary files /dev/null and b/doc/salome/gui/GEOM/images/image2.png differ diff --git a/doc/salome/gui/GEOM/images/image26.gif b/doc/salome/gui/GEOM/images/image26.gif deleted file mode 100755 index cb7f53a74..000000000 Binary files a/doc/salome/gui/GEOM/images/image26.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/images/image26.png b/doc/salome/gui/GEOM/images/image26.png new file mode 100755 index 000000000..8b714aade Binary files /dev/null and b/doc/salome/gui/GEOM/images/image26.png differ diff --git a/doc/salome/gui/GEOM/images/image33.gif b/doc/salome/gui/GEOM/images/image33.gif deleted file mode 100755 index 53de5331b..000000000 Binary files a/doc/salome/gui/GEOM/images/image33.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/images/image33.png b/doc/salome/gui/GEOM/images/image33.png new file mode 100755 index 000000000..a70fb5955 Binary files /dev/null and b/doc/salome/gui/GEOM/images/image33.png differ diff --git a/doc/salome/gui/GEOM/images/image56.gif b/doc/salome/gui/GEOM/images/image56.gif deleted file mode 100755 index 049e1ebdc..000000000 Binary files a/doc/salome/gui/GEOM/images/image56.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/images/image56.png b/doc/salome/gui/GEOM/images/image56.png new file mode 100755 index 000000000..9e365e1d1 Binary files /dev/null and b/doc/salome/gui/GEOM/images/image56.png differ diff --git a/doc/salome/gui/GEOM/images/image57.gif b/doc/salome/gui/GEOM/images/image57.gif deleted file mode 100755 index e0f9e3109..000000000 Binary files a/doc/salome/gui/GEOM/images/image57.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/images/image57.png b/doc/salome/gui/GEOM/images/image57.png new file mode 100755 index 000000000..3b8f4158a Binary files /dev/null and b/doc/salome/gui/GEOM/images/image57.png differ diff --git a/doc/salome/gui/GEOM/images/line1.png b/doc/salome/gui/GEOM/images/line1.png index 139809a00..f75f4e508 100755 Binary files a/doc/salome/gui/GEOM/images/line1.png and b/doc/salome/gui/GEOM/images/line1.png differ diff --git a/doc/salome/gui/GEOM/images/line2.png b/doc/salome/gui/GEOM/images/line2.png index f5d68da42..650d6bd8b 100755 Binary files a/doc/salome/gui/GEOM/images/line2.png and b/doc/salome/gui/GEOM/images/line2.png differ diff --git a/doc/salome/gui/GEOM/images/measures1.png b/doc/salome/gui/GEOM/images/measures1.png index 6d5d698b4..6233dd9c1 100755 Binary files a/doc/salome/gui/GEOM/images/measures1.png and b/doc/salome/gui/GEOM/images/measures1.png differ diff --git a/doc/salome/gui/GEOM/images/measures10.png b/doc/salome/gui/GEOM/images/measures10.png index 33023cc49..091b2c0aa 100755 Binary files a/doc/salome/gui/GEOM/images/measures10.png and b/doc/salome/gui/GEOM/images/measures10.png differ diff --git a/doc/salome/gui/GEOM/images/measures3.png b/doc/salome/gui/GEOM/images/measures3.png index 9a55aad4a..320663b6a 100755 Binary files a/doc/salome/gui/GEOM/images/measures3.png and b/doc/salome/gui/GEOM/images/measures3.png differ diff --git a/doc/salome/gui/GEOM/images/measures4.png b/doc/salome/gui/GEOM/images/measures4.png index ea243e888..dcf0f8f47 100755 Binary files a/doc/salome/gui/GEOM/images/measures4.png and b/doc/salome/gui/GEOM/images/measures4.png differ diff --git a/doc/salome/gui/GEOM/images/measures5.png b/doc/salome/gui/GEOM/images/measures5.png index a323426e6..13af1afdf 100755 Binary files a/doc/salome/gui/GEOM/images/measures5.png and b/doc/salome/gui/GEOM/images/measures5.png differ diff --git a/doc/salome/gui/GEOM/images/measures8.png b/doc/salome/gui/GEOM/images/measures8.png index 94bed3271..1aaaf2b69 100755 Binary files a/doc/salome/gui/GEOM/images/measures8.png and b/doc/salome/gui/GEOM/images/measures8.png differ diff --git a/doc/salome/gui/GEOM/images/measures8a.png b/doc/salome/gui/GEOM/images/measures8a.png new file mode 100644 index 000000000..d7199f23c Binary files /dev/null and b/doc/salome/gui/GEOM/images/measures8a.png differ diff --git a/doc/salome/gui/GEOM/images/measures9.png b/doc/salome/gui/GEOM/images/measures9.png index 7d42d2935..38a29bb17 100755 Binary files a/doc/salome/gui/GEOM/images/measures9.png and b/doc/salome/gui/GEOM/images/measures9.png differ diff --git a/doc/salome/gui/GEOM/images/mtrans1.png b/doc/salome/gui/GEOM/images/mtrans1.png index 7dfe730c3..ee4b2ea31 100755 Binary files a/doc/salome/gui/GEOM/images/mtrans1.png and b/doc/salome/gui/GEOM/images/mtrans1.png differ diff --git a/doc/salome/gui/GEOM/images/mtrans2.png b/doc/salome/gui/GEOM/images/mtrans2.png index 62b35bb0c..1d80d6547 100755 Binary files a/doc/salome/gui/GEOM/images/mtrans2.png and b/doc/salome/gui/GEOM/images/mtrans2.png differ diff --git a/doc/salome/gui/GEOM/images/mtransf1.png b/doc/salome/gui/GEOM/images/mtransf1.png index 207e920f9..ee26e0b7c 100755 Binary files a/doc/salome/gui/GEOM/images/mtransf1.png and b/doc/salome/gui/GEOM/images/mtransf1.png differ diff --git a/doc/salome/gui/GEOM/images/mtransf2.png b/doc/salome/gui/GEOM/images/mtransf2.png index 3435f0f8c..c4077ed98 100755 Binary files a/doc/salome/gui/GEOM/images/mtransf2.png and b/doc/salome/gui/GEOM/images/mtransf2.png differ diff --git a/doc/salome/gui/GEOM/images/mtransf3.png b/doc/salome/gui/GEOM/images/mtransf3.png index 628d8b0a6..8211c1cc3 100755 Binary files a/doc/salome/gui/GEOM/images/mtransf3.png and b/doc/salome/gui/GEOM/images/mtransf3.png differ diff --git a/doc/salome/gui/GEOM/images/mtransf4.png b/doc/salome/gui/GEOM/images/mtransf4.png index cbe904444..f401af3aa 100755 Binary files a/doc/salome/gui/GEOM/images/mtransf4.png and b/doc/salome/gui/GEOM/images/mtransf4.png differ diff --git a/doc/salome/gui/GEOM/images/neo-basicprop.png b/doc/salome/gui/GEOM/images/neo-basicprop.png index 2a9d7ca2a..e36d937f3 100755 Binary files a/doc/salome/gui/GEOM/images/neo-basicprop.png and b/doc/salome/gui/GEOM/images/neo-basicprop.png differ diff --git a/doc/salome/gui/GEOM/images/neo-detect2.png b/doc/salome/gui/GEOM/images/neo-detect2.png index f0dabe311..273d000f2 100755 Binary files a/doc/salome/gui/GEOM/images/neo-detect2.png and b/doc/salome/gui/GEOM/images/neo-detect2.png differ diff --git a/doc/salome/gui/GEOM/images/neo-isos.png b/doc/salome/gui/GEOM/images/neo-isos.png index dbbcf8ef5..b54a335da 100755 Binary files a/doc/salome/gui/GEOM/images/neo-isos.png and b/doc/salome/gui/GEOM/images/neo-isos.png differ diff --git a/doc/salome/gui/GEOM/images/neo-localcs1.png b/doc/salome/gui/GEOM/images/neo-localcs1.png index 9bdacafa2..b464565a9 100755 Binary files a/doc/salome/gui/GEOM/images/neo-localcs1.png and b/doc/salome/gui/GEOM/images/neo-localcs1.png differ diff --git a/doc/salome/gui/GEOM/images/neo-localcs2.png b/doc/salome/gui/GEOM/images/neo-localcs2.png index 3fc54a67c..f5b40bec4 100755 Binary files a/doc/salome/gui/GEOM/images/neo-localcs2.png and b/doc/salome/gui/GEOM/images/neo-localcs2.png differ diff --git a/doc/salome/gui/GEOM/images/neo-localcs3.png b/doc/salome/gui/GEOM/images/neo-localcs3.png index 01c8e24fa..1918b674c 100755 Binary files a/doc/salome/gui/GEOM/images/neo-localcs3.png and b/doc/salome/gui/GEOM/images/neo-localcs3.png differ diff --git a/doc/salome/gui/GEOM/images/neo-mrot1.png b/doc/salome/gui/GEOM/images/neo-mrot1.png index 6cf2ab91b..3510a636c 100755 Binary files a/doc/salome/gui/GEOM/images/neo-mrot1.png and b/doc/salome/gui/GEOM/images/neo-mrot1.png differ diff --git a/doc/salome/gui/GEOM/images/neo-mrot2.png b/doc/salome/gui/GEOM/images/neo-mrot2.png index e2f37e052..07463ed14 100755 Binary files a/doc/salome/gui/GEOM/images/neo-mrot2.png and b/doc/salome/gui/GEOM/images/neo-mrot2.png differ diff --git a/doc/salome/gui/GEOM/images/neo-obj1.png b/doc/salome/gui/GEOM/images/neo-obj1.png index 88a7a8b8a..b7edefb7e 100755 Binary files a/doc/salome/gui/GEOM/images/neo-obj1.png and b/doc/salome/gui/GEOM/images/neo-obj1.png differ diff --git a/doc/salome/gui/GEOM/images/neo-obj2.png b/doc/salome/gui/GEOM/images/neo-obj2.png index c940eaa38..3ce42b45c 100755 Binary files a/doc/salome/gui/GEOM/images/neo-obj2.png and b/doc/salome/gui/GEOM/images/neo-obj2.png differ diff --git a/doc/salome/gui/GEOM/images/neo-obj3.png b/doc/salome/gui/GEOM/images/neo-obj3.png index d773938e2..65464a70c 100755 Binary files a/doc/salome/gui/GEOM/images/neo-obj3.png and b/doc/salome/gui/GEOM/images/neo-obj3.png differ diff --git a/doc/salome/gui/GEOM/images/neo-obj4.png b/doc/salome/gui/GEOM/images/neo-obj4.png index 5ac05dc6c..283601c26 100755 Binary files a/doc/salome/gui/GEOM/images/neo-obj4.png and b/doc/salome/gui/GEOM/images/neo-obj4.png differ diff --git a/doc/salome/gui/GEOM/images/neo-obj5.png b/doc/salome/gui/GEOM/images/neo-obj5.png index e1579f082..8b5bb2a0f 100755 Binary files a/doc/salome/gui/GEOM/images/neo-obj5.png and b/doc/salome/gui/GEOM/images/neo-obj5.png differ diff --git a/doc/salome/gui/GEOM/images/neo-obj6.png b/doc/salome/gui/GEOM/images/neo-obj6.png index b6b3be440..fd8af0811 100755 Binary files a/doc/salome/gui/GEOM/images/neo-obj6.png and b/doc/salome/gui/GEOM/images/neo-obj6.png differ diff --git a/doc/salome/gui/GEOM/images/neo-obj7.png b/doc/salome/gui/GEOM/images/neo-obj7.png index 15dfa2376..d15d13d90 100755 Binary files a/doc/salome/gui/GEOM/images/neo-obj7.png and b/doc/salome/gui/GEOM/images/neo-obj7.png differ diff --git a/doc/salome/gui/GEOM/images/neo-point2.png b/doc/salome/gui/GEOM/images/neo-point2.png index 3bc59b860..e58133a41 100755 Binary files a/doc/salome/gui/GEOM/images/neo-point2.png and b/doc/salome/gui/GEOM/images/neo-point2.png differ diff --git a/doc/salome/gui/GEOM/images/neo-scetcher1.png b/doc/salome/gui/GEOM/images/neo-scetcher1.png index 7130e8b08..23ec1f3e6 100755 Binary files a/doc/salome/gui/GEOM/images/neo-scetcher1.png and b/doc/salome/gui/GEOM/images/neo-scetcher1.png differ diff --git a/doc/salome/gui/GEOM/images/neo-scetcher2.png b/doc/salome/gui/GEOM/images/neo-scetcher2.png index 330e1e3a3..837031035 100755 Binary files a/doc/salome/gui/GEOM/images/neo-scetcher2.png and b/doc/salome/gui/GEOM/images/neo-scetcher2.png differ diff --git a/doc/salome/gui/GEOM/images/neo-section.png b/doc/salome/gui/GEOM/images/neo-section.png index 0d58ad244..f73794cbf 100755 Binary files a/doc/salome/gui/GEOM/images/neo-section.png and b/doc/salome/gui/GEOM/images/neo-section.png differ diff --git a/doc/salome/gui/GEOM/images/neo-tolerance.png b/doc/salome/gui/GEOM/images/neo-tolerance.png new file mode 100755 index 000000000..2ee3a4ee2 Binary files /dev/null and b/doc/salome/gui/GEOM/images/neo-tolerance.png differ diff --git a/doc/salome/gui/GEOM/images/neo-transparency.png b/doc/salome/gui/GEOM/images/neo-transparency.png index ec1fb7f70..bff078966 100755 Binary files a/doc/salome/gui/GEOM/images/neo-transparency.png and b/doc/salome/gui/GEOM/images/neo-transparency.png differ diff --git a/doc/salome/gui/GEOM/images/new-tolerance.png b/doc/salome/gui/GEOM/images/new-tolerance.png index 796115ba9..6629a0d26 100755 Binary files a/doc/salome/gui/GEOM/images/new-tolerance.png and b/doc/salome/gui/GEOM/images/new-tolerance.png differ diff --git a/doc/salome/gui/GEOM/images/normaletoface.png b/doc/salome/gui/GEOM/images/normaletoface.png index 5f8a34399..10a40abd1 100755 Binary files a/doc/salome/gui/GEOM/images/normaletoface.png and b/doc/salome/gui/GEOM/images/normaletoface.png differ diff --git a/doc/salome/gui/GEOM/images/partition1.png b/doc/salome/gui/GEOM/images/partition1.png index 440dc3c55..026d13d09 100755 Binary files a/doc/salome/gui/GEOM/images/partition1.png and b/doc/salome/gui/GEOM/images/partition1.png differ diff --git a/doc/salome/gui/GEOM/images/partition2.png b/doc/salome/gui/GEOM/images/partition2.png index a67ec9d8b..97dcbdc7b 100755 Binary files a/doc/salome/gui/GEOM/images/partition2.png and b/doc/salome/gui/GEOM/images/partition2.png differ diff --git a/doc/salome/gui/GEOM/images/pipe.png b/doc/salome/gui/GEOM/images/pipe.png index e773731d2..d75445374 100755 Binary files a/doc/salome/gui/GEOM/images/pipe.png and b/doc/salome/gui/GEOM/images/pipe.png differ diff --git a/doc/salome/gui/GEOM/images/pipe2.png b/doc/salome/gui/GEOM/images/pipe2.png new file mode 100755 index 000000000..66d6d9f98 Binary files /dev/null and b/doc/salome/gui/GEOM/images/pipe2.png differ diff --git a/doc/salome/gui/GEOM/images/pipe_wire_edgesn.png b/doc/salome/gui/GEOM/images/pipe_wire_edgesn.png index 4424b6bf1..fca02823d 100755 Binary files a/doc/salome/gui/GEOM/images/pipe_wire_edgesn.png and b/doc/salome/gui/GEOM/images/pipe_wire_edgesn.png differ diff --git a/doc/salome/gui/GEOM/images/pipebinormalsn.png b/doc/salome/gui/GEOM/images/pipebinormalsn.png new file mode 100644 index 000000000..d48cc4ca9 Binary files /dev/null and b/doc/salome/gui/GEOM/images/pipebinormalsn.png differ diff --git a/doc/salome/gui/GEOM/images/pipesn.png b/doc/salome/gui/GEOM/images/pipesn.png deleted file mode 100755 index 11ac1096b..000000000 Binary files a/doc/salome/gui/GEOM/images/pipesn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/images/plane1.png b/doc/salome/gui/GEOM/images/plane1.png index 47a9b8bcd..aaf7f12d5 100755 Binary files a/doc/salome/gui/GEOM/images/plane1.png and b/doc/salome/gui/GEOM/images/plane1.png differ diff --git a/doc/salome/gui/GEOM/images/plane2.png b/doc/salome/gui/GEOM/images/plane2.png index f4b880b44..3644d6b38 100755 Binary files a/doc/salome/gui/GEOM/images/plane2.png and b/doc/salome/gui/GEOM/images/plane2.png differ diff --git a/doc/salome/gui/GEOM/images/plane3.png b/doc/salome/gui/GEOM/images/plane3.png index 1727e3bb0..b815f8d0d 100755 Binary files a/doc/salome/gui/GEOM/images/plane3.png and b/doc/salome/gui/GEOM/images/plane3.png differ diff --git a/doc/salome/gui/GEOM/images/point1.png b/doc/salome/gui/GEOM/images/point1.png index e359819c5..940871d1e 100755 Binary files a/doc/salome/gui/GEOM/images/point1.png and b/doc/salome/gui/GEOM/images/point1.png differ diff --git a/doc/salome/gui/GEOM/images/point2.png b/doc/salome/gui/GEOM/images/point2.png index df151abfa..b36ee3fab 100755 Binary files a/doc/salome/gui/GEOM/images/point2.png and b/doc/salome/gui/GEOM/images/point2.png differ diff --git a/doc/salome/gui/GEOM/images/point3.png b/doc/salome/gui/GEOM/images/point3.png index 14e9827c7..35c28ad50 100755 Binary files a/doc/salome/gui/GEOM/images/point3.png and b/doc/salome/gui/GEOM/images/point3.png differ diff --git a/doc/salome/gui/GEOM/images/point4.png b/doc/salome/gui/GEOM/images/point4.png index b29de102c..08739979a 100755 Binary files a/doc/salome/gui/GEOM/images/point4.png and b/doc/salome/gui/GEOM/images/point4.png differ diff --git a/doc/salome/gui/GEOM/images/point5.png b/doc/salome/gui/GEOM/images/point5.png new file mode 100755 index 000000000..e005604b8 Binary files /dev/null and b/doc/salome/gui/GEOM/images/point5.png differ diff --git a/doc/salome/gui/GEOM/images/remove_extra_edges.png b/doc/salome/gui/GEOM/images/remove_extra_edges.png index 50538dd4b..64cc0f0b3 100644 Binary files a/doc/salome/gui/GEOM/images/remove_extra_edges.png and b/doc/salome/gui/GEOM/images/remove_extra_edges.png differ diff --git a/doc/salome/gui/GEOM/images/repair1.png b/doc/salome/gui/GEOM/images/repair1.png index 2b47fa5a4..7347daac0 100755 Binary files a/doc/salome/gui/GEOM/images/repair1.png and b/doc/salome/gui/GEOM/images/repair1.png differ diff --git a/doc/salome/gui/GEOM/images/repair10.png b/doc/salome/gui/GEOM/images/repair10.png index c3c77164a..ccdebd77b 100755 Binary files a/doc/salome/gui/GEOM/images/repair10.png and b/doc/salome/gui/GEOM/images/repair10.png differ diff --git a/doc/salome/gui/GEOM/images/repair2.png b/doc/salome/gui/GEOM/images/repair2.png index 488a6a4c9..8049d60e8 100755 Binary files a/doc/salome/gui/GEOM/images/repair2.png and b/doc/salome/gui/GEOM/images/repair2.png differ diff --git a/doc/salome/gui/GEOM/images/repair3.png b/doc/salome/gui/GEOM/images/repair3.png index 4c2a41f90..930957d5b 100755 Binary files a/doc/salome/gui/GEOM/images/repair3.png and b/doc/salome/gui/GEOM/images/repair3.png differ diff --git a/doc/salome/gui/GEOM/images/repair4.png b/doc/salome/gui/GEOM/images/repair4.png index 2af7cbabb..de44ae3c0 100755 Binary files a/doc/salome/gui/GEOM/images/repair4.png and b/doc/salome/gui/GEOM/images/repair4.png differ diff --git a/doc/salome/gui/GEOM/images/repair5.png b/doc/salome/gui/GEOM/images/repair5.png index b99fbcbaf..de44ae3c0 100755 Binary files a/doc/salome/gui/GEOM/images/repair5.png and b/doc/salome/gui/GEOM/images/repair5.png differ diff --git a/doc/salome/gui/GEOM/images/repair6.png b/doc/salome/gui/GEOM/images/repair6.png index 5123d1f84..652f4eced 100755 Binary files a/doc/salome/gui/GEOM/images/repair6.png and b/doc/salome/gui/GEOM/images/repair6.png differ diff --git a/doc/salome/gui/GEOM/images/repair7.png b/doc/salome/gui/GEOM/images/repair7.png index 2b553b9fd..527b3b80b 100755 Binary files a/doc/salome/gui/GEOM/images/repair7.png and b/doc/salome/gui/GEOM/images/repair7.png differ diff --git a/doc/salome/gui/GEOM/images/repair8.png b/doc/salome/gui/GEOM/images/repair8.png index f0016836e..d7654461b 100755 Binary files a/doc/salome/gui/GEOM/images/repair8.png and b/doc/salome/gui/GEOM/images/repair8.png differ diff --git a/doc/salome/gui/GEOM/images/repair9.png b/doc/salome/gui/GEOM/images/repair9.png index 7f5d4f5c3..72b7d32af 100755 Binary files a/doc/salome/gui/GEOM/images/repair9.png and b/doc/salome/gui/GEOM/images/repair9.png differ diff --git a/doc/salome/gui/GEOM/images/restore-ss-OB-cut.png b/doc/salome/gui/GEOM/images/restore-ss-OB-cut.png new file mode 100644 index 000000000..51b5a4fb4 Binary files /dev/null and b/doc/salome/gui/GEOM/images/restore-ss-OB-cut.png differ diff --git a/doc/salome/gui/GEOM/images/restore-ss-OB.png b/doc/salome/gui/GEOM/images/restore-ss-OB.png new file mode 100644 index 000000000..4db07ebfa Binary files /dev/null and b/doc/salome/gui/GEOM/images/restore-ss-OB.png differ diff --git a/doc/salome/gui/GEOM/images/restore-ss-cut.png b/doc/salome/gui/GEOM/images/restore-ss-cut.png new file mode 100644 index 000000000..8db26d85f Binary files /dev/null and b/doc/salome/gui/GEOM/images/restore-ss-cut.png differ diff --git a/doc/salome/gui/GEOM/images/restore-ss-dialog.png b/doc/salome/gui/GEOM/images/restore-ss-dialog.png new file mode 100644 index 000000000..64fc9d2c1 Binary files /dev/null and b/doc/salome/gui/GEOM/images/restore-ss-dialog.png differ diff --git a/doc/salome/gui/GEOM/images/restore-ss-viewer-after.png b/doc/salome/gui/GEOM/images/restore-ss-viewer-after.png new file mode 100644 index 000000000..d25b113d1 Binary files /dev/null and b/doc/salome/gui/GEOM/images/restore-ss-viewer-after.png differ diff --git a/doc/salome/gui/GEOM/images/restore-ss-viewer-before.png b/doc/salome/gui/GEOM/images/restore-ss-viewer-before.png new file mode 100644 index 000000000..4fa5b1319 Binary files /dev/null and b/doc/salome/gui/GEOM/images/restore-ss-viewer-before.png differ diff --git a/doc/salome/gui/GEOM/images/restore-ss-viewer-cut.png b/doc/salome/gui/GEOM/images/restore-ss-viewer-cut.png new file mode 100644 index 000000000..d745bce1f Binary files /dev/null and b/doc/salome/gui/GEOM/images/restore-ss-viewer-cut.png differ diff --git a/doc/salome/gui/GEOM/images/revolution.png b/doc/salome/gui/GEOM/images/revolution.png index 68761025a..f0e3fa9d8 100755 Binary files a/doc/salome/gui/GEOM/images/revolution.png and b/doc/salome/gui/GEOM/images/revolution.png differ diff --git a/doc/salome/gui/GEOM/images/scale_transformsn3.png b/doc/salome/gui/GEOM/images/scale_transformsn3.png new file mode 100644 index 000000000..c7f8adbd6 Binary files /dev/null and b/doc/salome/gui/GEOM/images/scale_transformsn3.png differ diff --git a/doc/salome/gui/GEOM/images/scale_transformsn4.png b/doc/salome/gui/GEOM/images/scale_transformsn4.png new file mode 100644 index 000000000..fafa6f084 Binary files /dev/null and b/doc/salome/gui/GEOM/images/scale_transformsn4.png differ diff --git a/doc/salome/gui/GEOM/images/selectcolor.png b/doc/salome/gui/GEOM/images/selectcolor.png index 70800b28a..2a8dfe49d 100755 Binary files a/doc/salome/gui/GEOM/images/selectcolor.png and b/doc/salome/gui/GEOM/images/selectcolor.png differ diff --git a/doc/salome/gui/GEOM/images/shapesonshape.png b/doc/salome/gui/GEOM/images/shapesonshape.png new file mode 100755 index 000000000..0c01b3ba7 Binary files /dev/null and b/doc/salome/gui/GEOM/images/shapesonshape.png differ diff --git a/doc/salome/gui/GEOM/images/shonshex1.png b/doc/salome/gui/GEOM/images/shonshex1.png new file mode 100755 index 000000000..7a1c97ea1 Binary files /dev/null and b/doc/salome/gui/GEOM/images/shonshex1.png differ diff --git a/doc/salome/gui/GEOM/images/shonshex2.png b/doc/salome/gui/GEOM/images/shonshex2.png new file mode 100755 index 000000000..7d16db9b5 Binary files /dev/null and b/doc/salome/gui/GEOM/images/shonshex2.png differ diff --git a/doc/salome/gui/GEOM/images/sphere1.png b/doc/salome/gui/GEOM/images/sphere1.png index 377f1c9ce..ceb1d2d2b 100755 Binary files a/doc/salome/gui/GEOM/images/sphere1.png and b/doc/salome/gui/GEOM/images/sphere1.png differ diff --git a/doc/salome/gui/GEOM/images/sphere2.png b/doc/salome/gui/GEOM/images/sphere2.png index dd2cadb1f..4d8016bff 100755 Binary files a/doc/salome/gui/GEOM/images/sphere2.png and b/doc/salome/gui/GEOM/images/sphere2.png differ diff --git a/doc/salome/gui/GEOM/images/torus1.png b/doc/salome/gui/GEOM/images/torus1.png index 28e18afa0..0a895d4d0 100755 Binary files a/doc/salome/gui/GEOM/images/torus1.png and b/doc/salome/gui/GEOM/images/torus1.png differ diff --git a/doc/salome/gui/GEOM/images/torus2.png b/doc/salome/gui/GEOM/images/torus2.png index 8877f1c37..96fa9599b 100755 Binary files a/doc/salome/gui/GEOM/images/torus2.png and b/doc/salome/gui/GEOM/images/torus2.png differ diff --git a/doc/salome/gui/GEOM/images/transformation1.png b/doc/salome/gui/GEOM/images/transformation1.png index 8dbf8fe11..0ed8d8d93 100755 Binary files a/doc/salome/gui/GEOM/images/transformation1.png and b/doc/salome/gui/GEOM/images/transformation1.png differ diff --git a/doc/salome/gui/GEOM/images/transformation10.png b/doc/salome/gui/GEOM/images/transformation10.png index 0847a5e03..7aa59f16b 100755 Binary files a/doc/salome/gui/GEOM/images/transformation10.png and b/doc/salome/gui/GEOM/images/transformation10.png differ diff --git a/doc/salome/gui/GEOM/images/transformation10a.png b/doc/salome/gui/GEOM/images/transformation10a.png new file mode 100644 index 000000000..c24b6aac5 Binary files /dev/null and b/doc/salome/gui/GEOM/images/transformation10a.png differ diff --git a/doc/salome/gui/GEOM/images/transformation11.png b/doc/salome/gui/GEOM/images/transformation11.png index b78acec2e..02ae81233 100755 Binary files a/doc/salome/gui/GEOM/images/transformation11.png and b/doc/salome/gui/GEOM/images/transformation11.png differ diff --git a/doc/salome/gui/GEOM/images/transformation12.png b/doc/salome/gui/GEOM/images/transformation12.png new file mode 100644 index 000000000..66ea98415 Binary files /dev/null and b/doc/salome/gui/GEOM/images/transformation12.png differ diff --git a/doc/salome/gui/GEOM/images/transformation13.png b/doc/salome/gui/GEOM/images/transformation13.png new file mode 100644 index 000000000..1ae0170df Binary files /dev/null and b/doc/salome/gui/GEOM/images/transformation13.png differ diff --git a/doc/salome/gui/GEOM/images/transformation14.png b/doc/salome/gui/GEOM/images/transformation14.png new file mode 100644 index 000000000..ba31ef99b Binary files /dev/null and b/doc/salome/gui/GEOM/images/transformation14.png differ diff --git a/doc/salome/gui/GEOM/images/transformation2.png b/doc/salome/gui/GEOM/images/transformation2.png index 569752740..3642ceda8 100755 Binary files a/doc/salome/gui/GEOM/images/transformation2.png and b/doc/salome/gui/GEOM/images/transformation2.png differ diff --git a/doc/salome/gui/GEOM/images/transformation3.png b/doc/salome/gui/GEOM/images/transformation3.png index 96a1f1e36..fb9a09fef 100755 Binary files a/doc/salome/gui/GEOM/images/transformation3.png and b/doc/salome/gui/GEOM/images/transformation3.png differ diff --git a/doc/salome/gui/GEOM/images/transformation4.png b/doc/salome/gui/GEOM/images/transformation4.png index 323c3d0ae..42f4bf79b 100755 Binary files a/doc/salome/gui/GEOM/images/transformation4.png and b/doc/salome/gui/GEOM/images/transformation4.png differ diff --git a/doc/salome/gui/GEOM/images/transformation4a.png b/doc/salome/gui/GEOM/images/transformation4a.png index 64d2d4149..1d98b09f0 100644 Binary files a/doc/salome/gui/GEOM/images/transformation4a.png and b/doc/salome/gui/GEOM/images/transformation4a.png differ diff --git a/doc/salome/gui/GEOM/images/transformation5.png b/doc/salome/gui/GEOM/images/transformation5.png index 8d1cf9254..48b632622 100755 Binary files a/doc/salome/gui/GEOM/images/transformation5.png and b/doc/salome/gui/GEOM/images/transformation5.png differ diff --git a/doc/salome/gui/GEOM/images/transformation6.png b/doc/salome/gui/GEOM/images/transformation6.png index 3e3828bd8..b77c7450f 100755 Binary files a/doc/salome/gui/GEOM/images/transformation6.png and b/doc/salome/gui/GEOM/images/transformation6.png differ diff --git a/doc/salome/gui/GEOM/images/transformation7.png b/doc/salome/gui/GEOM/images/transformation7.png index 03a16fe01..cadec9ec2 100755 Binary files a/doc/salome/gui/GEOM/images/transformation7.png and b/doc/salome/gui/GEOM/images/transformation7.png differ diff --git a/doc/salome/gui/GEOM/images/transformation8.png b/doc/salome/gui/GEOM/images/transformation8.png index 77d030385..316314320 100755 Binary files a/doc/salome/gui/GEOM/images/transformation8.png and b/doc/salome/gui/GEOM/images/transformation8.png differ diff --git a/doc/salome/gui/GEOM/images/transformation9.png b/doc/salome/gui/GEOM/images/transformation9.png index c7f6194d3..1b633a490 100755 Binary files a/doc/salome/gui/GEOM/images/transformation9.png and b/doc/salome/gui/GEOM/images/transformation9.png differ diff --git a/doc/salome/gui/GEOM/images/translation3.png b/doc/salome/gui/GEOM/images/translation3.png new file mode 100644 index 000000000..19337ceaa Binary files /dev/null and b/doc/salome/gui/GEOM/images/translation3.png differ diff --git a/doc/salome/gui/GEOM/images/vector1.png b/doc/salome/gui/GEOM/images/vector1.png index 46e3b20f3..e702853e0 100755 Binary files a/doc/salome/gui/GEOM/images/vector1.png and b/doc/salome/gui/GEOM/images/vector1.png differ diff --git a/doc/salome/gui/GEOM/images/vector2.png b/doc/salome/gui/GEOM/images/vector2.png index bb5c64c56..ca71d9df4 100755 Binary files a/doc/salome/gui/GEOM/images/vector2.png and b/doc/salome/gui/GEOM/images/vector2.png differ diff --git a/doc/salome/gui/GEOM/images/workplane4.png b/doc/salome/gui/GEOM/images/workplane4.png index 00835eb54..b85732f24 100755 Binary files a/doc/salome/gui/GEOM/images/workplane4.png and b/doc/salome/gui/GEOM/images/workplane4.png differ diff --git a/doc/salome/gui/GEOM/images/workplane5.png b/doc/salome/gui/GEOM/images/workplane5.png index 925ac573b..24004c111 100755 Binary files a/doc/salome/gui/GEOM/images/workplane5.png and b/doc/salome/gui/GEOM/images/workplane5.png differ diff --git a/doc/salome/gui/GEOM/images/workplane6.png b/doc/salome/gui/GEOM/images/workplane6.png index 1f65862f8..6cdcbdbca 100755 Binary files a/doc/salome/gui/GEOM/images/workplane6.png and b/doc/salome/gui/GEOM/images/workplane6.png differ diff --git a/doc/salome/gui/GEOM/input/add_point_on_edge_operation.doc b/doc/salome/gui/GEOM/input/add_point_on_edge_operation.doc index 00951bcd0..f16624bbd 100644 --- a/doc/salome/gui/GEOM/input/add_point_on_edge_operation.doc +++ b/doc/salome/gui/GEOM/input/add_point_on_edge_operation.doc @@ -26,9 +26,9 @@ the point according to one of the selected modes. \n Example: -\image html image167.jpg +\image html image167.jpg "The initial edge" -\image html image168.jpg +\image html image168.jpg "The edge split in two segments" Our TUI Scripts provide you with useful examples of the use of \ref tui_add_point_on_edge "Repairing Operations". diff --git a/doc/salome/gui/GEOM/input/archimede.doc b/doc/salome/gui/GEOM/input/archimede.doc index 6019112b6..933a8d018 100644 --- a/doc/salome/gui/GEOM/input/archimede.doc +++ b/doc/salome/gui/GEOM/input/archimede.doc @@ -22,11 +22,11 @@ deflection of the mesh, using to compute the section. \n Example: -\image html archimedesn1.png +\image html archimedesn1.png "The shape" -\image html archimedesn2.png +\image html archimedesn2.png "The waterline on the shape" -\image html archimedesn3.png +\image html archimedesn3.png "The resulting plane" Our TUI Scripts provide you with useful examples of the use of \ref tui_archimede "Basic Operations". diff --git a/doc/salome/gui/GEOM/input/basic_operations.doc b/doc/salome/gui/GEOM/input/basic_operations.doc deleted file mode 100644 index a0dc155af..000000000 --- a/doc/salome/gui/GEOM/input/basic_operations.doc +++ /dev/null @@ -1,10 +0,0 @@ -/*! - -\page basic_operations_page Basic Operations - - - -*/ \ No newline at end of file diff --git a/doc/salome/gui/GEOM/input/blocks_operations.doc b/doc/salome/gui/GEOM/input/blocks_operations.doc index 8fe02df8d..685f99509 100644 --- a/doc/salome/gui/GEOM/input/blocks_operations.doc +++ b/doc/salome/gui/GEOM/input/blocks_operations.doc @@ -2,10 +2,15 @@ \page blocks_operations_page Blocks Operations +The solids built by blocks \ref build_by_blocks_page can be +processed with blocks transformation operations: + */ \ No newline at end of file diff --git a/doc/salome/gui/GEOM/input/boolean_operations.doc b/doc/salome/gui/GEOM/input/boolean_operations.doc deleted file mode 100644 index 80d560e6b..000000000 --- a/doc/salome/gui/GEOM/input/boolean_operations.doc +++ /dev/null @@ -1,13 +0,0 @@ -/*! - -\page boolean_operations_page Boolean Operations - - - -*/ \ No newline at end of file diff --git a/doc/salome/gui/GEOM/input/building_by_blocks.doc b/doc/salome/gui/GEOM/input/building_by_blocks.doc index d3964eca2..fa2611d7c 100644 --- a/doc/salome/gui/GEOM/input/building_by_blocks.doc +++ b/doc/salome/gui/GEOM/input/building_by_blocks.doc @@ -65,7 +65,7 @@ four edges from which the face is constructed. \image html block3.png \n Example: -\image html image185.jpg +\image html image185.jpg "Quadrangle face built by blocks"

@@ -110,6 +110,9 @@ automatically. \image html image181.jpg
Hexahedral Solid built on the base of two Faces
+ +The created blocks can be processed with \ref blocks_operations_page "Operations on Blocks". + Our TUI Scripts provide you with useful examples of \ref tui_building_by_blocks_page "Building by Blocks". diff --git a/doc/salome/gui/GEOM/input/chamfer_operation.doc b/doc/salome/gui/GEOM/input/chamfer_operation.doc index 53e114094..38fdba843 100644 --- a/doc/salome/gui/GEOM/input/chamfer_operation.doc +++ b/doc/salome/gui/GEOM/input/chamfer_operation.doc @@ -16,11 +16,11 @@ Dimension (radius) of the chamfer. \image html chamfer1.png -\image html chamfer_all.png +\image html chamfer_all.png "Chamfer on the whole object" \n In the algorithms below there exist two ways to define the \b Dimension of the Chamfer -\n Firstly the \b Dimension can be defined via \b D1 and \D2, which +\n Firstly the \b Dimension can be defined via \b D1 and \b D2, which represent the offset on the first and the second face forming the edge. \n Secondly the \b Dimension can be defined via \b D, which represents @@ -44,7 +44,7 @@ Face1, Face2), where \em D1 is a chamfer size along \em Face1 and \image html chamfer2.png -\image html chamfer_edge.png +\image html chamfer_edge.png "Chamfer on the specified edges" \n To create chamfer on the specified faces of the given shape, you need to define the Main Object to create a fillet on, select the @@ -62,7 +62,7 @@ ListOfFaceID), where \em D1 is a chamfer size along \em Face1 and \image html chamfer3.png -\image html chamfer_faces.png +\image html chamfer_faces.png "Chamfer on the specified faces" \n To create chamfer on an arbitrary set of edges of the given shape to define the Main Object to create a fillet on, select the diff --git a/doc/salome/gui/GEOM/input/check_free_boundaries_operation.doc b/doc/salome/gui/GEOM/input/check_free_boundaries_operation.doc deleted file mode 100644 index f586dde4a..000000000 --- a/doc/salome/gui/GEOM/input/check_free_boundaries_operation.doc +++ /dev/null @@ -1,29 +0,0 @@ -/*! - -\page check_free_boundaries_operation_page Check Free Boundaries - -\n To Check Free Boundaries in the Main Menu select Repair - > Check Free Boundaries. - -\n This operation detects wires and edges that are not shared between -two faces and are considered a shape's boundary. This control highlights them. - -\n The \b Result will be a \b GEOM_Object. - -\n TUI Command: (NoError, ClosedWires, OpenWires) = -geompy.GetFreeBoundary(Shape), where \em Shape is a shape to be -checked, \em NoError is false if an error occurred while checking free -boundaries, \em ClosedWires is a list of closed free boundary wires, -\em OpenWires is a list of open free boundary wires. - -\image html repair9.png - -\n Example: - -\image html free_boudaries1.png - -\image html free_boudaries2.png - -Our TUI Scripts provide you with useful examples of the use of -\ref tui_check_free_boundaries "Repairing Operations". - -*/ diff --git a/doc/salome/gui/GEOM/input/check_free_faces_operation.doc b/doc/salome/gui/GEOM/input/check_free_faces_operation.doc deleted file mode 100644 index acf9d5428..000000000 --- a/doc/salome/gui/GEOM/input/check_free_faces_operation.doc +++ /dev/null @@ -1,27 +0,0 @@ -/*! - -\page check_free_faces_operation_page Check Free Faces - -\n To Check Free Faces in the Main Menu select Repair - > Check Free Faces. -\n This operation highlights all free faces from a given shape. A free -face is a face which is not shared between two objects of the shape. - -\n \b NOTE: This functionality works only in VTK viewer. - -\n The \b Result will be a \b GEOM_Object (a list of IDs of all free -faces, containing in the shape). -\n TUI Command: GetFreeFacesIDs(Shape), where \em Shape is -a shape to be checked. - -\image html repair10.png - -\n Example: - -\image html free_faces1.png - -\image html free_faces2.png - -Our TUI Scripts provide you with useful examples of the use of -\ref tui_check_free_faces "Repairing Operations". - -*/ diff --git a/doc/salome/gui/GEOM/input/common_operation.doc b/doc/salome/gui/GEOM/input/common_operation.doc index 21cd27749..dfefce0df 100644 --- a/doc/salome/gui/GEOM/input/common_operation.doc +++ b/doc/salome/gui/GEOM/input/common_operation.doc @@ -9,14 +9,16 @@ \n The \b Result will be any \b GEOM_Object. \n TUI Command: geompy.MakeCommon(s1, s2) \n Arguments: Name + 2 shapes. +\n Advanced option: + \ref restore_presentation_parameters_page "Set presentation parameters and subshapes from arguments". \image html bool2.png \n Example: -\image html fusesn1.png +\image html fusesn1.png "The initial shapes" -\image html commonsn.png +\image html commonsn.png "The resulting object" Our TUI Scripts provide you with useful examples of the use of \ref tui_common "Boolean Operations". diff --git a/doc/salome/gui/GEOM/input/creating_3dsketcher.doc b/doc/salome/gui/GEOM/input/creating_3dsketcher.doc new file mode 100755 index 000000000..bb914ea55 --- /dev/null +++ b/doc/salome/gui/GEOM/input/creating_3dsketcher.doc @@ -0,0 +1,31 @@ +/*! + +\page create_3dsketcher_page 3D Sketcher + +3D Sketcher allows creating a closed or unclosed 3D wire from a list of points. + +To create a 3D Sketch, select in the main menu New Entity -> 3D Sketch. + +\image html 3dsketch2.png + +The position of each coordinates can be defined by absolute coordinates X, Y, Z or +by relative coordinates DX, DY, DZ with respect to the previous Applied point. +Type of coordinates can be selected by the Coordinates Type radio buttons. +\n "Sketch Validation" button applies the wire, only red part will be built by "Sketch Validation". +\n "Sketch Closure" will close the Sketch by straight line from last red part and apply it. +To make a closed wire using the TUI command, the first and the last point shoul +have the same coordinates. + +The Result of the operation will be a \b GEOM_Object. + +TUI Command: geompy.Make3DSketcher( [ PointsList ] ) +This algorithm creates a wire, from the list of real values which define XYZ +coordinates of points. + +Example: + +\image html 3dsketch1.png + +Our TUI Scripts provide you with useful examples of the use of +\ref tui_3dsketcher_page "3D Sketcher". +*/ diff --git a/doc/salome/gui/GEOM/input/creating_adv_obj.doc b/doc/salome/gui/GEOM/input/creating_adv_obj.doc index ebaf38aaa..26b0b4601 100644 --- a/doc/salome/gui/GEOM/input/creating_adv_obj.doc +++ b/doc/salome/gui/GEOM/input/creating_adv_obj.doc @@ -2,8 +2,10 @@ \page create_adv_obj_page Creating Advanced Geometrical Objects +New Entity -> Build submenu allows to create topological +entities: + + +
  • Finally, confirm your selection by clicking Apply and Close + (also closes the Menu) or \b Apply (leaves the Menu open for +creation of other groups), or skip it by clicking \b Close button. +
  • \n The Result of the operation will be a \b GEOM_Object. @@ -52,12 +68,12 @@ created, ShapeType is a type of shapes in the created group. Example: -\image html image193.jpg +\image html image193.jpg "Groups on a cylinder"

    Edit a group

    -\image html image57.gif +\image html image57.png To \b Edit an existing group in the main menu select New entity > Group > Edit. This menu is designed in the same way as the diff --git a/doc/salome/gui/GEOM/pics/angle.png b/doc/salome/gui/GEOM/pics/angle.png deleted file mode 100755 index fbe753880..000000000 Binary files a/doc/salome/gui/GEOM/pics/angle.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/arc.png b/doc/salome/gui/GEOM/pics/arc.png deleted file mode 100755 index 260a5fb7d..000000000 Binary files a/doc/salome/gui/GEOM/pics/arc.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/arc2.png b/doc/salome/gui/GEOM/pics/arc2.png deleted file mode 100644 index 2bced2ae0..000000000 Binary files a/doc/salome/gui/GEOM/pics/arc2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/archimede.png b/doc/salome/gui/GEOM/pics/archimede.png deleted file mode 100755 index cd620020e..000000000 Binary files a/doc/salome/gui/GEOM/pics/archimede.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/archimedesn1.png b/doc/salome/gui/GEOM/pics/archimedesn1.png deleted file mode 100755 index 402092052..000000000 Binary files a/doc/salome/gui/GEOM/pics/archimedesn1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/archimedesn2.png b/doc/salome/gui/GEOM/pics/archimedesn2.png deleted file mode 100755 index b3b84b155..000000000 Binary files a/doc/salome/gui/GEOM/pics/archimedesn2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/archimedesn3.png b/doc/salome/gui/GEOM/pics/archimedesn3.png deleted file mode 100755 index da57c0fb9..000000000 Binary files a/doc/salome/gui/GEOM/pics/archimedesn3.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/arcsn.png b/doc/salome/gui/GEOM/pics/arcsn.png deleted file mode 100755 index 4131e41f5..000000000 Binary files a/doc/salome/gui/GEOM/pics/arcsn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/arcsn1.png b/doc/salome/gui/GEOM/pics/arcsn1.png deleted file mode 100644 index 564f12edf..000000000 Binary files a/doc/salome/gui/GEOM/pics/arcsn1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/arcsn2.png b/doc/salome/gui/GEOM/pics/arcsn2.png deleted file mode 100644 index f2bec5d29..000000000 Binary files a/doc/salome/gui/GEOM/pics/arcsn2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/bezier.png b/doc/salome/gui/GEOM/pics/bezier.png deleted file mode 100755 index 3c0e8df2b..000000000 Binary files a/doc/salome/gui/GEOM/pics/bezier.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/block1.png b/doc/salome/gui/GEOM/pics/block1.png deleted file mode 100755 index 71a93b0c9..000000000 Binary files a/doc/salome/gui/GEOM/pics/block1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/block2.png b/doc/salome/gui/GEOM/pics/block2.png deleted file mode 100755 index c66dd7f02..000000000 Binary files a/doc/salome/gui/GEOM/pics/block2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/block3.png b/doc/salome/gui/GEOM/pics/block3.png deleted file mode 100755 index 61aad9b43..000000000 Binary files a/doc/salome/gui/GEOM/pics/block3.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/block4.png b/doc/salome/gui/GEOM/pics/block4.png deleted file mode 100755 index d0661b6e9..000000000 Binary files a/doc/salome/gui/GEOM/pics/block4.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/block5.png b/doc/salome/gui/GEOM/pics/block5.png deleted file mode 100755 index 9810f6f0d..000000000 Binary files a/doc/salome/gui/GEOM/pics/block5.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/block_explodesn.png b/doc/salome/gui/GEOM/pics/block_explodesn.png deleted file mode 100755 index 372de3f20..000000000 Binary files a/doc/salome/gui/GEOM/pics/block_explodesn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/bool1.png b/doc/salome/gui/GEOM/pics/bool1.png deleted file mode 100755 index 3f997a772..000000000 Binary files a/doc/salome/gui/GEOM/pics/bool1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/bool2.png b/doc/salome/gui/GEOM/pics/bool2.png deleted file mode 100755 index 4e9b96862..000000000 Binary files a/doc/salome/gui/GEOM/pics/bool2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/bool3.png b/doc/salome/gui/GEOM/pics/bool3.png deleted file mode 100755 index af409a15e..000000000 Binary files a/doc/salome/gui/GEOM/pics/bool3.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/box1.png b/doc/salome/gui/GEOM/pics/box1.png deleted file mode 100755 index 812027dcf..000000000 Binary files a/doc/salome/gui/GEOM/pics/box1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/box2.png b/doc/salome/gui/GEOM/pics/box2.png deleted file mode 100755 index 85a737afb..000000000 Binary files a/doc/salome/gui/GEOM/pics/box2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/boxes.png b/doc/salome/gui/GEOM/pics/boxes.png deleted file mode 100755 index f2fad497e..000000000 Binary files a/doc/salome/gui/GEOM/pics/boxes.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/chamfer1.png b/doc/salome/gui/GEOM/pics/chamfer1.png deleted file mode 100755 index fdbe02fbd..000000000 Binary files a/doc/salome/gui/GEOM/pics/chamfer1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/chamfer2.png b/doc/salome/gui/GEOM/pics/chamfer2.png deleted file mode 100755 index 24d6e124e..000000000 Binary files a/doc/salome/gui/GEOM/pics/chamfer2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/chamfer3.png b/doc/salome/gui/GEOM/pics/chamfer3.png deleted file mode 100755 index 801f8db2f..000000000 Binary files a/doc/salome/gui/GEOM/pics/chamfer3.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/chamfer4.png b/doc/salome/gui/GEOM/pics/chamfer4.png deleted file mode 100755 index 14476b447..000000000 Binary files a/doc/salome/gui/GEOM/pics/chamfer4.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/chamfer_all.png b/doc/salome/gui/GEOM/pics/chamfer_all.png deleted file mode 100755 index c398cb0c5..000000000 Binary files a/doc/salome/gui/GEOM/pics/chamfer_all.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/chamfer_edge.png b/doc/salome/gui/GEOM/pics/chamfer_edge.png deleted file mode 100755 index 8ed8fc005..000000000 Binary files a/doc/salome/gui/GEOM/pics/chamfer_edge.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/chamfer_faces.png b/doc/salome/gui/GEOM/pics/chamfer_faces.png deleted file mode 100755 index 961cf0386..000000000 Binary files a/doc/salome/gui/GEOM/pics/chamfer_faces.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/changeorientation.png b/doc/salome/gui/GEOM/pics/changeorientation.png deleted file mode 100755 index 95322ed69..000000000 Binary files a/doc/salome/gui/GEOM/pics/changeorientation.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/circle1.png b/doc/salome/gui/GEOM/pics/circle1.png deleted file mode 100755 index 840a25973..000000000 Binary files a/doc/salome/gui/GEOM/pics/circle1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/circle2.png b/doc/salome/gui/GEOM/pics/circle2.png deleted file mode 100755 index 7500eaf2c..000000000 Binary files a/doc/salome/gui/GEOM/pics/circle2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/circle3.png b/doc/salome/gui/GEOM/pics/circle3.png deleted file mode 100755 index 39aa5b1ba..000000000 Binary files a/doc/salome/gui/GEOM/pics/circle3.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/circles.png b/doc/salome/gui/GEOM/pics/circles.png deleted file mode 100755 index dc367ce8b..000000000 Binary files a/doc/salome/gui/GEOM/pics/circles.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/colorsn.png b/doc/salome/gui/GEOM/pics/colorsn.png deleted file mode 100755 index f0c440147..000000000 Binary files a/doc/salome/gui/GEOM/pics/colorsn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/commonsn.png b/doc/salome/gui/GEOM/pics/commonsn.png deleted file mode 100755 index e5c0c4131..000000000 Binary files a/doc/salome/gui/GEOM/pics/commonsn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/compoundsn.png b/doc/salome/gui/GEOM/pics/compoundsn.png deleted file mode 100755 index 33e1012ed..000000000 Binary files a/doc/salome/gui/GEOM/pics/compoundsn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/cone1.png b/doc/salome/gui/GEOM/pics/cone1.png deleted file mode 100755 index f5a95922a..000000000 Binary files a/doc/salome/gui/GEOM/pics/cone1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/cone2.png b/doc/salome/gui/GEOM/pics/cone2.png deleted file mode 100755 index 1b0582140..000000000 Binary files a/doc/salome/gui/GEOM/pics/cone2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/cones.png b/doc/salome/gui/GEOM/pics/cones.png deleted file mode 100755 index 4c8108ce1..000000000 Binary files a/doc/salome/gui/GEOM/pics/cones.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/curve.png b/doc/salome/gui/GEOM/pics/curve.png deleted file mode 100755 index a9541de0a..000000000 Binary files a/doc/salome/gui/GEOM/pics/curve.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/cutsn.png b/doc/salome/gui/GEOM/pics/cutsn.png deleted file mode 100755 index eda9bb712..000000000 Binary files a/doc/salome/gui/GEOM/pics/cutsn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/cylinder1.png b/doc/salome/gui/GEOM/pics/cylinder1.png deleted file mode 100755 index 71b619df8..000000000 Binary files a/doc/salome/gui/GEOM/pics/cylinder1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/cylinder2.png b/doc/salome/gui/GEOM/pics/cylinder2.png deleted file mode 100755 index ee6ed12e6..000000000 Binary files a/doc/salome/gui/GEOM/pics/cylinder2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/cylinders.png b/doc/salome/gui/GEOM/pics/cylinders.png deleted file mode 100755 index fc0d43276..000000000 Binary files a/doc/salome/gui/GEOM/pics/cylinders.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/dialog.png b/doc/salome/gui/GEOM/pics/dialog.png deleted file mode 100755 index 63f984b75..000000000 Binary files a/doc/salome/gui/GEOM/pics/dialog.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/disp_mode1sn.png b/doc/salome/gui/GEOM/pics/disp_mode1sn.png deleted file mode 100755 index b5b7e8ff2..000000000 Binary files a/doc/salome/gui/GEOM/pics/disp_mode1sn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/disp_mode2sn.png b/doc/salome/gui/GEOM/pics/disp_mode2sn.png deleted file mode 100755 index 362232739..000000000 Binary files a/doc/salome/gui/GEOM/pics/disp_mode2sn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/distance.png b/doc/salome/gui/GEOM/pics/distance.png deleted file mode 100755 index 141ec8e5a..000000000 Binary files a/doc/salome/gui/GEOM/pics/distance.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/edgesn.png b/doc/salome/gui/GEOM/pics/edgesn.png deleted file mode 100755 index 9de8df9ef..000000000 Binary files a/doc/salome/gui/GEOM/pics/edgesn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/editgroup.png b/doc/salome/gui/GEOM/pics/editgroup.png deleted file mode 100755 index db3e23575..000000000 Binary files a/doc/salome/gui/GEOM/pics/editgroup.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/ellipse.png b/doc/salome/gui/GEOM/pics/ellipse.png deleted file mode 100755 index 0888b5021..000000000 Binary files a/doc/salome/gui/GEOM/pics/ellipse.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/ellipsesn.png b/doc/salome/gui/GEOM/pics/ellipsesn.png deleted file mode 100755 index 1c421541d..000000000 Binary files a/doc/salome/gui/GEOM/pics/ellipsesn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/extrusion1.png b/doc/salome/gui/GEOM/pics/extrusion1.png deleted file mode 100755 index 673e86325..000000000 Binary files a/doc/salome/gui/GEOM/pics/extrusion1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/extrusion2.png b/doc/salome/gui/GEOM/pics/extrusion2.png deleted file mode 100755 index b56dc5d49..000000000 Binary files a/doc/salome/gui/GEOM/pics/extrusion2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/facesn1.png b/doc/salome/gui/GEOM/pics/facesn1.png deleted file mode 100755 index c78703a11..000000000 Binary files a/doc/salome/gui/GEOM/pics/facesn1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/facesn2.png b/doc/salome/gui/GEOM/pics/facesn2.png deleted file mode 100755 index 59403a08c..000000000 Binary files a/doc/salome/gui/GEOM/pics/facesn2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/facesn3.png b/doc/salome/gui/GEOM/pics/facesn3.png deleted file mode 100755 index 7c95d1156..000000000 Binary files a/doc/salome/gui/GEOM/pics/facesn3.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/fillet1.png b/doc/salome/gui/GEOM/pics/fillet1.png deleted file mode 100755 index 7fd3db53f..000000000 Binary files a/doc/salome/gui/GEOM/pics/fillet1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/fillet2.png b/doc/salome/gui/GEOM/pics/fillet2.png deleted file mode 100755 index 2eab8754b..000000000 Binary files a/doc/salome/gui/GEOM/pics/fillet2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/fillet3.png b/doc/salome/gui/GEOM/pics/fillet3.png deleted file mode 100755 index 6e46e05dd..000000000 Binary files a/doc/salome/gui/GEOM/pics/fillet3.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/fillet_all.png b/doc/salome/gui/GEOM/pics/fillet_all.png deleted file mode 100755 index c1650b907..000000000 Binary files a/doc/salome/gui/GEOM/pics/fillet_all.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/fillet_edge.png b/doc/salome/gui/GEOM/pics/fillet_edge.png deleted file mode 100755 index 9572abb79..000000000 Binary files a/doc/salome/gui/GEOM/pics/fillet_edge.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/fillet_prism.png b/doc/salome/gui/GEOM/pics/fillet_prism.png deleted file mode 100755 index 3a44a07e6..000000000 Binary files a/doc/salome/gui/GEOM/pics/fillet_prism.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/filling.png b/doc/salome/gui/GEOM/pics/filling.png deleted file mode 100755 index 418c22431..000000000 Binary files a/doc/salome/gui/GEOM/pics/filling.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/filling_compoundsn.png b/doc/salome/gui/GEOM/pics/filling_compoundsn.png deleted file mode 100755 index 9d3846b2b..000000000 Binary files a/doc/salome/gui/GEOM/pics/filling_compoundsn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/fillingsn.png b/doc/salome/gui/GEOM/pics/fillingsn.png deleted file mode 100755 index 2446e89d5..000000000 Binary files a/doc/salome/gui/GEOM/pics/fillingsn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/free_boudaries1.png b/doc/salome/gui/GEOM/pics/free_boudaries1.png deleted file mode 100755 index 20c29f965..000000000 Binary files a/doc/salome/gui/GEOM/pics/free_boudaries1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/free_boudaries2.png b/doc/salome/gui/GEOM/pics/free_boudaries2.png deleted file mode 100755 index 1523fe911..000000000 Binary files a/doc/salome/gui/GEOM/pics/free_boudaries2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/free_faces1.png b/doc/salome/gui/GEOM/pics/free_faces1.png deleted file mode 100755 index 530d8440b..000000000 Binary files a/doc/salome/gui/GEOM/pics/free_faces1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/free_faces2.png b/doc/salome/gui/GEOM/pics/free_faces2.png deleted file mode 100755 index 7526bd17c..000000000 Binary files a/doc/salome/gui/GEOM/pics/free_faces2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/fusesn1.png b/doc/salome/gui/GEOM/pics/fusesn1.png deleted file mode 100755 index e0118cbd2..000000000 Binary files a/doc/salome/gui/GEOM/pics/fusesn1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/fusesn2.png b/doc/salome/gui/GEOM/pics/fusesn2.png deleted file mode 100755 index f8a2b0108..000000000 Binary files a/doc/salome/gui/GEOM/pics/fusesn2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/geomcreategroup.png b/doc/salome/gui/GEOM/pics/geomcreategroup.png deleted file mode 100755 index f51ab22fd..000000000 Binary files a/doc/salome/gui/GEOM/pics/geomcreategroup.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/geomexport.png b/doc/salome/gui/GEOM/pics/geomexport.png deleted file mode 100755 index c37713941..000000000 Binary files a/doc/salome/gui/GEOM/pics/geomexport.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/geomimport.png b/doc/salome/gui/GEOM/pics/geomimport.png deleted file mode 100755 index 516a819bd..000000000 Binary files a/doc/salome/gui/GEOM/pics/geomimport.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/glue_faces1.png b/doc/salome/gui/GEOM/pics/glue_faces1.png deleted file mode 100755 index 787c9b0d6..000000000 Binary files a/doc/salome/gui/GEOM/pics/glue_faces1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/glue_faces2.png b/doc/salome/gui/GEOM/pics/glue_faces2.png deleted file mode 100755 index d33661367..000000000 Binary files a/doc/salome/gui/GEOM/pics/glue_faces2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/interpol.png b/doc/salome/gui/GEOM/pics/interpol.png deleted file mode 100755 index ac77ddfa3..000000000 Binary files a/doc/salome/gui/GEOM/pics/interpol.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/isos_u12_v12sn.png b/doc/salome/gui/GEOM/pics/isos_u12_v12sn.png deleted file mode 100755 index 10a13ce4b..000000000 Binary files a/doc/salome/gui/GEOM/pics/isos_u12_v12sn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/line.png b/doc/salome/gui/GEOM/pics/line.png deleted file mode 100755 index 3c931a1e9..000000000 Binary files a/doc/salome/gui/GEOM/pics/line.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/lines.png b/doc/salome/gui/GEOM/pics/lines.png deleted file mode 100755 index de12c1122..000000000 Binary files a/doc/salome/gui/GEOM/pics/lines.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/measures1.png b/doc/salome/gui/GEOM/pics/measures1.png deleted file mode 100755 index 6d5d698b4..000000000 Binary files a/doc/salome/gui/GEOM/pics/measures1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/measures10.png b/doc/salome/gui/GEOM/pics/measures10.png deleted file mode 100755 index 33023cc49..000000000 Binary files a/doc/salome/gui/GEOM/pics/measures10.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/measures3.png b/doc/salome/gui/GEOM/pics/measures3.png deleted file mode 100755 index 9a55aad4a..000000000 Binary files a/doc/salome/gui/GEOM/pics/measures3.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/measures4.png b/doc/salome/gui/GEOM/pics/measures4.png deleted file mode 100755 index ea243e888..000000000 Binary files a/doc/salome/gui/GEOM/pics/measures4.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/measures5.png b/doc/salome/gui/GEOM/pics/measures5.png deleted file mode 100755 index a323426e6..000000000 Binary files a/doc/salome/gui/GEOM/pics/measures5.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/measures8.png b/doc/salome/gui/GEOM/pics/measures8.png deleted file mode 100755 index 94bed3271..000000000 Binary files a/doc/salome/gui/GEOM/pics/measures8.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/measures9.png b/doc/salome/gui/GEOM/pics/measures9.png deleted file mode 100755 index 7d42d2935..000000000 Binary files a/doc/salome/gui/GEOM/pics/measures9.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/mirror_axissn1.png b/doc/salome/gui/GEOM/pics/mirror_axissn1.png deleted file mode 100755 index 86be83e7a..000000000 Binary files a/doc/salome/gui/GEOM/pics/mirror_axissn1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/mirror_axissn2.png b/doc/salome/gui/GEOM/pics/mirror_axissn2.png deleted file mode 100755 index 6009fa7cf..000000000 Binary files a/doc/salome/gui/GEOM/pics/mirror_axissn2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/mirror_planesn1.png b/doc/salome/gui/GEOM/pics/mirror_planesn1.png deleted file mode 100755 index 969f0e0f4..000000000 Binary files a/doc/salome/gui/GEOM/pics/mirror_planesn1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/mirror_planesn2.png b/doc/salome/gui/GEOM/pics/mirror_planesn2.png deleted file mode 100755 index e9eb4966d..000000000 Binary files a/doc/salome/gui/GEOM/pics/mirror_planesn2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/mirror_pointsn1.png b/doc/salome/gui/GEOM/pics/mirror_pointsn1.png deleted file mode 100755 index 675b0bff1..000000000 Binary files a/doc/salome/gui/GEOM/pics/mirror_pointsn1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/mirror_pointsn2.png b/doc/salome/gui/GEOM/pics/mirror_pointsn2.png deleted file mode 100755 index ab6235906..000000000 Binary files a/doc/salome/gui/GEOM/pics/mirror_pointsn2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/mtrans1.png b/doc/salome/gui/GEOM/pics/mtrans1.png deleted file mode 100755 index 7dfe730c3..000000000 Binary files a/doc/salome/gui/GEOM/pics/mtrans1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/mtrans2.png b/doc/salome/gui/GEOM/pics/mtrans2.png deleted file mode 100755 index 62b35bb0c..000000000 Binary files a/doc/salome/gui/GEOM/pics/mtrans2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/mtransf1.png b/doc/salome/gui/GEOM/pics/mtransf1.png deleted file mode 100755 index 207e920f9..000000000 Binary files a/doc/salome/gui/GEOM/pics/mtransf1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/mtransf2.png b/doc/salome/gui/GEOM/pics/mtransf2.png deleted file mode 100755 index 3435f0f8c..000000000 Binary files a/doc/salome/gui/GEOM/pics/mtransf2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/mtransf3.png b/doc/salome/gui/GEOM/pics/mtransf3.png deleted file mode 100755 index 628d8b0a6..000000000 Binary files a/doc/salome/gui/GEOM/pics/mtransf3.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/mtransf4.png b/doc/salome/gui/GEOM/pics/mtransf4.png deleted file mode 100755 index cbe904444..000000000 Binary files a/doc/salome/gui/GEOM/pics/mtransf4.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/multi_rotation1d1.png b/doc/salome/gui/GEOM/pics/multi_rotation1d1.png deleted file mode 100755 index 4085f434b..000000000 Binary files a/doc/salome/gui/GEOM/pics/multi_rotation1d1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/multi_rotation1d2.png b/doc/salome/gui/GEOM/pics/multi_rotation1d2.png deleted file mode 100755 index 8089092a8..000000000 Binary files a/doc/salome/gui/GEOM/pics/multi_rotation1d2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/multi_rotation2d1.png b/doc/salome/gui/GEOM/pics/multi_rotation2d1.png deleted file mode 100755 index 1bdd25302..000000000 Binary files a/doc/salome/gui/GEOM/pics/multi_rotation2d1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/multi_rotation2d2.png b/doc/salome/gui/GEOM/pics/multi_rotation2d2.png deleted file mode 100755 index aa61ca606..000000000 Binary files a/doc/salome/gui/GEOM/pics/multi_rotation2d2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/multi_transformationsn1d.png b/doc/salome/gui/GEOM/pics/multi_transformationsn1d.png deleted file mode 100755 index dfcc440ae..000000000 Binary files a/doc/salome/gui/GEOM/pics/multi_transformationsn1d.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/multi_transformationsn2d.png b/doc/salome/gui/GEOM/pics/multi_transformationsn2d.png deleted file mode 100755 index f0fc1279c..000000000 Binary files a/doc/salome/gui/GEOM/pics/multi_transformationsn2d.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/multi_translation1dsn.png b/doc/salome/gui/GEOM/pics/multi_translation1dsn.png deleted file mode 100755 index 436a8169a..000000000 Binary files a/doc/salome/gui/GEOM/pics/multi_translation1dsn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/multi_translation2dsn.png b/doc/salome/gui/GEOM/pics/multi_translation2dsn.png deleted file mode 100755 index f44c8520e..000000000 Binary files a/doc/salome/gui/GEOM/pics/multi_translation2dsn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/multi_translation_initialsn.png b/doc/salome/gui/GEOM/pics/multi_translation_initialsn.png deleted file mode 100755 index 0b7b70afe..000000000 Binary files a/doc/salome/gui/GEOM/pics/multi_translation_initialsn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-basicprop.png b/doc/salome/gui/GEOM/pics/neo-basicprop.png deleted file mode 100755 index 2a9d7ca2a..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-basicprop.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-detect2.png b/doc/salome/gui/GEOM/pics/neo-detect2.png deleted file mode 100755 index f0dabe311..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-detect2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-isos.png b/doc/salome/gui/GEOM/pics/neo-isos.png deleted file mode 100755 index dbbcf8ef5..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-isos.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-localcs1.png b/doc/salome/gui/GEOM/pics/neo-localcs1.png deleted file mode 100755 index 9bdacafa2..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-localcs1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-localcs2.png b/doc/salome/gui/GEOM/pics/neo-localcs2.png deleted file mode 100755 index 3fc54a67c..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-localcs2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-localcs3.png b/doc/salome/gui/GEOM/pics/neo-localcs3.png deleted file mode 100755 index 01c8e24fa..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-localcs3.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-materials.png b/doc/salome/gui/GEOM/pics/neo-materials.png deleted file mode 100755 index 66917490c..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-materials.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-mrot1.png b/doc/salome/gui/GEOM/pics/neo-mrot1.png deleted file mode 100755 index 6cf2ab91b..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-mrot1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-mrot2.png b/doc/salome/gui/GEOM/pics/neo-mrot2.png deleted file mode 100755 index e2f37e052..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-mrot2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-obj1.png b/doc/salome/gui/GEOM/pics/neo-obj1.png deleted file mode 100755 index 88a7a8b8a..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-obj1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-obj2.png b/doc/salome/gui/GEOM/pics/neo-obj2.png deleted file mode 100755 index c940eaa38..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-obj2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-obj3.png b/doc/salome/gui/GEOM/pics/neo-obj3.png deleted file mode 100755 index d773938e2..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-obj3.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-obj4.png b/doc/salome/gui/GEOM/pics/neo-obj4.png deleted file mode 100755 index db5d49715..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-obj4.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-obj5.png b/doc/salome/gui/GEOM/pics/neo-obj5.png deleted file mode 100755 index e1579f082..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-obj5.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-obj6.png b/doc/salome/gui/GEOM/pics/neo-obj6.png deleted file mode 100755 index b6b3be440..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-obj6.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-obj7.png b/doc/salome/gui/GEOM/pics/neo-obj7.png deleted file mode 100755 index 15dfa2376..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-obj7.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-point2.png b/doc/salome/gui/GEOM/pics/neo-point2.png deleted file mode 100755 index 3bc59b860..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-point2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-scetcher1.png b/doc/salome/gui/GEOM/pics/neo-scetcher1.png deleted file mode 100755 index 7130e8b08..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-scetcher1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-scetcher2.png b/doc/salome/gui/GEOM/pics/neo-scetcher2.png deleted file mode 100755 index 330e1e3a3..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-scetcher2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-section.png b/doc/salome/gui/GEOM/pics/neo-section.png deleted file mode 100755 index 0d58ad244..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-section.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/neo-transparency.png b/doc/salome/gui/GEOM/pics/neo-transparency.png deleted file mode 100755 index ec1fb7f70..000000000 Binary files a/doc/salome/gui/GEOM/pics/neo-transparency.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/new-tolerance.png b/doc/salome/gui/GEOM/pics/new-tolerance.png deleted file mode 100755 index 796115ba9..000000000 Binary files a/doc/salome/gui/GEOM/pics/new-tolerance.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/normaletoface.png b/doc/salome/gui/GEOM/pics/normaletoface.png deleted file mode 100755 index 51bc43a8f..000000000 Binary files a/doc/salome/gui/GEOM/pics/normaletoface.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/offsetsn.png b/doc/salome/gui/GEOM/pics/offsetsn.png deleted file mode 100755 index 6404310e0..000000000 Binary files a/doc/salome/gui/GEOM/pics/offsetsn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/partition1.png b/doc/salome/gui/GEOM/pics/partition1.png deleted file mode 100755 index 20b22d296..000000000 Binary files a/doc/salome/gui/GEOM/pics/partition1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/partition2.png b/doc/salome/gui/GEOM/pics/partition2.png deleted file mode 100755 index a67ec9d8b..000000000 Binary files a/doc/salome/gui/GEOM/pics/partition2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/partitionsn1.png b/doc/salome/gui/GEOM/pics/partitionsn1.png deleted file mode 100755 index fa8404de4..000000000 Binary files a/doc/salome/gui/GEOM/pics/partitionsn1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/partitionsn2.png b/doc/salome/gui/GEOM/pics/partitionsn2.png deleted file mode 100755 index b7480a4fa..000000000 Binary files a/doc/salome/gui/GEOM/pics/partitionsn2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/pipe.png b/doc/salome/gui/GEOM/pics/pipe.png deleted file mode 100755 index e773731d2..000000000 Binary files a/doc/salome/gui/GEOM/pics/pipe.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/pipe_wire_edgesn.png b/doc/salome/gui/GEOM/pics/pipe_wire_edgesn.png deleted file mode 100755 index 4424b6bf1..000000000 Binary files a/doc/salome/gui/GEOM/pics/pipe_wire_edgesn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/pipesn.png b/doc/salome/gui/GEOM/pics/pipesn.png deleted file mode 100755 index 11ac1096b..000000000 Binary files a/doc/salome/gui/GEOM/pics/pipesn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/plane1.png b/doc/salome/gui/GEOM/pics/plane1.png deleted file mode 100755 index 47a9b8bcd..000000000 Binary files a/doc/salome/gui/GEOM/pics/plane1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/plane2.png b/doc/salome/gui/GEOM/pics/plane2.png deleted file mode 100755 index f4b880b44..000000000 Binary files a/doc/salome/gui/GEOM/pics/plane2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/plane3.png b/doc/salome/gui/GEOM/pics/plane3.png deleted file mode 100755 index 1727e3bb0..000000000 Binary files a/doc/salome/gui/GEOM/pics/plane3.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/plane_on_face.png b/doc/salome/gui/GEOM/pics/plane_on_face.png deleted file mode 100755 index 5df8823cd..000000000 Binary files a/doc/salome/gui/GEOM/pics/plane_on_face.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/planes1.png b/doc/salome/gui/GEOM/pics/planes1.png deleted file mode 100755 index c9a594cee..000000000 Binary files a/doc/salome/gui/GEOM/pics/planes1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/point1.png b/doc/salome/gui/GEOM/pics/point1.png deleted file mode 100755 index 39bca25f4..000000000 Binary files a/doc/salome/gui/GEOM/pics/point1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/point3.png b/doc/salome/gui/GEOM/pics/point3.png deleted file mode 100755 index 0a2e325c6..000000000 Binary files a/doc/salome/gui/GEOM/pics/point3.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/points.png b/doc/salome/gui/GEOM/pics/points.png deleted file mode 100755 index 547b277fd..000000000 Binary files a/doc/salome/gui/GEOM/pics/points.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/polyline.png b/doc/salome/gui/GEOM/pics/polyline.png deleted file mode 100755 index bd259e120..000000000 Binary files a/doc/salome/gui/GEOM/pics/polyline.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/prisms_basessn.png b/doc/salome/gui/GEOM/pics/prisms_basessn.png deleted file mode 100755 index d6a070083..000000000 Binary files a/doc/salome/gui/GEOM/pics/prisms_basessn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/prismssn.png b/doc/salome/gui/GEOM/pics/prismssn.png deleted file mode 100755 index 80c9af357..000000000 Binary files a/doc/salome/gui/GEOM/pics/prismssn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/repair1.png b/doc/salome/gui/GEOM/pics/repair1.png deleted file mode 100755 index 2b47fa5a4..000000000 Binary files a/doc/salome/gui/GEOM/pics/repair1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/repair10.png b/doc/salome/gui/GEOM/pics/repair10.png deleted file mode 100755 index c3c77164a..000000000 Binary files a/doc/salome/gui/GEOM/pics/repair10.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/repair2.png b/doc/salome/gui/GEOM/pics/repair2.png deleted file mode 100755 index 488a6a4c9..000000000 Binary files a/doc/salome/gui/GEOM/pics/repair2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/repair3.png b/doc/salome/gui/GEOM/pics/repair3.png deleted file mode 100755 index 4c2a41f90..000000000 Binary files a/doc/salome/gui/GEOM/pics/repair3.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/repair4.png b/doc/salome/gui/GEOM/pics/repair4.png deleted file mode 100755 index 2af7cbabb..000000000 Binary files a/doc/salome/gui/GEOM/pics/repair4.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/repair5.png b/doc/salome/gui/GEOM/pics/repair5.png deleted file mode 100755 index b99fbcbaf..000000000 Binary files a/doc/salome/gui/GEOM/pics/repair5.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/repair6.png b/doc/salome/gui/GEOM/pics/repair6.png deleted file mode 100755 index 5123d1f84..000000000 Binary files a/doc/salome/gui/GEOM/pics/repair6.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/repair7.png b/doc/salome/gui/GEOM/pics/repair7.png deleted file mode 100755 index 2b553b9fd..000000000 Binary files a/doc/salome/gui/GEOM/pics/repair7.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/repair8.png b/doc/salome/gui/GEOM/pics/repair8.png deleted file mode 100755 index f0016836e..000000000 Binary files a/doc/salome/gui/GEOM/pics/repair8.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/repair9.png b/doc/salome/gui/GEOM/pics/repair9.png deleted file mode 100755 index 7f5d4f5c3..000000000 Binary files a/doc/salome/gui/GEOM/pics/repair9.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/revolution.png b/doc/salome/gui/GEOM/pics/revolution.png deleted file mode 100755 index c02c859b1..000000000 Binary files a/doc/salome/gui/GEOM/pics/revolution.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/revolutionsn.png b/doc/salome/gui/GEOM/pics/revolutionsn.png deleted file mode 100755 index 7242c6710..000000000 Binary files a/doc/salome/gui/GEOM/pics/revolutionsn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/rotationsn1.png b/doc/salome/gui/GEOM/pics/rotationsn1.png deleted file mode 100755 index 697dcdedf..000000000 Binary files a/doc/salome/gui/GEOM/pics/rotationsn1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/rotationsn2.png b/doc/salome/gui/GEOM/pics/rotationsn2.png deleted file mode 100755 index 741d00c90..000000000 Binary files a/doc/salome/gui/GEOM/pics/rotationsn2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/scale_transformsn1.png b/doc/salome/gui/GEOM/pics/scale_transformsn1.png deleted file mode 100755 index 5af390922..000000000 Binary files a/doc/salome/gui/GEOM/pics/scale_transformsn1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/scale_transformsn2.png b/doc/salome/gui/GEOM/pics/scale_transformsn2.png deleted file mode 100755 index fa76d4158..000000000 Binary files a/doc/salome/gui/GEOM/pics/scale_transformsn2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/sectionsn.png b/doc/salome/gui/GEOM/pics/sectionsn.png deleted file mode 100755 index 8e636ee91..000000000 Binary files a/doc/salome/gui/GEOM/pics/sectionsn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/shellsn.png b/doc/salome/gui/GEOM/pics/shellsn.png deleted file mode 100755 index c7f22f323..000000000 Binary files a/doc/salome/gui/GEOM/pics/shellsn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/solidsn.png b/doc/salome/gui/GEOM/pics/solidsn.png deleted file mode 100755 index 297fc068c..000000000 Binary files a/doc/salome/gui/GEOM/pics/solidsn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/sphere1.png b/doc/salome/gui/GEOM/pics/sphere1.png deleted file mode 100755 index 377f1c9ce..000000000 Binary files a/doc/salome/gui/GEOM/pics/sphere1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/sphere2.png b/doc/salome/gui/GEOM/pics/sphere2.png deleted file mode 100755 index dd2cadb1f..000000000 Binary files a/doc/salome/gui/GEOM/pics/sphere2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/spheres.png b/doc/salome/gui/GEOM/pics/spheres.png deleted file mode 100755 index 2b79050f0..000000000 Binary files a/doc/salome/gui/GEOM/pics/spheres.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/supp_int_wires1.png b/doc/salome/gui/GEOM/pics/supp_int_wires1.png deleted file mode 100755 index 5f760560e..000000000 Binary files a/doc/salome/gui/GEOM/pics/supp_int_wires1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/supp_int_wires2.png b/doc/salome/gui/GEOM/pics/supp_int_wires2.png deleted file mode 100755 index e6dc3142a..000000000 Binary files a/doc/salome/gui/GEOM/pics/supp_int_wires2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/suppress_faces1.png b/doc/salome/gui/GEOM/pics/suppress_faces1.png deleted file mode 100755 index 7534ebeee..000000000 Binary files a/doc/salome/gui/GEOM/pics/suppress_faces1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/suppress_faces2.png b/doc/salome/gui/GEOM/pics/suppress_faces2.png deleted file mode 100755 index d38a4add3..000000000 Binary files a/doc/salome/gui/GEOM/pics/suppress_faces2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/torus1.png b/doc/salome/gui/GEOM/pics/torus1.png deleted file mode 100755 index 28e18afa0..000000000 Binary files a/doc/salome/gui/GEOM/pics/torus1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/torus2.png b/doc/salome/gui/GEOM/pics/torus2.png deleted file mode 100755 index 8877f1c37..000000000 Binary files a/doc/salome/gui/GEOM/pics/torus2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/toruses.png b/doc/salome/gui/GEOM/pics/toruses.png deleted file mode 100755 index 721bae271..000000000 Binary files a/doc/salome/gui/GEOM/pics/toruses.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/transformation1.png b/doc/salome/gui/GEOM/pics/transformation1.png deleted file mode 100755 index 8dbf8fe11..000000000 Binary files a/doc/salome/gui/GEOM/pics/transformation1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/transformation10.png b/doc/salome/gui/GEOM/pics/transformation10.png deleted file mode 100755 index 0847a5e03..000000000 Binary files a/doc/salome/gui/GEOM/pics/transformation10.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/transformation11.png b/doc/salome/gui/GEOM/pics/transformation11.png deleted file mode 100755 index b78acec2e..000000000 Binary files a/doc/salome/gui/GEOM/pics/transformation11.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/transformation2.png b/doc/salome/gui/GEOM/pics/transformation2.png deleted file mode 100755 index 569752740..000000000 Binary files a/doc/salome/gui/GEOM/pics/transformation2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/transformation3.png b/doc/salome/gui/GEOM/pics/transformation3.png deleted file mode 100755 index 96a1f1e36..000000000 Binary files a/doc/salome/gui/GEOM/pics/transformation3.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/transformation4.png b/doc/salome/gui/GEOM/pics/transformation4.png deleted file mode 100755 index 323c3d0ae..000000000 Binary files a/doc/salome/gui/GEOM/pics/transformation4.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/transformation4a.png b/doc/salome/gui/GEOM/pics/transformation4a.png deleted file mode 100644 index 64d2d4149..000000000 Binary files a/doc/salome/gui/GEOM/pics/transformation4a.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/transformation5.png b/doc/salome/gui/GEOM/pics/transformation5.png deleted file mode 100755 index 8d1cf9254..000000000 Binary files a/doc/salome/gui/GEOM/pics/transformation5.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/transformation6.png b/doc/salome/gui/GEOM/pics/transformation6.png deleted file mode 100755 index 3e3828bd8..000000000 Binary files a/doc/salome/gui/GEOM/pics/transformation6.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/transformation7.png b/doc/salome/gui/GEOM/pics/transformation7.png deleted file mode 100755 index 03a16fe01..000000000 Binary files a/doc/salome/gui/GEOM/pics/transformation7.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/transformation8.png b/doc/salome/gui/GEOM/pics/transformation8.png deleted file mode 100755 index 77d030385..000000000 Binary files a/doc/salome/gui/GEOM/pics/transformation8.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/transformation9.png b/doc/salome/gui/GEOM/pics/transformation9.png deleted file mode 100755 index c7f6194d3..000000000 Binary files a/doc/salome/gui/GEOM/pics/transformation9.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/translationsn1.png b/doc/salome/gui/GEOM/pics/translationsn1.png deleted file mode 100755 index 42e008cb3..000000000 Binary files a/doc/salome/gui/GEOM/pics/translationsn1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/translationsn2.png b/doc/salome/gui/GEOM/pics/translationsn2.png deleted file mode 100755 index 01d695937..000000000 Binary files a/doc/salome/gui/GEOM/pics/translationsn2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/transparencysn.png b/doc/salome/gui/GEOM/pics/transparencysn.png deleted file mode 100755 index 0b3638ed1..000000000 Binary files a/doc/salome/gui/GEOM/pics/transparencysn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/vector1.png b/doc/salome/gui/GEOM/pics/vector1.png deleted file mode 100755 index 46e3b20f3..000000000 Binary files a/doc/salome/gui/GEOM/pics/vector1.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/vector2.png b/doc/salome/gui/GEOM/pics/vector2.png deleted file mode 100755 index bb5c64c56..000000000 Binary files a/doc/salome/gui/GEOM/pics/vector2.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/vectors.png b/doc/salome/gui/GEOM/pics/vectors.png deleted file mode 100755 index bb8e7c5ab..000000000 Binary files a/doc/salome/gui/GEOM/pics/vectors.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/wiresn.png b/doc/salome/gui/GEOM/pics/wiresn.png deleted file mode 100755 index 623ae3b58..000000000 Binary files a/doc/salome/gui/GEOM/pics/wiresn.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/workplane4.png b/doc/salome/gui/GEOM/pics/workplane4.png deleted file mode 100755 index 00835eb54..000000000 Binary files a/doc/salome/gui/GEOM/pics/workplane4.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/workplane5.png b/doc/salome/gui/GEOM/pics/workplane5.png deleted file mode 100755 index 925ac573b..000000000 Binary files a/doc/salome/gui/GEOM/pics/workplane5.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/pics/workplane6.png b/doc/salome/gui/GEOM/pics/workplane6.png deleted file mode 100755 index 1f65862f8..000000000 Binary files a/doc/salome/gui/GEOM/pics/workplane6.png and /dev/null differ diff --git a/doc/salome/gui/GEOM/static/footer.html b/doc/salome/gui/GEOM/static/footer.html index 56d52a61a..9211d570f 100755 --- a/doc/salome/gui/GEOM/static/footer.html +++ b/doc/salome/gui/GEOM/static/footer.html @@ -4,7 +4,7 @@
    -
    Copyright © 2003-2007 CEA, EDF
    +
    Copyright © 2003-2009 CEA, EDF
    diff --git a/doc/salome/gui/GEOM/whdata/whftdata.js b/doc/salome/gui/GEOM/whdata/whftdata.js deleted file mode 100755 index addf26223..000000000 --- a/doc/salome/gui/GEOM/whdata/whftdata.js +++ /dev/null @@ -1,25 +0,0 @@ -// WebHelp 5.10.001 -var gTEA = new Array(); -function aTE(sTopicTitle, sTopicURL) -{ - var len = gTEA.length; - gTEA[len] = new topicEntry(sTopicTitle, sTopicURL); -} - -function topicEntry(sTopicTitle, sTopicURL) -{ - this.sTopicTitle = sTopicTitle; - this.sTopicURL = sTopicURL; -} - -function window_OnLoad() -{ - if (parent && parent != this) { - if (parent.putFtsTData) - { - parent.putFtsTData(gTEA); - } - } -} - -window.onload = window_OnLoad; \ No newline at end of file diff --git a/doc/salome/gui/GEOM/whdata/whftdata0.htm b/doc/salome/gui/GEOM/whdata/whftdata0.htm deleted file mode 100755 index acfb3af6b..000000000 --- a/doc/salome/gui/GEOM/whdata/whftdata0.htm +++ /dev/null @@ -1,102 +0,0 @@ - - - - - - - - - - - diff --git a/doc/salome/gui/GEOM/whdata/whfts.htm b/doc/salome/gui/GEOM/whdata/whfts.htm deleted file mode 100755 index 292e30479..000000000 --- a/doc/salome/gui/GEOM/whdata/whfts.htm +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - diff --git a/doc/salome/gui/GEOM/whdata/whfts.js b/doc/salome/gui/GEOM/whdata/whfts.js deleted file mode 100755 index 54246f693..000000000 --- a/doc/salome/gui/GEOM/whdata/whfts.js +++ /dev/null @@ -1,40 +0,0 @@ -// WebHelp 5.10.001 -var gaFileMapping = new Array(); -var gaFileTopicMapping = new Array(); - -function fileMapping(sStartKey, sEndKey, sFileName) -{ - this.sStartKey = sStartKey; - this.sEndKey = sEndKey; - this.sFileName = sFileName; - this.aFtsKeys = null; -} - -function fileTopicMapping(nIdBegin, nIdEnd, sFileName) -{ - this.nBegin = nIdBegin; - this.nEnd = nIdEnd; - this.sFileName = sFileName; - this.aTopics = null; -} - - -function iWM(sStartKey, sEndKey, sFileName) -{ - gaFileMapping[gaFileMapping.length] = new fileMapping(sStartKey, sEndKey, sFileName); -} - -function window_OnLoad() -{ - if (parent && parent != this && parent.ftsReady) - { - parent.ftsReady(gaFileMapping, gaFileTopicMapping); - } -} - -function iTM(nIdBegin, nIdEnd, sFileName) -{ - gaFileTopicMapping[gaFileTopicMapping.length] = new fileTopicMapping(nIdBegin, nIdEnd, sFileName); -} - -window.onload = window_OnLoad; diff --git a/doc/salome/gui/GEOM/whdata/whfwdata.js b/doc/salome/gui/GEOM/whdata/whfwdata.js deleted file mode 100755 index 8340b59d5..000000000 --- a/doc/salome/gui/GEOM/whdata/whfwdata.js +++ /dev/null @@ -1,37 +0,0 @@ -// WebHelp 5.10.001 -var gWEA = new Array(); -function aWE() -{ - var len = gWEA.length; - gWEA[len] = new ftsEntry(aWE.arguments); -} - -function ftsEntry(fn_arguments) -{ - if (fn_arguments.length && fn_arguments.length >= 1) - { - this.sItemName = fn_arguments[0]; - this.aTopics = null; - var nLen = fn_arguments.length; - if (nLen > 1) - { - this.aTopics = new Array(); - for (var i = 0; i < nLen - 1; i ++ ) - { - this.aTopics[i] = fn_arguments[i + 1]; - } - } - } -} - -function window_OnLoad() -{ - if (parent && parent != this) { - if (parent.putFtsWData) - { - parent.putFtsWData(gWEA); - } - } -} - -window.onload = window_OnLoad; \ No newline at end of file diff --git a/doc/salome/gui/GEOM/whdata/whfwdata0.htm b/doc/salome/gui/GEOM/whdata/whfwdata0.htm deleted file mode 100755 index 290ddb8d8..000000000 --- a/doc/salome/gui/GEOM/whdata/whfwdata0.htm +++ /dev/null @@ -1,1379 +0,0 @@ - - - - - - - - - - - diff --git a/doc/salome/gui/GEOM/whdata/whgdata.js b/doc/salome/gui/GEOM/whdata/whgdata.js deleted file mode 100755 index e38a107b5..000000000 --- a/doc/salome/gui/GEOM/whdata/whgdata.js +++ /dev/null @@ -1,26 +0,0 @@ -// WebHelp 5.10.001 -var gIEA = new Array(); -function aGE(sName, sDef) -{ - var len = gIEA.length; - gIEA[len] = new gloEntry(sName, sDef); -} - -function gloEntry(sName, sDef) -{ - this.sName = sName; - this.sDef = sDef; - this.nNKOff = 0; -} - -function window_OnLoad() -{ - if (parent && parent != this) { - if (parent.putData) - { - parent.putData(gIEA); - } - } -} - -window.onload = window_OnLoad; \ No newline at end of file diff --git a/doc/salome/gui/GEOM/whdata/whgdata0.htm b/doc/salome/gui/GEOM/whdata/whgdata0.htm deleted file mode 100755 index 3865725f4..000000000 --- a/doc/salome/gui/GEOM/whdata/whgdata0.htm +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - diff --git a/doc/salome/gui/GEOM/whdata/whglo.htm b/doc/salome/gui/GEOM/whdata/whglo.htm deleted file mode 100755 index 9d7ac79f1..000000000 --- a/doc/salome/gui/GEOM/whdata/whglo.htm +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/doc/salome/gui/GEOM/whdata/whglo.js b/doc/salome/gui/GEOM/whdata/whglo.js deleted file mode 100755 index c34fb24b2..000000000 --- a/doc/salome/gui/GEOM/whdata/whglo.js +++ /dev/null @@ -1,34 +0,0 @@ -// WebHelp 5.10.001 -var gaFileMapping = new Array(); -function fileMapping(sBK, sEK, sFileName, nNum) -{ - this.sBK = sBK; - this.sEK = sEK; - this.sFileName = sFileName; - this.aKs = null; - this.nNum = nNum; - this.oUsedItems = null; -} - - -function iFM(sBK, sEK, sFileName, nNum) -{ - var i = gaFileMapping.length; - gaFileMapping[i] = new fileMapping(sBK, sEK, sFileName, nNum); - if (i == 0) { - gaFileMapping[i].nTotal = nNum; - } - else { - gaFileMapping[i].nTotal = nNum + gaFileMapping[i - 1].nTotal; - } -} - -function window_OnLoad() -{ - if (parent && parent != this && parent.projReady) - { - parent.projReady(gaFileMapping); - } -} - -window.onload = window_OnLoad; diff --git a/doc/salome/gui/GEOM/whdata/whidata.js b/doc/salome/gui/GEOM/whdata/whidata.js deleted file mode 100755 index a92184730..000000000 --- a/doc/salome/gui/GEOM/whdata/whidata.js +++ /dev/null @@ -1,89 +0,0 @@ -// WebHelp 5.10.001 -// const strings -var gIEA = new Array(); -function aIE() -{ - var len = gIEA.length; - gIEA[len] = new indexEntry(aIE.arguments); -} - -function topic(sName, sURL) -{ - this.sName = sName; - this.sURL = sURL; -} - -function indexEntry(fn_arguments) -{ - if (fn_arguments.length && fn_arguments.length >= 3) - { - this.nType = fn_arguments[0]; - this.nPKOff = 0; - this.nNKOff = fn_arguments[1]; - this.sName = fn_arguments[2]; - this.aTopics = null; - var nLen = fn_arguments.length; - if (Math.floor(nLen / 2) * 2 == nLen) - { - this.sTarget = fn_arguments[3]; - if (nLen > 5) - { - this.aTopics = new Array(); - for (var i = 0; i < (nLen - 5)/2; i++) - { - this.aTopics[i] = new topic(fn_arguments[i * 2 + 4], fn_arguments[i * 2 + 5]); - } - } - - } - else - { - if (nLen > 4) - { - this.aTopics = new Array(); - for (var i = 0; i < (nLen - 4)/2; i++) - { - this.aTopics[i] = new topic(fn_arguments[i * 2 + 3], fn_arguments[i * 2 + 4]); - } - } - } - } -} - -function getIndexTopicMappingList(nItemIndex) -{ - var sTopics = ""; - if (gIEA.length > nItemIndex) - { - if (gIEA[nItemIndex].aTopics) - { - var i = 0; - var nLen = gIEA[nItemIndex].aTopics.length; - for (i = 0; i < nLen; i ++) - { - sTopics += "," + gIEA[nItemIndex].aTopics[i]; - } - } - } - return sTopics; -} - -function window_OnLoad() -{ - if (parent && parent != this) { - if (parent.putData) - { - for (var i = 0; i < gIEA.length; i ++ ) - { - if (gIEA[i].nNKOff != 0 && i + gIEA[i].nNKOff + 1 < gIEA.length) - { - - gIEA[i + gIEA[i].nNKOff + 1].nPKOff = gIEA[i].nNKOff; - } - } - parent.putData(gIEA); - } - } -} - -window.onload = window_OnLoad; \ No newline at end of file diff --git a/doc/salome/gui/GEOM/whdata/whidx.htm b/doc/salome/gui/GEOM/whdata/whidx.htm deleted file mode 100755 index a049a96f9..000000000 --- a/doc/salome/gui/GEOM/whdata/whidx.htm +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/doc/salome/gui/GEOM/whdata/whidx.js b/doc/salome/gui/GEOM/whdata/whidx.js deleted file mode 100755 index c34fb24b2..000000000 --- a/doc/salome/gui/GEOM/whdata/whidx.js +++ /dev/null @@ -1,34 +0,0 @@ -// WebHelp 5.10.001 -var gaFileMapping = new Array(); -function fileMapping(sBK, sEK, sFileName, nNum) -{ - this.sBK = sBK; - this.sEK = sEK; - this.sFileName = sFileName; - this.aKs = null; - this.nNum = nNum; - this.oUsedItems = null; -} - - -function iFM(sBK, sEK, sFileName, nNum) -{ - var i = gaFileMapping.length; - gaFileMapping[i] = new fileMapping(sBK, sEK, sFileName, nNum); - if (i == 0) { - gaFileMapping[i].nTotal = nNum; - } - else { - gaFileMapping[i].nTotal = nNum + gaFileMapping[i - 1].nTotal; - } -} - -function window_OnLoad() -{ - if (parent && parent != this && parent.projReady) - { - parent.projReady(gaFileMapping); - } -} - -window.onload = window_OnLoad; diff --git a/doc/salome/gui/GEOM/whdata/whtdata.js b/doc/salome/gui/GEOM/whdata/whtdata.js deleted file mode 100755 index 0558e198c..000000000 --- a/doc/salome/gui/GEOM/whdata/whtdata.js +++ /dev/null @@ -1,64 +0,0 @@ -// WebHelp 5.10.001 -var gTEA = new Array(); -function aTE() -{ - gTEA[gTEA.length] = new tocEntry(aTE.arguments); -} - -function tocEntry(fn_arguments) -{ - if (fn_arguments.length < 3) - { - alert ("data format wrong!!!"); - return; - } - - this.nType = fn_arguments[0]; - this.nContents = fn_arguments[1]; - this.sItemName = fn_arguments[2]; - - if (this.nType == 1 || this.nType == 2 || this.nType == 16) - { - if (fn_arguments.length > 3) - { - this.sItemURL = fn_arguments[3]; - if (fn_arguments.length > 4) - { - this.sTarget = fn_arguments[4]; - if (fn_arguments.length > 5) - this.sIconRef = fn_arguments[5]; - } - } - } - if (this.nType == 4 || this.nType == 8) - { - if (fn_arguments.length > 3) - { - this.sRefURL = fn_arguments[3]; - if (this.nType == 4) - { - if(this.sRefURL.lastIndexOf("/")!=this.sRefURL.length-1) - this.sRefURL+="/"; - } - if (fn_arguments.length > 4) - { - this.sItemURL = fn_arguments[4]; - if (fn_arguments.length > 5) - { - this.sTarget = fn_arguments[5]; - if (fn_arguments.length > 6) - this.sIconRef = fn_arguments[6]; - } - } - } - } -} - - -function window_OnLoad() -{ - if (parent && parent != this && parent.putData) { - parent.putData(gTEA); - } -} -window.onload = window_OnLoad; \ No newline at end of file diff --git a/doc/salome/gui/GEOM/whdata/whtdata0.htm b/doc/salome/gui/GEOM/whdata/whtdata0.htm deleted file mode 100755 index 159c80a3c..000000000 --- a/doc/salome/gui/GEOM/whdata/whtdata0.htm +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - - - - - - diff --git a/doc/salome/gui/GEOM/whdata/whtoc.htm b/doc/salome/gui/GEOM/whdata/whtoc.htm deleted file mode 100755 index 459c3e311..000000000 --- a/doc/salome/gui/GEOM/whdata/whtoc.htm +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/doc/salome/gui/GEOM/whdata/whtoc.js b/doc/salome/gui/GEOM/whdata/whtoc.js deleted file mode 100755 index 62de5a132..000000000 --- a/doc/salome/gui/GEOM/whdata/whtoc.js +++ /dev/null @@ -1,31 +0,0 @@ -// WebHelp 5.10.001 -// const strings -var gaProj = new Array(); -var gsRoot = ""; - -function setRoot(sRoot) -{ - gsRoot = sRoot -} - -function aPE(sProjPath, sRootPath) -{ - gaProj[gaProj.length] = new tocProjEntry(sProjPath, sRootPath); -} - -function tocProjEntry(sProjPath, sRootPath) -{ - if(sProjPath.lastIndexOf("/")!=sProjPath.length-1) - sProjPath+="/"; - this.sPPath = sProjPath; - this.sRPath = sRootPath; -} - - -function window_OnLoad() -{ - if (parent && parent != this && parent.projReady) { - parent.projReady(gsRoot, gaProj); - } -} -window.onload = window_OnLoad; \ No newline at end of file diff --git a/doc/salome/gui/GEOM/whgdata/whexpbar.gif b/doc/salome/gui/GEOM/whgdata/whexpbar.gif deleted file mode 100755 index e677dc6f1..000000000 Binary files a/doc/salome/gui/GEOM/whgdata/whexpbar.gif and /dev/null differ diff --git a/doc/salome/gui/GEOM/whgdata/whlstf0.htm b/doc/salome/gui/GEOM/whgdata/whlstf0.htm deleted file mode 100755 index cda409010..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstf0.htm +++ /dev/null @@ -1,46 +0,0 @@ - - -Search Words List - - - - - - - -

    - - -100x30x100
    1d 1 2
    1e 1 2
    2d 1 2 3 4 5 6
    3d 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
    -

    -able 1 2
    absolute
    absolutely
    access
    accessed
    accessible 1 2 3 4 5 6
    accordance 1 2
    according
    add 1 2 3 4 5 6 7 8 9 10 11 12 13 14
    added 1 2
    adding 1 2
    addobject 1 2
    addtostudy 1 2 3 4 5 6 7 8 9 10 11 12 13
    addtostudyinfather 1 2
    advance 1 2 3
    advanced 1 2 3 4 5 6 7
    algorithm 1 2 3 4
    algorithms 1 2 3 4 5 6 7 8 9 10 11 12
    all_faces
    allow
    allows 1 2 3 4 5 6 7 8 9 10 11 12 13 14
    along 1 2 3 4 5 6 7 8
    alongside
    already
    although
    angle 1 2 3 4 5 6 7
    another 1 2 3 4 5 6
    any 1 2 3 4 5
    appear
    appeared
    append 1 2
    applicable
    applied 1 2
    apply 1 2 3
    applying 1 2
    approximation
    arc 1 2 3 4 5 6 7 8
    arc1
    arc2
    archimede 1 2
    arcs 1 2
    area 1 2
    argument 1 2 3
    arguments 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
    around 1 2 3
    automatically 1 2 3
    available 1 2 3 4 5 6 7 8 9 10
    axes 1 2 3 4
    axis 1 2 3 4 5 6 7 8 9 10 11 12
    -

    -b 1 2 3
    background
    base 1 2 3 4 5 6 7 8 9
    based
    baseshape
    basic 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
    basicproperties 1 2
    basing 1 2
    basis 1 2
    bb
    before 1 2 3
    beginning
    being
    belongs
    below
    besier
    bezier 1 2 3
    black
    block 1 2 3 4 5
    blocks 1 2 3 4 5 6 7 8 9 10
    bmp 1 2
    boolean 1 2 3 4 5 6 7 8 9
    both 1 2 3 4
    boudaries
    boundaries 1 2 3 4
    boundary 1 2 3
    bounded 1 2
    bounding 1 2
    boundingbox 1 2
    box 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
    box_tr1
    box_tr2
    box1 1 2 3
    box2 1 2 3
    box3
    boxes 1 2 3


    >> - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstf1.htm b/doc/salome/gui/GEOM/whgdata/whlstf1.htm deleted file mode 100755 index a8e27edb7..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstf1.htm +++ /dev/null @@ -1,43 +0,0 @@ - - -Search Words List - - - - - - - -

    <<

    -

    -brackets
    breaks
    brep 1 2 3 4
    browser 1 2 3 4
    bspline
    bsplinerestriction
    bsplines
    build 1 2 3 4 5 6 7 8 9
    building 1 2 3 4
    builds 1 2 3
    button 1 2 3 4 5 6
    buttons
    bypassing
    -

    -c 1 2 3
    c0
    c1
    c2
    cad 1 2
    camera
    cascade
    case 1 2 3
    cases
    catia
    center 1 2 3 4 5 6 7 8 9 10 11 12
    centerofscale
    centers
    central 1 2 3 4
    certain 1 2
    chain
    chamfer 1 2
    chamfer_all
    chamfer_e
    chamfer_f
    chamfer_f1
    change 1 2 3 4 5
    changes
    changing 1 2 3 4
    check 1 2 3 4 5 6 7
    check_box
    checkandimprove
    checkbox 1 2 3 4 5 6
    checkcompoundofblocks 1 2
    checked 1 2 3 4 5
    checking 1 2 3
    checks
    checkshape 1 2 3
    choices
    choose 1 2 3
    circle 1 2
    circle1
    circle2
    circles 1 2
    click 1 2 3 4 5
    clicking 1 2 3
    clipping
    clone
    close 1 2 3
    closecontour 1 2
    closed 1 2 3 4
    closedwires 1 2
    closes 1 2
    closure
    cm
    cn
    coincide
    coincident
    coincidental
    coincides
    collinear 1 2
    color 1 2 3 4
    command 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
    commands 1 2 3 4 5 6 7 8 9
    common 1 2 3 4 5 6
    complex 1 2 3 4 5 6 7 8
    components 1 2 3 4 5
    composed
    composing
    compound 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
    compsolid 1 2 3
    compsolids
    compute
    computed
    concerning
    conditions
    cone 1 2 3
    cone1
    cone2
    cones
    confirm 1 2
    conical
    connected 1 2 3 4 5
    connection
    consequently
    considered 1 2 3
    console
    constraints
    constructed 1 2
    construction 1 2 3 4 5 6
    contain
    contained
    containing
    contains 1 2
    contents 1 2 3
    continuities
    continuity
    continuity2d
    continuity3d
    continuous
    contour 1 2
    conversion
    converts
    coordinate 1 2 3 4 5 6 7 8 9 10
    coordinates 1 2 3 4 5 6 7 8 9 10 11 12 13 14
    coords
    copy 1 2 3 4
    corner
    corners 1 2
    correction
    corrects
    correspond 1 2
    corresponding 1 2
    correspondingly 1 2
    count
    coupled
    covering


    >> - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstf10.htm b/doc/salome/gui/GEOM/whgdata/whlstf10.htm deleted file mode 100755 index 537af78aa..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstf10.htm +++ /dev/null @@ -1,43 +0,0 @@ - - -Search Words List - - - - - - - -

    <<

    -

    -right 1 2 3 4
    rise
    rot1d
    rot2d
    rotate 1 2 3
    rotated 1 2 3
    rotates 1 2
    rotation 1 2 3 4 5
    ruling
    runtimeerror 1 2
    -

    -s 1 2 3 4 5 6 7 8 9 10 11
    s1 1 2 3
    s2 1 2 3
    salome 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
    same 1 2 3 4 5
    sameparameter
    satisfy
    save
    saved
    saves
    scale 1 2
    scaled
    scene
    scripts 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
    search
    second 1 2 3 4 5 6 7 8
    secondly 1 2 3 4 5 6 7 8 9 10 11 12 13
    section 1 2 3 4 5
    see 1 2 3
    seems
    segment
    segments 1 2
    select 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
    selected 1 2 3 4 5 6 7 8 9 10
    selecting 1 2 3
    selection 1 2 3 4
    sense
    separate
    serve
    serving 1 2 3
    set 1 2 3 4 5 6
    setcolor 1 2
    setdisplaymode 1 2 3 4 5 6 7 8 9 10 11 12 13
    setting 1 2 3
    settransparency 1 2 3 4 5
    sew
    sewed
    sewing 1 2
    sg 1 2 3 4
    shading 1 2
    shape 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
    shape1 1 2
    shape2 1 2
    shapelistcompound
    shapes 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
    shapes_of_given_type
    shapetype 1 2 3 4 5 6
    shapetypeedge
    shapetypeface
    shared
    sharp
    shell 1 2 3 4 5 6 7 8
    shells 1 2 3 4 5 6 7
    shift 1 2 3
    shifted
    short 1 2
    shortcut
    should 1 2 3 4 5
    show 1 2
    shown
    shows


    >> - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstf11.htm b/doc/salome/gui/GEOM/whgdata/whlstf11.htm deleted file mode 100755 index e03381b30..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstf11.htm +++ /dev/null @@ -1,43 +0,0 @@ - - -Search Words List - - - - - - - -

    <<

    -

    -side
    signed
    similar
    simple 1 2 3
    simply
    single
    six 1 2
    size 1 2 3
    sketch
    sketcher 1 2 3
    sketcher1 1 2
    sketcher2 1 2
    sketcher3
    sketchers
    skip
    small 1 2
    so 1 2
    solid 1 2 3 4 5 6 7 8 9 10 11 12 13 14
    solid1
    solid2
    solids 1 2 3
    sorted
    sorts
    source
    space 1 2 3 4 5 6
    specific
    specified 1 2 3 4 5 6 7 8 9 10 11
    specify
    specifying
    sphere 1 2 3 4 5 6
    sphere1
    sphere2
    sphere3
    spheres
    spline 1 2
    split
    splitangle
    splitclosedfaces
    splitcontinuity
    splits 1 2
    splitting
    spots
    sqrt
    stage
    standard 1 2
    start 1 2 3 4
    started
    starting 1 2 3
    step 1 2 3 4 5
    step1
    step2
    still
    strictly
    string
    strips
    study 1 2 3 4 5 6 7 8 9 10 11
    sub 1 2 3 4 5
    sub_shape_id
    subfacelist
    submenu
    subshape 1 2
    subshapeall
    subshapeallids
    subshapeallsorted 1 2 3 4 5
    subshapeallsortedids
    subshapeid
    subshapes 1 2
    subshapesorted
    subtraction
    successfully
    sup_faces
    suppress 1 2 3 4
    suppresses
    suppressfaces 1 2
    suppressholes 1 2
    suppressinternalwires 1 2
    surface 1 2 3 4 5 6 7
    surfacecontinuity
    surfacemode
    surfaces
    symmetric
    symmetrical 1 2
    symmetry
    system 1 2 3 4 5 6 7
    systems 1 2
    -

    -t 1 2 3 4 5
    take
    tangent
    tangential
    tangents
    target 1 2
    technology
    tetrahedral
    textual 1 2
    th
    theendlcs
    them 1 2 3 4 5 6 7
    theobject
    therefore
    theshape 1 2
    thestartlcs
    thetolerance
    third
    three 1 2 3 4 5 6 7 8 9 10 11 12 13
    thus 1 2
    time 1 2
    times 1 2 3
    tobezier
    together
    tol2d 1 2
    tol3d 1 2
    toler
    tolerance 1 2 3 4 5 6 7
    tolerance2d
    tolerance3d 1 2
    tolerances
    tool
    toolbar
    tools 1 2
    top_face
    top_face_ind
    torus 1 2
    torus1
    torus2
    toruses
    tr1d
    tr2d
    transform 1 2
    transformate
    transformation 1 2 3 4 5 6 7 8 9 10 11 12 13 14
    transformations 1 2 3
    transformed 1 2
    transforms
    translate 1 2
    translated 1 2 3
    translates 1 2
    translation 1 2 3 4
    translation1
    translation2
    translation3
    translations 1 2 3
    transparency 1 2 3
    transparent 1 2
    triangles
    trihedron
    trimsize 1 2 3
    true 1 2 3 4 5
    truncated
    try


    >> - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstf12.htm b/doc/salome/gui/GEOM/whgdata/whlstf12.htm deleted file mode 100755 index 18c099123..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstf12.htm +++ /dev/null @@ -1,47 +0,0 @@ - - -Search Words List - - - - - - - -

    <<

    -

    -tt 1 2
    tui 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
    tuple
    two 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
    type 1 2 3 4 5 6 7 8
    types 1 2
    -

    -u
    underlying 1 2
    unionlist
    up 1 2
    update
    updateobjbrowser 1 2 3
    upper
    used 1 2
    useful 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
    user 1 2 3 4
    using 1 2 3 4 5 6 7 8 9 10 11 12 13
    -

    -v 1 2 3 4
    v1
    v2
    v3
    v4
    val
    valid 1 2 3
    validity
    value 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
    values 1 2 3 4 5 6 7 8 9 10 11 12 13 14
    variety
    various
    vector 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
    vector_arc 1 2
    vector1 1 2
    vector1_arc1
    vector1_arc2
    vector2 1 2
    vector2_arc1
    vector2_arc2
    vector3
    vectors 1 2 3 4 5 6 7
    versa
    vertex 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
    vertex_n
    vertex1
    vertex2
    vertexmaxtol
    vertexmintol
    vertices 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
    via 1 2 3 4 5 6 7 8 9
    vice
    view 1 2
    viewer 1 2 3 4 5 6 7 8 9 10 11 12 13 14
    viewing 1 2 3
    views
    visible
    visualize
    volume 1 2
    vr
    vrot1d
    vt
    vtr1d
    vtr2d
    vxy 1 2 3 4 5
    vxyz
    vz
    -

    -w_0


    >> - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstf13.htm b/doc/salome/gui/GEOM/whgdata/whlstf13.htm deleted file mode 100755 index 355c2d788..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstf13.htm +++ /dev/null @@ -1,46 +0,0 @@ - - -Search Words List - - - - - - - -

    <<

    -

    -wantplanarface
    water
    waterdensity 1 2
    way 1 2 3 4 5 6
    ways 1 2 3
    weight 1 2
    well
    wf
    what
    whatis 1 2
    whether
    while 1 2 3 4 5
    whose 1 2
    wide 1 2
    will 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
    wire 1 2 3 4 5 6 7 8 9 10 11 12 13 14
    wire_close
    wire_name
    wire1
    wire2
    wireframe 1 2
    wires 1 2 3 4 5 6 7 8 9 10 11 12
    wish 1 2 3
    within 1 2 3
    without
    work 1 2
    working 1 2 3 4 5
    workingplane
    works
    ww 1 2
    -

    -x 1 2 3 4 5 6 7 8 9
    x1
    x2
    xdx
    xdy
    xdz
    xmax 1 2
    xmin 1 2
    xoy
    xyz
    xz_face
    xz_face_ind
    -

    -y 1 2 3 4 5 6 7 8
    y1
    y2
    ydx
    ydy
    ydz
    ymax 1 2
    ymin 1 2
    your 1 2 3 4 5 6 7 8 9
    yourselves
    yz_face
    yz_face_ind
    -

    -z 1 2 3 4 5 6 7
    z1
    z2
    zero
    zmax 1 2
    zmin 1 2
    zoom


    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstf2.htm b/doc/salome/gui/GEOM/whgdata/whlstf2.htm deleted file mode 100755 index 66be35686..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstf2.htm +++ /dev/null @@ -1,43 +0,0 @@ - - -Search Words List - - - - - - - -

    <<

    -

    -create 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
    createanddisplaygo 1 2 3 4 5 6 7 8 9 10 11 12 13
    created 1 2 3 4 5 6 7 8 9
    creategroup 1 2
    creates 1 2 3 4 5 6 7 8 9 10
    creation 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
    cross
    cs
    cs1
    cs2
    cube
    current 1 2
    currently 1 2 3 4
    curvature
    curve 1 2 3 4
    curve2dmode
    curve3dmode
    curvecontinuity
    curves 1 2 3 4 5
    curving
    cut 1 2 3 4
    cut_without_f_2
    cuts 1 2
    cutting
    cylinder 1 2 3 4 5 6
    cylinders
    cylindrical
    -

    -d 1 2 3
    d1 1 2
    d2 1 2
    data
    data_dir
    default 1 2 3 4 5
    define 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
    defined 1 2
    defines 1 2
    defining 1 2 3
    definite 1 2
    definition
    deflection
    degenerated
    degree 1 2
    degrees 1 2
    delete
    deleted
    density
    depending
    depends
    derivatives
    descr
    description 1 2 3 4 5
    designed
    destination
    destined 1 2
    detect 1 2
    detection
    detects
    developed
    dialog 1 2 3 4 5 6 7 8
    differencelist
    different 1 2
    dimension 1 2 3
    dimensions 1 2 3 4
    dir 1 2
    dir1
    dir2
    direction 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
    directions 1 2 3
    directly
    dirfaceid1
    dirfaceid1u
    dirfaceid1v
    dirfaceid2
    dirfaceid2u
    dirfaceid2v
    display 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
    displayed 1 2 3 4 5
    displayonly
    displays
    distance 1 2 3 4 5
    divide
    divided 1 2
    divideedge 1 2
    doesn 1 2
    don 1 2 3 4
    done 1 2
    double 1 2 3 4
    doubles
    down
    downward
    drag
    drawn
    drop
    dropsmalledges


    >> - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstf3.htm b/doc/salome/gui/GEOM/whgdata/whlstf3.htm deleted file mode 100755 index 8c653842a..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstf3.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words List - - - - - - - -

    <<

    -

    -du
    dump 1 2
    duplicate
    dx 1 2 3 4 5
    dy 1 2 3 4 5
    dz 1 2 3 4
    -

    -e
    e1
    e2
    e3
    e4
    easier
    edge 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
    edge_ind
    edge_points
    edge1
    edge2
    edge3
    edge4
    edgeid
    edges 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
    edit
    editing
    egdemaxtol
    egdemintol
    either 1 2
    element 1 2 3
    elementary
    elements 1 2 3 4 5
    ellipse 1 2
    else 1 2
    empty 1 2
    encountered
    end 1 2 3 4 5 6 7 8 9
    ending
    ends 1 2
    enter
    entire
    entity 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
    equal 1 2 3
    erase
    eraseall
    eraseonly
    error 1 2
    errors 1 2
    etc 1 2
    example 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
    examples 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
    except
    existing 1 2 3
    expand
    explode 1 2 3 4
    exploded 1 2
    explodes
    export 1 2 3
    exportation
    exporting
    exports 1 2
    extended
    extra
    extracted
    extruded 1 2
    extrusion
    -

    -f 1 2
    f_2
    f_ind_1
    f_ind_2
    f1
    f1_id
    f2
    f3
    f4
    f5
    f6
    face 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
    face_name
    face_rot
    face1 1 2 3
    face2 1 2 3
    face3
    faceid
    facemaxtol
    facemintol
    faces 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
    factor 1 2
    failed 1 2
    false


    >> - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstf4.htm b/doc/salome/gui/GEOM/whgdata/whlstf4.htm deleted file mode 100755 index 7699ba2b5..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstf4.htm +++ /dev/null @@ -1,43 +0,0 @@ - - -Search Words List - - - - - - - -

    <<

    -

    -file
    files
    fill
    filled 1 2
    fillet 1 2 3
    filletall
    fillets
    filling 1 2 3 4
    final
    finally 1 2 3 4 5 6
    first 1 2 3 4 5 6 7 8 9
    firstly 1 2 3 4 5 6 7 8 9 10 11 12 13
    fit
    fix
    fixes
    fixfacesize
    fixing
    fixshape 1 2
    flag
    flight_solid
    following 1 2 3 4 5 6 7
    format 1 2 3
    formats 1 2 3
    four 1 2 3
    frame
    free 1 2 3 4 5
    functionalities
    functionality 1 2 3
    functions 1 2 3 4
    fuse 1 2 3 4
    fuse_id
    -

    -g1
    g2
    gap
    gcs
    general 1 2
    generate 1 2 3
    generation 1 2 3 4 5 6
    geom 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
    geom_object 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
    geom_objects 1 2 3 4
    geometric 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
    geometrical 1 2 3 4 5 6 7 8 9 10 11 12 13 14
    geometry 1 2 3 4 5 6
    geompy 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
    get 1 2 3 4
    getenv
    getfacenearpoint
    getfreeboundary 1 2
    getfreefacesids 1 2
    getobjectids
    getsubshape
    getsubshapeid 1 2 3
    getsubshapeindex
    getting
    gg 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
    given 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
    gives
    giving 1 2 3 4
    global 1 2 3
    glue 1 2 3 4 5
    glued 1 2
    glues
    good
    gravity 1 2 3 4
    greater
    group 1 2 3
    group_n
    group1
    groups 1 2 3 4 5 6 7


    >> - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstf5.htm b/doc/salome/gui/GEOM/whgdata/whlstf5.htm deleted file mode 100755 index 1691b48db..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstf5.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words List - - - - - - - -

    <<

    -

    - - -handling
    having 1 2
    height 1 2 3 4 5 6
    here
    hexagonal
    hexahedral 1 2 3
    hexahedron
    hide 1 2
    hides
    hiding
    highlight
    highlights
    holding
    holes 1 2
    how
    -

    -i 1 2 3 4
    i11
    i12
    i13
    i21
    i22
    i23
    i31
    i32
    i33
    id 1 2 3 4 5 6 7 8 9 10 11
    id_arc
    id_archimede
    id_axis
    id_bezier
    id_box 1 2 3 4
    id_box_tr1
    id_box_tr2
    id_box1 1 2
    id_box2 1 2
    id_box3
    id_chamfer_all
    id_chamfer_e
    id_chamfer_f
    id_chamfer_f1
    id_circle1
    id_circle2
    id_common
    id_compound 1 2 3
    id_cone1
    id_cone2
    id_cs1
    id_cs2
    id_cut 1 2
    id_cut_without_f_2
    id_cylinder 1 2
    id_divide
    id_edge 1 2 3
    id_edge1
    id_edge2
    id_edge3
    id_edge4
    id_ellipse
    id_face 1 2 3
    id_face_rot
    id_face1 1 2
    id_face2 1 2
    id_face3
    id_fillet
    id_filletall
    id_filling
    id_fuse
    id_glue
    id_group1
    id_importbrep
    id_interpol
    id_line1
    id_line2
    id_make_block_explode
    id_mirror1
    id_mirror2
    id_mirror3
    id_offset
    id_p_on_arc
    id_p0
    id_p1 1 2
    id_p100
    id_p2 1 2
    id_p3 1 2
    id_p4 1 2 3
    id_partition1
    id_partition2
    id_partition3
    id_pipe
    id_plane 1 2
    id_plane1
    id_plane2
    id_plane3
    id_polyline
    id_position
    id_prism
    id_prism1
    id_prism2
    id_ps
    id_px
    id_py
    id_pz
    id_qface1
    id_qface2
    id_qface3
    id_result
    id_revolution
    id_rot1d
    id_rot2d
    id_rotation
    id_scale
    id_section
    id_sewing
    id_shape
    id_shell
    id_sketcher1
    id_sketcher2
    id_solid
    id_solid1
    id_solid2
    id_sphere
    id_sphere1
    id_sphere2
    id_sphere3
    id_torus1
    id_torus2
    id_tr1d
    id_tr2d
    id_translation1
    id_translation2
    id_translation3
    id_vector
    id_vector1
    id_vector2
    id_vector3
    id_vr
    id_vxy
    id_wire 1 2 3
    id_wire_close
    idlist 1 2
    idlist_e
    idlist_f
    ids 1 2 3 4 5 6
    if 1 2 3 4 5 6 7 8 9 10 11 12 13 14
    iges 1 2 3
    image 1 2 3 4
    implemented
    implies
    imply
    import 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
    importation
    importbrep
    importcomponentgui 1 2 3 4 5 6 7 8 9 10 11 12 13 14
    imported 1 2 3
    importing
    impossible
    improve


    >> - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstf6.htm b/doc/salome/gui/GEOM/whgdata/whlstf6.htm deleted file mode 100755 index 2ae988521..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstf6.htm +++ /dev/null @@ -1,49 +0,0 @@ - - -Search Words List - - - - - - - -

    <<

    -

    -included
    increased
    independent
    index
    indexes
    indicate
    indicating
    indices 1 2 3 4
    inertia 1 2
    informs
    initial 1 2 3 4 5 6
    inner
    inquired
    ins
    inserted
    inside
    instead
    integer
    integers 1 2
    interactively
    intermediate
    internal 1 2
    interpol
    interpolated
    intersect
    intersected
    intersection
    introduction 1 2 3
    invalid 1 2 3
    invert
    invisible
    isbyparameter
    iscommonvertex
    isolines 1 2
    isometric
    isos
    isplanarface
    isplanarwanted 1 2 3 4
    issuccess
    isvalid 1 2
    iterations
    itself
    ix 1 2
    iy 1 2
    iz 1 2
    -

    -joined
    jpeg 1 2
    jpg 1 2
    junction
    just
    -

    -k
    keep 1 2 3 4 5
    keyboard
    ko
    -

    -l 1 2
    last 1 2
    lcs 1 2
    lcs1
    lcs2
    least
    leaves
    left 1 2 3
    len
    length 1 2 3 4
    lie 1 2
    limit
    line 1 2 3 4
    line1
    line2
    linear
    lines 1 2
    list 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
    listchains
    listoffaceid
    listofgeomshapes
    listofid
    listofind
    listofkeepinside
    listofmaterials
    listofremoveinside
    listofshape 1 2 3 4 5 6
    listofshapes 1 2
    listoftools
    listofwireid
    listshapes
    ll
    local 1 2 3 4 5
    localcs1
    localcs2
    localop
    located
    location 1 2 3 4
    locking
    lsc
    lying 1 2
    -

    -magnitude
    main 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
    mainshape
    major 1 2
    make 1 2 3 4 5 6
    make_block_explode
    makearc 1 2 3 4 5 6 7
    makebezier 1 2
    makeblockexplode 1 2
    makeboolean 1 2
    makebox 1 2 3 4 5 6
    makeboxdxdydz 1 2 3 4 5 6
    makeboxtwopnt 1 2 3 4
    makecdg 1 2
    makechamfer
    makechamferall 1 2
    makechamferedge 1 2
    makechamferfaces 1 2
    makecircle 1 2
    makecirclethreepnt 1 2
    makecommon 1 2
    makecompound 1 2 3 4 5
    makecone 1 2 3
    makeconer1r2h 1 2
    makecut 1 2
    makecylinder 1 2 3 4
    makecylinderrh
    makeedge 1 2 3 4 5
    makeellipse 1 2
    makeface 1 2 3 4 5 6 7
    makefaces 1 2
    makefacewires 1 2
    makefillet 1 2
    makefilletall 1 2
    makefilling 1 2
    makefuse 1 2
    makegluefaces 1 2 3
    makehalfpartition 1 2
    makehexa 1 2
    makehexa2faces 1 2
    makeinterpol 1 2
    makeline 1 2
    makelinetwopnt 1 2
    makemarker 1 2
    makemirrorbyaxis 1 2
    makemirrorbyplane 1 2
    makemirrorbypoint 1 2
    makemultirotation1d
    makemultirotation2d
    makemultitransformation1d 1 2
    makemultitransformation2d 1 2
    makemultitranslation1d 1 2
    makemultitranslation2d 1 2
    makeoffset 1 2
    makepartition 1 2
    makepipe 1 2
    makeplane 1 2 3
    makeplaneface 1 2
    makeplanethreepnt 1 2 3
    makepolyline 1 2
    makeposition 1 2
    makeprism 1 2 3
    makeprismvech 1 2 3 4
    makequad 1 2
    makequad2edges 1 2
    makequad4vertices 1 2
    makerevolution 1 2
    makerotation 1 2 3
    makes 1 2 3 4 5
    makescaletransform 1 2
    makesection 1 2
    makesewing 1 2
    makeshell 1 2
    makesketcher 1 2 3
    makesketcheronplane
    makesolid 1 2
    makesphere 1 2 3
    makespherepntr
    makespherer 1 2 3 4
    maketorus 1 2
    maketorusrr 1 2
    maketranslation 1 2 3
    maketranslationtwopoints 1 2
    maketranslationvector 1 2
    makevector 1 2 3 4 5 6 7 8 9
    makevectordxdydz 1 2 3 4
    makevertex 1 2 3 4 5 6 7 8 9 10 11 12 13 14
    makevertexoncurve 1 2
    makevertexwithref 1 2
    makewire 1 2 3 4 5 6 7
    manually
    marked
    mass
    masses
    materials
    math 1 2 3
    matrix 1 2
    max 1 2 3 4
    maxdeg
    maxdegree
    maximal 1 2 3
    maximum 1 2 3 4
    maxnbfaces
    maxtolerance
    maxtolerance3d


    >> - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstf7.htm b/doc/salome/gui/GEOM/whgdata/whlstf7.htm deleted file mode 100755 index ae1ba0212..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstf7.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words List - - - - - - - -

    <<

    -

    -meaning
    means 1 2 3
    measurement 1 2
    measures
    mechanisms
    meet
    memorise
    mentioned
    menu 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
    merge
    mesh 1 2 3
    meshes
    meshing 1 2
    meshingdeflection 1 2
    method
    middle 1 2
    min 1 2 3 4
    min_dist
    mindeg
    mindegree
    mindistance 1 2
    minimal 1 2 3 4
    minimum 1 2 3
    minnbfaces
    minor 1 2
    mirror 1 2
    mirror1
    mirror2
    mirror3
    mirrored
    mode 1 2 3 4 5 6
    modeled
    models 1 2
    modes
    modified
    modifies 1 2
    modify 1 2
    module 1 2 3 4
    moment
    moments 1 2
    mouse 1 2
    move
    moved
    much
    multi 1 2 3 4 5
    multirotate1d 1 2
    multirotate2d 1 2
    multitude
    must 1 2 3 4 5
    -

    -n
    name 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
    names
    nb 1 2 3 4
    nb_sub
    nbiter 1 2
    nbounding
    nbox
    nbsplitpoints
    nbtimes 1 2 3
    nbtimes1 1 2
    nbtimes2 1 2
    nbtimesu
    nbtimesv
    ncentre
    ncompound
    necessarily
    necessary 1 2 3 4 5
    need 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
    needed
    negative
    neighbouring
    new 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
    newly
    ninertia
    nminimal
    nodes
    noerror
    none
    normal 1 2 3 4 5 6
    note
    nothing
    notions
    nth
    number 1 2 3 4 5 6 7 8 9 10 11 12 13
    numbers
    -

    -object 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
    objects 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
    obtain 1 2 3
    obtained


    >> - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstf8.htm b/doc/salome/gui/GEOM/whgdata/whlstf8.htm deleted file mode 100755 index 4fe7761c0..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstf8.htm +++ /dev/null @@ -1,43 +0,0 @@ - - -Search Words List - - - - - - - -

    <<

    -

    -occ 1 2 3 4 5 6 7 8 9 10
    occurred
    offset 1 2
    ok 1 2 3 4
    old
    one 1 2 3 4 5 6 7 8 9 10 11 12 13
    opaque
    open 1 2 3 4 5 6
    opening
    opens
    openwires 1 2
    operation 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
    operations 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
    operator
    operators 1 2
    opportunity
    opposite
    optimization 1 2
    option
    options
    order
    orientate
    orientation
    oriented
    origin 1 2 3 4 5 6 7 8
    os
    otherwise 1 2 3 4 5 6
    our 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
    out 1 2
    outside
    ox 1 2
    oy
    oz 1 2 3 4
    -

    -p
    p_25_25_50
    p_25_50_25
    p_50_25_25
    p_on_arc
    p0 1 2 3 4 5 6 7 8
    p1 1 2 3 4 5 6 7 8
    p10
    p100
    p11
    p12
    p13
    p2 1 2 3 4 5 6 7 8
    p200 1 2
    p3 1 2 3 4 5 6
    p4 1 2 3 4
    p5 1 2 3 4
    p50
    p6 1 2
    p7 1 2
    p70
    p8 1 2
    p9
    panning
    parallel 1 2 3 4
    parameter 1 2 3 4
    parameterization
    parameters 1 2 3 4 5 6 7 8 9
    parametric
    paramter
    part 1 2 3
    partition 1 2
    partition1
    partition2
    partition3
    parts
    passed
    passes 1 2 3 4
    passing
    path 1 2
    pathshape
    perform 1 2 3
    performed
    perpendicular
    pi 1 2 3
    picture
    pipe 1 2
    place
    placed
    places
    planar 1 2 3 4 5
    plane 1 2 3 4 5 6 7 8 9 10
    plane1
    plane2
    plane3
    planes 1 2 3
    plug
    plunged


    >> - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstf9.htm b/doc/salome/gui/GEOM/whgdata/whlstf9.htm deleted file mode 100755 index e6bc71836..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstf9.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words List - - - - - - - -

    <<

    -

    -png 1 2
    point 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
    point1 1 2 3 4 5 6 7 8 9 10 11
    point2 1 2 3 4 5 6 7 8 9 10 11
    point3 1 2 3 4 5
    point4 1 2
    point5
    pointcoordinates 1 2
    points 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
    polyline 1 2
    pop 1 2
    position 1 2 3 4 5 6
    positional
    positions
    possibilities
    possibility
    possible 1 2 3 4 5
    precision 1 2
    predefined
    presentation
    press
    pressed
    presumes
    preview
    previous 1 2
    primitives 1 2 3 4 5 6 7 8
    print 1 2
    printed
    prism 1 2 3 4 5
    prism_edges
    prism_faces 1 2
    prism1
    prism2
    prisms 1 2
    problems
    process 1 2
    processed 1 2 3 4
    processes
    processing 1 2
    processshape 1 2
    produce 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
    program
    projection
    projections
    propagate 1 2
    propagation 1 2
    properties 1 2
    proportional
    props
    provide 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
    providing
    ps
    put
    px 1 2 3 4 5
    pxy
    pxyz 1 2 3
    py 1 2 3 4 5
    py1
    python
    pz 1 2 3 4 5 6
    -

    -qface1
    qface2
    qface3
    qface4
    qface5
    qface6
    qface7
    qface8
    quadrangle 1 2 3 4
    -

    -r 1 2 3
    radio
    radius 1 2 3 4 5 6 7 8 9 10 11
    radius1 1 2 3 4 5
    radius2 1 2
    radius3
    radiuses 1 2 3 4
    radiusmajor 1 2
    radiusminor 1 2
    raise 1 2 3
    range 1 2 3 4 5 6
    recent
    reconstruction
    redefine
    reduce
    reference 1 2
    refreshes
    regarding
    relative
    relatively
    relevant
    remain 1 2
    remainder
    remote
    remove 1 2 3 4 5
    removed 1 2 3 4 5 6 7 8 9
    removeobject 1 2
    removes 1 2 3
    removewebs
    removing
    rename
    repair 1 2 3 4 5 6 7 8 9 10
    repairing 1 2 3 4 5 6 7 8 9 10 11 12 13
    repetition 1 2
    repetitions
    representation
    represented
    representing 1 2
    represents
    required 1 2
    requireddegree
    requirednbsegments
    requires
    res
    reset
    resizes
    respect 1 2
    restore
    restores
    restriction
    result 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
    resultant
    resulting 1 2 3 4 5
    results 1 2 3 4 5 6
    retrieves
    return
    returned 1 2 3
    returning
    returns 1 2 3 4 5
    reverse 1 2
    revolution 1 2 3


    >> - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl0.htm b/doc/salome/gui/GEOM/whgdata/whlstfl0.htm deleted file mode 100755 index a8d6ceb56..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl0.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ { {D {E {D ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl1.htm b/doc/salome/gui/GEOM/whgdata/whlstfl1.htm deleted file mode 100755 index 3ddd0ea89..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl1.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ AB AC AD AL AN AP AR AU AV AX ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl10.htm b/doc/salome/gui/GEOM/whgdata/whlstfl10.htm deleted file mode 100755 index c098d325e..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl10.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ JO JP JU ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl11.htm b/doc/salome/gui/GEOM/whgdata/whlstfl11.htm deleted file mode 100755 index 4547492c4..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl11.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ K KE KO ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl12.htm b/doc/salome/gui/GEOM/whgdata/whlstfl12.htm deleted file mode 100755 index 07c629bc7..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl12.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ L LA LC LE LI LL LO LS LY ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl13.htm b/doc/salome/gui/GEOM/whgdata/whlstfl13.htm deleted file mode 100755 index fa383d41a..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl13.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ MA ME MI MO MU ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl14.htm b/doc/salome/gui/GEOM/whgdata/whlstfl14.htm deleted file mode 100755 index 60532d353..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl14.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ N NA NB NC NE NI NM NO NT NU ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl15.htm b/doc/salome/gui/GEOM/whgdata/whlstfl15.htm deleted file mode 100755 index 68165a4f0..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl15.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ OB OC OF OK OL ON OP OR OS OT OU OX OY OZ ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl16.htm b/doc/salome/gui/GEOM/whgdata/whlstfl16.htm deleted file mode 100755 index eda34ce91..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl16.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ P PA PE PI PL PN PO PR PS PU PX PY PZ ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl17.htm b/doc/salome/gui/GEOM/whgdata/whlstfl17.htm deleted file mode 100755 index a4abf7108..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl17.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ QF QU ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl18.htm b/doc/salome/gui/GEOM/whgdata/whlstfl18.htm deleted file mode 100755 index e11002aa0..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl18.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ R RA RE RI RO RU ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl19.htm b/doc/salome/gui/GEOM/whgdata/whlstfl19.htm deleted file mode 100755 index 0a710d8a9..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl19.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ S SA SC SE SG SH SI SK SM SO SP SQ ST SU SY ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl2.htm b/doc/salome/gui/GEOM/whgdata/whlstfl2.htm deleted file mode 100755 index b122abd54..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl2.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ B BA BB BE BL BM BO BR BS BU BY ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl20.htm b/doc/salome/gui/GEOM/whgdata/whlstfl20.htm deleted file mode 100755 index 095ab4760..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl20.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ T TA TE TH TI TO TR TT TU TW TY ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl21.htm b/doc/salome/gui/GEOM/whgdata/whlstfl21.htm deleted file mode 100755 index 1d1f4d32b..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl21.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ U UN UP US ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl22.htm b/doc/salome/gui/GEOM/whgdata/whlstfl22.htm deleted file mode 100755 index ca8764f6b..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl22.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ V VA VE VI VO VR VT VX VZ ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl23.htm b/doc/salome/gui/GEOM/whgdata/whlstfl23.htm deleted file mode 100755 index 57d263d57..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl23.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ W WA WE WF WH WI WO WW ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl24.htm b/doc/salome/gui/GEOM/whgdata/whlstfl24.htm deleted file mode 100755 index c0564aa39..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl24.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ X XD XM XO XY XZ ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl25.htm b/doc/salome/gui/GEOM/whgdata/whlstfl25.htm deleted file mode 100755 index 2d94192b0..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl25.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ Y YD YM YO YZ ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl26.htm b/doc/salome/gui/GEOM/whgdata/whlstfl26.htm deleted file mode 100755 index c096d46be..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl26.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ Z ZE ZM ZO ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl3.htm b/doc/salome/gui/GEOM/whgdata/whlstfl3.htm deleted file mode 100755 index 819f2db3e..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl3.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ C CA CE CH CI CL CM CN CO CR CS CU CY ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl4.htm b/doc/salome/gui/GEOM/whgdata/whlstfl4.htm deleted file mode 100755 index 4f958b9c2..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl4.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ D DA DE DI DO DR DU DX DY DZ ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl5.htm b/doc/salome/gui/GEOM/whgdata/whlstfl5.htm deleted file mode 100755 index 6436a8110..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl5.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ E EA ED EG EI EL EM EN EQ ER ET EX ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl6.htm b/doc/salome/gui/GEOM/whgdata/whlstfl6.htm deleted file mode 100755 index aeeed420f..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl6.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ F FA FI FL FO FR FU ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl7.htm b/doc/salome/gui/GEOM/whgdata/whlstfl7.htm deleted file mode 100755 index 8f8665a31..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl7.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ G GA GC GE GG GI GL GO GR ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl8.htm b/doc/salome/gui/GEOM/whgdata/whlstfl8.htm deleted file mode 100755 index 124e38af9..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl8.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ HA HE HI HO ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstfl9.htm b/doc/salome/gui/GEOM/whgdata/whlstfl9.htm deleted file mode 100755 index c8ce4cd0e..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstfl9.htm +++ /dev/null @@ -1,45 +0,0 @@ - - -Search Words letter - - - - - - - - - -

    ^ I ID IF IG IM IN IS IT IX IY IZ ^

    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstg0.htm b/doc/salome/gui/GEOM/whgdata/whlstg0.htm deleted file mode 100755 index 193fb7c67..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstg0.htm +++ /dev/null @@ -1,75 +0,0 @@ - - -Glossary words list - - - - - - - -

    Cell

    -

    Element of a mesh. Cells are determined by their connectivity. They can have 0,1,2 or 3 dimension.

    -

    Component

    -

    One integer or real value can correspond to each component of a field and to each entity of a mesh

    -

    Descendant connectivity

    -

    It is a description of the entities of the mesh with dimension N. This description is made by an ordered list of geometrical entities (nodes, edges, or faces) with dimension N-1.

    -

    Edge

    -

    An edge of a volumetric or surface mesh. It is composed of 2 or 3 nodes (2 vertex nodes and optionally one middle node).

    -

    Entity of a mesh

    -

    Geometrical component of the mesh: node, cell, face and edge. Faces and edges are only intermediate entities allowing to define the cells in descendant connectivity.

    -

    Equivalence

    -

    Equivalence represents a list of correspondance 2 by 2 of the entities of the same dimension.

    -

    Face

    -

    Face of a volumetrical cell (triangle, quadrangle).

    -

    Family

    -

    Entities of a mesh are described by a certain number  of characteristics (boundary conditions, groups membership). Families represent classes equivalent to these characteristics (two entities of a mesh can belong to the same family if they have the same characteristics). Every family is determined by a set of attributes and a list of groups membership.

    -

    Field

    -

    Field consists of one or several scalar components. One definite type is associated to the given field and the values corresponding to different components are all of the same type.

    -

    Field profile

    -

    Fields can be defined only on one part of the mesh. Profile  of the field or profile of the component of a field indicates which entities of the mesh contain values.

    -

    Group

    -

    Unordered set of entities of a mesh. One entity can belong to  several groups.

    -

    Mesh

    -

    Mesh is described by its geometry: list of nodes and list of cells which constitute this mesh. Supplementary information is added with the help of families (initial, boundary conditions).

    -

    Nodal connectivity

    -

    It is a description of an entity of the mesh by an ordered list of nodes constituting this entity.

    -

    Node

    -

    Node can be an isolated node of a mesh, a vertex or middle node of an edge. A node is associated to a point.

    -

    Point

    -

    Geometrical entity determined by its coordinates in the space.

    -

    Reference connectivity

    -

    For each type of entity of a mesh, reference connectivity define the topology of an entity.

    -

    Result

    -

    List of fields referring to one mesh.

    -

    Study

    -

    Study represents a chain of sequences of calculations.

    -



    - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlsti0.htm b/doc/salome/gui/GEOM/whgdata/whlsti0.htm deleted file mode 100755 index 32e2c7fd9..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlsti0.htm +++ /dev/null @@ -1,39 +0,0 @@ - - - -Index words list - - - - - - - - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt0.htm b/doc/salome/gui/GEOM/whgdata/whlstt0.htm deleted file mode 100755 index 98e3b2c07..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt0.htm +++ /dev/null @@ -1,51 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt1.htm b/doc/salome/gui/GEOM/whgdata/whlstt1.htm deleted file mode 100755 index 71d6e3159..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt1.htm +++ /dev/null @@ -1,58 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -    Introduction to Geometry
    -    Importing/exporting geometrical objects
    -    Creating geometrical objects
    -    Viewing geometrical objects
    -    Transforming geometrical objects
    -    Using measurement tools
    -    TUI Scripts
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt10.htm b/doc/salome/gui/GEOM/whgdata/whlstt10.htm deleted file mode 100755 index 204cdfe22..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt10.htm +++ /dev/null @@ -1,68 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -    Introduction to Geometry
    -    Importing/exporting geometrical objects
    -    Creating geometrical objects
    -    Viewing geometrical objects
    -    Transforming geometrical objects
    -       Basic Operations
    -       Boolean Operations
    -          Using boolean operations
    -          Fuse
    -          Common
    -          Cut
    -          Section
    -       Transformation Operations
    -       Blocks Operations
    -       Repairing Operations
    -    Using measurement tools
    -    TUI Scripts
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt11.htm b/doc/salome/gui/GEOM/whgdata/whlstt11.htm deleted file mode 100755 index 1a34a2504..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt11.htm +++ /dev/null @@ -1,73 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -    Introduction to Geometry
    -    Importing/exporting geometrical objects
    -    Creating geometrical objects
    -    Viewing geometrical objects
    -    Transforming geometrical objects
    -       Basic Operations
    -       Boolean Operations
    -       Transformation Operations
    -          Translation
    -          Rotation
    -          Modify the Location
    -          Mirror Image
    -          Scale Transform
    -          Offset Surface
    -          Multi Translation
    -          Multi Rotation
    -          Fillet
    -          Chamfer
    -       Blocks Operations
    -       Repairing Operations
    -    Using measurement tools
    -    TUI Scripts
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt12.htm b/doc/salome/gui/GEOM/whgdata/whlstt12.htm deleted file mode 100755 index af8e2ab44..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt12.htm +++ /dev/null @@ -1,66 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -    Introduction to Geometry
    -    Importing/exporting geometrical objects
    -    Creating geometrical objects
    -    Viewing geometrical objects
    -    Transforming geometrical objects
    -       Basic Operations
    -       Boolean Operations
    -       Transformation Operations
    -       Blocks Operations
    -          Multi Transformation
    -          Explode on Blocks
    -          Propagate
    -       Repairing Operations
    -    Using measurement tools
    -    TUI Scripts
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt13.htm b/doc/salome/gui/GEOM/whgdata/whlstt13.htm deleted file mode 100755 index a6ad5342f..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt13.htm +++ /dev/null @@ -1,73 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -    Introduction to Geometry
    -    Importing/exporting geometrical objects
    -    Creating geometrical objects
    -    Viewing geometrical objects
    -    Transforming geometrical objects
    -       Basic Operations
    -       Boolean Operations
    -       Transformation Operations
    -       Blocks Operations
    -       Repairing Operations
    -          Shape Processing
    -          Suppress Faces
    -          Close Contour
    -          Suppress Internal Wires
    -          Suppress Holes
    -          Sewing
    -          Glue Faces
    -          Add Point on Edge
    -          Check Free Boundaries
    -          Check Free Faces
    -    Using measurement tools
    -    TUI Scripts
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt14.htm b/doc/salome/gui/GEOM/whgdata/whlstt14.htm deleted file mode 100755 index 90141801a..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt14.htm +++ /dev/null @@ -1,63 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -    Introduction to Geometry
    -    Importing/exporting geometrical objects
    -    Creating geometrical objects
    -    Viewing geometrical objects
    -    Transforming geometrical objects
    -    Using measurement tools
    -    TUI Scripts
    -       Viewing Geometrical Objects
    -       Creating Geometric Objects
    -       Transformation
    -       Measurement Tools
    -       Python interface geompy.py
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt15.htm b/doc/salome/gui/GEOM/whgdata/whlstt15.htm deleted file mode 100755 index a55c4689c..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt15.htm +++ /dev/null @@ -1,69 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -    Introduction to Geometry
    -    Importing/exporting geometrical objects
    -    Creating geometrical objects
    -    Viewing geometrical objects
    -    Transforming geometrical objects
    -    Using measurement tools
    -    TUI Scripts
    -       Viewing Geometrical Objects
    -       Creating Geometric Objects
    -          Basic Geometrical Objects
    -          Primitives
    -          Complex Objects
    -          Working with Groups
    -          Building by Blocks
    -          Sketcher
    -          Advanced Geometrical Objects
    -       Transformation
    -       Measurement Tools
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt16.htm b/doc/salome/gui/GEOM/whgdata/whlstt16.htm deleted file mode 100755 index 941a0790c..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt16.htm +++ /dev/null @@ -1,67 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -    Introduction to Geometry
    -    Importing/exporting geometrical objects
    -    Creating geometrical objects
    -    Viewing geometrical objects
    -    Transforming geometrical objects
    -    Using measurement tools
    -    TUI Scripts
    -       Viewing Geometrical Objects
    -       Creating Geometric Objects
    -       Transformation
    -          Basic Operations
    -          Boolean Operations
    -          Transformation Operations
    -          Blocks Operations
    -          Repairing Operations
    -       Measurement Tools
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt2.htm b/doc/salome/gui/GEOM/whgdata/whlstt2.htm deleted file mode 100755 index 7ec8d9f9f..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt2.htm +++ /dev/null @@ -1,65 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -    Introduction to Geometry
    -    Importing/exporting geometrical objects
    -    Creating geometrical objects
    -       Creating Basic Geometric Objects
    -       Creating Primitives
    -       Creating Complex Objects
    -       Working with groups
    -       Building by blocks
    -       Sketcher
    -       Creating Advanced Geometrical Objects
    -    Viewing geometrical objects
    -    Transforming geometrical objects
    -    Using measurement tools
    -    TUI Scripts
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt3.htm b/doc/salome/gui/GEOM/whgdata/whlstt3.htm deleted file mode 100755 index 80435d67b..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt3.htm +++ /dev/null @@ -1,75 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -    Introduction to Geometry
    -    Importing/exporting geometrical objects
    -    Creating geometrical objects
    -       Creating Basic Geometric Objects
    -          Point
    -          Line
    -          Circle
    -          Ellipse
    -          Arc
    -          Curve
    -          Vector
    -          Plane
    -          Working Plane
    -          Local Coordinate System
    -       Creating Primitives
    -       Creating Complex Objects
    -       Working with groups
    -       Building by blocks
    -       Sketcher
    -       Creating Advanced Geometrical Objects
    -    Viewing geometrical objects
    -    Transforming geometrical objects
    -    Using measurement tools
    -    TUI Scripts
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt4.htm b/doc/salome/gui/GEOM/whgdata/whlstt4.htm deleted file mode 100755 index 53e8bf275..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt4.htm +++ /dev/null @@ -1,70 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -    Introduction to Geometry
    -    Importing/exporting geometrical objects
    -    Creating geometrical objects
    -       Creating Basic Geometric Objects
    -       Creating Primitives
    -          Box
    -          Cylinder
    -          Sphere
    -          Torus
    -          Cone
    -       Creating Complex Objects
    -       Working with groups
    -       Building by blocks
    -       Sketcher
    -       Creating Advanced Geometrical Objects
    -    Viewing geometrical objects
    -    Transforming geometrical objects
    -    Using measurement tools
    -    TUI Scripts
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt5.htm b/doc/salome/gui/GEOM/whgdata/whlstt5.htm deleted file mode 100755 index 12c834bc5..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt5.htm +++ /dev/null @@ -1,69 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -    Introduction to Geometry
    -    Importing/exporting geometrical objects
    -    Creating geometrical objects
    -       Creating Basic Geometric Objects
    -       Creating Primitives
    -       Creating Complex Objects
    -          Extrusion
    -          Revolution
    -          Filling
    -          Pipe
    -       Working with groups
    -       Building by blocks
    -       Sketcher
    -       Creating Advanced Geometrical Objects
    -    Viewing geometrical objects
    -    Transforming geometrical objects
    -    Using measurement tools
    -    TUI Scripts
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt6.htm b/doc/salome/gui/GEOM/whgdata/whlstt6.htm deleted file mode 100755 index 39a238c00..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt6.htm +++ /dev/null @@ -1,72 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -    Introduction to Geometry
    -    Importing/exporting geometrical objects
    -    Creating geometrical objects
    -       Creating Basic Geometric Objects
    -       Creating Primitives
    -       Creating Complex Objects
    -       Working with groups
    -       Building by blocks
    -       Sketcher
    -       Creating Advanced Geometrical Objects
    -          Explode
    -          Edge
    -          Wire
    -          Face
    -          Shell
    -          Solid
    -          Compound
    -    Viewing geometrical objects
    -    Transforming geometrical objects
    -    Using measurement tools
    -    TUI Scripts
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt7.htm b/doc/salome/gui/GEOM/whgdata/whlstt7.htm deleted file mode 100755 index 90cd66b4b..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt7.htm +++ /dev/null @@ -1,64 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -    Introduction to Geometry
    -    Importing/exporting geometrical objects
    -    Creating geometrical objects
    -    Viewing geometrical objects
    -       Viewing Geometrical Objects
    -       OCC 3D Viewer
    -       Display Mode
    -       Color
    -       Transparency
    -       Isolines
    -    Transforming geometrical objects
    -    Using measurement tools
    -    TUI Scripts
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt8.htm b/doc/salome/gui/GEOM/whgdata/whlstt8.htm deleted file mode 100755 index 582722826..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt8.htm +++ /dev/null @@ -1,63 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -    Introduction to Geometry
    -    Importing/exporting geometrical objects
    -    Creating geometrical objects
    -    Viewing geometrical objects
    -    Transforming geometrical objects
    -       Basic Operations
    -       Boolean Operations
    -       Transformation Operations
    -       Blocks Operations
    -       Repairing Operations
    -    Using measurement tools
    -    TUI Scripts
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whlstt9.htm b/doc/salome/gui/GEOM/whgdata/whlstt9.htm deleted file mode 100755 index 59e42a136..000000000 --- a/doc/salome/gui/GEOM/whgdata/whlstt9.htm +++ /dev/null @@ -1,65 +0,0 @@ - - - -Content - - - - - - - - - - -
    -

    - Geometry module
    -    Introduction to Geometry
    -    Importing/exporting geometrical objects
    -    Creating geometrical objects
    -    Viewing geometrical objects
    -    Transforming geometrical objects
    -       Basic Operations
    -          Partition
    -          Archimede
    -       Boolean Operations
    -       Transformation Operations
    -       Blocks Operations
    -       Repairing Operations
    -    Using measurement tools
    -    TUI Scripts
    -

    - -
    -

    -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whnvf30.htm b/doc/salome/gui/GEOM/whgdata/whnvf30.htm deleted file mode 100755 index 7cff7ce54..000000000 --- a/doc/salome/gui/GEOM/whgdata/whnvf30.htm +++ /dev/null @@ -1,13 +0,0 @@ - - - -toc frame - - - - - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whnvf31.htm b/doc/salome/gui/GEOM/whgdata/whnvf31.htm deleted file mode 100755 index 91a985f9f..000000000 --- a/doc/salome/gui/GEOM/whgdata/whnvf31.htm +++ /dev/null @@ -1,15 +0,0 @@ - - - -Index frame - - - - - - - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whnvf32.htm b/doc/salome/gui/GEOM/whgdata/whnvf32.htm deleted file mode 100755 index bc2231fbf..000000000 --- a/doc/salome/gui/GEOM/whgdata/whnvf32.htm +++ /dev/null @@ -1,15 +0,0 @@ - - - -search frame - - - - - - - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whnvf33.htm b/doc/salome/gui/GEOM/whgdata/whnvf33.htm deleted file mode 100755 index 6c091d828..000000000 --- a/doc/salome/gui/GEOM/whgdata/whnvf33.htm +++ /dev/null @@ -1,15 +0,0 @@ - - - -Glossary frame - - - - - - - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whnvl31.htm b/doc/salome/gui/GEOM/whgdata/whnvl31.htm deleted file mode 100755 index e29abc01c..000000000 --- a/doc/salome/gui/GEOM/whgdata/whnvl31.htm +++ /dev/null @@ -1,43 +0,0 @@ - - - -Index Letters - - - - - - - - - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whnvl32.htm b/doc/salome/gui/GEOM/whgdata/whnvl32.htm deleted file mode 100755 index c76e9d162..000000000 --- a/doc/salome/gui/GEOM/whgdata/whnvl32.htm +++ /dev/null @@ -1,72 +0,0 @@ - - - -Search Letters - - - - - - - - -

    - # - A - B - C - D - E - F - G - H - I - J - K - L - M - N - O - P - Q - R - S - T - U - V - W - X - Y - Z -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whnvl33.htm b/doc/salome/gui/GEOM/whgdata/whnvl33.htm deleted file mode 100755 index d6f20c33c..000000000 --- a/doc/salome/gui/GEOM/whgdata/whnvl33.htm +++ /dev/null @@ -1,72 +0,0 @@ - - - -Glossary Letters - - - - - - - - -

    - # - A - B - C - D - E - F - G - H - I - J - K - L - M - N - O - P - Q - R - S - T - U - V - W - X - Y - Z -

    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whnvp30.htm b/doc/salome/gui/GEOM/whgdata/whnvp30.htm deleted file mode 100755 index 0c9cb814b..000000000 --- a/doc/salome/gui/GEOM/whgdata/whnvp30.htm +++ /dev/null @@ -1,16 +0,0 @@ - - - - Content Navigation Pane - - - - - - - - - - \ No newline at end of file diff --git a/doc/salome/gui/GEOM/whgdata/whnvp31.htm b/doc/salome/gui/GEOM/whgdata/whnvp31.htm deleted file mode 100755 index 87921c0b7..000000000 --- a/doc/salome/gui/GEOM/whgdata/whnvp31.htm +++ /dev/null @@ -1,16 +0,0 @@ - - - - Index Navigation Pane - - - - - - - - - - \ No newline at end of file diff --git a/doc/salome/gui/GEOM/whgdata/whnvp32.htm b/doc/salome/gui/GEOM/whgdata/whnvp32.htm deleted file mode 100755 index 90697b01f..000000000 --- a/doc/salome/gui/GEOM/whgdata/whnvp32.htm +++ /dev/null @@ -1,16 +0,0 @@ - - - - Search Navigation Pane - - - - - - - - - - \ No newline at end of file diff --git a/doc/salome/gui/GEOM/whgdata/whnvp33.htm b/doc/salome/gui/GEOM/whgdata/whnvp33.htm deleted file mode 100755 index 8351bcbea..000000000 --- a/doc/salome/gui/GEOM/whgdata/whnvp33.htm +++ /dev/null @@ -1,16 +0,0 @@ - - - - Glossary Navigation Pane - - - - - - - - - - \ No newline at end of file diff --git a/doc/salome/gui/GEOM/whgdata/whnvt30.htm b/doc/salome/gui/GEOM/whgdata/whnvt30.htm deleted file mode 100755 index ec1bb840f..000000000 --- a/doc/salome/gui/GEOM/whgdata/whnvt30.htm +++ /dev/null @@ -1,47 +0,0 @@ - - - -Content Navigation Tab - - - - - - - - - - - -
    - -
    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whnvt31.htm b/doc/salome/gui/GEOM/whgdata/whnvt31.htm deleted file mode 100755 index e17d82548..000000000 --- a/doc/salome/gui/GEOM/whgdata/whnvt31.htm +++ /dev/null @@ -1,45 +0,0 @@ - - - -Index Navigation Tab - - - - - - - - - - - -
    - -
    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whnvt32.htm b/doc/salome/gui/GEOM/whgdata/whnvt32.htm deleted file mode 100755 index d63892533..000000000 --- a/doc/salome/gui/GEOM/whgdata/whnvt32.htm +++ /dev/null @@ -1,45 +0,0 @@ - - - -Search Navigation Tab - - - - - - - - - - - -
    - -
    - - - - diff --git a/doc/salome/gui/GEOM/whgdata/whnvt33.htm b/doc/salome/gui/GEOM/whgdata/whnvt33.htm deleted file mode 100755 index af63a0257..000000000 --- a/doc/salome/gui/GEOM/whgdata/whnvt33.htm +++ /dev/null @@ -1,45 +0,0 @@ - - - -Glossary Navigation Tab - - - - - - - - - - - -
    - -
    - - - - diff --git a/doc/salome/gui/GEOM/whxdata/whftdata0.xml b/doc/salome/gui/GEOM/whxdata/whftdata0.xml deleted file mode 100755 index 0f5be19c9..000000000 --- a/doc/salome/gui/GEOM/whxdata/whftdata0.xml +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/doc/salome/gui/GEOM/whxdata/whfts.xml b/doc/salome/gui/GEOM/whxdata/whfts.xml deleted file mode 100755 index 3146b8080..000000000 --- a/doc/salome/gui/GEOM/whxdata/whfts.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/doc/salome/gui/GEOM/whxdata/whfwdata0.xml b/doc/salome/gui/GEOM/whxdata/whfwdata0.xml deleted file mode 100755 index da0b6c7d6..000000000 --- a/doc/salome/gui/GEOM/whxdata/whfwdata0.xml +++ /dev/null @@ -1,1365 +0,0 @@ - - - 0,3,4,5,6,8,11,18,37,40,44,46,56,57,59,65,68,74,76,33, - 59, - 18, - 4, - 44, - 0,2,3,4,5,6,8,9,10,11,14,15,18,20,23,25,26,27,28,29,34,35,37,39,40,43,44,45,46,47,48,49,53,54,55,56,57,58,59,60,61,62,64,65,67,68,70,72,74,75,76,77,31,82,83, - 3,18,37,44,57,68,74, - 3,4,5,18,37,44,46,59,68,74, - 3,74, - 4, - 44, - 44, - 44, - 33, - 8, - 59, - 59, - 8,18,44,57,68, - 3,8,37,59,68, - 11, - 57, - 3, - 59,65,68, - 44, - 5,74, - 44,59, - 50,5,7,14,17,18,21,22,23,24,27,28,36,37,40,41,42,44,47,48,49,53,59,63,67,74,75,77,31,78,82, - 3,6,18,37,57,59,68,74, - 3,4,5,40,44,46,59,74, - 74, - 11, - 74, - 44, - 3,5,6,57,74, - 37,44,59,68, - 5,35,59,65,74,31, - 1,2,5,7,11,14,18,20,37,40,44,48,55,56,59,61,67,74,75,31,78, - 3,8,11,18,37,44,57,59,68,74, - 37,68, - 44, - 11, - 59, - 44, - 6,8,57,59,74, - 14,21,35,43,51,55,56,59,65,71,31,33,78,79,81,83, - 50,37,40,44,48,67,74,31, - 6,8,18,37,57,59,74, - 59, - 57,59, - 0,3,11,18,35,37,40,32,44,56,59,67,68,74, - 3,5,8,11,18,37,44,59,68,74,76, - 4, - 6,57,59, - 50,5,44,33, - 18,37,59,74, - 59, - 37,44,59, - 3,8,37,57,59,68,74, - 44, - 44,59,68,74, - 37,44,67, - 65,67, - 51,67, - 67, - 76, - 51,79, - 7,16,29,42,70, - 0, - 0,15, - 15,40,32,83, - 0,3,4,5,6,8,18,37,40,57,59,68,74,83, - 40,83, - 3,4,5,6,8,11,18,37,40,57,59,68,74, - 5,59, - 7,19,24,28,29,37,66,69,70,80, - 7,14,20,21,23,28,43,46,55,56,61,67,70,77,78,82, - 59, - 50,9,26,43,45,46,47,51,53,61,64,65,67,72,75,33,79, - 7,9,46,49,52,54,74,75, - 31, - 40, - 46, - 47,59,60,61,65,67,74, - 22,42,55,56,70,74, - 43,53,61,65,75, - 43,74,83, - 79,83, - 18,37,74, - 9,65, - 52, - 65,79, - 65, - 1,3,18,37,59,67,68,74, - 18, - 18, - 2,4, - 44,51, - 0,1,2,50,7,9,10,14,15,17,19,20,21,22,23,24,25,26,27,28,29,34,35,36,39,41,42,43,45,46,47,48,49,52,53,54,55,56,58,60,61,62,63,64,66,67,69,70,71,72,73,75,77,31,78,80,82,83, - 47,51,60,74, - 50,43,79, - 0,50,15,32,51,67,71,72,73,83, - 7,43,49,51,75, - 18,20,23,43,45,46,47,60,61,74,33, - 3,21,65, - 79, - 20,23,28,43,47,51,54,59,60,62,65,75,77, - 54, - 28,51, - 1,2,3,4,14,21,25,38,30,42,43,44,53,55,56,67,33,78,82, - 44,33, - 44, - 24, - 59,65,67, - 59, - 9, - 50, - 21, - 3,21,65, - 79, - 50,5,8,27,38,30,44,48,58,33, - 51,79, - 6,17,22,36,38,30,63,31,33, - 7,20,48,49,65, - 59, - 8,37,44,51,33, - 12,59,64,72, - 12,59,73, - 44,33, - 4,50,5,7,11,16,22,27,40,32,44,51,53,57,59,65,67,73,74,76,33,80,83, - 5, - 5, - 44,57,59, - 44,57,59, - 57, - 65, - 58, - 38,32,30,59, - 32,43,79,80, - 65, - 65, - 50,5,8,19,24,29,38,30,53,58,66,69,80, - 43,51,54,64,72,80,83, - 50, - 37,65,68, - 65, - 65, - 65, - 38,30, - 43,33, - 82, - 50,43,48,61,73, - 51, - 32, - 51, - 7,14,20,25,44,46,47,51,67,70,74,77,33, - 26, - 62, - 20,23,61,62,65, - 61, - 65,83, - 5, - 9,74, - 74, - 74, - 74, - 74, - 10,11,16,41,51,76,79,81, - 10, - 12,13,27,29,44,59,65,73,33, - 5, - 10,45,46,47,61,72,75,33, - 44,33, - 44,59,33, - 21, - 27,32,43,51,53, - 3,14,67, - 3, - 3, - 16,32,51,54,79,81,83, - 51, - 51, - 12,15,59,65,69,83, - 15,59, - 12,59, - 15, - 44, - 65, - 46, - 39, - 65, - 20,23, - 11,16,79,81, - 0,1,2,50,7,9,10,12,13,14,15,16,17,19,20,21,23,24,25,26,27,28,29,34,35,36,39,42,43,45,46,47,48,49,52,53,54,55,56,58,60,61,62,63,64,65,66,67,69,70,71,72,73,75,76,77,31,33,78,79,80,81,83, - 6,9,15,17,74,31, - 18,28,35,38,30,54,60,31, - 3,18,67,75, - 50,10,33, - 50,5,17,18,19,22,26,27,35,36,37,39,44,47,49,52,59,63,33, - 26,28,54,60, - 37, - 2,33, - 20,57,59, - 33, - 33, - 57, - 57, - 32,83, - 65, - 9,29,66,33,80, - 33, - 74, - 15,39,33, - 33, - 50, - 50,69, - 21,38,30,43,51,31, - 0,13,15,58, - 40,32,51, - 65, - 65, - 65, - 65, - 65, - 15,59, - 65, - 65, - 44, - 7,20,23,26,43,44,46,51,55,56,67,70,74,75,77,33,78,82, - 10,45,46,61,75, - 65, - 7,8, - 65, - 65, - 2,12,21,24,27, - 59, - 67, - 31, - 1,2,3,4,50,5,6,7,8,9,10,14,15,18,19,20,21,23,24,25,26,28,29,34,35,36,37,40,42,43,44,45,46,47,51,54,55,56,57,59,60,61,62,63,66,67,68,69,70,74,75,77,33,78,79,80,82,83, - 3,4,5,6,8,11,18,37,40,57,59,68,74, - 40,83, - 1,3,7,14,15,18,19,20,21,23,24,25,28,29,35,37,38,40,30,42,54,55,56,57,59,60,66,69,70,77,78,80,83, - 5, - 51, - 74, - 74, - 46, - 7,42,51,53,67,70, - 3,21,35,65,67, - 65, - 65, - 65, - 65, - 6,17,22,53,59,31, - 59, - 6,20,23,57,59,74, - 18,57, - 57, - 57, - 65, - 9,59,65, - 9,74, - 9,74, - 33, - 59, - 44, - 51,56,67,79,83, - 1,7,9,14,20,21,23,25,26,27,28,34,35,32,42,43,47,48,49,51,54,55,56,60,61,62,65,67,70,75,77,78,82,83, - 72, - 54, - 2, - 61, - 33, - 35,60,65,67, - 83, - 2, - 48,65, - 65, - 44, - 79, - 50,44,67,68,33, - 83, - 38,30, - 67, - 79, - 12,64,72, - 65, - 51, - 50,22,32,65,67,76,80,83, - 40, - 45,33, - 7,9,23,28,47,33, - 47,49, - 49, - 49, - 43,61, - 2,14,20,25,28,43,47,48,49,51,60,61,65,67,77, - 48, - 48, - 48, - 48, - 48, - 48, - 3,4,5,6,8,11,16,18,37,40,32,41,51,57,59,64,68,72,74,76,33,79,81,83, - 79, - 39,44,52,65,33, - 0,59, - 0,59, - 79, - 40,51, - 7,10,15,28,49,51,70, - 47,48,49,67,76, - 83, - 51, - 51, - 51, - 65, - 65, - 65, - 51,79, - 51, - 7,44,67,75,78, - 7,44,67,75,78, - 7,44,75,78, - 44,53,65, - 50, - 50, - 50, - 50, - 83, - 0,1,50,7,8,9,12,14,15,18,21,24,25,26,28,34,35,37,42,44,54,56,58,59,60,65,66,67,74,33,78,80,81, - 59, - 59, - 8, - 8, - 8, - 8, - 0, - 83, - 33, - 33, - 50,46, - 15,29,67,31,33,79,83, - 50, - 3,25, - 44,59, - 72,73, - 33, - 1,15,28,46,59,65,67,74,75,78, - 83, - 33, - 1,50,7,14,19,20,21,23,24,25,26,28,29,35,42,43,54,55,56,60,66,67,69,70,77,78,80,82,83, - 20,65,67, - 79, - 79, - 79, - 12,40,33, - 26,53,65, - 0,1,2,50,7,9,10,12,13,14,15,16,17,19,20,21,22,23,24,25,27,28,29,34,35,36,39,32,41,42,43,45,46,47,48,49,52,53,54,55,56,58,59,60,61,62,63,64,65,66,67,69,70,71,72,73,75,76,77,31,78,80,81,83, - 73, - 67,83, - 32, - 5,26,27,37, - 38,32,30,51,79, - 32, - 51, - 33, - 27, - 54,60, - 28,54, - 37,68, - 59, - 74, - 74, - 50, - 59, - 50, - 50, - 50, - 50, - 50, - 44, - 2,3,50,5,8,9,10,13,15,18,26,27,28,29,34,35,37,39,40,44,48,52,53,54,55,59,60,65,66,67,68,71,73,74,33,82, - 59, - 59, - 9,18,37, - 9,18,37, - 37, - 40, - 33, - 33, - 62,74, - 44,59, - 12, - 53, - 10, - 16,18,35,32,79,81, - 72, - 9,34,74, - 74, - 45,46,55,56,75,82,83, - 7,14,20,23,24,28,43,45,46,48,49,53,55,56,61,65,68,70,75,77,31,78,82, - 51, - 65, - 65, - 59,65, - 33, - 59, - 65,67,68,76,31,33,83, - 38,32,30,51,79, - 50,8,65, - 51, - 12,13,59,64,72, - 38,30,51,74, - 50, - 51,53,67,83, - 6,11,36,31, - 11, - 65, - 65, - 15, - 46, - 50,31, - 28,35,54, - 28,35,38,30,54,60, - 3,4,5,6,8,11,18,37,40,44,57,58,59,68,74,33, - 0,1,2,50,7,9,12,13,14,15,17,19,20,21,22,23,24,25,26,27,28,29,34,35,36,39,42,45,47,48,49,52,53,54,55,56,58,60,61,62,63,64,65,66,67,69,70,71,72,73,75,77,33,78,80,83, - 1,50,14,19,21,24,25,28,29,35,42,54,55,56,60,65,66,69,78,79,80, - 3,11,17,37,38,32,30,47,51,53,31,33,79,81,83, - 38,32,30,51,59,65,33, - 0,1,2,3,4,50,5,6,7,8,9,10,11,12,14,15,17,18,19,20,21,23,24,25,26,27,28,29,34,35,36,37,39,40,42,43,44,45,46,47,48,49,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,77,31,33,78,80,83, - 5,44,59,74,33, - 59, - 5, - 12,59, - 13,59, - 83, - 59, - 5,40,59,74, - 3,4,5,6,8,11,16,18,37,40,44,57,59,68,74,76,81, - 14,25,32,55,65, - 3,5,8,9,13,18,23,26,27,29,34,37,39,42,47,52,56,59,65,68,74,77,33, - 46,51, - 5,39,44,59,33, - 51, - 26,44,47,33, - 51, - 5,38,40,30,51,58,83, - 83, - 40, - 79, - 83, - 65,66, - 6,20,23,28,57,59,74, - 83, - 8, - 50,8,48, - 50, - 51,79, - 12,33, - 59,72, - 80, - 33, - 18,37,40,53,59,65, - 33, - 33, - 33, - 33, - 33, - 33, - 33, - 33, - 33, - 0,13,15,16,26,48,59,71,72,73,74,76,79,81,83, - 3, - 4, - 74, - 3, - 4,5,59,74, - 5, - 5, - 57,59, - 57,59, - 57, - 74, - 74, - 74, - 74, - 3, - 3, - 6, - 5,18,37,59, - 57, - 57, - 74, - 74, - 6,59, - 59, - 6,74, - 57, - 57, - 59, - 18,37,59, - 8, - 8, - 8, - 8, - 3, - 3,59,68, - 59, - 18,37, - 18,37, - 37, - 18, - 74, - 74, - 6, - 59, - 40, - 59, - 3, - 3, - 3, - 5, - 74, - 74, - 74, - 74, - 59, - 3, - 3, - 3,8,74, - 3, - 3,8,74, - 3,8, - 3,8,74, - 4, - 4, - 4, - 18, - 4,74, - 3, - 3, - 3, - 3, - 74, - 74, - 18, - 18, - 3, - 3, - 3, - 8, - 8, - 8, - 59, - 18, - 74, - 74, - 74, - 74, - 74, - 6, - 59, - 59, - 37, - 68, - 68, - 37, - 8, - 8, - 6, - 57, - 57, - 57, - 57, - 57, - 74, - 74, - 74, - 74, - 74, - 3, - 3, - 3, - 18, - 74, - 3, - 18,37,59, - 59, - 59,74, - 74, - 74, - 0,10,12,15,20,29,40,44,51,59,65,72,73,33, - 38,32,30, - 53, - 5, - 45,51,74,79, - 65, - 32, - 53, - 65, - 3,4,5,6,8,11,18,37,38,40,32,30,44,57,59,68,74,33, - 32, - 59, - 3,4,5,6,8,11,18,37,40,44,57,59,68,74, - 29, - 32,52, - 40, - 15, - 17, - 26,83, - 9,26,59, - 49,56, - 44,33, - 33, - 10,45,46,47,61,62,75, - 33, - 15, - 20, - 48, - 27,48, - 27, - 50, - 59,73, - 3, - 21, - 53, - 53, - 50,38,30, - 44,59,65, - 51, - 76, - 10, - 0, - 15, - 44, - 79, - 41,79, - 51, - 37, - 3,18,29,68, - 59, - 44,59, - 35, - 15, - 44,33, - 44,33, - 44,33, - 65, - 51,79, - 51,79, - 65, - 50, - 65, - 45,46,61,75,83, - 83, - 59, - 37,68, - 24,43, - 43,46, - 46, - 46, - 21, - 10,83, - 46,51,79, - 59, - 0,44,67,33, - 1,14, - 53, - 2,3,42,43,67,83, - 3, - 3, - 67, - 3,9,12,13,15,19,21,26,29,35,40,53,58,59,64,65,66,67,69,71,72,73,74,80,83, - 5, - 9, - 71, - 71, - 26, - 53, - 53, - 53, - 19,21,53,64,66,69,80, - 53, - 72, - 34, - 51, - 43,46,52,55,67,74,82, - 46, - 46, - 51,56, - 32,43,46,74, - 10,51, - 46, - 67,73, - 65, - 0,1,2,50,7,9,10,12,13,14,15,17,19,20,21,22,23,24,25,26,27,28,29,34,35,36,39,42,43,44,45,46,47,48,49,52,53,54,55,56,58,60,61,62,63,64,65,66,67,69,70,71,72,73,75,77,33,78,80,82,83, - 83, - 25,77, - 5,6,9,44,48,49,59,74,75,83, - 5, - 1,3,18,37,59,68,74, - 3,21, - 5,27, - 11,31, - 7,11,44,57,59,74, - 5,7,44,57,59,74, - 4,7,40,57, - 44,33, - 74, - 9,74, - 9,74, - 9,74, - 3,14, - 3,14, - 6,17, - 5,18,19,37,44,59, - 20,57,59, - 20,57, - 6,59, - 6,23,57,59,74, - 23,57, - 8,18,24,37,59, - 3,25, - 3,18,29,37,59,68,74, - 29,37, - 18,35, - 34,74, - 34,74, - 6,36, - 39,44,59, - 4,53, - 50,8, - 50,8, - 3,21, - 3,42, - 3,42, - 43,74, - 45,74, - 45,74, - 45,74, - 47, - 47, - 5,48, - 5,48, - 49,74, - 49,74, - 52,74, - 4,53, - 18,54, - 3,4,55, - 3,55, - 3,55,74, - 3,21, - 46,74, - 18,28,37, - 18,28,59,74, - 50,8, - 50,8, - 50,8, - 18,60, - 59,61,74, - 61,74, - 62,74, - 6,63, - 59,64, - 37,66, - 37,67,68, - 68, - 37,69, - 5,6,11,57,70, - 57, - 57,77, - 57,77, - 18,37,74,75, - 74,75, - 74,75, - 3,6,18,37,57,59,68,74,78, - 3,4,18,78, - 3,4,5,6,8,18,37,40,44,56,57,59,68,74, - 3,56, - 3,56, - 3,18,37,59,68,74,80, - 51,83, - 51, - 44,33, - 44,59,74, - 44,33, - 27,35,44,65, - 5, - 18, - 35, - 27,65,33, - 27,35,39,65,33, - 27, - 65, - 65, - 52,56,67,81, - 33, - 44,33, - 32, - 65, - 51, - 50, - 0,1,2,50,7,9,10,12,13,14,15,16,17,19,20,21,22,23,24,25,26,27,28,29,34,35,36,39,32,41,42,43,45,46,47,48,49,52,53,54,55,56,58,60,61,62,63,64,65,66,67,69,70,71,72,73,75,77,33,78,79,80,81,82,83, - 65, - 2,50,51,79, - 2,4, - 46, - 1,56, - 27,35,44,33, - 44, - 5, - 18, - 35, - 44,33, - 27,29,44,33, - 27,35,65,33, - 27, - 25,77, - 45,74, - 74, - 74, - 74, - 0,11,15,65,79,81, - 2,38,30, - 15,46, - 46,74, - 38,32,30,51,79, - 44,33, - 51,79, - 46,49, - 83, - 5,47,48,49,74, - 47,74, - 47,74, - 58, - 44,47,49,72,33, - 65, - 0,1,2,50,7,9,10,14,15,17,19,20,21,22,23,24,25,28,29,34,35,36,39,32,42,43,45,46,47,48,49,52,53,54,55,56,60,62,63,64,65,66,69,70,71,72,73,75,77,78,79,80,82,83, - 5,7,42,70, - 26, - 18,35, - 44, - 44, - 65, - 47,48,49, - 47,49, - 47,49, - 48, - 48, - 44, - 44, - 7,9,26,28,29,34,35,47,49,54,60,62,65,70,75, - 65, - 9,34,65,67,33, - 15,61, - 52, - 65, - 1,50,7,14,15,19,20,21,23,24,25,26,28,29,35,42,43,51,53,54,55,56,60,66,67,69,70,74,77,78,79,80,82,83, - 44, - 44, - 21, - 12, - 44, - 3,10,14,25,52,55,77, - 20, - 29, - 50, - 65, - 27,35,41,47,48,49,52,59,64,65,72,74,79, - 48, - 1,2,3,4,5,6,8,9,10,11,14,16,17,18,19,21,24,25,26,28,29,34,35,37,38,40,32,30,42,43,45,46,47,51,52,53,54,55,56,57,58,59,60,61,65,66,68,69,73,74,75,31,33,78,79,80,81,83, - 26,44,46,65, - 0,9,15,34,51,71,72,73,79,83, - 12, - 52,74, - 43,44,59,83, - 53,56, - 0,15,22,47,48,49,56,59,65,67,82, - 76, - 12,15,32,51,59,83, - 12,59, - 0,1,2,4,50,5,6,7,9,10,12,13,14,15,17,20,21,22,23,25,26,27,28,34,35,36,38,39,30,42,45,46,47,48,49,52,53,54,55,56,58,59,60,61,62,63,64,65,67,70,71,72,73,74,75,77,31,78,83, - 59,65, - 32, - 7, - 38,30, - 79,81, - 65, - 50, - 51, - 10,51, - 7,20,23,43,51,70,77,78, - 61, - 59, - 0,15,45,46,61,75, - 0,1,2,50,7,9,12,13,14,15,16,17,19,20,21,22,23,24,25,27,28,29,34,35,36,39,42,45,46,47,48,49,52,53,54,55,56,58,60,61,62,63,64,65,66,67,69,70,71,72,73,75,76,77,31,33,78,80,81,83, - 51,65, - 10, - 43,67, - 43, - 20,23,43,67, - 57, - 5, - 5, - 5, - 3, - 3,4,8,18,37,40,57,59,74, - 3,6,8,18,37,57,59,68,74, - 8, - 3, - 8, - 3,6,8,18,37,57,59,68,74, - 4,40, - 3,8,18,37,59,68,74, - 3,8,18,74, - 3,8,18,74, - 3, - 8,18, - 8,18, - 57, - 8,18, - 8, - 51, - 7,42,65, - 0,15,56,65, - 4,16,35,53,59,65,67,76,79,81, - 65, - 65, - 0, - 17,20,51, - 4,53, - 4, - 4, - 4, - 53, - 5,21,42,44,47,55,61,67, - 18,54, - 54, - 4,26,51,74, - 67, - 47,59,74, - 46, - 18,54, - 46,51,65, - 2,3,4,45,51,53,55,61,67,74,82,83, - 29,67,68,74,82, - 3, - 3, - 3, - 32, - 2, - 51,79, - 0,1,3,4,50,7,8,14,15,18,20,21,23,24,25,28,37,40,42,43,44,45,47,51,52,55,56,59,61,62,65,67,68,70,74,75,77,33,78,83, - 1,3,7,8,14,24,28,42,55,61,75,78, - 1,3,7,8,14,24,28,42,55,61,75,78, - 1,3,8,14,55, - 3,8, - 3, - 44,33, - 3,21, - 16,81, - 0,46,51,56,65,74,82, - 65, - 29, - 65, - 5,21,58,65,33, - 59,64, - 67, - 53, - 43,51, - 79, - 51, - 65,67, - 7,20,23,38,30,57,70,77, - 44,59,33, - 18,28,37,59,74, - 74, - 37,74, - 18, - 18, - 65, - 15,59,65,71, - 59,65, - 2,9,15,17,22,27,34,36,45,47,48,49,52,53,58,61,62,63,64,65,71,74,75, - 40, - 10, - 47,82, - 44, - 5,58, - 5,58, - 44,33, - 65, - 0,1,2,50,7,9,12,13,14,15,16,17,19,20,21,22,23,24,25,27,28,29,34,35,36,39,42,45,46,47,48,49,51,52,53,54,55,56,58,60,61,62,63,64,65,66,67,69,70,71,72,73,75,76,77,31,78,80,81,83, - 59, - 2, - 3,18,37,59,74, - 74, - 18,37,74, - 3,18,37,59,74, - 59, - 33, - 3,4,18,37,59,74, - 8, - 8, - 8, - 8, - 8, - 8, - 8, - 50,8,55,33, - 33, - 34,37,68, - 83, - 3,9,14,20,23,25,34,67,70,74,77, - 3,20,25,77, - 6,20,57,59,74, - 20,57, - 57, - 25,77, - 25,77, - 40,44,59, - 0,26,38,32,30,76, - 79, - 53, - 79, - 65, - 43,56, - 79, - 56, - 67, - 81, - 51,53,81, - 46, - 51, - 40,45,46,51,59,61,65,71,72,73,75,83, - 40,83, - 53, - 79, - 0,10,12,13,15,38,39,30,59,64,65,71,72,73, - 47,49, - 51,55, - 51, - 32,65, - 65, - 65, - 59, - 51, - 51, - 39,67, - 51, - 65, - 0,1,2,4,50,5,6,7,9,10,12,13,14,15,17,19,20,21,22,23,24,25,26,27,28,29,34,35,36,39,42,45,47,48,49,51,52,53,54,55,56,58,59,60,61,62,63,64,65,66,67,69,70,71,72,73,74,75,77,33,78,80,83, - 65, - 13, - 26,27,44,51,33,83, - 10,47,61, - 18,60,65, - 16,46,79,81, - 65, - 74, - 74, - 47,51,60,61,74, - 47,51,59,61,74, - 74, - 74, - 65, - 44,59, - 12,14,15,18,37,48,59,62,71,72,73,83, - 17,36,63, - 17,36,63, - 3,4,5,6,8,11,18,37,38,40,30,44,57,59,68,74, - 47,65,67,74,83, - 65, - 33, - 32,51, - 62,74, - 51, - 0,1,2,50,7,9,12,13,14,15,16,17,19,20,21,22,23,24,25,27,28,29,34,35,36,39,42,45,46,47,48,49,52,53,54,55,56,58,60,61,62,63,64,65,66,67,69,70,71,72,73,75,76,77,31,33,78,80,81,83, - 46,51,81, - 32, - 7,14,20,23,28,43,45,46,48,49,53,55,56,61,65,68,70,75,77,31,78,82, - 2,6,51,63,31, - 59, - 65,67, - 0,1,2,4,7,9,10,12,13,14,15,16,17,19,20,21,22,23,24,25,26,27,28,29,34,35,36,39,40,32,42,43,45,46,47,48,49,51,52,53,54,55,56,58,59,60,61,62,63,64,65,66,67,69,70,71,72,73,75,77,33,78,79,80,81,82,83, - 34,67,82,83, - 31, - 21,28,54,60, - 0,15,27,29,37,47,51,52,56,82, - 11,16, - 3,4,5,6,8,11,18,37,57,59,68,74,81, - 3,11,37,68,74,76, - 59,64, - 5,40,59,79, - 79,81, - 0,2,4,9,10,12,13,15,17,19,22,26,28,34,35,36,37,38,39,40,30,41,44,45,46,47,49,51,52,53,54,58,59,60,61,62,63,64,65,71,72,73,74,75,76,33,79,83, - 31,33, - 31,33, - 18,37, - 26, - 34,37,40,59,74,83, - 74, - 74, - 13, - 65, - 13,19,37,52,66,69,81, - 50,10,28,37,52,53,54,60,66,69, - 46,56,80,83, - 16,81, - 29, - 42,71,72,33, - 51,33, - 43, - 55, - 52, - 43, - 47,48,49, - 53, - 29, - 50,8, - 9,55,65, - 37,67,68, - 37, - 37,68, - 37,68, - 37, - 83, - 51,65, - 29,46, - 50,7,8,20,23,26,28,37,48,52,53,54,60,69,70,77, - 8, - 8, - 26, - 60, - 14,21,55,56,33,78, - 0,7,9,15,34,43,48,59,65,73,74, - 50, - 0,61, - 5,6,11,57,70,74, - 57, - 57, - 57, - 3,21, - 0,65, - 65, - 65, - 65, - 65, - 44, - 50, - 16,79, - 1,28,46,67,75,78, - 38,32,30,47,49, - 49, - 49, - 65, - 67, - 51, - 65, - 3,4,5,6,8,18,37,57,59,68,74, - 26,51,59,72,83, - 59, - 40, - 33, - 26,83, - 26, - 26, - 26,37,40,59,74, - 26, - 83, - 26, - 46, - 44, - 59, - 53, - 59,71,72,73, - 59,71, - 59,72, - 59,73, - 29,35,44,52,65,74,33, - 65, - 65, - 74, - 45,74, - 45, - 20,23,43,46,55,70,74,82, - 7,10,28,40,51,70, - 65, - 65,67, - 65, - 27,67, - 51, - 33, - 50, - 67,68, - 65, - 46, - 33, - 7,26,51,65,71,80,83, - 46, - 67, - 39,59,33, - 46, - 39, - 7,61, - 1,3,14,18,21,37,43,45,55,56,61,68,74,82, - 65,76, - 21,47,49,56,74, - 65, - 83, - 44, - 18,35, - 18,35, - 15,35,39,44,59,65,33, - 65, - 59,65, - 44,53,33, - 51,54, - 5, - 5, - 33, - 57,77, - 57, - 57, - 57, - 74, - 74, - 5,17,48,62,74, - 5, - 5,9,34,38,30,45,46,47,48,49,51,52,61,62,74,75, - 46,47,49,52,74,75, - 47,48,49,74,75, - 74, - 74, - 74, - 11,76,79, - 76,81, - 51, - 51, - 3,4,55, - 0,15,59,33, - 20, - 29, - 37,68, - 0,1,2,50,7,9,10,12,13,14,15,16,17,19,20,21,22,23,24,25,26,27,28,29,34,35,36,39,42,43,45,46,47,48,49,52,53,54,55,56,58,60,61,62,63,64,65,66,67,69,70,71,72,73,75,76,77,31,33,78,79,80,81,83, - 33, - 0,3,4,50,7,8,9,13,17,18,20,24,36,37,39,40,46,47,48,49,53,61,65,68,70,74,77,33,82,83, - 21,26,27,53,65,67,31,33,83, - 65, - 10,51, - 15,65, - 40, - 16,20,81, - 79, - 5,40,59, - 2,50,15,26,27,35,38,30,46,48,51,65,67,73,76,31,33,83, - 0,1,2,50,7,9,12,13,14,15,16,17,19,20,21,22,23,24,25,27,28,29,34,35,36,39,42,45,46,47,48,49,52,53,54,55,56,58,60,61,62,63,64,65,66,67,69,70,71,72,73,75,76,77,31,78,79,80,81,83, - 6,57,59,74, - 50, - 50, - 50, - 50, - 0, - 44, - 44, - 44,59,33, - 33, - 0,2,7,9,15,20,23,28,34,39,41,43,44,46,47,49,52,55,59,60,64,65,67,70,75,77,33,78, - 26, - 65, - 3,4,6,14,18,20,23,25,28,37,42,43,45,47,49,55,57,59,60,61,65,67,68,74,75,77,78,82, - 3,68, - 3,18, - 18, - 18, - 3,18, - 18, - 18, - 18, - 65, - 53, - 3,4,6,14,15,18,20,23,24,25,28,37,44,45,54,55,56,57,59,60,62,70,74,77,33, - 56, - 24, - 24, - 33, - 33, - 1,3,50,5,7,8,15,18,24,26,28,37,40,42,55,57,59,68,74,75,78, - 50,7,29,32,42,51,67,70, - 65, - 0,9,11,15,34,43,51,71,72,73,33,79,80,81,83, - 51, - 51, - 44,33, - 74, - 74, - 74, - 74, - 74, - 3,18,37,59,74, - 4, - 74, - 59, - 59, - 2, - 2,4, - 7,26,28,42,45,47,70,83, - 2,4, - 65,33, - 68, - 44, - 44,33, - 33, - 12,18,37,44,65,81, - 29,33, - 38,30, - 0,1,2,50,7,9,10,12,13,14,15,17,19,20,21,22,23,24,25,26,27,28,29,34,35,36,39,32,42,45,46,47,48,49,51,52,53,54,55,56,58,60,61,62,63,64,65,66,67,69,70,71,72,73,75,77,78,80,83, - 3,50,12,15,18,26,28,29,37,44,54,59,60,67,68,72,73,74,80, - 59, - 59, - 18, - 18, - 79,81, - 10,26,32,51, - 15,41,79, - 59, - 38,30,47,51,65,67,82,83, - 67, - 37,68, - 3,7,25,43,46,56,67,70,33, - 7, - 7, - 43, - 43, - 43, - 44,33, - 44,33, - 67, - 82, - 5, - 5, - 3,7,25,43,56,67,70,33, - 7, - 7, - 43, - 43, - 43, - 44,33, - 44,33, - 16,32,64,72,79,82,83, - 5, - 5, - 2,3,7,43,56,70,33, - 7, - 7, - 20, - 44,33, - 44,33, - 51, - - diff --git a/doc/salome/gui/GEOM/whxdata/whgdata0.xml b/doc/salome/gui/GEOM/whxdata/whgdata0.xml deleted file mode 100755 index b0993a043..000000000 --- a/doc/salome/gui/GEOM/whxdata/whgdata0.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - diff --git a/doc/salome/gui/GEOM/whxdata/whglo.xml b/doc/salome/gui/GEOM/whxdata/whglo.xml deleted file mode 100755 index ac67056d3..000000000 --- a/doc/salome/gui/GEOM/whxdata/whglo.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - - \ No newline at end of file diff --git a/doc/salome/gui/GEOM/whxdata/whidx.xml b/doc/salome/gui/GEOM/whxdata/whidx.xml deleted file mode 100755 index 44f05e5be..000000000 --- a/doc/salome/gui/GEOM/whxdata/whidx.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/doc/salome/gui/GEOM/whxdata/whtdata0.xml b/doc/salome/gui/GEOM/whxdata/whtdata0.xml deleted file mode 100755 index 9f521a7b6..000000000 --- a/doc/salome/gui/GEOM/whxdata/whtdata0.xml +++ /dev/null @@ -1,120 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/doc/salome/gui/GEOM/whxdata/whtoc.xml b/doc/salome/gui/GEOM/whxdata/whtoc.xml deleted file mode 100755 index 871ec25b9..000000000 --- a/doc/salome/gui/GEOM/whxdata/whtoc.xml +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/doc/salome/gui/Makefile.am b/doc/salome/gui/Makefile.am index dec4ee81c..e099a6aee 100644 --- a/doc/salome/gui/Makefile.am +++ b/doc/salome/gui/Makefile.am @@ -1,4 +1,7 @@ -# Copyright (C) 2005 CEA/DEN, EDF R&D, OPEN CASCADE, PRINCIPIA R&D +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -16,56 +19,15 @@ # # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # -# File : Makefile.in -# Author : Vasily Rusyaev (Open Cascade NN) +# -* Makefile *- +# Author : Patrick GOLDBRONN (CEA) +# Date : 30/11/2001 # Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : doc - -include $(top_srcdir)/adm_local/unix/make_common_starter.am - -EXTRA_DIST+=GEOM - -doxygen=@DOXYGEN@ - -# Below command replaces "geompyDC" by "geompy" except cases -# "sgeompyDC", "1geompyDC" and "egeompyDC" (these sequences -# can be found in file names and must not be replaces): -# -# sed 's/\([^s1e]\)geompyDC\|^geompyDC/\1geompy/g' $${filen} > ./tmp; +# $Header: # +SUBDIRS = GEOM + usr_docs: - cd ./GEOM; \ - echo "Processing geompyDC.py file: "; \ - $(doxygen) ./doxyfile_py; \ - cd ./geompy_doc; \ - filesl=`find .`; \ - for filen in $${filesl}; do \ - sed 's/\([^s1e]\)geompyDC\|^geompyDC/\1geompy/g' $${filen} > ./tmp1; \ - sed 's/geompy\.geompy/geompy/g' ./tmp1 > ./tmp; \ - rm -f tmp1; \ - mv -f tmp $${filen}; \ - done; \ - cd ..; \ - echo "Running doxygen in directory: "`pwd`; \ - $(doxygen) ./doxyfile; + (cd GEOM && $(MAKE) $(AM_MAKEFLAGS) usr_docs) docs: usr_docs - -clean-local: - rm -fr `ls | grep -v "Makefile"` - rm -fr GEOM - -install-data-local: usr_docs - mkdir -p $(docdir)/gui - cp -rf GEOM $(docdir)/gui - -find $(PWD) -name CVS -prune -exec rm -rf {} \; - -uninstall-local: - rm -rf $(docdir)/gui/GEOM - -docguidir=$(docdir)/gui/GEOM - -nodist_docgui_DATA= GEOM/doxyfile -nodist_docgui_DATA+= GEOM/doxyfile_py -EXTRA_DIST+= GEOM/doxyfile.in -EXTRA_DIST+= GEOM/doxyfile_py.in diff --git a/doc/salome/tui/GEOM/HTML/GEOM_Gen.html b/doc/salome/tui/GEOM/HTML/GEOM_Gen.html deleted file mode 100644 index 507db794d..000000000 --- a/doc/salome/tui/GEOM/HTML/GEOM_Gen.html +++ /dev/null @@ -1,802 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    interface GEOM_Object
    IDL file
    Python
    string GetEntry ( )
    return_value = GetEntry ( )
    long GetStudyID ( )
    return_value = GetStudyID ( )
    long GetType ( )
    return_value = GetType ( )
    shape_type GetShapeType ( )
    return_value = GetShapeType ( )
    void SetName ( in string theName )
    SetName ( theName )
    string GetName ( )
    return_value = GetName ( )
    void SetStudyEntry ( in string theEntry )
    SetStudyEntry ( theEntry )
    string GetStudyEntry ( )
    return_value = GetStudyEntry ( )
    ListOfGO GetDependency ( )
    return_value = GetDependency ( )
    ListOfGO GetLastDependency ( )
    return_value = GetLastDependency ( )
    long getShape ( )
    return_value = getShape ( )
    TMPFile GetShapeStream ( )
    return_value = GetShapeStream ( )
    boolean IsMainShape ( )
    return_value = IsMainShape ( )
    ListOfLong GetSubShapeIndices ( )
    return_value = GetSubShapeIndices ( )
    GEOM_Object GetMainShape ( )
    return_value = GetMainShape ( )

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    interface GEOM_IOperations
    IDL file
    Python
    boolean IsDone ( )
    return_value = IsDone ( )
    void SetErrorCode ( in string theErrorID )
    SetErrorCode ( theErrorID )
    string GetErrorCode ( )
    return_value = GetErrorCode ( )
    long GetStudyID ( )
    return_value = GetStudyID ( )
    void StartOperation ( )
    StartOperation ( )
    void FinishOperation ( )
    FinishOperation ( )
    void AbortOperation ( )
    AbortOperation ( )

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    interface GEOM_IBasicOperations
    IDL file
    Python
    GEOM_Object MakePointXYZ ( in double theX, in double theY, in double theZ )
    return_value = MakePointXYZ ( theX, theY, theZ )
    GEOM_Object MakePointWithReference ( in GEOM_Object theReference, in double theX, in double theY, in double theZ )
    return_value = MakePointWithReference ( theReference, theX, theY, theZ )
    GEOM_Object MakePointOnCurve ( in GEOM_Object theRefCurve, in double theParameter )
    return_value = MakePointOnCurve ( theRefCurve, theParameter )
    GEOM_Object MakeVectorDXDYDZ ( in double theDX, in double theDY, in double theDZ )
    return_value = MakeVectorDXDYDZ ( theDX, theDY, theDZ )
    GEOM_Object MakeVectorTwoPnt ( in GEOM_Object thePnt1, in GEOM_Object thePnt2 )
    return_value = MakeVectorTwoPnt ( thePnt1, thePnt2 )
    GEOM_Object MakeLineTwoPnt ( in GEOM_Object thePnt1, in GEOM_Object thePnt2 )
    return_value = MakeLineTwoPnt ( thePnt1, thePnt2 )
    GEOM_Object MakePlaneThreePnt ( in GEOM_Object thePnt1, in GEOM_Object thePnt2, in GEOM_Object thePnt3, in double theTrimSize )
    return_value = MakePlaneThreePnt ( thePnt1, thePnt2, thePnt3, theTrimSize )
    GEOM_Object MakePlanePntVec ( in GEOM_Object thePnt, in GEOM_Object theVec, in double theTrimSize )
    return_value = MakePlanePntVec ( thePnt, theVec, theTrimSize )
    GEOM_Object MakePlaneFace ( in GEOM_Object theFace, in double theTrimSize )
    return_value = MakePlaneFace ( theFace, theTrimSize )
    GEOM_Object MakeMarker ( in double theOX, in double theOY, in double theOZ, in double theXDX, in double theXDY, in double theXDZ, in double theYDX, in double theYDY, in double theYDZ )
    return_value = MakeMarker ( theOX, theOY, theOZ, theXDX, theXDY, theXDZ, theYDX, theYDY, theYDZ )

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    interface GEOM_ITransformOperations
    IDL file
    Python
    GEOM_Object TranslateTwoPoints ( in GEOM_Object theObject, in GEOM_Object thePoint1, in GEOM_Object thePoint2 )
    return_value = TranslateTwoPoints ( theObject, thePoint1, thePoint2 )
    GEOM_Object TranslateTwoPointsCopy ( in GEOM_Object theObject, in GEOM_Object thePoint1, in GEOM_Object thePoint2 )
    return_value = TranslateTwoPointsCopy ( theObject, thePoint1, thePoint2 )
    GEOM_Object TranslateDXDYDZ ( in GEOM_Object theObject, in double theDX, in double theDY, in double theDZ )
    return_value = TranslateDXDYDZ ( theObject, theDX, theDY, theDZ )
    GEOM_Object TranslateDXDYDZCopy ( in GEOM_Object theObject, in double theDX, in double theDY, in double theDZ )
    return_value = TranslateDXDYDZCopy ( theObject, theDX, theDY, theDZ )
    GEOM_Object TranslateVector ( in GEOM_Object theObject, in GEOM_Object theVector )
    return_value = TranslateVector ( theObject, theVector )
    GEOM_Object TranslateVectorCopy ( in GEOM_Object theObject, in GEOM_Object theVector )
    return_value = TranslateVectorCopy ( theObject, theVector )
    GEOM_Object MultiTranslate1D ( in GEOM_Object theObject, in GEOM_Object theVector, in double theStep, in long theNbTimes )
    return_value = MultiTranslate1D ( theObject, theVector, theStep, theNbTimes )
    GEOM_Object MultiTranslate2D ( in GEOM_Object theObject, in GEOM_Object theVector1, in double theStep1, in long theNbTimes1, in GEOM_Object theVector2, in double theStep2, in long theNbTimes2 )
    return_value = MultiTranslate2D ( theObject, theVector1, theStep1, theNbTimes1, theVector2, theStep2, theNbTimes2 )
    GEOM_Object Rotate ( in GEOM_Object theObject, in GEOM_Object theAxis, in double theAngle )
    return_value = Rotate ( theObject, theAxis, theAngle )
    GEOM_Object RotateCopy ( in GEOM_Object theObject, in GEOM_Object theAxis, in double theAngle )
    return_value = RotateCopy ( theObject, theAxis, theAngle )
    GEOM_Object MultiRotate1D ( in GEOM_Object theObject, in GEOM_Object theAxis, in long theNbTimes )
    return_value = MultiRotate1D ( theObject, theAxis, theNbTimes )
    GEOM_Object MultiRotate2D ( in GEOM_Object theObject, in GEOM_Object theAxis, in double theAngle, in long theNbTimes1, in double theStep, in long theNbTimes2 )
    return_value = MultiRotate2D ( theObject, theAxis, theAngle, theNbTimes1, theStep, theNbTimes2 )
    GEOM_Object MirrorPlane ( in GEOM_Object theObject, in GEOM_Object thePlane )
    return_value = MirrorPlane ( theObject, thePlane )
    GEOM_Object MirrorPlaneCopy ( in GEOM_Object theObject, in GEOM_Object thePlane )
    return_value = MirrorPlaneCopy ( theObject, thePlane )
    GEOM_Object MirrorAxis ( in GEOM_Object theObject, in GEOM_Object theAxis )
    return_value = MirrorAxis ( theObject, theAxis )
    GEOM_Object MirrorAxisCopy ( in GEOM_Object theObject, in GEOM_Object theAxis )
    return_value = MirrorAxisCopy ( theObject, theAxis )
    GEOM_Object MirrorPoint ( in GEOM_Object theObject, in GEOM_Object thePoint )
    return_value = MirrorPoint ( theObject, thePoint )
    GEOM_Object MirrorPointCopy ( in GEOM_Object theObject, in GEOM_Object thePoint )
    return_value = MirrorPointCopy ( theObject, thePoint )
    GEOM_Object OffsetShape ( in GEOM_Object theObject, in double theOffset )
    return_value = OffsetShape ( theObject, theOffset )
    GEOM_Object OffsetShapeCopy ( in GEOM_Object theObject, in double theOffset )
    return_value = OffsetShapeCopy ( theObject, theOffset )
    GEOM_Object ScaleShape ( in GEOM_Object theObject, in GEOM_Object thePoint, in double theFactor )
    return_value = ScaleShape ( theObject, thePoint, theFactor )
    GEOM_Object ScaleShapeCopy ( in GEOM_Object theObject, in GEOM_Object thePoint, in double theFactor )
    return_value = ScaleShapeCopy ( theObject, thePoint, theFactor )
    GEOM_Object PositionShape ( in GEOM_Object theObject, in GEOM_Object theStartLCS, in GEOM_Object theEndLCS )
    return_value = PositionShape ( theObject, theStartLCS, theEndLCS )
    GEOM_Object PositionShapeCopy ( in GEOM_Object theObject, in GEOM_Object theStartLCS, in GEOM_Object theEndLCS )
    return_value = PositionShapeCopy ( theObject, theStartLCS, theEndLCS )

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    interface GEOM_I3DPrimOperations
    IDL file
    Python
    GEOM_Object MakeBoxDXDYDZ ( in double theDX, in double theDY, in double theDZ )
    return_value = MakeBoxDXDYDZ ( theDX, theDY, theDZ )
    GEOM_Object MakeBoxTwoPnt ( in GEOM_Object thePnt1, in GEOM_Object thePnt2 )
    return_value = MakeBoxTwoPnt ( thePnt1, thePnt2 )
    GEOM_Object MakeCylinderRH ( in double theR, in double theH )
    return_value = MakeCylinderRH ( theR, theH )
    GEOM_Object MakeCylinderPntVecRH ( in GEOM_Object thePnt, in GEOM_Object theAxis, in double theR, in double theH )
    return_value = MakeCylinderPntVecRH ( thePnt, theAxis, theR, theH )
    GEOM_Object MakeConeR1R2H ( in double theR1, in double theR2, in double theH )
    return_value = MakeConeR1R2H ( theR1, theR2, theH )
    GEOM_Object MakeConePntVecR1R2H ( in GEOM_Object thePnt, in GEOM_Object theAxis, in double theR1, in double theR2, in double theH )
    return_value = MakeConePntVecR1R2H ( thePnt, theAxis, theR1, theR2, theH )
    GEOM_Object MakeTorusRR ( in double theRMajor, in double theRMinor )
    return_value = MakeTorusRR ( theRMajor, theRMinor )
    GEOM_Object MakeTorusPntVecRR ( in GEOM_Object thePnt, in GEOM_Object theVec, in double theRMajor, in double theRMinor )
    return_value = MakeTorusPntVecRR ( thePnt, theVec, theRMajor, theRMinor )
    GEOM_Object MakeSphereR ( in double theR )
    return_value = MakeSphereR ( theR )
    GEOM_Object MakeSpherePntR ( in GEOM_Object thePnt, in double theR )
    return_value = MakeSpherePntR ( thePnt, theR )
    GEOM_Object MakePrismVecH ( in GEOM_Object theBase, in GEOM_Object theVec, in double theH )
    return_value = MakePrismVecH ( theBase, theVec, theH )
    GEOM_Object MakePrismTwoPnt ( in GEOM_Object theBase, in GEOM_Object thePoint1, in GEOM_Object thePoint2 )
    return_value = MakePrismTwoPnt ( theBase, thePoint1, thePoint2 )
    GEOM_Object MakePipe ( in GEOM_Object theBase, in GEOM_Object thePath )
    return_value = MakePipe ( theBase, thePath )
    GEOM_Object MakeRevolutionAxisAngle ( in GEOM_Object theBase, in GEOM_Object theAxis, in double theAngle )
    return_value = MakeRevolutionAxisAngle ( theBase, theAxis, theAngle )
    GEOM_Object MakeFilling ( in GEOM_Object theShape, in long theMinDeg, in long theMaxDeg, in double theTol2D, in double theTol3D, in long theNbIter )
    return_value = MakeFilling ( theShape, theMinDeg, theMaxDeg, theTol2D, theTol3D, theNbIter )

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    interface GEOM_IShapesOperations
    IDL file
    Python
    GEOM_Object MakeEdge ( in GEOM_Object thePnt1, in GEOM_Object thePnt2 )
    return_value = MakeEdge ( thePnt1, thePnt2 )
    GEOM_Object MakeWire ( in ListOfGO theEdgesAndWires )
    return_value = MakeWire ( theEdgesAndWires )
    GEOM_Object MakeFace ( in GEOM_Object theWire, in boolean isPlanarWanted )
    return_value = MakeFace ( theWire, isPlanarWanted )
    GEOM_Object MakeFaceWires ( in ListOfGO theWires, in boolean isPlanarWanted )
    return_value = MakeFaceWires ( theWires, isPlanarWanted )
    GEOM_Object MakeShell ( in ListOfGO theFacesAndShells )
    return_value = MakeShell ( theFacesAndShells )
    GEOM_Object MakeSolidShell ( in GEOM_Object theShell )
    return_value = MakeSolidShell ( theShell )
    GEOM_Object MakeSolidShells ( in ListOfGO theShells )
    return_value = MakeSolidShells ( theShells )
    GEOM_Object MakeCompound ( in ListOfGO theShapes )
    return_value = MakeCompound ( theShapes )
    GEOM_Object MakeGlueFaces ( in GEOM_Object theShape, in double theTolerance )
    return_value = MakeGlueFaces ( theShape, theTolerance )
    ListOfGO MakeExplode ( in GEOM_Object theShape, in long theShapeType, in boolean isSorted )
    return_value = MakeExplode ( theShape, theShapeType, isSorted )
    long NumberOfFaces ( in GEOM_Object theShape )
    return_value = NumberOfFaces ( theShape )
    long NumberOfEdges ( in GEOM_Object theShape )
    return_value = NumberOfEdges ( theShape )
    GEOM_Object ChangeOrientation ( in GEOM_Object theShape )
    return_value = ChangeOrientation ( theShape )

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    interface GEOM_IBlocksOperations
    IDL file
    Python
    GEOM_Object MakeQuadFaceFourVertices ( in GEOM_Object thePnt1, in GEOM_Object thePnt2, in GEOM_Object thePnt3, in GEOM_Object thePnt4 )
    return_value = MakeQuadFaceFourVertices ( thePnt1, thePnt2, thePnt3, thePnt4 )
    GEOM_Object MakeQuadFaceFourEdges ( in GEOM_Object theEdge1, in GEOM_Object theEdge2, in GEOM_Object theEdge3, in GEOM_Object theEdge4 )
    return_value = MakeQuadFaceFourEdges ( theEdge1, theEdge2, theEdge3, theEdge4 )
    GEOM_Object MakeQuadFaceTwoEdges ( in GEOM_Object theEdge1, in GEOM_Object theEdge2 )
    return_value = MakeQuadFaceTwoEdges ( theEdge1, theEdge2 )
    GEOM_Object MakeHexaSolidSixFaces ( in GEOM_Object theFace1, in GEOM_Object theFace2, in GEOM_Object theFace3, in GEOM_Object theFace4, in GEOM_Object theFace5, in GEOM_Object theFace6 )
    return_value = MakeHexaSolidSixFaces ( theFace1, theFace2, theFace3, theFace4, theFace5, theFace6 )
    GEOM_Object MakeHexaSolidTwoFaces ( in GEOM_Object theFace1, in GEOM_Object theFace2 )
    return_value = MakeHexaSolidTwoFaces ( theFace1, theFace2 )
    GEOM_Object GetEdge ( in GEOM_Object theShape, in GEOM_Object thePoint1, in GEOM_Object thePoint2 )
    return_value = GetEdge ( theShape, thePoint1, thePoint2 )
    GEOM_Object GetFaceByPoints ( in GEOM_Object theShape, in GEOM_Object thePoint1, in GEOM_Object thePoint2, in GEOM_Object thePoint3, in GEOM_Object thePoint4 )
    return_value = GetFaceByPoints ( theShape, thePoint1, thePoint2, thePoint3, thePoint4 )
    GEOM_Object GetFaceByEdges ( in GEOM_Object theShape, in GEOM_Object theEdge1, in GEOM_Object theEdge2 )
    return_value = GetFaceByEdges ( theShape, theEdge1, theEdge2 )
    GEOM_Object GetOppositeFace ( in GEOM_Object theBlock, in GEOM_Object theFace )
    return_value = GetOppositeFace ( theBlock, theFace )
    GEOM_Object GetFaceNearPoint ( in GEOM_Object theShape, in GEOM_Object thePoint )
    return_value = GetFaceNearPoint ( theShape, thePoint )
    GEOM_Object GetFaceByNormale ( in GEOM_Object theBlock, in GEOM_Object theVector )
    return_value = GetFaceByNormale ( theBlock, theVector )
    boolean IsCompoundOfBlocks ( in GEOM_Object theCompound, in long theMinNbFaces, in long theMaxNbFaces, out long theNbBlocks )
    [ return_value, theNbBlocks ] = IsCompoundOfBlocks ( theCompound, theMinNbFaces, theMaxNbFaces )
    ListOfGO ExplodeCompoundOfBlocks ( in GEOM_Object theCompound, in long theMinNbFaces, in long theMaxNbFaces )
    return_value = ExplodeCompoundOfBlocks ( theCompound, theMinNbFaces, theMaxNbFaces )
    GEOM_Object GetBlockNearPoint ( in GEOM_Object theCompound, in GEOM_Object thePoint )
    return_value = GetBlockNearPoint ( theCompound, thePoint )
    GEOM_Object GetBlockByParts ( in GEOM_Object theCompound, in ListOfGO theParts )
    return_value = GetBlockByParts ( theCompound, theParts )
    ListOfGO GetBlocksByParts ( in GEOM_Object theCompound, in ListOfGO theParts )
    return_value = GetBlocksByParts ( theCompound, theParts )
    GEOM_Object MakeMultiTransformation1D ( in GEOM_Object theBlock, in long theDirFace1, in long theDirFace2, in long theNbTimes )
    return_value = MakeMultiTransformation1D ( theBlock, theDirFace1, theDirFace2, theNbTimes )
    GEOM_Object MakeMultiTransformation2D ( in GEOM_Object theBlock, in long theDirFace1U, in long theDirFace2U, in long theNbTimesU, in long theDirFace1V, in long theDirFace2V, in long theNbTimesV )
    return_value = MakeMultiTransformation2D ( theBlock, theDirFace1U, theDirFace2U, theNbTimesU, theDirFace1V, theDirFace2V, theNbTimesV )

    - - - - - - - - - - - - - - - - - - - -
    interface GEOM_IBooleanOperations
    IDL file
    Python
    GEOM_Object MakeBoolean ( in GEOM_Object theShape1, in GEOM_Object theShape2, in long theOperation )
    return_value = MakeBoolean ( theShape1, theShape2, theOperation )
    GEOM_Object MakePartition ( in ListOfGO theShapes, in ListOfGO theTools, in ListOfGO theKeepInside, in ListOfGO theRemoveInside, in short theLimit, in boolean theRemoveWebs, in ListOfLong theMaterials )
    return_value = MakePartition ( theShapes, theTools, theKeepInside, theRemoveInside, theLimit, theRemoveWebs, theMaterials )
    GEOM_Object MakeHalfPartition ( in GEOM_Object theShape, in GEOM_Object thePlane )
    return_value = MakeHalfPartition ( theShape, thePlane )

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    interface GEOM_ICurvesOperations
    IDL file
    Python
    GEOM_Object MakeCirclePntVecR ( in GEOM_Object thePnt, in GEOM_Object theVec, in double theR )
    return_value = MakeCirclePntVecR ( thePnt, theVec, theR )
    GEOM_Object MakeCircleThreePnt ( in GEOM_Object thePnt1, in GEOM_Object thePnt2, in GEOM_Object thePnt3 )
    return_value = MakeCircleThreePnt ( thePnt1, thePnt2, thePnt3 )
    GEOM_Object MakeEllipse ( in GEOM_Object thePnt, in GEOM_Object theVec, in double theRMajor, in double theRMinor )
    return_value = MakeEllipse ( thePnt, theVec, theRMajor, theRMinor )
    GEOM_Object MakeArc ( in GEOM_Object thePnt1, in GEOM_Object thePnt2, in GEOM_Object thePnt3 )
    return_value = MakeArc ( thePnt1, thePnt2, thePnt3 )
    GEOM_Object MakePolyline ( in ListOfGO thePoints )
    return_value = MakePolyline ( thePoints )
    GEOM_Object MakeSplineBezier ( in ListOfGO thePoints )
    return_value = MakeSplineBezier ( thePoints )
    GEOM_Object MakeSplineInterpolation ( in ListOfGO thePoints )
    return_value = MakeSplineInterpolation ( thePoints )
    GEOM_Object MakeSketcher ( in string theCommand, in ListOfDouble theWorkingPlane )
    return_value = MakeSketcher ( theCommand, theWorkingPlane )

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    interface GEOM_ILocalOperations
    IDL file
    Python
    GEOM_Object MakeFilletAll ( in GEOM_Object theShape, in double theR )
    return_value = MakeFilletAll ( theShape, theR )
    GEOM_Object MakeFilletEdges ( in GEOM_Object theShape, in double theR, in ListOfLong theEdges )
    return_value = MakeFilletEdges ( theShape, theR, theEdges )
    GEOM_Object MakeFilletFaces ( in GEOM_Object theShape, in double theR, in ListOfLong theFaces )
    return_value = MakeFilletFaces ( theShape, theR, theFaces )
    GEOM_Object MakeChamferAll ( in GEOM_Object theShape, in double theD )
    return_value = MakeChamferAll ( theShape, theD )
    GEOM_Object MakeChamferEdge ( in GEOM_Object theShape, in double theD1, in double theD2, in long theFace1, in long theFace2 )
    return_value = MakeChamferEdge ( theShape, theD1, theD2, theFace1, theFace2 )
    GEOM_Object MakeChamferFaces ( in GEOM_Object theShape, in double theD1, in double theD2, in ListOfLong theFaces )
    return_value = MakeChamferFaces ( theShape, theD1, theD2, theFaces )
    GEOM_Object MakeArchimede ( in GEOM_Object theShape, in double theWeight, in double theWaterDensity, in double theMeshDeflection )
    return_value = MakeArchimede ( theShape, theWeight, theWaterDensity, theMeshDeflection )
    long GetSubShapeIndex ( in GEOM_Object theShape, in GEOM_Object theSubShape )
    return_value = GetSubShapeIndex ( theShape, theSubShape )

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    interface GEOM_IHealingOperations
    IDL file
    Python
    GEOM_Object ProcessShape ( in GEOM_Object theShapes, in string_array theOperators, in string_array theParameters, in string_array theValues )
    return_value = ProcessShape ( theShapes, theOperators, theParameters, theValues )
    void GetShapeProcessParameters ( out string_array theOperators, out string_array theParameters, out string_array theValues )
    [ theOperators, theParameters, theValues ] = GetShapeProcessParameters ( )
    GEOM_Object SuppressFaces ( in GEOM_Object theObject, in short_array theFaces )
    return_value = SuppressFaces ( theObject, theFaces )
    GEOM_Object CloseContour ( in GEOM_Object theObject, in short_array theWires, in boolean isCommonVertex )
    return_value = CloseContour ( theObject, theWires, isCommonVertex )
    GEOM_Object RemoveIntWires ( in GEOM_Object theObject, in short_array theWires )
    return_value = RemoveIntWires ( theObject, theWires )
    GEOM_Object FillHoles ( in GEOM_Object theObject, in short_array theWires )
    return_value = FillHoles ( theObject, theWires )
    GEOM_Object Sew ( in GEOM_Object theObject, in double theTolerance )
    return_value = Sew ( theObject, theTolerance )
    GEOM_Object DivideEdge ( in GEOM_Object theObject, in short theEdgeIndex, in double theValue, in boolean isByParameter )
    return_value = DivideEdge ( theObject, theEdgeIndex, theValue, isByParameter )
    boolean GetFreeBoundary ( in GEOM_Object theObject, out ListOfGO theClosedWires, out ListOfGO theOpenWires )
    [ return_value, theClosedWires, theOpenWires ] = GetFreeBoundary ( theObject )

    - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    interface GEOM_IInsertOperations
    IDL file
    Python
    GEOM_Object MakeCopy ( in GEOM_Object theOriginal )
    return_value = MakeCopy ( theOriginal )
    void Export ( in GEOM_Object theObject, in string theFileName, in string theFormatName )
    Export ( theObject, theFileName, theFormatName )
    GEOM_Object Import ( in string theFileName, in string theFormatName )
    return_value = Import ( theFileName, theFormatName )
    void ImportTranslators ( out string_array theFormats, out string_array thePatterns )
    [ theFormats, thePatterns ] = ImportTranslators ( )
    void ExportTranslators ( out string_array theFormats, out string_array thePatterns )
    [ theFormats, thePatterns ] = ExportTranslators ( )

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    interface GEOM_IMeasureOperations
    IDL file
    Python
    void GetBasicProperties ( in GEOM_Object theShape, out double theLength, out double theSurfArea, out double theVolume )
    [ theLength, theSurfArea, theVolume ] = GetBasicProperties ( theShape )
    GEOM_Object GetCentreOfMass ( in GEOM_Object theShape )
    return_value = GetCentreOfMass ( theShape )
    void GetInertia ( in GEOM_Object theShape, out double I11, out double I12, out double I13, out double I21, out double I22, out double I23, out double I31, out double I32, out double I33, out double Ix, out double Iy, out double Iz )
    [ I11, I12, I13, I21, I22, I23, I31, I32, I33, Ix, Iy, Iz ] = GetInertia ( theShape )
    void GetBoundingBox ( in GEOM_Object theShape, out double Xmin, out double Xmax, out double Ymin, out double Ymax, out double Zmin, out double Zmax )
    [ Xmin, Xmax, Ymin, Ymax, Zmin, Zmax ] = GetBoundingBox ( theShape )
    void GetTolerance ( in GEOM_Object theShape, out double FaceMin, out double FaceMax, out double EdgeMin, out double EdgeMax, out double VertMin, out double VertMax )
    [ FaceMin, FaceMax, EdgeMin, EdgeMax, VertMin, VertMax ] = GetTolerance ( theShape )
    boolean CheckShape ( in GEOM_Object theShape, out string theDescription )
    [ return_value, theDescription ] = CheckShape ( theShape )
    string WhatIs ( in GEOM_Object theShape )
    return_value = WhatIs ( theShape )
    double GetMinDistance ( in GEOM_Object theShape1, in GEOM_Object theShape2, out double X1, out double Y1, out double Z1, out double X2, out double Y2, out double Z2 )
    [ return_value, X1, Y1, Z1, X2, Y2, Z2 ] = GetMinDistance ( theShape1, theShape2 )
    void PointCoordinates ( in GEOM_Object theShape, out double X, out double Y, out double Z )
    [ X, Y, Z ] = PointCoordinates ( theShape )

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    interface GEOM_IGroupOperations
    IDL file
    Python
    GEOM_Object CreateGroup ( in GEOM_Object theMainShape, in long theShapeType )
    return_value = CreateGroup ( theMainShape, theShapeType )
    void AddObject ( in GEOM_Object theGroup, in long theSubShapeId )
    AddObject ( theGroup, theSubShapeId )
    void RemoveObject ( in GEOM_Object theGroup, in long theSubShapeId )
    RemoveObject ( theGroup, theSubShapeId )
    long GetType ( in GEOM_Object theGroup )
    return_value = GetType ( theGroup )
    GEOM_Object GetMainShape ( in GEOM_Object theGroup )
    return_value = GetMainShape ( theGroup )
    ListOfLong GetObjects ( in GEOM_Object theGroup )
    return_value = GetObjects ( theGroup )

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    interface GEOM_Gen
    IDL file
    Python
    void Undo ( in long theStudyID )
    Undo ( theStudyID )
    void Redo ( in long theStudyID )
    Redo ( theStudyID )
    SObject AddInStudy ( in Study theStudy, in GEOM_Object theObject, in string theName, in GEOM_Object theFather )
    return_value = AddInStudy ( theStudy, theObject, theName, theFather )
    GEOM_IBasicOperations GetIBasicOperations ( in long theStudyID )
    return_value = GetIBasicOperations ( theStudyID )
    GEOM_ITransformOperations GetITransformOperations ( in long theStudyID )
    return_value = GetITransformOperations ( theStudyID )
    GEOM_I3DPrimOperations GetI3DPrimOperations ( in long theStudyID )
    return_value = GetI3DPrimOperations ( theStudyID )
    GEOM_IShapesOperations GetIShapesOperations ( in long theStudyID )
    return_value = GetIShapesOperations ( theStudyID )
    GEOM_IBooleanOperations GetIBooleanOperations ( in long theStudyID )
    return_value = GetIBooleanOperations ( theStudyID )
    GEOM_ICurvesOperations GetICurvesOperations ( in long theStudyID )
    return_value = GetICurvesOperations ( theStudyID )
    GEOM_ILocalOperations GetILocalOperations ( in long theStudyID )
    return_value = GetILocalOperations ( theStudyID )
    GEOM_IHealingOperations GetIHealingOperations ( in long theStudyID )
    return_value = GetIHealingOperations ( theStudyID )
    GEOM_IInsertOperations GetIInsertOperations ( in long theStudyID )
    return_value = GetIInsertOperations ( theStudyID )
    GEOM_IMeasureOperations GetIMeasureOperations ( in long theStudyID )
    return_value = GetIMeasureOperations ( theStudyID )
    GEOM_IBlocksOperations GetIBlocksOperations ( in long theStudyID )
    return_value = GetIBlocksOperations ( theStudyID )
    GEOM_IGroupOperations GetIGroupOperations ( in long theStudyID )
    return_value = GetIGroupOperations ( theStudyID )
    void RemoveObject ( in GEOM_Object theObject )
    RemoveObject ( theObject )
    GEOM_Object GetObject ( in long theStudyID, in string theEntry )
    return_value = GetObject ( theStudyID, theEntry )
    GEOM_Object AddSubShape ( in GEOM_Object theMainShape, in ListOfLong theIndices )
    return_value = AddSubShape ( theMainShape, theIndices )
    GEOM_Object GetIORFromString ( in string theIOR )
    return_value = GetIORFromString ( theIOR )
    string GetStringFromIOR ( in GEOM_Object theObject )
    return_value = GetStringFromIOR ( theObject )

    -
    diff --git a/doc/salome/tui/GEOM/HTML/GEOM_Shape.html b/doc/salome/tui/GEOM/HTML/GEOM_Shape.html deleted file mode 100644 index bfee3cd70..000000000 --- a/doc/salome/tui/GEOM/HTML/GEOM_Shape.html +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - -
    interface GEOM_Shape
    IDL file
    Python
    TMPFile GetShapeStream ( )
    return_value = GetShapeStream ( )
    GEOM_Gen Engine ( )
    return_value = Engine ( )

    -
    diff --git a/doc/salome/tui/GEOM/doxyfile_py.in b/doc/salome/tui/GEOM/doxyfile_py.in deleted file mode 100755 index 9d4d118db..000000000 --- a/doc/salome/tui/GEOM/doxyfile_py.in +++ /dev/null @@ -1,242 +0,0 @@ -# Doxyfile 1.4.6 - -#--------------------------------------------------------------------------- -# Project related configuration options -#--------------------------------------------------------------------------- -PROJECT_NAME = "SALOME - GEOM - v.@VERSION@" -PROJECT_NUMBER = -OUTPUT_DIRECTORY = ../ -CREATE_SUBDIRS = NO -OUTPUT_LANGUAGE = English -USE_WINDOWS_ENCODING = NO -BRIEF_MEMBER_DESC = YES -REPEAT_BRIEF = NO -ABBREVIATE_BRIEF = -ALWAYS_DETAILED_SEC = YES -INLINE_INHERITED_MEMB = YES -FULL_PATH_NAMES = YES -STRIP_FROM_PATH = ../../../share/salome \ - ../../../build/salome -STRIP_FROM_INC_PATH = -SHORT_NAMES = NO -JAVADOC_AUTOBRIEF = YES -MULTILINE_CPP_IS_BRIEF = NO -DETAILS_AT_TOP = NO -INHERIT_DOCS = YES -SEPARATE_MEMBER_PAGES = NO -TAB_SIZE = 5 -ALIASES = -OPTIMIZE_OUTPUT_FOR_C = YES -OPTIMIZE_OUTPUT_JAVA = YES -BUILTIN_STL_SUPPORT = NO -DISTRIBUTE_GROUP_DOC = NO -SUBGROUPING = YES - -#--------------------------------------------------------------------------- -# Build related configuration options -#--------------------------------------------------------------------------- -EXTRACT_ALL = YES -EXTRACT_PRIVATE = YES -EXTRACT_STATIC = YES -EXTRACT_LOCAL_CLASSES = YES -EXTRACT_LOCAL_METHODS = NO -HIDE_UNDOC_MEMBERS = NO -HIDE_UNDOC_CLASSES = NO -HIDE_FRIEND_COMPOUNDS = NO -HIDE_IN_BODY_DOCS = NO -INTERNAL_DOCS = YES -CASE_SENSE_NAMES = YES -HIDE_SCOPE_NAMES = NO -SHOW_INCLUDE_FILES = YES -INLINE_INFO = YES -SORT_MEMBER_DOCS = NO -SORT_BRIEF_DOCS = NO -SORT_BY_SCOPE_NAME = NO -GENERATE_TODOLIST = YES -GENERATE_TESTLIST = YES -GENERATE_BUGLIST = YES -GENERATE_DEPRECATEDLIST= YES -ENABLED_SECTIONS = -MAX_INITIALIZER_LINES = 25 -SHOW_USED_FILES = NO -SHOW_DIRECTORIES = NO -FILE_VERSION_FILTER = - -#--------------------------------------------------------------------------- -# configuration options related to warning and progress messages -#--------------------------------------------------------------------------- -QUIET = NO -WARNINGS = YES -WARN_IF_UNDOCUMENTED = YES -WARN_IF_DOC_ERROR = YES -WARN_NO_PARAMDOC = NO -WARN_FORMAT = "$file:$line: $text" -WARN_LOGFILE = log.txt - -#--------------------------------------------------------------------------- -# configuration options related to the input files -#--------------------------------------------------------------------------- -INPUT = ../../../share/salome/src \ - ../../../share/salome/idl \ - ../../../build/salome/bin -FILE_PATTERNS = *.hxx *.cxx *.h *.c *.hh *.cc *.idl python_extension_must_be_here -RECURSIVE = YES -EXCLUDE = -EXCLUDE_SYMLINKS = NO -EXCLUDE_PATTERNS = -EXAMPLE_PATH = -EXAMPLE_PATTERNS = -EXAMPLE_RECURSIVE = NO -IMAGE_PATH = sources/ -INPUT_FILTER = -FILTER_PATTERNS = -FILTER_SOURCE_FILES = YES - -#--------------------------------------------------------------------------- -# configuration options related to source browsing -#--------------------------------------------------------------------------- -SOURCE_BROWSER = NO -INLINE_SOURCES = NO -STRIP_CODE_COMMENTS = YES -REFERENCED_BY_RELATION = NO -REFERENCES_RELATION = YES -USE_HTAGS = NO -VERBATIM_HEADERS = YES - -#--------------------------------------------------------------------------- -# configuration options related to the alphabetical class index -#--------------------------------------------------------------------------- -ALPHABETICAL_INDEX = YES -COLS_IN_ALPHA_INDEX = 3 -IGNORE_PREFIX = - -#--------------------------------------------------------------------------- -# configuration options related to the HTML output -#--------------------------------------------------------------------------- -GENERATE_HTML = YES -HTML_OUTPUT = GEOM -HTML_FILE_EXTENSION = .html -HTML_HEADER = sources/myheader.html -HTML_FOOTER = sources/footer.html -HTML_STYLESHEET = sources/static/doxygen.css -HTML_ALIGN_MEMBERS = YES -GENERATE_HTMLHELP = NO -CHM_FILE = -HHC_LOCATION = -GENERATE_CHI = NO -BINARY_TOC = YES -TOC_EXPAND = YES -DISABLE_INDEX = NO -ENUM_VALUES_PER_LINE = 4 -GENERATE_TREEVIEW = NO -TREEVIEW_WIDTH = 250 - -#--------------------------------------------------------------------------- -# configuration options related to the LaTeX output -#--------------------------------------------------------------------------- -GENERATE_LATEX = NO -LATEX_OUTPUT = latex -LATEX_CMD_NAME = latex -MAKEINDEX_CMD_NAME = makeindex -COMPACT_LATEX = NO -PAPER_TYPE = a4wide -EXTRA_PACKAGES = -LATEX_HEADER = -PDF_HYPERLINKS = NO -USE_PDFLATEX = NO -LATEX_BATCHMODE = NO -LATEX_HIDE_INDICES = NO - -#--------------------------------------------------------------------------- -# configuration options related to the RTF output -#--------------------------------------------------------------------------- -GENERATE_RTF = NO -RTF_OUTPUT = rtf -COMPACT_RTF = NO -RTF_HYPERLINKS = NO -RTF_STYLESHEET_FILE = -RTF_EXTENSIONS_FILE = - -#--------------------------------------------------------------------------- -# configuration options related to the man page output -#--------------------------------------------------------------------------- -GENERATE_MAN = NO -MAN_OUTPUT = man -MAN_EXTENSION = .3 -MAN_LINKS = NO - -#--------------------------------------------------------------------------- -# configuration options related to the XML output -#--------------------------------------------------------------------------- -GENERATE_XML = NO -XML_OUTPUT = xml -XML_SCHEMA = -XML_DTD = -XML_PROGRAMLISTING = YES - -#--------------------------------------------------------------------------- -# configuration options for the AutoGen Definitions output -#--------------------------------------------------------------------------- -GENERATE_AUTOGEN_DEF = NO - -#--------------------------------------------------------------------------- -# configuration options related to the Perl module output -#--------------------------------------------------------------------------- -GENERATE_PERLMOD = NO -PERLMOD_LATEX = NO -PERLMOD_PRETTY = YES -PERLMOD_MAKEVAR_PREFIX = - -#--------------------------------------------------------------------------- -# Configuration options related to the preprocessor -#--------------------------------------------------------------------------- -ENABLE_PREPROCESSING = YES -MACRO_EXPANSION = NO -EXPAND_ONLY_PREDEF = NO -SEARCH_INCLUDES = YES -INCLUDE_PATH = -INCLUDE_FILE_PATTERNS = -PREDEFINED = -EXPAND_AS_DEFINED = -SKIP_FUNCTION_MACROS = NO - -#--------------------------------------------------------------------------- -# Configuration::additions related to external references -#--------------------------------------------------------------------------- -TAGFILES = -GENERATE_TAGFILE = -ALLEXTERNALS = NO -EXTERNAL_GROUPS = YES -PERL_PATH = /usr/bin/perl - -#--------------------------------------------------------------------------- -# Configuration options related to the dot tool -#--------------------------------------------------------------------------- -CLASS_DIAGRAMS = YES -HIDE_UNDOC_RELATIONS = NO -HAVE_DOT = YES -CLASS_GRAPH = YES -COLLABORATION_GRAPH = NO -GROUP_GRAPHS = NO -UML_LOOK = NO -TEMPLATE_RELATIONS = YES -INCLUDE_GRAPH = YES -INCLUDED_BY_GRAPH = NO -CALL_GRAPH = NO -GRAPHICAL_HIERARCHY = YES -DIRECTORY_GRAPH = YES -DOT_IMAGE_FORMAT = jpg -DOT_PATH = -DOTFILE_DIRS = -MAX_DOT_GRAPH_WIDTH = 1024 -MAX_DOT_GRAPH_HEIGHT = 1200 -MAX_DOT_GRAPH_DEPTH = 0 -DOT_TRANSPARENT = NO -DOT_MULTI_TARGETS = NO -GENERATE_LEGEND = NO -DOT_CLEANUP = YES - -#--------------------------------------------------------------------------- -# Configuration::additions related to the search engine -#--------------------------------------------------------------------------- -SEARCHENGINE = NO diff --git a/doc/salome/tui/GEOM/sources/Application-About.png b/doc/salome/tui/GEOM/sources/Application-About.png deleted file mode 100755 index 7b58330d5..000000000 Binary files a/doc/salome/tui/GEOM/sources/Application-About.png and /dev/null differ diff --git a/doc/salome/tui/GEOM/sources/Application-About1.jpg b/doc/salome/tui/GEOM/sources/Application-About1.jpg deleted file mode 100755 index cf7ab8ba0..000000000 Binary files a/doc/salome/tui/GEOM/sources/Application-About1.jpg and /dev/null differ diff --git a/doc/salome/tui/GEOM/sources/application.gif b/doc/salome/tui/GEOM/sources/application.gif deleted file mode 100644 index 0b05d5c18..000000000 Binary files a/doc/salome/tui/GEOM/sources/application.gif and /dev/null differ diff --git a/doc/salome/tui/GEOM/sources/application.jpg b/doc/salome/tui/GEOM/sources/application.jpg deleted file mode 100755 index a6979ab99..000000000 Binary files a/doc/salome/tui/GEOM/sources/application.jpg and /dev/null differ diff --git a/doc/salome/tui/GEOM/sources/bg_salome.gif b/doc/salome/tui/GEOM/sources/bg_salome.gif deleted file mode 100755 index 429489c69..000000000 Binary files a/doc/salome/tui/GEOM/sources/bg_salome.gif and /dev/null differ diff --git a/doc/salome/tui/GEOM/sources/logocorp.gif b/doc/salome/tui/GEOM/sources/logocorp.gif deleted file mode 100755 index 7697e0837..000000000 Binary files a/doc/salome/tui/GEOM/sources/logocorp.gif and /dev/null differ diff --git a/doc/salome/tui/GEOM/sources/myheader_py2.html b/doc/salome/tui/GEOM/sources/myheader_py2.html deleted file mode 100755 index 372b2247f..000000000 --- a/doc/salome/tui/GEOM/sources/myheader_py2.html +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - Main Page - - - -  -
    - - - - - - -
    -
    -
    - - - - diff --git a/doc/salome/tui/GEOM/sources/static/page2.html b/doc/salome/tui/GEOM/sources/static/page2.html deleted file mode 100755 index 1966a56fc..000000000 --- a/doc/salome/tui/GEOM/sources/static/page2.html +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - Main Page - - - - -   -
    - - - - - - - - -
    - - -
    -
    - - -
    - - diff --git a/doc/salome/tui/GEOM/sources/static/tree.js.in b/doc/salome/tui/GEOM/sources/static/tree.js.in deleted file mode 100755 index 52841f853..000000000 --- a/doc/salome/tui/GEOM/sources/static/tree.js.in +++ /dev/null @@ -1,59 +0,0 @@ -foldersTree = gFld("SALOME v.@VERSION@ ", "", "") - insDoc(foldersTree, gLnk("Main Page", "", "main.html")) - -aux1 = insFld(foldersTree, gFld("TUI Reference Guide", "")) - aux2 = insFld(aux1, gFld("Modules", "")) - aux3 = insFld(aux2, gFld("SALOME GEOMETRY module", "")) -/*! insDoc(aux3, gLnk("Overview", "", "overview_Geometry.html"))*/ - aux4 = insFld(aux3, gFld("Packages", "")) - insDoc(aux4, gLnk("GEOM", "", "namespaceGEOM.html")) -/*! insDoc(aux3, gLnk("Examples", "", "examples_GEOM.html")) -*/ - -/*! Data structures -*/ - insDoc(aux1, gLnk("Data Structures", "", "annotated.html")) - -/*! insDoc(aux1, gLnk("GEOM::GEOM_Gen", "", "interfaceGEOM_1_1GEOM__Gen.html")) - insDoc(aux1, gLnk("GEOM::GEOM_Shape", "", "interfaceGEOM_1_1GEOM__Shape.html")) -*/ - insDoc(aux1, gLnk("Class Hierarchy", "", "hierarchy.html")) - -/*! - aux3 = insFld(aux2, gFld("GEOM::GEOM_Gen", "", "interfaceGEOM_1_1GEOM__Gen.html")) - aux3 = insFld(aux2, gFld("GEOM::GEOM_Shape", "", "interfaceGEOM_1_1GEOM__Shape.html")) - aux3 = insFld(aux2, gFld("GEOM::AxisStruct", "", "structGEOM_1_1AxisStruct.html")) - aux3 = insFld(aux2, gFld("GEOM::DirStruct", "", "structGEOM_1_1DirStruct.html")) - aux3 = insFld(aux2, gFld("GEOM::PointStruct", "", "structGEOM_1_1PointStruct.html")) -*/ - insDoc(aux1, gLnk("Class methods list", "", "functions.html")) -/*! -aux1 = insFld(foldersTree, gFld("Namespace List", "", "namespaces.html")) - insDoc(aux1, gLnk("GEOM", "", "namespaceGEOM.html")) -*/ - insDoc(aux1, gLnk("Namespace Members", "", "namespacemembers.html")) - - insDoc(aux1, gLnk("File List", "", "files.html")) - -/*! - - insDoc(aux1, gLnk("GEOM_Gen.idl", "", "GEOM__Gen_8idl.html")) - insDoc(aux1, gLnk("GEOM_Shape.idl", "", "GEOM__Shape_8idl.html")) -*/ - -aux1 = insFld(foldersTree, gFld("IDL/Python mapping", "")) - insDoc(aux1, gLnk("Mapping of GEOMETRY IDL definitions to Python language", "", "page2.html")) - -/*!aux1 = insFld(foldersTree, gFld("Python Commands", "", "geompy_doc/main.html")) - insDoc(aux1, gLnk("Package geompy", "", "geompy_doc/namespacegeompy.html")) - insDoc(aux1, gLnk("Namespace Members", "", "geompy_doc/namespacemembers.html")) - insDoc(aux1, gLnk("File geompy.py", "", "geompy_doc/geompy_8py.html")) -*/ - -aux1 = insFld(foldersTree, gFld("Python Commands", "", "geompy_doc/main.html")) - insDoc(aux1, gLnk("Package List", "", "geompy_doc/namespaces.html")) - insDoc(aux1, gLnk("Namespace Members", "", "geompy_doc/namespacemembers.html")) - insDoc(aux1, gLnk("File List", "", "geompy_doc/files.html")) - -/*! insDoc(foldersTree, gLnk("Graphical Class Hierarchy", "", "inherits.html")) -*/ diff --git a/doc/salome/tui/GEOM/sources/static/treeview.js b/doc/salome/tui/GEOM/sources/static/treeview.js deleted file mode 100644 index 55eb43d07..000000000 --- a/doc/salome/tui/GEOM/sources/static/treeview.js +++ /dev/null @@ -1,505 +0,0 @@ -//**************************************************************** -// You are free to copy the "Folder-Tree" script as long as you -// keep this copyright notice: -// Script found in: http://www.geocities.com/Paris/LeftBank/2178/ -// Author: Marcelino Alves Martins (martins@hks.com) December '97. -//**************************************************************** - -//Log of changes: -// 17 Feb 98 - Fix initialization flashing problem with Netscape -// -// 27 Jan 98 - Root folder starts open; support for USETEXTLINKS; -// make the ftien4 a js file -// -// DvH: Dec 2000 - Made some minor changes to support external -// references - -// Definition of class Folder -// ***************************************************************** - -function Folder(folderDescription, tagName, hreference) //constructor -{ - //constant data - this.desc = folderDescription - this.tagName = tagName - this.hreference = hreference - this.id = -1 - this.navObj = 0 - this.iconImg = 0 - this.nodeImg = 0 - this.isLastNode = 0 - - //dynamic data - this.isOpen = true - this.iconSrc = "ftv2folderopen.png" - this.children = new Array - this.nChildren = 0 - - //methods - this.initialize = initializeFolder - this.setState = setStateFolder - this.addChild = addChild - this.createIndex = createEntryIndex - this.hide = hideFolder - this.display = display - this.renderOb = drawFolder - this.totalHeight = totalHeight - this.subEntries = folderSubEntries - this.outputLink = outputFolderLink -} - -function setStateFolder(isOpen) -{ - var subEntries - var totalHeight - var fIt = 0 - var i=0 - - if (isOpen == this.isOpen) - return - - if (browserVersion == 2) - { - totalHeight = 0 - for (i=0; i < this.nChildren; i++) - totalHeight = totalHeight + this.children[i].navObj.clip.height - subEntries = this.subEntries() - if (this.isOpen) - totalHeight = 0 - totalHeight - for (fIt = this.id + subEntries + 1; fIt < nEntries; fIt++) - indexOfEntries[fIt].navObj.moveBy(0, totalHeight) - } - this.isOpen = isOpen - propagateChangesInState(this) -} - -function propagateChangesInState(folder) -{ - var i=0 - - if (folder.isOpen) - { - if (folder.nodeImg) - if (folder.isLastNode) - folder.nodeImg.src = "ftv2mlastnode.png" - else - folder.nodeImg.src = "ftv2mnode.png" - folder.iconImg.src = "ftv2folderopen.png" - for (i=0; i 0) - auxEv = "" - else - auxEv = "" - - if (level>0) - if (lastNode) //the last 'brother' in the children array - { - this.renderOb(leftSide + auxEv + "") -// leftSide = leftSide + "" - this.isLastNode = 1 - } - else - { - this.renderOb(leftSide + auxEv + "") - leftSide = leftSide + "" - this.isLastNode = 0 - } - else - this.renderOb("") - - if (nc > 0) - { - level = level + 1 - for (i=0 ; i < this.nChildren; i++) - { - if (i == this.nChildren-1) - this.children[i].initialize(level, 1, leftSide) - else - this.children[i].initialize(level, 0, leftSide) - } - } -} - -function drawFolder(leftSide) -{ - if (browserVersion == 2) { - if (!doc.yPos) - doc.yPos=8 - doc.write("") - } - if (browserVersion == 3) - { - doc.write("
    ") - } - - doc.write("\n") - doc.write("\n\n") - doc.write("\n
    ") - doc.write(leftSide) - this.outputLink() - doc.write("") - doc.write("") - if (USETEXTLINKS) - { - this.outputLink() - doc.write(this.desc + "") - } - else - doc.write(this.desc) - -/*! - if (this.tagName!="") - { - doc.write(" [external]") - } -*/ - doc.write("
    \n") - - if (browserVersion == 2) { - doc.write("") - } - if (browserVersion == 3) { - doc.write("
    ") - } - - if (browserVersion == 1) { - this.navObj = doc.all["folder"+this.id] - this.iconImg = doc.all["folderIcon"+this.id] - this.nodeImg = doc.all["nodeIcon"+this.id] - } else if (browserVersion == 2) { - this.navObj = doc.layers["folder"+this.id] - this.iconImg = this.navObj.document.images["folderIcon"+this.id] - this.nodeImg = this.navObj.document.images["nodeIcon"+this.id] - doc.yPos=doc.yPos+this.navObj.clip.height - } else if (browserVersion == 3) { - this.navObj = doc.getElementById("folder"+this.id) - this.iconImg = doc.images.namedItem("folderIcon"+this.id) - this.nodeImg = doc.images.namedItem("nodeIcon"+this.id) - } -} - -function outputFolderLink() -{ - if (this.hreference) - { - doc.write(" 0) - doc.write("onClick='javascript:clickOnFolder("+this.id+")'") - doc.write(">") - } - else - doc.write("") -} - -function addChild(childNode) -{ - this.children[this.nChildren] = childNode - this.nChildren++ - return childNode -} - -function folderSubEntries() -{ - var i = 0 - var se = this.nChildren - - for (i=0; i < this.nChildren; i++){ - if (this.children[i].children) //is a folder - se = se + this.children[i].subEntries() - } - - return se -} - - -// Definition of class Item (a document or link inside a Folder) -// ************************************************************* - -function Item(itemDescription, tagName, itemLink) // Constructor -{ - // constant data - this.desc = itemDescription - this.tagName = tagName - this.link = itemLink - this.id = -1 //initialized in initalize() - this.navObj = 0 //initialized in render() - this.iconImg = 0 //initialized in render() - this.iconSrc = "ftv2doc.png" - - // methods - this.initialize = initializeItem - this.createIndex = createEntryIndex - this.hide = hideItem - this.display = display - this.renderOb = drawItem - this.totalHeight = totalHeight -} - -function hideItem() -{ - if (browserVersion == 1 || browserVersion == 3) { - if (this.navObj.style.display == "none") - return - this.navObj.style.display = "none" - } else { - if (this.navObj.visibility == "hidden") - return - this.navObj.visibility = "hidden" - } -} - -function initializeItem(level, lastNode, leftSide) -{ - this.createIndex() - - if (level>0) - if (lastNode) //the last 'brother' in the children array - { - this.renderOb(leftSide + "") - leftSide = leftSide + "" - } - else - { - this.renderOb(leftSide + "") - leftSide = leftSide + "" - } - else - this.renderOb("") -} - -function drawItem(leftSide) -{ - if (browserVersion == 2) - doc.write("") - if (browserVersion == 3) - doc.write("
    ") - - doc.write("\n\n") - doc.write("\n
    ") - doc.write(leftSide) - if (this.link!="") - { - doc.write("") - } - doc.write("") - if (this.link!="") - { - doc.write("") - } - doc.write("") - if (USETEXTLINKS && this.link!="") - doc.write("" + this.desc + "") - else - doc.write(this.desc) -/*! - if (this.tagName!="") - { - doc.write(" [external]"); - } -*/ - doc.write("\n
    \n") - - if (browserVersion == 2) - doc.write("") - if (browserVersion == 3) - doc.write("
    ") - - if (browserVersion == 1) { - this.navObj = doc.all["item"+this.id] - this.iconImg = doc.all["itemIcon"+this.id] - } else if (browserVersion == 2) { - this.navObj = doc.layers["item"+this.id] - this.iconImg = this.navObj.document.images["itemIcon"+this.id] - doc.yPos=doc.yPos+this.navObj.clip.height - } else if (browserVersion == 3) { - this.navObj = doc.getElementById("item"+this.id) - this.iconImg = doc.images.namedItem("itemIcon"+this.id) - } -} - - -// Methods common to both objects (pseudo-inheritance) -// ******************************************************** - -function display() -{ - if (browserVersion == 1 || browserVersion == 3) - this.navObj.style.display = "block" - else - this.navObj.visibility = "show" -} - -function createEntryIndex() -{ - this.id = nEntries - indexOfEntries[nEntries] = this - nEntries++ -} - -// total height of subEntries open -function totalHeight() //used with browserVersion == 2 -{ - var h = this.navObj.clip.height - var i = 0 - - if (this.isOpen) //is a folder and _is_ open - for (i=0 ; i < this.nChildren; i++) - h = h + this.children[i].totalHeight() - - return h -} - - -// Events -// ********************************************************* - -function clickOnFolder(folderId) -{ - var clicked = indexOfEntries[folderId] - - if (!clicked.isOpen) - clickOnNode(folderId) - - return - - if (clicked.isSelected) - return -} - -function clickOnNode(folderId) -{ - var clickedFolder = 0 - var state = 0 - - clickedFolder = indexOfEntries[folderId] - state = clickedFolder.isOpen - - clickedFolder.setState(!state) //open<->close -} - -function initializeDocument() -{ - doc = document; - if (doc.all) - browserVersion = 1 //IE4 - else - if (doc.layers) - browserVersion = 2 //NS4 - else if(navigator.userAgent.toLowerCase().indexOf('gecko') != -1) - browserVersion = 3 //mozilla - else - browserVersion = 0 //other - - foldersTree.initialize(0, 1, "") - foldersTree.display() - - if (browserVersion > 0) - { - if(browserVersion != 3) - doc.write(" ") - - // close the whole tree - clickOnNode(0) - // open the root folder - clickOnNode(0) - } -} - -// Auxiliary Functions for Folder-Treee backward compatibility -// ********************************************************* - -function gFld(description, tagName, hreference) -{ - folder = new Folder(description, tagName, hreference) - return folder -} - -function gLnk(description, tagName, linkData) -{ - fullLink = "" - - if (linkData!="") - { - fullLink = "'"+linkData+"' target=\"basefrm\"" - } - - linkItem = new Item(description, tagName, fullLink) - return linkItem -} - -function insFld(parentFolder, childFolder) -{ - return parentFolder.addChild(childFolder) -} - -function insDoc(parentFolder, document) -{ - parentFolder.addChild(document) -} - -// Global variables -// **************** - -USETEXTLINKS = 1 -indexOfEntries = new Array -nEntries = 0 -doc = document -browserVersion = 0 -selectedFolder=0 diff --git a/doc/salome/tui/Makefile.am b/doc/salome/tui/Makefile.am index b401ba210..3bdc1b46b 100644 --- a/doc/salome/tui/Makefile.am +++ b/doc/salome/tui/Makefile.am @@ -1,4 +1,7 @@ -# Copyright (C) 2005 CEA/DEN, EDF R&D, OPEN CASCADE, PRINCIPIA R&D +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -19,39 +22,32 @@ # File : Makefile.in # Author : Vasily Rusyaev (Open Cascade NN) # Module : doc - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am -EXTRA_DIST+=GEOM +EXTRA_DIST += images static -dev_docs: - cp -fr $(srcdir)/GEOM ./INPUT; \ - cp -f ./GEOM/doxyfile ./INPUT; \ - cd INPUT; \ - sed 's|../../../share/salome|$(top_srcdir)|' ./doxyfile > ./doxyfile1; \ - sed 's|../../build/salome|$(top_builddir)|' ./doxyfile1 > ./doxyfile2; \ - mv -f doxyfile2 doxyfile1; \ - echo "DOXYGEN SUPPORT PYTHON - @DOXYGEN_WITH_PYTHON@"; \ - if( test "x@DOXYGEN_WITH_PYTHON@" = "xyes"); then \ - sed 's|python_extension_must_be_here|*.py|' ./doxyfile1 > ./doxyfile2; \ - mv -f doxyfile2 doxyfile1; \ - $(DOXYGEN) -u ./doxyfile1; \ - else \ - sed 's|python_extension_must_be_here||' ./doxyfile1 > ./doxyfile2; \ - mv -f doxyfile2 doxyfile1; \ - fi; \ - if( test "x@DOXYGEN_WITH_STL@" = "xyes"); then \ - sed -e 's|BUILTIN_STL_SUPPORT = NO|BUILTIN_STL_SUPPORT = YES|' ./doxyfile1 > ./doxyfile2; \ - mv -f doxyfile2 doxyfile1; \ - fi; \ - mv -f doxyfile1 doxyfile; \ - echo "Running doxygen in directory:"`pwd`; \ - $(DOXYGEN) ./doxyfile; \ - cd ../; \ - cp -fr $(srcdir)/GEOM/sources/ GEOM/ ; \ - rm -fr INPUT +dev_docs: doxyfile + echo "===========================================" ; \ + echo "Replacing geompyDC by geompy" ; \ + echo "===========================================" ; \ + sed -e "/class geompyDC/d" -e "s/^ *#/#/g" -e "s/^ *def /def /g" \ + -e "s/geompyDC/geompy/g" $(top_srcdir)/src/GEOM_SWIG/geompyDC.py > \ + $(top_builddir)/src/GEOM_SWIG/geompy.py ; \ + echo "===========================================" ; \ + echo "Generating TUI documentation" ; \ + echo "===========================================" ; \ + $(DOXYGEN) doxyfile ; \ + rm -f $(top_builddir)/src/GEOM_SWIG/geompy.py -doctuidir=$(docdir)/tui/GEOM +clean-local: + -rm -fr GEOM doxygen.bak -nodist_doctui_DATA= GEOM/doxyfile -EXTRA_DIST+= GEOM/doxyfile.in +install-data-local: + if test -d GEOM; then \ + $(INSTALL) -d $(DESTDIR)$(docdir)/tui ; \ + cp -rp GEOM $(DESTDIR)$(docdir)/tui ; \ + fi; + +uninstall-local: + rm -rf $(DESTDIR)$(docdir)/tui/GEOM diff --git a/doc/salome/tui/GEOM/doxyfile.in b/doc/salome/tui/doxyfile.in similarity index 81% rename from doc/salome/tui/GEOM/doxyfile.in rename to doc/salome/tui/doxyfile.in index cba99e1ca..ad1ea5a7d 100755 --- a/doc/salome/tui/GEOM/doxyfile.in +++ b/doc/salome/tui/doxyfile.in @@ -1,11 +1,33 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# + # Doxyfile 1.4.6 #--------------------------------------------------------------------------- # Project related configuration options #--------------------------------------------------------------------------- -PROJECT_NAME = "SALOME - GEOM - v.@VERSION@" +PROJECT_NAME = "Geometry Module Programming Guide v.@VERSION@" PROJECT_NUMBER = -OUTPUT_DIRECTORY = ../ +OUTPUT_DIRECTORY = GEOM CREATE_SUBDIRS = NO OUTPUT_LANGUAGE = English USE_WINDOWS_ENCODING = NO @@ -15,8 +37,7 @@ ABBREVIATE_BRIEF = ALWAYS_DETAILED_SEC = YES INLINE_INHERITED_MEMB = YES FULL_PATH_NAMES = YES -STRIP_FROM_PATH = ../../../share/salome \ - ../../../build/salome +STRIP_FROM_PATH = @top_srcdir@ @top_builddir@ STRIP_FROM_INC_PATH = SHORT_NAMES = NO JAVADOC_AUTOBRIEF = YES @@ -28,7 +49,7 @@ TAB_SIZE = 5 ALIASES = OPTIMIZE_OUTPUT_FOR_C = YES OPTIMIZE_OUTPUT_JAVA = YES -BUILTIN_STL_SUPPORT = NO +BUILTIN_STL_SUPPORT = @DOXYGEN_SUPPORT_STL@ DISTRIBUTE_GROUP_DOC = NO SUBGROUPING = YES @@ -71,22 +92,26 @@ WARN_IF_UNDOCUMENTED = YES WARN_IF_DOC_ERROR = YES WARN_NO_PARAMDOC = NO WARN_FORMAT = "$file:$line: $text" -WARN_LOGFILE = log.txt +WARN_LOGFILE = #--------------------------------------------------------------------------- # configuration options related to the input files #--------------------------------------------------------------------------- -INPUT = ../../../share/salome/src \ - ../../../share/salome/idl -FILE_PATTERNS = *.hxx *.cxx *.h *.c *.hh *.cc *.idl python_extension_must_be_here +INPUT = @top_srcdir@/src \ + @top_builddir@/src/GEOM_SWIG/geompy.py \ + @top_srcdir@/bin \ + @top_srcdir@/idl \ + @top_builddir@/bin +FILE_PATTERNS = *.idl *.hxx *.cxx *.h *.c *.hh *.cc @DOXYGEN_PYTHON_EXTENSION@ RECURSIVE = YES -EXCLUDE = +EXCLUDE = @top_srcdir@/src/GEOM_SWIG/geompy.py \ + @top_srcdir@/src/GEOM_SWIG/geompyDC.py EXCLUDE_SYMLINKS = NO EXCLUDE_PATTERNS = EXAMPLE_PATH = EXAMPLE_PATTERNS = EXAMPLE_RECURSIVE = NO -IMAGE_PATH = sources/ +IMAGE_PATH = @srcdir@/images INPUT_FILTER = FILTER_PATTERNS = FILTER_SOURCE_FILES = YES @@ -113,11 +138,11 @@ IGNORE_PREFIX = # configuration options related to the HTML output #--------------------------------------------------------------------------- GENERATE_HTML = YES -HTML_OUTPUT = GEOM +HTML_OUTPUT = . HTML_FILE_EXTENSION = .html -HTML_HEADER = sources/myheader.html -HTML_FOOTER = sources/footer.html -HTML_STYLESHEET = sources/static/doxygen.css +HTML_HEADER = @srcdir@/static/myheader.html +HTML_FOOTER = @srcdir@/static/footer.html +HTML_STYLESHEET = @srcdir@/static/doxygen.css HTML_ALIGN_MEMBERS = YES GENERATE_HTMLHELP = NO CHM_FILE = diff --git a/doc/salome/tui/GEOM/sources/occ.gif b/doc/salome/tui/images/occ.gif similarity index 100% rename from doc/salome/tui/GEOM/sources/occ.gif rename to doc/salome/tui/images/occ.gif diff --git a/doc/salome/tui/GEOM/sources/static/doxygen.css b/doc/salome/tui/static/doxygen.css similarity index 100% rename from doc/salome/tui/GEOM/sources/static/doxygen.css rename to doc/salome/tui/static/doxygen.css diff --git a/doc/salome/tui/GEOM/sources/footer.html b/doc/salome/tui/static/footer.html similarity index 100% rename from doc/salome/tui/GEOM/sources/footer.html rename to doc/salome/tui/static/footer.html diff --git a/doc/salome/tui/GEOM/sources/myheader.html b/doc/salome/tui/static/myheader.html similarity index 100% rename from doc/salome/tui/GEOM/sources/myheader.html rename to doc/salome/tui/static/myheader.html diff --git a/idl/GEOM_Gen.idl b/idl/GEOM_Gen.idl index 4c30ee600..7a64111e2 100644 --- a/idl/GEOM_Gen.idl +++ b/idl/GEOM_Gen.idl @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOM_Gen.idl // Author : Sergey RUIN - +// #ifndef __GEOM_GEN__ #define __GEOM_GEN__ @@ -36,7 +38,7 @@ module GEOM * Topological types of shapes (like Open Cascade types) */ enum shape_type { COMPOUND, COMPSOLID, SOLID, SHELL, - FACE, WIRE, EDGE, VERTEX, SHAPE }; + FACE, WIRE, EDGE, VERTEX, SHAPE }; /*! @@ -76,6 +78,32 @@ module GEOM ST_ONIN }; + /*! + * Kind of method to find inside one main shape some subshapes, + * corresponding to other given shape (its argument) + * Is used in functions GEOM_Gen.RestoreSubShapes() + */ + enum find_shape_method + { + /*! Use GetInPlace functionality. Suits all cases, except transformations */ + FSM_GetInPlace, + + /*! To be used only for transformation result, to find subshapes of argument. + * Only this method can be used after transformation. + */ + FSM_Transformed, + + /*! To find only shared subshapes, not modified by the operation */ + FSM_GetSame, + + /*! Use GetShapesOnShape method (can work only on solids) */ + FSM_GetShapesOnShape, + + /*! Use GetInPlaceByHistory method (can work only after Partition) */ + FSM_GetInPlaceByHistory + }; + + typedef sequence string_array; typedef sequence short_array; typedef sequence ListOfLong; @@ -205,6 +233,18 @@ module GEOM * For example, method return false for GEOM_MARKER */ boolean IsShape(); + + /*! + * Set list of parameters + * \param theParameters is a string containing the notebook variables separated by ":" symbol, + * used for object creation + */ + void SetParameters (in string theParameters); + + /*! + * Return list of notebook variables used for object creation separated by ":" symbol + */ + string GetParameters(); }; @@ -287,6 +327,18 @@ module GEOM GEOM_Object MakePointOnCurve (in GEOM_Object theRefCurve, in double theParameter); + /*! + * Create a point, corresponding to the given parameters on the + * given surface. + * \param theRefSurf The referenced surface. + * \param theUParameter Value of U-parameter on the referenced surface. + * \param theVParameter Value of V-parameter on the referenced surface. + * \return New GEOM_Object, containing the created point. + */ + GEOM_Object MakePointOnSurface (in GEOM_Object theRefSurf, + in double theUParameter, + in double theVParameter); + /*! * Create a point, on two lines intersection. * \param theRefLine1, theRefLine2 The referenced lines. @@ -294,13 +346,13 @@ module GEOM */ GEOM_Object MakePointOnLinesIntersection (in GEOM_Object theRefLine1, in GEOM_Object theRefLine2); - + /*! * Create a vector, corresponding to tangent to the given parameter on the given curve. * \param theRefCurve The referenced curve. * \param theParameter Value of parameter on the referenced curve.This value should be have value * \between 0. and 1.. Value of 0. corresponds first parameter of curve value 1. corresponds - * \last parameter of curve. + * \last parameter of curve. * \return New GEOM_Object, containing the created point. */ GEOM_Object MakeTangentOnCurve (in GEOM_Object theRefCurve, @@ -394,11 +446,11 @@ module GEOM GEOM_Object MakeMarker (in double theOX , in double theOY , in double theOZ, in double theXDX, in double theXDY, in double theXDZ, in double theYDX, in double theYDY, in double theYDZ); - + /*! * Create a tangent plane to specified face in the point with specified parameters. * Values of parameters should be between 0. and 1.0 - * \param theFace - face for which tangent plane shuold be built. + * \param theFace - face for which tangent plane shuold be built. * \param theParameterU - value of parameter by U * \param theParameterV - value of parameter Vthe * \param theTrimSize - defines sizes of created face @@ -474,6 +526,20 @@ module GEOM GEOM_Object TranslateVectorCopy (in GEOM_Object theObject, in GEOM_Object theVector); + /*! + * Translate the given object along the given vector on given distance, + * creating its copy before the translation. + * \param theObject The object to be translated. + * \param theVector Translation vector, giving a direction. + * \param theDistance Translation distance, giving a distance. + * \param theCope Translation copy, creating its copy if true. + * \return New GEOM_Object, containing the translated object. + */ + GEOM_Object TranslateVectorDistance (in GEOM_Object theObject, + in GEOM_Object theVector, + in double theDistance, + in boolean theCopy); + /*! * Translate the given object along the given vector a given number times * \param theObject The object to be translated. @@ -683,6 +749,33 @@ module GEOM GEOM_Object ScaleShapeCopy (in GEOM_Object theObject, in GEOM_Object thePoint, in double theFactor); + /*! + * Scale the given object by different factors along coordinate axes. + * \param theObject The object to be scaled. + * \param thePoint Center point for scaling. + * \param theFactorX,theFactorY,theFactorZ Scaling factors along each axis. + * \return theObject. + */ + GEOM_Object ScaleShapeAlongAxes (in GEOM_Object theObject, + in GEOM_Object thePoint, + in double theFactorX, + in double theFactorY, + in double theFactorZ); + + /*! + * Scale the given object by different factors along coordinate axes, + * creating its copy before the scaling. + * \param theObject The object to be scaled. + * \param thePoint Center point for scaling. + * \param theFactorX,theFactorY,theFactorZ Scaling factors along each axis. + * \return New GEOM_Object, containing the scaled shape. + */ + GEOM_Object ScaleShapeAlongAxesCopy (in GEOM_Object theObject, + in GEOM_Object thePoint, + in double theFactorX, + in double theFactorY, + in double theFactorZ); + /*! * Modify the Location of the given object by LCS. * \param theObject The object to be displaced. @@ -713,6 +806,29 @@ module GEOM GEOM_Object PositionShapeCopy (in GEOM_Object theObject, in GEOM_Object theStartLCS, in GEOM_Object theEndLCS); + + /*! + * Modify the Location of the given object by Path, + * \param theObject The object to be displaced. + * \param thePath Wire or Edge along that the object will be translated. + * \param theDistance progress of Path (0 = actual location, 1 = end of path location). + * \param theCopy is a true or false parameter. true is to create a copy, false to move the object. + * \param theCopy is a true or false parameter. true is to reverse direction, false is to move normal direction. + * \return New GEOM_Object, containing the displaced shape. + */ + + GEOM_Object PositionAlongPath (in GEOM_Object theObject, + in GEOM_Object thePath, + in double theDistance, + in boolean theCopy, + in boolean theReverse); + + /*! + * Recompute the shape from its arguments. + * \param theObject The object to be recomputed. + * \return theObject. + */ + GEOM_Object RecomputeObject (in GEOM_Object theObject); }; /*! @@ -742,6 +858,53 @@ module GEOM */ GEOM_Object MakeBoxTwoPnt (in GEOM_Object thePnt1, in GEOM_Object thePnt2); + /*! + * Create a face specified dimensions along OX-OY coordinate axes, + * with edges parallel to the coordinate axes. + * Center of the face will be at point (0, 0, 0). + * \param theH Height of the Face. + * \param theW Width of the Face. + * \param theOrientation Orientation belong axis OXY OYZ OZX + * \return New GEOM_Object, containing the created face. + */ + GEOM_Object MakeFaceHW (in double theH, in double theW, in short theOrientation); + /*! + * Create a face by normale vector or edge and two specified sizes, + * vertical (H) and horisontal (W). + * \param theVec defines plane. + * \param theH vertical size (height). + * \param theW horisontal size (width). + * \return New GEOM_Object, containing the created face. + */ + GEOM_Object MakeFaceObjHW (in GEOM_Object theObj, in double theH, in double theW); + /*! + * Create a Disk (circular face) with given center, normal vector and radius. + * \param thePnt disk center. + * \param theVec Vector, normal to the plane of the disk. + * \param theR Disk radius. + * \return New GEOM_Object, containing the created disk. + */ + GEOM_Object MakeDiskPntVecR (in GEOM_Object thePnt, + in GEOM_Object theVec, + in double theR); + /*! + * Create a disk (circular face), passing through three given points + * \param thePnt1, thePnt2, thePnt3 Points, defining the disk. + * \return New GEOM_Object, containing the created disk. + */ + GEOM_Object MakeDiskThreePnt (in GEOM_Object thePnt1, + in GEOM_Object thePnt2, + in GEOM_Object thePnt3); + + /*! + * Create a disk specified dimensions along OX-OY coordinate axes, + * Center of the disk at point (0, 0, 0). + * \param theR of the Disk. + * \param theOrientation Orientation belong axis OXY OYZ OZX + * \return New GEOM_Object, containing the created disk. + */ + GEOM_Object MakeDiskR (in double theR, in short theOrientation); + /*! * Create a cylinder with given radius and height at * the origin of coordinate system. Axis of the cylinder @@ -863,6 +1026,18 @@ module GEOM GEOM_Object MakePrismTwoPnt2Ways (in GEOM_Object theBase, in GEOM_Object thePoint1, in GEOM_Object thePoint2); + + /*! + * Create a shape by extrusion of the base shape along a vector, defined by DX DY DZ. + * \param theBase Base shape to be extruded. + * \param DX, DY, DZ end of extrusion vector. + * \return New GEOM_Object, containing the created prism. + */ + GEOM_Object MakePrismDXDYDZ (in GEOM_Object theBase, + in double theDX, in double theDY, in double theDZ); + /* The same prism but in two directions forward&backward */ + GEOM_Object MakePrismDXDYDZ2Ways (in GEOM_Object theBase, + in double theDX, in double theDY, in double theDZ); /*! * Create a shape by extrusion of the base shape along @@ -937,7 +1112,7 @@ module GEOM in GEOM_Object thePath, in boolean theWithContact , in boolean theWithCorrection ); - + /*! * Create a shape by extrusion of the profile shape along * the path shape. The path shape can be a shell or a face. @@ -969,6 +1144,22 @@ module GEOM */ GEOM_Object MakePipeShellsWithoutPath (in ListOfGO theSeqBases, in ListOfGO theLocations); + + /*! + * Create a shape by extrusion of the base shape along + * the path shape with constant bi-normal direction along the given vector. + * The path shape can be a wire or an edge. + * \param theBase Base shape to be extruded. + * \param thePath Path shape to extrude the base shape along it. + * \param theVec Vector defines a constant binormal direction to keep the + * same angle beetween the Direction and the sections + * along the sweep surface. + * \return New GEOM_Object, containing the created pipe. + */ + GEOM_Object MakePipeBiNormalAlongVector (in GEOM_Object theBase, + in GEOM_Object thePath, + in GEOM_Object theVec); + }; /*! @@ -1271,7 +1462,7 @@ module GEOM in long theShapeType, in GEOM_Object theAx1, in shape_state theState); - + /*! * Find in \a theShape all sub-shapes of type \a theShapeType, situated relatively * the specified plane by the certain way, defined through \a theState parameter. @@ -1279,7 +1470,7 @@ module GEOM * \param theShapeType Type of sub-shapes to be retrieved. * \param theAx1 Vector (or line, or linear edge), specifying normal * direction of the plane to find shapes on. - * \param thePnt Point specifying location of the plane to find shapes on. + * \param thePnt Point specifying location of the plane to find shapes on. * \param theState The state of the subshapes to find. * \return List of IDs of all found sub-shapes. */ @@ -1368,6 +1559,45 @@ module GEOM in long theShapeType, in shape_state theState); + /*! + * \brief Find subshapes complying with given status + * \param theCheckShape - the shape to check state of subshapes against + * \param theShape - the shape to explore + * \param theShapeType - type of subshape of theShape + * \param theState - required state + * \return List of IDs of all found sub-shapes. + */ + ListOfLong GetShapesOnShapeIDs (in GEOM_Object theCheckShape, + in GEOM_Object theShape, + in short theShapeType, + in shape_state theState); + + /*! + * \brief Find subshapes complying with given status + * \param theCheckShape - the shape to check state of subshapes against + * \param theShape - the shape to explore + * \param theShapeType - type of subshape of theShape + * \param theState - required state + * \return List of all found sub-shapes. + */ + ListOfGO GetShapesOnShape (in GEOM_Object theCheckShape, + in GEOM_Object theShape, + in short theShapeType, + in shape_state theState); + + /*! + * \brief Find subshapes complying with given status + * \param theCheckShape - the shape to check state of subshapes against + * \param theShape - the shape to explore + * \param theShapeType - type of subshape of theShape + * \param theState - required state + * \return compound includes all found sub-shapes. + */ + GEOM_Object GetShapesOnShapeAsCompound (in GEOM_Object theCheckShape, + in GEOM_Object theShape, + in short theShapeType, + in shape_state theState); + /*! * Get sub-shape(s) of \a theShapeWhere, which are * coincident with \a theShapeWhat or could be a part of it. @@ -1895,6 +2125,17 @@ module GEOM in GEOM_Object thePnt1, in GEOM_Object thePnt2, in boolean theSense); + + /*! + * Create an arc of ellipse of center C and two points P1 P2. + * \param theCenter Center point of the arc. + * \param thePnt1 Major radius is distance from center to Pnt1. + * \param thePnt2 define a plane and Minor radius as a shortest distance from Pnt2 to vector Center->Pnt1. + * \return New GEOM_Object, containing the created arc. + */ + GEOM_Object MakeArcOfEllipse (in GEOM_Object theCenter, + in GEOM_Object thePnt1, + in GEOM_Object thePnt2); /*! @@ -1953,6 +2194,16 @@ module GEOM * \return New GEOM_Object, containing the created wire. */ GEOM_Object MakeSketcher (in string theCommand, in ListOfDouble theWorkingPlane); + + /*! + * Create a 3D sketcher, following the numerical description, + * passed through points created by \a theCoordinates argument. \n + * Format of the description string have to be the following: + * + * "Make3DSketcher[x1, y1, z1, x2, y2, z2, ..., xN, yN, zN]" + */ + + GEOM_Object Make3DSketcher (in ListOfDouble theCoordinates); /*! * Create a sketcher (wire or face), following the textual description, @@ -2009,10 +2260,24 @@ module GEOM GEOM_Object MakeFilletFaces (in GEOM_Object theShape, in double theR, in ListOfLong theFaces); + GEOM_Object MakeFilletFacesR1R2 (in GEOM_Object theShape, in double theR1, in double theR2, in ListOfLong theFaces); + + /*! + * Perform a fillet on face of the specified vertexes of the given shape. + * \param theShape Shape, to perform fillet on. + * \param theR Fillet radius. + * \param theVertexes Global indices of vertexes to perform fillet on. + * \note Global index of sub-shape can be obtained, using method + * GEOM_IShapesOperations.GetSubShapeIndex(). + * \return New GEOM_Object, containing the result shape. + */ + GEOM_Object MakeFillet2D (in GEOM_Object theShape, + in double theR, + in ListOfLong theVertexes); /*! * Perform a symmetric chamfer on all edges of the given shape. @@ -2037,7 +2302,7 @@ module GEOM GEOM_Object MakeChamferEdge (in GEOM_Object theShape, in double theD1, in double theD2, in long theFace1, in long theFace2); - /*! + /*! * The Same but with params theD = Chamfer Lenght * and theAngle = Chamfer Angle (Angle in radians) */ @@ -2061,7 +2326,7 @@ module GEOM GEOM_Object MakeChamferFaces (in GEOM_Object theShape, in double theD1, in double theD2, in ListOfLong theFaces); - /*! + /*! * The Same but with params theD = Chamfer Lenght * and theAngle = Chamfer Angle (Angle in radians) */ @@ -2080,7 +2345,7 @@ module GEOM GEOM_Object MakeChamferEdges (in GEOM_Object theShape, in double theD1, in double theD2, in ListOfLong theEdges); - /*! + /*! * The Same but with params theD = Chamfer Lenght * and theAngle = Chamfer Angle (Angle in radians) */ @@ -2490,6 +2755,59 @@ module GEOM * Get point coordinates */ void PointCoordinates (in GEOM_Object theShape, out double X, out double Y, out double Z); + + /*! + * Get radius of curvature of curve in the point determinated by param + * \param theShape - curve. + * \param theParam - parameter on curve + * \return Value of curvature. + */ + double CurveCurvatureByParam (in GEOM_Object theShape, in double theParam); + + /*! + * Get radius of curvature of curve in the given point + * \param theShape - curve. + * \param thePoint - point + * \return Value of curvature. + */ + double CurveCurvatureByPoint (in GEOM_Object theShape, in GEOM_Object thePoint); + + /*! + * Get max radius of curvature of surface in the point determinated by params + * \param theShape - surface. + * \param theUParam - U-parameter on surface + * \param theVParam - V-parameter on surface + * \return Value of curvature. + */ + double MaxSurfaceCurvatureByParam (in GEOM_Object theShape, in double theUParam, + in double theVParam); + + /*! + * Get max radius of curvature of surface in the given point + * \param theShape - surface. + * \param thePoint - point + * \return Value of curvature. + */ + double MaxSurfaceCurvatureByPoint (in GEOM_Object theShape, in GEOM_Object thePoint); + + /*! + * Get min radius of curvature of surface in the point determinated by params + * \param theShape - surface. + * \param theUParam - U-parameter on surface + * \param theVParam - V-parameter on surface + * \return Value of curvature. + */ + double MinSurfaceCurvatureByParam (in GEOM_Object theShape, in double theUParam, + in double theVParam); + + /*! + * Get min radius of curvature of surface in the given point + * \param theShape - surface. + * \param thePoint - point + * \return Value of curvature. + */ + double MinSurfaceCurvatureByPoint (in GEOM_Object theShape, in GEOM_Object thePoint); + }; @@ -2586,7 +2904,7 @@ module GEOM void Redo (in long theStudyID); /*! - * Publishing manangement + * Publishing management * Adds in theStudy a object theObject under with a name theName, * if theFather is not NULL the object is placed under thFather's SObject. * Returns a SObject where theObject is placed @@ -2596,6 +2914,45 @@ module GEOM in string theName, in GEOM_Object theFather); + /*! + * Publish sub-shapes, standing for arguments and sub-shapes of arguments + * To be used from python scripts out of geompy.addToStudy (non-default usage) + * \param theStudy the study, in which theObject is published already, + * and in which the arguments will be published + * \param theObject published GEOM object, arguments of which will be published + * \param theArgs list of GEOM_Object, operation arguments to be published. + * If this list is empty, all operation arguments will be published + * \param theFindMethod method to search subshapes, corresponding to arguments and + * their subshapes. Value from enumeration GEOM::find_shape_method. + * \param theInheritFirstArg set properties of the first argument for \a theObject. + * Do not publish subshapes in place of arguments, but only + * in place of subshapes of the first argument, + * because the whole shape corresponds to the first argument. + * Mainly to be used after transformations, but it also can be + * usefull after partition with one object shape, and some other + * operations, where only the first argument has to be considered. + * If theObject has only one argument shape, this flag is automatically + * considered as True, not regarding really passed value. + * \return True in case of success, False otherwise. + */ + boolean RestoreSubShapesO (in SALOMEDS::Study theStudy, + in GEOM_Object theObject, + in ListOfGO theArgs, + in find_shape_method theFindMethod, + in boolean theInheritFirstArg); + + /*! + * Publish sub-shapes, standing for arguments and sub-shapes of arguments + * To be used from GUI and from geompy.addToStudy. + * Work like the above method, but accepts study object theSObject instead of GEOM_Object. + * \param theSObject study object, referencing GEOM object, arguments of which will be published + */ + boolean RestoreSubShapesSO (in SALOMEDS::Study theStudy, + in SALOMEDS::SObject theSObject, + in ListOfGO theArgs, + in find_shape_method theFindMethod, + in boolean theInheritFirstArg); + /*! * Methods to access interfaces for objects creation and transformation */ diff --git a/idl/GEOM_Superv.idl b/idl/GEOM_Superv.idl index 98d819daf..4690e7e7e 100644 --- a/idl/GEOM_Superv.idl +++ b/idl/GEOM_Superv.idl @@ -1,27 +1,27 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// 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 : GEOM_Superv.idl // Author : Lucien PIGNOLONI - +// #ifndef __GEOM_SUPERV__ #define __GEOM_SUPERV__ @@ -126,6 +126,20 @@ module GEOM in double theDZ) ; GEOM_Object MakeBoxTwoPnt (in GEOM_Object thePnt1, in GEOM_Object thePnt2) ; + GEOM_Object MakeFaceHW (in double theH, + in double theW, + in short theOrientation) ; + GEOM_Object MakeFaceObjHW (in GEOM_Object theObj, + in double theH, + in double theW) ; + GEOM_Object MakeDiskPntVecR (in GEOM_Object thePnt, + in GEOM_Object theVec, + in double theR) ; + GEOM_Object MakeDiskThreePnt (in GEOM_Object thePnt1, + in GEOM_Object thePnt2, + in GEOM_Object thePnt3) ; + GEOM_Object MakeDiskR (in double theR, + in short theOrientation) ; GEOM_Object MakeCylinderPntVecRH (in GEOM_Object thePnt, in GEOM_Object theAxis, in double theRadius, @@ -198,6 +212,10 @@ module GEOM GEOM_Object MakePipeShellsWithoutPath (in ListOfGO theSeqBases, in ListOfGO theLocations ); + GEOM_Object MakePipeBiNormalAlongVector (in GEOM_Object theBase, + in GEOM_Object thePath, + in GEOM_Object theVec); + //-----------------------------------------------------------// // BooleanOperations // //-----------------------------------------------------------// @@ -249,6 +267,10 @@ module GEOM in GEOM_Object theVector) ; GEOM_Object TranslateVectorCopy (in GEOM_Object theObject, in GEOM_Object theVector) ; + GEOM_Object TranslateVectorDistance (in GEOM_Object theObject, + in GEOM_Object theVector, + in double theDistance, + in boolean theCopy) ; GEOM_Object MultiTranslate1D (in GEOM_Object theObject, in GEOM_Object theVector, in double theStep, @@ -305,12 +327,27 @@ module GEOM GEOM_Object ScaleShapeCopy (in GEOM_Object theObject, in GEOM_Object thePoint, in double theFactor) ; + GEOM_Object ScaleShapeAlongAxes (in GEOM_Object theObject, + in GEOM_Object thePoint, + in double theFactorX, + in double theFactorY, + in double theFactorZ); + GEOM_Object ScaleShapeAlongAxesCopy (in GEOM_Object theObject, + in GEOM_Object thePoint, + in double theFactorX, + in double theFactorY, + in double theFactorZ); GEOM_Object PositionShape (in GEOM_Object theObject, in GEOM_Object theStartLCS, in GEOM_Object theEndLCS) ; GEOM_Object PositionShapeCopy (in GEOM_Object theObject, in GEOM_Object theStartLCS, in GEOM_Object theEndLCS) ; + GEOM_Object PositionAlongPath (in GEOM_Object theObject, + in GEOM_Object thePath, + in double theDistance, + in boolean theCopy, + in boolean theReverse); //-----------------------------------------------------------// // ShapesOperations // @@ -342,6 +379,15 @@ module GEOM long NumberOfEdges (in GEOM_Object theShape) ; GEOM_Object ChangeOrientation (in GEOM_Object theShape) ; + GEOM_List GetShapesOnShape (in GEOM_Object theCheckShape, + in GEOM_Object theShape, + in short theShapeType, + in shape_state theState); + GEOM_Object GetShapesOnShapeAsCompound (in GEOM_Object theCheckShape, + in GEOM_Object theShape, + in short theShapeType, + in shape_state theState); + //-----------------------------------------------------------// // BlocksOperations // //-----------------------------------------------------------// @@ -439,6 +485,9 @@ module GEOM in GEOM_Object thePnt1, in GEOM_Object thePnt2, in boolean theSense) ; + GEOM_Object MakeArcOfEllipse (in GEOM_Object theCenter, + in GEOM_Object thePnt1, + in GEOM_Object thePnt2) ; GEOM_Object MakePolyline (in GEOM_List thePoints) ; GEOM_Object MakeSplineBezier (in GEOM_List thePoints) ; GEOM_Object MakeSplineInterpolation (in GEOM_List thePoints) ; @@ -464,6 +513,9 @@ module GEOM in double theR1, in double theR2, in GEOM_List theFaces) ; + GEOM_Object MakeFillet2D (in GEOM_Object theShape, + in double theR, + in GEOM_List theVertexes) ; GEOM_Object MakeChamferAll (in GEOM_Object theShape, in double theD) ; GEOM_Object MakeChamferEdge (in GEOM_Object theShape, diff --git a/idl/Makefile.am b/idl/Makefile.am index 93172d6bf..258c691e9 100644 --- a/idl/Makefile.am +++ b/idl/Makefile.am @@ -1,70 +1,58 @@ -# Copyright (C) 2005 OPEN CASCADE, CEA, EDF R&D, LEG -# PRINCIPIA R&D, EADS CCR, Lip6, BV, CEDRAT -# 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-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 # # This Makefile is responsible of generating the client and server # implementation of IDL interfaces for both C++ and python usage. # The building process of the C++ files is in charge of each source # package and then is not manage here. # - include $(top_srcdir)/adm_local/unix/make_common_starter.am -BASEIDL_FILES= GEOM_Gen.idl GEOM_Superv.idl - -EXTRA_DIST+= $(BASEIDL_FILES) +BASEIDL_FILES = GEOM_Gen.idl GEOM_Superv.idl # This variable defines the files to be installed -salomeidl_DATA = $(BASEIDL_FILES) +dist_salomeidl_DATA = $(BASEIDL_FILES) # GUI idl common library lib_LTLIBRARIES = libSalomeIDLGEOM.la # Sources built from idl files -nodist_libSalomeIDLGEOM_la_SOURCES= GEOM_GenSK.cc GEOM_SupervSK.cc +nodist_libSalomeIDLGEOM_la_SOURCES = GEOM_GenSK.cc GEOM_SupervSK.cc # header files must be exported: other modules have to use this library -nodist_salomeinclude_HEADERS= $(BASEIDL_FILES:%.idl=%.hh) +nodist_salomeinclude_HEADERS = $(BASEIDL_FILES:%.idl=%.hh) -libSalomeIDLGEOM_la_CPPFLAGS =\ - -I$(top_builddir)/salome_adm/unix \ - -I$(top_builddir)/idl \ +libSalomeIDLGEOM_la_CPPFLAGS = \ + -I$(top_builddir)/salome_adm/unix \ + -I$(top_builddir)/idl \ @CORBA_CXXFLAGS@ @CORBA_INCLUDES@ @KERNEL_CXXFLAGS@ libSalomeIDLGEOM_la_LDFLAGS = -no-undefined -version-info=0:0:0 -libSalomeIDLGEOM_la_LIBADD = \ - $(STDLIB) \ - @CORBA_LIBS@ \ - $(KERNEL_LDFLAGS) -lSalomeIDLKernel +libSalomeIDLGEOM_la_LIBADD = $(STDLIB) @CORBA_LIBS@ $(KERNEL_LDFLAGS) -lSalomeIDLKernel # These variables defines the building process of CORBA files OMNIORB_IDL = @OMNIORB_IDL@ OMNIORB_IDLCXXFLAGS = @OMNIORB_IDLCXXFLAGS@ OMNIORB_IDLPYFLAGS = @OMNIORB_IDLPYFLAGS@ -I$(top_builddir)/idl/salome -I$(KERNEL_ROOT_DIR)/idl/salome -IDLCXXFLAGS = \ - -bcxx \ - @IDLCXXFLAGS@ \ - -I$(top_builddir)/idl/salome \ - -I$(KERNEL_ROOT_DIR)/idl/salome \ - -I$(top_builddir)/salome_adm/unix -IDLPYFLAGS = \ - @IDLPYFLAGS@ \ - -I$(KERNEL_ROOT_DIR)/idl/salome +IDLCXXFLAGS = -bcxx @IDLCXXFLAGS@ -I$(top_builddir)/idl/salome -I$(KERNEL_ROOT_DIR)/idl/salome -I$(top_builddir)/salome_adm/unix +IDLPYFLAGS = @IDLPYFLAGS@ -I$(KERNEL_ROOT_DIR)/idl/salome # potential problem on parallel make on the following - multiple outputs SUFFIXES = .idl .hh SK.cc @@ -74,14 +62,14 @@ SUFFIXES = .idl .hh SK.cc $(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) $< install-exec-local: $(BASEIDL_FILES:%=$(top_srcdir)/idl/%) - $(INSTALL) -d $(pkgpythondir) + $(INSTALL) -d $(DESTDIR)$(salomepythondir) ls $^ | while read file; do \ - $(OMNIORB_IDL) $(IDLPYFLAGS) -C$(pkgpythondir) $$file ; \ + $(OMNIORB_IDL) $(IDLPYFLAGS) -C$(DESTDIR)$(salomepythondir) $$file ; \ done # uninstall-local removes too much, but it works in distcheck uninstall-local: - rm -rf $(pkgpythondir)/* + rm -rf $(DESTDIR)$(salomepythondir)/* mostlyclean-local: -rm -f *.hh *.cc .depidl diff --git a/resources/3dsketch.png b/resources/3dsketch.png new file mode 100755 index 000000000..f34ec0516 Binary files /dev/null and b/resources/3dsketch.png differ diff --git a/resources/GEOMCatalog.xml.in b/resources/GEOMCatalog.xml.in index 2739da315..7bf6f0297 100644 --- a/resources/GEOMCatalog.xml.in +++ b/resources/GEOMCatalog.xml.in @@ -1,4 +1,27 @@ + @@ -4224,6 +4247,38 @@ + + MakeArcOfEllipse + + + unknown + 0 + + + thePnt1 + GEOM_Object + unknown + + + thePnt2 + GEOM_Object + unknown + + + thePnt3 + GEOM_Object + unknown + + + + + return + GEOM_Object + unknown + + + + MakePolyline diff --git a/resources/GEOM_en.xml b/resources/GEOM_en.xml index 01c72eecd..eda6f84a0 100644 --- a/resources/GEOM_en.xml +++ b/resources/GEOM_en.xml @@ -1,5 +1,28 @@ + @@ -52,6 +75,8 @@ + + @@ -79,6 +104,7 @@ + @@ -229,6 +255,8 @@ + + diff --git a/resources/GEOM_fr.xml b/resources/GEOM_fr.xml index 8c925b61f..66a33d5f7 100644 --- a/resources/GEOM_fr.xml +++ b/resources/GEOM_fr.xml @@ -1,5 +1,28 @@ + @@ -58,6 +81,8 @@ + + @@ -69,6 +94,7 @@ + @@ -203,6 +229,8 @@ + + diff --git a/resources/Makefile.am b/resources/Makefile.am index 2fbc6564c..4dd5020f5 100644 --- a/resources/Makefile.am +++ b/resources/Makefile.am @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,189 +17,200 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # # -* Makefile *- -# # Author : Patrick GOLDBRONN (CEA) # Date : 28/06/2001 -# Modified by : Alexander BORODIN (OCN) - autotools usage -# $Header$ +# Modified by : Alexander BORODIN (OCN) - autotools usage # - include $(top_srcdir)/adm_local/unix/make_common_starter.am -dist_salomeres_DATA = \ -GEOM_en.xml \ -GEOM_fr.xml \ -GEOM.config \ -SalomeApp.xml \ -Plugin \ -GEOMDS_Resources \ -ImportExport \ -ShHealing \ -angle.png \ -arc.png \ -archimede.png \ -axisinertia.png \ -basicproperties.png \ -bounding.png \ -box.png \ -box2points.png \ -boxdxyz.png \ -build_compound.png \ -build_edge.png \ -build_face.png \ -build_shell.png \ -build_solid.png \ -build_wire.png \ -centergravity.png \ -chamfer.png \ -chamferall.png \ -chamferedge.png \ -chamferface.png \ -chamferedgefromface.png \ -change_orientation.png \ -check.png \ -circle.png \ -circlepointvector.png \ -circle3points.png \ -circlecenter2pnts.png \ -common.png \ -cone.png \ -conedxyz.png \ -conepointvector.png \ -cut.png \ -cylinder.png \ -cylinderdxyz.png \ -cylinderpointvector.png \ -delete.png \ -display.png \ -displayonly.png \ -displayall.png \ -erase.png \ -eraseall.png \ -fillet.png \ -filletall.png \ -filletedge.png \ -filletface.png \ -filling.png \ -fuse.png \ -geometry.png \ -line.png \ -line2points.png \ -line2faces.png \ -lineedge.png \ -linepointvector.png \ -mindist.png \ -mirrorPoint.png \ -mirrorAxe.png \ -mirrorPlane.png \ -ModuleGeom.png \ -multirotation.png \ -multirotationdouble.png \ -multirotationsimple.png \ -multitranslation.png \ -multitranslationdouble.png \ -multitranslationsimple.png \ -normale.png \ -offset.png \ -orientation.png \ -partition.png \ -partitionkeep.png \ -partitionplane.png \ -pipe.png \ -plane.png \ -planeWorking.png \ -planedxyz.png \ -plane3points.png \ -planeface.png \ -planepointvector.png \ -planeworkingface.png \ -planeworkingvector.png \ -planeworkingorigin.png \ -point2.png \ -pointonedge.png \ -point_line_intersection.png \ -polyline.png \ -prism.png \ -prism2.png \ -revol.png \ -rotate.png \ -rotatepnt.png \ -scale.png \ -section.png \ -select1.png \ -sewing.png \ -shading.png \ -sketch.png \ -sphere.png \ -spheredxyz.png \ -spherepoint.png \ -subshape.png \ -supressHolesOnFaceShell.png \ -supressface.png \ -supresshole.png \ -tolerance.png \ -torus.png \ -torusdxyz.png \ -toruspointvector.png \ -translationDxyz.png \ -translationPoints.png \ -translationVector.png \ -tree_compound.png \ -tree_compsolid.png \ -tree_edge.png \ -tree_face.png \ -tree_shape.png \ -tree_shell.png \ -tree_solid.png \ -tree_vertex.png \ -tree_wire.png \ -tree_group_vertex.png \ -tree_group_edge.png \ -tree_group_face.png \ -tree_group_solid.png \ -tree_lcs.png \ -vector.png \ -vector2points.png \ -vectordxyz.png \ -whatis.png \ -ellipse.png \ -ellipsepointvector.png \ -bezier.png \ -interpol.png \ -spline.png \ -closecontour.png \ -suppressintwires.png \ -marker.png \ -marker2.png \ -marker3.png \ -position.png \ -position2.png \ -free_bound.png \ -point_coord.png \ -point3.png \ -shapeprocess.png \ -block_2f.png \ -block_6f.png \ -block_face_2e.png \ -block_face_4e.png \ -block_face_4v.png \ -block_multitrsf_double.png \ -block_multitrsf_simple.png \ -tree_block.png \ -subblock.png \ -group_new.png \ -group_edit.png \ -glue.png \ -check_blocks_compound.png \ -free_faces.png \ -propagate.png \ -redo.png \ -undo.png \ -arccenter.png \ -glue2.png \ -remove_extra_edges.png +dist_salomeres_DATA = \ +GEOM_en.xml \ +GEOM_fr.xml \ +GEOM.config \ +SalomeApp.xml \ +Plugin \ +GEOMDS_Resources \ +ImportExport \ +ShHealing \ +3dsketch.png \ +angle.png \ +arc.png \ +arccenter.png \ +arcofellipse.png \ +archimede.png \ +axisinertia.png \ +basicproperties.png \ +bounding.png \ +box.png \ +box2points.png \ +boxdxyz.png \ +build_compound.png \ +build_edge.png \ +build_face.png \ +build_shell.png \ +build_solid.png \ +build_wire.png \ +centergravity.png \ +chamfer.png \ +chamferall.png \ +chamferedge.png \ +chamferface.png \ +chamferedgefromface.png \ +change_orientation.png \ +check.png \ +circle.png \ +circlepointvector.png \ +circle3points.png \ +circlecenter2pnts.png \ +common.png \ +cone.png \ +conedxyz.png \ +conepointvector.png \ +cut.png \ +cylinder.png \ +cylinderdxyz.png \ +cylinderpointvector.png \ +delete.png \ +disk.png \ +disk3points.png \ +disk_pntvecr.png \ +disk_r.png \ +display.png \ +displayonly.png \ +displayall.png \ +erase.png \ +eraseall.png \ +face_hw.png \ +face_vechw.png \ +fillet.png \ +fillet2d.png \ +filletall.png \ +filletedge.png \ +filletface.png \ +filling.png \ +fuse.png \ +geometry.png \ +line.png \ +line2points.png \ +line2faces.png \ +mindist.png \ +mirrorPoint.png \ +mirrorAxe.png \ +mirrorPlane.png \ +ModuleGeom.png \ +multirotation.png \ +multirotationdouble.png \ +multirotationsimple.png \ +multitranslation.png \ +multitranslationdouble.png \ +multitranslationsimple.png \ +normale.png \ +offset.png \ +partition.png \ +partitionkeep.png \ +partitionplane.png \ +pipe.png \ +pipebinormal.png \ +plane.png \ +planeWorking.png \ +plane3points.png \ +planeface.png \ +planepointvector.png \ +planeworkingface.png \ +planeworkingvector.png \ +planeworkingorigin.png \ +point2.png \ +pointonedge.png \ +pointonface.png \ +point_line_intersection.png \ +polyline.png \ +prism.png \ +prism2.png \ +prism3.png \ +revol.png \ +rotate.png \ +rotatepnt.png \ +scale.png \ +scale_along_axes.png \ +section.png \ +select1.png \ +sewing.png \ +shading.png \ +shapesonshape.png \ +sketch.png \ +sphere.png \ +spheredxyz.png \ +spherepoint.png \ +subshape.png \ +supressHolesOnFaceShell.png \ +supressface.png \ +supresshole.png \ +tolerance.png \ +torus.png \ +torusdxyz.png \ +toruspointvector.png \ +translationDxyz.png \ +translationPoints.png \ +translationVector.png \ +tree_compound.png \ +tree_compsolid.png \ +tree_edge.png \ +tree_face.png \ +tree_shape.png \ +tree_shell.png \ +tree_solid.png \ +tree_vertex.png \ +tree_wire.png \ +tree_group_vertex.png \ +tree_group_edge.png \ +tree_group_face.png \ +tree_group_solid.png \ +tree_lcs.png \ +vector.png \ +vector2points.png \ +vectordxyz.png \ +whatis.png \ +ellipse.png \ +ellipsepointvector.png \ +bezier.png \ +interpol.png \ +spline.png \ +closecontour.png \ +suppressintwires.png \ +marker.png \ +marker2.png \ +marker3.png \ +position.png \ +position2.png \ +position3.png \ +free_bound.png \ +point_coord.png \ +point3.png \ +shapeprocess.png \ +block_2f.png \ +block_6f.png \ +block_face_2e.png \ +block_face_4e.png \ +block_face_4v.png \ +block_multitrsf_double.png \ +block_multitrsf_simple.png \ +tree_block.png \ +subblock.png \ +group_new.png \ +group_edit.png \ +glue.png \ +check_blocks_compound.png \ +free_faces.png \ +propagate.png \ +redo.png \ +undo.png \ +glue2.png \ +remove_extra_edges.png \ +coordsys.png \ +translation.png -nodist_salomeres_DATA = GEOMCatalog.xml +# VSR: little trick to avoid putting if GEOMCatalog.xml to the distribution archive +nodist_salomeres_SCRIPTS = GEOMCatalog.xml diff --git a/resources/ModuleGeom.png b/resources/ModuleGeom.png index 4cf6099f8..fe470ef5c 100644 Binary files a/resources/ModuleGeom.png and b/resources/ModuleGeom.png differ diff --git a/resources/SalomeApp.xml b/resources/SalomeApp.xml index 3c3b60aed..d4f9707a1 100644 --- a/resources/SalomeApp.xml +++ b/resources/SalomeApp.xml @@ -1,3 +1,26 @@ +
    diff --git a/resources/angle.png b/resources/angle.png index 9ec01ae67..4ea0ef8c5 100644 Binary files a/resources/angle.png and b/resources/angle.png differ diff --git a/resources/arc.png b/resources/arc.png index 03aef7373..074c67dea 100644 Binary files a/resources/arc.png and b/resources/arc.png differ diff --git a/resources/arccenter.png b/resources/arccenter.png index 88ead9a7b..3ae5793e3 100644 Binary files a/resources/arccenter.png and b/resources/arccenter.png differ diff --git a/resources/archimede.png b/resources/archimede.png index 8760ada60..5fb79d292 100644 Binary files a/resources/archimede.png and b/resources/archimede.png differ diff --git a/resources/arcofellipse.png b/resources/arcofellipse.png new file mode 100755 index 000000000..3f15b6ef9 Binary files /dev/null and b/resources/arcofellipse.png differ diff --git a/resources/axisinertia.png b/resources/axisinertia.png index 22f1a96e4..79971f455 100644 Binary files a/resources/axisinertia.png and b/resources/axisinertia.png differ diff --git a/resources/basicproperties.png b/resources/basicproperties.png index 3b72b8d21..f46c0da7a 100644 Binary files a/resources/basicproperties.png and b/resources/basicproperties.png differ diff --git a/resources/bezier.png b/resources/bezier.png index 2629a2b59..3ca0d75f5 100644 Binary files a/resources/bezier.png and b/resources/bezier.png differ diff --git a/resources/block_2f.png b/resources/block_2f.png index cd3b49247..b7719b8b4 100644 Binary files a/resources/block_2f.png and b/resources/block_2f.png differ diff --git a/resources/block_6f.png b/resources/block_6f.png index 877add137..774160e4b 100644 Binary files a/resources/block_6f.png and b/resources/block_6f.png differ diff --git a/resources/block_face_2e.png b/resources/block_face_2e.png index 5d704844e..38ec5728d 100644 Binary files a/resources/block_face_2e.png and b/resources/block_face_2e.png differ diff --git a/resources/block_face_4e.png b/resources/block_face_4e.png index c81fa4a25..c09f27399 100644 Binary files a/resources/block_face_4e.png and b/resources/block_face_4e.png differ diff --git a/resources/block_face_4v.png b/resources/block_face_4v.png index 24f5c6513..8f3a517e6 100644 Binary files a/resources/block_face_4v.png and b/resources/block_face_4v.png differ diff --git a/resources/block_multitrsf_double.png b/resources/block_multitrsf_double.png index a148c7102..38f9deb11 100644 Binary files a/resources/block_multitrsf_double.png and b/resources/block_multitrsf_double.png differ diff --git a/resources/block_multitrsf_simple.png b/resources/block_multitrsf_simple.png index 7efa63269..db6eae99a 100644 Binary files a/resources/block_multitrsf_simple.png and b/resources/block_multitrsf_simple.png differ diff --git a/resources/bounding.png b/resources/bounding.png index 7d5563794..5a77a4542 100644 Binary files a/resources/bounding.png and b/resources/bounding.png differ diff --git a/resources/box.png b/resources/box.png index ac562fc29..3047d9212 100644 Binary files a/resources/box.png and b/resources/box.png differ diff --git a/resources/box2points.png b/resources/box2points.png index 8fe93676d..39c4ef74f 100644 Binary files a/resources/box2points.png and b/resources/box2points.png differ diff --git a/resources/boxdxyz.png b/resources/boxdxyz.png index c84482ac5..bc236b7d1 100644 Binary files a/resources/boxdxyz.png and b/resources/boxdxyz.png differ diff --git a/resources/build_compound.png b/resources/build_compound.png index 82591b753..b13b294f2 100644 Binary files a/resources/build_compound.png and b/resources/build_compound.png differ diff --git a/resources/build_edge.png b/resources/build_edge.png index 877c1f702..386f04669 100644 Binary files a/resources/build_edge.png and b/resources/build_edge.png differ diff --git a/resources/build_face.png b/resources/build_face.png index 5f12c70df..328f5a944 100644 Binary files a/resources/build_face.png and b/resources/build_face.png differ diff --git a/resources/build_shell.png b/resources/build_shell.png index fc13a46f5..043d3cd36 100644 Binary files a/resources/build_shell.png and b/resources/build_shell.png differ diff --git a/resources/build_solid.png b/resources/build_solid.png index 14b89582d..3047d9212 100644 Binary files a/resources/build_solid.png and b/resources/build_solid.png differ diff --git a/resources/build_wire.png b/resources/build_wire.png index ca881f8b0..52d8ff8da 100644 Binary files a/resources/build_wire.png and b/resources/build_wire.png differ diff --git a/resources/centergravity.png b/resources/centergravity.png index 8f7621404..68a785bac 100644 Binary files a/resources/centergravity.png and b/resources/centergravity.png differ diff --git a/resources/chamfer.png b/resources/chamfer.png index ccea75411..f39ddd588 100644 Binary files a/resources/chamfer.png and b/resources/chamfer.png differ diff --git a/resources/chamferall.png b/resources/chamferall.png index 7fdbd1325..1d3954adc 100644 Binary files a/resources/chamferall.png and b/resources/chamferall.png differ diff --git a/resources/chamferedge.png b/resources/chamferedge.png index c6ea12222..58299576d 100644 Binary files a/resources/chamferedge.png and b/resources/chamferedge.png differ diff --git a/resources/chamferedgefromface.png b/resources/chamferedgefromface.png index 816125a02..51da08f0d 100755 Binary files a/resources/chamferedgefromface.png and b/resources/chamferedgefromface.png differ diff --git a/resources/chamferface.png b/resources/chamferface.png index 68d5959cd..eec6c5680 100644 Binary files a/resources/chamferface.png and b/resources/chamferface.png differ diff --git a/resources/change_orientation.png b/resources/change_orientation.png index a2ce2c950..b5e45f854 100755 Binary files a/resources/change_orientation.png and b/resources/change_orientation.png differ diff --git a/resources/check.png b/resources/check.png index fe4a73b08..ac318731d 100644 Binary files a/resources/check.png and b/resources/check.png differ diff --git a/resources/check_blocks_compound.png b/resources/check_blocks_compound.png index 8196d7e52..576e75093 100644 Binary files a/resources/check_blocks_compound.png and b/resources/check_blocks_compound.png differ diff --git a/resources/circle.png b/resources/circle.png index b040939af..35f20804e 100644 Binary files a/resources/circle.png and b/resources/circle.png differ diff --git a/resources/circle3points.png b/resources/circle3points.png index a14c41b48..a8face82f 100644 Binary files a/resources/circle3points.png and b/resources/circle3points.png differ diff --git a/resources/circlecenter2pnts.png b/resources/circlecenter2pnts.png index 7b3daa2d5..3bfd323d5 100755 Binary files a/resources/circlecenter2pnts.png and b/resources/circlecenter2pnts.png differ diff --git a/resources/circlepointvector.png b/resources/circlepointvector.png index 8cd0e4aed..8877b94e3 100644 Binary files a/resources/circlepointvector.png and b/resources/circlepointvector.png differ diff --git a/resources/closecontour.png b/resources/closecontour.png index 9ab62f9a0..ad245e364 100644 Binary files a/resources/closecontour.png and b/resources/closecontour.png differ diff --git a/resources/common.png b/resources/common.png index ead31c848..f9d0957e7 100644 Binary files a/resources/common.png and b/resources/common.png differ diff --git a/resources/cone.png b/resources/cone.png index a150f54cd..677e2c729 100644 Binary files a/resources/cone.png and b/resources/cone.png differ diff --git a/resources/conedxyz.png b/resources/conedxyz.png index f8ab8e21d..2d4683429 100755 Binary files a/resources/conedxyz.png and b/resources/conedxyz.png differ diff --git a/resources/conepointvector.png b/resources/conepointvector.png index b727f53a3..4df785131 100644 Binary files a/resources/conepointvector.png and b/resources/conepointvector.png differ diff --git a/resources/coordsys.png b/resources/coordsys.png index 823b37786..25704286d 100755 Binary files a/resources/coordsys.png and b/resources/coordsys.png differ diff --git a/resources/cut.png b/resources/cut.png index 4370b7ca3..77086195f 100644 Binary files a/resources/cut.png and b/resources/cut.png differ diff --git a/resources/cylinder.png b/resources/cylinder.png index 3981e4cdd..a00136dab 100644 Binary files a/resources/cylinder.png and b/resources/cylinder.png differ diff --git a/resources/cylinderdxyz.png b/resources/cylinderdxyz.png index fa84a2ebd..207c20aa2 100755 Binary files a/resources/cylinderdxyz.png and b/resources/cylinderdxyz.png differ diff --git a/resources/cylinderpointvector.png b/resources/cylinderpointvector.png index 524074ac7..e37f46577 100644 Binary files a/resources/cylinderpointvector.png and b/resources/cylinderpointvector.png differ diff --git a/resources/delete.png b/resources/delete.png index 8ae847527..54dac86a2 100644 Binary files a/resources/delete.png and b/resources/delete.png differ diff --git a/resources/disk.png b/resources/disk.png new file mode 100644 index 000000000..8aad056b9 Binary files /dev/null and b/resources/disk.png differ diff --git a/resources/disk3points.png b/resources/disk3points.png new file mode 100644 index 000000000..a0d54e473 Binary files /dev/null and b/resources/disk3points.png differ diff --git a/resources/disk_pntvecr.png b/resources/disk_pntvecr.png new file mode 100644 index 000000000..52fb8d412 Binary files /dev/null and b/resources/disk_pntvecr.png differ diff --git a/resources/disk_r.png b/resources/disk_r.png new file mode 100644 index 000000000..3d52a2d79 Binary files /dev/null and b/resources/disk_r.png differ diff --git a/resources/display.png b/resources/display.png index 602807551..7354e65f0 100644 Binary files a/resources/display.png and b/resources/display.png differ diff --git a/resources/displayall.png b/resources/displayall.png index b2f001dc7..36e60b6b0 100644 Binary files a/resources/displayall.png and b/resources/displayall.png differ diff --git a/resources/displayonly.png b/resources/displayonly.png index 602807551..b8c3106ad 100644 Binary files a/resources/displayonly.png and b/resources/displayonly.png differ diff --git a/resources/ellipse.png b/resources/ellipse.png index 1d6f199fc..913c3cd92 100755 Binary files a/resources/ellipse.png and b/resources/ellipse.png differ diff --git a/resources/ellipsepointvector.png b/resources/ellipsepointvector.png index 1d6f199fc..913c3cd92 100755 Binary files a/resources/ellipsepointvector.png and b/resources/ellipsepointvector.png differ diff --git a/resources/erase.png b/resources/erase.png index 7f21be762..7f34b8b53 100644 Binary files a/resources/erase.png and b/resources/erase.png differ diff --git a/resources/eraseall.png b/resources/eraseall.png index 3173050c5..8b714aade 100644 Binary files a/resources/eraseall.png and b/resources/eraseall.png differ diff --git a/resources/face_hw.png b/resources/face_hw.png new file mode 100644 index 000000000..23ae0c2dc Binary files /dev/null and b/resources/face_hw.png differ diff --git a/resources/face_vechw.png b/resources/face_vechw.png new file mode 100644 index 000000000..d674d17c1 Binary files /dev/null and b/resources/face_vechw.png differ diff --git a/resources/fillet.png b/resources/fillet.png index d5af8aeab..f4cf209e7 100644 Binary files a/resources/fillet.png and b/resources/fillet.png differ diff --git a/resources/fillet2d.png b/resources/fillet2d.png new file mode 100755 index 000000000..a17cef65b Binary files /dev/null and b/resources/fillet2d.png differ diff --git a/resources/filletall.png b/resources/filletall.png index c90b6740e..1d3954adc 100644 Binary files a/resources/filletall.png and b/resources/filletall.png differ diff --git a/resources/filletedge.png b/resources/filletedge.png index e8d5ccd57..58299576d 100644 Binary files a/resources/filletedge.png and b/resources/filletedge.png differ diff --git a/resources/filletface.png b/resources/filletface.png index 4e3f36b25..eec6c5680 100644 Binary files a/resources/filletface.png and b/resources/filletface.png differ diff --git a/resources/filling.png b/resources/filling.png index eaa725c32..469e0d774 100644 Binary files a/resources/filling.png and b/resources/filling.png differ diff --git a/resources/free_bound.png b/resources/free_bound.png index 15b634ac8..164126294 100755 Binary files a/resources/free_bound.png and b/resources/free_bound.png differ diff --git a/resources/free_faces.png b/resources/free_faces.png index aa13084b0..1b8f37108 100644 Binary files a/resources/free_faces.png and b/resources/free_faces.png differ diff --git a/resources/fuse.png b/resources/fuse.png index d71f7d1cc..6c531310c 100644 Binary files a/resources/fuse.png and b/resources/fuse.png differ diff --git a/resources/geometry.png b/resources/geometry.png index 86746f0b0..5732d5dfc 100644 Binary files a/resources/geometry.png and b/resources/geometry.png differ diff --git a/resources/glue.png b/resources/glue.png index 8c9a1518d..0d66a119b 100644 Binary files a/resources/glue.png and b/resources/glue.png differ diff --git a/resources/glue2.png b/resources/glue2.png index f25141511..a953de704 100644 Binary files a/resources/glue2.png and b/resources/glue2.png differ diff --git a/resources/group_edit.png b/resources/group_edit.png index 24f273613..3b8f4158a 100644 Binary files a/resources/group_edit.png and b/resources/group_edit.png differ diff --git a/resources/group_new.png b/resources/group_new.png index 1ccac8fc6..9e365e1d1 100644 Binary files a/resources/group_new.png and b/resources/group_new.png differ diff --git a/resources/interpol.png b/resources/interpol.png index 0fe35f2f4..e5c5374b9 100644 Binary files a/resources/interpol.png and b/resources/interpol.png differ diff --git a/resources/line.png b/resources/line.png index f5a295c47..6176fb62d 100644 Binary files a/resources/line.png and b/resources/line.png differ diff --git a/resources/line2points.png b/resources/line2points.png index f5a295c47..6176fb62d 100644 Binary files a/resources/line2points.png and b/resources/line2points.png differ diff --git a/resources/lineedge.png b/resources/lineedge.png deleted file mode 100644 index 66a8d5ecc..000000000 Binary files a/resources/lineedge.png and /dev/null differ diff --git a/resources/linepointvector.png b/resources/linepointvector.png deleted file mode 100644 index 054bc8462..000000000 Binary files a/resources/linepointvector.png and /dev/null differ diff --git a/resources/marker.png b/resources/marker.png index e9da6369f..d203073ec 100644 Binary files a/resources/marker.png and b/resources/marker.png differ diff --git a/resources/marker2.png b/resources/marker2.png index 4755c7916..e757ae980 100644 Binary files a/resources/marker2.png and b/resources/marker2.png differ diff --git a/resources/marker3.png b/resources/marker3.png index 835ea28bb..d203073ec 100644 Binary files a/resources/marker3.png and b/resources/marker3.png differ diff --git a/resources/mindist.png b/resources/mindist.png index 9ec01ae67..a338be06d 100644 Binary files a/resources/mindist.png and b/resources/mindist.png differ diff --git a/resources/mirrorAxe.png b/resources/mirrorAxe.png index 6b6901647..45a49798a 100644 Binary files a/resources/mirrorAxe.png and b/resources/mirrorAxe.png differ diff --git a/resources/mirrorPlane.png b/resources/mirrorPlane.png index edbb4f2dc..29f129627 100644 Binary files a/resources/mirrorPlane.png and b/resources/mirrorPlane.png differ diff --git a/resources/mirrorPoint.png b/resources/mirrorPoint.png index cdffc171a..1fda32bba 100644 Binary files a/resources/mirrorPoint.png and b/resources/mirrorPoint.png differ diff --git a/resources/multirotation.png b/resources/multirotation.png index 612ba7c32..f16881ffe 100644 Binary files a/resources/multirotation.png and b/resources/multirotation.png differ diff --git a/resources/multirotationdouble.png b/resources/multirotationdouble.png index a148c7102..d5ef8bede 100644 Binary files a/resources/multirotationdouble.png and b/resources/multirotationdouble.png differ diff --git a/resources/multirotationsimple.png b/resources/multirotationsimple.png index 7efa63269..f70f58c26 100644 Binary files a/resources/multirotationsimple.png and b/resources/multirotationsimple.png differ diff --git a/resources/multitranslation.png b/resources/multitranslation.png index 7d0e54b6e..4f56d7bd5 100644 Binary files a/resources/multitranslation.png and b/resources/multitranslation.png differ diff --git a/resources/multitranslationdouble.png b/resources/multitranslationdouble.png index 3d7b91d5b..62030b2cb 100644 Binary files a/resources/multitranslationdouble.png and b/resources/multitranslationdouble.png differ diff --git a/resources/multitranslationsimple.png b/resources/multitranslationsimple.png index a33c9cf14..de744f976 100644 Binary files a/resources/multitranslationsimple.png and b/resources/multitranslationsimple.png differ diff --git a/resources/normale.png b/resources/normale.png index 7db7fb21f..16080764e 100644 Binary files a/resources/normale.png and b/resources/normale.png differ diff --git a/resources/offset.png b/resources/offset.png index 6ce1561ad..47e03cc92 100644 Binary files a/resources/offset.png and b/resources/offset.png differ diff --git a/resources/orientation.png b/resources/orientation.png deleted file mode 100644 index bd0954cad..000000000 Binary files a/resources/orientation.png and /dev/null differ diff --git a/resources/partition.png b/resources/partition.png index ccc0b8d35..17cbcd02d 100644 Binary files a/resources/partition.png and b/resources/partition.png differ diff --git a/resources/partitionkeep.png b/resources/partitionkeep.png index 2fc91e0f7..890e1862a 100644 Binary files a/resources/partitionkeep.png and b/resources/partitionkeep.png differ diff --git a/resources/partitionplane.png b/resources/partitionplane.png index 96e8d663f..bc3ce0188 100644 Binary files a/resources/partitionplane.png and b/resources/partitionplane.png differ diff --git a/resources/pipe.png b/resources/pipe.png index 494a8461a..793874472 100755 Binary files a/resources/pipe.png and b/resources/pipe.png differ diff --git a/resources/pipebinormal.png b/resources/pipebinormal.png new file mode 100644 index 000000000..b262ec90a Binary files /dev/null and b/resources/pipebinormal.png differ diff --git a/resources/plane.png b/resources/plane.png index eb538d005..3075a34aa 100644 Binary files a/resources/plane.png and b/resources/plane.png differ diff --git a/resources/plane3points.png b/resources/plane3points.png index d5b5d45dc..ec42dcdef 100644 Binary files a/resources/plane3points.png and b/resources/plane3points.png differ diff --git a/resources/planeWorking.png b/resources/planeWorking.png index d64aad9b6..f48bcde05 100644 Binary files a/resources/planeWorking.png and b/resources/planeWorking.png differ diff --git a/resources/planedxyz.png b/resources/planedxyz.png deleted file mode 100644 index 409d7e8d4..000000000 Binary files a/resources/planedxyz.png and /dev/null differ diff --git a/resources/planeface.png b/resources/planeface.png index 2ab9ec62a..ea3db4e96 100644 Binary files a/resources/planeface.png and b/resources/planeface.png differ diff --git a/resources/planepointvector.png b/resources/planepointvector.png index 7db7fb21f..62550d976 100644 Binary files a/resources/planepointvector.png and b/resources/planepointvector.png differ diff --git a/resources/planeworkingface.png b/resources/planeworkingface.png index 4eb8bd46e..86bb0c253 100644 Binary files a/resources/planeworkingface.png and b/resources/planeworkingface.png differ diff --git a/resources/planeworkingorigin.png b/resources/planeworkingorigin.png index 14370a348..b6a84145f 100644 Binary files a/resources/planeworkingorigin.png and b/resources/planeworkingorigin.png differ diff --git a/resources/planeworkingvector.png b/resources/planeworkingvector.png index 3ae81b68c..59a2e1850 100644 Binary files a/resources/planeworkingvector.png and b/resources/planeworkingvector.png differ diff --git a/resources/point2.png b/resources/point2.png index ae02c4724..bdd5659d1 100644 Binary files a/resources/point2.png and b/resources/point2.png differ diff --git a/resources/point3.png b/resources/point3.png index 53d5bab2c..de84d9652 100644 Binary files a/resources/point3.png and b/resources/point3.png differ diff --git a/resources/point_coord.png b/resources/point_coord.png index ae02c4724..a3fe457be 100644 Binary files a/resources/point_coord.png and b/resources/point_coord.png differ diff --git a/resources/point_line_intersection.png b/resources/point_line_intersection.png index 31f6c1944..82071b185 100755 Binary files a/resources/point_line_intersection.png and b/resources/point_line_intersection.png differ diff --git a/resources/pointonedge.png b/resources/pointonedge.png index 50bab61b0..a6541d801 100755 Binary files a/resources/pointonedge.png and b/resources/pointonedge.png differ diff --git a/resources/pointonface.png b/resources/pointonface.png new file mode 100755 index 000000000..fa0f8cb42 Binary files /dev/null and b/resources/pointonface.png differ diff --git a/resources/polyline.png b/resources/polyline.png index 6e21c6b25..14eced89e 100644 Binary files a/resources/polyline.png and b/resources/polyline.png differ diff --git a/resources/position.png b/resources/position.png index 5c308d745..3c44a9d06 100644 Binary files a/resources/position.png and b/resources/position.png differ diff --git a/resources/position2.png b/resources/position2.png index 12f4a0a8b..23fd57366 100644 Binary files a/resources/position2.png and b/resources/position2.png differ diff --git a/resources/position3.png b/resources/position3.png new file mode 100644 index 000000000..301a3bf09 Binary files /dev/null and b/resources/position3.png differ diff --git a/resources/prism.png b/resources/prism.png index fdbe72eac..12bbe4530 100644 Binary files a/resources/prism.png and b/resources/prism.png differ diff --git a/resources/prism2.png b/resources/prism2.png index 5d2f366af..d808677d7 100644 Binary files a/resources/prism2.png and b/resources/prism2.png differ diff --git a/resources/prism3.png b/resources/prism3.png new file mode 100644 index 000000000..4df254289 Binary files /dev/null and b/resources/prism3.png differ diff --git a/resources/propagate.png b/resources/propagate.png index c3ff01c59..6a6b583d7 100644 Binary files a/resources/propagate.png and b/resources/propagate.png differ diff --git a/resources/redo.png b/resources/redo.png index ac72e5c27..3753bb923 100644 Binary files a/resources/redo.png and b/resources/redo.png differ diff --git a/resources/remove_extra_edges.png b/resources/remove_extra_edges.png index fedd8ae13..bdb821e09 100644 Binary files a/resources/remove_extra_edges.png and b/resources/remove_extra_edges.png differ diff --git a/resources/revol.png b/resources/revol.png index 887d64038..3400b6200 100644 Binary files a/resources/revol.png and b/resources/revol.png differ diff --git a/resources/rotate.png b/resources/rotate.png index fccff20d6..7905fa1a0 100644 Binary files a/resources/rotate.png and b/resources/rotate.png differ diff --git a/resources/rotatepnt.png b/resources/rotatepnt.png index 2d4d2899a..9bb9ff37f 100755 Binary files a/resources/rotatepnt.png and b/resources/rotatepnt.png differ diff --git a/resources/scale.png b/resources/scale.png index 4c8987235..d838d9f89 100644 Binary files a/resources/scale.png and b/resources/scale.png differ diff --git a/resources/scale_along_axes.png b/resources/scale_along_axes.png new file mode 100644 index 000000000..04a4ae0a8 Binary files /dev/null and b/resources/scale_along_axes.png differ diff --git a/resources/section.png b/resources/section.png index 4a2b7828e..16ea2c5cd 100644 Binary files a/resources/section.png and b/resources/section.png differ diff --git a/resources/select1.png b/resources/select1.png index a1a4ee1d5..ecb252ab7 100644 Binary files a/resources/select1.png and b/resources/select1.png differ diff --git a/resources/sewing.png b/resources/sewing.png index 5da9eaa68..f9d9ca78d 100644 Binary files a/resources/sewing.png and b/resources/sewing.png differ diff --git a/resources/shading.png b/resources/shading.png index 11ca2685f..27ca4e1d1 100755 Binary files a/resources/shading.png and b/resources/shading.png differ diff --git a/resources/shapeprocess.png b/resources/shapeprocess.png index d9fa256ff..2ef384bde 100644 Binary files a/resources/shapeprocess.png and b/resources/shapeprocess.png differ diff --git a/resources/shapesonshape.png b/resources/shapesonshape.png new file mode 100755 index 000000000..05ac19352 Binary files /dev/null and b/resources/shapesonshape.png differ diff --git a/resources/sketch.png b/resources/sketch.png index 683ec7268..f2964c744 100644 Binary files a/resources/sketch.png and b/resources/sketch.png differ diff --git a/resources/sphere.png b/resources/sphere.png index 335570e2d..7af366483 100644 Binary files a/resources/sphere.png and b/resources/sphere.png differ diff --git a/resources/spheredxyz.png b/resources/spheredxyz.png index 2eb4404a0..01acb09c8 100644 Binary files a/resources/spheredxyz.png and b/resources/spheredxyz.png differ diff --git a/resources/spherepoint.png b/resources/spherepoint.png index 947410006..a942d2903 100644 Binary files a/resources/spherepoint.png and b/resources/spherepoint.png differ diff --git a/resources/spline.png b/resources/spline.png index 0fe35f2f4..e5c5374b9 100644 Binary files a/resources/spline.png and b/resources/spline.png differ diff --git a/resources/subblock.png b/resources/subblock.png index 6c75aa4bf..528fe308a 100755 Binary files a/resources/subblock.png and b/resources/subblock.png differ diff --git a/resources/subshape.png b/resources/subshape.png index 6c75aa4bf..528fe308a 100755 Binary files a/resources/subshape.png and b/resources/subshape.png differ diff --git a/resources/suppressintwires.png b/resources/suppressintwires.png index 9ab62f9a0..dc8d445ed 100644 Binary files a/resources/suppressintwires.png and b/resources/suppressintwires.png differ diff --git a/resources/supressHolesOnFaceShell.png b/resources/supressHolesOnFaceShell.png index 358793969..ef3e48af2 100755 Binary files a/resources/supressHolesOnFaceShell.png and b/resources/supressHolesOnFaceShell.png differ diff --git a/resources/supressface.png b/resources/supressface.png index 9ab62f9a0..9bc4e71f0 100644 Binary files a/resources/supressface.png and b/resources/supressface.png differ diff --git a/resources/supresshole.png b/resources/supresshole.png index 071790cf1..d2a6347b7 100755 Binary files a/resources/supresshole.png and b/resources/supresshole.png differ diff --git a/resources/tolerance.png b/resources/tolerance.png index fd75ba462..a8c91cb03 100644 Binary files a/resources/tolerance.png and b/resources/tolerance.png differ diff --git a/resources/torus.png b/resources/torus.png index b4585cdb8..af76fc00c 100644 Binary files a/resources/torus.png and b/resources/torus.png differ diff --git a/resources/torusdxyz.png b/resources/torusdxyz.png index 8b6c79b99..a927cbc37 100755 Binary files a/resources/torusdxyz.png and b/resources/torusdxyz.png differ diff --git a/resources/toruspointvector.png b/resources/toruspointvector.png index 843d71ad9..138b52042 100644 Binary files a/resources/toruspointvector.png and b/resources/toruspointvector.png differ diff --git a/resources/translation.png b/resources/translation.png index 78e6f9012..7f1143231 100644 Binary files a/resources/translation.png and b/resources/translation.png differ diff --git a/resources/translationDxyz.png b/resources/translationDxyz.png index 99549ed5e..ee5b7d702 100644 Binary files a/resources/translationDxyz.png and b/resources/translationDxyz.png differ diff --git a/resources/translationPoints.png b/resources/translationPoints.png index 9474b1132..eb0203542 100644 Binary files a/resources/translationPoints.png and b/resources/translationPoints.png differ diff --git a/resources/translationVector.png b/resources/translationVector.png index 78e6f9012..bec1385f2 100644 Binary files a/resources/translationVector.png and b/resources/translationVector.png differ diff --git a/resources/tree_block.png b/resources/tree_block.png index aa74e796e..2a0b03a45 100644 Binary files a/resources/tree_block.png and b/resources/tree_block.png differ diff --git a/resources/tree_compound.png b/resources/tree_compound.png index 1dd78eb3f..08b0c2d93 100644 Binary files a/resources/tree_compound.png and b/resources/tree_compound.png differ diff --git a/resources/tree_compsolid.png b/resources/tree_compsolid.png index 87ec8684f..39c2b2817 100644 Binary files a/resources/tree_compsolid.png and b/resources/tree_compsolid.png differ diff --git a/resources/tree_edge.png b/resources/tree_edge.png index df9741d76..f0fe7058f 100644 Binary files a/resources/tree_edge.png and b/resources/tree_edge.png differ diff --git a/resources/tree_face.png b/resources/tree_face.png index e9dc9a880..b79d18e7a 100644 Binary files a/resources/tree_face.png and b/resources/tree_face.png differ diff --git a/resources/tree_group_edge.png b/resources/tree_group_edge.png index 214be938a..410c233ad 100644 Binary files a/resources/tree_group_edge.png and b/resources/tree_group_edge.png differ diff --git a/resources/tree_group_face.png b/resources/tree_group_face.png index debb48ddf..0f1743c6b 100644 Binary files a/resources/tree_group_face.png and b/resources/tree_group_face.png differ diff --git a/resources/tree_group_solid.png b/resources/tree_group_solid.png index d68588346..c64d0eab3 100644 Binary files a/resources/tree_group_solid.png and b/resources/tree_group_solid.png differ diff --git a/resources/tree_group_vertex.png b/resources/tree_group_vertex.png index 553a4b9d3..68933dbd0 100644 Binary files a/resources/tree_group_vertex.png and b/resources/tree_group_vertex.png differ diff --git a/resources/tree_lcs.png b/resources/tree_lcs.png index 853d47e0a..6534b9c18 100644 Binary files a/resources/tree_lcs.png and b/resources/tree_lcs.png differ diff --git a/resources/tree_shape.png b/resources/tree_shape.png index 0ece93b75..0aef4c5d5 100644 Binary files a/resources/tree_shape.png and b/resources/tree_shape.png differ diff --git a/resources/tree_shell.png b/resources/tree_shell.png index 59992de36..5c467dd70 100644 Binary files a/resources/tree_shell.png and b/resources/tree_shell.png differ diff --git a/resources/tree_solid.png b/resources/tree_solid.png index aa74e796e..2a0b03a45 100644 Binary files a/resources/tree_solid.png and b/resources/tree_solid.png differ diff --git a/resources/tree_vertex.png b/resources/tree_vertex.png index 6a112b51d..223235ff2 100644 Binary files a/resources/tree_vertex.png and b/resources/tree_vertex.png differ diff --git a/resources/tree_wire.png b/resources/tree_wire.png index 9416d0e39..1c97948f1 100644 Binary files a/resources/tree_wire.png and b/resources/tree_wire.png differ diff --git a/resources/undo.png b/resources/undo.png index 61b19777e..9b60fbd5d 100644 Binary files a/resources/undo.png and b/resources/undo.png differ diff --git a/resources/vector.png b/resources/vector.png index 9a1a7e85a..1c01c13f4 100644 Binary files a/resources/vector.png and b/resources/vector.png differ diff --git a/resources/vector2points.png b/resources/vector2points.png index ff58a8ad4..2475d4a98 100644 Binary files a/resources/vector2points.png and b/resources/vector2points.png differ diff --git a/resources/vectordxyz.png b/resources/vectordxyz.png index e37e015cb..034e6a1dc 100644 Binary files a/resources/vectordxyz.png and b/resources/vectordxyz.png differ diff --git a/resources/whatis.png b/resources/whatis.png index 1b39f3544..d213e309b 100644 Binary files a/resources/whatis.png and b/resources/whatis.png differ diff --git a/src/ARCHIMEDE/ARCHIMEDE.pro b/src/ARCHIMEDE/ARCHIMEDE.pro new file mode 100644 index 000000000..bbcdfab3f --- /dev/null +++ b/src/ARCHIMEDE/ARCHIMEDE.pro @@ -0,0 +1,58 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = GEOMArchimede +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +CAS_KERNEL = -L$${CASROOT}/Linux/lib -lTKernel + +CAS_MODELER = -L$${CASROOT}/Linux/lib -lTKG2d -lTKG3d -lTKGeomBase -lTKBRep -lTKGeomAlgo -lTKTopAlgo -lTKPrim -lTKBO -lTKBool -lTKHLR -lTKFillet -lTKOffset -lTKFeat + +STDLIB = -lstdc++ + +INCLUDEPATH += $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} + +LIBS += $${KERNEL_LDFLAGS} -lSALOMELocalTrace $${CAS_KERNEL} $${CAS_MODELER} -lTKMesh $${STDLIB} + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS + +HEADERS = Archimede_VolumeSection.hxx + +SOURCES = Archimede_VolumeSection.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/ARCHIMEDE/Archimede_VolumeSection.cxx b/src/ARCHIMEDE/Archimede_VolumeSection.cxx index ec5fbdbea..922098934 100644 --- a/src/ARCHIMEDE/Archimede_VolumeSection.cxx +++ b/src/ARCHIMEDE/Archimede_VolumeSection.cxx @@ -1,33 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM ARCHIMEDE : algorithm implementation -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Archimede_VolumeSection.cxx // Author : Nicolas REJNERI // Module : GEOM // $Header$ - -#include - +// #include "Archimede_VolumeSection.hxx" #include "utilities.h" @@ -41,14 +38,10 @@ #include #include #include -#include -#include -#include #include #include #include #include -#include #include #include diff --git a/src/ARCHIMEDE/Archimede_VolumeSection.hxx b/src/ARCHIMEDE/Archimede_VolumeSection.hxx index 6dc4c8799..70790e4f8 100644 --- a/src/ARCHIMEDE/Archimede_VolumeSection.hxx +++ b/src/ARCHIMEDE/Archimede_VolumeSection.hxx @@ -1,31 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM ARCHIMEDE : algorithm implementation -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Archimede_VolumeSection.hxx // Author : Nicolas REJNERI // Module : GEOM // $Header$ - +// #ifndef ARCHIMEDE_VOLUMESECTION_HXX #define ARCHIMEDE_VOLUMESECTION_HXX @@ -33,7 +32,8 @@ #include #include #include -#include + +class Handle(Geom_RectangularTrimmedSurface); class VolumeSection{ diff --git a/src/ARCHIMEDE/Makefile.am b/src/ARCHIMEDE/Makefile.am index 63d6d9d08..51f12a394 100644 --- a/src/ARCHIMEDE/Makefile.am +++ b/src/ARCHIMEDE/Makefile.am @@ -1,35 +1,34 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM ARCHIMEDE : algorithm implementation -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : Makefile.am # Author : Nicolas REJNERI # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header$ - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am -salomeinclude_HEADERS = \ +salomeinclude_HEADERS = \ Archimede_VolumeSection.hxx # Libraries targets @@ -37,17 +36,18 @@ salomeinclude_HEADERS = \ lib_LTLIBRARIES = libGEOMArchimede.la # sources files -dist_libGEOMArchimede_la_SOURCES = \ +dist_libGEOMArchimede_la_SOURCES = \ Archimede_VolumeSection.cxx -# additionnal information to compil and link file -libGEOMArchimede_la_CPPFLAGS = \ - $(CAS_CPPFLAGS) \ +# additional information to compile and link file + +libGEOMArchimede_la_CPPFLAGS = \ + $(CAS_CPPFLAGS) \ $(KERNEL_CXXFLAGS) -libGEOMArchimede_la_LDFLAGS = \ - $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ - $(CAS_KERNEL) \ - $(CAS_MODELER) -lTKMesh \ +libGEOMArchimede_la_LDFLAGS = \ + $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ + $(CAS_KERNEL) \ + $(CAS_MODELER) -lTKMesh \ $(STDLIB) diff --git a/src/BREPExport/BREPExport.cxx b/src/BREPExport/BREPExport.cxx index c7d25b655..bce5d516e 100644 --- a/src/BREPExport/BREPExport.cxx +++ b/src/BREPExport/BREPExport.cxx @@ -1,27 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: BREPExport.cxx // Created: Wed May 19 13:10:05 2004 // Author: Pavel TELKOV // - +// #include "utilities.h" #include diff --git a/src/BREPExport/BREPExport.pro b/src/BREPExport/BREPExport.pro new file mode 100644 index 000000000..72dc646d0 --- /dev/null +++ b/src/BREPExport/BREPExport.pro @@ -0,0 +1,49 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = BREPExport +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +STDLIB = -lstdc++ + +CAS_LDPATH = -L$$(CASROOT)/Linux/lib + +INCLUDEPATH += $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} + +LIBS += $${KERNEL_LDFLAGS} -lSALOMELocalTrace $${STDLIB} $${CAS_LDPATH} -lTKBRep + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += BREPEXPORT_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS + +SOURCES = BREPExport.cxx diff --git a/src/BREPExport/Makefile.am b/src/BREPExport/Makefile.am index fa1ce21e3..239baba5a 100644 --- a/src/BREPExport/Makefile.am +++ b/src/BREPExport/Makefile.am @@ -1,44 +1,46 @@ -# Copyright (C) 2003 CEA -# -# 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-2008 CEA/DEN, EDF R&D, OPEN CASCADE # +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# 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 : Pavel TELKOV # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header$ - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # Libraries targets lib_LTLIBRARIES = libBREPExport.la # Sources files -dist_libBREPExport_la_SOURCES = \ +dist_libBREPExport_la_SOURCES = \ BREPExport.cxx -# additionnal information to compil and link file -libBREPExport_la_CPPFLAGS = \ - $(CAS_CPPFLAGS) \ +# additional information to compile and link file + +libBREPExport_la_CPPFLAGS = \ + $(CAS_CPPFLAGS) \ $(KERNEL_CXXFLAGS) -libBREPExport_la_LDFLAGS = \ - $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ - $(STDLIB) \ +libBREPExport_la_LDFLAGS = \ + $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ + $(STDLIB) \ $(CAS_LDPATH) -lTKBRep diff --git a/src/BREPImport/BREPImport.cxx b/src/BREPImport/BREPImport.cxx index cd78468ba..ecc09a6e2 100644 --- a/src/BREPImport/BREPImport.cxx +++ b/src/BREPImport/BREPImport.cxx @@ -1,27 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: BREPImport.cxx // Created: Wed May 19 14:29:52 2004 // Author: Pavel TELKOV // - +// #include "utilities.h" #include diff --git a/src/BREPImport/BREPImport.pro b/src/BREPImport/BREPImport.pro new file mode 100644 index 000000000..dc2fe28d4 --- /dev/null +++ b/src/BREPImport/BREPImport.pro @@ -0,0 +1,49 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = BREPImport +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +STDLIB = -lstdc++ + +CAS_LDPATH = -L$$(CASROOT)/Linux/lib + +INCLUDEPATH += $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} + +LIBS += $${KERNEL_LDFLAGS} -lSALOMELocalTrace $${STDLIB} $${CAS_LDPATH} -lTKBRep + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += BREPIMPORT_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS + +SOURCES = BREPImport.cxx diff --git a/src/BREPImport/Makefile.am b/src/BREPImport/Makefile.am index 610cddfb4..6d5eaf220 100644 --- a/src/BREPImport/Makefile.am +++ b/src/BREPImport/Makefile.am @@ -1,44 +1,46 @@ -# Copyright (C) 2003 CEA -# -# 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-2008 CEA/DEN, EDF R&D, OPEN CASCADE # +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# 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 : Pavel TELKOV # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header$ - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # Libraries targets lib_LTLIBRARIES = libBREPImport.la # Sources files -dist_libBREPImport_la_SOURCES = \ +dist_libBREPImport_la_SOURCES = \ BREPImport.cxx -# additionnal information to compil and link file -libBREPImport_la_CPPFLAGS = \ - $(KERNEL_CXXFLAGS) \ +# additional information to compile and link file + +libBREPImport_la_CPPFLAGS = \ + $(KERNEL_CXXFLAGS) \ $(CAS_CPPFLAGS) -libBREPImport_la_LDFLAGS = \ - $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ - $(CAS_LDPATH) -lTKBRep \ +libBREPImport_la_LDFLAGS = \ + $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ + $(CAS_LDPATH) -lTKBRep \ $(STDLIB) diff --git a/src/BasicGUI/BasicGUI.cxx b/src/BasicGUI/BasicGUI.cxx index 41b484848..47c7e1135 100644 --- a/src/BasicGUI/BasicGUI.cxx +++ b/src/BasicGUI/BasicGUI.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -10,7 +10,7 @@ // // 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 +// 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 @@ -19,30 +19,11 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : BasicGUI.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "BasicGUI.h" -#include "GeometryGUI.h" - -#include "SUIT_Session.h" -#include "SUIT_Desktop.h" -#include "SUIT_ViewWindow.h" -#include "OCCViewer_ViewWindow.h" -#include "OCCViewer_ViewModel.h" -#include "OCCViewer_ViewManager.h" -#include "OCCViewer_ViewPort3d.h" -#include "utilities.h" - -#include -#include -#include -#include -#include #include "BasicGUI_PointDlg.h" // Method POINT #include "BasicGUI_LineDlg.h" // Method LINE @@ -55,14 +36,29 @@ #include "BasicGUI_WorkingPlaneDlg.h" // Method WORKING PLANE #include "BasicGUI_MarkerDlg.h" // Method REPAIR -using namespace std; +#include + +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include //======================================================================= // function : BasicGUI() // purpose : Constructor //======================================================================= -BasicGUI::BasicGUI( GeometryGUI* parent ) : - GEOMGUI(parent) +BasicGUI::BasicGUI( GeometryGUI* parent ) + : GEOMGUI( parent ) { } @@ -79,51 +75,50 @@ BasicGUI::~BasicGUI() // function : OnGUIEvent() // purpose : //======================================================================= -bool BasicGUI::OnGUIEvent(int theCommandID, SUIT_Desktop* parent) +bool BasicGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) { getGeometryGUI()->EmitSignalDeactivateDialog(); QDialog* aDlg = NULL; - switch ( theCommandID ) - { - case 4011: // POINT - aDlg = new BasicGUI_PointDlg( getGeometryGUI(), parent, "" ); - break; - case 4012: // LINE - aDlg = new BasicGUI_LineDlg( getGeometryGUI(), parent, "" ); - break; - case 4013: // CIRCLE - aDlg = new BasicGUI_CircleDlg( getGeometryGUI(), parent, ""); - break; - case 4014: // ELLIPSE - aDlg = new BasicGUI_EllipseDlg( getGeometryGUI(), parent, "" ); - break; - case 4015: // ARC - aDlg = new BasicGUI_ArcDlg( getGeometryGUI(), parent, "" ); - break ; - case 4016: // VECTOR - aDlg = new BasicGUI_VectorDlg( getGeometryGUI(), parent, "" ); - break; - case 4017: // PLANE - aDlg = new BasicGUI_PlaneDlg( getGeometryGUI(), parent, ""); - break; - case 4018: // WORKING PLANE - aDlg = new BasicGUI_WorkingPlaneDlg( getGeometryGUI(), parent, "" ); - break; - case 4019: // CURVE - aDlg = new BasicGUI_CurveDlg( getGeometryGUI(), parent, "" ); - break; - case 4020: // REPAIR - aDlg = new BasicGUI_MarkerDlg( getGeometryGUI(), parent ); - break; - default: - SUIT_Session::session()->activeApplication()->putInfo(tr("GEOM_PRP_COMMAND").arg(theCommandID)); - break; - } - + switch ( theCommandID ) { + case 4011: // POINT + aDlg = new BasicGUI_PointDlg( getGeometryGUI(), parent ); + break; + case 4012: // LINE + aDlg = new BasicGUI_LineDlg( getGeometryGUI(), parent ); + break; + case 4013: // CIRCLE + aDlg = new BasicGUI_CircleDlg( getGeometryGUI(), parent ); + break; + case 4014: // ELLIPSE + aDlg = new BasicGUI_EllipseDlg( getGeometryGUI(), parent ); + break; + case 4015: // ARC + aDlg = new BasicGUI_ArcDlg( getGeometryGUI(), parent ); + break ; + case 4016: // VECTOR + aDlg = new BasicGUI_VectorDlg( getGeometryGUI(), parent ); + break; + case 4017: // PLANE + aDlg = new BasicGUI_PlaneDlg( getGeometryGUI(), parent ); + break; + case 4018: // WORKING PLANE + aDlg = new BasicGUI_WorkingPlaneDlg( getGeometryGUI(), parent ); + break; + case 4019: // CURVE + aDlg = new BasicGUI_CurveDlg( getGeometryGUI(), parent ); + break; + case 4020: // REPAIR + aDlg = new BasicGUI_MarkerDlg( getGeometryGUI(), parent ); + break; + default: + SUIT_Session::session()->activeApplication()->putInfo( tr( "GEOM_PRP_COMMAND" ).arg( theCommandID ) ); + break; + } + if ( aDlg != NULL ) aDlg->show(); - + return true; } @@ -137,34 +132,30 @@ bool BasicGUI::OnMousePress( QMouseEvent* pe, SUIT_Desktop* parent, SUIT_ViewWin QDialog* aDlg = getGeometryGUI()->GetActiveDialogBox(); // Create Point dialog, OCC viewer - if ( aDlg && aDlg->isA( "BasicGUI_PointDlg" ) && + if ( aDlg && ( QString( aDlg->metaObject()->className() ).compare( "BasicGUI_PointDlg" ) == 0 ) && theViewWindow->getViewManager()->getType() == OCCViewer_Viewer::Type() && - pe->state() != Qt::ControlButton ) - { + pe->modifiers() != Qt::ControlModifier ) { BasicGUI_PointDlg* aPntDlg = (BasicGUI_PointDlg*) aDlg; - if ( aPntDlg->acceptMouseEvent() ) - { + if ( aPntDlg->acceptMouseEvent() ) { OCCViewer_Viewer* anOCCViewer = - ((OCCViewer_ViewManager*)(theViewWindow->getViewManager()))->getOCCViewer(); + ( (OCCViewer_ViewManager*)( theViewWindow->getViewManager() ) )->getOCCViewer(); Handle(AIS_InteractiveContext) ic = anOCCViewer->getAISContext(); gp_Pnt aPnt; ic->InitSelected(); - if ( pe->state() == Qt::ShiftButton ) + if ( pe->modifiers() == Qt::ShiftModifier ) ic->ShiftSelect(); // Append selection else ic->Select(); // New selection ic->InitSelected(); - if ( ic->MoreSelected() ) - { + if ( ic->MoreSelected() ) { TopoDS_Shape aShape = ic->SelectedShape(); if ( !aShape.IsNull() && aShape.ShapeType() == TopAbs_VERTEX ) aPnt = BRep_Tool::Pnt( TopoDS::Vertex( ic->SelectedShape() ) ); } - else - { + else { OCCViewer_ViewPort3d* vp = ((OCCViewer_ViewWindow*)theViewWindow)->getViewPort(); aPnt = ConvertClickToPoint( pe->x(), pe->y(), vp->getView() ); } @@ -180,25 +171,25 @@ bool BasicGUI::OnMousePress( QMouseEvent* pe, SUIT_Desktop* parent, SUIT_ViewWin // function : ConvertClickToPoint() // purpose : Returns the point clicked in 3D view //======================================================================= -gp_Pnt BasicGUI::ConvertClickToPoint( int x, int y, Handle(V3d_View) aView) +gp_Pnt BasicGUI::ConvertClickToPoint( int x, int y, Handle(V3d_View) aView ) { V3d_Coordinate XEye, YEye, ZEye, XAt, YAt, ZAt; - aView->Eye(XEye, YEye, ZEye); + aView->Eye( XEye, YEye, ZEye ); - aView->At(XAt, YAt, ZAt); - gp_Pnt EyePoint(XEye, YEye, ZEye); - gp_Pnt AtPoint(XAt, YAt, ZAt); + aView->At( XAt, YAt, ZAt ); + gp_Pnt EyePoint( XEye, YEye, ZEye ); + gp_Pnt AtPoint( XAt, YAt, ZAt ); - gp_Vec EyeVector(EyePoint, AtPoint); - gp_Dir EyeDir(EyeVector); + gp_Vec EyeVector( EyePoint, AtPoint ); + gp_Dir EyeDir( EyeVector ); - gp_Pln PlaneOfTheView = gp_Pln(AtPoint,EyeDir); + gp_Pln PlaneOfTheView = gp_Pln( AtPoint, EyeDir ); Standard_Real X, Y, Z; - aView->Convert(x, y, X, Y, Z); - gp_Pnt ConvertedPoint(X, Y, Z); + aView->Convert( x, y, X, Y, Z ); + gp_Pnt ConvertedPoint( X, Y, Z ); - gp_Pnt2d ConvertedPointOnPlane = ProjLib::Project(PlaneOfTheView, ConvertedPoint); - gp_Pnt ResultPoint = ElSLib::Value(ConvertedPointOnPlane.X(), ConvertedPointOnPlane.Y(), PlaneOfTheView); + gp_Pnt2d ConvertedPointOnPlane = ProjLib::Project( PlaneOfTheView, ConvertedPoint ); + gp_Pnt ResultPoint = ElSLib::Value( ConvertedPointOnPlane.X(), ConvertedPointOnPlane.Y(), PlaneOfTheView ); return ResultPoint; } @@ -207,7 +198,9 @@ gp_Pnt BasicGUI::ConvertClickToPoint( int x, int y, Handle(V3d_View) aView) //===================================================================================== extern "C" { -GEOM_BASICGUI_EXPORT +#ifdef WIN32 + __declspec( dllexport ) +#endif GEOMGUI* GetLibGUI( GeometryGUI* parent ) { return new BasicGUI( parent ); diff --git a/src/BasicGUI/BasicGUI.h b/src/BasicGUI/BasicGUI.h index 73a16e6bd..1b95e5fbf 100644 --- a/src/BasicGUI/BasicGUI.h +++ b/src/BasicGUI/BasicGUI.h @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -10,7 +10,7 @@ // // 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 +// 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 @@ -19,35 +19,30 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI.h +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : BasicGUI.h -// Author : Damien COQUERET -// Module : GEOM - #ifndef BASICGUI_H #define BASICGUI_H -#include "GEOM_BasicGUI.hxx" - -#include "GEOMGUI.h" -#include "GEOMBase.h" +#include #include //================================================================================= // class : BasicGUI // purpose : //================================================================================= -class GEOM_BASICGUI_EXPORT BasicGUI : public GEOMGUI +class BasicGUI : public GEOMGUI { public: - BasicGUI( GeometryGUI* parent ); + BasicGUI( GeometryGUI* ); ~BasicGUI(); - bool OnGUIEvent(int theCommandID, SUIT_Desktop* parent); - bool OnMousePress(QMouseEvent* pe, SUIT_Desktop* parent, SUIT_ViewWindow* theViewWindow); + bool OnGUIEvent( int, SUIT_Desktop* ); + bool OnMousePress( QMouseEvent*, SUIT_Desktop*, SUIT_ViewWindow* ); - gp_Pnt ConvertClickToPoint( int x, int y, Handle(V3d_View) aView ); + gp_Pnt ConvertClickToPoint( int, int, Handle(V3d_View) ); }; -#endif +#endif // BASICGUI_H diff --git a/src/BasicGUI/BasicGUI.pro b/src/BasicGUI/BasicGUI.pro new file mode 100644 index 000000000..2ef9147a0 --- /dev/null +++ b/src/BasicGUI/BasicGUI.pro @@ -0,0 +1,75 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = BasicGUI +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +QT_INCLUDES = $$(QTDIR)/include $$(QTDIR)/include/QtCore $$(QTDIR)/include/QtGui $$(QTDIR)/include/QtOpenGL $$(QTDIR)/include/QtXml + +VTK_INCLUDES = $$(VTKHOME)/include/vtk + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +PYTHON_INCLUDES = $$(PYTHONHOME)/include/python2.4 + +BOOST_CPPFLAGS = $$(BOOSTDIR)/include + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +GUI_CXXFLAGS = $$(GUI_ROOT_DIR)/include/salome + +CORBA_INCLUDES = $$(OMNIORBDIR)/include $$(OMNIORBDIR)/include/omniORB4 $$(OMNIORBDIR)/include/COS + +GUI_LDFLAGS = -L$$(GUI_ROOT_DIR)/lib/salome + +INCLUDEPATH += $${QT_INCLUDES} $${VTK_INCLUDES} $${CAS_CPPFLAGS} $${PYTHON_INCLUDES} $${BOOST_CPPFLAGS} $${KERNEL_CXXFLAGS} $${GUI_CXXFLAGS} $${CORBA_INCLUDES} ../OBJECT ../DlgRef ../GEOMGUI ../GEOMFiltersSelection ../GEOMBase ../GEOMImpl ../GEOMClient $$(GEOM_ROOT_DIR)/idl $$(GEOM_ROOT_DIR)/salome_adm/unix + +LIBS += -L$$(GEOM_ROOT_DIR)/lib -lGEOMFiltersSelection -lGEOMBase -lGEOM $${GUI_LDFLAGS} -lsuit + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += BASICGUI_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS OMNIORB_VERSION=4 __x86__ __linux__ COMP_CORBA_DOUBLE COMP_CORBA_LONG + +HEADERS = BasicGUI_PointDlg.h +HEADERS += GEOM_BasicGUI.hxx + +SOURCES = BasicGUI.cxx +SOURCES += BasicGUI_PointDlg.cxx +SOURCES += BasicGUI_LineDlg.cxx +SOURCES += BasicGUI_CircleDlg.cxx +SOURCES += BasicGUI_EllipseDlg.cxx +SOURCES += BasicGUI_ArcDlg.cxx +SOURCES += BasicGUI_VectorDlg.cxx +SOURCES += BasicGUI_PlaneDlg.cxx +SOURCES += BasicGUI_WorkingPlaneDlg.cxx +SOURCES += BasicGUI_CurveDlg.cxx +SOURCES += BasicGUI_MarkerDlg.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/BasicGUI/BasicGUI_ArcDlg.cxx b/src/BasicGUI/BasicGUI_ArcDlg.cxx index f9668b5ce..7326a37e2 100644 --- a/src/BasicGUI/BasicGUI_ArcDlg.cxx +++ b/src/BasicGUI/BasicGUI_ArcDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -19,19 +19,20 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_ArcDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : BasicGUI_ArcDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "BasicGUI_ArcDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include + +#include +#include +#include +#include #include #include @@ -40,12 +41,7 @@ #include #include -#include -#include - -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" +#include //================================================================================= // class : BasicGUI_ArcDlg() @@ -54,60 +50,91 @@ // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BasicGUI_ArcDlg::BasicGUI_ArcDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - : GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BasicGUI_ArcDlg::BasicGUI_ArcDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ) { SUIT_ResourceMgr* aResMgr = SUIT_Session::session()->resourceMgr(); - QPixmap image0(aResMgr->loadPixmap("GEOM",tr("ICON_DLG_ARC"))); - QPixmap image1(aResMgr->loadPixmap("GEOM",tr("ICON_DLG_ARC_CENTER"))); - QPixmap image2(aResMgr->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( aResMgr->loadPixmap( "GEOM", tr( "ICON_DLG_ARC" ) ) ); + QPixmap image1( aResMgr->loadPixmap( "GEOM", tr( "ICON_DLG_ARC_CENTER" ) ) ); + QPixmap image2( aResMgr->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); + QPixmap image3( aResMgr->loadPixmap( "GEOM", tr( "ICON_DLG_ARC_OF_ELLIPSE" ) ) ); - setCaption(tr("GEOM_ARC_TITLE")); + setWindowTitle( tr( "GEOM_ARC_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_ARC")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image1); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_ARC" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setIcon( image1 ); + mainFrame()->RadioButton3->setIcon( image3 ); - Group3Pnts = new DlgRef_3Sel_QTD(this, "Group3Pnts"); - Group3Pnts->GroupBox1->setTitle(tr("GEOM_POINTS")); - Group3Pnts->TextLabel1->setText(tr("GEOM_POINT_I").arg("1")); - Group3Pnts->TextLabel2->setText(tr("GEOM_POINT_I").arg("2")); - Group3Pnts->TextLabel3->setText(tr("GEOM_POINT_I").arg("3")); + Group3Pnts = new DlgRef_3Sel( centralWidget() ); + + Group3Pnts->GroupBox1->setTitle( tr( "GEOM_POINTS" ) ); + Group3Pnts->TextLabel1->setText( tr( "GEOM_POINT_I" ).arg( 1 ) ); + Group3Pnts->TextLabel2->setText( tr( "GEOM_POINT_I" ).arg( 2 ) ); + Group3Pnts->TextLabel3->setText( tr( "GEOM_POINT_I" ).arg( 3 ) ); Group3Pnts->LineEdit1->setReadOnly( true ); Group3Pnts->LineEdit2->setReadOnly( true ); Group3Pnts->LineEdit3->setReadOnly( true ); - Group3Pnts->PushButton1->setPixmap(image2); - Group3Pnts->PushButton2->setPixmap(image2); - Group3Pnts->PushButton3->setPixmap(image2); + Group3Pnts->LineEdit1->setEnabled(true); + Group3Pnts->LineEdit2->setEnabled(false); + Group3Pnts->LineEdit3->setEnabled(false); + + Group3Pnts->PushButton1->setIcon(image2); + Group3Pnts->PushButton2->setIcon(image2); + Group3Pnts->PushButton3->setIcon(image2); - Group3Pnts2 = new DlgRef_3Sel1Check_QTD(this, "Group3Pnts2"); - Group3Pnts2->GroupBox1->setTitle(tr("GEOM_POINTS")); - Group3Pnts2->TextLabel1->setText(tr("GEOM_CENTER_POINT")); - Group3Pnts2->TextLabel2->setText(tr("GEOM_POINT_I").arg("Start")); - Group3Pnts2->TextLabel3->setText(tr("GEOM_POINT_I").arg("End")); + Group3Pnts2 = new DlgRef_3Sel1Check( centralWidget() ); + + Group3Pnts2->GroupBox1->setTitle( tr( "GEOM_POINTS" ) ); + Group3Pnts2->TextLabel1->setText( tr( "GEOM_CENTER_POINT" ) ); + Group3Pnts2->TextLabel2->setText( tr( "GEOM_POINT_I" ).arg( "Start" ) ); + Group3Pnts2->TextLabel3->setText( tr( "GEOM_POINT_I" ).arg( "End" ) ); Group3Pnts2->LineEdit1->setReadOnly( true ); Group3Pnts2->LineEdit2->setReadOnly( true ); Group3Pnts2->LineEdit3->setReadOnly( true ); - Group3Pnts2->PushButton1->setPixmap(image2); - Group3Pnts2->PushButton2->setPixmap(image2); - Group3Pnts2->PushButton3->setPixmap(image2); + Group3Pnts2->LineEdit1->setEnabled(true); + Group3Pnts2->LineEdit2->setEnabled(false); + Group3Pnts2->LineEdit3->setEnabled(false); - Group3Pnts2->CheckButton1->setText(tr("GEOM_REVERSE")); + Group3Pnts2->PushButton1->setIcon( image2 ); + Group3Pnts2->PushButton2->setIcon( image2 ); + Group3Pnts2->PushButton3->setIcon( image2 ); + + Group3Pnts2->CheckButton1->setText( tr( "GEOM_REVERSE" ) ); - Layout1->addWidget( Group3Pnts, 2, 0 ); - Layout1->addWidget( Group3Pnts2, 2, 0 ); - /***************************************************************/ + Group3Pnts3 = new DlgRef_3Sel( centralWidget() ); - setHelpFileName("create_arc_page.html"); + Group3Pnts3->GroupBox1->setTitle( tr( "GEOM_POINTS" ) ); + Group3Pnts3->TextLabel1->setText( tr( "GEOM_CENTER_POINT" ) ); + Group3Pnts3->TextLabel2->setText( tr( "GEOM_POINT_I" ).arg( 1 ) ); + Group3Pnts3->TextLabel3->setText( tr( "GEOM_POINT_I" ).arg( 2 ) ); + + Group3Pnts3->LineEdit1->setReadOnly( true ); + Group3Pnts3->LineEdit2->setReadOnly( true ); + Group3Pnts3->LineEdit3->setReadOnly( true ); + + Group3Pnts3->LineEdit1->setEnabled(true); + Group3Pnts3->LineEdit2->setEnabled(false); + Group3Pnts3->LineEdit3->setEnabled(false); + + Group3Pnts3->PushButton1->setIcon(image2); + Group3Pnts3->PushButton2->setIcon(image2); + Group3Pnts3->PushButton3->setIcon(image2); + + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( Group3Pnts ); + layout->addWidget( Group3Pnts2 ); + layout->addWidget( Group3Pnts3 ); + + setHelpFileName( "create_arc_page.html" ); Init(); } @@ -130,102 +157,56 @@ void BasicGUI_ArcDlg::Init() { /* init variables */ myEditCurrentArgument = Group3Pnts->LineEdit1; + myPoint1 = myPoint2 = myPoint3 = GEOM::GEOM_Object::_nil(); - Group3Pnts2->CheckButton1->setChecked(FALSE); + Group3Pnts2->CheckButton1->setChecked( false ); + Group3Pnts->PushButton1->setDown(true); /* signals and slots connections */ - connect(buttonCancel, SIGNAL(clicked()), this, SLOT(ClickOnCancel())); - connect(myGeomGUI, SIGNAL(SignalDeactivateActiveDialog()), this, SLOT(DeactivateActiveDialog())); - connect(myGeomGUI, SIGNAL(SignalCloseAllDialogs()), this, SLOT(ClickOnCancel())); + connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), this, SLOT( DeactivateActiveDialog() ) ); + connect( myGeomGUI, SIGNAL( SignalCloseAllDialogs() ), this, SLOT( ClickOnCancel() ) ); + + connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); + + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + connect( Group3Pnts->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group3Pnts->PushButton2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group3Pnts->PushButton3, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect( Group3Pnts->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( Group3Pnts->LineEdit2, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( Group3Pnts->LineEdit3, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + + connect( Group3Pnts2->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group3Pnts2->PushButton2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group3Pnts2->PushButton3, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect(Group3Pnts->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(Group3Pnts->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(Group3Pnts->PushButton3, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect( Group3Pnts2->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( Group3Pnts2->LineEdit2, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( Group3Pnts2->LineEdit3, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect(Group3Pnts->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(Group3Pnts->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(Group3Pnts->LineEdit3, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( Group3Pnts2->CheckButton1, SIGNAL( toggled( bool ) ), this, SLOT( ReverseSense() ) ); - connect(Group3Pnts2->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(Group3Pnts2->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(Group3Pnts2->PushButton3, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect( Group3Pnts3->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group3Pnts3->PushButton2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group3Pnts3->PushButton3, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect(Group3Pnts2->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(Group3Pnts2->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(Group3Pnts2->LineEdit3, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( Group3Pnts3->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( Group3Pnts3->LineEdit2, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( Group3Pnts3->LineEdit3, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect(Group3Pnts2->CheckButton1, SIGNAL(stateChanged(int)), this, SLOT(ReverseSense(int))); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); + initName( tr( "GEOM_ARC" ) ); + - initName( tr( "GEOM_ARC" )); ConstructorsClicked( 0 ); } -//================================================================================= -// function : ConstructorsClicked() -// purpose : Radio button management -//================================================================================= -void BasicGUI_ArcDlg::ConstructorsClicked (int constructorId) -{ - disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); - - switch (constructorId) - { - case 0: - { - globalSelection(); // close local contexts, if any - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); //Select Vertex on All Shapes - - Group3Pnts->show(); - resize(0, 0); - Group3Pnts2->hide(); - - Group3Pnts->LineEdit1->setText(Group3Pnts2->LineEdit1->text()); - Group3Pnts->LineEdit2->setText(Group3Pnts2->LineEdit2->text()); - Group3Pnts->LineEdit3->setText(Group3Pnts2->LineEdit3->text()); - - myEditCurrentArgument = Group3Pnts->LineEdit1; - - break; - } - case 1: - { - globalSelection(); // close local contexts, if any - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); //Select Vertex on All Shapes - - Group3Pnts->hide(); - resize(0, 0); - Group3Pnts2->show(); - - Group3Pnts2->LineEdit1->setText(Group3Pnts->LineEdit1->text()); - Group3Pnts2->LineEdit2->setText(Group3Pnts->LineEdit2->text()); - Group3Pnts2->LineEdit3->setText(Group3Pnts->LineEdit3->text()); - - myEditCurrentArgument = Group3Pnts2->LineEdit1; - - break; - } - } - - myEditCurrentArgument->setFocus(); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); - - if (CORBA::is_nil(myPoint1)) - SelectionIntoArgument(); - - displayPreview(); -} - - //================================================================================= // function : ClickOnOk() // purpose : @@ -246,57 +227,58 @@ bool BasicGUI_ArcDlg::ClickOnApply() return false; initName(); + ConstructorsClicked( getConstructorId() ); + return true; } + //================================================================================= // function : SelectionIntoArgument() // purpose : Called when selection as changed or other case //================================================================================= void BasicGUI_ArcDlg::SelectionIntoArgument() { - if ((getConstructorId() != 0) && (getConstructorId() != 1)) - return; + myEditCurrentArgument->setText( "" ); - myEditCurrentArgument->setText(""); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); - if (IObjectCount() != 1) - { - switch (getConstructorId()) - { + if (aSelList.Extent() != 1) { + switch (getConstructorId()) { case 0: - { - if ( myEditCurrentArgument == Group3Pnts->LineEdit1 ) myPoint1 = GEOM::GEOM_Object::_nil(); - else if ( myEditCurrentArgument == Group3Pnts->LineEdit2 ) myPoint2 = GEOM::GEOM_Object::_nil(); - else if ( myEditCurrentArgument == Group3Pnts->LineEdit3 ) myPoint3 = GEOM::GEOM_Object::_nil(); - return; - break; - } + if ( myEditCurrentArgument == Group3Pnts->LineEdit1 ) myPoint1 = GEOM::GEOM_Object::_nil(); + else if ( myEditCurrentArgument == Group3Pnts->LineEdit2 ) myPoint2 = GEOM::GEOM_Object::_nil(); + else if ( myEditCurrentArgument == Group3Pnts->LineEdit3 ) myPoint3 = GEOM::GEOM_Object::_nil(); + return; + break; case 1: - { - if ( myEditCurrentArgument == Group3Pnts2->LineEdit1 ) myPoint1 = GEOM::GEOM_Object::_nil(); - else if ( myEditCurrentArgument == Group3Pnts2->LineEdit2 ) myPoint2 = GEOM::GEOM_Object::_nil(); - else if ( myEditCurrentArgument == Group3Pnts2->LineEdit3 ) myPoint3 = GEOM::GEOM_Object::_nil(); - return; - break; - } + if ( myEditCurrentArgument == Group3Pnts2->LineEdit1 ) myPoint1 = GEOM::GEOM_Object::_nil(); + else if ( myEditCurrentArgument == Group3Pnts2->LineEdit2 ) myPoint2 = GEOM::GEOM_Object::_nil(); + else if ( myEditCurrentArgument == Group3Pnts2->LineEdit3 ) myPoint3 = GEOM::GEOM_Object::_nil(); + return; + break; + case 2: + if ( myEditCurrentArgument == Group3Pnts3->LineEdit1 ) myPoint1 = GEOM::GEOM_Object::_nil(); + else if ( myEditCurrentArgument == Group3Pnts3->LineEdit2 ) myPoint2 = GEOM::GEOM_Object::_nil(); + else if ( myEditCurrentArgument == Group3Pnts3->LineEdit3 ) myPoint3 = GEOM::GEOM_Object::_nil(); + return; + break; } - } - + } // nbSel == 1 Standard_Boolean aRes = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), aRes); - if (!CORBA::is_nil(aSelectedObject) && aRes) - { + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aRes); + if ( !CORBA::is_nil( aSelectedObject ) && aRes ) { QString aName = GEOMBase::GetName(aSelectedObject); // Get Selected object if selected subshape TopoDS_Shape aShape; if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) { - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes(firstIObject(), aMap); + aSelMgr->GetIndexes(aSelList.First(), aMap); if (aMap.Extent() == 1) // Local Selection { int anIndex = aMap(1); @@ -323,43 +305,69 @@ void BasicGUI_ArcDlg::SelectionIntoArgument() myEditCurrentArgument->setText(aName); - switch (getConstructorId()) - { - case 0: - { - if ( myEditCurrentArgument == Group3Pnts->LineEdit1 ) myPoint1 = aSelectedObject; - else if ( myEditCurrentArgument == Group3Pnts->LineEdit2 ) myPoint2 = aSelectedObject; - else if ( myEditCurrentArgument == Group3Pnts->LineEdit3 ) myPoint3 = aSelectedObject; - break; + if (!aSelectedObject->_is_nil()) { // clear selection if something selected + globalSelection(); + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + } + + switch ( getConstructorId() ) { + case 0: + if ( myEditCurrentArgument == Group3Pnts->LineEdit1 ) { + myPoint1 = aSelectedObject; + if ( !myPoint1->_is_nil() && myPoint2->_is_nil() ) + Group3Pnts->PushButton2->click(); } - case 1: - { - if ( myEditCurrentArgument == Group3Pnts2->LineEdit1 ) myPoint1 = aSelectedObject; - else if ( myEditCurrentArgument == Group3Pnts2->LineEdit2 ) myPoint2 = aSelectedObject; - else if ( myEditCurrentArgument == Group3Pnts2->LineEdit3 ) myPoint3 = aSelectedObject; - break; + else if ( myEditCurrentArgument == Group3Pnts->LineEdit2 ) { + myPoint2 = aSelectedObject; + if ( !myPoint2->_is_nil() && myPoint3->_is_nil() ) + Group3Pnts->PushButton3->click(); } + else if ( myEditCurrentArgument == Group3Pnts->LineEdit3 ) { + myPoint3 = aSelectedObject; + if ( !myPoint3->_is_nil() && myPoint1->_is_nil() ) + Group3Pnts->PushButton1->click(); + } + break; + case 1: + if ( myEditCurrentArgument == Group3Pnts2->LineEdit1 ) { + myPoint1 = aSelectedObject; + if ( !myPoint1->_is_nil() && myPoint2->_is_nil() ) + Group3Pnts2->PushButton2->click(); + } + else if ( myEditCurrentArgument == Group3Pnts2->LineEdit2 ) { + myPoint2 = aSelectedObject; + if ( !myPoint2->_is_nil() && myPoint3->_is_nil() ) + Group3Pnts2->PushButton3->click(); + } + else if ( myEditCurrentArgument == Group3Pnts2->LineEdit3 ) { + myPoint3 = aSelectedObject; + if ( !myPoint3->_is_nil() && myPoint1->_is_nil() ) + Group3Pnts2->PushButton1->click(); + } + break; + case 2: + if ( myEditCurrentArgument == Group3Pnts3->LineEdit1 ) { + myPoint1 = aSelectedObject; + if ( !myPoint1->_is_nil() && myPoint2->_is_nil() ) + Group3Pnts3->PushButton2->click(); + } + else if ( myEditCurrentArgument == Group3Pnts3->LineEdit2 ) { + myPoint2 = aSelectedObject; + if ( !myPoint2->_is_nil() && myPoint3->_is_nil() ) + Group3Pnts3->PushButton3->click(); + } + else if ( myEditCurrentArgument == Group3Pnts3->LineEdit3 ) { + myPoint3 = aSelectedObject; + if ( !myPoint3->_is_nil() && myPoint1->_is_nil() ) + Group3Pnts3->PushButton1->click(); + } + break; } } displayPreview(); } -//================================================================================= -// function : LineEditReturnPressed() -// purpose : -//================================================================================= -void BasicGUI_ArcDlg::LineEditReturnPressed() -{ - QLineEdit* send = (QLineEdit*)sender(); - if (send == Group3Pnts->LineEdit1 || send == Group3Pnts->LineEdit2 || send == Group3Pnts->LineEdit3 || - send == Group3Pnts2->LineEdit1 || send == Group3Pnts2->LineEdit2 || send == Group3Pnts2->LineEdit3) - { - myEditCurrentArgument = send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } -} - //================================================================================= // function : SetEditCurrentArgument() @@ -367,26 +375,110 @@ void BasicGUI_ArcDlg::LineEditReturnPressed() //================================================================================= void BasicGUI_ArcDlg::SetEditCurrentArgument() { + globalSelection(); // close local selection to clear it + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + QPushButton* send = (QPushButton*)sender(); - switch (getConstructorId()) - { - case 0: - { - if ( send == Group3Pnts->PushButton1 ) myEditCurrentArgument = Group3Pnts->LineEdit1; - else if ( send == Group3Pnts->PushButton2 ) myEditCurrentArgument = Group3Pnts->LineEdit2; - else if ( send == Group3Pnts->PushButton3 ) myEditCurrentArgument = Group3Pnts->LineEdit3; - break; + switch ( getConstructorId() ) { + case 0: + if ( send == Group3Pnts->PushButton1 ) { + myEditCurrentArgument = Group3Pnts->LineEdit1; + Group3Pnts->PushButton2->setDown(false); + Group3Pnts->PushButton3->setDown(false); + Group3Pnts->LineEdit1->setEnabled(true); + Group3Pnts->LineEdit2->setEnabled(false); + Group3Pnts->LineEdit3->setEnabled(false); } - case 1: - { - if ( send == Group3Pnts2->PushButton1 ) myEditCurrentArgument = Group3Pnts2->LineEdit1; - else if ( send == Group3Pnts2->PushButton2 ) myEditCurrentArgument = Group3Pnts2->LineEdit2; - else if ( send == Group3Pnts2->PushButton3 ) myEditCurrentArgument = Group3Pnts2->LineEdit3; - break; + else if ( send == Group3Pnts->PushButton2 ) { + myEditCurrentArgument = Group3Pnts->LineEdit2; + Group3Pnts->PushButton1->setDown(false); + Group3Pnts->PushButton3->setDown(false); + Group3Pnts->LineEdit1->setEnabled(false); + Group3Pnts->LineEdit2->setEnabled(true); + Group3Pnts->LineEdit3->setEnabled(false); } + else if ( send == Group3Pnts->PushButton3 ) { + myEditCurrentArgument = Group3Pnts->LineEdit3; + Group3Pnts->PushButton1->setDown(false); + Group3Pnts->PushButton2->setDown(false); + Group3Pnts->LineEdit1->setEnabled(false); + Group3Pnts->LineEdit2->setEnabled(false); + Group3Pnts->LineEdit3->setEnabled(true); + } + break; + case 1: + if ( send == Group3Pnts2->PushButton1 ) { + myEditCurrentArgument = Group3Pnts2->LineEdit1; + Group3Pnts2->PushButton2->setDown(false); + Group3Pnts2->PushButton3->setDown(false); + Group3Pnts2->LineEdit1->setEnabled(true); + Group3Pnts2->LineEdit2->setEnabled(false); + Group3Pnts2->LineEdit3->setEnabled(false); + } + else if ( send == Group3Pnts2->PushButton2 ) { + myEditCurrentArgument = Group3Pnts2->LineEdit2; + Group3Pnts2->PushButton1->setDown(false); + Group3Pnts2->PushButton3->setDown(false); + Group3Pnts2->LineEdit1->setEnabled(false); + Group3Pnts2->LineEdit2->setEnabled(true); + Group3Pnts2->LineEdit3->setEnabled(false); + } + else if ( send == Group3Pnts2->PushButton3 ) { + myEditCurrentArgument = Group3Pnts2->LineEdit3; + Group3Pnts2->PushButton1->setDown(false); + Group3Pnts2->PushButton2->setDown(false); + Group3Pnts2->LineEdit1->setEnabled(false); + Group3Pnts2->LineEdit2->setEnabled(false); + Group3Pnts2->LineEdit3->setEnabled(true); + } + break; + case 2: + if ( send == Group3Pnts3->PushButton1 ) { + myEditCurrentArgument = Group3Pnts3->LineEdit1; + Group3Pnts3->PushButton2->setDown(false); + Group3Pnts3->PushButton3->setDown(false); + Group3Pnts3->LineEdit1->setEnabled(true); + Group3Pnts3->LineEdit2->setEnabled(false); + Group3Pnts3->LineEdit3->setEnabled(false); + } + else if ( send == Group3Pnts3->PushButton2 ) { + myEditCurrentArgument = Group3Pnts3->LineEdit2; + Group3Pnts3->PushButton1->setDown(false); + Group3Pnts3->PushButton3->setDown(false); + Group3Pnts3->LineEdit1->setEnabled(false); + Group3Pnts3->LineEdit2->setEnabled(true); + Group3Pnts3->LineEdit3->setEnabled(false); + } + else if ( send == Group3Pnts3->PushButton3 ) { + myEditCurrentArgument = Group3Pnts3->LineEdit3; + Group3Pnts3->PushButton1->setDown(false); + Group3Pnts3->PushButton2->setDown(false); + Group3Pnts3->LineEdit1->setEnabled(false); + Group3Pnts3->LineEdit2->setEnabled(false); + Group3Pnts3->LineEdit3->setEnabled(true); + } + break; } myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); + // SelectionIntoArgument(); + send->setDown(true); + displayPreview(); +} + + +//================================================================================= +// function : LineEditReturnPressed() +// purpose : +//================================================================================= +void BasicGUI_ArcDlg::LineEditReturnPressed() +{ + QLineEdit* send = (QLineEdit*)sender(); + if ( send == Group3Pnts->LineEdit1 || send == Group3Pnts->LineEdit2 || send == Group3Pnts->LineEdit3 || + send == Group3Pnts2->LineEdit1 || send == Group3Pnts2->LineEdit2 || send == Group3Pnts2->LineEdit3 || + send == Group3Pnts3->LineEdit1 || send == Group3Pnts3->LineEdit2 || send == Group3Pnts3->LineEdit3 ) { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } } @@ -398,24 +490,24 @@ void BasicGUI_ArcDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged() ), + this, + SLOT(SelectionIntoArgument() ) ); ConstructorsClicked( getConstructorId() ); } - //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void BasicGUI_ArcDlg::enterEvent(QEvent* e) +void BasicGUI_ArcDlg::enterEvent( QEvent* ) { - if (!GroupConstructors->isEnabled()) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } - //================================================================================= // function : createOperation // purpose : @@ -440,6 +532,32 @@ static bool isEqual( const GEOM::GEOM_Object_var& thePnt1, const GEOM::GEOM_Obje //================================================================================= bool BasicGUI_ArcDlg::isValid( QString& msg ) { + switch (getConstructorId()) { + case 0: + { + if (Group3Pnts->LineEdit1->text().trimmed().isEmpty() || + Group3Pnts->LineEdit2->text().trimmed().isEmpty() || + Group3Pnts->LineEdit3->text().trimmed().isEmpty()) + return false; + break; + } + case 1: + { + if (Group3Pnts2->LineEdit1->text().trimmed().isEmpty() || + Group3Pnts2->LineEdit2->text().trimmed().isEmpty() || + Group3Pnts2->LineEdit3->text().trimmed().isEmpty()) + return false; + break; + } + case 2: + { + if (Group3Pnts3->LineEdit1->text().trimmed().isEmpty() || + Group3Pnts3->LineEdit2->text().trimmed().isEmpty() || + Group3Pnts3->LineEdit3->text().trimmed().isEmpty()) + return false; + break; + } + } return !myPoint1->_is_nil() && !myPoint2->_is_nil() && !myPoint3->_is_nil() && !isEqual( myPoint1, myPoint2 ) && !isEqual( myPoint1, myPoint3 ) && !isEqual( myPoint2, myPoint3 ); } @@ -453,42 +571,135 @@ bool BasicGUI_ArcDlg::execute( ObjectList& objects ) bool res = false; GEOM::GEOM_Object_var anObj; - switch (getConstructorId()) - { + switch ( getConstructorId() ) { case 0: { - if ( !CORBA::is_nil(myPoint1) && !CORBA::is_nil(myPoint2) &&!CORBA::is_nil(myPoint3) ) - { - anObj = GEOM::GEOM_ICurvesOperations::_narrow(getOperation())-> - MakeArc(myPoint1, myPoint2, myPoint3); - res = true; + if ( !CORBA::is_nil( myPoint1 ) && !CORBA::is_nil( myPoint2 ) && !CORBA::is_nil( myPoint3 ) ) { + anObj = GEOM::GEOM_ICurvesOperations::_narrow( getOperation() )->MakeArc( myPoint1, myPoint2, myPoint3 ); + res = true; } break; } case 1: { - bool Sense; - (Group3Pnts2->CheckButton1->isChecked()) ? Sense = true : Sense = false; - if ( !CORBA::is_nil(myPoint1) && !CORBA::is_nil(myPoint2) &&!CORBA::is_nil(myPoint3) ) - { - anObj = GEOM::GEOM_ICurvesOperations::_narrow(getOperation())-> - MakeArcCenter(myPoint1, myPoint2, myPoint3, Sense); - res = true; + bool Sense = Group3Pnts2->CheckButton1->isChecked(); + if ( !CORBA::is_nil( myPoint1 ) && !CORBA::is_nil( myPoint2 ) && !CORBA::is_nil( myPoint3 ) ) { + anObj = GEOM::GEOM_ICurvesOperations::_narrow( getOperation() )->MakeArcCenter( myPoint1, myPoint2, myPoint3, Sense ); + res = true; + } + break; + } + case 2: + { + if ( !CORBA::is_nil( myPoint1 ) && !CORBA::is_nil( myPoint2 ) && !CORBA::is_nil( myPoint3 ) ) { + anObj = GEOM::GEOM_ICurvesOperations::_narrow( getOperation() )->MakeArcOfEllipse( myPoint1, myPoint2, myPoint3 ); + res = true; } break; } } - if ( !anObj->_is_nil() ) + if ( !anObj->_is_nil() ) { objects.push_back( anObj._retn() ); - + } return res; } +//================================================================================= +// function : ConstructorsClicked() +// purpose : Radio button management +//================================================================================= +void BasicGUI_ArcDlg::ConstructorsClicked( int constructorId ) +{ + disconnect( myGeomGUI->getApp()->selectionMgr(), 0, this, 0 ); + + switch ( constructorId ) { + case 0: + { + globalSelection(); // close local contexts, if any + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); //Select Vertex on All Shapes + + Group3Pnts->show(); + Group3Pnts2->hide(); + Group3Pnts3->hide(); + Group3Pnts->PushButton1->setDown(true); + Group3Pnts->PushButton2->setDown(false); + Group3Pnts->PushButton3->setDown(false); + Group3Pnts->LineEdit1->setText( "" ); + Group3Pnts->LineEdit2->setText( "" ); + Group3Pnts->LineEdit3->setText( "" ); + Group3Pnts->LineEdit1->setEnabled(true); + Group3Pnts->LineEdit2->setEnabled(false); + Group3Pnts->LineEdit3->setEnabled(false); + myPoint1 = myPoint2 = myPoint3 = GEOM::GEOM_Object::_nil(); + + myEditCurrentArgument = Group3Pnts->LineEdit1; + break; + } + case 1: + { + globalSelection(); // close local contexts, if any + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); //Select Vertex on All Shapes + + Group3Pnts->hide(); + Group3Pnts2->show(); + Group3Pnts3->hide(); + Group3Pnts2->PushButton1->setDown(true); + Group3Pnts2->PushButton2->setDown(false); + Group3Pnts2->PushButton3->setDown(false); + Group3Pnts2->LineEdit1->setText( "" ); + Group3Pnts2->LineEdit2->setText( "" ); + Group3Pnts2->LineEdit3->setText( "" ); + Group3Pnts2->LineEdit1->setEnabled(true); + Group3Pnts2->LineEdit2->setEnabled(false); + Group3Pnts2->LineEdit3->setEnabled(false); + myPoint1 = myPoint2 = myPoint3 = GEOM::GEOM_Object::_nil(); + + myEditCurrentArgument = Group3Pnts2->LineEdit1; + break; + } + case 2: + { + globalSelection(); // close local contexts, if any + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); //Select Vertex on All Shapes + + Group3Pnts->hide(); + Group3Pnts2->hide(); + Group3Pnts3->show(); + Group3Pnts3->PushButton1->setDown(true); + Group3Pnts3->PushButton2->setDown(false); + Group3Pnts3->PushButton3->setDown(false); + Group3Pnts3->LineEdit1->setText( "" ); + Group3Pnts3->LineEdit2->setText( "" ); + Group3Pnts3->LineEdit3->setText( "" ); + Group3Pnts3->LineEdit1->setEnabled(true); + Group3Pnts3->LineEdit2->setEnabled(false); + Group3Pnts3->LineEdit3->setEnabled(false); + myPoint1 = myPoint2 = myPoint3 = GEOM::GEOM_Object::_nil(); + + myEditCurrentArgument = Group3Pnts3->LineEdit1; + break; + } + } + + qApp->processEvents(); + updateGeometry(); + resize( minimumSizeHint() ); + + myEditCurrentArgument->setFocus(); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + + if ( CORBA::is_nil( myPoint1 ) ) + SelectionIntoArgument(); + + displayPreview(); +} + //================================================================================= // function : ReverseSense() // purpose : Orientation of the arc //================================================================================= -void BasicGUI_ArcDlg::ReverseSense(int sense) +void BasicGUI_ArcDlg::ReverseSense() { displayPreview(); } @@ -501,8 +712,7 @@ void BasicGUI_ArcDlg::addSubshapesToStudy() { QMap objMap; -switch (getConstructorId()) - { + switch ( getConstructorId() ) { case 0: objMap[Group3Pnts->LineEdit1->text()] = myPoint1; objMap[Group3Pnts->LineEdit2->text()] = myPoint2; @@ -513,6 +723,11 @@ switch (getConstructorId()) objMap[Group3Pnts2->LineEdit2->text()] = myPoint2; objMap[Group3Pnts2->LineEdit3->text()] = myPoint3; break; + case 2: + objMap[Group3Pnts3->LineEdit1->text()] = myPoint1; + objMap[Group3Pnts3->LineEdit2->text()] = myPoint2; + objMap[Group3Pnts3->LineEdit3->text()] = myPoint3; + break; } - addSubshapesToFather( objMap ); + addSubshapesToFather( objMap ); } diff --git a/src/BasicGUI/BasicGUI_ArcDlg.h b/src/BasicGUI/BasicGUI_ArcDlg.h index fcead28cc..49828b720 100644 --- a/src/BasicGUI/BasicGUI_ArcDlg.h +++ b/src/BasicGUI/BasicGUI_ArcDlg.h @@ -1,78 +1,76 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_ArcDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : BasicGUI_ArcDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +#ifndef BASICGUI_ARCDLG_H +#define BASICGUI_ARCDLG_H -#ifndef DIALOGBOX_ARC_H -#define DIALOGBOX_ARC_H +#include -#include "GEOM_BasicGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_3Sel_QTD.h" -#include "DlgRef_3Sel1Check_QTD.h" +class DlgRef_3Sel; +class DlgRef_3Sel1Check; //================================================================================= // class : BasicGUI_ArcDlg // purpose : //================================================================================= -class GEOM_BASICGUI_EXPORT BasicGUI_ArcDlg : public GEOMBase_Skeleton +class BasicGUI_ArcDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BasicGUI_ArcDlg( GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0 ); - ~BasicGUI_ArcDlg(); + BasicGUI_ArcDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~BasicGUI_ArcDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); + +private: + void Init(); + void enterEvent( QEvent* ); private: - void Init(); - void enterEvent(QEvent* e); + GEOM::GEOM_Object_var myPoint1, myPoint2, myPoint3; - GEOM::GEOM_Object_var myPoint1, myPoint2, myPoint3; - - DlgRef_3Sel_QTD* Group3Pnts; - DlgRef_3Sel1Check_QTD* Group3Pnts2; + DlgRef_3Sel* Group3Pnts; + DlgRef_3Sel1Check* Group3Pnts2; + DlgRef_3Sel* Group3Pnts3; private slots: - void ClickOnOk(); - bool ClickOnApply(); - - void ActivateThisDialog(); - void ConstructorsClicked(int); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ReverseSense(int); + void ClickOnOk(); + bool ClickOnApply(); + + void ActivateThisDialog(); + void ConstructorsClicked( int ); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ReverseSense(); }; -#endif // DIALOGBOX_ARC_H +#endif // BASICGUI_ARCDLG_H diff --git a/src/BasicGUI/BasicGUI_CircleDlg.cxx b/src/BasicGUI/BasicGUI_CircleDlg.cxx index 450ffd984..3c1858203 100644 --- a/src/BasicGUI/BasicGUI_CircleDlg.cxx +++ b/src/BasicGUI/BasicGUI_CircleDlg.cxx @@ -1,121 +1,131 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_CircleDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : BasicGUI_CircleDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "BasicGUI_CircleDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include + +#include +#include + +#include +#include +#include +#include #include #include -#include - #include #include #include #include -//#include - -//#include "GEOMImpl_Types.hxx" -#include "utilities.h" - //================================================================================= // class : BasicGUI_CircleDlg() -// purpose : Constructs a BasicGUI_CircleDlg which is a child of 'parent', with the +// purpose : Constructs a BasicGUI_CircleDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BasicGUI_CircleDlg::BasicGUI_CircleDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BasicGUI_CircleDlg::BasicGUI_CircleDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_CIRCLE_PV"))); - QPixmap image2(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_CIRCLE_PNTS"))); - QPixmap image3(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_CIRCLE_C2P"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_CIRCLE_PV" ) ) ); + QPixmap image2( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_CIRCLE_PNTS" ) ) ); + QPixmap image3( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_CIRCLE_C2P" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_CIRCLE_TITLE")); + setWindowTitle( tr( "GEOM_CIRCLE_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_CIRCLE")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image2); - RadioButton3->setPixmap(image3); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_CIRCLE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setIcon( image2 ); + mainFrame()->RadioButton3->setIcon( image3 ); - GroupPntVecR = new DlgRef_2Sel1Spin(this, "GroupPntVecR"); - GroupPntVecR->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); - - GroupPntVecR->TextLabel1->setText(tr("GEOM_CENTER_POINT")); - GroupPntVecR->TextLabel2->setText(tr("GEOM_VECTOR")); - GroupPntVecR->TextLabel3->setText(tr("GEOM_RADIUS")); - GroupPntVecR->PushButton1->setPixmap(image1); - GroupPntVecR->PushButton2->setPixmap(image1); + GroupPntVecR = new DlgRef_2Sel1Spin( centralWidget() ); + GroupPntVecR->GroupBox1->setTitle( tr( "GEOM_ARGUMENTS" ) ); + + GroupPntVecR->TextLabel1->setText( tr( "GEOM_CENTER_POINT" ) + " (Origin by default)" ); + GroupPntVecR->TextLabel2->setText( tr( "GEOM_VECTOR" ) + " (Z axis by default)" ); + GroupPntVecR->TextLabel3->setText( tr( "GEOM_RADIUS" ) ); + GroupPntVecR->PushButton1->setIcon( image1 ); + GroupPntVecR->PushButton2->setIcon( image1 ); + GroupPntVecR->PushButton1->setDown( true ); GroupPntVecR->LineEdit1->setReadOnly( true ); GroupPntVecR->LineEdit2->setReadOnly( true ); - Group3Pnts = new DlgRef_3Sel_QTD(this, "Group3Pnts"); - Group3Pnts->GroupBox1->setTitle(tr("GEOM_3_POINTS")); - Group3Pnts->TextLabel1->setText(tr("GEOM_POINT1")); - Group3Pnts->TextLabel2->setText(tr("GEOM_POINT2")); - Group3Pnts->TextLabel3->setText(tr("GEOM_POINT3")); - Group3Pnts->PushButton1->setPixmap(image1); - Group3Pnts->PushButton2->setPixmap(image1); - Group3Pnts->PushButton3->setPixmap(image1); + GroupPntVecR->LineEdit1->setEnabled( true ); + GroupPntVecR->LineEdit2->setEnabled( false ); + + Group3Pnts = new DlgRef_3Sel( centralWidget() ); + + Group3Pnts->GroupBox1->setTitle( tr( "GEOM_3_POINTS" ) ); + Group3Pnts->TextLabel1->setText( tr( "GEOM_POINT1" ) ); + Group3Pnts->TextLabel2->setText( tr( "GEOM_POINT2" ) ); + Group3Pnts->TextLabel3->setText( tr( "GEOM_POINT3" ) ); + Group3Pnts->PushButton1->setIcon( image1 ); + Group3Pnts->PushButton2->setIcon( image1 ); + Group3Pnts->PushButton3->setIcon( image1 ); + Group3Pnts->PushButton1->setDown( true ); Group3Pnts->LineEdit1->setReadOnly( true ); Group3Pnts->LineEdit2->setReadOnly( true ); Group3Pnts->LineEdit3->setReadOnly( true ); + Group3Pnts->LineEdit1->setEnabled( true ); + Group3Pnts->LineEdit2->setEnabled( false ); + Group3Pnts->LineEdit3->setEnabled( false ); - GroupCenter2Pnts = new DlgRef_3Sel_QTD(this, "GroupCenter2Pnts"); - GroupCenter2Pnts->GroupBox1->setTitle(tr("GEOM_CENTER_2POINTS")); - GroupCenter2Pnts->TextLabel1->setText(tr("GEOM_CENTER_POINT")); - GroupCenter2Pnts->TextLabel2->setText(tr("GEOM_POINT1")); - GroupCenter2Pnts->TextLabel3->setText(tr("GEOM_POINT2")); - GroupCenter2Pnts->PushButton1->setPixmap(image1); - GroupCenter2Pnts->PushButton2->setPixmap(image1); - GroupCenter2Pnts->PushButton3->setPixmap(image1); + GroupCenter2Pnts = new DlgRef_3Sel( centralWidget() ); + GroupCenter2Pnts->GroupBox1->setTitle( tr( "GEOM_CENTER_2POINTS" ) ); + GroupCenter2Pnts->TextLabel1->setText( tr( "GEOM_CENTER_POINT" ) ); + GroupCenter2Pnts->TextLabel2->setText( tr( "GEOM_POINT1" ) ); + GroupCenter2Pnts->TextLabel3->setText( tr( "GEOM_POINT2" ) ); + GroupCenter2Pnts->PushButton1->setIcon( image1 ); + GroupCenter2Pnts->PushButton2->setIcon( image1 ); + GroupCenter2Pnts->PushButton3->setIcon( image1 ); + GroupCenter2Pnts->PushButton1->setDown( true ); GroupCenter2Pnts->LineEdit1->setReadOnly( true ); GroupCenter2Pnts->LineEdit2->setReadOnly( true ); GroupCenter2Pnts->LineEdit3->setReadOnly( true ); - Layout1->addWidget( GroupPntVecR, 2, 0 ); - Layout1->addWidget( Group3Pnts, 2, 0 ); - Layout1->addWidget( GroupCenter2Pnts, 2, 0 ); + GroupCenter2Pnts->LineEdit1->setEnabled( true ); + GroupCenter2Pnts->LineEdit2->setEnabled( false ); + GroupCenter2Pnts->LineEdit3->setEnabled( false ); + + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPntVecR ); + layout->addWidget( Group3Pnts ); + layout->addWidget( GroupCenter2Pnts ); /***************************************************************/ - setHelpFileName("create_circle_page.html"); + setHelpFileName( "create_circle_page.html" ); Init(); } @@ -145,105 +155,130 @@ void BasicGUI_CircleDlg::Init() /* Get setting of step value from file configuration */ SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - double aStep = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100); + double aStep = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100 ); /* min, max, step and decimals for spin boxes & initial values */ - GroupPntVecR->SpinBox_DX->RangeStepAndValidator(0.001, COORD_MAX, aStep, DBL_DIGITS_DISPLAY); - GroupPntVecR->SpinBox_DX->SetValue( 100 ); + initSpinBox( GroupPntVecR->SpinBox_DX, 0.000001, COORD_MAX, aStep, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + GroupPntVecR->SpinBox_DX->setValue( 100 ); /* signals and slots connections */ - connect(buttonCancel, SIGNAL(clicked()), this, SLOT(ClickOnCancel())); - connect(myGeomGUI, SIGNAL(SignalDeactivateActiveDialog()), this, SLOT(DeactivateActiveDialog())); - connect(myGeomGUI, SIGNAL(SignalCloseAllDialogs()), this, SLOT(ClickOnCancel())); + connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), this, SLOT( DeactivateActiveDialog() ) ); + connect( myGeomGUI, SIGNAL( SignalCloseAllDialogs() ), this, SLOT( ClickOnCancel() ) ); + + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); - connect(GroupPntVecR->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPntVecR->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(Group3Pnts->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(Group3Pnts->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(Group3Pnts->PushButton3, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect( GroupPntVecR->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPntVecR->PushButton2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group3Pnts->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group3Pnts->PushButton2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group3Pnts->PushButton3, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect(GroupCenter2Pnts->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupCenter2Pnts->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupCenter2Pnts->PushButton3, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect( GroupCenter2Pnts->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupCenter2Pnts->PushButton2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupCenter2Pnts->PushButton3, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect(GroupPntVecR->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPntVecR->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( GroupPntVecR->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( GroupPntVecR->LineEdit2, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect(GroupPntVecR->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupPntVecR->SpinBox_DX, SLOT(SetStep(double))); + connect( GroupPntVecR->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT(ValueChangedInSpinBox() ) ); + connect( myGeomGUI, SIGNAL( SignalDefaultStepValueChanged( double ) ), this, SLOT( SetDoubleSpinBoxStep( double ) ) ); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); initName( tr( "GEOM_CIRCLE" ) ); - Group3Pnts->hide(); - GroupCenter2Pnts->hide(); ConstructorsClicked( 0 ); } +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void BasicGUI_CircleDlg::SetDoubleSpinBoxStep( double step ) +{ + GroupPntVecR->SpinBox_DX->setSingleStep(step); +} + //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= void BasicGUI_CircleDlg::ConstructorsClicked( int constructorId ) { - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + disconnect( myGeomGUI->getApp()->selectionMgr(), 0, this, 0); - disconnect(aSelMgr, 0, this, 0); myPoint = myDir = myPoint1 = myPoint2 = myPoint3 = GEOM::GEOM_Object::_nil(); - switch (constructorId) - { + switch ( constructorId ) { case 0: { Group3Pnts->hide(); GroupCenter2Pnts->hide(); - resize(0, 0); GroupPntVecR->show(); myEditCurrentArgument = GroupPntVecR->LineEdit1; - GroupPntVecR->LineEdit1->setText(""); - GroupPntVecR->LineEdit2->setText(""); + GroupPntVecR->LineEdit1->setText( "" ); + GroupPntVecR->LineEdit2->setText( "" ); + GroupPntVecR->PushButton1->setDown( true ); + GroupPntVecR->PushButton2->setDown( false ); + GroupPntVecR->LineEdit1->setEnabled( true ); + GroupPntVecR->LineEdit2->setEnabled( false ); break; } case 1: { GroupPntVecR->hide(); GroupCenter2Pnts->hide(); - resize( 0, 0 ); Group3Pnts->show(); myEditCurrentArgument = Group3Pnts->LineEdit1; - Group3Pnts->LineEdit1->setText(""); - Group3Pnts->LineEdit2->setText(""); - Group3Pnts->LineEdit3->setText(""); + Group3Pnts->LineEdit1->setText( "" ); + Group3Pnts->LineEdit2->setText( "" ); + Group3Pnts->LineEdit3->setText( "" ); + Group3Pnts->PushButton1->setDown( true ); + Group3Pnts->PushButton2->setDown( false ); + Group3Pnts->PushButton3->setDown( false ); + Group3Pnts->LineEdit1->setEnabled( true ); + Group3Pnts->LineEdit2->setEnabled( false ); + Group3Pnts->LineEdit3->setEnabled( false ); break; } case 2: { GroupPntVecR->hide(); Group3Pnts->hide(); - resize( 0, 0 ); GroupCenter2Pnts->show(); myEditCurrentArgument = GroupCenter2Pnts->LineEdit1; - GroupCenter2Pnts->LineEdit1->setText(""); - GroupCenter2Pnts->LineEdit2->setText(""); - GroupCenter2Pnts->LineEdit3->setText(""); + GroupCenter2Pnts->LineEdit1->setText( "" ); + GroupCenter2Pnts->LineEdit2->setText( "" ); + GroupCenter2Pnts->LineEdit3->setText( "" ); + GroupCenter2Pnts->PushButton1->setDown( true ); + GroupCenter2Pnts->PushButton2->setDown( false ); + GroupCenter2Pnts->PushButton3->setDown( false ); + GroupCenter2Pnts->LineEdit1->setEnabled( true ); + GroupCenter2Pnts->LineEdit2->setEnabled( false ); + GroupCenter2Pnts->LineEdit3->setEnabled( false ); break; } } + + qApp->processEvents(); + updateGeometry(); + resize( minimumSizeHint() ); myEditCurrentArgument->setFocus(); globalSelection(); // close local contexts, if any - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); - connect(aSelMgr, SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + + displayPreview(); } //================================================================================= @@ -266,41 +301,31 @@ bool BasicGUI_CircleDlg::ClickOnApply() return false; initName(); - ConstructorsClicked(getConstructorId()); + ConstructorsClicked( getConstructorId() ); return true; } -//================================================================================= -// function : ClickOnCancel() -// purpose : -//================================================================================= -void BasicGUI_CircleDlg::ClickOnCancel() -{ - GEOMBase_Skeleton::ClickOnCancel(); -} - //================================================================================= // function : SelectionIntoArgument() // purpose : Called when selection as changed or other case //================================================================================= void BasicGUI_CircleDlg::SelectionIntoArgument() { - myEditCurrentArgument->setText(""); - + myEditCurrentArgument->setText( "" ); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); SALOME_ListIO aList; - aSelMgr->selectedObjects(aList); + aSelMgr->selectedObjects( aList ); - if (aList.Extent() != 1) - { - if (myEditCurrentArgument == GroupPntVecR->LineEdit1) myPoint = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == GroupPntVecR->LineEdit2) myDir = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == Group3Pnts->LineEdit1) myPoint1 = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == Group3Pnts->LineEdit2) myPoint2 = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == Group3Pnts->LineEdit3) myPoint3 = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == GroupCenter2Pnts->LineEdit1) myPoint4 = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == GroupCenter2Pnts->LineEdit2) myPoint5 = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == GroupCenter2Pnts->LineEdit3) myPoint6 = GEOM::GEOM_Object::_nil(); + if ( aList.Extent() != 1 ) { + if ( myEditCurrentArgument == GroupPntVecR->LineEdit1 ) myPoint = GEOM::GEOM_Object::_nil(); + else if ( myEditCurrentArgument == GroupPntVecR->LineEdit2 ) myDir = GEOM::GEOM_Object::_nil(); + else if ( myEditCurrentArgument == Group3Pnts->LineEdit1 ) myPoint1 = GEOM::GEOM_Object::_nil(); + else if ( myEditCurrentArgument == Group3Pnts->LineEdit2 ) myPoint2 = GEOM::GEOM_Object::_nil(); + else if ( myEditCurrentArgument == Group3Pnts->LineEdit3 ) myPoint3 = GEOM::GEOM_Object::_nil(); + else if ( myEditCurrentArgument == GroupCenter2Pnts->LineEdit1 ) myPoint4 = GEOM::GEOM_Object::_nil(); + else if ( myEditCurrentArgument == GroupCenter2Pnts->LineEdit2 ) myPoint5 = GEOM::GEOM_Object::_nil(); + else if ( myEditCurrentArgument == GroupCenter2Pnts->LineEdit3 ) myPoint6 = GEOM::GEOM_Object::_nil(); return; } @@ -309,58 +334,93 @@ void BasicGUI_CircleDlg::SelectionIntoArgument() Standard_Boolean aRes = Standard_False; GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(anIO, aRes); - if (!CORBA::is_nil(aSelectedObject) && aRes) - { - QString aName = GEOMBase::GetName(aSelectedObject); + if ( !CORBA::is_nil( aSelectedObject ) && aRes ) { + QString aName = GEOMBase::GetName( aSelectedObject ); + + TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; + if ( myEditCurrentArgument == GroupPntVecR->LineEdit2 ) + aNeedType = TopAbs_EDGE; // If selected Vertex or Edge on the some Shape Get selection Subshape TopoDS_Shape aShape; - if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) - { - TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; - if (myEditCurrentArgument == GroupPntVecR->LineEdit2) - aNeedType = TopAbs_EDGE; - + if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) { TColStd_IndexedMapOfInteger aMap; aSelMgr->GetIndexes(anIO, aMap); - if (aMap.Extent() == 1) // Local Selection - { + if ( aMap.Extent() == 1 ) { // Local Selection int anIndex = aMap(1); - if (aNeedType == TopAbs_EDGE) - aName += QString(":edge_%1").arg(anIndex); + if ( aNeedType == TopAbs_EDGE ) + aName += QString( ":edge_%1" ).arg( anIndex ); else - aName += QString(":vertex_%1").arg(anIndex); + aName += QString( ":vertex_%1" ).arg( anIndex ); //Find SubShape Object in Father - GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); + GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather( aSelectedObject, aName ); if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId()); - aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); + aSelectedObject = aShapesOp->GetSubShape( aSelectedObject, anIndex ); } - else + else { aSelectedObject = aFindedObject; // get Object from study + } } - else // Global Selection - { - if (aShape.ShapeType() != aNeedType) { + else { // Global Selection + if ( aShape.ShapeType() != aNeedType ) { aSelectedObject = GEOM::GEOM_Object::_nil(); aName = ""; } } } + + myEditCurrentArgument->setText( aName ); - myEditCurrentArgument->setText(aName); + if (!aSelectedObject->_is_nil()) { // clear selection if something selected + globalSelection(); + localSelection( GEOM::GEOM_Object::_nil(), aNeedType ); + } - if (myEditCurrentArgument == GroupPntVecR->LineEdit1) myPoint = aSelectedObject; - else if (myEditCurrentArgument == GroupPntVecR->LineEdit2) myDir = aSelectedObject; - else if (myEditCurrentArgument == Group3Pnts->LineEdit1) myPoint1 = aSelectedObject; - else if (myEditCurrentArgument == Group3Pnts->LineEdit2) myPoint2 = aSelectedObject; - else if (myEditCurrentArgument == Group3Pnts->LineEdit3) myPoint3 = aSelectedObject; - else if (myEditCurrentArgument == GroupCenter2Pnts->LineEdit1) myPoint4 = aSelectedObject; - else if (myEditCurrentArgument == GroupCenter2Pnts->LineEdit2) myPoint5 = aSelectedObject; - else if (myEditCurrentArgument == GroupCenter2Pnts->LineEdit3) myPoint6 = aSelectedObject; + if ( myEditCurrentArgument == GroupPntVecR->LineEdit1 ) { + myPoint = aSelectedObject; + if ( !myPoint->_is_nil() && myDir->_is_nil() ) + GroupPntVecR->PushButton2->click(); + } + else if ( myEditCurrentArgument == GroupPntVecR->LineEdit2 ) { + myDir = aSelectedObject; + if ( !myDir->_is_nil() && myPoint->_is_nil() ) + GroupPntVecR->PushButton1->click(); + } + else if ( myEditCurrentArgument == Group3Pnts->LineEdit1 ) { + myPoint1 = aSelectedObject; + if ( !myPoint1->_is_nil() && myPoint2->_is_nil() ) + Group3Pnts->PushButton2->click(); + } + else if ( myEditCurrentArgument == Group3Pnts->LineEdit2 ) { + myPoint2 = aSelectedObject; + if ( !myPoint2->_is_nil() && myPoint3->_is_nil() ) + Group3Pnts->PushButton3->click(); + } + else if ( myEditCurrentArgument == Group3Pnts->LineEdit3 ) { + myPoint3 = aSelectedObject; + if ( !myPoint3->_is_nil() && myPoint1->_is_nil() ) + Group3Pnts->PushButton1->click(); + } + else if ( myEditCurrentArgument == GroupCenter2Pnts->LineEdit1 ) { + myPoint4 = aSelectedObject; + if ( !myPoint4->_is_nil() && myPoint5->_is_nil() ) + GroupCenter2Pnts->PushButton2->click(); + } + else if ( myEditCurrentArgument == GroupCenter2Pnts->LineEdit2 ) { + myPoint5 = aSelectedObject; + if ( !myPoint5->_is_nil() && myPoint6->_is_nil() ) + GroupCenter2Pnts->PushButton3->click(); + } + else if ( myEditCurrentArgument == GroupCenter2Pnts->LineEdit3 ) { + myPoint6 = aSelectedObject; + if ( !myPoint6->_is_nil() && myPoint4->_is_nil() ) + GroupCenter2Pnts->PushButton1->click(); + } } + displayPreview(); } @@ -373,26 +433,84 @@ void BasicGUI_CircleDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if ( send == GroupPntVecR->PushButton1 ) myEditCurrentArgument = GroupPntVecR->LineEdit1; - else if ( send == GroupPntVecR->PushButton2 ) myEditCurrentArgument = GroupPntVecR->LineEdit2; - else if ( send == Group3Pnts->PushButton1 ) myEditCurrentArgument = Group3Pnts->LineEdit1; - else if ( send == Group3Pnts->PushButton2 ) myEditCurrentArgument = Group3Pnts->LineEdit2; - else if ( send == Group3Pnts->PushButton3 ) myEditCurrentArgument = Group3Pnts->LineEdit3; - else if ( send == GroupCenter2Pnts->PushButton1 ) myEditCurrentArgument = GroupCenter2Pnts->LineEdit1; - else if ( send == GroupCenter2Pnts->PushButton2 ) myEditCurrentArgument = GroupCenter2Pnts->LineEdit2; - else if ( send == GroupCenter2Pnts->PushButton3 ) myEditCurrentArgument = GroupCenter2Pnts->LineEdit3; + if ( send == GroupPntVecR->PushButton1 ) { + myEditCurrentArgument = GroupPntVecR->LineEdit1; + GroupPntVecR->PushButton2->setDown(false); + GroupPntVecR->LineEdit1->setEnabled( true ); + GroupPntVecR->LineEdit2->setEnabled( false ); + } + else if ( send == GroupPntVecR->PushButton2 ) { + myEditCurrentArgument = GroupPntVecR->LineEdit2; + GroupPntVecR->PushButton1->setDown(false); + GroupPntVecR->LineEdit1->setEnabled( false ); + GroupPntVecR->LineEdit2->setEnabled( true ); + } + else if ( send == Group3Pnts->PushButton1 ) { + myEditCurrentArgument = Group3Pnts->LineEdit1; + Group3Pnts->PushButton2->setDown( false ); + Group3Pnts->PushButton3->setDown( false ); + Group3Pnts->LineEdit1->setEnabled( true ); + Group3Pnts->LineEdit2->setEnabled( false ); + Group3Pnts->LineEdit3->setEnabled( false ); + } + else if ( send == Group3Pnts->PushButton2 ) { + myEditCurrentArgument = Group3Pnts->LineEdit2; + Group3Pnts->PushButton1->setDown( false ); + Group3Pnts->PushButton3->setDown( false ); + Group3Pnts->LineEdit1->setEnabled( false ); + Group3Pnts->LineEdit2->setEnabled( true ); + Group3Pnts->LineEdit3->setEnabled( false ); + } + else if ( send == Group3Pnts->PushButton3 ) { + myEditCurrentArgument = Group3Pnts->LineEdit3; + Group3Pnts->PushButton1->setDown( false ); + Group3Pnts->PushButton2->setDown( false ); + Group3Pnts->LineEdit1->setEnabled( false ); + Group3Pnts->LineEdit2->setEnabled( false ); + Group3Pnts->LineEdit3->setEnabled( true ); + } + else if ( send == GroupCenter2Pnts->PushButton1 ) { + myEditCurrentArgument = GroupCenter2Pnts->LineEdit1; + GroupCenter2Pnts->PushButton2->setDown( false ); + GroupCenter2Pnts->PushButton3->setDown( false ); + GroupCenter2Pnts->LineEdit1->setEnabled( true ); + GroupCenter2Pnts->LineEdit2->setEnabled( false ); + GroupCenter2Pnts->LineEdit3->setEnabled( false ); + } + else if ( send == GroupCenter2Pnts->PushButton2 ) { + myEditCurrentArgument = GroupCenter2Pnts->LineEdit2; + GroupCenter2Pnts->PushButton1->setDown( false ); + GroupCenter2Pnts->PushButton3->setDown( false ); + GroupCenter2Pnts->LineEdit1->setEnabled( false ); + GroupCenter2Pnts->LineEdit2->setEnabled( true ); + GroupCenter2Pnts->LineEdit3->setEnabled( false ); + + } + else if ( send == GroupCenter2Pnts->PushButton3 ) { + myEditCurrentArgument = GroupCenter2Pnts->LineEdit3; + GroupCenter2Pnts->PushButton1->setDown( false ); + GroupCenter2Pnts->PushButton2->setDown( false ); + GroupCenter2Pnts->LineEdit1->setEnabled( false ); + GroupCenter2Pnts->LineEdit2->setEnabled( false ); + GroupCenter2Pnts->LineEdit3->setEnabled( true ); + } + myEditCurrentArgument->setFocus(); - if (myEditCurrentArgument == GroupPntVecR->LineEdit2) { + if ( myEditCurrentArgument == GroupPntVecR->LineEdit2 ) { globalSelection(); // close local contexts, if any - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); } else { globalSelection(); // close local contexts, if any - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); } - SelectionIntoArgument(); + + myEditCurrentArgument->setFocus(); + // SelectionIntoArgument(); + send->setDown(true); + displayPreview(); } //================================================================================= @@ -409,13 +527,13 @@ void BasicGUI_CircleDlg::LineEditReturnPressed() send == Group3Pnts->LineEdit3 || send == GroupCenter2Pnts->LineEdit1 || send == GroupCenter2Pnts->LineEdit2 || - send == GroupCenter2Pnts->LineEdit3 ) - { + send == GroupCenter2Pnts->LineEdit3 ) { myEditCurrentArgument = send; GEOMBase_Skeleton::LineEditReturnPressed(); } } + //================================================================================= // function : ActivateThisDialog() // purpose : @@ -423,19 +541,21 @@ void BasicGUI_CircleDlg::LineEditReturnPressed() void BasicGUI_CircleDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); + + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); ConstructorsClicked( getConstructorId() ); } + //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void BasicGUI_CircleDlg::enterEvent(QEvent* e) +void BasicGUI_CircleDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } @@ -464,12 +584,12 @@ void BasicGUI_CircleDlg::ValueChangedInSpinBox() //================================================================================= double BasicGUI_CircleDlg::getRadius() const { - switch (getConstructorId()) - { + double r = 0.; + switch ( getConstructorId() ) { case 0: - return GroupPntVecR->SpinBox_DX->GetValue(); + r = GroupPntVecR->SpinBox_DX->value(); break; } - return 0.; + return r; } //================================================================================= @@ -494,16 +614,21 @@ static bool isEqual( const GEOM::GEOM_Object_var& thePnt1, const GEOM::GEOM_Obje // function : isValid // purpose : //================================================================================= -bool BasicGUI_CircleDlg::isValid(QString& msg) +bool BasicGUI_CircleDlg::isValid( QString& msg ) { const int id = getConstructorId(); - if ( id == 0 ) - return !myPoint->_is_nil() && !myDir->_is_nil() && getRadius() > 0; + if ( id == 0 ) { + //return !myPoint->_is_nil() && !myDir->_is_nil() && getRadius() > 0; + //nil point means origin of global CS + //nil vector means Z axis + bool ok = GroupPntVecR->SpinBox_DX->isValid(msg, !IsPreview()); + return getRadius() > 0 && ok; + } else if ( id == 1 ) return !myPoint1->_is_nil() && !myPoint2->_is_nil() && !myPoint3->_is_nil() && !isEqual( myPoint1, myPoint2 ) && !isEqual( myPoint1, myPoint3 ) && !isEqual( myPoint2, myPoint3 ); else if ( id == 2 ) - return !myPoint4->_is_nil() && !myPoint5->_is_nil() && !myPoint6->_is_nil() && + return !myPoint4->_is_nil() && !myPoint5->_is_nil() && !myPoint6->_is_nil() && !isEqual( myPoint4, myPoint5 ) && !isEqual( myPoint5, myPoint6 ) && !isEqual( myPoint4, myPoint6 ); return false; } @@ -512,49 +637,42 @@ bool BasicGUI_CircleDlg::isValid(QString& msg) // function : execute // purpose : //================================================================================= -bool BasicGUI_CircleDlg::execute(ObjectList& objects) +bool BasicGUI_CircleDlg::execute( ObjectList& objects ) { bool res = false; - + GEOM::GEOM_Object_var anObj; - - switch (getConstructorId()) - { - case 0: - anObj = GEOM::GEOM_ICurvesOperations::_narrow(getOperation())-> - MakeCirclePntVecR(myPoint, myDir, getRadius()); - res = true; - break; - case 1: - anObj = GEOM::GEOM_ICurvesOperations::_narrow(getOperation())-> - MakeCircleThreePnt(myPoint1, myPoint2, myPoint3); + + switch ( getConstructorId() ) { + case 0 : + { + QStringList aParameters; + aParameters << GroupPntVecR->SpinBox_DX->text(); + anObj = GEOM::GEOM_ICurvesOperations::_narrow( getOperation() )->MakeCirclePntVecR( myPoint, myDir, getRadius() ); + if ( !anObj->_is_nil() && !IsPreview() ) + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + res = true; + break; + } + case 1 : + anObj = GEOM::GEOM_ICurvesOperations::_narrow( getOperation() )->MakeCircleThreePnt( myPoint1, myPoint2, myPoint3 ); res = true; break; case 2: - anObj = GEOM::GEOM_ICurvesOperations::_narrow(getOperation())-> - MakeCircleCenter2Pnt(myPoint4, myPoint5, myPoint6); + anObj = GEOM::GEOM_ICurvesOperations::_narrow( getOperation() )->MakeCircleCenter2Pnt( myPoint4, myPoint5, myPoint6 ); res = true; break; } - - if (!anObj->_is_nil()) - objects.push_back(anObj._retn()); + + if ( !anObj->_is_nil() ) + objects.push_back( anObj._retn() ); else { - MESSAGE("Execute Object is NULL!"); + MESSAGE( "Execute Object is NULL!" ); } - + return res; } -//================================================================================= -// function : closeEvent -// purpose : -//================================================================================= -void BasicGUI_CircleDlg::closeEvent (QCloseEvent* e) -{ - GEOMBase_Skeleton::closeEvent(e); -} - //================================================================================= // function : addSubshapeToStudy // purpose : virtual method to add new SubObjects if local selection @@ -563,11 +681,12 @@ void BasicGUI_CircleDlg::addSubshapesToStudy() { QMap objMap; -switch (getConstructorId()) - { + switch ( getConstructorId() ) { case 0: - objMap[GroupPntVecR->LineEdit1->text()] = myPoint; - objMap[GroupPntVecR->LineEdit2->text()] = myDir; + if (!CORBA::is_nil(myPoint)) + objMap[GroupPntVecR->LineEdit1->text()] = myPoint; + if (!CORBA::is_nil(myDir)) + objMap[GroupPntVecR->LineEdit2->text()] = myDir; break; case 1: objMap[Group3Pnts->LineEdit1->text()] = myPoint1; @@ -580,5 +699,5 @@ switch (getConstructorId()) objMap[GroupCenter2Pnts->LineEdit3->text()] = myPoint6; break; } - addSubshapesToFather( objMap ); + addSubshapesToFather( objMap ); } diff --git a/src/BasicGUI/BasicGUI_CircleDlg.h b/src/BasicGUI/BasicGUI_CircleDlg.h index cbe68d98b..b1574fd6d 100644 --- a/src/BasicGUI/BasicGUI_CircleDlg.h +++ b/src/BasicGUI/BasicGUI_CircleDlg.h @@ -1,88 +1,82 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : BasicGUI_CircleDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_CircleDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef BASICGUI_CIRCLEDLG_H +#define BASICGUI_CIRCLEDLG_H -#ifndef DIALOGBOX_CIRCLE_H -#define DIALOGBOX_CIRCLE_H +#include -#include "GEOM_BasicGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel1Spin.h" -#include "DlgRef_3Sel_QTD.h" - -#include "BasicGUI.h" +class DlgRef_3Sel; +class DlgRef_2Sel1Spin; //================================================================================= // class : BasicGUI_CircleDlg // purpose : //================================================================================= -class GEOM_BASICGUI_EXPORT BasicGUI_CircleDlg : public GEOMBase_Skeleton +class BasicGUI_CircleDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BasicGUI_CircleDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~BasicGUI_CircleDlg(); + BasicGUI_CircleDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~BasicGUI_CircleDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void closeEvent( QCloseEvent* e ); - virtual void addSubshapesToStudy(); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + + virtual void addSubshapesToStudy(); + +private: + void Init(); + void enterEvent( QEvent* ); + double getRadius() const; private: - void Init(); - void enterEvent(QEvent* e); - double getRadius() const; + GEOM::GEOM_Object_var myPoint, myDir, myPoint1, myPoint2, myPoint3, myPoint4, myPoint5, myPoint6; - GEOM::GEOM_Object_var myPoint, myDir, myPoint1, myPoint2, myPoint3, myPoint4, myPoint5, myPoint6; - CORBA::Double myRadius; - - DlgRef_2Sel1Spin* GroupPntVecR; - DlgRef_3Sel_QTD* Group3Pnts; - DlgRef_3Sel_QTD* GroupCenter2Pnts; + DlgRef_2Sel1Spin* GroupPntVecR; + DlgRef_3Sel* Group3Pnts; + DlgRef_3Sel* GroupCenter2Pnts; private slots: - void ClickOnOk(); - void ClickOnCancel(); - bool ClickOnApply(); + void ClickOnOk(); + bool ClickOnApply(); - void ActivateThisDialog(); - void DeactivateActiveDialog(); + void ActivateThisDialog(); + void DeactivateActiveDialog(); - void SelectionIntoArgument(); + void SelectionIntoArgument(); - void ConstructorsClicked( int ); - void LineEditReturnPressed(); - void SetEditCurrentArgument(); - void ValueChangedInSpinBox(); + void ConstructorsClicked( int ); + void LineEditReturnPressed(); + void SetEditCurrentArgument(); + void ValueChangedInSpinBox(); + void SetDoubleSpinBoxStep( double ); }; -#endif // DIALOGBOX_CIRCLE_H +#endif // BASICGUI_CIRCLEDLG_H diff --git a/src/BasicGUI/BasicGUI_CurveDlg.cxx b/src/BasicGUI/BasicGUI_CurveDlg.cxx index 49d8bf5cc..05a7baf26 100644 --- a/src/BasicGUI/BasicGUI_CurveDlg.cxx +++ b/src/BasicGUI/BasicGUI_CurveDlg.cxx @@ -1,44 +1,42 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 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 // +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_CurveDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : BasicGUI_CurveDlg.cxx -// Author : Nicolas REJNERI -// Module : GEOM -// $Header$ - #include "BasicGUI_CurveDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "SalomeApp_Study.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include -#include +#include +#include +#include +#include +#include -#include "utilities.h" - -#include "SALOME_ListIteratorOfListIO.hxx" -#include "SALOME_ListIO.hxx" +#include +#include #include #include @@ -46,10 +44,7 @@ #include #include -#include "GEOMImpl_Types.hxx" - -using namespace std; -#include +#include //================================================================================= // class : BasicGUI_CurveDlg() @@ -58,35 +53,37 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BasicGUI_CurveDlg::BasicGUI_CurveDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BasicGUI_CurveDlg::BasicGUI_CurveDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_POLYLINE"))); - QPixmap image2(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_SPLINE"))); - QPixmap image3(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_BEZIER"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_POLYLINE" ) ) ); + QPixmap image2( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_SPLINE" ) ) ); + QPixmap image3( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_BEZIER" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); - - setCaption(tr("GEOM_CURVE_TITLE")); + setWindowTitle( tr( "GEOM_CURVE_TITLE" ) ); /***************************************************************/ - RadioButton1->setPixmap( image0 ); - RadioButton2->setPixmap( image3 ); - RadioButton3->setPixmap( image2 ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setIcon( image3 ); + mainFrame()->RadioButton3->setIcon( image2 ); + + GroupPoints = new DlgRef_1Sel( centralWidget() ); - GroupPoints = new DlgRef_1Sel_QTD( this, "GroupPoints" ); GroupPoints->GroupBox1->setTitle( tr( "GEOM_NODES" ) ); - GroupPoints->TextLabel1->setText( tr("GEOM_POINTS") ); - GroupPoints->PushButton1->setPixmap(image1); + GroupPoints->TextLabel1->setText( tr( "GEOM_POINTS" ) ); + GroupPoints->PushButton1->setIcon( image1 ); + GroupPoints->PushButton1->setDown( true ); GroupPoints->LineEdit1->setReadOnly( true ); - Layout1->addWidget(GroupPoints, 2, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); /***************************************************************/ - setHelpFileName("create_curve_page.html"); + setHelpFileName( "create_curve_page.html" ); Init(); } @@ -114,23 +111,23 @@ void BasicGUI_CurveDlg::Init() myPoints->length( 0 ); globalSelection(); // close local contexts, if any - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); /* signals and slots connections */ - connect(buttonCancel, SIGNAL(clicked()), this, SLOT(ClickOnCancel())); - connect(myGeomGUI, SIGNAL(SignalDeactivateActiveDialog()), this, SLOT(DeactivateActiveDialog())); - connect(myGeomGUI, SIGNAL(SignalCloseAllDialogs()), this, SLOT(ClickOnCancel())); + connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), this, SLOT( DeactivateActiveDialog( ) ) ); + connect( myGeomGUI, SIGNAL( SignalCloseAllDialogs() ), this, SLOT( ClickOnCancel() ) ); - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPoints->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( myGeomGUI->getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ) ; + initName( tr( "GEOM_CURVE" ) ); ConstructorsClicked( 0 ); } @@ -142,12 +139,12 @@ void BasicGUI_CurveDlg::Init() void BasicGUI_CurveDlg::ConstructorsClicked( int id ) { QString aTitle = tr( id == 0 ? "GEOM_POLYLINE" : id == 1 ? "GEOM_BEZIER" : "GEOM_INTERPOL" ); - GroupConstructors->setTitle( aTitle ); + mainFrame()->GroupConstructors->setTitle( aTitle ); - myPoints = new GEOM::ListOfGO(); + myPoints = new GEOM::ListOfGO(); myPoints->length( 0 ); - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); } @@ -197,21 +194,11 @@ bool BasicGUI_CurveDlg::ClickOnApply() return false; initName(); - ConstructorsClicked( getConstructorId() ); globalSelection(); // close local contexts, if any - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); return true; } -//======================================================================= -// function : ClickOnCancel() -// purpose : -//======================================================================= -void BasicGUI_CurveDlg::ClickOnCancel() -{ - GEOMBase_Skeleton::ClickOnCancel(); -} - //================================================================================= /*! function : isPointInList() * purpose : Check is point (theObject) in the list \a thePoints. @@ -219,23 +206,23 @@ void BasicGUI_CurveDlg::ClickOnCancel() * \retval -1, if point not in list, else 1 in list */ //================================================================================= -static int isPointInList(list& thePoints, - GEOM::GEOM_Object_var& theObject) +static int isPointInList( std::list& thePoints, + GEOM::GEOM_Object_var& theObject ) { int len = thePoints.size(); - if(len<1){ + if ( len < 1 ) { return -1; } - for(list::iterator i=thePoints.begin();i!=thePoints.end();i++) - if (string((*i)->GetEntry()) == string(theObject->GetEntry())){ + for ( std::list::iterator i = thePoints.begin(); i != thePoints.end(); i++ ) { + if ( std::string( (*i)->GetEntry() ) == std::string( theObject->GetEntry() ) ) { return 1; } + } return -1; } - //================================================================================= /*! function : removeUnnecessaryPnt() * purpose : Remove unnecessary points from list \a theOldPoints @@ -244,24 +231,24 @@ static int isPointInList(list& thePoints, * \li \a theNewPoints - not ordered sequence with necessary points */ //================================================================================= -static void removeUnnecessaryPnt(list& theOldPoints, - GEOM::ListOfGO_var& theNewPoints) +static void removeUnnecessaryPnt( std::list& theOldPoints, + GEOM::ListOfGO_var& theNewPoints ) { - list objs_to_remove; - for(list::iterator i=theOldPoints.begin();i!=theOldPoints.end();i++){ + std::list objs_to_remove; + for ( std::list::iterator i = theOldPoints.begin(); i != theOldPoints.end(); i++ ) { bool found = false; - for (int j=0;jlength() && !found ; j++){ - if(string((*i)->GetEntry()) == string(theNewPoints[j]->GetEntry())){ + for ( int j = 0; j < theNewPoints->length() && !found ; j++ ) { + if ( std::string( (*i)->GetEntry() ) == std::string( theNewPoints[j]->GetEntry() ) ) { found = true; } } - if(!found){ - objs_to_remove.push_back(*i); + if ( !found ) { + objs_to_remove.push_back( *i ); //cout << "removed: " << (*i)->GetEntry() << endl; } } - for(list::iterator i=objs_to_remove.begin();i!=objs_to_remove.end();i++){ - theOldPoints.remove(*i); + for ( std::list::iterator i = objs_to_remove.begin(); i != objs_to_remove.end(); i++ ) { + theOldPoints.remove( *i ); } } @@ -271,102 +258,99 @@ static void removeUnnecessaryPnt(list& theOldPoints, //================================================================================= void BasicGUI_CurveDlg::SelectionIntoArgument() { - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); Standard_Boolean aRes = Standard_False; - int IOC = IObjectCount(); - // bool is_append = myPoints->length() < IOC; // if true - add point, else remove - // myPoints->length( IOC ); // this length may be greater than number of objects, - // that will actually be put into myPoints - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); - SalomeApp_Application* app = - dynamic_cast< SalomeApp_Application* >( SUIT_Session::session()->activeApplication() ); - SalomeApp_Study* appStudy = dynamic_cast( app->activeStudy() ); + SalomeApp_Application* app = myGeomGUI->getApp(); + SalomeApp_Study* appStudy = dynamic_cast(app->activeStudy()); _PTR(Study) aDStudy = appStudy->studyDS(); - GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId()); int anIndex; TopoDS_Shape aShape; TColStd_IndexedMapOfInteger aMapIndexes; GEOM::GEOM_Object_var anObject; std::list aList; + LightApp_SelectionMgr* aSelMgr = app->selectionMgr(); SALOME_ListIO selected; - aSelMgr->selectedObjects( selected, QString::null, false ); + aSelMgr->selectedObjects(selected, QString::null, false); - for ( SALOME_ListIteratorOfListIO anIt( selected ); anIt.More(); anIt.Next() ) - { - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject( anIt.Value(), aRes ); - - if ( !CORBA::is_nil( aSelectedObject ) && aRes ) - { - if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) - { - aSelMgr->GetIndexes( anIt.Value(), aMapIndexes ); - - if ( aMapIndexes.Extent() > 0 ) - { - for (int ii=1; ii <= aMapIndexes.Extent(); ii++) { - anIndex = aMapIndexes(ii); - QString aName = GEOMBase::GetName( aSelectedObject ); - aName = aName + ":vertex_" + QString::number( anIndex ); - anObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); - //Find Object in study - _PTR(SObject) obj ( aDStudy->FindObjectID( anIt.Value()->getEntry() ) ); - bool inStudy = false; - for (_PTR(ChildIterator) iit (aDStudy->NewChildIterator(obj)); iit->More(); iit->Next()) { - _PTR(SObject) child (iit->Value()); - QString aChildName = child->GetName(); - if (aChildName == aName) { - inStudy = true; - CORBA::Object_var corbaObj = GeometryGUI::ClientSObjectToObject(iit->Value()); - anObject = GEOM::GEOM_Object::_narrow( corbaObj ); - } - } - - if (!inStudy) - GeometryGUI::GetGeomGen()->AddInStudy(GeometryGUI::ClientStudyToStudy(aDStudy), - anObject, aName, aSelectedObject); - - int pos = isPointInList(myOrderedSel, anObject); - if (pos==-1) { - myOrderedSel.push_back(anObject); - } - // if (!inStudy) - aList.push_back(anObject); - } - } else { // aMap.Extent() == 0 - int pos = isPointInList(myOrderedSel,aSelectedObject); - if(pos==-1) - myOrderedSel.push_back(aSelectedObject); - aList.push_back(aSelectedObject); - } + int IOC = selected.Extent(); + // bool is_append = myPoints->length() < IOC; // if true - add point, else remove + // myPoints->length( IOC ); // this length may be greater than number of objects, + // that will actually be put into myPoints + + for (SALOME_ListIteratorOfListIO anIt (selected); anIt.More(); anIt.Next()) { + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(anIt.Value(), aRes); + if (!CORBA::is_nil(aSelectedObject) && aRes) { + if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) { + aSelMgr->GetIndexes(anIt.Value(), aMapIndexes); + + if (aMapIndexes.Extent() > 0) { + for (int ii = 1; ii <= aMapIndexes.Extent(); ii++) { + anIndex = aMapIndexes(ii); + QString aName = GEOMBase::GetName( aSelectedObject ); + aName = aName + ":vertex_" + QString::number( anIndex ); + anObject = aShapesOp->GetSubShape( aSelectedObject, anIndex ); + //Find Object in study + _PTR(SObject) obj ( aDStudy->FindObjectID( anIt.Value()->getEntry() ) ); + bool inStudy = false; + _PTR(ChildIterator) iit( aDStudy->NewChildIterator( obj ) ); + for (; iit->More() && !inStudy; iit->Next()) { + _PTR(SObject) child( iit->Value() ); + QString aChildName = child->GetName().c_str(); + if ( aChildName == aName ) { + inStudy = true; + CORBA::Object_var corbaObj = GeometryGUI::ClientSObjectToObject( iit->Value() ); + anObject = GEOM::GEOM_Object::_narrow( corbaObj ); + } } - } + + if ( !inStudy ) + GeometryGUI::GetGeomGen()->AddInStudy( GeometryGUI::ClientStudyToStudy( aDStudy ), + anObject, aName.toLatin1().data(), aSelectedObject ); + + int pos = isPointInList( myOrderedSel, anObject ); + if ( pos == -1 ) { + myOrderedSel.push_back( anObject ); + } + // if (!inStudy) + aList.push_back(anObject); + } + } + else { // aMap.Extent() == 0 + int pos = isPointInList( myOrderedSel, aSelectedObject ); + if ( pos == -1 ) + myOrderedSel.push_back( aSelectedObject ); + aList.push_back( aSelectedObject ); + } + } } - + } + myPoints->length( aList.size() ); - int k=0; - for (list::iterator j=aList.begin();j!=aList.end();j++) + int k = 0; + for ( std::list::iterator j = aList.begin(); j != aList.end(); j++ ) myPoints[k++] = *j; - if(IOC == 0) + if ( IOC == 0 ) myOrderedSel.clear(); else - removeUnnecessaryPnt(myOrderedSel, myPoints); + removeUnnecessaryPnt( myOrderedSel, myPoints ); // if ( myOrderedSel.size() == myPoints->length() ) { myPoints->length( myOrderedSel.size() ); - k=0; - for (list::iterator j=myOrderedSel.begin();j!=myOrderedSel.end();j++) + k = 0; + for ( std::list::iterator j = myOrderedSel.begin(); j != myOrderedSel.end(); j++ ) myPoints[k++] = *j; // } if ( myPoints->length() > 0 ) GroupPoints->LineEdit1->setText( QString::number( myPoints->length() ) + "_" + tr( "GEOM_POINT" ) + tr( "_S_" ) ); - - displayPreview(); + +displayPreview(); } @@ -377,11 +361,12 @@ void BasicGUI_CurveDlg::SelectionIntoArgument() void BasicGUI_CurveDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); globalSelection(); // close local contexts, if any localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + ConstructorsClicked( getConstructorId() ); } @@ -399,9 +384,9 @@ void BasicGUI_CurveDlg::DeactivateActiveDialog() // function : enterEvent() // purpose : //================================================================================= -void BasicGUI_CurveDlg::enterEvent(QEvent* e) +void BasicGUI_CurveDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } @@ -433,8 +418,7 @@ bool BasicGUI_CurveDlg::execute( ObjectList& objects ) GEOM::GEOM_Object_var anObj; - switch ( getConstructorId() ) - { + switch ( getConstructorId() ) { case 0 : anObj = GEOM::GEOM_ICurvesOperations::_narrow( getOperation() )->MakePolyline( myPoints ); res = true; @@ -454,13 +438,3 @@ bool BasicGUI_CurveDlg::execute( ObjectList& objects ) return res; } - -//================================================================================= -// function : closeEvent -// purpose : -//================================================================================= -void BasicGUI_CurveDlg::closeEvent( QCloseEvent* e ) -{ - GEOMBase_Skeleton::closeEvent( e ); -} - diff --git a/src/BasicGUI/BasicGUI_CurveDlg.h b/src/BasicGUI/BasicGUI_CurveDlg.h index 6a1b6fa9b..5c3730859 100644 --- a/src/BasicGUI/BasicGUI_CurveDlg.h +++ b/src/BasicGUI/BasicGUI_CurveDlg.h @@ -1,83 +1,75 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 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) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : BasicGUI_CurveDlg.h -// Author : Alexander SLADKOV -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_CurveDlg.h +// Author : Alexander SLADKOV, Open CASCADE S.A.S. (alexander.sladkov@opencascade.com) +// +#ifndef BASICGUI_CURVEDLG_H +#define BASICGUI_CURVEDLG_H -#ifndef BASICGUI_CURVE_H -#define BASICGUI_CURVE_H - -#include "GEOM_BasicGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel_QTD.h" - -#include "BasicGUI.h" +#include #include +class DlgRef_1Sel; + //================================================================================= // class : BasicGUI_CurveDlg // purpose : //================================================================================= -class GEOM_BASICGUI_EXPORT BasicGUI_CurveDlg : public GEOMBase_Skeleton +class BasicGUI_CurveDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BasicGUI_CurveDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~BasicGUI_CurveDlg(); - + BasicGUI_CurveDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~BasicGUI_CurveDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); - virtual void closeEvent( QCloseEvent* e ); +private: + void Init(); + void enterEvent( QEvent* ); -private : - void Init(); - void enterEvent(QEvent* e); - - DlgRef_1Sel_QTD* GroupPoints; - GEOM::ListOfGO_var myPoints; - list myOrderedSel;//!< This list used for managing orderes selection +private: + DlgRef_1Sel* GroupPoints; + GEOM::ListOfGO_var myPoints; + std::list myOrderedSel; //!< This list used for managing orderes selection private slots: - void ClickOnOk(); - void ClickOnCancel(); - bool ClickOnApply(); - - void ActivateThisDialog(); - void DeactivateActiveDialog(); - - void ConstructorsClicked( int ); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - + void ClickOnOk(); + bool ClickOnApply(); + + void ActivateThisDialog(); + void DeactivateActiveDialog(); + + void ConstructorsClicked( int ); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); }; -#endif // BASICGUI_CURVE_H +#endif // BASICGUI_CURVEDLG_H diff --git a/src/BasicGUI/BasicGUI_EllipseDlg.cxx b/src/BasicGUI/BasicGUI_EllipseDlg.cxx index 04baab168..9b9eb6c07 100644 --- a/src/BasicGUI/BasicGUI_EllipseDlg.cxx +++ b/src/BasicGUI/BasicGUI_EllipseDlg.cxx @@ -1,36 +1,39 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 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 // +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_EllipseDlg.cxx +// Author : Nicolas REJNERI, Open CASCADE S.A.S. // -// -// File : BasicGUI_EllipseDlg.cxx -// Author : Nicolas REJNERI -// Module : GEOM -// $Header$ - #include "BasicGUI_EllipseDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include + +#include +#include + +#include +#include +#include +#include #include #include @@ -39,13 +42,7 @@ #include #include -#include - -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" - -using namespace std; +#include //================================================================================= // class : BasicGUI_EllipseDlg() @@ -54,38 +51,43 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BasicGUI_EllipseDlg::BasicGUI_EllipseDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BasicGUI_EllipseDlg::BasicGUI_EllipseDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_ELLIPSE_PV"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_ELLIPSE_PV" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_ELLIPSE_TITLE")); + setWindowTitle( tr( "GEOM_ELLIPSE_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_ELLIPSE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_ELLIPSE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_2Sel2Spin(this, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); - GroupPoints->TextLabel1->setText(tr("GEOM_CENTER")); - GroupPoints->TextLabel2->setText(tr("GEOM_VECTOR")); - GroupPoints->TextLabel3->setText(tr("GEOM_RADIUS_MAJOR")); - GroupPoints->TextLabel4->setText(tr("GEOM_RADIUS_MINOR")); - GroupPoints->PushButton1->setPixmap(image1); - GroupPoints->PushButton2->setPixmap(image1); + GroupPoints = new DlgRef_2Sel2Spin( centralWidget() ); + GroupPoints->GroupBox1->setTitle( tr( "GEOM_ARGUMENTS" ) ); + GroupPoints->TextLabel1->setText( tr( "GEOM_CENTER" ) + " (Origin by default)" ); + GroupPoints->TextLabel2->setText( tr( "GEOM_VECTOR" ) + " (Z axis by default)" ); + GroupPoints->TextLabel3->setText( tr( "GEOM_RADIUS_MAJOR" ) ); + GroupPoints->TextLabel4->setText( tr( "GEOM_RADIUS_MINOR" ) ); + GroupPoints->PushButton1->setIcon( image1 ); + GroupPoints->PushButton2->setIcon( image1 ); GroupPoints->LineEdit1->setReadOnly( true ); GroupPoints->LineEdit2->setReadOnly( true ); + GroupPoints->LineEdit1->setEnabled( true ); + GroupPoints->LineEdit2->setEnabled( false ); - Layout1->addWidget(GroupPoints, 2, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); /***************************************************************/ - setHelpFileName("create_ellipse_page.html"); + setHelpFileName( "create_ellipse_page.html" ); Init(); } @@ -109,50 +111,60 @@ void BasicGUI_EllipseDlg::Init() /* init variables */ myEditCurrentArgument = GroupPoints->LineEdit1; globalSelection(); // close local contexts, if any - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + GroupPoints->PushButton1->setDown(true); myPoint = myDir = GEOM::GEOM_Object::_nil(); /* Get setting of step value from file configuration */ SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100); + double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100 ); double aMajorR( 200. ), aMinorR( 100. ); /* min, max, step and decimals for spin boxes & initial values */ - GroupPoints->SpinBox_DX->RangeStepAndValidator( 0.001, COORD_MAX, step, DBL_DIGITS_DISPLAY ); - GroupPoints->SpinBox_DY->RangeStepAndValidator( 0.001, COORD_MAX, step, DBL_DIGITS_DISPLAY ); - GroupPoints->SpinBox_DX->SetValue( aMajorR ); - GroupPoints->SpinBox_DY->SetValue( aMinorR ); + initSpinBox( GroupPoints->SpinBox_DX, 0.000001, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupPoints->SpinBox_DY, 0.000001, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + GroupPoints->SpinBox_DX->setValue( aMajorR ); + GroupPoints->SpinBox_DY->setValue( aMinorR ); /* signals and slots connections */ - connect(buttonCancel, SIGNAL(clicked()), this, SLOT(ClickOnCancel())); - connect(myGeomGUI, SIGNAL(SignalDeactivateActiveDialog()), this, SLOT(DeactivateActiveDialog())); - connect(myGeomGUI, SIGNAL(SignalCloseAllDialogs()), this, SLOT(ClickOnCancel())); + connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), this, SLOT( DeactivateActiveDialog() ) ); + connect( myGeomGUI, SIGNAL( SignalCloseAllDialogs() ), this, SLOT( ClickOnCancel() ) ); - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPoints->PushButton2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( GroupPoints->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( GroupPoints->LineEdit2, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(GroupPoints->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); + connect( GroupPoints->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupPoints->SpinBox_DY, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupPoints->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupPoints->SpinBox_DY, SLOT(SetStep(double))); + connect( myGeomGUI, SIGNAL( SignalDefaultStepValueChanged( double ) ), this, SLOT( SetDoubleSpinBoxStep( double ) ) ); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( myGeomGUI->getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); initName( tr( "GEOM_ELLIPSE" ) ); + + displayPreview(); } +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void BasicGUI_EllipseDlg::SetDoubleSpinBoxStep( double step ) +{ + GroupPoints->SpinBox_DX->setSingleStep(step); + GroupPoints->SpinBox_DY->setSingleStep(step); +} + + //================================================================================= // function : ClickOnOk() // purpose : @@ -163,6 +175,7 @@ void BasicGUI_EllipseDlg::ClickOnOk() ClickOnCancel(); } + //================================================================================= // function : ClickOnApply() // purpose : @@ -178,59 +191,54 @@ bool BasicGUI_EllipseDlg::ClickOnApply() myPoint = myDir = GEOM::GEOM_Object::_nil(); GroupPoints->LineEdit1->setText( "" ); GroupPoints->LineEdit2->setText( "" ); + GroupPoints->PushButton1->setDown(true); + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit1->setEnabled( true ); + GroupPoints->LineEdit2->setEnabled( false ); myEditCurrentArgument = GroupPoints->LineEdit1; - //globalSelection(GEOM_POINT); + globalSelection(); // close local contexts, if any - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); - + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + displayPreview(); + return true; } -//======================================================================= -// function : ClickOnCancel() -// purpose : -//======================================================================= -void BasicGUI_EllipseDlg::ClickOnCancel() -{ - GEOMBase_Skeleton::ClickOnCancel(); -} - //================================================================================= // function : SelectionIntoArgument() // purpose : Called when selection as changed or other case //================================================================================= void BasicGUI_EllipseDlg::SelectionIntoArgument() { - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); - if ( IObjectCount() != 1 ) - { - if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) myPoint = GEOM::GEOM_Object::_nil(); - else if ( myEditCurrentArgument == GroupPoints->LineEdit2 ) myDir = GEOM::GEOM_Object::_nil(); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) { + if (myEditCurrentArgument == GroupPoints->LineEdit1) myPoint = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupPoints->LineEdit2) myDir = GEOM::GEOM_Object::_nil(); return; } Standard_Boolean aRes = Standard_False; - Handle(SALOME_InteractiveObject) anIO = firstIObject(); - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), aRes); - if (!CORBA::is_nil(aSelectedObject) && aRes) - { + Handle(SALOME_InteractiveObject) anIO = aSelList.First(); + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(anIO, aRes); + if (!CORBA::is_nil(aSelectedObject) && aRes) { QString aName = GEOMBase::GetName(aSelectedObject); - + // Get Selected object if selected subshape TopoDS_Shape aShape; - if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) - { - TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; - if (myEditCurrentArgument == GroupPoints->LineEdit2) - aNeedType = TopAbs_EDGE; - - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; + if ( myEditCurrentArgument == GroupPoints->LineEdit2 ) + aNeedType = TopAbs_EDGE; + + if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) { TColStd_IndexedMapOfInteger aMap; aSelMgr->GetIndexes(anIO, aMap); - if (aMap.Extent() == 1) - { + if (aMap.Extent() == 1) { int anIndex = aMap(1); if (aNeedType == TopAbs_EDGE) aName += QString(":edge_%1").arg(anIndex); @@ -240,26 +248,39 @@ void BasicGUI_EllipseDlg::SelectionIntoArgument() //Find SubShape Object in Father GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId()); - aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); - } else { + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId()); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + } + else { aSelectedObject = aFindedObject; // get Object from study } } - else // Global Selection - { + else { // Global Selection if (aShape.ShapeType() != aNeedType) { aSelectedObject = GEOM::GEOM_Object::_nil(); aName = ""; } } } + + myEditCurrentArgument->setText( aName ); - myEditCurrentArgument->setText(aName); + if (!aSelectedObject->_is_nil()) { // clear selection if something selected + globalSelection(); + localSelection( GEOM::GEOM_Object::_nil(), aNeedType ); + } - if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) myPoint = aSelectedObject; - else if ( myEditCurrentArgument == GroupPoints->LineEdit2 ) myDir = aSelectedObject; + if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) { + myPoint = aSelectedObject; + if ( !myPoint->_is_nil() && myDir->_is_nil() ) + GroupPoints->PushButton2->click(); + } + else if ( myEditCurrentArgument == GroupPoints->LineEdit2 ) { + myDir = aSelectedObject; + if ( !myDir->_is_nil() && myPoint->_is_nil() ) + GroupPoints->PushButton1->click(); + } } displayPreview(); @@ -273,18 +294,30 @@ void BasicGUI_EllipseDlg::SelectionIntoArgument() void BasicGUI_EllipseDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - globalSelection( GEOM_POINT ); - if ( send == GroupPoints->PushButton1 ) myEditCurrentArgument = GroupPoints->LineEdit1; - else if ( send == GroupPoints->PushButton2 ) myEditCurrentArgument = GroupPoints->LineEdit2; + if ( send == GroupPoints->PushButton1 ) { + myEditCurrentArgument = GroupPoints->LineEdit1; + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit1->setEnabled( true ); + GroupPoints->LineEdit2->setEnabled( false ); + } + else if ( send == GroupPoints->PushButton2 ) { + myEditCurrentArgument = GroupPoints->LineEdit2; + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled( false ); + GroupPoints->LineEdit2->setEnabled( true ); + } + + globalSelection(); // close local contexts, if any + TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; + if ( myEditCurrentArgument == GroupPoints->LineEdit2 ) + aNeedType = TopAbs_EDGE; + localSelection( GEOM::GEOM_Object::_nil(), aNeedType ); myEditCurrentArgument->setFocus(); - globalSelection(); // close local contexts, if any - if ( myEditCurrentArgument == GroupPoints->LineEdit2 ) - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); - else - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); - SelectionIntoArgument(); + //SelectionIntoArgument(); + send->setDown(true); + displayPreview(); } //================================================================================= @@ -295,8 +328,7 @@ void BasicGUI_EllipseDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); if ( send == GroupPoints->LineEdit1 || - send == GroupPoints->LineEdit2 ) - { + send == GroupPoints->LineEdit2 ) { myEditCurrentArgument = send; GEOMBase_Skeleton::LineEditReturnPressed(); } @@ -310,9 +342,9 @@ void BasicGUI_EllipseDlg::LineEditReturnPressed() void BasicGUI_EllipseDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); - + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + GroupPoints->LineEdit1->setFocus(); myEditCurrentArgument = GroupPoints->LineEdit1; @@ -322,7 +354,7 @@ void BasicGUI_EllipseDlg::ActivateThisDialog() myPoint = myDir = GEOM::GEOM_Object::_nil(); //globalSelection( GEOM_POINT ); globalSelection(); // close local contexts, if any - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); } //================================================================================= @@ -339,9 +371,9 @@ void BasicGUI_EllipseDlg::DeactivateActiveDialog() // function : enterEvent() // purpose : //================================================================================= -void BasicGUI_EllipseDlg::enterEvent(QEvent* e) +void BasicGUI_EllipseDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } @@ -349,7 +381,7 @@ void BasicGUI_EllipseDlg::enterEvent(QEvent* e) // function : ValueChangedInSpinBox() // purpose : //================================================================================= -void BasicGUI_EllipseDlg::ValueChangedInSpinBox(double newValue) +void BasicGUI_EllipseDlg::ValueChangedInSpinBox( double newValue ) { displayPreview(); } @@ -369,14 +401,19 @@ GEOM::GEOM_IOperations_ptr BasicGUI_EllipseDlg::createOperation() //================================================================================= bool BasicGUI_EllipseDlg::isValid( QString& msg ) { - double aMajorR = GroupPoints->SpinBox_DX->GetValue(); - double aMinorR = GroupPoints->SpinBox_DY->GetValue(); - if ( aMajorR < aMinorR ) - { - msg = tr( "GEOM_ELLIPSE_ERROR_1" ); - return false; + double aMajorR = GroupPoints->SpinBox_DX->value(); + double aMinorR = GroupPoints->SpinBox_DY->value(); + if ( aMajorR < aMinorR ) { + msg = tr( "GEOM_ELLIPSE_ERROR_1" ); + return false; } - return !myPoint->_is_nil() && !myDir->_is_nil(); + //return !myPoint->_is_nil() && !myDir->_is_nil(); + //nil point means origin of global CS + //nil vector means Z axis + bool ok = true; + ok = GroupPoints->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupPoints->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + return ok; } //================================================================================= @@ -385,25 +422,22 @@ bool BasicGUI_EllipseDlg::isValid( QString& msg ) //================================================================================= bool BasicGUI_EllipseDlg::execute( ObjectList& objects ) { - double aMajorR = GroupPoints->SpinBox_DX->GetValue(); - double aMinorR = GroupPoints->SpinBox_DY->GetValue(); + double aMajorR = GroupPoints->SpinBox_DX->value(); + double aMinorR = GroupPoints->SpinBox_DY->value(); + + QStringList aParameters; + aParameters<SpinBox_DX->text(); + aParameters<SpinBox_DY->text(); + GEOM::GEOM_Object_var anObj = GEOM::GEOM_ICurvesOperations::_narrow( getOperation() )->MakeEllipse( myPoint, myDir, aMajorR, aMinorR ); - - if ( !anObj->_is_nil() ) + if ( !anObj->_is_nil() ) { + if ( !IsPreview() ) + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); objects.push_back( anObj._retn() ); - + } return true; } -//================================================================================= -// function : closeEvent -// purpose : -//================================================================================= -void BasicGUI_EllipseDlg::closeEvent( QCloseEvent* e ) -{ - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : addSubshapeToStudy // purpose : virtual method to add new SubObjects if local selection @@ -412,8 +446,10 @@ void BasicGUI_EllipseDlg::addSubshapesToStudy() { QMap objMap; - objMap[GroupPoints->LineEdit1->text()] = myPoint; - objMap[GroupPoints->LineEdit2->text()] = myDir; + if (!CORBA::is_nil(myPoint)) + objMap[GroupPoints->LineEdit1->text()] = myPoint; + if (!CORBA::is_nil(myDir)) + objMap[GroupPoints->LineEdit2->text()] = myDir; addSubshapesToFather( objMap ); } diff --git a/src/BasicGUI/BasicGUI_EllipseDlg.h b/src/BasicGUI/BasicGUI_EllipseDlg.h index 5cf4f5a73..ab6ef7cb4 100644 --- a/src/BasicGUI/BasicGUI_EllipseDlg.h +++ b/src/BasicGUI/BasicGUI_EllipseDlg.h @@ -1,81 +1,75 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 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) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : BasicGUI_EllipseDlg.h -// Author : Nicolas REJNERI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_EllipseDlg.h +// Author : Nicolas REJNERI, Open CASCADE S.A.S. +// +#ifndef BASICGUI_ELLIPSEDLG_H +#define BASICGUI_ELLIPSEDLG_H -#ifndef BASICGUI_ELLIPSE_H -#define BASICGUI_ELLIPSE_H +#include -#include "GEOM_BasicGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel2Spin.h" - -#include "BasicGUI.h" +class DlgRef_2Sel2Spin; //================================================================================= // class : BasicGUI_EllipseDlg // purpose : //================================================================================= -class GEOM_BASICGUI_EXPORT BasicGUI_EllipseDlg : public GEOMBase_Skeleton +class BasicGUI_EllipseDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BasicGUI_EllipseDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~BasicGUI_EllipseDlg(); + BasicGUI_EllipseDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~BasicGUI_EllipseDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void closeEvent( QCloseEvent* e ); - virtual void addSubshapesToStudy(); - -private : - void Init(); - void enterEvent(QEvent* e); - - GEOM::GEOM_Object_var myPoint, myDir; - - DlgRef_2Sel2Spin* GroupPoints; + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); + +private: + void Init(); + void enterEvent( QEvent* ); +private: + GEOM::GEOM_Object_var myPoint, myDir; + + DlgRef_2Sel2Spin* GroupPoints; + private slots: - void ClickOnOk(); - void ClickOnCancel(); - bool ClickOnApply(); - - void ActivateThisDialog(); - void DeactivateActiveDialog(); - - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ValueChangedInSpinBox(double newValue); - + void ClickOnOk(); + bool ClickOnApply(); + + void ActivateThisDialog(); + void DeactivateActiveDialog(); + + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ValueChangedInSpinBox( double ); + void SetDoubleSpinBoxStep( double ); }; -#endif // BASICGUI_ELLIPSE_H +#endif // BASICGUI_ELLIPSEDLG_H diff --git a/src/BasicGUI/BasicGUI_LineDlg.cxx b/src/BasicGUI/BasicGUI_LineDlg.cxx index 1c5770ed9..03159903b 100644 --- a/src/BasicGUI/BasicGUI_LineDlg.cxx +++ b/src/BasicGUI/BasicGUI_LineDlg.cxx @@ -1,37 +1,38 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_LineDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : BasicGUI_LineDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "BasicGUI_LineDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include + +#include +#include +#include +#include #include #include @@ -39,13 +40,7 @@ #include #include -#include - -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" - -using namespace std; +#include //================================================================================= // class : BasicGUI_LineDlg() @@ -54,53 +49,59 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BasicGUI_LineDlg::BasicGUI_LineDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BasicGUI_LineDlg::BasicGUI_LineDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM",tr("ICON_DLG_LINE_2P"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM",tr("ICON_SELECT"))); - QPixmap image2(SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM",tr("ICON_DLG_LINE_2F"))); - - setCaption(tr("GEOM_LINE_TITLE")); - - QGroupBox* aFrame = new QGroupBox( 1, Qt::Horizontal, this ); - aFrame->setInsideMargin( 0 ); - aFrame->setFrameStyle( QFrame::NoFrame ); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_LINE_2P" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); + QPixmap image2( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_LINE_2F" ) ) ); + setWindowTitle( tr( "GEOM_LINE_TITLE" ) ); + /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_LINE")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image2); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_LINE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setIcon( image2 ); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_2Sel_QTD( aFrame, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("GEOM_POINTS")); - GroupPoints->TextLabel1->setText(tr("GEOM_POINT_I").arg("1")); - GroupPoints->TextLabel2->setText(tr("GEOM_POINT_I").arg("2")); - GroupPoints->PushButton1->setPixmap(image1); - GroupPoints->PushButton2->setPixmap(image1); + GroupPoints = new DlgRef_2Sel( centralWidget() ); + + GroupPoints->GroupBox1->setTitle( tr( "GEOM_POINTS" ) ); + GroupPoints->TextLabel1->setText( tr( "GEOM_POINT_I" ).arg( 1 ) ); + GroupPoints->TextLabel2->setText( tr( "GEOM_POINT_I" ).arg( 2 ) ); + GroupPoints->PushButton1->setIcon( image1 ); + GroupPoints->PushButton2->setIcon( image1 ); GroupPoints->LineEdit1->setReadOnly( true ); GroupPoints->LineEdit2->setReadOnly( true ); + GroupPoints->LineEdit1->setEnabled( true ); + GroupPoints->LineEdit2->setEnabled( false ); - GroupFaces = new DlgRef_2Sel_QTD( aFrame, "GroupFaces"); - GroupFaces->GroupBox1->setTitle(tr("GEOM_FACES")); - GroupFaces->TextLabel1->setText(tr("GEOM_FACE_I").arg("1")); - GroupFaces->TextLabel2->setText(tr("GEOM_FACE_I").arg("2")); - GroupFaces->PushButton1->setPixmap(image1); - GroupFaces->PushButton2->setPixmap(image1); + GroupFaces = new DlgRef_2Sel( centralWidget() ); + GroupFaces->GroupBox1->setTitle( tr( "GEOM_FACES" ) ); + GroupFaces->TextLabel1->setText( tr( "GEOM_FACE_I" ).arg( "1" ) ); + GroupFaces->TextLabel2->setText( tr( "GEOM_FACE_I" ).arg( "2" ) ); + GroupFaces->PushButton1->setIcon( image1 ); + GroupFaces->PushButton2->setIcon( image1 ); GroupFaces->LineEdit1->setReadOnly( true ); GroupFaces->LineEdit2->setReadOnly( true ); + GroupFaces->LineEdit1->setEnabled( true ); + GroupFaces->LineEdit2->setEnabled( false ); + + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); + layout->addWidget( GroupFaces ); - Layout1->addWidget(aFrame, 2, 0); /***************************************************************/ - setHelpFileName("create_line_page.html"); + setHelpFileName( "create_line_page.html" ); Init(); } + //================================================================================= // function : ~BasicGUI_LineDlg() // purpose : Destroys the object and frees any allocated resources @@ -109,6 +110,7 @@ BasicGUI_LineDlg::~BasicGUI_LineDlg() { } + //================================================================================= // function : Init() // purpose : @@ -116,37 +118,41 @@ BasicGUI_LineDlg::~BasicGUI_LineDlg() void BasicGUI_LineDlg::Init() { /* init variables */ - //myEditCurrentArgument = GroupPoints->LineEdit1; - //myPoint1 = myPoint2 = GEOM::GEOM_Object::_nil(); - //globalSelection(); // close local contexts, if any - //localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + myEditCurrentArgument = GroupPoints->LineEdit1; + myPoint1 = myPoint2 = GEOM::GEOM_Object::_nil(); + globalSelection(); // close local contexts, if any + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + GroupPoints->PushButton1->setDown(true); + /* signals and slots connections */ - connect(buttonCancel, SIGNAL(clicked()), this, SLOT(ClickOnCancel())); - connect(myGeomGUI, SIGNAL(SignalDeactivateActiveDialog()), this, SLOT(DeactivateActiveDialog())); - connect(myGeomGUI, SIGNAL(SignalCloseAllDialogs()), this, SLOT(ClickOnCancel())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), this, SLOT( DeactivateActiveDialog() ) ); + connect( myGeomGUI, SIGNAL( SignalCloseAllDialogs() ), this, SLOT( ClickOnCancel() ) ); - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupFaces->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupFaces->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupFaces->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupFaces->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPoints->PushButton2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupFaces->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupFaces->PushButton2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); + connect( GroupPoints->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( GroupPoints->LineEdit2, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( GroupFaces->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( GroupFaces->LineEdit2, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); - ConstructorsClicked(0); - initName( tr("GEOM_LINE") ); + initName( tr( "GEOM_LINE" ) ); + + ConstructorsClicked( 0 ); } + //================================================================================= // function : ClickOnOk() // purpose : @@ -157,28 +163,20 @@ void BasicGUI_LineDlg::ClickOnOk() ClickOnCancel(); } -//================================================================================= -// function : ClickOnCancel() -// purpose : -//================================================================================= -void BasicGUI_LineDlg::ClickOnCancel() -{ - GEOMBase_Skeleton::ClickOnCancel(); -} - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool BasicGUI_LineDlg::ClickOnApply() { - if ( !onAccept() ) return false; - + initName(); - myEditCurrentArgument->setText(""); - ConstructorsClicked(getConstructorId()); + + myEditCurrentArgument->setText( "" ); + ConstructorsClicked( getConstructorId() ); + return true; } @@ -186,19 +184,23 @@ bool BasicGUI_LineDlg::ClickOnApply() // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void BasicGUI_LineDlg::ConstructorsClicked(int constructorId) +void BasicGUI_LineDlg::ConstructorsClicked( int constructorId ) { - switch ( constructorId ) - { + switch ( constructorId ) { case 0: { globalSelection(); // close local contexts, if any localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); - + myEditCurrentArgument = GroupPoints->LineEdit1; - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); + GroupPoints->LineEdit2->setText( "" ); myPoint1 = GEOM::GEOM_Object::_nil(); myPoint2 = GEOM::GEOM_Object::_nil(); + GroupPoints->PushButton1->setDown(true); + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit1->setEnabled(true); + GroupPoints->LineEdit2->setEnabled(false); GroupPoints->show(); GroupFaces->hide(); break; @@ -212,14 +214,20 @@ void BasicGUI_LineDlg::ConstructorsClicked(int constructorId) myEditCurrentArgument->setText(""); myFace1 = GEOM::GEOM_Object::_nil(); myFace2 = GEOM::GEOM_Object::_nil(); + GroupFaces->PushButton1->setDown(true); + GroupFaces->PushButton2->setDown(false); + GroupFaces->LineEdit1->setEnabled(true); + GroupFaces->LineEdit2->setEnabled(false); GroupPoints->hide(); GroupFaces->show(); break; } } + qApp->processEvents(); updateGeometry(); - resize(minimumSize()); + resize( minimumSizeHint() ); + SelectionIntoArgument(); } @@ -229,73 +237,93 @@ void BasicGUI_LineDlg::ConstructorsClicked(int constructorId) //================================================================================= void BasicGUI_LineDlg::SelectionIntoArgument() { - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); - if (IObjectCount() != 1) - { - if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) myPoint1 = GEOM::GEOM_Object::_nil(); - else if ( myEditCurrentArgument == GroupPoints->LineEdit2 ) myPoint2 = GEOM::GEOM_Object::_nil(); - else if ( myEditCurrentArgument == GroupFaces->LineEdit1 ) myFace1 = GEOM::GEOM_Object::_nil(); - else if ( myEditCurrentArgument == GroupFaces->LineEdit2 ) myFace2 = GEOM::GEOM_Object::_nil(); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) { + if (myEditCurrentArgument == GroupPoints->LineEdit1) myPoint1 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupPoints->LineEdit2) myPoint2 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupFaces->LineEdit1) myFace1 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupFaces->LineEdit2) myFace2 = GEOM::GEOM_Object::_nil(); + displayPreview(); return; } - // nbSel == 1 Standard_Boolean aRes = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), aRes); - if (!CORBA::is_nil(aSelectedObject) && aRes) - { - QString aName = GEOMBase::GetName(aSelectedObject); + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aRes); + if ( !CORBA::is_nil( aSelectedObject ) && aRes ) { + QString aName = GEOMBase::GetName( aSelectedObject ); + TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; + if ( myEditCurrentArgument == GroupFaces->LineEdit1 || + myEditCurrentArgument == GroupFaces->LineEdit2 ) + aNeedType = TopAbs_FACE; TopoDS_Shape aShape; - if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) - { - TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; - if (myEditCurrentArgument == GroupFaces->LineEdit1 || - myEditCurrentArgument == GroupFaces->LineEdit2) - aNeedType = TopAbs_FACE; - - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) { TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes(firstIObject(), aMap); - if (aMap.Extent() == 1) // Local Selection - { + aSelMgr->GetIndexes(aSelList.First(), aMap); + if ( aMap.Extent() == 1 ) { // Local Selection int anIndex = aMap( 1 ); - if (aNeedType == TopAbs_FACE) - aName += QString(":face_%1").arg(anIndex); + if ( aNeedType == TopAbs_FACE ) + aName += QString( ":face_%1" ).arg( anIndex ); else - aName += QString(":vertex_%1").arg(anIndex); + aName += QString( ":vertex_%1" ).arg( anIndex ); //Find SubShape Object in Father - GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); + GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather( aSelectedObject, aName ); if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId()); - aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); + aSelectedObject = aShapesOp->GetSubShape( aSelectedObject, anIndex ); } - else + else { aSelectedObject = aFindedObject; // get Object from study + } } - else // Global Selection - { - if (aShape.ShapeType() != aNeedType) { + else { // Global Selection + if ( aShape.ShapeType() != aNeedType ) { aSelectedObject = GEOM::GEOM_Object::_nil(); aName = ""; } } } - myEditCurrentArgument->setText(aName); + myEditCurrentArgument->setText( aName ); - if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) myPoint1 = aSelectedObject; - else if ( myEditCurrentArgument == GroupPoints->LineEdit2 ) myPoint2 = aSelectedObject; - else if ( myEditCurrentArgument == GroupFaces->LineEdit1 ) myFace1 = aSelectedObject; - else if ( myEditCurrentArgument == GroupFaces->LineEdit2 ) myFace2 = aSelectedObject; + if (!aSelectedObject->_is_nil()) { // clear selection if something selected + globalSelection(); + localSelection( GEOM::GEOM_Object::_nil(), aNeedType ); + } + + if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) { + myPoint1 = aSelectedObject; + if ( !myPoint1->_is_nil() && myPoint2->_is_nil() ) + GroupPoints->PushButton2->click(); + } + else if ( myEditCurrentArgument == GroupPoints->LineEdit2 ) { + myPoint2 = aSelectedObject; + if ( !myPoint2->_is_nil() && myPoint1->_is_nil() ) + GroupPoints->PushButton1->click(); + } + else if ( myEditCurrentArgument == GroupFaces->LineEdit1 ) { + myFace1 = aSelectedObject; + if ( !myFace1->_is_nil() && myFace2->_is_nil() ) + GroupFaces->PushButton2->click(); + } + else if ( myEditCurrentArgument == GroupFaces->LineEdit2 ) { + myFace2 = aSelectedObject; + if ( !myFace2->_is_nil() && myFace1->_is_nil() ) + GroupFaces->PushButton1->click(); + } } displayPreview(); } + //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -303,14 +331,44 @@ void BasicGUI_LineDlg::SelectionIntoArgument() void BasicGUI_LineDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if ( send == GroupPoints->PushButton1 ) myEditCurrentArgument = GroupPoints->LineEdit1; - else if ( send == GroupPoints->PushButton2 ) myEditCurrentArgument = GroupPoints->LineEdit2; - else if ( send == GroupFaces->PushButton1 ) myEditCurrentArgument = GroupFaces->LineEdit1; - else if ( send == GroupFaces->PushButton2 ) myEditCurrentArgument = GroupFaces->LineEdit2; + if ( send == GroupPoints->PushButton1 ) { + myEditCurrentArgument = GroupPoints->LineEdit1; + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit1->setEnabled(true); + GroupPoints->LineEdit2->setEnabled(false); + } + else if ( send == GroupPoints->PushButton2 ) { + myEditCurrentArgument = GroupPoints->LineEdit2; + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + GroupPoints->LineEdit2->setEnabled(true); + } + else if ( send == GroupFaces->PushButton1 ) { + myEditCurrentArgument = GroupFaces->LineEdit1; + GroupFaces->PushButton2->setDown(false); + GroupFaces->LineEdit1->setEnabled(true); + GroupFaces->LineEdit2->setEnabled(false); + } + else if ( send == GroupFaces->PushButton2 ) { + myEditCurrentArgument = GroupFaces->LineEdit2; + GroupFaces->PushButton1->setDown(false); + GroupFaces->LineEdit1->setEnabled(false); + GroupFaces->LineEdit2->setEnabled(true); + } + + globalSelection(); // close local selection to clear it + TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; + if ( myEditCurrentArgument == GroupFaces->LineEdit1 || myEditCurrentArgument == GroupFaces->LineEdit2 ) + aNeedType = TopAbs_FACE; + localSelection( GEOM::GEOM_Object::_nil(), aNeedType ); + myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); + // SelectionIntoArgument(); + send->setDown(true); + displayPreview(); } + //================================================================================= // function : LineEditReturnPressed() // purpose : @@ -320,12 +378,13 @@ void BasicGUI_LineDlg::LineEditReturnPressed() QLineEdit* send = (QLineEdit*)sender(); if ( send == GroupPoints->LineEdit1 ) myEditCurrentArgument = GroupPoints->LineEdit1; else if ( send == GroupPoints->LineEdit2 ) myEditCurrentArgument = GroupPoints->LineEdit2; - else if ( send == GroupFaces->LineEdit1 ) myEditCurrentArgument = GroupFaces->LineEdit1; - else if ( send == GroupFaces->LineEdit2 ) myEditCurrentArgument = GroupFaces->LineEdit2; + else if ( send == GroupFaces->LineEdit1 ) myEditCurrentArgument = GroupFaces->LineEdit1; + else if ( send == GroupFaces->LineEdit2 ) myEditCurrentArgument = GroupFaces->LineEdit2; else return; GEOMBase_Skeleton::LineEditReturnPressed(); } + //================================================================================= // function : ActivateThisDialog() // purpose : @@ -333,10 +392,10 @@ void BasicGUI_LineDlg::LineEditReturnPressed() void BasicGUI_LineDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); - ConstructorsClicked(getConstructorId()); + ConstructorsClicked( getConstructorId() ); } //================================================================================= @@ -352,9 +411,9 @@ void BasicGUI_LineDlg::DeactivateActiveDialog() // function : enterEvent() // purpose : //================================================================================= -void BasicGUI_LineDlg::enterEvent(QEvent* e) +void BasicGUI_LineDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } @@ -389,36 +448,23 @@ bool BasicGUI_LineDlg::execute( ObjectList& objects ) { bool res = false; GEOM::GEOM_Object_var anObj; - switch ( getConstructorId() ) - { - case 0 : - { - anObj = GEOM::GEOM_IBasicOperations::_narrow( getOperation() )->MakeLineTwoPnt( myPoint1, myPoint2 ); - res = true; - break; - } - case 1 : - { - anObj = GEOM::GEOM_IBasicOperations::_narrow( getOperation() )->MakeLineTwoFaces( myFace1, myFace2 ); - res = true; - break; - } - } + switch ( getConstructorId() ) { + case 0 : + anObj = GEOM::GEOM_IBasicOperations::_narrow( getOperation() )->MakeLineTwoPnt( myPoint1, myPoint2 ); + res = true; + break; + case 1 : + anObj = GEOM::GEOM_IBasicOperations::_narrow( getOperation() )->MakeLineTwoFaces( myFace1, myFace2 ); + res = true; + break; + } + if ( !anObj->_is_nil() ) objects.push_back( anObj._retn() ); return res; } -//================================================================================= -// function : closeEvent -// purpose : -//================================================================================= -void BasicGUI_LineDlg::closeEvent( QCloseEvent* e ) -{ - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : addSubshapeToStudy // purpose : virtual method to add new SubObjects if local selection @@ -426,16 +472,15 @@ void BasicGUI_LineDlg::closeEvent( QCloseEvent* e ) void BasicGUI_LineDlg::addSubshapesToStudy() { QMap objMap; - switch ( getConstructorId() ) - { - case 0 : - objMap[GroupPoints->LineEdit1->text()] = myPoint1; - objMap[GroupPoints->LineEdit2->text()] = myPoint2; - break; - case 1 : - objMap[GroupFaces->LineEdit1->text()] = myFace1; - objMap[GroupFaces->LineEdit2->text()] = myFace2; - break; - } + switch ( getConstructorId() ) { + case 0 : + objMap[GroupPoints->LineEdit1->text()] = myPoint1; + objMap[GroupPoints->LineEdit2->text()] = myPoint2; + break; + case 1 : + objMap[GroupFaces->LineEdit1->text()] = myFace1; + objMap[GroupFaces->LineEdit2->text()] = myFace2; + break; + } addSubshapesToFather( objMap ); } diff --git a/src/BasicGUI/BasicGUI_LineDlg.h b/src/BasicGUI/BasicGUI_LineDlg.h index 9985759fd..5b716f206 100644 --- a/src/BasicGUI/BasicGUI_LineDlg.h +++ b/src/BasicGUI/BasicGUI_LineDlg.h @@ -1,84 +1,78 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : BasicGUI_LineDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_LineDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef BASICGUI_LINEDLG_H +#define BASICGUI_LINEDLG_H -#ifndef DIALOGBOX_LINE_H -#define DIALOGBOX_LINE_H +#include -#include "GEOM_BasicGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel_QTD.h" +class DlgRef_2Sel; //================================================================================= // class : BasicGUI_LineDlg // purpose : //================================================================================= -class GEOM_BASICGUI_EXPORT BasicGUI_LineDlg : public GEOMBase_Skeleton +class BasicGUI_LineDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BasicGUI_LineDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~BasicGUI_LineDlg(); - + BasicGUI_LineDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~BasicGUI_LineDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - - virtual void closeEvent( QCloseEvent* e ); - virtual void addSubshapesToStudy(); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); -private : - void Init(); - void enterEvent(QEvent* e); - - GEOM::GEOM_Object_var myPoint1; - GEOM::GEOM_Object_var myPoint2; - GEOM::GEOM_Object_var myFace1; - GEOM::GEOM_Object_var myFace2; - - DlgRef_2Sel_QTD* GroupPoints; - DlgRef_2Sel_QTD* GroupFaces; +private: + void Init(); + void enterEvent( QEvent* ); + +private: + GEOM::GEOM_Object_var myPoint1; + GEOM::GEOM_Object_var myPoint2; + GEOM::GEOM_Object_var myFace1; + GEOM::GEOM_Object_var myFace2; + + DlgRef_2Sel* GroupPoints; + DlgRef_2Sel* GroupFaces; private slots: - void ClickOnOk(); - void ClickOnCancel(); - bool ClickOnApply(); - - void ActivateThisDialog(); - void DeactivateActiveDialog(); - void ConstructorsClicked(int constructorId); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void DeactivateActiveDialog(); + void ConstructorsClicked( int ); + + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); }; -#endif // DIALOGBOX_LINE_H +#endif // BASICGUI_LINEDLG_H diff --git a/src/BasicGUI/BasicGUI_MarkerDlg.cxx b/src/BasicGUI/BasicGUI_MarkerDlg.cxx index 7b6cf2766..ecd49f548 100644 --- a/src/BasicGUI/BasicGUI_MarkerDlg.cxx +++ b/src/BasicGUI/BasicGUI_MarkerDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -19,26 +19,24 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_MarkerDlg.cxx +// Author : Sergey LITONIN, Open CASCADE S.A.S. (sergey.litonin@opencascade.com) // -// -// File : BasicGUI_MarkerDlg.cxx -// Author : Sergey LITONIN -// Module : GEOM -// $Header$ - #include "BasicGUI_MarkerDlg.h" -#include "DlgRef_SpinBox.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include -#include +#include +#include +#include +#include -#include "GEOMImpl_Types.hxx" +#include -#include "utilities.h" +#include // OCCT Includes #include @@ -58,72 +56,102 @@ // purpose : Constructor //================================================================================= BasicGUI_MarkerDlg::BasicGUI_MarkerDlg( GeometryGUI* theGeometryGUI, QWidget* theParent ) - : GEOMBase_Skeleton(theGeometryGUI, theParent, "BasicGUI_MarkerDlg", false, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) + : GEOMBase_Skeleton( theGeometryGUI, theParent, false, + Qt::WindowTitleHint | Qt::WindowSystemMenuHint ) { QPixmap iconCS1 ( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_MARKER" ) ) ); QPixmap iconCS2 ( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_MARKER2" ) ) ); QPixmap iconCS3 ( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_MARKER3" ) ) ); QPixmap iconSelect( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption( tr( "CAPTION" ) ); + setWindowTitle( tr( "CAPTION" ) ); - GroupConstructors->setTitle( tr( "LOCALCS" ) ); - RadioButton1->setPixmap( iconCS1 ); - RadioButton2->setPixmap( iconCS2 ); - RadioButton3->setPixmap( iconCS3 ); + mainFrame()->GroupConstructors->setTitle( tr( "LOCALCS" ) ); + mainFrame()->RadioButton1->setIcon( iconCS1 ); + mainFrame()->RadioButton2->setIcon( iconCS2 ); + mainFrame()->RadioButton3->setIcon( iconCS3 ); - Group1 = new DlgRef_1Sel_QTD(this, "Group1"); - Group1->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); - Group1->TextLabel1->setText(tr("GEOM_OBJECT")); - Group1->PushButton1->setPixmap(iconSelect); + Group1 = new DlgRef_1Sel( centralWidget() ); - Group2 = new DlgRef_3Sel_QTD(this, "Group2"); - Group2->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); - Group2->TextLabel1->setText(tr("GEOM_POINT")); - Group2->TextLabel2->setText(tr("XDIR")); - Group2->TextLabel3->setText(tr("YDIR")); - Group2->PushButton1->setPixmap(iconSelect); - Group2->PushButton2->setPixmap(iconSelect); - Group2->PushButton3->setPixmap(iconSelect); + Group1->GroupBox1->setTitle( tr( "GEOM_ARGUMENTS" ) ); + Group1->TextLabel1->setText( tr( "GEOM_OBJECT" ) ); + Group1->PushButton1->setIcon( iconSelect ); + Group1->PushButton1->setDown( true ); - aMainGrp = new QGroupBox( 1, Qt::Horizontal, this ); - aMainGrp->setFrameStyle( QFrame::NoFrame ); - aMainGrp->setInsideMargin( 0 ); + Group2 = new DlgRef_3Sel( centralWidget() ); - QGroupBox* anOriGrp = new QGroupBox( 1, Qt::Vertical, tr( "ORIGIN" ), aMainGrp ); - new QLabel( tr( "GEOM_X" ), anOriGrp ); - myData[ X ] = new DlgRef_SpinBox( anOriGrp ); - new QLabel( tr( "GEOM_Y" ), anOriGrp ); - myData[ Y ] = new DlgRef_SpinBox( anOriGrp ); - new QLabel( tr( "GEOM_Z" ), anOriGrp ); - myData[ Z ] = new DlgRef_SpinBox( anOriGrp ); + Group2->GroupBox1->setTitle( tr( "GEOM_ARGUMENTS" ) ); + Group2->TextLabel1->setText( tr( "GEOM_POINT" ) ); + Group2->TextLabel2->setText( tr( "XDIR" ) ); + Group2->TextLabel3->setText( tr( "YDIR" ) ); + Group2->PushButton1->setIcon( iconSelect ); + Group2->PushButton2->setIcon( iconSelect ); + Group2->PushButton3->setIcon( iconSelect ); + Group2->PushButton1->setDown( true ); - QGroupBox* aXAxisGrp = new QGroupBox( 1, Qt::Vertical, tr( "XDIR" ), aMainGrp ); - new QLabel( tr( "DX" ), aXAxisGrp ); - myData[ DX1 ] = new DlgRef_SpinBox( aXAxisGrp ); - new QLabel( tr( "DY" ), aXAxisGrp ); - myData[ DY1 ] = new DlgRef_SpinBox( aXAxisGrp ); - new QLabel( tr( "DZ" ), aXAxisGrp ); - myData[ DZ1 ] = new DlgRef_SpinBox( aXAxisGrp ); + aMainGrp = new QFrame( centralWidget() ); + aMainGrp->setFrameStyle( QFrame::NoFrame | QFrame::Plain ); + aMainGrp->setContentsMargins( 0, 0, 0, 0 ); + QHBoxLayout* aMainGrpLayout = new QHBoxLayout( aMainGrp ); + aMainGrpLayout->setMargin( 0 ); + + QGroupBox* anOriGrp = new QGroupBox( tr( "ORIGIN" ), aMainGrp ); + QVBoxLayout* anOriGrpLayout = new QVBoxLayout( anOriGrp ); - QGroupBox* anYAxisGrp = new QGroupBox( 1, Qt::Vertical, tr( "YDIR" ), aMainGrp ); - new QLabel( tr( "DX" ), anYAxisGrp ); - myData[ DX2 ] = new DlgRef_SpinBox( anYAxisGrp ); - new QLabel( tr( "DY" ), anYAxisGrp ); - myData[ DY2 ] = new DlgRef_SpinBox( anYAxisGrp ); - new QLabel( tr( "DZ" ), anYAxisGrp ); - myData[ DZ2 ] = new DlgRef_SpinBox( anYAxisGrp ); + anOriGrpLayout->addWidget( new QLabel( tr( "GEOM_X" ), anOriGrp ) ); + myData[ X ] = new SalomeApp_DoubleSpinBox( anOriGrp ); + anOriGrpLayout->addWidget( myData[ X ] ); + anOriGrpLayout->addWidget( new QLabel( tr( "GEOM_Y" ), anOriGrp ) ); + myData[ Y ] = new SalomeApp_DoubleSpinBox( anOriGrp ); + anOriGrpLayout->addWidget( myData[ Y ] ); + anOriGrpLayout->addWidget( new QLabel( tr( "GEOM_Z" ), anOriGrp ) ); + myData[ Z ] = new SalomeApp_DoubleSpinBox( anOriGrp ); + anOriGrpLayout->addWidget( myData[ Z ] ); - Layout1->addWidget( aMainGrp, 2, 0 ); - Layout1->addWidget( Group1, 2, 0 ); - Layout1->addWidget( Group2, 2, 0 ); + aMainGrpLayout->addWidget( anOriGrp ); - setHelpFileName("create_lcs_page.html"); + QGroupBox* aXAxisGrp = new QGroupBox( tr( "XDIR" ), aMainGrp ); + QVBoxLayout* aXAxisGrpLayout = new QVBoxLayout( aXAxisGrp ); + + aXAxisGrpLayout->addWidget( new QLabel( tr( "DX" ), aXAxisGrp ) ); + myData[ DX1 ] = new SalomeApp_DoubleSpinBox( aXAxisGrp ); + aXAxisGrpLayout->addWidget( myData[ DX1 ] ); + aXAxisGrpLayout->addWidget( new QLabel( tr( "DY" ), aXAxisGrp ) ); + myData[ DY1 ] = new SalomeApp_DoubleSpinBox( aXAxisGrp ); + aXAxisGrpLayout->addWidget( myData[ DY1 ] ); + aXAxisGrpLayout->addWidget( new QLabel( tr( "DZ" ), aXAxisGrp ) ); + myData[ DZ1 ] = new SalomeApp_DoubleSpinBox( aXAxisGrp ); + aXAxisGrpLayout->addWidget( myData[ DZ1 ] ); + + aMainGrpLayout->addWidget( aXAxisGrp ); + + QGroupBox* anYAxisGrp = new QGroupBox( tr( "YDIR" ), aMainGrp ); + QVBoxLayout* anYAxisGrpLayout = new QVBoxLayout( anYAxisGrp ); + + anYAxisGrpLayout->addWidget( new QLabel( tr( "DX" ), anYAxisGrp ) ); + myData[ DX2 ] = new SalomeApp_DoubleSpinBox( anYAxisGrp ); + anYAxisGrpLayout->addWidget( myData[ DX2 ] ); + anYAxisGrpLayout->addWidget( new QLabel( tr( "DY" ), anYAxisGrp ) ); + myData[ DY2 ] = new SalomeApp_DoubleSpinBox( anYAxisGrp ); + anYAxisGrpLayout->addWidget( myData[ DY2 ] ); + anYAxisGrpLayout->addWidget( new QLabel( tr( "DZ" ), anYAxisGrp ) ); + myData[ DZ2 ] = new SalomeApp_DoubleSpinBox( anYAxisGrp ); + anYAxisGrpLayout->addWidget( myData[ DZ2 ] ); + + aMainGrpLayout->addWidget( anYAxisGrp ); + + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( aMainGrp ); + layout->addWidget( Group1 ); + layout->addWidget( Group2 ); + + setHelpFileName( "create_lcs_page.html" ); Init(); } + //================================================================================= // function : ~BasicGUI_MarkerDlg() // purpose : Destroys the object and frees any allocated resources @@ -132,6 +160,7 @@ BasicGUI_MarkerDlg::~BasicGUI_MarkerDlg() { } + //================================================================================= // function : Init() // purpose : @@ -145,49 +174,52 @@ void BasicGUI_MarkerDlg::Init() Group2->LineEdit1->setReadOnly( true ); Group2->LineEdit2->setReadOnly( true ); Group2->LineEdit3->setReadOnly( true ); + Group2->LineEdit1->setEnabled( true ); + Group2->LineEdit2->setEnabled( false ); + Group2->LineEdit3->setEnabled( false ); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); - connect(Group1->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(Group2->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(Group2->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(Group2->PushButton3, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); - connect(Group1->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(Group2->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(Group2->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(Group2->LineEdit3, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( Group1->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group2->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group2->PushButton2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group2->PushButton3, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect( buttonCancel, SIGNAL( clicked() ), this, SLOT( onClose() ) ); - connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), this, SLOT( onDeactivate() ) ); - connect( myGeomGUI, SIGNAL( SignalCloseAllDialogs() ), this, SLOT( onClose() ) ); + connect( Group1->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( Group2->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( Group2->LineEdit2, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( Group2->LineEdit3, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect( buttonOk, SIGNAL( clicked() ), this, SLOT( onOk() ) ); - connect( buttonApply, SIGNAL( clicked() ), this, SLOT( onApply() ) ); + connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), this, SLOT( onDeactivate() ) ); + connect( myGeomGUI, SIGNAL( SignalCloseAllDialogs() ), this, SLOT( ClickOnCancel() ) ); - connect(myGeomGUI->getApp()->selectionMgr(), + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( onOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( onApply() ) ); + + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), this, SLOT( onSelectionDone() ) ); initName( tr( "LCS_NAME" ) ); SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100); + double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100 ); - for ( DataMap::iterator anIter = myData.begin(); anIter != myData.end(); ++anIter ) - { - anIter.data()->RangeStepAndValidator( COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY ); - connect( anIter.data(), SIGNAL( valueChanged( double ) ), + for ( DataMap::iterator anIter = myData.begin(); anIter != myData.end(); ++anIter ) { + initSpinBox( anIter.value(), COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + connect( anIter.value(), SIGNAL( valueChanged( double ) ), this, SLOT( onValueChanged( double ) ) ); } - + myBlockPreview = true; for ( DataMap::iterator anIter = myData.begin(); anIter != myData.end(); ++anIter ) - anIter.data()->SetValue( 0 ); - myData[ DX1 ]->SetValue( 1 ); - myData[ DY2 ]->SetValue( 1 ); + anIter.value()->setValue( 0 ); + myData[ DX1 ]->setValue( 1 ); + myData[ DY2 ]->setValue( 1 ); myBlockPreview = false; ConstructorsClicked( 0 ); + //@ /* QAD_ViewFrame* aFrame = QAD_Application::getDesktop()->getActiveApp()-> @@ -212,8 +244,7 @@ void BasicGUI_MarkerDlg::Init() //================================================================================= void BasicGUI_MarkerDlg::ConstructorsClicked( int constructorId ) { - if ( myConstructorId == constructorId && myConstructorId == 0 ) - { + if ( myConstructorId == constructorId && myConstructorId == 0 ) { globalSelection(); // close local contexts, if any localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); activate( GEOM_MARKER ); @@ -223,15 +254,13 @@ void BasicGUI_MarkerDlg::ConstructorsClicked( int constructorId ) myConstructorId = constructorId; - disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + disconnect( myGeomGUI->getApp()->selectionMgr(), 0, this, 0 ); - switch (constructorId) - { + switch ( constructorId ) { case 0: { Group1->hide(); Group2->hide(); - resize(0, 0); aMainGrp->show(); globalSelection(); // close local contexts, if any localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); @@ -240,35 +269,42 @@ void BasicGUI_MarkerDlg::ConstructorsClicked( int constructorId ) } case 1: { - Group2->hide(); aMainGrp->hide(); - //PAL6669: resize(0, 0); + Group2->hide(); Group1->show(); - + Group1->PushButton1->setDown( true ); globalSelection( GEOM_ALLGEOM ); myEditCurrentArgument = Group1->LineEdit1; - Group1->LineEdit1->setText(""); + Group1->LineEdit1->setText( "" ); break; } case 2: { aMainGrp->hide(); - Group1->show(); - //PAL6669: resize(0, 0); + Group1->hide(); Group2->show(); - + Group2->PushButton1->setDown( true ); + Group2->PushButton2->setDown( false ); + Group2->PushButton3->setDown( false ); globalSelection(); // close local contexts, if any localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); myEditCurrentArgument = Group2->LineEdit1; - Group2->LineEdit1->setText(""); - Group2->LineEdit2->setText(""); - Group2->LineEdit3->setText(""); + Group2->LineEdit1->setText( "" ); + Group2->LineEdit2->setText( "" ); + Group2->LineEdit3->setText( "" ); + Group2->LineEdit1->setEnabled( true ); + Group2->LineEdit2->setEnabled( false ); + Group2->LineEdit3->setEnabled( false ); break; } } - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(onSelectionDone())); + qApp->processEvents(); + updateGeometry(); + resize( minimumSizeHint() ); + + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( onSelectionDone() ) ); onSelectionDone(); } @@ -279,16 +315,7 @@ void BasicGUI_MarkerDlg::ConstructorsClicked( int constructorId ) void BasicGUI_MarkerDlg::onOk() { if ( onApply() ) - onClose(); -} - -//======================================================================= -// function : onClose() -// purpose : -//======================================================================= -void BasicGUI_MarkerDlg::onClose() -{ - GEOMBase_Skeleton::ClickOnCancel(); + ClickOnCancel(); } //================================================================================= @@ -312,201 +339,204 @@ bool BasicGUI_MarkerDlg::onApply() //================================================================================= void BasicGUI_MarkerDlg::onSelectionDone0() { - if (IObjectCount() == 1) - { + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() == 1) { Standard_Boolean aRes = Standard_False; - Handle(SALOME_InteractiveObject) anIO = firstIObject(); + Handle(SALOME_InteractiveObject) anIO = aSelList.First(); GEOM::GEOM_Object_var aSelectedObj = GEOMBase::ConvertIOinGEOMObject(anIO, aRes); - - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); - - if (aRes && !aSelectedObj->_is_nil()) - { + + if ( aRes && !aSelectedObj->_is_nil() ) { TopoDS_Shape aShape; - if (GEOMBase::GetShape(aSelectedObj, aShape, TopAbs_SHAPE) && !aShape.IsNull()) - { + if ( GEOMBase::GetShape( aSelectedObj, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) { // Existing LCS selected - if (aSelectedObj->GetType() == GEOM_MARKER && aShape.ShapeType() == TopAbs_FACE) - { - TopoDS_Face aFace = TopoDS::Face(aShape); - Handle(Geom_Plane) aPlane = Handle(Geom_Plane)::DownCast(BRep_Tool::Surface(aFace)); - - if (!aPlane.IsNull()) - { + if ( aSelectedObj->GetType() == GEOM_MARKER && aShape.ShapeType() == TopAbs_FACE ) { + TopoDS_Face aFace = TopoDS::Face( aShape ); + Handle(Geom_Plane) aPlane = Handle(Geom_Plane)::DownCast( BRep_Tool::Surface( aFace ) ); + + if ( !aPlane.IsNull() ) { gp_Ax3 anAx3 = aPlane->Pln().Position(); gp_Pnt aLoc = anAx3.Location(); gp_Dir aXDir = anAx3.XDirection(); gp_Dir aYDir = anAx3.YDirection(); - - myData[ X ]->SetValue( aLoc.X() ); - myData[ Y ]->SetValue( aLoc.Y() ); - myData[ Z ]->SetValue( aLoc.Z() ); - - myData[ DX1 ]->SetValue( aXDir.X() ); - myData[ DY1 ]->SetValue( aXDir.Y() ); - myData[ DZ1 ]->SetValue( aXDir.Z() ); - - myData[ DX2 ]->SetValue( aYDir.X() ); - myData[ DY2 ]->SetValue( aYDir.Y() ); - myData[ DZ2 ]->SetValue( aYDir.Z() ); + + myData[ X ]->setValue( aLoc.X() ); + myData[ Y ]->setValue( aLoc.Y() ); + myData[ Z ]->setValue( aLoc.Z() ); + + myData[ DX1 ]->setValue( aXDir.X() ); + myData[ DY1 ]->setValue( aXDir.Y() ); + myData[ DZ1 ]->setValue( aXDir.Z() ); + + myData[ DX2 ]->setValue( aYDir.X() ); + myData[ DY2 ]->setValue( aYDir.Y() ); + myData[ DZ2 ]->setValue( aYDir.Z() ); aSelMgr->clearSelected(); } } - else - { + else { TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes(anIO, aMap); - if (aMap.Extent() == 1) // Local Selection - { - int anIndex = aMap(1); + aSelMgr->GetIndexes( anIO, aMap ); + if ( aMap.Extent() == 1 ) { // Local Selection + int anIndex = aMap( 1 ); TopTools_IndexedMapOfShape aShapes; - TopExp::MapShapes(aShape, aShapes); - aShape = aShapes.FindKey(anIndex); + TopExp::MapShapes( aShape, aShapes ); + aShape = aShapes.FindKey( anIndex ); aSelMgr->clearSelected(); // ??? } - if (!aShape.IsNull() && aShape.ShapeType() == TopAbs_VERTEX) - { - gp_Pnt aPnt = BRep_Tool::Pnt(TopoDS::Vertex(aShape)); - myData[ X ]->SetValue( aPnt.X() ); - myData[ Y ]->SetValue( aPnt.Y() ); - myData[ Z ]->SetValue( aPnt.Z() ); + if ( !aShape.IsNull() && aShape.ShapeType() == TopAbs_VERTEX ) { + gp_Pnt aPnt = BRep_Tool::Pnt( TopoDS::Vertex( aShape ) ); + myData[ X ]->setValue( aPnt.X() ); + myData[ Y ]->setValue( aPnt.Y() ); + myData[ Z ]->setValue( aPnt.Z() ); } } } } } - + displayPreview(); } + //================================================================================= // function : onSelectionDone() // purpose : Called when selection as changed or other case //================================================================================= void BasicGUI_MarkerDlg::onSelectionDone() { - if (getConstructorId() == 0) { + if ( getConstructorId() == 0 ) { onSelectionDone0(); return; } - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); - if (IObjectCount() == 1) { + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() == 1) { Standard_Boolean aRes = Standard_False; - Handle(SALOME_InteractiveObject) anIO = firstIObject(); - GEOM::GEOM_Object_var aSelectedObj = GEOMBase::ConvertIOinGEOMObject(anIO, aRes); + Handle(SALOME_InteractiveObject) anIO = aSelList.First(); + GEOM::GEOM_Object_var aSelectedObj = GEOMBase::ConvertIOinGEOMObject( anIO, aRes ); - if (!CORBA::is_nil(aSelectedObj) && aRes) { - QString aName = GEOMBase::GetName(aSelectedObj); - - if (getConstructorId() == 1) { // by shape position + if ( !CORBA::is_nil( aSelectedObj ) && aRes ) { + QString aName = GEOMBase::GetName( aSelectedObj ); + + if ( getConstructorId() == 1 ) { // by shape position // Get shape's position - CORBA::Double Ox,Oy,Oz, Zx,Zy,Zz, Xx,Xy,Xz, Yx,Yy,Yz; + CORBA::Double Ox, Oy, Oz, Zx, Zy, Zz, Xx, Xy, Xz, Yx, Yy, Yz; Ox = Oy = Oz = Zx = Zy = Xy = Xz = Yx = Yz = 0; Zz = Xx = Yy = 1.; - + GEOM::GEOM_IMeasureOperations_ptr aMeasureOp = - myGeomGUI->GetGeomGen()->GetIMeasureOperations(getStudyId()); - aMeasureOp->GetPosition(aSelectedObj, Ox,Oy,Oz, Zx,Zy,Zz, Xx,Xy,Xz); - + myGeomGUI->GetGeomGen()->GetIMeasureOperations( getStudyId() ); + aMeasureOp->GetPosition( aSelectedObj, Ox, Oy, Oz, Zx, Zy, Zz, Xx, Xy, Xz ); + // Calculate Y direction - if (aMeasureOp->IsDone()) { - gp_Pnt aPnt (Ox,Oy,Oz); - gp_Dir aDirN (Zx,Zy,Zz); - gp_Dir aDirX (Xx,Xy,Xz); - gp_Ax3 anAx3 (aPnt, aDirN, aDirX); + if ( aMeasureOp->IsDone() ) { + gp_Pnt aPnt ( Ox, Oy, Oz ); + gp_Dir aDirN ( Zx, Zy, Zz ); + gp_Dir aDirX ( Xx, Xy, Xz ); + gp_Ax3 anAx3 ( aPnt, aDirN, aDirX ); gp_Dir aDirY = anAx3.YDirection(); aDirY.Coord(Yx,Yy,Yz); } // Set values - myData[ X ]->SetValue( Ox ); - myData[ Y ]->SetValue( Oy ); - myData[ Z ]->SetValue( Oz ); + myData[ X ]->setValue( Ox ); + myData[ Y ]->setValue( Oy ); + myData[ Z ]->setValue( Oz ); - myData[ DX1 ]->SetValue( Xx ); - myData[ DY1 ]->SetValue( Xy ); - myData[ DZ1 ]->SetValue( Xz ); + myData[ DX1 ]->setValue( Xx ); + myData[ DY1 ]->setValue( Xy ); + myData[ DZ1 ]->setValue( Xz ); - myData[ DX2 ]->SetValue( Yx ); - myData[ DY2 ]->SetValue( Yy ); - myData[ DZ2 ]->SetValue( Yz ); + myData[ DX2 ]->setValue( Yx ); + myData[ DY2 ]->setValue( Yy ); + myData[ DZ2 ]->setValue( Yz ); - myEditCurrentArgument->setText(aName); + myEditCurrentArgument->setText( aName ); } - else if (getConstructorId() == 2) { // by point and two vectors + else if ( getConstructorId() == 2 ) { // by point and two vectors TopoDS_Shape aShape; - if (GEOMBase::GetShape(aSelectedObj, aShape, TopAbs_SHAPE)) - { + if ( GEOMBase::GetShape( aSelectedObj, aShape, TopAbs_SHAPE ) ) { TopAbs_ShapeEnum aNeedType = TopAbs_EDGE; - if (myEditCurrentArgument == Group2->LineEdit1) + if ( myEditCurrentArgument == Group2->LineEdit1 ) aNeedType = TopAbs_VERTEX; - + TColStd_IndexedMapOfInteger aMap; - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); - aSelMgr->GetIndexes(anIO, aMap); + aSelMgr->GetIndexes( anIO, aMap ); - if (!aMap.IsEmpty()) { - int anIndex = aMap(1); - if (aNeedType == TopAbs_EDGE) - aName += QString("_edge_%1").arg(anIndex); + if ( !aMap.IsEmpty() ) { + int anIndex = aMap( 1 ); + if ( aNeedType == TopAbs_EDGE ) + aName += QString( "_edge_%1" ).arg( anIndex ); else - aName += QString("_vertex_%1").arg(anIndex); + aName += QString( "_vertex_%1" ).arg( anIndex ); TopTools_IndexedMapOfShape aShapes; - TopExp::MapShapes(aShape, aShapes); - aShape = aShapes.FindKey(anIndex); + TopExp::MapShapes( aShape, aShapes ); + aShape = aShapes.FindKey( anIndex ); } - if (myEditCurrentArgument == Group2->LineEdit1) { - if (!aShape.IsNull() && aShape.ShapeType() == TopAbs_VERTEX) { - gp_Pnt aPnt = BRep_Tool::Pnt(TopoDS::Vertex(aShape)); - myData[ X ]->SetValue( aPnt.X() ); - myData[ Y ]->SetValue( aPnt.Y() ); - myData[ Z ]->SetValue( aPnt.Z() ); - myEditCurrentArgument->setText(aName); + if ( myEditCurrentArgument == Group2->LineEdit1 ) { + if ( !aShape.IsNull() && aShape.ShapeType() == TopAbs_VERTEX ) { + gp_Pnt aPnt = BRep_Tool::Pnt( TopoDS::Vertex( aShape ) ); + myData[ X ]->setValue( aPnt.X() ); + myData[ Y ]->setValue( aPnt.Y() ); + myData[ Z ]->setValue( aPnt.Z() ); + myEditCurrentArgument->setText( aName ); + if (Group2->LineEdit2->text() == "") + Group2->PushButton2->click(); } else { - myData[ X ]->SetValue( 0 ); - myData[ Y ]->SetValue( 0 ); - myData[ Z ]->SetValue( 0 ); + myData[ X ]->setValue( 0 ); + myData[ Y ]->setValue( 0 ); + myData[ Z ]->setValue( 0 ); } } else if (myEditCurrentArgument == Group2->LineEdit2) { if ( !aShape.IsNull() && aShape.ShapeType() == TopAbs_EDGE ) { - gp_Pnt aP1 = BRep_Tool::Pnt(TopExp::FirstVertex(TopoDS::Edge(aShape))); - gp_Pnt aP2 = BRep_Tool::Pnt(TopExp::LastVertex(TopoDS::Edge(aShape))); - gp_Dir aDir (gp_Vec(aP1, aP2)); + gp_Pnt aP1 = BRep_Tool::Pnt( TopExp::FirstVertex( TopoDS::Edge( aShape ) ) ); + gp_Pnt aP2 = BRep_Tool::Pnt( TopExp::LastVertex( TopoDS::Edge( aShape ) ) ); + gp_Dir aDir( gp_Vec( aP1, aP2 ) ); - myData[ DX1 ]->SetValue( aDir.X() ); - myData[ DY1 ]->SetValue( aDir.Y() ); - myData[ DZ1 ]->SetValue( aDir.Z() ); - myEditCurrentArgument->setText(aName); + myData[ DX1 ]->setValue( aDir.X() ); + myData[ DY1 ]->setValue( aDir.Y() ); + myData[ DZ1 ]->setValue( aDir.Z() ); + myEditCurrentArgument->setText( aName ); + if (Group2->LineEdit3->text() == "") + Group2->PushButton3->click(); } else { - myData[ DX1 ]->SetValue( 0 ); - myData[ DY1 ]->SetValue( 0 ); - myData[ DZ1 ]->SetValue( 0 ); + myData[ DX1 ]->setValue( 0 ); + myData[ DY1 ]->setValue( 0 ); + myData[ DZ1 ]->setValue( 0 ); } } - else if (myEditCurrentArgument == Group2->LineEdit3) { + else if ( myEditCurrentArgument == Group2->LineEdit3 ) { if ( !aShape.IsNull() && aShape.ShapeType() == TopAbs_EDGE ) { - gp_Pnt aP1 = BRep_Tool::Pnt(TopExp::FirstVertex(TopoDS::Edge(aShape))); - gp_Pnt aP2 = BRep_Tool::Pnt(TopExp::LastVertex(TopoDS::Edge(aShape))); - gp_Dir aDir(gp_Vec(aP1, aP2)); + gp_Pnt aP1 = BRep_Tool::Pnt( TopExp::FirstVertex( TopoDS::Edge( aShape ) ) ); + gp_Pnt aP2 = BRep_Tool::Pnt( TopExp::LastVertex( TopoDS::Edge( aShape ) ) ); + gp_Dir aDir(gp_Vec( aP1, aP2 )); - myData[ DX2 ]->SetValue( aDir.X() ); - myData[ DY2 ]->SetValue( aDir.Y() ); - myData[ DZ2 ]->SetValue( aDir.Z() ); - myEditCurrentArgument->setText(aName); + myData[ DX2 ]->setValue( aDir.X() ); + myData[ DY2 ]->setValue( aDir.Y() ); + myData[ DZ2 ]->setValue( aDir.Z() ); + myEditCurrentArgument->setText( aName ); + if (Group2->LineEdit1->text() == "") + Group2->PushButton1->click(); } else { - myData[ DX2 ]->SetValue( 0 ); - myData[ DY2 ]->SetValue( 0 ); - myData[ DZ2 ]->SetValue( 0 ); + myData[ DX2 ]->setValue( 0 ); + myData[ DY2 ]->setValue( 0 ); + myData[ DZ2 ]->setValue( 0 ); } } } @@ -515,33 +545,33 @@ void BasicGUI_MarkerDlg::onSelectionDone() } else { if ( getConstructorId() == 1 ) { - myData[ X ]->SetValue( 0 ); - myData[ Y ]->SetValue( 0 ); - myData[ Z ]->SetValue( 0 ); + myData[ X ]->setValue( 0 ); + myData[ Y ]->setValue( 0 ); + myData[ Z ]->setValue( 0 ); - myData[ DX1 ]->SetValue( 0 ); - myData[ DY1 ]->SetValue( 0 ); - myData[ DZ1 ]->SetValue( 0 ); + myData[ DX1 ]->setValue( 0 ); + myData[ DY1 ]->setValue( 0 ); + myData[ DZ1 ]->setValue( 0 ); - myData[ DX2 ]->SetValue( 0 ); - myData[ DY2 ]->SetValue( 0 ); - myData[ DZ2 ]->SetValue( 0 ); + myData[ DX2 ]->setValue( 0 ); + myData[ DY2 ]->setValue( 0 ); + myData[ DZ2 ]->setValue( 0 ); } else if ( getConstructorId() == 2 ) { - if (myEditCurrentArgument == Group2->LineEdit1) { - myData[ X ]->SetValue( 0 ); - myData[ Y ]->SetValue( 0 ); - myData[ Z ]->SetValue( 0 ); + if ( myEditCurrentArgument == Group2->LineEdit1 ) { + myData[ X ]->setValue( 0 ); + myData[ Y ]->setValue( 0 ); + myData[ Z ]->setValue( 0 ); } - else if (myEditCurrentArgument == Group2->LineEdit2) { - myData[ DX1 ]->SetValue( 0 ); - myData[ DY1 ]->SetValue( 0 ); - myData[ DZ1 ]->SetValue( 0 ); + else if ( myEditCurrentArgument == Group2->LineEdit2 ) { + myData[ DX1 ]->setValue( 0 ); + myData[ DY1 ]->setValue( 0 ); + myData[ DZ1 ]->setValue( 0 ); } - else if (myEditCurrentArgument == Group2->LineEdit3) { - myData[ DX2 ]->SetValue( 0 ); - myData[ DY2 ]->SetValue( 0 ); - myData[ DZ2 ]->SetValue( 0 ); + else if ( myEditCurrentArgument == Group2->LineEdit3 ) { + myData[ DX2 ]->setValue( 0 ); + myData[ DY2 ]->setValue( 0 ); + myData[ DZ2 ]->setValue( 0 ); } } } @@ -556,30 +586,42 @@ void BasicGUI_MarkerDlg::onSelectionDone() void BasicGUI_MarkerDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); + globalSelection(); // close local contexts, if any - if (send == Group1->PushButton1) { + if ( send == Group1->PushButton1 ) { myEditCurrentArgument = Group1->LineEdit1; globalSelection( GEOM_ALLGEOM ); } - else if (send == Group2->PushButton1) { + else if ( send == Group2->PushButton1 ) { myEditCurrentArgument = Group2->LineEdit1; - //globalSelection( GEOM_POINT ); - globalSelection(); // close local contexts, if any localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + Group2->PushButton2->setDown( false ); + Group2->PushButton3->setDown( false ); + Group2->LineEdit1->setEnabled( true ); + Group2->LineEdit2->setEnabled( false ); + Group2->LineEdit3->setEnabled( false ); } - else if (send == Group2->PushButton2) { + else if ( send == Group2->PushButton2 ) { myEditCurrentArgument = Group2->LineEdit2; - //globalSelection( GEOM_LINE ); - globalSelection(); // close local contexts, if any localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + Group2->PushButton1->setDown( false ); + Group2->PushButton3->setDown( false ); + Group2->LineEdit1->setEnabled( false ); + Group2->LineEdit2->setEnabled( true ); + Group2->LineEdit3->setEnabled( false ); } - else if (send == Group2->PushButton3) { + else if ( send == Group2->PushButton3 ) { myEditCurrentArgument = Group2->LineEdit3; - globalSelection(); // close local contexts, if any localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + Group2->PushButton1->setDown( false ); + Group2->PushButton2->setDown( false ); + Group2->LineEdit1->setEnabled( false ); + Group2->LineEdit2->setEnabled( false ); + Group2->LineEdit3->setEnabled( true ); } - + myEditCurrentArgument->setFocus(); + send->setDown(true); onSelectionDone(); } @@ -602,10 +644,10 @@ void BasicGUI_MarkerDlg::LineEditReturnPressed() void BasicGUI_MarkerDlg::onActivate() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(onSelectionDone())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( onSelectionDone() ) ); - ConstructorsClicked(getConstructorId()); + ConstructorsClicked( getConstructorId() ); } //================================================================================= @@ -621,9 +663,9 @@ void BasicGUI_MarkerDlg::onDeactivate() // function : enterEvent() // purpose : //================================================================================= -void BasicGUI_MarkerDlg::enterEvent(QEvent* e) +void BasicGUI_MarkerDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) onActivate(); } @@ -643,8 +685,8 @@ GEOM::GEOM_IOperations_ptr BasicGUI_MarkerDlg::createOperation() bool BasicGUI_MarkerDlg::isValid( QString& msg ) { const int id = getConstructorId(); - gp_Vec v1( myData[ DX1 ]->GetValue(), myData[ DY1 ]->GetValue(), myData[ DZ1 ]->GetValue() ), - v2( myData[ DX2 ]->GetValue(), myData[ DY2 ]->GetValue(), myData[ DZ2 ]->GetValue() ); + gp_Vec v1( myData[ DX1 ]->value(), myData[ DY1 ]->value(), myData[ DZ1 ]->value() ), + v2( myData[ DX2 ]->value(), myData[ DY2 ]->value(), myData[ DZ2 ]->value() ); bool isOk = false; // we will got exception if the magnitude of any of the 2 vectors <= gp::Resolution() @@ -655,16 +697,19 @@ bool BasicGUI_MarkerDlg::isValid( QString& msg ) msg += tr( "VEC_PARALLEL" ); } - switch ( id ) - { - case 0: - return isOk; - case 1: - return !Group1->LineEdit1->text().isEmpty() && isOk; - case 2: - return !Group2->LineEdit1->text().isEmpty() && - !Group2->LineEdit2->text().isEmpty() && - !Group2->LineEdit3->text().isEmpty() && isOk; + switch ( id ) { + case 0: { + bool ok = true; + for ( DataMap::iterator anIter = myData.begin(); anIter != myData.end(); ++anIter ) + ok = anIter.value()->isValid( msg, !IsPreview()) && ok; + return isOk && ok; + } + case 1: + return !Group1->LineEdit1->text().isEmpty() && isOk; + case 2: + return !Group2->LineEdit1->text().isEmpty() && + !Group2->LineEdit2->text().isEmpty() && + !Group2->LineEdit3->text().isEmpty() && isOk; } return false; } @@ -675,26 +720,30 @@ bool BasicGUI_MarkerDlg::isValid( QString& msg ) //================================================================================= bool BasicGUI_MarkerDlg::execute( ObjectList& objects ) { - GEOM::GEOM_Object_var anObj = GEOM::GEOM_IBasicOperations::_narrow(getOperation())-> - MakeMarker(myData[ X ]->GetValue(), myData[ Y ]->GetValue(), myData[ Z ]->GetValue(), - myData[ DX1 ]->GetValue(), myData[ DY1 ]->GetValue(), myData[ DZ1 ]->GetValue(), - myData[ DX2 ]->GetValue(), myData[ DY2 ]->GetValue(), myData[ DZ2 ]->GetValue()); - - if ( !anObj->_is_nil() ) + GEOM::GEOM_Object_var anObj = GEOM::GEOM_IBasicOperations::_narrow( + getOperation() )->MakeMarker( myData[ X ]->value(), myData[ Y ]->value(), myData[ Z ]->value(), + myData[ DX1 ]->value(), myData[ DY1 ]->value(), myData[ DZ1 ]->value(), + myData[ DX2 ]->value(), myData[ DY2 ]->value(), myData[ DZ2 ]->value() ); + QStringList aParameters; + aParameters<text(); + aParameters<text(); + aParameters<text(); + aParameters<text(); + aParameters<text(); + aParameters<text(); + aParameters<text(); + aParameters<text(); + aParameters<text(); + + if ( !anObj->_is_nil() ) { + if ( !IsPreview() ) + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); objects.push_back( anObj._retn() ); + } return true; } -//================================================================================= -// function : closeEvent -// purpose : -//================================================================================= -void BasicGUI_MarkerDlg::closeEvent( QCloseEvent* e ) -{ - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : onValueChanged // purpose : @@ -713,12 +762,9 @@ void BasicGUI_MarkerDlg::displayPreview ( const bool activate, const bool toRemoveFromEngine, const double lineWidth ) { - if ( !myBlockPreview ) - { + if ( !myBlockPreview ) { GEOMBase_Skeleton::displayPreview( activate, update, toRemoveFromEngine, lineWidth ); if ( myConstructorId == 0 ) - { GEOMBase_Skeleton::activate( GEOM_MARKER ); - } } } diff --git a/src/BasicGUI/BasicGUI_MarkerDlg.h b/src/BasicGUI/BasicGUI_MarkerDlg.h index 7ba75b60b..364b0d737 100644 --- a/src/BasicGUI/BasicGUI_MarkerDlg.h +++ b/src/BasicGUI/BasicGUI_MarkerDlg.h @@ -1,73 +1,68 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : BasicGUI_MarkerDlg.h -// Author : Sergey LITONIN -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_MarkerDlg.h +// Author : Sergey LITONIN, Open CASCADE S.A.S. (sergey.litonin@opencascade.com) +// +#ifndef BASICGUI_MARKERDLG_H +#define BASICGUI_MARKERDLG_H -#ifndef DIALOGBOX_Marker_H -#define DIALOGBOX_Marker_H +#include -#include "GEOM_BasicGUI.hxx" +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel_QTD.h" -#include "DlgRef_3Sel_QTD.h" +class DlgRef_1Sel; +class DlgRef_3Sel; +class SalomeApp_DoubleSpinBox; +class QFrame; -#include - -class DlgRef_SpinBox; - -class GEOM_BASICGUI_EXPORT BasicGUI_MarkerDlg : public GEOMBase_Skeleton +class BasicGUI_MarkerDlg : public GEOMBase_Skeleton { Q_OBJECT private: enum { X, Y, Z, DX1, DY1, DZ1, DX2, DY2, DZ2 }; - typedef QMap< int, DlgRef_SpinBox* > DataMap; + typedef QMap< int, SalomeApp_DoubleSpinBox* > DataMap; public: - BasicGUI_MarkerDlg( GeometryGUI* theGeometryGUI, QWidget* ); + BasicGUI_MarkerDlg( GeometryGUI*, QWidget* ); virtual ~BasicGUI_MarkerDlg(); void Init(); protected: virtual GEOM::GEOM_IOperations_ptr createOperation(); virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void closeEvent( QCloseEvent* e ); - virtual void displayPreview ( const bool activate = false, - const bool update = true, - const bool toRemoveFromEngine = true, - const double lineWidth = -1 ); + virtual bool execute( ObjectList& ); + virtual void displayPreview ( const bool = false, + const bool = true, + const bool = true, + const double = -1 ); private: - void enterEvent( QEvent* e ); + void enterEvent( QEvent* ); void onSelectionDone0(); private slots: void onOk(); - void onClose(); bool onApply(); void onActivate(); void onDeactivate(); @@ -82,10 +77,9 @@ private: int myConstructorId; int myBlockPreview; - QGroupBox* aMainGrp; - DlgRef_1Sel_QTD* Group1; - DlgRef_3Sel_QTD* Group2; - + QFrame* aMainGrp; + DlgRef_1Sel* Group1; + DlgRef_3Sel* Group2; }; -#endif // DIALOGBOX_Marker_H +#endif // BASICGUI_MARKERDLG_H diff --git a/src/BasicGUI/BasicGUI_PlaneDlg.cxx b/src/BasicGUI/BasicGUI_PlaneDlg.cxx index 64936d546..8d5b14f37 100644 --- a/src/BasicGUI/BasicGUI_PlaneDlg.cxx +++ b/src/BasicGUI/BasicGUI_PlaneDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -19,22 +19,23 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_PlaneDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : BasicGUI_PlaneDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "BasicGUI_PlaneDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include + +#include +#include + +#include +#include +#include +#include #include - #include #include #include @@ -42,11 +43,7 @@ #include #include -#include - -#include "GEOMImpl_Types.hxx" - -using namespace std; +#include //================================================================================= // class : BasicGUI_PlaneDlg() @@ -55,62 +52,75 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BasicGUI_PlaneDlg::BasicGUI_PlaneDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BasicGUI_PlaneDlg::BasicGUI_PlaneDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_PLANE_PV"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_PLANE_3PNTS"))); - QPixmap image2(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_PLANE_FACE"))); - QPixmap image3(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_PLANE_PV" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_PLANE_3PNTS" ) ) ); + QPixmap image2( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_PLANE_FACE" ) ) ); + QPixmap image3( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_PLANE_TITLE")); + setWindowTitle( tr( "GEOM_PLANE_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_PLANE")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image1); - RadioButton3->setPixmap(image2); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_PLANE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setIcon( image1 ); + mainFrame()->RadioButton3->setIcon( image2 ); - GroupPntDir = new DlgRef_2Sel1Spin(this, "GroupPointDirection"); - GroupPntDir->GroupBox1->setTitle(tr("GEOM_PLANE_PV")); - GroupPntDir->TextLabel1->setText(tr("GEOM_POINT")); - GroupPntDir->TextLabel2->setText(tr("GEOM_VECTOR")); - GroupPntDir->TextLabel3->setText(tr("GEOM_PLANE_SIZE")); - GroupPntDir->PushButton1->setPixmap(image3); - GroupPntDir->PushButton2->setPixmap(image3); + GroupPntDir = new DlgRef_2Sel1Spin( centralWidget() ); + GroupPntDir->GroupBox1->setTitle( tr( "GEOM_PLANE_PV" ) ); + GroupPntDir->TextLabel1->setText( tr( "GEOM_POINT" ) ); + GroupPntDir->TextLabel2->setText( tr( "GEOM_VECTOR" ) ); + GroupPntDir->TextLabel3->setText( tr( "GEOM_PLANE_SIZE" ) ); + GroupPntDir->PushButton1->setIcon( image3 ); + GroupPntDir->PushButton2->setIcon( image3 ); GroupPntDir->LineEdit1->setReadOnly( true ); GroupPntDir->LineEdit2->setReadOnly( true ); + GroupPntDir->PushButton1->setDown( true ); + GroupPntDir->LineEdit1->setEnabled( true ); + GroupPntDir->LineEdit2->setEnabled( false ); - Group3Pnts = new DlgRef_3Sel1Spin(this, "Group3Pnts"); - Group3Pnts->GroupBox1->setTitle(tr("GEOM_3_POINTS")); - Group3Pnts->TextLabel1->setText(tr("GEOM_POINT1")); - Group3Pnts->TextLabel2->setText(tr("GEOM_POINT2")); - Group3Pnts->TextLabel3->setText(tr("GEOM_POINT3")); - Group3Pnts->TextLabel4->setText(tr("GEOM_PLANE_SIZE")); - Group3Pnts->PushButton1->setPixmap(image3); - Group3Pnts->PushButton2->setPixmap(image3); - Group3Pnts->PushButton3->setPixmap(image3); + Group3Pnts = new DlgRef_3Sel1Spin( centralWidget() ); + Group3Pnts->GroupBox1->setTitle( tr( "GEOM_3_POINTS" ) ); + Group3Pnts->TextLabel1->setText( tr( "GEOM_POINT1" ) ); + Group3Pnts->TextLabel2->setText( tr( "GEOM_POINT2" ) ); + Group3Pnts->TextLabel3->setText( tr( "GEOM_POINT3" ) ); + Group3Pnts->TextLabel4->setText( tr( "GEOM_PLANE_SIZE" ) ); + Group3Pnts->PushButton1->setIcon( image3 ); + Group3Pnts->PushButton2->setIcon( image3 ); + Group3Pnts->PushButton3->setIcon( image3 ); + Group3Pnts->PushButton1->setDown( true ); Group3Pnts->LineEdit1->setReadOnly( true ); Group3Pnts->LineEdit2->setReadOnly( true ); Group3Pnts->LineEdit3->setReadOnly( true ); + Group3Pnts->LineEdit1->setEnabled( true ); + Group3Pnts->LineEdit2->setEnabled( false ); + Group3Pnts->LineEdit3->setEnabled( false ); - GroupFace = new DlgRef_1Sel1Spin(this, "GroupFace"); - GroupFace->GroupBox1->setTitle(tr("GEOM_FACE_OR_LCS")); - GroupFace->TextLabel1->setText(tr("GEOM_SELECTION")); - GroupFace->TextLabel2->setText(tr("GEOM_PLANE_SIZE")); - GroupFace->PushButton1->setPixmap(image3); + GroupFace = new DlgRef_3Radio1Sel1Spin( centralWidget() ); + GroupFace->RadioButton1->setText(tr("GEOM_FACE")); + GroupFace->RadioButton2->setText(tr("GEOM_LCS")); + GroupFace->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + GroupFace->RadioButton3->close(); + GroupFace->GroupBox1->setTitle( tr( "GEOM_FACE_OR_LCS" ) ); + GroupFace->TextLabel1->setText( tr( "GEOM_SELECTION" ) ); + GroupFace->TextLabel2->setText( tr( "GEOM_PLANE_SIZE" ) ); + GroupFace->PushButton1->setIcon( image3 ); + GroupFace->PushButton1->setDown( true ); GroupFace->LineEdit1->setReadOnly( true ); - Layout1->addWidget(GroupPntDir, 2, 0); - Layout1->addWidget(Group3Pnts, 2, 0); - Layout1->addWidget(GroupFace, 2, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPntDir ); + layout->addWidget( Group3Pnts ); + layout->addWidget( GroupFace ); /***************************************************************/ - setHelpFileName("create_plane_page.html"); + setHelpFileName( "create_plane_page.html" ); Init(); } @@ -133,6 +143,7 @@ void BasicGUI_PlaneDlg::Init() { /* init variables */ myEditCurrentArgument = GroupPntDir->LineEdit1; + GroupFace->RadioButton1->setChecked(true); myPoint = myDir = myPoint1 = myPoint2 = myPoint3 = myFace = GEOM::GEOM_Object::_nil(); @@ -140,81 +151,111 @@ void BasicGUI_PlaneDlg::Init() /* Get setting of step value from file configuration */ SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - double aStep = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100); + double aStep = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100 ); double aTrimSize = 2000.0; /* min, max, step and decimals for spin boxes */ - GroupPntDir->SpinBox_DX->RangeStepAndValidator(0.001, COORD_MAX, aStep, DBL_DIGITS_DISPLAY); - GroupPntDir->SpinBox_DX->SetValue( aTrimSize ); - Group3Pnts->SpinBox_DX->RangeStepAndValidator(0.001, COORD_MAX, aStep, DBL_DIGITS_DISPLAY); - Group3Pnts->SpinBox_DX->SetValue( aTrimSize ); - GroupFace->SpinBox_DX->RangeStepAndValidator(0.001, COORD_MAX, aStep, DBL_DIGITS_DISPLAY); - GroupFace->SpinBox_DX->SetValue( aTrimSize ); + initSpinBox( GroupPntDir->SpinBox_DX, 0.000001, COORD_MAX, aStep, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + GroupPntDir->SpinBox_DX->setValue( aTrimSize ); + initSpinBox( Group3Pnts->SpinBox_DX, 0.000001, COORD_MAX, aStep, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + Group3Pnts->SpinBox_DX->setValue( aTrimSize ); + initSpinBox( GroupFace->SpinBox_DX, 0.000001, COORD_MAX, aStep, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + GroupFace->SpinBox_DX->setValue( aTrimSize ); /* signals and slots connections */ - connect(buttonCancel, SIGNAL(clicked()), this, SLOT(ClickOnCancel())); - connect(myGeomGUI, SIGNAL(SignalDeactivateActiveDialog()), this, SLOT(DeactivateActiveDialog())); - connect(myGeomGUI, SIGNAL(SignalCloseAllDialogs()), this, SLOT(ClickOnCancel())); + connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), this, SLOT( DeactivateActiveDialog() ) ); + connect( myGeomGUI, SIGNAL( SignalCloseAllDialogs() ), this, SLOT( ClickOnCancel() ) ); - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupPntDir->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPntDir->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(Group3Pnts->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(Group3Pnts->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(Group3Pnts->PushButton3, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupFace->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); - connect(GroupPntDir->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPntDir->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(Group3Pnts->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(Group3Pnts->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(Group3Pnts->LineEdit3, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupFace->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( GroupPntDir->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPntDir->PushButton2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group3Pnts->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group3Pnts->PushButton2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group3Pnts->PushButton3, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupFace->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect(GroupPntDir->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(Group3Pnts->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(GroupFace->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); + connect( GroupPntDir->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( GroupPntDir->LineEdit2, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( Group3Pnts->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( Group3Pnts->LineEdit2, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( Group3Pnts->LineEdit3, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( GroupFace->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( GroupFace->RadioButton1,SIGNAL( clicked() ), this, SLOT( SelectionTypeClicked() ) ); + connect( GroupFace->RadioButton2,SIGNAL( clicked() ), this, SLOT( SelectionTypeClicked() ) ); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPntDir->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), Group3Pnts->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupFace->SpinBox_DX, SLOT(SetStep(double))); + connect( GroupPntDir->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( Group3Pnts->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupFace->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI, SIGNAL( SignalDefaultStepValueChanged( double ) ), this, SLOT( SetDoubleSpinBoxStep( double ) ) ); + + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); initName( tr( "GEOM_PLANE" ) ); - Group3Pnts->hide(); - GroupFace->hide(); ConstructorsClicked( 0 ); } +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void BasicGUI_PlaneDlg::SetDoubleSpinBoxStep( double step ) +{ + GroupPntDir->SpinBox_DX->setSingleStep(step); + Group3Pnts->SpinBox_DX->setSingleStep(step); + GroupFace->SpinBox_DX->setSingleStep(step); +} + +//================================================================================= +// function : SelectionTypeClicked() +// purpose : Selection type radio buttons managment +//================================================================================= +void BasicGUI_PlaneDlg::SelectionTypeClicked() +{ + myFace = GEOM::GEOM_Object::_nil(); + if ( GroupFace->RadioButton1->isChecked()) { + globalSelection(); // close local contexts, if any + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_FACE ); + } else if ( GroupFace->RadioButton2->isChecked()) { + TColStd_MapOfInteger aMap; + aMap.Add( GEOM_PLANE ); + aMap.Add( GEOM_MARKER ); + globalSelection( aMap ); + } + displayPreview(); +} + //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void BasicGUI_PlaneDlg::ConstructorsClicked(int constructorId) +void BasicGUI_PlaneDlg::ConstructorsClicked( int constructorId ) { - disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + disconnect( myGeomGUI->getApp()->selectionMgr(), 0, this, 0 ); myPoint = myDir = myPoint1 = myPoint2 = myPoint3 = myFace = GEOM::GEOM_Object::_nil(); - switch (constructorId) - { + switch ( constructorId ) { case 0: /* plane from a point and a direction (vector, edge...) */ { Group3Pnts->hide(); GroupFace->hide(); - resize(0, 0); GroupPntDir->show(); - + myEditCurrentArgument = GroupPntDir->LineEdit1; - GroupPntDir->LineEdit1->setText(tr("")); - GroupPntDir->LineEdit2->setText(tr("")); - + GroupPntDir->LineEdit1->setText( "" ); + GroupPntDir->LineEdit2->setText( "" ); + GroupPntDir->PushButton1->setDown( true ); + GroupPntDir->PushButton2->setDown( false ); + GroupPntDir->LineEdit1->setEnabled( true ); + GroupPntDir->LineEdit2->setEnabled( false ); + /* for the first argument */ globalSelection(); // close local contexts, if any localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); @@ -224,44 +265,57 @@ void BasicGUI_PlaneDlg::ConstructorsClicked(int constructorId) { GroupPntDir->hide(); GroupFace->hide(); - resize(0, 0); Group3Pnts->show(); - + myEditCurrentArgument = Group3Pnts->LineEdit1; - Group3Pnts->LineEdit1->setText(""); - Group3Pnts->LineEdit2->setText(""); - Group3Pnts->LineEdit3->setText(""); - + Group3Pnts->LineEdit1->setText( "" ); + Group3Pnts->LineEdit2->setText( "" ); + Group3Pnts->LineEdit3->setText( "" ); + Group3Pnts->PushButton1->setDown( true ); + Group3Pnts->PushButton2->setDown( false ); + Group3Pnts->PushButton3->setDown( false ); + Group3Pnts->LineEdit1->setEnabled( true ); + Group3Pnts->LineEdit2->setEnabled( false ); + Group3Pnts->LineEdit3->setEnabled( false ); + /* for the first argument */ globalSelection(); // close local contexts, if any localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); break; } - case 2: /* plane from a planar face selection */ + case 2: /* plane from a planar face or LSC selection */ { GroupPntDir->hide(); Group3Pnts->hide(); - resize(0, 0); GroupFace->show(); - + myEditCurrentArgument = GroupFace->LineEdit1; - GroupFace->LineEdit1->setText(tr("")); - - /* for the first argument */ - //globalSelection( GEOM_PLANE ); - TColStd_MapOfInteger aMap; - aMap.Add( GEOM_PLANE ); - aMap.Add( GEOM_MARKER ); - globalSelection( aMap ); + GroupFace->LineEdit1->setText( "" ); + GroupFace->PushButton1->setDown( true ); + + if ( GroupFace->RadioButton1->isChecked()) { + globalSelection(); // close local contexts, if any + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_FACE ); + } else if ( GroupFace->RadioButton2->isChecked()) { + TColStd_MapOfInteger aMap; + aMap.Add( GEOM_PLANE ); + aMap.Add( GEOM_MARKER ); + globalSelection( aMap ); + } break; } } + + qApp->processEvents(); + updateGeometry(); + resize( minimumSizeHint() ); myEditCurrentArgument->setFocus(); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); } + //================================================================================= // function : ClickOnOk() // purpose : @@ -272,6 +326,7 @@ void BasicGUI_PlaneDlg::ClickOnOk() ClickOnCancel(); } + //================================================================================= // function : ClickOnApply() // purpose : @@ -286,15 +341,6 @@ bool BasicGUI_PlaneDlg::ClickOnApply() return true; } -//======================================================================= -// function : ClickOnCancel() -// purpose : -//======================================================================= -void BasicGUI_PlaneDlg::ClickOnCancel() -{ - GEOMBase_Skeleton::ClickOnCancel(); -} - //================================================================================= // function : SelectionIntoArgument() // purpose : Called when selection has changed @@ -303,8 +349,11 @@ void BasicGUI_PlaneDlg::SelectionIntoArgument() { myEditCurrentArgument->setText(""); - if (IObjectCount() != 1) - { + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) { if ( myEditCurrentArgument == GroupPntDir->LineEdit1 ) myPoint = GEOM::GEOM_Object::_nil(); else if ( myEditCurrentArgument == GroupPntDir->LineEdit2 ) myDir = GEOM::GEOM_Object::_nil(); else if ( myEditCurrentArgument == Group3Pnts->LineEdit1 ) myPoint1 = GEOM::GEOM_Object::_nil(); @@ -316,61 +365,88 @@ void BasicGUI_PlaneDlg::SelectionIntoArgument() // nbSel == 1 Standard_Boolean aRes = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), aRes); - if (!CORBA::is_nil(aSelectedObject) && aRes) - { - QString aName = GEOMBase::GetName(aSelectedObject); + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aRes); + if ( !CORBA::is_nil( aSelectedObject ) && aRes ) { + QString aName = GEOMBase::GetName( aSelectedObject ); + TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; + if ( myEditCurrentArgument == GroupPntDir->LineEdit2 ) + aNeedType = TopAbs_EDGE; + else if ( myEditCurrentArgument == GroupFace->LineEdit1 ) + aNeedType = TopAbs_FACE; TopoDS_Shape aShape; - if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) - { - TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; - if (myEditCurrentArgument == GroupPntDir->LineEdit2) - aNeedType = TopAbs_EDGE; - else if (myEditCurrentArgument == GroupFace->LineEdit1) - aNeedType = TopAbs_FACE; - - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) { TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes(firstIObject(), aMap); - if (aMap.Extent() == 1) // Local Selection - { - - int anIndex = aMap(1); - if (aNeedType == TopAbs_EDGE) - aName += QString(":edge_%1").arg(anIndex); + aSelMgr->GetIndexes(aSelList.First(), aMap); + if ( aMap.Extent() == 1 ) { // Local Selection + int anIndex = aMap( 1 ); + if ( aNeedType == TopAbs_EDGE ) + aName += QString( ":edge_%1" ).arg( anIndex ); else if (aNeedType == TopAbs_FACE) - aName += QString(":face_%1").arg(anIndex); + aName += QString( ":face_%1" ).arg( anIndex ); else - aName += QString(":vertex_%1").arg(anIndex); + aName += QString( ":vertex_%1" ).arg( anIndex ); //Find SubShape Object in Father - GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); + GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather( aSelectedObject, aName ); if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId()); - aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); + aSelectedObject = aShapesOp->GetSubShape( aSelectedObject, anIndex ); } - else + else { aSelectedObject = aFindedObject; // get Object from study + } } - else // Global Selection - { - if (aShape.ShapeType() != aNeedType) { + else { // Global Selection + if ( aShape.ShapeType() != aNeedType ) { aSelectedObject = GEOM::GEOM_Object::_nil(); aName = ""; } } } - myEditCurrentArgument->setText(aName); + myEditCurrentArgument->setText( aName ); - if ( myEditCurrentArgument == GroupPntDir->LineEdit1 ) myPoint = aSelectedObject; - else if ( myEditCurrentArgument == GroupPntDir->LineEdit2 ) myDir = aSelectedObject; - else if ( myEditCurrentArgument == Group3Pnts->LineEdit1 ) myPoint1 = aSelectedObject; - else if ( myEditCurrentArgument == Group3Pnts->LineEdit2 ) myPoint2 = aSelectedObject; - else if ( myEditCurrentArgument == Group3Pnts->LineEdit3 ) myPoint3 = aSelectedObject; - else if ( myEditCurrentArgument == GroupFace->LineEdit1 ) myFace = aSelectedObject; + /* if (!aSelectedObject->_is_nil()) { // clear selection if something selected + globalSelection(); + if ( myEditCurrentArgument == GroupFace->LineEdit1 ) { + TColStd_MapOfInteger aMap; + aMap.Add( GEOM_PLANE ); + aMap.Add( GEOM_MARKER ); + globalSelection( aMap ); + } + else + localSelection( GEOM::GEOM_Object::_nil(), aNeedType ); + }*/ + + if ( myEditCurrentArgument == GroupPntDir->LineEdit1 ) { + myPoint = aSelectedObject; + if ( !myPoint->_is_nil() && myDir->_is_nil() ) + GroupPntDir->PushButton2->click(); + } + else if ( myEditCurrentArgument == GroupPntDir->LineEdit2 ) { + myDir = aSelectedObject; + if ( !myDir->_is_nil() && myPoint->_is_nil() ) + GroupPntDir->PushButton1->click(); + } + else if ( myEditCurrentArgument == Group3Pnts->LineEdit1 ) { + myPoint1 = aSelectedObject; + if ( !myPoint1->_is_nil() && myPoint2->_is_nil() ) + Group3Pnts->PushButton2->click(); + } + else if ( myEditCurrentArgument == Group3Pnts->LineEdit2 ) { + myPoint2 = aSelectedObject; + if ( !myPoint2->_is_nil() && myPoint3->_is_nil() ) + Group3Pnts->PushButton3->click(); + } + else if ( myEditCurrentArgument == Group3Pnts->LineEdit3 ) { + myPoint3 = aSelectedObject; + if ( !myPoint3->_is_nil() && myPoint1->_is_nil() ) + Group3Pnts->PushButton1->click(); + } + else if ( myEditCurrentArgument == GroupFace->LineEdit1 ) + myFace = aSelectedObject; } displayPreview(); @@ -386,33 +462,69 @@ void BasicGUI_PlaneDlg::SetEditCurrentArgument() QPushButton* send = (QPushButton*)sender(); globalSelection( GEOM_POINT ); - if ( send == GroupPntDir->PushButton1 ) myEditCurrentArgument = GroupPntDir->LineEdit1; - else if ( send == GroupPntDir->PushButton2 ) myEditCurrentArgument = GroupPntDir->LineEdit2; - else if ( send == Group3Pnts->PushButton1 ) myEditCurrentArgument = Group3Pnts->LineEdit1; - else if ( send == Group3Pnts->PushButton2 ) myEditCurrentArgument = Group3Pnts->LineEdit2; - else if ( send == Group3Pnts->PushButton3 ) myEditCurrentArgument = Group3Pnts->LineEdit3; - else if ( send == GroupFace->PushButton1 ) myEditCurrentArgument = GroupFace->LineEdit1; + if ( send == GroupPntDir->PushButton1 ) { + myEditCurrentArgument = GroupPntDir->LineEdit1; + GroupPntDir->PushButton2->setDown( false ); + GroupPntDir->LineEdit1->setEnabled( true ); + GroupPntDir->LineEdit2->setEnabled( false ); + } + else if ( send == GroupPntDir->PushButton2 ) { + myEditCurrentArgument = GroupPntDir->LineEdit2; + GroupPntDir->PushButton1->setDown( false ); + GroupPntDir->LineEdit1->setEnabled( false ); + GroupPntDir->LineEdit2->setEnabled( true ); + } + else if ( send == Group3Pnts->PushButton1 ) { + myEditCurrentArgument = Group3Pnts->LineEdit1; + Group3Pnts->PushButton2->setDown( false ); + Group3Pnts->PushButton3->setDown( false ); + Group3Pnts->LineEdit1->setEnabled( true ); + Group3Pnts->LineEdit2->setEnabled( false ); + Group3Pnts->LineEdit3->setEnabled( false ); + } + else if ( send == Group3Pnts->PushButton2 ) { + myEditCurrentArgument = Group3Pnts->LineEdit2; + Group3Pnts->PushButton1->setDown( false ); + Group3Pnts->PushButton3->setDown( false ); + Group3Pnts->LineEdit1->setEnabled( false ); + Group3Pnts->LineEdit2->setEnabled( true ); + Group3Pnts->LineEdit3->setEnabled( false ); + } + else if ( send == Group3Pnts->PushButton3 ) { + myEditCurrentArgument = Group3Pnts->LineEdit3; + Group3Pnts->PushButton1->setDown( false ); + Group3Pnts->PushButton2->setDown( false ); + Group3Pnts->LineEdit1->setEnabled( false ); + Group3Pnts->LineEdit2->setEnabled( false ); + Group3Pnts->LineEdit3->setEnabled( true ); + } + else if ( send == GroupFace->PushButton1 ) { + myEditCurrentArgument = GroupFace->LineEdit1; + GroupFace->PushButton1->setDown( true ); + } myEditCurrentArgument->setFocus(); - if (myEditCurrentArgument == GroupPntDir->LineEdit2) { - globalSelection(); // close local contexts, if any - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); + if ( myEditCurrentArgument == GroupPntDir->LineEdit2 ) { + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); } - else if (myEditCurrentArgument == GroupFace->LineEdit1) { + else if ( myEditCurrentArgument == GroupFace->LineEdit1 ) { TColStd_MapOfInteger aMap; aMap.Add( GEOM_PLANE ); aMap.Add( GEOM_MARKER ); globalSelection( aMap ); } else { // 3 Pnts - globalSelection(); // close local contexts, if any - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); } - SelectionIntoArgument(); + // SelectionIntoArgument(); + myEditCurrentArgument->setFocus(); + send->setDown(true); + displayPreview(); } + //================================================================================= // function : LineEditReturnPressed() // purpose : @@ -425,13 +537,13 @@ void BasicGUI_PlaneDlg::LineEditReturnPressed() send == Group3Pnts->LineEdit1 || send == Group3Pnts->LineEdit2 || send == Group3Pnts->LineEdit3 || - send == GroupFace->LineEdit1 ) - { + send == GroupFace->LineEdit1 ) { myEditCurrentArgument = send; GEOMBase_Skeleton::LineEditReturnPressed(); } } + //================================================================================= // function : ActivateThisDialog() // purpose : @@ -439,10 +551,10 @@ void BasicGUI_PlaneDlg::LineEditReturnPressed() void BasicGUI_PlaneDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); - ConstructorsClicked(getConstructorId()); + ConstructorsClicked( getConstructorId() ); } //================================================================================= @@ -458,9 +570,9 @@ void BasicGUI_PlaneDlg::DeactivateActiveDialog() // function : enterEvent() // purpose : //================================================================================= -void BasicGUI_PlaneDlg::enterEvent(QEvent* e) +void BasicGUI_PlaneDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } @@ -469,7 +581,7 @@ void BasicGUI_PlaneDlg::enterEvent(QEvent* e) // function : ValueChangedInSpinBox() // purpose : //================================================================================= -void BasicGUI_PlaneDlg::ValueChangedInSpinBox(double newValue) +void BasicGUI_PlaneDlg::ValueChangedInSpinBox( double newValue ) { displayPreview(); } @@ -480,15 +592,28 @@ void BasicGUI_PlaneDlg::ValueChangedInSpinBox(double newValue) //================================================================================= double BasicGUI_PlaneDlg::getSize() const { - switch ( getConstructorId() ) - { - case 0 : return GroupPntDir->SpinBox_DX->GetValue(); - case 1 : return Group3Pnts->SpinBox_DX->GetValue(); - case 2 : return GroupFace->SpinBox_DX->GetValue(); + switch ( getConstructorId() ) { + case 0 : return GroupPntDir->SpinBox_DX->value(); + case 1 : return Group3Pnts->SpinBox_DX->value(); + case 2 : return GroupFace->SpinBox_DX->value(); } return 0.; } +//================================================================================= +// function : getSize() +// purpose : +//================================================================================= +QString BasicGUI_PlaneDlg::getSizeAsString() const +{ + switch ( getConstructorId() ) { + case 0 : return GroupPntDir->SpinBox_DX->text(); + case 1 : return Group3Pnts->SpinBox_DX->text(); + case 2 : return GroupFace->SpinBox_DX->text(); + } + return QString(); +} + //================================================================================= // function : createOperation // purpose : @@ -513,20 +638,26 @@ static bool isEqual( const GEOM::GEOM_Object_var& thePnt1, const GEOM::GEOM_Obje //================================================================================= bool BasicGUI_PlaneDlg::isValid( QString& msg ) { - const int id = getConstructorId(); - if ( getSize() <= 0 ) - { - msg = QString( "Please, enter size greater than 0." ); - return false; - } - if ( id == 0 ) - return !CORBA::is_nil( myPoint ) && !CORBA::is_nil( myDir ); - else if ( id == 1 ) - return !CORBA::is_nil( myPoint1 ) && !CORBA::is_nil( myPoint2 ) && !CORBA::is_nil( myPoint3 ) && - !isEqual( myPoint1, myPoint2 ) && !isEqual( myPoint1, myPoint3 ) && !isEqual( myPoint2, myPoint3 ); - else if ( id == 2 ) - return !CORBA::is_nil( myFace ); - return false; + const int id = getConstructorId(); + if ( getSize() <= 0 ) { + msg = QString( "Please, enter size greater than 0." ); + return false; + } + + if ( id == 0 ) { + bool ok = GroupPntDir->SpinBox_DX->isValid( msg, !IsPreview() ); + return !CORBA::is_nil( myPoint ) && !CORBA::is_nil( myDir ) && ok; + } + else if ( id == 1 ) { + bool ok = Group3Pnts->SpinBox_DX->isValid( msg, !IsPreview() ); + return !CORBA::is_nil( myPoint1 ) && !CORBA::is_nil( myPoint2 ) && !CORBA::is_nil( myPoint3 ) && + !isEqual( myPoint1, myPoint2 ) && !isEqual( myPoint1, myPoint3 ) && !isEqual( myPoint2, myPoint3 ) && ok; + } + else if ( id == 2 ) { + bool ok = GroupFace->SpinBox_DX->isValid( msg, !IsPreview() ); + return !CORBA::is_nil( myFace ) && ok; + } + return false; } //================================================================================= @@ -539,8 +670,7 @@ bool BasicGUI_PlaneDlg::execute( ObjectList& objects ) GEOM::GEOM_Object_var anObj; - switch ( getConstructorId() ) - { + switch ( getConstructorId() ) { case 0 : anObj = GEOM::GEOM_IBasicOperations::_narrow( getOperation() )->MakePlanePntVec( myPoint, myDir, getSize() ); res = true; @@ -554,22 +684,14 @@ bool BasicGUI_PlaneDlg::execute( ObjectList& objects ) res = true; break; } - - if ( !anObj->_is_nil() ) + + if ( !anObj->_is_nil() ) { + if ( !IsPreview() ) + anObj->SetParameters(getSizeAsString().toLatin1().constData()); objects.push_back( anObj._retn() ); - + } return res; } - -//================================================================================= -// function : closeEvent -// purpose : -//================================================================================= -void BasicGUI_PlaneDlg::closeEvent( QCloseEvent* e ) -{ - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : addSubshapeToStudy // purpose : virtual method to add new SubObjects if local selection @@ -578,8 +700,7 @@ void BasicGUI_PlaneDlg::addSubshapesToStudy() { QMap objMap; -switch (getConstructorId()) - { + switch ( getConstructorId() ) { case 0: objMap[GroupPntDir->LineEdit1->text()] = myPoint; objMap[GroupPntDir->LineEdit2->text()] = myDir; @@ -593,5 +714,5 @@ switch (getConstructorId()) objMap[GroupFace->LineEdit1->text()] = myFace; break; } - addSubshapesToFather( objMap ); + addSubshapesToFather( objMap ); } diff --git a/src/BasicGUI/BasicGUI_PlaneDlg.h b/src/BasicGUI/BasicGUI_PlaneDlg.h index 7eaf7ed3f..5d83df4e3 100644 --- a/src/BasicGUI/BasicGUI_PlaneDlg.h +++ b/src/BasicGUI/BasicGUI_PlaneDlg.h @@ -1,86 +1,84 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : BasicGUI_PlaneDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_PlaneDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef BASICGUI_PLANEDLG_H +#define BASICGUI_PLANEDLG_H -#ifndef DIALOGBOX_PLANE_H -#define DIALOGBOX_PLANE_H +#include -#include "GEOM_BasicGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel1Spin.h" -#include "DlgRef_2Sel1Spin.h" -#include "DlgRef_3Sel1Spin.h" +class DlgRef_1Sel1Spin; +class DlgRef_2Sel1Spin; +class DlgRef_3Sel1Spin; +class DlgRef_3Radio1Sel1Spin; //================================================================================= // class : BasicGUI_PlaneDlg // purpose : //================================================================================= -class GEOM_BASICGUI_EXPORT BasicGUI_PlaneDlg : public GEOMBase_Skeleton +class BasicGUI_PlaneDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BasicGUI_PlaneDlg( GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~BasicGUI_PlaneDlg(); - + BasicGUI_PlaneDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~BasicGUI_PlaneDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); - virtual void closeEvent( QCloseEvent* e ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); -private : - void Init(); - void enterEvent(QEvent* e); - double getSize() const; +private: + void Init(); + void enterEvent( QEvent* ); + double getSize() const; + QString getSizeAsString() const; - GEOM::GEOM_Object_var myPoint, myDir, myPoint1, myPoint2, myPoint3, myFace; +private: + GEOM::GEOM_Object_var myPoint, myDir, myPoint1, myPoint2, myPoint3, myFace; - DlgRef_2Sel1Spin* GroupPntDir; - DlgRef_3Sel1Spin* Group3Pnts; - DlgRef_1Sel1Spin* GroupFace; + DlgRef_2Sel1Spin* GroupPntDir; + DlgRef_3Sel1Spin* Group3Pnts; + DlgRef_3Radio1Sel1Spin* GroupFace; private slots: - void ClickOnOk(); - void ClickOnCancel(); - bool ClickOnApply(); - - void ActivateThisDialog(); - void DeactivateActiveDialog(); - - void SelectionIntoArgument(); - void LineEditReturnPressed(); - void SetEditCurrentArgument(); - void ConstructorsClicked(int constructorId); - void ValueChangedInSpinBox(double newValue); - + void ClickOnOk(); + bool ClickOnApply(); + + void ActivateThisDialog(); + void DeactivateActiveDialog(); + + void SelectionIntoArgument(); + void LineEditReturnPressed(); + void SetEditCurrentArgument(); + void ConstructorsClicked( int ); + void ValueChangedInSpinBox( double ); + void SetDoubleSpinBoxStep( double ); + void SelectionTypeClicked(); }; -#endif // DIALOGBOX_PLANE_H +#endif // BASICGUI_PLANEDLG_H diff --git a/src/BasicGUI/BasicGUI_PointDlg.cxx b/src/BasicGUI/BasicGUI_PointDlg.cxx index 573e8bda8..9b2f525ac 100644 --- a/src/BasicGUI/BasicGUI_PointDlg.cxx +++ b/src/BasicGUI/BasicGUI_PointDlg.cxx @@ -1,15 +1,15 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU // Lesser General Public License for more details. // @@ -19,28 +19,29 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_PointDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : BasicGUI_PointDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "BasicGUI_PointDlg.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include -#include "GEOMImpl_Types.hxx" +#include +#include -#include +#include -#include "utilities.h" +#include + +#include +#include #include #include -#include #include #include #include @@ -48,78 +49,91 @@ #include #include -#include - -using namespace std; - //================================================================================= // class : BasicGUI_PointDlg() -// purpose : Constructs a BasicGUI_PointDlg which is a child of 'parent', with the +// purpose : Constructs a BasicGUI_PointDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BasicGUI_PointDlg::BasicGUI_PointDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, fl ) +BasicGUI_PointDlg::BasicGUI_PointDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_POINT"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_POINT_EDGE"))); - QPixmap image2(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); - QPixmap image3(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_POINT_REF"))); - QPixmap image4(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_POINT_LINES"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_POINT") ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_POINT_EDGE" ) ) ); + QPixmap image2( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); + QPixmap image3( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_POINT_REF" ) ) ); + QPixmap image4( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_POINT_LINES") ) ); + QPixmap image5( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_POINT_FACE" ) ) ); - setCaption(tr("GEOM_POINT_TITLE")); - - QGroupBox* aFrame = new QGroupBox( 1, Qt::Horizontal, this ); - aFrame->setInsideMargin( 0 ); - aFrame->setFrameStyle( QFrame::NoFrame ); + setWindowTitle( tr( "GEOM_POINT_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_POINTS")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image3); - RadioButton3->setPixmap(image1); - RadioButton4->show(); - RadioButton4->setPixmap(image4); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_POINTS" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setIcon( image3 ); + mainFrame()->RadioButton3->setIcon( image1 ); + mainFrame()->RadioButton4->show(); + mainFrame()->RadioButton4->setIcon( image4 ); + mainFrame()->RadioButton5->show(); + mainFrame()->RadioButton5->setIcon( image5 ); - GroupXYZ = new DlgRef_3Spin( aFrame, "GroupXYZ" ); - GroupXYZ->GroupBox1->setTitle(tr("GEOM_COORDINATES")); - GroupXYZ->TextLabel1->setText(tr("GEOM_X")); - GroupXYZ->TextLabel2->setText(tr("GEOM_Y")); - GroupXYZ->TextLabel3->setText(tr("GEOM_Z")); + GroupXYZ = new DlgRef_3Spin( centralWidget() ); + GroupXYZ->GroupBox1->setTitle( tr( "GEOM_COORDINATES" ) ); + GroupXYZ->TextLabel1->setText( tr( "GEOM_X" ) ); + GroupXYZ->TextLabel2->setText( tr( "GEOM_Y" ) ); + GroupXYZ->TextLabel3->setText( tr( "GEOM_Z" ) ); - GroupOnCurve = new DlgRef_1Sel1Spin( aFrame, "GroupOnCurve" ); - GroupOnCurve->GroupBox1->setTitle(tr("GEOM_PARAM_POINT")); - GroupOnCurve->TextLabel1->setText(tr("GEOM_EDGE")); - GroupOnCurve->TextLabel2->setText(tr("GEOM_PARAMETER")); - GroupOnCurve->PushButton1->setPixmap(image2); + GroupOnCurve = new DlgRef_1Sel1Spin( centralWidget() ); + GroupOnCurve->GroupBox1->setTitle( tr( "GEOM_PARAM_POINT" ) ); + GroupOnCurve->TextLabel1->setText( tr( "GEOM_EDGE" ) ); + GroupOnCurve->TextLabel2->setText( tr( "GEOM_PARAMETER" ) ); + GroupOnCurve->PushButton1->setIcon( image2 ); - GroupRefPoint = new DlgRef_1Sel3Spin( aFrame, "GoupRefPoint" ); - GroupRefPoint->GroupBox1->setTitle(tr("GEOM_REF_POINT")); - GroupRefPoint->TextLabel1->setText(tr("GEOM_POINT")); - GroupRefPoint->PushButton1->setPixmap(image2); - GroupRefPoint->TextLabel2->setText(tr("GEOM_DX")); - GroupRefPoint->TextLabel3->setText(tr("GEOM_DY")); - GroupRefPoint->TextLabel4->setText(tr("GEOM_DZ")); + GroupOnSurface = new DlgRef_1Sel2Spin( centralWidget() ); + GroupOnSurface->GroupBox1->setTitle( tr( "GEOM_PARAM_POINT" ) ); + GroupOnSurface->TextLabel1->setText( tr( "GEOM_FACE" ) ); + GroupOnSurface->TextLabel2->setText( tr( "GEOM_UPARAMETER" ) ); + GroupOnSurface->TextLabel3->setText( tr( "GEOM_VPARAMETER" ) ); + GroupOnSurface->PushButton1->setIcon( image2 ); - GroupLineIntersection = new DlgRef_2Sel_QTD (aFrame, "GroupLineIntersection"); - GroupLineIntersection->GroupBox1->setTitle(tr("GEOM_LINE_INTERSECTION")); - GroupLineIntersection->TextLabel1->setText(tr("GEOM_LINE1")); - GroupLineIntersection->PushButton1->setPixmap(image2); - GroupLineIntersection->TextLabel2->setText(tr("GEOM_LINE2")); - GroupLineIntersection->PushButton2->setPixmap(image2); + GroupRefPoint = new DlgRef_1Sel3Spin( centralWidget() ); + GroupRefPoint->GroupBox1->setTitle( tr( "GEOM_REF_POINT" ) ); + GroupRefPoint->TextLabel1->setText( tr( "GEOM_POINT" ) ); + GroupRefPoint->PushButton1->setIcon( image2 ); + GroupRefPoint->TextLabel2->setText( tr( "GEOM_DX" ) ); + GroupRefPoint->TextLabel3->setText( tr( "GEOM_DY" ) ); + GroupRefPoint->TextLabel4->setText( tr( "GEOM_DZ" ) ); - Layout1->addWidget( aFrame, 2, 0 ); - /***************************************************************/ + GroupLineIntersection = new DlgRef_2Sel( centralWidget() ); + GroupLineIntersection->GroupBox1->setTitle( tr( "GEOM_LINE_INTERSECTION" ) ); + GroupLineIntersection->TextLabel1->setText( tr( "GEOM_LINE1" ) ); + GroupLineIntersection->TextLabel2->setText( tr( "GEOM_LINE2" ) ); + GroupLineIntersection->PushButton1->setIcon( image2 ); + GroupLineIntersection->PushButton2->setIcon( image2 ); + GroupLineIntersection->LineEdit2->setEnabled(false); - myCoordGrp = new QGroupBox( 2, Qt::Horizontal, tr( "GEOM_COORDINATES" ), aFrame ); - new QLabel( tr( "GEOM_X" ), myCoordGrp ); + myCoordGrp = new QGroupBox( tr( "GEOM_COORDINATES" ), centralWidget() ); + QGridLayout* myCoordGrpLayout = new QGridLayout( myCoordGrp ); + myCoordGrpLayout->addWidget( new QLabel( tr( "GEOM_X" ), myCoordGrp ), 0, 0 ); myX = new QLineEdit( myCoordGrp ); - new QLabel( tr( "GEOM_Y" ), myCoordGrp ); + myCoordGrpLayout->addWidget( myX, 0, 1 ); + myCoordGrpLayout->addWidget( new QLabel( tr( "GEOM_Y" ), myCoordGrp ), 1, 0 ); myY = new QLineEdit( myCoordGrp ); - new QLabel( tr( "GEOM_Z" ), myCoordGrp ); + myCoordGrpLayout->addWidget( myY, 1, 1 ); + myCoordGrpLayout->addWidget( new QLabel( tr( "GEOM_Z" ), myCoordGrp ), 2, 0 ); myZ = new QLineEdit( myCoordGrp ); + myCoordGrpLayout->addWidget( myZ, 2, 1 ); + + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupXYZ ); + layout->addWidget( GroupOnCurve ); + layout->addWidget( GroupOnSurface ); + layout->addWidget( GroupRefPoint ); + layout->addWidget( GroupLineIntersection ); + layout->addWidget( myCoordGrp ); myX->setReadOnly( true ); myY->setReadOnly( true ); @@ -130,17 +144,17 @@ BasicGUI_PointDlg::BasicGUI_PointDlg(GeometryGUI* theGeometryGUI, QWidget* paren myZ->setEnabled( false ); QPalette aPal = myX->palette(); - aPal.setColor( QPalette::Disabled, QColorGroup::Text, QColor( 0, 0, 0 ) ) ; + aPal.setColor( QPalette::Disabled, QPalette::Text, QColor( 0, 0, 0 ) ) ; myX->setPalette( aPal ); myY->setPalette( aPal ); myZ->setPalette( aPal ); - // setHelpFileName("create_point_page.html"); - setHelpFileName("point.htm"); - + setHelpFileName( "create_point_page.html" ); + Init(); } + //================================================================================= // function : ~BasicGUI_PointDlg() // purpose : Destructor @@ -149,6 +163,7 @@ BasicGUI_PointDlg::~BasicGUI_PointDlg() { } + //================================================================================= // function : Init() // purpose : @@ -156,9 +171,12 @@ BasicGUI_PointDlg::~BasicGUI_PointDlg() void BasicGUI_PointDlg::Init() { GroupOnCurve->LineEdit1->setReadOnly( true ); + GroupOnSurface->LineEdit1->setReadOnly( true ); GroupRefPoint->LineEdit1->setReadOnly( true ); GroupLineIntersection->LineEdit1->setReadOnly( true ); GroupLineIntersection->LineEdit2->setReadOnly( true ); + GroupLineIntersection->LineEdit1->setEnabled( true ); + GroupLineIntersection->LineEdit2->setEnabled( false ); myEdge = GEOM::GEOM_Object::_nil(); myRefPoint = GEOM::GEOM_Object::_nil(); @@ -167,140 +185,191 @@ void BasicGUI_PointDlg::Init() /* Get setting of step value from file configuration */ SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100); - + double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100 ); + /* min, max, step and decimals for spin boxes */ - GroupXYZ->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupXYZ->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupXYZ->SpinBox_DZ->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupXYZ->SpinBox_DX->SetValue(0.0); - GroupXYZ->SpinBox_DY->SetValue(0.0); - GroupXYZ->SpinBox_DZ->SetValue(0.0); + initSpinBox( GroupXYZ->SpinBox_DX, COORD_MIN, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupXYZ->SpinBox_DY, COORD_MIN, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupXYZ->SpinBox_DZ, COORD_MIN, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + GroupXYZ->SpinBox_DX->setValue( 0.0 ); + GroupXYZ->SpinBox_DY->setValue( 0.0 ); + GroupXYZ->SpinBox_DZ->setValue( 0.0 ); - GroupRefPoint->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupRefPoint->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupRefPoint->SpinBox_DZ->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupRefPoint->SpinBox_DX->SetValue(0.0); - GroupRefPoint->SpinBox_DY->SetValue(0.0); - GroupRefPoint->SpinBox_DZ->SetValue(0.0); + initSpinBox( GroupRefPoint->SpinBox_DX, COORD_MIN, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupRefPoint->SpinBox_DY, COORD_MIN, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupRefPoint->SpinBox_DZ, COORD_MIN, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + GroupRefPoint->SpinBox_DX->setValue( 0.0 ); + GroupRefPoint->SpinBox_DY->setValue( 0.0 ); + GroupRefPoint->SpinBox_DZ->setValue( 0.0 ); step = 0.1; - GroupOnCurve->SpinBox_DX->RangeStepAndValidator(0., 1., step, DBL_DIGITS_DISPLAY); - GroupOnCurve->SpinBox_DX->SetValue( 0.5 ); + + initSpinBox( GroupOnCurve->SpinBox_DX, 0., 1., step, 6 ); // VSR:TODO : DBL_DIGITS_DISPLAY + GroupOnCurve->SpinBox_DX->setValue( 0.5 ); + + initSpinBox( GroupOnSurface->SpinBox_DX, 0., 1., step, 6 ); // VSR:TODO : DBL_DIGITS_DISPLAY + GroupOnSurface->SpinBox_DX->setValue( 0.5 ); + initSpinBox( GroupOnSurface->SpinBox_DY, 0., 1., step, 6 ); // VSR:TODO : DBL_DIGITS_DISPLAY + GroupOnSurface->SpinBox_DY->setValue( 0.5 ); /* signals and slots connections */ - connect(buttonCancel, SIGNAL(clicked()), this, SLOT(ClickOnCancel())); - connect(myGeomGUI, SIGNAL(SignalDeactivateActiveDialog()), this, SLOT(DeactivateActiveDialog())); - connect(myGeomGUI, SIGNAL(SignalCloseAllDialogs()), this, SLOT(ClickOnCancel())); + connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), this, SLOT( DeactivateActiveDialog() ) ); + connect( myGeomGUI, SIGNAL( SignalCloseAllDialogs() ), this, SLOT( ClickOnCancel() ) ); - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupOnCurve->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupOnCurve->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupLineIntersection->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupLineIntersection->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupLineIntersection->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupLineIntersection->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); - connect(GroupOnCurve->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(GroupXYZ->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(GroupXYZ->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(GroupXYZ->SpinBox_DZ, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(GroupRefPoint->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(GroupRefPoint->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(GroupRefPoint->SpinBox_DZ, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); + connect( GroupOnCurve->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupOnCurve->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupOnCurve->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupXYZ->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupXYZ->SpinBox_DY, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupXYZ->SpinBox_DZ, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupRefPoint->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupRefPoint->SpinBox_DY, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupRefPoint->SpinBox_DZ, SLOT(SetStep(double))); + connect( GroupOnSurface->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupOnSurface->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); + connect( GroupLineIntersection->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupLineIntersection->PushButton2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupLineIntersection->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( GroupLineIntersection->LineEdit2, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - initName( tr("GEOM_VERTEX") ); + connect( GroupOnCurve->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupOnSurface->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupOnSurface->SpinBox_DY, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupXYZ->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupXYZ->SpinBox_DY, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupXYZ->SpinBox_DZ, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupRefPoint->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupRefPoint->SpinBox_DY, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupRefPoint->SpinBox_DZ, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( myGeomGUI, SIGNAL( SignalDefaultStepValueChanged( double ) ), this, SLOT( SetDoubleSpinBoxStep( double ) ) ); + + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged() ), + this, SLOT(SelectionIntoArgument() ) ); + + + initName( tr( "GEOM_VERTEX" ) ); + ConstructorsClicked( 0 ); } +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void BasicGUI_PointDlg::SetDoubleSpinBoxStep( double step ) +{ + GroupOnCurve->SpinBox_DX->setSingleStep(step); + GroupXYZ->SpinBox_DX->setSingleStep(step); + GroupXYZ->SpinBox_DY->setSingleStep(step); + GroupXYZ->SpinBox_DZ->setSingleStep(step); + GroupRefPoint->SpinBox_DX->setSingleStep(step); + GroupRefPoint->SpinBox_DY->setSingleStep(step); + GroupRefPoint->SpinBox_DZ->setSingleStep(step); + GroupOnSurface->SpinBox_DX->setSingleStep(step); + GroupOnSurface->SpinBox_DY->setSingleStep(step); +} + + //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void BasicGUI_PointDlg::ConstructorsClicked (int constructorId) -{ +void BasicGUI_PointDlg::ConstructorsClicked(int constructorId) +{ globalSelection(); // close local contexts, if any - switch (constructorId) - { + switch ( constructorId ) { case 0: { - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); - + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + GroupRefPoint->hide(); GroupOnCurve->hide(); GroupLineIntersection->hide(); - GroupXYZ->show(); + GroupOnSurface->hide(); + myCoordGrp->hide(); + + GroupXYZ->show(); break; } case 1: { myEditCurrentArgument = GroupRefPoint->LineEdit1; - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); myRefPoint = GEOM::GEOM_Object::_nil(); - - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); - + GroupRefPoint->PushButton1->setDown(true); + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + GroupXYZ->hide(); GroupOnCurve->hide(); - GroupRefPoint->show(); GroupLineIntersection->hide(); + GroupOnSurface->hide(); + + GroupRefPoint->show(); + myCoordGrp->show(); break; } case 2: { myEditCurrentArgument = GroupOnCurve->LineEdit1; - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); myEdge = GEOM::GEOM_Object::_nil(); - - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); + GroupOnCurve->PushButton1->setDown(true); + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); GroupXYZ->hide(); GroupRefPoint->hide(); - GroupOnCurve->show(); GroupLineIntersection->hide(); + GroupOnSurface->hide(); + + GroupOnCurve->show(); + myCoordGrp->show(); break; } case 3: { myEditCurrentArgument = GroupLineIntersection->LineEdit1; - GroupLineIntersection->LineEdit1->setText(""); - GroupLineIntersection->LineEdit2->setText(""); + GroupLineIntersection->LineEdit1->setText( "" ); + GroupLineIntersection->LineEdit2->setText( "" ); + GroupLineIntersection->LineEdit1->setEnabled( true ); + GroupLineIntersection->LineEdit2->setEnabled( false ); myLine1 = GEOM::GEOM_Object::_nil(); myLine2 = GEOM::GEOM_Object::_nil(); + GroupLineIntersection->PushButton1->setDown(true); + GroupLineIntersection->PushButton2->setDown(false); - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); GroupXYZ->hide(); GroupRefPoint->hide(); GroupOnCurve->hide(); - GroupLineIntersection->show(); + GroupOnSurface->hide(); + myCoordGrp->hide(); + + GroupLineIntersection->show(); + break; + } + case 4: + { + myEditCurrentArgument = GroupOnSurface->LineEdit1; + myEditCurrentArgument->setText( "" ); + myFace = GEOM::GEOM_Object::_nil(); + GroupOnSurface->PushButton1->setDown(true); + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_FACE ); + + GroupXYZ->hide(); + GroupRefPoint->hide(); + GroupOnCurve->hide(); + GroupLineIntersection->hide(); + + GroupOnSurface->show(); + + myCoordGrp->show(); break; } } @@ -311,43 +380,37 @@ void BasicGUI_PointDlg::ConstructorsClicked (int constructorId) qApp->processEvents(); updateGeometry(); - resize( minimumSize() ); + resize( minimumSizeHint() ); SelectionIntoArgument(); } + //================================================================================= // function : ClickOnOk() // purpose : //================================================================================= void BasicGUI_PointDlg::ClickOnOk() { - if (onAccept()) + if ( onAccept() ) ClickOnCancel(); } + //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool BasicGUI_PointDlg::ClickOnApply() { - if (!onAccept()) + if ( !onAccept() ) return false; - + initName(); - ConstructorsClicked(getConstructorId()); + ConstructorsClicked( getConstructorId() ); return true; } -//================================================================================= -// function : ClickOnCancel() -// purpose : -//================================================================================= -void BasicGUI_PointDlg::ClickOnCancel() -{ - GEOMBase_Skeleton::ClickOnCancel(); -} //================================================================================= // function : SelectionIntoArgument() @@ -357,97 +420,108 @@ void BasicGUI_PointDlg::SelectionIntoArgument() { const int id = getConstructorId(); - if ((id == 1 || id == 2) && myEditCurrentArgument != 0) + if ( ( id == 1 || id == 2 || id == 4 ) && myEditCurrentArgument != 0 ) { - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); myX->setText( "" ); myY->setText( "" ); myZ->setText( "" ); - myRefPoint = myEdge = GEOM::GEOM_Object::_nil(); + myRefPoint = myEdge = myFace = GEOM::GEOM_Object::_nil(); } - if (IObjectCount() == 1) - { + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() == 1) { Standard_Boolean aRes = Standard_False; - Handle(SALOME_InteractiveObject) anIO = firstIObject(); - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(anIO, aRes); - if (!CORBA::is_nil(aSelectedObject) && aRes) - { + Handle(SALOME_InteractiveObject) anIO = aSelList.First(); + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject( anIO, aRes ); + if ( !CORBA::is_nil( aSelectedObject ) && aRes ) { QString aName = GEOMBase::GetName(aSelectedObject); - + TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; TopoDS_Shape aShape; - if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) - { - TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; - if (id == 2 || id == 3) + if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) { + if ( id == 2 || id == 3 ) aNeedType = TopAbs_EDGE; + else if ( id == 4 ) + aNeedType = TopAbs_FACE; - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes(firstIObject(), aMap); - if (aMap.Extent() == 1) // Local Selection - { - int anIndex = aMap(1); - if (aNeedType == TopAbs_EDGE) - aName += QString(":edge_%1").arg(anIndex); + aSelMgr->GetIndexes(anIO, aMap); + if ( aMap.Extent() == 1 ) { // Local Selection + int anIndex = aMap( 1 ); + if ( aNeedType == TopAbs_EDGE ) + aName += QString( ":edge_%1" ).arg( anIndex ); else - aName += QString(":vertex_%1").arg(anIndex); + aName += QString( ":vertex_%1" ).arg( anIndex ); //Find SubShape Object in Father GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId()); + GEOM::GEOM_IShapesOperations_var aShapesOp = + getGeomEngine()->GetIShapesOperations(getStudyId()); aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); } - else + else { aSelectedObject = aFindedObject; // get Object from study + } + GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ); } - else // Global Selection - { - if (aShape.ShapeType() != aNeedType) { + else { // Global Selection + if ( aShape.ShapeType() != aNeedType ) { aSelectedObject = GEOM::GEOM_Object::_nil(); aName = ""; - if (id == 0) return; + if ( id == 0 ) return; } } } - if (id == 0) - { - if (aShape.IsNull()) return; + if ( aShape.IsNull() || aShape.ShapeType() != aNeedType) + return; + + if ( id == 0 ) { gp_Pnt aPnt = BRep_Tool::Pnt( TopoDS::Vertex( aShape ) ); - GroupXYZ->SpinBox_DX->SetValue( aPnt.X() ); - GroupXYZ->SpinBox_DY->SetValue( aPnt.Y() ); - GroupXYZ->SpinBox_DZ->SetValue( aPnt.Z() ); + GroupXYZ->SpinBox_DX->setValue( aPnt.X() ); + GroupXYZ->SpinBox_DY->setValue( aPnt.Y() ); + GroupXYZ->SpinBox_DZ->setValue( aPnt.Z() ); } - else if (id == 1) - { + else if ( id == 1 ) { myRefPoint = aSelectedObject; - GroupRefPoint->LineEdit1->setText(aName); + GroupRefPoint->LineEdit1->setText( aName ); } - else if (id == 2) - { + else if ( id == 2 ) { myEdge = aSelectedObject; - GroupOnCurve->LineEdit1->setText(aName); + GroupOnCurve->LineEdit1->setText( aName ); } - else if (id == 3) - { - if (myEditCurrentArgument == GroupLineIntersection->LineEdit1) { + else if ( id == 3 ) { + myEditCurrentArgument->setText( aName ); + globalSelection(); + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + if ( myEditCurrentArgument == GroupLineIntersection->LineEdit1 ) { myLine1 = aSelectedObject; - myEditCurrentArgument->setText(aName); + if ( !myLine1->_is_nil() && myLine2->_is_nil() ) + GroupLineIntersection->PushButton2->click(); } - else if (myEditCurrentArgument == GroupLineIntersection->LineEdit2) { + else if ( myEditCurrentArgument == GroupLineIntersection->LineEdit2 ) { myLine2 = aSelectedObject; - myEditCurrentArgument->setText(aName); + if ( !myLine2->_is_nil() && myLine1->_is_nil() ) + GroupLineIntersection->PushButton1->click(); } } + else if ( id == 4 ) + { + myFace = aSelectedObject; + GroupOnSurface->LineEdit1->setText( aName ); + } } } - + displayPreview(); } + //================================================================================= // function : LineEditReturnPressed() // purpose : @@ -455,14 +529,16 @@ void BasicGUI_PointDlg::SelectionIntoArgument() void BasicGUI_PointDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if ( send == GroupRefPoint->LineEdit1 || send == GroupOnCurve->LineEdit1 || - send == GroupLineIntersection->LineEdit1 || send == GroupLineIntersection->LineEdit2 ) - { + if ( send == GroupRefPoint->LineEdit1 || + send == GroupOnCurve->LineEdit1 || + send == GroupLineIntersection->LineEdit1 || + send == GroupLineIntersection->LineEdit2 ) { myEditCurrentArgument = send; GEOMBase_Skeleton::LineEditReturnPressed(); } } + //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -472,48 +548,57 @@ void BasicGUI_PointDlg::SetEditCurrentArgument() globalSelection(); // close local contexts, if any QPushButton* send = (QPushButton*)sender(); - globalSelection( GEOM_POINT); // to break previous local selection - if ( send == GroupRefPoint->PushButton1 ) - { + if ( send == GroupRefPoint->PushButton1 ) { GroupRefPoint->LineEdit1->setFocus(); myEditCurrentArgument = GroupRefPoint->LineEdit1; - + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); } - else if ( send == GroupOnCurve->PushButton1 ) - { + else if ( send == GroupOnCurve->PushButton1 ) { GroupOnCurve->LineEdit1->setFocus(); myEditCurrentArgument = GroupOnCurve->LineEdit1; - + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); } - else if ( send == GroupLineIntersection->PushButton1 ) + else if ( send == GroupOnSurface->PushButton1 ) { + GroupOnSurface->LineEdit1->setFocus(); + myEditCurrentArgument = GroupOnSurface->LineEdit1; + + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_FACE ); + } + else if ( send == GroupLineIntersection->PushButton1 ) { GroupLineIntersection->LineEdit1->setFocus(); myEditCurrentArgument = GroupLineIntersection->LineEdit1; - + GroupLineIntersection->PushButton2->setDown( false ); + GroupLineIntersection->LineEdit1->setEnabled(true); + GroupLineIntersection->LineEdit2->setEnabled(false); localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); } - else if ( send == GroupLineIntersection->PushButton2 ) - { + else if ( send == GroupLineIntersection->PushButton2 ) { GroupLineIntersection->LineEdit2->setFocus(); myEditCurrentArgument = GroupLineIntersection->LineEdit2; - + GroupLineIntersection->PushButton1->setDown( false ); + GroupLineIntersection->LineEdit1->setEnabled(false); + GroupLineIntersection->LineEdit2->setEnabled(true); localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); } + send->setDown(true); } + //================================================================================= // function : enterEvent() // purpose : to reactivate this dialog box when mouse enter onto the window //================================================================================= -void BasicGUI_PointDlg::enterEvent(QEvent* e) +void BasicGUI_PointDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } + //================================================================================= // function : ActivateThisDialog() // purpose : @@ -525,6 +610,7 @@ void BasicGUI_PointDlg::ActivateThisDialog( ) ConstructorsClicked( getConstructorId() ); } + //================================================================================= // function : DeactivateActiveDialog() // purpose : public slot to deactivate if active @@ -535,6 +621,7 @@ void BasicGUI_PointDlg::DeactivateActiveDialog() GEOMBase_Skeleton::DeactivateActiveDialog(); } + //================================================================================= // function : ValueChangedInSpinBox() // purpose : @@ -550,20 +637,40 @@ void BasicGUI_PointDlg::ValueChangedInSpinBox(double newValue) //================================================================================= double BasicGUI_PointDlg::getParameter() const { - return GroupOnCurve->SpinBox_DX->GetValue(); + return GroupOnCurve->SpinBox_DX->value(); } + +//================================================================================= +// funcion : getUParameter() +// purpose : +//================================================================================= +double BasicGUI_PointDlg::getUParameter() const +{ + return GroupOnSurface->SpinBox_DX->value(); +} + + +//================================================================================= +// funcion : getVParameter() +// purpose : +//================================================================================= +double BasicGUI_PointDlg::getVParameter() const +{ + return GroupOnSurface->SpinBox_DY->value(); +} + + //================================================================================= // function : OnPointSelected // purpose : //================================================================================= void BasicGUI_PointDlg::OnPointSelected( const gp_Pnt& thePnt ) { - if ( getConstructorId() == 0 ) - { - GroupXYZ->SpinBox_DX->SetValue( thePnt.X() ); - GroupXYZ->SpinBox_DY->SetValue( thePnt.Y() ); - GroupXYZ->SpinBox_DZ->SetValue( thePnt.Z() ); + if ( getConstructorId() == 0 ) { + GroupXYZ->SpinBox_DX->setValue( thePnt.X() ); + GroupXYZ->SpinBox_DY->setValue( thePnt.Y() ); + GroupXYZ->SpinBox_DZ->setValue( thePnt.Z() ); displayPreview(); } @@ -585,14 +692,34 @@ GEOM::GEOM_IOperations_ptr BasicGUI_PointDlg::createOperation() bool BasicGUI_PointDlg::isValid( QString& msg ) { const int id = getConstructorId(); - if ( id == 0 ) - return true; - else if ( id == 1 ) - return !myRefPoint->_is_nil(); - else if ( id == 2 ) - return !myEdge->_is_nil(); - else if ( id == 3) + if ( id == 0 ) { + bool ok = true; + ok = GroupXYZ->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupXYZ->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + ok = GroupXYZ->SpinBox_DZ->isValid( msg, !IsPreview() ) && ok; + return ok; + } + else if ( id == 1 ) { + bool ok = true; + ok = GroupRefPoint->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupRefPoint->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + ok = GroupRefPoint->SpinBox_DZ->isValid( msg, !IsPreview() ) && ok; + + return !myRefPoint->_is_nil() && ok; + } + else if ( id == 2 ) { + bool ok = GroupOnCurve->SpinBox_DX->isValid( msg, !IsPreview() ); + return !myEdge->_is_nil() && ok; + } + else if ( id == 3 ) return ( !myLine1->_is_nil() && !myLine2->_is_nil() ); + else if ( id == 4 ) { + bool ok = true; + ok = GroupOnSurface->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupOnSurface->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + return !myFace->_is_nil() && ok; + + } return false; } @@ -605,78 +732,90 @@ bool BasicGUI_PointDlg::execute( ObjectList& objects ) bool res = false; GEOM::GEOM_Object_var anObj; + QStringList aParameters; - switch ( getConstructorId() ) - { + switch ( getConstructorId() ) { case 0 : - { - double x = GroupXYZ->SpinBox_DX->GetValue(); - double y = GroupXYZ->SpinBox_DY->GetValue(); - double z = GroupXYZ->SpinBox_DZ->GetValue(); + { + double x = GroupXYZ->SpinBox_DX->value(); + double y = GroupXYZ->SpinBox_DY->value(); + double z = GroupXYZ->SpinBox_DZ->value(); - anObj = GEOM::GEOM_IBasicOperations::_narrow( getOperation() )->MakePointXYZ( x,y,z ); - res = true; - break; - } + aParameters << GroupXYZ->SpinBox_DX->text(); + aParameters << GroupXYZ->SpinBox_DY->text(); + aParameters << GroupXYZ->SpinBox_DZ->text(); + + anObj = GEOM::GEOM_IBasicOperations::_narrow( getOperation() )->MakePointXYZ( x, y, z ); + res = true; + break; + } case 1 : - { - double dx = GroupRefPoint->SpinBox_DX->GetValue(); - double dy = GroupRefPoint->SpinBox_DY->GetValue(); - double dz = GroupRefPoint->SpinBox_DZ->GetValue(); + { + double dx = GroupRefPoint->SpinBox_DX->value(); + double dy = GroupRefPoint->SpinBox_DY->value(); + double dz = GroupRefPoint->SpinBox_DZ->value(); - anObj = GEOM::GEOM_IBasicOperations::_narrow( getOperation() )-> - MakePointWithReference( myRefPoint, dx, dy, dz ); - res = true; - break; - } + aParameters << GroupRefPoint->SpinBox_DX->text(); + aParameters << GroupRefPoint->SpinBox_DY->text(); + aParameters << GroupRefPoint->SpinBox_DZ->text(); + + anObj = GEOM::GEOM_IBasicOperations::_narrow( getOperation() )-> + MakePointWithReference( myRefPoint, dx, dy, dz ); + res = true; + break; + } case 2 : anObj = GEOM::GEOM_IBasicOperations::_narrow( getOperation() )-> MakePointOnCurve( myEdge, getParameter() ); + aParameters<SpinBox_DX->text(); res = true; break; case 3 : anObj = GEOM::GEOM_IBasicOperations::_narrow( getOperation() )-> MakePointOnLinesIntersection( myLine1, myLine2 ); - res = true; - break; + res = true; + break; + case 4 : + anObj = GEOM::GEOM_IBasicOperations::_narrow( getOperation() )-> + MakePointOnSurface( myFace, getUParameter(), getVParameter() ); + aParameters<SpinBox_DX->text(); + aParameters<SpinBox_DY->text(); + res = true; + break; } + + if(!anObj->_is_nil() && !IsPreview() && (getConstructorId()==0 || + getConstructorId() == 1 || + getConstructorId() == 2 || + getConstructorId() == 4) ) { + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } + - if ( getConstructorId() == 1 || getConstructorId() == 2 ) - { + if ( getConstructorId() == 1 || getConstructorId() == 2 || + getConstructorId() == 4 ) { TopoDS_Shape aShape; - if ( GEOMBase::GetShape( anObj, aShape ) && !aShape.IsNull() && aShape.ShapeType() == TopAbs_VERTEX ) - { + if ( GEOMBase::GetShape( anObj, aShape ) && !aShape.IsNull() && + aShape.ShapeType() == TopAbs_VERTEX ) { gp_Pnt aPnt = BRep_Tool::Pnt( TopoDS::Vertex( aShape ) ); myX->setText( QString( "%1" ).arg( aPnt.X() ) ); myY->setText( QString( "%1" ).arg( aPnt.Y() ) ); myZ->setText( QString( "%1" ).arg( aPnt.Z() ) ); } - else - { + else { myX->setText( "" ); myY->setText( "" ); myZ->setText( "" ); } } - - if ( !anObj->_is_nil() ) - { - //printf( "--> a valid point is created\n" ); + + if ( !anObj->_is_nil() ) { objects.push_back( anObj._retn() ); } - + return res; } -//================================================================================= -// function : closeEvent -// purpose : -//================================================================================= -void BasicGUI_PointDlg::closeEvent( QCloseEvent* e ) -{ - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : addSubshapeToStudy // purpose : virtual method to add new SubObjects if local selection @@ -685,8 +824,7 @@ void BasicGUI_PointDlg::addSubshapesToStudy() { QMap objMap; -switch (getConstructorId()) - { + switch ( getConstructorId() ) { case 0: break; case 1: @@ -699,6 +837,9 @@ switch (getConstructorId()) objMap[GroupLineIntersection->LineEdit1->text()] = myLine1; objMap[GroupLineIntersection->LineEdit2->text()] = myLine2; break; + case 4: + objMap[GroupOnSurface->LineEdit1->text()] = myFace; + break; } - addSubshapesToFather( objMap ); + addSubshapesToFather( objMap ); } diff --git a/src/BasicGUI/BasicGUI_PointDlg.h b/src/BasicGUI/BasicGUI_PointDlg.h index 8a19f1ab9..1dfd48618 100644 --- a/src/BasicGUI/BasicGUI_PointDlg.h +++ b/src/BasicGUI/BasicGUI_PointDlg.h @@ -1,100 +1,103 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : BasicGUI_PointDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_PointDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef BASICGUI_POINTDLG_H +#define BASICGUI_POINTDLG_H -#ifndef DIALOGBOX_POINT_H -#define DIALOGBOX_POINT_H +#include -#include "GEOM_BasicGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel1Spin.h" -#include "DlgRef_3Spin.h" -#include "DlgRef_2Sel_QTD.h" -#include "DlgRef_1Sel3Spin.h" +class DlgRef_1Sel1Spin; +class DlgRef_3Spin; +class DlgRef_2Sel; +class DlgRef_1Sel3Spin; +class DlgRef_1Sel2Spin; class QLineEdit; class QGroupBox; +class gp_Pnt; + //================================================================================= // class : BasicGUI_PointDlg // purpose : //================================================================================= -class GEOM_BASICGUI_EXPORT BasicGUI_PointDlg : public GEOMBase_Skeleton +class BasicGUI_PointDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BasicGUI_PointDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); + BasicGUI_PointDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); - ~BasicGUI_PointDlg(); + ~BasicGUI_PointDlg(); - bool acceptMouseEvent() const { return ( getConstructorId() == 0 ); }; - void OnPointSelected( const gp_Pnt& ); // called by BasicGUI::OnMousePress() + bool acceptMouseEvent() const { return ( getConstructorId() == 0 ); } + void OnPointSelected( const gp_Pnt& ); // called by BasicGUI::OnMousePress() protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); - virtual void closeEvent( QCloseEvent* e ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); -private : - void Init(); - void enterEvent(QEvent* e); - double getParameter() const; - - GEOM::GEOM_Object_var myEdge; - GEOM::GEOM_Object_var myRefPoint; - GEOM::GEOM_Object_var myLine1; - GEOM::GEOM_Object_var myLine2; - - DlgRef_3Spin* GroupXYZ; - DlgRef_1Sel3Spin* GroupRefPoint; - DlgRef_1Sel1Spin* GroupOnCurve; - DlgRef_2Sel_QTD* GroupLineIntersection; - - QGroupBox* myCoordGrp; - QLineEdit* myX; - QLineEdit* myY; - QLineEdit* myZ; +private: + void Init(); + void enterEvent( QEvent* ); + double getParameter() const; + double getUParameter() const; + double getVParameter() const; +private: + GEOM::GEOM_Object_var myEdge; + GEOM::GEOM_Object_var myFace; + GEOM::GEOM_Object_var myRefPoint; + GEOM::GEOM_Object_var myLine1; + GEOM::GEOM_Object_var myLine2; + + DlgRef_3Spin* GroupXYZ; + DlgRef_1Sel3Spin* GroupRefPoint; + DlgRef_1Sel1Spin* GroupOnCurve; + DlgRef_2Sel* GroupLineIntersection; + DlgRef_1Sel2Spin* GroupOnSurface; + + QGroupBox* myCoordGrp; + QLineEdit* myX; + QLineEdit* myY; + QLineEdit* myZ; + private slots: - void ClickOnOk(); - void ClickOnCancel(); - bool ClickOnApply(); - void ActivateThisDialog(); - void DeactivateActiveDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ConstructorsClicked(int constructorId); - void ValueChangedInSpinBox(double newValue); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void DeactivateActiveDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ConstructorsClicked( int ); + void ValueChangedInSpinBox( double ); + void SetDoubleSpinBoxStep( double ); }; -#endif // DIALOGBOX_POINT_H +#endif // BASICGUI_POINTDLG_H diff --git a/src/BasicGUI/BasicGUI_VectorDlg.cxx b/src/BasicGUI/BasicGUI_VectorDlg.cxx index f5bb3bb44..23a1a8492 100644 --- a/src/BasicGUI/BasicGUI_VectorDlg.cxx +++ b/src/BasicGUI/BasicGUI_VectorDlg.cxx @@ -1,37 +1,38 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_VectorDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : BasicGUI_VectorDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "BasicGUI_VectorDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include + +#include +#include +#include +#include #include #include @@ -39,60 +40,61 @@ #include #include -#include - -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" - -using namespace std; +#include //================================================================================= // class : BasicGUI_VectorDlg() -// purpose : Constructs a BasicGUI_VectorDlg which is a child of 'parent', with the +// purpose : Constructs a BasicGUI_VectorDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BasicGUI_VectorDlg::BasicGUI_VectorDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, fl) +BasicGUI_VectorDlg::BasicGUI_VectorDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_VECTOR_2P"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_VECTOR_DXYZ"))); - QPixmap image2(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_VECTOR_2P" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_VECTOR_DXYZ" ) ) ); + QPixmap image2( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_VECTOR_TITLE")); + setWindowTitle( tr( "GEOM_VECTOR_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_VECTOR")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image1); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_VECTOR")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setIcon(image1); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_2Sel_QTD(this, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("GEOM_POINTS")); - GroupPoints->TextLabel1->setText(tr("GEOM_POINT_I").arg("1")); - GroupPoints->TextLabel2->setText(tr("GEOM_POINT_I").arg("2")); - GroupPoints->PushButton1->setPixmap(image2); - GroupPoints->PushButton2->setPixmap(image2); + GroupPoints = new DlgRef_2Sel( centralWidget() ); + + GroupPoints->GroupBox1->setTitle( tr( "GEOM_POINTS" ) ); + GroupPoints->TextLabel1->setText( tr( "GEOM_POINT_I" ).arg( 1 ) ); + GroupPoints->TextLabel2->setText( tr( "GEOM_POINT_I" ).arg( 2 ) ); + GroupPoints->PushButton1->setIcon( image2 ); + GroupPoints->PushButton2->setIcon( image2 ); + GroupPoints->PushButton1->setDown( true ); GroupPoints->LineEdit1->setReadOnly( true ); GroupPoints->LineEdit2->setReadOnly( true ); + GroupPoints->LineEdit1->setEnabled( true ); + GroupPoints->LineEdit2->setEnabled( false ); - GroupDimensions = new DlgRef_3Spin1Check(this, "GroupDimensions"); - GroupDimensions->GroupBox1->setTitle(tr("GEOM_COORDINATES")); - GroupDimensions->TextLabel1->setText(tr("GEOM_DX")); - GroupDimensions->TextLabel2->setText(tr("GEOM_DY")); - GroupDimensions->TextLabel3->setText(tr("GEOM_DZ")); - GroupDimensions->CheckBox1->setText(tr("GEOM_REVERSE_VECTOR")); + GroupDimensions = new DlgRef_3Spin1Check( centralWidget() ); + GroupDimensions->GroupBox1->setTitle( tr( "GEOM_COORDINATES" ) ); + GroupDimensions->TextLabel1->setText( tr( "GEOM_DX" ) ); + GroupDimensions->TextLabel2->setText( tr( "GEOM_DY" ) ); + GroupDimensions->TextLabel3->setText( tr( "GEOM_DZ" ) ); + GroupDimensions->CheckButton1->setText( tr( "GEOM_REVERSE_VECTOR" ) ); - Layout1->addWidget(GroupPoints, 2, 0); - Layout1->addWidget(GroupDimensions, 2, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); + layout->addWidget( GroupDimensions ); /***************************************************************/ - setHelpFileName("create_vector_page.html"); - + setHelpFileName( "create_vector_page.html" ); + /* Initialisations */ Init(); } @@ -103,7 +105,7 @@ BasicGUI_VectorDlg::BasicGUI_VectorDlg(GeometryGUI* theGeometryGUI, QWidget* par // purpose : Destroys the object and frees any allocated resources //================================================================================= BasicGUI_VectorDlg::~BasicGUI_VectorDlg() -{ +{ } @@ -121,52 +123,61 @@ void BasicGUI_VectorDlg::Init() /* Get setting of step value from file configuration */ SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100); - + double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100 ); + /* min, max, step and decimals for spin boxes */ - GroupDimensions->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupDimensions->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupDimensions->SpinBox_DZ->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); + initSpinBox( GroupDimensions->SpinBox_DX, COORD_MIN, COORD_MAX, step, 6 ); // VSR:TODO : DBL_DIGITS_DISPLAY + initSpinBox( GroupDimensions->SpinBox_DY, COORD_MIN, COORD_MAX, step, 6 ); // VSR:TODO : DBL_DIGITS_DISPLAY + initSpinBox( GroupDimensions->SpinBox_DZ, COORD_MIN, COORD_MAX, step, 6 ); // VSR:TODO : DBL_DIGITS_DISPLAY double dx( 0. ), dy( 0. ), dz( 200. ); - GroupDimensions->SpinBox_DX->SetValue( dx ); - GroupDimensions->SpinBox_DY->SetValue( dy ); - GroupDimensions->SpinBox_DZ->SetValue( dz ); + GroupDimensions->SpinBox_DX->setValue( dx ); + GroupDimensions->SpinBox_DY->setValue( dy ); + GroupDimensions->SpinBox_DZ->setValue( dz ); - GroupDimensions->CheckBox1->setChecked(FALSE); + GroupDimensions->CheckButton1->setChecked( false ); /* signals and slots connections */ - connect(buttonCancel, SIGNAL(clicked()), this, SLOT(ClickOnCancel())); - connect(myGeomGUI, SIGNAL(SignalDeactivateActiveDialog()), this, SLOT(DeactivateActiveDialog())); - connect(myGeomGUI, SIGNAL(SignalCloseAllDialogs()), this, SLOT(ClickOnCancel())); - - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), this, SLOT( DeactivateActiveDialog() ) ); + connect( myGeomGUI, SIGNAL( SignalCloseAllDialogs() ), this, SLOT( ClickOnCancel() ) ); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); - connect(GroupDimensions->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(GroupDimensions->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(GroupDimensions->SpinBox_DZ, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPoints->PushButton2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DY, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DZ, SLOT(SetStep(double))); + connect( GroupPoints->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( GroupPoints->LineEdit2, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect(GroupDimensions->CheckBox1, SIGNAL(stateChanged(int)), this, SLOT(ReverseVector(int))); + connect( GroupDimensions->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupDimensions->SpinBox_DY, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupDimensions->SpinBox_DZ, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI, SIGNAL( SignalDefaultStepValueChanged( double ) ), this, SLOT( SetDoubleSpinBoxStep( double ) ) ); + + connect( GroupDimensions->CheckButton1, SIGNAL( stateChanged( int ) ), this, SLOT( ReverseVector( int ) ) ); + + connect( myGeomGUI->getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); initName( tr("GEOM_VECTOR") ); - GroupDimensions->hide(); - ConstructorsClicked( 0 ); + setConstructorId( 1 ); // simplest constructor + ConstructorsClicked( 1 ); +} + +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void BasicGUI_VectorDlg::SetDoubleSpinBoxStep( double step ) +{ + GroupDimensions->SpinBox_DX->setSingleStep(step); + GroupDimensions->SpinBox_DY->setSingleStep(step); + GroupDimensions->SpinBox_DZ->setSingleStep(step); } @@ -176,45 +187,50 @@ void BasicGUI_VectorDlg::Init() //================================================================================= void BasicGUI_VectorDlg::ConstructorsClicked( int constructorId ) { - disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + disconnect( myGeomGUI->getApp()->selectionMgr(), 0, this, 0 ); myPoint1 = GEOM::GEOM_Object::_nil(); myPoint2 = GEOM::GEOM_Object::_nil(); - switch (constructorId) - { - case 0: + switch ( constructorId ) { + case 0: { GroupDimensions->hide(); - resize(0, 0); GroupPoints->show(); myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit1->setText(""); - GroupPoints->LineEdit2->setText(""); + GroupPoints->LineEdit1->setText( "" ); + GroupPoints->LineEdit2->setText( "" ); + GroupPoints->PushButton1->setDown( true ); + GroupPoints->PushButton2->setDown( false ); + GroupPoints->LineEdit1->setEnabled( true ); + GroupPoints->LineEdit2->setEnabled( false ); globalSelection(); // close local contexts, if any - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + connect( myGeomGUI->getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); break; } - case 1: + case 1: { GroupPoints->hide(); - resize( 0, 0 ); GroupDimensions->show(); globalSelection(); // close local contexts, if any - double dx( 0. ), dy( 0. ), dz( 0. ); - GroupDimensions->SpinBox_DX->SetValue( dx ); - GroupDimensions->SpinBox_DY->SetValue( dy ); - GroupDimensions->SpinBox_DZ->SetValue( dz ); + double dx( 0. ), dy( 0. ), dz( 0. ); + GroupDimensions->SpinBox_DX->setValue( dx ); + GroupDimensions->SpinBox_DY->setValue( dy ); + GroupDimensions->SpinBox_DZ->setValue( dz ); - GroupDimensions->CheckBox1->setChecked( FALSE ); + GroupDimensions->CheckButton1->setChecked( false ); break; } } + qApp->processEvents(); + updateGeometry(); + resize( minimumSizeHint() ); + displayPreview(); } @@ -229,29 +245,20 @@ void BasicGUI_VectorDlg::ClickOnOk() ClickOnCancel(); } -//======================================================================= -// function : ClickOnCancel() -// purpose : -//======================================================================= -void BasicGUI_VectorDlg::ClickOnCancel() -{ - GEOMBase_Skeleton::ClickOnCancel(); -} - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool BasicGUI_VectorDlg::ClickOnApply() { - buttonApply->setFocus(); + buttonApply()->setFocus(); if ( !onAccept() ) return false; initName(); if ( getConstructorId() != 1 ) - ConstructorsClicked( getConstructorId() ); + ConstructorsClicked( getConstructorId() ); return true; } @@ -262,10 +269,13 @@ bool BasicGUI_VectorDlg::ClickOnApply() //================================================================================= void BasicGUI_VectorDlg::SelectionIntoArgument() { - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); - if (IObjectCount() != 1) - { + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) { if (myEditCurrentArgument == GroupPoints->LineEdit1) myPoint1 = GEOM::GEOM_Object::_nil(); else if (myEditCurrentArgument == GroupPoints->LineEdit2) @@ -273,37 +283,32 @@ void BasicGUI_VectorDlg::SelectionIntoArgument() return; } - // nbSel == 1 + // nbSel == 1 Standard_Boolean aRes = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), aRes); - if (!CORBA::is_nil(aSelectedObject) && aRes) - { + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aRes); + if (!CORBA::is_nil(aSelectedObject) && aRes) { QString aName = GEOMBase::GetName(aSelectedObject); TopoDS_Shape aShape; - if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) - { - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) { TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes(firstIObject(), aMap); - if (aMap.Extent() == 1) // Local Selection - { - + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) { // Local Selection int anIndex = aMap(1); aName += QString(":vertex_%1").arg(anIndex); //Find SubShape Object in Father GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId()); aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); } - else + else { aSelectedObject = aFindedObject; // get Object from study + } } - else // Global Selection - { + else { // Global Selection if (aShape.ShapeType() != TopAbs_VERTEX) { aSelectedObject = GEOM::GEOM_Object::_nil(); aName = ""; @@ -313,8 +318,21 @@ void BasicGUI_VectorDlg::SelectionIntoArgument() myEditCurrentArgument->setText(aName); - if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) myPoint1 = aSelectedObject; - else if ( myEditCurrentArgument == GroupPoints->LineEdit2 ) myPoint2 = aSelectedObject; + if (!aSelectedObject->_is_nil()) { // clear selection if something selected + globalSelection(); + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + } + + if (myEditCurrentArgument == GroupPoints->LineEdit1) { + myPoint1 = aSelectedObject; + if (!myPoint1->_is_nil() && myPoint2->_is_nil()) + GroupPoints->PushButton2->click(); + } + else if (myEditCurrentArgument == GroupPoints->LineEdit2) { + myPoint2 = aSelectedObject; + if (!myPoint2->_is_nil() && myPoint1->_is_nil()) + GroupPoints->PushButton1->click(); + } } displayPreview(); @@ -327,10 +345,24 @@ void BasicGUI_VectorDlg::SelectionIntoArgument() void BasicGUI_VectorDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if ( send == GroupPoints->PushButton1 ) myEditCurrentArgument = GroupPoints->LineEdit1; - else if ( send == GroupPoints->PushButton2 ) myEditCurrentArgument = GroupPoints->LineEdit2; + if ( send == GroupPoints->PushButton1 ) { + myEditCurrentArgument = GroupPoints->LineEdit1; + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit1->setEnabled(true); + GroupPoints->LineEdit2->setEnabled(false); + } + else if ( send == GroupPoints->PushButton2 ) { + myEditCurrentArgument = GroupPoints->LineEdit2; + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + GroupPoints->LineEdit2->setEnabled(true); + } myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); + // SelectionIntoArgument(); + globalSelection(); // close local selection to clear it + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + send->setDown(true); + displayPreview(); } @@ -339,7 +371,7 @@ void BasicGUI_VectorDlg::SetEditCurrentArgument() // purpose : //================================================================================= void BasicGUI_VectorDlg::LineEditReturnPressed() -{ +{ QLineEdit* send = (QLineEdit*)sender(); if ( send == GroupPoints->LineEdit1 ) myEditCurrentArgument = GroupPoints->LineEdit1; else if ( send == GroupPoints->LineEdit2 ) myEditCurrentArgument = GroupPoints->LineEdit2; @@ -347,6 +379,7 @@ void BasicGUI_VectorDlg::LineEditReturnPressed() GEOMBase_Skeleton::LineEditReturnPressed(); } + //================================================================================= // function : ActivateThisDialog() // purpose : @@ -354,10 +387,10 @@ void BasicGUI_VectorDlg::LineEditReturnPressed() void BasicGUI_VectorDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); - ConstructorsClicked(getConstructorId()); + ConstructorsClicked( getConstructorId() ); } //================================================================================= @@ -373,9 +406,9 @@ void BasicGUI_VectorDlg::DeactivateActiveDialog() // function : enterEvent() // purpose : //================================================================================= -void BasicGUI_VectorDlg::enterEvent(QEvent* e) +void BasicGUI_VectorDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } @@ -392,16 +425,16 @@ void BasicGUI_VectorDlg::ValueChangedInSpinBox( double newValue ) // function : ReverseVector() // purpose : 'state' not used here //================================================================================= -void BasicGUI_VectorDlg::ReverseVector(int state) +void BasicGUI_VectorDlg::ReverseVector( int state ) { - double dx = -GroupDimensions->SpinBox_DX->GetValue(); - double dy = -GroupDimensions->SpinBox_DY->GetValue(); - double dz = -GroupDimensions->SpinBox_DZ->GetValue(); + double dx = -GroupDimensions->SpinBox_DX->value(); + double dy = -GroupDimensions->SpinBox_DY->value(); + double dz = -GroupDimensions->SpinBox_DZ->value(); + + GroupDimensions->SpinBox_DX->setValue( dx ); + GroupDimensions->SpinBox_DY->setValue( dy ); + GroupDimensions->SpinBox_DZ->setValue( dz ); - GroupDimensions->SpinBox_DX->SetValue( dx ); - GroupDimensions->SpinBox_DY->SetValue( dy ); - GroupDimensions->SpinBox_DZ->SetValue( dz ); - displayPreview(); } @@ -420,7 +453,17 @@ GEOM::GEOM_IOperations_ptr BasicGUI_VectorDlg::createOperation() //================================================================================= bool BasicGUI_VectorDlg::isValid( QString& msg ) { - return getConstructorId() == 0 ? !myPoint1->_is_nil() && !myPoint2->_is_nil(): true; + if(getConstructorId() == 0) + return !myPoint1->_is_nil() && !myPoint2->_is_nil(); + else if(getConstructorId() == 1) + { + bool ok = true; + ok = GroupDimensions->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupDimensions->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + ok = GroupDimensions->SpinBox_DZ->isValid( msg, !IsPreview() ) && ok; + return ok; + } + return false; } //================================================================================= @@ -430,21 +473,31 @@ bool BasicGUI_VectorDlg::isValid( QString& msg ) bool BasicGUI_VectorDlg::execute( ObjectList& objects ) { bool res = false; - + GEOM::GEOM_Object_var anObj; switch ( getConstructorId() ) { case 0 : - anObj = GEOM::GEOM_IBasicOperations::_narrow( getOperation() )->MakeVectorTwoPnt( myPoint1, myPoint2 ); - res = true; - break; - + { + anObj = GEOM::GEOM_IBasicOperations::_narrow( getOperation() )->MakeVectorTwoPnt( myPoint1, myPoint2 ); + res = true; + break; + } case 1 : { - double dx = GroupDimensions->SpinBox_DX->GetValue(); - double dy = GroupDimensions->SpinBox_DY->GetValue(); - double dz = GroupDimensions->SpinBox_DZ->GetValue(); - anObj = GEOM::GEOM_IBasicOperations::_narrow( getOperation() )->MakeVectorDXDYDZ( dx,dy,dz ); + double dx = GroupDimensions->SpinBox_DX->value(); + double dy = GroupDimensions->SpinBox_DY->value(); + double dz = GroupDimensions->SpinBox_DZ->value(); + + QStringList aParameters; + aParameters << GroupDimensions->SpinBox_DX->text(); + aParameters << GroupDimensions->SpinBox_DY->text(); + aParameters << GroupDimensions->SpinBox_DZ->text(); + anObj = GEOM::GEOM_IBasicOperations::_narrow( getOperation() )->MakeVectorDXDYDZ( dx, dy, dz ); + + if ( !anObj->_is_nil() && !IsPreview() ) + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + res = true; break; } @@ -464,14 +517,13 @@ void BasicGUI_VectorDlg::addSubshapesToStudy() { QMap objMap; -switch (getConstructorId()) - { + switch ( getConstructorId() ) { case 0: - objMap[GroupPoints->LineEdit1->text()] = myPoint1; - objMap[GroupPoints->LineEdit2->text()] = myPoint2; + objMap[GroupPoints->LineEdit1->text()] = myPoint1; + objMap[GroupPoints->LineEdit2->text()] = myPoint2; break; case 1: return; } - addSubshapesToFather( objMap ); + addSubshapesToFather( objMap ); } diff --git a/src/BasicGUI/BasicGUI_VectorDlg.h b/src/BasicGUI/BasicGUI_VectorDlg.h index b0dc0dcd0..747ef534b 100644 --- a/src/BasicGUI/BasicGUI_VectorDlg.h +++ b/src/BasicGUI/BasicGUI_VectorDlg.h @@ -1,86 +1,79 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : BasicGUI_VectorDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_VectorDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef BASICGUI_VECTORDLG_H +#define BASICGUI_VECTORDLG_H -#ifndef DIALOGBOX_VECTOR_H -#define DIALOGBOX_VECTOR_H +#include -#include "GEOM_BasicGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel_QTD.h" -#include "DlgRef_3Spin1Check.h" - -#include "BasicGUI.h" +class DlgRef_2Sel; +class DlgRef_3Spin1Check; //================================================================================= // class : BasicGUI_VectorDlg // purpose : //================================================================================= -class GEOM_BASICGUI_EXPORT BasicGUI_VectorDlg : public GEOMBase_Skeleton +class BasicGUI_VectorDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BasicGUI_VectorDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~BasicGUI_VectorDlg(); - + BasicGUI_VectorDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~BasicGUI_VectorDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); -private : - void Init(); - void enterEvent(QEvent* e); +private: + void Init(); + void enterEvent( QEvent* ); - GEOM::GEOM_Object_var myPoint1; - GEOM::GEOM_Object_var myPoint2; + GEOM::GEOM_Object_var myPoint1; + GEOM::GEOM_Object_var myPoint2; - DlgRef_2Sel_QTD* GroupPoints; - DlgRef_3Spin1Check* GroupDimensions; - -private slots: - void ClickOnOk(); - void ClickOnCancel(); - bool ClickOnApply(); - - void ActivateThisDialog(); - void DeactivateActiveDialog(); + DlgRef_2Sel* GroupPoints; + DlgRef_3Spin1Check* GroupDimensions; - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ConstructorsClicked(int constructorId); - void ValueChangedInSpinBox(double newValue); - void ReverseVector(int state); +private slots: + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void DeactivateActiveDialog(); + + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ConstructorsClicked( int ); + void ValueChangedInSpinBox( double ); + void ReverseVector( int ); + void SetDoubleSpinBoxStep( double ); }; -#endif // DIALOGBOX_VECTOR_H +#endif // BASICGUI_VECTORDLG_H diff --git a/src/BasicGUI/BasicGUI_WorkingPlaneDlg.cxx b/src/BasicGUI/BasicGUI_WorkingPlaneDlg.cxx index 31c84cb9e..5fd3838c9 100644 --- a/src/BasicGUI/BasicGUI_WorkingPlaneDlg.cxx +++ b/src/BasicGUI/BasicGUI_WorkingPlaneDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -19,24 +19,23 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_WorkingPlaneDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : BasicGUI_WorkingPlaneDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM - #include "BasicGUI_WorkingPlaneDlg.h" -#include "GEOMBase.h" +#include +#include +#include -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include // OCCT Includes #include -#include #include #include #include @@ -48,12 +47,9 @@ #include // QT Includes -#include -#include +#include -#include "GEOMImpl_Types.hxx" - -using namespace std; +#include //================================================================================= // class : BasicGUI_WorkingPlaneDlg() @@ -62,61 +58,68 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BasicGUI_WorkingPlaneDlg::BasicGUI_WorkingPlaneDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BasicGUI_WorkingPlaneDlg::BasicGUI_WorkingPlaneDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_WPLANE_FACE"))); - QPixmap image2(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_WPLANE_VECTOR"))); - QPixmap image3(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_WPLANE_ORIGIN"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_WPLANE_FACE" ) ) ); + QPixmap image2( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_WPLANE_VECTOR" ) ) ); + QPixmap image3( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_WPLANE_ORIGIN" ) ) ); - setCaption(tr("GEOM_WPLANE_TITLE")); + setWindowTitle( tr( "GEOM_WPLANE_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_WPLANE")); - RadioButton1->setPixmap(image1); - RadioButton2->setPixmap(image2); - RadioButton3->setPixmap(image3); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_WPLANE" ) ); + mainFrame()->RadioButton1->setIcon( image1 ); + mainFrame()->RadioButton2->setIcon( image2 ); + mainFrame()->RadioButton3->setIcon( image3 ); - Group1 = new DlgRef_1Sel_QTD(this, "Group1"); - Group1->GroupBox1->setTitle(tr("GEOM_WPLANE_FACE")); - Group1->TextLabel1->setText(tr("GEOM_SELECTION")); - Group1->PushButton1->setPixmap(image0); + Group1 = new DlgRef_1Sel( centralWidget() ); + + Group1->GroupBox1->setTitle( tr( "GEOM_WPLANE_FACE" ) ); + Group1->TextLabel1->setText( tr( "GEOM_SELECTION" ) ); + Group1->PushButton1->setIcon( image0 ); Group1->LineEdit1->setReadOnly( true ); - Group2 = new DlgRef_2Sel_QTD(this, "Group2"); - Group2->GroupBox1->setTitle(tr("GEOM_WPLANE_VECTOR")); - Group2->TextLabel1->setText(tr("GEOM_WPLANE_VX")); - Group2->TextLabel2->setText(tr("GEOM_WPLANE_VZ")); - Group2->PushButton1->setPixmap(image0); - Group2->PushButton2->setPixmap(image0); + Group2 = new DlgRef_2Sel( centralWidget() ); + + Group2->GroupBox1->setTitle( tr( "GEOM_WPLANE_VECTOR" ) ); + Group2->TextLabel1->setText( tr( "GEOM_WPLANE_VX" ) ); + Group2->TextLabel2->setText( tr( "GEOM_WPLANE_VZ" ) ); + Group2->PushButton1->setIcon( image0 ); + Group2->PushButton2->setIcon( image0 ); Group2->LineEdit1->setReadOnly( true ); Group2->LineEdit2->setReadOnly( true ); + Group2->PushButton1->setDown( true ); + Group2->LineEdit1->setEnabled( true ); + Group2->LineEdit2->setEnabled( false ); - Group3 = new DlgRef_3Check_QTD(this, "Group3"); - Group3->GroupBox1->setTitle(tr("GEOM_WPLANE_ORIGIN")); - Group3->RadioButton1->setText(tr("GEOM_WPLANE_OXY")); - Group3->RadioButton2->setText(tr("GEOM_WPLANE_OYZ")); - Group3->RadioButton3->setText(tr("GEOM_WPLANE_OZX")); + Group3 = new DlgRef_3Check( centralWidget() ); + + Group3->GroupBox1->setTitle( tr( "GEOM_WPLANE_ORIGIN" ) ); + Group3->RadioButton1->setText( tr( "GEOM_WPLANE_OXY" ) ); + Group3->RadioButton2->setText( tr( "GEOM_WPLANE_OYZ" ) ); + Group3->RadioButton3->setText( tr( "GEOM_WPLANE_OZX" ) ); - Layout1->addWidget(Group1, 1, 0); - Layout1->addWidget(Group2, 1, 0); - Layout1->addWidget(Group3, 1, 0); /***************************************************************/ - QGroupBox* aReverseGroupBox = new QGroupBox(this, "aReverseGroupBox"); - aReverseGroupBox->setTitle(tr("")); - aReverseGroupBox->setColumnLayout(1, Qt::Horizontal); - aReverseGroupBox->setInsideMargin(10); - - myReverseCB = new QCheckBox(aReverseGroupBox, "myReverseCB"); - myReverseCB->setText(tr("GEOM_REVERSE_PLANE")); - - Layout1->addWidget(aReverseGroupBox, 2, 0); - + QGroupBox* aReverseGroupBox = new QGroupBox( centralWidget() ); + QHBoxLayout* aReverseGroupBoxLayout = new QHBoxLayout( aReverseGroupBox ); + aReverseGroupBoxLayout->setMargin( 9 ); + aReverseGroupBoxLayout->setSpacing( 6 ); - setHelpFileName("create_wplane_page.html"); + myReverseCB = new QCheckBox( aReverseGroupBox ); + myReverseCB->setText( tr( "GEOM_REVERSE_PLANE" ) ); + aReverseGroupBoxLayout->addWidget( myReverseCB ); + + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( Group1 ); + layout->addWidget( Group2 ); + layout->addWidget( Group3 ); + layout->addWidget( aReverseGroupBox ); + + setHelpFileName( "create_wplane_page.html" ); Init(); } @@ -141,7 +144,7 @@ void BasicGUI_WorkingPlaneDlg::Init() // myGeomGUI->SetState( 0 ); - myFace = GEOM::GEOM_Object::_nil(); + myFace = GEOM::GEOM_Object::_nil(); myVectX = GEOM::GEOM_Object::_nil(); myVectZ = GEOM::GEOM_Object::_nil(); @@ -151,98 +154,96 @@ void BasicGUI_WorkingPlaneDlg::Init() globalSelection( GEOM_PLANE ); /* signals and slots connections */ - connect(buttonCancel, SIGNAL(clicked()), this, SLOT(ClickOnCancel())); - connect(myGeomGUI, SIGNAL(SignalDeactivateActiveDialog()), this, SLOT(DeactivateActiveDialog())); - connect(myGeomGUI, SIGNAL(SignalCloseAllDialogs()), this, SLOT(ClickOnCancel())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), this, SLOT( DeactivateActiveDialog() ) ); + connect( myGeomGUI, SIGNAL( SignalCloseAllDialogs() ), this, SLOT( ClickOnCancel() ) ); - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(Group1->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(Group1->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); - connect(Group2->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(Group2->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(Group2->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(Group2->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect( Group1->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( Group1->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group2->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( Group2->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( Group2->LineEdit2, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( Group2->PushButton2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect(Group3->GroupBox1, SIGNAL(clicked(int)), this, SLOT(GroupClicked(int))); + connect( Group3->GroupBox1, SIGNAL( clicked( int ) ), this, SLOT( GroupClicked( int ) ) ); - connect(myReverseCB, SIGNAL(clicked()), this, SLOT(onReverse())); + connect( myReverseCB, SIGNAL( clicked() ), this, SLOT( onReverse() ) ); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); initName( tr( "GEOM_WPLANE" ) ); - ConstructorsClicked(0); + + setConstructorId( 2 ); // simplest constructor + ConstructorsClicked( 2 ); } //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void BasicGUI_WorkingPlaneDlg::ConstructorsClicked(int constructorId) +void BasicGUI_WorkingPlaneDlg::ConstructorsClicked( int constructorId ) { LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); - disconnect(aSelMgr, 0, this, 0); + disconnect( aSelMgr, 0, this, 0 ); - switch (constructorId) + switch ( constructorId ) { + case 0: { - case 0: - { - //globalSelection( GEOM_PLANE ); - TColStd_MapOfInteger aMap; - aMap.Add( GEOM_PLANE ); - aMap.Add( GEOM_MARKER ); - globalSelection( aMap ); + TColStd_MapOfInteger aMap; + aMap.Add( GEOM_PLANE ); + aMap.Add( GEOM_MARKER ); + globalSelection( aMap ); + Group2->hide(); + Group3->hide(); + Group1->show(); + Group1->PushButton1->setDown(true); + myEditCurrentArgument = Group1->LineEdit1; + Group1->LineEdit1->setText( "" ); + myFace = GEOM::GEOM_Object::_nil(); - Group2->hide(); - Group3->hide(); - resize(0, 0); - Group1->show(); - - myEditCurrentArgument = Group1->LineEdit1; - Group1->LineEdit1->setText(""); - myFace = GEOM::GEOM_Object::_nil(); - - connect(aSelMgr, SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - break; - } - case 1: - { - //globalSelection( GEOM_LINE ); - GEOM::GEOM_Object_var anObj; - localSelection( anObj, TopAbs_EDGE ); - - Group1->hide(); - Group3->hide(); - resize(0, 0); - Group2->show(); - - myEditCurrentArgument = Group2->LineEdit1; - Group2->LineEdit1->setText(""); - Group2->LineEdit2->setText(""); - myVectX = GEOM::GEOM_Object::_nil(); - myVectZ = GEOM::GEOM_Object::_nil(); - - connect(aSelMgr, SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - break; - } - case 2: - { - Group1->hide(); - Group2->hide(); - resize(0, 0); - Group3->show(); - - Group3->RadioButton1->setChecked(true); - aOriginType = 1; - break; - } + connect( aSelMgr, SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); + break; } - + case 1: + { + globalSelection( GEOM_LINE ); + Group1->hide(); + Group3->hide(); + Group2->show(); + myEditCurrentArgument = Group2->LineEdit1; + Group2->LineEdit1->setText( "" ); + Group2->LineEdit2->setText( "" ); + Group2->PushButton1->setDown( true ); + Group2->PushButton2->setDown( false ); + Group2->LineEdit1->setEnabled( true ); + Group2->LineEdit2->setEnabled( false ); + myVectX = GEOM::GEOM_Object::_nil(); + myVectZ = GEOM::GEOM_Object::_nil(); + + connect( aSelMgr, SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); + break; + } + case 2: + { + Group1->hide(); + Group2->hide(); + Group3->show(); + Group3->RadioButton1->setChecked( true ); + aOriginType = 1; + break; + } + } + + qApp->processEvents(); + updateGeometry(); + resize( minimumSizeHint() ); + updateWPlane(); } @@ -250,7 +251,7 @@ void BasicGUI_WorkingPlaneDlg::ConstructorsClicked(int constructorId) // function : GroupClicked() // purpose : Radio button management //================================================================================= -void BasicGUI_WorkingPlaneDlg::GroupClicked(int groupId) +void BasicGUI_WorkingPlaneDlg::GroupClicked( int groupId ) { aOriginType = groupId; updateWPlane(); @@ -272,14 +273,14 @@ void BasicGUI_WorkingPlaneDlg::ClickOnOk() //================================================================================= bool BasicGUI_WorkingPlaneDlg::ClickOnApply() { - buttonApply->setFocus(); - myGeomGUI->application()->putInfo(tr("")); - - if (updateWPlane(false)){ - myGeomGUI->SetWorkingPlane(myWPlane); + buttonApply()->setFocus(); + myGeomGUI->application()->putInfo( "" ); + + if ( updateWPlane( false ) ) { + myGeomGUI->SetWorkingPlane( myWPlane ); myGeomGUI->ActiveWorkingPlane(); } - + return true; } @@ -289,17 +290,21 @@ bool BasicGUI_WorkingPlaneDlg::ClickOnApply() //================================================================================= void BasicGUI_WorkingPlaneDlg::SelectionIntoArgument() { - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); QString aName; + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + const int id = getConstructorId(); - if (IObjectCount() != 1) { - if (id == 0) + if (aSelList.Extent() != 1) { + if ( id == 0 ) myFace = GEOM::GEOM_Object::_nil(); - else if (id == 1) { - if (myEditCurrentArgument == Group2->LineEdit1) + else if ( id == 1 ) { + if ( myEditCurrentArgument == Group2->LineEdit1 ) myVectX = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == Group2->LineEdit2) + else if ( myEditCurrentArgument == Group2->LineEdit2 ) myVectZ = GEOM::GEOM_Object::_nil(); } return; @@ -307,42 +312,38 @@ void BasicGUI_WorkingPlaneDlg::SelectionIntoArgument() // nbSel == 1 Standard_Boolean aRes = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), aRes); + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aRes); - if (!aRes || CORBA::is_nil(aSelectedObject)) + if ( !aRes || CORBA::is_nil( aSelectedObject ) ) return; aName = GEOMBase::GetName(aSelectedObject); - if (myEditCurrentArgument == Group1->LineEdit1) + if ( myEditCurrentArgument == Group1->LineEdit1 ) myFace = aSelectedObject; - else if (myEditCurrentArgument == Group2->LineEdit1 || myEditCurrentArgument == Group2->LineEdit2) - { - if ( aRes && !aSelectedObject->_is_nil() ) - { + else if ( myEditCurrentArgument == Group2->LineEdit1 || + myEditCurrentArgument == Group2->LineEdit2 ) { + if ( aRes && !aSelectedObject->_is_nil() ) { TopoDS_Shape aShape; - if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) - { - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) { TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes( firstIObject(), aMap ); - if ( aMap.Extent() == 1 ) - { + aSelMgr->GetIndexes(aSelList.First(), aMap); + if ( aMap.Extent() == 1 ) { int anIndex = aMap( 1 ); aName = aName + ":edge_" + QString::number( anIndex ); GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); - if(myEditCurrentArgument == Group2->LineEdit1) - myVectX = aShapesOp->GetSubShape(aSelectedObject, anIndex); + if ( myEditCurrentArgument == Group2->LineEdit1 ) + myVectX = aShapesOp->GetSubShape( aSelectedObject, anIndex ); else - myVectZ = aShapesOp->GetSubShape(aSelectedObject, anIndex); + myVectZ = aShapesOp->GetSubShape( aSelectedObject, anIndex ); } else { - if (myEditCurrentArgument == Group2->LineEdit1) - myVectX = aSelectedObject; - else - myVectZ = aSelectedObject; + if ( aShape.ShapeType() != TopAbs_EDGE ) { + aSelectedObject = GEOM::GEOM_Object::_nil(); + aName = ""; + } } aSelMgr->clearSelected(); } @@ -351,9 +352,21 @@ void BasicGUI_WorkingPlaneDlg::SelectionIntoArgument() myEditCurrentArgument->setText( aName ); + if ( myEditCurrentArgument == Group2->LineEdit1 ) { + myVectX = aSelectedObject; + if ( !myVectX->_is_nil() && myVectZ->_is_nil() ) + Group2->PushButton2->click(); + } + else { + myVectZ = aSelectedObject; + if ( !myVectZ->_is_nil() && myVectX->_is_nil() ) + Group2->PushButton1->click(); + } + updateWPlane(); } + //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -362,25 +375,36 @@ void BasicGUI_WorkingPlaneDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if (send == Group1->PushButton1) { + if ( send == Group1->PushButton1 ) { myEditCurrentArgument = Group1->LineEdit1; globalSelection( GEOM_PLANE ); } - else if (send == Group2->PushButton1) { + else if ( send == Group2->PushButton1 ) { myEditCurrentArgument = Group2->LineEdit1; GEOM::GEOM_Object_var anObj; - localSelection( anObj, TopAbs_EDGE ); + // localSelection( anObj, TopAbs_EDGE ); + globalSelection( GEOM_LINE ); + Group2->PushButton2->setDown( false ); + Group2->LineEdit1->setEnabled( true ); + Group2->LineEdit2->setEnabled( false ); } - else if (send == Group2->PushButton2) { + else if ( send == Group2->PushButton2 ) { myEditCurrentArgument = Group2->LineEdit2; GEOM::GEOM_Object_var anObj; - localSelection( anObj, TopAbs_EDGE ); + // localSelection( anObj, TopAbs_EDGE ); + globalSelection( GEOM_LINE ); + Group2->PushButton1->setDown( false ); + Group2->LineEdit1->setEnabled( false ); + Group2->LineEdit2->setEnabled( true ); } myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); + // SelectionIntoArgument(); + send->setDown(true); + displayPreview(); } + //================================================================================= // function : LineEditReturnPressed() // purpose : @@ -388,12 +412,13 @@ void BasicGUI_WorkingPlaneDlg::SetEditCurrentArgument() void BasicGUI_WorkingPlaneDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if(send == Group1->LineEdit1 || send == Group2->LineEdit1 || send == Group2->LineEdit2) { + if ( send == Group1->LineEdit1 || send == Group2->LineEdit1 || send == Group2->LineEdit2 ) { myEditCurrentArgument = send; GEOMBase_Skeleton::LineEditReturnPressed(); } } + //================================================================================= // function : onReverse() // purpose : @@ -403,6 +428,7 @@ void BasicGUI_WorkingPlaneDlg::onReverse() updateWPlane(); } + //================================================================================= // function : ActivateThisDialog() // purpose : @@ -410,49 +436,33 @@ void BasicGUI_WorkingPlaneDlg::onReverse() void BasicGUI_WorkingPlaneDlg::ActivateThisDialog( ) { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication( ) ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); ConstructorsClicked( getConstructorId() ); } + //================================================================================= // function : DeactivateActiveDialog() // purpose : public slot to deactivate if active //================================================================================= void BasicGUI_WorkingPlaneDlg::DeactivateActiveDialog() { + // myGeomGUI->SetState( -1 ); GEOMBase_Skeleton::DeactivateActiveDialog(); } -//================================================================================= -// function : ClickOnCancel() -// purpose : -//================================================================================= -void BasicGUI_WorkingPlaneDlg::ClickOnCancel() -{ - GEOMBase_Skeleton::ClickOnCancel(); -} - //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void BasicGUI_WorkingPlaneDlg::enterEvent(QEvent* e) +void BasicGUI_WorkingPlaneDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } -//================================================================================= -// function : closeEvent -// purpose : -//================================================================================= -void BasicGUI_WorkingPlaneDlg::closeEvent( QCloseEvent* e ) -{ - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : updateWPlane // purpose : @@ -460,40 +470,41 @@ void BasicGUI_WorkingPlaneDlg::closeEvent( QCloseEvent* e ) bool BasicGUI_WorkingPlaneDlg::updateWPlane( const bool showPreview ) { erasePreview(); - + const int id = getConstructorId(); - if (id == 0) { // by planar face selection - if (CORBA::is_nil(myFace)) { - if(!showPreview) + if ( id == 0 ) { // by planar face selection + if ( CORBA::is_nil( myFace ) ) { + if ( !showPreview ) showError( "Face has to be selected" ); return false; } // PAL12781: set center of WPL to face's center of mass // like it is done for LCS creation - CORBA::Double Ox,Oy,Oz, Zx,Zy,Zz, Xx,Xy,Xz; + CORBA::Double Ox, Oy, Oz, Zx, Zy, Zz, Xx, Xy, Xz; Ox = Oy = Oz = Zx = Zy = Xy = Xz = 0.; Zz = Xx = 1.; GEOM::GEOM_IMeasureOperations_ptr aMeasureOp = - myGeomGUI->GetGeomGen()->GetIMeasureOperations(getStudyId()); - aMeasureOp->GetPosition(myFace, Ox,Oy,Oz, Zx,Zy,Zz, Xx,Xy,Xz); + myGeomGUI->GetGeomGen()->GetIMeasureOperations( getStudyId() ); + aMeasureOp->GetPosition( myFace, Ox, Oy, Oz, Zx, Zy, Zz, Xx, Xy, Xz); - if (aMeasureOp->IsDone()) { - gp_Pnt aPnt (Ox,Oy,Oz); - gp_Dir aDirN (Zx,Zy,Zz); - gp_Dir aDirX (Xx,Xy,Xz); - myWPlane = gp_Ax3(aPnt, aDirN, aDirX); - } else { - if(!showPreview) + if ( aMeasureOp->IsDone() ) { + gp_Pnt aPnt ( Ox, Oy, Oz ); + gp_Dir aDirN ( Zx, Zy, Zz ); + gp_Dir aDirX ( Xx, Xy, Xz ); + myWPlane = gp_Ax3( aPnt, aDirN, aDirX ); + } + else { + if ( !showPreview ) showError( "Wrong shape selected (has to be a planar face)" ); return false; } } - else if (id == 1) { // by two vectors (Ox & Oz) + else if ( id == 1 ) { // by two vectors (Ox & Oz) if ( CORBA::is_nil( myVectX ) || CORBA::is_nil( myVectZ ) ) { - if(!showPreview) + if ( !showPreview ) showError( "Two vectors have to be selected" ); return false; } @@ -502,81 +513,80 @@ bool BasicGUI_WorkingPlaneDlg::updateWPlane( const bool showPreview ) TopoDS_Vertex VX1, VX2, VZ1, VZ2; gp_Vec aVX, aVZ; - if (!GEOMBase::GetShape( myVectX, aVectX, TopAbs_EDGE ) || - !GEOMBase::GetShape( myVectZ, aVectZ, TopAbs_EDGE )) { - if(!showPreview) + if ( !GEOMBase::GetShape( myVectX, aVectX, TopAbs_EDGE ) || + !GEOMBase::GetShape( myVectZ, aVectZ, TopAbs_EDGE ) ) { + if ( !showPreview ) showError( "Wrong shape selected (two vectors(edges) have to be selected)" ); return false; } - TopExp::Vertices(aVectX, VX1, VX2, Standard_True); - TopExp::Vertices(aVectZ, VZ1, VZ2, Standard_True); + TopExp::Vertices( aVectX, VX1, VX2, Standard_True ); + TopExp::Vertices( aVectZ, VZ1, VZ2, Standard_True ); - if (VX1.IsNull() || VX2.IsNull()) { - if(!showPreview) + if ( VX1.IsNull() || VX2.IsNull() ) { + if ( !showPreview ) showError( "Bad OX vector" ); return false; } - if (VZ1.IsNull() || VZ2.IsNull()) { - if(!showPreview) + if ( VZ1.IsNull() || VZ2.IsNull() ) { + if ( !showPreview ) showError( "Bad OZ vector" ); return false; } - aVX = gp_Vec(BRep_Tool::Pnt(VX1), BRep_Tool::Pnt(VX2)); - aVZ = gp_Vec(BRep_Tool::Pnt(VZ1), BRep_Tool::Pnt(VZ2)); + aVX = gp_Vec( BRep_Tool::Pnt( VX1 ), BRep_Tool::Pnt( VX2 ) ); + aVZ = gp_Vec( BRep_Tool::Pnt( VZ1 ), BRep_Tool::Pnt( VZ2 ) ); - if (aVX.Magnitude() < Precision::Confusion()) { - if(!showPreview) + if ( aVX.Magnitude() < Precision::Confusion() ) { + if ( !showPreview ) showError( "Bad OX vector" ); return false; } - if (aVZ.Magnitude() < Precision::Confusion()) { - if(!showPreview) + if ( aVZ.Magnitude() < Precision::Confusion() ) { + if ( !showPreview ) showError( "Bad OZ vector" ); return false; } - gp_Dir aDirX = gp_Dir(aVX.X(), aVX.Y(), aVX.Z()); - gp_Dir aDirZ = gp_Dir(aVZ.X(), aVZ.Y(), aVZ.Z()); + gp_Dir aDirX = gp_Dir( aVX.X(), aVX.Y(), aVX.Z() ); + gp_Dir aDirZ = gp_Dir( aVZ.X(), aVZ.Y(), aVZ.Z() ); - if (aDirX.IsParallel(aDirZ, Precision::Angular())) { - if(!showPreview) + if ( aDirX.IsParallel( aDirZ, Precision::Angular() ) ) { + if ( !showPreview ) showError( "Parallel vectors selected" ); return false; } - myWPlane = gp_Ax3(BRep_Tool::Pnt(VX1), aDirZ, aDirX); + myWPlane = gp_Ax3( BRep_Tool::Pnt( VX1 ), aDirZ, aDirX ); + } - else if (id == 2) { // by selection from standard (OXY or OYZ, or OZX) + else if ( id == 2 ) { // by selection from standard (OXY or OYZ, or OZX) gp_Ax2 anAx2; - if (aOriginType == 1) anAx2 = gp::XOY(); - else if (aOriginType == 2) anAx2 = gp::YOZ(); - else if (aOriginType == 0) anAx2 = gp::ZOX(); + if ( aOriginType == 1 ) anAx2 = gp::XOY(); + else if ( aOriginType == 2 ) anAx2 = gp::YOZ(); + else if ( aOriginType == 0 ) anAx2 = gp::ZOX(); + + myWPlane = gp_Ax3( anAx2 ); - myWPlane = gp_Ax3(anAx2); } else { return false; } - if (myReverseCB->isChecked()) - { + if ( myReverseCB->isChecked() ) { myWPlane.YReverse(); myWPlane.ZReverse(); } - if (showPreview) - { - GEOM::GEOM_IBasicOperations_var aBasicOp = getGeomEngine()->GetIBasicOperations(getStudyId()); + if ( showPreview ) { + GEOM::GEOM_IBasicOperations_var aBasicOp = getGeomEngine()->GetIBasicOperations( getStudyId() ); GEOM::GEOM_Object_var anObj = aBasicOp->MakeMarker - (myWPlane.Location().X() , myWPlane.Location().Y() , myWPlane.Location().Z(), - myWPlane.XDirection().X(), myWPlane.XDirection().Y(), myWPlane.XDirection().Z(), - myWPlane.YDirection().X(), myWPlane.YDirection().Y(), myWPlane.YDirection().Z()); - displayPreview(anObj); + ( myWPlane.Location().X(), myWPlane.Location().Y(), myWPlane.Location().Z(), + myWPlane.XDirection().X(), myWPlane.XDirection().Y(), myWPlane.XDirection().Z(), + myWPlane.YDirection().X(), myWPlane.YDirection().Y(), myWPlane.YDirection().Z() ); + displayPreview( anObj ); } return true; } - diff --git a/src/BasicGUI/BasicGUI_WorkingPlaneDlg.h b/src/BasicGUI/BasicGUI_WorkingPlaneDlg.h index 40cddf743..e125b8c7c 100644 --- a/src/BasicGUI/BasicGUI_WorkingPlaneDlg.h +++ b/src/BasicGUI/BasicGUI_WorkingPlaneDlg.h @@ -1,91 +1,85 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : BasicGUI_WorkingPlaneDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_WorkingPlaneDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef BASICGUI_WORKINGPLANEDLG_H +#define BASICGUI_WORKINGPLANEDLG_H -#ifndef DIALOGBOX_WORKINGPLANE_H -#define DIALOGBOX_WORKINGPLANE_H +#include -#include "GEOM_BasicGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel_QTD.h" -#include "DlgRef_2Sel_QTD.h" -#include "DlgRef_3Check_QTD.h" +#include +class DlgRef_1Sel; +class DlgRef_2Sel; +class DlgRef_3Check; class QCheckBox; //================================================================================= // class : BasicGUI_WorkingPlaneDlg // purpose : //================================================================================= -class GEOM_BASICGUI_EXPORT BasicGUI_WorkingPlaneDlg : public GEOMBase_Skeleton +class BasicGUI_WorkingPlaneDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BasicGUI_WorkingPlaneDlg( GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0 ); - ~BasicGUI_WorkingPlaneDlg(); - virtual void closeEvent( QCloseEvent* e ); + BasicGUI_WorkingPlaneDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~BasicGUI_WorkingPlaneDlg(); private: - void Init(); - void enterEvent(QEvent* e); - - bool updateWPlane(const bool showPreview = true); - - GEOM::GEOM_Object_var myFace; - GEOM::GEOM_Object_var myVectX; - GEOM::GEOM_Object_var myVectZ; - - int aOriginType; - - DlgRef_1Sel_QTD* Group1; - DlgRef_2Sel_QTD* Group2; - DlgRef_3Check_QTD* Group3; - - QCheckBox* myReverseCB; - - gp_Ax3 myWPlane; + void Init(); + void enterEvent( QEvent* ); + + bool updateWPlane( const bool = true ); + GEOM::GEOM_Object_var myFace; + GEOM::GEOM_Object_var myVectX; + GEOM::GEOM_Object_var myVectZ; + + int aOriginType; + + DlgRef_1Sel* Group1; + DlgRef_2Sel* Group2; + DlgRef_3Check* Group3; + + QCheckBox* myReverseCB; + + gp_Ax3 myWPlane; + private slots: - void ClickOnOk(); - void ClickOnCancel(); - bool ClickOnApply(); - - void ConstructorsClicked(int constructorId); - void GroupClicked(int groupId); - void SetEditCurrentArgument(); - void SelectionIntoArgument(); - void LineEditReturnPressed(); - void onReverse(); - - void ActivateThisDialog(); - void DeactivateActiveDialog(); - + void ClickOnOk(); + bool ClickOnApply(); + + void ConstructorsClicked( int ); + void GroupClicked( int ); + void SetEditCurrentArgument(); + void SelectionIntoArgument(); + void LineEditReturnPressed(); + void onReverse(); + + void ActivateThisDialog(); + void DeactivateActiveDialog(); }; -#endif // DIALOGBOX_WORKINGPLANE_H +#endif // BASICGUI_WORKINGPLANEDLG_H diff --git a/src/BasicGUI/GEOM_BasicGUI.hxx b/src/BasicGUI/GEOM_BasicGUI.hxx deleted file mode 100755 index ba917e55d..000000000 --- a/src/BasicGUI/GEOM_BasicGUI.hxx +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org -// -// -// -// File : GEOM_BasicGUI.hxx -// Author : Alexander A. BORODIN -// Module : GEOM - -#ifndef _GEOM_BasicGUI_HXX_ -#define _GEOM_BasicGUI_HXX_ - -#ifdef WNT - #if defined BASICGUI_EXPORTS - #if defined WIN32 - #define GEOM_BASICGUI_EXPORT __declspec( dllexport ) - #else - #define GEOM_BASICGUI_EXPORT - #endif - #else - #if defined WIN32 - #define GEOM_BASICGUI_EXPORT __declspec( dllimport ) - #else - #define GEOM_BASICGUI_EXPORT - #endif - #endif -#else - #define GEOM_BASICGUI_EXPORT -#endif - -#endif diff --git a/src/BasicGUI/Makefile.am b/src/BasicGUI/Makefile.am index ab4659b13..2d364c18e 100644 --- a/src/BasicGUI/Makefile.am +++ b/src/BasicGUI/Makefile.am @@ -1,100 +1,105 @@ -# GEOM BASICGUI : +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : BasicGUI # -# File : Makefile.in -# Author : Damien COQUERET (OCC) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header: - include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files -salomeinclude_HEADERS = BasicGUI_PointDlg.h \ - GEOM_BasicGUI.hxx + + +salomeinclude_HEADERS = \ + BasicGUI.h \ + BasicGUI_ArcDlg.h \ + BasicGUI_CircleDlg.h \ + BasicGUI_CurveDlg.h \ + BasicGUI_EllipseDlg.h \ + BasicGUI_LineDlg.h \ + BasicGUI_MarkerDlg.h \ + BasicGUI_PlaneDlg.h \ + BasicGUI_PointDlg.h \ + BasicGUI_VectorDlg.h \ + BasicGUI_WorkingPlaneDlg.h # Libraries targets + lib_LTLIBRARIES = libBasicGUI.la # Sources files -dist_libBasicGUI_la_SOURCES = \ - BasicGUI.cxx \ - BasicGUI_PointDlg.cxx \ - BasicGUI_LineDlg.cxx \ - BasicGUI_CircleDlg.cxx \ - BasicGUI_EllipseDlg.cxx \ - BasicGUI_ArcDlg.cxx \ - BasicGUI_VectorDlg.cxx \ - BasicGUI_PlaneDlg.cxx \ - BasicGUI_WorkingPlaneDlg.cxx \ - BasicGUI_CurveDlg.cxx \ +dist_libBasicGUI_la_SOURCES = \ + BasicGUI.cxx \ + BasicGUI_PointDlg.cxx \ + BasicGUI_LineDlg.cxx \ + BasicGUI_CircleDlg.cxx \ + BasicGUI_EllipseDlg.cxx \ + BasicGUI_ArcDlg.cxx \ + BasicGUI_VectorDlg.cxx \ + BasicGUI_PlaneDlg.cxx \ + BasicGUI_WorkingPlaneDlg.cxx \ + BasicGUI_CurveDlg.cxx \ BasicGUI_MarkerDlg.cxx -MOC_FILES = \ - BasicGUI_PointDlg_moc.cxx \ - BasicGUI_LineDlg_moc.cxx \ - BasicGUI_CircleDlg_moc.cxx \ - BasicGUI_EllipseDlg_moc.cxx \ - BasicGUI_ArcDlg_moc.cxx \ - BasicGUI_VectorDlg_moc.cxx \ - BasicGUI_PlaneDlg_moc.cxx \ - BasicGUI_WorkingPlaneDlg_moc.cxx \ - BasicGUI_CurveDlg_moc.cxx \ +MOC_FILES = \ + BasicGUI_PointDlg_moc.cxx \ + BasicGUI_LineDlg_moc.cxx \ + BasicGUI_CircleDlg_moc.cxx \ + BasicGUI_EllipseDlg_moc.cxx \ + BasicGUI_ArcDlg_moc.cxx \ + BasicGUI_VectorDlg_moc.cxx \ + BasicGUI_PlaneDlg_moc.cxx \ + BasicGUI_WorkingPlaneDlg_moc.cxx \ + BasicGUI_CurveDlg_moc.cxx \ BasicGUI_MarkerDlg_moc.cxx -nodist_libBasicGUI_la_SOURCES= \ +nodist_libBasicGUI_la_SOURCES = \ $(MOC_FILES) +# additional information to compile and link file -# LIB_CLIENT_IDL = SALOME_GenericObj.idl SALOME_Exception.idl SALOME_Component.idl - -# LIB_SERVER_IDL = - -# additionnal information to compil and link file - -libBasicGUI_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(VTK_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(PYTHON_INCLUDES) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../OBJECT \ - -I$(srcdir)/../DlgRef \ - -I$(srcdir)/../GEOMGUI \ - -I$(srcdir)/../GEOMFiltersSelection \ - -I$(srcdir)/../GEOMBase \ - -I$(srcdir)/../GEOMImpl \ - -I$(srcdir)/../GEOMClient \ - -I$(top_builddir)/idl \ +libBasicGUI_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(VTK_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(PYTHON_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../OBJECT \ + -I$(srcdir)/../DlgRef \ + -I$(srcdir)/../GEOMGUI \ + -I$(srcdir)/../GEOMFiltersSelection \ + -I$(srcdir)/../GEOMBase \ + -I$(srcdir)/../GEOMImpl \ + -I$(srcdir)/../GEOMClient \ + -I$(top_builddir)/src/DlgRef \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libBasicGUI_la_LDFLAGS = \ - ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ - ../GEOMBase/libGEOMBase.la \ - ../GEOMGUI/libGEOM.la \ +libBasicGUI_la_LDFLAGS = \ + ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ + ../GEOMBase/libGEOMBase.la \ + ../GEOMGUI/libGEOM.la \ $(GUI_LDFLAGS) -lsuit diff --git a/src/BlocksGUI/BlocksGUI.cxx b/src/BlocksGUI/BlocksGUI.cxx index 2ab3c1db0..547510dc8 100644 --- a/src/BlocksGUI/BlocksGUI.cxx +++ b/src/BlocksGUI/BlocksGUI.cxx @@ -1,6 +1,7 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 CEA +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -16,15 +17,12 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BooleanGUI.cxx +// Author : Julia DOROVSKIKH, Open CASCADE S.A.S. (julia.dorovskikh@opencascade.com) // -// -// File : BooleanGUI.cxx -// Author : Julia DOOVSKIKH -// Module : GEOM -// $Header$ - #include "BlocksGUI.h" #include "BlocksGUI_QuadFaceDlg.h" @@ -33,20 +31,19 @@ #include "BlocksGUI_ExplodeDlg.h" #include "BlocksGUI_PropagateDlg.h" -#include "GeometryGUI.h" +#include -#include "SUIT_Desktop.h" -#include "SUIT_MessageBox.h" -#include "SUIT_Session.h" - -#include "SalomeApp_Application.h" +#include +#include +#include +#include //======================================================================= // function : BlocksGUI() // purpose : Constructor //======================================================================= BlocksGUI::BlocksGUI( GeometryGUI* parent ) - : GEOMGUI( parent ) + : GEOMGUI( parent ) { } @@ -66,22 +63,24 @@ bool BlocksGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) { getGeometryGUI()->EmitSignalDeactivateDialog(); - QDialog* aDlg = NULL; + QDialog* aDlg = 0; - switch (theCommandID) - { - case 9999: aDlg = new BlocksGUI_BlockDlg (getGeometryGUI(), parent); break; - case 9998: aDlg = new BlocksGUI_TrsfDlg (getGeometryGUI(), parent); break; - case 9997: aDlg = new BlocksGUI_QuadFaceDlg (getGeometryGUI(), parent); break; - case 9995: aDlg = new BlocksGUI_ExplodeDlg (getGeometryGUI(), parent); break; - case 99991: aDlg = new BlocksGUI_PropagateDlg (getGeometryGUI(), parent); break; - default: - getGeometryGUI()->getApp()->putInfo(tr("GEOM_PRP_COMMAND").arg(theCommandID)); - break; + switch ( theCommandID ) { + case 9999: aDlg = new BlocksGUI_BlockDlg ( getGeometryGUI(), parent ); break; + case 9998: aDlg = new BlocksGUI_TrsfDlg ( getGeometryGUI(), parent ); break; + case 9997: aDlg = new BlocksGUI_QuadFaceDlg ( getGeometryGUI(), parent ); break; + case 9995: aDlg = new BlocksGUI_ExplodeDlg ( getGeometryGUI(), parent ); break; + case 99991: aDlg = new BlocksGUI_PropagateDlg( getGeometryGUI(), parent ); break; + default: + getGeometryGUI()->getApp()->putInfo( tr( "GEOM_PRP_COMMAND" ).arg( theCommandID ) ); + break; } - if (aDlg != NULL) + if ( aDlg ) { + aDlg->updateGeometry(); + aDlg->resize( aDlg->minimumSizeHint() ); aDlg->show(); + } return true; } @@ -91,7 +90,9 @@ bool BlocksGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) //===================================================================================== extern "C" { - GEOM_BLOCKSGUI_EXPORT +#ifdef WIN32 + __declspec( dllexport ) +#endif GEOMGUI* GetLibGUI( GeometryGUI* parent ) { return new BlocksGUI( parent ); diff --git a/src/BlocksGUI/BlocksGUI.h b/src/BlocksGUI/BlocksGUI.h index 9d546a298..b9d48fb0e 100644 --- a/src/BlocksGUI/BlocksGUI.h +++ b/src/BlocksGUI/BlocksGUI.h @@ -1,6 +1,7 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 CEA +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -16,32 +17,28 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BuildGUI.h +// Author : Julia DOROVSKIKH, Open CASCADE S.A.S. (julia.dorovskikh@opencascade.com) // -// -// File : BuildGUI.h -// Author : Julia DOROVSKIKH -// Module : GEOM - #ifndef BLOCKSGUI_H #define BLOCKSGUI_H -#include "GEOM_BlocksGUI.hxx" - -#include "GEOMGUI.h" +#include //================================================================================= // class : BlocksGUI // purpose : //================================================================================= -class GEOM_BLOCKSGUI_EXPORT BlocksGUI : public GEOMGUI +class BlocksGUI : public GEOMGUI { - public: - BlocksGUI( GeometryGUI* parent ); +public: + BlocksGUI( GeometryGUI* ); ~BlocksGUI(); - bool OnGUIEvent (int theCommandID, SUIT_Desktop* parent); + bool OnGUIEvent( int, SUIT_Desktop* ); }; -#endif +#endif // BLOCKSGUI_H diff --git a/src/BlocksGUI/BlocksGUI_BlockDlg.cxx b/src/BlocksGUI/BlocksGUI_BlockDlg.cxx index decb907fc..5ebb5f4ce 100644 --- a/src/BlocksGUI/BlocksGUI_BlockDlg.cxx +++ b/src/BlocksGUI/BlocksGUI_BlockDlg.cxx @@ -1,6 +1,7 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 CEA +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -16,58 +17,60 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BlocksGUI_BlockDlg.cxx +// Author : Julia DOROVSKIKH, Open CASCADE S.A.S. (julia.dorovskikh@opencascade.com) // -// -// File : BlocksGUI_BlockDlg.cxx -// Author : Julia DOROVSKIKH -// Module : GEOM -// $Header$ - #include "BlocksGUI_BlockDlg.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include -#include "GEOMImpl_Types.hxx" +#include +#include +#include +#include -using namespace std; +#include -#include +// OCCT Includes +#include //================================================================================= // class : BlocksGUI_BlockDlg() // purpose : Constructs a BlocksGUI_BlockDlg which is a child of 'parent'. //================================================================================= -BlocksGUI_BlockDlg::BlocksGUI_BlockDlg (GeometryGUI* theGeometryGUI, QWidget* parent, bool modal) - : GEOMBase_Skeleton(theGeometryGUI, parent, "BlockDlg", modal, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BlocksGUI_BlockDlg::BlocksGUI_BlockDlg (GeometryGUI* theGeometryGUI, QWidget* parent) + : GEOMBase_Skeleton(theGeometryGUI, parent), + myInitial(true) { QPixmap image0 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_BLOCK_2F"))); QPixmap image1 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_BLOCK_6F"))); QPixmap imageS (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_BLOCK_TITLE")); + setWindowTitle(tr("GEOM_BLOCK_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_BLOCK")); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_BLOCK")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image1); - RadioButton3->close(TRUE); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setIcon(image1); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); // Create first group - Group2F = new DlgRef_2Sel_QTD(this, "Group2F"); + Group2F = new DlgRef_2Sel (centralWidget()); Group2F->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); Group2F->TextLabel1->setText(tr("FACE_1")); Group2F->TextLabel2->setText(tr("FACE_2")); - Group2F->PushButton1->setPixmap(imageS); - Group2F->PushButton2->setPixmap(imageS); + Group2F->PushButton1->setIcon(imageS); + Group2F->PushButton2->setIcon(imageS); // Create second group - Group6F = new DlgRef_6Sel_QTD(this, "Group2F"); + Group6F = new DlgRef_6Sel (centralWidget()); Group6F->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); Group6F->TextLabel1->setText(tr("FACE_1")); Group6F->TextLabel2->setText(tr("FACE_2")); @@ -75,16 +78,19 @@ BlocksGUI_BlockDlg::BlocksGUI_BlockDlg (GeometryGUI* theGeometryGUI, QWidget* pa Group6F->TextLabel4->setText(tr("FACE_4")); Group6F->TextLabel5->setText(tr("FACE_5")); Group6F->TextLabel6->setText(tr("FACE_6")); - Group6F->PushButton1->setPixmap(imageS); - Group6F->PushButton2->setPixmap(imageS); - Group6F->PushButton3->setPixmap(imageS); - Group6F->PushButton4->setPixmap(imageS); - Group6F->PushButton5->setPixmap(imageS); - Group6F->PushButton6->setPixmap(imageS); + Group6F->PushButton1->setIcon(imageS); + Group6F->PushButton2->setIcon(imageS); + Group6F->PushButton3->setIcon(imageS); + Group6F->PushButton4->setIcon(imageS); + Group6F->PushButton5->setIcon(imageS); + Group6F->PushButton6->setIcon(imageS); // Add groups to layout - Layout1->addWidget(Group2F, 2, 0); - Layout1->addWidget(Group6F, 2, 0); + QVBoxLayout* layout = new QVBoxLayout (centralWidget()); + layout->setMargin(0); + layout->setSpacing(6); + layout->addWidget(Group2F); + layout->addWidget(Group6F); /***************************************************************/ setHelpFileName("build_by_blocks_page.html#hexa_solid_anchor"); @@ -119,9 +125,10 @@ void BlocksGUI_BlockDlg::Init() Group6F->LineEdit6->setReadOnly(true); // signals and slots connections - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); + + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); connect(Group2F->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(Group2F->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); @@ -133,9 +140,6 @@ void BlocksGUI_BlockDlg::Init() connect(Group6F->PushButton5, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(Group6F->PushButton6, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; - // init controls and fields initName(tr("GEOM_BLOCK")); @@ -154,41 +158,43 @@ void BlocksGUI_BlockDlg::ConstructorsClicked (int constructorId) myConstructorId = constructorId; + // init fields + myFace1 = myFace2 = GEOM::GEOM_Object::_nil(); + myFace3 = myFace4 = myFace5 = myFace6 = myFace1; + switch (constructorId) { case 0: Group6F->hide(); - resize(0, 0); Group2F->show(); - myEditCurrentArgument = Group2F->LineEdit1; Group2F->LineEdit1->setText(tr("")); Group2F->LineEdit2->setText(tr("")); + + Group2F->PushButton1->click(); break; case 1: Group2F->hide(); - resize(0, 0); Group6F->show(); - myEditCurrentArgument = Group6F->LineEdit1; Group6F->LineEdit1->setText(tr("")); Group6F->LineEdit2->setText(tr("")); Group6F->LineEdit3->setText(tr("")); Group6F->LineEdit4->setText(tr("")); Group6F->LineEdit5->setText(tr("")); Group6F->LineEdit6->setText(tr("")); + + Group6F->PushButton1->click(); break; default: break; } - // init fields - myFace1 = myFace2 = GEOM::GEOM_Object::_nil(); - myFace3 = myFace4 = myFace5 = myFace6 = myFace1; + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); - globalSelection(GEOM_FACE); + // on dialog initialization we init the first field with a selected object (if any) SelectionIntoArgument(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); } //================================================================================= @@ -216,56 +222,111 @@ bool BlocksGUI_BlockDlg::ClickOnApply() //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection as changed or other case +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void BlocksGUI_BlockDlg::SelectionIntoArgument() { erasePreview(); myEditCurrentArgument->setText(""); - if (IObjectCount() != 1) - { - if (myEditCurrentArgument == Group2F->LineEdit1 || - myEditCurrentArgument == Group6F->LineEdit1) - myFace1 = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == Group2F->LineEdit2 || - myEditCurrentArgument == Group6F->LineEdit2) - myFace2 = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == Group6F->LineEdit3) - myFace3 = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == Group6F->LineEdit4) - myFace4 = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == Group6F->LineEdit5) - myFace5 = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == Group6F->LineEdit6) - myFace6 = GEOM::GEOM_Object::_nil(); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) { + if (myEditCurrentArgument == Group2F->LineEdit1) myFace1 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == Group2F->LineEdit2) myFace2 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == Group6F->LineEdit1) myFace1 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == Group6F->LineEdit2) myFace2 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == Group6F->LineEdit3) myFace3 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == Group6F->LineEdit4) myFace4 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == Group6F->LineEdit5) myFace5 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == Group6F->LineEdit6) myFace6 = GEOM::GEOM_Object::_nil(); return; } // nbSel == 1 Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), testResult ); + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); - if (!testResult || CORBA::is_nil( aSelectedObject )) + if (!testResult || CORBA::is_nil(aSelectedObject)) return; - if (myEditCurrentArgument == Group2F->LineEdit1 || - myEditCurrentArgument == Group6F->LineEdit1) - myFace1 = aSelectedObject; - else if (myEditCurrentArgument == Group2F->LineEdit2 || - myEditCurrentArgument == Group6F->LineEdit2) - myFace2 = aSelectedObject; - else if (myEditCurrentArgument == Group6F->LineEdit3) - myFace3 = aSelectedObject; - else if (myEditCurrentArgument == Group6F->LineEdit4) - myFace4 = aSelectedObject; - else if (myEditCurrentArgument == Group6F->LineEdit5) - myFace5 = aSelectedObject; - else if (myEditCurrentArgument == Group6F->LineEdit6) - myFace6 = aSelectedObject; + QString aName = GEOMBase::GetName(aSelectedObject); - myEditCurrentArgument->setText( GEOMBase::GetName( aSelectedObject ) ); + // Get Selected object if selected subshape + TopoDS_Shape aShape; + if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) + { + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) // Local Selection + { + int anIndex = aMap(1); + aName += QString(":face_%1").arg(anIndex); + + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); + + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId()); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + } + else { + aSelectedObject = aFindedObject; // get Object from study + } + } + else // Global Selection + { + if (aShape.ShapeType() != TopAbs_FACE) { + aSelectedObject = GEOM::GEOM_Object::_nil(); + aName = ""; + } + } + } + + myEditCurrentArgument->setText(aName); + + if (myEditCurrentArgument == Group2F->LineEdit1) { + myFace1 = aSelectedObject; + if (!myFace1->_is_nil() && myFace2->_is_nil()) + Group2F->PushButton2->click(); + } + else if (myEditCurrentArgument == Group2F->LineEdit2) { + myFace2 = aSelectedObject; + if (!myFace2->_is_nil() && myFace1->_is_nil()) + Group2F->PushButton1->click(); + } + else if (myEditCurrentArgument == Group6F->LineEdit1) { + myFace1 = aSelectedObject; + if (!myFace1->_is_nil() && myFace2->_is_nil()) + Group6F->PushButton2->click(); + } + else if (myEditCurrentArgument == Group6F->LineEdit2) { + myFace2 = aSelectedObject; + if (!myFace2->_is_nil() && myFace3->_is_nil()) + Group6F->PushButton3->click(); + } + else if (myEditCurrentArgument == Group6F->LineEdit3) { + myFace3 = aSelectedObject; + if (!myFace3->_is_nil() && myFace4->_is_nil()) + Group6F->PushButton4->click(); + } + else if (myEditCurrentArgument == Group6F->LineEdit4) { + myFace4 = aSelectedObject; + if (!myFace4->_is_nil() && myFace5->_is_nil()) + Group6F->PushButton5->click(); + } + else if (myEditCurrentArgument == Group6F->LineEdit5) { + myFace5 = aSelectedObject; + if (!myFace5->_is_nil() && myFace6->_is_nil()) + Group6F->PushButton6->click(); + } + else if (myEditCurrentArgument == Group6F->LineEdit6) { + myFace6 = aSelectedObject; + if (!myFace6->_is_nil() && myFace1->_is_nil()) + Group6F->PushButton1->click(); + } displayPreview(); } @@ -278,29 +339,77 @@ void BlocksGUI_BlockDlg::SetEditCurrentArgument() { QPushButton* aSender = (QPushButton*)sender(); + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + if (myInitial) + myInitial = false; + else + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + + // disable all + switch (myConstructorId) { + case 0: + Group2F->PushButton1->setDown(false); + Group2F->PushButton2->setDown(false); + + Group2F->LineEdit1->setEnabled(false); + Group2F->LineEdit2->setEnabled(false); + break; + case 1: + Group6F->PushButton1->setDown(false); + Group6F->PushButton2->setDown(false); + Group6F->PushButton3->setDown(false); + Group6F->PushButton4->setDown(false); + Group6F->PushButton5->setDown(false); + Group6F->PushButton6->setDown(false); + + Group6F->LineEdit1->setEnabled(false); + Group6F->LineEdit2->setEnabled(false); + Group6F->LineEdit3->setEnabled(false); + Group6F->LineEdit4->setEnabled(false); + Group6F->LineEdit5->setEnabled(false); + Group6F->LineEdit6->setEnabled(false); + break; + default: + break; + } + + // set line edit as current argument if (aSender == Group2F->PushButton1) { myEditCurrentArgument = Group2F->LineEdit1; - } else if (aSender == Group2F->PushButton2) { + } + else if (aSender == Group2F->PushButton2) { myEditCurrentArgument = Group2F->LineEdit2; - - } else if (aSender == Group6F->PushButton1) { + } + else if (aSender == Group6F->PushButton1) { myEditCurrentArgument = Group6F->LineEdit1; - } else if (aSender == Group6F->PushButton2) { + } + else if (aSender == Group6F->PushButton2) { myEditCurrentArgument = Group6F->LineEdit2; - } else if (aSender == Group6F->PushButton3) { + } + else if (aSender == Group6F->PushButton3) { myEditCurrentArgument = Group6F->LineEdit3; - } else if (aSender == Group6F->PushButton4) { + } + else if (aSender == Group6F->PushButton4) { myEditCurrentArgument = Group6F->LineEdit4; - } else if (aSender == Group6F->PushButton5) { + } + else if (aSender == Group6F->PushButton5) { myEditCurrentArgument = Group6F->LineEdit5; - } else if (aSender == Group6F->PushButton6) { + } + else if (aSender == Group6F->PushButton6) { myEditCurrentArgument = Group6F->LineEdit6; } - globalSelection(GEOM_FACE); - + // enable push button and line edit + myEditCurrentArgument->setEnabled(true); myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); + // after setFocus(), because it will be setDown(false) when loses focus + aSender->setDown(true); + + globalSelection(); // close local contexts, if any + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_FACE); //Select Faces on All Shapes + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); } //================================================================================= @@ -310,21 +419,20 @@ void BlocksGUI_BlockDlg::SetEditCurrentArgument() void BlocksGUI_BlockDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - - globalSelection(GEOM_FACE); - - SelectionIntoArgument(); + globalSelection(); // close local contexts, if any + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_FACE); //Select Faces on All Shapes + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + displayPreview(); } //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void BlocksGUI_BlockDlg::enterEvent (QEvent* e) +void BlocksGUI_BlockDlg::enterEvent (QEvent*) { - if (!GroupConstructors->isEnabled()) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } @@ -343,17 +451,20 @@ GEOM::GEOM_IOperations_ptr BlocksGUI_BlockDlg::createOperation() //================================================================================= bool BlocksGUI_BlockDlg::isValid (QString&) { + bool ok = false; switch (getConstructorId()) { - case 0: - return !(myFace1->_is_nil() || myFace2->_is_nil()); - case 1: - return !(myFace1->_is_nil() || myFace2->_is_nil() || - myFace3->_is_nil() || myFace4->_is_nil() || - myFace5->_is_nil() || myFace6->_is_nil()); - default: - return false; + case 0: + ok = !(myFace1->_is_nil() || myFace2->_is_nil()); + break; + case 1: + ok = !(myFace1->_is_nil() || myFace2->_is_nil() || + myFace3->_is_nil() || myFace4->_is_nil() || + myFace5->_is_nil() || myFace6->_is_nil()); + break; + default: + break; } - return false; + return ok; } //================================================================================= @@ -367,22 +478,22 @@ bool BlocksGUI_BlockDlg::execute (ObjectList& objects) GEOM::GEOM_Object_var anObj; switch (getConstructorId()) { - case 0: - if (!CORBA::is_nil(myFace1) && !CORBA::is_nil(myFace2)) { - anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())-> - MakeHexa2Faces(myFace1, myFace2); - res = true; - } - break; - case 1: - if (!CORBA::is_nil(myFace1) && !CORBA::is_nil(myFace2) && - !CORBA::is_nil(myFace3) && !CORBA::is_nil(myFace4) && - !CORBA::is_nil(myFace5) && !CORBA::is_nil(myFace6)) { - anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())-> - MakeHexa(myFace1, myFace2, myFace3, myFace4, myFace5, myFace6); - res = true; - } - break; + case 0: + if (!CORBA::is_nil(myFace1) && !CORBA::is_nil(myFace2)) { + anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())-> + MakeHexa2Faces(myFace1, myFace2); + res = true; + } + break; + case 1: + if (!CORBA::is_nil(myFace1) && !CORBA::is_nil(myFace2) && + !CORBA::is_nil(myFace3) && !CORBA::is_nil(myFace4) && + !CORBA::is_nil(myFace5) && !CORBA::is_nil(myFace6)) { + anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())-> + MakeHexa(myFace1, myFace2, myFace3, myFace4, myFace5, myFace6); + res = true; + } + break; } if (!anObj->_is_nil()) @@ -390,3 +501,28 @@ bool BlocksGUI_BlockDlg::execute (ObjectList& objects) return res; } + +//================================================================================= +// function : addSubshapesToStudy +// purpose : virtual method to add new SubObjects if local selection +//================================================================================= +void BlocksGUI_BlockDlg::addSubshapesToStudy() +{ + QMap objMap; + + switch (getConstructorId()) { + case 0: + objMap[Group2F->LineEdit1->text()] = myFace1; + objMap[Group2F->LineEdit2->text()] = myFace2; + break; + case 1: + objMap[Group6F->LineEdit1->text()] = myFace1; + objMap[Group6F->LineEdit2->text()] = myFace2; + objMap[Group6F->LineEdit3->text()] = myFace3; + objMap[Group6F->LineEdit4->text()] = myFace4; + objMap[Group6F->LineEdit5->text()] = myFace5; + objMap[Group6F->LineEdit6->text()] = myFace6; + break; + } + addSubshapesToFather(objMap); +} diff --git a/src/BlocksGUI/BlocksGUI_BlockDlg.h b/src/BlocksGUI/BlocksGUI_BlockDlg.h index 92801ac05..23e372ba6 100644 --- a/src/BlocksGUI/BlocksGUI_BlockDlg.h +++ b/src/BlocksGUI/BlocksGUI_BlockDlg.h @@ -1,6 +1,7 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 CEA +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -16,64 +17,63 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BlocksGUI_BlockDlg.h +// Author : Julia DOROVSKIKH, Open CASCADE S.A.S. (julia.dorovskikh@opencascade.com) // -// -// File : BlocksGUI_BlockDlg.h -// Author : Julia DOROVSKIKH -// Module : GEOM +#ifndef BLOCKSGUI_BLOCKDLG_H +#define BLOCKSGUI_BLOCKDLG_H -#ifndef DIALOGBOX_BLOCK_H -#define DIALOGBOX_BLOCK_H - -#include "GEOM_BlocksGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel_QTD.h" -#include "DlgRef_6Sel_QTD.h" +#include +class DlgRef_2Sel; +class DlgRef_6Sel; //================================================================================= // class : BlocksGUI_BlockDlg // purpose : //================================================================================= -class GEOM_BLOCKSGUI_EXPORT BlocksGUI_BlockDlg : public GEOMBase_Skeleton +class BlocksGUI_BlockDlg : public GEOMBase_Skeleton { Q_OBJECT public: - BlocksGUI_BlockDlg (GeometryGUI* theGeometryGUI, QWidget* parent, - bool modal = FALSE); + BlocksGUI_BlockDlg (GeometryGUI*, QWidget*); ~BlocksGUI_BlockDlg(); protected: // redefined from GEOMBase_Helper virtual GEOM::GEOM_IOperations_ptr createOperation(); virtual bool isValid (QString&); - virtual bool execute (ObjectList& objects); + virtual bool execute (ObjectList&); + virtual void addSubshapesToStudy(); private: - void Init(); - void enterEvent (QEvent* e); + void Init(); + void enterEvent (QEvent*); private: - int myConstructorId; + int myConstructorId; - GEOM::GEOM_Object_var myFace1, myFace2; - GEOM::GEOM_Object_var myFace3, myFace4, myFace5, myFace6; + GEOM::GEOM_Object_var myFace1, myFace2; + GEOM::GEOM_Object_var myFace3, myFace4, myFace5, myFace6; - DlgRef_2Sel_QTD* Group2F; - DlgRef_6Sel_QTD* Group6F; + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; + + DlgRef_2Sel* Group2F; + DlgRef_6Sel* Group6F; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void ConstructorsClicked (int constructorId); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void ConstructorsClicked (int); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); }; -#endif // DIALOGBOX_BLOCK_H +#endif // BLOCKSGUI_BLOCKDLG_H diff --git a/src/BlocksGUI/BlocksGUI_ExplodeDlg.cxx b/src/BlocksGUI/BlocksGUI_ExplodeDlg.cxx index 802980698..8dcbdbbeb 100644 --- a/src/BlocksGUI/BlocksGUI_ExplodeDlg.cxx +++ b/src/BlocksGUI/BlocksGUI_ExplodeDlg.cxx @@ -1,6 +1,7 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 CEA +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -16,98 +17,67 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BlocksGUI_ExplodeDlg.cxx +// Author : Julia DOROVSKIKH, Open CASCADE S.A.S. (julia.dorovskikh@opencascade.com) // -// -// File : BlocksGUI_ExplodeDlg.cxx -// Author : Julia DOROVSKIKH -// Module : GEOM -// $Header$ - #include "BlocksGUI_ExplodeDlg.h" -#include "DlgRef_SpinBox.h" +#include +#include +#include -#include "GEOM_Displayer.h" - -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "OCCViewer_ViewModel.h" -#include "SALOME_ListIteratorOfListIO.hxx" - -#include "utilities.h" - -#include - -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include //================================================================================= // class : BlocksGUI_ExplodeDlg() // purpose : Constructs a BlocksGUI_ExplodeDlg which is a child of 'parent'. //================================================================================= -BlocksGUI_ExplodeDlg::BlocksGUI_ExplodeDlg (GeometryGUI* theGeometryGUI, QWidget* parent, bool modal) - : GEOMBase_Skeleton(theGeometryGUI, parent, "ExplodeDlg", modal, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BlocksGUI_ExplodeDlg::BlocksGUI_ExplodeDlg( GeometryGUI* theGeometryGUI, QWidget* parent ) + : GEOMBase_Skeleton( theGeometryGUI, parent ) { - QPixmap image1 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_BLOCK_EXPLODE"))); - QPixmap imageS (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_BLOCK_EXPLODE" ) ) ); + QPixmap imageS( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_BLOCK_EXPLODE_TITLE")); + setWindowTitle( tr( "GEOM_BLOCK_EXPLODE_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_BLOCK_EXPLODE")); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_BLOCK_EXPLODE" ) ); - RadioButton1->setPixmap(image1); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->RadioButton1->setIcon( image1 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); // Create first group - myGrp1 = new QGroupBox(1, Qt::Horizontal, tr("GEOM_ARGUMENTS"), this); - - QGroupBox* aSelGrp = new QGroupBox(3, Qt::Horizontal, myGrp1); - aSelGrp->setFrameStyle(QFrame::NoFrame); - aSelGrp->setInsideMargin(0); - - new QLabel(tr("GEOM_MAIN_OBJECT"), aSelGrp); - mySelBtn = new QPushButton(aSelGrp); - mySelBtn->setPixmap(imageS); - mySelName = new QLineEdit(aSelGrp); - mySelName->setReadOnly(true); - - QGroupBox* aSpinGrp = new QGroupBox(2, Qt::Horizontal, myGrp1); - aSpinGrp->setFrameStyle(QFrame::NoFrame); - aSpinGrp->setInsideMargin(0); - - new QLabel(tr("NB_FACES_MIN"), aSpinGrp); - mySpinBoxMin = new DlgRef_SpinBox(aSpinGrp); - - new QLabel(tr("NB_FACES_MAX"), aSpinGrp); - mySpinBoxMax = new DlgRef_SpinBox(aSpinGrp); - - QGroupBox* anInfoGrp = new QGroupBox(2, Qt::Horizontal, myGrp1); - anInfoGrp->setFrameStyle(QFrame::NoFrame); - anInfoGrp->setInsideMargin(0); - - myBlocksNb = new QTextEdit(anInfoGrp); - myBlocksNb->setReadOnly(true); - - QGroupBox* aCheckGrp = new QGroupBox(3, Qt::Horizontal, myGrp1); - aCheckGrp->setFrameStyle(QFrame::NoFrame); - aCheckGrp->setInsideMargin(0); - - myCheckBtn = new QCheckBox(aCheckGrp, "CheckButton1"); - myCheckBtn->setText(tr("GEOM_SUBSHAPE_SELECT")); + myGrp1 = new DlgRef_1Sel2Spin1View1Check( centralWidget() ); + myGrp1->GroupBox1->setTitle( tr( "GEOM_ARGUMENTS" ) ); + myGrp1->TextLabel1->setText( tr( "GEOM_MAIN_OBJECT" ) ); + myGrp1->PushButton1->setIcon( imageS ); + myGrp1->LineEdit1->setReadOnly( true ); + myGrp1->TextLabel2->setText( tr( "NB_FACES_MIN" ) ); + myGrp1->TextLabel3->setText( tr( "NB_FACES_MAX" ) ); + myGrp1->CheckBox1->setText( tr( "GEOM_SUBSHAPE_SELECT" ) ); // Add groups to layout - Layout1->addWidget(myGrp1, 1, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( myGrp1 ); /***************************************************************/ - setHelpFileName("explode_on_blocks_operation_page.html"); + setHelpFileName( "explode_on_blocks_operation_page.html" ); Init(); } @@ -128,57 +98,59 @@ BlocksGUI_ExplodeDlg::~BlocksGUI_ExplodeDlg() //================================================================================= void BlocksGUI_ExplodeDlg::Init() { - // Set range of spinboxes - double SpecificStep = 1.0; - mySpinBoxMin->RangeStepAndValidator(0.0, 999.0, SpecificStep, 3); - mySpinBoxMax->RangeStepAndValidator(0.0, 999.0, SpecificStep, 3); + mainFrame()->GroupBoxName->hide(); - if (SUIT_Session::session()->activeApplication()->desktop()->activeWindow()->getViewManager()->getType() - != OCCViewer_Viewer::Type()) - myCheckBtn->setEnabled(false); + // Set range of spinboxes + int SpecificStep = 1; + initSpinBox( myGrp1->SpinBox1, 0, 999, SpecificStep ); + initSpinBox( myGrp1->SpinBox2, 0, 999, SpecificStep ); + + if ( SUIT_Session::session()->activeApplication()->desktop()->activeWindow()->getViewManager()->getType() + != OCCViewer_Viewer::Type() ) + myGrp1->CheckBox1->setEnabled( false ); // signals and slots connections - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(mySelBtn, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect( myGrp1->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect(mySpinBoxMin, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(mySpinBoxMax, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); + connect( myGrp1->SpinBox1, SIGNAL( valueChanged( int ) ), this, SLOT( ValueChangedInSpinBox( int ) ) ); + connect( myGrp1->SpinBox2, SIGNAL( valueChanged( int ) ), this, SLOT( ValueChangedInSpinBox( int ) ) ); - connect(myCheckBtn, SIGNAL(stateChanged(int)), this, SLOT(SubShapeToggled())); + connect( myGrp1->CheckBox1, SIGNAL( stateChanged( int ) ), this, SLOT( SubShapeToggled() ) ); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); myConstructorId = -1; - ConstructorsClicked(0); + ConstructorsClicked( 0 ); } //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void BlocksGUI_ExplodeDlg::ConstructorsClicked (int constructorId) +void BlocksGUI_ExplodeDlg::ConstructorsClicked( int constructorId ) { - if (myConstructorId == constructorId) + if ( myConstructorId == constructorId ) return; myConstructorId = constructorId; - switch (constructorId) { + switch ( constructorId ) { case 0: myGrp1->show(); - mySpinBoxMin->SetValue(6.0); - mySpinBoxMax->SetValue(6.0); - myCheckBtn->setChecked(FALSE); + myGrp1->SpinBox1->setValue( 6 ); + myGrp1->SpinBox2->setValue( 6 ); + myGrp1->CheckBox1->setChecked( false ); break; default: break; } // init fields - myEditCurrentArgument = mySelName; + myEditCurrentArgument = myGrp1->LineEdit1; myObject = GEOM::GEOM_Object::_nil(); activateSelection(); @@ -190,7 +162,7 @@ void BlocksGUI_ExplodeDlg::ConstructorsClicked (int constructorId) //================================================================================= void BlocksGUI_ExplodeDlg::ClickOnOk() { - if (ClickOnApply()) + if ( ClickOnApply() ) ClickOnCancel(); } @@ -200,23 +172,22 @@ void BlocksGUI_ExplodeDlg::ClickOnOk() //================================================================================= bool BlocksGUI_ExplodeDlg::ClickOnApply() { - SUIT_Session::session()->activeApplication()->putInfo(tr("")); + SUIT_Session::session()->activeApplication()->putInfo( tr( "" ) ); // Explode all sub shapes - if (isAllSubShapes()) { + if ( isAllSubShapes() ) { // More than 30 subshapes : ask confirmation - if (myNbBlocks > 30) { - const QString caption = tr("GEOM_CONFIRM"); - const QString text = tr("GEOM_CONFIRM_INFO").arg(myNbBlocks); - const QString button0 = tr("GEOM_BUT_EXPLODE"); - const QString button1 = tr("GEOM_BUT_CANCEL"); - - if (QMessageBox::warning(this, caption, text, button0, button1) != 0) + if ( myNbBlocks > 30 ) { + if ( SUIT_MessageBox::warning( this, + tr( "GEOM_CONFIRM" ), + tr( "GEOM_CONFIRM_INFO" ).arg( myNbBlocks ), + tr( "GEOM_BUT_EXPLODE" ), + tr( "GEOM_BUT_CANCEL" ) ) != 0 ) return false; /* aborted */ } } - if (!onAccept()) + if ( !onAccept() ) return false; activateSelection(); @@ -234,16 +205,19 @@ void BlocksGUI_ExplodeDlg::SelectionIntoArgument() return; myObject = GEOM::GEOM_Object::_nil(); - mySelName->setText(""); + myGrp1->LineEdit1->setText(""); - if (IObjectCount() == 1) { + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() == 1) { Standard_Boolean aResult = Standard_False; - GEOM::GEOM_Object_var anObj = - GEOMBase::ConvertIOinGEOMObject(firstIObject(), aResult); + GEOM::GEOM_Object_var anObj = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aResult); - if ( aResult && !anObj->_is_nil() && GEOMBase::IsShape( anObj ) ) { + if (aResult && !anObj->_is_nil() && GEOMBase::IsShape(anObj)) { myObject = anObj; - mySelName->setText(GEOMBase::GetName(anObj)); + myGrp1->LineEdit1->setText(GEOMBase::GetName(anObj)); } } @@ -258,10 +232,10 @@ void BlocksGUI_ExplodeDlg::SetEditCurrentArgument() { QPushButton* aSender = (QPushButton*)sender(); - if (mySelBtn == aSender) { - mySelName->setFocus(); - myEditCurrentArgument = mySelName; - myCheckBtn->setChecked(FALSE); + if ( myGrp1->PushButton1 == aSender ) { + myGrp1->LineEdit1->setFocus(); + myEditCurrentArgument = myGrp1->LineEdit1; + myGrp1->CheckBox1->setChecked( false ); } activateSelection(); @@ -274,8 +248,8 @@ void BlocksGUI_ExplodeDlg::SetEditCurrentArgument() void BlocksGUI_ExplodeDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); activateSelection(); } @@ -284,9 +258,9 @@ void BlocksGUI_ExplodeDlg::ActivateThisDialog() // function : enterEvent() // purpose : //================================================================================= -void BlocksGUI_ExplodeDlg::enterEvent (QEvent* e) +void BlocksGUI_ExplodeDlg::enterEvent( QEvent* ) { - if (!GroupConstructors->isEnabled()) + if ( !mainFrame()->GroupConstructors->isEnabled() ) this->ActivateThisDialog(); } @@ -294,9 +268,9 @@ void BlocksGUI_ExplodeDlg::enterEvent (QEvent* e) // function : ValueChangedInSpinBox() // purpose : //================================================================================= -void BlocksGUI_ExplodeDlg::ValueChangedInSpinBox (double newValue) +void BlocksGUI_ExplodeDlg::ValueChangedInSpinBox() { - if (!isAllSubShapes()) + if ( !isAllSubShapes() ) activateSelection(); else updateButtonState(); @@ -305,7 +279,7 @@ void BlocksGUI_ExplodeDlg::ValueChangedInSpinBox (double newValue) //================================================================================= // function : SubShapeToggled() // purpose : Allow user selection of all or only selected sub shapes -// : Called when 'myCheckBtn' state change +// : Called when 'myGrp1->CheckBox1' state change //================================================================================= void BlocksGUI_ExplodeDlg::SubShapeToggled() { @@ -319,20 +293,21 @@ void BlocksGUI_ExplodeDlg::SubShapeToggled() void BlocksGUI_ExplodeDlg::activateSelection() { clearTemporary(); - erasePreview(true); + erasePreview( true ); - if (isAllSubShapes()) { // Sub-shapes selection disabled - disconnect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + if ( isAllSubShapes() ) { // Sub-shapes selection disabled + disconnect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); globalSelection( GEOM_ALLSHAPES ); - if (myObject->_is_nil()) { + if ( myObject->_is_nil() ) { SelectionIntoArgument(); } - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; - } else { - displayPreview(true, true, false); - globalSelection(GEOM_PREVIEW); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); + } + else { + displayPreview( true, true, false ); + globalSelection( GEOM_PREVIEW ); } } @@ -342,28 +317,30 @@ void BlocksGUI_ExplodeDlg::activateSelection() //================================================================================= void BlocksGUI_ExplodeDlg::updateButtonState() { - if (SUIT_Session::session()->activeApplication()->desktop()->activeWindow()->getViewManager()->getType() - != OCCViewer_Viewer::Type() || myObject->_is_nil()) { - myCheckBtn->setChecked(FALSE); - myCheckBtn->setEnabled(FALSE); - } else { - myCheckBtn->setEnabled(TRUE); + if ( SUIT_Session::session()->activeApplication()->desktop()->activeWindow()->getViewManager()->getType() + != OCCViewer_Viewer::Type() || myObject->_is_nil() ) { + myGrp1->CheckBox1->setChecked( false ); + myGrp1->CheckBox1->setEnabled( false ); + } + else { + myGrp1->CheckBox1->setEnabled( true ); } myNbBlocks = 0; - if (myObject->_is_nil()) { - myBlocksNb->setText(""); - } else { + if ( myObject->_is_nil() ) { + myGrp1->TextBrowser1->setText( "" ); + } + else { bool isOnlyBlocks = GEOM::GEOM_IBlocksOperations::_narrow - (getOperation())->IsCompoundOfBlocks(myObject, - (int)mySpinBoxMin->GetValue(), - (int)mySpinBoxMax->GetValue(), - myNbBlocks); - if (isOnlyBlocks) - myBlocksNb->setText(tr("GEOM_NB_BLOCKS_NO_OTHERS").arg(myNbBlocks)); + ( getOperation() )->IsCompoundOfBlocks( myObject, + myGrp1->SpinBox1->value(), + myGrp1->SpinBox2->value(), + myNbBlocks ); + if ( isOnlyBlocks ) + myGrp1->TextBrowser1->setText( tr( "GEOM_NB_BLOCKS_NO_OTHERS" ).arg( myNbBlocks ) ); else - myBlocksNb->setText(tr("GEOM_NB_BLOCKS_SOME_OTHERS").arg(myNbBlocks)); + myGrp1->TextBrowser1->setText( tr( "GEOM_NB_BLOCKS_SOME_OTHERS" ).arg( myNbBlocks ) ); } } @@ -373,7 +350,7 @@ void BlocksGUI_ExplodeDlg::updateButtonState() //================================================================================= bool BlocksGUI_ExplodeDlg::isAllSubShapes() const { - return !myCheckBtn->isChecked() || !myCheckBtn->isEnabled(); + return !myGrp1->CheckBox1->isChecked() || !myGrp1->CheckBox1->isEnabled(); } //================================================================================= @@ -382,93 +359,122 @@ bool BlocksGUI_ExplodeDlg::isAllSubShapes() const //================================================================================= GEOM::GEOM_IOperations_ptr BlocksGUI_ExplodeDlg::createOperation() { - return getGeomEngine()->GetIBlocksOperations(getStudyId()); + return getGeomEngine()->GetIBlocksOperations( getStudyId() ); } //================================================================================= // function : isValid() // purpose : Verify validity of input data //================================================================================= -bool BlocksGUI_ExplodeDlg::isValid (QString&) +bool BlocksGUI_ExplodeDlg::isValid (QString& msg) { - switch (getConstructorId()) { + bool okSP = true; + okSP = myGrp1->SpinBox1->isValid( msg, !IsPreview() ) && okSP; + okSP = myGrp1->SpinBox2->isValid( msg, !IsPreview() ) && okSP; + + bool ok = false; + switch ( getConstructorId() ) { case 0: - if (IsPreview()) - return !myObject->_is_nil(); - else - return !myObject->_is_nil() && (isAllSubShapes() || IObjectCount()); + if ( IsPreview() ) { + ok = !myObject->_is_nil(); + } + else { + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + ok = !myObject->_is_nil() && (isAllSubShapes() || aSelList.Extent()); + } + break; default: - return false; + break; } - return false; + return ok && okSP; } //================================================================================= // function : execute // purpose : //================================================================================= -bool BlocksGUI_ExplodeDlg::execute (ObjectList& objects) +bool BlocksGUI_ExplodeDlg::execute( ObjectList& objects ) { GEOM::ListOfGO_var aList; - switch (getConstructorId()) { - case 0: - aList = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())->ExplodeCompoundOfBlocks - (myObject, - (int)mySpinBoxMin->GetValue(), - (int)mySpinBoxMax->GetValue()); - break; + switch ( getConstructorId() ) { + case 0: + aList = GEOM::GEOM_IBlocksOperations::_narrow( getOperation() )->ExplodeCompoundOfBlocks + ( myObject, + myGrp1->SpinBox1->value(), + myGrp1->SpinBox2->value() ); + break; } - - if (!aList->length()) + + if ( !aList->length() ) return false; - if (IsPreview()) { + if ( IsPreview() ) { clearTemporary(); - + // Store objects. They will be put in study when "Apply" is pressed - for (int i = 0, n = aList->length(); i < n; i++) { - objects.push_back(GEOM::GEOM_Object::_duplicate(aList[i])); - myTmpObjs.push_back(GEOM::GEOM_Object::_duplicate(aList[i])); + for ( int i = 0, n = aList->length(); i < n; i++ ) { + objects.push_back( GEOM::GEOM_Object::_duplicate( aList[i] ) ); + myTmpObjs.push_back( GEOM::GEOM_Object::_duplicate( aList[i] ) ); } - return objects.size() ? true : false; + return objects.size() > 0; } + QStringList aParameters; + aParameters << myGrp1->SpinBox1->text(); + aParameters << myGrp1->SpinBox2->text(); + // Throw away sub-shapes not selected by user if not in preview mode // and manual selection is active - if (!isAllSubShapes()) - { + if ( !isAllSubShapes() ) { QMap selected; + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + // Get names of selected objects - SALOME_ListIteratorOfListIO it (selectedIO()); - for (; it.More(); it.Next()) { - selected.insert(it.Value()->getName(), 0); + SALOME_ListIteratorOfListIO it (aSelList); + for ( ; it.More(); it.Next() ) { + selected.insert( it.Value()->getName(), 0 ); } // Iterate through result and select objects with names from selection - ObjectList toRemoveFromEnggine; + ObjectList toRemoveFromEngine; ObjectList::iterator anIter; - for (anIter = myTmpObjs.begin(); anIter != myTmpObjs.end(); ++anIter) { - CORBA::String_var objStr = myGeomGUI->getApp()->orb()->object_to_string(*anIter); - if (selected.contains(QString(objStr.in()))) - objects.push_back(*anIter); + for ( anIter = myTmpObjs.begin(); anIter != myTmpObjs.end(); ++anIter ) { + CORBA::String_var objStr = myGeomGUI->getApp()->orb()->object_to_string( *anIter ); + if ( selected.contains( QString( objStr.in() ) ) ) + { + if ( !IsPreview() ) + (*anIter)->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + objects.push_back( *anIter ); + } else - toRemoveFromEnggine.push_back(*anIter); + toRemoveFromEngine.push_back( *anIter ); } // Remove from engine useless objects - ObjectList::iterator anIter2 = toRemoveFromEnggine.begin(); - for (; anIter2 != toRemoveFromEnggine.end(); ++anIter2) - getGeomEngine()->RemoveObject(*anIter2); + ObjectList::iterator anIter2 = toRemoveFromEngine.begin(); + for ( ; anIter2 != toRemoveFromEngine.end(); ++anIter2 ) + getGeomEngine()->RemoveObject( *anIter2 ); myTmpObjs.clear(); - } else { - for (int i = 0, n = aList->length(); i < n; i++) - objects.push_back(GEOM::GEOM_Object::_duplicate(aList[i])); + } + else { + for ( int i = 0, n = aList->length(); i < n; i++ ) + { + GEOM::GEOM_Object_var anObj = GEOM::GEOM_Object::_duplicate( aList[i] ); + if ( !IsPreview() ) + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + objects.push_back( anObj._retn() ); + } } return objects.size(); @@ -481,8 +487,8 @@ bool BlocksGUI_ExplodeDlg::execute (ObjectList& objects) void BlocksGUI_ExplodeDlg::clearTemporary() { ObjectList::iterator anIter; - for (anIter = myTmpObjs.begin(); anIter != myTmpObjs.end(); ++anIter) - getGeomEngine()->RemoveObject(*anIter); + for ( anIter = myTmpObjs.begin(); anIter != myTmpObjs.end(); ++anIter ) + getGeomEngine()->RemoveObject( *anIter ); myTmpObjs.clear(); } @@ -492,7 +498,7 @@ void BlocksGUI_ExplodeDlg::clearTemporary() // Purpose : Get father object for object to be added in study // ( called with addInStudy method ) //================================================================ -GEOM::GEOM_Object_ptr BlocksGUI_ExplodeDlg::getFather (GEOM::GEOM_Object_ptr) +GEOM::GEOM_Object_ptr BlocksGUI_ExplodeDlg::getFather( GEOM::GEOM_Object_ptr ) { return myObject; } @@ -501,7 +507,7 @@ GEOM::GEOM_Object_ptr BlocksGUI_ExplodeDlg::getFather (GEOM::GEOM_Object_ptr) // Function : getNewObjectName // Purpose : Redefine this method to return proper name for a new object //================================================================ -const char* BlocksGUI_ExplodeDlg::getNewObjectName() const +QString BlocksGUI_ExplodeDlg::getNewObjectName() const { - return ""; + return QString::null; } diff --git a/src/BlocksGUI/BlocksGUI_ExplodeDlg.h b/src/BlocksGUI/BlocksGUI_ExplodeDlg.h index 8e309ecfd..63b616a4d 100644 --- a/src/BlocksGUI/BlocksGUI_ExplodeDlg.h +++ b/src/BlocksGUI/BlocksGUI_ExplodeDlg.h @@ -1,6 +1,7 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 CEA +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -16,90 +17,74 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BlocksGUI_ExplodeDlg.h +// Author : Julia DOROVSKIKH, Open CASCADE S.A.S. (julia.dorovskikh@opencascade.com) // -// -// File : BlocksGUI_ExplodeDlg.h -// Author : Julia DOROVSKIKH -// Module : GEOM +#ifndef BLOCKSGUI_EXPLODEDLG_H +#define BLOCKSGUI_EXPLODEDLG_H -#ifndef DIALOGBOX_BLOCK_EXPLODE_H -#define DIALOGBOX_BLOCK_EXPLODE_H +#include -#include "GEOM_BlocksGUI.hxx" - -#include "GEOMBase_Skeleton.h" - -class DlgRef_SpinBox; -class QTextEdit; -class QCheckBox; +class DlgRef_1Sel2Spin1View1Check; //================================================================================= // class : BlocksGUI_ExplodeDlg // purpose : //================================================================================= -class GEOM_BLOCKSGUI_EXPORT BlocksGUI_ExplodeDlg : public GEOMBase_Skeleton +class BlocksGUI_ExplodeDlg : public GEOMBase_Skeleton { Q_OBJECT public: - BlocksGUI_ExplodeDlg (GeometryGUI*, QWidget* parent, bool modal = FALSE); + BlocksGUI_ExplodeDlg( GeometryGUI*, QWidget* ); ~BlocksGUI_ExplodeDlg(); protected: // redefined from GEOMBase_Helper virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid (QString& msg); - virtual bool execute (ObjectList& objects); - virtual GEOM::GEOM_Object_ptr getFather(GEOM::GEOM_Object_ptr theObj); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual GEOM::GEOM_Object_ptr getFather( GEOM::GEOM_Object_ptr ); - virtual const char* getNewObjectName() const; + virtual QString getNewObjectName() const; private: - void Init(); - void enterEvent (QEvent* e); + void Init(); + void enterEvent( QEvent* ); - void activateSelection(); + void activateSelection(); - void updateButtonState(); - bool isAllSubShapes() const; - int shapeType() const; + void updateButtonState(); + bool isAllSubShapes() const; + int shapeType() const; - void clearTemporary(); + void clearTemporary(); private: - int myConstructorId; + int myConstructorId; - CORBA::Long myNbBlocks; - GEOM::GEOM_Object_var myObject; + CORBA::Long myNbBlocks; + GEOM::GEOM_Object_var myObject; - ObjectList myTmpObjs; + ObjectList myTmpObjs; - QFrame* myGrp1; - - QPushButton* mySelBtn; - QLineEdit* mySelName; - - DlgRef_SpinBox* mySpinBoxMin; - DlgRef_SpinBox* mySpinBoxMax; - - QTextEdit* myBlocksNb; - - QCheckBox* myCheckBtn; + DlgRef_1Sel2Spin1View1Check* myGrp1; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void ConstructorsClicked (int constructorId); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void ConstructorsClicked( int ); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); - void SubShapeToggled(); + void SubShapeToggled(); - void ValueChangedInSpinBox (double newValue); + void ValueChangedInSpinBox(); }; -#endif // DIALOGBOX_BLOCK_EXPLODE_H +#endif // BLOCKSGUI_EXPLODEDLG_H diff --git a/src/BlocksGUI/BlocksGUI_PropagateDlg.cxx b/src/BlocksGUI/BlocksGUI_PropagateDlg.cxx index 8cd43fedc..07801d8a1 100644 --- a/src/BlocksGUI/BlocksGUI_PropagateDlg.cxx +++ b/src/BlocksGUI/BlocksGUI_PropagateDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,28 +17,26 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BlocksGUI_PropagateDlg.cxx +// Author : Vladimir KLYACHIN, Open CASCADE S.A.S. (vladimir.klyachin@opencascade.com) // -// -// File : BlocksGUI_PropagateDlg.cxx -// Author : VKN -// Module : GEOM -// $Header$ - #include "BlocksGUI_PropagateDlg.h" -#include "GEOMImpl_Types.hxx" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include + +#include +#include +#include +#include #include -#include - -using namespace std; - //================================================================================= // class : BlocksGUI_PropagateDlg() // purpose : Constructs a BlocksGUI_PropagateDlg which is a child of 'parent', with the @@ -46,38 +44,35 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BlocksGUI_PropagateDlg::BlocksGUI_PropagateDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BlocksGUI_PropagateDlg::BlocksGUI_PropagateDlg( GeometryGUI* theGeometryGUI, QWidget* parent ) + : GEOMBase_Skeleton( theGeometryGUI, parent ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_PROPAGATE"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_PROPAGATE" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_PROPAGATE_TITLE")); + setWindowTitle( tr( "GEOM_PROPAGATE_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_PROPAGATE_TITLE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_PROPAGATE_TITLE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - QGroupBox* aMainGrp = new QGroupBox( 1, Qt::Horizontal, tr( "GEOM_SELECTED_SHAPE" ), this ); - QGroupBox* aSelGrp = new QGroupBox(3, Qt::Horizontal, aMainGrp); - aSelGrp->setFrameStyle(QFrame::NoFrame); - aSelGrp->setInsideMargin(0); + myGrp = new DlgRef_1Sel( centralWidget() ); + myGrp->GroupBox1->setTitle( tr( "GEOM_SELECTED_SHAPE" ) ); + myGrp->TextLabel1->setText( tr( "GEOM_OBJECT" ) ); + myGrp->PushButton1->setIcon( image1 ); + myGrp->LineEdit1->setReadOnly( true ); - new QLabel(tr("GEOM_OBJECT"), aSelGrp); - mySelBtn = new QPushButton(aSelGrp); - mySelBtn->setPixmap(image1); - mySelName = new QLineEdit(aSelGrp); - mySelName->setReadOnly(true); - - Layout1->addWidget(aMainGrp, 1, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( myGrp ); /***************************************************************/ - setHelpFileName("propagate_operation_page.html"); + setHelpFileName( "propagate_operation_page.html" ); Init(); } @@ -99,16 +94,17 @@ void BlocksGUI_PropagateDlg::Init() /* init variables */ myObject = GEOM::GEOM_Object::_nil(); - ResultName->setText( "" ); + mainFrame()->ResultName->setText( "" ); + mainFrame()->GroupBoxName->hide(); //myGeomGUI->SetState( 0 ); /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(mySelBtn, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(mySelName, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( myGrp->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( myGrp->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); activateSelection(); } @@ -135,7 +131,7 @@ bool BlocksGUI_PropagateDlg::ClickOnApply() initName(); - mySelName->setText(""); + myGrp->LineEdit1->setText( "" ); myObject = GEOM::GEOM_Object::_nil(); activateSelection(); @@ -150,15 +146,19 @@ bool BlocksGUI_PropagateDlg::ClickOnApply() //================================================================================= void BlocksGUI_PropagateDlg::SelectionIntoArgument() { - mySelName->setText(""); + myGrp->LineEdit1->setText( "" ); myObject = GEOM::GEOM_Object::_nil(); - if ( IObjectCount() == 1 ) { - Handle(SALOME_InteractiveObject) anIO = firstIObject(); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() == 1) { + Handle(SALOME_InteractiveObject) anIO = aSelList.First(); Standard_Boolean aRes; myObject = GEOMBase::ConvertIOinGEOMObject( anIO, aRes ); if ( aRes ) - mySelName->setText( GEOMBase::GetName( myObject ) ); + myGrp->LineEdit1->setText( GEOMBase::GetName( myObject ) ); } } @@ -169,8 +169,8 @@ void BlocksGUI_PropagateDlg::SelectionIntoArgument() void BlocksGUI_PropagateDlg::SetEditCurrentArgument() { const QObject* send = sender(); - if ( send == mySelBtn ) { - mySelName->setFocus(); + if ( send == myGrp->PushButton1 ) { + myGrp->LineEdit1->setFocus(); } activateSelection(); } @@ -183,7 +183,7 @@ void BlocksGUI_PropagateDlg::SetEditCurrentArgument() void BlocksGUI_PropagateDlg::LineEditReturnPressed() { const QObject* send = sender(); - if( send == mySelName ) { + if ( send == myGrp->LineEdit1 ) { GEOMBase_Skeleton::LineEditReturnPressed(); } } @@ -197,7 +197,7 @@ void BlocksGUI_PropagateDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - mySelName->setText(""); + myGrp->LineEdit1->setText( "" ); myObject = GEOM::GEOM_Object::_nil(); //myGeomGUI->SetState( 0 ); @@ -209,23 +209,12 @@ void BlocksGUI_PropagateDlg::ActivateThisDialog() // function : enterEvent() // purpose : Mouse enter onto the dialog to activate it //================================================================================= -void BlocksGUI_PropagateDlg::enterEvent(QEvent* e) +void BlocksGUI_PropagateDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } - -//================================================================================= -// function : closeEvent() -// purpose : -//================================================================================= -void BlocksGUI_PropagateDlg::closeEvent(QCloseEvent* e) -{ - //myGeomGUI->SetState( -1 ); - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : createOperation // purpose : @@ -239,7 +228,7 @@ GEOM::GEOM_IOperations_ptr BlocksGUI_PropagateDlg::createOperation() // function : isValid // purpose : //================================================================================= -bool BlocksGUI_PropagateDlg::isValid( QString& msg ) +bool BlocksGUI_PropagateDlg::isValid( QString& ) { return !myObject->_is_nil() ; } @@ -250,19 +239,17 @@ bool BlocksGUI_PropagateDlg::isValid( QString& msg ) //================================================================================= bool BlocksGUI_PropagateDlg::execute( ObjectList& objects ) { - GEOM::ListOfGO_var aList = GEOM::GEOM_IBlocksOperations::_narrow( getOperation() )->Propagate( myObject ); - ResultName->setText( "" ); + mainFrame()->ResultName->setText( "" ); if ( !aList->length() ) return false; - for ( int i = 0, n = aList->length(); i < n; i++ ) - { - objects.push_back(aList[i]._retn()); + for ( int i = 0, n = aList->length(); i < n; i++ ) { + objects.push_back( aList[i]._retn() ); } - return objects.size() ? true : false; + return objects.size() > 0; } //================================================================================= @@ -275,11 +262,11 @@ void BlocksGUI_PropagateDlg::activateSelection() aMap.Add( GEOM_SOLID ); aMap.Add( GEOM_COMPOUND ); globalSelection( aMap ); - if (myObject->_is_nil()) { + if ( myObject->_is_nil() ) { SelectionIntoArgument(); } - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); } //================================================================ @@ -287,7 +274,7 @@ void BlocksGUI_PropagateDlg::activateSelection() // Purpose : Get father object for object to be added in study // ( called with addInStudy method ) //================================================================ -GEOM::GEOM_Object_ptr BlocksGUI_PropagateDlg::getFather (GEOM::GEOM_Object_ptr) +GEOM::GEOM_Object_ptr BlocksGUI_PropagateDlg::getFather( GEOM::GEOM_Object_ptr ) { return myObject; } diff --git a/src/BlocksGUI/BlocksGUI_PropagateDlg.h b/src/BlocksGUI/BlocksGUI_PropagateDlg.h index e6236d632..a4eaf5a83 100644 --- a/src/BlocksGUI/BlocksGUI_PropagateDlg.h +++ b/src/BlocksGUI/BlocksGUI_PropagateDlg.h @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,62 +17,56 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BlocksGUI_PropagateDlg.h +// Author : Vladimir KLYACHIN, Open CASCADE S.A.S. (vladimir.klyachin@opencascade.com) // -// -// File : BlocksGUI_PropagateDlg.h -// Author : VKN -// Module : GEOM +#ifndef BLOCKSGUI_PROPAGATEDLG_H +#define BLOCKSGUI_PROPAGATEDLG_H -#ifndef DIALOGBOX_BlocksGUI_PropagateDlg_H -#define DIALOGBOX_BlocksGUI_PropagateDlg_H - -#include "GEOM_BlocksGUI.hxx" - -#include "GEOMBase_Skeleton.h" +#include +class DlgRef_1Sel; //================================================================================= // class : BlocksGUI_PropagateDlg // purpose : //================================================================================= -class GEOM_BLOCKSGUI_EXPORT BlocksGUI_PropagateDlg : public GEOMBase_Skeleton +class BlocksGUI_PropagateDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BlocksGUI_PropagateDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = "", bool modal = FALSE, WFlags fl = 0); - ~BlocksGUI_PropagateDlg(); + BlocksGUI_PropagateDlg( GeometryGUI*, QWidget* = 0 ); + ~BlocksGUI_PropagateDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual GEOM::GEOM_Object_ptr getFather(GEOM::GEOM_Object_ptr theObj); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual GEOM::GEOM_Object_ptr getFather( GEOM::GEOM_Object_ptr ); private slots: - void ClickOnOk(); - bool ClickOnApply(); + void ClickOnOk(); + bool ClickOnApply(); - void ActivateThisDialog(); + void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); private: - void Init(); - void enterEvent(QEvent* e); - void closeEvent(QCloseEvent* e); - void activateSelection(); + void Init(); + void enterEvent( QEvent* ); + void activateSelection(); private: - GEOM::GEOM_Object_var myObject; - QPushButton* mySelBtn; - QLineEdit* mySelName; + GEOM::GEOM_Object_var myObject; + DlgRef_1Sel* myGrp; }; -#endif // DIALOGBOX_BlocksGUI_PropagateDlg_H +#endif // BLOCKSGUI_PROPAGATEDLG_H diff --git a/src/BlocksGUI/BlocksGUI_QuadFaceDlg.cxx b/src/BlocksGUI/BlocksGUI_QuadFaceDlg.cxx index 06c2136d7..930af1c45 100644 --- a/src/BlocksGUI/BlocksGUI_QuadFaceDlg.cxx +++ b/src/BlocksGUI/BlocksGUI_QuadFaceDlg.cxx @@ -1,6 +1,7 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 CEA +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -16,88 +17,83 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BlocksGUI_QuadFaceDlg.cxx +// Author : Julia DOROVSKIKH, Open CASCADE S.A.S. (julia.dorovskikh@opencascade.com) // -// -// File : BlocksGUI_QuadFaceDlg.cxx -// Author : Julia DOROVSKIKH -// Module : GEOM -// $Header$ - #include "BlocksGUI_QuadFaceDlg.h" -#include "GEOMImpl_Types.hxx" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include +#include +#include +#include + +// QT Includes #include +// OCCT Includes +#include +#include + +#include + //================================================================================= // class : BlocksGUI_QuadFaceDlg() // purpose : Constructs a BlocksGUI_QuadFaceDlg which is a child of 'parent'. //================================================================================= -BlocksGUI_QuadFaceDlg::BlocksGUI_QuadFaceDlg (GeometryGUI* theGeometryGUI, QWidget* parent, bool modal) - : GEOMBase_Skeleton(theGeometryGUI, parent, "QuadFaceDlg", modal, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BlocksGUI_QuadFaceDlg::BlocksGUI_QuadFaceDlg (GeometryGUI* theGeometryGUI, QWidget* parent) + : GEOMBase_Skeleton(theGeometryGUI, parent), + myInitial(true) { SUIT_ResourceMgr* aResMgr = myGeomGUI->getApp()->resourceMgr(); - QPixmap image1 (aResMgr->loadPixmap("GEOM",tr("ICON_DLG_QUAD_FACE_4_VERT"))); - QPixmap image2 (aResMgr->loadPixmap("GEOM",tr("ICON_DLG_QUAD_FACE_2_EDGE"))); - QPixmap image3 (aResMgr->loadPixmap("GEOM",tr("ICON_DLG_QUAD_FACE_4_EDGE"))); - QPixmap imageS (aResMgr->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_QUAD_FACE_4_VERT"))); + QPixmap image2 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_QUAD_FACE_2_EDGE"))); + QPixmap image3 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_QUAD_FACE_4_EDGE"))); + QPixmap imageS (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_QUAD_FACE_TITLE")); + setWindowTitle(tr("GEOM_QUAD_FACE_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_QUAD_FACE")); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_QUAD_FACE")); - RadioButton1->setPixmap(image1); - RadioButton2->setPixmap(image2); - RadioButton3->setPixmap(image3); + mainFrame()->RadioButton1->setIcon(image1); + mainFrame()->RadioButton2->setIcon(image2); + mainFrame()->RadioButton3->setIcon(image3); // Create first group - myGrp1 = new QGroupBox(1, Qt::Horizontal, tr("GEOM_ARGUMENTS"), this); + myGrp1 = new QGroupBox(tr("GEOM_ARGUMENTS"), centralWidget()); - QGroupBox* aSelGrp1 = new QGroupBox(3, Qt::Horizontal, myGrp1); - aSelGrp1->setFrameStyle(QFrame::NoFrame); - aSelGrp1->setInsideMargin(0); - - createSelWg(tr("VERTEX_1"), imageS, aSelGrp1, Vertex1); - createSelWg(tr("VERTEX_2"), imageS, aSelGrp1, Vertex2); - createSelWg(tr("VERTEX_3"), imageS, aSelGrp1, Vertex3); - createSelWg(tr("VERTEX_4"), imageS, aSelGrp1, Vertex4); + createSelWg(tr("VERTEX_1"), imageS, myGrp1, Vertex1); + createSelWg(tr("VERTEX_2"), imageS, myGrp1, Vertex2); + createSelWg(tr("VERTEX_3"), imageS, myGrp1, Vertex3); + createSelWg(tr("VERTEX_4"), imageS, myGrp1, Vertex4); // Create second group - myGrp2 = new QGroupBox(1, Qt::Horizontal, tr("GEOM_ARGUMENTS"), this); + myGrp2 = new QGroupBox(tr("GEOM_ARGUMENTS"), centralWidget()); - QGroupBox* aSelGrp2 = new QGroupBox(3, Qt::Horizontal, myGrp2); - aSelGrp2->setFrameStyle(QFrame::NoFrame); - aSelGrp2->setInsideMargin(0); - - createSelWg(tr("EDGE_1"), imageS, aSelGrp2, Edge12); - createSelWg(tr("EDGE_2"), imageS, aSelGrp2, Edge22); + createSelWg(tr("EDGE_1"), imageS, myGrp2, Edge12); + createSelWg(tr("EDGE_2"), imageS, myGrp2, Edge22); // Create fird group - myGrp3 = new QGroupBox(1, Qt::Horizontal, tr("GEOM_ARGUMENTS"), this); + myGrp3 = new QGroupBox(tr("GEOM_ARGUMENTS"), centralWidget()); - QGroupBox* aSelGrp3 = new QGroupBox(3, Qt::Horizontal, myGrp3); - aSelGrp3->setFrameStyle(QFrame::NoFrame); - aSelGrp3->setInsideMargin(0); - - createSelWg(tr("EDGE_1"), imageS, aSelGrp3, Edge14); - createSelWg(tr("EDGE_2"), imageS, aSelGrp3, Edge24); - createSelWg(tr("EDGE_3"), imageS, aSelGrp3, Edge34); - createSelWg(tr("EDGE_4"), imageS, aSelGrp3, Edge44); - - (new QLabel(myGrp3))->setSizePolicy( - QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding)); + createSelWg(tr("EDGE_1"), imageS, myGrp3, Edge14); + createSelWg(tr("EDGE_2"), imageS, myGrp3, Edge24); + createSelWg(tr("EDGE_3"), imageS, myGrp3, Edge34); + createSelWg(tr("EDGE_4"), imageS, myGrp3, Edge44); // Add groups to layout - Layout1->addWidget(myGrp1, 2, 0); - Layout1->addWidget(myGrp2, 2, 0); - Layout1->addWidget(myGrp3, 2, 0); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(myGrp1); + layout->addWidget(myGrp2); + layout->addWidget(myGrp3); /***************************************************************/ setHelpFileName("build_by_blocks_page.html#quad_face_anchor"); @@ -121,16 +117,14 @@ BlocksGUI_QuadFaceDlg::~BlocksGUI_QuadFaceDlg() void BlocksGUI_QuadFaceDlg::Init() { // signals and slots connections - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); + + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); QMap::iterator anIterBtn; for (anIterBtn = mySelBtn.begin(); anIterBtn != mySelBtn.end(); ++anIterBtn) - connect(anIterBtn.data(), SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect(anIterBtn.value(), SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); // init controls and fields initName(tr("GEOM_QUAD_FACE")); @@ -150,39 +144,44 @@ void BlocksGUI_QuadFaceDlg::ConstructorsClicked (int constructorId) myConstructorId = constructorId; + // init fields + myShape1 = myShape2 = GEOM::GEOM_Object::_nil(); + myShape3 = myShape4 = myShape1; + + // clear line edits + QMap::iterator anIterLE; + for (anIterLE = mySelName.begin(); anIterLE != mySelName.end(); ++anIterLE) + anIterLE.value()->setText(""); + switch (constructorId) { case 0: myGrp2->hide(); myGrp3->hide(); myGrp1->show(); - myEditCurrentArgument = mySelName[Vertex1]; + mySelBtn[Vertex1]->click(); break; case 1: myGrp1->hide(); myGrp3->hide(); myGrp2->show(); - myEditCurrentArgument = mySelName[Edge12]; + mySelBtn[Edge12]->click(); break; case 2: myGrp1->hide(); myGrp2->hide(); myGrp3->show(); - myEditCurrentArgument = mySelName[Edge14]; + mySelBtn[Edge14]->click(); break; default: break; } - // clear line edits - QMap::iterator anIterLE; - for (anIterLE = mySelName.begin(); anIterLE != mySelName.end(); ++anIterLE) - anIterLE.data()->setText(""); + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); - // init fields - myShape1 = myShape2 = GEOM::GEOM_Object::_nil(); - myShape3 = myShape4 = myShape1; - - activateSelection(); + // on dialog initialization we init the first field with a selected object (if any) + SelectionIntoArgument(); } //================================================================================= @@ -210,48 +209,136 @@ bool BlocksGUI_QuadFaceDlg::ClickOnApply() //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection has changed +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void BlocksGUI_QuadFaceDlg::SelectionIntoArgument() { erasePreview(); - myEditCurrentArgument->setText(""); // Get index of current selection focus int aCurrFocus = -1; QMap::iterator anIter; for (anIter = mySelName.begin(); anIter != mySelName.end(); ++anIter) { - if (myEditCurrentArgument == anIter.data()) { + if (myEditCurrentArgument == anIter.value()) { aCurrFocus = anIter.key(); break; } } - GEOM::GEOM_Object_var anObj; - Standard_Boolean aResult = Standard_False; - if (IObjectCount() == 1) { - anObj = GEOMBase::ConvertIOinGEOMObject(firstIObject(), aResult); - if (aResult) { - if (anObj->_is_nil()) { - aResult = Standard_False; - } else { - mySelName[aCurrFocus]->setText(GEOMBase::GetName(anObj)); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + TopAbs_ShapeEnum aType = TopAbs_EDGE; + if (aCurrFocus == Vertex1 || aCurrFocus == Vertex2 || + aCurrFocus == Vertex3 || aCurrFocus == Vertex4) + aType = TopAbs_VERTEX; + + QString aName; + GEOM::GEOM_Object_var anObj = GEOM::GEOM_Object::_nil(); + + if (aSelList.Extent() == 1) { + Standard_Boolean aResult = Standard_False; + anObj = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aResult); + if (aResult && !anObj->_is_nil()) { + aName = GEOMBase::GetName(anObj); + + // Get Selected object if selected subshape + TopoDS_Shape aShape; + if (GEOMBase::GetShape(anObj, aShape, TopAbs_SHAPE) && !aShape.IsNull()) + { + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) // Local Selection + { + int anIndex = aMap(1); + if (aType == TopAbs_VERTEX) + aName += QString(":vertex_%1").arg(anIndex); + else + aName += QString(":edge_%1").arg(anIndex); + + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(anObj, aName); + + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId()); + anObj = aShapesOp->GetSubShape(anObj, anIndex); + } + else + anObj = aFindedObject; // get Object from study + } + else // Global Selection + { + if (aShape.ShapeType() != aType) { + anObj = GEOM::GEOM_Object::_nil(); + aName = ""; + } + } } - } else { - anObj = GEOM::GEOM_Object::_nil(); } } - if (aCurrFocus == Vertex1 || aCurrFocus == Edge12 || aCurrFocus == Edge14) { + myEditCurrentArgument->setText(aName); + + switch (aCurrFocus) { + // four vertices + case Vertex1: myShape1 = anObj; - } else if (aCurrFocus == Vertex2 || aCurrFocus == Edge22 || aCurrFocus == Edge24) { + if (!myShape1->_is_nil() && myShape2->_is_nil()) + mySelBtn[Vertex2]->click(); + break; + case Vertex2: myShape2 = anObj; - } else if (aCurrFocus == Vertex3 || aCurrFocus == Edge34) { + if (!myShape2->_is_nil() && myShape3->_is_nil()) + mySelBtn[Vertex3]->click(); + break; + case Vertex3: myShape3 = anObj; - } else if (aCurrFocus == Vertex4 || aCurrFocus == Edge44) { + if (!myShape3->_is_nil() && myShape4->_is_nil()) + mySelBtn[Vertex4]->click(); + break; + case Vertex4: myShape4 = anObj; - } else { - return; + if (!myShape4->_is_nil() && myShape1->_is_nil()) + mySelBtn[Vertex1]->click(); + break; + + // two edges + case Edge12: + myShape1 = anObj; + if (!myShape1->_is_nil() && myShape2->_is_nil()) + mySelBtn[Edge22]->click(); + break; + case Edge22: + myShape2 = anObj; + if (!myShape2->_is_nil() && myShape1->_is_nil()) + mySelBtn[Edge12]->click(); + break; + + // four edges + case Edge14: + myShape1 = anObj; + if (!myShape1->_is_nil() && myShape2->_is_nil()) + mySelBtn[Edge24]->click(); + break; + case Edge24: + myShape2 = anObj; + if (!myShape2->_is_nil() && myShape3->_is_nil()) + mySelBtn[Edge34]->click(); + break; + case Edge34: + myShape3 = anObj; + if (!myShape3->_is_nil() && myShape4->_is_nil()) + mySelBtn[Edge44]->click(); + break; + case Edge44: + myShape4 = anObj; + if (!myShape4->_is_nil() && myShape1->_is_nil()) + mySelBtn[Edge14]->click(); + break; + + default: + break; } displayPreview(); @@ -265,14 +352,65 @@ void BlocksGUI_QuadFaceDlg::SetEditCurrentArgument() { QPushButton* aSender = (QPushButton*)sender(); + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + if (myInitial) + myInitial = false; + else + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + + // disable all + switch (myConstructorId) { + case 0: + mySelBtn[Vertex1]->setDown(false); + mySelBtn[Vertex2]->setDown(false); + mySelBtn[Vertex3]->setDown(false); + mySelBtn[Vertex4]->setDown(false); + + mySelName[Vertex1]->setEnabled(false); + mySelName[Vertex2]->setEnabled(false); + mySelName[Vertex3]->setEnabled(false); + mySelName[Vertex4]->setEnabled(false); + break; + case 1: + mySelBtn[Edge12]->setDown(false); + mySelBtn[Edge22]->setDown(false); + + mySelName[Edge12]->setEnabled(false); + mySelName[Edge22]->setEnabled(false); + break; + case 2: + mySelBtn[Edge14]->setDown(false); + mySelBtn[Edge24]->setDown(false); + mySelBtn[Edge34]->setDown(false); + mySelBtn[Edge44]->setDown(false); + + mySelName[Edge14]->setEnabled(false); + mySelName[Edge24]->setEnabled(false); + mySelName[Edge34]->setEnabled(false); + mySelName[Edge44]->setEnabled(false); + break; + default: + break; + } + + // set line edit as current argument QMap::iterator anIter; for (anIter = mySelBtn.begin(); anIter != mySelBtn.end(); ++anIter) { - if (anIter.data() == aSender) { - mySelName[anIter.key()]->setFocus(); + if (anIter.value() == aSender) { myEditCurrentArgument = mySelName[anIter.key()]; + break; } } + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + + // enable push button + // after setFocus(), because it will be setDown(false) when loses focus + aSender->setDown(true); + activateSelection(); } @@ -283,10 +421,9 @@ void BlocksGUI_QuadFaceDlg::SetEditCurrentArgument() void BlocksGUI_QuadFaceDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; - activateSelection(); + + // ?? displayPreview(); } @@ -294,22 +431,12 @@ void BlocksGUI_QuadFaceDlg::ActivateThisDialog() // function : enterEvent() // purpose : //================================================================================= -void BlocksGUI_QuadFaceDlg::enterEvent (QEvent* e) +void BlocksGUI_QuadFaceDlg::enterEvent (QEvent*) { - if (!GroupConstructors->isEnabled()) - this->ActivateThisDialog(); + if (!mainFrame()->GroupConstructors->isEnabled()) + ActivateThisDialog(); } -//================================================================================= -// function : DeactivateActiveDialog() -// purpose : -//================================================================================= -//void BlocksGUI_QuadFaceDlg::DeactivateActiveDialog() -//{ -// // disconnect selection -// GEOMBase_Skeleton::DeactivateActiveDialog(); -//} - //================================================================================= // function : createSelWg() // purpose : @@ -319,11 +446,24 @@ void BlocksGUI_QuadFaceDlg::createSelWg (const QString& theLbl, QWidget* theParent, const int theId) { - new QLabel(theLbl, theParent); + QLabel* lab = new QLabel(theLbl, theParent); mySelBtn[theId] = new QPushButton(theParent); - mySelBtn[theId]->setPixmap(thePix); + mySelBtn[theId]->setIcon(thePix); + mySelBtn[theId]->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed)); mySelName[theId] = new QLineEdit(theParent); mySelName[theId]->setReadOnly(true); + QGridLayout* l = 0; + if (!theParent->layout()) { + l = new QGridLayout(theParent); + l->setMargin(9); l->setSpacing(6); + } + else { + l = qobject_cast(theParent->layout()); + } + int row = l->rowCount(); + l->addWidget(lab, row, 0); + l->addWidget(mySelBtn[theId], row, 1); + l->addWidget(mySelName[theId], row, 2); } //================================================================================= @@ -332,18 +472,20 @@ void BlocksGUI_QuadFaceDlg::createSelWg (const QString& theLbl, //================================================================================= void BlocksGUI_QuadFaceDlg::activateSelection() { + globalSelection(); // close local contexts, if any if (myEditCurrentArgument == mySelName[Vertex1] || myEditCurrentArgument == mySelName[Vertex2] || myEditCurrentArgument == mySelName[Vertex3] || - myEditCurrentArgument == mySelName[Vertex4]) { - - globalSelection(GEOM_POINT); - - } else { - globalSelection(GEOM_EDGE); + myEditCurrentArgument == mySelName[Vertex4]) + { + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); //Select Vertices on All Shapes } - - SelectionIntoArgument(); + else + { + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); //Select Edges on All Shapes + } + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); } //================================================================================= @@ -361,19 +503,23 @@ GEOM::GEOM_IOperations_ptr BlocksGUI_QuadFaceDlg::createOperation() //================================================================================= bool BlocksGUI_QuadFaceDlg::isValid (QString&) { + bool ok = false; switch (getConstructorId()) { - case 0: - return (!myShape1->_is_nil() && !myShape2->_is_nil() && - !myShape3->_is_nil() && !myShape4->_is_nil()); - case 1: - return (!myShape1->_is_nil() && !myShape2->_is_nil()); - case 2: - return (!myShape1->_is_nil() && !myShape2->_is_nil() && - !myShape3->_is_nil() && !myShape4->_is_nil()); - default: - return false; + case 0: + ok = (!myShape1->_is_nil() && !myShape2->_is_nil() && + !myShape3->_is_nil() && !myShape4->_is_nil()); + break; + case 1: + ok = (!myShape1->_is_nil() && !myShape2->_is_nil()); + break; + case 2: + ok = (!myShape1->_is_nil() && !myShape2->_is_nil() && + !myShape3->_is_nil() && !myShape4->_is_nil()); + break; + default: + break; } - return false; + return ok; } //================================================================================= @@ -387,23 +533,23 @@ bool BlocksGUI_QuadFaceDlg::execute (ObjectList& objects) GEOM::GEOM_Object_var anObj; switch (getConstructorId()) { - case 0: - anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())->MakeQuad4Vertices - (myShape1, myShape2, myShape3, myShape4); - res = true; - break; - case 1: - anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())->MakeQuad2Edges - (myShape1, myShape2); - res = true; - break; - case 2: - anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())->MakeQuad - (myShape1, myShape2, myShape3, myShape4); - res = true; - break; - default: - break; + case 0: + anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())-> + MakeQuad4Vertices(myShape1, myShape2, myShape3, myShape4); + res = true; + break; + case 1: + anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())-> + MakeQuad2Edges(myShape1, myShape2); + res = true; + break; + case 2: + anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())-> + MakeQuad(myShape1, myShape2, myShape3, myShape4); + res = true; + break; + default: + break; } if (!anObj->_is_nil()) @@ -411,3 +557,32 @@ bool BlocksGUI_QuadFaceDlg::execute (ObjectList& objects) return res; } + +//================================================================================= +// function : addSubshapeToStudy +// purpose : virtual method to add new SubObjects if local selection +//================================================================================= +void BlocksGUI_QuadFaceDlg::addSubshapesToStudy() +{ + QMap objMap; + + switch (getConstructorId()) { + case 0: + objMap[mySelName[Vertex1]->text()] = myShape1; + objMap[mySelName[Vertex2]->text()] = myShape2; + objMap[mySelName[Vertex3]->text()] = myShape3; + objMap[mySelName[Vertex4]->text()] = myShape4; + break; + case 1: + objMap[mySelName[Edge12]->text()] = myShape1; + objMap[mySelName[Edge22]->text()] = myShape2; + break; + case 2: + objMap[mySelName[Edge14]->text()] = myShape1; + objMap[mySelName[Edge24]->text()] = myShape2; + objMap[mySelName[Edge34]->text()] = myShape3; + objMap[mySelName[Edge44]->text()] = myShape4; + break; + } + addSubshapesToFather(objMap); +} diff --git a/src/BlocksGUI/BlocksGUI_QuadFaceDlg.h b/src/BlocksGUI/BlocksGUI_QuadFaceDlg.h index be706bab3..1d55983f3 100644 --- a/src/BlocksGUI/BlocksGUI_QuadFaceDlg.h +++ b/src/BlocksGUI/BlocksGUI_QuadFaceDlg.h @@ -1,6 +1,7 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 CEA +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -16,73 +17,80 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BlocksGUI_QuadFaceDlg.h +// Author : Julia DOROVSKIKH, Open CASCADE S.A.S. (julia.dorovskikh@opencascade.com) // -// -// File : BlocksGUI_QuadFaceDlg.h -// Author : Julia DOROVSKIKH -// Module : GEOM +#ifndef BLOCKSGUI_QUADFACEDLG_H +#define BLOCKSGUI_QUADFACEDLG_H -#ifndef DIALOGBOX_QUAD_FACE_H -#define DIALOGBOX_QUAD_FACE_H +#include -#include "GEOM_BlocksGUI.hxx" +#include -#include "GEOMBase_Skeleton.h" +class QGroupBox; +class QPushButton; +class QLineEdit; //================================================================================= // class : BlocksGUI_QuadFaceDlg // purpose : //================================================================================= -class GEOM_BLOCKSGUI_EXPORT BlocksGUI_QuadFaceDlg : public GEOMBase_Skeleton +class BlocksGUI_QuadFaceDlg : public GEOMBase_Skeleton { Q_OBJECT enum { Vertex1, Vertex2, Vertex3, Vertex4, - Edge12, Edge22, - Edge14, Edge24, Edge34, Edge44 }; + Edge12, Edge22, + Edge14, Edge24, Edge34, Edge44 }; public: - BlocksGUI_QuadFaceDlg (GeometryGUI*, QWidget* parent, bool modal = FALSE); + BlocksGUI_QuadFaceDlg (GeometryGUI*, QWidget*); ~BlocksGUI_QuadFaceDlg(); protected: // redefined from GEOMBase_Helper virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid (QString& msg); - virtual bool execute (ObjectList& objects); + virtual bool isValid (QString&); + virtual bool execute (ObjectList&); + virtual void addSubshapesToStudy(); private: - void Init(); - void enterEvent (QEvent* e); + void Init(); + void enterEvent (QEvent*); - void createSelWg (const QString&, QPixmap&, QWidget*, const int); - void activateSelection(); + void createSelWg (const QString&, QPixmap&, + QWidget*, const int); + void activateSelection(); private: - int myConstructorId; + int myConstructorId; - GEOM::GEOM_Object_var myShape1; - GEOM::GEOM_Object_var myShape2; - GEOM::GEOM_Object_var myShape3; - GEOM::GEOM_Object_var myShape4; + GEOM::GEOM_Object_var myShape1; + GEOM::GEOM_Object_var myShape2; + GEOM::GEOM_Object_var myShape3; + GEOM::GEOM_Object_var myShape4; - QFrame* myGrp1; - QFrame* myGrp2; - QFrame* myGrp3; + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; - QMap mySelBtn; - QMap mySelName; + QGroupBox* myGrp1; + QGroupBox* myGrp2; + QGroupBox* myGrp3; + + QMap mySelBtn; + QMap mySelName; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void ConstructorsClicked( int constructorId ); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void ConstructorsClicked (int); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); }; -#endif // DIALOGBOX_QUAD_FACE_H +#endif // BLOCKSGUI_QUADFACEDLG_H diff --git a/src/BlocksGUI/BlocksGUI_TrsfDlg.cxx b/src/BlocksGUI/BlocksGUI_TrsfDlg.cxx index 9e5da6754..9e5e91a97 100644 --- a/src/BlocksGUI/BlocksGUI_TrsfDlg.cxx +++ b/src/BlocksGUI/BlocksGUI_TrsfDlg.cxx @@ -1,6 +1,7 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 CEA +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -16,107 +17,77 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BlocksGUI_TrsfDlg.cxx +// Author : Julia DOROVSKIKH, Open CASCADE S.A.S. (julia.dorovskikh@opencascade.com) // -// -// File : BlocksGUI_TrsfDlg.cxx -// Author : Julia DOROVSKIKH -// Module : GEOM -// $Header$ - #include "BlocksGUI_TrsfDlg.h" -#include "DlgRef_SpinBox.h" +#include +#include +#include -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "OCCViewer_ViewModel.h" +#include +#include +#include +#include +#include +#include +#include +#include +// OCCT Includes #include -#include - //================================================================================= // class : BlocksGUI_TrsfDlg() // purpose : Constructs a BlocksGUI_TrsfDlg which is a child of 'parent'. //================================================================================= -BlocksGUI_TrsfDlg::BlocksGUI_TrsfDlg (GeometryGUI* theGeometryGUI, QWidget* parent, bool modal) - : GEOMBase_Skeleton(theGeometryGUI, parent, "TrsfDlg", modal, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BlocksGUI_TrsfDlg::BlocksGUI_TrsfDlg (GeometryGUI* theGeometryGUI, QWidget* parent) + : GEOMBase_Skeleton(theGeometryGUI, parent), + myInitial(true) { SUIT_ResourceMgr* aResMgr = myGeomGUI->getApp()->resourceMgr(); QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_BLOCK_MULTITRSF_SIMPLE"))); QPixmap image2 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_BLOCK_MULTITRSF_DOUBLE"))); QPixmap imageS (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_BLOCK_MULTITRSF_TITLE")); + setWindowTitle(tr("GEOM_BLOCK_MULTITRSF_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_BLOCK_MULTITRSF")); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_BLOCK_MULTITRSF")); - RadioButton1->setPixmap(image1); - RadioButton2->setPixmap(image2); - RadioButton3->close(TRUE); + mainFrame()->RadioButton1->setIcon(image1); + mainFrame()->RadioButton2->setIcon(image2); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); // Create first group - myGrp1 = new QGroupBox(1, Qt::Horizontal, tr("GEOM_BLOCK_MULTITRSF_SIMPLE"), this); + myGrp1 = new QGroupBox(tr("GEOM_BLOCK_MULTITRSF_SIMPLE"), centralWidget()); - QGroupBox* aSelGrp1 = new QGroupBox(3, Qt::Horizontal, myGrp1); - aSelGrp1->setFrameStyle(QFrame::NoFrame); - aSelGrp1->setInsideMargin(0); - - createSelWg(tr("GEOM_MAIN_OBJECT"), imageS, aSelGrp1, MainObj1); - createSelWg(tr("FACE_1"), imageS, aSelGrp1, Face1); - createSelWg(tr("FACE_2"), imageS, aSelGrp1, Face2); - - QGroupBox* aSpinGrp1 = new QGroupBox(1, Qt::Vertical, myGrp1); - aSpinGrp1->setFrameStyle(QFrame::NoFrame); - aSpinGrp1->setInsideMargin(0); - - new QLabel(tr("GEOM_NB_TIMES"), aSpinGrp1); - mySpinBox[SpinBox1] = new DlgRef_SpinBox(aSpinGrp1); + createSelWg(tr("GEOM_MAIN_OBJECT"), imageS, myGrp1, MainObj1); + createSelWg(tr("FACE_1"), imageS, myGrp1, Face1); + createSelWg(tr("FACE_2"), imageS, myGrp1, Face2); + createSpinWg(tr("GEOM_NB_TIMES"), myGrp1, SpinBox1); // Create second group - myGrp2 = new QGroupBox(1, Qt::Horizontal, tr("GEOM_BLOCK_MULTITRSF_DOUBLE"), this); + myGrp2 = new QGroupBox(tr("GEOM_BLOCK_MULTITRSF_DOUBLE"), centralWidget()); - // U trsf - QGroupBox* aSelGrp2U = new QGroupBox(3, Qt::Horizontal, myGrp2); - aSelGrp2U->setFrameStyle(QFrame::NoFrame); - aSelGrp2U->setInsideMargin(0); - - createSelWg(tr("GEOM_MAIN_OBJECT"), imageS, aSelGrp2U, MainObj2); - createSelWg(tr("FACE_1U"), imageS, aSelGrp2U, Face1U); - createSelWg(tr("FACE_2U"), imageS, aSelGrp2U, Face2U); - - QGroupBox* aSpinGrp2U = new QGroupBox(1, Qt::Vertical, myGrp2); - aSpinGrp2U->setFrameStyle(QFrame::NoFrame); - aSpinGrp2U->setInsideMargin(0); - - new QLabel(tr("GEOM_NB_TIMES_U"), aSpinGrp2U); - mySpinBox[SpinBox2U] = new DlgRef_SpinBox(aSpinGrp2U); - - // V trsf - QGroupBox* aSelGrp2V = new QGroupBox(3, Qt::Horizontal, myGrp2); - aSelGrp2V->setFrameStyle(QFrame::NoFrame); - aSelGrp2V->setInsideMargin(0); - - createSelWg(tr("FACE_1V"), imageS, aSelGrp2V, Face1V); - createSelWg(tr("FACE_2V"), imageS, aSelGrp2V, Face2V); - - QGroupBox* aSpinGrp2V = new QGroupBox(1, Qt::Vertical, myGrp2); - aSpinGrp2V->setFrameStyle(QFrame::NoFrame); - aSpinGrp2V->setInsideMargin(0); - - new QLabel(tr("GEOM_NB_TIMES_V"), aSpinGrp2V); - mySpinBox[SpinBox2V] = new DlgRef_SpinBox(aSpinGrp2V); - - (new QLabel(myGrp2))->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding)); + createSelWg(tr("GEOM_MAIN_OBJECT"), imageS, myGrp2, MainObj2); + createSelWg(tr("FACE_1U"), imageS, myGrp2, Face1U); + createSelWg(tr("FACE_2U"), imageS, myGrp2, Face2U); + createSpinWg(tr("GEOM_NB_TIMES_U"), myGrp2, SpinBox2U); + createSelWg(tr("FACE_1V"), imageS, myGrp2, Face1V); + createSelWg(tr("FACE_2V"), imageS, myGrp2, Face2V); + createSpinWg(tr("GEOM_NB_TIMES_V"), myGrp2, SpinBox2V); // Add groups to layout - Layout1->addWidget( myGrp1, 2, 0 ); - Layout1->addWidget( myGrp2, 2, 0 ); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(myGrp1); + layout->addWidget(myGrp2); /***************************************************************/ setHelpFileName("multi_transformation_operation_page.html"); @@ -141,27 +112,25 @@ void BlocksGUI_TrsfDlg::Init() { // Set range of spinboxes double SpecificStep = 1.0; - QMap::iterator anIter; + QMap::iterator anIter; for (anIter = mySpinBox.begin(); anIter != mySpinBox.end(); ++anIter) { //anIter.data()->RangeStepAndValidator(1.0, 999.999, SpecificStep, 3); - anIter.data()->RangeStepAndValidator(1.0, MAX_NUMBER, SpecificStep, 3); + initSpinBox(anIter.value(), 1.0, 999, SpecificStep, 3); } // signals and slots connections - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); + + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); QMap::iterator anIterBtn; for (anIterBtn = mySelBtn.begin(); anIterBtn != mySelBtn.end(); ++anIterBtn) - connect(anIterBtn.data(), SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(anIterBtn.value(), SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - QMap::iterator anIterSpin; + QMap::iterator anIterSpin; for (anIterSpin = mySpinBox.begin(); anIterSpin != mySpinBox.end(); ++anIterSpin) - connect(anIterSpin.data(), SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect(anIterSpin.value(), SIGNAL(valueChanged(int)), this, SLOT(ValueChangedInSpinBox(int))); // init controls and fields initName(tr("GEOM_BLOCK_MULTITRSF")); @@ -181,41 +150,44 @@ void BlocksGUI_TrsfDlg::ConstructorsClicked (int constructorId) myConstructorId = constructorId; + // init fields + myShape = GEOM::GEOM_Object::_nil(); + myFaces[Face1] = myFaces[Face2] = -1; + myFaces[Face1U] = myFaces[Face2U] = -1; + myFaces[Face1V] = myFaces[Face2V] = -1; + + // clear line edits + QMap::iterator anIterLE; + for (anIterLE = mySelName.begin(); anIterLE != mySelName.end(); ++anIterLE) + anIterLE.value()->setText(""); + switch (constructorId) { case 0: myGrp2->hide(); myGrp1->show(); - mySpinBox[SpinBox1]->SetValue(2.0); - myEditCurrentArgument = mySelName[MainObj1]; - myFaces[Face1] = -1; - myFaces[Face2] = -1; + mySpinBox[SpinBox1]->setValue(2); + mySpinBox[SpinBox1]->setDecimals(0); + mySelBtn[MainObj1]->click(); break; case 1: myGrp1->hide(); myGrp2->show(); - mySpinBox[SpinBox2U]->SetValue(2.0); - mySpinBox[SpinBox2V]->SetValue(2.0); - myEditCurrentArgument = mySelName[MainObj2]; - myFaces[Face1U] = -1; - myFaces[Face2U] = -1; - myFaces[Face1V] = -1; - myFaces[Face2V] = -1; + mySpinBox[SpinBox2U]->setValue(2); + mySpinBox[SpinBox2U]->setDecimals(0); + mySpinBox[SpinBox2V]->setValue(2); + mySpinBox[SpinBox2V]->setDecimals(0); + mySelBtn[MainObj2]->click(); break; default: break; } - // clear line edits - QMap::iterator anIterLE; - for (anIterLE = mySelName.begin(); anIterLE != mySelName.end(); ++anIterLE) - anIterLE.data()->setText(""); + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); - // init fields - myShape = GEOM::GEOM_Object::_nil(); - - activateSelection(); -// enableWidgets(); -// displayPreview(); + // on dialog initialization we init the first field with a selected object (if any) + SelectionIntoArgument(); } //================================================================================= @@ -243,7 +215,7 @@ bool BlocksGUI_TrsfDlg::ClickOnApply() //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection has changed +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void BlocksGUI_TrsfDlg::SelectionIntoArgument() { @@ -254,55 +226,97 @@ void BlocksGUI_TrsfDlg::SelectionIntoArgument() int aCurrFocus = -1; QMap::iterator anIter; for (anIter = mySelName.begin(); anIter != mySelName.end(); ++anIter) { - if (myEditCurrentArgument == anIter.data()) { + if (myEditCurrentArgument == anIter.value()) { aCurrFocus = anIter.key(); break; } } - // If selection of main object is activated - if (aCurrFocus == MainObj1 || aCurrFocus == MainObj2) { - if (IObjectCount() == 1) { - Standard_Boolean aResult = Standard_False; - GEOM::GEOM_Object_var anObj = - GEOMBase::ConvertIOinGEOMObject(firstIObject(), aResult); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); - if (aResult && !anObj->_is_nil() && GEOMBase::IsShape( anObj ) ) { - myShape = anObj; - mySelName[aCurrFocus]->setText(GEOMBase::GetName(anObj)); - enableWidgets(); - return; + QString aName; + GEOM::GEOM_Object_var anObj = GEOM::GEOM_Object::_nil(); + + if (aCurrFocus == MainObj1 || aCurrFocus == MainObj2) + { + // If selection of main object is activated + if (aSelList.Extent() == 1) { + Standard_Boolean aResult = Standard_False; + anObj = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aResult); + + if (aResult && !anObj->_is_nil() && GEOMBase::IsShape(anObj)) { + aName = GEOMBase::GetName(anObj); } } - - myShape = GEOM::GEOM_Object::_nil(); + myEditCurrentArgument->setText(aName); + myShape = anObj; enableWidgets(); } - // If face selection is activated else if (aCurrFocus == Face1 || aCurrFocus == Face2 || aCurrFocus == Face1U || aCurrFocus == Face2U || aCurrFocus == Face1V || aCurrFocus == Face2V) { - if (IObjectCount() == 1) { + // If face selection is activated + int anIndex = -1; + if (aSelList.Extent() == 1) { Standard_Boolean aResult = Standard_False; - GEOM::GEOM_Object_var anObj = - GEOMBase::ConvertIOinGEOMObject(firstIObject(), aResult); - - if ( aResult && !anObj->_is_nil() && GEOMBase::IsShape( anObj ) ) { + anObj = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aResult); + if (aResult && !anObj->_is_nil() && GEOMBase::IsShape(anObj)) { + aName = GEOMBase::GetName(anObj); TColStd_IndexedMapOfInteger anIndexes; - ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr()->GetIndexes( firstIObject(), anIndexes ); + aSelMgr->GetIndexes(aSelList.First(), anIndexes); if (anIndexes.Extent() == 1) { - int anIndex = anIndexes(1); - QString aFaceName = QString(GEOMBase::GetName(anObj)) + ":%1"; - myEditCurrentArgument->setText(aFaceName.arg(anIndex)); - myFaces[aCurrFocus] = anIndex; - displayPreview(); - return; + anIndex = anIndexes(1); + aName += QString(":face_%1").arg(anIndex); } } } + myEditCurrentArgument->setText(aName); + myFaces[aCurrFocus] = anIndex; + displayPreview(); + } - myFaces[aCurrFocus] = -1; + switch (aCurrFocus) { + // 1D + case MainObj1: + if (!myShape->_is_nil() && myFaces[Face1] == -1) + mySelBtn[Face1]->click(); + break; + case Face1: + if (myFaces[Face1] != -1 && myFaces[Face2] == -1) + mySelBtn[Face2]->click(); + break; + case Face2: + if (myFaces[Face2] != -1 && myShape->_is_nil()) + mySelBtn[MainObj1]->click(); + break; + + // 2D + case MainObj2: + if (!myShape->_is_nil() && myFaces[Face1U] == -1) + mySelBtn[Face1U]->click(); + break; + case Face1U: + if (myFaces[Face1U] != -1 && myFaces[Face2U] == -1) + mySelBtn[Face2U]->click(); + break; + case Face2U: + if (myFaces[Face2U] != -1 && myFaces[Face1V] == -1) + mySelBtn[Face1V]->click(); + break; + case Face1V: + if (myFaces[Face1V] != -1 && myFaces[Face2V] == -1) + mySelBtn[Face2V]->click(); + break; + case Face2V: + if (myFaces[Face2V] != -1 && myShape->_is_nil()) + mySelBtn[MainObj1]->click(); + break; + + default: + break; } } @@ -314,15 +328,58 @@ void BlocksGUI_TrsfDlg::SetEditCurrentArgument() { QPushButton* aSender = (QPushButton*)sender(); + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + if (myInitial) + myInitial = false; + else + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + + // disable all + switch (myConstructorId) { + case 0: + mySelBtn[MainObj1]->setDown(false); + mySelBtn[Face1]->setDown(false); + mySelBtn[Face2]->setDown(false); + + mySelName[MainObj1]->setEnabled(false); + mySelName[Face1]->setEnabled(false); + mySelName[Face2]->setEnabled(false); + break; + case 1: + mySelBtn[MainObj2]->setDown(false); + mySelBtn[Face1U]->setDown(false); + mySelBtn[Face2U]->setDown(false); + mySelBtn[Face1V]->setDown(false); + mySelBtn[Face2V]->setDown(false); + + mySelName[MainObj2]->setEnabled(false); + mySelName[Face1U]->setEnabled(false); + mySelName[Face2U]->setEnabled(false); + mySelName[Face1V]->setEnabled(false); + mySelName[Face2V]->setEnabled(false); + break; + default: + break; + } + + // set line edit as current argument QMap::iterator anIter; for (anIter = mySelBtn.begin(); anIter != mySelBtn.end(); ++anIter) { - if (anIter.data() == aSender) { - mySelName[anIter.key()]->setFocus(); + if (anIter.value() == aSender) { myEditCurrentArgument = mySelName[anIter.key()]; break; } } + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + + // enable push button + // after setFocus(), because it will be setDown(false) when loses focus + aSender->setDown(true); + activateSelection(); } @@ -333,10 +390,9 @@ void BlocksGUI_TrsfDlg::SetEditCurrentArgument() void BlocksGUI_TrsfDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; - activateSelection(); + + // ?? displayPreview(); } @@ -344,17 +400,17 @@ void BlocksGUI_TrsfDlg::ActivateThisDialog() // function : enterEvent() // purpose : //================================================================================= -void BlocksGUI_TrsfDlg::enterEvent (QEvent* e) +void BlocksGUI_TrsfDlg::enterEvent (QEvent*) { - if (!GroupConstructors->isEnabled()) - this->ActivateThisDialog(); + if (!mainFrame()->GroupConstructors->isEnabled()) + ActivateThisDialog(); } //================================================================================= // function : ValueChangedInSpinBox() // purpose : //================================================================================= -void BlocksGUI_TrsfDlg::ValueChangedInSpinBox (double newValue) +void BlocksGUI_TrsfDlg::ValueChangedInSpinBox(int) { displayPreview(); } @@ -368,11 +424,47 @@ void BlocksGUI_TrsfDlg::createSelWg (const QString& theLbl, QWidget* theParent, const int theId) { - new QLabel(theLbl, theParent); + QLabel* lab = new QLabel(theLbl, theParent); mySelBtn[theId] = new QPushButton(theParent); - mySelBtn[theId]->setPixmap(thePix); + mySelBtn[theId]->setIcon(thePix); + mySelBtn[theId]->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed)); mySelName[theId] = new QLineEdit(theParent); mySelName[theId]->setReadOnly(true); + QGridLayout* l = 0; + if (!theParent->layout()) { + l = new QGridLayout(theParent); + l->setMargin(9); l->setSpacing(6); + } + else { + l = qobject_cast(theParent->layout()); + } + int row = l->rowCount(); + l->addWidget(lab, row, 0); + l->addWidget(mySelBtn[theId], row, 1); + l->addWidget(mySelName[theId], row, 2); +} + +//================================================================================= +// function : createSpinWg() +// purpose : +//================================================================================= +void BlocksGUI_TrsfDlg::createSpinWg (const QString& theLbl, + QWidget* theParent, + const int theId) +{ + QLabel* lab = new QLabel(theLbl, theParent); + mySpinBox[theId] = new SalomeApp_DoubleSpinBox(theParent); + QGridLayout* l = 0; + if (!theParent->layout()) { + l = new QGridLayout(theParent); + l->setMargin(9); l->setSpacing(6); + } + else { + l = qobject_cast(theParent->layout()); + } + int row = l->rowCount(); + l->addWidget(lab, row, 0); + l->addWidget(mySpinBox[theId], row, 2); } //================================================================================= @@ -381,26 +473,22 @@ void BlocksGUI_TrsfDlg::createSelWg (const QString& theLbl, //================================================================================= void BlocksGUI_TrsfDlg::activateSelection() { + globalSelection(GEOM_ALLSHAPES); if (!myShape->_is_nil() && - (myEditCurrentArgument == mySelName[ Face1 ] || - myEditCurrentArgument == mySelName[ Face2 ] || - myEditCurrentArgument == mySelName[ Face1U ] || - myEditCurrentArgument == mySelName[ Face2U ] || - myEditCurrentArgument == mySelName[ Face1V ] || - myEditCurrentArgument == mySelName[ Face2V ])) { - + (myEditCurrentArgument == mySelName[Face1 ] || + myEditCurrentArgument == mySelName[Face2 ] || + myEditCurrentArgument == mySelName[Face1U] || + myEditCurrentArgument == mySelName[Face2U] || + myEditCurrentArgument == mySelName[Face1V] || + myEditCurrentArgument == mySelName[Face2V])) + { // Local selection is available only in the OCC Viewer - if (SUIT_Session::session()->activeApplication()->desktop()->activeWindow()->getViewManager()->getType() - == OCCViewer_Viewer::Type()) { + if (getDesktop()->activeWindow()->getViewManager()->getType() == OCCViewer_Viewer::Type()) { localSelection(myShape, TopAbs_FACE); - } else { - return; } - } else { - globalSelection( GEOM_ALLSHAPES ); } - - SelectionIntoArgument(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); } //================================================================================= @@ -414,26 +502,27 @@ void BlocksGUI_TrsfDlg::enableWidgets() bool toEnable = !myShape->_is_nil(); if (anId == 0) { - mySelName[Face1]->setEnabled(toEnable); - mySelName[Face2]->setEnabled(toEnable); - mySelBtn[Face1]->setEnabled(toEnable); - mySelBtn[Face2]->setEnabled(toEnable); + //mySelName[Face1]->setEnabled(toEnable); + //mySelName[Face2]->setEnabled(toEnable); + //mySelBtn[Face1]->setEnabled(toEnable); + //mySelBtn[Face2]->setEnabled(toEnable); - if (!toEnable) { + if (!toEnable) { mySelName[Face1]->setText(""); mySelName[Face2]->setText(""); myFaces[Face1] = -1; myFaces[Face2] = -1; } - } else if (anId == 1) { - mySelName[Face1U]->setEnabled(toEnable); - mySelName[Face2U]->setEnabled(toEnable); - mySelName[Face1V]->setEnabled(toEnable); - mySelName[Face2V]->setEnabled(toEnable); - mySelBtn[Face1U]->setEnabled(toEnable); - mySelBtn[Face2U]->setEnabled(toEnable); - mySelBtn[Face1V]->setEnabled(toEnable); - mySelBtn[Face2V]->setEnabled(toEnable); + } + else if (anId == 1) { + //mySelName[Face1U]->setEnabled(toEnable); + //mySelName[Face2U]->setEnabled(toEnable); + //mySelName[Face1V]->setEnabled(toEnable); + //mySelName[Face2V]->setEnabled(toEnable); + //mySelBtn[Face1U]->setEnabled(toEnable); + //mySelBtn[Face2U]->setEnabled(toEnable); + //mySelBtn[Face1V]->setEnabled(toEnable); + //mySelBtn[Face2V]->setEnabled(toEnable); if (!toEnable) { mySelName[Face1U]->setText(""); @@ -458,20 +547,26 @@ GEOM::GEOM_IOperations_ptr BlocksGUI_TrsfDlg::createOperation() } //================================================================================= -// function : ClickOnApply() +// function : isValid // purpose : Verify validity of input data //================================================================================= -bool BlocksGUI_TrsfDlg::isValid (QString&) +bool BlocksGUI_TrsfDlg::isValid (QString& msg) { + bool ok = false, okSP = true; switch (getConstructorId()) { - case 0: - return !myShape->_is_nil() && myFaces[Face1] > 0; - case 1: - return !myShape->_is_nil() && myFaces[Face1U] > 0 && myFaces[Face1V] > 0; - default: - return false; + case 0: + ok = !myShape->_is_nil() && myFaces[Face1] > 0; + okSP = mySpinBox[SpinBox1]->isValid( msg, !IsPreview() ); + break; + case 1: + ok = !myShape->_is_nil() && myFaces[Face1U] > 0 && myFaces[Face1V] > 0; + okSP = mySpinBox[SpinBox2U]->isValid( msg, !IsPreview() ) && okSP; + okSP = mySpinBox[SpinBox2V]->isValid( msg, !IsPreview() ) && okSP; + break; + default: + break; } - return false; + return ok && okSP; } //================================================================================= @@ -485,25 +580,40 @@ bool BlocksGUI_TrsfDlg::execute (ObjectList& objects) GEOM::GEOM_Object_var anObj; switch (getConstructorId()) { - case 0: - anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())->MakeMultiTransformation1D - (myShape, - myFaces[Face1], - myFaces[Face2], - (int)mySpinBox[SpinBox1]->GetValue()); - res = true; - break; - case 1: - anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())->MakeMultiTransformation2D - (myShape, - myFaces[Face1U], - myFaces[Face2U], - (int)mySpinBox[SpinBox2U]->GetValue(), - myFaces[Face1V], - myFaces[Face2V], - (int)mySpinBox[SpinBox2V]->GetValue()); - res = true; - break; + case 0: + anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())-> + MakeMultiTransformation1D(myShape, + myFaces[Face1], myFaces[Face2], + mySpinBox[SpinBox1]->value()); + if (!anObj->_is_nil() && !IsPreview()) + { + QStringList aParameters; + aParameters << "" << ""; + aParameters << mySpinBox[SpinBox1]->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } + res = true; + break; + case 1: + anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())-> + MakeMultiTransformation2D (myShape, + myFaces[Face1U], myFaces[Face2U], + mySpinBox[SpinBox2U]->value(), + myFaces[Face1V], myFaces[Face2V], + mySpinBox[SpinBox2V]->value()); + if (!anObj->_is_nil() && !IsPreview()) + { + QStringList aParameters; + aParameters << "" << ""; + aParameters << mySpinBox[SpinBox2U]->text(); + aParameters << "" << ""; + aParameters << mySpinBox[SpinBox2V]->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } + res = true; + break; + default: + break; } if (!anObj->_is_nil()) diff --git a/src/BlocksGUI/BlocksGUI_TrsfDlg.h b/src/BlocksGUI/BlocksGUI_TrsfDlg.h index 7508c8e48..a0f823f14 100644 --- a/src/BlocksGUI/BlocksGUI_TrsfDlg.h +++ b/src/BlocksGUI/BlocksGUI_TrsfDlg.h @@ -1,6 +1,7 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 CEA +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -16,28 +17,29 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BlocksGUI_TrsfDlg.h +// Author : Julia DOROVSKIKH, Open CASCADE S.A.S. (julia.dorovskikh@opencascade.com) // -// -// File : BlocksGUI_TrsfDlg.h -// Author : Julia DOROVSKIKH -// Module : GEOM +#ifndef BLOCKSGUI_TRSFDLG_H +#define BLOCKSGUI_TRSFDLG_H -#ifndef DIALOGBOX_BLOCK_MULTITRSF_H -#define DIALOGBOX_BLOCK_MULTITRSF_H +#include -#include "GEOM_BlocksGUI.hxx" +#include -#include "GEOMBase_Skeleton.h" - -class DlgRef_SpinBox; +class SalomeApp_DoubleSpinBox; +class QGroupBox; +class QPushButton; +class QLineEdit; //================================================================================= // class : BlocksGUI_TrsfDlg // purpose : //================================================================================= -class GEOM_BLOCKSGUI_EXPORT BlocksGUI_TrsfDlg : public GEOMBase_Skeleton +class BlocksGUI_TrsfDlg : public GEOMBase_Skeleton { Q_OBJECT @@ -45,46 +47,50 @@ class GEOM_BLOCKSGUI_EXPORT BlocksGUI_TrsfDlg : public GEOMBase_Skeleton enum { SpinBox1, SpinBox2U, SpinBox2V }; public: - BlocksGUI_TrsfDlg (GeometryGUI*, QWidget* parent, bool modal = FALSE); + BlocksGUI_TrsfDlg (GeometryGUI*, QWidget*); ~BlocksGUI_TrsfDlg(); protected: // redefined from GEOMBase_Helper virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid (QString& msg); - virtual bool execute (ObjectList& objects); + virtual bool isValid (QString&); + virtual bool execute (ObjectList&); private: - void Init(); - void enterEvent (QEvent* e); + void Init(); + void enterEvent(QEvent*); - void createSelWg (const QString&, QPixmap&, QWidget*, const int); - void activateSelection(); - void enableWidgets(); + void createSelWg (const QString&, QPixmap&, QWidget*, const int); + void createSpinWg (const QString&, QWidget*, const int); + void activateSelection(); + void enableWidgets(); private: - int myConstructorId; + int myConstructorId; - GEOM::GEOM_Object_var myShape; - QMap myFaces; + GEOM::GEOM_Object_var myShape; + QMap myFaces; - QFrame* myGrp1; - QFrame* myGrp2; + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; - QMap mySelBtn; - QMap mySelName; - QMap mySpinBox; + QGroupBox* myGrp1; + QGroupBox* myGrp2; + + QMap mySelBtn; + QMap mySelName; + QMap mySpinBox; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void ConstructorsClicked (int constructorId); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void ConstructorsClicked (int); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); - void ValueChangedInSpinBox (double newValue); + void ValueChangedInSpinBox (int); }; -#endif // DIALOGBOX_BLOCK_MULTITRSF_H +#endif // BLOCKSGUI_TRSFDLG_H diff --git a/src/BlocksGUI/GEOM_BlocksGUI.hxx b/src/BlocksGUI/GEOM_BlocksGUI.hxx deleted file mode 100755 index 83f6cbc64..000000000 --- a/src/BlocksGUI/GEOM_BlocksGUI.hxx +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org -// -// -// -// File : GEOM_BlocksGUI.hxx -// Author : Alexander A. BORODIN -// Module : GEOM - -#ifndef _GEOM_BlocksGUI_HXX_ -#define _GEOM_BlocksGUI_HXX_ - -#ifdef WNT - #if defined BLOCKSGUI_EXPORTS - #if defined WIN32 - #define GEOM_BLOCKSGUI_EXPORT __declspec( dllexport ) - #else - #define GEOM_BLOCKSGUI_EXPORT - #endif - #else - #if defined WIN32 - #define GEOM_BLOCKSGUI_EXPORT __declspec( dllimport ) - #else - #define GEOM_BLOCKSGUI_EXPORT - #endif - #endif -#else - #define GEOM_BLOCKSGUI_EXPORT -#endif - -#endif diff --git a/src/BlocksGUI/Makefile.am b/src/BlocksGUI/Makefile.am index 0c1f70470..7ad9706cc 100644 --- a/src/BlocksGUI/Makefile.am +++ b/src/BlocksGUI/Makefile.am @@ -1,86 +1,88 @@ -# GEOM BUILDGUI : +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 CEA -# -# 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) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# GEOM BUILDGUI : +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : BlockGUI # -# File : Makefile.in -# Author : Julia DOROVSKIKH (OCC) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header$ - include $(top_srcdir)/adm_local/unix/make_common_starter.am -# header files +# Headers files +salomeinclude_HEADERS = \ + BlocksGUI.h \ + BlocksGUI_QuadFaceDlg.h \ + BlocksGUI_BlockDlg.h \ + BlocksGUI_ExplodeDlg.h \ + BlocksGUI_PropagateDlg.h \ + BlocksGUI_TrsfDlg.h # Libraries targets lib_LTLIBRARIES = libBlocksGUI.la # Sources files -dist_libBlocksGUI_la_SOURCES = \ - BlocksGUI.cxx \ - BlocksGUI_QuadFaceDlg.cxx \ - BlocksGUI_BlockDlg.cxx \ - BlocksGUI_ExplodeDlg.cxx \ - BlocksGUI_PropagateDlg.cxx \ +dist_libBlocksGUI_la_SOURCES = \ + BlocksGUI.cxx \ + BlocksGUI_QuadFaceDlg.cxx \ + BlocksGUI_BlockDlg.cxx \ + BlocksGUI_ExplodeDlg.cxx \ + BlocksGUI_PropagateDlg.cxx \ BlocksGUI_TrsfDlg.cxx -MOC_FILES = \ - BlocksGUI_QuadFaceDlg_moc.cxx \ - BlocksGUI_BlockDlg_moc.cxx \ - BlocksGUI_ExplodeDlg_moc.cxx \ - BlocksGUI_PropagateDlg_moc.cxx \ +MOC_FILES = \ + BlocksGUI_QuadFaceDlg_moc.cxx \ + BlocksGUI_BlockDlg_moc.cxx \ + BlocksGUI_ExplodeDlg_moc.cxx \ + BlocksGUI_PropagateDlg_moc.cxx \ BlocksGUI_TrsfDlg_moc.cxx -nodist_libBlocksGUI_la_SOURCES= \ +nodist_libBlocksGUI_la_SOURCES = \ $(MOC_FILES) -#LIB_CLIENT_IDL = SALOME_Exception.idl SALOME_GenericObj.idl SALOME_Component.idl +# additional information to compile and link file -#LIB_SERVER_IDL = - -# additionnal information to compil and link file - -libBlocksGUI_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(VTK_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(PYTHON_INCLUDES) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../GEOMGUI \ - -I$(srcdir)/../DlgRef \ - -I$(srcdir)/../GEOMBase \ - -I$(srcdir)/../OBJECT \ - -I$(srcdir)/../GEOMClient \ - -I$(srcdir)/../GEOMImpl \ - -I$(srcdir)/../GEOMFiltersSelection \ - -I$(top_builddir)/idl \ +libBlocksGUI_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(VTK_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(PYTHON_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../GEOMGUI \ + -I$(srcdir)/../DlgRef \ + -I$(srcdir)/../GEOMBase \ + -I$(srcdir)/../OBJECT \ + -I$(srcdir)/../GEOMClient \ + -I$(srcdir)/../GEOMImpl \ + -I$(srcdir)/../GEOMFiltersSelection \ + -I$(top_builddir)/src/DlgRef \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libBlocksGUI_la_LDFLAGS = \ - ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ - ../DlgRef/libDlgRef.la \ - ../GEOMBase/libGEOMBase.la \ - ../GEOMGUI/libGEOM.la \ +libBlocksGUI_la_LDFLAGS = \ + ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ + ../DlgRef/libDlgRef.la \ + ../GEOMBase/libGEOMBase.la \ + ../GEOMGUI/libGEOM.la \ $(QT_MT_LIBS) diff --git a/src/BooleanGUI/BooleanGUI.cxx b/src/BooleanGUI/BooleanGUI.cxx index 34ddff642..4284340e3 100644 --- a/src/BooleanGUI/BooleanGUI.cxx +++ b/src/BooleanGUI/BooleanGUI.cxx @@ -1,46 +1,40 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BooleanGUI.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : BooleanGUI.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - - #include "BooleanGUI.h" - -#include "SUIT_Desktop.h" #include "BooleanGUI_Dialog.h" -#include "GeometryGUI.h" - -using namespace std; +#include +#include //======================================================================= // function : BooleanGUI() // purpose : Constructor //======================================================================= -BooleanGUI::BooleanGUI( GeometryGUI* parent ) : GEOMGUI( parent ) +BooleanGUI::BooleanGUI( GeometryGUI* parent ) + : GEOMGUI( parent ) { } @@ -57,7 +51,7 @@ BooleanGUI::~BooleanGUI() // function : OnGUIEvent() // purpose : //======================================================================= -bool BooleanGUI::OnGUIEvent(int theCommandID, SUIT_Desktop* parent) +bool BooleanGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) { getGeometryGUI()->EmitSignalDeactivateDialog(); @@ -73,7 +67,7 @@ bool BooleanGUI::OnGUIEvent(int theCommandID, SUIT_Desktop* parent) else return false; - QDialog* aDlg = new BooleanGUI_Dialog( anOperation, getGeometryGUI(), parent, ""); + QDialog* aDlg = new BooleanGUI_Dialog( anOperation, getGeometryGUI(), parent ); aDlg->show(); return true; @@ -84,7 +78,9 @@ bool BooleanGUI::OnGUIEvent(int theCommandID, SUIT_Desktop* parent) //===================================================================================== extern "C" { -GEOM_BOOLEANGUI_EXPORT +#ifdef WIN32 + __declspec( dllexport ) +#endif GEOMGUI* GetLibGUI( GeometryGUI* parent ) { return new BooleanGUI( parent ); diff --git a/src/BooleanGUI/BooleanGUI.h b/src/BooleanGUI/BooleanGUI.h index 32d8f57e0..d4868c358 100644 --- a/src/BooleanGUI/BooleanGUI.h +++ b/src/BooleanGUI/BooleanGUI.h @@ -1,66 +1,46 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BooleanGUI.h +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : BooleanGUI.h -// Author : Damien COQUERET -// Module : GEOM - #ifndef BOOLEANGUI_H #define BOOLEANGUI_H -#include "GEOMGUI.h" - -#ifdef WNT - #if defined BOOLEANGUI_EXPORTS - #if defined WIN32 - #define GEOM_BOOLEANGUI_EXPORT __declspec( dllexport ) - #else - #define GEOM_BOOLEANGUI_EXPORT - #endif - #else - #if defined WIN32 - #define GEOM_BOOLEANGUI_EXPORT __declspec( dllimport ) - #else - #define GEOM_BOOLEANGUI_EXPORT - #endif - #endif -#else - #define GEOM_BOOLEANGUI_EXPORT -#endif +#include //================================================================================= // class : BooleanGUI // purpose : //================================================================================= -class GEOM_BOOLEANGUI_EXPORT BooleanGUI : public GEOMGUI +class BooleanGUI : public GEOMGUI { public: enum BooleanOperation { COMMON = 1, CUT = 2, FUSE = 3, SECTION = 4 }; - BooleanGUI( GeometryGUI* parent ); + BooleanGUI( GeometryGUI* ); ~BooleanGUI(); - bool OnGUIEvent(int theCommandID, SUIT_Desktop* parent); + bool OnGUIEvent( int, SUIT_Desktop* ); }; -#endif +#endif // BOOLEANGUI_H diff --git a/src/BooleanGUI/BooleanGUI.pro b/src/BooleanGUI/BooleanGUI.pro new file mode 100644 index 000000000..8e4baf4a1 --- /dev/null +++ b/src/BooleanGUI/BooleanGUI.pro @@ -0,0 +1,61 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = BuildGUI +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +QT_INCLUDES = $$(QTDIR)/include $$(QTDIR)/include/QtCore $$(QTDIR)/include/QtGui $$(QTDIR)/include/QtOpenGL $$(QTDIR)/include/QtXml + +VTK_INCLUDES = $$(VTKHOME)/include/vtk + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +PYTHON_INCLUDES = $$(PYTHONHOME)/include/python2.4 + +BOOST_CPPFLAGS = $$(BOOSTDIR)/include + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +GUI_CXXFLAGS = $$(GUI_ROOT_DIR)/include/salome + +CORBA_INCLUDES = $$(OMNIORBDIR)/include $$(OMNIORBDIR)/include/omniORB4 $$(OMNIORBDIR)/include/COS + +INCLUDEPATH += $${QT_INCLUDES} $${VTK_INCLUDES} $${CAS_CPPFLAGS} $${PYTHON_INCLUDES} $${BOOST_CPPFLAGS} $${KERNEL_CXXFLAGS} $${GUI_CXXFLAGS} $${CORBA_INCLUDES} ../GEOMGUI ../DlgRef ../GEOMBase ../OBJECT ../GEOMClient ../GEOMImpl ../GEOMFiltersSelection $$(GEOM_ROOT_DIR)/idl $$(GEOM_ROOT_DIR)/salome_adm/unix + +LIBS += -L$$(GEOM_ROOT_DIR)/lib -lGEOMBase + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += BOOLEANGUI_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS OMNIORB_VERSION=4 __x86__ __linux__ COMP_CORBA_DOUBLE COMP_CORBA_LONG + +SOURCES = BooleanGUI.cxx +SOURCES += BooleanGUI_Dialog.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/BooleanGUI/BooleanGUI_Dialog.cxx b/src/BooleanGUI/BooleanGUI_Dialog.cxx index 39826043a..85e1f1990 100644 --- a/src/BooleanGUI/BooleanGUI_Dialog.cxx +++ b/src/BooleanGUI/BooleanGUI_Dialog.cxx @@ -1,42 +1,39 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BooleanGUI_Dialog.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : BooleanGUI_Dialog.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - -#include "BooleanGUI_Dialog.h" #include "BooleanGUI.h" -#include "DlgRef_2Sel_QTD.h" +#include "BooleanGUI_Dialog.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include -#include - -using namespace std; +#include +#include +#include +#include //================================================================================= // class : BooleanGUI_Dialog() @@ -45,76 +42,77 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BooleanGUI_Dialog::BooleanGUI_Dialog( const int theOperation, GeometryGUI* theGeometryGUI, - QWidget* parent, const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, fl), - myOperation( theOperation ) +BooleanGUI_Dialog::BooleanGUI_Dialog (const int theOperation, GeometryGUI* theGeometryGUI, + QWidget* parent, bool modal, Qt::WindowFlags fl) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl), + myOperation(theOperation) { QPixmap image0; QString aTitle, aCaption; - switch ( myOperation ) - { - case BooleanGUI::COMMON: - image0 = QPixmap( SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_COMMON"))); - aTitle = tr("GEOM_COMMON"); - aCaption = tr("GEOM_COMMON_TITLE"); - setHelpFileName("common_operation_page.html"); - break; - case BooleanGUI::CUT: - image0 = QPixmap( SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_CUT"))); - aTitle = tr("GEOM_CUT"); - aCaption = tr("GEOM_CUT_TITLE"); - setHelpFileName("cut_operation_page.html"); - break; - case BooleanGUI::FUSE: - image0 = QPixmap( SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_FUSE"))); - aTitle = tr("GEOM_FUSE"); - aCaption = tr("GEOM_FUSE_TITLE"); - setHelpFileName("fuse_operation_page.html"); - break; - case BooleanGUI::SECTION: - image0 = QPixmap( SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_SECTION"))); - aTitle = tr("GEOM_SECTION"); - aCaption = tr("GEOM_SECTION_TITLE"); - setHelpFileName("section_opeartion_page.html"); - break; + switch (myOperation) { + case BooleanGUI::COMMON: + image0 = QPixmap(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_COMMON"))); + aTitle = tr("GEOM_COMMON"); + aCaption = tr("GEOM_COMMON_TITLE"); + setHelpFileName("common_operation_page.html"); + break; + case BooleanGUI::CUT: + image0 = QPixmap(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_CUT"))); + aTitle = tr("GEOM_CUT"); + aCaption = tr("GEOM_CUT_TITLE"); + setHelpFileName("cut_operation_page.html"); + break; + case BooleanGUI::FUSE: + image0 = QPixmap(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_FUSE"))); + aTitle = tr("GEOM_FUSE"); + aCaption = tr("GEOM_FUSE_TITLE"); + setHelpFileName("fuse_operation_page.html"); + break; + case BooleanGUI::SECTION: + image0 = QPixmap(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_SECTION"))); + aTitle = tr("GEOM_SECTION"); + aCaption = tr("GEOM_SECTION_TITLE"); + setHelpFileName("section_opeartion_page.html"); + break; } - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption( aCaption ); + setWindowTitle(aCaption); /***************************************************************/ - GroupConstructors->setTitle( aTitle ); - RadioButton1->setPixmap( image0 ); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(aTitle); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); + + myGroup = new DlgRef_2Sel(centralWidget()); - myGroup = new DlgRef_2Sel_QTD(this, "GroupCommon"); myGroup->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); - if ( myOperation != BooleanGUI::CUT ) - { - myGroup->TextLabel1->setText(tr("GEOM_OBJECT_I").arg("1")); - myGroup->TextLabel2->setText(tr("GEOM_OBJECT_I").arg("2")); + if (myOperation != BooleanGUI::CUT) { + myGroup->TextLabel1->setText(tr("GEOM_OBJECT_I").arg(1)); + myGroup->TextLabel2->setText(tr("GEOM_OBJECT_I").arg(2)); } - else - { - myGroup->TextLabel1->setText(tr("GEOM_MAIN_OBJECT")); - myGroup->TextLabel2->setText(tr("GEOM_TOOL_OBJECT")); + else { + myGroup->TextLabel1->setText(tr("GEOM_MAIN_OBJECT")); + myGroup->TextLabel2->setText(tr("GEOM_TOOL_OBJECT")); } - - myGroup->PushButton1->setPixmap(image1); - myGroup->PushButton2->setPixmap(image1); - myGroup->LineEdit1->setReadOnly( true ); - myGroup->LineEdit2->setReadOnly( true ); - Layout1->addWidget(myGroup, 2, 0); + myGroup->PushButton1->setIcon(image1); + myGroup->PushButton2->setIcon(image1); + myGroup->LineEdit1->setReadOnly(true); + myGroup->LineEdit2->setReadOnly(true); + + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(myGroup); /***************************************************************/ - /* Initialisation */ + // Initialisation Init(); } - //================================================================================= // function : ~BooleanGUI_Dialog() // purpose : Destroys the object and frees any allocated resources @@ -123,19 +121,24 @@ BooleanGUI_Dialog::~BooleanGUI_Dialog() { } - //================================================================================= // function : Init() // purpose : //================================================================================= void BooleanGUI_Dialog::Init() { - /* init variables */ + mainFrame()->GroupBoxPublish->show(); + + // init variables myEditCurrentArgument = myGroup->LineEdit1; - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + myGroup->LineEdit1->setText(""); + myGroup->LineEdit2->setText(""); + myObject1 = myObject2 = GEOM::GEOM_Object::_nil(); + + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); connect(myGroup->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); connect(myGroup->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); @@ -143,77 +146,92 @@ void BooleanGUI_Dialog::Init() connect(myGroup->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(myGroup->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), + SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - initName( GroupConstructors->title() ); + initName(mainFrame()->GroupConstructors->title()); - setTabOrder (RadioButton1, ResultName ); - setTabOrder (ResultName, myGroup->PushButton1); - setTabOrder (myGroup->PushButton1, myGroup->PushButton2); - setTabOrder (myGroup->PushButton2, buttonOk); - setTabOrder (buttonOk, buttonApply); - setTabOrder (buttonApply, buttonCancel); - setTabOrder (buttonCancel, buttonHelp); + setTabOrder(mainFrame()->GroupConstructors, mainFrame()->GroupBoxName); + setTabOrder(mainFrame()->GroupBoxName, mainFrame()->GroupMedium); + setTabOrder(mainFrame()->GroupMedium, mainFrame()->GroupButtons); - RadioButton1->setFocus(); + mainFrame()->RadioButton1->setFocus(); - globalSelection( GEOM_ALLSHAPES ); + globalSelection(GEOM_ALLSHAPES); + + myGroup->PushButton1->click(); + SelectionIntoArgument(); } - //================================================================================= // function : ClickOnOk() // purpose : //================================================================================= void BooleanGUI_Dialog::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool BooleanGUI_Dialog::ClickOnApply() { - if ( !onAccept() ) - return false; + if (!onAccept()) + return false; initName(); + // activate selection and connect selection manager + myGroup->PushButton1->click(); return true; } - //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection has changed +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void BooleanGUI_Dialog::SelectionIntoArgument() { - myEditCurrentArgument->setText( "" ); + myEditCurrentArgument->setText(""); - if ( IObjectCount() != 1 ) - { - if ( myEditCurrentArgument == myGroup->LineEdit1 ) myObject1 = GEOM::GEOM_Object::_nil(); - else if ( myEditCurrentArgument == myGroup->LineEdit2 ) myObject2 = GEOM::GEOM_Object::_nil(); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) { + if (myEditCurrentArgument == myGroup->LineEdit1) myObject1 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == myGroup->LineEdit2) myObject2 = GEOM::GEOM_Object::_nil(); return; } // nbSel == 1 Standard_Boolean aRes = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject( firstIObject(), aRes ); - if ( !CORBA::is_nil( aSelectedObject ) && aRes && GEOMBase::IsShape( aSelectedObject ) ) + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aRes); + if (!CORBA::is_nil(aSelectedObject) && aRes && GEOMBase::IsShape(aSelectedObject)) { - myEditCurrentArgument->setText( GEOMBase::GetName( aSelectedObject ) ); - if ( myEditCurrentArgument == myGroup->LineEdit1 ) myObject1 = aSelectedObject; - else if ( myEditCurrentArgument == myGroup->LineEdit2 ) myObject2 = aSelectedObject; + myEditCurrentArgument->setText(GEOMBase::GetName(aSelectedObject)); + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + if (myEditCurrentArgument == myGroup->LineEdit1) { + myObject1 = aSelectedObject; + if (myObject2->_is_nil()) + myGroup->PushButton2->click(); + } + else if (myEditCurrentArgument == myGroup->LineEdit2) { + myObject2 = aSelectedObject; + if (myObject1->_is_nil()) + myGroup->PushButton1->click(); + } } } - //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -222,14 +240,26 @@ void BooleanGUI_Dialog::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if ( send == myGroup->PushButton1 ) myEditCurrentArgument = myGroup->LineEdit1; - else if ( send == myGroup->PushButton2 ) myEditCurrentArgument = myGroup->LineEdit2; + if (send == myGroup->PushButton1) { + myEditCurrentArgument = myGroup->LineEdit1; + myGroup->PushButton2->setDown(false); + myGroup->LineEdit2->setEnabled(false); + } + else if (send == myGroup->PushButton2) { + myEditCurrentArgument = myGroup->LineEdit2; + + myGroup->PushButton1->setDown(false); + myGroup->LineEdit1->setEnabled(false); + } + + // enable line edit + myEditCurrentArgument->setEnabled(true); myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); } - //================================================================================= // function : LineEditReturnPressed() // purpose : @@ -237,14 +267,12 @@ void BooleanGUI_Dialog::SetEditCurrentArgument() void BooleanGUI_Dialog::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if ( send == myGroup->LineEdit1 || send == myGroup->LineEdit2 ) - { + if (send == myGroup->LineEdit1 || send == myGroup->LineEdit2) { myEditCurrentArgument = send; GEOMBase_Skeleton::LineEditReturnPressed(); } } - //================================================================================= // function : ActivateThisDialog() // purpose : @@ -252,19 +280,19 @@ void BooleanGUI_Dialog::LineEditReturnPressed() void BooleanGUI_Dialog::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - globalSelection( GEOM_ALLSHAPES ); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; -} + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + displayPreview(); +} //================================================================================= // function : enterEvent() // purpose : when mouse enter onto the QWidget //================================================================================= -void BooleanGUI_Dialog::enterEvent(QEvent * e) +void BooleanGUI_Dialog::enterEvent (QEvent*) { - if ( !GroupConstructors->isEnabled() ) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } @@ -274,35 +302,51 @@ void BooleanGUI_Dialog::enterEvent(QEvent * e) //================================================================================= GEOM::GEOM_IOperations_ptr BooleanGUI_Dialog::createOperation() { - return getGeomEngine()->GetIBooleanOperations( getStudyId() ); + return getGeomEngine()->GetIBooleanOperations(getStudyId()); } //================================================================================= // function : isValid // purpose : //================================================================================= -bool BooleanGUI_Dialog::isValid( QString& msg ) +bool BooleanGUI_Dialog::isValid (QString&) { - Handle(SALOME_InteractiveObject) IO = firstIObject(); - Standard_Boolean testResult; - GEOM::GEOM_Object_var anObject = GEOMBase::ConvertIOinGEOMObject( IO, testResult ); - if ( !testResult || anObject->_is_nil() ) - return false; + //Handle(SALOME_InteractiveObject) IO = firstIObject(); + //Standard_Boolean testResult; + //GEOM::GEOM_Object_var anObject = GEOMBase::ConvertIOinGEOMObject(IO, testResult); + //if (!testResult || anObject->_is_nil()) + // return false; - return !CORBA::is_nil( myObject1 ) && !CORBA::is_nil( myObject2 ); + return !CORBA::is_nil(myObject1) && !CORBA::is_nil(myObject2); } //================================================================================= // function : execute // purpose : //================================================================================= -bool BooleanGUI_Dialog::execute( ObjectList& objects ) +bool BooleanGUI_Dialog::execute (ObjectList& objects) { GEOM::GEOM_Object_var anObj; - - anObj = GEOM::GEOM_IBooleanOperations::_narrow( getOperation() )->MakeBoolean( myObject1, myObject2, myOperation ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); + + anObj = GEOM::GEOM_IBooleanOperations::_narrow(getOperation())-> + MakeBoolean(myObject1, myObject2, myOperation); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); return true; } + +//================================================================================= +// function : restoreSubShapes +// purpose : +//================================================================================= +void BooleanGUI_Dialog::restoreSubShapes (SALOMEDS::Study_ptr theStudy, + SALOMEDS::SObject_ptr theSObject) +{ + if (mainFrame()->CheckBoxRestoreSS->isChecked()) { + // empty list of arguments means that all arguments should be restored + getGeomEngine()->RestoreSubShapesSO(theStudy, theSObject, GEOM::ListOfGO(), + /*theFindMethod=*/GEOM::FSM_GetInPlace, // ? GEOM::FSM_GetSame + /*theInheritFirstArg=*/myOperation == BooleanGUI::CUT); // ? false + } +} diff --git a/src/BooleanGUI/BooleanGUI_Dialog.h b/src/BooleanGUI/BooleanGUI_Dialog.h index e42fd2be2..c9ac5a5c2 100644 --- a/src/BooleanGUI/BooleanGUI_Dialog.h +++ b/src/BooleanGUI/BooleanGUI_Dialog.h @@ -1,76 +1,74 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : BooleanGUI_Dialog.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BooleanGUI_Dialog.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef BOOLEANGUI_DIALOG_H +#define BOOLEANGUI_DIALOG_H -#ifndef BooleanGUI_Dialog_H -#define BooleanGUI_Dialog_H +#include -#include "BooleanGUI.h" //for wnt defines - -#include "GEOMBase_Skeleton.h" - -class DlgRef_2Sel_QTD; +class DlgRef_2Sel; //================================================================================= // class : BooleanGUI_Dialog // purpose : //================================================================================= -class GEOM_BOOLEANGUI_EXPORT BooleanGUI_Dialog : public GEOMBase_Skeleton +class BooleanGUI_Dialog : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BooleanGUI_Dialog( const int theOperation, GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~BooleanGUI_Dialog(); - + BooleanGUI_Dialog( const int, GeometryGUI*, QWidget* = 0, + bool = false, Qt::WindowFlags = 0 ); + ~BooleanGUI_Dialog(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void restoreSubShapes( SALOMEDS::Study_ptr, SALOMEDS::SObject_ptr ); private: - int myOperation; - - void Init(); - void enterEvent(QEvent * e); - - GEOM::GEOM_Object_var myObject1; - GEOM::GEOM_Object_var myObject2; - - DlgRef_2Sel_QTD* myGroup; + void Init(); + void enterEvent( QEvent* ); + +private: + int myOperation; + + GEOM::GEOM_Object_var myObject1; + GEOM::GEOM_Object_var myObject2; + + DlgRef_2Sel* myGroup; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void SetEditCurrentArgument(); - void SelectionIntoArgument(); - void LineEditReturnPressed(); - void ActivateThisDialog(); + void ClickOnOk(); + bool ClickOnApply(); + void SetEditCurrentArgument(); + void SelectionIntoArgument(); + void LineEditReturnPressed(); + void ActivateThisDialog(); }; -#endif // BooleanGUI_Dialog_H +#endif // BOOLEANGUI_DIALOG_H diff --git a/src/BooleanGUI/Makefile.am b/src/BooleanGUI/Makefile.am index fd149c69c..fbea57437 100644 --- a/src/BooleanGUI/Makefile.am +++ b/src/BooleanGUI/Makefile.am @@ -1,75 +1,75 @@ -# GEOM BOOLEANGUI : +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# GEOM BOOLEANGUI : +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : BooleanGUI # -# File : Makefile.in -# Author : Damien COQUERET (OCC) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header: - include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files +salomeinclude_HEADERS = \ + BooleanGUI.h \ + BooleanGUI_Dialog.h # Libraries targets lib_LTLIBRARIES = libBooleanGUI.la # Sources files -dist_libBooleanGUI_la_SOURCES = \ - BooleanGUI.cxx \ +dist_libBooleanGUI_la_SOURCES = \ + BooleanGUI.h \ + BooleanGUI_Dialog.h \ + \ + BooleanGUI.cxx \ BooleanGUI_Dialog.cxx -MOC_FILES = \ +MOC_FILES = \ BooleanGUI_Dialog_moc.cxx -nodist_libBooleanGUI_la_SOURCES= \ +nodist_libBooleanGUI_la_SOURCES = \ $(MOC_FILES) -#LIB_CLIENT_IDL = SALOME_Exception.idl SALOME_GenericObj.idl SALOME_Component.idl +# additional information to compile and link file -#LIB_SERVER_IDL = - -# additionnal information to compil and link file - -libBooleanGUI_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(VTK_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(PYTHON_INCLUDES) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../GEOMGUI \ - -I$(srcdir)/../DlgRef \ - -I$(srcdir)/../GEOMBase \ - -I$(srcdir)/../OBJECT \ - -I$(srcdir)/../GEOMClient \ - -I$(srcdir)/../GEOMImpl \ - -I$(srcdir)/../GEOMFiltersSelection \ - -I$(top_builddir)/idl \ +libBooleanGUI_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(VTK_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(PYTHON_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../GEOMGUI \ + -I$(srcdir)/../DlgRef \ + -I$(srcdir)/../GEOMBase \ + -I$(srcdir)/../OBJECT \ + -I$(srcdir)/../GEOMClient \ + -I$(srcdir)/../GEOMImpl \ + -I$(srcdir)/../GEOMFiltersSelection \ + -I$(top_builddir)/src/DlgRef \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libBooleanGUI_la_LDFLAGS = \ +libBooleanGUI_la_LDFLAGS = \ ../GEOMBase/libGEOMBase.la diff --git a/src/BuildGUI/BuildGUI.cxx b/src/BuildGUI/BuildGUI.cxx index a9d443817..643cbf11a 100644 --- a/src/BuildGUI/BuildGUI.cxx +++ b/src/BuildGUI/BuildGUI.cxx @@ -1,37 +1,32 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BooleanGUI.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : BooleanGUI.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "BuildGUI.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" - -#include "SalomeApp_Application.h" +#include +#include #include "BuildGUI_EdgeDlg.h" // Method EDGE #include "BuildGUI_WireDlg.h" // Method WIRE @@ -40,14 +35,14 @@ #include "BuildGUI_SolidDlg.h" // Method SOLID #include "BuildGUI_CompoundDlg.h" // Method COMPOUND -#include "GeometryGUI.h" +#include //======================================================================= // function : BuildGUI() // purpose : Constructor //======================================================================= BuildGUI::BuildGUI( GeometryGUI* parent ) -: GEOMGUI( parent ) + : GEOMGUI( parent ) { } @@ -68,24 +63,25 @@ bool BuildGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) { getGeometryGUI()->EmitSignalDeactivateDialog(); - QDialog* aDlg = NULL; + QDialog* aDlg = 0; - switch ( theCommandID ) - { - case 4081: aDlg = new BuildGUI_EdgeDlg ( getGeometryGUI(), parent, "" ); break; - case 4082: aDlg = new BuildGUI_WireDlg ( getGeometryGUI(), parent, "" ); break; - case 4083: aDlg = new BuildGUI_FaceDlg ( getGeometryGUI(), parent, "" ); break; - case 4084: aDlg = new BuildGUI_ShellDlg ( getGeometryGUI(), parent, "" ); break; - case 4085: aDlg = new BuildGUI_SolidDlg ( getGeometryGUI(), parent, "" ); break; - case 4086: aDlg = new BuildGUI_CompoundDlg( getGeometryGUI(), parent, "" ); break; - - default: - getGeometryGUI()->getApp()->putInfo( tr( "GEOM_PRP_COMMAND" ).arg( theCommandID ) ); - break; + switch ( theCommandID ) { + case 4081: aDlg = new BuildGUI_EdgeDlg ( getGeometryGUI(), parent ); break; + case 4082: aDlg = new BuildGUI_WireDlg ( getGeometryGUI(), parent ); break; + case 4083: aDlg = new BuildGUI_FaceDlg ( getGeometryGUI(), parent ); break; + case 4084: aDlg = new BuildGUI_ShellDlg ( getGeometryGUI(), parent ); break; + case 4085: aDlg = new BuildGUI_SolidDlg ( getGeometryGUI(), parent ); break; + case 4086: aDlg = new BuildGUI_CompoundDlg( getGeometryGUI(), parent ); break; + default: + getGeometryGUI()->getApp()->putInfo( tr( "GEOM_PRP_COMMAND" ).arg( theCommandID ) ); + break; } - - if ( aDlg != NULL ) + + if ( aDlg ) { + aDlg->updateGeometry(); + aDlg->resize( aDlg->minimumSizeHint() ); aDlg->show(); + } return true; } @@ -95,7 +91,9 @@ bool BuildGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) //===================================================================================== extern "C" { - GEOM_BUILDGUI_EXPORT +#ifdef WIN32 + __declspec( dllexport ) +#endif GEOMGUI* GetLibGUI( GeometryGUI* parent ) { return new BuildGUI( parent ); diff --git a/src/BuildGUI/BuildGUI.h b/src/BuildGUI/BuildGUI.h index 60e57a347..1ae6aed71 100644 --- a/src/BuildGUI/BuildGUI.h +++ b/src/BuildGUI/BuildGUI.h @@ -1,48 +1,44 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : BuildGUI.h +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : BuildGUI.h -// Author : Damien COQUERET -// Module : GEOM - #ifndef BUILDGUI_H #define BUILDGUI_H -#include "GEOM_BuildGUI.hxx" - -#include "GEOMGUI.h" +#include //================================================================================= // class : BuildGUI // purpose : //================================================================================= -class GEOM_BUILDGUI_EXPORT BuildGUI : public GEOMGUI +class BuildGUI : public GEOMGUI { public : - BuildGUI( GeometryGUI* parent ); + BuildGUI( GeometryGUI* ); ~BuildGUI(); - bool OnGUIEvent( int theCommandID, SUIT_Desktop* parent ); + bool OnGUIEvent( int, SUIT_Desktop* ); }; -#endif +#endif // BUILDGUI_H diff --git a/src/BuildGUI/BuildGUI.pro b/src/BuildGUI/BuildGUI.pro new file mode 100644 index 000000000..4e3ff52c9 --- /dev/null +++ b/src/BuildGUI/BuildGUI.pro @@ -0,0 +1,66 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = BuildGUI +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +QT_INCLUDES = $$(QTDIR)/include $$(QTDIR)/include/QtCore $$(QTDIR)/include/QtGui $$(QTDIR)/include/QtOpenGL $$(QTDIR)/include/QtXml + +VTK_INCLUDES = $$(VTKHOME)/include/vtk + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +PYTHON_INCLUDES = $$(PYTHONHOME)/include/python2.4 + +BOOST_CPPFLAGS = $$(BOOSTDIR)/include + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +GUI_CXXFLAGS = $$(GUI_ROOT_DIR)/include/salome + +CORBA_INCLUDES = $$(OMNIORBDIR)/include $$(OMNIORBDIR)/include/omniORB4 $$(OMNIORBDIR)/include/COS + +INCLUDEPATH += $${QT_INCLUDES} $${VTK_INCLUDES} $${CAS_CPPFLAGS} $${PYTHON_INCLUDES} $${BOOST_CPPFLAGS} $${KERNEL_CXXFLAGS} $${GUI_CXXFLAGS} $${CORBA_INCLUDES} ../GEOMGUI ../DlgRef ../GEOMBase ../OBJECT ../GEOMClient ../GEOMImpl ../GEOMFiltersSelection $$(GEOM_ROOT_DIR)/idl $$(GEOM_ROOT_DIR)/salome_adm/unix + +LIBS += -L$$(GEOM_ROOT_DIR)/lib -lGEOMFiltersSelection -lGEOMBase + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += BUILDGUI_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS OMNIORB_VERSION=4 __x86__ __linux__ COMP_CORBA_DOUBLE COMP_CORBA_LONG + +SOURCES = BuildGUI.cxx +SOURCES += BuildGUI_EdgeDlg.cxx +SOURCES += BuildGUI_WireDlg.cxx +SOURCES += BuildGUI_FaceDlg.cxx +SOURCES += BuildGUI_ShellDlg.cxx +SOURCES += BuildGUI_SolidDlg.cxx +SOURCES += BuildGUI_CompoundDlg.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/BuildGUI/BuildGUI_CompoundDlg.cxx b/src/BuildGUI/BuildGUI_CompoundDlg.cxx index 4ea4ca696..66ec085eb 100644 --- a/src/BuildGUI/BuildGUI_CompoundDlg.cxx +++ b/src/BuildGUI/BuildGUI_CompoundDlg.cxx @@ -1,39 +1,40 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM GEOMGUI : GUI for Geometry component +// File : BuildGUI_CompoundDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : BuildGUI_CompoundDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "BuildGUI_CompoundDlg.h" -#include "GEOMImpl_Types.hxx" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include -#include +#include + +#include +#include +#include +#include //================================================================================= // class : BuildGUI_CompoundDlg() @@ -42,29 +43,32 @@ // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BuildGUI_CompoundDlg::BuildGUI_CompoundDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BuildGUI_CompoundDlg::BuildGUI_CompoundDlg( GeometryGUI* theGeometryGUI, QWidget* parent ) + : GEOMBase_Skeleton( theGeometryGUI, parent ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_BUILD_COMPOUND"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_BUILD_COMPOUND" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_COMPOUND_TITLE")); + setWindowTitle( tr( "GEOM_COMPOUND_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_COMPOUND")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_COMPOUND" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupShapes = new DlgRef_1Sel_QTD(this, "GroupShapes"); - GroupShapes->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); - GroupShapes->TextLabel1->setText(tr("GEOM_OBJECTS")); - GroupShapes->PushButton1->setPixmap(image1); + GroupShapes = new DlgRef_1Sel( centralWidget() ); + + GroupShapes->GroupBox1->setTitle( tr( "GEOM_ARGUMENTS" ) ); + GroupShapes->TextLabel1->setText( tr( "GEOM_OBJECTS" ) ); + GroupShapes->PushButton1->setIcon( image1 ); GroupShapes->LineEdit1->setReadOnly( true ); - Layout1->addWidget(GroupShapes, 2, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupShapes ); /***************************************************************/ setHelpFileName("create_compound_page.html"); @@ -96,12 +100,14 @@ void BuildGUI_CompoundDlg::Init() myOkShapes = false; + mainFrame()->GroupBoxPublish->show(); + /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupShapes->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + connect( GroupShapes->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( ( (SalomeApp_Application*)(SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL(currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); globalSelection( GEOM_ALLSHAPES ); @@ -143,14 +149,18 @@ void BuildGUI_CompoundDlg::SelectionIntoArgument() myEditCurrentArgument->setText( "" ); QString aString = ""; /* name of selection */ + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + myOkShapes = false; - int nbSel = GEOMBase::GetNameOfSelectedIObjects( selectedIO(), aString, true ); + int nbSel = GEOMBase::GetNameOfSelectedIObjects(aSelList, aString, true); if ( nbSel == 0 ) return; if ( nbSel != 1 ) aString = QString( "%1_objects").arg( nbSel ); - GEOMBase::ConvertListOfIOInListOfGO( selectedIO(), myShapes, true ); + GEOMBase::ConvertListOfIOInListOfGO(aSelList, myShapes, true); myEditCurrentArgument->setText( aString ); myOkShapes = true; } @@ -163,7 +173,7 @@ void BuildGUI_CompoundDlg::SelectionIntoArgument() void BuildGUI_CompoundDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if (send != GroupShapes->PushButton1) + if ( send != GroupShapes->PushButton1 ) return; myEditCurrentArgument = GroupShapes->LineEdit1; @@ -181,8 +191,8 @@ void BuildGUI_CompoundDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); globalSelection( GEOM_ALLSHAPES ); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); } @@ -192,7 +202,7 @@ void BuildGUI_CompoundDlg::ActivateThisDialog() //================================================================================= void BuildGUI_CompoundDlg::enterEvent(QEvent* e) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } @@ -229,3 +239,18 @@ bool BuildGUI_CompoundDlg::execute( ObjectList& objects ) return true; } + +//================================================================================= +// function : restoreSubShapes +// purpose : +//================================================================================= +void BuildGUI_CompoundDlg::restoreSubShapes( SALOMEDS::Study_ptr theStudy, + SALOMEDS::SObject_ptr theSObject ) +{ + if ( mainFrame()->CheckBoxRestoreSS->isChecked() ) { + // empty list of arguments means that all arguments should be restored + getGeomEngine()->RestoreSubShapesSO( theStudy, theSObject, GEOM::ListOfGO(), + /*theFindMethod=*/GEOM::FSM_GetSame, // ? GEOM::FSM_GetInPlace + /*theInheritFirstArg=*/false ); + } +} diff --git a/src/BuildGUI/BuildGUI_CompoundDlg.h b/src/BuildGUI/BuildGUI_CompoundDlg.h index 31182622c..4aa6de210 100644 --- a/src/BuildGUI/BuildGUI_CompoundDlg.h +++ b/src/BuildGUI/BuildGUI_CompoundDlg.h @@ -1,72 +1,70 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : GEOMBase_CompoundDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BuildGUI_CompoundDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef BUILDGUI_COMPOUNDDLG_H +#define BUILDGUI_COMPOUNDDLG_H -#ifndef DIALOGBOX_COMPOUND_H -#define DIALOGBOX_COMPOUND_H +#include -#include "GEOM_BuildGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel_QTD.h" +class DlgRef_1Sel; //================================================================================= // class : BuildGUI_CompoundDlg // purpose : //================================================================================= -class GEOM_BUILDGUI_EXPORT BuildGUI_CompoundDlg : public GEOMBase_Skeleton +class BuildGUI_CompoundDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BuildGUI_CompoundDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~BuildGUI_CompoundDlg(); + BuildGUI_CompoundDlg( GeometryGUI*, QWidget* = 0 ); + ~BuildGUI_CompoundDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& msg ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void restoreSubShapes( SALOMEDS::Study_ptr, SALOMEDS::SObject_ptr ); private: - void Init(); - void enterEvent(QEvent* e); - - GEOM::ListOfGO myShapes; - bool myOkShapes; - - DlgRef_1Sel_QTD* GroupShapes; + void Init(); + void enterEvent( QEvent* ); + +private: + GEOM::ListOfGO myShapes; + bool myOkShapes; + + DlgRef_1Sel* GroupShapes; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); }; -#endif // DIALOGBOX_COMPOUND_H +#endif // BUILDGUI_COMPOUNDDLG_H diff --git a/src/BuildGUI/BuildGUI_EdgeDlg.cxx b/src/BuildGUI/BuildGUI_EdgeDlg.cxx index 6403242ce..1548635f4 100644 --- a/src/BuildGUI/BuildGUI_EdgeDlg.cxx +++ b/src/BuildGUI/BuildGUI_EdgeDlg.cxx @@ -1,193 +1,236 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BuildGUI_EdgeDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : BuildGUI_EdgeDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "BuildGUI_EdgeDlg.h" -#include -#include +#include +#include +#include -#include "utilities.h" -#include "GEOMImpl_Types.hxx" +#include +#include +#include +#include -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" - -#include +#include //================================================================================= // class : BuildGUI_EdgeDlg() -// purpose : Constructs a BuildGUI_EdgeDlg which is a child of 'parent', with the +// purpose : Constructs a BuildGUI_EdgeDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BuildGUI_EdgeDlg::BuildGUI_EdgeDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BuildGUI_EdgeDlg::BuildGUI_EdgeDlg (GeometryGUI* theGeometryGUI, QWidget* parent) + : GEOMBase_Skeleton(theGeometryGUI, parent) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_BUILD_EDGE"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_BUILD_EDGE"))); + QPixmap image1 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_EDGE_TITLE")); + setWindowTitle(tr("GEOM_EDGE_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_EDGE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_EDGE")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); + + GroupPoints = new DlgRef_2Sel(centralWidget()); - GroupPoints = new DlgRef_2Sel_QTD(this, "GroupPoints"); GroupPoints->GroupBox1->setTitle(tr("GEOM_POINTS")); - GroupPoints->TextLabel1->setText(tr("GEOM_POINT_I").arg("1")); - GroupPoints->TextLabel2->setText(tr("GEOM_POINT_I").arg("2")); - GroupPoints->PushButton1->setPixmap(image1); - GroupPoints->PushButton2->setPixmap(image1); - - GroupPoints->LineEdit1->setReadOnly( true ); - GroupPoints->LineEdit2->setReadOnly( true ); + GroupPoints->TextLabel1->setText(tr("GEOM_POINT_I").arg(1)); + GroupPoints->TextLabel2->setText(tr("GEOM_POINT_I").arg(2)); + GroupPoints->PushButton1->setIcon(image1); + GroupPoints->PushButton2->setIcon(image1); - Layout1->addWidget(GroupPoints, 2, 0); + GroupPoints->LineEdit1->setReadOnly(true); + GroupPoints->LineEdit2->setReadOnly(true); + + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); /***************************************************************/ setHelpFileName("create_edge_page.html"); - /* Initialisations */ + // Initialisation Init(); } - //================================================================================= // function : ~BuildGUI_EdgeDlg() // purpose : Destroys the object and frees any allocated resources //================================================================================= BuildGUI_EdgeDlg::~BuildGUI_EdgeDlg() { - // no need to delete child widgets, Qt does it all for us + // no need to delete child widgets, Qt does it all for us } - //================================================================================= // function : Init() // purpose : //================================================================================= void BuildGUI_EdgeDlg::Init() { - /* init variables */ - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit1->setReadOnly( true ); - GroupPoints->LineEdit2->setReadOnly( true ); + // init variables + GroupPoints->LineEdit1->setReadOnly(true); + GroupPoints->LineEdit2->setReadOnly(true); + GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit2->setText(""); + myPoint1 = myPoint2 = GEOM::GEOM_Object::_nil(); myOkPoint1 = myOkPoint2 = false; - globalSelection( GEOM_POINT ); - - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; - initName( tr( "GEOM_EDGE") ); + initName(tr("GEOM_EDGE")); + + GroupPoints->PushButton1->click(); + SelectionIntoArgument(); } - //================================================================================= // function : ClickOnOk() // purpose : //================================================================================= void BuildGUI_EdgeDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool BuildGUI_EdgeDlg::ClickOnApply() { - if ( !onAccept() ) + if (!onAccept()) return false; initName(); + // activate selection and connect selection manager + GroupPoints->PushButton1->click(); return true; } - //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection as changed or other case +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void BuildGUI_EdgeDlg::SelectionIntoArgument() { erasePreview(); myEditCurrentArgument->setText(""); - - if(IObjectCount() != 1) { - if(myEditCurrentArgument == GroupPoints->LineEdit1) + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) { + if (myEditCurrentArgument == GroupPoints->LineEdit1) myOkPoint1 = false; - else if(myEditCurrentArgument == GroupPoints->LineEdit2) + else if (myEditCurrentArgument == GroupPoints->LineEdit2) myOkPoint2 = false; return; } - + // nbSel == 1 Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult ); - - if(!testResult) + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + if (!testResult || aSelectedObject->_is_nil()) return; - if(myEditCurrentArgument == GroupPoints->LineEdit1) { + myEditCurrentArgument->setText(GEOMBase::GetName(aSelectedObject)); + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + if (myEditCurrentArgument == GroupPoints->LineEdit1) { myPoint1 = aSelectedObject; myOkPoint1 = true; + if (!myOkPoint2) + GroupPoints->PushButton2->click(); } - else if(myEditCurrentArgument == GroupPoints->LineEdit2) { + else if (myEditCurrentArgument == GroupPoints->LineEdit2) { myPoint2 = aSelectedObject; myOkPoint2 = true; + if (!myOkPoint1) + GroupPoints->PushButton1->click(); } - - myEditCurrentArgument->setText( GEOMBase::GetName( aSelectedObject ) ); - + displayPreview(); } +//================================================================================= +// function : SetEditCurrentArgument() +// purpose : +//================================================================================= +void BuildGUI_EdgeDlg::SetEditCurrentArgument() +{ + QPushButton* send = (QPushButton*)sender(); + //globalSelection();//?? + + if (send == GroupPoints->PushButton1) { + myEditCurrentArgument = GroupPoints->LineEdit1; + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit2->setEnabled(false); + } + else if (send == GroupPoints->PushButton2) { + myEditCurrentArgument = GroupPoints->LineEdit2; + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + } + + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + globalSelection(GEOM_POINT); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); +} //================================================================================= // function : LineEditReturnPressed() @@ -196,38 +239,12 @@ void BuildGUI_EdgeDlg::SelectionIntoArgument() void BuildGUI_EdgeDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if(send == GroupPoints->LineEdit1 || send == GroupPoints->LineEdit2) - { - myEditCurrentArgument = send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } -} - - -//================================================================================= -// function : SetEditCurrentArgument() -// purpose : -//================================================================================= -void BuildGUI_EdgeDlg::SetEditCurrentArgument() -{ - - QPushButton* send = (QPushButton*)sender(); - globalSelection(); - - if(send == GroupPoints->PushButton1) { - myEditCurrentArgument = GroupPoints->LineEdit1; - globalSelection( GEOM_POINT ); + if (send == GroupPoints->LineEdit1 || send == GroupPoints->LineEdit2) { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); } - else if(send == GroupPoints->PushButton2) { - myEditCurrentArgument = GroupPoints->LineEdit2; - globalSelection( GEOM_POINT ); - } - - myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); } - //================================================================================= // function : ActivateThisDialog() // purpose : @@ -235,20 +252,20 @@ void BuildGUI_EdgeDlg::SetEditCurrentArgument() void BuildGUI_EdgeDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; - globalSelection( GEOM_POINT ); + + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + displayPreview(); } - //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void BuildGUI_EdgeDlg::enterEvent(QEvent* e) +void BuildGUI_EdgeDlg::enterEvent (QEvent*) { - if ( !GroupConstructors->isEnabled() ) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } @@ -258,14 +275,14 @@ void BuildGUI_EdgeDlg::enterEvent(QEvent* e) //================================================================================= GEOM::GEOM_IOperations_ptr BuildGUI_EdgeDlg::createOperation() { - return getGeomEngine()->GetIShapesOperations( getStudyId() ); + return getGeomEngine()->GetIShapesOperations(getStudyId()); } //================================================================================= // function : isValid // purpose : //================================================================================= -bool BuildGUI_EdgeDlg::isValid( QString& ) +bool BuildGUI_EdgeDlg::isValid (QString&) { return myOkPoint1 && myOkPoint2; } @@ -274,14 +291,14 @@ bool BuildGUI_EdgeDlg::isValid( QString& ) // function : execute // purpose : //================================================================================= -bool BuildGUI_EdgeDlg::execute( ObjectList& objects ) +bool BuildGUI_EdgeDlg::execute (ObjectList& objects) { GEOM::GEOM_Object_var anObj; - anObj = GEOM::GEOM_IShapesOperations::_narrow( getOperation() )->MakeEdge( myPoint1, myPoint2 ); + anObj = GEOM::GEOM_IShapesOperations::_narrow(getOperation())->MakeEdge(myPoint1, myPoint2); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); return true; } diff --git a/src/BuildGUI/BuildGUI_EdgeDlg.h b/src/BuildGUI/BuildGUI_EdgeDlg.h index 3a7b7b2b5..17dda7703 100644 --- a/src/BuildGUI/BuildGUI_EdgeDlg.h +++ b/src/BuildGUI/BuildGUI_EdgeDlg.h @@ -1,74 +1,71 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : BuildGUI_EdgeDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BuildGUI_EdgeDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef BUILDGUI_EDGEDLG_H +#define BUILDGUI_EDGEDLG_H -#ifndef DIALOGBOX_EDGE_H -#define DIALOGBOX_EDGE_H +#include -#include "GEOM_BuildGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel_QTD.h" +class DlgRef_2Sel; //================================================================================= // class : BuildGUI_EdgeDlg // purpose : //================================================================================= -class GEOM_BUILDGUI_EXPORT BuildGUI_EdgeDlg : public GEOMBase_Skeleton +class BuildGUI_EdgeDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BuildGUI_EdgeDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~BuildGUI_EdgeDlg(); + BuildGUI_EdgeDlg( GeometryGUI*, QWidget* = 0 ); + ~BuildGUI_EdgeDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& msg ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); private: - void Init(); - void enterEvent(QEvent* e); - - GEOM::GEOM_Object_var myPoint1, myPoint2; /* Points containing the edge */ - bool myOkPoint1; /* true when myPoint is defined */ - bool myOkPoint2; - - DlgRef_2Sel_QTD* GroupPoints; + void Init(); + void enterEvent( QEvent* ); + +private: + GEOM::GEOM_Object_var myPoint1, myPoint2; /* Points containing the edge */ + bool myOkPoint1; /* true when myPoint is defined */ + bool myOkPoint2; + + DlgRef_2Sel* GroupPoints; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); }; -#endif // DIALOGBOX_EDGE_H +#endif // BUILDGUI_EDGEDLG_H diff --git a/src/BuildGUI/BuildGUI_FaceDlg.cxx b/src/BuildGUI/BuildGUI_FaceDlg.cxx index a008a721f..e1adb30c6 100644 --- a/src/BuildGUI/BuildGUI_FaceDlg.cxx +++ b/src/BuildGUI/BuildGUI_FaceDlg.cxx @@ -1,44 +1,41 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BuildGUI_FaceDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : BuildGUI_FaceDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "BuildGUI_FaceDlg.h" -#include "GEOMImpl_Types.hxx" -#include "TColStd_MapOfInteger.hxx" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include -//Qt includes -#include -#include +#include +#include +#include -using namespace std; +#include +#include +#include +#include //================================================================================= // class : BuildGUI_FaceDlg() @@ -47,29 +44,32 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BuildGUI_FaceDlg::BuildGUI_FaceDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BuildGUI_FaceDlg::BuildGUI_FaceDlg( GeometryGUI* theGeometryGUI, QWidget* parent ) + : GEOMBase_Skeleton( theGeometryGUI, parent ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_BUILD_FACE"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_BUILD_FACE" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_FACE_TITLE")); + setWindowTitle( tr( "GEOM_FACE_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_FACE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_FACE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupWire = new DlgRef_1Sel1Check_QTD(this, "GroupWire"); - GroupWire->GroupBox1->setTitle(tr("GEOM_FACE_FFW")); - GroupWire->TextLabel1->setText(tr("GEOM_OBJECTS")); - GroupWire->CheckButton1->setText(tr("GEOM_FACE_OPT")); - GroupWire->PushButton1->setPixmap(image1); + GroupWire = new DlgRef_1Sel1Check( centralWidget() ); - Layout1->addWidget(GroupWire, 2, 0); + GroupWire->GroupBox1->setTitle( tr( "GEOM_FACE_FFW" ) ); + GroupWire->TextLabel1->setText( tr( "GEOM_OBJECTS" ) ); + GroupWire->CheckButton1->setText( tr( "GEOM_FACE_OPT" ) ); + GroupWire->PushButton1->setIcon( image1 ); + + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupWire ); /***************************************************************/ setHelpFileName("create_face_page.html"); @@ -99,7 +99,7 @@ void BuildGUI_FaceDlg::Init() myEditCurrentArgument = GroupWire->LineEdit1; GroupWire->LineEdit1->setReadOnly( true ); - GroupWire->CheckButton1->setChecked(TRUE); + GroupWire->CheckButton1->setChecked( true ); TColStd_MapOfInteger aMap; aMap.Add( GEOM_EDGE ); @@ -107,14 +107,14 @@ void BuildGUI_FaceDlg::Init() globalSelection( aMap ); /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupWire->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupWire->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + connect( GroupWire->LineEdit1, SIGNAL( returnPressed()), this, SLOT( LineEditReturnPressed() ) ); + connect( GroupWire->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); - initName(tr("GEOM_FACE")); + initName( tr( "GEOM_FACE" ) ); } @@ -149,24 +149,25 @@ bool BuildGUI_FaceDlg::ClickOnApply() //================================================================================= void BuildGUI_FaceDlg::SelectionIntoArgument() { - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); QString aName; - int aNbSel = GEOMBase::GetNameOfSelectedIObjects(selectedIO(), aName); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + int aNbSel = GEOMBase::GetNameOfSelectedIObjects(aSelList, aName); - if(aNbSel < 1) - { - myWires.length(0); - return; - } - - GEOMBase::ConvertListOfIOInListOfGO(selectedIO(), myWires); - if (!myWires.length()) + if ( aNbSel < 1) { + myWires.length(0); return; - if(aNbSel != 1) - aName = tr("%1_objects").arg(aNbSel); + } - myEditCurrentArgument->setText( aName ); + GEOMBase::ConvertListOfIOInListOfGO(aSelList, myWires); + if ( !myWires.length() ) + return; + if ( aNbSel != 1 ) + aName = tr( "%1_objects" ).arg( aNbSel ); myEditCurrentArgument->setText( aName ); } @@ -179,7 +180,7 @@ void BuildGUI_FaceDlg::SelectionIntoArgument() void BuildGUI_FaceDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if (send != GroupWire->PushButton1) + if ( send != GroupWire->PushButton1 ) return; TColStd_MapOfInteger aMap; @@ -201,8 +202,8 @@ void BuildGUI_FaceDlg::SetEditCurrentArgument() void BuildGUI_FaceDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); TColStd_MapOfInteger aMap; aMap.Add( GEOM_EDGE ); aMap.Add( GEOM_WIRE ); @@ -214,9 +215,9 @@ void BuildGUI_FaceDlg::ActivateThisDialog() // function : enterEvent() // purpose : //================================================================================= -void BuildGUI_FaceDlg::enterEvent(QEvent* e) +void BuildGUI_FaceDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } @@ -235,7 +236,7 @@ GEOM::GEOM_IOperations_ptr BuildGUI_FaceDlg::createOperation() //================================================================================= bool BuildGUI_FaceDlg::isValid( QString& ) { - return (myWires.length() != 0); + return ( myWires.length() != 0 ); } //================================================================================= diff --git a/src/BuildGUI/BuildGUI_FaceDlg.h b/src/BuildGUI/BuildGUI_FaceDlg.h index 734cbc2f3..12bd7d713 100644 --- a/src/BuildGUI/BuildGUI_FaceDlg.h +++ b/src/BuildGUI/BuildGUI_FaceDlg.h @@ -1,71 +1,68 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : BuildGUI_FaceDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BuildGUI_FaceDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef BUILDGUI_FACEDLG_H +#define BUILDGUI_FACEDLG_H -#ifndef DIALOGBOX_FACE_H -#define DIALOGBOX_FACE_H +#include -#include "GEOM_BuildGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel1Check_QTD.h" +class DlgRef_1Sel1Check; //================================================================================= // class : BuildGUI_FaceDlg // purpose : //================================================================================= -class GEOM_BUILDGUI_EXPORT BuildGUI_FaceDlg : public GEOMBase_Skeleton +class BuildGUI_FaceDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BuildGUI_FaceDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~BuildGUI_FaceDlg(); + BuildGUI_FaceDlg( GeometryGUI*, QWidget* = 0 ); + ~BuildGUI_FaceDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& msg ); - virtual bool execute( ObjectList& objects ); - + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + private: - void Init(); - void enterEvent(QEvent* e); - - GEOM::ListOfGO myWires; - - DlgRef_1Sel1Check_QTD* GroupWire; + void Init(); + void enterEvent( QEvent* ); + +private: + GEOM::ListOfGO myWires; + + DlgRef_1Sel1Check* GroupWire; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); }; -#endif // DIALOGBOX_FACE_H +#endif // BUILDGUI_FACEDLG_H diff --git a/src/BuildGUI/BuildGUI_ShellDlg.cxx b/src/BuildGUI/BuildGUI_ShellDlg.cxx index 99c99f03f..bd1cb125a 100644 --- a/src/BuildGUI/BuildGUI_ShellDlg.cxx +++ b/src/BuildGUI/BuildGUI_ShellDlg.cxx @@ -1,41 +1,42 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BuildGUI_ShellDlg.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// File : BuildGUI_ShellDlg.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "BuildGUI_ShellDlg.h" -#include "GEOMImpl_Types.hxx" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include -#include "TColStd_MapOfInteger.hxx" +#include -#include +#include +#include +#include +#include + +#include //================================================================================= // class : BuildGUI_ShellDlg() @@ -44,29 +45,32 @@ // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BuildGUI_ShellDlg::BuildGUI_ShellDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BuildGUI_ShellDlg::BuildGUI_ShellDlg( GeometryGUI* theGeometryGUI, QWidget* parent ) + : GEOMBase_Skeleton( theGeometryGUI, parent ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_BUILD_SHELL"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_BUILD_SHELL" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_SHELL_TITLE")); + setWindowTitle( tr( "GEOM_SHELL_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_SHELL")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_SHELL" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupShell = new DlgRef_1Sel_QTD(this, "GroupShell"); - GroupShell->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); - GroupShell->TextLabel1->setText(tr("GEOM_OBJECTS")); - GroupShell->PushButton1->setPixmap(image1); + GroupShell = new DlgRef_1Sel( centralWidget() ); + + GroupShell->GroupBox1->setTitle( tr( "GEOM_ARGUMENTS" ) ); + GroupShell->TextLabel1->setText( tr( "GEOM_OBJECTS" ) ); + GroupShell->PushButton1->setIcon( image1 ); GroupShell->LineEdit1->setReadOnly( true ); - Layout1->addWidget(GroupShell, 2, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupShell ); /***************************************************************/ setHelpFileName("create_shell_page.html"); @@ -99,20 +103,25 @@ void BuildGUI_ShellDlg::Init() myOkFacesAndShells = false; TColStd_MapOfInteger aMap; - aMap.Add(GEOM_SHELL); - aMap.Add(GEOM_FACE); - globalSelection( aMap ); + aMap.Add( GEOM_SHELL ); + aMap.Add( GEOM_FACE ); + aMap.Add( GEOM_COMPOUNDFILTER ); + + QList aSubShapes; + aSubShapes.append( GEOM_FACE ); + globalSelection( aMap, aSubShapes ); + /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupShell->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect( GroupShell->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); - initName(tr("GEOM_SHELL")); + initName( tr( "GEOM_SHELL" ) ); } @@ -150,14 +159,18 @@ void BuildGUI_ShellDlg::SelectionIntoArgument() myEditCurrentArgument->setText( "" ); QString aString; + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + myOkFacesAndShells = false; - int nbSel = GEOMBase::GetNameOfSelectedIObjects( selectedIO(), aString, true ); + int nbSel = GEOMBase::GetNameOfSelectedIObjects(aSelList, aString, true); if ( nbSel == 0 ) return; if ( nbSel != 1 ) aString = QString( "%1_objects ").arg( nbSel ); - GEOMBase::ConvertListOfIOInListOfGO( selectedIO(), myFacesAndShells, true ); + GEOMBase::ConvertListOfIOInListOfGO(aSelList, myFacesAndShells, true); if ( !myFacesAndShells.length() ) return; @@ -173,13 +186,18 @@ void BuildGUI_ShellDlg::SelectionIntoArgument() void BuildGUI_ShellDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if (send != GroupShell->PushButton1) + if ( send != GroupShell->PushButton1 ) return; TColStd_MapOfInteger aMap; - aMap.Add(GEOM_SHELL); - aMap.Add(GEOM_FACE); - globalSelection( aMap ); + aMap.Add( GEOM_SHELL ); + aMap.Add( GEOM_FACE ); + aMap.Add( GEOM_COMPOUNDFILTER ); + + QList aSubShapes; + aSubShapes.append( GEOM_FACE ); + globalSelection( aMap, aSubShapes ); + myEditCurrentArgument = GroupShell->LineEdit1; myEditCurrentArgument->setFocus(); @@ -194,12 +212,16 @@ void BuildGUI_ShellDlg::SetEditCurrentArgument() void BuildGUI_ShellDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); TColStd_MapOfInteger aMap; - aMap.Add(GEOM_SHELL); - aMap.Add(GEOM_FACE); - globalSelection( aMap ); + aMap.Add( GEOM_SHELL ); + aMap.Add( GEOM_FACE ); + aMap.Add( GEOM_COMPOUNDFILTER ); + + QList aSubShapes; + aSubShapes.append( GEOM_FACE ); + globalSelection( aMap, aSubShapes ); } @@ -207,9 +229,9 @@ void BuildGUI_ShellDlg::ActivateThisDialog() // function : enterEvent() // purpose : //================================================================================= -void BuildGUI_ShellDlg::enterEvent(QEvent* e) +void BuildGUI_ShellDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } diff --git a/src/BuildGUI/BuildGUI_ShellDlg.h b/src/BuildGUI/BuildGUI_ShellDlg.h index 8c1132468..d611afe24 100644 --- a/src/BuildGUI/BuildGUI_ShellDlg.h +++ b/src/BuildGUI/BuildGUI_ShellDlg.h @@ -1,72 +1,69 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : BuildGUI_ShellDlg.h -// Author : Damien COQUERET -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BuildGUI_ShellDlg.h +// Author : Damien COQUERET, Open CASCADE S.A.S. +// +#ifndef BUILDGUI_SHELLDLG_H +#define BUILDGUI_SHELLDLG_H -#ifndef DIALOGBOX_SHELL_H -#define DIALOGBOX_SHELL_H +#include -#include "GEOM_BuildGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel_QTD.h" +class DlgRef_1Sel; //================================================================================= // class : BuildGUI_ShellDlg // purpose : //================================================================================= -class GEOM_BUILDGUI_EXPORT BuildGUI_ShellDlg : public GEOMBase_Skeleton +class BuildGUI_ShellDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BuildGUI_ShellDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~BuildGUI_ShellDlg(); + BuildGUI_ShellDlg( GeometryGUI*, QWidget* = 0 ); + ~BuildGUI_ShellDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& msg ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); private: - void Init(); - void enterEvent(QEvent * e); + void Init(); + void enterEvent( QEvent* ); - GEOM::ListOfGO myFacesAndShells; - bool myOkFacesAndShells; /* to check when arguments is defined */ - - DlgRef_1Sel_QTD* GroupShell; +private: + GEOM::ListOfGO myFacesAndShells; + bool myOkFacesAndShells;/* to check when arguments is defined */ + + DlgRef_1Sel* GroupShell; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void SetEditCurrentArgument(); - void SelectionIntoArgument(); - void ActivateThisDialog(); + void ClickOnOk(); + bool ClickOnApply(); + void SetEditCurrentArgument(); + void SelectionIntoArgument(); + void ActivateThisDialog(); }; -#endif // DIALOGBOX_SHELL_H +#endif // BUILDGUI_SHELLDLG_H diff --git a/src/BuildGUI/BuildGUI_SolidDlg.cxx b/src/BuildGUI/BuildGUI_SolidDlg.cxx index 0d0bcb075..05b62c1a2 100644 --- a/src/BuildGUI/BuildGUI_SolidDlg.cxx +++ b/src/BuildGUI/BuildGUI_SolidDlg.cxx @@ -1,41 +1,41 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BuildGUI_SolidDlg.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// File : BuildGUI_SolidDlg.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "BuildGUI_SolidDlg.h" -#include "GEOMImpl_Types.hxx" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include -//Qt includes -#include -#include +#include + +#include +#include +#include +#include +#include //================================================================================= // class : BuildGUI_SolidDlg() @@ -44,30 +44,33 @@ // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BuildGUI_SolidDlg::BuildGUI_SolidDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BuildGUI_SolidDlg::BuildGUI_SolidDlg( GeometryGUI* theGeometryGUI, QWidget* parent ) + : GEOMBase_Skeleton( theGeometryGUI, parent ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_BUILD_SOLID"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_BUILD_SOLID" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_SOLID_TITLE")); + setWindowTitle( tr( "GEOM_SOLID_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_SOLID")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_SOLID" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupSolid = new DlgRef_1Sel1Check_QTD(this, "GroupSolid"); - GroupSolid->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); - GroupSolid->TextLabel1->setText(tr("GEOM_OBJECTS")); - GroupSolid->CheckButton1->setText(tr("GEOM_CREATE_SINGLE_SOLID")); - GroupSolid->PushButton1->setPixmap(image1); + GroupSolid = new DlgRef_1Sel1Check( centralWidget() ); + + GroupSolid->GroupBox1->setTitle( tr( "GEOM_ARGUMENTS" ) ); + GroupSolid->TextLabel1->setText( tr( "GEOM_OBJECTS" ) ); + GroupSolid->CheckButton1->setText( tr( "GEOM_CREATE_SINGLE_SOLID" ) ); + GroupSolid->PushButton1->setIcon( image1 ); GroupSolid->LineEdit1->setReadOnly( true ); - Layout1->addWidget(GroupSolid, 2, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupSolid ); /***************************************************************/ setHelpFileName("create_solid_page.html"); @@ -83,7 +86,7 @@ BuildGUI_SolidDlg::BuildGUI_SolidDlg(GeometryGUI* theGeometryGUI, QWidget* paren //================================================================================= BuildGUI_SolidDlg::~BuildGUI_SolidDlg() { - // no need to delete child widgets, Qt does it all for us + // no need to delete child widgets, Qt does it all for us } @@ -103,16 +106,16 @@ void BuildGUI_SolidDlg::Init() globalSelection( GEOM_SHELL ); /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupSolid->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupSolid->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(EnableNameField(bool))); + connect( GroupSolid->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupSolid->CheckButton1, SIGNAL( toggled( bool ) ), this, SLOT( EnableNameField( bool ) ) ); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); - initName(tr("GEOM_SOLID")); + initName( tr( "GEOM_SOLID" ) ); } @@ -132,6 +135,17 @@ void BuildGUI_SolidDlg::ClickOnOk() //================================================================================= bool BuildGUI_SolidDlg::ClickOnApply() { + for ( int i = 0, n = myShells.length(); i< n; i++ ) { + if ( !isClosed(i)) { + QString aName = GEOMBase::GetName( myShells[i] ); + SUIT_MessageBox::warning( (QWidget*)SUIT_Session::session()->activeApplication()->desktop(), + QObject::tr("WRN_WARNING"), + QObject::tr("WRN_SHAPE_UNCLOSED").arg(aName) , + QObject::tr("BUT_OK") ); + return false; + } + } + if ( !onAccept() ) return false; @@ -146,21 +160,25 @@ bool BuildGUI_SolidDlg::ClickOnApply() //================================================================================= void BuildGUI_SolidDlg::SelectionIntoArgument() { - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); QString aString = ""; + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + myOkShells = false; - int nbSel = GEOMBase::GetNameOfSelectedIObjects(selectedIO(), aString); - if (nbSel == 0) + int nbSel = GEOMBase::GetNameOfSelectedIObjects(aSelList, aString); + if ( nbSel == 0 ) return; - if(nbSel != 1) - aString = tr("%1_objects").arg(nbSel); + if ( nbSel != 1 ) + aString = tr( "%1_objects" ).arg( nbSel ); - GEOMBase::ConvertListOfIOInListOfGO(selectedIO(), myShells); - if (!myShells.length()) + GEOMBase::ConvertListOfIOInListOfGO(aSelList, myShells); + if ( !myShells.length() ) return; - myEditCurrentArgument->setText(aString); + myEditCurrentArgument->setText( aString ); myOkShells = true; } @@ -171,7 +189,7 @@ void BuildGUI_SolidDlg::SelectionIntoArgument() void BuildGUI_SolidDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if(send != GroupSolid->PushButton1) + if ( send != GroupSolid->PushButton1 ) return; globalSelection( GEOM_SHELL ); @@ -189,8 +207,8 @@ void BuildGUI_SolidDlg::SetEditCurrentArgument() void BuildGUI_SolidDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); globalSelection( GEOM_SHELL ); } @@ -199,9 +217,9 @@ void BuildGUI_SolidDlg::ActivateThisDialog() // function : enterEvent() // purpose : //================================================================================= -void BuildGUI_SolidDlg::enterEvent(QEvent* e) +void BuildGUI_SolidDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } @@ -210,9 +228,9 @@ void BuildGUI_SolidDlg::enterEvent(QEvent* e) // function : EnableNameField() // purpose : //================================================================================= -void BuildGUI_SolidDlg::EnableNameField(bool toEnable) +void BuildGUI_SolidDlg::EnableNameField( bool toEnable ) { - this->GroupBoxName->setEnabled(toEnable); + mainFrame()->GroupBoxName->setEnabled( toEnable ); } //================================================================================= @@ -233,6 +251,42 @@ bool BuildGUI_SolidDlg::isValid( QString& ) return myOkShells; } +//================================================================================= +// function : isClosed +// purpose : Check the object 'i' in myShells list is closed or unclosed +//================================================================================= +bool BuildGUI_SolidDlg::isClosed(int i) +{ + GEOM::GEOM_Object_var aShape = myShells[i]; + GEOM::GEOM_IKindOfShape::shape_kind aKind; + GEOM::ListOfLong_var anInts; + GEOM::ListOfDouble_var aDbls; + + if (aShape->_is_nil()) { + MESSAGE ("Shape is NULL!!!"); + return false; + } + + GEOM::GEOM_IMeasureOperations_ptr anOp = myGeomGUI->GetGeomGen()->GetIMeasureOperations( getStudyId() ); + + // GEOM::GEOM_IMeasureOperations_var anOp = GEOM::GEOM_IMeasureOperations::_narrow( getOperation() ); + + // Detect kind of shape and parameters + aKind = anOp->KindOfShape(aShape, anInts, aDbls); + + if ( !anOp->IsDone() ) { + MESSAGE ("KindOfShape Operation is NOT DONE!!!"); + return false; + } + + if ( anInts[0] == 1 ) + return true; + else if ( anInts[0] == 2 ) + return false; + + return false; +} + //================================================================================= // function : execute // purpose : @@ -241,18 +295,15 @@ bool BuildGUI_SolidDlg::execute( ObjectList& objects ) { bool toCreateSingleSolid = GroupSolid->CheckButton1->isChecked(); - if ( toCreateSingleSolid ) - { + if ( toCreateSingleSolid ) { GEOM::GEOM_Object_var anObj = GEOM::GEOM_IShapesOperations::_narrow( getOperation() )->MakeSolidShells( myShells ); if ( !anObj->_is_nil() ) objects.push_back( anObj._retn() ); } - else - { - for ( int i = 0, n = myShells.length(); i< n; i++ ) - { + else { + for ( int i = 0, n = myShells.length(); i< n; i++ ) { GEOM::GEOM_Object_var anObj = GEOM::GEOM_IShapesOperations::_narrow( getOperation() )->MakeSolidShell( myShells[ i ] ); diff --git a/src/BuildGUI/BuildGUI_SolidDlg.h b/src/BuildGUI/BuildGUI_SolidDlg.h index 41982f4a2..3236ad4aa 100644 --- a/src/BuildGUI/BuildGUI_SolidDlg.h +++ b/src/BuildGUI/BuildGUI_SolidDlg.h @@ -1,74 +1,72 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : BuildGUI_SolidDlg.h -// Author : Damien COQUERET -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BuildGUI_SolidDlg.h +// Author : Damien COQUERET, Open CASCADE S.A.S. +// +#ifndef BUILDGUI_SOLIDDLG_H +#define BUILDGUI_SOLIDDLG_H -#ifndef DIALOGBOX_SOLID_H -#define DIALOGBOX_SOLID_H +#include -#include "GEOM_BuildGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel1Check_QTD.h" +class DlgRef_1Sel1Check; //================================================================================= // class : BuildGUI_SolidDlg // purpose : //================================================================================= -class GEOM_BUILDGUI_EXPORT BuildGUI_SolidDlg : public GEOMBase_Skeleton +class BuildGUI_SolidDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BuildGUI_SolidDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~BuildGUI_SolidDlg(); + BuildGUI_SolidDlg( GeometryGUI*, QWidget* = 0 ); + ~BuildGUI_SolidDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& msg ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); private: - void Init(); - void enterEvent(QEvent * e); + void Init(); + bool isClosed(int i); + void enterEvent( QEvent* ); - GEOM::ListOfGO myShells; - bool myOkShells; /* to check when arguments is defined and - all shells are closed */ +private: + GEOM::ListOfGO myShells; + bool myOkShells; /* to check when arguments is defined and + all shells are closed */ - DlgRef_1Sel1Check_QTD* GroupSolid; + DlgRef_1Sel1Check* GroupSolid; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void SetEditCurrentArgument(); - void SelectionIntoArgument(); - void ActivateThisDialog(); - void EnableNameField(bool toEnable); + void ClickOnOk(); + bool ClickOnApply(); + void SetEditCurrentArgument(); + void SelectionIntoArgument(); + void ActivateThisDialog(); + void EnableNameField( bool ); }; -#endif // DIALOGBOX_SOLID_H +#endif // BUILDGUI_SOLIDDLG_H diff --git a/src/BuildGUI/BuildGUI_WireDlg.cxx b/src/BuildGUI/BuildGUI_WireDlg.cxx index 6bf55259c..05326e457 100644 --- a/src/BuildGUI/BuildGUI_WireDlg.cxx +++ b/src/BuildGUI/BuildGUI_WireDlg.cxx @@ -1,41 +1,42 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BuildGUI_WireDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : BuildGUI_WireDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "BuildGUI_WireDlg.h" -#include "GEOMImpl_Types.hxx" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include -#include "TColStd_MapOfInteger.hxx" +#include +#include +#include -#include +#include +#include +#include +#include + +#include //================================================================================= // class : BuildGUI_WireDlg() @@ -44,32 +45,35 @@ // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -BuildGUI_WireDlg::BuildGUI_WireDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +BuildGUI_WireDlg::BuildGUI_WireDlg( GeometryGUI* theGeometryGUI, QWidget* parent ) + : GEOMBase_Skeleton( theGeometryGUI, parent ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_BUILD_WIRE"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_BUILD_WIRE" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_WIRE_TITLE")); + setWindowTitle( tr( "GEOM_WIRE_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_WIRE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_WIRE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_1Sel_QTD(this, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("GEOM_WIRE_CONNECT")); - GroupPoints->TextLabel1->setText(tr("GEOM_OBJECTS")); - GroupPoints->PushButton1->setPixmap(image1); + GroupPoints = new DlgRef_1Sel( centralWidget() ); + + GroupPoints->GroupBox1->setTitle( tr( "GEOM_WIRE_CONNECT" ) ); + GroupPoints->TextLabel1->setText( tr( "GEOM_OBJECTS" ) ); + GroupPoints->PushButton1->setIcon( image1 ); GroupPoints->LineEdit1->setReadOnly( true ); - Layout1->addWidget(GroupPoints, 2, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); /***************************************************************/ - setHelpFileName("create_wire_page.html"); + setHelpFileName( "create_wire_page.html" ); /* Initialisations */ Init(); @@ -99,18 +103,18 @@ void BuildGUI_WireDlg::Init() myOkEdgesAndWires = false; TColStd_MapOfInteger aMap; - aMap.Add(GEOM_WIRE); - aMap.Add(GEOM_EDGE); + aMap.Add( GEOM_WIRE ); + aMap.Add( GEOM_EDGE ); globalSelection( aMap ); /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); - initName(tr("GEOM_WIRE")); + initName( tr( "GEOM_WIRE" ) ); } @@ -145,22 +149,26 @@ bool BuildGUI_WireDlg::ClickOnApply() //================================================================================= void BuildGUI_WireDlg::SelectionIntoArgument() { - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); QString aString = ""; /* name of selection */ + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + myOkEdgesAndWires = false; - int nbSel = GEOMBase::GetNameOfSelectedIObjects(selectedIO(), aString); + int nbSel = GEOMBase::GetNameOfSelectedIObjects(aSelList, aString); - if(nbSel == 0) + if ( nbSel == 0 ) return; - if(nbSel != 1) - aString = tr("%1_objects").arg(nbSel); + if ( nbSel != 1 ) + aString = tr( "%1_objects" ).arg( nbSel ); - GEOMBase::ConvertListOfIOInListOfGO(selectedIO(), myEdgesAndWires); - if (!myEdgesAndWires.length()) + GEOMBase::ConvertListOfIOInListOfGO(aSelList, myEdgesAndWires); + if ( !myEdgesAndWires.length() ) return; - myEditCurrentArgument->setText(aString); + myEditCurrentArgument->setText( aString ); myOkEdgesAndWires = true; } @@ -172,12 +180,12 @@ void BuildGUI_WireDlg::SelectionIntoArgument() void BuildGUI_WireDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if (send != GroupPoints->PushButton1) + if ( send != GroupPoints->PushButton1 ) return; TColStd_MapOfInteger aMap; - aMap.Add(GEOM_WIRE); - aMap.Add(GEOM_EDGE); + aMap.Add( GEOM_WIRE ); + aMap.Add( GEOM_EDGE ); globalSelection( aMap ); myEditCurrentArgument = GroupPoints->LineEdit1; @@ -193,11 +201,11 @@ void BuildGUI_WireDlg::SetEditCurrentArgument() void BuildGUI_WireDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); TColStd_MapOfInteger aMap; - aMap.Add(GEOM_WIRE); - aMap.Add(GEOM_EDGE); + aMap.Add( GEOM_WIRE ); + aMap.Add( GEOM_EDGE ); globalSelection( aMap ); } @@ -206,9 +214,9 @@ void BuildGUI_WireDlg::ActivateThisDialog() // function : enterEvent() // purpose : //================================================================================= -void BuildGUI_WireDlg::enterEvent(QEvent* e) +void BuildGUI_WireDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } diff --git a/src/BuildGUI/BuildGUI_WireDlg.h b/src/BuildGUI/BuildGUI_WireDlg.h index ecfcc2c14..616df0246 100644 --- a/src/BuildGUI/BuildGUI_WireDlg.h +++ b/src/BuildGUI/BuildGUI_WireDlg.h @@ -1,72 +1,69 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : BuildGUI_WireDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BuildGUI_WireDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef BUILDGUI_WIREDLG_H +#define BUILDGUI_WIREDLG_H -#ifndef DIALOGBOX_WIRE_H -#define DIALOGBOX_WIRE_H +#include -#include "GEOM_BuildGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel_QTD.h" +class DlgRef_1Sel; //================================================================================= // class : BuildGUI_WireDlg // purpose : //================================================================================= -class GEOM_BUILDGUI_EXPORT BuildGUI_WireDlg : public GEOMBase_Skeleton +class BuildGUI_WireDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - BuildGUI_WireDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~BuildGUI_WireDlg(); + BuildGUI_WireDlg( GeometryGUI*, QWidget* = 0 ); + ~BuildGUI_WireDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& msg ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); private: - void Init(); - void enterEvent(QEvent* e); + void Init(); + void enterEvent( QEvent* ); - GEOM::ListOfGO myEdgesAndWires; - bool myOkEdgesAndWires; /* to check when arguments is defined */ - - DlgRef_1Sel_QTD* GroupPoints; +private: + GEOM::ListOfGO myEdgesAndWires; + bool myOkEdgesAndWires; /* to check when arguments is defined */ + + DlgRef_1Sel* GroupPoints; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); }; -#endif // DIALOGBOX_WIRE_H +#endif // BUILDGUI_WIREDLG_H diff --git a/src/BuildGUI/GEOM_BuildGUI.hxx b/src/BuildGUI/GEOM_BuildGUI.hxx deleted file mode 100755 index 7a36f8552..000000000 --- a/src/BuildGUI/GEOM_BuildGUI.hxx +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org -// -// -// -// File : GEOM_BuildGUI.hxx -// Author : Alexander A. BORODIN -// Module : GEOM - -#ifndef _GEOM_BuildGUI_HXX_ -#define _GEOM_BuildGUI_HXX_ - -#ifdef WNT - #if defined BUILDGUI_EXPORTS - #if defined WIN32 - #define GEOM_BUILDGUI_EXPORT __declspec( dllexport ) - #else - #define GEOM_BUILDGUI_EXPORT - #endif - #else - #if defined WIN32 - #define GEOM_BUILDGUI_EXPORT __declspec( dllimport ) - #else - #define GEOM_BUILDGUI_EXPORT - #endif - #endif -#else - #define GEOM_BUILDGUI_EXPORT -#endif - -#endif diff --git a/src/BuildGUI/Makefile.am b/src/BuildGUI/Makefile.am index 59820f17b..d4f2af548 100644 --- a/src/BuildGUI/Makefile.am +++ b/src/BuildGUI/Makefile.am @@ -1,87 +1,88 @@ -# GEOM BUILDGUI : +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# GEOM BUILDGUI : +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : BuildGUI # -# File : Makefile.in -# Author : Damien COQUERET (OCC) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header: - include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files -salomeinclude_HEADERS = +salomeinclude_HEADERS = \ + BuildGUI.h \ + BuildGUI_EdgeDlg.h \ + BuildGUI_WireDlg.h \ + BuildGUI_FaceDlg.h \ + BuildGUI_ShellDlg.h \ + BuildGUI_SolidDlg.h \ + BuildGUI_CompoundDlg.h # Libraries targets lib_LTLIBRARIES = libBuildGUI.la # Sources files -dist_libBuildGUI_la_SOURCES = \ - BuildGUI.cxx \ - BuildGUI_EdgeDlg.cxx \ - BuildGUI_WireDlg.cxx \ - BuildGUI_FaceDlg.cxx \ - BuildGUI_ShellDlg.cxx \ - BuildGUI_SolidDlg.cxx \ +dist_libBuildGUI_la_SOURCES = \ + BuildGUI.cxx \ + BuildGUI_EdgeDlg.cxx \ + BuildGUI_WireDlg.cxx \ + BuildGUI_FaceDlg.cxx \ + BuildGUI_ShellDlg.cxx \ + BuildGUI_SolidDlg.cxx \ BuildGUI_CompoundDlg.cxx -MOC_FILES = \ - BuildGUI_EdgeDlg_moc.cxx \ - BuildGUI_WireDlg_moc.cxx \ - BuildGUI_FaceDlg_moc.cxx \ - BuildGUI_ShellDlg_moc.cxx \ - BuildGUI_SolidDlg_moc.cxx \ +MOC_FILES = \ + BuildGUI_EdgeDlg_moc.cxx \ + BuildGUI_WireDlg_moc.cxx \ + BuildGUI_FaceDlg_moc.cxx \ + BuildGUI_ShellDlg_moc.cxx \ + BuildGUI_SolidDlg_moc.cxx \ BuildGUI_CompoundDlg_moc.cxx -nodist_libBuildGUI_la_SOURCES= \ +nodist_libBuildGUI_la_SOURCES = \ $(MOC_FILES) -# LIB_CLIENT_IDL = SALOME_Exception.idl SALOME_GenericObj.idl SALOME_Component.idl +# additional information to compile and link file -# LIB_SERVER_IDL = - -# additionnal information to compil and link file - -libBuildGUI_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(VTK_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(PYTHON_INCLUDES) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../GEOMGUI \ - -I$(srcdir)/../DlgRef \ - -I$(srcdir)/../GEOMBase \ - -I$(srcdir)/../OBJECT \ - -I$(srcdir)/../GEOMClient \ - -I$(srcdir)/../GEOMImpl \ - -I$(srcdir)/../GEOMFiltersSelection \ - -I$(top_builddir)/idl \ +libBuildGUI_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(VTK_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(PYTHON_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../GEOMGUI \ + -I$(srcdir)/../DlgRef \ + -I$(srcdir)/../GEOMBase \ + -I$(srcdir)/../OBJECT \ + -I$(srcdir)/../GEOMClient \ + -I$(srcdir)/../GEOMImpl \ + -I$(srcdir)/../GEOMFiltersSelection \ + -I$(top_builddir)/idl \ + -I$(top_builddir)/src/DlgRef \ -I$(top_builddir)/salome_adm/unix -libBuildGUI_la_LDFLAGS = \ - ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ +libBuildGUI_la_LDFLAGS = \ + ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ ../GEOMBase/libGEOMBase.la diff --git a/src/DisplayGUI/DisplayGUI.cxx b/src/DisplayGUI/DisplayGUI.cxx index 6e4b90646..6b62fe2fe 100644 --- a/src/DisplayGUI/DisplayGUI.cxx +++ b/src/DisplayGUI/DisplayGUI.cxx @@ -1,44 +1,41 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : DisplayGUI.cxx +// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com) // -// -// File : DisplayGUI.cxx -// Author : Vadim SANDLER -// Module : GEOM -// $Header$ - #include "DisplayGUI.h" -#include "GeometryGUI.h" -#include "GEOM_Displayer.h" +#include +#include +#include #include -#include #include #include #include #include -#include +#include #include #include @@ -56,8 +53,7 @@ #include -#include - +#include //======================================================================= // function : DisplayGUI::DisplayGUI() @@ -94,7 +90,7 @@ bool DisplayGUI::OnGUIEvent(int theCommandID, SUIT_Desktop* parent) { InvertDisplayMode(); int newMode = GetDisplayMode(); - getGeometryGUI()->action( 211 )->setMenuText + getGeometryGUI()->action( 211 )->setText ( newMode == 1 ? tr( "GEOM_MEN_WIREFRAME" ) : tr("GEOM_MEN_SHADING") ); getGeometryGUI()->menuMgr()->update(); break; @@ -476,7 +472,9 @@ void DisplayGUI::ChangeDisplayMode( const int mode, SUIT_ViewWindow* viewWindow //===================================================================================== extern "C" { - GEOM_DISPLAYGUI_EXPORT +#ifdef WIN32 + __declspec( dllexport ) +#endif GEOMGUI* GetLibGUI( GeometryGUI* parent ) { return new DisplayGUI( parent ); diff --git a/src/DisplayGUI/DisplayGUI.h b/src/DisplayGUI/DisplayGUI.h index 9e31f223c..d9e089e2a 100644 --- a/src/DisplayGUI/DisplayGUI.h +++ b/src/DisplayGUI/DisplayGUI.h @@ -1,60 +1,48 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : DisplayGUI.h +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : DisplayGUI.h -// Author : Damien COQUERET -// Module : GEOM - #ifndef DISPLAYGUI_H #define DISPLAYGUI_H #include "GEOMGUI.h" -#include "GEOMBase.h" - -#ifdef WNT -# if defined DISPLAYGUI_EXPORTS -# define GEOM_DISPLAYGUI_EXPORT __declspec( dllexport ) -# else -# define GEOM_DISPLAYGUI_EXPORT __declspec( dllimport ) -# endif -#else -# define GEOM_DISPLAYGUI_EXPORT -#endif //================================================================================= -// class : GEOMBase_Display +// class : DisplayGUI // purpose : //================================================================================= -//class QAD_ViewFrame; + class SUIT_ViewWindow; -class GEOM_DISPLAYGUI_EXPORT DisplayGUI : public GEOMGUI + +class DisplayGUI : public GEOMGUI { public: - DisplayGUI( GeometryGUI* parent ); + DisplayGUI( GeometryGUI* ); ~DisplayGUI(); // Dispatch menu command - bool OnGUIEvent(int theCommandID, SUIT_Desktop* parent); + bool OnGUIEvent( int, SUIT_Desktop* ); // Display all GEOM objects void DisplayAll(); @@ -69,16 +57,16 @@ public: // DISPLAY MODE methods : 0 - wireframe, 1 - shading // Set display mode for the viewer (current viewer if - 0 ) - void SetDisplayMode( const int mode, SUIT_ViewWindow* viewWindow = 0 ); + void SetDisplayMode( const int, SUIT_ViewWindow* = 0 ); // Get display mode of the viewer (current viewer if - 0 ) - int GetDisplayMode( SUIT_ViewWindow* viewWindow = 0 ); + int GetDisplayMode( SUIT_ViewWindow* = 0 ); // Invert display mode ( shadin <-> wireframe ) for the viewer // (current viewer if = 0 ) - void InvertDisplayMode( SUIT_ViewWindow* viewWindow = 0 ); + void InvertDisplayMode( SUIT_ViewWindow* = 0 ); // Set display mode for selected objects in the viewer given // (current viewer if = 0 ) - void ChangeDisplayMode( const int mode, SUIT_ViewWindow* viewWindo = 0 ); + void ChangeDisplayMode( const int, SUIT_ViewWindow* = 0 ); }; -#endif +#endif // DISPLAYGUI_H diff --git a/src/DisplayGUI/DisplayGUI.pro b/src/DisplayGUI/DisplayGUI.pro new file mode 100644 index 000000000..c4ab18b6d --- /dev/null +++ b/src/DisplayGUI/DisplayGUI.pro @@ -0,0 +1,68 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = DisplayGUI +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +QT_INCLUDES = $$(QTDIR)/include $$(QTDIR)/include/QtCore $$(QTDIR)/include/QtGui $$(QTDIR)/include/QtOpenGL $$(QTDIR)/include/QtXml + +VTK_INCLUDES = $$(VTKHOME)/include/vtk + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +PYTHON_INCLUDES = $$(PYTHONHOME)/include/python2.4 + +BOOST_CPPFLAGS = $$(BOOSTDIR)/include + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +GUI_CXXFLAGS = $$(GUI_ROOT_DIR)/include/salome + +CORBA_INCLUDES = $$(OMNIORBDIR)/include $$(OMNIORBDIR)/include/omniORB4 $$(OMNIORBDIR)/include/COS + +GUI_LDFLAGS = -L$$(GUI_ROOT_DIR)/lib/salome + +VTK_LIBS = -L$$(VTKHOME)/lib/vtk -L$$(VTKHOME)/lib/vtk/python -lvtkCommon -lvtkGraphics -lvtkImaging -lvtkFiltering -lvtkIO -lvtkRendering -lvtkHybrid -lvtkParallel -lvtkWidgets -lGL -L/usr/X11R6/lib -lGLU -L/usr/X11R6/lib -lX11 -lXt + +QT_MT_LIBS = -L$$(QTDIR)/lib -lQtCore -lQtXml -lQtGui -lQtOpenGL + +INCLUDEPATH += $${QT_INCLUDES} $${VTK_INCLUDES} $${CAS_CPPFLAGS} $${PYTHON_INCLUDES} $${BOOST_CPPFLAGS} $${KERNEL_CXXFLAGS} $${GUI_CXXFLAGS} $${CORBA_INCLUDES} ../OBJECT ../GEOMBase ../GEOMClient ../GEOMImpl ../GEOMGUI $$(GEOM_ROOT_DIR)/idl $$(GEOM_ROOT_DIR)/salome_adm/unix + +LIBS += -L$$(GEOM_ROOT_DIR)/lib -lGEOM -lGEOMToolsGUI $${GUI_LDFLAGS} -lsuit -lSVTK -lSOCC -lSalomePrs -lSalomeApp $${VTK_LIBS} $${QT_MT_LIBS} + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += DISPLAYGUI_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS OMNIORB_VERSION=4 __x86__ __linux__ COMP_CORBA_DOUBLE COMP_CORBA_LONG + +HEADERS = DisplayGUI.h + +SOURCES = DisplayGUI.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/DisplayGUI/Makefile.am b/src/DisplayGUI/Makefile.am index 9f4f6a3bc..434048fe1 100644 --- a/src/DisplayGUI/Makefile.am +++ b/src/DisplayGUI/Makefile.am @@ -1,70 +1,64 @@ -# GEOM DISPLAYGUI : +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# GEOM DISPLAYGUI : +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : DisplayGUI # -# File : Makefile.in -# Author : Damien COQUERET (OCC) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header: - include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files -salomeinclude_HEADERS = \ +salomeinclude_HEADERS = \ DisplayGUI.h # Libraries targets lib_LTLIBRARIES = libDisplayGUI.la -dist_libDisplayGUI_la_SOURCES = DisplayGUI.cxx +dist_libDisplayGUI_la_SOURCES = \ + DisplayGUI.h \ + DisplayGUI.cxx -#LIB_CLIENT_IDL = SALOME_Exception.idl SALOME_GenericObj.idl SALOME_Component.idl +# additional information to compile and link file -#LIB_SERVER_IDL = - -# additionnal information to compil and link file - -libDisplayGUI_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(VTK_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(PYTHON_INCLUDES) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../GEOMGUI \ - -I$(srcdir)/../GEOMBase \ - -I$(srcdir)/../OBJECT \ - -I$(srcdir)/../GEOMImpl \ - -I$(srcdir)/../GEOMClient \ - -I$(top_builddir)/idl \ +libDisplayGUI_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(VTK_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(PYTHON_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../GEOMGUI \ + -I$(srcdir)/../OBJECT \ + -I$(srcdir)/../GEOMImpl \ + -I$(srcdir)/../GEOMClient \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libDisplayGUI_la_LDFLAGS = \ - ../GEOMGUI/libGEOM.la \ - ../GEOMToolsGUI/libGEOMToolsGUI.la \ - $(GUI_LDFLAGS) -lsuit -lSVTK -lSOCC -lSalomePrs -lSalomeApp \ - $(VTK_LIBS) \ +libDisplayGUI_la_LDFLAGS = \ + ../GEOMGUI/libGEOM.la \ + $(GUI_LDFLAGS) -lsuit -lSVTK \ + -lSOCC -lSalomePrs -lSalomeApp \ + $(VTK_LIBS) \ $(QT_MT_LIBS) diff --git a/src/DlgRef/DlgRef.cxx b/src/DlgRef/DlgRef.cxx new file mode 100644 index 000000000..c22828f46 --- /dev/null +++ b/src/DlgRef/DlgRef.cxx @@ -0,0 +1,790 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 : DlgRef.cxx +// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com) +// +#include "DlgRef.h" + +////////////////////////////////////////// +// DlgRef_1List1Spin1Btn +////////////////////////////////////////// + +DlgRef_1List1Spin1Btn::DlgRef_1List1Spin1Btn( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1List1Spin1Btn::~DlgRef_1List1Spin1Btn() +{ +} + +////////////////////////////////////////// +// DlgRef_1Sel1Check1List +////////////////////////////////////////// + +DlgRef_1Sel1Check1List::DlgRef_1Sel1Check1List( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1Sel1Check1List::~DlgRef_1Sel1Check1List() +{ +} + +////////////////////////////////////////// +// DlgRef_1Sel1Check1Sel +////////////////////////////////////////// + +DlgRef_1Sel1Check1Sel::DlgRef_1Sel1Check1Sel( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1Sel1Check1Sel::~DlgRef_1Sel1Check1Sel() +{ +} + +////////////////////////////////////////// +// DlgRef_1Sel1Check +////////////////////////////////////////// + +DlgRef_1Sel1Check::DlgRef_1Sel1Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1Sel1Check::~DlgRef_1Sel1Check() +{ +} + +////////////////////////////////////////// +// DlgRef_1Sel1List1Check3Btn +////////////////////////////////////////// + +DlgRef_1Sel1List1Check3Btn::DlgRef_1Sel1List1Check3Btn( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1Sel1List1Check3Btn::~DlgRef_1Sel1List1Check3Btn() +{ +} + +////////////////////////////////////////// +// DlgRef_1Sel1Spin1Check +////////////////////////////////////////// + +DlgRef_1Sel1Spin1Check::DlgRef_1Sel1Spin1Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1Sel1Spin1Check::~DlgRef_1Sel1Spin1Check() +{ +} + +////////////////////////////////////////// +// DlgRef_1Sel1Spin +////////////////////////////////////////// + +DlgRef_1Sel1Spin::DlgRef_1Sel1Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1Sel1Spin::~DlgRef_1Sel1Spin() +{ +} + +////////////////////////////////////////// +// DlgRef_1Sel2Spin1View1Check +////////////////////////////////////////// + +DlgRef_1Sel2Spin1View1Check::DlgRef_1Sel2Spin1View1Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1Sel2Spin1View1Check::~DlgRef_1Sel2Spin1View1Check() +{ +} + +////////////////////////////////////////// +// DlgRef_1Sel2Spin +////////////////////////////////////////// + +DlgRef_1Sel2Spin::DlgRef_1Sel2Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1Sel2Spin::~DlgRef_1Sel2Spin() +{ +} + +////////////////////////////////////////// +// DlgRef_1Sel3Check +////////////////////////////////////////// + +DlgRef_1Sel3Check::DlgRef_1Sel3Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1Sel3Check::~DlgRef_1Sel3Check() +{ +} + +////////////////////////////////////////// +// DlgRef_1Sel3Spin +////////////////////////////////////////// + +DlgRef_1Sel3Spin::DlgRef_1Sel3Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1Sel3Spin::~DlgRef_1Sel3Spin() +{ +} + +////////////////////////////////////////// +// DlgRef_1Sel3Spin1Check +////////////////////////////////////////// + +DlgRef_1Sel3Spin1Check::DlgRef_1Sel3Spin1Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1Sel3Spin1Check::~DlgRef_1Sel3Spin1Check() +{ +} + +////////////////////////////////////////// +// DlgRef_1Sel4Spin +////////////////////////////////////////// + +DlgRef_1Sel4Spin::DlgRef_1Sel4Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1Sel4Spin::~DlgRef_1Sel4Spin() +{ +} + +////////////////////////////////////////// +// DlgRef_1Sel5Spin1Check +////////////////////////////////////////// + +DlgRef_1Sel5Spin1Check::DlgRef_1Sel5Spin1Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1Sel5Spin1Check::~DlgRef_1Sel5Spin1Check() +{ +} + +////////////////////////////////////////// +// DlgRef_1Sel5Spin +////////////////////////////////////////// + +DlgRef_1Sel5Spin::DlgRef_1Sel5Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1Sel5Spin::~DlgRef_1Sel5Spin() +{ +} + +////////////////////////////////////////// +// DlgRef_1Spin +////////////////////////////////////////// + +DlgRef_1Spin::DlgRef_1Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1Spin::~DlgRef_1Spin() +{ +} + +////////////////////////////////////////// +// DlgRef_1Sel +////////////////////////////////////////// + +DlgRef_1Sel::DlgRef_1Sel( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1Sel::~DlgRef_1Sel() +{ +} + +////////////////////////////////////////// +// DlgRef_1SelExt +////////////////////////////////////////// + +DlgRef_1SelExt::DlgRef_1SelExt( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_1SelExt::~DlgRef_1SelExt() +{ +} + +////////////////////////////////////////// +// DlgRef_2Sel1List1Check +////////////////////////////////////////// + +DlgRef_2Sel1List1Check::DlgRef_2Sel1List1Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_2Sel1List1Check::~DlgRef_2Sel1List1Check() +{ +} + +////////////////////////////////////////// +// DlgRef_2Sel1List +////////////////////////////////////////// + +DlgRef_2Sel1List::DlgRef_2Sel1List( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_2Sel1List::~DlgRef_2Sel1List() +{ +} + +////////////////////////////////////////// +// DlgRef_2Sel1Spin2Check +////////////////////////////////////////// + +DlgRef_2Sel1Spin2Check::DlgRef_2Sel1Spin2Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_2Sel1Spin2Check::~DlgRef_2Sel1Spin2Check() +{ +} + +////////////////////////////////////////// +// DlgRef_2Sel1Spin +////////////////////////////////////////// + +DlgRef_2Sel1Spin::DlgRef_2Sel1Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_2Sel1Spin::~DlgRef_2Sel1Spin() +{ +} + +////////////////////////////////////////// +// DlgRef_2Sel2List +////////////////////////////////////////// + +DlgRef_2Sel2List::DlgRef_2Sel2List( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_2Sel2List::~DlgRef_2Sel2List() +{ +} + +////////////////////////////////////////// +// DlgRef_2Sel2Spin1Check +////////////////////////////////////////// + +DlgRef_2Sel2Spin1Check::DlgRef_2Sel2Spin1Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_2Sel2Spin1Check::~DlgRef_2Sel2Spin1Check() +{ +} + +////////////////////////////////////////// +// DlgRef_2Sel2Spin +////////////////////////////////////////// + +DlgRef_2Sel2Spin::DlgRef_2Sel2Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_2Sel2Spin::~DlgRef_2Sel2Spin() +{ +} + +////////////////////////////////////////// +// DlgRef_2Sel3Spin2Rb +////////////////////////////////////////// + +DlgRef_2Sel3Spin2Rb::DlgRef_2Sel3Spin2Rb( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_2Sel3Spin2Rb::~DlgRef_2Sel3Spin2Rb() +{ +} + +////////////////////////////////////////// +// DlgRef_2Sel3Spin +////////////////////////////////////////// + +DlgRef_2Sel3Spin::DlgRef_2Sel3Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_2Sel3Spin::~DlgRef_2Sel3Spin() +{ +} + +////////////////////////////////////////// +// DlgRef_2Sel4Spin1Check +////////////////////////////////////////// + +DlgRef_2Sel4Spin1Check::DlgRef_2Sel4Spin1Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_2Sel4Spin1Check::~DlgRef_2Sel4Spin1Check() +{ +} + +////////////////////////////////////////// +// DlgRef_2Sel +////////////////////////////////////////// + +DlgRef_2Sel::DlgRef_2Sel( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_2Sel::~DlgRef_2Sel() +{ +} + +////////////////////////////////////////// +// DlgRef_2SelExt +////////////////////////////////////////// + +DlgRef_2SelExt::DlgRef_2SelExt( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_2SelExt::~DlgRef_2SelExt() +{ +} + +////////////////////////////////////////// +// DlgRef_2Spin +////////////////////////////////////////// + +DlgRef_2Spin::DlgRef_2Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_2Spin::~DlgRef_2Spin() +{ +} + +////////////////////////////////////////// +// DlgRef_3Check +////////////////////////////////////////// + +DlgRef_3Check::DlgRef_3Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_3Check::~DlgRef_3Check() +{ +} + +////////////////////////////////////////// +// DlgRef_3Radio +////////////////////////////////////////// + +DlgRef_3Radio::DlgRef_3Radio( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_3Radio::~DlgRef_3Radio() +{ +} + +////////////////////////////////////////// +// DlgRef_3Radio1Sel1Spin +////////////////////////////////////////// + +DlgRef_3Radio1Sel1Spin::DlgRef_3Radio1Sel1Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_3Radio1Sel1Spin::~DlgRef_3Radio1Sel1Spin() +{ +} + +////////////////////////////////////////// +// DlgRef_3Sel1Check +////////////////////////////////////////// + +DlgRef_3Sel1Check::DlgRef_3Sel1Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_3Sel1Check::~DlgRef_3Sel1Check() +{ +} + +////////////////////////////////////////// +// DlgRef_3Sel1Spin +////////////////////////////////////////// + +DlgRef_3Sel1Spin::DlgRef_3Sel1Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_3Sel1Spin::~DlgRef_3Sel1Spin() +{ +} + +////////////////////////////////////////// +// DlgRef_3Sel3Spin1Check +////////////////////////////////////////// + +DlgRef_3Sel3Spin1Check::DlgRef_3Sel3Spin1Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_3Sel3Spin1Check::~DlgRef_3Sel3Spin1Check() +{ +} + +void DlgRef_3Sel3Spin1Check::ShowRows( int fromRow, int toRow, bool toShow ) +{ + const int maxRows = 7; + + if ( toRow >= fromRow && fromRow >= 0 && toRow <= maxRows ) { + int c = gridLayout1->count(); + for ( int i = 0; i < c; i++ ) { + QWidget* w = gridLayout1->itemAt( i )->widget(); + int row, col, rowspan, colspan; + gridLayout1->getItemPosition( i, &row, &col, &rowspan, &colspan ); + if ( w && row >= fromRow && row <= toRow ) + w->setVisible( toShow ); + } + } +} + +////////////////////////////////////////// +// DlgRef_3Sel3Spin2Check +////////////////////////////////////////// + +DlgRef_3Sel3Spin2Check::DlgRef_3Sel3Spin2Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_3Sel3Spin2Check::~DlgRef_3Sel3Spin2Check() +{ +} + +void DlgRef_3Sel3Spin2Check::ShowRows( int fromRow, int toRow, bool toShow ) +{ + const int maxRows = 8; + + if ( toRow >= fromRow && fromRow >= 0 && toRow <= maxRows ) { + int c = gridLayout1->count(); + for ( int i = 0; i < c; i++ ) { + QWidget* w = gridLayout1->itemAt( i )->widget(); + int row, col, rowspan, colspan; + gridLayout1->getItemPosition( i, &row, &col, &rowspan, &colspan ); + if ( w && row >= fromRow && row <= toRow ) + w->setVisible( toShow ); + } + } +} + +////////////////////////////////////////// +// DlgRef_3Sel4Spin2Check +////////////////////////////////////////// + +DlgRef_3Sel4Spin2Check::DlgRef_3Sel4Spin2Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_3Sel4Spin2Check::~DlgRef_3Sel4Spin2Check() +{ +} + +////////////////////////////////////////// +// DlgRef_3Sel +////////////////////////////////////////// + +DlgRef_3Sel::DlgRef_3Sel( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_3Sel::~DlgRef_3Sel() +{ +} + +////////////////////////////////////////// +// DlgRef_3Spin1Check +////////////////////////////////////////// + +DlgRef_3Spin1Check::DlgRef_3Spin1Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_3Spin1Check::~DlgRef_3Spin1Check() +{ +} + +////////////////////////////////////////// +// DlgRef_3Spin +////////////////////////////////////////// + +DlgRef_3Spin::DlgRef_3Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_3Spin::~DlgRef_3Spin() +{ +} + +////////////////////////////////////////// +// DlgRef_4Sel1List1Check +////////////////////////////////////////// + +DlgRef_4Sel1List1Check::DlgRef_4Sel1List1Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_4Sel1List1Check::~DlgRef_4Sel1List1Check() +{ +} + +////////////////////////////////////////// +// DlgRef_4Sel1List +////////////////////////////////////////// + +DlgRef_4Sel1List::DlgRef_4Sel1List( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_4Sel1List::~DlgRef_4Sel1List() +{ +} + +////////////////////////////////////////// +// DlgRef_4Sel1Spin2Check +////////////////////////////////////////// + +DlgRef_4Sel1Spin2Check::DlgRef_4Sel1Spin2Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_4Sel1Spin2Check::~DlgRef_4Sel1Spin2Check() +{ +} + +void DlgRef_4Sel1Spin2Check::ShowRows( int fromRow, int toRow, bool toShow ) +{ + const int maxRows = 6; + + if ( toRow >= fromRow && fromRow >= 0 && toRow <= maxRows ) { + int c = gridLayout1->count(); + for ( int i = 0; i < c; i++ ) { + QWidget* w = gridLayout1->itemAt( i )->widget(); + int row, col, rowspan, colspan; + gridLayout1->getItemPosition( i, &row, &col, &rowspan, &colspan ); + if ( w && row >= fromRow && row <= toRow ) + w->setVisible( toShow ); + } + } +} + +////////////////////////////////////////// +// DlgRef_4Sel1Spin3Check +////////////////////////////////////////// + +DlgRef_4Sel1Spin3Check::DlgRef_4Sel1Spin3Check( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_4Sel1Spin3Check::~DlgRef_4Sel1Spin3Check() +{ +} + +////////////////////////////////////////// +// DlgRef_6Sel +////////////////////////////////////////// + +DlgRef_6Sel::DlgRef_6Sel( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_6Sel::~DlgRef_6Sel() +{ +} + +////////////////////////////////////////// +// DlgRef_Skeleton +////////////////////////////////////////// + +DlgRef_Skeleton::DlgRef_Skeleton( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +DlgRef_Skeleton::~DlgRef_Skeleton() +{ +} + +////////////////////////////////////////// +// Utility functions +////////////////////////////////////////// + +QString DlgRef::PrintDoubleValue( double theValue, int thePrecision ) +{ + const double prec = 1e-12; + + if ( abs(theValue) < thePrecision) + return "0"; + + QString aRes; + aRes.setNum( theValue, 'g', thePrecision ); + + if ( prec > 0 ) { + int p = 0; + while ( p < thePrecision ) { + aRes.setNum( theValue, 'g', p++ ); + double v = aRes.toDouble(); + double err = qAbs( theValue - v ); + if ( err > 0 && err <= prec ) + break; + } + } + + // remove trailing zeroes + QString delim( "." ); + + int idx = aRes.lastIndexOf( delim ); + if ( idx == -1 ) + return aRes; + + QString iPart = aRes.left( idx ); + QString fPart = aRes.mid( idx + 1 ); + + while ( !fPart.isEmpty() && fPart.at( fPart.length() - 1 ) == '0' ) + fPart.remove( fPart.length() - 1, 1 ); + + aRes = iPart; + if ( !fPart.isEmpty() ) + aRes += delim + fPart; + + return aRes; +} diff --git a/src/DlgRef/DlgRef.h b/src/DlgRef/DlgRef.h new file mode 100644 index 000000000..d786fe841 --- /dev/null +++ b/src/DlgRef/DlgRef.h @@ -0,0 +1,823 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 : DlgRef.h +// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com) +// +#ifndef GEOM_DLGREF_H +#define GEOM_DLGREF_H + +#if defined WIN32 +# if defined DLGREF_EXPORTS +# define DLGREF_EXPORT __declspec( dllexport ) +# else +# define DLGREF_EXPORT __declspec( dllimport ) +# endif +#else +# define DLGREF_EXPORT +#endif + +////////////////////////////////////////// +// DlgRef_1List1Spin1Btn +////////////////////////////////////////// + +#include "ui_DlgRef_1List1Spin1Btn_QTD.h" + +class DLGREF_EXPORT DlgRef_1List1Spin1Btn : public QWidget, + public Ui::DlgRef_1List1Spin1Btn_QTD +{ + Q_OBJECT + +public: + DlgRef_1List1Spin1Btn( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1List1Spin1Btn(); +}; + +////////////////////////////////////////// +// DlgRef_1Sel1Check1List +////////////////////////////////////////// + +#include "ui_DlgRef_1Sel1Check1List_QTD.h" + +class DLGREF_EXPORT DlgRef_1Sel1Check1List : public QWidget, + public Ui::DlgRef_1Sel1Check1List_QTD +{ + Q_OBJECT + +public: + DlgRef_1Sel1Check1List( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1Sel1Check1List(); +}; + +////////////////////////////////////////// +// DlgRef_1Sel1Check1Sel +////////////////////////////////////////// + +#include "ui_DlgRef_1Sel1Check1Sel_QTD.h" + +class DLGREF_EXPORT DlgRef_1Sel1Check1Sel : public QWidget, + public Ui::DlgRef_1Sel1Check1Sel_QTD +{ + Q_OBJECT + +public: + DlgRef_1Sel1Check1Sel( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1Sel1Check1Sel(); +}; + +////////////////////////////////////////// +// DlgRef_1Sel1Check +////////////////////////////////////////// + +#include "ui_DlgRef_1Sel1Check_QTD.h" + +class DLGREF_EXPORT DlgRef_1Sel1Check : public QWidget, + public Ui::DlgRef_1Sel1Check_QTD +{ + Q_OBJECT + +public: + DlgRef_1Sel1Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1Sel1Check(); +}; + +////////////////////////////////////////// +// DlgRef_1Sel1List1Check3Btn +////////////////////////////////////////// + +#include "ui_DlgRef_1Sel1List1Check3Btn_QTD.h" + +class DLGREF_EXPORT DlgRef_1Sel1List1Check3Btn : public QWidget, + public Ui::DlgRef_1Sel1List1Check3Btn_QTD +{ + Q_OBJECT + +public: + DlgRef_1Sel1List1Check3Btn( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1Sel1List1Check3Btn(); +}; + +////////////////////////////////////////// +// DlgRef_1Sel1Spin1Check +////////////////////////////////////////// + +#include "ui_DlgRef_1Sel1Spin1Check_QTD.h" + +class DLGREF_EXPORT DlgRef_1Sel1Spin1Check : public QWidget, + public Ui::DlgRef_1Sel1Spin1Check_QTD +{ + Q_OBJECT + +public: + DlgRef_1Sel1Spin1Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1Sel1Spin1Check(); +}; + +////////////////////////////////////////// +// DlgRef_1Sel1Spin +////////////////////////////////////////// + +#include "ui_DlgRef_1Sel1Spin_QTD.h" + +class DLGREF_EXPORT DlgRef_1Sel1Spin : public QWidget, + public Ui::DlgRef_1Sel1Spin_QTD +{ + Q_OBJECT + +public: + DlgRef_1Sel1Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1Sel1Spin(); +}; + +////////////////////////////////////////// +// DlgRef_1Sel2Spin1View1Check +////////////////////////////////////////// + +#include "ui_DlgRef_1Sel2Spin1View1Check_QTD.h" + +class DLGREF_EXPORT DlgRef_1Sel2Spin1View1Check : public QWidget, + public Ui::DlgRef_1Sel2Spin1View1Check_QTD +{ + Q_OBJECT + +public: + DlgRef_1Sel2Spin1View1Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1Sel2Spin1View1Check(); +}; + +////////////////////////////////////////// +// DlgRef_1Sel2Spin +////////////////////////////////////////// + +#include "ui_DlgRef_1Sel2Spin_QTD.h" + +class DLGREF_EXPORT DlgRef_1Sel2Spin : public QWidget, + public Ui::DlgRef_1Sel2Spin_QTD +{ + Q_OBJECT + +public: + DlgRef_1Sel2Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1Sel2Spin(); +}; + +////////////////////////////////////////// +// DlgRef_1Sel3Check +////////////////////////////////////////// + +#include "ui_DlgRef_1Sel3Check_QTD.h" + +class DLGREF_EXPORT DlgRef_1Sel3Check : public QWidget, + public Ui::DlgRef_1Sel3Check_QTD +{ + Q_OBJECT + +public: + DlgRef_1Sel3Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1Sel3Check(); +}; + + + +////////////////////////////////////////// +// DlgRef_1Sel3Spin +////////////////////////////////////////// + +#include "ui_DlgRef_1Sel3Spin_QTD.h" + +class DLGREF_EXPORT DlgRef_1Sel3Spin : public QWidget, + public Ui::DlgRef_1Sel3Spin_QTD +{ + Q_OBJECT + +public: + DlgRef_1Sel3Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1Sel3Spin(); +}; + +////////////////////////////////////////// +// DlgRef_1Sel3Spin1Check +////////////////////////////////////////// + +#include "ui_DlgRef_1Sel3Spin1Check_QTD.h" + +class DLGREF_EXPORT DlgRef_1Sel3Spin1Check : public QWidget, + public Ui::DlgRef_1Sel3Spin1Check_QTD +{ + Q_OBJECT + +public: + DlgRef_1Sel3Spin1Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1Sel3Spin1Check(); +}; + +////////////////////////////////////////// +// DlgRef_1Sel4Spin +////////////////////////////////////////// + +#include "ui_DlgRef_1Sel4Spin_QTD.h" + +class DLGREF_EXPORT DlgRef_1Sel4Spin : public QWidget, + public Ui::DlgRef_1Sel4Spin_QTD +{ + Q_OBJECT + +public: + DlgRef_1Sel4Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1Sel4Spin(); +}; + +////////////////////////////////////////// +// DlgRef_1Sel5Spin1Check +////////////////////////////////////////// + +#include "ui_DlgRef_1Sel5Spin1Check_QTD.h" + +class DLGREF_EXPORT DlgRef_1Sel5Spin1Check : public QWidget, + public Ui::DlgRef_1Sel5Spin1Check_QTD +{ + Q_OBJECT + +public: + DlgRef_1Sel5Spin1Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1Sel5Spin1Check(); +}; + +////////////////////////////////////////// +// DlgRef_1Sel5Spin +////////////////////////////////////////// + +#include "ui_DlgRef_1Sel5Spin_QTD.h" + +class DLGREF_EXPORT DlgRef_1Sel5Spin : public QWidget, + public Ui::DlgRef_1Sel5Spin_QTD +{ + Q_OBJECT + +public: + DlgRef_1Sel5Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1Sel5Spin(); +}; + +////////////////////////////////////////// +// DlgRef_1Spin +////////////////////////////////////////// + +#include "ui_DlgRef_1Spin_QTD.h" + +class DLGREF_EXPORT DlgRef_1Spin : public QWidget, + public Ui::DlgRef_1Spin_QTD +{ + Q_OBJECT + +public: + DlgRef_1Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1Spin(); +}; + +////////////////////////////////////////// +// DlgRef_1Sel +////////////////////////////////////////// + +#include "ui_DlgRef_1Sel_QTD.h" + +class DLGREF_EXPORT DlgRef_1Sel : public QWidget, + public Ui::DlgRef_1Sel_QTD +{ + Q_OBJECT + +public: + DlgRef_1Sel( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1Sel(); +}; + +////////////////////////////////////////// +// DlgRef_1SelExt +////////////////////////////////////////// + +#include "ui_DlgRef_1SelExt_QTD.h" + +class DLGREF_EXPORT DlgRef_1SelExt : public QWidget, + public Ui::DlgRef_1SelExt_QTD +{ + Q_OBJECT + +public: + DlgRef_1SelExt( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_1SelExt(); +}; + +////////////////////////////////////////// +// DlgRef_2Sel1List1Check +////////////////////////////////////////// + +#include "ui_DlgRef_2Sel1List1Check_QTD.h" + +class DLGREF_EXPORT DlgRef_2Sel1List1Check : public QWidget, + public Ui::DlgRef_2Sel1List1Check_QTD +{ + Q_OBJECT + +public: + DlgRef_2Sel1List1Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_2Sel1List1Check(); +}; + +////////////////////////////////////////// +// DlgRef_2Sel1List +////////////////////////////////////////// + +#include "ui_DlgRef_2Sel1List_QTD.h" + +class DLGREF_EXPORT DlgRef_2Sel1List : public QWidget, + public Ui::DlgRef_2Sel1List_QTD +{ + Q_OBJECT + +public: + DlgRef_2Sel1List( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_2Sel1List(); +}; + +////////////////////////////////////////// +// DlgRef_2Sel1Spin2Check +////////////////////////////////////////// + +#include "ui_DlgRef_2Sel1Spin2Check_QTD.h" + +class DLGREF_EXPORT DlgRef_2Sel1Spin2Check : public QWidget, + public Ui::DlgRef_2Sel1Spin2Check_QTD +{ + Q_OBJECT + +public: + DlgRef_2Sel1Spin2Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_2Sel1Spin2Check(); +}; + +////////////////////////////////////////// +// DlgRef_2Sel1Spin +////////////////////////////////////////// + +#include "ui_DlgRef_2Sel1Spin_QTD.h" + +class DLGREF_EXPORT DlgRef_2Sel1Spin : public QWidget, + public Ui::DlgRef_2Sel1Spin_QTD +{ + Q_OBJECT + +public: + DlgRef_2Sel1Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_2Sel1Spin(); +}; + +////////////////////////////////////////// +// DlgRef_2Sel2List +////////////////////////////////////////// + +#include "ui_DlgRef_2Sel2List_QTD.h" + +class DLGREF_EXPORT DlgRef_2Sel2List : public QWidget, + public Ui::DlgRef_2Sel2List_QTD +{ + Q_OBJECT + +public: + DlgRef_2Sel2List( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_2Sel2List(); +}; + +////////////////////////////////////////// +// DlgRef_2Sel2Spin1Check +////////////////////////////////////////// + +#include "ui_DlgRef_2Sel2Spin1Check_QTD.h" + +class DLGREF_EXPORT DlgRef_2Sel2Spin1Check : public QWidget, + public Ui::DlgRef_2Sel2Spin1Check_QTD +{ + Q_OBJECT + +public: + DlgRef_2Sel2Spin1Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_2Sel2Spin1Check(); +}; + +////////////////////////////////////////// +// DlgRef_2Sel2Spin +////////////////////////////////////////// + +#include "ui_DlgRef_2Sel2Spin_QTD.h" + +class DLGREF_EXPORT DlgRef_2Sel2Spin : public QWidget, + public Ui::DlgRef_2Sel2Spin_QTD +{ + Q_OBJECT + +public: + DlgRef_2Sel2Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_2Sel2Spin(); +}; + +////////////////////////////////////////// +// DlgRef_2Sel3Spin2Rb +////////////////////////////////////////// + +#include "ui_DlgRef_2Sel3Spin2Rb_QTD.h" + +class DLGREF_EXPORT DlgRef_2Sel3Spin2Rb : public QWidget, + public Ui::DlgRef_2Sel3Spin2Rb_QTD +{ + Q_OBJECT + +public: + DlgRef_2Sel3Spin2Rb( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_2Sel3Spin2Rb(); +}; + +////////////////////////////////////////// +// DlgRef_2Sel3Spin +////////////////////////////////////////// + +#include "ui_DlgRef_2Sel3Spin_QTD.h" + +class DLGREF_EXPORT DlgRef_2Sel3Spin : public QWidget, + public Ui::DlgRef_2Sel3Spin_QTD +{ + Q_OBJECT + +public: + DlgRef_2Sel3Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_2Sel3Spin(); +}; + +////////////////////////////////////////// +// DlgRef_2Sel4Spin1Check +////////////////////////////////////////// + +#include "ui_DlgRef_2Sel4Spin1Check_QTD.h" + +class DLGREF_EXPORT DlgRef_2Sel4Spin1Check : public QWidget, + public Ui::DlgRef_2Sel4Spin1Check_QTD +{ + Q_OBJECT + +public: + DlgRef_2Sel4Spin1Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_2Sel4Spin1Check(); +}; + +////////////////////////////////////////// +// DlgRef_2Sel +////////////////////////////////////////// + +#include "ui_DlgRef_2Sel_QTD.h" + +class DLGREF_EXPORT DlgRef_2Sel : public QWidget, + public Ui::DlgRef_2Sel_QTD +{ + Q_OBJECT + +public: + DlgRef_2Sel( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_2Sel(); +}; + +////////////////////////////////////////// +// DlgRef_2SelExt +////////////////////////////////////////// + +#include "ui_DlgRef_2SelExt_QTD.h" + +class DLGREF_EXPORT DlgRef_2SelExt : public QWidget, + public Ui::DlgRef_2SelExt_QTD +{ + Q_OBJECT + +public: + DlgRef_2SelExt( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_2SelExt(); +}; + +////////////////////////////////////////// +// DlgRef_2Spin +////////////////////////////////////////// + +#include "ui_DlgRef_2Spin_QTD.h" + +class DLGREF_EXPORT DlgRef_2Spin : public QWidget, + public Ui::DlgRef_2Spin_QTD +{ + Q_OBJECT + +public: + DlgRef_2Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_2Spin(); +}; + +////////////////////////////////////////// +// DlgRef_3Check +////////////////////////////////////////// + +#include "ui_DlgRef_3Check_QTD.h" + +class DLGREF_EXPORT DlgRef_3Check : public QWidget, + public Ui::DlgRef_3Check_QTD +{ + Q_OBJECT + +public: + DlgRef_3Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_3Check(); +}; + +////////////////////////////////////////// +// DlgRef_1Sel3Radio +////////////////////////////////////////// + +#include "ui_DlgRef_3Radio_QTD.h" + +class DLGREF_EXPORT DlgRef_3Radio : public QWidget, + public Ui::DlgRef_3Radio_QTD +{ + Q_OBJECT + +public: + DlgRef_3Radio( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_3Radio(); +}; + +////////////////////////////////////////// +// DlgRef_1Sel3Radio1Sel1Spin +////////////////////////////////////////// + +#include "ui_DlgRef_3Radio1Sel1Spin_QTD.h" + +class DLGREF_EXPORT DlgRef_3Radio1Sel1Spin : public QWidget, + public Ui::DlgRef_3Radio1Sel1Spin_QTD +{ + Q_OBJECT + +public: + DlgRef_3Radio1Sel1Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_3Radio1Sel1Spin(); +}; + +////////////////////////////////////////// +// DlgRef_3Sel1Check +////////////////////////////////////////// + +#include "ui_DlgRef_3Sel1Check_QTD.h" + +class DLGREF_EXPORT DlgRef_3Sel1Check : public QWidget, + public Ui::DlgRef_3Sel1Check_QTD +{ + Q_OBJECT + +public: + DlgRef_3Sel1Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_3Sel1Check(); +}; + +////////////////////////////////////////// +// DlgRef_3Sel1Spin +////////////////////////////////////////// + +#include "ui_DlgRef_3Sel1Spin_QTD.h" + +class DLGREF_EXPORT DlgRef_3Sel1Spin : public QWidget, + public Ui::DlgRef_3Sel1Spin_QTD +{ + Q_OBJECT + +public: + DlgRef_3Sel1Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_3Sel1Spin(); +}; + +////////////////////////////////////////// +// DlgRef_3Sel3Spin1Check +////////////////////////////////////////// + +#include "ui_DlgRef_3Sel3Spin1Check_QTD.h" + +class DLGREF_EXPORT DlgRef_3Sel3Spin1Check : public QWidget, + public Ui::DlgRef_3Sel3Spin1Check_QTD +{ + Q_OBJECT + +public: + DlgRef_3Sel3Spin1Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_3Sel3Spin1Check(); + + void ShowRows( int, int, bool = true ); +}; + +////////////////////////////////////////// +// DlgRef_3Sel3Spin2Check +////////////////////////////////////////// + +#include "ui_DlgRef_3Sel3Spin2Check_QTD.h" + +class DLGREF_EXPORT DlgRef_3Sel3Spin2Check : public QWidget, + public Ui::DlgRef_3Sel3Spin2Check_QTD +{ + Q_OBJECT + +public: + DlgRef_3Sel3Spin2Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_3Sel3Spin2Check(); + + void ShowRows( int, int, bool = true ); +}; + +////////////////////////////////////////// +// DlgRef_3Sel4Spin2Check +////////////////////////////////////////// + +#include "ui_DlgRef_3Sel4Spin2Check_QTD.h" + +class DLGREF_EXPORT DlgRef_3Sel4Spin2Check : public QWidget, + public Ui::DlgRef_3Sel4Spin2Check_QTD +{ + Q_OBJECT + +public: + DlgRef_3Sel4Spin2Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_3Sel4Spin2Check(); +}; + +////////////////////////////////////////// +// DlgRef_3Sel +////////////////////////////////////////// + +#include "ui_DlgRef_3Sel_QTD.h" + +class DLGREF_EXPORT DlgRef_3Sel : public QWidget, + public Ui::DlgRef_3Sel_QTD +{ + Q_OBJECT + +public: + DlgRef_3Sel( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_3Sel(); +}; + +////////////////////////////////////////// +// DlgRef_3Spin1Check +////////////////////////////////////////// + +#include "ui_DlgRef_3Spin1Check_QTD.h" + +class DLGREF_EXPORT DlgRef_3Spin1Check : public QWidget, + public Ui::DlgRef_3Spin1Check_QTD +{ + Q_OBJECT + +public: + DlgRef_3Spin1Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_3Spin1Check(); +}; + +////////////////////////////////////////// +// DlgRef_3Spin +////////////////////////////////////////// + +#include "ui_DlgRef_3Spin_QTD.h" + +class DLGREF_EXPORT DlgRef_3Spin : public QWidget, + public Ui::DlgRef_3Spin_QTD +{ + Q_OBJECT + +public: + DlgRef_3Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_3Spin(); +}; + +////////////////////////////////////////// +// DlgRef_4Sel1List1Check +////////////////////////////////////////// + +#include "ui_DlgRef_4Sel1List1Check_QTD.h" + +class DLGREF_EXPORT DlgRef_4Sel1List1Check : public QWidget, + public Ui::DlgRef_4Sel1List1Check_QTD +{ + Q_OBJECT + +public: + DlgRef_4Sel1List1Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_4Sel1List1Check(); +}; + +////////////////////////////////////////// +// DlgRef_4Sel1List +////////////////////////////////////////// + +#include "ui_DlgRef_4Sel1List_QTD.h" + +class DLGREF_EXPORT DlgRef_4Sel1List : public QWidget, + public Ui::DlgRef_4Sel1List_QTD +{ + Q_OBJECT + +public: + DlgRef_4Sel1List( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_4Sel1List(); +}; + +////////////////////////////////////////// +// DlgRef_4Sel1Spin2Check +////////////////////////////////////////// + +#include "ui_DlgRef_4Sel1Spin2Check_QTD.h" + +class DLGREF_EXPORT DlgRef_4Sel1Spin2Check : public QWidget, + public Ui::DlgRef_4Sel1Spin2Check_QTD +{ + Q_OBJECT + +public: + DlgRef_4Sel1Spin2Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_4Sel1Spin2Check(); + + void ShowRows( int, int, bool = true ); +}; + +////////////////////////////////////////// +// DlgRef_4Sel1Spin2Check +////////////////////////////////////////// + +#include "ui_DlgRef_4Sel1Spin3Check_QTD.h" + +class DLGREF_EXPORT DlgRef_4Sel1Spin3Check : public QWidget, + public Ui::DlgRef_4Sel1Spin3Check_QTD +{ + Q_OBJECT + +public: + DlgRef_4Sel1Spin3Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_4Sel1Spin3Check(); +}; + +////////////////////////////////////////// +// DlgRef_6Sel +////////////////////////////////////////// + +#include "ui_DlgRef_6Sel_QTD.h" + +class DLGREF_EXPORT DlgRef_6Sel : public QWidget, + public Ui::DlgRef_6Sel_QTD +{ + Q_OBJECT + +public: + DlgRef_6Sel( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_6Sel(); +}; + +////////////////////////////////////////// +// DlgRef_Skeleton +////////////////////////////////////////// + +#include "ui_DlgRef_Skeleton_QTD.h" + +class DLGREF_EXPORT DlgRef_Skeleton : public QWidget, + public Ui::DlgRef_Skeleton_QTD +{ + Q_OBJECT + +public: + DlgRef_Skeleton( QWidget* = 0, Qt::WindowFlags = 0 ); + ~DlgRef_Skeleton(); +}; + +////////////////////////////////////////// +// Utility functions +////////////////////////////////////////// + +namespace DlgRef +{ + DLGREF_EXPORT QString PrintDoubleValue( double, int = 16 ); +}; + +#endif // GEOM_DLGREF_H diff --git a/src/DlgRef/DlgRef.pro b/src/DlgRef/DlgRef.pro new file mode 100644 index 000000000..1abf89059 --- /dev/null +++ b/src/DlgRef/DlgRef.pro @@ -0,0 +1,136 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = DlgRef +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +QT_INCLUDES = $$(QTDIR)/include $$(QTDIR)/include/QtCore $$(QTDIR)/include/QtGui $$(QTDIR)/include/QtOpenGL $$(QTDIR)/include/QtXml + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +GUI_CXXFLAGS = $$(GUI_ROOT_DIR)/include/salome + +GUI_LDFLAGS = -L$$(GUI_ROOT_DIR)/lib/salome + +STDLIB = -lstdc++ + +QT_MT_LIBS = -L$$(QTDIR)/lib -lQtCore -lQtXml -lQtGui -lQtOpenGL + +INCLUDEPATH += $${QT_INCLUDES} $${KERNEL_CXXFLAGS} $${GUI_CXXFLAGS} + +LIBS += $${GUI_LDFLAGS} -lqtx $${STDLIB} $${QT_MT_LIBS} + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += DLGREF_EXPORTS + +HEADERS = DlgRef_Skeleton_QTD.h +HEADERS += DlgRef_1Sel_QTD.h +HEADERS += DlgRef_2Sel_QTD.h +HEADERS += DlgRef_3Sel_QTD.h +HEADERS += DlgRef_1Sel1Check_QTD.h +HEADERS += DlgRef_1Sel3Check_QTD.h +HEADERS += DlgRef_1Sel1Check1List_QTD.h +HEADERS += DlgRef_1Sel1Spin_QTD.h +HEADERS += DlgRef_1Sel2Spin_QTD.h +HEADERS += DlgRef_1Sel3Spin_QTD.h +HEADERS += DlgRef_1Sel4Spin_QTD.h +HEADERS += DlgRef_1Sel5Spin_QTD.h +HEADERS += DlgRef_2Sel1Spin_QTD.h +HEADERS += DlgRef_2Sel2Spin_QTD.h +HEADERS += DlgRef_2Sel3Spin_QTD.h +HEADERS += DlgRef_1Sel1Spin1Check_QTD.h +HEADERS += DlgRef_1Sel3Spin1Check_QTD.h +HEADERS += DlgRef_2Sel1Spin2Check_QTD.h +HEADERS += DlgRef_2Sel2Spin1Check_QTD.h +HEADERS += DlgRef_2Sel4Spin1Check_QTD.h +HEADERS += DlgRef_3Sel4Spin2Check_QTD.h +HEADERS += DlgRef_4Sel1List_QTD.h +HEADERS += DlgRef_2Sel1List_QTD.h +HEADERS += DlgRef_1List1Spin1Btn_QTD.h +HEADERS += DlgRef_4Sel1List1Check_QTD.h +HEADERS += DlgRef_1Spin_QTD.h +HEADERS += DlgRef_2Spin_QTD.h +HEADERS += DlgRef_3Spin_QTD.h +HEADERS += DlgRef_3Spin1Check_QTD.h +HEADERS += DlgRef_3Sel3Spin1Check_QTD.h +HEADERS += DlgRef_4Sel1Spin2Check_QTD.h +HEADERS += DlgRef_4Sel1Spin3Check_QTD.h +HEADERS += DlgRef_SpinBox.h +HEADERS += DlgRef_1Sel1Spin.h +HEADERS += DlgRef_1Sel2Spin.h +HEADERS += DlgRef_1Sel3Spin.h +HEADERS += DlgRef_1Sel4Spin.h +HEADERS += DlgRef_1Sel5Spin.h +HEADERS += DlgRef_2Sel1Spin.h +HEADERS += DlgRef_2Sel2Spin.h +HEADERS += DlgRef_2Sel3Spin.h +HEADERS += DlgRef_1Sel1Spin1Check.h +HEADERS += DlgRef_1Sel3Spin1Check.h +HEADERS += DlgRef_2Sel1Spin2Check.h +HEADERS += DlgRef_2Sel2Spin1Check.h +HEADERS += DlgRef_2Sel4Spin1Check.h +HEADERS += DlgRef_3Sel4Spin2Check.h +HEADERS += DlgRef_3Sel3Spin1Check.h +HEADERS += DlgRef_1Spin.h +HEADERS += DlgRef_2Spin.h +HEADERS += DlgRef_3Spin.h +HEADERS += DlgRef_3Spin1Check.h +HEADERS += DlgRef_3Sel1Spin.h +HEADERS += DlgRef_1Sel_Ext.h +HEADERS += DlgRef_3Check_QTD.h +HEADERS += DlgRef_6Sel_QTD.h +HEADERS += DlgRef_4Sel1Spin2Check.h +HEADERS += DlgRef_3Sel1Check_QTD.h +HEADERS += GEOM_DlgRef.hxx + +SOURCES = DlgRef_SpinBox.cxx +SOURCES += DlgRef_1Sel1Spin.cxx +SOURCES += DlgRef_1Sel2Spin.cxx +SOURCES += DlgRef_1Sel3Spin.cxx +SOURCES += DlgRef_1Sel4Spin.cxx +SOURCES += DlgRef_1Sel5Spin.cxx +SOURCES += DlgRef_2Sel1Spin.cxx +SOURCES += DlgRef_2Sel2Spin.cxx +SOURCES += DlgRef_2Sel3Spin.cxx +SOURCES += DlgRef_1Sel1Spin1Check.cxx +SOURCES += DlgRef_1Sel3Spin1Check.cxx +SOURCES += DlgRef_2Sel1Spin2Check.cxx +SOURCES += DlgRef_2Sel2Spin1Check.cxx +SOURCES += DlgRef_2Sel4Spin1Check.cxx +SOURCES += DlgRef_3Sel4Spin2Check.cxx +SOURCES += DlgRef_3Sel3Spin1Check.cxx +SOURCES += DlgRef_1Spin.cxx +SOURCES += DlgRef_2Spin.cxx +SOURCES += DlgRef_3Spin.cxx +SOURCES += DlgRef_3Spin1Check.cxx +SOURCES += DlgRef_3Sel1Spin.cxx +SOURCES += DlgRef_4Sel1Spin2Check.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/DlgRef/DlgRef_1List1Spin1Btn_QTD.cxx b/src/DlgRef/DlgRef_1List1Spin1Btn_QTD.cxx deleted file mode 100644 index 0159516ca..000000000 --- a/src/DlgRef/DlgRef_1List1Spin1Btn_QTD.cxx +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_1List1Spin1Btn_QTD.ui' -** -** Created: Wed Mar 17 11:29:24 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_1List1Spin1Btn_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_1List1Spin1Btn_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_1List1Spin1Btn_QTD::DlgRef_1List1Spin1Btn_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_1List1Spin1Btn_QTD" ); - resize( 204, 148 ); - setCaption( trUtf8( "DlgRef_3Sel4Spin2Check_QTD" ) ); - DlgRef_1List1Spin1Btn_QTDLayout = new QGridLayout( this, 1, 1, 11, 6, "DlgRef_1List1Spin1Btn_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - QSpacerItem* spacer = new QSpacerItem( 0, 23, QSizePolicy::Minimum, QSizePolicy::Expanding ); - GroupBox1Layout->addItem( spacer, 3, 1 ); - - ListView1 = new QListView( GroupBox1, "ListView1" ); - - GroupBox1Layout->addMultiCellWidget( ListView1, 0, 3, 0, 0 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - GroupBox1Layout->addWidget( TextLabel1, 0, 1 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - - GroupBox1Layout->addWidget( SpinBox1, 1, 1 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setText( trUtf8( "" ) ); - - GroupBox1Layout->addWidget( PushButton1, 2, 1 ); - - DlgRef_1List1Spin1Btn_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1List1Spin1Btn_QTD::~DlgRef_1List1Spin1Btn_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_1List1Spin1Btn_QTD.h b/src/DlgRef/DlgRef_1List1Spin1Btn_QTD.h deleted file mode 100644 index a14fe62a5..000000000 --- a/src/DlgRef/DlgRef_1List1Spin1Btn_QTD.h +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_1List1Spin1Btn_QTD.ui' -** -** Created: Wed Mar 17 11:29:24 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_1LIST1SPIN1BTN_QTD_H -#define DLGREF_1LIST1SPIN1BTN_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QListView; -class QListViewItem; -class QPushButton; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_1List1Spin1Btn_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_1List1Spin1Btn_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1List1Spin1Btn_QTD(); - - QGroupBox* GroupBox1; - QListView* ListView1; - QLabel* TextLabel1; - QSpinBox* SpinBox1; - QPushButton* PushButton1; - - -protected: - QGridLayout* DlgRef_1List1Spin1Btn_QTDLayout; - QGridLayout* GroupBox1Layout; -}; - -#endif // DLGREF_1LIST1SPIN1BTN_QTD_H diff --git a/src/DlgRef/DlgRef_1List1Spin1Btn_QTD.ui b/src/DlgRef/DlgRef_1List1Spin1Btn_QTD.ui new file mode 100644 index 000000000..719494523 --- /dev/null +++ b/src/DlgRef/DlgRef_1List1Spin1Btn_QTD.ui @@ -0,0 +1,87 @@ + + DlgRef_1List1Spin1Btn_QTD + + + + 0 + 0 + 213 + 116 + + + + + + + + 0 + + + 0 + + + + + + + + + 9 + + + 6 + + + + + + + + Qt::Vertical + + + QSizePolicy::Expanding + + + + 16 + 120 + + + + + + + + + + + + + + + + + + TL1 + + + false + + + + + + + + + + qPixmapFromMimeSource + + ListView1 + SpinBox1 + PushButton1 + + + + diff --git a/src/DlgRef/DlgRef_1Sel1Check1List_QTD.cxx b/src/DlgRef/DlgRef_1Sel1Check1List_QTD.cxx deleted file mode 100644 index 05e896b28..000000000 --- a/src/DlgRef/DlgRef_1Sel1Check1List_QTD.cxx +++ /dev/null @@ -1,110 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_1Sel1Check1List_QTD.ui' -** -** Created: lun oct 27 16:18:55 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_1Sel1Check1List_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel1Check1List_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_1Sel1Check1List_QTD::DlgRef_1Sel1Check1List_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_1Sel1Check1List_QTD" ); - resize( 129, 104 ); - setCaption( trUtf8( "DlgRef_1Sel1Check1List_QTD" ) ); - DlgRef_1Sel1Check1List_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_1Sel1Check1List_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - QSpacerItem* spacer = new QSpacerItem( 0, 166, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 3, 2 ); - - CheckButton1 = new QRadioButton( GroupBox1, "CheckButton1" ); - CheckButton1->setText( trUtf8( "" ) ); - - Layout1->addMultiCellWidget( CheckButton1, 2, 2, 0, 2 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addMultiCellWidget( TextLabel2, 1, 1, 0, 1 ); - - ComboBox1 = new QComboBox( FALSE, GroupBox1, "ComboBox1" ); - ComboBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, ComboBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( ComboBox1, 1, 2 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_1Sel1Check1List_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel1Check1List_QTD::~DlgRef_1Sel1Check1List_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_1Sel1Check1List_QTD.h b/src/DlgRef/DlgRef_1Sel1Check1List_QTD.h deleted file mode 100644 index 834d71a32..000000000 --- a/src/DlgRef/DlgRef_1Sel1Check1List_QTD.h +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_1Sel1Check1List_QTD.ui' -** -** Created: lun oct 27 16:18:55 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_1SEL1CHECK1LIST_QTD_H -#define DLGREF_1SEL1CHECK1LIST_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QComboBox; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QRadioButton; - -class GEOM_DLGREF_EXPORT DlgRef_1Sel1Check1List_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_1Sel1Check1List_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1Sel1Check1List_QTD(); - - QGroupBox* GroupBox1; - QRadioButton* CheckButton1; - QLabel* TextLabel2; - QComboBox* ComboBox1; - QLineEdit* LineEdit1; - QLabel* TextLabel1; - QPushButton* PushButton1; - - -protected: - QGridLayout* DlgRef_1Sel1Check1List_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; -}; - -#endif // DLGREF_1SEL1CHECK1LIST_QTD_H diff --git a/src/DlgRef/DlgRef_1Sel1Check1List_QTD.ui b/src/DlgRef/DlgRef_1Sel1Check1List_QTD.ui new file mode 100644 index 000000000..67e158a1b --- /dev/null +++ b/src/DlgRef/DlgRef_1Sel1Check1List_QTD.ui @@ -0,0 +1,122 @@ + + DlgRef_1Sel1Check1List_QTD + + + + 0 + 0 + 156 + 94 + + + + + + + + 0 + + + 0 + + + + + + + + + 9 + + + 6 + + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + + 7 + 0 + 0 + 0 + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + ComboBox1 + CheckButton1 + + + + diff --git a/src/DlgRef/DlgRef_1Sel1Check1Sel_QTD.ui b/src/DlgRef/DlgRef_1Sel1Check1Sel_QTD.ui new file mode 100644 index 000000000..a8b94432f --- /dev/null +++ b/src/DlgRef/DlgRef_1Sel1Check1Sel_QTD.ui @@ -0,0 +1,148 @@ + + DlgRef_1Sel1Check1Sel_QTD + + + + 0 + 0 + 156 + 99 + + + + + 5 + 5 + 0 + 0 + + + + + + + + 0 + + + 0 + + + + + + 5 + 5 + 0 + 0 + + + + + + + + 9 + + + 6 + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + CheckButton1 + PushButton2 + LineEdit2 + + + + diff --git a/src/DlgRef/DlgRef_1Sel1Check_QTD.cxx b/src/DlgRef/DlgRef_1Sel1Check_QTD.cxx deleted file mode 100644 index 7c86f65c7..000000000 --- a/src/DlgRef/DlgRef_1Sel1Check_QTD.cxx +++ /dev/null @@ -1,102 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_1Sel1Check_QTD.ui' -** -** Created: Thu May 20 11:55:05 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_1Sel1Check_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel1Check_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_1Sel1Check_QTD::DlgRef_1Sel1Check_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_1Sel1Check_QTD" ); - resize( 382, 219 ); - setCaption( trUtf8( "DlgRef_1Sel1Check_QTD" ) ); - DlgRef_1Sel1Check_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_1Sel1Check_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout3 = new QGridLayout( 0, 1, 1, 0, 6, "Layout3"); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout3->addWidget( TextLabel1, 0, 0 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout3->addWidget( PushButton1, 0, 1 ); - - CheckButton1 = new QCheckBox( GroupBox1, "CheckButton1" ); - CheckButton1->setText( trUtf8( "" ) ); - - Layout3->addMultiCellWidget( CheckButton1, 1, 1, 0, 2 ); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout3->addItem( spacer, 2, 2 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout3->addWidget( LineEdit1, 0, 2 ); - - GroupBox1Layout->addLayout( Layout3, 0, 0 ); - - DlgRef_1Sel1Check_QTDLayout->addWidget( GroupBox1, 0, 0 ); - - // tab order - setTabOrder( PushButton1, LineEdit1 ); - setTabOrder( LineEdit1, CheckButton1 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel1Check_QTD::~DlgRef_1Sel1Check_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_1Sel1Check_QTD.h b/src/DlgRef/DlgRef_1Sel1Check_QTD.h deleted file mode 100644 index ace1e2606..000000000 --- a/src/DlgRef/DlgRef_1Sel1Check_QTD.h +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_1Sel1Check_QTD.ui' -** -** Created: Thu May 20 11:55:05 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_1SEL1CHECK_QTD_H -#define DLGREF_1SEL1CHECK_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QCheckBox; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; - -class GEOM_DLGREF_EXPORT DlgRef_1Sel1Check_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_1Sel1Check_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1Sel1Check_QTD(); - - QGroupBox* GroupBox1; - QLabel* TextLabel1; - QPushButton* PushButton1; - QCheckBox* CheckButton1; - QLineEdit* LineEdit1; - - -protected: - QGridLayout* DlgRef_1Sel1Check_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout3; -}; - -#endif // DLGREF_1SEL1CHECK_QTD_H diff --git a/src/DlgRef/DlgRef_1Sel1Check_QTD.ui b/src/DlgRef/DlgRef_1Sel1Check_QTD.ui new file mode 100644 index 000000000..ca24f20f8 --- /dev/null +++ b/src/DlgRef/DlgRef_1Sel1Check_QTD.ui @@ -0,0 +1,91 @@ + + DlgRef_1Sel1Check_QTD + + + + 0 + 0 + 155 + 64 + + + + + + + + 0 + + + 6 + + + + + + + + + 9 + + + 6 + + + + + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + CheckButton1 + + + + diff --git a/src/DlgRef/DlgRef_1Sel1List1Check3Btn_QTD.ui b/src/DlgRef/DlgRef_1Sel1List1Check3Btn_QTD.ui new file mode 100644 index 000000000..366d2d6ee --- /dev/null +++ b/src/DlgRef/DlgRef_1Sel1List1Check3Btn_QTD.ui @@ -0,0 +1,140 @@ + + DlgRef_1Sel1List1Check3Btn_QTD + + + + 0 + 0 + 156 + 180 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + 0 + 0 + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Qt::Vertical + + + + 20 + 21 + + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + CheckButton1 + ListView1 + PushButton2 + PushButton3 + PushButton4 + + + + diff --git a/src/DlgRef/DlgRef_1Sel1Spin.cxx b/src/DlgRef/DlgRef_1Sel1Spin.cxx deleted file mode 100644 index 1788e1892..000000000 --- a/src/DlgRef/DlgRef_1Sel1Spin.cxx +++ /dev/null @@ -1,54 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_1Sel1Spin.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_1Sel1Spin.h" - -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel1Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_1Sel1Spin::DlgRef_1Sel1Spin(QWidget* parent, const char* name, WFlags fl) - :DlgRef_1Sel1Spin_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout2->addWidget(SpinBox_DX, 0, 1); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel1Spin::~DlgRef_1Sel1Spin() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_1Sel1Spin.h b/src/DlgRef/DlgRef_1Sel1Spin.h deleted file mode 100644 index 3202db597..000000000 --- a/src/DlgRef/DlgRef_1Sel1Spin.h +++ /dev/null @@ -1,49 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_1Sel1Spin.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_1SEL1SPIN_H -#define DLGREF_1SEL1SPIN_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_1Sel1Spin_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_1Sel1Spin : public DlgRef_1Sel1Spin_QTD -{ - Q_OBJECT - -public: - DlgRef_1Sel1Spin( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1Sel1Spin(); - - DlgRef_SpinBox* SpinBox_DX; - -}; - -#endif // DLGREF_1SEL1SPIN_H diff --git a/src/DlgRef/DlgRef_1Sel1Spin1Check.cxx b/src/DlgRef/DlgRef_1Sel1Spin1Check.cxx deleted file mode 100644 index cfca35fa2..000000000 --- a/src/DlgRef/DlgRef_1Sel1Spin1Check.cxx +++ /dev/null @@ -1,54 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_1Sel1Spin1Check.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_1Sel1Spin1Check.h" - -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel1Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_1Sel1Spin1Check::DlgRef_1Sel1Spin1Check(QWidget* parent, const char* name, WFlags fl) - :DlgRef_1Sel1Spin1Check_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout2->addWidget(SpinBox_DX, 0, 1); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel1Spin1Check::~DlgRef_1Sel1Spin1Check() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_1Sel1Spin1Check.h b/src/DlgRef/DlgRef_1Sel1Spin1Check.h deleted file mode 100644 index 0e30376eb..000000000 --- a/src/DlgRef/DlgRef_1Sel1Spin1Check.h +++ /dev/null @@ -1,49 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_1Sel1Spin1Check.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_1SEL1SPIN1CHECK_H -#define DLGREF_1SEL1SPIN1CHECK_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_1Sel1Spin1Check_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_1Sel1Spin1Check : public DlgRef_1Sel1Spin1Check_QTD -{ - Q_OBJECT - -public: - DlgRef_1Sel1Spin1Check(QWidget* parent = 0, const char* name = 0, WFlags fl = 0); - ~DlgRef_1Sel1Spin1Check(); - - DlgRef_SpinBox* SpinBox_DX; - -}; - -#endif // DLGREF_1SEL1SPIN1CHECK_H diff --git a/src/DlgRef/DlgRef_1Sel1Spin1Check_QTD.cxx b/src/DlgRef/DlgRef_1Sel1Spin1Check_QTD.cxx deleted file mode 100644 index 57014bf69..000000000 --- a/src/DlgRef/DlgRef_1Sel1Spin1Check_QTD.cxx +++ /dev/null @@ -1,114 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_1Sel1Spin1Check_QTD.ui' -** -** Created: Mon May 24 15:59:03 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_1Sel1Spin1Check_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel1Spin1Check_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_1Sel1Spin1Check_QTD::DlgRef_1Sel1Spin1Check_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_1Sel1Spin1Check_QTD" ); - resize( 163, 109 ); - setCaption( trUtf8( "DlgRef_1Sel1Spin1Check_QTD" ) ); - DlgRef_1Sel1Spin1Check_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_1Sel1Spin1Check_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout8 = new QGridLayout( 0, 1, 1, 0, 6, "Layout8"); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox1, 0, 1 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout2->addWidget( TextLabel2, 0, 0 ); - - Layout8->addMultiCellLayout( Layout2, 1, 1, 0, 2 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout8->addWidget( TextLabel1, 0, 0 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout8->addWidget( LineEdit1, 0, 2 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout8->addWidget( PushButton1, 0, 1 ); - - CheckButton1 = new QCheckBox( GroupBox1, "CheckButton1" ); - CheckButton1->setText( trUtf8( "" ) ); - - Layout8->addMultiCellWidget( CheckButton1, 2, 2, 0, 2 ); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout8->addItem( spacer, 3, 2 ); - - GroupBox1Layout->addLayout( Layout8, 0, 0 ); - - DlgRef_1Sel1Spin1Check_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel1Spin1Check_QTD::~DlgRef_1Sel1Spin1Check_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_1Sel1Spin1Check_QTD.h b/src/DlgRef/DlgRef_1Sel1Spin1Check_QTD.h deleted file mode 100644 index 1dd195db4..000000000 --- a/src/DlgRef/DlgRef_1Sel1Spin1Check_QTD.h +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_1Sel1Spin1Check_QTD.ui' -** -** Created: Mon May 24 15:59:03 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_1SEL1SPIN1CHECK_QTD_H -#define DLGREF_1SEL1SPIN1CHECK_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QCheckBox; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_1Sel1Spin1Check_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_1Sel1Spin1Check_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1Sel1Spin1Check_QTD(); - - QGroupBox* GroupBox1; - QSpinBox* SpinBox1; - QLabel* TextLabel2; - QLabel* TextLabel1; - QLineEdit* LineEdit1; - QPushButton* PushButton1; - QCheckBox* CheckButton1; - - -protected: - QGridLayout* DlgRef_1Sel1Spin1Check_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout8; - QGridLayout* Layout2; -}; - -#endif // DLGREF_1SEL1SPIN1CHECK_QTD_H diff --git a/src/DlgRef/DlgRef_1Sel1Spin1Check_QTD.ui b/src/DlgRef/DlgRef_1Sel1Spin1Check_QTD.ui new file mode 100644 index 000000000..ab8c89f83 --- /dev/null +++ b/src/DlgRef/DlgRef_1Sel1Spin1Check_QTD.ui @@ -0,0 +1,138 @@ + + DlgRef_1Sel1Spin1Check_QTD + + + + 0 + 0 + 156 + 89 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + SpinBox_DX + CheckButton1 + + + +
    diff --git a/src/DlgRef/DlgRef_1Sel1Spin_QTD.cxx b/src/DlgRef/DlgRef_1Sel1Spin_QTD.cxx deleted file mode 100644 index 716703312..000000000 --- a/src/DlgRef/DlgRef_1Sel1Spin_QTD.cxx +++ /dev/null @@ -1,108 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_1Sel1Spin_QTD.ui' -** -** Created: mar sep 23 16:05:08 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_1Sel1Spin_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel1Spin_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_1Sel1Spin_QTD::DlgRef_1Sel1Spin_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_1Sel1Spin_QTD" ); - resize( 129, 87 ); - setCaption( trUtf8( "DlgRef_1Sel1Spin_QTD" ) ); - DlgRef_1Sel1Spin_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_1Sel1Spin_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout2->addWidget( TextLabel2, 0, 0 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox1, 0, 1 ); - - Layout1->addMultiCellLayout( Layout2, 1, 1, 0, 2 ); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 2, 2 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_1Sel1Spin_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel1Spin_QTD::~DlgRef_1Sel1Spin_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_1Sel1Spin_QTD.h b/src/DlgRef/DlgRef_1Sel1Spin_QTD.h deleted file mode 100644 index f00c396ef..000000000 --- a/src/DlgRef/DlgRef_1Sel1Spin_QTD.h +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_1Sel1Spin_QTD.ui' -** -** Created: mar sep 23 16:05:08 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_1SEL1SPIN_QTD_H -#define DLGREF_1SEL1SPIN_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_1Sel1Spin_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_1Sel1Spin_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1Sel1Spin_QTD(); - - QGroupBox* GroupBox1; - QPushButton* PushButton1; - QLabel* TextLabel1; - QLineEdit* LineEdit1; - QLabel* TextLabel2; - QSpinBox* SpinBox1; - - -protected: - QGridLayout* DlgRef_1Sel1Spin_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; - QGridLayout* Layout2; -}; - -#endif // DLGREF_1SEL1SPIN_QTD_H diff --git a/src/DlgRef/DlgRef_1Sel1Spin_QTD.ui b/src/DlgRef/DlgRef_1Sel1Spin_QTD.ui new file mode 100644 index 000000000..06d9d7c13 --- /dev/null +++ b/src/DlgRef/DlgRef_1Sel1Spin_QTD.ui @@ -0,0 +1,130 @@ + + DlgRef_1Sel1Spin_QTD + + + + 0 + 0 + 156 + 70 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + SpinBox_DX + + + +
    diff --git a/src/DlgRef/DlgRef_1Sel2Spin.cxx b/src/DlgRef/DlgRef_1Sel2Spin.cxx deleted file mode 100644 index 17b68a9a5..000000000 --- a/src/DlgRef/DlgRef_1Sel2Spin.cxx +++ /dev/null @@ -1,60 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_1Sel2Spin.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_1Sel2Spin.h" - -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel2Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_1Sel2Spin::DlgRef_1Sel2Spin(QWidget* parent, const char* name, WFlags fl) - :DlgRef_1Sel2Spin_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout2->addWidget(SpinBox_DX, 0, 1); - - SpinBox_DY = new DlgRef_SpinBox( GroupBox1, "SpinBox_DY"); - Layout2->addWidget(SpinBox_DY, 1, 1); - -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel2Spin::~DlgRef_1Sel2Spin() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_1Sel2Spin.h b/src/DlgRef/DlgRef_1Sel2Spin.h deleted file mode 100644 index c7e8054c1..000000000 --- a/src/DlgRef/DlgRef_1Sel2Spin.h +++ /dev/null @@ -1,50 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_1Sel2Spin.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_1SEL2SPIN_H -#define DLGREF_1SEL2SPIN_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_1Sel2Spin_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_1Sel2Spin : public DlgRef_1Sel2Spin_QTD -{ - Q_OBJECT - -public: - DlgRef_1Sel2Spin(QWidget* parent = 0, const char* name = 0, WFlags fl = 0); - ~DlgRef_1Sel2Spin(); - - DlgRef_SpinBox* SpinBox_DX; - DlgRef_SpinBox* SpinBox_DY; - -}; - -#endif // DLGREF_1SEL2SPIN_H diff --git a/src/DlgRef/DlgRef_1Sel2Spin1View1Check_QTD.ui b/src/DlgRef/DlgRef_1Sel2Spin1View1Check_QTD.ui new file mode 100644 index 000000000..675626f54 --- /dev/null +++ b/src/DlgRef/DlgRef_1Sel2Spin1View1Check_QTD.ui @@ -0,0 +1,146 @@ + + DlgRef_1Sel2Spin1View1Check_QTD + + + + 0 + 0 + 176 + 220 + + + + + + + + 0 + + + 6 + + + + + + + + + 9 + + + 6 + + + + + + + + + + + + + + Check + + + + + + + + 0 + 0 + 0 + 0 + + + + TL3 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_IntSpinBox + QSpinBox +
    SalomeApp_IntSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + SpinBox1 + SpinBox2 + TextBrowser1 + CheckBox1 + + + +
    diff --git a/src/DlgRef/DlgRef_1Sel2Spin_QTD.cxx b/src/DlgRef/DlgRef_1Sel2Spin_QTD.cxx deleted file mode 100644 index ea98f7166..000000000 --- a/src/DlgRef/DlgRef_1Sel2Spin_QTD.cxx +++ /dev/null @@ -1,119 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_1Sel2Spin_QTD.ui' -** -** Created: jeu oct 2 11:08:05 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_1Sel2Spin_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel2Spin_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_1Sel2Spin_QTD::DlgRef_1Sel2Spin_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_1Sel2Spin_QTD" ); - resize( 129, 115 ); - setCaption( trUtf8( "DlgRef_1Sel2Spin_QTD" ) ); - DlgRef_1Sel2Spin_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_1Sel2Spin_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout2->addWidget( TextLabel3, 1, 0 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox1, 0, 1 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout2->addWidget( TextLabel2, 0, 0 ); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox2, 1, 1 ); - - Layout1->addMultiCellLayout( Layout2, 1, 1, 0, 2 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - QSpacerItem* spacer = new QSpacerItem( 0, 30, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 2, 2 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_1Sel2Spin_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel2Spin_QTD::~DlgRef_1Sel2Spin_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_1Sel2Spin_QTD.h b/src/DlgRef/DlgRef_1Sel2Spin_QTD.h deleted file mode 100644 index b85a76a37..000000000 --- a/src/DlgRef/DlgRef_1Sel2Spin_QTD.h +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_1Sel2Spin_QTD.ui' -** -** Created: jeu oct 2 11:08:05 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_1SEL2SPIN_QTD_H -#define DLGREF_1SEL2SPIN_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_1Sel2Spin_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_1Sel2Spin_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1Sel2Spin_QTD(); - - QGroupBox* GroupBox1; - QLabel* TextLabel3; - QSpinBox* SpinBox1; - QLabel* TextLabel2; - QSpinBox* SpinBox2; - QLineEdit* LineEdit1; - QPushButton* PushButton1; - QLabel* TextLabel1; - - -protected: - QGridLayout* DlgRef_1Sel2Spin_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; - QGridLayout* Layout2; -}; - -#endif // DLGREF_1SEL2SPIN_QTD_H diff --git a/src/DlgRef/DlgRef_1Sel2Spin_QTD.ui b/src/DlgRef/DlgRef_1Sel2Spin_QTD.ui new file mode 100644 index 000000000..432160bea --- /dev/null +++ b/src/DlgRef/DlgRef_1Sel2Spin_QTD.ui @@ -0,0 +1,150 @@ + + DlgRef_1Sel2Spin_QTD + + + + 0 + 0 + 156 + 95 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + SpinBox_DX + SpinBox_DY + + + +
    diff --git a/src/DlgRef/DlgRef_1Sel3Check_QTD.cxx b/src/DlgRef/DlgRef_1Sel3Check_QTD.cxx deleted file mode 100644 index db0cb79ec..000000000 --- a/src/DlgRef/DlgRef_1Sel3Check_QTD.cxx +++ /dev/null @@ -1,114 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_1Sel3Check_QTD.ui' -** -** Created: Thu May 20 10:15:08 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_1Sel3Check_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel3Check_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_1Sel3Check_QTD::DlgRef_1Sel3Check_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_1Sel3Check_QTD" ); - resize( 163, 116 ); - setCaption( trUtf8( "DlgRef_1Sel3Check_QTD" ) ); - DlgRef_1Sel3Check_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_1Sel3Check_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout6 = new QGridLayout( 0, 1, 1, 0, 6, "Layout6"); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout6->addItem( spacer, 4, 2 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout6->addWidget( LineEdit1, 0, 2 ); - - CheckButton2 = new QCheckBox( GroupBox1, "CheckButton2" ); - CheckButton2->setText( trUtf8( "" ) ); - - Layout6->addMultiCellWidget( CheckButton2, 2, 2, 0, 2 ); - - CheckButton1 = new QCheckBox( GroupBox1, "CheckButton1" ); - CheckButton1->setText( trUtf8( "" ) ); - - Layout6->addMultiCellWidget( CheckButton1, 1, 1, 0, 2 ); - - CheckButton3 = new QCheckBox( GroupBox1, "CheckButton3" ); - CheckButton3->setText( trUtf8( "" ) ); - - Layout6->addMultiCellWidget( CheckButton3, 3, 3, 0, 2 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout6->addWidget( PushButton1, 0, 1 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout6->addWidget( TextLabel1, 0, 0 ); - - GroupBox1Layout->addLayout( Layout6, 0, 0 ); - - DlgRef_1Sel3Check_QTDLayout->addWidget( GroupBox1, 0, 0 ); - - // tab order - setTabOrder( PushButton1, LineEdit1 ); - setTabOrder( LineEdit1, CheckButton1 ); - setTabOrder( CheckButton1, CheckButton2 ); - setTabOrder( CheckButton2, CheckButton3 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel3Check_QTD::~DlgRef_1Sel3Check_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_1Sel3Check_QTD.h b/src/DlgRef/DlgRef_1Sel3Check_QTD.h deleted file mode 100644 index 83e38df33..000000000 --- a/src/DlgRef/DlgRef_1Sel3Check_QTD.h +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_1Sel3Check_QTD.ui' -** -** Created: Thu May 20 10:15:07 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_1SEL3CHECK_QTD_H -#define DLGREF_1SEL3CHECK_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QCheckBox; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; - -class GEOM_DLGREF_EXPORT DlgRef_1Sel3Check_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_1Sel3Check_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1Sel3Check_QTD(); - - QGroupBox* GroupBox1; - QLineEdit* LineEdit1; - QCheckBox* CheckButton2; - QCheckBox* CheckButton1; - QCheckBox* CheckButton3; - QPushButton* PushButton1; - QLabel* TextLabel1; - - -protected: - QGridLayout* DlgRef_1Sel3Check_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout6; -}; - -#endif // DLGREF_1SEL3CHECK_QTD_H diff --git a/src/DlgRef/DlgRef_1Sel3Check_QTD.ui b/src/DlgRef/DlgRef_1Sel3Check_QTD.ui new file mode 100644 index 000000000..bcc2e309d --- /dev/null +++ b/src/DlgRef/DlgRef_1Sel3Check_QTD.ui @@ -0,0 +1,107 @@ + + DlgRef_1Sel3Check_QTD + + + + 0 + 0 + 155 + 114 + + + + + + + + 0 + + + 0 + + + + + + + + + 9 + + + 6 + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + CheckButton1 + CheckButton2 + CheckButton3 + + + + diff --git a/src/DlgRef/DlgRef_1Sel3Spin.cxx b/src/DlgRef/DlgRef_1Sel3Spin.cxx deleted file mode 100644 index a356d2f1f..000000000 --- a/src/DlgRef/DlgRef_1Sel3Spin.cxx +++ /dev/null @@ -1,63 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_1Sel3Spin.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_1Sel3Spin.h" - -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel3Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_1Sel3Spin::DlgRef_1Sel3Spin(QWidget* parent, const char* name, WFlags fl) - :DlgRef_1Sel3Spin_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - SpinBox3->close(TRUE); - - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout2->addWidget(SpinBox_DX, 0, 1); - - SpinBox_DY = new DlgRef_SpinBox( GroupBox1, "SpinBox_DY"); - Layout2->addWidget(SpinBox_DY, 1, 1); - - SpinBox_DZ = new DlgRef_SpinBox( GroupBox1, "SpinBox_DZ"); - Layout2->addWidget(SpinBox_DZ, 2, 1); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel3Spin::~DlgRef_1Sel3Spin() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_1Sel3Spin.h b/src/DlgRef/DlgRef_1Sel3Spin.h deleted file mode 100644 index f307a283b..000000000 --- a/src/DlgRef/DlgRef_1Sel3Spin.h +++ /dev/null @@ -1,51 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_1Sel3Spin.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_1SEL3SPIN_H -#define DLGREF_1SEL3SPIN_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_1Sel3Spin_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_1Sel3Spin : public DlgRef_1Sel3Spin_QTD -{ - Q_OBJECT - -public: - DlgRef_1Sel3Spin(QWidget* parent = 0, const char* name = 0, WFlags fl = 0); - ~DlgRef_1Sel3Spin(); - - DlgRef_SpinBox* SpinBox_DX; - DlgRef_SpinBox* SpinBox_DY; - DlgRef_SpinBox* SpinBox_DZ; - -}; - -#endif // DLGREF_1SEL3SPIN_H diff --git a/src/DlgRef/DlgRef_1Sel3Spin1Check_QTD.ui b/src/DlgRef/DlgRef_1Sel3Spin1Check_QTD.ui new file mode 100644 index 000000000..37a9f4a66 --- /dev/null +++ b/src/DlgRef/DlgRef_1Sel3Spin1Check_QTD.ui @@ -0,0 +1,177 @@ + + DlgRef_1Sel3Spin1Check_QTD + + + + 0 + 0 + 156 + 120 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + SpinBox_DX + SpinBox_DY + SpinBox_DZ + + + +
    diff --git a/src/DlgRef/DlgRef_1Sel3Spin_QTD.cxx b/src/DlgRef/DlgRef_1Sel3Spin_QTD.cxx deleted file mode 100644 index e0356a604..000000000 --- a/src/DlgRef/DlgRef_1Sel3Spin_QTD.cxx +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_1Sel3Spin_QTD.ui' -** -** Created: ven oct 24 15:55:11 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_1Sel3Spin_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel3Spin_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_1Sel3Spin_QTD::DlgRef_1Sel3Spin_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_1Sel3Spin_QTD" ); - resize( 129, 143 ); - setCaption( trUtf8( "DlgRef_1Sel3Spin_QTD" ) ); - DlgRef_1Sel3Spin_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_1Sel3Spin_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - QSpacerItem* spacer = new QSpacerItem( 0, 150, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 2, 2 ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox2, 1, 1 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout2->addWidget( TextLabel3, 1, 0 ); - - SpinBox3 = new QSpinBox( GroupBox1, "SpinBox3" ); - SpinBox3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox3->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox3, 2, 1 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox1, 0, 1 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - TextLabel4->setText( trUtf8( "TL4" ) ); - - Layout2->addWidget( TextLabel4, 2, 0 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout2->addWidget( TextLabel2, 0, 0 ); - - Layout1->addMultiCellLayout( Layout2, 1, 1, 0, 2 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_1Sel3Spin_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel3Spin_QTD::~DlgRef_1Sel3Spin_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_1Sel3Spin_QTD.h b/src/DlgRef/DlgRef_1Sel3Spin_QTD.h deleted file mode 100644 index 61b0d21f0..000000000 --- a/src/DlgRef/DlgRef_1Sel3Spin_QTD.h +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_1Sel3Spin_QTD.ui' -** -** Created: ven oct 24 15:55:10 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_1SEL3SPIN_QTD_H -#define DLGREF_1SEL3SPIN_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_1Sel3Spin_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_1Sel3Spin_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1Sel3Spin_QTD(); - - QGroupBox* GroupBox1; - QLabel* TextLabel1; - QPushButton* PushButton1; - QLineEdit* LineEdit1; - QSpinBox* SpinBox2; - QLabel* TextLabel3; - QSpinBox* SpinBox3; - QSpinBox* SpinBox1; - QLabel* TextLabel4; - QLabel* TextLabel2; - - -protected: - QGridLayout* DlgRef_1Sel3Spin_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; - QGridLayout* Layout2; -}; - -#endif // DLGREF_1SEL3SPIN_QTD_H diff --git a/src/DlgRef/DlgRef_1Sel3Spin_QTD.ui b/src/DlgRef/DlgRef_1Sel3Spin_QTD.ui new file mode 100644 index 000000000..6ec567c6e --- /dev/null +++ b/src/DlgRef/DlgRef_1Sel3Spin_QTD.ui @@ -0,0 +1,170 @@ + + DlgRef_1Sel3Spin_QTD + + + + 0 + 0 + 156 + 120 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + SpinBox_DX + SpinBox_DY + SpinBox_DZ + + + +
    diff --git a/src/DlgRef/DlgRef_1Sel4Spin.cxx b/src/DlgRef/DlgRef_1Sel4Spin.cxx deleted file mode 100644 index 66af2fea2..000000000 --- a/src/DlgRef/DlgRef_1Sel4Spin.cxx +++ /dev/null @@ -1,67 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_1Sel4Spin.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_1Sel4Spin.h" - -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel4Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_1Sel4Spin::DlgRef_1Sel4Spin(QWidget* parent, const char* name, WFlags fl) - :DlgRef_1Sel4Spin_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - SpinBox3->close(TRUE); - SpinBox4->close(TRUE); - - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout3->addWidget(SpinBox_DX, 0, 2); - - SpinBox_DY = new DlgRef_SpinBox( GroupBox1, "SpinBox_DY"); - Layout3->addWidget(SpinBox_DY, 0, 4); - - SpinBox_DZ = new DlgRef_SpinBox( GroupBox1, "SpinBox_DZ"); - Layout3->addWidget(SpinBox_DZ, 0, 6); - - SpinBox_S = new DlgRef_SpinBox( GroupBox1, "SpinBox_S"); - Layout4->addWidget(SpinBox_S, 0, 1); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel4Spin::~DlgRef_1Sel4Spin() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_1Sel4Spin.h b/src/DlgRef/DlgRef_1Sel4Spin.h deleted file mode 100644 index 4dcfeb3c6..000000000 --- a/src/DlgRef/DlgRef_1Sel4Spin.h +++ /dev/null @@ -1,53 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_1Sel4Spin.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_1SEL4SPIN_H -#define DLGREF_1SEL4SPIN_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_1Sel4Spin_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_1Sel4Spin : public DlgRef_1Sel4Spin_QTD -{ - Q_OBJECT - -public: - DlgRef_1Sel4Spin( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1Sel4Spin(); - - DlgRef_SpinBox* SpinBox_DX; - DlgRef_SpinBox* SpinBox_DY; - DlgRef_SpinBox* SpinBox_DZ; - - DlgRef_SpinBox* SpinBox_S; - -}; - -#endif // DLGREF_1SEL4SPIN_H diff --git a/src/DlgRef/DlgRef_1Sel4Spin_QTD.cxx b/src/DlgRef/DlgRef_1Sel4Spin_QTD.cxx deleted file mode 100644 index f245c6292..000000000 --- a/src/DlgRef/DlgRef_1Sel4Spin_QTD.cxx +++ /dev/null @@ -1,151 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_1Sel4Spin_QTD.ui' -** -** Created: mar sep 23 16:05:09 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_1Sel4Spin_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel4Spin_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_1Sel4Spin_QTD::DlgRef_1Sel4Spin_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_1Sel4Spin_QTD" ); - resize( 284, 119 ); - setCaption( trUtf8( "DlgRef_1Sel4Spin_QTD" ) ); - DlgRef_1Sel4Spin_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_1Sel4Spin_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - Layout3 = new QGridLayout( 0, 1, 1, 0, 6, "Layout3"); - - TextLabel5 = new QLabel( GroupBox1, "TextLabel5" ); - TextLabel5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel5->sizePolicy().hasHeightForWidth() ) ); - TextLabel5->setText( trUtf8( "TL5" ) ); - - Layout3->addWidget( TextLabel5, 0, 5 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout3->addWidget( TextLabel3, 0, 1 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - TextLabel4->setText( trUtf8( "TL4" ) ); - - Layout3->addWidget( TextLabel4, 0, 3 ); - - SpinBox3 = new QSpinBox( GroupBox1, "SpinBox3" ); - SpinBox3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox3->sizePolicy().hasHeightForWidth() ) ); - - Layout3->addWidget( SpinBox3, 0, 6 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout3->addWidget( SpinBox1, 0, 2 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout3->addWidget( TextLabel2, 0, 0 ); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout3->addWidget( SpinBox2, 0, 4 ); - - Layout1->addLayout( Layout3, 1, 0 ); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 3, 0 ); - - Layout4 = new QGridLayout( 0, 1, 1, 0, 6, "Layout4"); - - TextLabel6 = new QLabel( GroupBox1, "TextLabel6" ); - TextLabel6->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel6->sizePolicy().hasHeightForWidth() ) ); - TextLabel6->setText( trUtf8( "TL6" ) ); - - Layout4->addWidget( TextLabel6, 0, 0 ); - - SpinBox4 = new QSpinBox( GroupBox1, "SpinBox4" ); - - Layout4->addWidget( SpinBox4, 0, 1 ); - - Layout1->addLayout( Layout4, 2, 0 ); - - Layout2 = new QHBoxLayout( 0, 0, 6, "Layout2"); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - Layout2->addWidget( TextLabel1 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - Layout2->addWidget( PushButton1 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - Layout2->addWidget( LineEdit1 ); - - Layout1->addLayout( Layout2, 0, 0 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_1Sel4Spin_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel4Spin_QTD::~DlgRef_1Sel4Spin_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_1Sel4Spin_QTD.h b/src/DlgRef/DlgRef_1Sel4Spin_QTD.h deleted file mode 100644 index a865d411b..000000000 --- a/src/DlgRef/DlgRef_1Sel4Spin_QTD.h +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_1Sel4Spin_QTD.ui' -** -** Created: mar sep 23 16:05:09 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_1SEL4SPIN_QTD_H -#define DLGREF_1SEL4SPIN_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_1Sel4Spin_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_1Sel4Spin_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1Sel4Spin_QTD(); - - QGroupBox* GroupBox1; - QLabel* TextLabel5; - QLabel* TextLabel3; - QLabel* TextLabel4; - QSpinBox* SpinBox3; - QSpinBox* SpinBox1; - QLabel* TextLabel2; - QSpinBox* SpinBox2; - QLabel* TextLabel6; - QSpinBox* SpinBox4; - QLabel* TextLabel1; - QPushButton* PushButton1; - QLineEdit* LineEdit1; - - -protected: - QGridLayout* DlgRef_1Sel4Spin_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; - QGridLayout* Layout3; - QGridLayout* Layout4; - QHBoxLayout* Layout2; -}; - -#endif // DLGREF_1SEL4SPIN_QTD_H diff --git a/src/DlgRef/DlgRef_1Sel4Spin_QTD.ui b/src/DlgRef/DlgRef_1Sel4Spin_QTD.ui new file mode 100644 index 000000000..5bb4e299c --- /dev/null +++ b/src/DlgRef/DlgRef_1Sel4Spin_QTD.ui @@ -0,0 +1,214 @@ + + DlgRef_1Sel4Spin_QTD + + + + 0 + 0 + 271 + 117 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + 0 + 0 + + + + TL6 + + + false + + + + + + + + + + + + + + 6 + + + 9 + + + 9 + + + 9 + + + 9 + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + + + + 0 + 0 + + + + TL5 + + + false + + + + + + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + qPixmapFromMimeSource + + + QtxDoubleSpinBox + QDoubleSpinBox +
    QtxDoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + SpinBox_DX + SpinBox_DY + SpinBox_DZ + SpinBox_S + + + +
    diff --git a/src/DlgRef/DlgRef_1Sel5Spin.cxx b/src/DlgRef/DlgRef_1Sel5Spin.cxx deleted file mode 100644 index 1820c25e2..000000000 --- a/src/DlgRef/DlgRef_1Sel5Spin.cxx +++ /dev/null @@ -1,71 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_1Sel5Spin.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_1Sel5Spin.h" - -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel5Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_1Sel5Spin::DlgRef_1Sel5Spin(QWidget* parent, const char* name, WFlags fl) - :DlgRef_1Sel5Spin_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - SpinBox3->close(TRUE); - SpinBox4->close(TRUE); - SpinBox5->close(TRUE); - - SpinBox_1 = new DlgRef_SpinBox(GroupBox1, "SpinBox_1"); - Layout2->addWidget(SpinBox_1, 0, 1); - - SpinBox_2 = new DlgRef_SpinBox(GroupBox1, "SpinBox_2"); - Layout2->addWidget(SpinBox_2, 0, 3); - - SpinBox_3 = new DlgRef_SpinBox(GroupBox1, "SpinBox_3"); - Layout2->addWidget(SpinBox_3, 2, 1); - - SpinBox_4 = new DlgRef_SpinBox(GroupBox1, "SpinBox_4"); - Layout2->addWidget(SpinBox_4, 1, 1); - - SpinBox_5 = new DlgRef_SpinBox(GroupBox1, "SpinBox_5"); - Layout2->addWidget(SpinBox_5, 1, 3); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel5Spin::~DlgRef_1Sel5Spin() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_1Sel5Spin.h b/src/DlgRef/DlgRef_1Sel5Spin.h deleted file mode 100644 index e1bbefbeb..000000000 --- a/src/DlgRef/DlgRef_1Sel5Spin.h +++ /dev/null @@ -1,53 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_1Sel5Spin.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_1SEL5SPIN_H -#define DLGREF_1SEL5SPIN_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_1Sel5Spin_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_1Sel5Spin : public DlgRef_1Sel5Spin_QTD -{ - Q_OBJECT - -public: - DlgRef_1Sel5Spin( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1Sel5Spin(); - - DlgRef_SpinBox* SpinBox_1; - DlgRef_SpinBox* SpinBox_2; - DlgRef_SpinBox* SpinBox_3; - DlgRef_SpinBox* SpinBox_4; - DlgRef_SpinBox* SpinBox_5; - -}; - -#endif // DLGREF_1SEL5SPIN_H diff --git a/src/DlgRef/DlgRef_1Sel5Spin1Check.cxx b/src/DlgRef/DlgRef_1Sel5Spin1Check.cxx deleted file mode 100644 index d683e9745..000000000 --- a/src/DlgRef/DlgRef_1Sel5Spin1Check.cxx +++ /dev/null @@ -1,71 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_1Sel5Spin1Check.cxx -// Author : Vladimir TURIN -// Module : GEOM -// $Header: - -#include "DlgRef_1Sel5Spin1Check.h" - -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel5Spin1Check which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_1Sel5Spin1Check::DlgRef_1Sel5Spin1Check(QWidget* parent, const char* name, WFlags fl) - :DlgRef_1Sel5Spin1Check_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - SpinBox3->close(TRUE); - SpinBox4->close(TRUE); - SpinBox5->close(TRUE); - - SpinBox_1 = new DlgRef_SpinBox(GroupBox1, "SpinBox_1"); - Layout2->addWidget(SpinBox_1, 0, 1); - - SpinBox_2 = new DlgRef_SpinBox(GroupBox1, "SpinBox_2"); - Layout2->addWidget(SpinBox_2, 0, 3); - - SpinBox_3 = new DlgRef_SpinBox(GroupBox1, "SpinBox_3"); - Layout2->addWidget(SpinBox_3, 2, 1); - - SpinBox_4 = new DlgRef_SpinBox(GroupBox1, "SpinBox_4"); - Layout2->addWidget(SpinBox_4, 1, 1); - - SpinBox_5 = new DlgRef_SpinBox(GroupBox1, "SpinBox_5"); - Layout2->addWidget(SpinBox_5, 1, 3); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel5Spin1Check::~DlgRef_1Sel5Spin1Check() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_1Sel5Spin1Check.h b/src/DlgRef/DlgRef_1Sel5Spin1Check.h deleted file mode 100644 index 271839c42..000000000 --- a/src/DlgRef/DlgRef_1Sel5Spin1Check.h +++ /dev/null @@ -1,53 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_1Sel5Spin1Check.h -// Author : Vladimir TURIN -// Module : GEOM -// $Header: - -#ifndef DLGREF_1SEL5SPIN_H -#define DLGREF_1SEL5SPIN_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_1Sel5Spin1Check_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_1Sel5Spin1Check : public DlgRef_1Sel5Spin1Check_QTD -{ - Q_OBJECT - -public: - DlgRef_1Sel5Spin1Check( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1Sel5Spin1Check(); - - DlgRef_SpinBox* SpinBox_1; - DlgRef_SpinBox* SpinBox_2; - DlgRef_SpinBox* SpinBox_3; - DlgRef_SpinBox* SpinBox_4; - DlgRef_SpinBox* SpinBox_5; - -}; - -#endif // DLGREF_1SEL5SPIN_H diff --git a/src/DlgRef/DlgRef_1Sel5Spin1Check_QTD.cxx b/src/DlgRef/DlgRef_1Sel5Spin1Check_QTD.cxx deleted file mode 100644 index 27857593a..000000000 --- a/src/DlgRef/DlgRef_1Sel5Spin1Check_QTD.cxx +++ /dev/null @@ -1,150 +0,0 @@ -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_1Sel5Spin1Check_QTD.ui' -** -** Created: Fri Feb 1 14:04:55 2008 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#include "DlgRef_1Sel5Spin1Check_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel5Spin1Check_QTD as a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_1Sel5Spin1Check_QTD::DlgRef_1Sel5Spin1Check_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_1Sel5Spin1Check_QTD" ); - DlgRef_1Sel5Spin1Check_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_1Sel5Spin1Check_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox2, 0, 3 ); - - SpinBox3 = new QSpinBox( GroupBox1, "SpinBox3" ); - SpinBox3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox3->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox3, 2, 1 ); - - TextLabel5 = new QLabel( GroupBox1, "TextLabel5" ); - TextLabel5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel5->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( TextLabel5, 1, 0 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( TextLabel3, 0, 2 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( TextLabel4, 2, 0 ); - - SpinBox4 = new QSpinBox( GroupBox1, "SpinBox4" ); - SpinBox4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox4->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox4, 1, 1 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox1, 0, 1 ); - - TextLabel6 = new QLabel( GroupBox1, "TextLabel6" ); - TextLabel6->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel6->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( TextLabel6, 1, 2 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( TextLabel2, 0, 0 ); - - SpinBox5 = new QSpinBox( GroupBox1, "SpinBox5" ); - SpinBox5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox5->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox5, 1, 3 ); - - CheckBox1 = new QCheckBox( GroupBox1, "CheckBox1" ); - - Layout2->addMultiCellWidget( CheckBox1, 2, 2, 2, 3 ); - - Layout1->addMultiCellLayout( Layout2, 1, 1, 0, 2 ); - Spacer6 = new QSpacerItem( 0, 120, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( Spacer6, 2, 2 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_1Sel5Spin1Check_QTDLayout->addWidget( GroupBox1, 0, 0 ); - languageChange(); - resize( QSize(162, 143).expandedTo(minimumSizeHint()) ); - clearWState( WState_Polished ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel5Spin1Check_QTD::~DlgRef_1Sel5Spin1Check_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - -/* - * Sets the strings of the subwidgets using the current - * language. - */ -void DlgRef_1Sel5Spin1Check_QTD::languageChange() -{ - setCaption( tr( "DlgRef_1Sel5Spin1Check_QTD" ) ); - GroupBox1->setTitle( QString::null ); - TextLabel1->setText( tr( "TL1" ) ); - PushButton1->setText( QString::null ); - TextLabel5->setText( tr( "TL5" ) ); - TextLabel3->setText( tr( "TL3" ) ); - TextLabel4->setText( tr( "TL4" ) ); - TextLabel6->setText( tr( "TL6" ) ); - TextLabel2->setText( tr( "TL2" ) ); - CheckBox1->setText( QString::null ); -} - diff --git a/src/DlgRef/DlgRef_1Sel5Spin1Check_QTD.h b/src/DlgRef/DlgRef_1Sel5Spin1Check_QTD.h deleted file mode 100644 index 0f7fbc84b..000000000 --- a/src/DlgRef/DlgRef_1Sel5Spin1Check_QTD.h +++ /dev/null @@ -1,63 +0,0 @@ -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_1Sel5Spin1Check_QTD.ui' -** -** Created: Fri Feb 1 14:04:51 2008 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#ifndef DLGREF_1SEL5SPIN1CHECK_QTD_H -#define DLGREF_1SEL5SPIN1CHECK_QTD_H - -#include -#include - -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QSpacerItem; -class QGroupBox; -class QLabel; -class QPushButton; -class QSpinBox; -class QCheckBox; -class QLineEdit; - -class DlgRef_1Sel5Spin1Check_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_1Sel5Spin1Check_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1Sel5Spin1Check_QTD(); - - QGroupBox* GroupBox1; - QLabel* TextLabel1; - QPushButton* PushButton1; - QSpinBox* SpinBox2; - QSpinBox* SpinBox3; - QLabel* TextLabel5; - QLabel* TextLabel3; - QLabel* TextLabel4; - QSpinBox* SpinBox4; - QSpinBox* SpinBox1; - QLabel* TextLabel6; - QLabel* TextLabel2; - QSpinBox* SpinBox5; - QCheckBox* CheckBox1; - QLineEdit* LineEdit1; - -protected: - QGridLayout* DlgRef_1Sel5Spin1Check_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; - QSpacerItem* Spacer6; - QGridLayout* Layout2; - -protected slots: - virtual void languageChange(); - -}; - -#endif // DLGREF_1SEL5SPIN1CHECK_QTD_H diff --git a/src/DlgRef/DlgRef_1Sel5Spin1Check_QTD.ui b/src/DlgRef/DlgRef_1Sel5Spin1Check_QTD.ui new file mode 100644 index 000000000..3c50b200c --- /dev/null +++ b/src/DlgRef/DlgRef_1Sel5Spin1Check_QTD.ui @@ -0,0 +1,196 @@ + + DlgRef_1Sel5Spin1Check_QTD + + + + 0 + 0 + 165 + 125 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + + 0 + 0 + + + + TL5 + + + false + + + + + + + + + + + 0 + 0 + + + + TL6 + + + false + + + + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + + + + + + + + + + + + + + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + SpinBox1 + SpinBox2 + SpinBox4 + SpinBox5 + SpinBox3 + CheckBox1 + + + +
    diff --git a/src/DlgRef/DlgRef_1Sel5Spin_QTD.cxx b/src/DlgRef/DlgRef_1Sel5Spin_QTD.cxx deleted file mode 100644 index 3fd23ef11..000000000 --- a/src/DlgRef/DlgRef_1Sel5Spin_QTD.cxx +++ /dev/null @@ -1,152 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_1Sel5Spin_QTD.ui' -** -** Created: mar nov 18 11:19:14 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_1Sel5Spin_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel5Spin_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_1Sel5Spin_QTD::DlgRef_1Sel5Spin_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_1Sel5Spin_QTD" ); - resize( 162, 143 ); - setCaption( trUtf8( "DlgRef_1Sel5Spin_QTD" ) ); - DlgRef_1Sel5Spin_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_1Sel5Spin_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox2, 0, 3 ); - - SpinBox3 = new QSpinBox( GroupBox1, "SpinBox3" ); - SpinBox3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox3->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox3, 2, 1 ); - - TextLabel5 = new QLabel( GroupBox1, "TextLabel5" ); - TextLabel5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel5->sizePolicy().hasHeightForWidth() ) ); - TextLabel5->setText( trUtf8( "TL5" ) ); - - Layout2->addWidget( TextLabel5, 1, 0 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout2->addWidget( TextLabel3, 0, 2 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - TextLabel4->setText( trUtf8( "TL4" ) ); - - Layout2->addWidget( TextLabel4, 2, 0 ); - - SpinBox4 = new QSpinBox( GroupBox1, "SpinBox4" ); - SpinBox4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox4->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox4, 1, 1 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox1, 0, 1 ); - - TextLabel6 = new QLabel( GroupBox1, "TextLabel6" ); - TextLabel6->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel6->sizePolicy().hasHeightForWidth() ) ); - TextLabel6->setText( trUtf8( "TL6" ) ); - - Layout2->addWidget( TextLabel6, 1, 2 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout2->addWidget( TextLabel2, 0, 0 ); - - SpinBox5 = new QSpinBox( GroupBox1, "SpinBox5" ); - SpinBox5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox5->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox5, 1, 3 ); - - Layout1->addMultiCellLayout( Layout2, 1, 1, 0, 2 ); - QSpacerItem* spacer = new QSpacerItem( 0, 120, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 2, 2 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_1Sel5Spin_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel5Spin_QTD::~DlgRef_1Sel5Spin_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_1Sel5Spin_QTD.h b/src/DlgRef/DlgRef_1Sel5Spin_QTD.h deleted file mode 100644 index d5375b19c..000000000 --- a/src/DlgRef/DlgRef_1Sel5Spin_QTD.h +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_1Sel5Spin_QTD.ui' -** -** Created: mar nov 18 11:19:13 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_1SEL5SPIN_QTD_H -#define DLGREF_1SEL5SPIN_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_1Sel5Spin_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_1Sel5Spin_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1Sel5Spin_QTD(); - - QGroupBox* GroupBox1; - QLabel* TextLabel1; - QPushButton* PushButton1; - QSpinBox* SpinBox2; - QSpinBox* SpinBox3; - QLabel* TextLabel5; - QLabel* TextLabel3; - QLabel* TextLabel4; - QSpinBox* SpinBox4; - QSpinBox* SpinBox1; - QLabel* TextLabel6; - QLabel* TextLabel2; - QSpinBox* SpinBox5; - QLineEdit* LineEdit1; - - -protected: - QGridLayout* DlgRef_1Sel5Spin_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; - QGridLayout* Layout2; -}; - -#endif // DLGREF_1SEL5SPIN_QTD_H diff --git a/src/DlgRef/DlgRef_1Sel5Spin_QTD.ui b/src/DlgRef/DlgRef_1Sel5Spin_QTD.ui new file mode 100644 index 000000000..eb2fd7743 --- /dev/null +++ b/src/DlgRef/DlgRef_1Sel5Spin_QTD.ui @@ -0,0 +1,232 @@ + + DlgRef_1Sel5Spin_QTD + + + + 0 + 0 + 174 + 123 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + + 0 + 0 + + + + TL6 + + + false + + + + + + + + + + + + + + + + + 0 + 0 + + + + TL5 + + + false + + + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + + + + qPixmapFromMimeSource + + + QtxDoubleSpinBox + QDoubleSpinBox +
    QtxDoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + SpinBox1 + SpinBox2 + SpinBox4 + SpinBox5 + SpinBox3 + + + +
    diff --git a/src/DlgRef/DlgRef_1SelExt_QTD.ui b/src/DlgRef/DlgRef_1SelExt_QTD.ui new file mode 100644 index 000000000..6b285a1b2 --- /dev/null +++ b/src/DlgRef/DlgRef_1SelExt_QTD.ui @@ -0,0 +1,94 @@ + + DlgRef_1SelExt_QTD + + + + 0 + 0 + 155 + 51 + + + + + + + + 0 + + + 0 + + + + + + 7 + 7 + 0 + 0 + + + + + + + + 9 + + + 6 + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + + + + diff --git a/src/DlgRef/DlgRef_1Sel_QTD.cxx b/src/DlgRef/DlgRef_1Sel_QTD.cxx deleted file mode 100644 index 0c2220e53..000000000 --- a/src/DlgRef/DlgRef_1Sel_QTD.cxx +++ /dev/null @@ -1,93 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_1Sel_QTD.ui' -** -** Created: lun sep 22 17:38:06 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_1Sel_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_1Sel_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_1Sel_QTD::DlgRef_1Sel_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_1Sel_QTD" ); - resize( 129, 57 ); - setCaption( trUtf8( "DlgRef_1Sel_QTD" ) ); - DlgRef_1Sel_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_1Sel_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)7, 0, 0, GroupBox1->sizePolicy().hasHeightForWidth() ) ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 1, 2 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_1Sel_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Sel_QTD::~DlgRef_1Sel_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_1Sel_QTD.h b/src/DlgRef/DlgRef_1Sel_QTD.h deleted file mode 100644 index 4fce28453..000000000 --- a/src/DlgRef/DlgRef_1Sel_QTD.h +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_1Sel_QTD.ui' -** -** Created: lun sep 22 17:38:05 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_1SEL_QTD_H -#define DLGREF_1SEL_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; - -class GEOM_DLGREF_EXPORT DlgRef_1Sel_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_1Sel_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1Sel_QTD(); - - QGroupBox* GroupBox1; - QPushButton* PushButton1; - QLineEdit* LineEdit1; - QLabel* TextLabel1; - - -protected: - QGridLayout* DlgRef_1Sel_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; -}; - -#endif // DLGREF_1SEL_QTD_H diff --git a/src/DlgRef/DlgRef_1Sel_QTD.ui b/src/DlgRef/DlgRef_1Sel_QTD.ui new file mode 100644 index 000000000..ffcb8aa8c --- /dev/null +++ b/src/DlgRef/DlgRef_1Sel_QTD.ui @@ -0,0 +1,91 @@ + + DlgRef_1Sel_QTD + + + + 0 + 0 + 155 + 45 + + + + + + + + 0 + + + 0 + + + + + + 7 + 7 + 0 + 0 + + + + + + + + 9 + + + 6 + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + + + + diff --git a/src/DlgRef/DlgRef_1Spin.cxx b/src/DlgRef/DlgRef_1Spin.cxx deleted file mode 100644 index 00244bc79..000000000 --- a/src/DlgRef/DlgRef_1Spin.cxx +++ /dev/null @@ -1,56 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_1Spin.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_1Spin.h" - -#include -#include -#include - -/* - * Constructs a DlgRef_1Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_1Spin::DlgRef_1Spin(QWidget* parent, const char* name, WFlags fl) - :DlgRef_1Spin_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout1->addWidget(SpinBox_DX, 0, 1); - -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Spin::~DlgRef_1Spin() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_1Spin.h b/src/DlgRef/DlgRef_1Spin.h deleted file mode 100644 index 8acaa2680..000000000 --- a/src/DlgRef/DlgRef_1Spin.h +++ /dev/null @@ -1,49 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_1Spin.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_1SPIN_H -#define DLGREF_1SPIN_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_1Spin_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_1Spin : public DlgRef_1Spin_QTD -{ - Q_OBJECT - -public: - DlgRef_1Spin(QWidget* parent = 0, const char* name = 0, WFlags fl = 0); - ~DlgRef_1Spin(); - - DlgRef_SpinBox* SpinBox_DX; - -}; - -#endif // DLGREF_1SPIN_H diff --git a/src/DlgRef/DlgRef_1Spin_QTD.cxx b/src/DlgRef/DlgRef_1Spin_QTD.cxx deleted file mode 100644 index a028f91d9..000000000 --- a/src/DlgRef/DlgRef_1Spin_QTD.cxx +++ /dev/null @@ -1,87 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_1Spin_QTD.ui' -** -** Created: jeu sep 25 12:22:29 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_1Spin_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_1Spin_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_1Spin_QTD::DlgRef_1Spin_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_1Spin_QTD" ); - resize( 124, 55 ); - setCaption( trUtf8( "DlgRef_1Spin_QTD" ) ); - DlgRef_1Spin_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_1Spin_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 3, 1 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox1, 0, 1 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_1Spin_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_1Spin_QTD::~DlgRef_1Spin_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_1Spin_QTD.h b/src/DlgRef/DlgRef_1Spin_QTD.h deleted file mode 100644 index 25177e9e5..000000000 --- a/src/DlgRef/DlgRef_1Spin_QTD.h +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_1Spin_QTD.ui' -** -** Created: jeu sep 25 12:22:29 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_1SPIN_QTD_H -#define DLGREF_1SPIN_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_1Spin_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_1Spin_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_1Spin_QTD(); - - QGroupBox* GroupBox1; - QSpinBox* SpinBox1; - QLabel* TextLabel1; - - -protected: - QGridLayout* DlgRef_1Spin_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; -}; - -#endif // DLGREF_1SPIN_QTD_H diff --git a/src/DlgRef/DlgRef_1Spin_QTD.ui b/src/DlgRef/DlgRef_1Spin_QTD.ui new file mode 100644 index 000000000..1ede440a5 --- /dev/null +++ b/src/DlgRef/DlgRef_1Spin_QTD.ui @@ -0,0 +1,93 @@ + + DlgRef_1Spin_QTD + + + + 0 + 0 + 99 + 41 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + +
    diff --git a/src/DlgRef/DlgRef_2Sel1List1Check_QTD.cxx b/src/DlgRef/DlgRef_2Sel1List1Check_QTD.cxx deleted file mode 100644 index b469af6b6..000000000 --- a/src/DlgRef/DlgRef_2Sel1List1Check_QTD.cxx +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_4Sel1List_QTD.ui' -** -** Created: lun oct 31 17:21:04 2006 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_2Sel1List1Check_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel1List_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_2Sel1List1Check_QTD::DlgRef_2Sel1List1Check_QTD( QWidget* parent, - const char* name, - WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_2Sel1List1Check_QTD" ); - resize( 129, 175 ); - setCaption( trUtf8( "DlgRef_2Sel1List1Check_QTD" ) ); - DlgRef_2Sel1List1Check_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_2Sel1List1Check_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - PushButton2->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addWidget( LineEdit2, 1, 2 ); - - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout1->addMultiCellWidget( TextLabel3, 2, 2, 0, 1 ); - - ComboBox1 = new QComboBox( FALSE, GroupBox1, "ComboBox1" ); - ComboBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, ComboBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( ComboBox1, 2, 2 ); - - radioButton4 = new QRadioButton( GroupBox1, "radioButton4" ); - GroupBox1Layout->addMultiCellWidget( radioButton4, 3, 3, 0, 1 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_2Sel1List1Check_QTDLayout->addWidget( GroupBox1, 0, 0 ); - - QSpacerItem* spacer = new QSpacerItem( 0, 80, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 5, 2 ); - -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel1List1Check_QTD::~DlgRef_2Sel1List1Check_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_2Sel1List1Check_QTD.h b/src/DlgRef/DlgRef_2Sel1List1Check_QTD.h deleted file mode 100644 index 8b636a8d9..000000000 --- a/src/DlgRef/DlgRef_2Sel1List1Check_QTD.h +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_2Sel1List_QTD.ui' -** -** Created: lun oct 31 17:21:03 2006 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_2SEL1LIST_QTD_H -#define DLGREF_2SEL1LIST_QTD_H - -#include "GEOM_DlgRef.hxx" -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QComboBox; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QRadioButton; - -class GEOM_DLGREF_EXPORT DlgRef_2Sel1List1Check_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_2Sel1List1Check_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_2Sel1List1Check_QTD(); - - QGroupBox* GroupBox1; - QLineEdit* LineEdit2; - QPushButton* PushButton1; - QPushButton* PushButton2; - QLabel* TextLabel1; - QLineEdit* LineEdit1; - QLabel* TextLabel2; - QComboBox* ComboBox1; - QLabel* TextLabel3; - QRadioButton* radioButton4; - - -protected: - QGridLayout* DlgRef_2Sel1List1Check_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; -}; - -#endif // DLGREF_2SEL1LIST1CHECK_QTD_H diff --git a/src/DlgRef/DlgRef_2Sel1List1Check_QTD.ui b/src/DlgRef/DlgRef_2Sel1List1Check_QTD.ui new file mode 100644 index 000000000..463393043 --- /dev/null +++ b/src/DlgRef/DlgRef_2Sel1List1Check_QTD.ui @@ -0,0 +1,153 @@ + + DlgRef_2Sel1List1Check_QTD + + + + 0 + 0 + 211 + 121 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + ComboBox1 + + + + diff --git a/src/DlgRef/DlgRef_2Sel1List_QTD.cxx b/src/DlgRef/DlgRef_2Sel1List_QTD.cxx deleted file mode 100644 index ec428c3fe..000000000 --- a/src/DlgRef/DlgRef_2Sel1List_QTD.cxx +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_4Sel1List_QTD.ui' -** -** Created: lun oct 31 17:21:04 2006 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_2Sel1List_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel1List_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_2Sel1List_QTD::DlgRef_2Sel1List_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_2Sel1List_QTD" ); - resize( 129, 175 ); - setCaption( trUtf8( "DlgRef_2Sel1List_QTD" ) ); - DlgRef_2Sel1List_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_2Sel1List_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - PushButton2->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addWidget( LineEdit2, 1, 2 ); - - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout1->addMultiCellWidget( TextLabel3, 2, 2, 0, 1 ); - - ComboBox1 = new QComboBox( FALSE, GroupBox1, "ComboBox1" ); - ComboBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, ComboBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( ComboBox1, 2, 2 ); - - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_2Sel1List_QTDLayout->addWidget( GroupBox1, 0, 0 ); - - QSpacerItem* spacer = new QSpacerItem( 0, 80, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 5, 2 ); - -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel1List_QTD::~DlgRef_2Sel1List_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_2Sel1List_QTD.h b/src/DlgRef/DlgRef_2Sel1List_QTD.h deleted file mode 100644 index a5665797e..000000000 --- a/src/DlgRef/DlgRef_2Sel1List_QTD.h +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_2Sel1List_QTD.ui' -** -** Created: lun oct 31 17:21:03 2006 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_2SEL1LIST_QTD_H -#define DLGREF_2SEL1LIST_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QComboBox; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; - -class GEOM_DLGREF_EXPORT DlgRef_2Sel1List_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_2Sel1List_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_2Sel1List_QTD(); - - QGroupBox* GroupBox1; - QLineEdit* LineEdit2; - QPushButton* PushButton1; - QPushButton* PushButton2; - QLabel* TextLabel1; - QLineEdit* LineEdit1; - QLabel* TextLabel2; - QComboBox* ComboBox1; - QLabel* TextLabel3; - - -protected: - QGridLayout* DlgRef_2Sel1List_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; -}; - -#endif // DLGREF_2SEL1LIST_QTD_H diff --git a/src/DlgRef/DlgRef_2Sel1List_QTD.ui b/src/DlgRef/DlgRef_2Sel1List_QTD.ui new file mode 100644 index 000000000..53ba9da42 --- /dev/null +++ b/src/DlgRef/DlgRef_2Sel1List_QTD.ui @@ -0,0 +1,152 @@ + + DlgRef_2Sel1List_QTD + + + + 0 + 0 + 156 + 100 + + + + + + + + 0 + + + 0 + + + + + + + + + 9 + + + 6 + + + + + + 7 + 0 + 0 + 0 + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL3 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + ComboBox1 + + + + diff --git a/src/DlgRef/DlgRef_2Sel1Spin.cxx b/src/DlgRef/DlgRef_2Sel1Spin.cxx deleted file mode 100644 index 141e744fd..000000000 --- a/src/DlgRef/DlgRef_2Sel1Spin.cxx +++ /dev/null @@ -1,59 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_2Sel1Spin.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_2Sel1Spin.h" - -#include -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel1Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_2Sel1Spin::DlgRef_2Sel1Spin(QWidget* parent, const char* name, WFlags fl) - :DlgRef_2Sel1Spin_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout2->addWidget(SpinBox_DX, 0, 1); - - // PAL 6532 - PushButton1->setAutoDefault( false ); - PushButton2->setAutoDefault( false ); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel1Spin::~DlgRef_2Sel1Spin() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_2Sel1Spin.h b/src/DlgRef/DlgRef_2Sel1Spin.h deleted file mode 100644 index 8e401687f..000000000 --- a/src/DlgRef/DlgRef_2Sel1Spin.h +++ /dev/null @@ -1,49 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_2Sel1Spin.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_2SEL1SPIN_H -#define DLGREF_2SEL1SPIN_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_2Sel1Spin_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_2Sel1Spin : public DlgRef_2Sel1Spin_QTD -{ - Q_OBJECT - -public: - DlgRef_2Sel1Spin( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_2Sel1Spin(); - - DlgRef_SpinBox* SpinBox_DX; - -}; - -#endif // DLGREF_2SEL1SPIN_H diff --git a/src/DlgRef/DlgRef_2Sel1Spin2Check.cxx b/src/DlgRef/DlgRef_2Sel1Spin2Check.cxx deleted file mode 100644 index 0184c15e4..000000000 --- a/src/DlgRef/DlgRef_2Sel1Spin2Check.cxx +++ /dev/null @@ -1,54 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_2Sel1Spin2Check.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_2Sel1Spin2Check.h" - -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel1Spin2Check which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_2Sel1Spin2Check::DlgRef_2Sel1Spin2Check(QWidget* parent, const char* name, WFlags fl) - :DlgRef_2Sel1Spin2Check_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout1->addWidget(SpinBox_DX, 2, 2); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel1Spin2Check::~DlgRef_2Sel1Spin2Check() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_2Sel1Spin2Check.h b/src/DlgRef/DlgRef_2Sel1Spin2Check.h deleted file mode 100644 index 227dcee67..000000000 --- a/src/DlgRef/DlgRef_2Sel1Spin2Check.h +++ /dev/null @@ -1,49 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_2Sel1Spin2Check.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_2SEL1SPIN2CHECK_H -#define DLGREF_2SEL1SPIN2CHECK_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_2Sel1Spin2Check_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_2Sel1Spin2Check : public DlgRef_2Sel1Spin2Check_QTD -{ - Q_OBJECT - -public: - DlgRef_2Sel1Spin2Check(QWidget* parent = 0, const char* name = 0, WFlags fl = 0); - ~DlgRef_2Sel1Spin2Check(); - - DlgRef_SpinBox* SpinBox_DX; - -}; - -#endif // DLGREF_2SEL1SPIN2CHECK_H diff --git a/src/DlgRef/DlgRef_2Sel1Spin2Check_QTD.cxx b/src/DlgRef/DlgRef_2Sel1Spin2Check_QTD.cxx deleted file mode 100644 index 35fd8b355..000000000 --- a/src/DlgRef/DlgRef_2Sel1Spin2Check_QTD.cxx +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_2Sel1Spin2Check_QTD.ui' -** -** Created: Fri Aug 13 15:32:26 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_2Sel1Spin2Check_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel1Spin2Check_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_2Sel1Spin2Check_QTD::DlgRef_2Sel1Spin2Check_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_2Sel1Spin2Check_QTD" ); - resize( 256, 139 ); - setCaption( trUtf8( "DlgRef_2Sel1Spin2Check_QTD" ) ); - DlgRef_2Sel1Spin2Check_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_2Sel1Spin2Check_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout1->addWidget( TextLabel3, 2, 0 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - QSpacerItem* spacer = new QSpacerItem( 0, 316, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 4, 2 ); - - CheckButton2 = new QCheckBox( GroupBox1, "CheckButton2" ); - CheckButton2->setText( trUtf8( "" ) ); - - Layout1->addWidget( CheckButton2, 2, 3 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addMultiCellWidget( LineEdit2, 1, 1, 2, 3 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - PushButton2->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addMultiCellWidget( LineEdit1, 0, 0, 2, 3 ); - - CheckButton1 = new QCheckBox( GroupBox1, "CheckButton1" ); - CheckButton1->setText( trUtf8( "" ) ); - - Layout1->addMultiCellWidget( CheckButton1, 3, 3, 0, 3 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox1, 2, 2 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_2Sel1Spin2Check_QTDLayout->addWidget( GroupBox1, 0, 0 ); - - // tab order - setTabOrder( PushButton1, LineEdit1 ); - setTabOrder( LineEdit1, PushButton2 ); - setTabOrder( PushButton2, LineEdit2 ); - setTabOrder( LineEdit2, SpinBox1 ); - setTabOrder( SpinBox1, CheckButton2 ); - setTabOrder( CheckButton2, CheckButton1 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel1Spin2Check_QTD::~DlgRef_2Sel1Spin2Check_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_2Sel1Spin2Check_QTD.h b/src/DlgRef/DlgRef_2Sel1Spin2Check_QTD.h deleted file mode 100644 index 617fd445a..000000000 --- a/src/DlgRef/DlgRef_2Sel1Spin2Check_QTD.h +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_2Sel1Spin2Check_QTD.ui' -** -** Created: Fri Aug 13 15:32:26 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_2SEL1SPIN2CHECK_QTD_H -#define DLGREF_2SEL1SPIN2CHECK_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QCheckBox; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_2Sel1Spin2Check_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_2Sel1Spin2Check_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_2Sel1Spin2Check_QTD(); - - QGroupBox* GroupBox1; - QLabel* TextLabel2; - QPushButton* PushButton1; - QLabel* TextLabel3; - QLabel* TextLabel1; - QCheckBox* CheckButton2; - QLineEdit* LineEdit2; - QPushButton* PushButton2; - QLineEdit* LineEdit1; - QCheckBox* CheckButton1; - QSpinBox* SpinBox1; - - -protected: - QGridLayout* DlgRef_2Sel1Spin2Check_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; -}; - -#endif // DLGREF_2SEL1SPIN2CHECK_QTD_H diff --git a/src/DlgRef/DlgRef_2Sel1Spin2Check_QTD.ui b/src/DlgRef/DlgRef_2Sel1Spin2Check_QTD.ui new file mode 100644 index 000000000..5bb1b8e38 --- /dev/null +++ b/src/DlgRef/DlgRef_2Sel1Spin2Check_QTD.ui @@ -0,0 +1,193 @@ + + DlgRef_2Sel1Spin2Check_QTD + + + + 0 + 0 + 170 + 118 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + 0 + 0 + + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + SpinBox_DX + CheckButton2 + CheckButton1 + + + +
    diff --git a/src/DlgRef/DlgRef_2Sel1Spin_QTD.cxx b/src/DlgRef/DlgRef_2Sel1Spin_QTD.cxx deleted file mode 100644 index 0e649c958..000000000 --- a/src/DlgRef/DlgRef_2Sel1Spin_QTD.cxx +++ /dev/null @@ -1,132 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_2Sel1Spin_QTD.ui' -** -** Created: Tue Jun 1 16:15:00 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_2Sel1Spin_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel1Spin_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_2Sel1Spin_QTD::DlgRef_2Sel1Spin_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_2Sel1Spin_QTD" ); - resize( 163, 122 ); - setCaption( trUtf8( "DlgRef_2Sel1Spin_QTD" ) ); - DlgRef_2Sel1Spin_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_2Sel1Spin_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - PushButton2->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addWidget( LineEdit2, 1, 2 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setFrameShape( QLabel::NoFrame ); - TextLabel2->setFrameShadow( QLabel::Plain ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox1, 0, 1 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout2->addWidget( TextLabel3, 0, 0 ); - - Layout1->addMultiCellLayout( Layout2, 2, 2, 0, 2 ); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 3, 2 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_2Sel1Spin_QTDLayout->addWidget( GroupBox1, 0, 0 ); - - // tab order - setTabOrder( PushButton1, LineEdit1 ); - setTabOrder( LineEdit1, PushButton2 ); - setTabOrder( PushButton2, LineEdit2 ); - setTabOrder( LineEdit2, SpinBox1 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel1Spin_QTD::~DlgRef_2Sel1Spin_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_2Sel1Spin_QTD.h b/src/DlgRef/DlgRef_2Sel1Spin_QTD.h deleted file mode 100644 index d35c3606e..000000000 --- a/src/DlgRef/DlgRef_2Sel1Spin_QTD.h +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_2Sel1Spin_QTD.ui' -** -** Created: Tue Jun 1 16:14:59 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_2SEL1SPIN_QTD_H -#define DLGREF_2SEL1SPIN_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_2Sel1Spin_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_2Sel1Spin_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_2Sel1Spin_QTD(); - - QGroupBox* GroupBox1; - QLineEdit* LineEdit1; - QPushButton* PushButton2; - QLabel* TextLabel1; - QLineEdit* LineEdit2; - QPushButton* PushButton1; - QLabel* TextLabel2; - QSpinBox* SpinBox1; - QLabel* TextLabel3; - - -protected: - QGridLayout* DlgRef_2Sel1Spin_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; - QGridLayout* Layout2; -}; - -#endif // DLGREF_2SEL1SPIN_QTD_H diff --git a/src/DlgRef/DlgRef_2Sel1Spin_QTD.ui b/src/DlgRef/DlgRef_2Sel1Spin_QTD.ui new file mode 100644 index 000000000..76fc2d494 --- /dev/null +++ b/src/DlgRef/DlgRef_2Sel1Spin_QTD.ui @@ -0,0 +1,169 @@ + + DlgRef_2Sel1Spin_QTD + + + + 0 + 0 + 156 + 99 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + 0 + 0 + + + + QFrame::NoFrame + + + QFrame::Plain + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + + + +
    diff --git a/src/DlgRef/DlgRef_2Sel2List_QTD.ui b/src/DlgRef/DlgRef_2Sel2List_QTD.ui new file mode 100644 index 000000000..b54bca512 --- /dev/null +++ b/src/DlgRef/DlgRef_2Sel2List_QTD.ui @@ -0,0 +1,166 @@ + + DlgRef_2Sel2List_QTD + + + + 0 + 0 + 128 + 144 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + 0 + 0 + + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + ComboBox1 + + + + diff --git a/src/DlgRef/DlgRef_2Sel2Spin.cxx b/src/DlgRef/DlgRef_2Sel2Spin.cxx deleted file mode 100644 index 58341f3bf..000000000 --- a/src/DlgRef/DlgRef_2Sel2Spin.cxx +++ /dev/null @@ -1,57 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_2Sel2Spin.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_2Sel2Spin.h" - -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel1Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_2Sel2Spin::DlgRef_2Sel2Spin(QWidget* parent, const char* name, WFlags fl) - :DlgRef_2Sel2Spin_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout2->addWidget(SpinBox_DX, 0, 1); - SpinBox_DY = new DlgRef_SpinBox(GroupBox1, "SpinBox_DY"); - Layout2->addWidget(SpinBox_DY, 1, 1); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel2Spin::~DlgRef_2Sel2Spin() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_2Sel2Spin.h b/src/DlgRef/DlgRef_2Sel2Spin.h deleted file mode 100644 index ed09840e0..000000000 --- a/src/DlgRef/DlgRef_2Sel2Spin.h +++ /dev/null @@ -1,50 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_2Sel2Spin.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_2SEL2SPIN_H -#define DLGREF_2SEL2SPIN_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_2Sel2Spin_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_2Sel2Spin : public DlgRef_2Sel2Spin_QTD -{ - Q_OBJECT - -public: - DlgRef_2Sel2Spin(QWidget* parent = 0, const char* name = 0, WFlags fl = 0); - ~DlgRef_2Sel2Spin(); - - DlgRef_SpinBox* SpinBox_DX; - DlgRef_SpinBox* SpinBox_DY; - -}; - -#endif // DLGREF_2SEL2SPIN_H diff --git a/src/DlgRef/DlgRef_2Sel2Spin1Check.cxx b/src/DlgRef/DlgRef_2Sel2Spin1Check.cxx deleted file mode 100644 index e352f7d34..000000000 --- a/src/DlgRef/DlgRef_2Sel2Spin1Check.cxx +++ /dev/null @@ -1,62 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_2Sel1Spin1Check.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_2Sel2Spin1Check.h" - -#include -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel1Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_2Sel2Spin1Check::DlgRef_2Sel2Spin1Check(QWidget* parent, const char* name, WFlags fl) - :DlgRef_2Sel2Spin1Check_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - SpinBox_DY = new DlgRef_SpinBox(GroupBox1, "SpinBox_DY"); - Layout2->addWidget(SpinBox_DX, 0, 1); - Layout2->addWidget(SpinBox_DY, 1, 1); - - // PAL 6532 - PushButton1->setAutoDefault( false ); - PushButton2->setAutoDefault( false ); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel2Spin1Check::~DlgRef_2Sel2Spin1Check() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_2Sel2Spin1Check.h b/src/DlgRef/DlgRef_2Sel2Spin1Check.h deleted file mode 100644 index b15de5665..000000000 --- a/src/DlgRef/DlgRef_2Sel2Spin1Check.h +++ /dev/null @@ -1,50 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_2Sel1Spin1Check.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_2SEL2SPIN1CHECK_H -#define DLGREF_2SEL2SPIN1CHECK_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_2Sel2Spin1Check_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_2Sel2Spin1Check : public DlgRef_2Sel2Spin1Check_QTD -{ - Q_OBJECT - -public: - DlgRef_2Sel2Spin1Check(QWidget* parent = 0, const char* name = 0, WFlags fl = 0); - ~DlgRef_2Sel2Spin1Check(); - - DlgRef_SpinBox* SpinBox_DX; - DlgRef_SpinBox* SpinBox_DY; - -}; - -#endif // DLGREF_2SEL2SPIN1CHECK_H diff --git a/src/DlgRef/DlgRef_2Sel2Spin1Check_QTD.cxx b/src/DlgRef/DlgRef_2Sel2Spin1Check_QTD.cxx deleted file mode 100644 index b2d22bfda..000000000 --- a/src/DlgRef/DlgRef_2Sel2Spin1Check_QTD.cxx +++ /dev/null @@ -1,149 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_2Sel2Spin1Check_QTD.ui' -** -** Created: Tue Jun 1 16:29:28 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_2Sel2Spin1Check_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel2Spin1Check_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_2Sel2Spin1Check_QTD::DlgRef_2Sel2Spin1Check_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_2Sel2Spin1Check_QTD" ); - resize( 163, 170 ); - setCaption( trUtf8( "DlgRef_2Sel2Spin1Check_QTD" ) ); - DlgRef_2Sel2Spin1Check_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_2Sel2Spin1Check_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox1, 0, 1 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout2->addWidget( TextLabel3, 0, 0 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - TextLabel4->setText( trUtf8( "TL4" ) ); - - Layout2->addWidget( TextLabel4, 1, 0 ); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox2, 1, 1 ); - - Layout1->addMultiCellLayout( Layout2, 2, 2, 0, 2 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 4, 2 ); - - CheckButton1 = new QCheckBox( GroupBox1, "CheckButton1" ); - CheckButton1->setText( trUtf8( "" ) ); - - Layout1->addMultiCellWidget( CheckButton1, 3, 3, 0, 2 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addWidget( LineEdit2, 1, 2 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - PushButton2->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_2Sel2Spin1Check_QTDLayout->addWidget( GroupBox1, 0, 0 ); - - // tab order - setTabOrder( PushButton1, LineEdit1 ); - setTabOrder( LineEdit1, PushButton2 ); - setTabOrder( PushButton2, LineEdit2 ); - setTabOrder( LineEdit2, SpinBox1 ); - setTabOrder( SpinBox1, SpinBox2 ); - setTabOrder( SpinBox2, CheckButton1 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel2Spin1Check_QTD::~DlgRef_2Sel2Spin1Check_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_2Sel2Spin1Check_QTD.h b/src/DlgRef/DlgRef_2Sel2Spin1Check_QTD.h deleted file mode 100644 index c3d703005..000000000 --- a/src/DlgRef/DlgRef_2Sel2Spin1Check_QTD.h +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_2Sel2Spin1Check_QTD.ui' -** -** Created: Tue Jun 1 16:29:28 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_2SEL2SPIN1CHECK_QTD_H -#define DLGREF_2SEL2SPIN1CHECK_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QCheckBox; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_2Sel2Spin1Check_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_2Sel2Spin1Check_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_2Sel2Spin1Check_QTD(); - - QGroupBox* GroupBox1; - QLabel* TextLabel2; - QLabel* TextLabel1; - QSpinBox* SpinBox1; - QLabel* TextLabel3; - QLabel* TextLabel4; - QSpinBox* SpinBox2; - QLineEdit* LineEdit1; - QCheckBox* CheckButton1; - QLineEdit* LineEdit2; - QPushButton* PushButton2; - QPushButton* PushButton1; - - -protected: - QGridLayout* DlgRef_2Sel2Spin1Check_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; - QGridLayout* Layout2; -}; - -#endif // DLGREF_2SEL2SPIN1CHECK_QTD_H diff --git a/src/DlgRef/DlgRef_2Sel2Spin1Check_QTD.ui b/src/DlgRef/DlgRef_2Sel2Spin1Check_QTD.ui new file mode 100644 index 000000000..07800a567 --- /dev/null +++ b/src/DlgRef/DlgRef_2Sel2Spin1Check_QTD.ui @@ -0,0 +1,192 @@ + + DlgRef_2Sel2Spin1Check_QTD + + + + 0 + 0 + 156 + 143 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + + + + + + + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + SpinBox_DX + SpinBox_DY + CheckButton1 + + + +
    diff --git a/src/DlgRef/DlgRef_2Sel2Spin_QTD.cxx b/src/DlgRef/DlgRef_2Sel2Spin_QTD.cxx deleted file mode 100644 index faf1f66b1..000000000 --- a/src/DlgRef/DlgRef_2Sel2Spin_QTD.cxx +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_2Sel2Spin_QTD.ui' -** -** Created: jeu sep 25 12:10:29 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_2Sel2Spin_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel2Spin_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_2Sel2Spin_QTD::DlgRef_2Sel2Spin_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_2Sel2Spin_QTD" ); - resize( 129, 145 ); - setCaption( trUtf8( "DlgRef_2Sel2Spin_QTD" ) ); - DlgRef_2Sel2Spin_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_2Sel2Spin_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox2, 1, 1 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - TextLabel4->setText( trUtf8( "TL4" ) ); - - Layout2->addWidget( TextLabel4, 1, 0 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout2->addWidget( TextLabel3, 0, 0 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox1, 0, 1 ); - - Layout1->addMultiCellLayout( Layout2, 2, 2, 0, 2 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - PushButton2->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - QSpacerItem* spacer = new QSpacerItem( 0, 20, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 3, 2 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addWidget( LineEdit2, 1, 2 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_2Sel2Spin_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel2Spin_QTD::~DlgRef_2Sel2Spin_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_2Sel2Spin_QTD.h b/src/DlgRef/DlgRef_2Sel2Spin_QTD.h deleted file mode 100644 index bc5157559..000000000 --- a/src/DlgRef/DlgRef_2Sel2Spin_QTD.h +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_2Sel2Spin_QTD.ui' -** -** Created: jeu sep 25 12:10:29 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_2SEL2SPIN_QTD_H -#define DLGREF_2SEL2SPIN_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_2Sel2Spin_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_2Sel2Spin_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_2Sel2Spin_QTD(); - - QGroupBox* GroupBox1; - QLineEdit* LineEdit1; - QSpinBox* SpinBox2; - QLabel* TextLabel4; - QLabel* TextLabel3; - QSpinBox* SpinBox1; - QPushButton* PushButton2; - QLabel* TextLabel2; - QLabel* TextLabel1; - QPushButton* PushButton1; - QLineEdit* LineEdit2; - - -protected: - QGridLayout* DlgRef_2Sel2Spin_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; - QGridLayout* Layout2; -}; - -#endif // DLGREF_2SEL2SPIN_QTD_H diff --git a/src/DlgRef/DlgRef_2Sel2Spin_QTD.ui b/src/DlgRef/DlgRef_2Sel2Spin_QTD.ui new file mode 100644 index 000000000..f9df9178f --- /dev/null +++ b/src/DlgRef/DlgRef_2Sel2Spin_QTD.ui @@ -0,0 +1,184 @@ + + DlgRef_2Sel2Spin_QTD + + + + 0 + 0 + 156 + 124 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + SpinBox_DX + SpinBox_DY + + + +
    diff --git a/src/DlgRef/DlgRef_2Sel3Spin.cxx b/src/DlgRef/DlgRef_2Sel3Spin.cxx deleted file mode 100644 index 8006c508f..000000000 --- a/src/DlgRef/DlgRef_2Sel3Spin.cxx +++ /dev/null @@ -1,60 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_2Sel3Spin.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_2Sel3Spin.h" - -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel1Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_2Sel3Spin::DlgRef_2Sel3Spin(QWidget* parent, const char* name, WFlags fl) - :DlgRef_2Sel3Spin_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - SpinBox3->close(TRUE); - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout2->addWidget(SpinBox_DX, 0, 1); - SpinBox_DY = new DlgRef_SpinBox(GroupBox1, "SpinBox_DY"); - Layout2->addWidget(SpinBox_DY, 1, 1); - SpinBox_DZ = new DlgRef_SpinBox(GroupBox1, "SpinBox_DZ"); - Layout2->addWidget(SpinBox_DZ, 2, 1); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel3Spin::~DlgRef_2Sel3Spin() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_2Sel3Spin.h b/src/DlgRef/DlgRef_2Sel3Spin.h deleted file mode 100644 index 53b857b66..000000000 --- a/src/DlgRef/DlgRef_2Sel3Spin.h +++ /dev/null @@ -1,51 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_2Sel3Spin.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_2SEL3SPIN_H -#define DLGREF_2SEL3SPIN_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_2Sel3Spin_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_2Sel3Spin : public DlgRef_2Sel3Spin_QTD -{ - Q_OBJECT - -public: - DlgRef_2Sel3Spin(QWidget* parent = 0, const char* name = 0, WFlags fl = 0); - ~DlgRef_2Sel3Spin(); - - DlgRef_SpinBox* SpinBox_DX; - DlgRef_SpinBox* SpinBox_DY; - DlgRef_SpinBox* SpinBox_DZ; - -}; - -#endif // DLGREF_2SEL3SPIN_H diff --git a/src/DlgRef/DlgRef_2Sel3Spin2Rb.cxx b/src/DlgRef/DlgRef_2Sel3Spin2Rb.cxx deleted file mode 100755 index a17d55e41..000000000 --- a/src/DlgRef/DlgRef_2Sel3Spin2Rb.cxx +++ /dev/null @@ -1,41 +0,0 @@ -// File : DlgRef_2Sel2Spin.cxx -// Author : Dmitry MATVEITCHEV -// Module : GEOM -// $Header: - -#include "DlgRef_2Sel3Spin2Rb.h" -#include - -#include -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel3Spin2Rb which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_2Sel3Spin2Rb::DlgRef_2Sel3Spin2Rb(QWidget* parent, const char* name, WFlags fl) - :DlgRef_2Sel3Spin2Rb_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - SpinBox3->close(TRUE); - RadioButton1->setChecked(true); - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout2->addMultiCellWidget(SpinBox_DX, 0, 0, 2, 4); - SpinBox_DY = new DlgRef_SpinBox(GroupBox1, "SpinBox_DY"); - Layout2->addWidget(SpinBox_DY, 1, 2); - SpinBox_DZ = new DlgRef_SpinBox(GroupBox1, "SpinBox_DZ"); - Layout2->addWidget(SpinBox_DZ, 1, 4); - SpinBox_DY->setEnabled(false); - SpinBox_DZ->setEnabled(false); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel3Spin2Rb::~DlgRef_2Sel3Spin2Rb() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_2Sel3Spin2Rb.h b/src/DlgRef/DlgRef_2Sel3Spin2Rb.h deleted file mode 100755 index e651662f7..000000000 --- a/src/DlgRef/DlgRef_2Sel3Spin2Rb.h +++ /dev/null @@ -1,34 +0,0 @@ -// File : DlgRef_2Sel3Spin2Rb.h -// Author : Dmitry MATVEITCHEV -// Module : GEOM -// $Header: - -#ifndef DLGREF_2SEL3SPIN2RB_H -#define DLGREF_2SEL3SPIN2RB_H - -#include "DlgRef_2Sel3Spin2Rb_QTD.h" -#include "DlgRef_SpinBox.h" -//#if defined WNT -//#include -//#else -//#define SALOME_WNT_EXPORT -//#endif -#if defined WNT && defined WIN32 && defined SALOME_WNT_EXPORTS -#define DLGREF_WNT_EXPORT __declspec( dllexport ) -#else -#define DLGREF_WNT_EXPORT -#endif -class DLGREF_WNT_EXPORT DlgRef_2Sel3Spin2Rb : public DlgRef_2Sel3Spin2Rb_QTD -{ - Q_OBJECT - -public: - DlgRef_2Sel3Spin2Rb(QWidget* parent = 0, const char* name = 0, WFlags fl = 0); - ~DlgRef_2Sel3Spin2Rb(); - - DlgRef_SpinBox* SpinBox_DX; - DlgRef_SpinBox* SpinBox_DY; - DlgRef_SpinBox* SpinBox_DZ; -}; - -#endif // DLGREF_2SEL3SPIN2RB_H diff --git a/src/DlgRef/DlgRef_2Sel3Spin2Rb_QTD.cxx b/src/DlgRef/DlgRef_2Sel3Spin2Rb_QTD.cxx deleted file mode 100755 index bcbd3d658..000000000 --- a/src/DlgRef/DlgRef_2Sel3Spin2Rb_QTD.cxx +++ /dev/null @@ -1,129 +0,0 @@ -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_2Sel3Spin2Rb_QTD.ui' -** -** Created: Tue Oct 9 15:16:54 2007 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#include "DlgRef_2Sel3Spin2Rb_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel3Spin2Rb_QTD as a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_2Sel3Spin2Rb_QTD::DlgRef_2Sel3Spin2Rb_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_2Sel3Spin2Rb_QTD" ); - DlgRef_2Sel3Spin2Rb_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_2Sel3Spin2Rb_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - TextLabel5 = new QLabel( GroupBox1, "TextLabel5" ); - TextLabel5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel5->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( TextLabel5, 1, 3 ); - - RadioButton2 = new QRadioButton( GroupBox1, "RadioButton2" ); - - Layout2->addWidget( RadioButton2, 1, 0 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( TextLabel3, 0, 1 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addMultiCellWidget( SpinBox1, 0, 0, 2, 4 ); - - RadioButton1 = new QRadioButton( GroupBox1, "RadioButton1" ); - - Layout2->addWidget( RadioButton1, 0, 0 ); - - SpinBox3 = new QSpinBox( GroupBox1, "SpinBox3" ); - SpinBox3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox3->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox3, 1, 4 ); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox2, 1, 2 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( TextLabel4, 1, 1 ); - - Layout1->addMultiCellLayout( Layout2, 2, 2, 0, 2 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - Spacer5 = new QSpacerItem( 0, 207, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( Spacer5, 3, 2 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addWidget( LineEdit2, 1, 2 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_2Sel3Spin2Rb_QTDLayout->addWidget( GroupBox1, 0, 0 ); - resize( QSize(439, 340).expandedTo(minimumSizeHint()) ); - clearWState( WState_Polished ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel3Spin2Rb_QTD::~DlgRef_2Sel3Spin2Rb_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_2Sel3Spin2Rb_QTD.h b/src/DlgRef/DlgRef_2Sel3Spin2Rb_QTD.h deleted file mode 100755 index 89f145aff..000000000 --- a/src/DlgRef/DlgRef_2Sel3Spin2Rb_QTD.h +++ /dev/null @@ -1,60 +0,0 @@ -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_2Sel3Spin2Rb_QTD.ui' -** -** Created: Tue Oct 9 15:16:54 2007 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#ifndef DLGREF_2SEL3SPIN2RB_QTD_H -#define DLGREF_2SEL3SPIN2RB_QTD_H - -#include -#include - -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QSpacerItem; -class QGroupBox; -class QPushButton; -class QLineEdit; -class QLabel; -class QRadioButton; -class QSpinBox; - -class DlgRef_2Sel3Spin2Rb_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_2Sel3Spin2Rb_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_2Sel3Spin2Rb_QTD(); - - QGroupBox* GroupBox1; - QPushButton* PushButton1; - QLineEdit* LineEdit1; - QLabel* TextLabel2; - QLabel* TextLabel5; - QRadioButton* RadioButton2; - QLabel* TextLabel3; - QSpinBox* SpinBox1; - QRadioButton* RadioButton1; - QSpinBox* SpinBox3; - QSpinBox* SpinBox2; - QLabel* TextLabel4; - QPushButton* PushButton2; - QLineEdit* LineEdit2; - QLabel* TextLabel1; - -protected: - QGridLayout* DlgRef_2Sel3Spin2Rb_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; - QSpacerItem* Spacer5; - QGridLayout* Layout2; - -}; - -#endif // DLGREF_2SEL3SPIN2RB_QTD_H diff --git a/src/DlgRef/DlgRef_2Sel3Spin2Rb_QTD.ui b/src/DlgRef/DlgRef_2Sel3Spin2Rb_QTD.ui new file mode 100644 index 000000000..050f8baae --- /dev/null +++ b/src/DlgRef/DlgRef_2Sel3Spin2Rb_QTD.ui @@ -0,0 +1,211 @@ + + DlgRef_2Sel3Spin2Rb_QTD + + + + 0 + 0 + 211 + 128 + + + + DlgRef_2Sel3Spin2Rb_QTD + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + true + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + false + + + + + + + + 0 + 0 + + + + TL5 + + + false + + + + + + + false + + + + + + + + + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + RadioButton1 + SpinBox_DX + RadioButton2 + SpinBox_DY + SpinBox_DZ + + + +
    diff --git a/src/DlgRef/DlgRef_2Sel3Spin_QTD.cxx b/src/DlgRef/DlgRef_2Sel3Spin_QTD.cxx deleted file mode 100644 index a47905184..000000000 --- a/src/DlgRef/DlgRef_2Sel3Spin_QTD.cxx +++ /dev/null @@ -1,146 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_2Sel3Spin_QTD.ui' -** -** Created: jeu sep 25 16:18:43 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_2Sel3Spin_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel3Spin_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_2Sel3Spin_QTD::DlgRef_2Sel3Spin_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_2Sel3Spin_QTD" ); - resize( 129, 173 ); - setCaption( trUtf8( "DlgRef_2Sel3Spin_QTD" ) ); - DlgRef_2Sel3Spin_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_2Sel3Spin_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout2->addWidget( TextLabel3, 0, 0 ); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox2, 1, 1 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - TextLabel4->setText( trUtf8( "TL4" ) ); - - Layout2->addWidget( TextLabel4, 1, 0 ); - - TextLabel5 = new QLabel( GroupBox1, "TextLabel5" ); - TextLabel5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel5->sizePolicy().hasHeightForWidth() ) ); - TextLabel5->setText( trUtf8( "TL4" ) ); - - Layout2->addWidget( TextLabel5, 2, 0 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox1, 0, 1 ); - - SpinBox3 = new QSpinBox( GroupBox1, "SpinBox3" ); - SpinBox3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox3->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox3, 2, 1 ); - - Layout1->addMultiCellLayout( Layout2, 2, 2, 0, 2 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - QSpacerItem* spacer = new QSpacerItem( 0, 20, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 3, 2 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addWidget( LineEdit2, 1, 2 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - PushButton2->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_2Sel3Spin_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel3Spin_QTD::~DlgRef_2Sel3Spin_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_2Sel3Spin_QTD.h b/src/DlgRef/DlgRef_2Sel3Spin_QTD.h deleted file mode 100644 index 8b49e9f50..000000000 --- a/src/DlgRef/DlgRef_2Sel3Spin_QTD.h +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_2Sel3Spin_QTD.ui' -** -** Created: jeu sep 25 16:18:43 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_2SEL3SPIN_QTD_H -#define DLGREF_2SEL3SPIN_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_2Sel3Spin_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_2Sel3Spin_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_2Sel3Spin_QTD(); - - QGroupBox* GroupBox1; - QLineEdit* LineEdit1; - QLabel* TextLabel1; - QLabel* TextLabel2; - QLabel* TextLabel3; - QSpinBox* SpinBox2; - QLabel* TextLabel4; - QLabel* TextLabel5; - QSpinBox* SpinBox1; - QSpinBox* SpinBox3; - QPushButton* PushButton1; - QLineEdit* LineEdit2; - QPushButton* PushButton2; - - -protected: - QGridLayout* DlgRef_2Sel3Spin_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; - QGridLayout* Layout2; -}; - -#endif // DLGREF_2SEL3SPIN_QTD_H diff --git a/src/DlgRef/DlgRef_2Sel3Spin_QTD.ui b/src/DlgRef/DlgRef_2Sel3Spin_QTD.ui new file mode 100644 index 000000000..b3f27fb8e --- /dev/null +++ b/src/DlgRef/DlgRef_2Sel3Spin_QTD.ui @@ -0,0 +1,204 @@ + + DlgRef_2Sel3Spin_QTD + + + + 0 + 0 + 156 + 149 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + 0 + 0 + + + + TL5 + + + false + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + SpinBox_DX + SpinBox_DY + SpinBox_DZ + + + +
    diff --git a/src/DlgRef/DlgRef_2Sel4Spin1Check.cxx b/src/DlgRef/DlgRef_2Sel4Spin1Check.cxx deleted file mode 100644 index bfb387e53..000000000 --- a/src/DlgRef/DlgRef_2Sel4Spin1Check.cxx +++ /dev/null @@ -1,68 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_2Sel4Spin1Check.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_2Sel4Spin1Check.h" - -#include -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel1Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_2Sel4Spin1Check::DlgRef_2Sel4Spin1Check(QWidget* parent, const char* name, WFlags fl) - :DlgRef_2Sel4Spin1Check_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - SpinBox3->close(TRUE); - SpinBox4->close(TRUE); - SpinBox_DX1 = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX1"); - SpinBox_DY1 = new DlgRef_SpinBox(GroupBox1, "SpinBox_DY1"); - SpinBox_DX2 = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX2"); - SpinBox_DY2 = new DlgRef_SpinBox(GroupBox1, "SpinBox_DY2"); - Layout2->addWidget(SpinBox_DX1, 0, 1); - Layout2->addWidget(SpinBox_DY1, 1, 1); - Layout3->addWidget(SpinBox_DX2, 0, 1); - Layout3->addWidget(SpinBox_DY2, 1, 1); - - // PAL 6532 - PushButton1->setAutoDefault( false ); - PushButton2->setAutoDefault( false ); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel4Spin1Check::~DlgRef_2Sel4Spin1Check() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_2Sel4Spin1Check.h b/src/DlgRef/DlgRef_2Sel4Spin1Check.h deleted file mode 100644 index 1d5e0c4ab..000000000 --- a/src/DlgRef/DlgRef_2Sel4Spin1Check.h +++ /dev/null @@ -1,53 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_2Sel4Spin1Check.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_2SEL4SPIN1CHECK_H -#define DLGREF_2SEL4SPIN1CHECK_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_2Sel4Spin1Check_QTD.h" -#include "DlgRef_SpinBox.h" - - -class GEOM_DLGREF_EXPORT DlgRef_2Sel4Spin1Check : public DlgRef_2Sel4Spin1Check_QTD -{ - Q_OBJECT - -public: - DlgRef_2Sel4Spin1Check(QWidget* parent = 0, const char* name = 0, WFlags fl = 0); - ~DlgRef_2Sel4Spin1Check(); - - DlgRef_SpinBox* SpinBox_DX1; - DlgRef_SpinBox* SpinBox_DY1; - DlgRef_SpinBox* SpinBox_DX2; - DlgRef_SpinBox* SpinBox_DY2; - -}; - -#endif // DLGREF_2SEL4SPIN1CHECK_H diff --git a/src/DlgRef/DlgRef_2Sel4Spin1Check_QTD.cxx b/src/DlgRef/DlgRef_2Sel4Spin1Check_QTD.cxx deleted file mode 100644 index 3dd3f2e38..000000000 --- a/src/DlgRef/DlgRef_2Sel4Spin1Check_QTD.cxx +++ /dev/null @@ -1,177 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_2Sel4Spin1Check_QTD.ui' -** -** Created: Tue Jun 1 12:38:04 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_2Sel4Spin1Check_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel4Spin1Check_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_2Sel4Spin1Check_QTD::DlgRef_2Sel4Spin1Check_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_2Sel4Spin1Check_QTD" ); - resize( 262, 230 ); - setCaption( trUtf8( "DlgRef_2Sel4Spin1Check_QTD" ) ); - DlgRef_2Sel4Spin1Check_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_2Sel4Spin1Check_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout5 = new QGridLayout( 0, 1, 1, 0, 6, "Layout5"); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout5->addWidget( PushButton1, 0, 1 ); - - CheckButton1 = new QCheckBox( GroupBox1, "CheckButton1" ); - CheckButton1->setText( trUtf8( "" ) ); - - Layout5->addMultiCellWidget( CheckButton1, 3, 3, 0, 3 ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout2->addWidget( TextLabel3, 0, 0 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox1, 0, 1 ); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox2, 1, 1 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - TextLabel4->setText( trUtf8( "TL4" ) ); - - Layout2->addWidget( TextLabel4, 1, 0 ); - - Layout5->addMultiCellLayout( Layout2, 2, 2, 0, 2 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout5->addWidget( LineEdit2, 1, 2 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout5->addWidget( TextLabel1, 0, 0 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout5->addWidget( LineEdit1, 0, 2 ); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout5->addItem( spacer, 5, 3 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - PushButton2->setText( trUtf8( "" ) ); - - Layout5->addWidget( PushButton2, 1, 1 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout5->addWidget( TextLabel2, 1, 0 ); - - Layout3 = new QGridLayout( 0, 1, 1, 0, 6, "Layout3"); - - SpinBox4 = new QSpinBox( GroupBox1, "SpinBox4" ); - SpinBox4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox4->sizePolicy().hasHeightForWidth() ) ); - - Layout3->addWidget( SpinBox4, 1, 1 ); - - TextLabel5 = new QLabel( GroupBox1, "TextLabel5" ); - TextLabel5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel5->sizePolicy().hasHeightForWidth() ) ); - TextLabel5->setText( trUtf8( "TL5" ) ); - - Layout3->addWidget( TextLabel5, 0, 0 ); - - SpinBox3 = new QSpinBox( GroupBox1, "SpinBox3" ); - SpinBox3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox3->sizePolicy().hasHeightForWidth() ) ); - - Layout3->addWidget( SpinBox3, 0, 1 ); - - TextLabel6 = new QLabel( GroupBox1, "TextLabel6" ); - TextLabel6->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel6->sizePolicy().hasHeightForWidth() ) ); - TextLabel6->setText( trUtf8( "TL6" ) ); - - Layout3->addWidget( TextLabel6, 1, 0 ); - - Layout5->addMultiCellLayout( Layout3, 4, 4, 0, 2 ); - - GroupBox1Layout->addLayout( Layout5, 0, 0 ); - - DlgRef_2Sel4Spin1Check_QTDLayout->addWidget( GroupBox1, 0, 0 ); - - // tab order - setTabOrder( PushButton1, LineEdit1 ); - setTabOrder( LineEdit1, PushButton2 ); - setTabOrder( PushButton2, LineEdit2 ); - setTabOrder( LineEdit2, SpinBox1 ); - setTabOrder( SpinBox1, SpinBox2 ); - setTabOrder( SpinBox2, CheckButton1 ); - setTabOrder( CheckButton1, SpinBox3 ); - setTabOrder( SpinBox3, SpinBox4 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel4Spin1Check_QTD::~DlgRef_2Sel4Spin1Check_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_2Sel4Spin1Check_QTD.h b/src/DlgRef/DlgRef_2Sel4Spin1Check_QTD.h deleted file mode 100644 index 7f49d2b09..000000000 --- a/src/DlgRef/DlgRef_2Sel4Spin1Check_QTD.h +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_2Sel4Spin1Check_QTD.ui' -** -** Created: Tue Jun 1 12:38:04 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_2SEL4SPIN1CHECK_QTD_H -#define DLGREF_2SEL4SPIN1CHECK_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QCheckBox; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_2Sel4Spin1Check_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_2Sel4Spin1Check_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_2Sel4Spin1Check_QTD(); - - QGroupBox* GroupBox1; - QPushButton* PushButton1; - QCheckBox* CheckButton1; - QLabel* TextLabel3; - QSpinBox* SpinBox1; - QSpinBox* SpinBox2; - QLabel* TextLabel4; - QLineEdit* LineEdit2; - QLabel* TextLabel1; - QLineEdit* LineEdit1; - QPushButton* PushButton2; - QLabel* TextLabel2; - QSpinBox* SpinBox4; - QLabel* TextLabel5; - QSpinBox* SpinBox3; - QLabel* TextLabel6; - - -protected: - QGridLayout* DlgRef_2Sel4Spin1Check_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout5; - QGridLayout* Layout2; - QGridLayout* Layout3; -}; - -#endif // DLGREF_2SEL4SPIN1CHECK_QTD_H diff --git a/src/DlgRef/DlgRef_2Sel4Spin1Check_QTD.ui b/src/DlgRef/DlgRef_2Sel4Spin1Check_QTD.ui new file mode 100644 index 000000000..27e0b7e56 --- /dev/null +++ b/src/DlgRef/DlgRef_2Sel4Spin1Check_QTD.ui @@ -0,0 +1,232 @@ + + DlgRef_2Sel4Spin1Check_QTD + + + + 0 + 0 + 156 + 197 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + + + + TL6 + + + false + + + + + + + + 0 + 0 + + + + TL5 + + + false + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + SpinBox_DX1 + SpinBox_DY1 + CheckButton1 + SpinBox_DX2 + SpinBox_DY2 + + + +
    diff --git a/src/DlgRef/DlgRef_2SelExt_QTD.ui b/src/DlgRef/DlgRef_2SelExt_QTD.ui new file mode 100644 index 000000000..a5ab1a440 --- /dev/null +++ b/src/DlgRef/DlgRef_2SelExt_QTD.ui @@ -0,0 +1,132 @@ + + DlgRef_2SelExt_QTD + + + + 0 + 0 + 155 + 80 + + + + + + + + 0 + + + 6 + + + + + + 7 + 7 + 0 + 0 + + + + + + + + 9 + + + 6 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + + + + diff --git a/src/DlgRef/DlgRef_2Sel_QTD.cxx b/src/DlgRef/DlgRef_2Sel_QTD.cxx deleted file mode 100644 index 7e305f6ef..000000000 --- a/src/DlgRef/DlgRef_2Sel_QTD.cxx +++ /dev/null @@ -1,109 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_2Sel_QTD.ui' -** -** Created: mar sep 23 16:05:09 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_2Sel_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_2Sel_QTD::DlgRef_2Sel_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_2Sel_QTD" ); - resize( 129, 87 ); - setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)7, 0, 0, sizePolicy().hasHeightForWidth() ) ); - setCaption( trUtf8( "DlgRef_2Sel_QTD" ) ); - DlgRef_2Sel_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_2Sel_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 2, 2 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addWidget( LineEdit2, 1, 2 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - PushButton2->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_2Sel_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Sel_QTD::~DlgRef_2Sel_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_2Sel_QTD.h b/src/DlgRef/DlgRef_2Sel_QTD.h deleted file mode 100644 index c28d7e908..000000000 --- a/src/DlgRef/DlgRef_2Sel_QTD.h +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_2Sel_QTD.ui' -** -** Created: mar sep 23 16:05:09 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_2SEL_QTD_H -#define DLGREF_2SEL_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; - -class GEOM_DLGREF_EXPORT DlgRef_2Sel_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_2Sel_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_2Sel_QTD(); - - QGroupBox* GroupBox1; - QPushButton* PushButton1; - QLineEdit* LineEdit2; - QPushButton* PushButton2; - QLabel* TextLabel1; - QLabel* TextLabel2; - QLineEdit* LineEdit1; - - -protected: - QGridLayout* DlgRef_2Sel_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; -}; - -#endif // DLGREF_2SEL_QTD_H diff --git a/src/DlgRef/DlgRef_2Sel_QTD.ui b/src/DlgRef/DlgRef_2Sel_QTD.ui new file mode 100644 index 000000000..753d9587e --- /dev/null +++ b/src/DlgRef/DlgRef_2Sel_QTD.ui @@ -0,0 +1,129 @@ + + DlgRef_2Sel_QTD + + + + 0 + 0 + 156 + 74 + + + + + 5 + 7 + 0 + 0 + + + + + + + + 0 + + + 6 + + + + + + + + + 9 + + + 6 + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + + + + diff --git a/src/DlgRef/DlgRef_2Spin.cxx b/src/DlgRef/DlgRef_2Spin.cxx deleted file mode 100644 index 437ed0b28..000000000 --- a/src/DlgRef/DlgRef_2Spin.cxx +++ /dev/null @@ -1,60 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_2Spin.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_2Spin.h" - -#include -#include -#include - -/* - * Constructs a DlgRef_2Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_2Spin::DlgRef_2Spin(QWidget* parent, const char* name, WFlags fl) - :DlgRef_2Spin_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout1->addWidget(SpinBox_DX, 0, 1); - - SpinBox_DY = new DlgRef_SpinBox(GroupBox1, "SpinBox_DY"); - Layout1->addWidget(SpinBox_DY, 1, 1); - -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Spin::~DlgRef_2Spin() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_2Spin.h b/src/DlgRef/DlgRef_2Spin.h deleted file mode 100644 index a69052c94..000000000 --- a/src/DlgRef/DlgRef_2Spin.h +++ /dev/null @@ -1,50 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_2Spin.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_2SPIN_H -#define DLGREF_2SPIN_H - -#include "DlgRef_2Spin_QTD.h" -#include "DlgRef_SpinBox.h" - -#include "GEOM_DlgRef.hxx" - -class GEOM_DLGREF_EXPORT DlgRef_2Spin : public DlgRef_2Spin_QTD -{ - Q_OBJECT - -public: - DlgRef_2Spin(QWidget* parent = 0, const char* name = 0, WFlags fl = 0); - ~DlgRef_2Spin(); - - DlgRef_SpinBox* SpinBox_DX; - DlgRef_SpinBox* SpinBox_DY; - -}; - -#endif // DLGREF_2SPIN_H diff --git a/src/DlgRef/DlgRef_2Spin_QTD.cxx b/src/DlgRef/DlgRef_2Spin_QTD.cxx deleted file mode 100644 index fab9c4f8c..000000000 --- a/src/DlgRef/DlgRef_2Spin_QTD.cxx +++ /dev/null @@ -1,98 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_2Spin_QTD.ui' -** -** Created: jeu sep 25 12:10:30 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_2Spin_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_2Spin_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_2Spin_QTD::DlgRef_2Spin_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_2Spin_QTD" ); - resize( 124, 83 ); - setCaption( trUtf8( "DlgRef_2Spin_QTD" ) ); - DlgRef_2Spin_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_2Spin_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox2, 1, 1 ); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 3, 1 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox1, 0, 1 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_2Spin_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_2Spin_QTD::~DlgRef_2Spin_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_2Spin_QTD.h b/src/DlgRef/DlgRef_2Spin_QTD.h deleted file mode 100644 index b820d4b55..000000000 --- a/src/DlgRef/DlgRef_2Spin_QTD.h +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_2Spin_QTD.ui' -** -** Created: jeu sep 25 12:10:30 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_2SPIN_QTD_H -#define DLGREF_2SPIN_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_2Spin_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_2Spin_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_2Spin_QTD(); - - QGroupBox* GroupBox1; - QSpinBox* SpinBox2; - QSpinBox* SpinBox1; - QLabel* TextLabel1; - QLabel* TextLabel2; - - -protected: - QGridLayout* DlgRef_2Spin_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; -}; - -#endif // DLGREF_2SPIN_QTD_H diff --git a/src/DlgRef/DlgRef_2Spin_QTD.ui b/src/DlgRef/DlgRef_2Spin_QTD.ui new file mode 100644 index 000000000..466bf527d --- /dev/null +++ b/src/DlgRef/DlgRef_2Spin_QTD.ui @@ -0,0 +1,112 @@ + + DlgRef_2Spin_QTD + + + + 0 + 0 + 100 + 66 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + +
    diff --git a/src/DlgRef/DlgRef_3Check_QTD.cxx b/src/DlgRef/DlgRef_3Check_QTD.cxx deleted file mode 100644 index 9640159b6..000000000 --- a/src/DlgRef/DlgRef_3Check_QTD.cxx +++ /dev/null @@ -1,94 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_3Check_QTD.ui' -** -** Created: Tue Aug 24 11:27:47 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_3Check_QTD.h" - -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_3Check_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_3Check_QTD::DlgRef_3Check_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_3Check_QTD" ); - resize( 135, 108 ); - setCaption( trUtf8( "DlgRef_3Check_QTD" ) ); - DlgRef_3Check_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_3Check_QTDLayout"); - - GroupBox1 = new QButtonGroup( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - RadioButton3 = new QRadioButton( GroupBox1, "RadioButton3" ); - RadioButton3->setText( trUtf8( "RadioButton3" ) ); - - Layout1->addWidget( RadioButton3, 2, 0 ); - - RadioButton1 = new QRadioButton( GroupBox1, "RadioButton1" ); - RadioButton1->setText( trUtf8( "RadioButton1" ) ); - - Layout1->addWidget( RadioButton1, 0, 0 ); - - RadioButton2 = new QRadioButton( GroupBox1, "RadioButton2" ); - RadioButton2->setText( trUtf8( "RadioButton2" ) ); - - Layout1->addWidget( RadioButton2, 1, 0 ); - QSpacerItem* spacer = new QSpacerItem( 0, 91, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 3, 0 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_3Check_QTDLayout->addWidget( GroupBox1, 0, 0 ); - - // tab order - setTabOrder( RadioButton1, RadioButton2 ); - setTabOrder( RadioButton2, RadioButton3 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_3Check_QTD::~DlgRef_3Check_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_3Check_QTD.h b/src/DlgRef/DlgRef_3Check_QTD.h deleted file mode 100644 index 976bf8904..000000000 --- a/src/DlgRef/DlgRef_3Check_QTD.h +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_3Check_QTD.ui' -** -** Created: Tue Aug 24 11:27:47 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_3CHECK_QTD_H -#define DLGREF_3CHECK_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QButtonGroup; -class QRadioButton; - -class GEOM_DLGREF_EXPORT DlgRef_3Check_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_3Check_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_3Check_QTD(); - - QButtonGroup* GroupBox1; - QRadioButton* RadioButton3; - QRadioButton* RadioButton1; - QRadioButton* RadioButton2; - - -protected: - QGridLayout* DlgRef_3Check_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; -}; - -#endif // DLGREF_3CHECK_QTD_H diff --git a/src/DlgRef/DlgRef_3Check_QTD.ui b/src/DlgRef/DlgRef_3Check_QTD.ui new file mode 100644 index 000000000..aa9a70705 --- /dev/null +++ b/src/DlgRef/DlgRef_3Check_QTD.ui @@ -0,0 +1,69 @@ + + DlgRef_3Check_QTD + + + + 0 + 0 + 118 + 88 + + + + + + + + 0 + + + 6 + + + + + + + + + 9 + + + 6 + + + + + RadioButton2 + + + + + + + RadioButton1 + + + + + + + RadioButton3 + + + + + + + + + + qPixmapFromMimeSource + + RadioButton1 + RadioButton2 + RadioButton3 + + + + diff --git a/src/DlgRef/DlgRef_3Radio1Sel1Spin_QTD.ui b/src/DlgRef/DlgRef_3Radio1Sel1Spin_QTD.ui new file mode 100644 index 000000000..74e1d6bcc --- /dev/null +++ b/src/DlgRef/DlgRef_3Radio1Sel1Spin_QTD.ui @@ -0,0 +1,150 @@ + + DlgRef_3Radio1Sel1Spin_QTD + + + + 0 + 0 + 357 + 131 + + + + + + + + 0 + + + 0 + + + + + + 0 + 0 + + + + + 357 + 131 + + + + + + + + + + + + RadioButton1 + + + + + + + RadioButton2 + + + + + + + RadioButton3 + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + Qt::Vertical + + + + 256 + 19 + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + SpinBox_DX + + + +
    diff --git a/src/DlgRef/DlgRef_3Radio_QTD.ui b/src/DlgRef/DlgRef_3Radio_QTD.ui new file mode 100644 index 000000000..e55899e6b --- /dev/null +++ b/src/DlgRef/DlgRef_3Radio_QTD.ui @@ -0,0 +1,75 @@ + + DlgRef_3Radio_QTD + + + + 0 + 0 + 335 + 44 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + + + + + + RadioButton1 + + + + + + + RadioButton2 + + + + + + + RadioButton3 + + + + + + + + + + qPixmapFromMimeSource + + RadioButton1 + RadioButton2 + RadioButton3 + + + + diff --git a/src/DlgRef/DlgRef_3Sel1Check_QTD.cxx b/src/DlgRef/DlgRef_3Sel1Check_QTD.cxx deleted file mode 100644 index e30a066a7..000000000 --- a/src/DlgRef/DlgRef_3Sel1Check_QTD.cxx +++ /dev/null @@ -1,127 +0,0 @@ -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_3Sel1Check_QTD.ui' -** -** Created: Mon Oct 29 18:14:59 2007 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#include "DlgRef_3Sel1Check_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_3Sel1Check_QTD as a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_3Sel1Check_QTD::DlgRef_3Sel1Check_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_3Sel1Check_QTD" ); - setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)5, 0, 0, sizePolicy().hasHeightForWidth() ) ); - DlgRef_3Sel1Check_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_3Sel1Check_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)5, 0, 0, GroupBox1->sizePolicy().hasHeightForWidth() ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - - GroupBox1Layout->addWidget( PushButton1, 0, 1 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - GroupBox1Layout->addMultiCellWidget( LineEdit1, 0, 0, 2, 3 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - - GroupBox1Layout->addWidget( TextLabel1, 0, 0 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - - GroupBox1Layout->addWidget( PushButton2, 1, 1 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - GroupBox1Layout->addMultiCellWidget( LineEdit2, 1, 1, 2, 3 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - - GroupBox1Layout->addWidget( TextLabel2, 1, 0 ); - - PushButton3 = new QPushButton( GroupBox1, "PushButton3" ); - PushButton3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton3->sizePolicy().hasHeightForWidth() ) ); - - GroupBox1Layout->addWidget( PushButton3, 2, 1 ); - - LineEdit3 = new QLineEdit( GroupBox1, "LineEdit3" ); - - GroupBox1Layout->addMultiCellWidget( LineEdit3, 2, 2, 2, 3 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - - GroupBox1Layout->addWidget( TextLabel3, 2, 0 ); - Spacer3 = new QSpacerItem( 16, 721, QSizePolicy::Minimum, QSizePolicy::Expanding ); - GroupBox1Layout->addItem( Spacer3, 4, 3 ); - - CheckButton1 = new QCheckBox( GroupBox1, "CheckButton1" ); - - GroupBox1Layout->addMultiCellWidget( CheckButton1, 3, 3, 0, 2 ); - - DlgRef_3Sel1Check_QTDLayout->addWidget( GroupBox1, 0, 0 ); - languageChange(); - resize( QSize(403, 441).expandedTo(minimumSizeHint()) ); - clearWState( WState_Polished ); - - // tab order - setTabOrder( PushButton1, LineEdit1 ); - setTabOrder( LineEdit1, PushButton2 ); - setTabOrder( PushButton2, LineEdit2 ); - setTabOrder( LineEdit2, PushButton3 ); - setTabOrder( PushButton3, LineEdit3 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_3Sel1Check_QTD::~DlgRef_3Sel1Check_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - -/* - * Sets the strings of the subwidgets using the current - * language. - */ -void DlgRef_3Sel1Check_QTD::languageChange() -{ - setCaption( tr( "DlgRef_3Sel3Spin1Check_QTD" ) ); - GroupBox1->setTitle( QString::null ); - PushButton1->setText( QString::null ); - TextLabel1->setText( tr( "TL1" ) ); - PushButton2->setText( QString::null ); - TextLabel2->setText( tr( "TL2" ) ); - PushButton3->setText( QString::null ); - TextLabel3->setText( tr( "TL3" ) ); - CheckButton1->setText( tr( "CheckButton1" ) ); -} - diff --git a/src/DlgRef/DlgRef_3Sel1Check_QTD.h b/src/DlgRef/DlgRef_3Sel1Check_QTD.h deleted file mode 100644 index 52a73f98e..000000000 --- a/src/DlgRef/DlgRef_3Sel1Check_QTD.h +++ /dev/null @@ -1,58 +0,0 @@ -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_3Sel1Check_QTD.ui' -** -** Created: Mon Oct 29 18:14:59 2007 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#ifndef DLGREF_3SEL1CHECK_QTD_H -#define DLGREF_3SEL1CHECK_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include - -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QSpacerItem; -class QGroupBox; -class QPushButton; -class QLineEdit; -class QLabel; -class QCheckBox; - -class GEOM_DLGREF_EXPORT DlgRef_3Sel1Check_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_3Sel1Check_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_3Sel1Check_QTD(); - - QGroupBox* GroupBox1; - QPushButton* PushButton1; - QLineEdit* LineEdit1; - QLabel* TextLabel1; - QPushButton* PushButton2; - QLineEdit* LineEdit2; - QLabel* TextLabel2; - QPushButton* PushButton3; - QLineEdit* LineEdit3; - QLabel* TextLabel3; - QCheckBox* CheckButton1; - -protected: - QGridLayout* DlgRef_3Sel1Check_QTDLayout; - QGridLayout* GroupBox1Layout; - QSpacerItem* Spacer3; - -protected slots: - virtual void languageChange(); - -}; - -#endif // DLGREF_3SEL1CHECK_QTD_H diff --git a/src/DlgRef/DlgRef_3Sel1Check_QTD.ui b/src/DlgRef/DlgRef_3Sel1Check_QTD.ui new file mode 100644 index 000000000..91d9258e2 --- /dev/null +++ b/src/DlgRef/DlgRef_3Sel1Check_QTD.ui @@ -0,0 +1,182 @@ + + DlgRef_3Sel1Check_QTD + + + + 0 + 0 + 156 + 126 + + + + + 5 + 5 + 0 + 0 + + + + + + + + 0 + + + 0 + + + + + + 5 + 5 + 0 + 0 + + + + + + + + 9 + + + 6 + + + + + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + PushButton3 + LineEdit3 + + + + diff --git a/src/DlgRef/DlgRef_3Sel1Spin.cxx b/src/DlgRef/DlgRef_3Sel1Spin.cxx deleted file mode 100644 index d9e7176cf..000000000 --- a/src/DlgRef/DlgRef_3Sel1Spin.cxx +++ /dev/null @@ -1,55 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File: DlgRef_3Sel1Spin.cxx -// Created: Thu May 13 12:19:31 2004 -// Author: Alexander SLADKOV -// - - -#include "DlgRef_3Sel1Spin.h" - -//================================================================================= -// class : DlgRef_3Sel1Spin -// purpose : -//================================================================================= -DlgRef_3Sel1Spin::DlgRef_3Sel1Spin( QWidget* parent, const char* name, WFlags fl ) - :DlgRef_3Sel_QTD( parent, name, fl ) -{ - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - TextLabel4 = new QLabel( (QWidget*)GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - Layout2->addWidget( TextLabel4, 0, 0 ); - - SpinBox_DX = new DlgRef_SpinBox( (QWidget*)GroupBox1, "SpinBox_DX" ); - Layout2->addWidget( SpinBox_DX, 0, 1 ); - - Layout1->addMultiCellLayout( Layout2, 3, 3, 0, 2 ); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 4, 2 ); -} - -DlgRef_3Sel1Spin::~DlgRef_3Sel1Spin() -{ -} diff --git a/src/DlgRef/DlgRef_3Sel1Spin.h b/src/DlgRef/DlgRef_3Sel1Spin.h deleted file mode 100644 index 60a779899..000000000 --- a/src/DlgRef/DlgRef_3Sel1Spin.h +++ /dev/null @@ -1,58 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_3Sel1Spin.h -// Author : Alexander SLADKOV -// Module : GEOM -// $Header$ - -#ifndef DlgRef_3SEL_1SPIN_H -#define DlgRef_3SEL_1SPIN_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_3Sel_QTD.h" -#include "DlgRef_SpinBox.h" -#include -#include - -//================================================================================= -// class : DlgRef_3Sel1Spin -// purpose : extension of a DlgRef_3Sel_QTD class, 1 additional spin box is added -//================================================================================= -class GEOM_DLGREF_EXPORT DlgRef_3Sel1Spin : public DlgRef_3Sel_QTD -{ - Q_OBJECT - - public: - DlgRef_3Sel1Spin( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_3Sel1Spin(); - - QLabel* TextLabel4; - DlgRef_SpinBox* SpinBox_DX; - - protected: - QGridLayout* Layout2; -}; - -#endif // DlgRef_3SEL_1SPIN_H diff --git a/src/DlgRef/DlgRef_3Sel1Spin_QTD.ui b/src/DlgRef/DlgRef_3Sel1Spin_QTD.ui new file mode 100644 index 000000000..d1f2f04f4 --- /dev/null +++ b/src/DlgRef/DlgRef_3Sel1Spin_QTD.ui @@ -0,0 +1,210 @@ + + DlgRef_3Sel1Spin_QTD + + + + 0 + 0 + 156 + 128 + + + + + 0 + 0 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 0 + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + PushButton3 + LineEdit3 + SpinBox_DX + + + +
    diff --git a/src/DlgRef/DlgRef_3Sel3Spin1Check.cxx b/src/DlgRef/DlgRef_3Sel3Spin1Check.cxx deleted file mode 100644 index dd1a8b249..000000000 --- a/src/DlgRef/DlgRef_3Sel3Spin1Check.cxx +++ /dev/null @@ -1,114 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_3Sel3Spin1Check.cxx -// Author : Michael Zorin -// Module : GEOM -// $Header: - -#include -#include -#include -#include -#include -#include -#include -#include - - -/* - * Constructs a DlgRef_3Sel3Spin1Check which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_3Sel3Spin1Check::DlgRef_3Sel3Spin1Check(QWidget* parent, const char* name, WFlags fl) - :DlgRef_3Sel3Spin1Check_QTD(parent, name, fl) -{ - SpinBox_1->close(TRUE); - SpinBox_2->close(TRUE); - SpinBox_3->close(TRUE); - SpinBox1 = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - SpinBox2 = new DlgRef_SpinBox(GroupBox1, "SpinBox_DY"); - SpinBox3 = new DlgRef_SpinBox(GroupBox1, "SpinBox_DZ"); - Layout1->addWidget(SpinBox1, 3, 2); - Layout1->addWidget(SpinBox2, 4, 2); - Layout1->addWidget(SpinBox3, 5, 2); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_3Sel3Spin1Check::~DlgRef_3Sel3Spin1Check() -{ - // no need to delete child widgets, Qt does it all for us -} - -void DlgRef_3Sel3Spin1Check:: ShowRows(int fromRow, int toRow, bool toShow) -{ - typedef void (QWidget::* ShowFun)(); - ShowFun pShowFun; - - if (toShow) - pShowFun = &QWidget::show; - else - pShowFun = &QWidget::hide; - - if (fromRow >= 0 && toRow>=0 && toRow >= fromRow) - { - if ( fromRow == 0) - { - (TextLabel1->*pShowFun)(); - (PushButton1->*pShowFun)(); - (LineEdit1->*pShowFun)(); - } - if ( fromRow <= 1 && 1 <= toRow) - { - (TextLabel2->*pShowFun)(); - (PushButton2->*pShowFun)(); - (LineEdit2->*pShowFun)(); - } - if ( fromRow <= 2 && 2 <= toRow) - { - (TextLabel3->*pShowFun)(); - (PushButton3->*pShowFun)(); - (LineEdit3->*pShowFun)(); - } - if ( fromRow <= 3 && 3 <= toRow) - { - (TextLabel4->*pShowFun)(); - (SpinBox1->*pShowFun)(); - } - if ( fromRow <= 4 && 4 <= toRow) - { - (TextLabel5->*pShowFun)(); - (SpinBox2->*pShowFun)(); - } - if ( fromRow <= 5 && 5 <= toRow) - { - (TextLabel6->*pShowFun)(); - (SpinBox3->*pShowFun)(); - } - if ( fromRow <= 6 && 6 <= toRow) - (CheckBox1->*pShowFun)(); - } -} diff --git a/src/DlgRef/DlgRef_3Sel3Spin1Check.h b/src/DlgRef/DlgRef_3Sel3Spin1Check.h deleted file mode 100644 index d1731cfd0..000000000 --- a/src/DlgRef/DlgRef_3Sel3Spin1Check.h +++ /dev/null @@ -1,53 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_3Sel3Spin1Check.h -// Author : Michael ZORIN -// Module : GEOM -// $Header: - -#ifndef DLGREF_3SEL3SPIN1CHECK_H -#define DLGREF_3SEL3SPIN1CHECK_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_3Sel3Spin1Check_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_3Sel3Spin1Check : public DlgRef_3Sel3Spin1Check_QTD -{ - Q_OBJECT - -public: - DlgRef_3Sel3Spin1Check( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_3Sel3Spin1Check(); - - DlgRef_SpinBox* SpinBox1; - DlgRef_SpinBox* SpinBox2; - DlgRef_SpinBox* SpinBox3; - - void ShowRows(int fromRow, int toRow, bool toShow = true); - -}; - -#endif // DLGREF_3SEL3SPIN1CHECK_H diff --git a/src/DlgRef/DlgRef_3Sel3Spin1Check_QTD.cxx b/src/DlgRef/DlgRef_3Sel3Spin1Check_QTD.cxx deleted file mode 100644 index 9c9ca5145..000000000 --- a/src/DlgRef/DlgRef_3Sel3Spin1Check_QTD.cxx +++ /dev/null @@ -1,177 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_3Sel3Spin1Check_QTD.ui' -** -** Created: Mon Apr 19 16:36:48 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_3Sel3Spin1Check_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_3Sel3Spin1Check_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_3Sel3Spin1Check_QTD::DlgRef_3Sel3Spin1Check_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_3Sel3Spin1Check_QTD" ); - resize( 380, 229 ); - setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)5, 0, 0, sizePolicy().hasHeightForWidth() ) ); - setCaption( trUtf8( "DlgRef_3Sel3Spin1Check_QTD" ) ); - DlgRef_3Sel3Spin1Check_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_3Sel3Spin1Check_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)5, 0, 0, GroupBox1->sizePolicy().hasHeightForWidth() ) ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - SpinBox_2 = new QSpinBox( GroupBox1, "SpinBox_2" ); - SpinBox_2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox_2->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox_2, 4, 2 ); - - LineEdit3 = new QLineEdit( GroupBox1, "LineEdit3" ); - - Layout1->addWidget( LineEdit3, 2, 2 ); - - SpinBox_3 = new QSpinBox( GroupBox1, "SpinBox_3" ); - SpinBox_3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox_3->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox_3, 5, 2 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout1->addWidget( TextLabel3, 2, 0 ); - - CheckBox1 = new QCheckBox( GroupBox1, "CheckBox1" ); - CheckBox1->setText( trUtf8( "" ) ); - - Layout1->addMultiCellWidget( CheckBox1, 6, 6, 0, 1 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - TextLabel4->setText( trUtf8( "TL4" ) ); - - Layout1->addWidget( TextLabel4, 3, 0 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addWidget( LineEdit2, 1, 2 ); - - PushButton3 = new QPushButton( GroupBox1, "PushButton3" ); - PushButton3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton3->sizePolicy().hasHeightForWidth() ) ); - PushButton3->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton3, 2, 1 ); - - TextLabel6 = new QLabel( GroupBox1, "TextLabel6" ); - TextLabel6->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel6->sizePolicy().hasHeightForWidth() ) ); - TextLabel6->setText( trUtf8( "TL6" ) ); - - Layout1->addWidget( TextLabel6, 5, 0 ); - - SpinBox_1 = new QSpinBox( GroupBox1, "SpinBox_1" ); - SpinBox_1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox_1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox_1, 3, 2 ); - - TextLabel5 = new QLabel( GroupBox1, "TextLabel5" ); - TextLabel5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel5->sizePolicy().hasHeightForWidth() ) ); - TextLabel5->setText( trUtf8( "TL5" ) ); - - Layout1->addWidget( TextLabel5, 4, 0 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - PushButton2->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - QSpacerItem* spacer = new QSpacerItem( 0, 250, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 7, 2 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_3Sel3Spin1Check_QTDLayout->addWidget( GroupBox1, 0, 0 ); - - // tab order - setTabOrder( PushButton1, LineEdit1 ); - setTabOrder( LineEdit1, PushButton2 ); - setTabOrder( PushButton2, LineEdit2 ); - setTabOrder( LineEdit2, PushButton3 ); - setTabOrder( PushButton3, LineEdit3 ); - setTabOrder( LineEdit3, SpinBox_1 ); - setTabOrder( SpinBox_1, SpinBox_2 ); - setTabOrder( SpinBox_2, SpinBox_3 ); - setTabOrder( SpinBox_3, CheckBox1 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_3Sel3Spin1Check_QTD::~DlgRef_3Sel3Spin1Check_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_3Sel3Spin1Check_QTD.h b/src/DlgRef/DlgRef_3Sel3Spin1Check_QTD.h deleted file mode 100644 index a4c0c63b6..000000000 --- a/src/DlgRef/DlgRef_3Sel3Spin1Check_QTD.h +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_3Sel3Spin1Check_QTD.ui' -** -** Created: Mon Apr 19 16:36:48 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_3SEL3SPIN1CHECK_QTD_H -#define DLGREF_3SEL3SPIN1CHECK_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QCheckBox; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_3Sel3Spin1Check_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_3Sel3Spin1Check_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_3Sel3Spin1Check_QTD(); - - QGroupBox* GroupBox1; - QSpinBox* SpinBox_2; - QLineEdit* LineEdit3; - QSpinBox* SpinBox_3; - QLabel* TextLabel1; - QLabel* TextLabel3; - QCheckBox* CheckBox1; - QPushButton* PushButton1; - QLabel* TextLabel4; - QLineEdit* LineEdit2; - QPushButton* PushButton3; - QLabel* TextLabel6; - QSpinBox* SpinBox_1; - QLabel* TextLabel5; - QLabel* TextLabel2; - QLineEdit* LineEdit1; - QPushButton* PushButton2; - - -protected: - QGridLayout* DlgRef_3Sel3Spin1Check_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; -}; - -#endif // DLGREF_3SEL3SPIN1CHECK_QTD_H diff --git a/src/DlgRef/DlgRef_3Sel3Spin1Check_QTD.ui b/src/DlgRef/DlgRef_3Sel3Spin1Check_QTD.ui new file mode 100644 index 000000000..ac29be9fd --- /dev/null +++ b/src/DlgRef/DlgRef_3Sel3Spin1Check_QTD.ui @@ -0,0 +1,258 @@ + + DlgRef_3Sel3Spin1Check_QTD + + + + 0 + 0 + 156 + 201 + + + + + 0 + 0 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 0 + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + Check + + + + + + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + TL5 + + + false + + + + + + + + 0 + 0 + + + + TL6 + + + false + + + + + + + + + + qPixmapFromMimeSource + + + QtxDoubleSpinBox + QDoubleSpinBox +
    QtxDoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + PushButton3 + LineEdit3 + SpinBox1 + SpinBox2 + SpinBox3 + CheckBox1 + + + +
    diff --git a/src/DlgRef/DlgRef_3Sel3Spin2Check_QTD.ui b/src/DlgRef/DlgRef_3Sel3Spin2Check_QTD.ui new file mode 100644 index 000000000..10ee30bc3 --- /dev/null +++ b/src/DlgRef/DlgRef_3Sel3Spin2Check_QTD.ui @@ -0,0 +1,230 @@ + + DlgRef_3Sel3Spin2Check_QTD + + + + 0 + 0 + 120 + 242 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + + + + 0 + 0 + + + + TL5 + + + false + + + + + + + + + + + 0 + 0 + + + + TL6 + + + false + + + + + + + + + + + + + + + + + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + PushButton3 + LineEdit3 + SpinBox1 + SpinBox2 + SpinBox3 + CheckBox1 + CheckBox2 + + + +
    diff --git a/src/DlgRef/DlgRef_3Sel4Spin2Check.cxx b/src/DlgRef/DlgRef_3Sel4Spin2Check.cxx deleted file mode 100644 index d8faeac59..000000000 --- a/src/DlgRef/DlgRef_3Sel4Spin2Check.cxx +++ /dev/null @@ -1,69 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_3Sel4Spin2Check.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_3Sel4Spin2Check.h" - -#include -#include -#include -#include - -/* - * Constructs a DlgRef_2Sel1Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_3Sel4Spin2Check::DlgRef_3Sel4Spin2Check(QWidget* parent, const char* name, WFlags fl) - :DlgRef_3Sel4Spin2Check_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - SpinBox3->close(TRUE); - SpinBox4->close(TRUE); - SpinBox_DX1 = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX1"); - SpinBox_DY1 = new DlgRef_SpinBox(GroupBox1, "SpinBox_DY1"); - SpinBox_DX2 = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX2"); - SpinBox_DY2 = new DlgRef_SpinBox(GroupBox1, "SpinBox_DY2"); - Layout2->addWidget(SpinBox_DX1, 0, 1); - Layout2->addWidget(SpinBox_DY1, 1, 1); - Layout3->addWidget(SpinBox_DX2, 0, 1); - Layout3->addWidget(SpinBox_DY2, 1, 1); - - // PAL6532 - PushButton1->setAutoDefault( false ); - PushButton2->setAutoDefault( false ); - PushButton3->setAutoDefault( false ); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_3Sel4Spin2Check::~DlgRef_3Sel4Spin2Check() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_3Sel4Spin2Check.h b/src/DlgRef/DlgRef_3Sel4Spin2Check.h deleted file mode 100644 index 696c6461b..000000000 --- a/src/DlgRef/DlgRef_3Sel4Spin2Check.h +++ /dev/null @@ -1,52 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_3Sel4Spin2Check.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_3SEL4SPIN2CHECK_H -#define DLGREF_3SEL4SPIN2CHECK_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_3Sel4Spin2Check_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_3Sel4Spin2Check : public DlgRef_3Sel4Spin2Check_QTD -{ - Q_OBJECT - -public: - DlgRef_3Sel4Spin2Check(QWidget* parent = 0, const char* name = 0, WFlags fl = 0); - ~DlgRef_3Sel4Spin2Check(); - - DlgRef_SpinBox* SpinBox_DX1; - DlgRef_SpinBox* SpinBox_DY1; - DlgRef_SpinBox* SpinBox_DX2; - DlgRef_SpinBox* SpinBox_DY2; - -}; - -#endif // DLGREF_3SEL4SPIN2CHECK_H diff --git a/src/DlgRef/DlgRef_3Sel4Spin2Check_QTD.cxx b/src/DlgRef/DlgRef_3Sel4Spin2Check_QTD.cxx deleted file mode 100644 index c0f469b30..000000000 --- a/src/DlgRef/DlgRef_3Sel4Spin2Check_QTD.cxx +++ /dev/null @@ -1,201 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_3Sel4Spin2Check_QTD.ui' -** -** Created: Tue Jun 1 16:29:29 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_3Sel4Spin2Check_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_3Sel4Spin2Check_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_3Sel4Spin2Check_QTD::DlgRef_3Sel4Spin2Check_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_3Sel4Spin2Check_QTD" ); - resize( 269, 281 ); - setCaption( trUtf8( "DlgRef_3Sel4Spin2Check_QTD" ) ); - DlgRef_3Sel4Spin2Check_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_3Sel4Spin2Check_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - CheckButton2 = new QCheckBox( GroupBox1, "CheckButton2" ); - CheckButton2->setText( trUtf8( "" ) ); - - Layout1->addMultiCellWidget( CheckButton2, 6, 6, 0, 2 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout1->addWidget( TextLabel3, 2, 0 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - PushButton2->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - - LineEdit3 = new QLineEdit( GroupBox1, "LineEdit3" ); - - Layout1->addWidget( LineEdit3, 2, 2 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - Layout3 = new QGridLayout( 0, 1, 1, 0, 6, "Layout3"); - - SpinBox4 = new QSpinBox( GroupBox1, "SpinBox4" ); - SpinBox4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox4->sizePolicy().hasHeightForWidth() ) ); - - Layout3->addWidget( SpinBox4, 1, 1 ); - - SpinBox3 = new QSpinBox( GroupBox1, "SpinBox3" ); - SpinBox3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox3->sizePolicy().hasHeightForWidth() ) ); - - Layout3->addWidget( SpinBox3, 0, 1 ); - - TextLabel7 = new QLabel( GroupBox1, "TextLabel7" ); - TextLabel7->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel7->sizePolicy().hasHeightForWidth() ) ); - TextLabel7->setText( trUtf8( "TL7" ) ); - - Layout3->addWidget( TextLabel7, 1, 0 ); - - TextLabel6 = new QLabel( GroupBox1, "TextLabel6" ); - TextLabel6->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel6->sizePolicy().hasHeightForWidth() ) ); - TextLabel6->setText( trUtf8( "TL6" ) ); - - Layout3->addWidget( TextLabel6, 0, 0 ); - - Layout1->addMultiCellLayout( Layout3, 5, 5, 0, 2 ); - - CheckButton1 = new QCheckBox( GroupBox1, "CheckButton1" ); - CheckButton1->setText( trUtf8( "" ) ); - - Layout1->addMultiCellWidget( CheckButton1, 4, 4, 0, 2 ); - - PushButton3 = new QPushButton( GroupBox1, "PushButton3" ); - PushButton3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton3->sizePolicy().hasHeightForWidth() ) ); - PushButton3->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton3, 2, 1 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 7, 2 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addWidget( LineEdit2, 1, 2 ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - TextLabel5 = new QLabel( GroupBox1, "TextLabel5" ); - TextLabel5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel5->sizePolicy().hasHeightForWidth() ) ); - TextLabel5->setText( trUtf8( "TL5" ) ); - - Layout2->addWidget( TextLabel5, 1, 0 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - TextLabel4->setText( trUtf8( "TL4" ) ); - - Layout2->addWidget( TextLabel4, 0, 0 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox1, 0, 1 ); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout2->addWidget( SpinBox2, 1, 1 ); - - Layout1->addMultiCellLayout( Layout2, 3, 3, 0, 2 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_3Sel4Spin2Check_QTDLayout->addWidget( GroupBox1, 0, 0 ); - - // tab order - setTabOrder( PushButton1, LineEdit1 ); - setTabOrder( LineEdit1, PushButton2 ); - setTabOrder( PushButton2, LineEdit2 ); - setTabOrder( LineEdit2, PushButton3 ); - setTabOrder( PushButton3, LineEdit3 ); - setTabOrder( LineEdit3, SpinBox1 ); - setTabOrder( SpinBox1, SpinBox2 ); - setTabOrder( SpinBox2, CheckButton1 ); - setTabOrder( CheckButton1, SpinBox3 ); - setTabOrder( SpinBox3, SpinBox4 ); - setTabOrder( SpinBox4, CheckButton2 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_3Sel4Spin2Check_QTD::~DlgRef_3Sel4Spin2Check_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_3Sel4Spin2Check_QTD.h b/src/DlgRef/DlgRef_3Sel4Spin2Check_QTD.h deleted file mode 100644 index 9503dec91..000000000 --- a/src/DlgRef/DlgRef_3Sel4Spin2Check_QTD.h +++ /dev/null @@ -1,83 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_3Sel4Spin2Check_QTD.ui' -** -** Created: Tue Jun 1 16:29:29 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_3SEL4SPIN2CHECK_QTD_H -#define DLGREF_3SEL4SPIN2CHECK_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QCheckBox; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_3Sel4Spin2Check_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_3Sel4Spin2Check_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_3Sel4Spin2Check_QTD(); - - QGroupBox* GroupBox1; - QCheckBox* CheckButton2; - QLineEdit* LineEdit1; - QLabel* TextLabel3; - QPushButton* PushButton2; - QLineEdit* LineEdit3; - QPushButton* PushButton1; - QSpinBox* SpinBox4; - QSpinBox* SpinBox3; - QLabel* TextLabel7; - QLabel* TextLabel6; - QCheckBox* CheckButton1; - QPushButton* PushButton3; - QLabel* TextLabel1; - QLineEdit* LineEdit2; - QLabel* TextLabel5; - QLabel* TextLabel4; - QSpinBox* SpinBox1; - QSpinBox* SpinBox2; - QLabel* TextLabel2; - - -protected: - QGridLayout* DlgRef_3Sel4Spin2Check_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; - QGridLayout* Layout3; - QGridLayout* Layout2; -}; - -#endif // DLGREF_3SEL4SPIN2CHECK_QTD_H diff --git a/src/DlgRef/DlgRef_3Sel4Spin2Check_QTD.ui b/src/DlgRef/DlgRef_3Sel4Spin2Check_QTD.ui new file mode 100644 index 000000000..41fcdd0d0 --- /dev/null +++ b/src/DlgRef/DlgRef_3Sel4Spin2Check_QTD.ui @@ -0,0 +1,274 @@ + + DlgRef_3Sel4Spin2Check_QTD + + + + 0 + 0 + 156 + 241 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + + + + TL6 + + + false + + + + + + + + 0 + 0 + + + + TL7 + + + false + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + 0 + 0 + + + + TL5 + + + false + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + + + + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + PushButton3 + LineEdit3 + SpinBox_DX1 + SpinBox_DY1 + CheckButton1 + SpinBox_DX2 + SpinBox_DY2 + CheckButton2 + + + +
    diff --git a/src/DlgRef/DlgRef_3Sel_QTD.cxx b/src/DlgRef/DlgRef_3Sel_QTD.cxx deleted file mode 100644 index 66a038632..000000000 --- a/src/DlgRef/DlgRef_3Sel_QTD.cxx +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_3Sel_QTD.ui' -** -** Created: lun sep 29 11:05:21 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_3Sel_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_3Sel_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_3Sel_QTD::DlgRef_3Sel_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_3Sel_QTD" ); - resize( 129, 117 ); - setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)7, 0, 0, sizePolicy().hasHeightForWidth() ) ); - setCaption( trUtf8( "DlgRef_3Sel_QTD" ) ); - DlgRef_3Sel_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_3Sel_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - LineEdit3 = new QLineEdit( GroupBox1, "LineEdit3" ); - - Layout1->addWidget( LineEdit3, 2, 2 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addWidget( LineEdit2, 1, 2 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout1->addWidget( TextLabel3, 2, 0 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - QSpacerItem* spacer = new QSpacerItem( 0, 159, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 3, 2 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - PushButton3 = new QPushButton( GroupBox1, "PushButton3" ); - PushButton3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton3->sizePolicy().hasHeightForWidth() ) ); - PushButton3->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton3, 2, 1 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - PushButton2->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_3Sel_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_3Sel_QTD::~DlgRef_3Sel_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_3Sel_QTD.h b/src/DlgRef/DlgRef_3Sel_QTD.h deleted file mode 100644 index f4b44a57f..000000000 --- a/src/DlgRef/DlgRef_3Sel_QTD.h +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_3Sel_QTD.ui' -** -** Created: lun sep 29 11:05:21 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_3SEL_QTD_H -#define DLGREF_3SEL_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; - -class GEOM_DLGREF_EXPORT DlgRef_3Sel_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_3Sel_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_3Sel_QTD(); - - QGroupBox* GroupBox1; - QLineEdit* LineEdit3; - QPushButton* PushButton1; - QLineEdit* LineEdit2; - QLabel* TextLabel1; - QLabel* TextLabel3; - QLineEdit* LineEdit1; - QLabel* TextLabel2; - QPushButton* PushButton3; - QPushButton* PushButton2; - - -protected: - QGridLayout* DlgRef_3Sel_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; -}; - -#endif // DLGREF_3SEL_QTD_H diff --git a/src/DlgRef/DlgRef_3Sel_QTD.ui b/src/DlgRef/DlgRef_3Sel_QTD.ui new file mode 100644 index 000000000..b16200bc7 --- /dev/null +++ b/src/DlgRef/DlgRef_3Sel_QTD.ui @@ -0,0 +1,167 @@ + + DlgRef_3Sel_QTD + + + + 0 + 0 + 156 + 103 + + + + + 5 + 7 + 0 + 0 + + + + + + + + 0 + + + 6 + + + + + + + + + 9 + + + 6 + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + PushButton3 + LineEdit3 + + + + diff --git a/src/DlgRef/DlgRef_3Spin.cxx b/src/DlgRef/DlgRef_3Spin.cxx deleted file mode 100644 index bd2f5cee8..000000000 --- a/src/DlgRef/DlgRef_3Spin.cxx +++ /dev/null @@ -1,63 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_3Spin.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_3Spin.h" - -#include -#include -#include - -/* - * Constructs a DlgRef_3Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_3Spin::DlgRef_3Spin(QWidget* parent, const char* name, WFlags fl) - :DlgRef_3Spin_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - SpinBox3->close(TRUE); - - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout1->addWidget(SpinBox_DX, 0, 1); - - SpinBox_DY = new DlgRef_SpinBox(GroupBox1, "SpinBox_DY"); - Layout1->addWidget(SpinBox_DY, 1, 1); - - SpinBox_DZ = new DlgRef_SpinBox(GroupBox1, "SpinBox_DZ"); - Layout1->addWidget(SpinBox_DZ, 2, 1); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_3Spin::~DlgRef_3Spin() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_3Spin.h b/src/DlgRef/DlgRef_3Spin.h deleted file mode 100644 index 18ca9f610..000000000 --- a/src/DlgRef/DlgRef_3Spin.h +++ /dev/null @@ -1,51 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_3Spin.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_3SPIN_H -#define DLGREF_3SPIN_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_3Spin_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_3Spin : public DlgRef_3Spin_QTD -{ - Q_OBJECT - -public: - DlgRef_3Spin( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_3Spin(); - - DlgRef_SpinBox* SpinBox_DX; - DlgRef_SpinBox* SpinBox_DY; - DlgRef_SpinBox* SpinBox_DZ; - -}; - -#endif // DLGREF_3SPIN_H diff --git a/src/DlgRef/DlgRef_3Spin1Check.cxx b/src/DlgRef/DlgRef_3Spin1Check.cxx deleted file mode 100644 index 2cf12b7e7..000000000 --- a/src/DlgRef/DlgRef_3Spin1Check.cxx +++ /dev/null @@ -1,63 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_3Spin1Check.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_3Spin1Check.h" - -#include -#include -#include - -/* - * Constructs a DlgRef_3Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_3Spin1Check::DlgRef_3Spin1Check(QWidget* parent, const char* name, WFlags fl) - :DlgRef_3Spin1Check_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - SpinBox3->close(TRUE); - - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout1->addWidget(SpinBox_DX, 0, 1); - - SpinBox_DY = new DlgRef_SpinBox(GroupBox1, "SpinBox_DY"); - Layout1->addWidget(SpinBox_DY, 1, 1); - - SpinBox_DZ = new DlgRef_SpinBox(GroupBox1, "SpinBox_DZ"); - Layout1->addWidget(SpinBox_DZ, 2, 1); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_3Spin1Check::~DlgRef_3Spin1Check() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/DlgRef/DlgRef_3Spin1Check.h b/src/DlgRef/DlgRef_3Spin1Check.h deleted file mode 100644 index 36c5fc2ac..000000000 --- a/src/DlgRef/DlgRef_3Spin1Check.h +++ /dev/null @@ -1,51 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_3Spin.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_3SPIN1CHECK_H -#define DLGREF_3SPIN1CHECK_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_3Spin1Check_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_3Spin1Check : public DlgRef_3Spin1Check_QTD -{ - Q_OBJECT - -public: - DlgRef_3Spin1Check(QWidget* parent = 0, const char* name = 0, WFlags fl = 0); - ~DlgRef_3Spin1Check(); - - DlgRef_SpinBox* SpinBox_DX; - DlgRef_SpinBox* SpinBox_DY; - DlgRef_SpinBox* SpinBox_DZ; - -}; - -#endif // DLGREF_3SPIN1CHECK_H diff --git a/src/DlgRef/DlgRef_3Spin1Check_QTD.cxx b/src/DlgRef/DlgRef_3Spin1Check_QTD.cxx deleted file mode 100644 index 2be55011e..000000000 --- a/src/DlgRef/DlgRef_3Spin1Check_QTD.cxx +++ /dev/null @@ -1,115 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_3Spin1Check_QTD.ui' -** -** Created: dim sep 28 18:11:19 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_3Spin1Check_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_3Spin1Check_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_3Spin1Check_QTD::DlgRef_3Spin1Check_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_3Spin1Check_QTD" ); - resize( 124, 130 ); - setCaption( trUtf8( "DlgRef_3Spin1Check_QTD" ) ); - DlgRef_3Spin1Check_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_3Spin1Check_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - CheckBox1 = new QRadioButton( GroupBox1, "CheckBox1" ); - CheckBox1->setText( trUtf8( "" ) ); - - Layout1->addMultiCellWidget( CheckBox1, 3, 3, 0, 1 ); - QSpacerItem* spacer = new QSpacerItem( 0, 20, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 4, 1 ); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox2, 1, 1 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout1->addWidget( TextLabel3, 2, 0 ); - - SpinBox3 = new QSpinBox( GroupBox1, "SpinBox3" ); - SpinBox3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox3->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox3, 2, 1 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox1, 0, 1 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_3Spin1Check_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_3Spin1Check_QTD::~DlgRef_3Spin1Check_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_3Spin1Check_QTD.h b/src/DlgRef/DlgRef_3Spin1Check_QTD.h deleted file mode 100644 index 6df92fb08..000000000 --- a/src/DlgRef/DlgRef_3Spin1Check_QTD.h +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_3Spin1Check_QTD.ui' -** -** Created: dim sep 28 18:11:19 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_3SPIN1CHECK_QTD_H -#define DLGREF_3SPIN1CHECK_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QRadioButton; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_3Spin1Check_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_3Spin1Check_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_3Spin1Check_QTD(); - - QGroupBox* GroupBox1; - QRadioButton* CheckBox1; - QSpinBox* SpinBox2; - QLabel* TextLabel3; - QSpinBox* SpinBox3; - QSpinBox* SpinBox1; - QLabel* TextLabel1; - QLabel* TextLabel2; - - -protected: - QGridLayout* DlgRef_3Spin1Check_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; -}; - -#endif // DLGREF_3SPIN1CHECK_QTD_H diff --git a/src/DlgRef/DlgRef_3Spin1Check_QTD.ui b/src/DlgRef/DlgRef_3Spin1Check_QTD.ui new file mode 100644 index 000000000..7408ae941 --- /dev/null +++ b/src/DlgRef/DlgRef_3Spin1Check_QTD.ui @@ -0,0 +1,144 @@ + + DlgRef_3Spin1Check_QTD + + + + 0 + 0 + 100 + 110 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + SpinBox_DX + SpinBox_DY + SpinBox_DZ + CheckButton1 + + + +
    diff --git a/src/DlgRef/DlgRef_3Spin_QTD.cxx b/src/DlgRef/DlgRef_3Spin_QTD.cxx deleted file mode 100644 index 99a1d464e..000000000 --- a/src/DlgRef/DlgRef_3Spin_QTD.cxx +++ /dev/null @@ -1,109 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_3Spin_QTD.ui' -** -** Created: mar sep 23 16:05:10 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_3Spin_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_3Spin_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_3Spin_QTD::DlgRef_3Spin_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_3Spin_QTD" ); - resize( 124, 111 ); - setCaption( trUtf8( "DlgRef_3Spin_QTD" ) ); - DlgRef_3Spin_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_3Spin_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox2, 1, 1 ); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 3, 1 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout1->addWidget( TextLabel3, 2, 0 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox1, 0, 1 ); - - SpinBox3 = new QSpinBox( GroupBox1, "SpinBox3" ); - SpinBox3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox3->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox3, 2, 1 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_3Spin_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_3Spin_QTD::~DlgRef_3Spin_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_3Spin_QTD.h b/src/DlgRef/DlgRef_3Spin_QTD.h deleted file mode 100644 index 7f76b90b5..000000000 --- a/src/DlgRef/DlgRef_3Spin_QTD.h +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_3Spin_QTD.ui' -** -** Created: mar sep 23 16:05:09 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_3SPIN_QTD_H -#define DLGREF_3SPIN_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_3Spin_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_3Spin_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_3Spin_QTD(); - - QGroupBox* GroupBox1; - QSpinBox* SpinBox2; - QLabel* TextLabel3; - QSpinBox* SpinBox1; - QSpinBox* SpinBox3; - QLabel* TextLabel1; - QLabel* TextLabel2; - - -protected: - QGridLayout* DlgRef_3Spin_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; -}; - -#endif // DLGREF_3SPIN_QTD_H diff --git a/src/DlgRef/DlgRef_3Spin_QTD.ui b/src/DlgRef/DlgRef_3Spin_QTD.ui new file mode 100644 index 000000000..4ac7e5d12 --- /dev/null +++ b/src/DlgRef/DlgRef_3Spin_QTD.ui @@ -0,0 +1,136 @@ + + DlgRef_3Spin_QTD + + + + 0 + 0 + 100 + 91 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + SpinBox_DX + SpinBox_DY + SpinBox_DZ + + + +
    diff --git a/src/DlgRef/DlgRef_4Sel1List1Check_QTD.cxx b/src/DlgRef/DlgRef_4Sel1List1Check_QTD.cxx deleted file mode 100644 index c47a7a47e..000000000 --- a/src/DlgRef/DlgRef_4Sel1List1Check_QTD.cxx +++ /dev/null @@ -1,195 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_4Sel1List1Check_QTD.ui' -** -** Created: lun oct 27 17:21:04 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_4Sel1List1Check_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_4Sel1List1Check_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_4Sel1List1Check_QTD::DlgRef_4Sel1List1Check_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_4Sel1List1Check_QTD" ); - resize( 129, 210 ); - setCaption( trUtf8( "DlgRef_4Sel1List1Check_QTD" ) ); - DlgRef_4Sel1List1Check_QTDLayout = - new QGridLayout( this, 1, 1, 0, 6, "DlgRef_4Sel1List1Check_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - PushButton2->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addWidget( LineEdit2, 1, 2 ); - - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout1->addMultiCellWidget( TextLabel3, 2, 2, 0, 1 ); - - ComboBox1 = new QComboBox( FALSE, GroupBox1, "ComboBox1" ); - ComboBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, ComboBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( ComboBox1, 2, 2 ); - - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_4Sel1List1Check_QTDLayout->addWidget( GroupBox1, 0, 0 ); - - - GroupBox2 = new QGroupBox( this, "GroupBox2" ); - GroupBox2->setTitle( trUtf8( "" ) ); - GroupBox2->setColumnLayout(0, Qt::Vertical ); - GroupBox2->layout()->setSpacing( 6 ); - GroupBox2->layout()->setMargin( 11 ); - GroupBox2Layout = new QGridLayout( GroupBox2->layout() ); - GroupBox2Layout->setAlignment( Qt::AlignTop ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - TextLabel4 = new QLabel( GroupBox2, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - TextLabel4->setText( trUtf8( "TL4" ) ); - - Layout2->addWidget( TextLabel4, 0, 0 ); - QSpacerItem* spacer = new QSpacerItem( 0, 80, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 5, 2 ); - - PushButton3 = new QPushButton( GroupBox2, "PushButton3" ); - PushButton3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton3->sizePolicy().hasHeightForWidth() ) ); - PushButton3->setText( trUtf8( "" ) ); - - Layout2->addWidget( PushButton3, 0, 1 ); - - LineEdit3 = new QLineEdit( GroupBox2, "LineEdit3" ); - - Layout2->addWidget( LineEdit3, 0, 2 ); - - - TextLabel5 = new QLabel( GroupBox2, "TextLabel5" ); - TextLabel5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel5->sizePolicy().hasHeightForWidth() ) ); - TextLabel5->setText( trUtf8( "TL5" ) ); - - Layout2->addWidget( TextLabel5, 1, 0 ); - - PushButton4 = new QPushButton( GroupBox2, "PushButton4" ); - PushButton4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton4->sizePolicy().hasHeightForWidth() ) ); - PushButton4->setText( trUtf8( "" ) ); - - Layout2->addWidget( PushButton4, 1, 1 ); - - LineEdit4 = new QLineEdit( GroupBox2, "LineEdit4" ); - - Layout2->addWidget( LineEdit4, 1, 2 ); - - CheckBox1 = new QCheckBox( GroupBox1, "CheckBox1" ); - CheckBox1->setText( trUtf8( "" ) ); - Layout1->addMultiCellWidget( CheckBox1, 5, 5, 0, 1 ); - - PushButton5 = new QPushButton( GroupBox1, "PushButton5" ); - PushButton5->setText( trUtf8( "" ) ); - Layout1->addWidget( PushButton5, 5, 2 ); - - GroupBox2Layout->addLayout( Layout2, 0, 0 ); - - DlgRef_4Sel1List1Check_QTDLayout->addWidget( GroupBox2, 1, 0 ); - - // tab order - setTabOrder(PushButton1 , LineEdit1); - setTabOrder(LineEdit1 , PushButton2); - setTabOrder(PushButton2 , LineEdit2); - setTabOrder(LineEdit2, ComboBox1); - setTabOrder(ComboBox1, CheckBox1); - setTabOrder(CheckBox1, PushButton5); - setTabOrder(PushButton5, PushButton3); - setTabOrder(PushButton3 , LineEdit3); - setTabOrder(LineEdit3, PushButton4 ); - setTabOrder(PushButton4 , LineEdit4); - -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_4Sel1List1Check_QTD::~DlgRef_4Sel1List1Check_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_4Sel1List1Check_QTD.h b/src/DlgRef/DlgRef_4Sel1List1Check_QTD.h deleted file mode 100644 index 3d4a9a42f..000000000 --- a/src/DlgRef/DlgRef_4Sel1List1Check_QTD.h +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_4Sel1List1Check_QTD.ui' -** -** Created: lun oct 27 17:21:03 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_4SEL1LIST1CHECK_QTD_H -#define DLGREF_4SEL1LIST1CHECK_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QComboBox; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QCheckBox; -class QPushButton; - -class GEOM_DLGREF_EXPORT DlgRef_4Sel1List1Check_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_4Sel1List1Check_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_4Sel1List1Check_QTD(); - - QGroupBox* GroupBox1; - QGroupBox* GroupBox2; - QLabel* TextLabel1; - QLabel* TextLabel2; - QLabel* TextLabel3; - QLabel* TextLabel4; - QLabel* TextLabel5; - QPushButton* PushButton1; - QPushButton* PushButton2; - QPushButton* PushButton3; - QPushButton* PushButton4; - QLineEdit* LineEdit1; - QLineEdit* LineEdit2; - QLineEdit* LineEdit3; - QLineEdit* LineEdit4; - QComboBox* ComboBox1; - QCheckBox* CheckBox1; - QPushButton* PushButton5; - -protected: - QGridLayout* DlgRef_4Sel1List1Check_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* GroupBox2Layout; - QGridLayout* Layout1; - QGridLayout* Layout2; -}; - -#endif // DLGREF_4SEL1LIST1CHECK_QTD_H diff --git a/src/DlgRef/DlgRef_4Sel1List1Check_QTD.ui b/src/DlgRef/DlgRef_4Sel1List1Check_QTD.ui new file mode 100644 index 000000000..516d9a22e --- /dev/null +++ b/src/DlgRef/DlgRef_4Sel1List1Check_QTD.ui @@ -0,0 +1,244 @@ + + DlgRef_4Sel1List1Check_QTD + + + + 0 + 0 + 216 + 187 + + + + + + + + 0 + + + 0 + + + + + + + + + 9 + + + 6 + + + + + + 7 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL4 + + + false + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL5 + + + false + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + + + + + + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + ComboBox1 + PushButton3 + LineEdit3 + PushButton4 + LineEdit4 + CheckBox1 + PushButton5 + + + + diff --git a/src/DlgRef/DlgRef_4Sel1List_QTD.cxx b/src/DlgRef/DlgRef_4Sel1List_QTD.cxx deleted file mode 100644 index 1c7c3a6ea..000000000 --- a/src/DlgRef/DlgRef_4Sel1List_QTD.cxx +++ /dev/null @@ -1,171 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_4Sel1List_QTD.ui' -** -** Created: lun oct 27 17:21:04 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_4Sel1List_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_4Sel1List_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_4Sel1List_QTD::DlgRef_4Sel1List_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_4Sel1List_QTD" ); - resize( 129, 175 ); - setCaption( trUtf8( "DlgRef_4Sel1List_QTD" ) ); - DlgRef_4Sel1List_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_4Sel1List_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - PushButton2->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addWidget( LineEdit2, 1, 2 ); - - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout1->addMultiCellWidget( TextLabel3, 2, 2, 0, 1 ); - - ComboBox1 = new QComboBox( FALSE, GroupBox1, "ComboBox1" ); - ComboBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, ComboBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( ComboBox1, 2, 2 ); - - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_4Sel1List_QTDLayout->addWidget( GroupBox1, 0, 0 ); - - - GroupBox2 = new QGroupBox( this, "GroupBox2" ); - GroupBox2->setTitle( trUtf8( "" ) ); - GroupBox2->setColumnLayout(0, Qt::Vertical ); - GroupBox2->layout()->setSpacing( 6 ); - GroupBox2->layout()->setMargin( 11 ); - GroupBox2Layout = new QGridLayout( GroupBox2->layout() ); - GroupBox2Layout->setAlignment( Qt::AlignTop ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - TextLabel4 = new QLabel( GroupBox2, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - TextLabel4->setText( trUtf8( "TL4" ) ); - - Layout2->addWidget( TextLabel4, 0, 0 ); - QSpacerItem* spacer = new QSpacerItem( 0, 80, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 5, 2 ); - - PushButton3 = new QPushButton( GroupBox2, "PushButton3" ); - PushButton3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton3->sizePolicy().hasHeightForWidth() ) ); - PushButton3->setText( trUtf8( "" ) ); - - Layout2->addWidget( PushButton3, 0, 1 ); - - LineEdit3 = new QLineEdit( GroupBox2, "LineEdit3" ); - - Layout2->addWidget( LineEdit3, 0, 2 ); - - - TextLabel5 = new QLabel( GroupBox2, "TextLabel5" ); - TextLabel5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel5->sizePolicy().hasHeightForWidth() ) ); - TextLabel5->setText( trUtf8( "TL5" ) ); - - Layout2->addWidget( TextLabel5, 1, 0 ); - - PushButton4 = new QPushButton( GroupBox2, "PushButton4" ); - PushButton4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton4->sizePolicy().hasHeightForWidth() ) ); - PushButton4->setText( trUtf8( "" ) ); - - Layout2->addWidget( PushButton4, 1, 1 ); - - LineEdit4 = new QLineEdit( GroupBox2, "LineEdit4" ); - - Layout2->addWidget( LineEdit4, 1, 2 ); - - GroupBox2Layout->addLayout( Layout2, 0, 0 ); - - DlgRef_4Sel1List_QTDLayout->addWidget( GroupBox2, 1, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_4Sel1List_QTD::~DlgRef_4Sel1List_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_4Sel1List_QTD.h b/src/DlgRef/DlgRef_4Sel1List_QTD.h deleted file mode 100644 index d391942f9..000000000 --- a/src/DlgRef/DlgRef_4Sel1List_QTD.h +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_4Sel1List_QTD.ui' -** -** Created: lun oct 27 17:21:03 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_4SEL1LIST_QTD_H -#define DLGREF_4SEL1LIST_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QComboBox; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; - -class GEOM_DLGREF_EXPORT DlgRef_4Sel1List_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_4Sel1List_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_4Sel1List_QTD(); - - QGroupBox* GroupBox1; - QGroupBox* GroupBox2; - QLineEdit* LineEdit2; - QPushButton* PushButton4; - QPushButton* PushButton1; - QLineEdit* LineEdit4; - QPushButton* PushButton3; - QPushButton* PushButton2; - QLabel* TextLabel1; - QLabel* TextLabel4; - QLineEdit* LineEdit1; - QLabel* TextLabel5; - QLineEdit* LineEdit3; - QLabel* TextLabel2; - QComboBox* ComboBox1; - QLabel* TextLabel3; - - -protected: - QGridLayout* DlgRef_4Sel1List_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* GroupBox2Layout; - QGridLayout* Layout1; - QGridLayout* Layout2; -}; - -#endif // DLGREF_4SEL1LIST_QTD_H diff --git a/src/DlgRef/DlgRef_4Sel1List_QTD.ui b/src/DlgRef/DlgRef_4Sel1List_QTD.ui new file mode 100644 index 000000000..5388836ef --- /dev/null +++ b/src/DlgRef/DlgRef_4Sel1List_QTD.ui @@ -0,0 +1,228 @@ + + DlgRef_4Sel1List_QTD + + + + 0 + 0 + 156 + 158 + + + + + + + + 0 + + + 6 + + + + + + + + + 9 + + + 6 + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL4 + + + false + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL5 + + + false + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + + 7 + 0 + 0 + 0 + + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + ComboBox1 + PushButton3 + LineEdit3 + PushButton4 + LineEdit4 + + + + diff --git a/src/DlgRef/DlgRef_4Sel1Spin2Check.cxx b/src/DlgRef/DlgRef_4Sel1Spin2Check.cxx deleted file mode 100644 index 8fc0e900a..000000000 --- a/src/DlgRef/DlgRef_4Sel1Spin2Check.cxx +++ /dev/null @@ -1,106 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_4Sel1Spin2Check.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "DlgRef_4Sel1Spin2Check.h" - -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_4Sel1Spin2Check which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -DlgRef_4Sel1Spin2Check::DlgRef_4Sel1Spin2Check(QWidget* parent, const char* name, WFlags fl) - :DlgRef_4Sel1Spin2Check_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout1->addWidget(SpinBox_DX, 4, 2); -} - - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_4Sel1Spin2Check::~DlgRef_4Sel1Spin2Check() -{ - // no need to delete child widgets, Qt does it all for us -} - -void DlgRef_4Sel1Spin2Check::ShowRows(int fromRow, int toRow, bool toShow) -{ - typedef void (QWidget::* ShowFun)(); - ShowFun pShowFun; - - if (toShow) - pShowFun = &QWidget::show; - else - pShowFun = &QWidget::hide; - - if (fromRow >= 0 && toRow >= 0 && toRow >= fromRow) - { - if ( fromRow == 0) - { - (TextLabel1->*pShowFun)(); - (PushButton1->*pShowFun)(); - (LineEdit1->*pShowFun)(); - } - if ( fromRow <= 1 && 1 <= toRow) - { - (TextLabel2->*pShowFun)(); - (PushButton2->*pShowFun)(); - (LineEdit2->*pShowFun)(); - } - if ( fromRow <= 2 && 2 <= toRow) - { - (TextLabel4->*pShowFun)(); - (PushButton4->*pShowFun)(); - (LineEdit4->*pShowFun)(); - } - if ( fromRow <= 3 && 3 <= toRow) - { - (TextLabel5->*pShowFun)(); - (PushButton5->*pShowFun)(); - (LineEdit5->*pShowFun)(); - } - if ( fromRow <= 4 && 4 <= toRow) - { - (TextLabel3->*pShowFun)(); - (SpinBox_DX->*pShowFun)(); - (CheckButton2->*pShowFun)(); - } - if ( fromRow <= 5 && 5 <= toRow) - (CheckButton1->*pShowFun)(); - } -} - diff --git a/src/DlgRef/DlgRef_4Sel1Spin2Check.h b/src/DlgRef/DlgRef_4Sel1Spin2Check.h deleted file mode 100644 index ab366bac6..000000000 --- a/src/DlgRef/DlgRef_4Sel1Spin2Check.h +++ /dev/null @@ -1,51 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_4Sel1Spin2Check.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef DLGREF_4SEL1SPIN2CHECK_H -#define DLGREF_4SEL1SPIN2CHECK_H - -#include "GEOM_DlgRef.hxx" - -#include "DlgRef_4Sel1Spin2Check_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_DLGREF_EXPORT DlgRef_4Sel1Spin2Check : public DlgRef_4Sel1Spin2Check_QTD -{ - Q_OBJECT - -public: - DlgRef_4Sel1Spin2Check(QWidget* parent = 0, const char* name = 0, WFlags fl = 0); - ~DlgRef_4Sel1Spin2Check(); - - DlgRef_SpinBox* SpinBox_DX; - - void ShowRows(int fromRow, int toRow, bool toShow = true); - -}; - -#endif // DLGREF_4SEL1SPIN2CHECK_H diff --git a/src/DlgRef/DlgRef_4Sel1Spin2Check_QTD.cxx b/src/DlgRef/DlgRef_4Sel1Spin2Check_QTD.cxx deleted file mode 100644 index 0039c9d26..000000000 --- a/src/DlgRef/DlgRef_4Sel1Spin2Check_QTD.cxx +++ /dev/null @@ -1,158 +0,0 @@ -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_4Sel1Spin2Check_QTD.ui' -** -** Created: Wed Oct 25 20:32:42 2006 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#include "DlgRef_4Sel1Spin2Check_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_4Sel1Spin2Check_QTD as a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_4Sel1Spin2Check_QTD::DlgRef_4Sel1Spin2Check_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_4Sel1Spin2Check_QTD" ); - DlgRef_4Sel1Spin2Check_QTDLayout = new QVBoxLayout( this, 0, 6, "DlgRef_4Sel1Spin2Check_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QVBoxLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 6, 6, "Layout1"); - - CheckButton2 = new QCheckBox( GroupBox1, "CheckButton2" ); - - Layout1->addWidget( CheckButton2, 4, 3 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - - LineEdit5 = new QLineEdit( GroupBox1, "LineEdit5" ); - - Layout1->addMultiCellWidget( LineEdit5, 3, 3, 2, 3 ); - - TextLabel5 = new QLabel( GroupBox1, "TextLabel5" ); - TextLabel5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel5->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel5, 3, 0 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addMultiCellWidget( LineEdit1, 0, 0, 2, 3 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox1, 4, 2 ); - - CheckButton1 = new QCheckBox( GroupBox1, "CheckButton1" ); - - Layout1->addMultiCellWidget( CheckButton1, 5, 5, 0, 2 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - PushButton5 = new QPushButton( GroupBox1, "PushButton5" ); - PushButton5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton5->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( PushButton5, 3, 1 ); - - PushButton4 = new QPushButton( GroupBox1, "PushButton4" ); - PushButton4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton4->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( PushButton4, 2, 1 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel4, 2, 0 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - LineEdit4 = new QLineEdit( GroupBox1, "LineEdit4" ); - - Layout1->addMultiCellWidget( LineEdit4, 2, 2, 2, 3 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addMultiCellWidget( LineEdit2, 1, 1, 2, 3 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel3, 4, 0 ); - GroupBox1Layout->addLayout( Layout1 ); - DlgRef_4Sel1Spin2Check_QTDLayout->addWidget( GroupBox1 ); - languageChange(); - resize( QSize(261, 198).expandedTo(minimumSizeHint()) ); - clearWState( WState_Polished ); - - // tab order - setTabOrder( PushButton1, LineEdit1 ); - setTabOrder( LineEdit1, PushButton2 ); - setTabOrder( PushButton2, LineEdit2 ); - setTabOrder( LineEdit2, SpinBox1 ); - setTabOrder( SpinBox1, CheckButton2 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_4Sel1Spin2Check_QTD::~DlgRef_4Sel1Spin2Check_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - -/* - * Sets the strings of the subwidgets using the current - * language. - */ -void DlgRef_4Sel1Spin2Check_QTD::languageChange() -{ - setCaption( tr( "DlgRef_4Sel1Spin2Check_QTD" ) ); - GroupBox1->setTitle( QString::null ); - CheckButton2->setText( QString::null ); - PushButton2->setText( QString::null ); - TextLabel5->setText( tr( "TL5" ) ); - TextLabel1->setText( tr( "TL1" ) ); - CheckButton1->setText( QString::null ); - TextLabel2->setText( tr( "TL2" ) ); - PushButton5->setText( QString::null ); - PushButton4->setText( QString::null ); - TextLabel4->setText( tr( "TL4" ) ); - PushButton1->setText( QString::null ); - TextLabel3->setText( tr( "TL3" ) ); -} - diff --git a/src/DlgRef/DlgRef_4Sel1Spin2Check_QTD.h b/src/DlgRef/DlgRef_4Sel1Spin2Check_QTD.h deleted file mode 100644 index 0d1e1d459..000000000 --- a/src/DlgRef/DlgRef_4Sel1Spin2Check_QTD.h +++ /dev/null @@ -1,65 +0,0 @@ -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_4Sel1Spin2Check_QTD.ui' -** -** Created: Wed Oct 25 20:32:41 2006 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#ifndef DLGREF_4SEL1SPIN2CHECK_QTD_H -#define DLGREF_4SEL1SPIN2CHECK_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include - -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QSpacerItem; -class QGroupBox; -class QCheckBox; -class QPushButton; -class QLineEdit; -class QLabel; -class QSpinBox; - -class GEOM_DLGREF_EXPORT DlgRef_4Sel1Spin2Check_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_4Sel1Spin2Check_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_4Sel1Spin2Check_QTD(); - - QGroupBox* GroupBox1; - QCheckBox* CheckButton2; - QPushButton* PushButton2; - QLineEdit* LineEdit5; - QLabel* TextLabel5; - QLabel* TextLabel1; - QLineEdit* LineEdit1; - QSpinBox* SpinBox1; - QCheckBox* CheckButton1; - QLabel* TextLabel2; - QPushButton* PushButton5; - QPushButton* PushButton4; - QLabel* TextLabel4; - QPushButton* PushButton1; - QLineEdit* LineEdit4; - QLineEdit* LineEdit2; - QLabel* TextLabel3; - -protected: - QVBoxLayout* DlgRef_4Sel1Spin2Check_QTDLayout; - QVBoxLayout* GroupBox1Layout; - QGridLayout* Layout1; - -protected slots: - virtual void languageChange(); - -}; - -#endif // DLGREF_4SEL1SPIN2CHECK_QTD_H diff --git a/src/DlgRef/DlgRef_4Sel1Spin2Check_QTD.ui b/src/DlgRef/DlgRef_4Sel1Spin2Check_QTD.ui new file mode 100644 index 000000000..83501ec05 --- /dev/null +++ b/src/DlgRef/DlgRef_4Sel1Spin2Check_QTD.ui @@ -0,0 +1,252 @@ + + DlgRef_4Sel1Spin2Check_QTD + + + + 0 + 0 + 225 + 306 + + + + + + + + 0 + + + 6 + + + + + + + + + 9 + + + 6 + + + + + + 0 + 0 + + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + 0 + 0 + + + + TL5 + + + false + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + + + + + + + + + SpinBox_DX + TextLabel3 + TextLabel5 + TextLabel4 + TextLabel2 + TextLabel1 + PushButton2 + LineEdit5 + LineEdit1 + PushButton5 + PushButton4 + PushButton1 + LineEdit4 + LineEdit2 + CheckButton1 + CheckButton2 + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + PushButton4 + LineEdit4 + PushButton5 + LineEdit5 + SpinBox_DX + CheckButton1 + + + +
    diff --git a/src/DlgRef/DlgRef_4Sel1Spin3Check_QTD.ui b/src/DlgRef/DlgRef_4Sel1Spin3Check_QTD.ui new file mode 100755 index 000000000..7dc96d006 --- /dev/null +++ b/src/DlgRef/DlgRef_4Sel1Spin3Check_QTD.ui @@ -0,0 +1,265 @@ + + DlgRef_4Sel1Spin3Check_QTD + + + + 0 + 0 + 225 + 306 + + + + + + + + 0 + + + 6 + + + + + + + + + 9 + + + 6 + + + + + + 0 + 0 + + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + 0 + 0 + + + + TL5 + + + false + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + 0 + 0 + + + + + + + + + SpinBox_DX + TextLabel3 + TextLabel5 + TextLabel4 + TextLabel2 + TextLabel1 + PushButton2 + LineEdit5 + LineEdit1 + PushButton5 + PushButton4 + PushButton1 + LineEdit4 + LineEdit2 + CheckButton1 + CheckButton2 + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + PushButton4 + LineEdit4 + PushButton5 + LineEdit5 + SpinBox_DX + CheckButton1 + + + +
    diff --git a/src/DlgRef/DlgRef_6Sel_QTD.cxx b/src/DlgRef/DlgRef_6Sel_QTD.cxx deleted file mode 100644 index bc3ebe641..000000000 --- a/src/DlgRef/DlgRef_6Sel_QTD.cxx +++ /dev/null @@ -1,171 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_6Sel_QTD.ui' -** -** Created: Tue Aug 24 18:18:57 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "DlgRef_6Sel_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_6Sel_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -DlgRef_6Sel_QTD::DlgRef_6Sel_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "DlgRef_6Sel_QTD" ); - resize( 235, 196 ); - setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)7, 0, 0, sizePolicy().hasHeightForWidth() ) ); - setCaption( trUtf8( "DlgRef_6Sel_QTD" ) ); - DlgRef_6Sel_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "DlgRef_6Sel_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout1->addWidget( TextLabel3, 2, 0 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - TextLabel4->setText( trUtf8( "TL4" ) ); - - Layout1->addWidget( TextLabel4, 3, 0 ); - - TextLabel5 = new QLabel( GroupBox1, "TextLabel5" ); - TextLabel5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel5->sizePolicy().hasHeightForWidth() ) ); - TextLabel5->setText( trUtf8( "TL5" ) ); - - Layout1->addWidget( TextLabel5, 4, 0 ); - - TextLabel6 = new QLabel( GroupBox1, "TextLabel6" ); - TextLabel6->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel6->sizePolicy().hasHeightForWidth() ) ); - TextLabel6->setText( trUtf8( "TL6" ) ); - - Layout1->addWidget( TextLabel6, 5, 0 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - PushButton2->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - - PushButton3 = new QPushButton( GroupBox1, "PushButton3" ); - PushButton3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton3->sizePolicy().hasHeightForWidth() ) ); - PushButton3->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton3, 2, 1 ); - - PushButton4 = new QPushButton( GroupBox1, "PushButton4" ); - PushButton4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton4->sizePolicy().hasHeightForWidth() ) ); - PushButton4->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton4, 3, 1 ); - - PushButton5 = new QPushButton( GroupBox1, "PushButton5" ); - PushButton5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton5->sizePolicy().hasHeightForWidth() ) ); - PushButton5->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton5, 4, 1 ); - - PushButton6 = new QPushButton( GroupBox1, "PushButton6" ); - PushButton6->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton6->sizePolicy().hasHeightForWidth() ) ); - PushButton6->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton6, 5, 1 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addWidget( LineEdit2, 1, 2 ); - - LineEdit3 = new QLineEdit( GroupBox1, "LineEdit3" ); - - Layout1->addWidget( LineEdit3, 2, 2 ); - - LineEdit4 = new QLineEdit( GroupBox1, "LineEdit4" ); - - Layout1->addWidget( LineEdit4, 3, 2 ); - - LineEdit5 = new QLineEdit( GroupBox1, "LineEdit5" ); - - Layout1->addWidget( LineEdit5, 4, 2 ); - - LineEdit6 = new QLineEdit( GroupBox1, "LineEdit6" ); - - Layout1->addWidget( LineEdit6, 5, 2 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - DlgRef_6Sel_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_6Sel_QTD::~DlgRef_6Sel_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/DlgRef/DlgRef_6Sel_QTD.h b/src/DlgRef/DlgRef_6Sel_QTD.h deleted file mode 100644 index 517c3a5aa..000000000 --- a/src/DlgRef/DlgRef_6Sel_QTD.h +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_6Sel_QTD.ui' -** -** Created: Tue Aug 24 18:18:28 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DLGREF_6SEL_QTD_H -#define DLGREF_6SEL_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; - -class GEOM_DLGREF_EXPORT DlgRef_6Sel_QTD : public QWidget -{ - Q_OBJECT - -public: - DlgRef_6Sel_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~DlgRef_6Sel_QTD(); - - QGroupBox* GroupBox1; - QLabel* TextLabel1; - QLabel* TextLabel2; - QLabel* TextLabel3; - QLabel* TextLabel4; - QLabel* TextLabel5; - QLabel* TextLabel6; - QPushButton* PushButton1; - QPushButton* PushButton2; - QPushButton* PushButton3; - QPushButton* PushButton4; - QPushButton* PushButton5; - QPushButton* PushButton6; - QLineEdit* LineEdit1; - QLineEdit* LineEdit2; - QLineEdit* LineEdit3; - QLineEdit* LineEdit4; - QLineEdit* LineEdit5; - QLineEdit* LineEdit6; - - -protected: - QGridLayout* DlgRef_6Sel_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; -}; - -#endif // DLGREF_6SEL_QTD_H diff --git a/src/DlgRef/DlgRef_6Sel_QTD.ui b/src/DlgRef/DlgRef_6Sel_QTD.ui new file mode 100644 index 000000000..22ce9046b --- /dev/null +++ b/src/DlgRef/DlgRef_6Sel_QTD.ui @@ -0,0 +1,281 @@ + + DlgRef_6Sel_QTD + + + + 0 + 0 + 156 + 190 + + + + + 5 + 7 + 0 + 0 + + + + + + + + 0 + + + 0 + + + + + + + + + 9 + + + 6 + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL6 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL3 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL5 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL4 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL2 + + + false + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + PushButton3 + LineEdit3 + PushButton4 + LineEdit4 + PushButton5 + LineEdit5 + PushButton6 + LineEdit6 + + + + diff --git a/src/DlgRef/DlgRef_Skeleton_QTD.cxx b/src/DlgRef/DlgRef_Skeleton_QTD.cxx deleted file mode 100644 index 0e2b081bc..000000000 --- a/src/DlgRef/DlgRef_Skeleton_QTD.cxx +++ /dev/null @@ -1,154 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'DlgRef_Skeleton_QTD.ui' -** -** Created: Tue Mar 13 14:40:34 2007 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#include "DlgRef_Skeleton_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a DlgRef_Skeleton_QTD as a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - * - * The dialog will by default be modeless, unless you set 'modal' to - * TRUE to construct a modal dialog. - */ -DlgRef_Skeleton_QTD::DlgRef_Skeleton_QTD( QWidget* parent, const char* name, bool modal, WFlags fl ) - : QDialog( parent, name, modal, fl ) -{ - if ( !name ) - setName( "DlgRef_Skeleton_QTD" ); - setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)7, 0, 0, sizePolicy().hasHeightForWidth() ) ); - setSizeGripEnabled( TRUE ); - DlgRef_Skeleton_QTDLayout = new QGridLayout( this, 1, 1, 11, 6, "DlgRef_Skeleton_QTDLayout"); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - GroupButtons = new QGroupBox( this, "GroupButtons" ); - GroupButtons->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, GroupButtons->sizePolicy().hasHeightForWidth() ) ); - GroupButtons->setColumnLayout(0, Qt::Vertical ); - GroupButtons->layout()->setSpacing( 6 ); - GroupButtons->layout()->setMargin( 11 ); - GroupButtonsLayout = new QHBoxLayout( GroupButtons->layout() ); - GroupButtonsLayout->setAlignment( Qt::AlignTop ); - - Layout3 = new QHBoxLayout( 0, 0, 6, "Layout3"); - - buttonOk = new QPushButton( GroupButtons, "buttonOk" ); - Layout3->addWidget( buttonOk ); - - buttonApply = new QPushButton( GroupButtons, "buttonApply" ); - Layout3->addWidget( buttonApply ); - Spacer1 = new QSpacerItem( 91, 0, QSizePolicy::Expanding, QSizePolicy::Minimum ); - Layout3->addItem( Spacer1 ); - - buttonCancel = new QPushButton( GroupButtons, "buttonCancel" ); - Layout3->addWidget( buttonCancel ); - - buttonHelp = new QPushButton( GroupButtons, "buttonHelp" ); - Layout3->addWidget( buttonHelp ); - GroupButtonsLayout->addLayout( Layout3 ); - - Layout1->addWidget( GroupButtons, 3, 0 ); - - GroupConstructors = new QButtonGroup( this, "GroupConstructors" ); - GroupConstructors->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)0, 0, 0, GroupConstructors->sizePolicy().hasHeightForWidth() ) ); - GroupConstructors->setColumnLayout(0, Qt::Vertical ); - GroupConstructors->layout()->setSpacing( 6 ); - GroupConstructors->layout()->setMargin( 11 ); - GroupConstructorsLayout = new QHBoxLayout( GroupConstructors->layout() ); - GroupConstructorsLayout->setAlignment( Qt::AlignTop ); - - Layout2 = new QHBoxLayout( 0, 0, 6, "Layout2"); - - RadioButton1 = new QRadioButton( GroupConstructors, "RadioButton1" ); - Layout2->addWidget( RadioButton1 ); - - RadioButton2 = new QRadioButton( GroupConstructors, "RadioButton2" ); - Layout2->addWidget( RadioButton2 ); - - RadioButton3 = new QRadioButton( GroupConstructors, "RadioButton3" ); - Layout2->addWidget( RadioButton3 ); - - RadioButton4 = new QRadioButton( GroupConstructors, "RadioButton4" ); - Layout2->addWidget( RadioButton4 ); - GroupConstructorsLayout->addLayout( Layout2 ); - - Layout1->addWidget( GroupConstructors, 0, 0 ); - - GroupBoxName = new QGroupBox( this, "GroupBoxName" ); - GroupBoxName->setColumnLayout(0, Qt::Vertical ); - GroupBoxName->layout()->setSpacing( 6 ); - GroupBoxName->layout()->setMargin( 11 ); - GroupBoxNameLayout = new QGridLayout( GroupBoxName->layout() ); - GroupBoxNameLayout->setAlignment( Qt::AlignTop ); - - Layout66 = new QGridLayout( 0, 1, 1, 0, 6, "Layout66"); - - ResultName = new QLineEdit( GroupBoxName, "ResultName" ); - - Layout66->addWidget( ResultName, 0, 1 ); - - NameLabel = new QLabel( GroupBoxName, "NameLabel" ); - - Layout66->addWidget( NameLabel, 0, 0 ); - - GroupBoxNameLayout->addLayout( Layout66, 0, 0 ); - - Layout1->addWidget( GroupBoxName, 1, 0 ); - - DlgRef_Skeleton_QTDLayout->addLayout( Layout1, 0, 0 ); - languageChange(); - resize( QSize(307, 378).expandedTo(minimumSizeHint()) ); - clearWState( WState_Polished ); -} - -/* - * Destroys the object and frees any allocated resources - */ -DlgRef_Skeleton_QTD::~DlgRef_Skeleton_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - -/* - * Sets the strings of the subwidgets using the current - * language. - */ -void DlgRef_Skeleton_QTD::languageChange() -{ -} - diff --git a/src/DlgRef/DlgRef_Skeleton_QTD.h b/src/DlgRef/DlgRef_Skeleton_QTD.h deleted file mode 100644 index 0ecfdfcaa..000000000 --- a/src/DlgRef/DlgRef_Skeleton_QTD.h +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_Skeleton_QTD.ui' -** -** Created: Tue Mar 13 14:40:29 2007 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#ifndef DLGREF_SKELETON_QTD_H -#define DLGREF_SKELETON_QTD_H - -#include "GEOM_DlgRef.hxx" - -#include -#include - -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QSpacerItem; -class QGroupBox; -class QPushButton; -class QButtonGroup; -class QRadioButton; -class QLineEdit; -class QLabel; - -class GEOM_DLGREF_EXPORT DlgRef_Skeleton_QTD : public QDialog -{ - Q_OBJECT - -public: - DlgRef_Skeleton_QTD( QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 ); - ~DlgRef_Skeleton_QTD(); - - QGroupBox* GroupButtons; - QPushButton* buttonOk; - QPushButton* buttonApply; - QPushButton* buttonCancel; - QPushButton* buttonHelp; - QButtonGroup* GroupConstructors; - QRadioButton* RadioButton1; - QRadioButton* RadioButton2; - QRadioButton* RadioButton3; - QRadioButton* RadioButton4; - QGroupBox* GroupBoxName; - QLineEdit* ResultName; - QLabel* NameLabel; - -protected: - QGridLayout* DlgRef_Skeleton_QTDLayout; - QGridLayout* Layout1; - QHBoxLayout* GroupButtonsLayout; - QHBoxLayout* Layout3; - QSpacerItem* Spacer1; - QHBoxLayout* GroupConstructorsLayout; - QHBoxLayout* Layout2; - QGridLayout* GroupBoxNameLayout; - QGridLayout* Layout66; - -protected slots: - virtual void languageChange(); - -}; - -#endif // DLGREF_SKELETON_QTD_H diff --git a/src/DlgRef/DlgRef_Skeleton_QTD.ui b/src/DlgRef/DlgRef_Skeleton_QTD.ui new file mode 100644 index 000000000..02624d442 --- /dev/null +++ b/src/DlgRef/DlgRef_Skeleton_QTD.ui @@ -0,0 +1,226 @@ + + DlgRef_Skeleton_QTD + + + + 0 + 0 + 364 + 217 + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + + + + + + + + 6 + + + 9 + + + 9 + + + 9 + + + 9 + + + + + + + + false + + + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + + + + + + + + + + + 0 + 0 + + + + + + + + 6 + + + 9 + + + 9 + + + 9 + + + 9 + + + + + &Ok + + + + + + + &Apply + + + + + + + Qt::Horizontal + + + QSizePolicy::Expanding + + + + 91 + 0 + + + + + + + + &Cancel + + + + + + + &Help + + + + + + + + + + CheckBoxRestoreSS + buttonOk + buttonApply + buttonCancel + buttonHelp + RadioButton1 + RadioButton2 + RadioButton3 + RadioButton4 + RadioButton5 + ResultName + + + + diff --git a/src/DlgRef/DlgRef_SpinBox.cxx b/src/DlgRef/DlgRef_SpinBox.cxx deleted file mode 100644 index 35bec55ba..000000000 --- a/src/DlgRef/DlgRef_SpinBox.cxx +++ /dev/null @@ -1,129 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_SpinBox.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - -#include "DlgRef_SpinBox.h" - -#include - -//================================================================================= -// class : DlgRef_SpinBox() -// purpose : constructor of specific widget accepting floats in double precision. -//================================================================================= -DlgRef_SpinBox::DlgRef_SpinBox(QWidget* parent, const char* name) - : QtxDblSpinBox(parent, name) -{ -} - - -//================================================================================= -// function : ~DlgRef_SpinBox() -// purpose : destructor -//================================================================================= -DlgRef_SpinBox::~DlgRef_SpinBox() -{ -} - - -//================================================================================= -// function : SetStep() [SLOT] -// purpose : -//================================================================================= -void DlgRef_SpinBox::SetStep(double newStep) -{ - setLineStep(newStep); -} - - -//================================================================================= -// function : SetValue() -// purpose : -//================================================================================= -void DlgRef_SpinBox::SetValue(double v) -{ - setValue(v); -} - - -//================================================================================= -// function : GetValue() -// purpose : returns a double -//================================================================================= -double DlgRef_SpinBox::GetValue() -{ - return value(); -} - - -//================================================================================= -// function : GetString() -// purpose : returns a QString -//================================================================================= -QString DlgRef_SpinBox::GetString() -{ - return cleanText(); -} - - -//================================================================================= -// function : RangeStepAndValidator() -// purpose : -//================================================================================= -void DlgRef_SpinBox::RangeStepAndValidator(double min, double max,double step, - unsigned short decimals) -{ - setPrecision(-decimals); // PAL12789. Minus is for using 'g' double->string conversion specifier, - // see QtxDblSpinBox::mapValueToText( double v ) - setRange(min, max); - setLineStep(step); - ((QDoubleValidator*)validator())->setRange(min, max, decimals); -} - -QString DlgRef_SpinBox::PrintDoubleValue (double theValue, int thePrecision) -{ - QString aRes; - aRes.setNum(theValue, 'g', thePrecision); - - // remove trailing zeroes - QString delim( "." ); - - int idx = aRes.findRev( delim ); - if ( idx == -1 ) - return aRes; - - QString iPart = aRes.left( idx ); - QString fPart = aRes.mid( idx + 1 ); - - while ( !fPart.isEmpty() && fPart.at( fPart.length() - 1 ) == '0' ) - fPart.remove( fPart.length() - 1, 1 ); - - aRes = iPart; - if ( !fPart.isEmpty() ) - aRes += delim + fPart; - - return aRes; -} diff --git a/src/DlgRef/DlgRef_SpinBox.h b/src/DlgRef/DlgRef_SpinBox.h deleted file mode 100644 index e576781d0..000000000 --- a/src/DlgRef/DlgRef_SpinBox.h +++ /dev/null @@ -1,65 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : DlgRef_SpinBox.h -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - -#ifndef GEOMSPINBOX_H -#define GEOMSPINBOX_H - -#include "GEOM_DlgRef.hxx" - -#include "QtxDblSpinBox.h" - -#define COORD_MIN -1e+15 -#define COORD_MAX +1e+15 -#define MAX_NUMBER 100000 -#define DBL_DIGITS_DISPLAY 16 - -//================================================================================= -// class : DlgRef_SpinBox -// purpose : Derivated from QSpinBox class and modified to accept floats -//================================================================================= -class GEOM_DLGREF_EXPORT DlgRef_SpinBox : public QtxDblSpinBox -{ - Q_OBJECT - -public : - DlgRef_SpinBox(QWidget* parent, const char* name = 0); - ~DlgRef_SpinBox(); - - void RangeStepAndValidator(double min = -1000000.0, double max = +1000000.0, - double step = 100.0, unsigned short decimals = 3); - void SetValue(double v); - double GetValue(); - QString GetString(); - - static QString PrintDoubleValue (double theValue, int Precision = DBL_DIGITS_DISPLAY); - -public slots: - void SetStep(double newStep); -}; - -#endif // GEOMSPINBOX_H diff --git a/src/DlgRef/GEOM_DlgRef.hxx b/src/DlgRef/GEOM_DlgRef.hxx deleted file mode 100755 index f0497ac78..000000000 --- a/src/DlgRef/GEOM_DlgRef.hxx +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org -// -// -// -// File : GEOM_DlgRef.hxx -// Author : Alexander A. BORODIN -// Module : GEOM - -#ifndef _GEOM_DlgRef_HXX_ -#define _GEOM_DlgRef_HXX_ - -#ifdef WNT - #if defined DLGREF_EXPORTS - #if defined WIN32 - #define GEOM_DLGREF_EXPORT __declspec( dllexport ) - #else - #define GEOM_DLGREF_EXPORT - #endif - #else - #if defined WIN32 - #define GEOM_DLGREF_EXPORT __declspec( dllimport ) - #else - #define GEOM_DLGREF_EXPORT - #endif - #endif -#else - #define GEOM_DLGREF_EXPORT -#endif - -#endif diff --git a/src/DlgRef/Makefile.am b/src/DlgRef/Makefile.am index 960a9ad06..3a4606f02 100644 --- a/src/DlgRef/Makefile.am +++ b/src/DlgRef/Makefile.am @@ -1,235 +1,104 @@ -# GEOM DLGREF : +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# GEOM DLGREF : +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : DlgRef # -# File : Makefile.in -# Author : Damien COQUERET (OCC) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header: - include $(top_srcdir)/adm_local/unix/make_common_starter.am # Libraries targets lib_LTLIBRARIES = libDlgRef.la # Sources files -dist_libDlgRef_la_SOURCES = \ - DlgRef_Skeleton_QTD.cxx \ - DlgRef_1Sel_QTD.cxx \ - DlgRef_2Sel_QTD.cxx \ - DlgRef_3Sel_QTD.cxx \ - DlgRef_1Sel1Check_QTD.cxx \ - DlgRef_1Sel3Check_QTD.cxx \ - DlgRef_1Sel1Check1List_QTD.cxx \ - DlgRef_1Sel1Spin_QTD.cxx \ - DlgRef_1Sel2Spin_QTD.cxx \ - DlgRef_1Sel3Spin_QTD.cxx \ - DlgRef_1Sel4Spin_QTD.cxx \ - DlgRef_1Sel5Spin_QTD.cxx \ - DlgRef_1Sel5Spin1Check_QTD.cxx \ - DlgRef_2Sel1Spin_QTD.cxx \ - DlgRef_2Sel2Spin_QTD.cxx \ - DlgRef_2Sel3Spin_QTD.cxx \ - DlgRef_1Sel1Spin1Check_QTD.cxx \ - DlgRef_2Sel1Spin2Check_QTD.cxx \ - DlgRef_2Sel2Spin1Check_QTD.cxx \ - DlgRef_2Sel4Spin1Check_QTD.cxx \ - DlgRef_3Sel4Spin2Check_QTD.cxx \ - DlgRef_2Sel3Spin2Rb_QTD.cxx \ - DlgRef_2Sel3Spin2Rb.cxx \ - DlgRef_4Sel1List_QTD.cxx \ - DlgRef_2Sel1List_QTD.cxx \ - DlgRef_2Sel1List1Check_QTD.cxx \ - DlgRef_1List1Spin1Btn_QTD.cxx \ - DlgRef_4Sel1List1Check_QTD.cxx \ - DlgRef_1Spin_QTD.cxx \ - DlgRef_2Spin_QTD.cxx \ - DlgRef_3Spin_QTD.cxx \ - DlgRef_3Spin1Check_QTD.cxx \ - DlgRef_3Sel3Spin1Check_QTD.cxx \ - DlgRef_4Sel1Spin2Check_QTD.cxx \ - DlgRef_SpinBox.cxx \ - DlgRef_1Sel1Spin.cxx \ - DlgRef_1Sel2Spin.cxx \ - DlgRef_1Sel3Spin.cxx \ - DlgRef_1Sel4Spin.cxx \ - DlgRef_1Sel5Spin.cxx \ - DlgRef_1Sel5Spin1Check.cxx \ - DlgRef_2Sel1Spin.cxx \ - DlgRef_2Sel2Spin.cxx \ - DlgRef_2Sel3Spin.cxx \ - DlgRef_1Sel1Spin1Check.cxx \ - DlgRef_2Sel1Spin2Check.cxx \ - DlgRef_2Sel2Spin1Check.cxx \ - DlgRef_2Sel4Spin1Check.cxx \ - DlgRef_3Sel4Spin2Check.cxx \ - DlgRef_3Sel3Spin1Check.cxx \ - DlgRef_1Spin.cxx \ - DlgRef_2Spin.cxx \ - DlgRef_3Spin.cxx \ - DlgRef_3Spin1Check.cxx \ - DlgRef_3Sel1Spin.cxx \ - DlgRef_3Check_QTD.cxx \ - DlgRef_6Sel_QTD.cxx \ - DlgRef_4Sel1Spin2Check.cxx \ - DlgRef_3Sel1Check_QTD.cxx +dist_libDlgRef_la_SOURCES = \ + DlgRef.h \ + DlgRef.cxx -MOC_FILES = \ - DlgRef_Skeleton_QTD_moc.cxx \ - DlgRef_1Sel_QTD_moc.cxx \ - DlgRef_2Sel_QTD_moc.cxx \ - DlgRef_3Sel_QTD_moc.cxx \ - DlgRef_1Sel1Check_QTD_moc.cxx \ - DlgRef_1Sel3Check_QTD_moc.cxx \ - DlgRef_1Sel1Check1List_QTD_moc.cxx \ - DlgRef_1Sel1Spin_QTD_moc.cxx \ - DlgRef_1Sel2Spin_QTD_moc.cxx \ - DlgRef_1Sel3Spin_QTD_moc.cxx \ - DlgRef_1Sel4Spin_QTD_moc.cxx \ - DlgRef_1Sel5Spin_QTD_moc.cxx \ - DlgRef_1Sel5Spin1Check_QTD_moc.cxx \ - DlgRef_2Sel1Spin_QTD_moc.cxx \ - DlgRef_2Sel2Spin_QTD_moc.cxx \ - DlgRef_2Sel3Spin_QTD_moc.cxx \ - DlgRef_2Sel3Spin2Rb_QTD_moc.cxx \ - DlgRef_2Sel3Spin2Rb_moc.cxx \ - DlgRef_1Sel1Spin1Check_QTD_moc.cxx \ - DlgRef_2Sel1Spin2Check_QTD_moc.cxx \ - DlgRef_2Sel2Spin1Check_QTD_moc.cxx \ - DlgRef_2Sel4Spin1Check_QTD_moc.cxx \ - DlgRef_3Sel4Spin2Check_QTD_moc.cxx \ - DlgRef_4Sel1List_QTD_moc.cxx \ - DlgRef_2Sel1List_QTD_moc.cxx \ - DlgRef_2Sel1List1Check_QTD_moc.cxx \ - DlgRef_1List1Spin1Btn_QTD_moc.cxx \ - DlgRef_4Sel1List1Check_QTD_moc.cxx \ - DlgRef_1Spin_QTD_moc.cxx \ - DlgRef_2Spin_QTD_moc.cxx \ - DlgRef_3Spin_QTD_moc.cxx \ - DlgRef_3Spin1Check_QTD_moc.cxx \ - DlgRef_3Sel3Spin1Check_QTD_moc.cxx \ - DlgRef_4Sel1Spin2Check_QTD_moc.cxx \ - DlgRef_SpinBox_moc.cxx \ - DlgRef_1Sel1Spin_moc.cxx \ - DlgRef_1Sel2Spin_moc.cxx \ - DlgRef_1Sel3Spin_moc.cxx \ - DlgRef_1Sel4Spin_moc.cxx \ - DlgRef_1Sel5Spin_moc.cxx \ - DlgRef_1Sel5Spin1Check_moc.cxx \ - DlgRef_2Sel1Spin_moc.cxx \ - DlgRef_2Sel2Spin_moc.cxx \ - DlgRef_2Sel3Spin_moc.cxx \ - DlgRef_1Sel1Spin1Check_moc.cxx \ - DlgRef_2Sel1Spin2Check_moc.cxx \ - DlgRef_2Sel2Spin1Check_moc.cxx \ - DlgRef_2Sel4Spin1Check_moc.cxx \ - DlgRef_3Sel4Spin2Check_moc.cxx \ - DlgRef_3Sel3Spin1Check_moc.cxx \ - DlgRef_1Spin_moc.cxx \ - DlgRef_2Spin_moc.cxx \ - DlgRef_3Spin_moc.cxx \ - DlgRef_3Spin1Check_moc.cxx \ - DlgRef_3Sel1Spin_moc.cxx \ - DlgRef_1Sel_Ext_moc.cxx \ - DlgRef_3Check_QTD_moc.cxx \ - DlgRef_6Sel_QTD_moc.cxx \ - DlgRef_4Sel1Spin2Check_moc.cxx \ - DlgRef_3Sel1Check_QTD_moc.cxx +MOC_FILES = \ + DlgRef_moc.cxx -# header files -salomeinclude_HEADERS = \ - DlgRef_Skeleton_QTD.h \ - DlgRef_1Sel_QTD.h \ - DlgRef_2Sel_QTD.h \ - DlgRef_3Sel_QTD.h \ - DlgRef_1Sel1Check_QTD.h \ - DlgRef_1Sel3Check_QTD.h \ - DlgRef_1Sel1Check1List_QTD.h \ - DlgRef_1Sel1Spin_QTD.h \ - DlgRef_1Sel2Spin_QTD.h \ - DlgRef_1Sel3Spin_QTD.h \ - DlgRef_1Sel4Spin_QTD.h \ - DlgRef_1Sel5Spin_QTD.h \ - DlgRef_1Sel5Spin1Check_QTD.h \ - DlgRef_2Sel1Spin_QTD.h \ - DlgRef_2Sel2Spin_QTD.h \ - DlgRef_2Sel3Spin_QTD.h \ - DlgRef_1Sel1Spin1Check_QTD.h \ - DlgRef_2Sel1Spin2Check_QTD.h \ - DlgRef_2Sel2Spin1Check_QTD.h \ - DlgRef_2Sel4Spin1Check_QTD.h \ - DlgRef_3Sel4Spin2Check_QTD.h \ - DlgRef_2Sel3Spin2Rb_QTD.h \ - DlgRef_2Sel3Spin2Rb.h \ - DlgRef_4Sel1List_QTD.h \ - DlgRef_2Sel1List_QTD.h \ - DlgRef_2Sel1List1Check_QTD.h \ - DlgRef_1List1Spin1Btn_QTD.h \ - DlgRef_4Sel1List1Check_QTD.h \ - DlgRef_1Spin_QTD.h \ - DlgRef_2Spin_QTD.h \ - DlgRef_3Spin_QTD.h \ - DlgRef_3Spin1Check_QTD.h \ - DlgRef_3Sel3Spin1Check_QTD.h \ - DlgRef_4Sel1Spin2Check_QTD.h \ - DlgRef_SpinBox.h \ - DlgRef_1Sel1Spin.h \ - DlgRef_1Sel2Spin.h \ - DlgRef_1Sel3Spin.h \ - DlgRef_1Sel4Spin.h \ - DlgRef_1Sel5Spin.h \ - DlgRef_1Sel5Spin1Check.h \ - DlgRef_2Sel1Spin.h \ - DlgRef_2Sel2Spin.h \ - DlgRef_2Sel3Spin.h \ - DlgRef_1Sel1Spin1Check.h \ - DlgRef_2Sel1Spin2Check.h \ - DlgRef_2Sel2Spin1Check.h \ - DlgRef_2Sel4Spin1Check.h \ - DlgRef_3Sel4Spin2Check.h \ - DlgRef_3Sel3Spin1Check.h \ - DlgRef_1Spin.h \ - DlgRef_2Spin.h \ - DlgRef_3Spin.h \ - DlgRef_3Spin1Check.h \ - DlgRef_3Sel1Spin.h \ - DlgRef_1Sel_Ext.h \ - DlgRef_3Check_QTD.h \ - DlgRef_6Sel_QTD.h \ - DlgRef_4Sel1Spin2Check.h \ - DlgRef_3Sel1Check_QTD.h \ - GEOM_DlgRef.hxx +UIC_FILES = \ + ui_DlgRef_1List1Spin1Btn_QTD.h \ + ui_DlgRef_1Sel1Check1List_QTD.h \ + ui_DlgRef_1Sel1Check1Sel_QTD.h \ + ui_DlgRef_1Sel1Check_QTD.h \ + ui_DlgRef_1Sel1List1Check3Btn_QTD.h \ + ui_DlgRef_1Sel1Spin1Check_QTD.h \ + ui_DlgRef_1Sel1Spin_QTD.h \ + ui_DlgRef_1Sel2Spin1View1Check_QTD.h \ + ui_DlgRef_1Sel2Spin_QTD.h \ + ui_DlgRef_1Sel3Check_QTD.h \ + ui_DlgRef_1Sel3Spin_QTD.h \ + ui_DlgRef_1Sel3Spin1Check_QTD.h \ + ui_DlgRef_1Sel4Spin_QTD.h \ + ui_DlgRef_1Sel5Spin1Check_QTD.h \ + ui_DlgRef_1Sel5Spin_QTD.h \ + ui_DlgRef_1Sel_QTD.h \ + ui_DlgRef_1SelExt_QTD.h \ + ui_DlgRef_1Spin_QTD.h \ + ui_DlgRef_2Sel1List1Check_QTD.h \ + ui_DlgRef_2Sel1List_QTD.h \ + ui_DlgRef_2Sel1Spin2Check_QTD.h \ + ui_DlgRef_2Sel1Spin_QTD.h \ + ui_DlgRef_2Sel2List_QTD.h \ + ui_DlgRef_2Sel2Spin1Check_QTD.h \ + ui_DlgRef_2Sel2Spin_QTD.h \ + ui_DlgRef_2Sel3Spin2Rb_QTD.h \ + ui_DlgRef_2Sel3Spin_QTD.h \ + ui_DlgRef_2Sel4Spin1Check_QTD.h \ + ui_DlgRef_2Sel_QTD.h \ + ui_DlgRef_2SelExt_QTD.h \ + ui_DlgRef_2Spin_QTD.h \ + ui_DlgRef_3Check_QTD.h \ + ui_DlgRef_3Radio_QTD.h \ + ui_DlgRef_3Radio1Sel1Spin_QTD.h \ + ui_DlgRef_3Sel1Check_QTD.h \ + ui_DlgRef_3Sel1Spin_QTD.h \ + ui_DlgRef_3Sel3Spin1Check_QTD.h \ + ui_DlgRef_3Sel3Spin2Check_QTD.h \ + ui_DlgRef_3Sel4Spin2Check_QTD.h \ + ui_DlgRef_3Sel_QTD.h \ + ui_DlgRef_3Spin1Check_QTD.h \ + ui_DlgRef_3Spin_QTD.h \ + ui_DlgRef_4Sel1List1Check_QTD.h \ + ui_DlgRef_4Sel1List_QTD.h \ + ui_DlgRef_4Sel1Spin2Check_QTD.h \ + ui_DlgRef_4Sel1Spin3Check_QTD.h \ + ui_DlgRef_6Sel_QTD.h \ + ui_DlgRef_Skeleton_QTD.h -nodist_libDlgRef_la_SOURCES= \ - $(MOC_FILES) +BUILT_SOURCES = $(UIC_FILES) -# additionnal information to compil and link file -libDlgRef_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(KERNEL_CXXFLAGS) \ +nodist_libDlgRef_la_SOURCES = \ + $(MOC_FILES) \ + $(UIC_FILES) + +# additional information to compile and link file + +libDlgRef_la_CPPFLAGS = \ + $(QT_INCLUDES) \ $(GUI_CXXFLAGS) -libDlgRef_la_LDFLAGS = \ - $(GUI_LDFLAGS) -lqtx \ - $(STDLIB) \ +libDlgRef_la_LDFLAGS = \ + $(STDLIB) \ $(QT_MT_LIBS) diff --git a/src/DlgRef/UIFiles/DlgRef_1List1Spin1Btn_QTD.ui b/src/DlgRef/UIFiles/DlgRef_1List1Spin1Btn_QTD.ui deleted file mode 100644 index 6366a74a7..000000000 --- a/src/DlgRef/UIFiles/DlgRef_1List1Spin1Btn_QTD.ui +++ /dev/null @@ -1,93 +0,0 @@ - -DlgRef_1List1Spin1Btn_QTD - - - DlgRef_1List1Spin1Btn_QTD - - - - 0 - 0 - 204 - 148 - - - - DlgRef_3Sel4Spin2Check_QTD - - - - unnamed - - - 11 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Spacer1 - - - Vertical - - - Expanding - - - - 0 - 23 - - - - - - ListView1 - - - - - TextLabel1 - - - TL1 - - - - - SpinBox1 - - - - - PushButton1 - - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_1Sel1Check1List_QTD.ui b/src/DlgRef/UIFiles/DlgRef_1Sel1Check1List_QTD.ui deleted file mode 100644 index 677fe88ff..000000000 --- a/src/DlgRef/UIFiles/DlgRef_1Sel1Check1List_QTD.ui +++ /dev/null @@ -1,157 +0,0 @@ - -DlgRef_1Sel1Check1List_QTD - - - DlgRef_1Sel1Check1List_QTD - - - - 0 - 0 - 129 - 104 - - - - DlgRef_1Sel1Check1List_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - Spacer5 - - - Vertical - - - Expanding - - - - 0 - 166 - - - - - - CheckButton1 - - - - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - ComboBox1 - - - - 7 - 0 - 0 - 0 - - - - - - LineEdit1 - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_1Sel1Check_QTD.ui b/src/DlgRef/UIFiles/DlgRef_1Sel1Check_QTD.ui deleted file mode 100644 index f86081355..000000000 --- a/src/DlgRef/UIFiles/DlgRef_1Sel1Check_QTD.ui +++ /dev/null @@ -1,133 +0,0 @@ - -DlgRef_1Sel1Check_QTD - - - DlgRef_1Sel1Check_QTD - - - - 0 - 0 - 382 - 219 - - - - DlgRef_1Sel1Check_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout3 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - CheckButton1 - - - - - - - - Spacer5 - - - Vertical - - - Expanding - - - - 0 - 16 - - - - - - LineEdit1 - - - - - - - - - - PushButton1 - LineEdit1 - CheckButton1 - - - diff --git a/src/DlgRef/UIFiles/DlgRef_1Sel1Spin1Check_QTD.ui b/src/DlgRef/UIFiles/DlgRef_1Sel1Spin1Check_QTD.ui deleted file mode 100644 index c90e9c67e..000000000 --- a/src/DlgRef/UIFiles/DlgRef_1Sel1Spin1Check_QTD.ui +++ /dev/null @@ -1,179 +0,0 @@ - -DlgRef_1Sel1Spin1Check_QTD - - - DlgRef_1Sel1Spin1Check_QTD - - - - 0 - 0 - 163 - 109 - - - - DlgRef_1Sel1Spin1Check_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout8 - - - - unnamed - - - 0 - - - 6 - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - LineEdit1 - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - CheckButton1 - - - - - - - - Spacer5 - - - Vertical - - - Expanding - - - - 0 - 16 - - - - - - - - - - - PushButton1 - LineEdit1 - SpinBox1 - CheckButton1 - - - diff --git a/src/DlgRef/UIFiles/DlgRef_1Sel1Spin_QTD.ui b/src/DlgRef/UIFiles/DlgRef_1Sel1Spin_QTD.ui deleted file mode 100644 index e3551d166..000000000 --- a/src/DlgRef/UIFiles/DlgRef_1Sel1Spin_QTD.ui +++ /dev/null @@ -1,165 +0,0 @@ - -DlgRef_1Sel1Spin_QTD - - - DlgRef_1Sel1Spin_QTD - - - - 0 - 0 - 129 - 87 - - - - DlgRef_1Sel1Spin_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - LineEdit1 - - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - - - Spacer7 - - - Vertical - - - Expanding - - - - 0 - 16 - - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_1Sel2Spin_QTD.ui b/src/DlgRef/UIFiles/DlgRef_1Sel2Spin_QTD.ui deleted file mode 100644 index 641264bb6..000000000 --- a/src/DlgRef/UIFiles/DlgRef_1Sel2Spin_QTD.ui +++ /dev/null @@ -1,194 +0,0 @@ - -DlgRef_1Sel2Spin_QTD - - - DlgRef_1Sel2Spin_QTD - - - - 0 - 0 - 129 - 115 - - - - DlgRef_1Sel2Spin_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - - - LineEdit1 - - - - - Spacer7 - - - Vertical - - - Expanding - - - - 0 - 30 - - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_1Sel3Check_QTD.ui b/src/DlgRef/UIFiles/DlgRef_1Sel3Check_QTD.ui deleted file mode 100644 index c2e482a23..000000000 --- a/src/DlgRef/UIFiles/DlgRef_1Sel3Check_QTD.ui +++ /dev/null @@ -1,151 +0,0 @@ - -DlgRef_1Sel3Check_QTD - - - DlgRef_1Sel3Check_QTD - - - - 0 - 0 - 163 - 116 - - - - DlgRef_1Sel3Check_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout6 - - - - unnamed - - - 0 - - - 6 - - - - Spacer5 - - - Vertical - - - Expanding - - - - 0 - 16 - - - - - - LineEdit1 - - - - - CheckButton2 - - - - - - - - CheckButton1 - - - - - - - - CheckButton3 - - - - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - - - - - - PushButton1 - LineEdit1 - CheckButton1 - CheckButton2 - CheckButton3 - - - diff --git a/src/DlgRef/UIFiles/DlgRef_1Sel3Spin_QTD.ui b/src/DlgRef/UIFiles/DlgRef_1Sel3Spin_QTD.ui deleted file mode 100644 index de8d35e33..000000000 --- a/src/DlgRef/UIFiles/DlgRef_1Sel3Spin_QTD.ui +++ /dev/null @@ -1,223 +0,0 @@ - -DlgRef_1Sel3Spin_QTD - - - DlgRef_1Sel3Spin_QTD - - - - 0 - 0 - 129 - 143 - - - - DlgRef_1Sel3Spin_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - LineEdit1 - - - - - Spacer6 - - - Vertical - - - Expanding - - - - 0 - 150 - - - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - SpinBox3 - - - - 7 - 0 - 0 - 0 - - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_1Sel4Spin_QTD.ui b/src/DlgRef/UIFiles/DlgRef_1Sel4Spin_QTD.ui deleted file mode 100644 index 49a0cd1c2..000000000 --- a/src/DlgRef/UIFiles/DlgRef_1Sel4Spin_QTD.ui +++ /dev/null @@ -1,292 +0,0 @@ - -DlgRef_1Sel4Spin_QTD - - - DlgRef_1Sel4Spin_QTD - - - - 0 - 0 - 284 - 119 - - - - DlgRef_1Sel4Spin_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - Layout3 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel5 - - - - 0 - 0 - 0 - 0 - - - - TL5 - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - SpinBox3 - - - - 7 - 0 - 0 - 0 - - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - - - Spacer6 - - - Vertical - - - Expanding - - - - 0 - 16 - - - - - - Layout4 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel6 - - - - 0 - 0 - 0 - 0 - - - - TL6 - - - - - SpinBox4 - - - - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - LineEdit1 - - - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_1Sel5Spin1Check_QTD.ui b/src/DlgRef/UIFiles/DlgRef_1Sel5Spin1Check_QTD.ui deleted file mode 100644 index 155cbeca0..000000000 --- a/src/DlgRef/UIFiles/DlgRef_1Sel5Spin1Check_QTD.ui +++ /dev/null @@ -1,290 +0,0 @@ - -DlgRef_1Sel5Spin1Check_QTD - - - DlgRef_1Sel5Spin1Check_QTD - - - - 0 - 0 - 162 - 143 - - - - DlgRef_1Sel5Spin1Check_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - SpinBox3 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel5 - - - - 0 - 0 - 0 - 0 - - - - TL5 - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - SpinBox4 - - - - 7 - 0 - 0 - 0 - - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel6 - - - - 0 - 0 - 0 - 0 - - - - TL6 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - SpinBox5 - - - - 7 - 0 - 0 - 0 - - - - - - CheckBox1 - - - - - - - - - - Spacer6 - - - Vertical - - - Expanding - - - - 0 - 120 - - - - - - LineEdit1 - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_1Sel5Spin_QTD.ui b/src/DlgRef/UIFiles/DlgRef_1Sel5Spin_QTD.ui deleted file mode 100644 index c1bca88db..000000000 --- a/src/DlgRef/UIFiles/DlgRef_1Sel5Spin_QTD.ui +++ /dev/null @@ -1,281 +0,0 @@ - -DlgRef_1Sel5Spin_QTD - - - DlgRef_1Sel5Spin_QTD - - - - 0 - 0 - 162 - 143 - - - - DlgRef_1Sel5Spin_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - SpinBox3 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel5 - - - - 0 - 0 - 0 - 0 - - - - TL5 - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - SpinBox4 - - - - 7 - 0 - 0 - 0 - - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel6 - - - - 0 - 0 - 0 - 0 - - - - TL6 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - SpinBox5 - - - - 7 - 0 - 0 - 0 - - - - - - - - Spacer6 - - - Vertical - - - Expanding - - - - 0 - 120 - - - - - - LineEdit1 - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_1Sel_QTD.ui b/src/DlgRef/UIFiles/DlgRef_1Sel_QTD.ui deleted file mode 100644 index 3816fd110..000000000 --- a/src/DlgRef/UIFiles/DlgRef_1Sel_QTD.ui +++ /dev/null @@ -1,128 +0,0 @@ - -DlgRef_1Sel_QTD - - - DlgRef_1Sel_QTD - - - - 0 - 0 - 129 - 57 - - - - DlgRef_1Sel_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - 7 - 7 - 0 - 0 - - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - Spacer8 - - - Vertical - - - Expanding - - - - 0 - 16 - - - - - - LineEdit1 - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_1Spin_QTD.ui b/src/DlgRef/UIFiles/DlgRef_1Spin_QTD.ui deleted file mode 100644 index ddeca8757..000000000 --- a/src/DlgRef/UIFiles/DlgRef_1Spin_QTD.ui +++ /dev/null @@ -1,112 +0,0 @@ - -DlgRef_1Spin_QTD - - - DlgRef_1Spin_QTD - - - - 0 - 0 - 124 - 55 - - - - DlgRef_1Spin_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - Spacer1 - - - Vertical - - - Expanding - - - - 0 - 16 - - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_2Sel1Spin2Check_QTD.ui b/src/DlgRef/UIFiles/DlgRef_2Sel1Spin2Check_QTD.ui deleted file mode 100644 index a2e4e0ace..000000000 --- a/src/DlgRef/UIFiles/DlgRef_2Sel1Spin2Check_QTD.ui +++ /dev/null @@ -1,211 +0,0 @@ - -DlgRef_2Sel1Spin2Check_QTD - - - DlgRef_2Sel1Spin2Check_QTD - - - - 0 - 0 - 256 - 139 - - - - DlgRef_2Sel1Spin2Check_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - Spacer5 - - - Vertical - - - Expanding - - - - 0 - 316 - - - - - - CheckButton2 - - - - - - - - LineEdit2 - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - - - - LineEdit1 - - - - - CheckButton1 - - - - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - - - - - - PushButton1 - LineEdit1 - PushButton2 - LineEdit2 - SpinBox1 - CheckButton2 - CheckButton1 - - - diff --git a/src/DlgRef/UIFiles/DlgRef_2Sel1Spin_QTD.ui b/src/DlgRef/UIFiles/DlgRef_2Sel1Spin_QTD.ui deleted file mode 100644 index df952819a..000000000 --- a/src/DlgRef/UIFiles/DlgRef_2Sel1Spin_QTD.ui +++ /dev/null @@ -1,215 +0,0 @@ - -DlgRef_2Sel1Spin_QTD - - - DlgRef_2Sel1Spin_QTD - - - - 0 - 0 - 163 - 122 - - - - DlgRef_2Sel1Spin_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - LineEdit1 - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - LineEdit2 - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - NoFrame - - - Plain - - - TL2 - - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - - - Spacer5 - - - Vertical - - - Expanding - - - - 0 - 16 - - - - - - - - - - - PushButton1 - LineEdit1 - PushButton2 - LineEdit2 - SpinBox1 - - - diff --git a/src/DlgRef/UIFiles/DlgRef_2Sel2Spin1Check_QTD.ui b/src/DlgRef/UIFiles/DlgRef_2Sel2Spin1Check_QTD.ui deleted file mode 100644 index 1a97c8724..000000000 --- a/src/DlgRef/UIFiles/DlgRef_2Sel2Spin1Check_QTD.ui +++ /dev/null @@ -1,248 +0,0 @@ - -DlgRef_2Sel2Spin1Check_QTD - - - DlgRef_2Sel2Spin1Check_QTD - - - - 0 - 0 - 163 - 170 - - - - DlgRef_2Sel2Spin1Check_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - - - LineEdit1 - - - - - Spacer1 - - - Vertical - - - Expanding - - - - 0 - 16 - - - - - - CheckButton1 - - - - - - - - LineEdit2 - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - - - - - - PushButton1 - LineEdit1 - PushButton2 - LineEdit2 - SpinBox1 - SpinBox2 - CheckButton1 - - - diff --git a/src/DlgRef/UIFiles/DlgRef_2Sel2Spin_QTD.ui b/src/DlgRef/UIFiles/DlgRef_2Sel2Spin_QTD.ui deleted file mode 100644 index b935dc89a..000000000 --- a/src/DlgRef/UIFiles/DlgRef_2Sel2Spin_QTD.ui +++ /dev/null @@ -1,231 +0,0 @@ - -DlgRef_2Sel2Spin_QTD - - - DlgRef_2Sel2Spin_QTD - - - - 0 - 0 - 129 - 145 - - - - DlgRef_2Sel2Spin_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - LineEdit1 - - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - Spacer5 - - - Vertical - - - Expanding - - - - 0 - 20 - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - LineEdit2 - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_2Sel3Spin2Rb_QTD.ui b/src/DlgRef/UIFiles/DlgRef_2Sel3Spin2Rb_QTD.ui deleted file mode 100644 index ca4821cc0..000000000 --- a/src/DlgRef/UIFiles/DlgRef_2Sel3Spin2Rb_QTD.ui +++ /dev/null @@ -1,279 +0,0 @@ - -DlgRef_2Sel3Spin2Rb_QTD - - - DlgRef_2Sel3Spin2Rb_QTD - - - - 0 - 0 - 439 - 340 - - - - DlgRef_2Sel3Spin2Rb_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - LineEdit1 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel5 - - - - 0 - 0 - 0 - 0 - - - - TL5 - - - - - RadioButton2 - - - - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - RadioButton1 - - - - - - - - SpinBox3 - - - - 7 - 0 - 0 - 0 - - - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - - - - Spacer5 - - - Vertical - - - Expanding - - - - 0 - 207 - - - - - - LineEdit2 - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - - - - - - RadioButton_Clicked() - - - diff --git a/src/DlgRef/UIFiles/DlgRef_2Sel3Spin_QTD.ui b/src/DlgRef/UIFiles/DlgRef_2Sel3Spin_QTD.ui deleted file mode 100644 index e51bd758a..000000000 --- a/src/DlgRef/UIFiles/DlgRef_2Sel3Spin_QTD.ui +++ /dev/null @@ -1,260 +0,0 @@ - -DlgRef_2Sel3Spin_QTD - - - DlgRef_2Sel3Spin_QTD - - - - 0 - 0 - 129 - 173 - - - - DlgRef_2Sel3Spin_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - LineEdit1 - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - TextLabel5 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - SpinBox3 - - - - 7 - 0 - 0 - 0 - - - - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - Spacer5 - - - Vertical - - - Expanding - - - - 0 - 20 - - - - - - LineEdit2 - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_2Sel4Spin1Check_QTD.ui b/src/DlgRef/UIFiles/DlgRef_2Sel4Spin1Check_QTD.ui deleted file mode 100644 index f148e2c89..000000000 --- a/src/DlgRef/UIFiles/DlgRef_2Sel4Spin1Check_QTD.ui +++ /dev/null @@ -1,324 +0,0 @@ - -DlgRef_2Sel4Spin1Check_QTD - - - DlgRef_2Sel4Spin1Check_QTD - - - - 0 - 0 - 262 - 230 - - - - DlgRef_2Sel4Spin1Check_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout5 - - - - unnamed - - - 0 - - - 6 - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - CheckButton1 - - - - - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - - - LineEdit2 - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - LineEdit1 - - - - - Spacer1 - - - Vertical - - - Expanding - - - - 0 - 16 - - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - Layout3 - - - - unnamed - - - 0 - - - 6 - - - - SpinBox4 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel5 - - - - 0 - 0 - 0 - 0 - - - - TL5 - - - - - SpinBox3 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel6 - - - - 0 - 0 - 0 - 0 - - - - TL6 - - - - - - - - - - - - PushButton1 - LineEdit1 - PushButton2 - LineEdit2 - SpinBox1 - SpinBox2 - CheckButton1 - SpinBox3 - SpinBox4 - - - diff --git a/src/DlgRef/UIFiles/DlgRef_2Sel_QTD.ui b/src/DlgRef/UIFiles/DlgRef_2Sel_QTD.ui deleted file mode 100644 index 46e7f5b7e..000000000 --- a/src/DlgRef/UIFiles/DlgRef_2Sel_QTD.ui +++ /dev/null @@ -1,165 +0,0 @@ - -DlgRef_2Sel_QTD - - - DlgRef_2Sel_QTD - - - - 0 - 0 - 129 - 87 - - - - - 5 - 7 - 0 - 0 - - - - DlgRef_2Sel_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - Spacer3 - - - Vertical - - - Expanding - - - - 0 - 16 - - - - - - LineEdit2 - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - LineEdit1 - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_2Spin_QTD.ui b/src/DlgRef/UIFiles/DlgRef_2Spin_QTD.ui deleted file mode 100644 index 3fe8a9fe0..000000000 --- a/src/DlgRef/UIFiles/DlgRef_2Spin_QTD.ui +++ /dev/null @@ -1,141 +0,0 @@ - -DlgRef_2Spin_QTD - - - DlgRef_2Spin_QTD - - - - 0 - 0 - 124 - 83 - - - - DlgRef_2Spin_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - Spacer1 - - - Vertical - - - Expanding - - - - 0 - 16 - - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_3Check_QTD.ui b/src/DlgRef/UIFiles/DlgRef_3Check_QTD.ui deleted file mode 100644 index 9573bb295..000000000 --- a/src/DlgRef/UIFiles/DlgRef_3Check_QTD.ui +++ /dev/null @@ -1,112 +0,0 @@ - -DlgRef_3Check_QTD - - - DlgRef_3Check_QTD - - - - 0 - 0 - 135 - 108 - - - - DlgRef_3Check_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - RadioButton3 - - - RadioButton3 - - - - - RadioButton1 - - - RadioButton1 - - - - - RadioButton2 - - - RadioButton2 - - - - - Spacer1 - - - Vertical - - - Expanding - - - - 0 - 91 - - - - - - - - - - - RadioButton1 - RadioButton2 - RadioButton3 - - - diff --git a/src/DlgRef/UIFiles/DlgRef_3Sel1Check_QTD.ui b/src/DlgRef/UIFiles/DlgRef_3Sel1Check_QTD.ui deleted file mode 100644 index b14325d36..000000000 --- a/src/DlgRef/UIFiles/DlgRef_3Sel1Check_QTD.ui +++ /dev/null @@ -1,210 +0,0 @@ - -DlgRef_3Sel1Check_QTD - - - DlgRef_3Sel1Check_QTD - - - - 0 - 0 - 403 - 441 - - - - - 5 - 5 - 0 - 0 - - - - DlgRef_3Sel3Spin1Check_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - 5 - 5 - 0 - 0 - - - - - - - - unnamed - - - 11 - - - 6 - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - LineEdit1 - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - - - - LineEdit2 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - PushButton3 - - - - 0 - 0 - 0 - 0 - - - - - - - - - LineEdit3 - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - Spacer3 - - - Vertical - - - Expanding - - - - 16 - 721 - - - - - - CheckButton1 - - - CheckButton1 - - - - - - - - PushButton1 - LineEdit1 - PushButton2 - LineEdit2 - PushButton3 - LineEdit3 - - - diff --git a/src/DlgRef/UIFiles/DlgRef_3Sel3Spin1Check_QTD.ui b/src/DlgRef/UIFiles/DlgRef_3Sel3Spin1Check_QTD.ui deleted file mode 100644 index c48cc30c3..000000000 --- a/src/DlgRef/UIFiles/DlgRef_3Sel3Spin1Check_QTD.ui +++ /dev/null @@ -1,317 +0,0 @@ - -DlgRef_3Sel3Spin1Check_QTD - - - DlgRef_3Sel3Spin1Check_QTD - - - - 0 - 0 - 380 - 229 - - - - - 5 - 5 - 0 - 0 - - - - DlgRef_3Sel3Spin1Check_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - 5 - 5 - 0 - 0 - - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - SpinBox_2 - - - - 7 - 0 - 0 - 0 - - - - - - LineEdit3 - - - - - SpinBox_3 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - CheckBox1 - - - - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - LineEdit2 - - - - - PushButton3 - - - - 0 - 0 - 0 - 0 - - - - - - - - - TextLabel6 - - - - 0 - 0 - 0 - 0 - - - - TL6 - - - - - SpinBox_1 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel5 - - - - 0 - 0 - 0 - 0 - - - - TL5 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - LineEdit1 - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - - - - Spacer3 - - - Vertical - - - Expanding - - - - 0 - 250 - - - - - - - - - - - PushButton1 - LineEdit1 - PushButton2 - LineEdit2 - PushButton3 - LineEdit3 - SpinBox_1 - SpinBox_2 - SpinBox_3 - CheckBox1 - - - diff --git a/src/DlgRef/UIFiles/DlgRef_3Sel4Spin2Check_QTD.ui b/src/DlgRef/UIFiles/DlgRef_3Sel4Spin2Check_QTD.ui deleted file mode 100644 index 441a99a72..000000000 --- a/src/DlgRef/UIFiles/DlgRef_3Sel4Spin2Check_QTD.ui +++ /dev/null @@ -1,372 +0,0 @@ - -DlgRef_3Sel4Spin2Check_QTD - - - DlgRef_3Sel4Spin2Check_QTD - - - - 0 - 0 - 269 - 281 - - - - DlgRef_3Sel4Spin2Check_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - CheckButton2 - - - - - - - - LineEdit1 - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - - - - LineEdit3 - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - Layout3 - - - - unnamed - - - 0 - - - 6 - - - - SpinBox4 - - - - 7 - 0 - 0 - 0 - - - - - - SpinBox3 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel7 - - - - 0 - 0 - 0 - 0 - - - - TL7 - - - - - TextLabel6 - - - - 0 - 0 - 0 - 0 - - - - TL6 - - - - - - - CheckButton1 - - - - - - - - PushButton3 - - - - 0 - 0 - 0 - 0 - - - - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - Spacer1 - - - Vertical - - - Expanding - - - - 0 - 16 - - - - - - LineEdit2 - - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel5 - - - - 0 - 0 - 0 - 0 - - - - TL5 - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - - - - - - PushButton1 - LineEdit1 - PushButton2 - LineEdit2 - PushButton3 - LineEdit3 - SpinBox1 - SpinBox2 - CheckButton1 - SpinBox3 - SpinBox4 - CheckButton2 - - - diff --git a/src/DlgRef/UIFiles/DlgRef_3Sel_QTD.ui b/src/DlgRef/UIFiles/DlgRef_3Sel_QTD.ui deleted file mode 100644 index 0fe998827..000000000 --- a/src/DlgRef/UIFiles/DlgRef_3Sel_QTD.ui +++ /dev/null @@ -1,202 +0,0 @@ - -DlgRef_3Sel_QTD - - - DlgRef_3Sel_QTD - - - - 0 - 0 - 129 - 117 - - - - - 5 - 7 - 0 - 0 - - - - DlgRef_3Sel_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - LineEdit3 - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - LineEdit2 - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - LineEdit1 - - - - - Spacer3 - - - Vertical - - - Expanding - - - - 0 - 159 - - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - PushButton3 - - - - 0 - 0 - 0 - 0 - - - - - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_3Spin1Check_QTD.ui b/src/DlgRef/UIFiles/DlgRef_3Spin1Check_QTD.ui deleted file mode 100644 index fd3317f2d..000000000 --- a/src/DlgRef/UIFiles/DlgRef_3Spin1Check_QTD.ui +++ /dev/null @@ -1,178 +0,0 @@ - -DlgRef_3Spin1Check_QTD - - - DlgRef_3Spin1Check_QTD - - - - 0 - 0 - 124 - 130 - - - - DlgRef_3Spin1Check_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - CheckBox1 - - - - - - - - Spacer1 - - - Vertical - - - Expanding - - - - 0 - 20 - - - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - SpinBox3 - - - - 7 - 0 - 0 - 0 - - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_3Spin_QTD.ui b/src/DlgRef/UIFiles/DlgRef_3Spin_QTD.ui deleted file mode 100644 index 96f6b4dfb..000000000 --- a/src/DlgRef/UIFiles/DlgRef_3Spin_QTD.ui +++ /dev/null @@ -1,170 +0,0 @@ - -DlgRef_3Spin_QTD - - - DlgRef_3Spin_QTD - - - - 0 - 0 - 124 - 111 - - - - DlgRef_3Spin_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - Spacer1 - - - Vertical - - - Expanding - - - - 0 - 16 - - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - SpinBox3 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_4Sel1List_QTD.ui b/src/DlgRef/UIFiles/DlgRef_4Sel1List_QTD.ui deleted file mode 100644 index 831768d79..000000000 --- a/src/DlgRef/UIFiles/DlgRef_4Sel1List_QTD.ui +++ /dev/null @@ -1,260 +0,0 @@ - -DlgRef_4Sel1List_QTD - - - DlgRef_4Sel1List_QTD - - - - 0 - 0 - 129 - 175 - - - - DlgRef_4Sel1List_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - LineEdit2 - - - - - PushButton4 - - - - 0 - 0 - 0 - 0 - - - - - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - LineEdit4 - - - - - PushButton3 - - - - 0 - 0 - 0 - 0 - - - - - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - Spacer5 - - - Vertical - - - Expanding - - - - 0 - 80 - - - - - - LineEdit1 - - - - - TextLabel5 - - - - 0 - 0 - 0 - 0 - - - - TL5 - - - - - LineEdit3 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - ComboBox1 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_4Sel1Spin2Check_QTD.ui b/src/DlgRef/UIFiles/DlgRef_4Sel1Spin2Check_QTD.ui deleted file mode 100644 index 2d23f60c5..000000000 --- a/src/DlgRef/UIFiles/DlgRef_4Sel1Spin2Check_QTD.ui +++ /dev/null @@ -1,264 +0,0 @@ - -DlgRef_4Sel1Spin2Check_QTD - - - DlgRef_4Sel1Spin2Check_QTD - - - - 0 - 0 - 261 - 198 - - - - DlgRef_4Sel1Spin2Check_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 6 - - - - CheckButton2 - - - - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - - - - LineEdit5 - - - - - TextLabel5 - - - - 0 - 0 - 0 - 0 - - - - TL5 - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - LineEdit1 - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - CheckButton1 - - - - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - PushButton5 - - - - 0 - 0 - 0 - 0 - - - - - - - - - PushButton4 - - - - 0 - 0 - 0 - 0 - - - - - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - LineEdit4 - - - - - LineEdit2 - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - - - - - - PushButton1 - LineEdit1 - PushButton2 - LineEdit2 - SpinBox1 - CheckButton2 - - - diff --git a/src/DlgRef/UIFiles/DlgRef_6Sel_QTD.ui b/src/DlgRef/UIFiles/DlgRef_6Sel_QTD.ui deleted file mode 100644 index c5ff40649..000000000 --- a/src/DlgRef/UIFiles/DlgRef_6Sel_QTD.ui +++ /dev/null @@ -1,296 +0,0 @@ - -DlgRef_6Sel_QTD - - - DlgRef_6Sel_QTD - - - - 0 - 0 - 235 - 196 - - - - - 5 - 7 - 0 - 0 - - - - DlgRef_6Sel_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - TextLabel5 - - - - 0 - 0 - 0 - 0 - - - - TL5 - - - - - TextLabel6 - - - - 0 - 0 - 0 - 0 - - - - TL6 - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - - - - PushButton3 - - - - 0 - 0 - 0 - 0 - - - - - - - - - PushButton4 - - - - 0 - 0 - 0 - 0 - - - - - - - - - PushButton5 - - - - 0 - 0 - 0 - 0 - - - - - - - - - PushButton6 - - - - 0 - 0 - 0 - 0 - - - - - - - - - LineEdit1 - - - - - LineEdit2 - - - - - LineEdit3 - - - - - LineEdit4 - - - - - LineEdit5 - - - - - LineEdit6 - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/DlgRef_Skeleton_QTD.ui b/src/DlgRef/UIFiles/DlgRef_Skeleton_QTD.ui deleted file mode 100644 index 8979116e8..000000000 --- a/src/DlgRef/UIFiles/DlgRef_Skeleton_QTD.ui +++ /dev/null @@ -1,234 +0,0 @@ - -DlgRef_Skeleton_QTD - - - DlgRef_Skeleton_QTD - - - - 0 - 0 - 307 - 378 - - - - - 5 - 7 - 0 - 0 - - - - true - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - GroupButtons - - - - 7 - 0 - 0 - 0 - - - - - unnamed - - - 11 - - - 6 - - - - Layout3 - - - - unnamed - - - 0 - - - 6 - - - - buttonOk - - - - - buttonApply - - - - - Spacer1 - - - Horizontal - - - Expanding - - - - 91 - 0 - - - - - - buttonCancel - - - - - buttonHelp - - - - - - - - - GroupConstructors - - - - 5 - 0 - 0 - 0 - - - - - unnamed - - - 11 - - - 6 - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - RadioButton1 - - - - - RadioButton2 - - - - - RadioButton3 - - - - - RadioButton4 - - - - - - - - - GroupBoxName - - - - unnamed - - - 11 - - - 6 - - - - Layout66 - - - - unnamed - - - 0 - - - 6 - - - - ResultName - - - - - NameLabel - - - - - - - - - - - - diff --git a/src/DlgRef/UIFiles/ui_to_cxx b/src/DlgRef/UIFiles/ui_to_cxx deleted file mode 100755 index 60e5b024d..000000000 --- a/src/DlgRef/UIFiles/ui_to_cxx +++ /dev/null @@ -1,118 +0,0 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -#// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -#!/bin/sh - -#uic -o DlgRef_Skeleton_QTD.h DlgRef_Skeleton_QTD.ui -#uic -o DlgRef_Skeleton_QTD.cxx -impl DlgRef_Skeleton_QTD.h DlgRef_Skeleton_QTD.ui - -#uic -o DlgRef_1Sel_QTD.h DlgRef_1Sel_QTD.ui -#uic -o DlgRef_1Sel_QTD.cxx -impl DlgRef_1Sel_QTD.h DlgRef_1Sel_QTD.ui - -#uic -o DlgRef_1Sel1Spin_QTD.h DlgRef_1Sel1Spin_QTD.ui -#uic -o DlgRef_1Sel1Spin_QTD.cxx -impl DlgRef_1Sel1Spin_QTD.h DlgRef_1Sel1Spin_QTD.ui - -#uic -o DlgRef_1Sel1Spin1Check_QTD.h DlgRef_1Sel1Spin1Check_QTD.ui -#uic -o DlgRef_1Sel1Spin1Check_QTD.cxx -impl DlgRef_1Sel1Spin1Check_QTD.h DlgRef_1Sel1Spin1Check_QTD.ui - -#uic -o DlgRef_1Sel2Spin_QTD.h DlgRef_1Sel2Spin_QTD.ui -#uic -o DlgRef_1Sel2Spin_QTD.cxx -impl DlgRef_1Sel2Spin_QTD.h DlgRef_1Sel2Spin_QTD.ui - -#uic -o DlgRef_1Sel3Spin_QTD.h DlgRef_1Sel3Spin_QTD.ui -#uic -o DlgRef_1Sel3Spin_QTD.cxx -impl DlgRef_1Sel3Spin_QTD.h DlgRef_1Sel3Spin_QTD.ui - -#uic -o DlgRef_1Sel4Spin_QTD.h DlgRef_1Sel4Spin_QTD.ui -#uic -o DlgRef_1Sel4Spin_QTD.cxx -impl DlgRef_1Sel4Spin_QTD.h DlgRef_1Sel4Spin_QTD.ui - -#uic -o DlgRef_1Sel5Spin_QTD.h DlgRef_1Sel5Spin_QTD.ui -#uic -o DlgRef_1Sel5Spin_QTD.cxx -impl DlgRef_1Sel5Spin_QTD.h DlgRef_1Sel5Spin_QTD.ui - -#uic -o DlgRef_1Sel5Spin1Check_QTD.h DlgRef_1Sel5Spin1Check_QTD.ui -#uic -o DlgRef_1Sel5Spin1Check_QTD.cxx -impl DlgRef_1Sel5Spin1Check_QTD.h DlgRef_1Sel5Spin1Check_QTD.ui - -#uic -o DlgRef_1Sel1Check_QTD.h DlgRef_1Sel1Check_QTD.ui -#uic -o DlgRef_1Sel1Check_QTD.cxx -impl DlgRef_1Sel1Check_QTD.h DlgRef_1Sel1Check_QTD.ui - -#uic -o DlgRef_1Sel3Check_QTD.h DlgRef_1Sel3Check_QTD.ui -#uic -o DlgRef_1Sel3Check_QTD.cxx -impl DlgRef_1Sel3Check_QTD.h DlgRef_1Sel3Check_QTD.ui - -#uic -o DlgRef_1Sel1Check1List_QTD.h DlgRef_1Sel1Check1List_QTD.ui -#uic -o DlgRef_1Sel1Check1List_QTD.cxx -impl DlgRef_1Sel1Check1List_QTD.h DlgRef_1Sel1Check1List_QTD.ui - -#uic -o DlgRef_2Sel_QTD.h DlgRef_2Sel_QTD.ui -#uic -o DlgRef_2Sel_QTD.cxx -impl DlgRef_2Sel_QTD.h DlgRef_2Sel_QTD.ui - -#uic -o DlgRef_2Sel1Spin_QTD.h DlgRef_2Sel1Spin_QTD.ui -#uic -o DlgRef_2Sel1Spin_QTD.cxx -impl DlgRef_2Sel1Spin_QTD.h DlgRef_2Sel1Spin_QTD.ui - -#uic -o DlgRef_2Sel1Spin2Check_QTD.h DlgRef_2Sel1Spin2Check_QTD.ui -#uic -o DlgRef_2Sel1Spin2Check_QTD.cxx -impl DlgRef_2Sel1Spin2Check_QTD.h DlgRef_2Sel1Spin2Check_QTD.ui - -#uic -o DlgRef_2Sel2Spin_QTD.h DlgRef_2Sel2Spin_QTD.ui -#uic -o DlgRef_2Sel2Spin_QTD.cxx -impl DlgRef_2Sel2Spin_QTD.h DlgRef_2Sel2Spin_QTD.ui - -#uic -o DlgRef_2Sel2Spin1Check_QTD.h DlgRef_2Sel2Spin1Check_QTD.ui -#uic -o DlgRef_2Sel2Spin1Check_QTD.cxx -impl DlgRef_2Sel2Spin1Check_QTD.h DlgRef_2Sel2Spin1Check_QTD.ui - -#uic -o DlgRef_2Sel3Spin_QTD.h DlgRef_2Sel3Spin_QTD.ui -#uic -o DlgRef_2Sel3Spin_QTD.cxx -impl DlgRef_2Sel3Spin_QTD.h DlgRef_2Sel3Spin_QTD.ui - -#uic -o DlgRef_2Sel4Spin1Check_QTD.h DlgRef_2Sel4Spin1Check_QTD.ui -#uic -o DlgRef_2Sel4Spin1Check_QTD.cxx -impl DlgRef_2Sel4Spin1Check_QTD.h DlgRef_2Sel4Spin1Check_QTD.ui - -#uic -o DlgRef_4Sel1List_QTD.h DlgRef_4Sel1List_QTD.ui -#uic -o DlgRef_4Sel1List_QTD.cxx -impl DlgRef_4Sel1List_QTD.h DlgRef_4Sel1List_QTD.ui - -#uic -o DlgRef_3Sel_QTD.h DlgRef_3Sel_QTD.ui -#uic -o DlgRef_3Sel_QTD.cxx -impl DlgRef_3Sel_QTD.h DlgRef_3Sel_QTD.ui - -#uic -o DlgRef_3Sel4Spin2Check_QTD.h DlgRef_3Sel4Spin2Check_QTD.ui -#uic -o DlgRef_3Sel4Spin2Check_QTD.cxx -impl DlgRef_3Sel4Spin2Check_QTD.h DlgRef_3Sel4Spin2Check_QTD.ui - -#uic -o DlgRef_1Spin_QTD.h DlgRef_1Spin_QTD.ui -#uic -o DlgRef_1Spin_QTD.cxx -impl DlgRef_1Spin_QTD.h DlgRef_1Spin_QTD.ui - -#uic -o DlgRef_2Spin_QTD.h DlgRef_2Spin_QTD.ui -#uic -o DlgRef_2Spin_QTD.cxx -impl DlgRef_2Spin_QTD.h DlgRef_2Spin_QTD.ui - -#uic -o DlgRef_3Spin_QTD.h DlgRef_3Spin_QTD.ui -#uic -o DlgRef_3Spin_QTD.cxx -impl DlgRef_3Spin_QTD.h DlgRef_3Spin_QTD.ui - -#uic -o DlgRef_3Spin1Check_QTD.h DlgRef_3Spin1Check_QTD.ui -#uic -o DlgRef_3Spin1Check_QTD.cxx -impl DlgRef_3Spin1Check_QTD.h DlgRef_3Spin1Check_QTD.ui - -#uic -o DlgRef_3Sel3Spin1Check_QTD.h DlgRef_3Sel3Spin1Check_QTD.ui -#uic -o DlgRef_3Sel3Spin1Check_QTD.cxx -impl DlgRef_3Sel3Spin1Check_QTD.h DlgRef_3Sel3Spin1Check_QTD.ui - -#uic -o DlgRef_6Sel_QTD.h DlgRef_6Sel_QTD.ui -#uic -o DlgRef_6Sel_QTD.cxx -impl DlgRef_6Sel_QTD.h DlgRef_6Sel_QTD.ui - -#uic -o DlgRef_3Check_QTD.h DlgRef_3Check_QTD.ui -#uic -o DlgRef_3Check_QTD.cxx -impl DlgRef_3Check_QTD.h DlgRef_3Check_QTD.ui - -#uic -o DlgRef_4Sel1Spin2Check_QTD.h DlgRef_4Sel1Spin2Check_QTD.ui -#uic -o DlgRef_4Sel1Spin2Check_QTD.cxx -impl DlgRef_4Sel1Spin2Check_QTD.h DlgRef_4Sel1Spin2Check_QTD.ui - -#uic -o DlgRef_4Sel1Spin2Check_QTD.h DlgRef_4Sel1Spin2Check_QTD.ui -#uic -o DlgRef_4Sel1Spin2Check_QTD.cxx -impl DlgRef_4Sel1Spin2Check_QTD.h DlgRef_4Sel1Spin2Check_QTD.ui - -#uic -o DlgRef_2Sel3Spin2Rb_QTD.h DlgRef_2Sel3Spin2Rb_QTD.ui -#uic -o DlgRef_2Sel3Spin2Rb_QTD.cxx -impl DlgRef_2Sel3Spin2Rb_QTD.h DlgRef_2Sel3Spin2Rb_QTD.ui - -uic -o DlgRef_3Sel1Check_QTD.h DlgRef_3Sel1Check_QTD.ui -uic -o DlgRef_3Sel1Check_QTD.cxx -impl DlgRef_3Sel1Check_QTD.h DlgRef_3Sel1Check_QTD.ui>>>>>>> 1.6.2.3 diff --git a/src/EntityGUI/EntityGUI.cxx b/src/EntityGUI/EntityGUI.cxx index 8bdee4ae6..25e0103f6 100644 --- a/src/EntityGUI/EntityGUI.cxx +++ b/src/EntityGUI/EntityGUI.cxx @@ -1,64 +1,53 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : EntityGUI.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : EntityGUI.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "EntityGUI.h" -#include "GeometryGUI.h" -#include "GEOM_AssemblyBuilder.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SUIT_ViewWindow.h" -#include "OCCViewer_ViewModel.h" -#include "OCCViewer_ViewManager.h" -#include "SalomeApp_Study.h" -#include "SalomeApp_Tools.h" -#include "SalomeApp_Application.h" +#include -#include -#include -#include +#include +#include +#include +#include +#include +#include + +#include #include "EntityGUI_SketcherDlg.h" // Sketcher +#include "EntityGUI_3DSketcherDlg.h" // Sketcher #include "EntityGUI_SubShapeDlg.h" // Method SUBSHAPE -#include "utilities.h" - -using namespace boost; -using namespace std; - //======================================================================= // function : EntityGUI() // purpose : Constructor //======================================================================= EntityGUI::EntityGUI( GeometryGUI* parent ) : GEOMGUI( parent ) { - mySimulationShape1 = new AIS_Shape(TopoDS_Shape()); - mySimulationShape2 = new AIS_Shape(TopoDS_Shape()); + mySimulationShape1 = new AIS_Shape( TopoDS_Shape() ); + mySimulationShape2 = new AIS_Shape( TopoDS_Shape() ); } //======================================================================= @@ -74,7 +63,7 @@ EntityGUI::~EntityGUI() // function : OnGUIEvent() // purpose : //======================================================================= -bool EntityGUI::OnGUIEvent(int theCommandID, SUIT_Desktop* parent) +bool EntityGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) { SalomeApp_Application* app = getGeometryGUI()->getApp(); if ( !app ) return false; @@ -82,22 +71,24 @@ bool EntityGUI::OnGUIEvent(int theCommandID, SUIT_Desktop* parent) getGeometryGUI()->EmitSignalDeactivateDialog(); QDialog* aDlg = NULL; - switch (theCommandID) - { - case 404: // SKETCHER - getGeometryGUI()->ActiveWorkingPlane(); - aDlg = new EntityGUI_SketcherDlg(getGeometryGUI(), parent, ""); - break; - case 407: // EXPLODE : use ic - aDlg = new EntityGUI_SubShapeDlg(getGeometryGUI(), parent, ""); - break; - default: - app->putInfo(tr("GEOM_PRP_COMMAND").arg(theCommandID)); - break; + switch ( theCommandID ) { + case 404: // SKETCHER + getGeometryGUI()->ActiveWorkingPlane(); + aDlg = new EntityGUI_SketcherDlg( getGeometryGUI(), parent ); + break; + case 405: // 3D SKETCHER + aDlg = new EntityGUI_3DSketcherDlg( getGeometryGUI(), parent ); + break; + case 407: // EXPLODE : use ic + aDlg = new EntityGUI_SubShapeDlg( getGeometryGUI(), parent ); + break; + default: + app->putInfo( tr( "GEOM_PRP_COMMAND" ).arg( theCommandID ) ); + break; } if ( aDlg ) aDlg->show(); - + return true; } @@ -106,49 +97,48 @@ bool EntityGUI::OnGUIEvent(int theCommandID, SUIT_Desktop* parent) // function : DisplaySimulationShape() // purpose : Displays 'this->mySimulationShape' a pure graphical shape from a TopoDS_Shape //===================================================================================== -void EntityGUI::DisplaySimulationShape(const TopoDS_Shape& S1, const TopoDS_Shape& S2) +void EntityGUI::DisplaySimulationShape( const TopoDS_Shape& S1, const TopoDS_Shape& S2 ) { SalomeApp_Application* app = getGeometryGUI()->getApp(); if ( !app ) return; SUIT_ViewManager* aVM = app->desktop()->activeWindow()->getViewManager(); - if (aVM->getType() != OCCViewer_Viewer::Type()) + if ( aVM->getType() != OCCViewer_Viewer::Type() ) return; - OCCViewer_Viewer* v3d = ((OCCViewer_ViewManager*)aVM)->getOCCViewer(); + OCCViewer_Viewer* v3d = ( (OCCViewer_ViewManager*)aVM )->getOCCViewer(); Handle(AIS_InteractiveContext) ic = v3d->getAISContext(); try { - if (!S1.IsNull()) { + if ( !S1.IsNull() ) { /* erase any previous */ - ic->Erase(mySimulationShape1, Standard_True, Standard_False); - ic->ClearPrs(mySimulationShape1); + ic->Erase( mySimulationShape1, Standard_True, Standard_False ); + ic->ClearPrs( mySimulationShape1 ); - mySimulationShape1 = new AIS_Shape(TopoDS_Shape()); - mySimulationShape1->Set(S1); - mySimulationShape1->SetColor(Quantity_NOC_RED); + mySimulationShape1 = new AIS_Shape( TopoDS_Shape() ); + mySimulationShape1->Set( S1 ); + mySimulationShape1->SetColor( Quantity_NOC_RED ); - ic->Deactivate(mySimulationShape1); - ic->Display(mySimulationShape1, Standard_False); + ic->Deactivate( mySimulationShape1 ); + ic->Display( mySimulationShape1, Standard_False ); mySimulationShape1->UnsetColor(); } - if (!S2.IsNull()) { - ic->Erase(mySimulationShape2, Standard_True, Standard_False); - ic->ClearPrs(mySimulationShape2); + if ( !S2.IsNull() ) { + ic->Erase( mySimulationShape2, Standard_True, Standard_False ); + ic->ClearPrs( mySimulationShape2 ); - mySimulationShape2 = new AIS_Shape(TopoDS_Shape()); - mySimulationShape2->Set(S2); - mySimulationShape2->SetColor(Quantity_NOC_VIOLET); + mySimulationShape2 = new AIS_Shape( TopoDS_Shape() ); + mySimulationShape2->Set( S2 ); + mySimulationShape2->SetColor( Quantity_NOC_VIOLET ); - ic->Deactivate(mySimulationShape2); - ic->Display(mySimulationShape2, Standard_False); + ic->Deactivate( mySimulationShape2 ); + ic->Display( mySimulationShape2, Standard_False ); mySimulationShape2->UnsetColor(); } ic->UpdateCurrentViewer(); } - catch(Standard_Failure) { - MESSAGE("Exception catched in EntityGUI::DisplaySimulationShape "); + catch( Standard_Failure ) { + MESSAGE( "Exception catched in EntityGUI::DisplaySimulationShape" ); } - return; } //================================================================================== @@ -161,22 +151,25 @@ void EntityGUI::EraseSimulationShape() if ( !app ) return; // get all view windows at the desktop - QPtrList aWndLst = app->desktop()->windows(); + QList aWndLst = app->desktop()->windows(); //get all view windows, which belong to the active study - QPtrList aWndLstAS; + QList aWndLstAS; SUIT_ViewWindow* vw; - for ( vw = aWndLst.first(); vw; vw = aWndLst.next() ) + + QListIterator itWL( aWndLst ); + while ( itWL.hasNext() && ( vw = itWL.next() ) ) if ( vw->getViewManager()->study() == app->activeStudy() ) aWndLstAS.append( vw ); - for ( vw = aWndLstAS.first(); vw; vw = aWndLstAS.next() ) { + QListIterator itWLAS( aWndLstAS ); + while ( itWLAS.hasNext() && ( vw = itWLAS.next() ) ) { if ( vw->getViewManager()->getType() == OCCViewer_Viewer::Type() ) { - OCCViewer_Viewer* v3d = ((OCCViewer_ViewManager*)(vw->getViewManager()))->getOCCViewer(); + OCCViewer_Viewer* v3d = ( (OCCViewer_ViewManager*)( vw->getViewManager() ) )->getOCCViewer(); Handle(AIS_InteractiveContext) ic = v3d->getAISContext(); - ic->Erase(mySimulationShape1, Standard_True, Standard_False); - ic->ClearPrs(mySimulationShape1); - ic->Erase(mySimulationShape2, Standard_True, Standard_False); - ic->ClearPrs(mySimulationShape2); + ic->Erase( mySimulationShape1, Standard_True, Standard_False ); + ic->ClearPrs( mySimulationShape1 ); + ic->Erase( mySimulationShape2, Standard_True, Standard_False ); + ic->ClearPrs( mySimulationShape2 ); ic->UpdateCurrentViewer(); } } @@ -186,7 +179,7 @@ void EntityGUI::EraseSimulationShape() // function : SObjectExist() // purpose : //===================================================================================== -bool EntityGUI::SObjectExist(const _PTR(SObject)& theFatherObject, const char* IOR) +bool EntityGUI::SObjectExist( const _PTR(SObject)& theFatherObject, const char* IOR ) { SalomeApp_Application* app = getGeometryGUI()->getApp(); if ( !app ) return false; @@ -194,20 +187,20 @@ bool EntityGUI::SObjectExist(const _PTR(SObject)& theFatherObject, const char* I if ( !appStudy ) return false; _PTR(Study) aStudy = appStudy->studyDS(); - _PTR(ChildIterator) it ( aStudy->NewChildIterator(theFatherObject) ); + _PTR(ChildIterator) it ( aStudy->NewChildIterator( theFatherObject ) ); _PTR(SObject) RefSO; _PTR(GenericAttribute) anAttr; - for(; it->More();it->Next()) { + for ( ; it->More();it->Next() ) { _PTR(SObject) SO ( it->Value() ); - if(SO->FindAttribute(anAttr, "AttributeIOR")) { + if ( SO->FindAttribute( anAttr, "AttributeIOR" ) ) { _PTR(AttributeIOR) anIOR ( anAttr ); - if(strcmp( anIOR->Value().c_str(), IOR ) == 0) + if ( strcmp( anIOR->Value().c_str(), IOR ) == 0 ) return true; } - if(SO->ReferencedObject(RefSO)) { - if(RefSO->FindAttribute(anAttr, "AttributeIOR")) { + if ( SO->ReferencedObject( RefSO ) ) { + if ( RefSO->FindAttribute( anAttr, "AttributeIOR" ) ) { _PTR(AttributeIOR) anIOR ( anAttr ); - if(strcmp(anIOR->Value().c_str(), IOR) == 0) + if ( strcmp( anIOR->Value().c_str(), IOR ) == 0 ) return true; } } @@ -221,7 +214,9 @@ bool EntityGUI::SObjectExist(const _PTR(SObject)& theFatherObject, const char* I //===================================================================================== extern "C" { -GEOM_ENTITYGUI_EXPORT +#ifdef WIN32 + __declspec( dllexport ) +#endif GEOMGUI* GetLibGUI( GeometryGUI* parent ) { return new EntityGUI( parent ); diff --git a/src/EntityGUI/EntityGUI.h b/src/EntityGUI/EntityGUI.h index a4fd8c001..bc401c68c 100644 --- a/src/EntityGUI/EntityGUI.h +++ b/src/EntityGUI/EntityGUI.h @@ -1,63 +1,61 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : EntityGUI.h +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : EntityGUI.h -// Author : Damien COQUERET -// Module : GEOM - #ifndef ENTITYGUI_H #define ENTITYGUI_H -#include "GEOM_EntityGUI.hxx" +#include -#include "GEOMGUI.h" +#include -#include "SALOMEDSClient.hxx" - -#include #include +class TopoDS_Shape; + //================================================================================= // class : EntityGUI // purpose : //================================================================================= -class GEOM_ENTITYGUI_EXPORT EntityGUI : public GEOMGUI +class EntityGUI : public GEOMGUI { public : - EntityGUI( GeometryGUI* parent ); // hide constructor to avoid direct creation + EntityGUI( GeometryGUI* ); ~EntityGUI(); - bool OnGUIEvent(int theCommandID, SUIT_Desktop* parent); + bool OnGUIEvent( int, SUIT_Desktop* ); - void DisplaySimulationShape(const TopoDS_Shape& S1, const TopoDS_Shape& S2); - void EraseSimulationShape(); + void DisplaySimulationShape( const TopoDS_Shape&, const TopoDS_Shape& ); + void EraseSimulationShape(); // Methods for sub shapes explode - bool SObjectExist(const _PTR(SObject)& theFatherObject, const char* IOR); + bool SObjectExist( const _PTR(SObject)&, const char* ); +public: // AIS shape used only during topo/geom simulations Handle(AIS_Shape) mySimulationShape1; Handle(AIS_Shape) mySimulationShape2; }; -#endif +#endif // ENTITYGUI_H diff --git a/src/EntityGUI/EntityGUI.pro b/src/EntityGUI/EntityGUI.pro new file mode 100644 index 000000000..4c46d5946 --- /dev/null +++ b/src/EntityGUI/EntityGUI.pro @@ -0,0 +1,72 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = EntityGUI +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +QT_INCLUDES = $$(QTDIR)/include $$(QTDIR)/include/QtCore $$(QTDIR)/include/QtGui $$(QTDIR)/include/QtOpenGL $$(QTDIR)/include/QtXml + +VTK_INCLUDES = $$(VTKHOME)/include/vtk + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +PYTHON_INCLUDES = $$(PYTHONHOME)/include/python2.4 + +BOOST_CPPFLAGS = $$(BOOSTDIR)/include + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +GUI_CXXFLAGS = $$(GUI_ROOT_DIR)/include/salome + +CORBA_INCLUDES = $$(OMNIORBDIR)/include $$(OMNIORBDIR)/include/omniORB4 $$(OMNIORBDIR)/include/COS + +QT_MT_LIBS = -L$$(QTDIR)/lib -lQtCore -lQtXml -lQtGui -lQtOpenGL + +CAS_TKTopAlgo = -L$${CASROOT}/Linux/lib -lTKG2d -lTKG3d -lTKGeomBase -lTKBRep -lTKGeomAlgo -lTKTopAlgo + +INCLUDEPATH += $${QT_INCLUDES} $${VTK_INCLUDES} $${CAS_CPPFLAGS} $${PYTHON_INCLUDES} $${BOOST_CPPFLAGS} $${KERNEL_CXXFLAGS} $${GUI_CXXFLAGS} $${CORBA_INCLUDES} ../GEOMGUI ../DlgRef ../GEOMBase ../OBJECT ../GEOMClient ../GEOMImpl ../GEOMFiltersSelection ../SKETCHER $$(GEOM_ROOT_DIR)/idl $$(GEOM_ROOT_DIR)/salome_adm/unix + +LIBS += -L$$(GEOM_ROOT_DIR)/lib -lGEOMFiltersSelection -lGEOMBase -lGEOMSketcher -lGEOM $${QT_MT_LIBS} $${CAS_TKTopAlgo} -lTKernel + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += ENTITYGUI_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS OMNIORB_VERSION=4 __x86__ __linux__ COMP_CORBA_DOUBLE COMP_CORBA_LONG + +HEADERS = GEOM_EntityGUI.hxx + +SOURCES = EntityGUI.cxx +SOURCES += EntityGUI_1Spin.cxx +SOURCES += EntityGUI_2Spin.cxx +SOURCES += EntityGUI_3Spin.cxx +SOURCES += EntityGUI_4Spin.cxx +SOURCES += EntityGUI_SketcherDlg.cxx +SOURCES += EntityGUI_SubShapeDlg.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/EntityGUI/EntityGUI_1Sel_QTD.cxx b/src/EntityGUI/EntityGUI_1Sel_QTD.cxx deleted file mode 100644 index be05efcad..000000000 --- a/src/EntityGUI/EntityGUI_1Sel_QTD.cxx +++ /dev/null @@ -1,122 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'EntityGUI_1Sel_QTD.ui' -** -** Created: Thu Aug 12 19:03:19 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "EntityGUI_1Sel_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a EntityGUI_1Sel_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -EntityGUI_1Sel_QTD::EntityGUI_1Sel_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "EntityGUI_1Sel_QTD" ); - resize( 329, 112 ); - setCaption( trUtf8( "EntityGUI_1Sel_QTD" ) ); - EntityGUI_1Sel_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "EntityGUI_1Sel_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "Values" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout4 = new QGridLayout( 0, 1, 1, 0, 6, "Layout4"); - - Layout3 = new QGridLayout( 0, 1, 1, 0, 6, "Layout3"); - QSpacerItem* spacer = new QSpacerItem( 0, 163, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout3->addItem( spacer, 2, 0 ); - - buttonApply = new QPushButton( GroupBox1, "buttonApply" ); - buttonApply->setText( trUtf8( "Create" ) ); - - Layout3->addWidget( buttonApply, 0, 0 ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - buttonRedo = new QPushButton( GroupBox1, "buttonRedo" ); - buttonRedo->setText( trUtf8( "Redo" ) ); - - Layout2->addWidget( buttonRedo, 0, 1 ); - - buttonUndo = new QPushButton( GroupBox1, "buttonUndo" ); - buttonUndo->setText( trUtf8( "Undo" ) ); - - Layout2->addWidget( buttonUndo, 0, 0 ); - - Layout3->addLayout( Layout2, 1, 0 ); - - Layout4->addLayout( Layout3, 0, 1 ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - QSpacerItem* spacer_2 = new QSpacerItem( 0, 180, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer_2, 1, 2 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - LineEdit1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)3, (QSizePolicy::SizeType)0, 0, 0, LineEdit1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - Layout4->addLayout( Layout1, 0, 0 ); - - GroupBox1Layout->addLayout( Layout4, 0, 0 ); - - EntityGUI_1Sel_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -EntityGUI_1Sel_QTD::~EntityGUI_1Sel_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/EntityGUI/EntityGUI_1Sel_QTD.h b/src/EntityGUI/EntityGUI_1Sel_QTD.h deleted file mode 100644 index 401ddddc7..000000000 --- a/src/EntityGUI/EntityGUI_1Sel_QTD.h +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'EntityGUI_1Sel_QTD.ui' -** -** Created: Fri Jul 30 16:06:00 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef ENTITYGUI_1SEL_QTD_H -#define ENTITYGUI_1SEL_QTD_H - -#include "GEOM_EntityGUI.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; - -class GEOM_ENTITYGUI_EXPORT EntityGUI_1Sel_QTD : public QWidget -{ - Q_OBJECT - -public: - EntityGUI_1Sel_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~EntityGUI_1Sel_QTD(); - - QGroupBox* GroupBox1; - QPushButton* buttonApply; - QPushButton* buttonRedo; - QPushButton* buttonUndo; - QLabel* TextLabel1; - QPushButton* PushButton1; - QLineEdit* LineEdit1; - - -protected: - QGridLayout* EntityGUI_1Sel_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout4; - QGridLayout* Layout3; - QGridLayout* Layout2; - QGridLayout* Layout1; -}; - -#endif // ENTITYGUI_1SEL_QTD_H diff --git a/src/EntityGUI/EntityGUI_1Sel_QTD.ui b/src/EntityGUI/EntityGUI_1Sel_QTD.ui new file mode 100644 index 000000000..b5af6d132 --- /dev/null +++ b/src/EntityGUI/EntityGUI_1Sel_QTD.ui @@ -0,0 +1,126 @@ + + EntityGUI_1Sel_QTD + + + + 0 + 0 + 402 + 88 + + + + EntityGUI_1Sel_QTD + + + + 0 + + + 0 + + + + + Values + + + + 9 + + + 6 + + + + + 0 + + + 6 + + + + + Undo + + + + + + + Redo + + + + + + + + + + 3 + 0 + 0 + 0 + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + + + + + + + + Create + + + + + + + + + + qPixmapFromMimeSource + + PushButton1 + LineEdit1 + buttonApply + buttonUndo + buttonRedo + + + + diff --git a/src/EntityGUI/EntityGUI_1Spin.cxx b/src/EntityGUI/EntityGUI_1Spin.cxx deleted file mode 100644 index c8a62963f..000000000 --- a/src/EntityGUI/EntityGUI_1Spin.cxx +++ /dev/null @@ -1,56 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : EntityGUI_1Spin.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "EntityGUI_1Spin.h" - -#include -#include -#include - -/* - * Constructs a EntityGUI_1Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -EntityGUI_1Spin::EntityGUI_1Spin(QWidget* parent, const char* name, WFlags fl) - :EntityGUI_1Spin_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout1->addWidget(SpinBox_DX, 0, 1); - -} - - -/* - * Destroys the object and frees any allocated resources - */ -EntityGUI_1Spin::~EntityGUI_1Spin() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/EntityGUI/EntityGUI_1Spin.h b/src/EntityGUI/EntityGUI_1Spin.h deleted file mode 100644 index 5631e0bac..000000000 --- a/src/EntityGUI/EntityGUI_1Spin.h +++ /dev/null @@ -1,49 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : EntityGUI_1Spin.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef ENTITYGUI_1SPIN_H -#define ENTITYGUI_1SPIN_H - -#include "GEOM_EntityGUI.hxx" - -#include "EntityGUI_1Spin_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_ENTITYGUI_EXPORT EntityGUI_1Spin : public EntityGUI_1Spin_QTD -{ - Q_OBJECT - -public: - EntityGUI_1Spin(QWidget* parent = 0, const char* name = 0, WFlags fl = 0); - ~EntityGUI_1Spin(); - - DlgRef_SpinBox* SpinBox_DX; - -}; - -#endif // ENTITYGUI_1SPIN_H diff --git a/src/EntityGUI/EntityGUI_1Spin_QTD.cxx b/src/EntityGUI/EntityGUI_1Spin_QTD.cxx deleted file mode 100644 index 98a476cef..000000000 --- a/src/EntityGUI/EntityGUI_1Spin_QTD.cxx +++ /dev/null @@ -1,116 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'EntityGUI_1Spin_QTD.ui' -** -** Created: Fri Jul 30 16:05:59 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "EntityGUI_1Spin_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a EntityGUI_1Spin_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -EntityGUI_1Spin_QTD::EntityGUI_1Spin_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "EntityGUI_1Spin_QTD" ); - resize( 255, 112 ); - setCaption( trUtf8( "EntityGUI_1Spin_QTD" ) ); - EntityGUI_1Spin_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "EntityGUI_1Spin_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "Values" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout4 = new QGridLayout( 0, 1, 1, 0, 6, "Layout4"); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox1, 0, 1 ); - QSpacerItem* spacer = new QSpacerItem( 0, 82, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 3, 1 ); - - Layout4->addLayout( Layout1, 0, 0 ); - - Layout3 = new QGridLayout( 0, 1, 1, 0, 6, "Layout3"); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - buttonRedo = new QPushButton( GroupBox1, "buttonRedo" ); - buttonRedo->setText( trUtf8( "Redo" ) ); - - Layout2->addWidget( buttonRedo, 0, 1 ); - - buttonUndo = new QPushButton( GroupBox1, "buttonUndo" ); - buttonUndo->setText( trUtf8( "Undo" ) ); - - Layout2->addWidget( buttonUndo, 0, 0 ); - - Layout3->addLayout( Layout2, 1, 0 ); - - buttonApply = new QPushButton( GroupBox1, "buttonApply" ); - buttonApply->setText( trUtf8( "Create" ) ); - - Layout3->addWidget( buttonApply, 0, 0 ); - QSpacerItem* spacer_2 = new QSpacerItem( 0, 40, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout3->addItem( spacer_2, 2, 0 ); - - Layout4->addLayout( Layout3, 0, 1 ); - - GroupBox1Layout->addLayout( Layout4, 0, 0 ); - - EntityGUI_1Spin_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -EntityGUI_1Spin_QTD::~EntityGUI_1Spin_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/EntityGUI/EntityGUI_1Spin_QTD.h b/src/EntityGUI/EntityGUI_1Spin_QTD.h deleted file mode 100644 index e525552bb..000000000 --- a/src/EntityGUI/EntityGUI_1Spin_QTD.h +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'EntityGUI_1Spin_QTD.ui' -** -** Created: Fri Jul 30 16:05:59 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef ENTITYGUI_1SPIN_QTD_H -#define ENTITYGUI_1SPIN_QTD_H - -#include "GEOM_EntityGUI.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QPushButton; -class QSpinBox; - -class GEOM_ENTITYGUI_EXPORT EntityGUI_1Spin_QTD : public QWidget -{ - Q_OBJECT - -public: - EntityGUI_1Spin_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~EntityGUI_1Spin_QTD(); - - QGroupBox* GroupBox1; - QLabel* TextLabel1; - QSpinBox* SpinBox1; - QPushButton* buttonRedo; - QPushButton* buttonUndo; - QPushButton* buttonApply; - - -protected: - QGridLayout* EntityGUI_1Spin_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout4; - QGridLayout* Layout1; - QGridLayout* Layout3; - QGridLayout* Layout2; -}; - -#endif // ENTITYGUI_1SPIN_QTD_H diff --git a/src/EntityGUI/EntityGUI_1Spin_QTD.ui b/src/EntityGUI/EntityGUI_1Spin_QTD.ui new file mode 100644 index 000000000..687f962dc --- /dev/null +++ b/src/EntityGUI/EntityGUI_1Spin_QTD.ui @@ -0,0 +1,108 @@ + + EntityGUI_1Spin_QTD + + + + 0 + 0 + 268 + 88 + + + + EntityGUI_1Spin_QTD + + + + 0 + + + 0 + + + + + Values + + + + 9 + + + 6 + + + + + + + + 0 + + + 6 + + + + + Redo + + + + + + + Undo + + + + + + + + + Create + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + SpinBox_DX + buttonApply + buttonUndo + buttonRedo + + + +
    diff --git a/src/EntityGUI/EntityGUI_2Spin.cxx b/src/EntityGUI/EntityGUI_2Spin.cxx deleted file mode 100644 index 8ed08eccc..000000000 --- a/src/EntityGUI/EntityGUI_2Spin.cxx +++ /dev/null @@ -1,60 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : EntityGUI_2Spin.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "EntityGUI_2Spin.h" - -#include -#include -#include - -/* - * Constructs a EntityGUI_2Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -EntityGUI_2Spin::EntityGUI_2Spin(QWidget* parent, const char* name, WFlags fl) - :EntityGUI_2Spin_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout1->addWidget(SpinBox_DX, 0, 1); - - SpinBox_DY = new DlgRef_SpinBox(GroupBox1, "SpinBox_DY"); - Layout1->addWidget(SpinBox_DY, 1, 1); - -} - - -/* - * Destroys the object and frees any allocated resources - */ -EntityGUI_2Spin::~EntityGUI_2Spin() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/EntityGUI/EntityGUI_2Spin.h b/src/EntityGUI/EntityGUI_2Spin.h deleted file mode 100644 index 9d79e478a..000000000 --- a/src/EntityGUI/EntityGUI_2Spin.h +++ /dev/null @@ -1,50 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : EntityGUI_2Spin.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef ENTITYGUI_2SPIN_H -#define ENTITYGUI_2SPIN_H - -#include "GEOM_EntityGUI.hxx" - -#include "EntityGUI_2Spin_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_ENTITYGUI_EXPORT EntityGUI_2Spin : public EntityGUI_2Spin_QTD -{ - Q_OBJECT - -public: - EntityGUI_2Spin(QWidget* parent = 0, const char* name = 0, WFlags fl = 0); - ~EntityGUI_2Spin(); - - DlgRef_SpinBox* SpinBox_DX; - DlgRef_SpinBox* SpinBox_DY; - -}; - -#endif // ENTITYGUI_2SPIN_H diff --git a/src/EntityGUI/EntityGUI_2Spin_QTD.cxx b/src/EntityGUI/EntityGUI_2Spin_QTD.cxx deleted file mode 100644 index b6f254d5a..000000000 --- a/src/EntityGUI/EntityGUI_2Spin_QTD.cxx +++ /dev/null @@ -1,127 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'EntityGUI_2Spin_QTD.ui' -** -** Created: Fri Jul 30 16:06:00 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "EntityGUI_2Spin_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a EntityGUI_2Spin_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -EntityGUI_2Spin_QTD::EntityGUI_2Spin_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "EntityGUI_2Spin_QTD" ); - resize( 255, 112 ); - setCaption( trUtf8( "EntityGUI_2Spin_QTD" ) ); - EntityGUI_2Spin_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "EntityGUI_2Spin_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "Values" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout4 = new QGridLayout( 0, 1, 1, 0, 6, "Layout4"); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox1, 0, 1 ); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox2, 1, 1 ); - QSpacerItem* spacer = new QSpacerItem( 0, 82, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 3, 1 ); - - Layout4->addLayout( Layout1, 0, 0 ); - - Layout3 = new QGridLayout( 0, 1, 1, 0, 6, "Layout3"); - QSpacerItem* spacer_2 = new QSpacerItem( 0, 51, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout3->addItem( spacer_2, 2, 0 ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - buttonUndo = new QPushButton( GroupBox1, "buttonUndo" ); - buttonUndo->setText( trUtf8( "Undo" ) ); - - Layout2->addWidget( buttonUndo, 0, 0 ); - - buttonRedo = new QPushButton( GroupBox1, "buttonRedo" ); - buttonRedo->setText( trUtf8( "Redo" ) ); - - Layout2->addWidget( buttonRedo, 0, 1 ); - - Layout3->addLayout( Layout2, 1, 0 ); - - buttonApply = new QPushButton( GroupBox1, "buttonApply" ); - buttonApply->setText( trUtf8( "Create" ) ); - - Layout3->addWidget( buttonApply, 0, 0 ); - - Layout4->addLayout( Layout3, 0, 1 ); - - GroupBox1Layout->addLayout( Layout4, 0, 0 ); - - EntityGUI_2Spin_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -EntityGUI_2Spin_QTD::~EntityGUI_2Spin_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/EntityGUI/EntityGUI_2Spin_QTD.h b/src/EntityGUI/EntityGUI_2Spin_QTD.h deleted file mode 100644 index 718f80e42..000000000 --- a/src/EntityGUI/EntityGUI_2Spin_QTD.h +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'EntityGUI_2Spin_QTD.ui' -** -** Created: Fri Jul 30 16:06:00 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef ENTITYGUI_2SPIN_QTD_H -#define ENTITYGUI_2SPIN_QTD_H - -#include "GEOM_EntityGUI.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QPushButton; -class QSpinBox; - -class GEOM_ENTITYGUI_EXPORT EntityGUI_2Spin_QTD : public QWidget -{ - Q_OBJECT - -public: - EntityGUI_2Spin_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~EntityGUI_2Spin_QTD(); - - QGroupBox* GroupBox1; - QLabel* TextLabel2; - QLabel* TextLabel1; - QSpinBox* SpinBox1; - QSpinBox* SpinBox2; - QPushButton* buttonUndo; - QPushButton* buttonRedo; - QPushButton* buttonApply; - - -protected: - QGridLayout* EntityGUI_2Spin_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout4; - QGridLayout* Layout1; - QGridLayout* Layout3; - QGridLayout* Layout2; -}; - -#endif // ENTITYGUI_2SPIN_QTD_H diff --git a/src/EntityGUI/EntityGUI_2Spin_QTD.ui b/src/EntityGUI/EntityGUI_2Spin_QTD.ui new file mode 100644 index 000000000..f28257dd4 --- /dev/null +++ b/src/EntityGUI/EntityGUI_2Spin_QTD.ui @@ -0,0 +1,130 @@ + + EntityGUI_2Spin_QTD + + + + 0 + 0 + 264 + 88 + + + + EntityGUI_2Spin_QTD + + + + 0 + + + 0 + + + + + Values + + + + 9 + + + 6 + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + 0 + + + 6 + + + + + Undo + + + + + + + Redo + + + + + + + + + Create + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + SpinBox_DX + SpinBox_DY + buttonApply + buttonUndo + buttonRedo + + + +
    diff --git a/src/EntityGUI/EntityGUI_3DSketcherDlg.cxx b/src/EntityGUI/EntityGUI_3DSketcherDlg.cxx new file mode 100755 index 000000000..134cbd3cf --- /dev/null +++ b/src/EntityGUI/EntityGUI_3DSketcherDlg.cxx @@ -0,0 +1,629 @@ +// GEOM GEOMGUI : GUI for Geometry component +// +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// File : EntityGUI_3DSketcherDlg.cxx +// Author : DMV, OCN +// + +#include "EntityGUI_3DSketcherDlg.h" +#include "EntityGUI_Widgets.h" +#include + +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include + +class Locker +{ +public: + Locker( bool& l ) : myLock( l ) { myLock = true; } + ~Locker() { myLock = false; } +private: + bool& myLock; +}; + +//================================================================================= +// class : EntityGUI_3DSketcherDlg() +// purpose : Constructs a EntityGUI_3DSketcherDlg which is a child of 'parent', with the +// name 'name' and widget flags set to 'f'. +// The dialog will by default be modeless, unless you set 'modal' to +// TRUE to construct a modal dialog. +//================================================================================= +EntityGUI_3DSketcherDlg::EntityGUI_3DSketcherDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl, + const double lineWidth ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ), + myGeometryGUI( theGeometryGUI ), + myLineWidth( lineWidth ) +{ + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_UNDO" ) ) ); + QPixmap image2( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_REDO" ) ) ); + QPixmap image3( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICO_3DSKETCH" ) ) ); + + setWindowTitle( tr( "GEOM_3DSKETCHER_TITLE" ) ); + + /***************************************************************/ + + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_3DSKETCHER" ) ); + mainFrame()->RadioButton1->setIcon( image3 );; + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->close(); + + GroupType = new DlgRef_3Radio(centralWidget()); + GroupType->GroupBox1->setTitle(tr("GEOM_COORDINATES_TYPE")); + GroupType->RadioButton1->setText(tr("GEOM_SKETCHER_ABS")); + GroupType->RadioButton2->setText(tr("GEOM_SKETCHER_REL")); + GroupType->RadioButton3->close(); + + Group3Spin = new EntityGUI_3Spin( centralWidget() ); + Group3Spin->GroupBox1->setTitle( tr( "GEOM_SKETCHER_VALUES" ) ); + Group3Spin->buttonApply->setText( tr( "GEOM_SKETCHER_APPLY" ) ); + Group3Spin->buttonUndo->setIcon( image1 ); + Group3Spin->buttonRedo->setIcon( image2 ); + Group3Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_X2" ) ); + Group3Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_Y2" ) ); + Group3Spin->TextLabel3->setText( tr( "GEOM_SKETCHER_Z2" ) ); + + buttonOk()->setText( tr( "GEOM_BUT_END_SKETCH" ) ); + buttonApply()->setText( tr( "GEOM_BUT_CLOSE_SKETCH" ) ); + + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupType ); + layout->addWidget( Group3Spin ); + + setHelpFileName( "create_3dsketcher_page.html" ); + + resize(0,0); + Init(); +} + + + +//================================================================================= +// function : ~EntityGUI_3DSketcherDlg() +// purpose : Destroys the object and frees any allocated resources +//================================================================================= +EntityGUI_3DSketcherDlg::~EntityGUI_3DSketcherDlg() +{ + myGeomGUI->SetActiveDialogBox( 0 ); +} + +//================================================================================= +// function : Init() +// purpose : +//================================================================================= +void EntityGUI_3DSketcherDlg::Init() +{ + myOK = false; + + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + + /* Get setting of step value from file configuration */ + double step = SUIT_Session::session()->resourceMgr()->doubleValue( "Geometry", "SettingsGeomStep", 100.0 ); + + /* min, max, step and decimals for spin boxes */ + initSpinBox( Group3Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group3Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group3Spin->SpinBox_DZ, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + + /* signals and slots connections */ + connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( PointClicked( int ) ) ); + + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); + + connect( Group3Spin->buttonApply, SIGNAL( clicked() ), this, SLOT( ClickOnAddPoint() ) ); + connect( Group3Spin->buttonUndo, SIGNAL( clicked() ), this, SLOT( ClickOnUndo() ) ); + connect( Group3Spin->buttonRedo, SIGNAL( clicked() ), this, SLOT( ClickOnRedo() ) ) ; + + connect( GroupType->RadioButton1, SIGNAL( clicked() ), this, SLOT( TypeClicked() ) ); + connect( GroupType->RadioButton2, SIGNAL( clicked() ), this, SLOT( TypeClicked() ) ); + + connect( Group3Spin->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( Group3Spin->SpinBox_DY, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( Group3Spin->SpinBox_DZ, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + + connect( myGeomGUI, SIGNAL( SignalDefaultStepValueChanged( double ) ), this, SLOT( SetDoubleSpinBoxStep( double ) ) ); + + connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), this, SLOT( DeactivateActiveDialog() ) ); + connect( myGeomGUI, SIGNAL( SignalCloseAllDialogs() ), this, SLOT( ClickOnCancel() ) ); + + initName( tr( "GEOM_3DSKETCHER" ) ); + + UpdateButtonsState(); + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); +} + +//================================================================================= +// function : TypeClicked() +// purpose : Radio button management +//================================================================================= +void EntityGUI_3DSketcherDlg::TypeClicked() +{ + bool blocked = Group3Spin->SpinBox_DX->signalsBlocked(); + Group3Spin->SpinBox_DX->blockSignals(true); + Group3Spin->SpinBox_DY->blockSignals(true); + Group3Spin->SpinBox_DZ->blockSignals(true); + // Get setting of step value from file configuration + double x, y, z; + GetLastPoints(x, y, z); + if ( GroupType->RadioButton1->isChecked() ) { // XY + Group3Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_X2" ) ); + Group3Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_Y2" ) ); + Group3Spin->TextLabel3->setText( tr( "GEOM_SKETCHER_Z2" ) ); + Group3Spin->SpinBox_DX->setValue( x + Group3Spin->SpinBox_DX->value() ); + Group3Spin->SpinBox_DY->setValue( y + Group3Spin->SpinBox_DY->value() ); + Group3Spin->SpinBox_DZ->setValue( z + Group3Spin->SpinBox_DZ->value() ); + Group3Spin->buttonApply->setFocus(); + } else if ( GroupType->RadioButton2->isChecked() ) { // DXDY + Group3Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_DX2" ) ); + Group3Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_DY2" ) ); + Group3Spin->TextLabel3->setText( tr( "GEOM_SKETCHER_DZ2" ) ); + Group3Spin->SpinBox_DX->setValue( Group3Spin->SpinBox_DX->value() - x ); + Group3Spin->SpinBox_DY->setValue( Group3Spin->SpinBox_DY->value() - y ); + Group3Spin->SpinBox_DZ->setValue( Group3Spin->SpinBox_DZ->value() - z ); + Group3Spin->buttonApply->setFocus(); + } + Group3Spin->SpinBox_DX->blockSignals(blocked); + Group3Spin->SpinBox_DY->blockSignals(blocked); + Group3Spin->SpinBox_DZ->blockSignals(blocked); +} + +//================================================================================= +// function : ClickOnAddPoint() +// purpose : called when the point coordinates is Applyed +//================================================================================= +void EntityGUI_3DSketcherDlg::ClickOnAddPoint() +{ + Locker lock( myOK ); + + double x, y, z; + GetCurrentPoints(x, y, z); + myPointsList.append(x); + myPointsList.append(y); + myPointsList.append(z); + + myRedoList.clear(); + + if ( GroupType->RadioButton2->isChecked() ) { + Group3Spin->SpinBox_DX->setValue( 0.0 ); + Group3Spin->SpinBox_DY->setValue( 0.0 ); + Group3Spin->SpinBox_DZ->setValue( 0.0 ); + } + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); + UpdateButtonsState(); +} + +//================================================================================= +// function : UpdateButtonsState() +// purpose : +//================================================================================= +void EntityGUI_3DSketcherDlg::UpdateButtonsState() +{ + if ( !myPointsList.count() ) + GroupType->RadioButton1->setChecked( true ); + GroupType->RadioButton2->setEnabled( myPointsList.count() > 2 ); + Group3Spin->buttonUndo->setEnabled( myPointsList.count() > 2 ); + Group3Spin->buttonRedo->setEnabled( myRedoList.count() > 2 ); +} + +//================================================================================= +// function : ClickOnUndo() +// purpose : +//================================================================================= +void EntityGUI_3DSketcherDlg::ClickOnUndo() +{ + if (myPointsList.count() > 2) { + double x, y, z; + GetLastPoints(x, y, z); + myRedoList.append(x); + myRedoList.append(y); + myRedoList.append(z); + myPointsList.removeLast(); + myPointsList.removeLast(); + myPointsList.removeLast(); + + UpdateButtonsState(); + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); + } +} + +//================================================================================= +// function : ClickOnRedo() +// purpose : +//================================================================================= +void EntityGUI_3DSketcherDlg::ClickOnRedo() +{ + int count = myRedoList.count(); + if ( count > 2 ) { + myPointsList.append( myRedoList[count-3] ); + myPointsList.append( myRedoList[count-2] ); + myPointsList.append( myRedoList[count-1] ); + myRedoList.removeLast(); + myRedoList.removeLast(); + myRedoList.removeLast(); + + UpdateButtonsState(); + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); + } +} + +//================================================================================= +// function : SelectionIntoArgument() +// purpose : Called when selection as changed +//================================================================================= +void EntityGUI_3DSketcherDlg::SelectionIntoArgument() +{ + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + int nbSel = aSelList.Extent(); + if ( nbSel == 1 ) { + Standard_Boolean aRes = Standard_False; + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aRes); + if (!CORBA::is_nil(aSelectedObject) && aRes) { + TopoDS_Shape aShape; + if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE)) { // Explore the shape if its a local selection + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) + { + int anIndex = aMap(1); + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId()); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + } + } + bool isOk = true; + if ( aShape.ShapeType() != TopAbs_VERTEX ) + isOk = GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_VERTEX); + if (isOk) { + gp_Pnt aPnt; + if ( GEOMBase::VertexToPoint( aShape, aPnt ) ) { + // set coordinates to the Spin Boxes + double aX, aY, aZ; + aX = aPnt.X(); + aY = aPnt.Y(); + aZ = aPnt.Z(); + bool blocked = Group3Spin->SpinBox_DX->signalsBlocked(); + Group3Spin->SpinBox_DX->blockSignals(true); + Group3Spin->SpinBox_DY->blockSignals(true); + Group3Spin->SpinBox_DZ->blockSignals(true); + if ( GroupType->RadioButton1->isChecked() ) { + Group3Spin->SpinBox_DX->setValue( aX ); + Group3Spin->SpinBox_DY->setValue( aY ); + Group3Spin->SpinBox_DZ->setValue( aZ ); + } else if ( GroupType->RadioButton2->isChecked() ) { + double x, y, z; + GetLastPoints(x, y, z); + Group3Spin->SpinBox_DX->setValue( aX - x ); + Group3Spin->SpinBox_DY->setValue( aY - y ); + Group3Spin->SpinBox_DZ->setValue( aZ - z ); + } + Group3Spin->SpinBox_DX->blockSignals(blocked); + Group3Spin->SpinBox_DY->blockSignals(blocked); + Group3Spin->SpinBox_DZ->blockSignals(blocked); + } + } + } + } + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); +} + +//================================================================================= +// function : DeactivateActiveDialog() +// purpose : +//================================================================================= +void EntityGUI_3DSketcherDlg::DeactivateActiveDialog() +{ + setEnabled( false ); + globalSelection(); + disconnect( myGeomGUI->getApp()->selectionMgr(), 0, this, 0 ); + myGeomGUI->SetActiveDialogBox( 0 ); +} + + +//================================================================================= +// function : ActivateThisDialog() +// purpose : +//================================================================================= +void EntityGUI_3DSketcherDlg::ActivateThisDialog() +{ + myGeomGUI->EmitSignalDeactivateDialog(); + setEnabled( true ); + myGeomGUI->SetActiveDialogBox( this ); + + connect( myGeomGUI->getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); + + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); +} + + +//================================================================================= +// function : ValueChangedInSpinBox() +// purpose : +//================================================================================= +void EntityGUI_3DSketcherDlg::ValueChangedInSpinBox( double newValue ) +{ + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); +} + +//================================================================================= +// function : enterEvent() +// purpose : +//================================================================================= +void EntityGUI_3DSketcherDlg::enterEvent( QEvent* ) +{ + if ( !mainFrame()->GroupConstructors->isEnabled() ) + ActivateThisDialog(); +} + +//================================================================================= +// function : createOperation +// purpose : +//================================================================================= +GEOM::GEOM_IOperations_ptr EntityGUI_3DSketcherDlg::createOperation() +{ + return getGeomEngine()->GetICurvesOperations( getStudyId() ); +} + +//================================================================================= +// function : isValid +// purpose : +//================================================================================= +bool EntityGUI_3DSketcherDlg::isValid( QString& msg ) +{ + return true; +} + +//================================================================================= +// function : execute +// purpose : +//================================================================================= +bool EntityGUI_3DSketcherDlg::execute( ObjectList& objects ) +{ + GEOM::ListOfDouble_var aCoordsArray = new GEOM::ListOfDouble; + if (!myOK || myPointsList.size() == 0) + aCoordsArray->length(myPointsList.size()+3); + else + aCoordsArray->length(myPointsList.size()); + + int i = 0; + QList::const_iterator it; + for(it = myPointsList.begin(); it != myPointsList.end(); ++it ) { + aCoordsArray[i] = *it; + i++; + } + + if (!myOK || myPointsList.size() == 0) { + double x, y, z; + GetCurrentPoints(x, y, z); + aCoordsArray[i] = x; + aCoordsArray[i+1] = y; + aCoordsArray[i+2] = z; + } + + GEOM::GEOM_Object_var anObj = GEOM::GEOM_ICurvesOperations::_narrow( getOperation() )->Make3DSketcher( aCoordsArray ); + + if ( !anObj->_is_nil() ) + objects.push_back( anObj._retn() ); + + return true; +} + +//================================================================================= +// function : initSpinBox() +// purpose : +//================================================================================= + +void EntityGUI_3DSketcherDlg::initSpinBox( QDoubleSpinBox* spinBox, + double min, double max, + double step, int decimals ) +{ + spinBox->setDecimals( decimals ); + spinBox->setRange( min, max ); + spinBox->setSingleStep( step ); +} + +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void EntityGUI_3DSketcherDlg::SetDoubleSpinBoxStep( double step ) +{ + Group3Spin->SpinBox_DX->setSingleStep(step); + Group3Spin->SpinBox_DY->setSingleStep(step); + Group3Spin->SpinBox_DZ->setSingleStep(step); +} + +//================================================================================= +// function : ClickOnOk() +// purpose : +//================================================================================= +void EntityGUI_3DSketcherDlg::ClickOnOk() +{ + Locker lock( myOK ); + + if ( !onAccept() ) + return; + + ClickOnCancel(); +} + +//================================================================================= +// function : ClickOnApply() +// purpose : +//================================================================================= +bool EntityGUI_3DSketcherDlg::ClickOnApply() +{ + if (myPointsList.count() > 3) { + myPointsList.append(myPointsList[0]); + myPointsList.append(myPointsList[1]); + myPointsList.append(myPointsList[2]); + } + + Locker lock( myOK ); + + if ( !onAccept() ) + return false; + + ClickOnCancel(); + return true; +} + +//================================================================================= +// function : GetLastPoints() +// purpose : return last points from list +//================================================================================= +void EntityGUI_3DSketcherDlg::GetLastPoints(double& x, double& y, double& z) +{ + int count = myPointsList.count(); + x = count > 2 ? myPointsList[count-3] : 0.0; + y = count > 2 ? myPointsList[count-2] : 0.0; + z = count > 2 ? myPointsList[count-1] : 0.0; +} + +//================================================================================= +// function : GetCurrentPoints() +// purpose : returns current points +//================================================================================= +void EntityGUI_3DSketcherDlg::GetCurrentPoints(double& x, double& y, double& z) +{ + if ( GroupType->RadioButton1->isChecked() ) { + x = Group3Spin->SpinBox_DX->value(); + y = Group3Spin->SpinBox_DY->value(); + z = Group3Spin->SpinBox_DZ->value(); + } else { // if (GroupType->RadioButton2->isChecked()) + GetLastPoints(x, y, z); + x += Group3Spin->SpinBox_DX->value(); + y += Group3Spin->SpinBox_DY->value(); + z += Group3Spin->SpinBox_DZ->value(); + } +} + +//================================================================ +// Function : displayPreview +// Purpose : Method for displaying preview of resulting shape +// Redefined from GEOMBase_Helper. +//================================================================ +void EntityGUI_3DSketcherDlg::displayPreview( GEOM::GEOM_Object_ptr object, + const bool append, + const bool activate, + const bool update, + const double lineWidth, + const int displayMode, + const int color ) +{ + // Set color for preview shape + getDisplayer()->SetColor( Quantity_NOC_RED ); + + // set width of displayed shape + getDisplayer()->SetWidth( (lineWidth == -1)?myLineWidth:lineWidth ); + + // Disable activation of selection + getDisplayer()->SetToActivate( activate ); + + // Make a reference to GEOM_Object + CORBA::String_var objStr = myGeometryGUI->getApp()->orb()->object_to_string( object ); + getDisplayer()->SetName( objStr.in() ); + + // Create wire from applayed object + TopoDS_Shape anApplyedWire, aLastSegment; + if ( !createShapes( object, anApplyedWire, aLastSegment ) ) + return; + + // Build prs + SALOME_Prs* aPrs = getDisplayer()->BuildPrs( anApplyedWire ); + if ( aPrs != 0 && !aPrs->IsNull() ) + GEOMBase_Helper::displayPreview( aPrs, append, update ); + + getDisplayer()->SetColor( Quantity_NOC_VIOLET ); + aPrs = getDisplayer()->BuildPrs( aLastSegment ); + if ( aPrs != 0 && !aPrs->IsNull() ) + GEOMBase_Helper::displayPreview( aPrs, append, update ); + + getDisplayer()->UnsetName(); + + // Enable activation of displayed objects + getDisplayer()->SetToActivate( true ); +} + +//================================================================ +// Function : createShapes +// Purpose : Create applyed wire, and last segment from entry object +//================================================================ +bool EntityGUI_3DSketcherDlg::createShapes( GEOM::GEOM_Object_ptr theObject, + TopoDS_Shape& theApplyedWire, + TopoDS_Shape& theLastSegment ) +{ + TopoDS_Shape aShape; + if ( !GEOMBase::GetShape( theObject, aShape ) || + aShape.ShapeType() != TopAbs_WIRE && aShape.ShapeType() != TopAbs_VERTEX ) + return false; + + if ( myOK ) { + theApplyedWire = aShape; + return true; + } + + BRepBuilderAPI_MakeWire aBuilder; + TopExp_Explorer anExp( aShape, TopAbs_EDGE ); + while ( 1 ) { + TopoDS_Shape anEdge = anExp.Current(); + anExp.Next(); + if ( anExp.More() ) // i.e. non-last edge + aBuilder.Add( TopoDS::Edge( anEdge ) ); + else { + theLastSegment = anEdge; + break; + } + } + + if ( aBuilder.IsDone() ) + theApplyedWire = aBuilder.Shape(); + + return true; +} diff --git a/src/EntityGUI/EntityGUI_3DSketcherDlg.h b/src/EntityGUI/EntityGUI_3DSketcherDlg.h new file mode 100755 index 000000000..19cdb327d --- /dev/null +++ b/src/EntityGUI/EntityGUI_3DSketcherDlg.h @@ -0,0 +1,111 @@ +// GEOM GEOMGUI : GUI for Geometry component +// +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// File : EntityGUI_3DSketcherDlg.h +// Author : DMV, OCN +// + +#ifndef ENTITYGUI_3DSKETCHERDLG_H +#define ENTITYGUI_3DSKETCHERDLG_H + +#include + +class QDoubleSpinBox; +class EntityGUI_3Spin; +class DlgRef_3Radio; + +#ifndef COORD_MIN +# define COORD_MIN -1e+15 +# define COORD_MAX +1e+15 +# define MAX_NUMBER 100000 +# define DBL_DIGITS_DISPLAY 16 +#endif // COORD_MIN + +//================================================================================= +// class : EntityGUI_Dlg +// purpose : +//================================================================================= +class EntityGUI_3DSketcherDlg : public GEOMBase_Skeleton +{ + Q_OBJECT + +public: + EntityGUI_3DSketcherDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0, const double = 2. ); + ~EntityGUI_3DSketcherDlg(); + +protected: + void initSpinBox( QDoubleSpinBox*, + double, double, double = 0.1, + int = 3 ); + + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + +private: + void Init(); + void enterEvent( QEvent* ); + + virtual void displayPreview( GEOM::GEOM_Object_ptr, + const bool = false, + const bool = false, + const bool = true, + const double = -1, + const int = -1, + const int = -1); + + bool createShapes( GEOM::GEOM_Object_ptr, + TopoDS_Shape&, + TopoDS_Shape& ); + +private: + QList myPointsList; + QList myRedoList; + + EntityGUI_3Spin* Group3Spin; + DlgRef_3Radio* GroupType; + + bool myOK; + double myLineWidth; + GeometryGUI* myGeometryGUI; + +private slots: + void ClickOnOk(); + void ClickOnAddPoint(); + bool ClickOnApply(); + // bool isSameAsPrevious(); + void UpdateButtonsState(); + void GetLastPoints(double&, double&, double&); + void GetCurrentPoints(double&, double&, double&); + + void ClickOnUndo(); + void ClickOnRedo(); + + void SelectionIntoArgument(); + void DeactivateActiveDialog(); + void ActivateThisDialog(); + void TypeClicked(); + void ValueChangedInSpinBox( double ); + void SetDoubleSpinBoxStep( double ); +}; + +#endif // ENTITYGUI_SKETCHERDLG_H diff --git a/src/EntityGUI/EntityGUI_3Spin.cxx b/src/EntityGUI/EntityGUI_3Spin.cxx deleted file mode 100644 index 8a0fb7e53..000000000 --- a/src/EntityGUI/EntityGUI_3Spin.cxx +++ /dev/null @@ -1,63 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : EntityGUI_3Spin.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "EntityGUI_3Spin.h" - -#include -#include -#include - -/* - * Constructs a EntityGUI_3Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -EntityGUI_3Spin::EntityGUI_3Spin(QWidget* parent, const char* name, WFlags fl) - :EntityGUI_3Spin_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - SpinBox3->close(TRUE); - - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout1->addWidget(SpinBox_DX, 0, 1); - - SpinBox_DY = new DlgRef_SpinBox(GroupBox1, "SpinBox_DY"); - Layout1->addWidget(SpinBox_DY, 1, 1); - - SpinBox_DZ = new DlgRef_SpinBox(GroupBox1, "SpinBox_DZ"); - Layout1->addWidget(SpinBox_DZ, 2, 1); -} - - -/* - * Destroys the object and frees any allocated resources - */ -EntityGUI_3Spin::~EntityGUI_3Spin() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/EntityGUI/EntityGUI_3Spin.h b/src/EntityGUI/EntityGUI_3Spin.h deleted file mode 100644 index 4b612bdf1..000000000 --- a/src/EntityGUI/EntityGUI_3Spin.h +++ /dev/null @@ -1,51 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : EntityGUI_3Spin.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef ENTITYGUI_3SPIN_H -#define ENTITYGUI_3SPIN_H - -#include "GEOM_EntityGUI.hxx" - -#include "EntityGUI_3Spin_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_ENTITYGUI_EXPORT EntityGUI_3Spin : public EntityGUI_3Spin_QTD -{ - Q_OBJECT - -public: - EntityGUI_3Spin( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~EntityGUI_3Spin(); - - DlgRef_SpinBox* SpinBox_DX; - DlgRef_SpinBox* SpinBox_DY; - DlgRef_SpinBox* SpinBox_DZ; - -}; - -#endif // ENTITYGUI_3SPIN_H diff --git a/src/EntityGUI/EntityGUI_3Spin_QTD.cxx b/src/EntityGUI/EntityGUI_3Spin_QTD.cxx deleted file mode 100644 index 98dbf69c5..000000000 --- a/src/EntityGUI/EntityGUI_3Spin_QTD.cxx +++ /dev/null @@ -1,138 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'EntityGUI_3Spin_QTD.ui' -** -** Created: Fri Jul 30 16:06:00 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "EntityGUI_3Spin_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a EntityGUI_3Spin_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -EntityGUI_3Spin_QTD::EntityGUI_3Spin_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "EntityGUI_3Spin_QTD" ); - resize( 255, 125 ); - setCaption( trUtf8( "EntityGUI_3Spin_QTD" ) ); - EntityGUI_3Spin_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "EntityGUI_3Spin_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "Values" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout4 = new QGridLayout( 0, 1, 1, 0, 6, "Layout4"); - - Layout3 = new QGridLayout( 0, 1, 1, 0, 6, "Layout3"); - - buttonApply = new QPushButton( GroupBox1, "buttonApply" ); - buttonApply->setText( trUtf8( "Create" ) ); - - Layout3->addWidget( buttonApply, 0, 0 ); - QSpacerItem* spacer = new QSpacerItem( 0, 121, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout3->addItem( spacer, 2, 0 ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - buttonUndo = new QPushButton( GroupBox1, "buttonUndo" ); - buttonUndo->setText( trUtf8( "Undo" ) ); - - Layout2->addWidget( buttonUndo, 0, 0 ); - - buttonRedo = new QPushButton( GroupBox1, "buttonRedo" ); - buttonRedo->setText( trUtf8( "Redo" ) ); - - Layout2->addWidget( buttonRedo, 0, 1 ); - - Layout3->addLayout( Layout2, 1, 0 ); - - Layout4->addLayout( Layout3, 0, 1 ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox1, 0, 1 ); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox2, 1, 1 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout1->addWidget( TextLabel3, 2, 0 ); - QSpacerItem* spacer_2 = new QSpacerItem( 0, 82, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer_2, 3, 1 ); - - SpinBox3 = new QSpinBox( GroupBox1, "SpinBox3" ); - SpinBox3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox3->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox3, 2, 1 ); - - Layout4->addLayout( Layout1, 0, 0 ); - - GroupBox1Layout->addLayout( Layout4, 0, 0 ); - - EntityGUI_3Spin_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -EntityGUI_3Spin_QTD::~EntityGUI_3Spin_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/EntityGUI/EntityGUI_3Spin_QTD.h b/src/EntityGUI/EntityGUI_3Spin_QTD.h deleted file mode 100644 index 1235b160b..000000000 --- a/src/EntityGUI/EntityGUI_3Spin_QTD.h +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'EntityGUI_3Spin_QTD.ui' -** -** Created: Fri Jul 30 16:06:00 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef ENTITYGUI_3SPIN_QTD_H -#define ENTITYGUI_3SPIN_QTD_H - -#include "GEOM_EntityGUI.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QPushButton; -class QSpinBox; - -class GEOM_ENTITYGUI_EXPORT EntityGUI_3Spin_QTD : public QWidget -{ - Q_OBJECT - -public: - EntityGUI_3Spin_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~EntityGUI_3Spin_QTD(); - - QGroupBox* GroupBox1; - QPushButton* buttonApply; - QPushButton* buttonUndo; - QPushButton* buttonRedo; - QLabel* TextLabel2; - QLabel* TextLabel1; - QSpinBox* SpinBox1; - QSpinBox* SpinBox2; - QLabel* TextLabel3; - QSpinBox* SpinBox3; - - -protected: - QGridLayout* EntityGUI_3Spin_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout4; - QGridLayout* Layout3; - QGridLayout* Layout2; - QGridLayout* Layout1; -}; - -#endif // ENTITYGUI_3SPIN_QTD_H diff --git a/src/EntityGUI/EntityGUI_3Spin_QTD.ui b/src/EntityGUI/EntityGUI_3Spin_QTD.ui new file mode 100644 index 000000000..51dd64cfd --- /dev/null +++ b/src/EntityGUI/EntityGUI_3Spin_QTD.ui @@ -0,0 +1,152 @@ + + EntityGUI_3Spin_QTD + + + + 0 + 0 + 264 + 114 + + + + EntityGUI_3Spin_QTD + + + + 0 + + + 0 + + + + + Values + + + + 9 + + + 6 + + + + + + + + 0 + + + 6 + + + + + Undo + + + + + + + Redo + + + + + + + + + Create + + + + + + + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + SpinBox_DX + SpinBox_DY + SpinBox_DZ + buttonApply + buttonUndo + buttonRedo + + + +
    diff --git a/src/EntityGUI/EntityGUI_4Spin.cxx b/src/EntityGUI/EntityGUI_4Spin.cxx deleted file mode 100644 index 76ea42b22..000000000 --- a/src/EntityGUI/EntityGUI_4Spin.cxx +++ /dev/null @@ -1,67 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : EntityGUI_4Spin.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#include "EntityGUI_4Spin.h" - -#include -#include -#include - -/* - * Constructs a EntityGUI_4Spin which is a child of 'parent', with the - * name 'name' and widget flags set to 'f' - */ -EntityGUI_4Spin::EntityGUI_4Spin(QWidget* parent, const char* name, WFlags fl) - :EntityGUI_4Spin_QTD(parent, name, fl) -{ - SpinBox1->close(TRUE); - SpinBox2->close(TRUE); - SpinBox3->close(TRUE); - SpinBox4->close(TRUE); - - SpinBox_DX = new DlgRef_SpinBox(GroupBox1, "SpinBox_DX"); - Layout1->addWidget(SpinBox_DX, 0, 1); - - SpinBox_DY = new DlgRef_SpinBox(GroupBox1, "SpinBox_DY"); - Layout1->addWidget(SpinBox_DY, 1, 1); - - SpinBox_DZ = new DlgRef_SpinBox(GroupBox1, "SpinBox_DZ"); - Layout1->addWidget(SpinBox_DZ, 2, 1); - - SpinBox_DS = new DlgRef_SpinBox(GroupBox1, "SpinBox_DS"); - Layout1->addWidget(SpinBox_DS, 3, 1); -} - - -/* - * Destroys the object and frees any allocated resources - */ -EntityGUI_4Spin::~EntityGUI_4Spin() -{ - // no need to delete child widgets, Qt does it all for us -} diff --git a/src/EntityGUI/EntityGUI_4Spin.h b/src/EntityGUI/EntityGUI_4Spin.h deleted file mode 100644 index eeaf1965b..000000000 --- a/src/EntityGUI/EntityGUI_4Spin.h +++ /dev/null @@ -1,52 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : EntityGUI_4Spin.h -// Author : Damien COQUERET -// Module : GEOM -// $Header: - -#ifndef ENTITYGUI_4SPIN_H -#define ENTITYGUI_4SPIN_H - -#include "GEOM_EntityGUI.hxx" - -#include "EntityGUI_4Spin_QTD.h" -#include "DlgRef_SpinBox.h" - -class GEOM_ENTITYGUI_EXPORT EntityGUI_4Spin : public EntityGUI_4Spin_QTD -{ - Q_OBJECT - -public: - EntityGUI_4Spin( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~EntityGUI_4Spin(); - - DlgRef_SpinBox* SpinBox_DX; - DlgRef_SpinBox* SpinBox_DY; - DlgRef_SpinBox* SpinBox_DZ; - DlgRef_SpinBox* SpinBox_DS; - -}; - -#endif // ENTITYGUI_4SPIN_H diff --git a/src/EntityGUI/EntityGUI_4Spin_QTD.cxx b/src/EntityGUI/EntityGUI_4Spin_QTD.cxx deleted file mode 100644 index 8d8debd7e..000000000 --- a/src/EntityGUI/EntityGUI_4Spin_QTD.cxx +++ /dev/null @@ -1,149 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'EntityGUI_4Spin_QTD.ui' -** -** Created: Fri Jul 30 16:06:00 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "EntityGUI_4Spin_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a EntityGUI_4Spin_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -EntityGUI_4Spin_QTD::EntityGUI_4Spin_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "EntityGUI_4Spin_QTD" ); - resize( 255, 154 ); - setCaption( trUtf8( "EntityGUI_4Spin_QTD" ) ); - EntityGUI_4Spin_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "EntityGUI_4Spin_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setTitle( trUtf8( "Values" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout4 = new QGridLayout( 0, 1, 1, 0, 6, "Layout4"); - - Layout3 = new QGridLayout( 0, 1, 1, 0, 6, "Layout3"); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - buttonRedo = new QPushButton( GroupBox1, "buttonRedo" ); - buttonRedo->setText( trUtf8( "Redo" ) ); - - Layout2->addWidget( buttonRedo, 0, 1 ); - - buttonUndo = new QPushButton( GroupBox1, "buttonUndo" ); - buttonUndo->setText( trUtf8( "Undo" ) ); - - Layout2->addWidget( buttonUndo, 0, 0 ); - - Layout3->addLayout( Layout2, 1, 0 ); - QSpacerItem* spacer = new QSpacerItem( 0, 45, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout3->addItem( spacer, 2, 0 ); - - buttonApply = new QPushButton( GroupBox1, "buttonApply" ); - buttonApply->setText( trUtf8( "Create" ) ); - - Layout3->addWidget( buttonApply, 0, 0 ); - - Layout4->addLayout( Layout3, 0, 1 ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - SpinBox3 = new QSpinBox( GroupBox1, "SpinBox3" ); - SpinBox3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox3->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox3, 2, 1 ); - - SpinBox2 = new QSpinBox( GroupBox1, "SpinBox2" ); - SpinBox2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox2->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox2, 1, 1 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - QSpacerItem* spacer_2 = new QSpacerItem( 0, 70, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer_2, 4, 1 ); - - SpinBox4 = new QSpinBox( GroupBox1, "SpinBox4" ); - SpinBox4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox4->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox4, 3, 1 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout1->addWidget( TextLabel3, 2, 0 ); - - SpinBox1 = new QSpinBox( GroupBox1, "SpinBox1" ); - SpinBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, SpinBox1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( SpinBox1, 0, 1 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - TextLabel4->setText( trUtf8( "TL4" ) ); - - Layout1->addWidget( TextLabel4, 3, 0 ); - - Layout4->addLayout( Layout1, 0, 0 ); - - GroupBox1Layout->addLayout( Layout4, 0, 0 ); - - EntityGUI_4Spin_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -EntityGUI_4Spin_QTD::~EntityGUI_4Spin_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/EntityGUI/EntityGUI_4Spin_QTD.h b/src/EntityGUI/EntityGUI_4Spin_QTD.h deleted file mode 100644 index 6ec375d90..000000000 --- a/src/EntityGUI/EntityGUI_4Spin_QTD.h +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'EntityGUI_4Spin_QTD.ui' -** -** Created: Fri Jul 30 16:06:00 2004 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef ENTITYGUI_4SPIN_QTD_H -#define ENTITYGUI_4SPIN_QTD_H - -#include "GEOM_EntityGUI.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QPushButton; -class QSpinBox; - -class GEOM_ENTITYGUI_EXPORT EntityGUI_4Spin_QTD : public QWidget -{ - Q_OBJECT - -public: - EntityGUI_4Spin_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~EntityGUI_4Spin_QTD(); - - QGroupBox* GroupBox1; - QPushButton* buttonRedo; - QPushButton* buttonUndo; - QPushButton* buttonApply; - QSpinBox* SpinBox3; - QSpinBox* SpinBox2; - QLabel* TextLabel2; - QSpinBox* SpinBox4; - QLabel* TextLabel3; - QSpinBox* SpinBox1; - QLabel* TextLabel1; - QLabel* TextLabel4; - - -protected: - QGridLayout* EntityGUI_4Spin_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout4; - QGridLayout* Layout3; - QGridLayout* Layout2; - QGridLayout* Layout1; -}; - -#endif // ENTITYGUI_4SPIN_QTD_H diff --git a/src/EntityGUI/EntityGUI_4Spin_QTD.ui b/src/EntityGUI/EntityGUI_4Spin_QTD.ui new file mode 100644 index 000000000..661beab41 --- /dev/null +++ b/src/EntityGUI/EntityGUI_4Spin_QTD.ui @@ -0,0 +1,174 @@ + + EntityGUI_4Spin_QTD + + + + 0 + 0 + 264 + 140 + + + + EntityGUI_4Spin_QTD + + + + 0 + + + 0 + + + + + Values + + + + 9 + + + 6 + + + + + + + + + + + + + + + + + 0 + + + 6 + + + + + Redo + + + + + + + Undo + + + + + + + + + Create + + + + + + + + 0 + 0 + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL4 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + qPixmapFromMimeSource + + + SalomeApp_DoubleSpinBox + QDoubleSpinBox +
    SalomeApp_DoubleSpinBox.h
    +
    +
    + + SpinBox_DX + SpinBox_DY + SpinBox_DZ + SpinBox_DS + buttonApply + buttonUndo + buttonRedo + + + +
    diff --git a/src/EntityGUI/EntityGUI_Dir1_QTD.cxx b/src/EntityGUI/EntityGUI_Dir1_QTD.cxx deleted file mode 100644 index 9f051b216..000000000 --- a/src/EntityGUI/EntityGUI_Dir1_QTD.cxx +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'EntityGUI_Dir1_QTD.ui' -** -** Created: ven déc 12 11:17:09 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "EntityGUI_Dir1_QTD.h" - -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a EntityGUI_Dir1_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -EntityGUI_Dir1_QTD::EntityGUI_Dir1_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "EntityGUI_Dir1_QTD" ); - resize( 131, 123 ); - setCaption( trUtf8( "EntityGUI_Dir1_QTD" ) ); - EntityGUI_Dir1_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "EntityGUI_Dir1_QTDLayout"); - - GroupDir1 = new QButtonGroup( this, "GroupDir1" ); - GroupDir1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, GroupDir1->sizePolicy().hasHeightForWidth() ) ); - GroupDir1->setTitle( trUtf8( "Direction" ) ); - GroupDir1->setColumnLayout(0, Qt::Vertical ); - GroupDir1->layout()->setSpacing( 6 ); - GroupDir1->layout()->setMargin( 11 ); - GroupDir1Layout = new QGridLayout( GroupDir1->layout() ); - GroupDir1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - RB_Dir12 = new QRadioButton( GroupDir1, "RB_Dir12" ); - RB_Dir12->setText( trUtf8( "Perpendicular" ) ); - - Layout1->addWidget( RB_Dir12, 1, 0 ); - - RB_Dir13 = new QRadioButton( GroupDir1, "RB_Dir13" ); - RB_Dir13->setText( trUtf8( "Tangent" ) ); - - Layout1->addWidget( RB_Dir13, 2, 0 ); - - RB_Dir11 = new QRadioButton( GroupDir1, "RB_Dir11" ); - RB_Dir11->setText( trUtf8( "Angle" ) ); - - Layout1->addWidget( RB_Dir11, 0, 0 ); - - RB_Dir14 = new QRadioButton( GroupDir1, "RB_Dir14" ); - RB_Dir14->setText( trUtf8( "VX-VY" ) ); - - Layout1->addWidget( RB_Dir14, 3, 0 ); - - GroupDir1Layout->addLayout( Layout1, 0, 0 ); - - EntityGUI_Dir1_QTDLayout->addWidget( GroupDir1, 0, 0 ); - - // tab order - setTabOrder( RB_Dir11, RB_Dir12 ); - setTabOrder( RB_Dir12, RB_Dir13 ); - setTabOrder( RB_Dir13, RB_Dir14 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -EntityGUI_Dir1_QTD::~EntityGUI_Dir1_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/EntityGUI/EntityGUI_Dir1_QTD.h b/src/EntityGUI/EntityGUI_Dir1_QTD.h deleted file mode 100644 index 6ca2a1137..000000000 --- a/src/EntityGUI/EntityGUI_Dir1_QTD.h +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'EntityGUI_Dir1_QTD.ui' -** -** Created: ven déc 12 11:17:09 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef ENTITYGUI_DIR1_QTD_H -#define ENTITYGUI_DIR1_QTD_H - -#include "GEOM_EntityGUI.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QButtonGroup; -class QRadioButton; - -class GEOM_ENTITYGUI_EXPORT EntityGUI_Dir1_QTD : public QWidget -{ - Q_OBJECT - -public: - EntityGUI_Dir1_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~EntityGUI_Dir1_QTD(); - - QButtonGroup* GroupDir1; - QRadioButton* RB_Dir12; - QRadioButton* RB_Dir13; - QRadioButton* RB_Dir11; - QRadioButton* RB_Dir14; - - -protected: - QGridLayout* EntityGUI_Dir1_QTDLayout; - QGridLayout* GroupDir1Layout; - QGridLayout* Layout1; -}; - -#endif // ENTITYGUI_DIR1_QTD_H diff --git a/src/EntityGUI/EntityGUI_Dir1_QTD.ui b/src/EntityGUI/EntityGUI_Dir1_QTD.ui new file mode 100644 index 000000000..009fbaf1a --- /dev/null +++ b/src/EntityGUI/EntityGUI_Dir1_QTD.ui @@ -0,0 +1,85 @@ + + EntityGUI_Dir1_QTD + + + + 0 + 0 + 120 + 124 + + + + EntityGUI_Dir1_QTD + + + + 0 + + + 0 + + + + + + 7 + 0 + 0 + 0 + + + + Direction + + + + 9 + + + 6 + + + + + VX-VY + + + + + + + Tangent + + + + + + + Angle + + + + + + + Perpendicular + + + + + + + + + + qPixmapFromMimeSource + + RB_Dir11 + RB_Dir12 + RB_Dir13 + RB_Dir14 + + + + diff --git a/src/EntityGUI/EntityGUI_Dir2_QTD.cxx b/src/EntityGUI/EntityGUI_Dir2_QTD.cxx deleted file mode 100644 index bb509984b..000000000 --- a/src/EntityGUI/EntityGUI_Dir2_QTD.cxx +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'EntityGUI_Dir2_QTD.ui' -** -** Created: ven déc 12 11:17:10 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "EntityGUI_Dir2_QTD.h" - -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a EntityGUI_Dir2_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -EntityGUI_Dir2_QTD::EntityGUI_Dir2_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "EntityGUI_Dir2_QTD" ); - resize( 124, 106 ); - setCaption( trUtf8( "EntityGUI_Dir2_QTD" ) ); - EntityGUI_Dir2_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "EntityGUI_Dir2_QTDLayout"); - - GroupDir2 = new QButtonGroup( this, "GroupDir2" ); - GroupDir2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)7, 0, 0, GroupDir2->sizePolicy().hasHeightForWidth() ) ); - GroupDir2->setTitle( trUtf8( "Direction" ) ); - GroupDir2->setColumnLayout(0, Qt::Vertical ); - GroupDir2->layout()->setSpacing( 6 ); - GroupDir2->layout()->setMargin( 11 ); - GroupDir2Layout = new QGridLayout( GroupDir2->layout() ); - GroupDir2Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - RB_Dir22 = new QRadioButton( GroupDir2, "RB_Dir22" ); - RB_Dir22->setText( trUtf8( "X" ) ); - - Layout1->addWidget( RB_Dir22, 1, 0 ); - - RB_Dir23 = new QRadioButton( GroupDir2, "RB_Dir23" ); - RB_Dir23->setText( trUtf8( "Y" ) ); - - Layout1->addWidget( RB_Dir23, 2, 0 ); - QSpacerItem* spacer = new QSpacerItem( 0, 20, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 3, 0 ); - - RB_Dir21 = new QRadioButton( GroupDir2, "RB_Dir21" ); - RB_Dir21->setText( trUtf8( "Length" ) ); - - Layout1->addWidget( RB_Dir21, 0, 0 ); - - GroupDir2Layout->addLayout( Layout1, 0, 0 ); - - EntityGUI_Dir2_QTDLayout->addWidget( GroupDir2, 0, 0 ); - - // tab order - setTabOrder( RB_Dir21, RB_Dir22 ); - setTabOrder( RB_Dir22, RB_Dir23 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -EntityGUI_Dir2_QTD::~EntityGUI_Dir2_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/EntityGUI/EntityGUI_Dir2_QTD.h b/src/EntityGUI/EntityGUI_Dir2_QTD.h deleted file mode 100644 index 17480e83f..000000000 --- a/src/EntityGUI/EntityGUI_Dir2_QTD.h +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'EntityGUI_Dir2_QTD.ui' -** -** Created: ven déc 12 11:17:09 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef ENTITYGUI_DIR2_QTD_H -#define ENTITYGUI_DIR2_QTD_H - -#include "GEOM_EntityGUI.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QButtonGroup; -class QRadioButton; - -class GEOM_ENTITYGUI_EXPORT EntityGUI_Dir2_QTD : public QWidget -{ - Q_OBJECT - -public: - EntityGUI_Dir2_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~EntityGUI_Dir2_QTD(); - - QButtonGroup* GroupDir2; - QRadioButton* RB_Dir22; - QRadioButton* RB_Dir23; - QRadioButton* RB_Dir21; - - -protected: - QGridLayout* EntityGUI_Dir2_QTDLayout; - QGridLayout* GroupDir2Layout; - QGridLayout* Layout1; -}; - -#endif // ENTITYGUI_DIR2_QTD_H diff --git a/src/EntityGUI/EntityGUI_Dir2_QTD.ui b/src/EntityGUI/EntityGUI_Dir2_QTD.ui new file mode 100644 index 000000000..67d7398ee --- /dev/null +++ b/src/EntityGUI/EntityGUI_Dir2_QTD.ui @@ -0,0 +1,77 @@ + + EntityGUI_Dir2_QTD + + + + 0 + 0 + 91 + 100 + + + + EntityGUI_Dir2_QTD + + + + 0 + + + 6 + + + + + + 7 + 7 + 0 + 0 + + + + Direction + + + + 9 + + + 6 + + + + + Length + + + + + + + Y + + + + + + + X + + + + + + + + + + qPixmapFromMimeSource + + RB_Dir21 + RB_Dir22 + RB_Dir23 + + + + diff --git a/src/EntityGUI/EntityGUI_Point_QTD.cxx b/src/EntityGUI/EntityGUI_Point_QTD.cxx deleted file mode 100644 index bc2a482fd..000000000 --- a/src/EntityGUI/EntityGUI_Point_QTD.cxx +++ /dev/null @@ -1,93 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'EntityGUI_Point_QTD.ui' -** -** Created: ven déc 12 11:17:08 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "EntityGUI_Point_QTD.h" - -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a EntityGUI_Point_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -EntityGUI_Point_QTD::EntityGUI_Point_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "EntityGUI_Point_QTD" ); - resize( 124, 106 ); - setCaption( trUtf8( "EntityGUI_Point_QTD" ) ); - EntityGUI_Point_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "EntityGUI_Point_QTDLayout"); - - GroupPoint = new QButtonGroup( this, "GroupPoint" ); - GroupPoint->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, GroupPoint->sizePolicy().hasHeightForWidth() ) ); - GroupPoint->setTitle( trUtf8( "Point" ) ); - GroupPoint->setColumnLayout(0, Qt::Vertical ); - GroupPoint->layout()->setSpacing( 6 ); - GroupPoint->layout()->setMargin( 11 ); - GroupPointLayout = new QGridLayout( GroupPoint->layout() ); - GroupPointLayout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - RB_Point2 = new QRadioButton( GroupPoint, "RB_Point2" ); - RB_Point2->setText( trUtf8( "Relative" ) ); - - Layout1->addWidget( RB_Point2, 1, 0 ); - - RB_Point1 = new QRadioButton( GroupPoint, "RB_Point1" ); - RB_Point1->setText( trUtf8( "Absolute" ) ); - - Layout1->addWidget( RB_Point1, 0, 0 ); - - RB_Point3 = new QRadioButton( GroupPoint, "RB_Point3" ); - RB_Point3->setText( trUtf8( "Selection" ) ); - - Layout1->addWidget( RB_Point3, 2, 0 ); - - GroupPointLayout->addLayout( Layout1, 0, 0 ); - - EntityGUI_Point_QTDLayout->addWidget( GroupPoint, 0, 0 ); - - // tab order - setTabOrder( RB_Point1, RB_Point2 ); - setTabOrder( RB_Point2, RB_Point3 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -EntityGUI_Point_QTD::~EntityGUI_Point_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/EntityGUI/EntityGUI_Point_QTD.h b/src/EntityGUI/EntityGUI_Point_QTD.h deleted file mode 100644 index 453b09807..000000000 --- a/src/EntityGUI/EntityGUI_Point_QTD.h +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'EntityGUI_Point_QTD.ui' -** -** Created: ven déc 12 11:17:08 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef ENTITYGUI_POINT_QTD_H -#define ENTITYGUI_POINT_QTD_H - -#include "GEOM_EntityGUI.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QButtonGroup; -class QRadioButton; - -class GEOM_ENTITYGUI_EXPORT EntityGUI_Point_QTD : public QWidget -{ - Q_OBJECT - -public: - EntityGUI_Point_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~EntityGUI_Point_QTD(); - - QButtonGroup* GroupPoint; - QRadioButton* RB_Point2; - QRadioButton* RB_Point1; - QRadioButton* RB_Point3; - - -protected: - QGridLayout* EntityGUI_Point_QTDLayout; - QGridLayout* GroupPointLayout; - QGridLayout* Layout1; -}; - -#endif // ENTITYGUI_POINT_QTD_H diff --git a/src/EntityGUI/EntityGUI_Point_QTD.ui b/src/EntityGUI/EntityGUI_Point_QTD.ui new file mode 100644 index 000000000..a0bc2d6c9 --- /dev/null +++ b/src/EntityGUI/EntityGUI_Point_QTD.ui @@ -0,0 +1,77 @@ + + EntityGUI_Point_QTD + + + + 0 + 0 + 97 + 100 + + + + EntityGUI_Point_QTD + + + + 0 + + + 0 + + + + + + 7 + 0 + 0 + 0 + + + + Point + + + + 9 + + + 6 + + + + + Relative + + + + + + + Selection + + + + + + + Absolute + + + + + + + + + + qPixmapFromMimeSource + + RB_Point1 + RB_Point2 + RB_Point3 + + + + diff --git a/src/EntityGUI/EntityGUI_Skeleton_QTD.cxx b/src/EntityGUI/EntityGUI_Skeleton_QTD.cxx deleted file mode 100644 index 302635f39..000000000 --- a/src/EntityGUI/EntityGUI_Skeleton_QTD.cxx +++ /dev/null @@ -1,169 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'EntityGUI_Skeleton_QTD.ui' -** -** Created: Tue Mar 13 14:04:48 2007 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#include "EntityGUI_Skeleton_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a EntityGUI_Skeleton_QTD as a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - * - * The dialog will by default be modeless, unless you set 'modal' to - * TRUE to construct a modal dialog. - */ -EntityGUI_Skeleton_QTD::EntityGUI_Skeleton_QTD( QWidget* parent, const char* name, bool modal, WFlags fl ) - : QDialog( parent, name, modal, fl ) -{ - if ( !name ) - setName( "EntityGUI_Skeleton_QTD" ); - setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)7, 0, 0, sizePolicy().hasHeightForWidth() ) ); - EntityGUI_Skeleton_QTDLayout = new QGridLayout( this, 1, 1, 11, 6, "EntityGUI_Skeleton_QTDLayout"); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - GroupConstructors = new QButtonGroup( this, "GroupConstructors" ); - GroupConstructors->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)0, 0, 0, GroupConstructors->sizePolicy().hasHeightForWidth() ) ); - GroupConstructors->setColumnLayout(0, Qt::Vertical ); - GroupConstructors->layout()->setSpacing( 6 ); - GroupConstructors->layout()->setMargin( 11 ); - GroupConstructorsLayout = new QGridLayout( GroupConstructors->layout() ); - GroupConstructorsLayout->setAlignment( Qt::AlignTop ); - - Layout2 = new QHBoxLayout( 0, 0, 6, "Layout2"); - - RadioButton1 = new QRadioButton( GroupConstructors, "RadioButton1" ); - Layout2->addWidget( RadioButton1 ); - - RadioButton2 = new QRadioButton( GroupConstructors, "RadioButton2" ); - Layout2->addWidget( RadioButton2 ); - - GroupConstructorsLayout->addLayout( Layout2, 0, 0 ); - - Layout1->addWidget( GroupConstructors, 0, 0 ); - - GroupDest = new QGroupBox( this, "GroupDest" ); - GroupDest->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, GroupDest->sizePolicy().hasHeightForWidth() ) ); - GroupDest->setColumnLayout(0, Qt::Vertical ); - GroupDest->layout()->setSpacing( 6 ); - GroupDest->layout()->setMargin( 11 ); - GroupDestLayout = new QGridLayout( GroupDest->layout() ); - GroupDestLayout->setAlignment( Qt::AlignTop ); - - Layout5 = new QGridLayout( 0, 1, 1, 0, 6, "Layout5"); - - GroupDest1 = new QButtonGroup( GroupDest, "GroupDest1" ); - GroupDest1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, GroupDest1->sizePolicy().hasHeightForWidth() ) ); - GroupDest1->setColumnLayout(0, Qt::Vertical ); - GroupDest1->layout()->setSpacing( 6 ); - GroupDest1->layout()->setMargin( 11 ); - GroupDest1Layout = new QGridLayout( GroupDest1->layout() ); - GroupDest1Layout->setAlignment( Qt::AlignTop ); - - Layout4 = new QGridLayout( 0, 1, 1, 0, 6, "Layout4"); - - RB_Dest2 = new QRadioButton( GroupDest1, "RB_Dest2" ); - - Layout4->addWidget( RB_Dest2, 0, 1 ); - - RB_Dest1 = new QRadioButton( GroupDest1, "RB_Dest1" ); - - Layout4->addWidget( RB_Dest1, 0, 0 ); - - GroupDest1Layout->addLayout( Layout4, 0, 0 ); - - Layout5->addMultiCellWidget( GroupDest1, 0, 0, 0, 1 ); - - GroupDestLayout->addLayout( Layout5, 0, 0 ); - - Layout1->addWidget( GroupDest, 1, 0 ); - - GroupButtons = new QGroupBox( this, "GroupButtons" ); - GroupButtons->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, GroupButtons->sizePolicy().hasHeightForWidth() ) ); - GroupButtons->setColumnLayout(0, Qt::Vertical ); - GroupButtons->layout()->setSpacing( 6 ); - GroupButtons->layout()->setMargin( 11 ); - GroupButtonsLayout = new QHBoxLayout( GroupButtons->layout() ); - GroupButtonsLayout->setAlignment( Qt::AlignTop ); - - Layout3 = new QHBoxLayout( 0, 0, 6, "Layout3"); - - buttonEnd = new QPushButton( GroupButtons, "buttonEnd" ); - Layout3->addWidget( buttonEnd ); - - buttonClose = new QPushButton( GroupButtons, "buttonClose" ); - Layout3->addWidget( buttonClose ); - Spacer1 = new QSpacerItem( 91, 0, QSizePolicy::Expanding, QSizePolicy::Minimum ); - Layout3->addItem( Spacer1 ); - - buttonCancel = new QPushButton( GroupButtons, "buttonCancel" ); - Layout3->addWidget( buttonCancel ); - - buttonHelp = new QPushButton( GroupButtons, "buttonHelp" ); - Layout3->addWidget( buttonHelp ); - GroupButtonsLayout->addLayout( Layout3 ); - - Layout1->addWidget( GroupButtons, 3, 0 ); - - EntityGUI_Skeleton_QTDLayout->addLayout( Layout1, 0, 0 ); - languageChange(); - resize( QSize(317, 276).expandedTo(minimumSizeHint()) ); - clearWState( WState_Polished ); - - // tab order - setTabOrder( RadioButton1, RadioButton2 ); - setTabOrder( RadioButton2, RB_Dest1 ); - setTabOrder( RB_Dest1, RB_Dest2 ); - setTabOrder( RB_Dest2, buttonEnd ); - setTabOrder( buttonEnd, buttonClose ); - setTabOrder( buttonClose, buttonCancel ); -} - -/* - * Destroys the object and frees any allocated resources - */ -EntityGUI_Skeleton_QTD::~EntityGUI_Skeleton_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - -/* - * Sets the strings of the subwidgets using the current - * language. - */ -void EntityGUI_Skeleton_QTD::languageChange() -{ -} - diff --git a/src/EntityGUI/EntityGUI_Skeleton_QTD.h b/src/EntityGUI/EntityGUI_Skeleton_QTD.h deleted file mode 100644 index 11b95f502..000000000 --- a/src/EntityGUI/EntityGUI_Skeleton_QTD.h +++ /dev/null @@ -1,85 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'EntityGUI_Skeleton_QTD.ui' -** -** Created: Tue Mar 13 14:04:42 2007 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#ifndef ENTITYGUI_SKELETON_QTD_H -#define ENTITYGUI_SKELETON_QTD_H - -#include "GEOM_EntityGUI.hxx" - -#include -#include - -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QSpacerItem; -class QButtonGroup; -class QRadioButton; -class QGroupBox; -class QPushButton; - -class GEOM_ENTITYGUI_EXPORT EntityGUI_Skeleton_QTD : public QDialog -{ - Q_OBJECT - -public: - EntityGUI_Skeleton_QTD( QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 ); - ~EntityGUI_Skeleton_QTD(); - - QButtonGroup* GroupConstructors; - QRadioButton* RadioButton1; - QRadioButton* RadioButton2; - QGroupBox* GroupDest; - QButtonGroup* GroupDest1; - QRadioButton* RB_Dest2; - QRadioButton* RB_Dest1; - QGroupBox* GroupButtons; - QPushButton* buttonEnd; - QPushButton* buttonClose; - QPushButton* buttonCancel; - QPushButton* buttonHelp; - -protected: - QGridLayout* EntityGUI_Skeleton_QTDLayout; - QGridLayout* Layout1; - QGridLayout* GroupConstructorsLayout; - QHBoxLayout* Layout2; - QGridLayout* GroupDestLayout; - QGridLayout* Layout5; - QGridLayout* GroupDest1Layout; - QGridLayout* Layout4; - QHBoxLayout* GroupButtonsLayout; - QHBoxLayout* Layout3; - QSpacerItem* Spacer1; - -protected slots: - virtual void languageChange(); - -}; - -#endif // ENTITYGUI_SKELETON_QTD_H diff --git a/src/EntityGUI/EntityGUI_Skeleton_QTD.ui b/src/EntityGUI/EntityGUI_Skeleton_QTD.ui new file mode 100644 index 000000000..dd2529583 --- /dev/null +++ b/src/EntityGUI/EntityGUI_Skeleton_QTD.ui @@ -0,0 +1,249 @@ + + EntityGUI_Skeleton_QTD + + + + 0 + 0 + 363 + 234 + + + + Form + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + 0 + 0 + + + + + + + + 6 + + + 9 + + + 9 + + + 9 + + + 9 + + + + + End Sketch + + + + + + + Close Sketch + + + + + + + Qt::Horizontal + + + QSizePolicy::Expanding + + + + 91 + 0 + + + + + + + + &Cancel + + + + + + + &Help + + + + + + + + + + + + + + 0 + 0 + + + + Destination + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + + + + 0 + 0 + + + + Type + + + + 6 + + + 9 + + + 9 + + + 9 + + + 9 + + + + + Point + + + + + + + Direction + + + + + + + + + + + + + + 0 + 0 + + + + Element Type + + + + 6 + + + 9 + + + 9 + + + 9 + + + 9 + + + + + Segment + + + + + + + Arc + + + + + + + + + + buttonEnd + buttonClose + buttonCancel + buttonHelp + RadioButton1 + RadioButton2 + RB_Dest1 + RB_Dest2 + + + + diff --git a/src/EntityGUI/EntityGUI_SketcherDlg.cxx b/src/EntityGUI/EntityGUI_SketcherDlg.cxx index 2e0446a18..7f07b966f 100644 --- a/src/EntityGUI/EntityGUI_SketcherDlg.cxx +++ b/src/EntityGUI/EntityGUI_SketcherDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -19,28 +19,27 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : EntityGUI_SketcherDlg.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : EntityGUI_SketcherDlg.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "EntityGUI_SketcherDlg.h" -#include "Sketcher_Profile.hxx" -#include "GEOM_Displayer.h" -#include "GEOMBase.h" +#include "EntityGUI_Widgets.h" +#include -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SUIT_MessageBox.h" -#include "SUIT_ResourceMgr.h" -#include "SalomeApp_Application.h" -#include "LightApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include -#include -#include +#include +#include +#include +#include +#include +#include +#include + +#include #include #include @@ -49,12 +48,7 @@ #include #include #include - -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" - -using namespace std; +#include //================================================================================= // class : EntityGUI_SketcherDlg() @@ -63,177 +57,168 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -EntityGUI_SketcherDlg::EntityGUI_SketcherDlg(GeometryGUI* GUI, QWidget* parent, - const char* name, bool modal, WFlags fl, - const double lineWidth) - :EntityGUI_Skeleton_QTD(parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu | WDestructiveClose), - myIsAllAdded( false ), - GEOMBase_Helper( dynamic_cast( parent ) ), - myGeometryGUI( GUI ), - myLineWidth( lineWidth ) +EntityGUI_SketcherDlg::EntityGUI_SketcherDlg( GeometryGUI* GUI, QWidget* parent, + bool modal, Qt::WindowFlags fl, + const double lineWidth ) + : QDialog( parent, fl ), + myIsAllAdded( false ), + myIsApply( false ), + GEOMBase_Helper( dynamic_cast( parent ) ), + myGeometryGUI( GUI ), + myLineWidth( lineWidth ) { + setModal( modal ); + setAttribute( Qt::WA_DeleteOnClose ); + myGeometryGUI->SetActiveDialogBox(this); - if ( !name ) setName("EntityGUI_SketcherDlg"); + MainWidget = new EntityGUI_Skeleton( this ); + QVBoxLayout* topLayout = new QVBoxLayout( this ); + topLayout->setMargin( 9 ); topLayout->setSpacing( 6 ); + topLayout->addWidget( MainWidget ); - buttonCancel->setText(tr("GEOM_BUT_CANCEL")); - buttonEnd->setText(tr("GEOM_BUT_END_SKETCH")); - buttonClose->setText(tr("GEOM_BUT_CLOSE_SKETCH")); - buttonHelp->setText(tr("GEOM_BUT_HELP")); + MainWidget->buttonCancel->setText( tr( "GEOM_BUT_CANCEL" ) ); + MainWidget->buttonEnd->setText( tr( "GEOM_BUT_END_SKETCH" ) ); + MainWidget->buttonClose->setText( tr( "GEOM_BUT_CLOSE_SKETCH" ) ); + MainWidget->buttonHelp->setText( tr( "GEOM_BUT_HELP" ) ); - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_UNDO"))); - QPixmap image2(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_REDO"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_UNDO" ) ) ); + QPixmap image2( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_REDO" ) ) ); - setCaption(tr("GEOM_SKETCHER_TITLE")); + setWindowTitle( tr( "GEOM_SKETCHER_TITLE" ) ); - GroupConstructors->setTitle(tr("GEOM_SKETCHER_EL")); - RadioButton1->setText(tr("GEOM_SKETCHER_SEGMENT")); - RadioButton2->setText(tr("GEOM_SKETCHER_ARC")); - GroupDest->setTitle(tr("GEOM_SKETCHER_DEST")); - GroupDest1->setTitle(tr("GEOM_SKETCHER_TYPE")); - RB_Dest1->setText(tr("GEOM_SKETCHER_POINT")); - RB_Dest2->setText(tr("GEOM_SKETCHER_DIR")); + MainWidget->GroupConstructors->setTitle( tr( "GEOM_SKETCHER_EL" ) ); + MainWidget->RadioButton1->setText( tr( "GEOM_SKETCHER_SEGMENT" ) ); + MainWidget->RadioButton2->setText( tr( "GEOM_SKETCHER_ARC" ) ); + MainWidget->GroupDest->setTitle( tr( "GEOM_SKETCHER_DEST" ) ); + MainWidget->GroupDest1->setTitle( tr( "GEOM_SKETCHER_TYPE" ) ); + MainWidget->RB_Dest1->setText( tr( "GEOM_SKETCHER_POINT" ) ); + MainWidget->RB_Dest2->setText( tr( "GEOM_SKETCHER_DIR" ) ); /***************************************************************/ - GroupPt = new EntityGUI_Point_QTD(GroupDest, "GroupPt"); - GroupPt->GroupPoint->setTitle(tr("GEOM_SKETCHER_POINT")); - GroupPt->RB_Point1->setText(tr("GEOM_SKETCHER_ABS")); - GroupPt->RB_Point2->setText(tr("GEOM_SKETCHER_REL")); - GroupPt->RB_Point3->setText(tr("GEOM_SKETCHER_SEL")); + GroupPt = new EntityGUI_Point( MainWidget->DestCnt ); - GroupD1 = new EntityGUI_Dir1_QTD(GroupDest, "GroupD1"); - GroupD1->GroupDir1->setTitle(tr("GEOM_SKETCHER_DIR")); - GroupD1->RB_Dir11->setText(tr("GEOM_SKETCHER_ANGLE")); - GroupD1->RB_Dir12->setText(tr("GEOM_SKETCHER_PER")); - GroupD1->RB_Dir13->setText(tr("GEOM_SKETCHER_TAN")); - GroupD1->RB_Dir14->setText(tr("GEOM_SKETCHER_VXVY")); + GroupPt->GroupPoint->setTitle( tr( "GEOM_SKETCHER_POINT" ) ); + GroupPt->RB_Point1->setText( tr( "GEOM_SKETCHER_ABS" ) ); + GroupPt->RB_Point2->setText( tr( "GEOM_SKETCHER_REL" ) ); + GroupPt->RB_Point3->setText( tr( "GEOM_SKETCHER_SEL" ) ); - GroupD2 = new EntityGUI_Dir2_QTD(GroupDest, "GroupD2"); - GroupD2->GroupDir2->setTitle(tr("GEOM_SKETCHER_DIR")); - GroupD2->RB_Dir21->setText(tr("GEOM_SKETCHER_LENGTH")); - GroupD2->RB_Dir22->setText(tr("GEOM_SKETCHER_X")); - GroupD2->RB_Dir23->setText(tr("GEOM_SKETCHER_Y")); + GroupD1 = new EntityGUI_Dir1( MainWidget->DestCnt ); - Group1Sel = new EntityGUI_1Sel_QTD(this, "Group1Sel"); - Group1Sel->TextLabel1->setText(tr("GEOM_SKETCHER_POINT2")); - Group1Sel->GroupBox1->setTitle(tr("GEOM_SKETCHER_VALUES")); - Group1Sel->buttonApply->setText(tr("GEOM_SKETCHER_APPLY")); - Group1Sel->PushButton1->setPixmap(image0); - Group1Sel->buttonUndo->setPixmap(image1); - Group1Sel->buttonRedo->setPixmap(image2); + GroupD1->GroupDir1->setTitle( tr( "GEOM_SKETCHER_DIR" ) ); + GroupD1->RB_Dir11->setText( tr( "GEOM_SKETCHER_ANGLE" ) ); + GroupD1->RB_Dir12->setText( tr( "GEOM_SKETCHER_PER" ) ); + GroupD1->RB_Dir13->setText( tr( "GEOM_SKETCHER_TAN" ) ); + GroupD1->RB_Dir14->setText( tr( "GEOM_SKETCHER_VXVY" ) ); + + GroupD2 = new EntityGUI_Dir2( MainWidget->DestCnt ); + + GroupD2->GroupDir2->setTitle( tr( "GEOM_SKETCHER_DIR" ) ); + GroupD2->RB_Dir21->setText( tr( "GEOM_SKETCHER_LENGTH" ) ); + GroupD2->RB_Dir22->setText( tr( "GEOM_SKETCHER_X" ) ); + GroupD2->RB_Dir23->setText( tr( "GEOM_SKETCHER_Y" ) ); + + Group1Sel = new EntityGUI_1Sel( MainWidget->SkeletonCnt ); + + Group1Sel->TextLabel1->setText( tr( "GEOM_SKETCHER_POINT2" ) ); + Group1Sel->GroupBox1->setTitle( tr( "GEOM_SKETCHER_VALUES" ) ); + Group1Sel->buttonApply->setText( tr( "GEOM_SKETCHER_APPLY" ) ); + Group1Sel->PushButton1->setIcon( image0 ); + Group1Sel->buttonUndo->setIcon( image1 ); + Group1Sel->buttonRedo->setIcon( image2 ); Group1Sel->LineEdit1->setReadOnly( true ); - Group1Spin = new EntityGUI_1Spin(this, "Group1Spin"); - Group1Spin->GroupBox1->setTitle(tr("GEOM_SKETCHER_VALUES")); - Group1Spin->buttonApply->setText(tr("GEOM_SKETCHER_APPLY")); - Group1Spin->buttonUndo->setPixmap(image1); - Group1Spin->buttonRedo->setPixmap(image2); - QWidget::setTabOrder(Group1Spin->SpinBox_DX , Group1Spin->buttonApply); - QWidget::setTabOrder(Group1Spin->buttonApply, Group1Spin->buttonUndo); - QWidget::setTabOrder(Group1Spin->buttonUndo , Group1Spin->buttonRedo); + Group1Spin = new EntityGUI_1Spin( MainWidget->SkeletonCnt ); + Group1Spin->GroupBox1->setTitle( tr( "GEOM_SKETCHER_VALUES" ) ); + Group1Spin->buttonApply->setText( tr( "GEOM_SKETCHER_APPLY" ) ); + Group1Spin->buttonUndo->setIcon( image1 ); + Group1Spin->buttonRedo->setIcon( image2 ); - Group2Spin = new EntityGUI_2Spin(this, "Group2Spin"); - Group2Spin->GroupBox1->setTitle(tr("GEOM_SKETCHER_VALUES")); - Group2Spin->buttonApply->setText(tr("GEOM_SKETCHER_APPLY")); - Group2Spin->buttonUndo->setPixmap(image1); - Group2Spin->buttonRedo->setPixmap(image2); - QWidget::setTabOrder(Group2Spin->SpinBox_DX , Group2Spin->SpinBox_DY); - QWidget::setTabOrder(Group2Spin->SpinBox_DY , Group2Spin->buttonApply); - QWidget::setTabOrder(Group2Spin->buttonApply, Group2Spin->buttonUndo); - QWidget::setTabOrder(Group2Spin->buttonUndo , Group2Spin->buttonRedo); + Group2Spin = new EntityGUI_2Spin( MainWidget->SkeletonCnt ); + Group2Spin->GroupBox1->setTitle( tr( "GEOM_SKETCHER_VALUES" ) ); + Group2Spin->buttonApply->setText( tr( "GEOM_SKETCHER_APPLY" ) ); + Group2Spin->buttonUndo->setIcon( image1 ); + Group2Spin->buttonRedo->setIcon( image2 ); - Group3Spin = new EntityGUI_3Spin(this, "Group3Spin"); - Group3Spin->GroupBox1->setTitle(tr("GEOM_SKETCHER_VALUES")); - Group3Spin->buttonApply->setText(tr("GEOM_SKETCHER_APPLY")); - Group3Spin->buttonUndo->setPixmap(image1); - Group3Spin->buttonRedo->setPixmap(image2); - QWidget::setTabOrder(Group3Spin->SpinBox_DX , Group3Spin->SpinBox_DY); - QWidget::setTabOrder(Group3Spin->SpinBox_DY , Group3Spin->SpinBox_DZ); - QWidget::setTabOrder(Group3Spin->SpinBox_DZ , Group3Spin->buttonApply); - QWidget::setTabOrder(Group3Spin->buttonApply, Group3Spin->buttonUndo); - QWidget::setTabOrder(Group3Spin->buttonUndo , Group3Spin->buttonRedo); + Group3Spin = new EntityGUI_3Spin( MainWidget->SkeletonCnt ); + Group3Spin->GroupBox1->setTitle( tr( "GEOM_SKETCHER_VALUES" ) ); + Group3Spin->buttonApply->setText( tr( "GEOM_SKETCHER_APPLY" ) ); + Group3Spin->buttonUndo->setIcon( image1 ); + Group3Spin->buttonRedo->setIcon( image2 ); - Group4Spin = new EntityGUI_4Spin(this, "Group4Spin"); - Group4Spin->GroupBox1->setTitle(tr("GEOM_SKETCHER_VALUES")); - Group4Spin->buttonApply->setText(tr("GEOM_SKETCHER_APPLY")); - Group4Spin->buttonUndo->setPixmap(image1); - Group4Spin->buttonRedo->setPixmap(image2); - QWidget::setTabOrder(Group4Spin->SpinBox_DX , Group4Spin->SpinBox_DY); - QWidget::setTabOrder(Group4Spin->SpinBox_DY , Group4Spin->SpinBox_DZ); - QWidget::setTabOrder(Group4Spin->SpinBox_DZ , Group4Spin->SpinBox_DS); - QWidget::setTabOrder(Group4Spin->SpinBox_DS , Group4Spin->buttonApply); - QWidget::setTabOrder(Group4Spin->buttonApply, Group4Spin->buttonUndo); - QWidget::setTabOrder(Group4Spin->buttonUndo , Group4Spin->buttonRedo); + Group4Spin = new EntityGUI_4Spin( MainWidget->SkeletonCnt ); + Group4Spin->GroupBox1->setTitle( tr( "GEOM_SKETCHER_VALUES" ) ); + Group4Spin->buttonApply->setText( tr( "GEOM_SKETCHER_APPLY" ) ); + Group4Spin->buttonUndo->setIcon( image1 ); + Group4Spin->buttonRedo->setIcon( image2 ); - Layout5->addMultiCellWidget(GroupPt, 1, 1, 0, 1); - Layout5->addWidget(GroupD1, 1, 0); - Layout5->addWidget(GroupD2, 1, 1); + QGridLayout* DestCntLayout = new QGridLayout( MainWidget->DestCnt ); + DestCntLayout->setMargin( 0 ); DestCntLayout->setSpacing( 6 ); + DestCntLayout->addWidget( GroupPt, 0, 0, 1, 2 ); + DestCntLayout->addWidget( GroupD1, 1, 0 ); + DestCntLayout->addWidget( GroupD2, 1, 1 ); - Layout1->addWidget(Group1Sel, 2, 0); - Layout1->addWidget(Group1Spin, 2, 0); - Layout1->addWidget(Group2Spin, 2, 0); - Layout1->addWidget(Group3Spin, 2, 0); - Layout1->addWidget(Group4Spin, 2, 0); + QVBoxLayout* SkeletonCntlayout = new QVBoxLayout( MainWidget->SkeletonCnt ); + SkeletonCntlayout->setMargin( 0 ); SkeletonCntlayout->setSpacing( 6 ); + SkeletonCntlayout->addWidget( Group1Sel, 0, 0 ); + SkeletonCntlayout->addWidget( Group1Spin, 0, 0 ); + SkeletonCntlayout->addWidget( Group2Spin, 0, 0 ); + SkeletonCntlayout->addWidget( Group3Spin, 0, 0 ); + SkeletonCntlayout->addWidget( Group4Spin, 0, 0 ); /***************************************************************/ + QButtonGroup* ButtonGroup = new QButtonGroup( this ); + ButtonGroup->addButton( MainWidget->RB_Dest1, 1 ); + ButtonGroup->addButton( MainWidget->RB_Dest2, 0 ); + /* signals and slots connections */ - connect(buttonEnd, SIGNAL(clicked()), this, SLOT(ClickOnEnd())); - connect(buttonClose, SIGNAL(clicked()), this, SLOT(ClickOnEnd())); - connect(buttonCancel, SIGNAL(clicked()), this, SLOT(ClickOnCancel())); - connect(buttonHelp, SIGNAL( clicked() ), this, SLOT( ClickOnHelp())); + connect( MainWidget->buttonEnd, SIGNAL( clicked() ), this, SLOT( ClickOnEnd() ) ); + connect( MainWidget->buttonClose, SIGNAL( clicked() ), this, SLOT( ClickOnEnd() ) ); + connect( MainWidget->buttonCancel, SIGNAL( clicked() ), this, SLOT( ClickOnCancel() ) ); + connect( MainWidget->buttonHelp, SIGNAL( clicked() ), this, SLOT( ClickOnHelp() ) ); - connect(Group1Sel->buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(Group1Sel->buttonUndo, SIGNAL(clicked()), this, SLOT(ClickOnUndo())); - connect(Group1Sel->buttonRedo, SIGNAL(clicked()), this, SLOT(ClickOnRedo())); - connect(Group1Spin->buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(Group1Spin->buttonUndo, SIGNAL(clicked()), this, SLOT(ClickOnUndo())); - connect(Group1Spin->buttonRedo, SIGNAL(clicked()), this, SLOT(ClickOnRedo())); - connect(Group2Spin->buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(Group2Spin->buttonUndo, SIGNAL(clicked()), this, SLOT(ClickOnUndo())); - connect(Group2Spin->buttonRedo, SIGNAL(clicked()), this, SLOT(ClickOnRedo())); - connect(Group3Spin->buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(Group3Spin->buttonUndo, SIGNAL(clicked()), this, SLOT(ClickOnUndo())); - connect(Group3Spin->buttonRedo, SIGNAL(clicked()), this, SLOT(ClickOnRedo())); - connect(Group4Spin->buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(Group4Spin->buttonUndo, SIGNAL(clicked()), this, SLOT(ClickOnUndo())); - connect(Group4Spin->buttonRedo, SIGNAL(clicked()), this, SLOT(ClickOnRedo())); + connect( Group1Sel->buttonApply, SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + connect( Group1Sel->buttonUndo, SIGNAL( clicked() ), this, SLOT( ClickOnUndo() ) ); + connect( Group1Sel->buttonRedo, SIGNAL( clicked() ), this, SLOT( ClickOnRedo() ) ); + connect( Group1Spin->buttonApply, SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + connect( Group1Spin->buttonUndo, SIGNAL( clicked() ), this, SLOT( ClickOnUndo() ) ); + connect( Group1Spin->buttonRedo, SIGNAL( clicked() ), this, SLOT( ClickOnRedo() ) ); + connect( Group2Spin->buttonApply, SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + connect( Group2Spin->buttonUndo, SIGNAL( clicked() ), this, SLOT( ClickOnUndo() ) ); + connect( Group2Spin->buttonRedo, SIGNAL( clicked() ), this, SLOT( ClickOnRedo() ) ); + connect( Group3Spin->buttonApply, SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + connect( Group3Spin->buttonUndo, SIGNAL( clicked() ), this, SLOT( ClickOnUndo() ) ); + connect( Group3Spin->buttonRedo, SIGNAL( clicked() ), this, SLOT( ClickOnRedo() ) ) ; + connect( Group4Spin->buttonApply, SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + connect( Group4Spin->buttonUndo, SIGNAL( clicked() ), this, SLOT( ClickOnUndo() ) ); + connect( Group4Spin->buttonRedo, SIGNAL( clicked() ), this, SLOT( ClickOnRedo() ) ); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(TypeClicked(int))); - connect(GroupDest1, SIGNAL(clicked(int)), this, SLOT(DestClicked(int))); - connect(GroupPt->GroupPoint, SIGNAL(clicked(int)), this, SLOT(PointClicked(int))); - connect(GroupD1->GroupDir1, SIGNAL(clicked(int)), this, SLOT(Dir1Clicked(int))); - connect(GroupD2->GroupDir2, SIGNAL(clicked(int)), this, SLOT(Dir2Clicked(int))); + connect( MainWidget->ButtonGroup, SIGNAL( buttonClicked( int ) ), this, SLOT( TypeClicked( int ) ) ); + connect( ButtonGroup, SIGNAL( buttonClicked( int ) ), this, SLOT( DestClicked( int ) ) ); + connect( GroupPt->ButtonGroup, SIGNAL( buttonClicked( int ) ), this, SLOT( PointClicked( int ) ) ); + connect( GroupD1->ButtonGroup, SIGNAL( buttonClicked( int ) ), this, SLOT( Dir1Clicked( int ) ) ); + connect( GroupD2->ButtonGroup, SIGNAL( buttonClicked( int ) ), this, SLOT( Dir2Clicked( int ) )); - connect(Group1Sel->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(Group1Sel->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect( Group1Sel->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( Group1Sel->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect(Group1Spin->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(Group2Spin->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(Group2Spin->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(Group3Spin->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(Group3Spin->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(Group3Spin->SpinBox_DZ, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(Group4Spin->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(Group4Spin->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(Group4Spin->SpinBox_DZ, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(Group4Spin->SpinBox_DS, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); + connect( Group1Spin->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( Group2Spin->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( Group2Spin->SpinBox_DY, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( Group3Spin->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( Group3Spin->SpinBox_DY, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( Group3Spin->SpinBox_DZ, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( Group4Spin->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( Group4Spin->SpinBox_DY, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( Group4Spin->SpinBox_DZ, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( Group4Spin->SpinBox_DS, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); - connect(myGeometryGUI, SIGNAL(SignalDefaultStepValueChanged(double)), Group1Spin->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeometryGUI, SIGNAL(SignalDefaultStepValueChanged(double)), Group2Spin->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeometryGUI, SIGNAL(SignalDefaultStepValueChanged(double)), Group2Spin->SpinBox_DY, SLOT(SetStep(double))); - connect(myGeometryGUI, SIGNAL(SignalDefaultStepValueChanged(double)), Group3Spin->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeometryGUI, SIGNAL(SignalDefaultStepValueChanged(double)), Group3Spin->SpinBox_DY, SLOT(SetStep(double))); - connect(myGeometryGUI, SIGNAL(SignalDefaultStepValueChanged(double)), Group3Spin->SpinBox_DZ, SLOT(SetStep(double))); - connect(myGeometryGUI, SIGNAL(SignalDefaultStepValueChanged(double)), Group4Spin->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeometryGUI, SIGNAL(SignalDefaultStepValueChanged(double)), Group4Spin->SpinBox_DY, SLOT(SetStep(double))); - connect(myGeometryGUI, SIGNAL(SignalDefaultStepValueChanged(double)), Group4Spin->SpinBox_DZ, SLOT(SetStep(double))); - connect(myGeometryGUI, SIGNAL(SignalDefaultStepValueChanged(double)), Group4Spin->SpinBox_DS, SLOT(SetStep(double))); - - connect(myGeometryGUI, SIGNAL(SignalDeactivateActiveDialog()), this, SLOT(DeactivateActiveDialog())); - connect(myGeometryGUI, SIGNAL(SignalCloseAllDialogs()), this, SLOT(ClickOnCancel())); + connect( myGeometryGUI, SIGNAL( SignalDefaultStepValueChanged( double ) ), this, SLOT( SetDoubleSpinBoxStep( double ) ) ); + connect( myGeometryGUI, SIGNAL( SignalDeactivateActiveDialog() ), this, SLOT( DeactivateActiveDialog() ) ); + connect( myGeometryGUI, SIGNAL( SignalCloseAllDialogs() ), this, SLOT( ClickOnCancel() ) ); + // install event filter on spin-boxes to provide Apply action on Return pressed Group1Spin->SpinBox_DX->installEventFilter(this); Group2Spin->SpinBox_DX->installEventFilter(this); @@ -249,6 +234,7 @@ EntityGUI_SketcherDlg::EntityGUI_SketcherDlg(GeometryGUI* GUI, QWidget* parent, Init(); } + //================================================================================= // function : ~EntityGUI_SketcherDlg() // purpose : Destroys the object and frees any allocated resources @@ -258,6 +244,7 @@ EntityGUI_SketcherDlg::~EntityGUI_SketcherDlg() myGeometryGUI->SetActiveDialogBox( 0 ); } + //================================================================================= // function : eventFilter() // purpose : event filter for spin-boxes to provide Apply action on Return pressed @@ -266,7 +253,7 @@ bool EntityGUI_SketcherDlg::eventFilter (QObject* object, QEvent* event) { if (event->type() == QEvent::KeyPress) { QKeyEvent* ke = (QKeyEvent*)event; - if (ke->key() == Key_Return) { + if (ke->key() == Qt::Key_Return) { if (object == Group1Spin->SpinBox_DX) { Group1Spin->buttonApply->animateClick(); return true; @@ -289,17 +276,9 @@ bool EntityGUI_SketcherDlg::eventFilter (QObject* object, QEvent* event) } } - if (event->type() == QEvent::KeyRelease) { - // NPAL16010 (Sketcher Apply non available if only one line is modified) - // To have Apply active as soon as value text changed - QString s = ((QtxDblSpinBox*) object)->text(); - bool ok; - double newVal = s.toDouble( &ok ); - if ( ok ) - ValueChangedInSpinBox( newVal ); - } + // Fix of the NPAL16010 bug is removed, because it's not actual with the Qt-4.x - return EntityGUI_Skeleton_QTD::eventFilter(object, event); + return QDialog::eventFilter(object, event); } @@ -328,29 +307,29 @@ void EntityGUI_SketcherDlg::Init() double step = SUIT_Session::session()->resourceMgr()->doubleValue( "Geometry", "SettingsGeomStep", 100.0 ); /* min, max, step and decimals for spin boxes */ - Group1Spin->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - Group2Spin->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - Group2Spin->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - Group3Spin->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - Group3Spin->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - Group3Spin->SpinBox_DZ->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - Group4Spin->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, 0.1, DBL_DIGITS_DISPLAY); - Group4Spin->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, 0.1, DBL_DIGITS_DISPLAY); - Group4Spin->SpinBox_DZ->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - Group4Spin->SpinBox_DS->RangeStepAndValidator(COORD_MIN, COORD_MAX, 5., DBL_DIGITS_DISPLAY); + initSpinBox( Group1Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group2Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group3Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group3Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group3Spin->SpinBox_DZ, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group4Spin->SpinBox_DX, COORD_MIN, COORD_MAX, 0.1, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group4Spin->SpinBox_DY, COORD_MIN, COORD_MAX, 0.1, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group4Spin->SpinBox_DZ, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group4Spin->SpinBox_DS, COORD_MIN, COORD_MAX, 5., 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY /* displays Dialog */ - GroupConstructors->setEnabled(false); - GroupDest1->setEnabled(false); - setEnabledUndo(false); - setEnabledRedo(false); + MainWidget->GroupConstructors->setEnabled( false ); + MainWidget->GroupDest1->setEnabled( false ); + setEnabledUndo( false ); + setEnabledRedo( false ); - RadioButton1->setChecked(true); + MainWidget->RadioButton1->setChecked( true ); resize( 0, 0 ); - TypeClicked(0); + TypeClicked( 0 ); - GEOMBase_Helper::displayPreview(false, true, true, myLineWidth); + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); } @@ -360,7 +339,7 @@ void EntityGUI_SketcherDlg::Init() //================================================================================= void EntityGUI_SketcherDlg::InitClick() { - disconnect(myGeometryGUI->getApp()->selectionMgr(), 0, this, 0); + disconnect( myGeometryGUI->getApp()->selectionMgr(), 0, this, 0 ); Group1Sel->hide(); Group1Spin->hide(); @@ -368,7 +347,7 @@ void EntityGUI_SketcherDlg::InitClick() Group3Spin->hide(); Group4Spin->hide(); - resize(0, 0); + resize( 0, 0 ); } @@ -376,22 +355,20 @@ void EntityGUI_SketcherDlg::InitClick() // function : TypeClicked() // purpose : Radio button management //================================================================================= -void EntityGUI_SketcherDlg::TypeClicked(int constructorId) +void EntityGUI_SketcherDlg::TypeClicked( int constructorId ) { myConstructorId = constructorId; - if ( myConstructorId == 0 ) // SEGMENT - { - GroupD2->setEnabled(true); - RB_Dest1->setEnabled(true); - RB_Dest1->setChecked(true); - DestClicked(1); + if ( myConstructorId == 0 ) { // SEGMENT + GroupD2->setEnabled( true ); + MainWidget->RB_Dest1->setEnabled( true ); + MainWidget->RB_Dest1->setChecked( true ); + DestClicked( 1 ); } - else if ( myConstructorId == 1 ) // ARC - { - GroupD2->setEnabled(false); - RB_Dest1->setEnabled(false); - RB_Dest2->setChecked(true); - DestClicked(0); + else if ( myConstructorId == 1 ) { // ARC + GroupD2->setEnabled( false ); + MainWidget->RB_Dest1->setEnabled( false ); + MainWidget->RB_Dest2->setChecked( true ); + DestClicked( 0 ); } } @@ -406,18 +383,18 @@ void EntityGUI_SketcherDlg::DestClicked( int constructorId ) GroupD1->hide(); GroupD2->hide(); - if ( constructorId == 1 ) - { // Point - GroupPt->RB_Point1->setChecked(true); + if ( constructorId == 1 ) { + // Point + GroupPt->RB_Point1->setChecked( true ); GroupPt->show(); - PointClicked(1); // XY + PointClicked( 1 ); // XY } - else if ( constructorId == 0 ) - { // Direction - GroupD1->RB_Dir11->setChecked(true); + else if ( constructorId == 0 ) { + // Direction + GroupD1->RB_Dir11->setChecked( true ); GroupD1->show(); GroupD2->show(); - Dir1Clicked(2); // Angle + Dir1Clicked( 2 ); // Angle } } @@ -426,53 +403,49 @@ void EntityGUI_SketcherDlg::DestClicked( int constructorId ) // function : PointClicked() // purpose : Radio button management //================================================================================= -void EntityGUI_SketcherDlg::PointClicked(int constructorId) +void EntityGUI_SketcherDlg::PointClicked( int constructorId ) { InitClick(); // Get setting of step value from file configuration - double step = SUIT_Session::session()->resourceMgr()->doubleValue("Geometry", "SettingsGeomStep", 100.0); + double step = SUIT_Session::session()->resourceMgr()->doubleValue( "Geometry", "SettingsGeomStep", 100.0 ); - if ( myConstructorId == 0 ) - { // SEGMENT - if ( constructorId == 1 ) - { // XY + if ( myConstructorId == 0 ) { // SEGMENT + if ( constructorId == 1 ) { // XY mySketchType = PT_ABS; - Group2Spin->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - Group2Spin->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - Group2Spin->TextLabel1->setText(tr("GEOM_SKETCHER_X2")); - Group2Spin->TextLabel2->setText(tr("GEOM_SKETCHER_Y2")); + initSpinBox( Group2Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + Group2Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_X2" ) ); + Group2Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_Y2" ) ); myX = 0.0; - Group2Spin->SpinBox_DX->SetValue(myX); + Group2Spin->SpinBox_DX->setValue( myX ); myY = 0.0; - Group2Spin->SpinBox_DY->SetValue(myY); + Group2Spin->SpinBox_DY->setValue( myY ); Group2Spin->show(); Group2Spin->buttonApply->setFocus(); - GEOMBase_Helper::displayPreview(false, true, true, myLineWidth); + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); } - else if ( constructorId == 0 ) - { // DXDY + else if ( constructorId == 0 ) { // DXDY mySketchType = PT_RELATIVE; - Group2Spin->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - Group2Spin->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - Group2Spin->TextLabel1->setText(tr("GEOM_SKETCHER_DX2")); - Group2Spin->TextLabel2->setText(tr("GEOM_SKETCHER_DY2")); + initSpinBox( Group2Spin->SpinBox_DX, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + Group2Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_DX2" ) ); + Group2Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_DY2" ) ); myDX = 0.0; - Group2Spin->SpinBox_DX->SetValue(myDX); + Group2Spin->SpinBox_DX->setValue( myDX ); myDY = 0.0; - Group2Spin->SpinBox_DY->SetValue(myDY); + Group2Spin->SpinBox_DY->setValue( myDY ); Group2Spin->show(); Group2Spin->buttonApply->setFocus(); - GEOMBase_Helper::displayPreview(false, true, true, myLineWidth); + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); } - else if ( constructorId == 2 ) - { // Selection + else if ( constructorId == 2 ) { // Selection mySketchType = PT_SEL; myEditCurrentArgument = Group1Sel->LineEdit1; - connect(myGeometryGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeometryGUI->getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); Group1Sel->show(); Group1Sel->buttonApply->setFocus(); SelectionIntoArgument(); @@ -485,11 +458,11 @@ void EntityGUI_SketcherDlg::PointClicked(int constructorId) // function : Dir1Clicked() // purpose : Radio button management //================================================================================= -void EntityGUI_SketcherDlg::Dir1Clicked(int constructorId) +void EntityGUI_SketcherDlg::Dir1Clicked( int constructorId ) { myConstructorDirId = constructorId; - GroupD2->RB_Dir21->setChecked(true); - Dir2Clicked(2); + GroupD2->RB_Dir21->setChecked( true ); + Dir2Clicked( 2 ); } @@ -497,209 +470,183 @@ void EntityGUI_SketcherDlg::Dir1Clicked(int constructorId) // function : Dir2Clicked() // purpose : Radio button management //================================================================================= -void EntityGUI_SketcherDlg::Dir2Clicked(int constructorId) +void EntityGUI_SketcherDlg::Dir2Clicked( int constructorId ) { InitClick(); myAngle = 0.0; // Get setting of step value from file configuration - double step = SUIT_Session::session()->resourceMgr()->doubleValue("Geometry", "SettingsGeomStep", 100.0); + double step = SUIT_Session::session()->resourceMgr()->doubleValue( "Geometry", "SettingsGeomStep", 100.0 ); - if ( myConstructorId == 0 ) - { // SEGMENT + if ( myConstructorId == 0 ) { // SEGMENT myX = 0.0; myY = 0.0; myLength = 100.0; - if ( myConstructorDirId == 2 ) - { // Angle - Group2Spin->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, 5., DBL_DIGITS_DISPLAY); - Group2Spin->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - Group2Spin->TextLabel1->setText(tr("GEOM_SKETCHER_ANGLE2")); - Group2Spin->SpinBox_DX->SetValue(myAngle); + if ( myConstructorDirId == 2 ) { // Angle + initSpinBox( Group2Spin->SpinBox_DX, COORD_MIN, COORD_MAX, 5., 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + Group2Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_ANGLE2" ) ); + Group2Spin->SpinBox_DX->setValue( myAngle ); Group2Spin->buttonApply->setFocus(); Group2Spin->show(); - if ( constructorId == 2 ) - { // Length - mySketchType = DIR_ANGLE_LENGTH; - Group2Spin->TextLabel2->setText(tr("GEOM_SKETCHER_LENGTH2")); - Group2Spin->SpinBox_DY->SetValue(myLength); + if ( constructorId == 2 ) { // Length + mySketchType = DIR_ANGLE_LENGTH; + Group2Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_LENGTH2" ) ); + Group2Spin->SpinBox_DY->setValue( myLength ); } - else if ( constructorId == 0 ) - { // X - mySketchType = DIR_ANGLE_X; - Group2Spin->TextLabel2->setText(tr("GEOM_SKETCHER_X3")); - Group2Spin->SpinBox_DY->SetValue(myX); + else if ( constructorId == 0 ) { // X + mySketchType = DIR_ANGLE_X; + Group2Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_X3" ) ); + Group2Spin->SpinBox_DY->setValue( myX ); } - else if ( constructorId == 1 ) - { // Y - mySketchType = DIR_ANGLE_Y; - Group2Spin->TextLabel2->setText(tr("GEOM_SKETCHER_Y3")); - Group2Spin->SpinBox_DY->SetValue(myY); + else if ( constructorId == 1 ) { // Y + mySketchType = DIR_ANGLE_Y; + Group2Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_Y3" ) ); + Group2Spin->SpinBox_DY->setValue( myY ); } } - else if ( myConstructorDirId == 0 ) - { // Perpendicular + else if ( myConstructorDirId == 0 ) { // Perpendicular Group1Spin->show(); Group1Spin->buttonApply->setFocus(); - if ( constructorId == 2 ) - { // Length - mySketchType = DIR_PER_LENGTH; - Group1Spin->TextLabel1->setText(tr("GEOM_SKETCHER_LENGTH2")); - Group1Spin->SpinBox_DX->SetValue(myLength); + if ( constructorId == 2 ) { // Length + mySketchType = DIR_PER_LENGTH; + Group1Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_LENGTH2" ) ); + Group1Spin->SpinBox_DX->setValue( myLength ); } - else if ( constructorId == 0 ) - { // X - mySketchType = DIR_PER_X; - Group1Spin->TextLabel1->setText(tr("GEOM_SKETCHER_X3")); - Group1Spin->SpinBox_DX->SetValue(myX); + else if ( constructorId == 0 ) { // X + mySketchType = DIR_PER_X; + Group1Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_X3" ) ); + Group1Spin->SpinBox_DX->setValue( myX ); } - else if ( constructorId == 1 ) - { // Y - mySketchType = DIR_PER_Y; - Group1Spin->TextLabel1->setText(tr("GEOM_SKETCHER_Y3")); - Group1Spin->SpinBox_DX->SetValue(myY); + else if ( constructorId == 1 ) { // Y + mySketchType = DIR_PER_Y; + Group1Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_Y3" ) ); + Group1Spin->SpinBox_DX->setValue( myY ); } } - else if ( myConstructorDirId == 1 ) - { // Tangent + else if ( myConstructorDirId == 1 ) { // Tangent Group1Spin->show(); Group1Spin->buttonApply->setFocus(); - if ( constructorId == 2 ) - { // Length - mySketchType = DIR_TAN_LENGTH; - Group1Spin->TextLabel1->setText(tr("GEOM_SKETCHER_LENGTH2")); - Group1Spin->SpinBox_DX->SetValue(myLength); + if ( constructorId == 2 ) { // Length + mySketchType = DIR_TAN_LENGTH; + Group1Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_LENGTH2" ) ); + Group1Spin->SpinBox_DX->setValue( myLength ); } - else if ( constructorId == 0 ) - { // X - mySketchType = DIR_TAN_X; - Group1Spin->TextLabel1->setText(tr("GEOM_SKETCHER_X3")); - Group1Spin->SpinBox_DX->SetValue(myX); + else if ( constructorId == 0 ) { // X + mySketchType = DIR_TAN_X; + Group1Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_X3" ) ); + Group1Spin->SpinBox_DX->setValue( myX ); } - else if ( constructorId == 1 ) - { // Y - mySketchType = DIR_TAN_Y; - Group1Spin->TextLabel1->setText(tr("GEOM_SKETCHER_Y3")); - Group1Spin->SpinBox_DX->SetValue(myY); + else if ( constructorId == 1 ) { // Y + mySketchType = DIR_TAN_Y; + Group1Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_Y3" ) ); + Group1Spin->SpinBox_DX->setValue( myY ); } } - else if ( myConstructorDirId == 3 ) - { // DXDY - Group3Spin->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, 0.1, DBL_DIGITS_DISPLAY); - Group3Spin->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, 0.1, DBL_DIGITS_DISPLAY); - Group3Spin->SpinBox_DZ->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - Group3Spin->TextLabel1->setText(tr("GEOM_SKETCHER_VX2")); - Group3Spin->TextLabel2->setText(tr("GEOM_SKETCHER_VY2")); + else if ( myConstructorDirId == 3 ) { // DXDY + initSpinBox( Group3Spin->SpinBox_DX, COORD_MIN, COORD_MAX, 0.1, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group3Spin->SpinBox_DY, COORD_MIN, COORD_MAX, 0.1, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group3Spin->SpinBox_DZ, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + Group3Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_VX2" ) ); + Group3Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_VY2" ) ); myDX = 0.0; - Group3Spin->SpinBox_DX->SetValue(myDX); + Group3Spin->SpinBox_DX->setValue( myDX ); myDY = 0.0; - Group3Spin->SpinBox_DY->SetValue(myDY); + Group3Spin->SpinBox_DY->setValue( myDY ); Group3Spin->show(); Group3Spin->buttonApply->setFocus(); - if ( constructorId == 2 ) - { // Length - mySketchType = DIR_DXDY_LENGTH; - Group3Spin->TextLabel3->setText(tr("GEOM_SKETCHER_LENGTH2")); - Group3Spin->SpinBox_DZ->SetValue(myLength); + if ( constructorId == 2 ) { // Length + mySketchType = DIR_DXDY_LENGTH; + Group3Spin->TextLabel3->setText( tr( "GEOM_SKETCHER_LENGTH2" ) ); + Group3Spin->SpinBox_DZ->setValue( myLength ); } - else if ( constructorId == 0 ) - { // X - mySketchType = DIR_DXDY_X; - Group3Spin->TextLabel3->setText(tr("GEOM_SKETCHER_X3")); - Group3Spin->SpinBox_DZ->SetValue(myX); + else if ( constructorId == 0 ) { // X + mySketchType = DIR_DXDY_X; + Group3Spin->TextLabel3->setText( tr( "GEOM_SKETCHER_X3" ) ); + Group3Spin->SpinBox_DZ->setValue( myX ); } - else if ( constructorId == 1 ) - { // Y - mySketchType = DIR_DXDY_Y; - Group3Spin->TextLabel3->setText(tr("GEOM_SKETCHER_Y3")); - Group3Spin->SpinBox_DZ->SetValue(myY); + else if ( constructorId == 1 ) { // Y + mySketchType = DIR_DXDY_Y; + Group3Spin->TextLabel3->setText( tr( "GEOM_SKETCHER_Y3" ) ); + Group3Spin->SpinBox_DZ->setValue( myY ); } } } - else if ( myConstructorId == 1 ) - { // ARC - if ( myConstructorDirId == 2 ) - { // Angle - if ( constructorId == 2 ) - { // Length - mySketchType = DIR_ANGLE_LENGTH; - Group3Spin->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, 5., DBL_DIGITS_DISPLAY); - Group3Spin->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - Group3Spin->SpinBox_DZ->RangeStepAndValidator(COORD_MIN, COORD_MAX, 5., DBL_DIGITS_DISPLAY); - Group3Spin->TextLabel1->setText(tr("GEOM_SKETCHER_ANGLE2")); - Group3Spin->TextLabel2->setText(tr("GEOM_SKETCHER_RADIUS2")); - Group3Spin->TextLabel3->setText(tr("GEOM_SKETCHER_ANGLE2")); - Group3Spin->SpinBox_DX->SetValue(myAngle); - myRadius = 100.0; - Group3Spin->SpinBox_DY->SetValue(myRadius); - myLength = 30.0; - Group3Spin->SpinBox_DZ->SetValue(myLength); - Group3Spin->show(); - Group3Spin->buttonApply->setFocus(); + else if ( myConstructorId == 1 ) { // ARC + if ( myConstructorDirId == 2 ) { // Angle + if ( constructorId == 2 ) { // Length + mySketchType = DIR_ANGLE_LENGTH; + initSpinBox( Group3Spin->SpinBox_DX, COORD_MIN, COORD_MAX, 5., 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group3Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group3Spin->SpinBox_DZ, COORD_MIN, COORD_MAX, 5., 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + Group3Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_ANGLE2" ) ); + Group3Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_RADIUS2" ) ); + Group3Spin->TextLabel3->setText( tr( "GEOM_SKETCHER_ANGLE2" )); + Group3Spin->SpinBox_DX->setValue( myAngle ); + myRadius = 100.0; + Group3Spin->SpinBox_DY->setValue( myRadius ); + myLength = 30.0; + Group3Spin->SpinBox_DZ->setValue( myLength ); + Group3Spin->show(); + Group3Spin->buttonApply->setFocus(); } } - else if ( myConstructorDirId == 0 ) - { // Perpendicular - if ( constructorId == 2 ) - { // Length - mySketchType = DIR_PER_LENGTH; - Group2Spin->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - Group2Spin->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, 5., DBL_DIGITS_DISPLAY); - Group2Spin->TextLabel1->setText(tr("GEOM_SKETCHER_RADIUS2")); - Group2Spin->TextLabel2->setText(tr("GEOM_SKETCHER_ANGLE2")); - myRadius = 100.0; - Group2Spin->SpinBox_DX->SetValue(myRadius); - myLength = 30.0; - Group2Spin->SpinBox_DY->SetValue(myLength); - Group2Spin->show(); - Group2Spin->buttonApply->setFocus(); + else if ( myConstructorDirId == 0 ) { // Perpendicular + if ( constructorId == 2 ) { // Length + mySketchType = DIR_PER_LENGTH; + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, 5., 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + Group2Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_RADIUS2" ) ); + Group2Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_ANGLE2" ) ); + myRadius = 100.0; + Group2Spin->SpinBox_DX->setValue( myRadius ); + myLength = 30.0; + Group2Spin->SpinBox_DY->setValue( myLength ); + Group2Spin->show(); + Group2Spin->buttonApply->setFocus(); } } - else if ( myConstructorDirId == 1 ) - { // Tangent - if ( constructorId == 2 ) - { // Length - mySketchType = DIR_TAN_LENGTH; - Group2Spin->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - Group2Spin->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, 5., DBL_DIGITS_DISPLAY); - Group2Spin->TextLabel1->setText(tr("GEOM_SKETCHER_RADIUS2")); - Group2Spin->TextLabel2->setText(tr("GEOM_SKETCHER_ANGLE2")); - myRadius = 100.0; - Group2Spin->SpinBox_DX->SetValue(myRadius); - myLength = 30.0; - Group2Spin->SpinBox_DY->SetValue(myLength); - Group2Spin->show(); - Group2Spin->buttonApply->setFocus(); + else if ( myConstructorDirId == 1 ) { // Tangent + if ( constructorId == 2 ) { // Length + mySketchType = DIR_TAN_LENGTH; + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( Group2Spin->SpinBox_DY, COORD_MIN, COORD_MAX, 5., 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + Group2Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_RADIUS2" ) ); + Group2Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_ANGLE2" ) ); + myRadius = 100.0; + Group2Spin->SpinBox_DX->setValue( myRadius ); + myLength = 30.0; + Group2Spin->SpinBox_DY->setValue( myLength ); + Group2Spin->show(); + Group2Spin->buttonApply->setFocus(); } } - else if ( myConstructorDirId == 3 ) - { // DXDY - if ( constructorId == 2 ) - { // Length - mySketchType = DIR_DXDY_LENGTH; - Group4Spin->TextLabel1->setText(tr("GEOM_SKETCHER_VX2")); - Group4Spin->TextLabel2->setText(tr("GEOM_SKETCHER_VY2")); - Group4Spin->TextLabel3->setText(tr("GEOM_SKETCHER_RADIUS2")); - Group4Spin->TextLabel4->setText(tr("GEOM_SKETCHER_ANGLE2")); - myDX = 0.0; - Group4Spin->SpinBox_DX->SetValue(myDX); - myDY = 0.0; - Group4Spin->SpinBox_DY->SetValue(myDY); - myRadius = 100.0; - Group4Spin->SpinBox_DZ->SetValue(myRadius); - myLength = 30.0; - Group4Spin->SpinBox_DS->SetValue(myLength); - Group4Spin->show(); - Group4Spin->buttonApply->setFocus(); + else if ( myConstructorDirId == 3 ) { // DXDY + if ( constructorId == 2 ) { // Length + mySketchType = DIR_DXDY_LENGTH; + Group4Spin->TextLabel1->setText( tr( "GEOM_SKETCHER_VX2" ) ); + Group4Spin->TextLabel2->setText( tr( "GEOM_SKETCHER_VY2" ) ); + Group4Spin->TextLabel3->setText( tr( "GEOM_SKETCHER_RADIUS2" ) ); + Group4Spin->TextLabel4->setText( tr( "GEOM_SKETCHER_ANGLE2" ) ); + myDX = 0.0; + Group4Spin->SpinBox_DX->setValue( myDX ); + myDY = 0.0; + Group4Spin->SpinBox_DY->setValue( myDY ); + myRadius = 100.0; + Group4Spin->SpinBox_DZ->setValue( myRadius ); + myLength = 30.0; + Group4Spin->SpinBox_DS->setValue( myLength ); + Group4Spin->show(); + Group4Spin->buttonApply->setFocus(); } } } - GEOMBase_Helper::displayPreview(false, true, true, myLineWidth); + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); } @@ -719,44 +666,41 @@ void EntityGUI_SketcherDlg::ClickOnCancel() //================================================================================= void EntityGUI_SketcherDlg::ClickOnEnd() { - if ( sender() == buttonClose ) - { + if ( sender() == MainWidget->buttonClose ) { // Verify validity of commands - if ( myCommand.count() <= 2 ) - { - SUIT_MessageBox::error1( SUIT_Session::session()->activeApplication()->desktop(), - tr( "GEOM_ERROR_STATUS" ), tr( "CANNOT_CLOSE" ), tr( "BUT_OK" ) ); + if ( myCommand.count() <= 2 ) { + SUIT_MessageBox::critical( SUIT_Session::session()->activeApplication()->desktop(), + tr( "GEOM_ERROR_STATUS" ), tr( "CANNOT_CLOSE" ), tr( "BUT_OK" ) ); return; } - QString Command = myCommand.join( "" ) + GetNewCommand(); - Sketcher_Profile aProfile (Command.ascii()); + QString Parameters; + QString Command = myCommand.join( "" ) + GetNewCommand( Parameters ); + Sketcher_Profile aProfile( Command.toAscii() ); Command = myCommand.join( "" ); - aProfile = Sketcher_Profile(Command.ascii()); + aProfile = Sketcher_Profile( Command.toAscii() ); TopoDS_Shape myShape; if ( aProfile.IsDone() ) myShape = aProfile.GetShape(); - if(myShape.ShapeType() != TopAbs_VERTEX) + if ( myShape.ShapeType() != TopAbs_VERTEX ) myCommand.append( ":WW" ); } - else - { + else { // PAL16008 (Sketcher Validation should be equal to Apply&Close) - if (Group1Spin->buttonApply->isEnabled() && Group1Spin->isVisible() || - Group2Spin->buttonApply->isEnabled() && Group2Spin->isVisible() || - Group3Spin->buttonApply->isEnabled() && Group3Spin->isVisible() || - Group4Spin->buttonApply->isEnabled() && Group4Spin->isVisible() || - Group1Sel ->buttonApply->isEnabled() && Group1Sel->isVisible() ) - { + if ( Group1Spin->buttonApply->isEnabled() && Group1Spin->isVisible() || + Group2Spin->buttonApply->isEnabled() && Group2Spin->isVisible() || + Group3Spin->buttonApply->isEnabled() && Group3Spin->isVisible() || + Group4Spin->buttonApply->isEnabled() && Group4Spin->isVisible() || + Group1Sel ->buttonApply->isEnabled() && Group1Sel->isVisible() ) { ClickOnApply(); } myIsAllAdded = true; } - if( myCommand.size() > 2 ) - if( !onAccept() ) + if ( myCommand.size() > 2 ) + if ( !onAccept() ) return; close(); @@ -768,36 +712,42 @@ void EntityGUI_SketcherDlg::ClickOnEnd() //================================================================================= bool EntityGUI_SketcherDlg::ClickOnApply() { - if (sender() && sender()->inherits("QPushButton")) - ((QPushButton*)sender())->setFocus(); // to update value of currently edited spin-box (PAL11948) + if ( sender() && sender()->inherits( "QPushButton" ) ) + ( (QPushButton*)sender() )->setFocus(); // to update value of currently edited spin-box (PAL11948) - myCommand.append( GetNewCommand() ); + QString aParameters; + myCommand.append( GetNewCommand( aParameters ) ); mySketchState = NEXT_POINT; myUndoCommand.clear(); myUndoCommand.append( "Sketcher" ); - GroupConstructors->setEnabled(true); - GroupDest1->setEnabled(true); - setEnabledUndo(true); - setEnabledRedo(false); + myParameters.append( aParameters ); + myUndoParameters.clear(); - GEOMBase_Helper::displayPreview(false, true, true, myLineWidth); + MainWidget->GroupConstructors->setEnabled( true ); + MainWidget->GroupDest1->setEnabled( true ); + setEnabledUndo( true ); + setEnabledRedo( false ); + + myIsApply = true; + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); + myIsApply = false; // Set focus to SpinBox_DX - if (sender() == Group1Spin->buttonApply) { + if ( sender() == Group1Spin->buttonApply ) { (Group1Spin->SpinBox_DX)->setFocus(); (Group1Spin->SpinBox_DX)->selectAll(); } - else if (sender() == Group2Spin->buttonApply) { + else if ( sender() == Group2Spin->buttonApply ) { (Group2Spin->SpinBox_DX)->setFocus(); (Group2Spin->SpinBox_DX)->selectAll(); } - else if (sender() == Group3Spin->buttonApply) { + else if ( sender() == Group3Spin->buttonApply ) { (Group3Spin->SpinBox_DX)->setFocus(); (Group3Spin->SpinBox_DX)->selectAll(); } - else if (sender() == Group4Spin->buttonApply) { + else if ( sender() == Group4Spin->buttonApply ) { (Group4Spin->SpinBox_DX)->setFocus(); (Group4Spin->SpinBox_DX)->selectAll(); } @@ -811,21 +761,21 @@ bool EntityGUI_SketcherDlg::ClickOnApply() //================================================================================= void EntityGUI_SketcherDlg::ClickOnHelp() { - LightApp_Application* app = (LightApp_Application*)(SUIT_Session::session()->activeApplication()); - if (app) - app->onHelpContextModule(myGeometryGUI ? app->moduleName(myGeometryGUI->moduleName()) : QString(""), myHelpFileName); + LightApp_Application* app = (LightApp_Application*)( SUIT_Session::session()->activeApplication() ); + if ( app ) + app->onHelpContextModule( myGeometryGUI ? app->moduleName( myGeometryGUI->moduleName() ) : QString( "" ), myHelpFileName ); else { - QString platform; + QString platform; #ifdef WIN32 - platform = "winapplication"; + platform = "winapplication"; #else - platform = "application"; + platform = "application"; #endif - SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"), - QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE"). - arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(myHelpFileName), - QObject::tr("BUT_OK")); + SUIT_MessageBox::warning( 0, QObject::tr( "WRN_WARNING" ), + QObject::tr( "EXTERNAL_BROWSER_CANNOT_SHOW_PAGE" ). + arg( app->resourceMgr()->stringValue( "ExternalBrowser", platform ) ).arg( myHelpFileName ), + QObject::tr( "BUT_OK" ) ); } } @@ -838,20 +788,23 @@ void EntityGUI_SketcherDlg::ClickOnUndo() myUndoCommand.append( myCommand.last() ); myCommand.pop_back(); - if(myCommand.count() == 1) { + myUndoParameters.append( myParameters.last() ); + myParameters.pop_back(); + + if ( myCommand.count() == 1 ) { mySketchState = FIRST_POINT; - RadioButton1->setChecked(true); - TypeClicked(0); + MainWidget->RadioButton1->setChecked( true ); + TypeClicked( 0 ); - GroupConstructors->setEnabled(false); - GroupDest1->setEnabled(false); - setEnabledUndo(false); + MainWidget->GroupConstructors->setEnabled( false ); + MainWidget->GroupDest1->setEnabled( false ); + setEnabledUndo( false ); } - setEnabledRedo(true); + setEnabledRedo( true ); - GEOMBase_Helper::displayPreview(false, true, true, myLineWidth); + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); } //================================================================================= @@ -863,42 +816,45 @@ void EntityGUI_SketcherDlg::ClickOnRedo() myCommand.append( myUndoCommand.last() ); myUndoCommand.pop_back(); + myParameters.append( myUndoParameters.last() ); + myUndoParameters.pop_back(); + mySketchState = NEXT_POINT; - GroupConstructors->setEnabled(true); - GroupDest1->setEnabled(true); - setEnabledUndo(true); + MainWidget->GroupConstructors->setEnabled( true ); + MainWidget->GroupDest1->setEnabled( true ); + setEnabledUndo( true ); - if(myUndoCommand.count() == 1) - setEnabledRedo(false); + if ( myUndoCommand.count() == 1 ) + setEnabledRedo( false ); - GEOMBase_Helper::displayPreview(false, true, true, myLineWidth); + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); } //================================================================================= // function : setEnabledUndo() // purpose : //================================================================================= -void EntityGUI_SketcherDlg::setEnabledUndo(bool value) +void EntityGUI_SketcherDlg::setEnabledUndo( bool value ) { - Group1Sel->buttonUndo->setEnabled(value); - Group1Spin->buttonUndo->setEnabled(value); - Group2Spin->buttonUndo->setEnabled(value); - Group3Spin->buttonUndo->setEnabled(value); - Group4Spin->buttonUndo->setEnabled(value); + Group1Sel->buttonUndo->setEnabled( value ); + Group1Spin->buttonUndo->setEnabled( value ); + Group2Spin->buttonUndo->setEnabled( value ); + Group3Spin->buttonUndo->setEnabled( value ); + Group4Spin->buttonUndo->setEnabled( value ); } //================================================================================= // function : setEnabledRedo() // purpose : //================================================================================= -void EntityGUI_SketcherDlg::setEnabledRedo(bool value) +void EntityGUI_SketcherDlg::setEnabledRedo( bool value ) { - Group1Sel->buttonRedo->setEnabled(value); - Group1Spin->buttonRedo->setEnabled(value); - Group2Spin->buttonRedo->setEnabled(value); - Group3Spin->buttonRedo->setEnabled(value); - Group4Spin->buttonRedo->setEnabled(value); + Group1Sel->buttonRedo->setEnabled( value ); + Group1Spin->buttonRedo->setEnabled( value ); + Group2Spin->buttonRedo->setEnabled( value ); + Group3Spin->buttonRedo->setEnabled( value ); + Group4Spin->buttonRedo->setEnabled( value ); } //================================================================================= @@ -907,23 +863,26 @@ void EntityGUI_SketcherDlg::setEnabledRedo(bool value) //================================================================================= void EntityGUI_SketcherDlg::SelectionIntoArgument() { - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); myX = myLastX1; myY = myLastY1; - int nbSel = IObjectCount(); - if ( nbSel == 1 && myEditCurrentArgument == Group1Sel->LineEdit1 ) - { + LightApp_SelectionMgr* aSelMgr = myGeometryGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + int nbSel = aSelList.Extent(); + if (nbSel == 1 && myEditCurrentArgument == Group1Sel->LineEdit1) { Standard_Boolean aRes = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject( firstIObject(), aRes ); - if ( !CORBA::is_nil( aSelectedObject ) && aRes ) { + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aRes); + if (!CORBA::is_nil(aSelectedObject) && aRes) { TopoDS_Shape aShape; - if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_VERTEX ) ) { + if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_VERTEX)) { gp_Trsf aTrans; gp_Ax3 aWPlane = myGeometryGUI->GetWorkingPlane(); aTrans.SetTransformation(aWPlane); - BRepBuilderAPI_Transform aTransformation(aShape, aTrans, Standard_False); + BRepBuilderAPI_Transform aTransformation (aShape, aTrans, Standard_False); aShape = aTransformation.Shape(); gp_Pnt aPnt; @@ -936,7 +895,7 @@ void EntityGUI_SketcherDlg::SelectionIntoArgument() } } - GEOMBase_Helper::displayPreview(false, true, true, myLineWidth); + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); } @@ -946,8 +905,7 @@ void EntityGUI_SketcherDlg::SelectionIntoArgument() //================================================================================= void EntityGUI_SketcherDlg::SetEditCurrentArgument() { - if ( sender() == Group1Sel->PushButton1 ) - { + if ( sender() == Group1Sel->PushButton1 ) { myEditCurrentArgument = Group1Sel->LineEdit1; myEditCurrentArgument->setFocus(); } @@ -961,17 +919,21 @@ void EntityGUI_SketcherDlg::SetEditCurrentArgument() //================================================================================= void EntityGUI_SketcherDlg::LineEditReturnPressed() { - if ( sender() == Group1Sel->LineEdit1 ) - { + if ( sender() == Group1Sel->LineEdit1 ) { myEditCurrentArgument = Group1Sel->LineEdit1; - /* User name of object input management */ - /* If successfull the selection is changed and signal emitted... */ - /* so SelectionIntoArgument() is automatically called. */ - const QString objectUserName = myEditCurrentArgument->text(); - QWidget* thisWidget = (QWidget*)this; - if(GEOMBase::SelectionByNameInDialogs(thisWidget, objectUserName, selectedIO())) - myEditCurrentArgument->setText(objectUserName); + /* User name of object input management */ + /* If successfull the selection is changed and signal emitted... */ + /* so SelectionIntoArgument() is automatically called. */ + const QString objectUserName = myEditCurrentArgument->text(); + QWidget* thisWidget = (QWidget*)this; + + LightApp_SelectionMgr* aSelMgr = myGeometryGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (GEOMBase::SelectionByNameInDialogs(thisWidget, objectUserName, aSelList)) + myEditCurrentArgument->setText( objectUserName ); } } @@ -986,8 +948,8 @@ void EntityGUI_SketcherDlg::DeactivateActiveDialog() setEnabled( false ); globalSelection(); - disconnect(myGeometryGUI->getApp()->selectionMgr(), 0, this, 0); - myGeometryGUI->SetActiveDialogBox(0); + disconnect( myGeometryGUI->getApp()->selectionMgr(), 0, this, 0 ); + myGeometryGUI->SetActiveDialogBox( 0 ); } @@ -998,11 +960,11 @@ void EntityGUI_SketcherDlg::DeactivateActiveDialog() void EntityGUI_SketcherDlg::ActivateThisDialog() { myGeometryGUI->EmitSignalDeactivateDialog(); - setEnabled(true); - myGeometryGUI->SetActiveDialogBox((QDialog*)this); + setEnabled( true ); + myGeometryGUI->SetActiveDialogBox( this ); - connect(myGeometryGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeometryGUI->getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); //myGeometryGUI->SetState( 0 ); globalSelection( GEOM_POINT ); @@ -1010,7 +972,7 @@ void EntityGUI_SketcherDlg::ActivateThisDialog() myEditCurrentArgument = Group1Sel->LineEdit1; myEditCurrentArgument->setFocus(); - GEOMBase_Helper::displayPreview(false, true, true, myLineWidth); + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); } @@ -1018,9 +980,9 @@ void EntityGUI_SketcherDlg::ActivateThisDialog() // function : enterEvent [REDEFINED] // purpose : //================================================================================= -void EntityGUI_SketcherDlg::enterEvent(QEvent* e) +void EntityGUI_SketcherDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled()) + if ( !MainWidget->GroupConstructors->isEnabled() ) ActivateThisDialog(); } @@ -1029,10 +991,11 @@ void EntityGUI_SketcherDlg::enterEvent(QEvent* e) // function : closeEvent() // purpose : //================================================================================= -void EntityGUI_SketcherDlg::closeEvent(QCloseEvent* e) +void EntityGUI_SketcherDlg::closeEvent( QCloseEvent* e ) { //myGeometryGUI->SetState( -1 ); - disconnect(myGeometryGUI->getApp()->selectionMgr(), 0, this, 0); + disconnect( myGeometryGUI->getApp()->selectionMgr(), 0, this, 0 ); + myGeometryGUI->getApp()->updateActions(); QDialog::closeEvent( e ); } @@ -1041,233 +1004,184 @@ void EntityGUI_SketcherDlg::closeEvent(QCloseEvent* e) // function : ValueChangedInSpinBox() // purpose : //================================================================================= -void EntityGUI_SketcherDlg::ValueChangedInSpinBox(double newValue) +void EntityGUI_SketcherDlg::ValueChangedInSpinBox( double newValue ) { QObject* send = (QObject*)sender(); Standard_Real vx, vy, vz, vs; vx = vy = vz = vs = 0.0; - if ( send == Group1Spin->SpinBox_DX) - { - vx = newValue; - } - else if ( send == Group2Spin->SpinBox_DX ) - { - vx = newValue; - vy = Group2Spin->SpinBox_DY->GetValue(); - } - else if ( send == Group2Spin->SpinBox_DY) - { - vx = Group2Spin->SpinBox_DX->GetValue(); - vy = newValue; - } - else if ( send == Group3Spin->SpinBox_DX) - { - vx = newValue; - vy = Group3Spin->SpinBox_DY->GetValue(); - vz = Group3Spin->SpinBox_DZ->GetValue(); - } - else if ( send == Group3Spin->SpinBox_DY) - { - vx = Group3Spin->SpinBox_DX->GetValue(); - vy = newValue; - vz = Group3Spin->SpinBox_DZ->GetValue(); - } - else if ( send == Group3Spin->SpinBox_DZ) - { - vx = Group3Spin->SpinBox_DX->GetValue(); - vy = Group3Spin->SpinBox_DY->GetValue(); - vz = newValue; - } - else if ( send == Group4Spin->SpinBox_DX) - { - vx = newValue; - vy = Group4Spin->SpinBox_DY->GetValue(); - vz = Group4Spin->SpinBox_DZ->GetValue(); - vs = Group4Spin->SpinBox_DS->GetValue(); - } - else if ( send == Group4Spin->SpinBox_DY) - { - vx = Group4Spin->SpinBox_DX->GetValue(); - vy = newValue; - vz = Group4Spin->SpinBox_DZ->GetValue(); - vs = Group4Spin->SpinBox_DS->GetValue(); - } - else if ( send == Group4Spin->SpinBox_DZ) - { - vx = Group4Spin->SpinBox_DX->GetValue(); - vy = Group4Spin->SpinBox_DY->GetValue(); - vz = newValue; - vs = Group4Spin->SpinBox_DS->GetValue(); - } - else if ( send == Group4Spin->SpinBox_DS) - { - vx = Group4Spin->SpinBox_DX->GetValue(); - vy = Group4Spin->SpinBox_DY->GetValue(); - vz = Group4Spin->SpinBox_DZ->GetValue(); - vs = newValue; - } - // NPAL16010 (Sketcher Apply non available if only one line is modified) - // if ValueChangedInSpinBox() called from eventFilter() - else if ( Group1Spin->SpinBox_DX->hasFocus() ) - { - vx = newValue; - } - else if ( Group2Spin->SpinBox_DX ->hasFocus() ) - { - vx = newValue; - vy = Group2Spin->SpinBox_DY->GetValue(); - } - else if ( Group2Spin->SpinBox_DY->hasFocus() ) - { - vx = Group2Spin->SpinBox_DX->GetValue(); - vy = newValue; - } - else if ( Group3Spin->SpinBox_DX->hasFocus() ) - { - vx = newValue; - vy = Group3Spin->SpinBox_DY->GetValue(); - vz = Group3Spin->SpinBox_DZ->GetValue(); - } - else if ( Group3Spin->SpinBox_DY->hasFocus() ) - { - vx = Group3Spin->SpinBox_DX->GetValue(); - vy = newValue; - vz = Group3Spin->SpinBox_DZ->GetValue(); - } - else if ( Group3Spin->SpinBox_DZ->hasFocus() ) - { - vx = Group3Spin->SpinBox_DX->GetValue(); - vy = Group3Spin->SpinBox_DY->GetValue(); - vz = newValue; - } - else if ( Group4Spin->SpinBox_DX->hasFocus() ) - { - vx = newValue; - vy = Group4Spin->SpinBox_DY->GetValue(); - vz = Group4Spin->SpinBox_DZ->GetValue(); - vs = Group4Spin->SpinBox_DS->GetValue(); - } - else if ( Group4Spin->SpinBox_DY->hasFocus() ) - { - vx = Group4Spin->SpinBox_DX->GetValue(); - vy = newValue; - vz = Group4Spin->SpinBox_DZ->GetValue(); - vs = Group4Spin->SpinBox_DS->GetValue(); - } - else if ( Group4Spin->SpinBox_DZ->hasFocus() ) - { - vx = Group4Spin->SpinBox_DX->GetValue(); - vy = Group4Spin->SpinBox_DY->GetValue(); - vz = newValue; - vs = Group4Spin->SpinBox_DS->GetValue(); - } - else if ( Group4Spin->SpinBox_DS->hasFocus() ) - { - vx = Group4Spin->SpinBox_DX->GetValue(); - vy = Group4Spin->SpinBox_DY->GetValue(); - vz = Group4Spin->SpinBox_DZ->GetValue(); - vs = newValue; - } + QString vxStr, vyStr, vzStr, vsStr; - if ( myConstructorId == 0 ) - { // SEGMENT - if ( mySketchType == PT_ABS) - { + QString newValueStr; + if( SalomeApp_DoubleSpinBox* aDoubleSpinBox = (SalomeApp_DoubleSpinBox*)send ) + newValueStr = aDoubleSpinBox->text(); + + if ( send == Group1Spin->SpinBox_DX ) { + vx = newValue; vxStr = newValueStr; + } + else if ( send == Group2Spin->SpinBox_DX ) { + vx = newValue; vxStr = newValueStr; + vy = Group2Spin->SpinBox_DY->value(); vyStr = Group2Spin->SpinBox_DY->text(); + } + else if ( send == Group2Spin->SpinBox_DY ) { + vx = Group2Spin->SpinBox_DX->value(); vxStr = Group2Spin->SpinBox_DX->text(); + vy = newValue; vyStr = newValueStr; + } + else if ( send == Group3Spin->SpinBox_DX ) { + vx = newValue; vxStr = newValueStr; + vy = Group3Spin->SpinBox_DY->value(); vyStr = Group3Spin->SpinBox_DY->text(); + vz = Group3Spin->SpinBox_DZ->value(); vzStr = Group3Spin->SpinBox_DZ->text(); + } + else if ( send == Group3Spin->SpinBox_DY ) { + vx = Group3Spin->SpinBox_DX->value(); vxStr = Group3Spin->SpinBox_DX->text(); + vy = newValue; vyStr = newValueStr; + vz = Group3Spin->SpinBox_DZ->value(); vzStr = Group3Spin->SpinBox_DZ->text(); + } + else if ( send == Group3Spin->SpinBox_DZ ) { + vx = Group3Spin->SpinBox_DX->value(); vxStr = Group3Spin->SpinBox_DX->text(); + vy = Group3Spin->SpinBox_DY->value(); vyStr = Group3Spin->SpinBox_DY->text(); + vz = newValue; vzStr = newValueStr; + } + else if ( send == Group4Spin->SpinBox_DX ) { + vx = newValue; vxStr = newValueStr; + vy = Group4Spin->SpinBox_DY->value(); vyStr = Group4Spin->SpinBox_DY->text(); + vz = Group4Spin->SpinBox_DZ->value(); vzStr = Group4Spin->SpinBox_DZ->text(); + vs = Group4Spin->SpinBox_DS->value(); vsStr = Group4Spin->SpinBox_DS->text(); + } + else if ( send == Group4Spin->SpinBox_DY ) { + vx = Group4Spin->SpinBox_DX->value(); vxStr = Group4Spin->SpinBox_DX->text(); + vy = newValue; vyStr = newValueStr; + vz = Group4Spin->SpinBox_DZ->value(); vzStr = Group4Spin->SpinBox_DZ->text(); + vs = Group4Spin->SpinBox_DS->value(); vsStr = Group4Spin->SpinBox_DS->text(); + } + else if ( send == Group4Spin->SpinBox_DZ ) { + vx = Group4Spin->SpinBox_DX->value(); vxStr = Group4Spin->SpinBox_DX->text(); + vy = Group4Spin->SpinBox_DY->value(); vyStr = Group4Spin->SpinBox_DY->text(); + vz = newValue; vzStr = newValueStr; + vs = Group4Spin->SpinBox_DS->value(); vsStr = Group4Spin->SpinBox_DS->text(); + } + else if ( send == Group4Spin->SpinBox_DS ) { + vx = Group4Spin->SpinBox_DX->value(); vxStr = Group4Spin->SpinBox_DX->text(); + vy = Group4Spin->SpinBox_DY->value(); vyStr = Group4Spin->SpinBox_DY->text(); + vz = Group4Spin->SpinBox_DZ->value(); vzStr = Group4Spin->SpinBox_DZ->text(); + vs = newValue; vsStr = newValueStr; + } + // Fix of the NPAL16010 bug is removed, because it's not actual with the Qt-4.x + + if ( myConstructorId == 0 ) { // SEGMENT + if ( mySketchType == PT_ABS ) { myX = vx; myY = vy; + myXStr = vxStr; + myYStr = vyStr; } - else if ( mySketchType == PT_RELATIVE) - { + else if ( mySketchType == PT_RELATIVE ) { myDX = vx; myDY = vy; + myDXStr = vxStr; + myDYStr = vyStr; } - else if ( mySketchType == DIR_ANGLE_LENGTH) - { + else if ( mySketchType == DIR_ANGLE_LENGTH ) { myAngle = vx; myLength = vy; + myAngleStr = vxStr; + myLengthStr = vyStr; } - else if ( mySketchType == DIR_ANGLE_X) - { + else if ( mySketchType == DIR_ANGLE_X ) { myAngle = vx; myX = vy; + myAngleStr = vxStr; + myXStr = vyStr; } - else if ( mySketchType == DIR_ANGLE_Y) - { + else if ( mySketchType == DIR_ANGLE_Y ) { myAngle = vx; myY = vy; + myAngleStr = vxStr; + myYStr = vyStr; } - else if ( mySketchType == DIR_PER_LENGTH) - { + else if ( mySketchType == DIR_PER_LENGTH ) { myLength = vx; + myLengthStr = vxStr; } - else if ( mySketchType == DIR_PER_X) - { + else if ( mySketchType == DIR_PER_X ) { myX = vx; + myXStr = vxStr; } - else if ( mySketchType == DIR_PER_Y) - { + else if ( mySketchType == DIR_PER_Y ) { myY = vx; + myYStr = vxStr; } - else if ( mySketchType == DIR_TAN_LENGTH) - { + else if ( mySketchType == DIR_TAN_LENGTH ) { myLength = vx; + myLengthStr = vxStr; } - else if ( mySketchType == DIR_TAN_X) - { + else if ( mySketchType == DIR_TAN_X ) { myX = vx; + myXStr = vxStr; } - else if ( mySketchType == DIR_TAN_Y) - { + else if ( mySketchType == DIR_TAN_Y ) { myY = vx; + myYStr = vxStr; } - else if ( mySketchType == DIR_DXDY_LENGTH) - { + else if ( mySketchType == DIR_DXDY_LENGTH ) { myDX = vx; myDY = vy; myLength = vz; + myDXStr = vxStr; + myDYStr = vyStr; + myLengthStr = vzStr; } - else if ( mySketchType == DIR_DXDY_X) - { + else if ( mySketchType == DIR_DXDY_X ) { myDX = vx; myDY = vy; myX = vz; + myDXStr = vxStr; + myDYStr = vyStr; + myXStr = vzStr; } - else if ( mySketchType == DIR_DXDY_Y) - { + else if ( mySketchType == DIR_DXDY_Y ) { myDX = vx; myDY = vy; myY = vz; + myDXStr = vxStr; + myDYStr = vyStr; + myYStr = vzStr; } } - else if ( myConstructorId == 1 ) - { // ARC - if ( mySketchType == DIR_ANGLE_LENGTH) - { + else if ( myConstructorId == 1 ) { // ARC + if ( mySketchType == DIR_ANGLE_LENGTH ) { myAngle = vx; myRadius = vy; myLength = vz; + myAngleStr = vxStr; + myRadiusStr = vyStr; + myLengthStr = vzStr; } - else if ( mySketchType == DIR_PER_LENGTH) - { + else if ( mySketchType == DIR_PER_LENGTH ) { myRadius = vx; myLength = vy; + myRadiusStr = vxStr; + myLengthStr = vyStr; } - else if ( mySketchType == DIR_TAN_LENGTH) - { + else if ( mySketchType == DIR_TAN_LENGTH ) { myRadius = vx; myLength = vy; + myRadiusStr = vxStr; + myLengthStr = vyStr; } - else if ( mySketchType == DIR_DXDY_LENGTH) - { + else if ( mySketchType == DIR_DXDY_LENGTH ) { myDX = vx; myDY = vy; myRadius = vz; myLength = vs; + myDXStr = vxStr; + myDYStr = vyStr; + myRadiusStr = vzStr; + myLengthStr = vsStr; } } - GEOMBase_Helper::displayPreview(false, true, true, myLineWidth); + GEOMBase_Helper::displayPreview( false, true, true, myLineWidth ); } @@ -1275,95 +1189,108 @@ void EntityGUI_SketcherDlg::ValueChangedInSpinBox(double newValue) // function : GetNewCommand() // purpose : Build the new command with context //================================================================================= -QString EntityGUI_SketcherDlg::GetNewCommand() +QString EntityGUI_SketcherDlg::GetNewCommand( QString& theParameters ) { + theParameters.clear(); QString myNewCommand = ":"; if ( mySketchState == FIRST_POINT ) { - if ( mySketchType == PT_ABS || mySketchType == PT_SEL) - myNewCommand = myNewCommand + "F " + QString::number(myX) + " " + QString::number(myY); - if ( mySketchType == PT_RELATIVE) - myNewCommand = myNewCommand + "F " + QString::number(myDX) + " " + QString::number(myDY); + if ( mySketchType == PT_ABS || mySketchType == PT_SEL ) { + myNewCommand = myNewCommand + "F " + QString::number( myX ) + " " + QString::number( myY ); + theParameters = myXStr + ":" + myYStr; + } + if ( mySketchType == PT_RELATIVE) { + myNewCommand = myNewCommand + "F " + QString::number( myDX ) + " " + QString::number( myDY ); + theParameters = myDXStr + ":" + myDYStr; + } return myNewCommand; } - if ( myConstructorId == 0 ) - { // SEGMENT - if ( mySketchType == PT_ABS || mySketchType == PT_SEL) - myNewCommand = myNewCommand + "TT " + QString::number(myX) + " " + QString::number(myY); - if ( mySketchType == PT_RELATIVE) - myNewCommand = myNewCommand + "T " + QString::number(myDX) + " " + QString::number(myDY); - if ( mySketchType == DIR_ANGLE_LENGTH) - { - myNewCommand = myNewCommand + "R " + QString::number(myAngle); - myNewCommand = myNewCommand + ":" + "L " + QString::number(myLength); + if ( myConstructorId == 0 ) { // SEGMENT + if ( mySketchType == PT_ABS || mySketchType == PT_SEL ) { + myNewCommand = myNewCommand + "TT " + QString::number( myX ) + " " + QString::number( myY ); + theParameters = myXStr + ":" + myYStr; } - if ( mySketchType == DIR_ANGLE_X) - { - myNewCommand = myNewCommand + "R " + QString::number(myAngle); - myNewCommand = myNewCommand + ":" + "IX " + QString::number(myX); + if ( mySketchType == PT_RELATIVE) { + myNewCommand = myNewCommand + "T " + QString::number( myDX ) + " " + QString::number( myDY ); + theParameters = myDXStr + ":" + myDYStr; } - if ( mySketchType == DIR_ANGLE_Y) - { - myNewCommand = myNewCommand + "R " + QString::number(myAngle); - myNewCommand = myNewCommand + ":" + "IY " + QString::number(myY); + if ( mySketchType == DIR_ANGLE_LENGTH ) { + myNewCommand = myNewCommand + "R " + QString::number( myAngle ); + myNewCommand = myNewCommand + ":" + "L " + QString::number( myLength ); + theParameters = myAngleStr + ":" + myLengthStr; } - if ( mySketchType == DIR_PER_LENGTH) - { - myNewCommand = myNewCommand + "R " + QString::number(90.0); - myNewCommand = myNewCommand + ":" + "L " + QString::number(myLength); + if ( mySketchType == DIR_ANGLE_X ) { + myNewCommand = myNewCommand + "R " + QString::number( myAngle ); + myNewCommand = myNewCommand + ":" + "IX " + QString::number( myX ); + theParameters = myAngleStr + ":" + myXStr; } - if ( mySketchType == DIR_PER_X) - { - myNewCommand = myNewCommand + "R " + QString::number(90.0); - myNewCommand = myNewCommand + ":" + "IX " + QString::number(myX); + if ( mySketchType == DIR_ANGLE_Y ) { + myNewCommand = myNewCommand + "R " + QString::number( myAngle ); + myNewCommand = myNewCommand + ":" + "IY " + QString::number( myY ); + theParameters = myAngleStr + ":" + myYStr; } - if ( mySketchType == DIR_PER_Y) - { - myNewCommand = myNewCommand + "R " + QString::number(90.0); - myNewCommand = myNewCommand + ":" + "IY " + QString::number(myY); + if ( mySketchType == DIR_PER_LENGTH ) { + myNewCommand = myNewCommand + "R " + QString::number( 90.0 ); + myNewCommand = myNewCommand + ":" + "L " + QString::number( myLength ); + theParameters = QString::number( 90.0 ) + ":" + myLengthStr; } - if ( mySketchType == DIR_TAN_LENGTH) - myNewCommand = myNewCommand + "L " + QString::number(myLength); - if ( mySketchType == DIR_TAN_X) - myNewCommand = myNewCommand + "IX " + QString::number(myX); - if ( mySketchType == DIR_TAN_Y) + if ( mySketchType == DIR_PER_X ) { + myNewCommand = myNewCommand + "R " + QString::number( 90.0 ); + myNewCommand = myNewCommand + ":" + "IX " + QString::number( myX ); + theParameters = QString::number( 90.0 ) + ":" + myXStr; + } + if ( mySketchType == DIR_PER_Y ) { + myNewCommand = myNewCommand + "R " + QString::number( 90.0 ); + myNewCommand = myNewCommand + ":" + "IY " + QString::number( myY ); + theParameters = QString::number( 90.0 ) + ":" + myYStr; + } + if ( mySketchType == DIR_TAN_LENGTH ) { + myNewCommand = myNewCommand + "L " + QString::number( myLength ); + theParameters = myLengthStr; + } + if ( mySketchType == DIR_TAN_X ) { + myNewCommand = myNewCommand + "IX " + QString::number( myX ); + theParameters = myXStr; + } + if ( mySketchType == DIR_TAN_Y) { myNewCommand = myNewCommand + "IY " + QString::number(myY); - if ( mySketchType == DIR_DXDY_LENGTH) - { - myNewCommand = myNewCommand + "D " + QString::number(myDX) + " " + QString::number(myDY); - myNewCommand = myNewCommand + ":" + "L " + QString::number(myLength); + theParameters = myYStr; } - if ( mySketchType == DIR_DXDY_X) - { - myNewCommand = myNewCommand + "D " + QString::number(myDX) + " " + QString::number(myDY); - myNewCommand = myNewCommand + ":" + "IX " + QString::number(myX); + if ( mySketchType == DIR_DXDY_LENGTH ) { + myNewCommand = myNewCommand + "D " + QString::number( myDX ) + " " + QString::number( myDY ); + myNewCommand = myNewCommand + ":" + "L " + QString::number( myLength ); + theParameters = myDXStr + ":" + myDYStr + ":" + myLengthStr; } - if ( mySketchType == DIR_DXDY_Y) - { - myNewCommand = myNewCommand + "D " + QString::number(myDX) + " " + QString::number(myDY); - myNewCommand = myNewCommand + ":" + "IY " + QString::number(myY); + if ( mySketchType == DIR_DXDY_X ) { + myNewCommand = myNewCommand + "D " + QString::number( myDX ) + " " + QString::number( myDY ); + myNewCommand = myNewCommand + ":" + "IX " + QString::number( myX ); + theParameters = myDXStr + ":" + myDYStr + ":" + myXStr; + } + if ( mySketchType == DIR_DXDY_Y ) { + myNewCommand = myNewCommand + "D " + QString::number( myDX ) + " " + QString::number( myDY ); + myNewCommand = myNewCommand + ":" + "IY " + QString::number( myY ); + theParameters = myDXStr + ":" + myDYStr + ":" + myYStr; } } - else if ( myConstructorId == 1 ) - { // ARC - if ( mySketchType == DIR_ANGLE_LENGTH) - { - myNewCommand = myNewCommand + "R " + QString::number(myAngle); - myNewCommand = myNewCommand + ":" + "C " + QString::number(myRadius) + " " + QString::number(myLength); + else if ( myConstructorId == 1 ) { // ARC + if ( mySketchType == DIR_ANGLE_LENGTH ) { + myNewCommand = myNewCommand + "R " + QString::number( myAngle ); + myNewCommand = myNewCommand + ":" + "C " + QString::number( myRadius ) + " " + QString::number( myLength ); + theParameters = myAngleStr + ":" + myRadiusStr + ":" + myLengthStr; } - if ( mySketchType == DIR_PER_LENGTH) - { - myNewCommand = myNewCommand + "R " + QString::number(90.0); - myNewCommand = myNewCommand + ":" + "C " + QString::number(myRadius) + " " + QString::number(myLength); + if ( mySketchType == DIR_PER_LENGTH ) { + myNewCommand = myNewCommand + "R " + QString::number( 90.0 ); + myNewCommand = myNewCommand + ":" + "C " + QString::number( myRadius ) + " " + QString::number( myLength ); + theParameters = QString::number( 90.0 ) + ":" + myRadiusStr + ":" + myLengthStr; } - if ( mySketchType == DIR_TAN_LENGTH) - { - myNewCommand = myNewCommand + "C " + QString::number(myRadius) + " " + QString::number(myLength); + if ( mySketchType == DIR_TAN_LENGTH ) { + myNewCommand = myNewCommand + "C " + QString::number( myRadius ) + " " + QString::number( myLength ); + theParameters = myRadiusStr + ":" + myLengthStr; } - if ( mySketchType == DIR_DXDY_LENGTH) - { - myNewCommand = myNewCommand + "D " + QString::number(myDX) + " " + QString::number(myDY); - myNewCommand = myNewCommand + ":" + "C " + QString::number(myRadius) + " " + QString::number(myLength); + if ( mySketchType == DIR_DXDY_LENGTH ) { + myNewCommand = myNewCommand + "D " + QString::number( myDX ) + " " + QString::number( myDY ); + myNewCommand = myNewCommand + ":" + "C " + QString::number( myRadius ) + " " + QString::number( myLength ); + theParameters = myDXStr + ":" + myDYStr + ":" + myRadiusStr + ":" + myLengthStr; } } return myNewCommand; @@ -1384,7 +1311,32 @@ GEOM::GEOM_IOperations_ptr EntityGUI_SketcherDlg::createOperation() //================================================================================= bool EntityGUI_SketcherDlg::isValid( QString& msg ) { - return true; + bool ok = true; + bool toCorrect = !IsPreview() || myIsApply; + + if( Group1Spin->isVisible() ) { + ok = Group1Spin->SpinBox_DX->isValid( msg, toCorrect ) && ok; + } + else if( Group2Spin->isVisible() ) { + ok = Group2Spin->SpinBox_DX->isValid( msg, toCorrect ) && ok; + ok = Group2Spin->SpinBox_DY->isValid( msg, toCorrect ) && ok; + } + else if( Group3Spin->isVisible() ) { + ok = Group3Spin->SpinBox_DX->isValid( msg, toCorrect ) && ok; + ok = Group3Spin->SpinBox_DY->isValid( msg, toCorrect ) && ok; + ok = Group3Spin->SpinBox_DZ->isValid( msg, toCorrect ) && ok; + } + else if( Group4Spin->isVisible() ) { + ok = Group4Spin->SpinBox_DX->isValid( msg, toCorrect ) && ok; + ok = Group4Spin->SpinBox_DY->isValid( msg, toCorrect ) && ok; + ok = Group4Spin->SpinBox_DZ->isValid( msg, toCorrect ) && ok; + ok = Group4Spin->SpinBox_DS->isValid( msg, toCorrect ) && ok; + } + + if( myIsApply && !ok ) + showError( msg ); + + return ok; } //================================================================================= @@ -1393,7 +1345,9 @@ bool EntityGUI_SketcherDlg::isValid( QString& msg ) //================================================================================= bool EntityGUI_SketcherDlg::execute( ObjectList& objects ) { - if(mySketchState == FIRST_POINT) { + QString aParameters; + + if ( mySketchState == FIRST_POINT ) { myLastX2 = myX; myLastY2 = myY; } @@ -1403,17 +1357,17 @@ bool EntityGUI_SketcherDlg::execute( ObjectList& objects ) //Last Shape QString Command1 = myCommand.join( "" ); - Sketcher_Profile aProfile1 (Command1.ascii()); - if(aProfile1.IsDone()) + Sketcher_Profile aProfile1( Command1.toAscii() ); + if ( aProfile1.IsDone() ) myShape1 = aProfile1.GetShape(); //Current Shape - QString Command2 = Command1 + GetNewCommand(); - Sketcher_Profile aProfile2 (Command2.ascii()); - if(aProfile2.IsDone()) + QString Command2 = Command1 + GetNewCommand( aParameters ); + Sketcher_Profile aProfile2( Command2.toAscii() ); + if ( aProfile2.IsDone() ) myShape2 = aProfile2.GetShape(); - if(myShape2.IsNull()) { + if ( myShape2.IsNull() ) { //the current point is the same as the last one myLastX2 = myLastX1; myLastY2 = myLastY1; @@ -1421,79 +1375,79 @@ bool EntityGUI_SketcherDlg::execute( ObjectList& objects ) else { TopoDS_Vertex V1, V2; gp_Pnt pt; - if(myShape1.ShapeType() == TopAbs_VERTEX) { + if ( myShape1.ShapeType() == TopAbs_VERTEX ) { //the last shape is the first point - pt = BRep_Tool::Pnt(TopoDS::Vertex(myShape1)); + pt = BRep_Tool::Pnt( TopoDS::Vertex( myShape1 ) ); myLastX1 = pt.X(); myLastY1 = pt.Y(); } else { - TopExp::Vertices(TopoDS::Wire(myShape1), V1, V2); - pt = BRep_Tool::Pnt(V2); + TopExp::Vertices( TopoDS::Wire( myShape1 ), V1, V2 ); + pt = BRep_Tool::Pnt( V2 ); myLastX1 = pt.X(); myLastY1 = pt.Y(); } - TopExp::Vertices(TopoDS::Wire(myShape2), V1, V2); - pt = BRep_Tool::Pnt(V2); + TopExp::Vertices( TopoDS::Wire( myShape2 ), V1, V2 ); + pt = BRep_Tool::Pnt( V2 ); myLastX2 = pt.X(); myLastY2 = pt.Y(); } } QString cmd; - if( ( mySketchState != FIRST_POINT && - myLastX1 == myLastX2 && myLastY1 == myLastY2 ) || myIsAllAdded ) { + if ( ( mySketchState != FIRST_POINT && + myLastX1 == myLastX2 && myLastY1 == myLastY2 ) || myIsAllAdded ) { cmd = myCommand.join( "" ); if ( Group1Sel->isVisible() ) { - Group1Sel->buttonApply->setEnabled(false); + Group1Sel->buttonApply->setEnabled( false ); //Group1Sel->buttonApply->setFocus(); } if ( Group1Spin->isVisible() ) { - Group1Spin->buttonApply->setEnabled(false); + Group1Spin->buttonApply->setEnabled( false ); //Group1Spin->buttonApply->setFocus(); } if ( Group2Spin->isVisible() ) { - Group2Spin->buttonApply->setEnabled(false); + Group2Spin->buttonApply->setEnabled( false ); //Group2Spin->buttonApply->setFocus(); } if ( Group3Spin->isVisible() ) { - Group3Spin->buttonApply->setEnabled(false); + Group3Spin->buttonApply->setEnabled( false ); //Group3Spin->buttonApply->setFocus(); } if ( Group4Spin->isVisible() ) { - Group4Spin->buttonApply->setEnabled(false); + Group4Spin->buttonApply->setEnabled( false ); //Group4Spin->buttonApply->setFocus(); } } else { - cmd = myCommand.join( "" ) + GetNewCommand(); + cmd = myCommand.join( "" ) + GetNewCommand( aParameters ); if ( Group1Sel->isVisible() ) { - Group1Sel->buttonApply->setEnabled(true); + Group1Sel->buttonApply->setEnabled( true ); //Group1Sel->buttonApply->setFocus(); } if ( Group1Spin->isVisible() ) { - Group1Spin->buttonApply->setEnabled(true); + Group1Spin->buttonApply->setEnabled( true ); //Group1Spin->buttonApply->setFocus(); } if ( Group2Spin->isVisible() ) { - Group2Spin->buttonApply->setEnabled(true); + Group2Spin->buttonApply->setEnabled( true ); //Group2Spin->buttonApply->setFocus(); } if ( Group3Spin->isVisible() ) { - Group3Spin->buttonApply->setEnabled(true); + Group3Spin->buttonApply->setEnabled( true ); //Group3Spin->buttonApply->setFocus(); } if ( Group4Spin->isVisible() ) { - Group4Spin->buttonApply->setEnabled(true); + Group4Spin->buttonApply->setEnabled( true ); //Group4Spin->buttonApply->setFocus(); } } gp_Ax3 myWPlane = myGeometryGUI->GetWorkingPlane(); GEOM::ListOfDouble_var WPlane = new GEOM::ListOfDouble; - WPlane->length(9); + WPlane->length( 9 ); WPlane[0] = myWPlane.Location().X(); WPlane[1] = myWPlane.Location().Y(); WPlane[2] = myWPlane.Location().Z(); @@ -1507,10 +1461,18 @@ bool EntityGUI_SketcherDlg::execute( ObjectList& objects ) WPlane[8] = myWPlane.XDirection().Z(); GEOM::GEOM_Object_var anObj = - GEOM::GEOM_ICurvesOperations::_narrow( getOperation() )->MakeSketcher( cmd.latin1(), WPlane ); + GEOM::GEOM_ICurvesOperations::_narrow( getOperation() )->MakeSketcher( cmd.toLatin1(), WPlane ); if ( !anObj->_is_nil() ) + { + if( !IsPreview() ) { + QStringList aCurrentParameters = myParameters; + aCurrentParameters << aParameters; + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aCurrentParameters)); + } + objects.push_back( anObj._retn() ); + } return true; } @@ -1524,7 +1486,9 @@ void EntityGUI_SketcherDlg::displayPreview( GEOM::GEOM_Object_ptr object, const bool append, const bool activate, const bool update, - const double lineWidth ) + const double lineWidth, + const int displayMode, + const int color ) { // Set color for preview shape getDisplayer()->SetColor( Quantity_NOC_RED ); @@ -1577,22 +1541,19 @@ bool EntityGUI_SketcherDlg::createShapes( GEOM::GEOM_Object_ptr theObject, Group1Spin->isVisible() && !Group1Spin->buttonApply->isEnabled() || Group2Spin->isVisible() && !Group2Spin->buttonApply->isEnabled() || Group3Spin->isVisible() && !Group3Spin->buttonApply->isEnabled() || - Group4Spin->isVisible() && !Group4Spin->buttonApply->isEnabled() ) - { + Group4Spin->isVisible() && !Group4Spin->buttonApply->isEnabled() ) { theApplyedWire = aShape; return true; } BRepBuilderAPI_MakeWire aBuilder; TopExp_Explorer anExp( aShape, TopAbs_EDGE ); - while( 1 ) - { + while ( 1 ) { TopoDS_Shape anEdge = anExp.Current(); anExp.Next(); if ( anExp.More() ) // i.e. non-last edge aBuilder.Add( TopoDS::Edge( anEdge ) ); - else - { + else { theLastSegment = anEdge; break; } @@ -1614,9 +1575,35 @@ void EntityGUI_SketcherDlg::keyPressEvent( QKeyEvent* e ) if ( e->isAccepted() ) return; - if ( e->key() == Key_F1 ) - { - e->accept(); - ClickOnHelp(); - } + if ( e->key() == Qt::Key_F1 ) { + e->accept(); + ClickOnHelp(); + } +} + +void EntityGUI_SketcherDlg::initSpinBox( SalomeApp_DoubleSpinBox* spinBox, + double min, double max, + double step, int decimals ) +{ + spinBox->setDecimals( decimals ); + spinBox->setRange( min, max ); + spinBox->setSingleStep( step ); +} + +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void EntityGUI_SketcherDlg::SetDoubleSpinBoxStep( double step ) +{ + Group1Spin->SpinBox_DX->setSingleStep(step); + Group2Spin->SpinBox_DX->setSingleStep(step); + Group2Spin->SpinBox_DY->setSingleStep(step); + Group3Spin->SpinBox_DX->setSingleStep(step); + Group3Spin->SpinBox_DY->setSingleStep(step); + Group3Spin->SpinBox_DZ->setSingleStep(step); + Group4Spin->SpinBox_DX->setSingleStep(step); + Group4Spin->SpinBox_DY->setSingleStep(step); + Group4Spin->SpinBox_DZ->setSingleStep(step); + Group4Spin->SpinBox_DS->setSingleStep(step); } diff --git a/src/EntityGUI/EntityGUI_SketcherDlg.h b/src/EntityGUI/EntityGUI_SketcherDlg.h index 64260b2ae..3a304abf1 100644 --- a/src/EntityGUI/EntityGUI_SketcherDlg.h +++ b/src/EntityGUI/EntityGUI_SketcherDlg.h @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -19,144 +19,159 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : EntityGUI_SketcherDlg.h +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : EntityGUI_SketcherDlg.h -// Author : Damine COQUERET -// Module : GEOM - #ifndef ENTITYGUI_SKETCHERDLG_H #define ENTITYGUI_SKETCHERDLG_H -#include "GEOM_EntityGUI.hxx" +#include -#include "GEOMBase_Helper.h" +#include -#include "EntityGUI_Skeleton_QTD.h" -#include "EntityGUI_Point_QTD.h" -#include "EntityGUI_Dir1_QTD.h" -#include "EntityGUI_Dir2_QTD.h" +class QLineEdit; +class SalomeApp_DoubleSpinBox; +class EntityGUI_1Sel; +class EntityGUI_1Spin; +class EntityGUI_2Spin; +class EntityGUI_3Spin; +class EntityGUI_4Spin; +class EntityGUI_Point; +class EntityGUI_Dir1; +class EntityGUI_Dir2; +class EntityGUI_Skeleton; +class GeometryGUI; -#include "EntityGUI_1Sel_QTD.h" -#include "EntityGUI_1Spin.h" -#include "EntityGUI_2Spin.h" -#include "EntityGUI_3Spin.h" -#include "EntityGUI_4Spin.h" - -#include "EntityGUI.h" -#include "GeometryGUI.h" - -#include - -#include -#include -#include -#include -#include -#include +#ifndef COORD_MIN +# define COORD_MIN -1e+15 +# define COORD_MAX +1e+15 +# define MAX_NUMBER 100000 +# define DBL_DIGITS_DISPLAY 16 +#endif // COORD_MIN //================================================================================= // class : EntityGUI_Dlg // purpose : //================================================================================= -class GEOM_ENTITYGUI_EXPORT EntityGUI_SketcherDlg : public EntityGUI_Skeleton_QTD, public GEOMBase_Helper +class EntityGUI_SketcherDlg : public QDialog, GEOMBase_Helper { - Q_OBJECT + Q_OBJECT public: - EntityGUI_SketcherDlg(GeometryGUI* GUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0, - const double lineWidth = 2.); - ~EntityGUI_SketcherDlg(); + EntityGUI_SketcherDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0, + const double = 2. ); + ~EntityGUI_SketcherDlg(); - bool eventFilter (QObject* object, QEvent* event); + bool eventFilter (QObject* object, QEvent* event); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); + void initSpinBox( SalomeApp_DoubleSpinBox*, + double, double, double = 0.1, + int = 3 ); - void closeEvent( QCloseEvent* e ); - void keyPressEvent( QKeyEvent* e ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); -private : - void Init(); - void enterEvent(QEvent* e); - void InitClick(); - void setEnabledUndo(bool value); - void setEnabledRedo(bool value); + void closeEvent( QCloseEvent* ); + void keyPressEvent( QKeyEvent* ); - QString GetNewCommand(); +private: + void Init(); + void enterEvent( QEvent* ); + void InitClick(); + void setEnabledUndo( bool ); + void setEnabledRedo( bool ); + + QString GetNewCommand( QString& ); - int myConstructorId; - int myConstructorDirId; - int mySketchType; - int mySketchState; + virtual void displayPreview( GEOM::GEOM_Object_ptr, + const bool = false, + const bool = false, + const bool = true, + const double = -1, + const int = -1, + const int = -1); - bool myIsAllAdded; + bool createShapes( GEOM::GEOM_Object_ptr, + TopoDS_Shape&, + TopoDS_Shape& ); - QLineEdit* myEditCurrentArgument; /* Current LineEdit */ +private: + int myConstructorId; + int myConstructorDirId; + int mySketchType; + int mySketchState; - QStringList myCommand; - QStringList myUndoCommand; + bool myIsAllAdded; + bool myIsApply; - Standard_Real myX, myY, myDX, myDY; - Standard_Real myLength, myAngle, myRadius; - Standard_Real myLastX1, myLastY1; - Standard_Real myLastX2, myLastY2; + QLineEdit* myEditCurrentArgument; /* Current LineEdit */ - EntityGUI_Point_QTD* GroupPt; - EntityGUI_Dir1_QTD* GroupD1; - EntityGUI_Dir2_QTD* GroupD2; + QStringList myCommand; + QStringList myUndoCommand; - EntityGUI_1Sel_QTD* Group1Sel; - EntityGUI_1Spin* Group1Spin; - EntityGUI_2Spin* Group2Spin; - EntityGUI_3Spin* Group3Spin; - EntityGUI_4Spin* Group4Spin; + QStringList myParameters; + QStringList myUndoParameters; - GeometryGUI* myGeometryGUI; + Standard_Real myX, myY, myDX, myDY; + Standard_Real myLength, myAngle, myRadius; + Standard_Real myLastX1, myLastY1; + Standard_Real myLastX2, myLastY2; - QString myHelpFileName; + QString myXStr, myYStr, myDXStr, myDYStr; + QString myLengthStr, myAngleStr, myRadiusStr; + QString myLastX1Str, myLastY1Str; + QString myLastX2Str, myLastY2Str; - enum SketchState {FIRST_POINT, NEXT_POINT}; + EntityGUI_Skeleton* MainWidget; - enum SketchType {PT_ABS, PT_RELATIVE, PT_SEL, - DIR_ANGLE_LENGTH, DIR_ANGLE_X, DIR_ANGLE_Y, - DIR_PER_LENGTH, DIR_PER_X, DIR_PER_Y, - DIR_TAN_LENGTH, DIR_TAN_X, DIR_TAN_Y, - DIR_DXDY_LENGTH, DIR_DXDY_X, DIR_DXDY_Y}; + EntityGUI_Point* GroupPt; + EntityGUI_Dir1* GroupD1; + EntityGUI_Dir2* GroupD2; - double myLineWidth; - virtual void displayPreview ( GEOM::GEOM_Object_ptr obj, - const bool append = false, - const bool activate = false, - const bool update = true, - const double lineWidth = -1 ); + EntityGUI_1Sel* Group1Sel; + EntityGUI_1Spin* Group1Spin; + EntityGUI_2Spin* Group2Spin; + EntityGUI_3Spin* Group3Spin; + EntityGUI_4Spin* Group4Spin; - bool createShapes( GEOM::GEOM_Object_ptr theObject, - TopoDS_Shape& theApplyedWire, - TopoDS_Shape& theLastSegment ); + GeometryGUI* myGeometryGUI; + QString myHelpFileName; + + double myLineWidth; + +private: + enum SketchState { FIRST_POINT, NEXT_POINT }; + + enum SketchType { PT_ABS, PT_RELATIVE, PT_SEL, + DIR_ANGLE_LENGTH, DIR_ANGLE_X, DIR_ANGLE_Y, + DIR_PER_LENGTH, DIR_PER_X, DIR_PER_Y, + DIR_TAN_LENGTH, DIR_TAN_X, DIR_TAN_Y, + DIR_DXDY_LENGTH, DIR_DXDY_X, DIR_DXDY_Y }; + private slots: - void ClickOnEnd(); - void ClickOnCancel(); - bool ClickOnApply(); - void ClickOnUndo(); - void ClickOnRedo(); - void ClickOnHelp(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void DeactivateActiveDialog(); - void ActivateThisDialog(); - void TypeClicked(int constructorId); - void DestClicked(int constructorId); - void PointClicked(int constructorId); - void Dir1Clicked(int constructorId); - void Dir2Clicked(int constructorId); - void ValueChangedInSpinBox(double newValue); + void ClickOnEnd(); + void ClickOnCancel(); + bool ClickOnApply(); + void ClickOnUndo(); + void ClickOnRedo(); + void ClickOnHelp(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void DeactivateActiveDialog(); + void ActivateThisDialog(); + void TypeClicked( int ); + void DestClicked( int ); + void PointClicked( int ); + void Dir1Clicked( int ); + void Dir2Clicked( int ); + void ValueChangedInSpinBox( double ); + void SetDoubleSpinBoxStep( double ); }; #endif // ENTITYGUI_SKETCHERDLG_H diff --git a/src/EntityGUI/EntityGUI_SubShapeDlg.cxx b/src/EntityGUI/EntityGUI_SubShapeDlg.cxx index ae82cc4c1..af81a31bb 100644 --- a/src/EntityGUI/EntityGUI_SubShapeDlg.cxx +++ b/src/EntityGUI/EntityGUI_SubShapeDlg.cxx @@ -1,49 +1,49 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : EntityGUI_SubShapeDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : EntityGUI_SubShapeDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "EntityGUI_SubShapeDlg.h" -#include "GEOM_Displayer.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "OCCViewer_ViewModel.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "SALOME_ListIteratorOfListIO.hxx" +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include #include -#include -#include -#include +#include //================================================================================= // class : EntityGUI_SubShapeDlg @@ -52,33 +52,40 @@ // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -EntityGUI_SubShapeDlg::EntityGUI_SubShapeDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, fl) +EntityGUI_SubShapeDlg::EntityGUI_SubShapeDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_SUBSHAPE"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_SUBSHAPE" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_SUBSHAPE_TITLE")); + setWindowTitle( tr( "GEOM_SUBSHAPE_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_SUB_SHAPE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_SUB_SHAPE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_1Sel1Check1List_QTD(this, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); - GroupPoints->TextLabel1->setText(tr("GEOM_MAIN_OBJECT")); - GroupPoints->TextLabel2->setText(tr("GEOM_SUBSHAPE_TYPE")); - GroupPoints->CheckButton1->setText(tr("GEOM_SUBSHAPE_SELECT")); - GroupPoints->PushButton1->setPixmap(image1); + GroupPoints = new DlgRef_1Sel1Check1List( centralWidget() ); + + GroupPoints->GroupBox1->setTitle( tr( "GEOM_ARGUMENTS" ) ); + GroupPoints->TextLabel1->setText( tr( "GEOM_MAIN_OBJECT" ) ); + GroupPoints->TextLabel2->setText( tr( "GEOM_SUBSHAPE_TYPE" ) ); + GroupPoints->CheckButton1->setText( tr( "GEOM_SUBSHAPE_SELECT" ) ); + GroupPoints->PushButton1->setIcon( image1 ); GroupPoints->LineEdit1->setReadOnly( true ); - Layout1->addWidget(GroupPoints, 1, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); /***************************************************************/ - setHelpFileName("create_explode_page.html"); + setHelpFileName( "create_explode_page.html" ); + + mainFrame()->GroupBoxName->hide(); Init(); } @@ -106,34 +113,34 @@ void EntityGUI_SubShapeDlg::Init() myWithShape = true; /* type for sub shape selection */ - GroupPoints->ComboBox1->insertItem("Compound"); - GroupPoints->ComboBox1->insertItem("Compsolid"); - GroupPoints->ComboBox1->insertItem("Solid"); - GroupPoints->ComboBox1->insertItem("Shell"); - GroupPoints->ComboBox1->insertItem("Face"); - GroupPoints->ComboBox1->insertItem("Wire"); - GroupPoints->ComboBox1->insertItem("Edge"); - GroupPoints->ComboBox1->insertItem("Vertex"); - GroupPoints->ComboBox1->insertItem("Shape"); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Compound" ); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Compsolid" ); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Solid" ); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Shell" ); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Face" ); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Wire" ); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Edge" ); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Vertex" ); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Shape" ); - if (SUIT_Session::session()->activeApplication()->desktop()->activeWindow()->getViewManager()->getType() - != OCCViewer_Viewer::Type()) - GroupPoints->CheckButton1->setEnabled(false); + if ( SUIT_Session::session()->activeApplication()->desktop()->activeWindow()->getViewManager()->getType() + != OCCViewer_Viewer::Type() ) + GroupPoints->CheckButton1->setEnabled( false ); /* signals and slots connections */ - connect(myGeomGUI, SIGNAL(SignalDeactivateActiveDialog()), this, SLOT(DeactivateActiveDialog())); + connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), this, SLOT( DeactivateActiveDialog() ) ); - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPoints->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect(GroupPoints->ComboBox1, SIGNAL(activated(int)), this, SLOT(ComboTextChanged())); - connect(GroupPoints->CheckButton1, SIGNAL(stateChanged(int)), this, SLOT(SubShapeToggled())); + connect( GroupPoints->ComboBox1, SIGNAL( activated( int ) ), this, SLOT( ComboTextChanged() ) ); + connect( GroupPoints->CheckButton1, SIGNAL( stateChanged( int ) ), this, SLOT( SubShapeToggled() ) ); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged( )), this, SLOT( SelectionIntoArgument() ) ); updateButtonState(); @@ -158,19 +165,19 @@ void EntityGUI_SubShapeDlg::ClickOnOk() //================================================================================= bool EntityGUI_SubShapeDlg::ClickOnApply() { - SUIT_Session::session()->activeApplication()->putInfo(tr("")); - + SUIT_Session::session()->activeApplication()->putInfo( "" ); + /* Explode all sub shapes */ - if( isAllSubShapes() ) { + if ( isAllSubShapes() ) { /* More than 30 subshapes : ask confirmation */ - unsigned int nb = NumberOfSubShapes(myShape, shapeType()); - if(nb > 30) { - const QString caption = tr("GEOM_CONFIRM"); - const QString text = tr("GEOM_CONFIRM_INFO").arg(nb); - const QString button0 = tr("GEOM_BUT_EXPLODE"); - const QString button1 = tr("GEOM_BUT_CANCEL"); + unsigned int nb = NumberOfSubShapes( myShape, shapeType() ); + if ( nb > 30 ) { + const QString caption = tr( "GEOM_CONFIRM" ); + const QString text = tr( "GEOM_CONFIRM_INFO" ).arg( nb ); + const QString button0 = tr( "GEOM_BUT_EXPLODE" ); + const QString button1 = tr( "GEOM_BUT_CANCEL" ); - if(QMessageBox::warning(this, caption, text, button0, button1) != 0) + if ( QMessageBox::warning( this, caption, text, button0, button1 ) != 0 ) return false; /* aborted */ } } @@ -191,78 +198,73 @@ bool EntityGUI_SubShapeDlg::ClickOnApply() //================================================================================= void EntityGUI_SubShapeDlg::SelectionIntoArgument() { - if ( !isAllSubShapes() ) + if (!isAllSubShapes()) return; ResetStateOfDialog(); QString aString = ""; /* name of selection */ - int nbSel = GEOMBase::GetNameOfSelectedIObjects( selectedIO(), aString, true ); - if( nbSel != 1 ) + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + int nbSel = GEOMBase::GetNameOfSelectedIObjects(aSelList, aString, true); + if (nbSel != 1) return; TopoDS_Shape S; - Handle(SALOME_InteractiveObject) IO = firstIObject(); - if ( !IO->hasEntry() ) - { + Handle(SALOME_InteractiveObject) IO = aSelList.First(); + if ( !IO->hasEntry() ) { SUIT_Session::session()->activeApplication()->putInfo( tr( "GEOM_PRP_SHAPE_IN_STUDY" ) ); updateButtonState(); return; } - if ( !GEOMBase::GetTopoFromSelection( selectedIO(), S ) || - S.IsNull() || - S.ShapeType() == TopAbs_VERTEX ) - { + if (!GEOMBase::GetTopoFromSelection(aSelList, S) || + S.IsNull() || + S.ShapeType() == TopAbs_VERTEX) { + myObject = GEOM::GEOM_Object::_nil(); updateButtonState(); return; } - Standard_Boolean testResult; - myObject = GEOMBase::ConvertIOinGEOMObject( IO, testResult ); - if ( !testResult || myObject->_is_nil() ) - { + myObject = GEOMBase::ConvertIOinGEOMObject(IO, testResult); + if (!testResult || myObject->_is_nil()) { updateButtonState(); return; } myShape = S; - GroupPoints->LineEdit1->setText( aString ); + GroupPoints->LineEdit1->setText(aString); - - int SelectedShapeType = GroupPoints->ComboBox1->currentItem(); + int SelectedShapeType = GroupPoints->ComboBox1->currentIndex(); int count = GroupPoints->ComboBox1->count(); - if ( myWithShape ) + if (myWithShape) count = count - 1; int i = 0; // Solving PAL5590 - if ( myShape.ShapeType() == TopAbs_COMPOUND ) { + if (myShape.ShapeType() == TopAbs_COMPOUND) { unsigned int nb = NumberOfSubShapes(myShape, TopAbs_COMPOUND); - if (nb > 0) + if ( nb > 0 ) i++; } - while ( i <= myShape.ShapeType()) - { - GroupPoints->ComboBox1->removeItem( 0 ); + while (i <= myShape.ShapeType()) { + GroupPoints->ComboBox1->removeItem(0); i++; } - if ( myShape.ShapeType() == TopAbs_COMPOUND ) - { - if ( myWithShape == false ) - { - GroupPoints->ComboBox1->insertItem( "Shape" ); + if (myShape.ShapeType() == TopAbs_COMPOUND) { + if (myWithShape == false) { + GroupPoints->ComboBox1->insertItem(GroupPoints->ComboBox1->count(), "Shape"); myWithShape = true; } } - else - { - if ( myWithShape == true ) - { + else { + if ( myWithShape == true ) { GroupPoints->ComboBox1->removeItem( GroupPoints->ComboBox1->count() - 1 ); myWithShape = false; } @@ -272,22 +274,18 @@ void EntityGUI_SubShapeDlg::SelectionIntoArgument() if ( myWithShape ) count1 = count1 - 1; - if ( SelectedShapeType > myShape.ShapeType() ) - { - if ( SelectedShapeType == 8 ) - { - if ( myShape.ShapeType() != TopAbs_COMPOUND ) - { - GroupPoints->ComboBox1->setCurrentItem( 0 ); + if ( SelectedShapeType > myShape.ShapeType() ) { + if ( SelectedShapeType == 8 ) { + if ( myShape.ShapeType() != TopAbs_COMPOUND ) { + GroupPoints->ComboBox1->setCurrentIndex( 0 ); ComboTextChanged(); } } else - GroupPoints->ComboBox1->setCurrentItem(count1 - count + SelectedShapeType); + GroupPoints->ComboBox1->setCurrentIndex( count1 - count + SelectedShapeType ); } - else - { - GroupPoints->ComboBox1->setCurrentItem( 0 ); + else { + GroupPoints->ComboBox1->setCurrentIndex( 0 ); ComboTextChanged(); } @@ -303,8 +301,8 @@ void EntityGUI_SubShapeDlg::SetEditCurrentArgument() { GroupPoints->LineEdit1->setFocus(); myEditCurrentArgument = GroupPoints->LineEdit1; - - GroupPoints->CheckButton1->setChecked( FALSE ); + + GroupPoints->CheckButton1->setChecked( false ); SubShapeToggled(); SelectionIntoArgument(); } @@ -315,9 +313,9 @@ void EntityGUI_SubShapeDlg::SetEditCurrentArgument() // purpose : //================================================================================= void EntityGUI_SubShapeDlg::LineEditReturnPressed() -{ +{ QLineEdit* send = (QLineEdit*)sender(); - if(send == GroupPoints->LineEdit1) + if ( send == GroupPoints->LineEdit1 ) SetEditCurrentArgument(); else return; @@ -332,7 +330,7 @@ void EntityGUI_SubShapeDlg::LineEditReturnPressed() //================================================================================= void EntityGUI_SubShapeDlg::DeactivateActiveDialog() { - if (GroupConstructors->isEnabled()) { + if ( mainFrame()->GroupConstructors->isEnabled() ) { GEOMBase_Skeleton::DeactivateActiveDialog(); } } @@ -345,8 +343,8 @@ void EntityGUI_SubShapeDlg::DeactivateActiveDialog() void EntityGUI_SubShapeDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); SubShapeToggled(); updateButtonState(); } @@ -356,9 +354,9 @@ void EntityGUI_SubShapeDlg::ActivateThisDialog() // function : enterEvent() // purpose : //================================================================================= -void EntityGUI_SubShapeDlg::enterEvent(QEvent* e) +void EntityGUI_SubShapeDlg::enterEvent( QEvent* ) { - if (!GroupConstructors->isEnabled()) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } @@ -370,28 +368,28 @@ void EntityGUI_SubShapeDlg::ResetStateOfDialog() { myObject = GEOM::GEOM_Object::_nil(); myShape.Nullify(); - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); - int SelectedShapeType = GroupPoints->ComboBox1->currentItem(); + int SelectedShapeType = GroupPoints->ComboBox1->currentIndex(); int count = GroupPoints->ComboBox1->count(); if ( myWithShape ) count = count - 1; /* type for sub shape selection */ GroupPoints->ComboBox1->clear(); - GroupPoints->ComboBox1->insertItem("Compound"); - GroupPoints->ComboBox1->insertItem("Compsolid"); - GroupPoints->ComboBox1->insertItem("Solid"); - GroupPoints->ComboBox1->insertItem("Shell"); - GroupPoints->ComboBox1->insertItem("Face"); - GroupPoints->ComboBox1->insertItem("Wire"); - GroupPoints->ComboBox1->insertItem("Edge"); - GroupPoints->ComboBox1->insertItem("Vertex"); - GroupPoints->ComboBox1->insertItem("Shape"); - + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Compound" ); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Compsolid" ); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Solid" ); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Shell" ); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Face" ); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Wire" ); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Edge" ); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Vertex" ); + GroupPoints->ComboBox1->insertItem( GroupPoints->ComboBox1->count(), "Shape" ); + myWithShape = true; - - GroupPoints->ComboBox1->setCurrentItem( 8 - count + SelectedShapeType ); + + GroupPoints->ComboBox1->setCurrentIndex( 8 - count + SelectedShapeType ); ComboTextChanged(); updateButtonState(); @@ -414,13 +412,13 @@ void EntityGUI_SubShapeDlg::SubShapeToggled() //================================================================================= // function : ComboTextChanged() -// purpose : +// purpose : //================================================================================= void EntityGUI_SubShapeDlg::ComboTextChanged() { /* Select sub shapes mode not checked */ updateButtonState(); - SubShapeToggled(); + SubShapeToggled(); } @@ -428,32 +426,33 @@ void EntityGUI_SubShapeDlg::ComboTextChanged() // function : NumberOfSubShapes() // purpose : //================================================================================= -unsigned int EntityGUI_SubShapeDlg::NumberOfSubShapes (const TopoDS_Shape& S, - const int shapeType) const +unsigned int EntityGUI_SubShapeDlg::NumberOfSubShapes( const TopoDS_Shape& S, + const int shapeType ) const { - if (S.IsNull()) + if ( S.IsNull() ) return 0; unsigned int index = 0; TopTools_MapOfShape M; - if (S.ShapeType() == TopAbs_COMPOUND && - (TopAbs_ShapeEnum(shapeType) == TopAbs_SHAPE || - TopAbs_ShapeEnum(shapeType) == TopAbs_COMPSOLID || - TopAbs_ShapeEnum(shapeType) == TopAbs_COMPOUND)) { - TopoDS_Iterator It (S, Standard_True, Standard_True); - for (; It.More(); It.Next()) { - if (M.Add(It.Value())) { - if (TopAbs_ShapeEnum(shapeType) == TopAbs_SHAPE || - TopAbs_ShapeEnum(shapeType) == It.Value().ShapeType()) { + if ( S.ShapeType() == TopAbs_COMPOUND && + ( TopAbs_ShapeEnum(shapeType) == TopAbs_SHAPE || + TopAbs_ShapeEnum(shapeType) == TopAbs_COMPSOLID || + TopAbs_ShapeEnum(shapeType) == TopAbs_COMPOUND ) ) { + TopoDS_Iterator It( S, Standard_True, Standard_True ); + for ( ; It.More(); It.Next() ) { + if ( M.Add( It.Value() ) ) { + if ( TopAbs_ShapeEnum( shapeType ) == TopAbs_SHAPE || + TopAbs_ShapeEnum( shapeType ) == It.Value().ShapeType() ) { index++; } } } - } else { - TopExp_Explorer Exp (S, TopAbs_ShapeEnum(shapeType)); - for (; Exp.More(); Exp.Next()) { - if (M.Add(Exp.Current())) { + } + else { + TopExp_Explorer Exp ( S, TopAbs_ShapeEnum( shapeType ) ); + for ( ; Exp.More(); Exp.Next() ) { + if ( M.Add( Exp.Current() ) ) { index++; } } @@ -471,11 +470,11 @@ void EntityGUI_SubShapeDlg::updateButtonState() { if ( SUIT_Session::session()->activeApplication()->desktop()->activeWindow()->getViewManager()->getType() != OCCViewer_Viewer::Type() || myObject->_is_nil() || shapeType() == TopAbs_SHAPE || shapeType() == TopAbs_COMPOUND ) { - GroupPoints->CheckButton1->setChecked( FALSE ); - GroupPoints->CheckButton1->setEnabled( FALSE ); + GroupPoints->CheckButton1->setChecked( false ); + GroupPoints->CheckButton1->setEnabled( false ); } else - GroupPoints->CheckButton1->setEnabled( TRUE ); + GroupPoints->CheckButton1->setEnabled( true ); } //================================================================================= @@ -493,15 +492,15 @@ bool EntityGUI_SubShapeDlg::isAllSubShapes() const //================================================================================= int EntityGUI_SubShapeDlg::shapeType() const { - int type = GroupPoints->ComboBox1->currentItem(); + int type = GroupPoints->ComboBox1->currentIndex(); - if (myObject->_is_nil()) + if ( myObject->_is_nil() ) return type; // Solving PAL5590 type += myShape.ShapeType() + 1; - if (myShape.ShapeType() == TopAbs_COMPOUND && - NumberOfSubShapes(myShape, TopAbs_COMPOUND) > 0) { + if ( myShape.ShapeType() == TopAbs_COMPOUND && + NumberOfSubShapes( myShape, TopAbs_COMPOUND ) > 0 ) { type--; } @@ -521,33 +520,35 @@ GEOM::GEOM_IOperations_ptr EntityGUI_SubShapeDlg::createOperation() // function : isValid // purpose : //================================================================================= -bool EntityGUI_SubShapeDlg::isValid( QString& msg ) +bool EntityGUI_SubShapeDlg::isValid (QString& msg) { bool isOk = false; - Handle(SALOME_InteractiveObject) IO = firstIObject(); - Standard_Boolean testResult; - myObject = GEOMBase::ConvertIOinGEOMObject( IO, testResult ); - if ( !testResult || myObject->_is_nil() ) { + + if (myObject->_is_nil()) { updateButtonState(); return isOk; } - if ( !myObject->_is_nil() ) { - if ( isAllSubShapes() ) - isOk = true; - else if ( IObjectCount() == 1 ) { - Standard_Boolean aResult = Standard_False; - GEOM::GEOM_Object_var anObj = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), aResult ); - if ( aResult && !anObj->_is_nil() ) { - TColStd_IndexedMapOfInteger aMapIndex; - myGeomGUI->getApp()->selectionMgr()->GetIndexes( firstIObject(), aMapIndex ); - isOk = aMapIndex.Extent() > 0; - if ( !isOk ) - msg += tr( "NO_SUBSHAPES_SELECTED" ); + if (isAllSubShapes()) + isOk = true; + else { + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() == 1) { + Standard_Boolean testResult; + GEOM::GEOM_Object_var anObj = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + if (testResult && !anObj->_is_nil()) { + TColStd_IndexedMapOfInteger aMapIndex; + aSelMgr->GetIndexes(aSelList.First(), aMapIndex); + isOk = aMapIndex.Extent() > 0; + if (!isOk) + msg += tr("NO_SUBSHAPES_SELECTED"); } } } + return isOk; } @@ -555,40 +556,43 @@ bool EntityGUI_SubShapeDlg::isValid( QString& msg ) // function : execute // purpose : //================================================================================= -bool EntityGUI_SubShapeDlg::execute( ObjectList& objects ) +bool EntityGUI_SubShapeDlg::execute (ObjectList& objects) { - GEOM::ListOfGO_var aList = GEOM::GEOM_IShapesOperations::_narrow( - getOperation() )->MakeExplode( myObject, shapeType(), true ); + GEOM::ListOfGO_var aList = GEOM::GEOM_IShapesOperations::_narrow(getOperation())-> + MakeExplode(myObject, shapeType(), true); - if ( !aList->length() ) + if (!aList->length()) return false; - // Throw away sub-shapes not selected by user if not in preview mode + // Throw away sub-shapes not selected by user if not in preview mode // and manual selection is active - if ( !isAllSubShapes() ) - { - if ( IObjectCount() == 1 ) { + if (!isAllSubShapes()) { + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() == 1) { Standard_Boolean aResult = Standard_False; GEOM::GEOM_Object_var anObj = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), aResult ); + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aResult); - if ( aResult && !anObj->_is_nil() ) { + if (aResult && !anObj->_is_nil()) { TColStd_IndexedMapOfInteger aMapIndex; - myGeomGUI->getApp()->selectionMgr()->GetIndexes( firstIObject(), aMapIndex ); + aSelMgr->GetIndexes(aSelList.First(), aMapIndex); - GEOM::GEOM_ILocalOperations_var aLocOp = - getGeomEngine()->GetILocalOperations( getStudyId() ); + GEOM::GEOM_ILocalOperations_var aLocOp = + getGeomEngine()->GetILocalOperations(getStudyId()); - for ( int i = 0, n = aList->length(); i < n; i++ ) - if ( aMapIndex.Contains( aLocOp->GetSubShapeIndex( myObject, aList[i] ) ) ) - objects.push_back( GEOM::GEOM_Object::_duplicate( aList[i] ) ); + for (int i = 0, n = aList->length(); i < n; i++) + if (aMapIndex.Contains(aLocOp->GetSubShapeIndex(myObject, aList[i]))) + objects.push_back(GEOM::GEOM_Object::_duplicate(aList[i])); } } } else - for ( int i = 0, n = aList->length(); i < n; i++ ) - objects.push_back( GEOM::GEOM_Object::_duplicate( aList[i] ) ); - + for (int i = 0, n = aList->length(); i < n; i++) + objects.push_back(GEOM::GEOM_Object::_duplicate(aList[i])); + return objects.size(); } @@ -602,7 +606,7 @@ GEOM::GEOM_Object_ptr EntityGUI_SubShapeDlg::getFather( GEOM::GEOM_Object_ptr ) return myObject; } -const char* EntityGUI_SubShapeDlg::getNewObjectName() const +QString EntityGUI_SubShapeDlg::getNewObjectName() const { - return ""; + return QString::null; } diff --git a/src/EntityGUI/EntityGUI_SubShapeDlg.h b/src/EntityGUI/EntityGUI_SubShapeDlg.h index 5d70497e9..6dbd0cb8f 100644 --- a/src/EntityGUI/EntityGUI_SubShapeDlg.h +++ b/src/EntityGUI/EntityGUI_SubShapeDlg.h @@ -1,92 +1,86 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : EntityGUI_SubShapeDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : EntityGUI_SubShapeDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef ENTITYGUI_SUBSHAPEDLG_H +#define ENTITYGUI_SUBSHAPEDLG_H -#ifndef DIALOGBOX_SUBSHAPE_H -#define DIALOGBOX_SUBSHAPE_H - -#include "GEOM_EntityGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel1Check1List_QTD.h" +#include +class DlgRef_1Sel1Check1List; //================================================================================= // class : EntityGUI_SubShapeDlg // purpose : //================================================================================= -class GEOM_ENTITYGUI_EXPORT EntityGUI_SubShapeDlg : public GEOMBase_Skeleton +class EntityGUI_SubShapeDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - EntityGUI_SubShapeDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~EntityGUI_SubShapeDlg(); + EntityGUI_SubShapeDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~EntityGUI_SubShapeDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual GEOM::GEOM_Object_ptr getFather( GEOM::GEOM_Object_ptr theObj ); - virtual const char* getNewObjectName() const; + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual GEOM::GEOM_Object_ptr getFather( GEOM::GEOM_Object_ptr ); + virtual QString getNewObjectName() const; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void DeactivateActiveDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void SubShapeToggled(); - void ComboTextChanged(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void DeactivateActiveDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void SubShapeToggled(); + void ComboTextChanged(); -private : - void Init(); - void enterEvent( QEvent* e ); +private: + void Init(); + void enterEvent( QEvent* ); - void ResetStateOfDialog(); - unsigned int NumberOfSubShapes (const TopoDS_Shape& S, - const int shapeType) const; + void ResetStateOfDialog(); + unsigned int NumberOfSubShapes( const TopoDS_Shape&, + const int ) const; - void updateButtonState(); - bool isAllSubShapes() const; - int shapeType() const; + void updateButtonState(); + bool isAllSubShapes() const; + int shapeType() const; private: - - TopoDS_Shape myShape; - GEOM::GEOM_Object_var myObject; - - bool myWithShape; - - DlgRef_1Sel1Check1List_QTD* GroupPoints; - ObjectList myResult; + TopoDS_Shape myShape; + GEOM::GEOM_Object_var myObject; + + bool myWithShape; + + DlgRef_1Sel1Check1List* GroupPoints; + ObjectList myResult; }; -#endif // DIALOGBOX_SUBSHAPE_H +#endif // ENTITYGUI_SUBSHAPEDLG_H diff --git a/src/EntityGUI/EntityGUI_Widgets.cxx b/src/EntityGUI/EntityGUI_Widgets.cxx new file mode 100644 index 000000000..663d80d7e --- /dev/null +++ b/src/EntityGUI/EntityGUI_Widgets.cxx @@ -0,0 +1,173 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 : EntityGUI_Widgets.cxx +// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com) +// +#include "EntityGUI_Widgets.h" +#include + +////////////////////////////////////////// +// EntityGUI_1Sel +////////////////////////////////////////// + +EntityGUI_1Sel::EntityGUI_1Sel( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +EntityGUI_1Sel::~EntityGUI_1Sel() +{ +} + +////////////////////////////////////////// +// EntityGUI_1Spin +////////////////////////////////////////// + +EntityGUI_1Spin::EntityGUI_1Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +EntityGUI_1Spin::~EntityGUI_1Spin() +{ +} + +////////////////////////////////////////// +// EntityGUI_2Spin +////////////////////////////////////////// + +EntityGUI_2Spin::EntityGUI_2Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +EntityGUI_2Spin::~EntityGUI_2Spin() +{ +} + +////////////////////////////////////////// +// EntityGUI_3Spin +////////////////////////////////////////// + +EntityGUI_3Spin::EntityGUI_3Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +EntityGUI_3Spin::~EntityGUI_3Spin() +{ +} + +////////////////////////////////////////// +// EntityGUI_4Spin +////////////////////////////////////////// + +EntityGUI_4Spin::EntityGUI_4Spin( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +EntityGUI_4Spin::~EntityGUI_4Spin() +{ +} + +////////////////////////////////////////// +// EntityGUI_Dir1 +////////////////////////////////////////// + +EntityGUI_Dir1::EntityGUI_Dir1( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); + + ButtonGroup = new QButtonGroup( this ); + ButtonGroup->addButton( RB_Dir11, 2 ); + ButtonGroup->addButton( RB_Dir12, 0 ); + ButtonGroup->addButton( RB_Dir13, 1 ); + ButtonGroup->addButton( RB_Dir14, 3 ); +} + +EntityGUI_Dir1::~EntityGUI_Dir1() +{ +} + +////////////////////////////////////////// +// EntityGUI_Dir2 +////////////////////////////////////////// + +EntityGUI_Dir2::EntityGUI_Dir2( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); + + ButtonGroup = new QButtonGroup( this ); + ButtonGroup->addButton( RB_Dir21, 2 ); + ButtonGroup->addButton( RB_Dir22, 0 ); + ButtonGroup->addButton( RB_Dir23, 1 ); +} + +EntityGUI_Dir2::~EntityGUI_Dir2() +{ +} + +////////////////////////////////////////// +// EntityGUI_Point +////////////////////////////////////////// + +EntityGUI_Point::EntityGUI_Point( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); + + ButtonGroup = new QButtonGroup( this ); + ButtonGroup->addButton( RB_Point1, 1 ); + ButtonGroup->addButton( RB_Point2, 0 ); + ButtonGroup->addButton( RB_Point3, 2 ); +} + +EntityGUI_Point::~EntityGUI_Point() +{ +} + +////////////////////////////////////////// +// EntityGUI_Skeleton +////////////////////////////////////////// + +EntityGUI_Skeleton::EntityGUI_Skeleton( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); + + ButtonGroup = new QButtonGroup( this ); + ButtonGroup->addButton( RadioButton1, 0 ); + ButtonGroup->addButton( RadioButton2, 1 ); +} + +EntityGUI_Skeleton::~EntityGUI_Skeleton() +{ +} + diff --git a/src/EntityGUI/EntityGUI_Widgets.h b/src/EntityGUI/EntityGUI_Widgets.h new file mode 100644 index 000000000..40cc20ed7 --- /dev/null +++ b/src/EntityGUI/EntityGUI_Widgets.h @@ -0,0 +1,182 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 : EntityGUI_Widgets.h +// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com) +// +#ifndef ENTITYGUI_WIDGETS_H +#define ENTITYGUI_WIDGETS_H + +////////////////////////////////////////// +// EntityGUI_1Sel +////////////////////////////////////////// + +#include "ui_EntityGUI_1Sel_QTD.h" + +class EntityGUI_1Sel : public QWidget, + public Ui::EntityGUI_1Sel_QTD +{ + Q_OBJECT + +public: + EntityGUI_1Sel( QWidget* = 0, Qt::WindowFlags = 0 ); + ~EntityGUI_1Sel(); +}; + +////////////////////////////////////////// +// EntityGUI_1Spin +////////////////////////////////////////// + +#include "ui_EntityGUI_1Spin_QTD.h" + +class EntityGUI_1Spin : public QWidget, + public Ui::EntityGUI_1Spin_QTD +{ + Q_OBJECT + +public: + EntityGUI_1Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~EntityGUI_1Spin(); +}; + +////////////////////////////////////////// +// EntityGUI_2Spin +////////////////////////////////////////// + +#include "ui_EntityGUI_2Spin_QTD.h" + +class EntityGUI_2Spin : public QWidget, + public Ui::EntityGUI_2Spin_QTD +{ + Q_OBJECT + +public: + EntityGUI_2Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~EntityGUI_2Spin(); +}; + +////////////////////////////////////////// +// EntityGUI_3Spin +////////////////////////////////////////// + +#include "ui_EntityGUI_3Spin_QTD.h" + +class EntityGUI_3Spin : public QWidget, + public Ui::EntityGUI_3Spin_QTD +{ + Q_OBJECT + +public: + EntityGUI_3Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~EntityGUI_3Spin(); +}; + +////////////////////////////////////////// +// EntityGUI_4Spin +////////////////////////////////////////// + +#include "ui_EntityGUI_4Spin_QTD.h" + +class EntityGUI_4Spin : public QWidget, + public Ui::EntityGUI_4Spin_QTD +{ + Q_OBJECT + +public: + EntityGUI_4Spin( QWidget* = 0, Qt::WindowFlags = 0 ); + ~EntityGUI_4Spin(); +}; + +////////////////////////////////////////// +// EntityGUI_Dir1 +////////////////////////////////////////// + +#include "ui_EntityGUI_Dir1_QTD.h" + +class EntityGUI_Dir1 : public QWidget, + public Ui::EntityGUI_Dir1_QTD +{ + Q_OBJECT + +public: + EntityGUI_Dir1( QWidget* = 0, Qt::WindowFlags = 0 ); + ~EntityGUI_Dir1(); + + QButtonGroup* ButtonGroup; +}; + +////////////////////////////////////////// +// EntityGUI_Dir2 +////////////////////////////////////////// + +#include "ui_EntityGUI_Dir2_QTD.h" + +class EntityGUI_Dir2 : public QWidget, + public Ui::EntityGUI_Dir2_QTD +{ + Q_OBJECT + +public: + EntityGUI_Dir2( QWidget* = 0, Qt::WindowFlags = 0 ); + ~EntityGUI_Dir2(); + + QButtonGroup* ButtonGroup; +}; + +////////////////////////////////////////// +// EntityGUI_Point +////////////////////////////////////////// + +#include "ui_EntityGUI_Point_QTD.h" + +class EntityGUI_Point : public QWidget, + public Ui::EntityGUI_Point_QTD +{ + Q_OBJECT + +public: + EntityGUI_Point( QWidget* = 0, Qt::WindowFlags = 0 ); + ~EntityGUI_Point(); + + QButtonGroup* ButtonGroup; +}; + +////////////////////////////////////////// +// EntityGUI_Skeleton +////////////////////////////////////////// + +#include "ui_EntityGUI_Skeleton_QTD.h" + +class QButtonGroup; + +class EntityGUI_Skeleton : public QWidget, + public Ui::EntityGUI_Skeleton_QTD +{ + Q_OBJECT + +public: + EntityGUI_Skeleton( QWidget* = 0, Qt::WindowFlags = 0 ); + ~EntityGUI_Skeleton(); + + QButtonGroup* ButtonGroup; +}; + +#endif // ENTITYGUI_WIDGETS_H diff --git a/src/EntityGUI/GEOM_EntityGUI.hxx b/src/EntityGUI/GEOM_EntityGUI.hxx deleted file mode 100755 index 2a42f3423..000000000 --- a/src/EntityGUI/GEOM_EntityGUI.hxx +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org -// -// -// -// File : GEOM_EntityGUI.hxx -// Author : Alexander A. BORODIN -// Module : GEOM - -#ifndef _GEOM_EntityGUI_HXX_ -#define _GEOM_EntityGUI_HXX_ - -#ifdef WNT - #if defined ENTITYGUI_EXPORTS - #if defined WIN32 - #define GEOM_ENTITYGUI_EXPORT __declspec( dllexport ) - #else - #define GEOM_ENTITYGUI_EXPORT - #endif - #else - #if defined WIN32 - #define GEOM_ENTITYGUI_EXPORT __declspec( dllimport ) - #else - #define GEOM_ENTITYGUI_EXPORT - #endif - #endif -#else - #define GEOM_ENTITYGUI_EXPORT -#endif - -#endif diff --git a/src/EntityGUI/Makefile.am b/src/EntityGUI/Makefile.am index 2afe2a1a2..f54555614 100644 --- a/src/EntityGUI/Makefile.am +++ b/src/EntityGUI/Makefile.am @@ -1,110 +1,100 @@ -# GEOM ENTITYGUI : +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# GEOM ENTITYGUI : +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : EntityGUI # -# File : Makefile.in -# Author : Damien COQUERET (OCC) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header: - include $(top_srcdir)/adm_local/unix/make_common_starter.am # Libraries targets lib_LTLIBRARIES = libEntityGUI.la # header files -salomeinclude_HEADERS = \ - GEOM_EntityGUI.hxx +salomeinclude_HEADERS = \ + EntityGUI.h \ + EntityGUI_Widgets.h \ + EntityGUI_SketcherDlg.h \ + EntityGUI_3DSketcherDlg.h \ + EntityGUI_SubShapeDlg.h -dist_libEntityGUI_la_SOURCES = EntityGUI.cxx \ - EntityGUI_Skeleton_QTD.cxx \ - EntityGUI_Point_QTD.cxx \ - EntityGUI_Dir1_QTD.cxx \ - EntityGUI_Dir2_QTD.cxx \ - EntityGUI_1Sel_QTD.cxx \ - EntityGUI_1Spin_QTD.cxx \ - EntityGUI_2Spin_QTD.cxx \ - EntityGUI_3Spin_QTD.cxx \ - EntityGUI_4Spin_QTD.cxx \ - EntityGUI_1Spin.cxx \ - EntityGUI_2Spin.cxx \ - EntityGUI_3Spin.cxx \ - EntityGUI_4Spin.cxx \ - EntityGUI_SketcherDlg.cxx \ +dist_libEntityGUI_la_SOURCES = \ + EntityGUI.cxx \ + EntityGUI_Widgets.cxx \ + EntityGUI_SketcherDlg.cxx \ + EntityGUI_3DSketcherDlg.cxx \ EntityGUI_SubShapeDlg.cxx -MOC_FILES = \ - EntityGUI_Skeleton_QTD_moc.cxx \ - EntityGUI_Point_QTD_moc.cxx \ - EntityGUI_Dir1_QTD_moc.cxx \ - EntityGUI_Dir2_QTD_moc.cxx \ - EntityGUI_1Sel_QTD_moc.cxx \ - EntityGUI_1Spin_QTD_moc.cxx \ - EntityGUI_2Spin_QTD_moc.cxx \ - EntityGUI_3Spin_QTD_moc.cxx \ - EntityGUI_4Spin_QTD_moc.cxx \ - EntityGUI_1Spin_moc.cxx \ - EntityGUI_2Spin_moc.cxx \ - EntityGUI_3Spin_moc.cxx \ - EntityGUI_4Spin_moc.cxx \ - EntityGUI_SketcherDlg_moc.cxx \ +MOC_FILES = \ + EntityGUI_Widgets_moc.cxx \ + EntityGUI_SketcherDlg_moc.cxx \ + EntityGUI_3DSketcherDlg_moc.cxx \ EntityGUI_SubShapeDlg_moc.cxx -nodist_libEntityGUI_la_SOURCES= \ +nodist_libEntityGUI_la_SOURCES = \ $(MOC_FILES) -# LIB_CLIENT_IDL = SALOME_Exception.idl SALOME_GenericObj.idl SALOME_Component.idl +UIC_FILES = \ + ui_EntityGUI_1Sel_QTD.h \ + ui_EntityGUI_1Spin_QTD.h \ + ui_EntityGUI_2Spin_QTD.h \ + ui_EntityGUI_3Spin_QTD.h \ + ui_EntityGUI_4Spin_QTD.h \ + ui_EntityGUI_Dir1_QTD.h \ + ui_EntityGUI_Dir2_QTD.h \ + ui_EntityGUI_Point_QTD.h \ + ui_EntityGUI_Skeleton_QTD.h -# LIB_SERVER_IDL = +BUILT_SOURCES = $(UIC_FILES) -# additionnal information to compil and link file +# additional information to compile and link file -libEntityGUI_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(VTK_INCLUDES) \ - $(PYTHON_INCLUDES) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../GEOMGUI \ - -I$(srcdir)/../DlgRef \ - -I$(srcdir)/../GEOMBase \ - -I$(srcdir)/../OBJECT \ - -I$(srcdir)/../GEOMClient \ - -I$(srcdir)/../GEOMImpl \ - -I$(srcdir)/../GEOMFiltersSelection \ - -I$(srcdir)/../SKETCHER \ - -I$(top_builddir)/idl \ +libEntityGUI_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(VTK_INCLUDES) \ + $(PYTHON_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../GEOMGUI \ + -I$(srcdir)/../DlgRef \ + -I$(srcdir)/../GEOMBase \ + -I$(srcdir)/../OBJECT \ + -I$(srcdir)/../GEOMClient \ + -I$(srcdir)/../GEOMImpl \ + -I$(srcdir)/../GEOMFiltersSelection \ + -I$(srcdir)/../SKETCHER \ + -I$(top_builddir)/src/DlgRef \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libEntityGUI_la_LDFLAGS = \ - ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ - ../GEOMBase/libGEOMBase.la \ - ../SKETCHER/libGEOMSketcher.la \ - ../GEOMGUI/libGEOM.la \ - $(QT_MT_LIBS) \ +libEntityGUI_la_LDFLAGS = \ + ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ + ../GEOMBase/libGEOMBase.la \ + ../SKETCHER/libGEOMSketcher.la \ + ../GEOMGUI/libGEOM.la \ + $(QT_MT_LIBS) \ $(CAS_TKTopAlgo) -lTKernel diff --git a/src/EntityGUI/UIFiles/EntityGUI_1Sel_QTD.ui b/src/EntityGUI/UIFiles/EntityGUI_1Sel_QTD.ui deleted file mode 100644 index c88df1ae6..000000000 --- a/src/EntityGUI/UIFiles/EntityGUI_1Sel_QTD.ui +++ /dev/null @@ -1,218 +0,0 @@ - -EntityGUI_1Sel_QTD - - - EntityGUI_1Sel_QTD - - - - 0 - 0 - 329 - 112 - - - - EntityGUI_1Sel_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - Values - - - - unnamed - - - 11 - - - 6 - - - - Layout4 - - - - unnamed - - - 0 - - - 6 - - - - Layout3 - - - - unnamed - - - 0 - - - 6 - - - - Spacer5 - - - Vertical - - - Expanding - - - - 0 - 163 - - - - - - buttonApply - - - Create - - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - buttonRedo - - - Redo - - - - - buttonUndo - - - Undo - - - - - - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - Spacer1 - - - Vertical - - - Expanding - - - - 0 - 180 - - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - LineEdit1 - - - - 3 - 0 - 0 - 0 - - - - - - - - - - - - - - diff --git a/src/EntityGUI/UIFiles/EntityGUI_1Spin_QTD.ui b/src/EntityGUI/UIFiles/EntityGUI_1Spin_QTD.ui deleted file mode 100644 index e1d0a7151..000000000 --- a/src/EntityGUI/UIFiles/EntityGUI_1Spin_QTD.ui +++ /dev/null @@ -1,201 +0,0 @@ - -EntityGUI_1Spin_QTD - - - EntityGUI_1Spin_QTD - - - - 0 - 0 - 255 - 112 - - - - EntityGUI_1Spin_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - Values - - - - unnamed - - - 11 - - - 6 - - - - Layout4 - - - - unnamed - - - 0 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - Spacer1 - - - Vertical - - - Expanding - - - - 0 - 82 - - - - - - - - Layout3 - - - - unnamed - - - 0 - - - 6 - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - buttonRedo - - - Redo - - - - - buttonUndo - - - Undo - - - - - - - buttonApply - - - Create - - - - - Spacer5 - - - Vertical - - - Expanding - - - - 0 - 40 - - - - - - - - - - - - - diff --git a/src/EntityGUI/UIFiles/EntityGUI_2Spin_QTD.ui b/src/EntityGUI/UIFiles/EntityGUI_2Spin_QTD.ui deleted file mode 100644 index 938383c07..000000000 --- a/src/EntityGUI/UIFiles/EntityGUI_2Spin_QTD.ui +++ /dev/null @@ -1,230 +0,0 @@ - -EntityGUI_2Spin_QTD - - - EntityGUI_2Spin_QTD - - - - 0 - 0 - 255 - 112 - - - - EntityGUI_2Spin_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - Values - - - - unnamed - - - 11 - - - 6 - - - - Layout4 - - - - unnamed - - - 0 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - Spacer1 - - - Vertical - - - Expanding - - - - 0 - 82 - - - - - - - - Layout3 - - - - unnamed - - - 0 - - - 6 - - - - Spacer5 - - - Vertical - - - Expanding - - - - 0 - 51 - - - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - buttonUndo - - - Undo - - - - - buttonRedo - - - Redo - - - - - - - buttonApply - - - Create - - - - - - - - - - - - diff --git a/src/EntityGUI/UIFiles/EntityGUI_3Spin_QTD.ui b/src/EntityGUI/UIFiles/EntityGUI_3Spin_QTD.ui deleted file mode 100644 index c094d5791..000000000 --- a/src/EntityGUI/UIFiles/EntityGUI_3Spin_QTD.ui +++ /dev/null @@ -1,259 +0,0 @@ - -EntityGUI_3Spin_QTD - - - EntityGUI_3Spin_QTD - - - - 0 - 0 - 255 - 125 - - - - EntityGUI_3Spin_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - Values - - - - unnamed - - - 11 - - - 6 - - - - Layout4 - - - - unnamed - - - 0 - - - 6 - - - - Layout3 - - - - unnamed - - - 0 - - - 6 - - - - buttonApply - - - Create - - - - - Spacer5 - - - Vertical - - - Expanding - - - - 0 - 121 - - - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - buttonUndo - - - Undo - - - - - buttonRedo - - - Redo - - - - - - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - Spacer1 - - - Vertical - - - Expanding - - - - 0 - 82 - - - - - - SpinBox3 - - - - 7 - 0 - 0 - 0 - - - - - - - - - - - - - diff --git a/src/EntityGUI/UIFiles/EntityGUI_4Spin_QTD.ui b/src/EntityGUI/UIFiles/EntityGUI_4Spin_QTD.ui deleted file mode 100644 index 956ce0d1b..000000000 --- a/src/EntityGUI/UIFiles/EntityGUI_4Spin_QTD.ui +++ /dev/null @@ -1,288 +0,0 @@ - -EntityGUI_4Spin_QTD - - - EntityGUI_4Spin_QTD - - - - 0 - 0 - 255 - 154 - - - - EntityGUI_4Spin_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - Values - - - - unnamed - - - 11 - - - 6 - - - - Layout4 - - - - unnamed - - - 0 - - - 6 - - - - Layout3 - - - - unnamed - - - 0 - - - 6 - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - buttonRedo - - - Redo - - - - - buttonUndo - - - Undo - - - - - - - Spacer5 - - - Vertical - - - Expanding - - - - 0 - 45 - - - - - - buttonApply - - - Create - - - - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - SpinBox3 - - - - 7 - 0 - 0 - 0 - - - - - - SpinBox2 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - Spacer1 - - - Vertical - - - Expanding - - - - 0 - 70 - - - - - - SpinBox4 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - SpinBox1 - - - - 7 - 0 - 0 - 0 - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - - - - - - - - diff --git a/src/EntityGUI/UIFiles/EntityGUI_Dir1_QTD.ui b/src/EntityGUI/UIFiles/EntityGUI_Dir1_QTD.ui deleted file mode 100644 index 59f644641..000000000 --- a/src/EntityGUI/UIFiles/EntityGUI_Dir1_QTD.ui +++ /dev/null @@ -1,112 +0,0 @@ - -EntityGUI_Dir1_QTD - - - EntityGUI_Dir1_QTD - - - - 0 - 0 - 131 - 123 - - - - EntityGUI_Dir1_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupDir1 - - - - 7 - 0 - 0 - 0 - - - - Direction - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - RB_Dir12 - - - Perpendicular - - - - - RB_Dir13 - - - Tangent - - - - - RB_Dir11 - - - Angle - - - - - RB_Dir14 - - - VX-VY - - - - - - - - - - RB_Dir11 - RB_Dir12 - RB_Dir13 - RB_Dir14 - - - diff --git a/src/EntityGUI/UIFiles/EntityGUI_Dir2_QTD.ui b/src/EntityGUI/UIFiles/EntityGUI_Dir2_QTD.ui deleted file mode 100644 index 617d3c3f6..000000000 --- a/src/EntityGUI/UIFiles/EntityGUI_Dir2_QTD.ui +++ /dev/null @@ -1,120 +0,0 @@ - -EntityGUI_Dir2_QTD - - - EntityGUI_Dir2_QTD - - - - 0 - 0 - 124 - 106 - - - - EntityGUI_Dir2_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupDir2 - - - - 7 - 7 - 0 - 0 - - - - Direction - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - RB_Dir22 - - - X - - - - - RB_Dir23 - - - Y - - - - - Spacer4 - - - Vertical - - - Expanding - - - - 0 - 20 - - - - - - RB_Dir21 - - - Length - - - - - - - - - - RB_Dir21 - RB_Dir22 - RB_Dir23 - - - diff --git a/src/EntityGUI/UIFiles/EntityGUI_Point_QTD.ui b/src/EntityGUI/UIFiles/EntityGUI_Point_QTD.ui deleted file mode 100644 index 8e0bd22ad..000000000 --- a/src/EntityGUI/UIFiles/EntityGUI_Point_QTD.ui +++ /dev/null @@ -1,103 +0,0 @@ - -EntityGUI_Point_QTD - - - EntityGUI_Point_QTD - - - - 0 - 0 - 124 - 106 - - - - EntityGUI_Point_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupPoint - - - - 7 - 0 - 0 - 0 - - - - Point - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - RB_Point2 - - - Relative - - - - - RB_Point1 - - - Absolute - - - - - RB_Point3 - - - Selection - - - - - - - - - - RB_Point1 - RB_Point2 - RB_Point3 - - - diff --git a/src/EntityGUI/UIFiles/EntityGUI_Skeleton_QTD.ui b/src/EntityGUI/UIFiles/EntityGUI_Skeleton_QTD.ui deleted file mode 100644 index cdcd86400..000000000 --- a/src/EntityGUI/UIFiles/EntityGUI_Skeleton_QTD.ui +++ /dev/null @@ -1,278 +0,0 @@ - -EntityGUI_Skeleton_QTD - - - EntityGUI_Skeleton_QTD - - - - 0 - 0 - 317 - 276 - - - - - 5 - 7 - 0 - 0 - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - GroupConstructors - - - - 5 - 0 - 0 - 0 - - - - - unnamed - - - 11 - - - 6 - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - RadioButton1 - - - - - RadioButton2 - - - - - - - - - GroupDest - - - - 7 - 0 - 0 - 0 - - - - - unnamed - - - 11 - - - 6 - - - - Layout5 - - - - unnamed - - - 0 - - - 6 - - - - GroupDest1 - - - - 7 - 0 - 0 - 0 - - - - - unnamed - - - 11 - - - 6 - - - - Layout4 - - - - unnamed - - - 0 - - - 6 - - - - RB_Dest2 - - - - - RB_Dest1 - - - - - - - - - - - - - GroupButtons - - - - 7 - 0 - 0 - 0 - - - - - unnamed - - - 11 - - - 6 - - - - Layout3 - - - - unnamed - - - 0 - - - 6 - - - - buttonEnd - - - - - buttonClose - - - - - Spacer1 - - - Horizontal - - - Expanding - - - - 91 - 0 - - - - - - buttonCancel - - - - - buttonHelp - - - - - - - - - - - - RadioButton1 - RadioButton2 - RB_Dest1 - RB_Dest2 - buttonEnd - buttonClose - buttonCancel - - - diff --git a/src/EntityGUI/UIFiles/ui_to_cxx b/src/EntityGUI/UIFiles/ui_to_cxx deleted file mode 100755 index 13bc0ac3d..000000000 --- a/src/EntityGUI/UIFiles/ui_to_cxx +++ /dev/null @@ -1,47 +0,0 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -#!/bin/sh - -uic -o EntityGUI_Skeleton_QTD.h EntityGUI_Skeleton_QTD.ui -uic -o EntityGUI_Skeleton_QTD.cxx -impl EntityGUI_Skeleton_QTD.h EntityGUI_Skeleton_QTD.ui - -uic -o EntityGUI_Point_QTD.h EntityGUI_Point_QTD.ui -uic -o EntityGUI_Point_QTD.cxx -impl EntityGUI_Point_QTD.h EntityGUI_Point_QTD.ui - -uic -o EntityGUI_Dir1_QTD.h EntityGUI_Dir1_QTD.ui -uic -o EntityGUI_Dir1_QTD.cxx -impl EntityGUI_Dir1_QTD.h EntityGUI_Dir1_QTD.ui - -uic -o EntityGUI_Dir2_QTD.h EntityGUI_Dir2_QTD.ui -uic -o EntityGUI_Dir2_QTD.cxx -impl EntityGUI_Dir2_QTD.h EntityGUI_Dir2_QTD.ui - -uic -o EntityGUI_1Spin_QTD.h EntityGUI_1Spin_QTD.ui -uic -o EntityGUI_1Spin_QTD.cxx -impl EntityGUI_1Spin_QTD.h EntityGUI_1Spin_QTD.ui - -uic -o EntityGUI_2Spin_QTD.h EntityGUI_2Spin_QTD.ui -uic -o EntityGUI_2Spin_QTD.cxx -impl EntityGUI_2Spin_QTD.h EntityGUI_2Spin_QTD.ui - -uic -o EntityGUI_3Spin_QTD.h EntityGUI_3Spin_QTD.ui -uic -o EntityGUI_3Spin_QTD.cxx -impl EntityGUI_3Spin_QTD.h EntityGUI_3Spin_QTD.ui - -uic -o EntityGUI_4Spin_QTD.h EntityGUI_4Spin_QTD.ui -uic -o EntityGUI_4Spin_QTD.cxx -impl EntityGUI_4Spin_QTD.h EntityGUI_4Spin_QTD.ui - -uic -o EntityGUI_1Sel_QTD.h EntityGUI_1Sel_QTD.ui -uic -o EntityGUI_1Sel_QTD.cxx -impl EntityGUI_1Sel_QTD.h EntityGUI_1Sel_QTD.ui diff --git a/src/GEOM/GEOM.pro b/src/GEOM/GEOM.pro new file mode 100644 index 000000000..5de328db0 --- /dev/null +++ b/src/GEOM/GEOM.pro @@ -0,0 +1,82 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = GEOMbasic +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +BOOST_CPPFLAGS = $$(BOOSTDIR)/include + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +STDLIB = -lstdc++ + +CAS_LDPATH = -L$${CASROOT}/Linux/lib + +CAS_OCAF = -L$${CASROOT}/Linux/lib -lPTKernel -lTKernel -lTKCDF -lTKLCAF -lTKPCAF -lTKStdSchema + +CAS_OCAFVIS = -L$${CASROOT}/Linux/lib -lTKCAF -lStdPlugin -lStdLPlugin -lTKPLCAF -lTKPShape -lTKStdLSchema -lTKShapeSchema + +INCLUDEPATH += $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} $${BOOST_CPPFLAGS} ../../salome_adm/unix + +LIBS += $${KERNEL_LDFLAGS} -lSALOMELocalTrace $${STDLIB} $${CAS_LDPATH} -lTKXSBase $${CAS_OCAF} $${CAS_OCAFVIS} + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS + +HEADERS = GEOM_Application.hxx +HEADERS += Handle_GEOM_Application.hxx +HEADERS += GEOM_Engine.hxx +HEADERS += GEOM_Function.hxx +HEADERS += GEOM_Object.hxx +HEADERS += GEOM_IOperations.hxx +HEADERS += GEOM_ISubShape.hxx +HEADERS += GEOM_Solver.hxx +HEADERS += GEOM_PythonDump.hxx +HEADERS += GEOM_DataMapOfAsciiStringTransient.hxx +HEADERS += Handle_GEOM_DataMapNodeOfDataMapOfAsciiStringTransient.hxx + +SOURCES = GEOM_Application.cxx +SOURCES += GEOM_Engine.cxx +SOURCES += GEOM_Function.cxx +SOURCES += GEOM_Object.cxx +SOURCES += GEOM_IOperations.cxx +SOURCES += GEOM_Solver.cxx +SOURCES += GEOM_SubShapeDriver.cxx +SOURCES += GEOM_PythonDump.cxx +SOURCES += GEOM_DataMapNodeOfDataMapOfAsciiStringTransient_0.cxx +SOURCES += GEOM_DataMapIteratorOfDataMapOfAsciiStringTransient_0.cxx +SOURCES += GEOM_DataMapOfAsciiStringTransient_0.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/GEOM/GEOM_Application.cxx b/src/GEOM/GEOM_Application.cxx index 6ecba8d6b..4de898cb4 100644 --- a/src/GEOM/GEOM_Application.cxx +++ b/src/GEOM/GEOM_Application.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOM/GEOM_Application.hxx b/src/GEOM/GEOM_Application.hxx index b6aef4b28..119f84d95 100644 --- a/src/GEOM/GEOM_Application.hxx +++ b/src/GEOM/GEOM_Application.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOM_Application.hxx // Module : GEOM - +// #ifndef _GEOM_Application_HeaderFile #define _GEOM_Application_HeaderFile diff --git a/src/GEOM/GEOM_Application.ixx b/src/GEOM/GEOM_Application.ixx index 5f26e54c6..8a2c33ff7 100644 --- a/src/GEOM/GEOM_Application.ixx +++ b/src/GEOM/GEOM_Application.ixx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOM_Application.ixx // Module : GEOM - +// #include "GEOM_Application.jxx" #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOM/GEOM_Application.jxx b/src/GEOM/GEOM_Application.jxx index 9056b0445..87ed25a97 100644 --- a/src/GEOM/GEOM_Application.jxx +++ b/src/GEOM/GEOM_Application.jxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOM_Application.jxx // Module : GEOM - +// #ifndef _TColStd_SequenceOfExtendedString_HeaderFile #include #endif diff --git a/src/GEOM/GEOM_DataMapIteratorOfDataMapOfAsciiStringTransient.hxx b/src/GEOM/GEOM_DataMapIteratorOfDataMapOfAsciiStringTransient.hxx index 54b02b9fe..1d590cd26 100644 --- a/src/GEOM/GEOM_DataMapIteratorOfDataMapOfAsciiStringTransient.hxx +++ b/src/GEOM/GEOM_DataMapIteratorOfDataMapOfAsciiStringTransient.hxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_DataMapIteratorOfDataMapOfAsciiStringTransient_HeaderFile #define _GEOM_DataMapIteratorOfDataMapOfAsciiStringTransient_HeaderFile diff --git a/src/GEOM/GEOM_DataMapIteratorOfDataMapOfAsciiStringTransient_0.cxx b/src/GEOM/GEOM_DataMapIteratorOfDataMapOfAsciiStringTransient_0.cxx index 18ec2e283..9bc173990 100644 --- a/src/GEOM/GEOM_DataMapIteratorOfDataMapOfAsciiStringTransient_0.cxx +++ b/src/GEOM/GEOM_DataMapIteratorOfDataMapOfAsciiStringTransient_0.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/GEOM/GEOM_DataMapNodeOfDataMapOfAsciiStringTransient.hxx b/src/GEOM/GEOM_DataMapNodeOfDataMapOfAsciiStringTransient.hxx index 3fd6bb480..f63d23b3b 100644 --- a/src/GEOM/GEOM_DataMapNodeOfDataMapOfAsciiStringTransient.hxx +++ b/src/GEOM/GEOM_DataMapNodeOfDataMapOfAsciiStringTransient.hxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_DataMapNodeOfDataMapOfAsciiStringTransient_HeaderFile #define _GEOM_DataMapNodeOfDataMapOfAsciiStringTransient_HeaderFile diff --git a/src/GEOM/GEOM_DataMapNodeOfDataMapOfAsciiStringTransient_0.cxx b/src/GEOM/GEOM_DataMapNodeOfDataMapOfAsciiStringTransient_0.cxx index 18471f8b5..7dbb47f54 100644 --- a/src/GEOM/GEOM_DataMapNodeOfDataMapOfAsciiStringTransient_0.cxx +++ b/src/GEOM/GEOM_DataMapNodeOfDataMapOfAsciiStringTransient_0.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOM/GEOM_DataMapOfAsciiStringTransient.hxx b/src/GEOM/GEOM_DataMapOfAsciiStringTransient.hxx index 0abffeee0..1b4a70d4c 100644 --- a/src/GEOM/GEOM_DataMapOfAsciiStringTransient.hxx +++ b/src/GEOM/GEOM_DataMapOfAsciiStringTransient.hxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_DataMapOfAsciiStringTransient_HeaderFile #define _GEOM_DataMapOfAsciiStringTransient_HeaderFile diff --git a/src/GEOM/GEOM_DataMapOfAsciiStringTransient_0.cxx b/src/GEOM/GEOM_DataMapOfAsciiStringTransient_0.cxx index 11ecc03f5..4245895b5 100644 --- a/src/GEOM/GEOM_DataMapOfAsciiStringTransient_0.cxx +++ b/src/GEOM/GEOM_DataMapOfAsciiStringTransient_0.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/GEOM/GEOM_Engine.cxx b/src/GEOM/GEOM_Engine.cxx index 335f53435..67658d480 100644 --- a/src/GEOM/GEOM_Engine.cxx +++ b/src/GEOM/GEOM_Engine.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifdef WNT #pragma warning( disable:4786 ) @@ -34,6 +36,7 @@ #include #include +#include #include #include #include @@ -52,14 +55,31 @@ #include #include +#include #include #include +#include #include #include // CAREFUL ! position of this file is critic : see Lucien PIGNOLONI / OCC +#define COMMA ',' +#define O_BRACKET '(' +#define C_BRACKET ')' +#define O_SQR_BRACKET '[' +#define C_SQR_BRACKET ']' +#define PY_NULL "None" + +#ifdef _DEBUG_ +static int MYDEBUG = 0; +#else +static int MYDEBUG = 0; +#endif + static GEOM_Engine* TheEngine = NULL; +using namespace std; + static TCollection_AsciiString BuildIDFromObject(Handle(GEOM_Object)& theObject) { TCollection_AsciiString anID(theObject->GetDocID()), anEntry; @@ -82,12 +102,20 @@ static Standard_Integer ExtractDocID(TCollection_AsciiString& theID) return aDocID.IntegerValue(); } -void ProcessFunction(Handle(GEOM_Function)& theFunction, - TCollection_AsciiString& theScript, - TColStd_MapOfTransient& theProcessed); +void ProcessFunction(Handle(GEOM_Function)& theFunction, + TCollection_AsciiString& theScript, + const TVariablesList& theVariables, + TDF_LabelMap& theProcessed, + std::set& theDumpedObjs); + +void ReplaceVariables(TCollection_AsciiString& theCommand, + const TVariablesList& theVariables); + + Handle(TColStd_HSequenceOfInteger) FindEntries(TCollection_AsciiString& theString); + //============================================================================= /*! * GetEngine @@ -95,7 +123,6 @@ Handle(TColStd_HSequenceOfInteger) FindEntries(TCollection_AsciiString& theStrin //============================================================================= GEOM_Engine* GEOM_Engine::GetEngine() { return TheEngine; } - //============================================================================= /*! * SetEngine @@ -120,9 +147,9 @@ GEOM_Engine::GEOM_Engine() * Destructor */ GEOM_Engine::~GEOM_Engine() -{ +{ GEOM_DataMapIteratorOfDataMapOfAsciiStringTransient It(_objects); - for(; It.More(); It.Next()) + for(; It.More(); It.Next()) { RemoveObject(Handle(GEOM_Object)::DownCast(It.Value())); } @@ -229,9 +256,9 @@ Handle(GEOM_Object) GEOM_Engine::AddObject(int theDocID, int theType) * AddSubShape */ //============================================================================= -Handle(GEOM_Object) GEOM_Engine::AddSubShape(Handle(GEOM_Object) theMainShape, - Handle(TColStd_HArray1OfInteger) theIndices, - bool isStandaloneOperation) +Handle(GEOM_Object) GEOM_Engine::AddSubShape(Handle(GEOM_Object) theMainShape, + Handle(TColStd_HArray1OfInteger) theIndices, + bool isStandaloneOperation) { if(theMainShape.IsNull() || theIndices.IsNull()) return NULL; @@ -284,7 +311,7 @@ Handle(GEOM_Object) GEOM_Engine::AddSubShape(Handle(GEOM_Object) theMainShape, _objects.Bind(anID, anObject); GEOM::TPythonDump pd (aFunction); - + if (isStandaloneOperation) { pd << anObject << " = geompy.GetSubShape(" << theMainShape << ", ["; Standard_Integer i = theIndices->Lower(), up = theIndices->Upper(); @@ -316,7 +343,7 @@ bool GEOM_Engine::RemoveObject(Handle(GEOM_Object) theObject) Handle(TDataStd_TreeNode) aNode; for (int i = 1; i<=nb; i++) { Handle(GEOM_Function) aFunction = theObject->GetFunction(i); - if (aFunction->GetEntry().FindAttribute(GEOM_Function::GetFunctionTreeID(), aNode)) + if (aFunction->GetEntry().FindAttribute(GEOM_Function::GetFunctionTreeID(), aNode)) aNode->Remove(); } @@ -419,38 +446,40 @@ void GEOM_Engine::Close(int theDocID) * DumpPython */ //============================================================================= -TCollection_AsciiString GEOM_Engine::DumpPython(int theDocID, - Resource_DataMapOfAsciiStringAsciiString& theObjectNames, - bool isPublished, - bool& aValidScript) +TCollection_AsciiString GEOM_Engine::DumpPython(int theDocID, + Resource_DataMapOfAsciiStringAsciiString& theObjectNames, + TVariablesList theVariables, + bool isPublished, + bool& aValidScript) { TCollection_AsciiString aScript; Handle(TDocStd_Document) aDoc = GetDocument(theDocID); - - if(aDoc.IsNull()) return TCollection_AsciiString("def RebuildData(theStudy): pass\n"); - - aScript = "import geompy\n"; + + if (aDoc.IsNull()) return TCollection_AsciiString("def RebuildData(theStudy): pass\n"); + + aScript = "import geompy\n"; aScript += "import math\n"; aScript += "import SALOMEDS\n\n"; aScript += "def RebuildData(theStudy):"; aScript += "\n\tgeompy.init_geom(theStudy)"; - - Standard_Integer posToInertGlobalVars = aScript.Length() + 1; + + Standard_Integer posToInsertGlobalVars = aScript.Length() + 1; Handle(TDataStd_TreeNode) aNode, aRoot; Handle(GEOM_Function) aFunction; - TColStd_MapOfTransient aMap; + TDF_LabelMap aCheckedFuncMap; + std::set anIgnoreObjMap; - if(aDoc->Main().FindAttribute(GEOM_Function::GetFunctionTreeID(), aRoot)) { + if (aDoc->Main().FindAttribute(GEOM_Function::GetFunctionTreeID(), aRoot)) { TDataStd_ChildNodeIterator Itr(aRoot); - for(; Itr.More(); Itr.Next()) { + for (; Itr.More(); Itr.Next()) { aNode = Itr.Value(); aFunction = GEOM_Function::GetFunction(aNode->Label()); - if(aFunction.IsNull()) { - cout << "Null function !!!!" << endl; - continue; + if (aFunction.IsNull()) { + MESSAGE ( "Null function !!!!" ); + continue; } - ProcessFunction(aFunction, aScript, aMap); + ProcessFunction(aFunction, aScript, theVariables, aCheckedFuncMap, anIgnoreObjMap); } } @@ -482,12 +511,12 @@ TCollection_AsciiString GEOM_Engine::DumpPython(int theDocID, //Replace entries by the names TCollection_AsciiString anUpdatedScript, anEntry, aName, aBaseName("geomObj_"), allowedChars ("qwertyuioplkjhgfdsazxcvbnmQWERTYUIOPLKJHGFDSAZXCVBNM0987654321_"); - if(aLen == 0) anUpdatedScript = aScript; + if (aLen == 0) anUpdatedScript = aScript; - for(Standard_Integer i = 1; i <= aLen; i+=2) { + for (Standard_Integer i = 1; i <= aLen; i+=2) { anUpdatedScript += aScript.SubString(aStart, aSeq->Value(i)-1); anEntry = aScript.SubString(aSeq->Value(i), aSeq->Value(i+1)); - if(theObjectNames.IsBound(anEntry)) { + if (theObjectNames.IsBound(anEntry)) { aName = theObjectNames.Find(anEntry); // check validity of aName bool isValidName = true; @@ -530,8 +559,9 @@ TCollection_AsciiString GEOM_Engine::DumpPython(int theDocID, } //Add final part of the script - if(aLen && aSeq->Value(aLen) < aScriptLength) anUpdatedScript += aScript.SubString(aSeq->Value(aLen)+1, aScriptLength); // mkr : IPAL11865 - + if (aLen && aSeq->Value(aLen) < aScriptLength) + anUpdatedScript += aScript.SubString(aSeq->Value(aLen)+1, aScriptLength); // mkr : IPAL11865 + // ouv : NPAL12872 for (anEntryToNameIt.Initialize( theObjectNames ); anEntryToNameIt.More(); @@ -576,6 +606,8 @@ TCollection_AsciiString GEOM_Engine::DumpPython(int theDocID, { const TCollection_AsciiString& aEntry = anEntryToNameIt.Key(); const TCollection_AsciiString& aName = anEntryToNameIt.Value(); + if (anIgnoreObjMap.count(aEntry.ToCString())) + continue; // should not be dumped if ( !aEntry2StEntry.IsBound( aEntry )) continue; // was not published TCollection_AsciiString aCommand("\n\tgeompy."), aFatherEntry; @@ -596,7 +628,7 @@ TCollection_AsciiString GEOM_Engine::DumpPython(int theDocID, aCommand += "addToStudy( "; if ( anEntryToBadName.IsBound( aEntry )) aCommand += aName + ", \"" + anEntryToBadName( aEntry ) + "\" )"; - else + else aCommand += aName + ", \"" + aName + "\" )"; // bind a command to the last digit of the entry @@ -612,7 +644,8 @@ TCollection_AsciiString GEOM_Engine::DumpPython(int theDocID, } } - anUpdatedScript += "\n\tpass\n"; + //anUpdatedScript += "\n\tpass\n"; + anUpdatedScript += "\n"; aValidScript = true; // fill _studyEntry2NameMap and build globalVars @@ -631,15 +664,15 @@ TCollection_AsciiString GEOM_Engine::DumpPython(int theDocID, } if ( !globalVars.IsEmpty() ) { globalVars.Insert( 1, "\n\tglobal " ); - anUpdatedScript.Insert( posToInertGlobalVars, globalVars ); + anUpdatedScript.Insert( posToInsertGlobalVars, globalVars ); } - + return anUpdatedScript; } //======================================================================= //function : GetDumpName -//purpose : +//purpose : //======================================================================= const char* GEOM_Engine::GetDumpName (const char* theStudyEntry) const @@ -652,7 +685,7 @@ const char* GEOM_Engine::GetDumpName (const char* theStudyEntry) const //======================================================================= //function : GetAllDumpNames -//purpose : +//purpose : //======================================================================= Handle(TColStd_HSequenceOfAsciiString) GEOM_Engine::GetAllDumpNames() const @@ -671,36 +704,66 @@ Handle(TColStd_HSequenceOfAsciiString) GEOM_Engine::GetAllDumpNames() const //=========================================================================== // Internal functions //=========================================================================== -void ProcessFunction(Handle(GEOM_Function)& theFunction, - TCollection_AsciiString& theScript, - TColStd_MapOfTransient& theProcessed) +void ProcessFunction(Handle(GEOM_Function)& theFunction, + TCollection_AsciiString& theScript, + const TVariablesList& theVariables, + TDF_LabelMap& theProcessed, + std::set& theIgnoreObjs) { - if(theFunction.IsNull() || theProcessed.Contains(theFunction)) return; + if (theFunction.IsNull()) return; -/* + // not to process twice + if (theProcessed.Contains(theFunction->GetEntry())) return; + theProcessed.Add(theFunction->GetEntry()); + + // pass functions, that depends on nonexisting ones + bool doNotProcess = false; TDF_LabelSequence aSeq; theFunction->GetDependency(aSeq); Standard_Integer aLen = aSeq.Length(); - for(Standard_Integer i = 1; i<= aLen; i++) { - Handle(GEOM_Function) aFunction = GEOM_Function::GetFunction(aSeq.Value(i)); - if(aFunction.IsNull()) continue; - ProcessFunction(aFunction, theScript, theProcessed); - } -*/ + for (Standard_Integer i = 1; i <= aLen && !doNotProcess; i++) { + TDF_Label aRefLabel = aSeq.Value(i); + Handle(TDF_Reference) aRef; + if (!aRefLabel.FindAttribute(TDF_Reference::GetID(), aRef)) { + doNotProcess = true; + } + else { + if (aRef.IsNull() || aRef->Get().IsNull()) { + doNotProcess = true; + } + else { + Handle(TDataStd_TreeNode) aT; + if (!TDataStd_TreeNode::Find(aRef->Get(), aT)) { + doNotProcess = true; + } + else { + TDF_Label aDepLabel = aT->Label(); + Handle(GEOM_Function) aFunction = GEOM_Function::GetFunction(aDepLabel); - TCollection_AsciiString aDescr = theFunction->GetDescription(); - if(aDescr.Length() == 0) { - //cout << "Warning: the function has no description" << endl; + if (aFunction.IsNull()) doNotProcess = true; + else if (!theProcessed.Contains(aDepLabel)) doNotProcess = true; + } + } + } + } + + if (doNotProcess) { + TCollection_AsciiString anObjEntry; + TDF_Tool::Entry(theFunction->GetOwnerEntry(), anObjEntry); + theIgnoreObjs.insert(anObjEntry.ToCString()); return; } + + TCollection_AsciiString aDescr = theFunction->GetDescription(); + if(aDescr.Length() == 0) return; + //Check if its internal function which doesn't requires dumping if(aDescr == "None") return; + //Replace parameter by notebook variables + ReplaceVariables(aDescr,theVariables); theScript += "\n\t"; theScript += aDescr; - - theProcessed.Add(theFunction); - return; } //============================================================================= @@ -714,28 +777,330 @@ Handle(TColStd_HSequenceOfInteger) FindEntries(TCollection_AsciiString& theStrin Standard_Integer aLen = theString.Length(); Standard_Boolean isFound = Standard_False; - char* arr = theString.ToCString(); + const char* arr = theString.ToCString(); Standard_Integer i = 0, j; while(i < aLen) { int c = (int)arr[i]; j = i+1; if(c >= 48 && c <= 57) { //Is digit? - + isFound = Standard_False; while((j < aLen) && ((c >= 48 && c <= 57) || c == 58) ) { //Check if it is an entry - c = (int)arr[j++]; - if(c == 58) isFound = Standard_True; + c = (int)arr[j++]; + if(c == 58) isFound = Standard_True; } - + if(isFound && arr[j-2] != 58) { // last char should be a diggit - aSeq->Append(i+1); // +1 because AsciiString starts from 1 - aSeq->Append(j-1); + aSeq->Append(i+1); // +1 because AsciiString starts from 1 + aSeq->Append(j-1); } } - + i = j; } return aSeq; } + +//============================================================================= +/*! + * ReplaceVariables: Replace parameters of the function by variales from + * Notebook if need + */ +//============================================================================= +void ReplaceVariables(TCollection_AsciiString& theCommand, + const TVariablesList& theVariables) +{ + if (MYDEBUG) + cout<<"Command : "<GetCurrectState(); + + if(MYDEBUG) { + cout<<"Variables from SObject:"<= aVariables.size()) + continue; + + aReplacedParameter = aVariables[iVar].myVariable; + if(aReplacedParameter.IsEmpty()) { + iVar++; + continue; + } + + if(aVariables[iVar].isVariable) { + aReplacedParameter.InsertBefore(1,"'"); + aReplacedParameter.InsertAfter(aReplacedParameter.Length(),"'"); + } + + if(MYDEBUG) + cout<<"aSection before : "<= aVariables.size()) + continue; + + aReplacedVar = aVariables[iVar].myVariable; + if(aReplacedVar.IsEmpty()) { + iVar++; + continue; + } + + if(aVariables[iVar].isVariable) { + aReplacedVar.InsertBefore(1,"\""); + aReplacedVar.InsertAfter(aReplacedVar.Length(),"\""); + } + + aCommand.Remove(aStartPos, aEndPos - aStartPos); + aCommand.Insert(aStartPos, aReplacedVar); + iVar++; + } + + theCommand.Remove(aStartCommandPos, aEndCommandPos - aStartCommandPos); + theCommand.Insert(aStartCommandPos, aCommand); + + aCommandIndex++; + + aStates->IncrementState(); + } + + if (MYDEBUG) + cout<<"Command : "< _dumpstate) + return _states[_dumpstate]; + return TState(); +} + +//================================================================================ +/*! + * \brief Add new object state + * \param theState - Object state (vector of notebook variable) + */ +//================================================================================ +void ObjectStates::AddState(const TState &theState) +{ + _states.push_back(theState); +} + +//================================================================================ +/*! + * \brief Increment object state + */ +//================================================================================ +void ObjectStates::IncrementState() +{ + _dumpstate++; +} diff --git a/src/GEOM/GEOM_Engine.hxx b/src/GEOM/GEOM_Engine.hxx index ab6b82821..a9951b26c 100644 --- a/src/GEOM/GEOM_Engine.hxx +++ b/src/GEOM/GEOM_Engine.hxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_Engine_HXX_ #define _GEOM_Engine_HXX_ @@ -32,6 +33,40 @@ #include #include +#include +#include + +struct TVariable{ + TCollection_AsciiString myVariable; + bool isVariable; + + TVariable(const TCollection_AsciiString& theVariable, bool theFlag = true): + myVariable(theVariable), + isVariable(theFlag){} +}; + +typedef std::vector TState; +typedef std::vector TAllStates; + +class ObjectStates +{ +public: + ObjectStates(); + ~ObjectStates(); + + TAllStates GetAllStates() const { return _states; } + + TState GetCurrectState() const; + void AddState(const TState &theState); + void IncrementState(); + +private: + TAllStates _states; + int _dumpstate; +}; + +typedef std::map TVariablesList; + class GEOM_Engine { public: @@ -84,6 +119,7 @@ class GEOM_Engine Standard_EXPORT TCollection_AsciiString DumpPython(int theDocID, Resource_DataMapOfAsciiStringAsciiString& theObjectNames, + TVariablesList theVariables, bool isPublished, bool& aValidScript); @@ -93,7 +129,7 @@ class GEOM_Engine protected: Standard_EXPORT static void SetEngine(GEOM_Engine* theEngine); - + private: Handle(GEOM_Application) _OCAFApp; diff --git a/src/GEOM/GEOM_Function.cxx b/src/GEOM/GEOM_Function.cxx index b3166ad0b..d10bd9daf 100644 --- a/src/GEOM/GEOM_Function.cxx +++ b/src/GEOM/GEOM_Function.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOM/GEOM_Function.hxx b/src/GEOM/GEOM_Function.hxx index 734dd833d..3e1ea6970 100644 --- a/src/GEOM/GEOM_Function.hxx +++ b/src/GEOM/GEOM_Function.hxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_Function_HeaderFile #define _GEOM_Function_HeaderFile diff --git a/src/GEOM/GEOM_Gen_i.cc b/src/GEOM/GEOM_Gen_i.cc deleted file mode 100644 index f07429df9..000000000 --- a/src/GEOM/GEOM_Gen_i.cc +++ /dev/null @@ -1,5467 +0,0 @@ -// GEOM GEOM : implementaion of GEOM_Gen.idl and GEOM_Shape.idl -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOM_GEN_i.cc file -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - -using namespace std; -#include "GEOM_Gen_i.hh" - -#include "Partition_Spliter.hxx" -#include "Archimede_VolumeSection.hxx" -#include "Sketcher_Profile.hxx" - -#include "Utils_CorbaException.hxx" -#include "utilities.h" - -#include - -// Cascade headers - -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#if OCC_VERSION_MAJOR >= 5 -#include -#else -#include -#endif -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -#include -#include -#include - -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include -#include -#include - -//VRV: OCC 4.0 migration -#include -#include -//VRV: OCC 4.0 migration - -#include -#include - -//VRV: OCC 4.0 migration -#include -#include -#include -#include -//#include -//VRV: OCC 4.0 migration - -#include -#include -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -// #include - -#include "SALOMEDS_Tool.hxx" -#include "GEOMDS_Commands.hxx" -#include "GEOMDS_Explorer.hxx" - -#include CORBA_SERVER_HEADER(SALOMEDS_Attributes) - -#include "Utils_ExceptHandlers.hxx" - -Standard_EXPORT static Standard_Boolean IsValid(const TopoDS_Shape& S) { -#if OCC_VERSION_MAJOR >= 5 - return BRepAlgo::IsValid(S); -#else - return BRepAlgoAPI::IsValid(S); -#endif -} - -//============================================================================ -// function : GEOM_Gen_i() -// purpose : constructor to be called for servant creation. -//============================================================================ -GEOM_Gen_i::GEOM_Gen_i(CORBA::ORB_ptr orb, - PortableServer::POA_ptr poa, - PortableServer::ObjectId * contId, - const char *instanceName, - const char *interfaceName) : - Engines_Component_i(orb, poa, contId, instanceName, interfaceName) -{ - _thisObj = this ; - _id = _poa->activate_object(_thisObj); - // SCRUTE(this) - name_service = new SALOME_NamingService(_orb); - myOCAFApp = new GEOMDS_Application(); - myStudyID = -1; - GetCurrentStudy(0);//for correct work of SuperVisor -} - - - -//============================================================================ -// function : ~GEOM_Gen_i() -// purpose : destructor -//============================================================================ -GEOM_Gen_i::~GEOM_Gen_i() { - delete name_service; -} - - -//============================================================================ -// function : IORToLocalPersistentID() -// purpose : -//============================================================================ -char* GEOM_Gen_i::IORToLocalPersistentID(SALOMEDS::SObject_ptr theSObject, - const char* IORString, - CORBA::Boolean isMultiFile, - CORBA::Boolean isASCII) -{ - GEOM::GEOM_Shape_var aShape = GEOM::GEOM_Shape::_narrow(_orb->string_to_object(IORString)); - if (!CORBA::is_nil(aShape)) { - return aShape->ShapeId(); - } - return 0; -} - - -//============================================================================ -// function : LocalPersistentIDToIOR() -// purpose : Create/Load CORBA object from a persistent ref (an entry) -// : Used when a study is loaded -// : The IOR (IORName) of object created is returned -//============================================================================ -char* GEOM_Gen_i::LocalPersistentIDToIOR(SALOMEDS::SObject_ptr theSObject, - const char* aLocalPersistentID, - CORBA::Boolean isMultiFile, - CORBA::Boolean isASCII) -{ - SALOMEDS::Study_var myStudy = theSObject->GetStudy(); - GetCurrentStudy(myStudy->StudyId()); - Handle(TDocStd_Document) aDoc = Handle(TDocStd_Document)::DownCast(myStudyIDToDoc(myStudy->StudyId())); - CORBA::String_var aPersRefString = aLocalPersistentID; - - /* For a GEOM::GEOM_Shape the pers_ref is the Entry in the OCAF document */ - TCollection_ExtendedString MainIOR; - TDF_Label Lab; - TDF_Tool::Label(aDoc->GetData(), aPersRefString, Lab ); - - if (Lab.IsNull()) { - MESSAGE("Can not find label "<StudyId()); - THROW_SALOME_CORBA_EXCEPTION("Incorrect GEOM data loaded",SALOME::BAD_PARAM); - //return ""; empty IORs raise new problem: "display" in popup crashes - } - - Handle(TNaming_NamedShape) NS; - Lab.FindAttribute( TNaming_NamedShape::GetID(), NS ); - TopoDS_Shape S = TNaming_Tool::GetShape(NS); - - /* shapetype, index=0, topo, orb, shapetype, ismain=true and name are setted and modified later ? */ - GEOM::GEOM_Shape_var result = CreateObject(S); - GEOMDS_Commands GC( aDoc->Main() ) ; - - if ( GC.HasIOR(Lab) ) { /* shape already created/loaded */ - return 0 ; - } - - /******************* Dependent object (not a main shape) *********************/ - if( GC.IsDependentShape(Lab) ) { - - TDF_Label mainLabel ; - Standard_Boolean mainShapeOk = GC.GetMainShapeLabel(Lab, mainLabel) ; - - /* Main object not yet loaded we load/create it */ - if( !GC.HasIOR(mainLabel) ) { - - TCollection_AsciiString entry; - TDF_Tool::Entry(mainLabel,entry); - CORBA::String_var ent = CORBA::string_dup(entry.ToCString()); - - /* Create the main object recursively */ - MainIOR = LocalPersistentIDToIOR(theSObject, ent, isMultiFile, isASCII) ; - } else { - GC.ReturnNameIOR( mainLabel, MainIOR ); - } - - result->MainName( TCollection_AsciiString(MainIOR).ToCString() ) ; - result->IsMainShape(false) ; - result->ShapeId(aPersRefString); - - Handle(TDF_Reference) aRef; - Lab.FindAttribute( TDF_Reference::GetID(), aRef ); - TDF_Label myL = aRef->Get() ; - Handle(TNaming_NamedShape) NN; - myL.FindAttribute( TNaming_NamedShape::GetID(), NN ); - TopoDS_Shape mainTopo = TNaming_Tool::GetShape(NN); - - GEOM::GEOM_Shape::ListOfSubShapeID_var ListOfID = new GEOM::GEOM_Shape::ListOfSubShapeID; - - if(S.ShapeType() != TopAbs_COMPOUND) { - /* to set the index of a unique sub shape (Explode All ONLY for the moment !) */ - ListOfID->length(1); - int index = 1; - TopTools_MapOfShape M; - TopExp_Explorer Exp ; - for( Exp.Init(mainTopo, TopAbs_ShapeEnum( result->ShapeType() )) ; Exp.More(); Exp.Next() ) { - if ( M.Add(Exp.Current()) ) { - if(Exp.Current().IsSame(S) ) { - ListOfID[0] = index; - break; - } - index++ ; - } - } - result->Index(ListOfID) ; - return result->Name(); - } - else { - /* Here is a TopAbs_COMPOUND : we set the list/index for a compound : containing two or more sub shapes */ - /* Warning : the Corba shape has a shapetype Compound : in GEOMDS_Client we have to retrieve the kind of */ - /* subshapes contained in this compound ! */ - TopTools_SequenceOfShape SS; - TopoDS_Iterator it ; - TopExp_Explorer exp ; - TopAbs_ShapeEnum subType ; - - /* Set all sub shapes in a sequence of shapes */ - for ( it.Initialize( S, true, true ) ; it.More(); it.Next() ) { - subType = it.Value().ShapeType() ; - SS.Append( it.Value() ) ; - } - - ListOfID->length( SS.Length() ) ; - int j, k ; /* in TopTools_SequenceOfShape index start at 1 */ - - for( k=1; k<=SS.Length(); k++ ) { - j = 1 ; - for( exp.Init( mainTopo, subType ); exp.More(); exp.Next() ) { - if( exp.Current().IsSame( SS.Value(k) ) ) { - ListOfID[k-1] = j ; - } - j++ ; - } - } - result->Index(ListOfID) ; - return result->Name(); - } - - } - /******************* Independent object (not a sub shape) *********************/ - else { - result->IsMainShape(true) ; - if( !GC.AddIORNameAttribute(Lab, result->Name() ) ) { - MESSAGE("in LocalPersistentIDToIOR, NAME/IOR attribute already exist." << endl ) ; - } - Handle(TNaming_NamedShape) NamedShape ; - bool notTested = Lab.FindAttribute(TNaming_NamedShape::GetID(), NamedShape) ; - result->ShapeId(aPersRefString); - return result->Name(); - } -} - -//============================================================================ -// function : CanPublishInStudy -// purpose : -//============================================================================ -bool GEOM_Gen_i::CanPublishInStudy(CORBA::Object_ptr theIOR) -{ - GEOM::GEOM_Shape_var aShape = GEOM::GEOM_Shape::_narrow(theIOR); - return !(aShape->_is_nil()); -} - - -//============================================================================ -// function : PublishInStudy -// purpose : -//============================================================================ -SALOMEDS::SObject_ptr GEOM_Gen_i::PublishInStudy(SALOMEDS::Study_ptr theStudy, - SALOMEDS::SObject_ptr theSObject, - CORBA::Object_ptr theObject, - const char* theName) throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - SALOMEDS::SObject_var aResultSO; - if(CORBA::is_nil(theObject)) return aResultSO; - - GEOM::GEOM_Shape_var aShape = GEOM::GEOM_Shape::_narrow(theObject); - if(aShape->_is_nil()) return aResultSO; - - if(theStudy->_is_nil()) return aResultSO; - - SALOMEDS::GenericAttribute_var anAttr; - SALOMEDS::StudyBuilder_var aStudyBuilder = theStudy->NewBuilder(); - - SALOMEDS::SComponent_var aFather = theStudy->FindComponent("GEOM"); - if (aFather->_is_nil()) { - aFather = aStudyBuilder->NewComponent("GEOM"); - anAttr = aStudyBuilder->FindOrCreateAttribute(aFather, "AttributeName"); - SALOMEDS::AttributeName_var aName = SALOMEDS::AttributeName::_narrow(anAttr); - aName->SetValue("Geometry"); - anAttr = aStudyBuilder->FindOrCreateAttribute(aFather, "AttributePixMap"); - SALOMEDS::AttributePixMap::_narrow(anAttr)->SetPixMap("ICON_OBJBROWSER_Geometry"); - aStudyBuilder->DefineComponentInstance(aFather, GEOM_Gen::_this()); - } - if (aFather->_is_nil()) return aResultSO; - - if (CORBA::is_nil(theSObject)) { - aResultSO = aStudyBuilder->NewObject(aFather); - } else { - if (!theSObject->ReferencedObject(aResultSO)) - THROW_SALOME_CORBA_EXCEPTION("Publish in study supervision graph error",SALOME::BAD_PARAM); - } - anAttr = aStudyBuilder->FindOrCreateAttribute(aResultSO, "AttributeIOR"); - SALOMEDS::AttributeIOR_var anIOR = SALOMEDS::AttributeIOR::_narrow(anAttr); - anIOR->SetValue(aShape->Name()); - - anAttr = aStudyBuilder->FindOrCreateAttribute(aResultSO, "AttributePixMap"); - SALOMEDS::AttributePixMap_var aPixmap = SALOMEDS::AttributePixMap::_narrow(anAttr); - TCollection_AsciiString aShapeName("Shape_"); - - if ( aShape->ShapeType() == GEOM::COMPOUND ) { - aPixmap->SetPixMap( "ICON_OBJBROWSER_COMPOUND" ); - aShapeName = "Compound_"; - } else if ( aShape->ShapeType() == GEOM::COMPSOLID ) { - aPixmap->SetPixMap( "ICON_OBJBROWSER_COMPSOLID" ); - aShapeName = "Compsolid_"; - } else if ( aShape->ShapeType() == GEOM::SOLID ) { - aPixmap->SetPixMap( "ICON_OBJBROWSER_SOLID" ); - aShapeName = "Solid_"; - } else if ( aShape->ShapeType() == GEOM::SHELL ) { - aPixmap->SetPixMap( "ICON_OBJBROWSER_SHELL" ); - aShapeName = "Shell_"; - } else if ( aShape->ShapeType() == GEOM::FACE ) { - aPixmap->SetPixMap( "ICON_OBJBROWSER_FACE" ); - aShapeName = "Face_"; - } else if ( aShape->ShapeType() == GEOM::WIRE ) { - aPixmap->SetPixMap( "ICON_OBJBROWSER_WIRE" ); - aShapeName = "Wire_"; - } else if ( aShape->ShapeType() == GEOM::EDGE ) { - aPixmap->SetPixMap( "ICON_OBJBROWSER_EDGE" ); - aShapeName = "Edge_"; - } else if ( aShape->ShapeType() == GEOM::VERTEX ) { - aPixmap->SetPixMap( "ICON_OBJBROWSER_VERTEX" ); - aShapeName = "Vertex_"; - } - if (strlen(theName) == 0) aShapeName += TCollection_AsciiString(aResultSO->Tag()); - else aShapeName = TCollection_AsciiString((char*)theName); - - //Set a name of the added shape - anAttr = aStudyBuilder->FindOrCreateAttribute(aResultSO, "AttributeName"); - SALOMEDS::AttributeName_var aNameAttrib = SALOMEDS::AttributeName::_narrow(anAttr); - aNameAttrib->SetValue(aShapeName.ToCString()); - - //Add a reference to published object -// aStudyBuilder->Addreference(theObject, aResultSO); - return aResultSO._retn(); -} - - -//============================================================================ -// function : Save() -// purpose : save OCAF/Geom document -//============================================================================ -SALOMEDS::TMPFile* GEOM_Gen_i::Save(SALOMEDS::SComponent_ptr theComponent, - const char* theURL, - bool isMultiFile) { - SALOMEDS::TMPFile_var aStreamFile; - // Get a temporary directory to store a file - TCollection_AsciiString aTmpDir = (isMultiFile)?TCollection_AsciiString((char*)theURL):(char*)SALOMEDS_Tool::GetTmpDir().c_str(); - // Create a list to store names of created files - SALOMEDS::ListOfFileNames_var aSeq = new SALOMEDS::ListOfFileNames; - aSeq->length(1); - // Prepare a file name to open - TCollection_AsciiString aNameWithExt(""); - if (isMultiFile) - aNameWithExt = TCollection_AsciiString((char*)SALOMEDS_Tool::GetNameFromPath(theComponent->GetStudy()->URL()).c_str()); - aNameWithExt += TCollection_AsciiString("_GEOM.sgd"); - aSeq[0] = aNameWithExt.ToCString(); - // Build a full file name of temporary file - TCollection_AsciiString aFullName = aTmpDir + aNameWithExt; - // Save GEOM component in this file - myOCAFApp->SaveAs(myCurrentOCAFDoc, aFullName); - // Conver a file to the byte stream - aStreamFile = SALOMEDS_Tool::PutFilesToStream(aTmpDir.ToCString(), aSeq.in(), isMultiFile); - // Remove the created file and tmp directory - if (!isMultiFile) SALOMEDS_Tool::RemoveTemporaryFiles(aTmpDir.ToCString(), aSeq.in(), true); - // Return the created byte stream - return aStreamFile._retn(); -} - -SALOMEDS::TMPFile* GEOM_Gen_i::SaveASCII(SALOMEDS::SComponent_ptr theComponent, - const char* theURL, - bool isMultiFile) { - SALOMEDS::TMPFile_var aStreamFile = Save(theComponent, theURL, isMultiFile); - return aStreamFile._retn(); -} - - -CORBA::Boolean GEOM_Gen_i::Load(SALOMEDS::SComponent_ptr theComponent, - const SALOMEDS::TMPFile& theStream, - const char* theURL, - bool isMultiFile) { - - if (theStream.length() <= 9) { - MESSAGE("The TMPFile is too short : " << theStream.length() << " bytes "); - return false; - } - - // Get a temporary directory for a file - TCollection_AsciiString aTmpDir = isMultiFile?TCollection_AsciiString((char*)theURL):(char*)SALOMEDS_Tool::GetTmpDir().c_str(); - // Conver the byte stream theStream to a file and place it in tmp directory - SALOMEDS::ListOfFileNames_var aSeq = SALOMEDS_Tool::PutStreamToFiles(theStream, - aTmpDir.ToCString(), - isMultiFile); - - // Prepare a file name to open - TCollection_AsciiString aNameWithExt(""); - if (isMultiFile) - aNameWithExt = TCollection_AsciiString((char*)SALOMEDS_Tool::GetNameFromPath(theComponent->GetStudy()->URL()).c_str()); - aNameWithExt += TCollection_AsciiString("_GEOM.sgd"); - TCollection_AsciiString aFullName = aTmpDir + aNameWithExt; - - // Open document - if (myOCAFApp->Open(aFullName, myCurrentOCAFDoc) != CDF_RS_OK) return false; - - // Remove the created file and tmp directory - if (!isMultiFile) SALOMEDS_Tool::RemoveTemporaryFiles(aTmpDir.ToCString(), aSeq.in(), true); - - SALOMEDS::Study_var Study = theComponent->GetStudy(); - TCollection_AsciiString name( Study->Name() ); - - int StudyID = Study->StudyId(); - myStudyIDToDoc.Bind( StudyID, myCurrentOCAFDoc ); - myStudyID = StudyID; - - /* We clear all IOR (nameIOR) attributes of all objects before reconstruction */ - /* This information will be setted when each object is reconstructed */ - GEOMDS_Commands GC( myCurrentOCAFDoc->Main() ) ; - GC.ClearAllIOR(myCurrentOCAFDoc->Main()); - - return true; -} - -CORBA::Boolean GEOM_Gen_i::LoadASCII(SALOMEDS::SComponent_ptr theComponent, - const SALOMEDS::TMPFile& theStream, - const char* theURL, - bool isMultiFile) { - return Load(theComponent, theStream, theURL, isMultiFile); -} - -// //============================================================================ -// // function : Save() -// // purpose : save OCAF/Geom document -// //============================================================================ -// void GEOM_Gen_i::Save(const char *IORSComponent, const char *aUrlOfFile) -// { - -// TCollection_ExtendedString path((char*)aUrlOfFile); -// TCollection_ExtendedString pathWithExt = path + TCollection_ExtendedString(".sgd"); -// myOCAFApp->SaveAs(myCurrentOCAFDoc,pathWithExt); -// } - - -// //============================================================================ -// // function : Load() -// // purpose : Load OCAF/Geom document -// //============================================================================ -// void GEOM_Gen_i::Load(const char *IORSComponent, const char *aUrlOfFile) -// { - -// TCollection_ExtendedString path((char*)aUrlOfFile); -// TCollection_ExtendedString pathWithExt = path + TCollection_ExtendedString(".sgd"); - -// myOCAFApp->Open(pathWithExt,myCurrentOCAFDoc); - -// SALOMEDS::SComponent_var SC = SALOMEDS::SComponent::_narrow(_orb->string_to_object(IORSComponent)); -// SALOMEDS::Study_var Study = SC->GetStudy(); -// TCollection_AsciiString name( Study->Name() ); - -// int StudyID = Study->StudyId(); -// myStudyIDToDoc.Bind( StudyID, myCurrentOCAFDoc ); -// myStudyID = StudyID; - -// /* We clear all IOR (nameIOR) attributes of all objects before reconstruction */ -// /* This information will be setted when each object is reconstructed */ -// GEOMDS_Commands GC( myCurrentOCAFDoc->Main() ) ; -// GC.ClearAllIOR(myCurrentOCAFDoc->Main()); - -// return ; -// } - - -//============================================================================ -// function : Close() -// purpose : -//============================================================================ -void GEOM_Gen_i::Close(SALOMEDS::SComponent_ptr theComponent) -{ - int anID = theComponent->GetStudy()->StudyId(); - if (anID == myStudyID) GetCurrentStudy(0); // set default value of current study ID, if current is deleted - if (myStudyIDToDoc.IsBound(anID)) { - // close document in the application -// Handle(TDocStd_Owner) anOwner; - Handle(TDocStd_Document) aDoc = Handle(TDocStd_Document)::DownCast(myStudyIDToDoc.Find(anID)); -// Handle(TDocStd_Document) anEmptyDoc; -// if (aDoc->Main().Root().FindAttribute(TDocStd_Owner::GetID(), anOwner)) { -// anOwner->SetDocument(anEmptyDoc); -// MESSAGE("********** Nullify owner of document"); -// } - myOCAFApp->Close(aDoc); - myStudyIDToDoc.UnBind(anID); // remove document from GEOM documents data map - } -} - -//============================================================================ -// function : CanCopy() -// purpose : -//============================================================================ -CORBA::Boolean GEOM_Gen_i::CanCopy(SALOMEDS::SObject_ptr theObject) { - // Try to retrieve known by Geometry component GEOM_shape by given IOR - SALOMEDS::GenericAttribute_var anAttr; - if (!theObject->FindAttribute(anAttr, "AttributeIOR")) return false; - GEOM::GEOM_Shape_var aShape = GetIORFromString(SALOMEDS::AttributeIOR::_narrow(anAttr)->Value()); - // If the object is null one it can't be copied: return false - if (aShape->_is_nil()) return false; - return true; -} - -//============================================================================ -// function : CopyFrom() -// purpose : -//============================================================================ -SALOMEDS::TMPFile* GEOM_Gen_i::CopyFrom(SALOMEDS::SObject_ptr theObject, CORBA::Long& theObjectID) { - // Declare a sequence of the byte to store the copied object - SALOMEDS::TMPFile_var aStreamFile = new SALOMEDS::TMPFile; - - // Try to get GEOM_Shape object by given SObject - SALOMEDS::GenericAttribute_var anAttr; - if (!theObject->FindAttribute(anAttr, "AttributeIOR")) return false; - GEOM::GEOM_Shape_var aShape = GetIORFromString(SALOMEDS::AttributeIOR::_narrow(anAttr)->Value()); - // If the object is null one it can't be copied: return false - if (aShape->_is_nil()) return aStreamFile._retn(); - - GetCurrentStudy(theObject->GetStudy()->StudyId()); - - // Convert a TopoDS_Shape to a stream of bytes - TopoDS_Shape aTopology = GetTopoShape(aShape); - if (aTopology.IsNull()) return aStreamFile._retn(); - ostrstream aStreamedShape; - BRepTools::Write(aTopology, aStreamedShape); - int aSize = aStreamedShape.pcount(); - char* aBuffer = new char[aSize]; - memcpy(aBuffer, aStreamedShape.str(), aSize); - aStreamedShape.rdbuf()->freeze(0); - - aStreamFile = new SALOMEDS::TMPFile(aSize, aSize, (CORBA::Octet*)aBuffer, 1); - - // Assign an ID = 1 the the type GEOM_Shape - theObjectID = 1; - - // Return created TMPFile - return aStreamFile._retn(); -} - -//============================================================================ -// function : CanPaste() -// purpose : -//============================================================================ -CORBA::Boolean GEOM_Gen_i::CanPaste(const char* theComponentName, CORBA::Long theObjectID) { - // The Geometry component can paste only objects copied by Geometry component - // and with the object type = 1 -// MESSAGE("********** GEOM_Gen_i::CanPaste ("<GetStudy(); - SALOMEDS::StudyBuilder_var aStudyBuilder = aStudy->NewBuilder(); - - // Retrieve a TopoDS_Shape from byte stream - TopoDS_Shape aTopology; - istrstream aStreamedBrep((char*) &theStream[0], theStream.length()); - BRep_Builder aBuilder; - try { - BRepTools::Read(aTopology, aStreamedBrep, aBuilder); - } catch (Standard_Failure) { - MESSAGE("GEOM_Gen_i::PasteInto exception"); - return false; - } - - // Create new object in Geometry component using retrieved topology - GEOM::GEOM_Shape_var aShape = CreateObject(aTopology); - GetCurrentStudy(aStudy->StudyId()); - const char *anEntry = InsertInLabel(aTopology, aShape->Name(), myCurrentOCAFDoc) ; - aShape->ShapeId(anEntry) ; - - // SObject of the created shape is theObject or new Child of Component if theObject == geom component - SALOMEDS::SObject_var aNewSO; - if (strcmp(theObject->GetFatherComponent()->GetID(),theObject->GetID()) == 0) { - aNewSO = aStudyBuilder->NewObject(theObject); - } else aNewSO = SALOMEDS::SObject::_duplicate(theObject); - // Add IORAttribute to the Study and set IOR of the created GEOM_Shape to it - SALOMEDS::GenericAttribute_var anAttr = aStudyBuilder->FindOrCreateAttribute(aNewSO, "AttributeIOR"); - SALOMEDS::AttributeIOR_var anIOR = SALOMEDS::AttributeIOR::_narrow(anAttr); - anIOR->SetValue(aShape->Name()); - - // Return the created in the Study SObject - return aNewSO._retn(); -} - -//============================================================================ -// function : ComponentDataType() -// purpose : -//============================================================================ -char* GEOM_Gen_i::ComponentDataType() -{ - return CORBA::string_dup("GEOM"); -} - -//============================================================================ -// function : register() -// purpose : register 'name' in 'name_service' -//============================================================================ -void GEOM_Gen_i::register_name(char * name) -{ - GEOM::GEOM_Gen_ptr g = GEOM::GEOM_Gen::_narrow(POA_GEOM::GEOM_Gen::_this()); - name_service->Register(g, name); -} - - - -//================================================================================ -// function : SequenceOfShapeFromListOfGeomShape() -// purpose : Define a sequence of shapes from 'listShapes' and return its length. -// : No control is made on shapes ! -//================================================================================ -int GEOM_Gen_i::SequenceOfShapeFromListOfGeomShape( const GEOM::GEOM_Gen::ListOfGeomShapes& listShapes, - TopTools_SequenceOfShape& SS ) -{ - int nbShapes = listShapes.length() ; - if( nbShapes < 1) - return 0 ; - - for(int i=0; iGetData() ; - TDF_Tool::Label( D, shape_ptr->ShapeId(), lab, true ) ; - Handle(TNaming_NamedShape) NamedShape ; - bool res = lab.FindAttribute(TNaming_NamedShape::GetID(), NamedShape) ; - - if( !res ) { - return tds ; /* a null shape is returned */ - } - else { - return TNaming_Tool::GetShape(NamedShape) ; - } -} - - - -//================================================================================= -// function : GetStringFromIOR() -// purpose : returns a string that represents a 'GEOM::GEOM_Shape_var' -//================================================================================= -const char* GEOM_Gen_i::GetStringFromIOR(GEOM::GEOM_Shape_var shapeIOR) { - const char * ret = _orb->object_to_string(shapeIOR) ; - return ret ; -} - - - -//================================================================================= -// function : GetIORFromString() -// purpose : returns a 'GEOM::GEOM_Shape_var' from a string representing it -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::GetIORFromString(const char* stringIOR) { - GEOM::GEOM_Shape_var shapeIOR; - if(strcmp(stringIOR,"") != 0){ - CORBA::Object_var anObject = _orb->string_to_object(stringIOR); - if(!CORBA::is_nil(anObject)) - shapeIOR = GEOM::GEOM_Shape::_narrow(anObject.in()) ; - } - return shapeIOR._retn() ; -} - - - -//================================================================================== -// function : InsertInLabel() -// purpose : Insert S = Shape and mystr = name in a new Label of Geom/OCAF document -// : and returns the corresponding OCAF entry -//================================================================================== -const char * GEOM_Gen_i::InsertInLabel(TopoDS_Shape S, const char *mystr, Handle(TDocStd_Document) OCAFDoc) -{ - GEOMDS_Commands GC(OCAFDoc->Main()); - /* add attributs S and mystr in a new label */ - TDF_Label Lab = GC.AddShape (S, (char*)mystr); - - TCollection_AsciiString entry; - TDF_Tool::Entry(Lab,entry); - const char *ent = entry.ToCString() ; - return ent ; -} - - -//================================================================================== -// function : InsertInLabelDependentShape() -// purpose : Insert S = Shape and its nameIor in a new Label of Geom/OCAF document -// : insert also a reference attribute (a label) to the main shape 'mainshap_ptr'. -// : and returns the corresponding OCAF entry of the new label. -//================================================================================== -const char * GEOM_Gen_i::InsertInLabelDependentShape( TopoDS_Shape S, - const char *nameIor, - GEOM::GEOM_Shape_ptr mainshape_ptr, - Handle(TDocStd_Document) OCAFDoc ) -{ - GEOMDS_Commands GC(OCAFDoc->Main()); - /* add attributs S and nameIor in a new label */ - - /* retrieve the label of the main shape in the document */ - TDF_Label mainRefLab; - TDF_Tool::Label(OCAFDoc->GetData(), mainshape_ptr->ShapeId(), mainRefLab); - - /* add attributs : S, nameIor and ref to main */ - TDF_Label Lab = GC.AddDependentShape(S, (char*)nameIor, mainRefLab); - - TCollection_AsciiString entry; - TDF_Tool::Entry(Lab, entry); - const char *ent = entry.ToCString() ; - return ent ; -} - - -//================================================================================= -// function : InsertInLabelOneArgument() -// purpose : -//================================================================================= -void GEOM_Gen_i::InsertInLabelOneArgument(TopoDS_Shape main_topo, - GEOM::GEOM_Shape_ptr shape_ptr, - TopoDS_Shape result_topo, - GEOM::GEOM_Shape_ptr result, - Handle(TDocStd_Document) OCAFDoc) -{ - /* Put shape and name into geom/OCAF doc */ - GEOMDS_Commands GC(OCAFDoc->Main()); - /* Add attributs 'shape' and 'name_ior' in a new label */ - TDF_Label Lab = GC.Generated( main_topo, result_topo, result->Name() ); - TCollection_AsciiString entry; - TDF_Tool::Entry(Lab, entry); - result->ShapeId( entry.ToCString() ) ; - - /* Create a new label */ - TDF_Label NewLab = Lab.NewChild(); - TCollection_ExtendedString Value("Arguments"); - TDataStd_Name::Set(NewLab,Value); - - TDF_Label NewLab1 = NewLab.NewChild(); - TDF_Label RefLab; - TDF_Tool::Label(OCAFDoc->GetData(), shape_ptr->ShapeId(), RefLab); - TDF_Reference::Set(NewLab1, RefLab); -} - - -//================================================================================= -// function : InsertInLabelMoreArguments() -// purpose : -//================================================================================= -void GEOM_Gen_i::InsertInLabelMoreArguments(TopoDS_Shape main_topo, - GEOM::GEOM_Shape_ptr result, - const GEOM::GEOM_Gen::ListOfIOR& ListShapes, - Handle(TDocStd_Document) OCAFDoc) -{ - /* Put shape and name into geom/OCAF doc */ - GEOMDS_Commands GC(OCAFDoc->Main()); - /* Add attributs TopoDS and name_ior in a new label */ - TDF_Label Lab = GC.AddShape(main_topo, result->Name() ); - TCollection_AsciiString entry; - TDF_Tool::Entry(Lab, entry); - - /* Create a new label */ - TDF_Label NewLab = Lab.NewChild(); - TCollection_ExtendedString Value("Arguments"); - TDataStd_Name::Set(NewLab, Value); - - for (unsigned int ind = 0; ind < ListShapes.length(); ind++) { - - TDF_Label NewLab1 = NewLab.NewChild(); - GEOM::GEOM_Shape_var aShape = GetIORFromString( ListShapes[ind] ); - - TDF_Label RefLab; - TDF_Tool::Label(OCAFDoc->GetData(), aShape->ShapeId(), RefLab); - TDF_Reference::Set(NewLab1, RefLab); - } - result->ShapeId(entry.ToCString()); -} - - - -//================================================================================= -// function: NbLabels() -// purpose : -//================================================================================= -CORBA::Short GEOM_Gen_i::NbLabels() -{ - TDF_ChildIterator ChildIterator(myCurrentOCAFDoc->Main()); - unsigned int i = 1; - - while (ChildIterator.More()) { - i++; - ChildIterator.Next(); - } - return i; - // return TDF_Tool::NbLabels( myCurrentOCAFDoc->Main() ); -} - - - -//================================================================================= -// function: GetCurrentStudy() -// purpose : Finds or creates the geom/OCAF document corresponding to the index -// 'StudyID' -//================================================================================= -void GEOM_Gen_i::GetCurrentStudy(CORBA::Long StudyID) -{ - /* If StudyID is known we link myCurrentOCAFDoc to it */ - if (myStudyIDToDoc.IsBound(StudyID)) { - myCurrentOCAFDoc = Handle(TDocStd_Document)::DownCast(myStudyIDToDoc(StudyID)); - } - /* Create a new OCAFDoc and link it to 'StudyID' argument */ - else { - myOCAFApp->NewDocument("SALOME_GEOM",myCurrentOCAFDoc); - myStudyIDToDoc.Bind(StudyID,myCurrentOCAFDoc); - } - myStudyID = StudyID; -} - - -//================================================================================ -// function : CreateObject() -// purpose : private function to create a complete CORBA object and return it -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::CreateObject(TopoDS_Shape& tds) -{ -// if ( tds.ShapeType() == TopAbs_COMPOUND ) { -// TopoDS_Iterator itr(tds); -// TopoDS_Shape res; -// int i = 0; -// while (itr.More()) { -// i++; -// res = itr.Value(); -// itr.Next(); -// } - -// if ( i == 1 ) -// tds = res; -// } - - GEOM::shape_type st = GEOM::shape_type(tds.ShapeType()) ; /* casting */ - - /* Create the CORBA servant holding the TopoDS_Shape */ - GEOM::GEOM_Gen_ptr engine = POA_GEOM::GEOM_Gen::_this(); - GEOM::GEOM_Shape::ListOfSubShapeID_var index = new GEOM::GEOM_Shape::ListOfSubShapeID; - index->length(0); - GEOM_Shape_i * shape_servant = new GEOM_Shape_i(tds, _orb, engine, index, st, true); - GEOM::GEOM_Shape_var shape = GEOM::GEOM_Shape::_narrow(shape_servant->_this()); - - /* Create and set the name (IOR of shape converted into a string) */ - string name_ior = _orb->object_to_string(shape) ; - shape->Name( name_ior.c_str() ); - shape->NameType( "" ); - return shape; -} - -//======================================================================= -//function : CreateSubObject -//purpose : -//======================================================================= - -GEOM::GEOM_Shape_ptr GEOM_Gen_i::CreateSubObject(const TopoDS_Shape& SubShape, - const GEOM::GEOM_Shape_ptr MainShape, - const GEOM::GEOM_Shape::ListOfSubShapeID& ListOfID) -{ - GEOM::shape_type st = GEOM::shape_type(SubShape.ShapeType()) ; /* casting */ - - /* Create the CORBA servant holding the TopoDS_Shape */ - GEOM::GEOM_Gen_ptr engine = POA_GEOM::GEOM_Gen::_this(); - GEOM_Shape_i * shape_servant = - new GEOM_Shape_i(SubShape, _orb, engine, ListOfID, st, false); - GEOM::GEOM_Shape_var shape = GEOM::GEOM_Shape::_narrow(shape_servant->_this()); - - /* Create and set the name (IOR of shape converted into a string) */ - string name_ior = _orb->object_to_string(shape) ; - shape->Name( name_ior.c_str() ); - /* create and set the mainname (IOR of shape converted into a string) */ - const char *mainname_ior = _orb->object_to_string(MainShape) ; - shape->MainName(mainname_ior); - /* precaution : NameType will be set precisely in GUI */ - shape->NameType( "" ); - /* add 'SubShape' its 'nameIOR' and a reference to the main shape thanks to method below */ - const char *entry = - InsertInLabelDependentShape(SubShape, shape->Name(), MainShape, myCurrentOCAFDoc) ; - shape->ShapeId( entry ) ; - - return shape; -} - -//======================================================================= -// function : SuppressFacesGlue() -// purpose : Define a compound of shells after suppress of mapFaces in the -// : shape S and return the number of shells of the compound. -//======================================================================= -int GEOM_Gen_i::SuppressFacesGlue( const TopoDS_Shape& S, - const TopTools_MapOfShape& mapFaces, - TopoDS_Shape& aCompoundOfShells ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - BRepTools_Quilt Glue; - aCompoundOfShells.Nullify() ; - - for ( TopExp_Explorer exp( S, TopAbs_FACE); exp.More(); exp.Next() ) { - const TopoDS_Face& F = TopoDS::Face(exp.Current()); - if ( !mapFaces.Contains(F) ) { - /* this face must not to be suppressed */ - Glue.Add(F); - } - } - - /* Use specif method to calculate the compound of shells */ - aCompoundOfShells = Glue.Shells(); - - if( aCompoundOfShells.ShapeType() != TopAbs_COMPOUND ) { - THROW_SALOME_CORBA_EXCEPTION("In GEOM_Gen_i::SuppressFacesGlue() : not a GEOM::COMPOUND", SALOME::BAD_PARAM); - } - - /* explore Compound for verification and return the number of shells */ - int numberOfShell = 0 ; - for ( TopExp_Explorer exp1( aCompoundOfShells, TopAbs_SHELL); exp1.More(); exp1.Next() ) - numberOfShell++ ; - - return numberOfShell ; -} - - -//===================================================================================== -// function : GetIndexTopology() -// purpose : return the index of a sub shape in a shape (index starts at 1) -// : Return -1 if not found -//===================================================================================== -int GEOM_Gen_i::GetIndexTopology(const TopoDS_Shape& subshape, const TopoDS_Shape& mainShape) -{ - if( mainShape.IsNull() || subshape.IsNull() ) - return -1 ; - - int index = 1; - if (subshape.ShapeType() == TopAbs_COMPOUND) - { - TopoDS_Iterator it; - TopTools_ListOfShape CL; - CL.Append( mainShape ); - TopTools_ListIteratorOfListOfShape itC; - for (itC.Initialize( CL ); itC.More(); itC.Next()) - { - for (it.Initialize( itC.Value() ); it.More(); it.Next()) - { - if ( it.Value().ShapeType() == TopAbs_COMPOUND) - { - if (it.Value().IsSame(subshape)) - return index; - else - index++; - CL.Append( it.Value() ); - } - } - } - } - else - { - TopExp_Explorer Exp ( mainShape, subshape.ShapeType() ); - TopTools_MapOfShape M; - while ( Exp.More() ) - { - if ( M.Add(Exp.Current()) ) - { - if ( Exp.Current().IsSame(subshape) ) - return index; - index++; - } - Exp.Next(); - } - } - return -1; -} - - -//================================================================================ -// function : IndexOfFacesOfSubShell() -// purpose : Return a list of indices corresponding to the faces of a 'subShell' -// : in the main shape 'S' -//================================================================================ -GEOM::GEOM_Shape::ListOfSubShapeID* GEOM_Gen_i::IndexOfFacesOfSubShell( const TopoDS_Shape& S, - const TopoDS_Shape subShell ) - throw (SALOME::SALOME_Exception) -{ - - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape::ListOfSubShapeID_var ListOfID = new GEOM::GEOM_Shape::ListOfSubShapeID; - ListOfID->length(0) ; - if( subShell.IsNull() || subShell.ShapeType() != TopAbs_SHELL ) { - THROW_SALOME_CORBA_EXCEPTION("In GEOM_Gen_i::IndexOfFacesOfSubShell() : null shape or not a GEOM::SHELL", SALOME::BAD_PARAM); - } - - /* put faces of subShell in a Map of faces */ - int j = 0 ; - TopTools_MapOfShape mapFaces ; - for( TopExp_Explorer Exp1( subShell, TopAbs_FACE ); Exp1.More(); Exp1.Next() ) { - mapFaces.Add(Exp1.Current() ) ; - j++ ; - } - - if( j<1 ) - THROW_SALOME_CORBA_EXCEPTION("In GEOM_Gen_i::IndexOfFacesOfSubShell() : no faces in sub shell", SALOME::BAD_PARAM); - - /* Find index of each face of subshell in the main topology and put its index in ListOfID */ - int size = 0 ; - for ( TopExp_Explorer Exp2(S, TopAbs_FACE); Exp2.More(); Exp2.Next() ) { - - const TopoDS_Face& F = TopoDS::Face( Exp2.Current() ) ; - - if( mapFaces.Contains(F) ) { - int n = GetIndexTopology( F, S ) ; - if( n<=0 ) { - THROW_SALOME_CORBA_EXCEPTION("In GEOM_Gen_i::IndexOfFacesOfSubShell() : no index found", SALOME::BAD_PARAM); - } - size++; - ListOfID->length(size) ; - ListOfID[size-1] = n ; - } - } - - return ListOfID._retn() ; -} - - - -//================================================================================ -// function : ListOfIDIntoMapOfShapes() -// purpose : Define a MapOfShapes from a main topology 'S' a 'subShapeType' -// : and a list of indices 'L'. -// : Return true if 'aMap' is not empty -//================================================================================ -bool GEOM_Gen_i::ListOfIDIntoMapOfShapes( const TopoDS_Shape& S, - const GEOM::GEOM_Shape::ListOfSubShapeID& L, - const int subShapeType, - TopTools_MapOfShape& aMap ) -{ - if( L.length() < 1 || S.IsNull() ) { - return false ; - } - - aMap.Clear() ; - for( int k=0; klength(0) ; - - TopoDS_Shape mainShape = GetTopoShape(shape); - if( mainShape.IsNull() ) - THROW_SALOME_CORBA_EXCEPTION("In GEOM_Gen_i::SuppressFaces() : null argument shape", SALOME::BAD_PARAM); - - if( ListOfID.length() < 1 ) - THROW_SALOME_CORBA_EXCEPTION("In GEOM_Gen_i::SuppressFaces() : empty ListOfID", SALOME::BAD_PARAM); - - /* Define 'mapFaces' a map of faces to be suppressed in mainShape */ - TopTools_MapOfShape mapFaces ; - if( !ListOfIDIntoMapOfShapes(mainShape, ListOfID, TopAbs_FACE, mapFaces ) ) { - return listOfGeomShapes._retn(); - } - - /* Call algorithm to calculate a compound of shells resulting of face suppression */ - int numberOfShells = 0 ; - TopoDS_Shape aCompoundOfShells ; - numberOfShells = SuppressFacesGlue(mainShape, mapFaces, aCompoundOfShells) ; - if(numberOfShells < 1) { - THROW_SALOME_CORBA_EXCEPTION("In GEOM_Gen_i::Suppressfaces() : no shells", SALOME::BAD_PARAM); - } - - /* Create a shell for each shell contained in 'aCompoundOfShells' and */ - /* put it in the list of GeomShapes to be returned. */ - /* But if the shell is composed of only a face we create a face and not a shell */ - int i = 0 ; - for( TopExp_Explorer exp(aCompoundOfShells, TopAbs_SHELL); exp.More(); exp.Next() ) { - - const TopoDS_Shell& aShell = TopoDS::Shell( exp.Current() ); - if( aShell.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("In GEOM_Gen_i::Suppressfaces() : null shell", SALOME::BAD_PARAM); - } - - GEOM::GEOM_Shape::ListOfSubShapeID_var aList = new GEOM::GEOM_Shape::ListOfSubShapeID; - aList = IndexOfFacesOfSubShell(mainShape, aShell) ; - - if( aList->length() < 1 ) { - THROW_SALOME_CORBA_EXCEPTION("In GEOM_Gen_i::SuppressFaces() : aList is empty", SALOME::BAD_PARAM); - } - - TopoDS_Shape aShellOrFace ; - /* Only a face into the shell : we create a single face instead of a shell : 'aList' is unchanged */ - if( aList->length() == 1 ) { - TopExp_Explorer exp ; - exp.Init( aShell, TopAbs_FACE ) ; - exp.More() ; - aShellOrFace = exp.Current() ; - } - else { - aShellOrFace = aShell ; - } - - /* Create CORBA object */ - GEOM::GEOM_Shape_var result = CreateObject(aShellOrFace) ; - if( CORBA::is_nil(result) ) { - THROW_SALOME_CORBA_EXCEPTION("Suppress Faces aborted : null result", SALOME::BAD_PARAM); - } - - InsertInLabelOneArgument(mainShape, shape, aShellOrFace, result, myCurrentOCAFDoc) ; - i++ ; - listOfGeomShapes->length(i) ; - listOfGeomShapes[i-1] = result ; - } - - return listOfGeomShapes._retn() ; -} - - - -//================================================================================ -// function : IsShapeInSequence() -// purpose : return true is aShape is in SS. The test method is 'IsSame()' -//================================================================================ -bool GEOM_Gen_i::IsShapeInSequence(const TopTools_SequenceOfShape& SS, const TopoDS_Shape& aShape) -{ - if( aShape.IsNull() || SS.IsEmpty() ) - return false ; - for( int i=1; i<=SS.Length(); i++) { - if( SS.Value(i).IsSame(aShape) ) - return true ; - } - return false ; -} - - -//================================================================================ -// function : FreeEdgesFromMapOfFace() -// purpose : Define MS a map of all edges of faces of 'MSfaces' -// : All multiple edges are removed ! -//================================================================================ -void GEOM_Gen_i::FreeEdgesFromMapOfFace( const TopTools_MapOfShape& MSfaces, - TopTools_MapOfShape& MS ) -{ - MS.Clear() ; - TopTools_MapOfShape Multiple ; - TopTools_MapIteratorOfMapOfShape it ; - for( it.Initialize(MSfaces); it.More(); it.Next() ) { - TopoDS_Shape aFace = it.Key() ; - TopExp_Explorer exp ; - for( exp.Init( aFace, TopAbs_EDGE); exp.More(); exp.Next() ) { - if( !Multiple.Contains( exp.Current() ) && !MS.Add( exp.Current() ) ) { - MS.Remove( exp.Current() ) ; - Multiple.Add( exp.Current() ) ; - } - } - } - return ; -} - - -//================================================================================ -// function : MapRemoveSequence() -// purpose : In term of shapes ST = MS - SSRemove -// : -//================================================================================ -void GEOM_Gen_i::MapRemoveSequence( const TopTools_MapOfShape& MS, - const TopTools_SequenceOfShape& SSRemove, - TopTools_SequenceOfShape& ST ) -{ - ST.Clear() ; - TopTools_MapIteratorOfMapOfShape it ; - for( it.Initialize(MS); it.More(); it.Next() ) { - TopoDS_Shape aShape = it.Key() ; - if( !IsShapeInSequence( SSRemove, aShape ) ) - ST.Append( aShape ) ; - } - return ; -} - - - -//================================================================================ -// function : SuppressHoleSubRoutine() -// purpose : Define recursively 'MSfacesSuppress' a list of faces to suppress in a hole -//================================================================================ -void GEOM_Gen_i::SuppressHoleSubRoutine( const TopoDS_Shape& mainShape, - const TopoDS_Face& aFace, - const TopTools_SequenceOfShape& SSedgesOfWire, - const TopTools_IndexedDataMapOfShapeListOfShape& aMapEdgesFaces, - const TopTools_MapOfShape& MSfaces, - TopTools_MapOfShape& MSfacesSuppress, - const Standard_Boolean withEndFace, - const TopoDS_Face& endFace, - TopTools_MapOfShape& MSwireEndEdges ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - TopTools_MapOfShape MS ; - TopTools_SequenceOfShape SU ; - FreeEdgesFromMapOfFace(MSfaces, MS) ; /* MS = free edges of MSfaces */ - MapRemoveSequence(MS, SSedgesOfWire, SU) ; /* SU = MS - SSedgesOfWire */ - - if( SU.IsEmpty() ) { - return ; - } - - /* Here SU contains new edges to find new faces to suppress */ - /* Define the list of faces of SU edges that aren't in faces of MSfacesSuppress in order to add into */ - /* For each edge we have a map of all its faces : it's in 'aMapEdgesFaces' */ - TopTools_MapOfShape MSfacesTmp ; - for( int v=1; v<=SU.Length(); v++ ) { - TopoDS_Shape E = SU.Value(v) ; - TopoDS_Shape F ; - TopTools_ListOfShape LF ; - int ind = aMapEdgesFaces.FindIndex(E) ; - - /* LF is the list of faces for an edge of SU : may be empty no matter */ - LF = aMapEdgesFaces.FindFromIndex(ind) ; - - TopTools_ListIteratorOfListOfShape it ; - for( it.Initialize(LF); it.More(); it.Next() ) { - F = it.Value() ; - if( withEndFace == false ) { - if( F.IsSame(aFace) ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SuppressHoleSubRoutine() : hole traversing or ?", SALOME::BAD_PARAM); - if( !MSfacesSuppress.Contains(F) ) { - MSfacesSuppress.Add(F) ; - MSfacesTmp.Add(F) ; // Dont remove the 'if' ! - } - } - else { /* withEndFace == true */ - if( F.IsSame(aFace) && !F.IsSame(endFace) ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SuppressHoleSubRoutine() : hole traversing incoherent ?", SALOME::BAD_PARAM); - - if( F.IsSame(endFace) ) { - /* We have reached endFace if selection was correct so we add */ - /* edge in a map to find later the corresponding endWire (hole */ - MSwireEndEdges.Add(E) ; - } - else { - if( !MSfacesSuppress.Contains(F) ) { - MSfacesSuppress.Add(F) ; - MSfacesTmp.Add(F) ; - } - } - } - } - } - /* Call recursively this routine */ - SuppressHoleSubRoutine( mainShape, aFace, SSedgesOfWire, aMapEdgesFaces, MSfacesTmp, MSfacesSuppress, withEndFace, endFace, MSwireEndEdges ) ; -} - - - -//================================================================================ -// function : GetShapeFromIndex() -// purpose : Find 'tds' a sub shape of 'aShape' according to 'aList' that contains -// : a unique index ! -// : Warning : index must be setted with the same exploration logic ! -// : So 'index' is calculated with no shape doublons ! -//================================================================================ -bool GEOM_Gen_i::GetShapeFromIndex( const TopoDS_Shape& aShape, - const TopAbs_ShapeEnum aType, - const int index, - TopoDS_Shape& tds ) - -{ - if (aShape.IsNull() || index < 1) - return false ; - /* Indices start at 1 */ - int j = 1 ; - bool found = false ; - TopExp_Explorer exp ; - TopTools_MapOfShape M; - for( exp.Init( aShape, aType ); exp.More(); exp.Next() ) { - if( M.Add(exp.Current()) ) { /* if not a doublon : we compare */ - if( index == j ) { - tds = exp.Current() ; - return true ; - } - j++ ; - } - } - return false ; -} - - - -//================================================================================ -// function : SuppressHolesInFaceOrShell() Main method. -// purpose : Suppress holes identified by wires in a single face or shell -// -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::SuppressHolesInFaceOrShell( GEOM::GEOM_Shape_ptr shapeFaceShell, - const GEOM::GEOM_Shape::ListOfSubShapeID& ListIdWires ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result; - - if( ListIdWires.length() < 1 ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SuppressHolesInFace : no holes selected", SALOME::BAD_PARAM); - - const TopoDS_Shape tds = GetTopoShape(shapeFaceShell) ; - if( tds.IsNull() || !IsValid(tds) ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SuppressHolesInFace() : non valid main argument", SALOME::BAD_PARAM); - - /* Create a map of wires/holes to suppress */ - TopTools_MapOfShape MapHoles ; - for ( int i = 0; i < ListIdWires.length(); i++ ) { - TopoDS_Shape W ; - if( !GetShapeFromIndex( tds, TopAbs_WIRE, ListIdWires[i], W ) ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SuppressHolesInFace() : bad index ?", SALOME::BAD_PARAM); - MapHoles.Add( W ) ; - } - - /* Test if argument is a face or shell */ - bool isFace ; - if( tds.ShapeType() == TopAbs_FACE ) - isFace = true ; - else if ( tds.ShapeType() == TopAbs_SHELL ) - isFace = false ; - else - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SuppressHolesInFace() : not a face or a shell", SALOME::BAD_PARAM); - - /* Define two maps : all faces and faces to that will be modified */ - TopTools_MapOfShape MapFacesToModify ; - TopTools_MapOfShape MapFacesAll ; - TopExp_Explorer expF ; - for( expF.Init( tds, TopAbs_FACE); expF.More(); expF.Next() ) { - TopoDS_Face F = TopoDS::Face( expF.Current() ) ; - MapFacesAll.Add(F) ; - TopExp_Explorer expW ; - for( expW.Init( F, TopAbs_WIRE); expW.More(); expW.Next() ) { - TopoDS_Wire W = TopoDS::Wire( expW.Current() ) ; - if( MapHoles.Contains(W) ) { - MapFacesToModify.Add(F) ; - } - } - } - - /* Define faces not modified */ - TopTools_MapOfShape MapFacesNotModified ; - TopTools_MapIteratorOfMapOfShape it ; - for( it.Initialize(MapFacesAll); it.More(); it.Next() ) { - TopoDS_Face FF = TopoDS::Face( it.Key() ) ; - if( !MapFacesToModify.Contains(FF) ) - MapFacesNotModified.Add(FF) ; - } - - if( MapFacesToModify.IsEmpty() ) - THROW_SALOME_CORBA_EXCEPTION("Error : empty map of faces", SALOME::BAD_PARAM); - - if( isFace && MapFacesToModify.Extent() != 1 ) - THROW_SALOME_CORBA_EXCEPTION("Incoherent", SALOME::BAD_PARAM); - - /* Main argument is a face */ - if( isFace && MapFacesToModify.Extent() == 1 ) { - TopoDS_Face resultFace ; - if( !RebuildFaceRemovingHoles( TopoDS::Face(tds), MapHoles, resultFace ) ) - THROW_SALOME_CORBA_EXCEPTION(" Problem : !RebuildFaceRemovingHoles()", SALOME::BAD_PARAM); - /* Creation of CORBA object : face topology */ - result = CreateObject(resultFace); - InsertInLabelOneArgument(tds, shapeFaceShell, resultFace, result, myCurrentOCAFDoc) ; - return result ; - } - - /* Main argument is a shell : rebuild faces modified */ - TopTools_MapOfShape MapFacesModified ; - for( it.Initialize(MapFacesToModify); it.More(); it.Next() ) { - TopoDS_Face FF = TopoDS::Face( it.Key() ) ; - TopoDS_Face resF ; - if( !RebuildFaceRemovingHoles( FF, MapHoles, resF ) ) - THROW_SALOME_CORBA_EXCEPTION(" Problem shell : !RebuildFaceRemovingHoles()", SALOME::BAD_PARAM); - MapFacesModified.Add(resF) ; - } - - /* Rebuild the shell with faces modified and non modified */ - TopoDS_Shell resultShell ; - BRepPrim_Builder B; - B.MakeShell(resultShell) ; - TopTools_MapIteratorOfMapOfShape it1 ; - for( it1.Initialize(MapFacesModified); it1.More(); it1.Next() ) - B.AddShellFace( resultShell,TopoDS::Face( it1.Key() ) ) ; - for( it1.Initialize(MapFacesNotModified); it1.More(); it1.Next() ) - B.AddShellFace( resultShell,TopoDS::Face( it1.Key() ) ) ; - - B.CompleteShell(resultShell) ; - - if( resultShell.IsNull() ) - THROW_SALOME_CORBA_EXCEPTION("Null or not valid result Shell", SALOME::BAD_PARAM) ; - - /* Creation of CORBA object : shell topology */ - result = CreateObject(resultShell); - InsertInLabelOneArgument(tds, shapeFaceShell, resultShell, result, myCurrentOCAFDoc) ; - return result ; -} - - -//================================================================================ -// function : RebuildFaceRemovingHoles() -// purpose : Rebuild a face removing holes that are in 'mapHoles'. -// : NB : 'mapHoles' may content more holes than necessary -//================================================================================ -bool GEOM_Gen_i::RebuildFaceRemovingHoles( const TopoDS_Face& aFace, - const TopTools_MapOfShape& mapHoles, - TopoDS_Shape& resultFace ) -{ - /* Get the outer wire of the face 'aFace' */ - TopoDS_Wire outW = BRepTools::OuterWire( aFace ) ; - if( outW.IsNull() || !IsValid(outW) ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SuppressHolesInFace : bad outer wire of 'aFace'", SALOME::BAD_PARAM); - - /* Rebuild a face avoiding holes in the map 'mapHoles' */ - Handle(Geom_Surface) Surface = BRep_Tool::Surface(aFace) ; - TopoDS_Face F2 = BRepBuilderAPI_MakeFace( Surface, outW, true ) ; - - if( F2.Orientation() != aFace.Orientation() ) - F2.Orientation( aFace.Orientation() ) ; - - BRepBuilderAPI_MakeFace aBuilder( F2 ) ; - bool foundAndKeepHoles = false ; - TopExp_Explorer exp ; - - for( exp.Init( aFace, TopAbs_WIRE); exp.More(); exp.Next() ) { - TopoDS_Wire hole = TopoDS::Wire( exp.Current() ) ; - if( !mapHoles.Contains(hole) && !exp.Current().IsEqual(outW) ) { - aBuilder.Add( hole) ; - if( !aBuilder.IsDone() ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SuppressHolesInFace : builder problem !", SALOME::BAD_PARAM); - - resultFace = TopoDS::Face(aBuilder) ; - foundAndKeepHoles = true ; - } - } - - if( !foundAndKeepHoles ) - resultFace = F2 ; - else - resultFace = TopoDS::Face(aBuilder) ; - - return true ; -} - - - - -//================================================================================ -// function : SuppressHole() Main method. -// purpose : Suppress an hole identified by a wire in a face of shape -// : ListIdFace contains a unique index of face in shape -// : ListIdWire contains a unique index of wire in face !!! -// : ListIdEndFace is used only when hole traverse. -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::SuppressHole( GEOM::GEOM_Shape_ptr shape, - const GEOM::GEOM_Shape::ListOfSubShapeID& ListIdFace, - const GEOM::GEOM_Shape::ListOfSubShapeID& ListIdWire, - const GEOM::GEOM_Shape::ListOfSubShapeID& ListIdEndFace ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result; - TopoDS_Face aFace ; - TopoDS_Wire aWire ; - TopoDS_Face endFace ; - bool withEndFace ; - TopoDS_Shape tmp ; - - /* Retrieve 'aShape' the initial main shape selection */ - const TopoDS_Shape aShape = GetTopoShape(shape); - - if( !IsValid(aShape) ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SuppressHole() : non valid main shape", SALOME::BAD_PARAM); - - if( ListIdFace.length() != 1 || ListIdWire.length() != 1 ) - THROW_SALOME_CORBA_EXCEPTION("bad list", SALOME::BAD_PARAM); - - /* Retrieve 'aFace' selection */ - if( !GetShapeFromIndex( aShape, TopAbs_FACE, ListIdFace[0], tmp ) ) { - THROW_SALOME_CORBA_EXCEPTION("face not found", SALOME::BAD_PARAM); - } - else { - aFace = TopoDS::Face(tmp) ; - } - if( !IsValid(aFace) ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SuppressHole() : face shape not valid", SALOME::BAD_PARAM); - - /* Retrieve 'aWire' selection : Warning : index of wire refers to the face ! */ - TopoDS_Shape aTmp ; - if( !GetShapeFromIndex( aFace, TopAbs_WIRE, ListIdWire[0], aTmp ) ) { - THROW_SALOME_CORBA_EXCEPTION("wire not found", SALOME::BAD_PARAM); - } - else { - aWire = TopoDS::Wire(aTmp) ; - } - if( !IsValid(aWire) ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SuppressHole() : bad wire" , SALOME::BAD_PARAM); - - /* Get the outer wire of aFace */ - TopoDS_Wire outerW = BRepTools::OuterWire( aFace ) ; - if( outerW.IsNull() || !IsValid(outerW) ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SuppressHole() : bad outer wire", SALOME::BAD_PARAM); - - /* Test bad user selection aWire */ - if( aWire.IsSame(outerW) ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SuppressHole() : outerW = aWire", SALOME::BAD_PARAM); - - /* Test if 'endFace' is used as argument and seems to be a valid one */ - /* NB : 'endFace' is optional and used when hole to suppress traverse 'aShape' */ - if( ListIdEndFace.length() == 0 ) { - withEndFace = false ; - } - else { - TopoDS_Shape aTemp ; - if( !GetShapeFromIndex( aShape, TopAbs_FACE, ListIdEndFace[0], aTemp ) || tmp.IsNull() || !IsValid(aTemp) ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SuppressHole() : non valid endFace", SALOME::BAD_PARAM); - - /* Test if 'endFace' as at least one hole */ - endFace = TopoDS::Face(aTemp) ; - - TopExp_Explorer fExp ; - int nbWires = 0 ; - for( fExp.Init(endFace, TopAbs_WIRE); fExp.More(); fExp.Next() ) { - TopoDS_Wire W = TopoDS::Wire( fExp.Current() ) ; - if( !W.IsNull() && IsValid(W) ) - nbWires++ ; - } - if(nbWires > 1) - withEndFace = true ; /* at least 2 wires : outer wire plus an hole or more */ - else - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SuppressHole() : end face selection ?", SALOME::BAD_PARAM); - } - - /* Find edges of aWire and test if degenerated */ - TopTools_SequenceOfShape SSedgesOfWire ; - TopExp_Explorer wireExp ; - for( wireExp.Init(aWire, TopAbs_EDGE); wireExp.More(); wireExp.Next() ) { - TopoDS_Edge E = TopoDS::Edge( wireExp.Current() ) ; - if( E.IsNull() || BRep_Tool::Degenerated(E) ) { - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SupressHole() : found bad edge", SALOME::BAD_PARAM); - } - else { - SSedgesOfWire.Append( wireExp.Current() ) ; - } - } - if( SSedgesOfWire.Length() < 1 ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SupressHole() : no edge(s) for aWire", SALOME::BAD_PARAM); - - /* Retrieve face ancestors of all edges of 'aWire' but avoiding 'aFace' */ - - TopTools_IndexedDataMapOfShapeListOfShape aMapEdgesFaces; - TopTools_MapIteratorOfMapOfShape anIt ; - TopTools_MapOfShape MFSuppress ; - TopTools_MapOfShape MFSuppressTmp ; - bool wireOnFace = false ; - - TopExp::MapShapesAndAncestors(aShape, TopAbs_EDGE, TopAbs_FACE, aMapEdgesFaces) ; - for( int h=1; h<=SSedgesOfWire.Length(); h++ ) { - - TopoDS_Shape anEdgeOfWire = SSedgesOfWire.Value(h) ; - int ind = aMapEdgesFaces.FindIndex(anEdgeOfWire) ; - if(ind < 1) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SupressHole() : index of edge", SALOME::BAD_PARAM); - - TopTools_ListOfShape LF; - LF = aMapEdgesFaces.FindFromIndex(ind) ; /* Contains all faces ancestors of an edge of wire */ - if( LF.IsEmpty() ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SupressHole() : no face for an edge", SALOME::BAD_PARAM); - - /* Filter faces avoiding 'aFace' */ - TopTools_ListIteratorOfListOfShape it ; - for( it.Initialize(LF); it.More(); it.Next() ) { - TopoDS_Face F = TopoDS::Face( it.Value() ) ; - if( !F.IsSame(aFace) ) { - MFSuppressTmp.Add(F) ; - MFSuppress.Add(F) ; - } - else { - wireOnFace = true ; - } - } - } - - if( !wireOnFace ) { - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SupressHole() : wire not on selected face", SALOME::BAD_PARAM); - } - - /* Call routine to define faces to suppress and and optional endWire on endFace */ - TopTools_MapOfShape MSwireEndEdges ; /* will contain edges of final wire (hole) */ - SuppressHoleSubRoutine( aShape, aFace, SSedgesOfWire, aMapEdgesFaces, MFSuppressTmp, MFSuppress, withEndFace, endFace, MSwireEndEdges ) ; - - TopoDS_Wire endWire ; - if( withEndFace ) { - - if( MSwireEndEdges.Extent() < 1 ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SupressHole() : MSwireEndEdges.Extent() < 1", SALOME::BAD_PARAM); - - if( !FindCompareWireHoleOnFace( endFace, MSwireEndEdges, endWire ) ) - THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SupressHole() : no endWire found", SALOME::BAD_PARAM); - } - - /* Build 'resTds' : a shape containing a compound of faces */ - TopoDS_Shape resTds; - if( !withEndFace && !BuildShapeHoleNotTraversing( aShape, aFace, aWire, MFSuppress, resTds ) ) - THROW_SALOME_CORBA_EXCEPTION("Rebuild result shape has aborted", SALOME::BAD_PARAM); - - if( withEndFace && !BuildShapeHoleTraversing( aShape, aFace, aWire, MFSuppress, endFace, endWire, resTds ) ) - THROW_SALOME_CORBA_EXCEPTION("Rebuild result shape has aborted (end hole)", SALOME::BAD_PARAM); - - /* Reconstruction of final shape with 'resTds' : a compound of faces after hole suppressing */ - /* Actual limitation is : 'aShape' must not contain more than a solid or a shell ! */ - TopoDS_Shape finalShape ; - - TopExp_Explorer exp ; - unsigned int nbSolid = 0 ; - TopoDS_Solid aSolid ; - for( exp.Init(aShape, TopAbs_SOLID); exp.More(); exp.Next() ) { - aSolid = TopoDS::Solid( exp.Current() ) ; - nbSolid++ ; - if( nbSolid > 1 ) - THROW_SALOME_CORBA_EXCEPTION("Limitation : main shape contents more than one solid", SALOME::BAD_PARAM); - } - - unsigned int nbShell = 0 ; - TopoDS_Shell aShell ; - for( exp.Init(aShape, TopAbs_SHELL); exp.More(); exp.Next() ) { - aShell = TopoDS::Shell( exp.Current() ) ; - nbShell++ ; - if( nbShell > 1 ) - THROW_SALOME_CORBA_EXCEPTION("Limitation : main shape contents more than one shell", SALOME::BAD_PARAM); - } - - /* No shells and no solids : can send a compound even for a single face, see GUI ! */ - if( nbShell == 0 ) { - finalShape = resTds ; - } - - /* a shell */ - TopoDS_Shell shellResult ; - if( nbShell == 1 ) { - if ( !BuildShellWithFaceCompound( TopoDS::Compound(resTds), shellResult ) ) - THROW_SALOME_CORBA_EXCEPTION("Error after BuildShellWithFaceCompound()", SALOME::BAD_PARAM); - finalShape = shellResult ; - } - - /* a solid with a shell */ - if( nbSolid == 1 && nbShell == 1) { - BRepBuilderAPI_MakeSolid B; - B.Add(shellResult) ; - if( !B.IsDone() ) - THROW_SALOME_CORBA_EXCEPTION("Error : !B.IsDone()", SALOME::BAD_PARAM); - finalShape = B.Solid() ; - } - - result = CreateObject(finalShape); - InsertInLabelOneArgument(aShape, shape, finalShape, result, myCurrentOCAFDoc) ; - return result ; -} - - - -//================================================================================ -// function : BuildShellWithFaceCompound() -// purpose : Build a shell with a compound of faces. -//================================================================================ -bool GEOM_Gen_i::BuildShellWithFaceCompound( const TopoDS_Compound Comp, - TopoDS_Shell& resultShell ) -{ - resultShell.Nullify() ; - BRepPrim_Builder B ; - B.MakeShell(resultShell) ; - TopExp_Explorer ex ; - int i = 0 ; - for( ex.Init( Comp, TopAbs_FACE); ex.More(); ex.Next() ) { - TopoDS_Face F = TopoDS::Face( ex.Current() ) ; - if( !IsValid(F) ) { - return false ; - } - B.AddShellFace( resultShell, F ) ; - } - B.CompleteShell(resultShell) ; - if( resultShell.IsNull() ) { - return false ; - } - return true ; -} - - -//================================================================================ -// function : FindCompareWireHoleOnFace() -// purpose : Try to find a wire on 'aFace' which edges are same than those -// : into 'MSwireEdges' map. 'aFoundWire' is defined and 'true' returned. -// : 'MSwireEdges' represents generally an hole an 'aFace'. -// : The outer wire of 'aFace' is avoided ! -//================================================================================ -bool GEOM_Gen_i::FindCompareWireHoleOnFace( const TopoDS_Face& F, - const TopTools_MapOfShape& MSwireEdges, - TopoDS_Wire& aFoundWire ) -{ - aFoundWire.Nullify() ; - - if( F.IsNull() ) - return false ; - - /* Get the outer wire of aFace */ - TopoDS_Wire outerW = BRepTools::OuterWire(F) ; - if( outerW.IsNull() || !IsValid(outerW) ) { - return false ; - } - - int nbEdges = MSwireEdges.Extent() ; - if( nbEdges < 1 ) { - return false ; - } - - TopExp_Explorer exp1 ; - TopExp_Explorer exp2 ; - for ( exp1.Init(F, TopAbs_WIRE) ; exp1.More(); exp1.Next() ) { - TopoDS_Wire W = TopoDS::Wire( exp1.Current() ) ; - int i = 0 ; - if( !W.IsSame(outerW) ) { - for ( exp2.Init( W, TopAbs_EDGE) ; exp2.More(); exp2.Next() ) { - TopoDS_Edge E = TopoDS::Edge( exp2.Current() ) ; - if( MSwireEdges.Contains(E) ) { - i++ ; - if( i == nbEdges ) { - aFoundWire = W ; - return true ; - } - } - } - } - } - return false ; -} - - -//================================================================================ -// function : BuildShapeHoleNotTraversing() -// purpose : Define 'resultTds' a reconstruction of 'aShape' after modification -// : on 'aFace' where 'aWire is removed' and suppression of faces 'MFSuppress' -// : ( Used as a sub routine of SuppressHole() ) -//================================================================================ -bool GEOM_Gen_i::BuildShapeHoleNotTraversing( const TopoDS_Shape& aShape, - const TopoDS_Face& aFace, - const TopoDS_Wire& aWire, - const TopTools_MapOfShape& MFSuppress, - TopoDS_Shape& resultTds ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - BRep_Builder B; - TopExp_Explorer exp ; - TopoDS_Face newFace ; - - resultTds.Nullify() ; - TopoDS_Compound Comp ; - B.MakeCompound (Comp); - - try { - - /* Explore all faces of 'aShape' to rebuild a compound */ - for ( exp.Init(aShape, TopAbs_FACE) ; exp.More(); exp.Next() ) { - - TopoDS_Face F1 = TopoDS::Face( exp.Current() ); - /* Rebuild face(s) not suppressed */ - if( !MFSuppress.Contains(F1) ) { - - if( F1.IsEqual( aFace ) ) { - TopTools_MapOfShape MSwire ; - MSwire.Add(aWire) ; - if( !RebuildFaceRemovingHoles(aFace, MSwire, newFace) ) { - return false ; - } - B.Add( Comp, newFace ) ; - } - else { - /* For any other face not suppressed */ - B.Add( Comp, F1 ) ; - } - } - } - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("in BuildShapeHoleNotTraversing() : Exception catched", SALOME::BAD_PARAM); - } - resultTds = Comp ; - return true ; -} - - - -//================================================================================ -// function : BuildShapeHoleTraversing() -// purpose : Define 'resultTds' a reconstruction of 'aShape' after modifications. -// : On 'aFace' 'aWire is removed' -// : On 'endFace' 'endWire' is removed. -// : Faces of 'MFSuppress' are removed. -// : ( Used as a sub routine of SuppressHole() ) -//================================================================================ -bool GEOM_Gen_i::BuildShapeHoleTraversing( const TopoDS_Shape& aShape, - const TopoDS_Face& aFace, - const TopoDS_Wire& aWire, - const TopTools_MapOfShape& MFSuppress, - const TopoDS_Face& endFace, - const TopoDS_Wire& endWire, - TopoDS_Shape& resultTds ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - BRep_Builder B; - TopExp_Explorer exp ; - TopoDS_Face newFace ; - - resultTds.Nullify() ; - TopoDS_Compound Comp ; - B.MakeCompound (Comp); - - /* Necessary to use general method */ - TopTools_MapOfShape MSwire1 ; - MSwire1.Add(aWire) ; - TopTools_MapOfShape MSwire2 ; - MSwire2.Add(endWire) ; - - try { - - /* Explore all faces of 'aShape' to rebuild a compound */ - for ( exp.Init(aShape, TopAbs_FACE) ; exp.More(); exp.Next() ) { - TopoDS_Face F1 = TopoDS::Face( exp.Current() ); - - /* Rebuild face(s) not suppressed */ - if( !MFSuppress.Contains(F1) ) { - - /* Rebuild 'aFace' */ - if( F1.IsEqual( aFace ) && !F1.IsEqual( endFace ) ) { - if( !RebuildFaceRemovingHoles(aFace, MSwire1, newFace) ) { - return false ; - } - B.Add(Comp, newFace) ; - } - - /* Rebuild 'endFace' */ - if( !F1.IsEqual( aFace ) && F1.IsEqual( endFace ) ) { - if( !RebuildFaceRemovingHoles(endFace, MSwire2, newFace) ) { - return false ; - } - B.Add(Comp, newFace) ; - } - - /* Hole in the same face : aFace = endFace */ - if( F1.IsEqual( aFace ) && F1.IsEqual( endFace ) ) { - TopoDS_Face FF ; - if( !RebuildFaceRemovingHoles(aFace, MSwire1, newFace) || !RebuildFaceRemovingHoles(newFace, MSwire2, FF) ) { - return false ; - } - B.Add( Comp, FF ) ; - } - - /* For any other face not suppressed */ - if( !F1.IsEqual(aFace) && !F1.IsEqual( endFace ) ) { - B.Add( Comp, F1 ) ; - } - - } - } - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("in BuildShapeHoleTraversing() : Exception catched", SALOME::BAD_PARAM); - } - resultTds = Comp ; - return true ; -} - -//======================================================================= -//function : SortShapes -//purpose : -//======================================================================= - -static void SortShapes(TopTools_ListOfShape& SL) -{ - Standard_Integer MaxShapes = SL.Extent(); - TopTools_Array1OfShape aShapes (1,MaxShapes); - TColStd_Array1OfInteger OrderInd(1,MaxShapes); - TColStd_Array1OfReal MidXYZ (1,MaxShapes); //X,Y,Z; - TColStd_Array1OfReal Length (1,MaxShapes); //X,Y,Z; - - // Computing of CentreOfMass - Standard_Integer Index; - GProp_GProps GPr; - gp_Pnt GPoint; - TopTools_ListIteratorOfListOfShape it(SL); - for (Index=1; it.More(); Index++) - { - TopoDS_Shape S = it.Value(); - SL.Remove( it ); // == it.Next() - aShapes(Index) = S; - OrderInd.SetValue (Index, Index); - if (S.ShapeType() == TopAbs_VERTEX) - { - GPoint = BRep_Tool::Pnt( TopoDS::Vertex( S )); - Length.SetValue( Index, (Standard_Real) S.Orientation()); - } - else - { - BRepGProp::LinearProperties (S, GPr); - GPoint = GPr.CentreOfMass(); - Length.SetValue( Index, GPr.Mass() ); - } - MidXYZ.SetValue(Index, - GPoint.X()*999 + GPoint.Y()*99 + GPoint.Z()*0.9); - } - // Sorting - Standard_Integer aTemp; - Standard_Boolean exchange, Sort = Standard_True; - while (Sort) - { - Sort = Standard_False; - for (Index=1; Index < MaxShapes; Index++) - { - if (MidXYZ(OrderInd(Index)) > MidXYZ(OrderInd(Index+1))) - exchange = Standard_True; - else if (MidXYZ(OrderInd(Index)) == MidXYZ(OrderInd(Index+1)) && - Length(OrderInd(Index)) > Length(OrderInd(Index+1)) ) - exchange = Standard_True; - else - exchange = Standard_False; - if (exchange) - { - aTemp = OrderInd(Index); - OrderInd(Index) = OrderInd(Index+1); - OrderInd(Index+1) = aTemp; - Sort = Standard_True; - } - } - } - for (Index=1; Index <= MaxShapes; Index++) - SL.Append( aShapes( OrderInd(Index) )); -} - -//================================================================================ -// function : SubShape() -// purpose : Method for GUI or TUI -//================================================================================ - -GEOM::GEOM_Shape_ptr GEOM_Gen_i::SubShape(GEOM::GEOM_Shape_ptr shape, - CORBA::Short ShapeType, - const GEOM::GEOM_Shape::ListOfSubShapeID& ListOfID) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - return SubShapesOne(shape, (TopAbs_ShapeEnum) ShapeType, ListOfID); -} - -//================================================================================ -// function : SubShapeSorted() -// purpose : Method for GUI or TUI -//================================================================================ - -GEOM::GEOM_Shape_ptr GEOM_Gen_i::SubShapeSorted(GEOM::GEOM_Shape_ptr shape, - CORBA::Short ShapeType, - const GEOM::GEOM_Shape::ListOfSubShapeID& ListOfID) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - return SubShapesOne(shape, (TopAbs_ShapeEnum) ShapeType, ListOfID, Standard_True); -} - -//================================================================================ -// function : SubShapesOne() -// purpose : -//================================================================================ - -GEOM::GEOM_Shape_ptr GEOM_Gen_i::SubShapesOne( GEOM::GEOM_Shape_ptr shape, - const TopAbs_ShapeEnum ShapeType, - const GEOM::GEOM_Shape::ListOfSubShapeID& ListOfID, - const Standard_Boolean Sort) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result; - TopoDS_Shape mainShape; - TopoDS_Shape mainTopo = GetTopoShape(shape); - - bool main = false; - while ( !main ) { - if ( shape->IsMainShape() ) { - mainShape = GetTopoShape(shape); - main = true; - } else - shape = GetIORFromString( shape->MainName() ); - } - - if(ListOfID.length() < 1) { - THROW_SALOME_CORBA_EXCEPTION("In GEOM_Gen_i::SubShape() : bad list of shapes", - SALOME::BAD_PARAM); - } - - /* Create a sequence of all sub shapes */ - TopTools_ListOfShape listShape; - - TopTools_MapOfShape mapShape; - TopExp_Explorer exp ; - for ( exp.Init( mainShape, TopAbs_ShapeEnum(ShapeType)) ; exp.More(); exp.Next() ) { - if ( mapShape.Add( exp.Current() ) ) - listShape.Append ( exp.Current() ); - } - - if (listShape.IsEmpty()) return shape; - - if (Sort) - SortShapes(listShape); - - TopTools_SequenceOfShape SS; - TopTools_ListIteratorOfListOfShape it (listShape); - for (; it.More(); it.Next()) - SS.Append( it.Value() ); - - TopoDS_Shape SubShape; - if (ListOfID.length() == 1) - SubShape = SS.Value(ListOfID[0]); - else - { - BRep_Builder B; - TopoDS_Compound Comp; - B.MakeCompound (Comp); - unsigned int ind; - for ( ind = 0; ind < ListOfID.length(); ind++ ) - B.Add( Comp, SS.Value(ListOfID[ind]) ); - SubShape = Comp; - } - - if ( !TNaming_Tool::HasLabel( myCurrentOCAFDoc->Main(), SubShape ) ) - result = CreateSubObject( SubShape, shape, ListOfID); - else { - int TransDef; - TDF_Label Lab = TNaming_Tool::Label( myCurrentOCAFDoc->Main(), SubShape, TransDef ); - Handle(TDataStd_Name) Att; - if ( Lab.FindAttribute( TDataStd_Name::GetID(), Att ) ) { - TCollection_AsciiString nameIOR( Att->Get() ); - result = GEOM::GEOM_Shape::_narrow(_orb->string_to_object( nameIOR.ToCString() )); - if ( strcmp( result->MainName(), _orb->object_to_string(shape) ) != 0 ) { - result = CreateSubObject( SubShape, shape, ListOfID); - } - } - } - - return result; -} - - -//================================================================================ -// function : SubShapeAll() -// purpose : Explode a shape in all sub shapes with a type (Method for TUI or GUI) -//================================================================================ - -GEOM::GEOM_Gen::ListOfGeomShapes* GEOM_Gen_i::SubShapeAll(GEOM::GEOM_Shape_ptr shape, - CORBA::Short ShapeType) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - return SubShapesAll(shape, (TopAbs_ShapeEnum) ShapeType); -} - -//================================================================================ -// function : SubShapeAllSorted() -// purpose : Explode a shape in all sub shapes with a type (Method for TUI or GUI) -//================================================================================ - -GEOM::GEOM_Gen::ListOfGeomShapes* GEOM_Gen_i::SubShapeAllSorted(GEOM::GEOM_Shape_ptr shape, - CORBA::Short ShapeType) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - return SubShapesAll(shape, (TopAbs_ShapeEnum) ShapeType, Standard_True); -} - -//================================================================================ -// function : SubShapeAllSorted() -// purpose : -//================================================================================ - -GEOM::GEOM_Gen::ListOfGeomShapes* GEOM_Gen_i::SubShapesAll(GEOM::GEOM_Shape_ptr shape, - const TopAbs_ShapeEnum ShapeType, - const Standard_Boolean Sort) - throw (SALOME::SALOME_Exception) -{ - /* List of sub shapes returned */ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Gen::ListOfGeomShapes_var listOfGeomShapes = new GEOM::GEOM_Gen::ListOfGeomShapes; - listOfGeomShapes->length(0) ; - - TopoDS_Shape mainTopo = GetTopoShape(shape); - TopoDS_Shape mainShape; - bool main = false; - while ( !main ) { - if ( shape->IsMainShape() ) { - mainShape = GetTopoShape(shape); - main = true; - } else - shape = GetIORFromString( shape->MainName() ); - } - - if( mainTopo.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("In GEOM_Gen_i::SubShapeAll() : null main shape", - SALOME::BAD_PARAM); - } - - /* List/index : field set for any sub shape */ - GEOM::GEOM_Shape::ListOfSubShapeID_var ListOfID = new GEOM::GEOM_Shape::ListOfSubShapeID; - ListOfID->length(1) ; - - // retrieve all subshapes - TopTools_MapOfShape mapShape; - TopTools_ListOfShape listShape; - - if (mainTopo.ShapeType()==TopAbs_COMPOUND && ShapeType==TopAbs_SHAPE) - { - TopoDS_Iterator It(mainTopo,Standard_True,Standard_True ); - for ( ; It.More(); It.Next() ) - if (mapShape.Add( It.Value() )) - listShape.Append( It.Value() ); - } - else - { - TopExp_Explorer exp ( mainTopo, ShapeType); - for ( ; exp.More(); exp.Next() ) - if (mapShape.Add( exp.Current() )) - listShape.Append( exp.Current() ); - } - - if (Sort) - SortShapes(listShape); - - /* Create all sub shapes */ - int index; - GEOM::GEOM_Shape_var result; - - TopTools_ListIteratorOfListOfShape itSub (listShape); - for (index = 1; itSub.More(); itSub.Next(), ++index) - { - const TopoDS_Shape& SubShape = itSub.Value(); - // check if SubShape is already in OCAFDS and ... - if ( TNaming_Tool::HasLabel( myCurrentOCAFDoc->Main(), SubShape ) ) - { - int TransDef; - TDF_Label Lab = TNaming_Tool::Label( myCurrentOCAFDoc->Main(), SubShape, TransDef ); - Handle(TDataStd_Name) Att; - if ( Lab.FindAttribute( TDataStd_Name::GetID(), Att ) ) - { - TCollection_AsciiString nameIOR( Att->Get() ); - result = GEOM::GEOM_Shape::_narrow(_orb->string_to_object( nameIOR.ToCString() )); - // ... it is subshape of - if ( strcmp( result->MainName(), _orb->object_to_string(shape) ) == 0 ) - { - listOfGeomShapes->length(index) ; - listOfGeomShapes[index-1] = result ; - continue; - } - } - } - -// if (Sort) -// ListOfID[0] = index; -// else - ListOfID[0] = GetIndexTopology( SubShape, mainShape ) ; - result = CreateSubObject( SubShape, shape, ListOfID); - /* Add each sub shape in the list returned */ - listOfGeomShapes->length(index) ; - listOfGeomShapes[index-1] = result ; - } - - return listOfGeomShapes._retn() ; -} - -//================================================================================= -// function : MakeBoolean() -// purpose : Boolean operation according to the type 'operation' -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeBoolean(GEOM::GEOM_Shape_ptr shape1, - GEOM::GEOM_Shape_ptr shape2, - CORBA::Long operation) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result; - TopoDS_Shape shape ; - TopoDS_Shape aShape1 ; - TopoDS_Shape aShape2 ; - - try { - aShape1 = GetTopoShape(shape1) ; - aShape2 = GetTopoShape(shape2) ; - - if( aShape1.IsNull() || aShape2.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Boolean aborted : argument shape is null", SALOME::BAD_PARAM); - } - - switch (operation) - { - case 1 : /* Common */ - shape = BRepAlgoAPI_Common(aShape1, aShape2).Shape(); - break ; - case 2 : /* Cut */ - shape = BRepAlgoAPI_Cut(aShape1, aShape2).Shape(); - break ; - case 3 : /* Fuse */ - shape = BRepAlgoAPI_Fuse(aShape1, aShape2).Shape(); - break ; - case 4 : /* Section */ - shape = BRepAlgoAPI_Section(aShape1, aShape2).Shape(); - break ; - default : - MESSAGE("Boolean operation not known : " << operation ) ; - return result ; - } - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in boolean operation", SALOME::BAD_PARAM); - } - - /* We test the validity of resulting shape */ - if( !IsValid(shape) ) { - THROW_SALOME_CORBA_EXCEPTION("Boolean aborted : non valid shape result", SALOME::BAD_PARAM); - } - - result = CreateObject(shape) ; - - /* put shape and name into geom/OCAF doc */ - GEOMDS_Commands GC(myCurrentOCAFDoc->Main()); - /* add attributs 'shape' and' name_io'r in a new label */ - TDF_Label Lab = GC.Generated(aShape1, shape, result->Name() ); - TCollection_AsciiString entry; - TDF_Tool::Entry(Lab, entry); - result->ShapeId( entry.ToCString() ) ; - - /* Create a new label */ - TDF_Label NewLab = Lab.NewChild(); - TCollection_ExtendedString Value("Arguments"); - TDataStd_Name::Set(NewLab,Value); - - TDF_Label NewLab1 = NewLab.NewChild(); - TDF_Label RefLab; - TDF_Tool::Label(myCurrentOCAFDoc->GetData(), shape1->ShapeId(), RefLab); - TDF_Reference::Set(NewLab1, RefLab); - - TDF_Label NewLab2 = NewLab.NewChild(); - TDF_Tool::Label(myCurrentOCAFDoc->GetData(), shape2->ShapeId(), RefLab); - TDF_Reference::Set(NewLab2, RefLab); - return result ; -} - - -//================================================================================= -// function : MakeFuse() -// purpose : Special purpose ! -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeFuse(GEOM::GEOM_Shape_ptr shape1, - GEOM::GEOM_Shape_ptr shape2) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result; - TopoDS_Shape aShape1 = GetTopoShape(shape1) ; - TopoDS_Shape aShape2 = GetTopoShape(shape2) ; - if( aShape1.IsNull() || aShape2.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Fuse aborted : shape in argument is null", SALOME::BAD_PARAM); - } - TopoDS_Shape shape; - try { - shape = BRepAlgoAPI_Fuse(aShape1, aShape2).Shape(); - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in Fuse operation", SALOME::BAD_PARAM); - } - - /* We test the validity of resulting shape */ - if( !IsValid(shape) ) { - THROW_SALOME_CORBA_EXCEPTION("Fuse aborted : non valid shape result", SALOME::BAD_PARAM); - } - - result = CreateObject(shape) ; - - /* put shape and name into geom/OCAF doc */ - GEOMDS_Commands GC(myCurrentOCAFDoc->Main()); - /* add attributs 'shape' and' name_io'r in a new label */ - TDF_Label Lab = GC.Generated(aShape1, shape, result->Name() ); - TCollection_AsciiString entry; - TDF_Tool::Entry(Lab, entry); - result->ShapeId( entry.ToCString() ) ; - - /* Create a new label */ - TDF_Label NewLab = Lab.NewChild(); - TCollection_ExtendedString Value("Arguments"); - TDataStd_Name::Set(NewLab,Value); - - TDF_Label NewLab1 = NewLab.NewChild(); - TDF_Label RefLab; - TDF_Tool::Label(myCurrentOCAFDoc->GetData(), shape1->ShapeId(), RefLab); - TDF_Reference::Set(NewLab1, RefLab); - - TDF_Label NewLab2 = NewLab.NewChild(); - TDF_Tool::Label(myCurrentOCAFDoc->GetData(), shape2->ShapeId(), RefLab); - TDF_Reference::Set(NewLab2, RefLab); - return result ; -} - - -//================================================================================ -// function : MakeAxisStruct() -// purpose : Create a structure GEOM::AxisStruct (see IDL file) -//================================================================================ -GEOM::AxisStruct GEOM_Gen_i::MakeAxisStruct(CORBA::Double x, - CORBA::Double y, - CORBA::Double z, - CORBA::Double vx, - CORBA::Double vy, - CORBA::Double vz) -{ - GEOM::AxisStruct A ; - A.x = x ; A.y = y ; A.z = z ; - A.vx = vx ; A.vy = vy ; A.vz = vz ; - return A ; -} - - -//================================================================================ -// function : MakePointStruct() -// purpose : Create a structure GEOM::PointStruct (see IDL file) -//================================================================================ -GEOM::PointStruct GEOM_Gen_i::MakePointStruct(CORBA::Double x, - CORBA::Double y, - CORBA::Double z) -{ - beginService( "GEOM_Gen_i::MakePointStruct" ); - GEOM::PointStruct p ; - p.x = x ; p.y = y ; p.z = z ; - endService( "GEOM_Gen_i::MakePointStruct" ); - return p ; -} - -//================================================================================ -// function : MakeDirection() -// purpose : Create a structure GEOM::DirStruct (see IDL file) -//================================================================================ -GEOM::DirStruct GEOM_Gen_i::MakeDirection(const GEOM::PointStruct& p) -{ - GEOM::DirStruct d ; - d.PS.x = p.x ; d.PS.y = p.y ; d.PS.z = p.z ; - return d ; -} - -//================================================================================= -// function : MakeBox() -// purpose : Create a box topology. -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeBox(CORBA::Double x1, - CORBA::Double y1, - CORBA::Double z1, - CORBA::Double x2, - CORBA::Double y2, - CORBA::Double z2) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - gp_Pnt P1(x1,y1,z1); - gp_Pnt P2(x2,y2,z2); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - try { - tds = BRepPrimAPI_MakeBox(P1,P2).Shape(); - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeBox", SALOME::BAD_PARAM); - } - - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Make Box aborted : null shape", SALOME::BAD_PARAM); - } - - result = CreateObject(tds); - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry) ; - return result; -} - - -//================================================================================ -// function : MakeCylinder -// purpose : Create a cylinder topology -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeCylinder(const GEOM::PointStruct& pstruct, - const GEOM::DirStruct& dstruct, - CORBA::Double radius, - CORBA::Double height) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result; - TopoDS_Shape tds ; - gp_Pnt p(pstruct.x, pstruct.y, pstruct.z) ; - gp_Dir d(dstruct.PS.x, dstruct.PS.y, dstruct.PS.z) ; - gp_Ax2 axis(p, d) ; - - try { - tds = BRepPrimAPI_MakeCylinder(axis, radius, height).Shape(); - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeCylinder", SALOME::BAD_PARAM); - } - - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Make Cylinder aborted", SALOME::BAD_PARAM); - } - result = CreateObject(tds); - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry); - return result ; -} - -//================================================================================ -// function : MakeSphere() -// purpose : Make a sphere topology -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeSphere(CORBA::Double x1, - CORBA::Double y1, - CORBA::Double z1, - CORBA::Double radius) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - try { - tds = BRepPrimAPI_MakeSphere(gp_Pnt(x1,y1,z1), radius).Shape(); - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeSphere", SALOME::BAD_PARAM); - } - - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Make Sphere aborted", SALOME::BAD_PARAM); - } - result = CreateObject(tds) ; - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry); - return result; -} - -//================================================================================ -// function : MakeTorus() -// purpose : Create a torus topology -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeTorus( const GEOM::PointStruct& pstruct, - const GEOM::DirStruct& dstruct, - CORBA::Double major_radius, - CORBA::Double minor_radius ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result; - TopoDS_Shape tds ; - gp_Pnt p(pstruct.x, pstruct.y, pstruct.z) ; - gp_Dir d(dstruct.PS.x, dstruct.PS.y, dstruct.PS.z) ; - gp_Ax2 axis(p, d) ; - - try { - tds = BRepPrimAPI_MakeTorus(axis, major_radius, minor_radius).Shape(); - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeTorus", SALOME::BAD_PARAM); - } - - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Make torus aborted", SALOME::BAD_PARAM); - } - result = CreateObject(tds); - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry); - return result ; -} - - -//================================================================================ -// function : MakeCone() -// purpose : Create a cone topology -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeCone(const GEOM::PointStruct& pstruct, - const GEOM::DirStruct& dstruct, - CORBA::Double radius1, - CORBA::Double radius2, - CORBA::Double height) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result; - TopoDS_Shape tds ; - gp_Pnt p(pstruct.x, pstruct.y, pstruct.z) ; - gp_Dir d(dstruct.PS.x, dstruct.PS.y, dstruct.PS.z) ; - gp_Ax2 axis(p, d) ; - - try { - /* Cone doesn't work if same radius */ - if( fabs(radius1-radius2) <= Precision::Confusion() ) { - tds = BRepPrimAPI_MakeCylinder(axis, (radius1+radius2)/2.0, height).Shape(); - } - else { - tds = BRepPrimAPI_MakeCone(axis, radius1, radius2, height).Shape(); - } - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeCone", SALOME::BAD_PARAM); - } - - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Make Cone aborted", SALOME::BAD_PARAM); - } - result = CreateObject(tds); - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry); - return result ; -} - - - -//================================================================================== -// function : ImportIGES() -// purpose : Import shape from an IGES (IGS) file -// : LPN modified 7 mai 2002 -//================================================================================== -GEOM::GEOM_Shape_ptr GEOM_Gen_i::ImportIGES(const char* filename) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - //VRV: OCC 4.0 migration - IGESControl_Reader aReader; - //VRV: OCC 4.0 migration - try { - IFSelect_ReturnStatus stat = aReader.ReadFile((char*)filename); - if ( stat != IFSelect_RetDone ) { - THROW_SALOME_CORBA_EXCEPTION("Error in reading import file", SALOME::BAD_PARAM); } - - MESSAGE("ImportIGES : all Geometry Transfer" << endl ) ; -#if OCC_VERSION_MAJOR >= 5 - aReader.ClearShapes(); - aReader.TransferRoots(); -#else - aReader.Clear(); - aReader.TransferRoots(false); -#endif - MESSAGE("ImportIGES : count of shapes produced = " << aReader.NbShapes() << endl ); - TopoDS_Shape shape = aReader.OneShape(); - - if ( !shape.IsNull() ) { - /* Final CORBA object creation */ - result = CreateObject(shape) ; - const char *entry = InsertInLabel( shape, result->Name(), myCurrentOCAFDoc ) ; - result->ShapeId(entry); - return result ; - } - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::ImportIGES()", SALOME::BAD_PARAM); - } - - THROW_SALOME_CORBA_EXCEPTION("Import IGES aborted : internal error", SALOME::BAD_PARAM); -} - - - -//================================================================================== -// function : ImportSTEP() -// purpose : Import shape from an STEP (stp) file -// : 'result' is a compound of shapes if file contains more entities. -//================================================================================== -GEOM::GEOM_Shape_ptr GEOM_Gen_i::ImportSTEP(const char* filename) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - //VRV: OCC 4.0 migration - STEPControl_Reader aReader; - //VRV: OCC 4.0 migration - - TopoDS_Compound compound; - BRep_Builder B; - B.MakeCompound( compound ); - - try { - IFSelect_ReturnStatus status = aReader.ReadFile((char*)filename); - - if (status == IFSelect_RetDone) { - Standard_Boolean failsonly = Standard_False ; - aReader.PrintCheckLoad (failsonly, IFSelect_ItemsByEntity); - /* Root transfers */ - Standard_Integer nbr = aReader.NbRootsForTransfer(); - aReader.PrintCheckTransfer (failsonly, IFSelect_ItemsByEntity); - - for ( Standard_Integer n=1; n <= nbr; n++) { - - Standard_Boolean ok = aReader.TransferRoot(n); - /* Collecting resulting entities */ - Standard_Integer nbs = aReader.NbShapes(); - if (nbs == 0) - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::ImportStep", SALOME::BAD_PARAM) ; - - for ( Standard_Integer i=1; i<=nbs; i++ ) { - TopoDS_Shape aShape = aReader.Shape(i); - if ( aShape.IsNull() ) - THROW_SALOME_CORBA_EXCEPTION("Null shape in GEOM_Gen_i::ImportStep", SALOME::BAD_PARAM) ; - - /* For a single entity */ - if(nbr == 1 && nbs == 1) { - result = CreateObject(aShape) ; - const char *entry = InsertInLabel(aShape, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry); - return result ; - } - else { - B.Add( compound, aShape ) ; - } - } - } - - TopoDS_Shape tds = compound ; - result = CreateObject(tds) ; - if( CORBA::is_nil(result) ) - THROW_SALOME_CORBA_EXCEPTION("Translation aborted : null result", SALOME::BAD_PARAM); - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry); - return result ; - } - - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::ImportStep", SALOME::BAD_PARAM); - } - return result ; -} - - -//================================================================================== -// function : Partition() -// purpose : -//================================================================================== - -GEOM::GEOM_Shape_ptr - GEOM_Gen_i::Partition(const GEOM::GEOM_Gen::ListOfIOR& ListShapes, - const GEOM::GEOM_Gen::ListOfIOR& ListTools, - const GEOM::GEOM_Gen::ListOfIOR& ListKeepInside, - const GEOM::GEOM_Gen::ListOfIOR& ListRemoveInside, - const CORBA::Short Limit) -throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var aResult; - TopoDS_Shape tds ; - //MESSAGE ("In Partition"); - try { - - unsigned int ind, nbshapes = 0; - nbshapes += ListShapes.length() + ListTools.length(); - nbshapes += ListKeepInside.length() + ListRemoveInside.length(); - - Partition_Spliter PS; - TopTools_MapOfShape ShapesMap(nbshapes), ToolsMap(nbshapes); - - // add object shapes that are in ListShapes; - for ( ind = 0; ind < ListShapes.length(); ind++) { - - GEOM::GEOM_Shape_var aShape = GetIORFromString( ListShapes[ind] ); - TopoDS_Shape Shape = GetTopoShape(aShape); - if(Shape.IsNull() ) { - //MESSAGE ( "In Partition a shape is null" ); - THROW_SALOME_CORBA_EXCEPTION("In Partition a shape is null", SALOME::BAD_PARAM); - } - if ( ShapesMap.Add( Shape )) - PS.AddShape(Shape); - } - - // add tool shapes that are in ListTools and not in ListShapes; - for (ind = 0; ind < ListTools.length(); ind++) { - - GEOM::GEOM_Shape_var aShape = GetIORFromString( ListTools[ind] ); - TopoDS_Shape Shape = GetTopoShape(aShape); - if(Shape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("In Partition a shape is null", SALOME::BAD_PARAM); - } - if ( !ShapesMap.Contains( Shape ) && ToolsMap.Add( Shape )) - PS.AddTool(Shape); - } - - // add shapes that are in ListKeepInside, as object shapes; - for (ind = 0; ind < ListKeepInside.length(); ind++) { - - GEOM::GEOM_Shape_var aShape = GetIORFromString( ListKeepInside[ind] ); - TopoDS_Shape Shape = GetTopoShape(aShape); - if(Shape.IsNull() ) { - //MESSAGE ( "In Partition a Keep Inside shape is null" ); - THROW_SALOME_CORBA_EXCEPTION("In Partition a shape is null", SALOME::BAD_PARAM); - } - if (!ToolsMap.Contains( Shape ) && - ShapesMap.Add( Shape )) - PS.AddShape(Shape); - } - - // add shapes that are in ListRemoveInside, as object shapes; - for (ind = 0; ind < ListRemoveInside.length(); ind++) { - - GEOM::GEOM_Shape_var aShape = GetIORFromString( ListRemoveInside[ind] ); - TopoDS_Shape Shape = GetTopoShape(aShape); - if(Shape.IsNull() ) { - //MESSAGE ( "In Partition a Remove Inside shape is null" ); - THROW_SALOME_CORBA_EXCEPTION("In Partition a shape is null", SALOME::BAD_PARAM); - } - if (!ToolsMap.Contains( Shape ) && - ShapesMap.Add( Shape ) ) - PS.AddShape(Shape); - } - - //MESSAGE ( "Partition::Compute() " ); - PS.Compute ((TopAbs_ShapeEnum) Limit); - //MESSAGE ( "Partition::Compute() - END" ); - - // suppress result outside of shapes in KInsideMap - for (ind = 0; ind < ListKeepInside.length(); ind++) { - GEOM::GEOM_Shape_var aShape = GetIORFromString( ListKeepInside[ind] ); - TopoDS_Shape Shape = GetTopoShape(aShape); - PS.KeepShapesInside( Shape ); - } - - // suppress result inside of shapes in RInsideMap - for (ind = 0; ind < ListRemoveInside.length(); ind++) { - - GEOM::GEOM_Shape_var aShape = GetIORFromString( ListRemoveInside[ind] ); - TopoDS_Shape Shape = GetTopoShape(aShape); - PS.RemoveShapesInside( Shape ); - } - - tds = PS.Shape(); - - if( !IsValid(tds) ) { - //MESSAGE ( "In Partition: non valid shape result" ); - THROW_SALOME_CORBA_EXCEPTION("Partition aborted : non valid shape result", SALOME::BAD_PARAM); - } - } - catch (Standard_Failure) { - //MESSAGE ( "In Partition: Exception catched in GEOM_Gen_i::Partition()" ); - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::Partition", SALOME::BAD_PARAM); - } - - aResult = CreateObject(tds) ; - - /* add attributs S and mystr in a new label */ - GEOMDS_Commands GC(myCurrentOCAFDoc->Main()); - TDF_Label Lab = GC.AddShape(tds, aResult->Name() ); - TCollection_AsciiString entry; - TDF_Tool::Entry(Lab,entry); - aResult->ShapeId( entry.ToCString() ) ; - - // add arguments - - /* Create a new label */ - TDF_Label NewLab = Lab.NewChild(); - TCollection_ExtendedString Value("Arguments"); - TDataStd_Name::Set(NewLab,Value); - - // object shapes - for (unsigned int ind = 0; ind < ListShapes.length(); ind++) { - TDF_Label NewLab1 = NewLab.NewChild(); - - GEOM::GEOM_Shape_var aShape = GetIORFromString( ListShapes[ind] ); - Standard_CString anEntry = aShape->ShapeId(); - TDF_Label RefLab; - TDF_Tool::Label(myCurrentOCAFDoc->GetData(), anEntry, RefLab); - TDF_Reference::Set(NewLab1,RefLab); - } - // tool shapes - for (unsigned int ind = 0; ind < ListTools.length(); ind++) { - TDF_Label NewLab1 = NewLab.NewChild(); - - GEOM::GEOM_Shape_var aShape = GetIORFromString( ListTools[ind] ); - Standard_CString anEntry = aShape->ShapeId(); - TDF_Label RefLab; - TDF_Tool::Label(myCurrentOCAFDoc->GetData(), anEntry, RefLab); - TDF_Reference::Set(NewLab1,RefLab); - } - // limit shapes 1 - for (unsigned int ind = 0; ind < ListKeepInside.length(); ind++) { - TDF_Label NewLab1 = NewLab.NewChild(); - - GEOM::GEOM_Shape_var aShape = GetIORFromString( ListKeepInside[ind] ); - Standard_CString anEntry = aShape->ShapeId(); - TDF_Label RefLab; - TDF_Tool::Label(myCurrentOCAFDoc->GetData(), anEntry, RefLab); - TDF_Reference::Set(NewLab1,RefLab); - } - // limit shapes 2 - for (unsigned int ind = 0; ind < ListRemoveInside.length(); ind++) { - TDF_Label NewLab1 = NewLab.NewChild(); - - GEOM::GEOM_Shape_var aShape = GetIORFromString( ListRemoveInside[ind] ); - Standard_CString anEntry = aShape->ShapeId(); - TDF_Label RefLab; - TDF_Tool::Label(myCurrentOCAFDoc->GetData(), anEntry, RefLab); - TDF_Reference::Set(NewLab1,RefLab); - } - - return aResult; -} - - - -//================================================================================== -// function : MakeFilling() -// purpose : Create a surface from section curves filling -//================================================================================== -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeFilling(GEOM::GEOM_Shape_ptr myShape, - CORBA::Short mindeg, - CORBA::Short maxdeg, - CORBA::Double tol3d, - CORBA::Double tol2d, - CORBA::Short nbiter, - CORBA::Boolean theApprox) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Face tds ; - TopoDS_Shape aShape = GetTopoShape(myShape) ; - if( aShape.IsNull() || aShape.ShapeType() != TopAbs_COMPOUND ) { - THROW_SALOME_CORBA_EXCEPTION("MakeFilling aborted : null shape or not a compound", SALOME::BAD_PARAM); - } - - try { - /* we verify the contents of the shape */ - TopExp_Explorer Ex ; - TopoDS_Shape Scurrent ; - Standard_Real First, Last ; - Handle(Geom_Curve) C ; - GeomFill_SectionGenerator Section ; - - Standard_Integer i = 0 ; - for(Ex.Init(aShape, TopAbs_EDGE); Ex.More(); Ex.Next()) { - Scurrent = Ex.Current() ; - if( Scurrent.IsNull() || Scurrent.ShapeType() != TopAbs_EDGE) { - THROW_SALOME_CORBA_EXCEPTION("Initial shape doesn't contain only edges !", SALOME::BAD_PARAM); - } - C = BRep_Tool::Curve(TopoDS::Edge(Scurrent), First, Last); - if (C.IsNull()) continue; - C = new Geom_TrimmedCurve(C, First, Last); - Section.AddCurve(C) ; - i++ ; - } - - /* a 'tolerance' is used to compare 2 knots : see GeomFill_Generator.cdl */ - /* We set 'tolerance' = tol3d */ - // Section.Perform( tol3d ) ; NRI */ - Section.Perform( Precision::Confusion() ) ; - Handle(GeomFill_Line) Line = new GeomFill_Line(i) ; - - GeomFill_AppSurf App(mindeg, maxdeg, tol3d, tol2d, nbiter) ; /* user parameters */ - App.Perform(Line, Section, theApprox) ; - - if (!App.IsDone()) { - THROW_SALOME_CORBA_EXCEPTION("Filling aborted : non valid shape result", SALOME::BAD_PARAM); - } - Standard_Integer UDegree, VDegree, NbUPoles, NbVPoles, NbUKnots, NbVKnots; - App.SurfShape(UDegree, VDegree, NbUPoles, NbVPoles, NbUKnots, NbVKnots); - Handle(Geom_BSplineSurface) GBS = new Geom_BSplineSurface(App.SurfPoles(), - App.SurfWeights(), - App.SurfUKnots(), - App.SurfVKnots(), - App.SurfUMults(), - App.SurfVMults(), - App.UDegree(), - App.VDegree()); - - if( GBS.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Make Filling aborted", SALOME::BAD_PARAM); - } - tds = BRepBuilderAPI_MakeFace(GBS) ; - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeFilling", SALOME::BAD_PARAM); - } - - /* We test the validity of resulting shape */ - if( !IsValid(tds) ) { - THROW_SALOME_CORBA_EXCEPTION("Filling aborted : non valid shape result", SALOME::BAD_PARAM); - } - else { - result = CreateObject(tds) ; - InsertInLabelOneArgument(aShape, myShape, tds, result, myCurrentOCAFDoc) ; - } - - return result ; -} - - -//================================================================================= -// function : MakeGlueFaces() -// purpose : -//================================================================================= - -TopoDS_Face GEOM_Gen_i::FindSameFace(const TopoDS_Shape& aShape, - const TopoDS_Face& F, - double tol3d) -{ - TopoDS_Face aFace; - bool isSame = false; - for (TopExp_Explorer exf(aShape,TopAbs_FACE); exf.More(); exf.Next()) - { - //MESSAGE("--- test a face"); - int nbFound = 0; - aFace = TopoDS::Face(exf.Current()); - TopTools_ListOfShape liste1; - TopTools_ListOfShape liste2; - for (TopExp_Explorer exp(aFace,TopAbs_VERTEX); exp.More(); exp.Next()) - { - const TopoDS_Vertex& V = TopoDS::Vertex(exp.Current()); - liste1.Append(V); - } - for (TopExp_Explorer exp(F,TopAbs_VERTEX); exp.More(); exp.Next()) - { - const TopoDS_Vertex& V = TopoDS::Vertex(exp.Current()); - liste2.Append(V); - } - isSame = false; - if (liste1.Extent() == liste2.Extent()) - { - TopTools_ListIteratorOfListOfShape it1(liste1); - isSame = true; - for (; it1.More(); it1.Next()) - { - bool foundSamePoint = false; - gp_Pnt P1 = BRep_Tool::Pnt(TopoDS::Vertex(it1.Value())); - TopTools_ListIteratorOfListOfShape it2(liste2); - for (it2; it2.More(); it2.Next()) - { - gp_Pnt P2 = BRep_Tool::Pnt(TopoDS::Vertex(it2.Value())); - double d = P1.Distance(P2); - if (d < tol3d) - { - nbFound++; - //MESSAGE(" found Same Point : "< 0) && shellAdded) - { - //MESSAGE("more shells : "<< shellList.Extent()); - shellAdded = false; - its.Initialize(shellList); - for(; its.More(); its.Next()) - { - //MESSAGE("one more shell to try"); - TopTools_ListOfShape newFaces; // common faces from new compound - TopTools_ListOfShape oldFaces; // common faces from shell to add - TopTools_ListOfShape addFaces; // not common faces from shell to add - TopTools_ListOfShape newEdges; // common edges from new compound - TopTools_ListOfShape oldEdges; // common edges from face to add - TopoDS_Compound CFN; - TopoDS_Compound CFO; - bu.MakeCompound(CFN); // empty compound for new faces - bu.MakeCompound(CFO); // empty compound for old faces - S = TopoDS::Shell(its.Value()); - for (TopExp_Explorer exp(S,TopAbs_FACE); exp.More(); exp.Next()) - { - //MESSAGE("--- try to find corresponding face in new compound"); - TopoDS_Face F = TopoDS::Face(exp.Current()); - TopoDS_Face newFace = FindSameFace(C,F,tol3d); - if (! newFace.IsNull()) - { - //MESSAGE("--- face found"); - newFaces.Append(newFace); - bu.Add(CFN, newFace); // common faces from new compound - oldFaces.Append(F); - for (TopExp_Explorer ee(F,TopAbs_EDGE);ee.More();ee.Next()) - { - //MESSAGE("--- find edge pair"); - TopoDS_Edge Eold = TopoDS::Edge(ee.Current()); - const TopoDS_Edge& Enew = FindSameEdge(newFace, Eold, tol3d); - oldEdges.Append(Eold); - newEdges.Append(Enew); - } - } - else - { - //MESSAGE("---"); - addFaces.Append(F); - bu.Add(CFO, F); // not common faces from shell to add - } - } - if ( !newFaces.IsEmpty()) - { - //MESSAGE("--- some faces found ---"); - shellAdded = true; - BRepTools_Quilt glue; - glue.Add(CFN); - TopTools_ListIteratorOfListOfShape ito(oldEdges); - TopTools_ListIteratorOfListOfShape itn(newEdges); - for (; ito.More(); ito.Next()) - { - //MESSAGE("--- bind"); - glue.Bind(TopoDS::Edge(ito.Value()), TopoDS::Edge(itn.Value())); - itn.Next(); - } - glue.Add(CFO); - TopoDS_Compound newc = TopoDS::Compound(glue.Shells()); - for (TopExp_Explorer exs(newc,TopAbs_SHELL); exs.More(); exs.Next()) - { - TopoDS_Shell NS = TopoDS::Shell(exs.Current()); - bu.Add(C, NS); - } - shellList.Remove(its); - //MESSAGE("--- remove shell from list"); - break; - } - } - } - //MESSAGE("---" << shellList.Extent() << " " << shellAdded); - - TopExp_Explorer exp(C,TopAbs_SHELL); - Standard_Integer ish=0; - TopoDS_Compound Res; - TopoDS_Solid Sol; - BRep_Builder B; - B.MakeCompound(Res); - TopoDS_Shape theShape; - - for (; exp.More(); exp.Next()) - { - TopoDS_Shape Sh = exp.Current(); - B.MakeSolid(Sol); - B.Add(Sol,Sh); - BRepClass3d_SolidClassifier SC(Sol); - SC.PerformInfinitePoint(1.E-6); // cf. BRepFill_Confusion() - BRepFill_Evolved.cxx - if (SC.State() == TopAbs_IN) - { - B.MakeSolid(Sol); - B.Add(Sol,Sh.Reversed()); - } - B.Add(Res,Sol); - ish++; - } - if (ish == 1) { theShape = Sol;} - else { theShape = Res;} - - BRepLib::SameParameter(theShape, 1.E-5, Standard_True); - tds = theShape; - result = CreateObject(tds); - InsertInLabelOneArgument(aShape, myShape, tds, result, myCurrentOCAFDoc) ; - //MESSAGE("---"); - return result; -} - -//================================================================================= -// function : MakeSewing() -// purpose : -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeSewing( const GEOM::GEOM_Gen::ListOfIOR& ListShapes, - CORBA::Double precision ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - BRepOffsetAPI_Sewing aMethod ; - - try { - /* default OCC is 1.0e-06 */ - aMethod.Init(precision, Standard_False); - for ( unsigned int i = 0; i < ListShapes.length(); i++) { - GEOM::GEOM_Shape_var aShape = GetIORFromString( ListShapes[i] ); - TopoDS_Shape Shape = GetTopoShape(aShape) ; - if( Shape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("MakeSewing aborted : null shape during operation", SALOME::BAD_PARAM); - } - aMethod.Add(Shape) ; - } - - aMethod.Perform() ; - tds = aMethod.SewedShape() ; - if( !IsValid(tds) ) { - THROW_SALOME_CORBA_EXCEPTION("Make Sewing aborted : non valid shape", SALOME::BAD_PARAM); - } - if( tds.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Make Sewing aborted : null shape", SALOME::BAD_PARAM); - } - } - catch (Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeSewing", SALOME::BAD_PARAM); - } - - result = CreateObject(tds); - InsertInLabelMoreArguments(tds, result, ListShapes, myCurrentOCAFDoc) ; - return result; -} - -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeSewingShape( GEOM::GEOM_Shape_ptr aShape, - CORBA::Double precision ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds, S ; - BRepOffsetAPI_Sewing aMethod ; - - try { - S = GetTopoShape(aShape) ; - if(S.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("In Sewing a Shape is null", SALOME::BAD_PARAM); - } - - /* default OCC is 1.0e-06 */ - aMethod.Init(precision, Standard_False); - for ( TopExp_Explorer exp( S, TopAbs_FACE); exp.More(); exp.Next() ) { - const TopoDS_Face& F = TopoDS::Face(exp.Current()); - aMethod.Add(F) ; - } - - aMethod.Perform() ; - tds = aMethod.SewedShape() ; - if( !IsValid(tds) ) { - THROW_SALOME_CORBA_EXCEPTION("Make Sewing aborted : non valid shape", SALOME::BAD_PARAM); - } - } - catch (Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeSewing", SALOME::BAD_PARAM); - } - - result = CreateObject(tds); - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry) ; - return result; -} - -//================================================================================== -// function : OrientationChange() -// purpose : Change the orientation of a new shape -// : TopAbs_FORWARD < -- > TopAbs_REVERSED -// -// : WARNING : for the moment we make a new shape ! -//================================================================================== -GEOM::GEOM_Shape_ptr GEOM_Gen_i::OrientationChange(GEOM::GEOM_Shape_ptr aShape) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - BRep_Builder aBuilder; - - TopoDS_Shape shape = GetTopoShape(aShape) ; - if( shape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Shape is null", SALOME::BAD_PARAM); - } - - BRepBuilderAPI_Copy Copy(shape); - if( Copy.IsDone() ) { - TopoDS_Shape tds = Copy.Shape(); - if( tds.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Orientation aborted : null shape", SALOME::BAD_PARAM); - } - - if( tds.Orientation() == TopAbs_FORWARD) - tds.Orientation(TopAbs_REVERSED) ; - else - tds.Orientation(TopAbs_FORWARD) ; - - result = CreateObject(tds); - InsertInLabelOneArgument(shape, aShape, tds, result, myCurrentOCAFDoc) ; - } - return result ; -} - - -//================================================================================== -// function : GetReferencedObjects() -// purpose : -//================================================================================== -GEOM::GEOM_Gen::ListOfIOR* GEOM_Gen_i::GetReferencedObjects(GEOM::GEOM_Shape_ptr shape) -{ - GEOM::GEOM_Gen::ListOfIOR_var aList = new GEOM::GEOM_Gen::ListOfIOR; - aList->length(0); - - if (shape->_is_nil()) return aList._retn(); - - Standard_CString entry = shape->ShapeId(); - TDF_Label Lab; - TDF_Tool::Label(myCurrentOCAFDoc->GetData(), entry, Lab); - - Handle(TDataStd_Name) Att; - Lab.FindAttribute(TDataStd_Name::GetID(),Att); - - TDF_ChildIterator ChildIterator(Lab); - if (ChildIterator.More()) { - TDF_Label L = ChildIterator.Value(); - Handle(TDataStd_Name) Att; - L.FindAttribute(TDataStd_Name::GetID(),Att); - if (Att->Get().IsEqual(TCollection_ExtendedString("Arguments")) ) { - - TDF_ChildIterator ChildIterator1(L); - unsigned int i = 0; - - while (ChildIterator1.More()) { - TDF_Label L = ChildIterator1.Value(); - - Handle(TDF_Reference) Ref; - if (L.FindAttribute(TDF_Reference::GetID(),Ref)) { - i++; - } - ChildIterator1.Next(); - } - aList->length(i); - i = 0; - TDF_ChildIterator ChildIterator2(L); - while (ChildIterator2.More()) { - TDF_Label L = ChildIterator2.Value(); - Handle(TDF_Reference) Ref; - if (L.FindAttribute(TDF_Reference::GetID(),Ref)) { - TDF_Label L = Ref->Get(); - - Handle(TDataStd_Name) Att; - L.FindAttribute(TDataStd_Name::GetID(),Att); - TCollection_AsciiString nameIOR (Att->Get()) ; - aList[i] = CORBA::string_dup( nameIOR.ToCString() ); - i++; - } - - ChildIterator2.Next(); - } - } - } - return aList._retn(); -} - -//================================================================================== -// function : GetObjects() -// purpose : -//================================================================================== -GEOM::GEOM_Gen::ListOfIOR* GEOM_Gen_i::GetObjects(GEOM::GEOM_Shape_ptr shape) -{ - GEOM::GEOM_Gen::ListOfIOR_var aList = new GEOM::GEOM_Gen::ListOfIOR; - aList->length(0); - - Standard_CString entry = shape->ShapeId(); - TDF_Label Lab; - TDF_Tool::Label(myCurrentOCAFDoc->GetData(), entry, Lab); - - Handle(TDataStd_Name) Att; - Lab.FindAttribute(TDataStd_Name::GetID(),Att); - - TDF_ChildIterator ChildIterator(Lab); - unsigned int i = 0; - while (ChildIterator.More()) { - TDF_Label L = ChildIterator.Value(); - Handle(TDataStd_Name) Att; - L.FindAttribute(TDataStd_Name::GetID(),Att); - - if (!Att->Get().IsEqual(TCollection_ExtendedString("Arguments")) ) { - i++; - } - ChildIterator.Next(); - } - - aList->length(i); - i = 0; - TDF_ChildIterator ChildIterator1(Lab); - while (ChildIterator1.More()) { - TDF_Label L = ChildIterator1.Value(); - Handle(TDataStd_Name) Att; - L.FindAttribute(TDataStd_Name::GetID(),Att); - - if (!Att->Get().IsEqual(TCollection_ExtendedString("Arguments")) ) { - TCollection_AsciiString nameIOR (Att->Get()); - aList[i] = CORBA::string_dup( nameIOR.ToCString() ); - i++; - } - ChildIterator1.Next(); - } - return aList._retn(); -} - - -//================================================================================== -// function : Import -// purpose : Import shape from a BREP file -//================================================================================== -GEOM::GEOM_Shape_ptr GEOM_Gen_i::ImportBREP(const char* filename) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - TopoDS_Shape tds ; - GEOM::GEOM_Shape_var result ; - - try { - BRep_Builder aBuilder; - char* aCopyfilename = strdup(filename); - BRepTools::Read(tds, aCopyfilename, aBuilder) ; - free(aCopyfilename); - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Import BRep aborted", SALOME::BAD_PARAM); - } - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::ImportBREP", SALOME::BAD_PARAM); - } - - result = CreateObject(tds) ; - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry); - return result; -} - - -//================================================================================ -// function : MakePlane() -// purpose : Make a plane topology (non infinite) -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakePlane(const GEOM::PointStruct& pstruct, - const GEOM::DirStruct& dstruct, - CORBA::Double trimsize) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - - try { - gp_Pnt aPoint(pstruct.x, pstruct.y, pstruct.z) ; - gp_Dir aDirection(dstruct.PS.x, dstruct.PS.y, dstruct.PS.z) ; - /* we make a trimmed plane */ - gp_Pln gplane(aPoint, aDirection) ; - tds = BRepBuilderAPI_MakeFace(gplane, -trimsize, +trimsize, -trimsize, +trimsize) ; - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakePlane", SALOME::BAD_PARAM); - } - - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Make Plane aborted : null shape", SALOME::BAD_PARAM); - } - - result = CreateObject(tds) ; - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry); - return result ; -} - -//================================================================================= -// function : MakeVertex() -// purpose : Create a Vertex topology. -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeVertex(CORBA::Double x, - CORBA::Double y, - CORBA::Double z) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - gp_Pnt P(x,y,z); - TopoDS_Shape tds = BRepBuilderAPI_MakeVertex(P).Shape(); - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Make Vertex/Point aborted", SALOME::BAD_PARAM); - } - tds.Infinite(true); - result = CreateObject(tds) ; - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry); - return result ; -} - - -//================================================================================= -// function : MakeFace() -// purpose : -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeFace( GEOM::GEOM_Shape_ptr wire, - CORBA::Boolean wantplanarface ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape aShape; - TopoDS_Shape tds; - - try { - aShape = GetTopoShape(wire) ; - if( aShape.IsNull() || aShape.ShapeType() != TopAbs_WIRE ) { - THROW_SALOME_CORBA_EXCEPTION("MakeFace aborted : null or inappropriate shape", SALOME::BAD_PARAM); - } - TopoDS_Wire W = TopoDS::Wire(aShape) ; - tds = BRepBuilderAPI_MakeFace(W, wantplanarface).Shape() ; - if( !tds.IsNull() ) { - result = CreateObject(tds) ; - InsertInLabelOneArgument(aShape, wire, tds, result, myCurrentOCAFDoc) ; - } - else { - THROW_SALOME_CORBA_EXCEPTION("Null result in GEOM_Gen_i::MakeFace", SALOME::BAD_PARAM); - } - } - catch (Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeFace", SALOME::BAD_PARAM); - } - return result ; -} - - -//================================================================================= -// function : MakeFaces() -// purpose : -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeFaces(const GEOM::GEOM_Gen::ListOfIOR& ListShapes, - CORBA::Boolean wantplanarface) - throw (SALOME::SALOME_Exception) -{ - GEOM::GEOM_Shape_var result; - - try { - GEOM::GEOM_Shape_var aShape = GetIORFromString(ListShapes[0]); - TopoDS_Shape Shape = GetTopoShape(aShape); - if(Shape.IsNull() || Shape.ShapeType() != TopAbs_WIRE) { - THROW_SALOME_CORBA_EXCEPTION("Shell aborted : null shape during operation", SALOME::BAD_PARAM); - } - TopoDS_Wire W = TopoDS::Wire(Shape); - TopoDS_Shape FFace = BRepBuilderAPI_MakeFace(W, wantplanarface).Shape(); - if(!FFace.IsNull()) { - if(ListShapes.length() == 1) { - result = CreateObject(FFace); - InsertInLabelMoreArguments(FFace, result, ListShapes, myCurrentOCAFDoc); - } - else if(ListShapes.length() >= 2) { - TopoDS_Compound C; - BRep_Builder aBuilder; - aBuilder.MakeCompound(C); - BRepAlgo_FaceRestrictor FR; - - TopAbs_Orientation OriF = FFace.Orientation(); - TopoDS_Shape aLocalS = FFace.Oriented(TopAbs_FORWARD); - FR.Init(TopoDS::Face(aLocalS), Standard_False, Standard_True); - - for(unsigned int i = 0; i < ListShapes.length(); i++) { - GEOM::GEOM_Shape_var aShape = GetIORFromString(ListShapes[i]); - TopoDS_Shape Shape = GetTopoShape(aShape); - if(Shape.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Shell aborted : null shape during operation", SALOME::BAD_PARAM); - } - FR.Add(TopoDS::Wire(Shape)); - } - - FR.Perform(); - - if(FR.IsDone()) { - int k = 0; - TopoDS_Shape aFace; - for(; FR.More(); FR.Next()) { - aFace = FR.Current().Oriented(OriF); - aBuilder.Add(C, aFace); - k++; - } - if(k == 1) { - result = CreateObject(aFace); - InsertInLabelMoreArguments(aFace, result, ListShapes, myCurrentOCAFDoc); - } - else { - result = CreateObject(C); - InsertInLabelMoreArguments(C, result, ListShapes, myCurrentOCAFDoc); - } - } - } - } - else { - THROW_SALOME_CORBA_EXCEPTION("Null result in GEOM_Gen_i::MakeFace", SALOME::BAD_PARAM); - } - } - catch (Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeFace", SALOME::BAD_PARAM); - } - return result; -} - - -//================================================================================= -// function : MakeShell() -// purpose : Make a compound from a list containing one or more shapes -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeShell( const GEOM::GEOM_Gen::ListOfIOR& ListShapes ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - BRepTools_Quilt Glue; - TopoDS_Shape C; - - for ( unsigned int i = 0; i < ListShapes.length(); i++) { - GEOM::GEOM_Shape_var aShape = GetIORFromString( ListShapes[i] ); - TopoDS_Shape Shape = GetTopoShape(aShape) ; - if( Shape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Shell aborted : null shape during operation", SALOME::BAD_PARAM); - } - Glue.Add(Shape) ; - } - - TopExp_Explorer exp(Glue.Shells(), TopAbs_SHELL); - Standard_Integer ish = 0; - for (; exp.More(); exp.Next()) { - C = exp.Current(); - ish++; - } - - if (ish != 1) - C = Glue.Shells(); - - if ( C.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Null result : Shell operation aborted", SALOME::BAD_PARAM); - } - else { - result = CreateObject(C) ; - InsertInLabelMoreArguments(C, result, ListShapes, myCurrentOCAFDoc) ; - } - return result; -} - - -//================================================================================= -// function : MakeSolid() -// purpose : Make a compound from a list containing one or more shapes -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeSolid( const GEOM::GEOM_Gen::ListOfIOR& ListShapes ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - Standard_Integer ish = 0; - TopoDS_Compound Res; - TopoDS_Solid Sol; - BRep_Builder B; - TopoDS_Shape Shape; - - B.MakeCompound(Res); - - for ( unsigned int i = 0; i < ListShapes.length(); i++) { - GEOM::GEOM_Shape_var aShape = GetIORFromString( ListShapes[i] ); - TopoDS_Shape Sh = GetTopoShape(aShape) ; - if( Sh.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Solid aborted : null shape during operation", SALOME::BAD_PARAM); - } - B.MakeSolid(Sol); - B.Add(Sol,Sh); - BRepClass3d_SolidClassifier SC(Sol); - SC.PerformInfinitePoint(Precision::Confusion()); - if (SC.State() == TopAbs_IN) { - B.MakeSolid(Sol); - B.Add(Sol,Sh.Reversed()); - } - B.Add(Res,Sol); - ish++; - } - if (ish == 1) { Shape = Sol;} - else { Shape = Res;} - - if ( Shape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Null result : Solid operation aborted", SALOME::BAD_PARAM); - } - else { - result = CreateObject(Shape) ; - InsertInLabelMoreArguments(Shape, result, ListShapes, myCurrentOCAFDoc) ; - } - return result; -} - - -//================================================================================ -// function : MakeLine -// purpose : Make a Line topology -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeLine(const GEOM::PointStruct& pstruct, - const GEOM::DirStruct& dstruct) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - gp_Pnt P1(pstruct.x, pstruct.y, pstruct.z); - gp_Pnt P2(dstruct.PS.x, dstruct.PS.y, dstruct.PS.z) ; - TopoDS_Shape tds ; - - try { - tds = BRepBuilderAPI_MakeEdge(P1, P2).Shape(); - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeLine", SALOME::BAD_PARAM); - } - - if ( tds.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Make Line aborted : null shape", SALOME::BAD_PARAM); - } - else { - tds.Infinite(true); - result = CreateObject(tds) ; - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry); - } - return result ; -} - - -//================================================================================ -// function : MakeVector() -// purpose : Make a vector -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeVector(const GEOM::PointStruct& pstruct1, - const GEOM::PointStruct& pstruct2) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - - try { - gp_Pnt P1(pstruct1.x, pstruct1.y, pstruct1.z); - gp_Pnt P2(pstruct2.x, pstruct2.y, pstruct2.z) ; - tds = BRepBuilderAPI_MakeEdge(P1, P2).Shape(); - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeVector", SALOME::BAD_PARAM); - } - - if ( tds.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Make Vector aborted : null shape", SALOME::BAD_PARAM); - } - else { - result = CreateObject(tds) ; - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry); - } - return result ; -} - - -//================================================================================ -// function : MakeCircle() -// purpose : -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeCircle(const GEOM::PointStruct& pstruct, - const GEOM::DirStruct& dstruct, - CORBA::Double radius) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result; - TopoDS_Shape tds ; - - try { - gp_Pnt p(pstruct.x, pstruct.y, pstruct.z) ; - gp_Dir d(dstruct.PS.x, dstruct.PS.y, dstruct.PS.z) ; - gp_Ax2 axis(p, d) ; - gp_Circ circ( axis, radius); - BRepBuilderAPI_MakeEdge MakeEdge( circ ); - tds = MakeEdge.Edge(); - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeCircle", SALOME::BAD_PARAM); - } - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Make Circle aborted", SALOME::BAD_PARAM); - } - result = CreateObject(tds); - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry); - return result ; -} - -//================================================================================ -// function : MakeEllipse() -// purpose : -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeEllipse( const GEOM::PointStruct& pstruct, - const GEOM::DirStruct& dstruct, - CORBA::Double radius_major, - CORBA::Double radius_minor ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result; - TopoDS_Shape tds ; - - try { - gp_Pnt p(pstruct.x, pstruct.y, pstruct.z) ; - gp_Dir d(dstruct.PS.x, dstruct.PS.y, dstruct.PS.z) ; - - const gp_Ax2 axis(p, d) ; - gp_Elips anEllipse( axis, radius_major, radius_minor ) ; - BRepBuilderAPI_MakeEdge MakeEdge( anEllipse ); - tds = MakeEdge.Edge(); - - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeEllipse", SALOME::BAD_PARAM); - } - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Make Ellipse aborted", SALOME::BAD_PARAM); - } - result = CreateObject(tds); - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry); - return result ; -} - -//================================================================================ -// function : MakeArc() -// purpose : make an arc of circle from pInit to pEnd and passing on pCircle -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeArc(const GEOM::PointStruct& pInit, - const GEOM::PointStruct& pCircle, - const GEOM::PointStruct& pEnd) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result; - try { - gp_Pnt pI(pInit.x, pInit.y, pInit.z) ; - gp_Pnt pC(pCircle.x, pCircle.y, pCircle.z) ; - gp_Pnt pE(pEnd.x, pEnd.y, pEnd.z) ; - - GC_MakeArcOfCircle arc( pI, pC, pE ) ; - if( !arc.IsDone() ) { - THROW_SALOME_CORBA_EXCEPTION("Arc not done", SALOME::BAD_PARAM); - } - BRepBuilderAPI_MakeEdge MakeEdge( arc ); - TopoDS_Shape tds = MakeEdge.Edge(); - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Null result : arc not done", SALOME::BAD_PARAM); - } - else { - result = CreateObject(tds); - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry); - } - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeArc", SALOME::BAD_PARAM); - } - return result ; -} - -//================================================================================= -// function : MakeSketcher() -// purpose : Make a wire from a list containing many points -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeSketcher( const char *Cmd ) - throw (SALOME::SALOME_Exception) -{ - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - try { - Sketcher_Profile aProfile (Cmd); - if(aProfile.IsDone()) - tds = aProfile.GetShape(); - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeSketcher", SALOME::BAD_PARAM); - } - - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("MakeSketcher aborted : null shape", SALOME::BAD_PARAM); - } - else { - result = CreateObject(tds); - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry) ; - } - return result; -} - - - -//================================================================================= -// function : MakeBezier() -// purpose : Make a wire from a list containing many points -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeBezier( const GEOM::GEOM_Gen::ListOfIOR& ListShapes ) - throw (SALOME::SALOME_Exception) -{ - GEOM::GEOM_Shape_var result; - TopoDS_Shape tds, Shape; - TColgp_Array1OfPnt CurvePoints(1, ListShapes.length()); - - try { - for(unsigned int i = 0; i < ListShapes.length(); i++) { - GEOM::GEOM_Shape_var aShape = GetIORFromString(ListShapes[i]); - Shape = GetTopoShape(aShape); - if(Shape.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("MakeBezier aborted : null shape during operation", SALOME::BAD_PARAM); - } - if(Shape.ShapeType() == TopAbs_VERTEX) { - const gp_Pnt& P = BRep_Tool::Pnt(TopoDS::Vertex(Shape)); - CurvePoints.SetValue(i + 1, P); - } - } - Handle(Geom_BezierCurve) GBC = new Geom_BezierCurve(CurvePoints); - tds = BRepBuilderAPI_MakeEdge(GBC); - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeBezier", SALOME::BAD_PARAM); - } - - if( tds.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Make Bezier operation aborted : null result", SALOME::BAD_PARAM); - } - else { - result = CreateObject(tds); - InsertInLabelMoreArguments(tds, result, ListShapes, myCurrentOCAFDoc); - } - return result; -} - - -//================================================================================= -// function : MakeInterpol() -// purpose : Make a wire from a list containing many points -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeInterpol( const GEOM::GEOM_Gen::ListOfIOR& ListShapes ) - throw (SALOME::SALOME_Exception) -{ - GEOM::GEOM_Shape_var result; - TopoDS_Shape tds, Shape; - TColgp_Array1OfPnt CurvePoints(1, ListShapes.length()); - - try { - for(unsigned int i = 0; i < ListShapes.length(); i++) { - GEOM::GEOM_Shape_var aShape = GetIORFromString(ListShapes[i]); - Shape = GetTopoShape(aShape); - if(Shape.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("MakeBSpline aborted : null shape during operation", SALOME::BAD_PARAM); - } - if(Shape.ShapeType() == TopAbs_VERTEX) { - const gp_Pnt& P = BRep_Tool::Pnt(TopoDS::Vertex(Shape)); - CurvePoints.SetValue(i + 1, P); - } - } - GeomAPI_PointsToBSpline GBC(CurvePoints); - tds = BRepBuilderAPI_MakeEdge(GBC); - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeBSpline", SALOME::BAD_PARAM); - } - - if( tds.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Make BSpline operation aborted : null result", SALOME::BAD_PARAM); - } - else { - result = CreateObject(tds) ; - InsertInLabelMoreArguments(tds, result, ListShapes, myCurrentOCAFDoc) ; - } - return result; -} - -//================================================================================= -// function : MakeTranslation() -// purpose : Translate a 3D shape -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeTranslation( GEOM::GEOM_Shape_ptr myShape, - CORBA::Double x, - CORBA::Double y, - CORBA::Double z) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape aShape = GetTopoShape(myShape) ; - if( aShape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Translation aborted : null shape", SALOME::BAD_PARAM); - } - gp_Vec theVector(x,y,z) ; - gp_Trsf theTransformation ; - theTransformation.SetTranslation(theVector) ; - BRepBuilderAPI_Transform myBRepTransformation(aShape, theTransformation, Standard_False) ; - TopoDS_Shape tds = myBRepTransformation.Shape() ; - - result = CreateObject(tds) ; - if( CORBA::is_nil(result) ) { - THROW_SALOME_CORBA_EXCEPTION("Translation aborted : null result", SALOME::BAD_PARAM); - } - InsertInLabelOneArgument(aShape, myShape, tds, result, myCurrentOCAFDoc) ; - return result; -} - - -//================================================================================= -// function : MakeMultiTranslation1D() -// purpose : Multi-Translate a 3D shape -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeMultiTranslation1D( GEOM::GEOM_Shape_ptr myShape, - const GEOM::DirStruct& dir, - CORBA::Double step, - CORBA::Short nbtimes ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - - TopoDS_Shape aShape = GetTopoShape(myShape) ; - if( aShape.IsNull() ) - THROW_SALOME_CORBA_EXCEPTION("MakeMultiTranslation1D aborted : null shape", SALOME::BAD_PARAM); - - try { - int i ; - double DX, DY, DZ ; - gp_Trsf theTransformation ; - gp_Vec myVec ; - gp_Vec Vec( dir.PS.x, dir.PS.y, dir.PS.z ) ; - Vec.Normalize(); - TopoDS_Compound compound; - BRep_Builder B; - B.MakeCompound( compound ); - - for ( i = 0; i < nbtimes; i++ ) { - DX = i * step * Vec.X() ; - DY = i * step * Vec.Y() ; - DZ = i * step * Vec.Z() ; - myVec.SetCoord( DX, DY, DZ ) ; - theTransformation.SetTranslation(myVec) ; - BRepBuilderAPI_Transform myBRepTransformation(aShape, theTransformation, Standard_False) ; - B.Add( compound, myBRepTransformation.Shape() ); - } - tds = compound ; - result = CreateObject(tds) ; - } - catch (Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeMultiTranslation1D", SALOME::BAD_PARAM); - } - - if( CORBA::is_nil(result) ) { - THROW_SALOME_CORBA_EXCEPTION("MakeMultiTranslation1D aborted : null result", SALOME::BAD_PARAM); - } - InsertInLabelOneArgument(aShape, myShape, tds, result, myCurrentOCAFDoc) ; - return result; -} - - -//================================================================================= -// function : MakeMultiTranslation2D() -// purpose : Multi-Translate a 3D shape -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeMultiTranslation2D( GEOM::GEOM_Shape_ptr myShape, - const GEOM::DirStruct& dir1, - CORBA::Double step1, - CORBA::Short nbtimes1, - const GEOM::DirStruct& dir2, - CORBA::Double step2, - CORBA::Short nbtimes2 ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - - TopoDS_Shape aShape = GetTopoShape(myShape) ; - if( aShape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("MakeMultiTranslation2D aborted : null shape", SALOME::BAD_PARAM); - } - - try { - int i, j ; - double DX, DY, DZ ; - gp_Trsf theTransformation ; - gp_Vec myVec ; - gp_Vec Vec1( dir1.PS.x, dir1.PS.y, dir1.PS.z ) ; - Vec1.Normalize(); - gp_Vec Vec2( dir2.PS.x, dir2.PS.y, dir2.PS.z ) ; - Vec2.Normalize(); - TopoDS_Compound compound; - BRep_Builder B; - B.MakeCompound( compound ); - - for ( i = 0; i < nbtimes1; i++ ) { - for ( j = 0; j < nbtimes2; j++ ) { - DX = i * step1 * Vec1.X() + j * step2 * Vec2.X() ; - DY = i * step1 * Vec1.Y() + j * step2 * Vec2.Y() ; - DZ = i * step1 * Vec1.Z() + j * step2 * Vec2.Z() ; - myVec.SetCoord( DX, DY, DZ ) ; - theTransformation.SetTranslation(myVec) ; - BRepBuilderAPI_Transform myBRepTransformation(aShape, theTransformation, Standard_False) ; - B.Add( compound, myBRepTransformation.Shape() ); - } - } - tds = compound ; - result = CreateObject(tds) ; - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeMultiTranslation2D", SALOME::BAD_PARAM); - } - - if( CORBA::is_nil(result) ) { - THROW_SALOME_CORBA_EXCEPTION("MakeMultiTranslation2D aborted : null result", SALOME::BAD_PARAM); - } - InsertInLabelOneArgument(aShape, myShape, tds, result, myCurrentOCAFDoc) ; - return result; -} - - -//================================================================================= -// function : MakeMultiRotation1D() -// purpose : Multi-Rotate a 3D shape -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeMultiRotation1D( GEOM::GEOM_Shape_ptr myShape, - const GEOM::DirStruct& dir, - const GEOM::PointStruct& loc, - CORBA::Short nbtimes) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - TopoDS_Shape aShape = GetTopoShape(myShape) ; - if( aShape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("MakeMultiRotation1D aborted : null shape", SALOME::BAD_PARAM); - } - - try { - - int i ; - gp_Pnt P(loc.x, loc.y, loc.z) ; - gp_Dir D(dir.PS.x, dir.PS.y, dir.PS.z) ; - gp_Ax1 AX1(P, D) ; - - double angle = 360.0/nbtimes ; - gp_Trsf theTransformation ; - TopoDS_Compound compound; - BRep_Builder B; - B.MakeCompound( compound ); - - for ( i = 0; i < nbtimes; i++ ) { - theTransformation.SetRotation(AX1, i*angle*PI180) ; - BRepBuilderAPI_Transform myBRepTransformation(aShape, theTransformation, Standard_False) ; - B.Add( compound, myBRepTransformation.Shape() ); - } - tds = compound ; - result = CreateObject(tds) ; - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeMultiRotation1D", SALOME::BAD_PARAM); - } - - if( CORBA::is_nil(result) ) { - THROW_SALOME_CORBA_EXCEPTION("MakeMultiRotation1D aborted : null result", SALOME::BAD_PARAM); - } - InsertInLabelOneArgument(aShape, myShape, tds, result, myCurrentOCAFDoc) ; - return result; -} - - -//================================================================================= -// function : MakeMultiRotation2D() -// purpose : Multi-Rotate a 3D shape -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeMultiRotation2D( GEOM::GEOM_Shape_ptr myShape, - const GEOM::DirStruct& dir, - const GEOM::PointStruct& loc, - CORBA::Double ang, - CORBA::Short nbtimes1, - CORBA::Double step, - CORBA::Short nbtimes2 ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - TopoDS_Shape aShape = GetTopoShape(myShape) ; - if( aShape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("MakeMultiRotation2D aborted : null shape", SALOME::BAD_PARAM); - } - - try { - - int i, j ; - double DX, DY, DZ ; - gp_Pnt P(loc.x, loc.y, loc.z) ; - gp_Dir D(dir.PS.x, dir.PS.y, dir.PS.z) ; - gp_Ax1 AX1(P, D) ; - gp_Trsf theTransformation1 ; - gp_Trsf theTransformation2 ; - gp_Pnt P1 ; - GProp_GProps System ; - - if ( aShape.ShapeType() == TopAbs_VERTEX) { - P1 = BRep_Tool::Pnt(TopoDS::Vertex( aShape )); - } - else if ( aShape.ShapeType() == TopAbs_EDGE || aShape.ShapeType() == TopAbs_WIRE ) { - BRepGProp::LinearProperties(aShape, System); - P1 = System.CentreOfMass() ; - } - else if ( aShape.ShapeType() == TopAbs_FACE || aShape.ShapeType() == TopAbs_SHELL ) { - BRepGProp::SurfaceProperties(aShape, System); - P1 = System.CentreOfMass() ; - } - else { - BRepGProp::VolumeProperties(aShape, System); - P1 = System.CentreOfMass() ; - } - - Handle(Geom_Line) Line = new Geom_Line(AX1); - gp_Pnt P2 = GeomAPI_ProjectPointOnCurve( P1, Line ) ; - - if ( P1.IsEqual(P2, Precision::Confusion() ) ) - THROW_SALOME_CORBA_EXCEPTION("Points are confused", SALOME::BAD_PARAM); - - gp_Vec Vec(P1.X()-P2.X(), P1.Y()-P2.Y(), P1.Z()-P2.Z()) ; - Vec.Normalize(); - - gp_Vec myVec ; - TopoDS_Compound compound; - BRep_Builder B; - B.MakeCompound( compound ); - - for ( i = 0; i < nbtimes2; i++ ) { - for ( j = 0; j < nbtimes1; j++ ) { - DX = i * step * Vec.X() ; - DY = i * step * Vec.Y() ; - DZ = i * step * Vec.Z() ; - myVec.SetCoord( DX, DY, DZ ) ; - theTransformation1.SetTranslation(myVec) ; - theTransformation2.SetRotation(AX1, j*ang*PI180) ; - BRepBuilderAPI_Transform myBRepTransformation1(aShape, theTransformation1, Standard_False) ; - BRepBuilderAPI_Transform myBRepTransformation2(myBRepTransformation1.Shape(), theTransformation2, Standard_False) ; - B.Add( compound, myBRepTransformation2.Shape() ); - } - } - tds = compound ; - result = CreateObject(tds) ; - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeMultiRotation2D", SALOME::BAD_PARAM); - } - - if( CORBA::is_nil(result) ) { - THROW_SALOME_CORBA_EXCEPTION("MakeMultiRotation2D aborted : null result", SALOME::BAD_PARAM); - } - InsertInLabelOneArgument(aShape, myShape, tds, result, myCurrentOCAFDoc) ; - return result; -} - - -//================================================================================= -// function : MakeCopy() -// purpose : Copy a 3D shape -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeCopy( GEOM::GEOM_Shape_ptr Shape) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - TopoDS_Shape aShape = GetTopoShape(Shape) ; - if(aShape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Copy aborted : null shape during operation", SALOME::BAD_PARAM); - } - BRepBuilderAPI_Copy Copy(aShape); - if( Copy.IsDone() ) { - tds = Copy.Shape(); - result = CreateObject(tds); - InsertInLabelOneArgument(aShape, Shape, tds, result, myCurrentOCAFDoc) ; - } - - return result; -} - - -//================================================================================= -// function : MakeMirrorByPlane() -// purpose : build a shape by symmetry of 'myShape' with 'shapePlane' in argument -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeMirrorByPlane(GEOM::GEOM_Shape_ptr myShape, - GEOM::GEOM_Shape_ptr shapePlane) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - TopoDS_Shape aShape = GetTopoShape(myShape) ; - TopoDS_Shape aShapePlane = GetTopoShape(shapePlane) ; - if( aShape.IsNull() || aShapePlane.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Mirror aborted : null shape argument", SALOME::BAD_PARAM); - } - - try { - Handle(Geom_Surface) surf = BRep_Tool::Surface(TopoDS::Face(aShapePlane)) ; - Handle(Geom_Plane) myPlane = Handle(Geom_Plane)::DownCast(surf) ; - const gp_Ax3 pos = myPlane->Position() ; - const gp_Pnt loc = pos.Location() ; /* location of the plane */ - const gp_Dir dir = pos.Direction() ; /* Main direction of the plane (Z axis) */ - - /* plane used for mirroring */ - gp_Ax2 pln(loc, dir) ; - gp_Trsf theTransformation ; - theTransformation.SetMirror(pln) ; - BRepBuilderAPI_Transform myBRepTransformation(aShape, theTransformation, Standard_False) ; - - tds = myBRepTransformation.Shape() ; - if(tds.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Mirror aborted", SALOME::BAD_PARAM); - } - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeMirrorByPlane", SALOME::BAD_PARAM); - } - - result = CreateObject(tds) ; - - /* Insert arguments in ocaf */ - GEOM::GEOM_Gen::ListOfIOR_var ListShapes = new GEOM::GEOM_Gen::ListOfIOR; - ListShapes->length(2); - ListShapes[0] = GetStringFromIOR(GEOM::GEOM_Shape::_duplicate(myShape)) ; - ListShapes[1] = GetStringFromIOR(GEOM::GEOM_Shape::_duplicate(shapePlane)) ; - InsertInLabelMoreArguments(tds, result, ListShapes, myCurrentOCAFDoc) ; - return result ; -} - - - -//================================================================================= -// function : MakeRotation() -// purpose : Rotation of a 3D shape around an axis -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeRotation( GEOM::GEOM_Shape_ptr myShape, - const GEOM::AxisStruct& axis, - CORBA::Double angle) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - TopoDS_Shape aShape = GetTopoShape(myShape) ; - if( aShape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Rotation aborted : null shape during operation", SALOME::BAD_PARAM); - } - - try { - gp_Pnt P(axis.x, axis.y, axis.z) ; - gp_Dir D(axis.vx, axis.vy, axis.vz) ; - gp_Ax1 AX(P, D) ; - - gp_Trsf theTransformation ; - theTransformation.SetRotation(AX, angle) ; - BRepBuilderAPI_Transform myBRepTransformation(aShape, theTransformation, Standard_False) ; - tds = myBRepTransformation.Shape() ; - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeRotation", SALOME::BAD_PARAM); - } - - if ( !tds.IsNull() ) { - result = CreateObject(tds) ; - InsertInLabelOneArgument(aShape, myShape, tds, result, myCurrentOCAFDoc) ; - } - return result ; -} - - -//================================================================================= -// function : MakeScaleTransform() -// purpose : Make a shape multipling another by a scale factor -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeScaleTransform(GEOM::GEOM_Shape_ptr myShape, - const GEOM::PointStruct& theCenterOfScale, - CORBA::Double factor) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - TopoDS_Shape aShape = GetTopoShape(myShape) ; - if( aShape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Scale aborted : null shape during operation", SALOME::BAD_PARAM); - } - - try { - gp_Pnt Pcenter(theCenterOfScale.x, theCenterOfScale.y, theCenterOfScale.z) ; - gp_Trsf theTransformation ; - theTransformation.SetScale(Pcenter, factor) ; - BRepBuilderAPI_Transform myBRepTransformation(aShape, theTransformation, Standard_False) ; - tds = myBRepTransformation.Shape() ; - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeScaleTransform", SALOME::BAD_PARAM); - } - - if ( !tds.IsNull() ) { - result = CreateObject(tds) ; - InsertInLabelOneArgument(aShape, myShape, tds, result, myCurrentOCAFDoc) ; - } - return result ; -} - - -//================================================================================= -// function : MakeCompound() -// purpose : Make a compound from a list containing one or more shapes -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeCompound( const GEOM::GEOM_Gen::ListOfIOR& ListShapes ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Compound C; - BRep_Builder aBuilder; - aBuilder.MakeCompound(C) ; - - for ( unsigned int i = 0; i < ListShapes.length(); i++) { - GEOM::GEOM_Shape_var aShape = GetIORFromString( ListShapes[i] ); - TopoDS_Shape Shape = GetTopoShape(aShape) ; - if( Shape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Compound aborted : null shape during operation", SALOME::BAD_PARAM); - } - aBuilder.Add(C, Shape) ; - } - - if ( C.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Null result : Compound operation aborted", SALOME::BAD_PARAM); - } - else { - result = CreateObject(C) ; - InsertInLabelMoreArguments(C, result, ListShapes, myCurrentOCAFDoc) ; - } - return result; -} - - -//================================================================================ -// function : MakeEdge() -// purpose : Make a linear edge with 2 points -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeEdge(const GEOM::PointStruct& pstruct1, - const GEOM::PointStruct& pstruct2) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - - try { - gp_Pnt P1(pstruct1.x, pstruct1.y, pstruct1.z); - gp_Pnt P2(pstruct2.x, pstruct2.y, pstruct2.z) ; - tds = BRepBuilderAPI_MakeEdge(P1, P2).Shape(); - if ( tds.IsNull() ) - THROW_SALOME_CORBA_EXCEPTION("MakeEdge aborted : null result", SALOME::BAD_PARAM); - } - catch (Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in MakeEdge", SALOME::BAD_PARAM); - } - - result = CreateObject(tds) ; - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry); - return result ; -} - - - -//================================================================================= -// function : MakeWire() -// purpose : Make a wire from a list containing one or more edges or wires that can -// be connected -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeWire( const GEOM::GEOM_Gen::ListOfIOR& ListShapes ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - BRepBuilderAPI_MakeWire MW ; - TopoDS_Shape tds, Shape ; - - try { - for ( unsigned int i = 0; i < ListShapes.length(); i++) { - GEOM::GEOM_Shape_var aShape = GetIORFromString( ListShapes[i] ); - Shape = GetTopoShape(aShape) ; - if( Shape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("MakeWire aborted : null shape during operation", SALOME::BAD_PARAM); - } - if( Shape.ShapeType() == TopAbs_EDGE ) - MW.Add( TopoDS::Edge(Shape) ) ; - if (Shape.ShapeType() == TopAbs_WIRE ) - MW.Add( TopoDS::Wire(Shape) ) ; - } - tds = MW ; - - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeWire", SALOME::BAD_PARAM); - } - - if( tds.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Make Wire operation aborted : null result", SALOME::BAD_PARAM); - } - else { - result = CreateObject(tds) ; - InsertInLabelMoreArguments(tds, result, ListShapes, myCurrentOCAFDoc) ; - } - return result; -} - - -//================================================================================= -// function : MakeRevolution() -// purpose : -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeRevolution(GEOM::GEOM_Shape_ptr myShape, - const GEOM::AxisStruct& axis, - double angle) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - TopoDS_Shape aShape = GetTopoShape(myShape) ; - if( aShape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Revolution aborted : null shape", SALOME::BAD_PARAM); - } - try { - gp_Pnt P(axis.x, axis.y, axis.z) ; - gp_Dir D(axis.vx, axis.vy, axis.vz); - gp_Ax1 AX(P,D); - tds = BRepPrimAPI_MakeRevol(aShape, AX, angle); - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeRevolution", SALOME::BAD_PARAM); - } - - if( tds.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Revolution aborted", SALOME::BAD_PARAM); - } - result = CreateObject(tds) ; - InsertInLabelOneArgument(aShape, myShape, tds, result, myCurrentOCAFDoc) ; - return result ; -} - - -//================================================================================= -// function : MakePipe() -// purpose : Create a shape by sweeping a baseShape along a pathShape -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakePipe( GEOM::GEOM_Shape_ptr pathShape, - GEOM::GEOM_Shape_ptr baseShape ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - TopoDS_Wire aWire ; - TopoDS_Shape pathTds = GetTopoShape(pathShape) ; - TopoDS_Shape baseTds = GetTopoShape(baseShape) ; - - if( baseTds.IsNull() || pathTds.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("MakePipe aborted : null shape argument", SALOME::BAD_PARAM); - } - - if( pathTds.ShapeType() == TopAbs_WIRE ) { - aWire = TopoDS::Wire(pathTds) ; - } - else { - if ( pathTds.ShapeType() == TopAbs_EDGE ) { - TopoDS_Edge aEdge = TopoDS::Edge(pathTds) ; - aWire = BRepBuilderAPI_MakeWire(aEdge); - } - else { - THROW_SALOME_CORBA_EXCEPTION("MakePipe aborted : bad shape type", SALOME::BAD_PARAM); - } - } - - try { - tds = BRepOffsetAPI_MakePipe(aWire, baseTds) ; - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakePipe", SALOME::BAD_PARAM); - } - - if ( !IsValid(tds) ) { - THROW_SALOME_CORBA_EXCEPTION("MakePipe aborted : non valid shape result", SALOME::BAD_PARAM); - } - else { - result = CreateObject(tds) ; - - /* Insert arguments in ocaf */ - GEOM::GEOM_Gen::ListOfIOR_var ListShapes = new GEOM::GEOM_Gen::ListOfIOR; - ListShapes->length(2); - ListShapes[0] = GetStringFromIOR(GEOM::GEOM_Shape::_duplicate(pathShape)) ; - ListShapes[1] = GetStringFromIOR(GEOM::GEOM_Shape::_duplicate(baseShape)) ; - InsertInLabelMoreArguments(tds, result, ListShapes, myCurrentOCAFDoc) ; - } - return result ; -} - - -//================================================================================= -// function : MakePrism() -// purpose : uses myShape as base and the vector P1 to P2 -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakePrism( GEOM::GEOM_Shape_ptr myShape, - const GEOM::PointStruct& P1, - const GEOM::PointStruct& P2 ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - TopoDS_Shape aShape = GetTopoShape(myShape) ; - if( aShape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Prism aborted : null shape operation", SALOME::BAD_PARAM); - } - - try { - gp_Vec Vector (P2.x - P1.x, P2.y - P1.y, P2.z - P1.z) ; - tds = BRepPrimAPI_MakePrism(aShape, Vector, Standard_False).Shape() ; - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakePipe", SALOME::BAD_PARAM); - } - - if ( tds.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Prism aborted", SALOME::BAD_PARAM); - } - else { - result = CreateObject(tds) ; - InsertInLabelOneArgument(aShape, myShape, tds, result, myCurrentOCAFDoc) ; - } - return result ; -} - - -//================================================================================= -// function : MakeCDG() -// purpose : Create a CDG topology. -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeCDG(GEOM::GEOM_Shape_ptr aShape) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - TopoDS_Shape shape = GetTopoShape(aShape) ; - GProp_GProps System; - gp_Pnt myCenterMass ; - - if( shape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("MakeCDG aborted : null shape argument", SALOME::BAD_PARAM); - } - - try { - if ( shape.ShapeType() == TopAbs_VERTEX) { - myCenterMass = BRep_Tool::Pnt(TopoDS::Vertex( shape )); - } - else if ( shape.ShapeType() == TopAbs_EDGE || shape.ShapeType() == TopAbs_WIRE ) { - BRepGProp::LinearProperties(shape, System); - myCenterMass = System.CentreOfMass() ; - } - else if ( shape.ShapeType() == TopAbs_FACE || shape.ShapeType() == TopAbs_SHELL ) { - BRepGProp::SurfaceProperties(shape, System); - myCenterMass = System.CentreOfMass() ; - } - else { - BRepGProp::VolumeProperties(shape, System); - myCenterMass = System.CentreOfMass() ; - } - - tds = BRepBuilderAPI_MakeVertex(myCenterMass).Shape() ; - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeCDG", SALOME::BAD_PARAM); - } - - if ( tds.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Make CDG aborted : null shape result", SALOME::BAD_PARAM); - } - else { - result = CreateObject(tds) ; - InsertInLabelOneArgument(shape, aShape, tds, result, myCurrentOCAFDoc) ; - } - return result ; -} - - -//================================================================================= -// function : Archimede() -// purpose : -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::Archimede(GEOM::GEOM_Shape_ptr aShape, - CORBA::Double aWeight, - CORBA::Double aWaterDensity, - CORBA::Double aMeshingDeflection) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result; - - double cste = -1; - if (aWaterDensity != 0.) - cste = aWeight/aWaterDensity; - else - THROW_SALOME_CORBA_EXCEPTION("Water density is null", SALOME::BAD_PARAM); - - TopoDS_Shape shape = GetTopoShape(aShape) ; - if( shape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Shape is null", SALOME::BAD_PARAM); - } - - gp_Dir direct(0.0,0.0,1.0); - gp_Pnt PosPlan(0.0,0.0,0.0); - Geom_Plane PP (PosPlan,direct); - Handle(Geom_Geometry) G = PP.Copy(); - Handle(Geom_Plane) P = Handle(Geom_Plane)::DownCast(G); - - gp_Dir Zdirection(0.0,0.0,1.0); - VolumeSection VOL( shape, aMeshingDeflection); - VOL.SetPlane(P); - Handle (Geom_RectangularTrimmedSurface) SurfaceTrimmee; - - if(Zdirection.IsEqual(direct,Precision::Angular()) == Standard_False) { - VOL.MakeRotation(direct); - } - - VOL.CenterOfGravity(); - SurfaceTrimmee = VOL.TrimSurf(); - Standard_Real Cote = VOL.Archimede( cste, aMeshingDeflection ); - - if ( Cote == -1 ) { - double Zmin,Zmax; - VOL.getZ(Zmin,Zmax); - double volume = VOL.CalculateVolume( Zmax ) * aWaterDensity; - - char msg[100]=""; - sprintf(msg, "shape sinks to the bottom : Weigth max = %.1f", volume); - - THROW_SALOME_CORBA_EXCEPTION(msg, SALOME::BAD_PARAM); - } - - SurfaceTrimmee=VOL.AjustePlan(SurfaceTrimmee,Cote,PosPlan); - if(Zdirection.IsEqual(direct,Precision::Angular()) == Standard_False) { - SurfaceTrimmee=VOL.InvMakeRotation(direct,SurfaceTrimmee); - } - - Standard_Real u1,u2,v1,v2; - SurfaceTrimmee->Bounds(u1,u2,v1,v2); - TopoDS_Face tirant = BRepBuilderAPI_MakeFace(SurfaceTrimmee, u1, u2, v1, v2); - - if (tirant.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Result is null", SALOME::BAD_PARAM); - } - - result = CreateObject(tirant); - InsertInLabelOneArgument(shape, aShape, tirant, result, myCurrentOCAFDoc) ; - - return result; -} - - -//================================================================================ -// function : MakeFillet() -// purpose : Create a cylinder topology -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeFillet( GEOM::GEOM_Shape_ptr shape, - CORBA::Double radius, - CORBA::Short ShapeType, - const GEOM::GEOM_Shape::ListOfSubShapeID& ListOfID ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result; - TopoDS_Shape tds ; - - const TopoDS_Shape aShape = GetTopoShape(shape) ; - if( aShape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Shape is null", SALOME::BAD_PARAM); - } - - BRepFilletAPI_MakeFillet fill(aShape); - - try { - /* case all */ - if(ListOfID.length() == 0) { - TopExp_Explorer Exp ( aShape, TopAbs_EDGE ); - for (Exp; Exp.More(); Exp.Next()) { - TopoDS_Edge E =TopoDS::Edge(Exp.Current()); - fill.Add(E); - } - for (int i = 1;i<=fill.NbContours();i++) { -#if OCC_VERSION_MAJOR >= 5 - fill.SetRadius(radius,i,i); -#else - fill.SetRadius(radius,i); -#endif - } - tds = fill.Shape(); - - } else { - - /* case selection */ - for ( unsigned int ind = 0; ind < ListOfID.length(); ind++ ) { - TopoDS_Shape ss ; - if( GetShapeFromIndex( aShape, (TopAbs_ShapeEnum)ShapeType, ListOfID[ind], ss ) ) { - TopoDS_Edge E = TopoDS::Edge(ss) ; - fill.Add( E ); - } - } - for (int i = 1;i<=fill.NbContours();i++) { -#if OCC_VERSION_MAJOR >= 5 - fill.SetRadius(radius,i,i); -#else - fill.SetRadius(radius,i); -#endif - } - tds = fill.Shape(); - } - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeFillet", SALOME::BAD_PARAM); - } - - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Make Fillet aborted", SALOME::BAD_PARAM); - } - result = CreateObject(tds); - InsertInLabelOneArgument(aShape, shape, tds, result, myCurrentOCAFDoc) ; - - return result ; -} - -//================================================================================ -// function : MakeFilletR1R2() -// purpose : Create a cylinder topology -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeFilletR1R2( GEOM::GEOM_Shape_ptr shape, - CORBA::Double radius1, - CORBA::Double radius2, - CORBA::Short ShapeType, - const GEOM::GEOM_Shape::ListOfSubShapeID& ListOfID ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result; - TopoDS_Shape tds ; - - const TopoDS_Shape aShape = GetTopoShape(shape) ; - if( aShape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Shape is null", SALOME::BAD_PARAM); - } - - BRepFilletAPI_MakeFillet fill(aShape); - - try { - /* case all */ - if(ListOfID.length() == 0) { - TopExp_Explorer Exp ( aShape, TopAbs_EDGE ); - for (Exp; Exp.More(); Exp.Next()) { - TopoDS_Edge E =TopoDS::Edge(Exp.Current()); - fill.Add(E); - } - for (int i = 1;i<=fill.NbContours();i++) { -#if OCC_VERSION_MAJOR >= 5 - fill.SetRadius(radius1,radius2,i,i); -#else - fill.SetRadius(radius1,radius2,i); -#endif - } - tds = fill.Shape(); - - } else { - - /* case selection */ - for ( unsigned int ind = 0; ind < ListOfID.length(); ind++ ) { - TopoDS_Shape ss ; - if( GetShapeFromIndex( aShape, (TopAbs_ShapeEnum)ShapeType, ListOfID[ind], ss ) ) { - TopoDS_Edge E = TopoDS::Edge(ss) ; - fill.Add( E ); - } - } - for (int i = 1;i<=fill.NbContours();i++) { -#if OCC_VERSION_MAJOR >= 5 - fill.SetRadius(radius1,radius2,i,i); -#else - fill.SetRadius(radius1,radius2,i); -#endif - } - tds = fill.Shape(); - } - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeFilletR1R2", SALOME::BAD_PARAM); - } - - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Make Fillet aborted", SALOME::BAD_PARAM); - } - result = CreateObject(tds); - InsertInLabelOneArgument(aShape, shape, tds, result, myCurrentOCAFDoc) ; - - return result ; -} - -//================================================================================ -// function : MakeChamfer -// purpose : Create a Chamfer topology -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeChamfer( GEOM::GEOM_Shape_ptr shape, - CORBA::Double d1, - CORBA::Double d2, - CORBA::Short ShapeType, - const GEOM::GEOM_Shape::ListOfSubShapeID& ListOfID ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result; - TopoDS_Shape tds ; - - const TopoDS_Shape aShape = GetTopoShape(shape) ; - if( aShape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Shape is null", SALOME::BAD_PARAM); - } - - BRepFilletAPI_MakeChamfer MC(aShape); - - try { - /* case all */ - TopTools_IndexedDataMapOfShapeListOfShape M; - TopExp::MapShapesAndAncestors(aShape,TopAbs_EDGE,TopAbs_FACE,M); - if(ListOfID.length() == 0) { - for (int i = 1;i<=M.Extent();i++) { - TopoDS_Edge E = TopoDS::Edge(M.FindKey(i)); - TopoDS_Face F = TopoDS::Face(M.FindFromIndex(i).First()); - if (!BRepTools::IsReallyClosed(E, F) && !BRep_Tool::Degenerated(E)) - MC.Add(d1,d2,E,F); - } - tds = MC.Shape(); - - } else { - - /* case selection */ - for ( unsigned int ind = 0; ind < ListOfID.length(); ind++ ) { - TopoDS_Shape ss ; - if( GetShapeFromIndex( aShape, (TopAbs_ShapeEnum)ShapeType, ListOfID[ind], ss ) ) { - TopoDS_Edge E = TopoDS::Edge( ss ) ; - TopoDS_Face F = TopoDS::Face(M.FindFromKey(E).First()); - if (!BRepTools::IsReallyClosed(E, F) && !BRep_Tool::Degenerated(E)) - MC.Add(d1,d2,E,F); - } - } - tds = MC.Shape(); - } - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeChamfer", SALOME::BAD_PARAM); - } - - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Make Chamfer aborted", SALOME::BAD_PARAM); - } - result = CreateObject(tds); - InsertInLabelOneArgument(aShape, shape, tds, result, myCurrentOCAFDoc) ; - - return result ; -} - -//================================================================================ -// function : MakeChamferAD -// purpose : Create a Chamfer topology by Lenght & Angle -//================================================================================ -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeChamferAD( GEOM::GEOM_Shape_ptr shape, - CORBA::Double d, - CORBA::Double angle, - CORBA::Short ShapeType, - const GEOM::GEOM_Shape::ListOfSubShapeID& ListOfID ) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result; - TopoDS_Shape tds ; - - const TopoDS_Shape aShape = GetTopoShape(shape) ; - if( aShape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Shape is null", SALOME::BAD_PARAM); - } - - BRepFilletAPI_MakeChamfer MC(aShape); - - try { - /* case all */ - TopTools_IndexedDataMapOfShapeListOfShape M; - TopExp::MapShapesAndAncestors(aShape,TopAbs_EDGE,TopAbs_FACE,M); - if(ListOfID.length() == 0) { - for (int i = 1;i<=M.Extent();i++) { - TopoDS_Edge E = TopoDS::Edge(M.FindKey(i)); - TopoDS_Face F = TopoDS::Face(M.FindFromIndex(i).First()); - if (!BRepTools::IsReallyClosed(E, F) && !BRep_Tool::Degenerated(E)) - MC.AddDA(d,angle,E,F); - } - tds = MC.Shape(); - - } else { - - /* case selection */ - for ( unsigned int ind = 0; ind < ListOfID.length(); ind++ ) { - TopoDS_Shape ss ; - if( GetShapeFromIndex( aShape, (TopAbs_ShapeEnum)ShapeType, ListOfID[ind], ss ) ) { - TopoDS_Edge E = TopoDS::Edge( ss ) ; - TopoDS_Face F = TopoDS::Face(M.FindFromKey(E).First()); - if (!BRepTools::IsReallyClosed(E, F) && !BRep_Tool::Degenerated(E)) - MC.AddDA(d,angle,E,F); - } - } - tds = MC.Shape(); - } - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeChamferAD", SALOME::BAD_PARAM); - } - - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Make ChamferAD aborted", SALOME::BAD_PARAM); - } - result = CreateObject(tds); - InsertInLabelOneArgument(aShape, shape, tds, result, myCurrentOCAFDoc) ; - return result ; -} - -//================================================================================= -// function : CheckShape() -// purpose : -//================================================================================= -CORBA::Boolean GEOM_Gen_i::CheckShape(GEOM::GEOM_Shape_ptr shape) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - TopoDS_Shape S = GetTopoShape(shape) ; - if( S.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("Shape is null", SALOME::BAD_PARAM); - } - - BRepCheck_Analyzer ana(S,false); - if (ana.IsValid()) - return 1; - - return 0; -} - -//================================================================================= -// function : MakePlacedBox() -// purpose : -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakePlacedBox(CORBA::Double x1, CORBA::Double y1, CORBA::Double z1, - CORBA::Double delta1, CORBA::Double delta2, CORBA::Double delta3) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - - CORBA::Double x2, y2, z2 ; - - try { - x2 = x1 + delta1 ; - y2 = y1 + delta2 ; - z2 = z1 + delta3 ; - - gp_Pnt P1(x1,y1,z1); - gp_Pnt P2(x2,y2,z2); - - tds = BRepPrimAPI_MakeBox(P1,P2).Shape(); - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakeBox", SALOME::BAD_PARAM); - } - - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Make Box aborted : null shape", SALOME::BAD_PARAM); - } - - result = CreateObject(tds); - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry) ; - - return result; -} - -//================================================================================= -// function : MakePanel() -// purpose : -//================================================================================= -GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakePanel(GEOM::GEOM_Shape_ptr shape, - CORBA::Short directiontype, - CORBA::Double delta) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - GEOM::GEOM_Shape_var result ; - TopoDS_Shape tds ; - TopoDS_Shape aShape = GetTopoShape(shape) ; - Bnd_Box B ; - Standard_Real axmin,aymin,azmin,axmax,aymax,azmax ; - GEOM::PointStruct pstruct1, pstruct2, pstruct3, pstruct4 ; - - if(aShape.IsNull() ) { - THROW_SALOME_CORBA_EXCEPTION("MakePanel aborted : null shape during operation", SALOME::BAD_PARAM); - } - - try { - BRepBndLib::Add(aShape,B); - B.Enlarge(10.); - B.Get(axmin,aymin,azmin,axmax,aymax,azmax); - - switch (directiontype) - { - case 1 : /* X */ - pstruct1 = MakePointStruct( delta, aymin, azmin ) ; - pstruct2 = MakePointStruct( delta, aymin, azmax ) ; - pstruct3 = MakePointStruct( delta, aymax, azmax ) ; - pstruct4 = MakePointStruct( delta, aymax, azmin ) ; - break ; - case 2 : /* Y */ - pstruct1 = MakePointStruct( axmin, delta, azmin ) ; - pstruct2 = MakePointStruct( axmin, delta, azmax ) ; - pstruct3 = MakePointStruct( axmax, delta, azmax ) ; - pstruct4 = MakePointStruct( axmax, delta, azmin ) ; - break ; - case 3 : /* Z */ - pstruct1 = MakePointStruct( axmin, aymin, delta ) ; - pstruct2 = MakePointStruct( axmin, aymax, delta ) ; - pstruct3 = MakePointStruct( axmax, aymax, delta ) ; - pstruct4 = MakePointStruct( axmax, aymin, delta ) ; - break ; - default : - return result ; - } - - GEOM::GEOM_Shape_ptr Edge1 = MakeEdge(pstruct1, pstruct2); - GEOM::GEOM_Shape_ptr Edge2 = MakeEdge(pstruct2, pstruct3); - GEOM::GEOM_Shape_ptr Edge3 = MakeEdge(pstruct3, pstruct4); - GEOM::GEOM_Shape_ptr Edge4 = MakeEdge(pstruct4, pstruct1); - - GEOM::GEOM_Gen::ListOfIOR_var aList = new GEOM::GEOM_Gen::ListOfIOR; - aList->length(4); - aList[0]=CORBA::string_dup(Edge1->Name()); - aList[1]=CORBA::string_dup(Edge2->Name()); - aList[2]=CORBA::string_dup(Edge3->Name()); - aList[3]=CORBA::string_dup(Edge4->Name()); - - GEOM::GEOM_Shape_ptr aWire = MakeWire( aList ); - GEOM::GEOM_Shape_ptr aFace = MakeFace( aWire, true ) ; - tds = GetTopoShape(aFace); - - } - catch(Standard_Failure) { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakePanel", SALOME::BAD_PARAM); - } - - if (tds.IsNull()) { - THROW_SALOME_CORBA_EXCEPTION("Make PanelsPartition aborted : null shape", SALOME::BAD_PARAM); - } - - result = CreateObject(tds); - const char *entry = InsertInLabel(tds, result->Name(), myCurrentOCAFDoc) ; - result->ShapeId(entry) ; - - return result; -} - - -void GEOM_Gen_i::ExportIGES(const char* filename,GEOM::GEOM_Shape_ptr theShape) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - if (theShape->_is_nil()) - { - THROW_SALOME_CORBA_EXCEPTION("Export IGES aborted", SALOME::BAD_PARAM); - } - TopoDS_Shape tds = GetTopoShape(theShape); - if (tds.IsNull()) - { - THROW_SALOME_CORBA_EXCEPTION("Export IGES aborted", SALOME::BAD_PARAM); - } - try - { - //VRV: OCC 4.0 migration - IGESControl_Controller::Init(); - IGESControl_Writer ICW (Interface_Static::CVal("XSTEP.iges.unit"), - Interface_Static::IVal("XSTEP.iges.writebrep.mode")); - //VRV: OCC 4.0 migration - - ICW.AddShape (tds); - ICW.ComputeModel(); - char * aname = strdup(filename); - Standard_Boolean result = ICW.Write( aname ); - free(aname); - } - catch(Standard_Failure) - { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::ExportIGES", SALOME::BAD_PARAM); - } -} - -void GEOM_Gen_i::ExportBREP(const char* filename,GEOM::GEOM_Shape_ptr theShape) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - if (theShape->_is_nil()) - { - THROW_SALOME_CORBA_EXCEPTION("Export BRep aborted", SALOME::BAD_PARAM); - } - TopoDS_Shape tds = GetTopoShape(theShape); - if (tds.IsNull()) - { - THROW_SALOME_CORBA_EXCEPTION("Export BRep aborted", SALOME::BAD_PARAM); - } - try - { - char * aname = strdup(filename); - Standard_Boolean result = BRepTools::Write(tds,aname); - free(aname); - } - catch(Standard_Failure) - { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::ExportBREP", SALOME::BAD_PARAM); - } -} - -void GEOM_Gen_i::ExportSTEP(const char* filename,GEOM::GEOM_Shape_ptr theShape) - throw (SALOME::SALOME_Exception) -{ - Unexpect aCatch(SALOME_SalomeException); - if (theShape->_is_nil()) - { - THROW_SALOME_CORBA_EXCEPTION("Export STEP aborted", SALOME::BAD_PARAM); - } - TopoDS_Shape tds = GetTopoShape(theShape); - if (tds.IsNull()) - { - THROW_SALOME_CORBA_EXCEPTION("Export STEP aborted", SALOME::BAD_PARAM); - } - try - { - IFSelect_ReturnStatus status ; - //VRV: OCC 4.0 migration - STEPControl_Writer aWriter; - status = aWriter.Transfer( tds, STEPControl_ManifoldSolidBrep ) ; - //VRV: OCC 4.0 migration - if ( status == IFSelect_RetDone ) - { - char * aname = strdup(filename); - status = aWriter.Write( aname ) ; - free(aname); - } - } - catch(Standard_Failure) - { - THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::ExportBREP", SALOME::BAD_PARAM); - } -} - - -//===================================================================================== -// EXPORTED METHODS -//===================================================================================== -extern "C" -{ - PortableServer::ObjectId * GEOMEngine_factory(CORBA::ORB_ptr orb, - PortableServer::POA_ptr poa, - PortableServer::ObjectId * contId, - const char *instanceName, - const char * interfaceName) - { - GEOM_Gen_i * myGEOM_Gen_i = new GEOM_Gen_i(orb, poa, contId, instanceName, interfaceName); - myGEOM_Gen_i->register_name("/myGEOM_Gen"); // NRI : 11/07/2002 : Add for Supervision example - return myGEOM_Gen_i->getId() ; - } -} - diff --git a/src/GEOM/GEOM_IOperations.cxx b/src/GEOM/GEOM_IOperations.cxx index 0e4a71296..699a7b8f3 100644 --- a/src/GEOM/GEOM_IOperations.cxx +++ b/src/GEOM/GEOM_IOperations.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include diff --git a/src/GEOM/GEOM_IOperations.hxx b/src/GEOM/GEOM_IOperations.hxx index 67781992d..824cb60ed 100644 --- a/src/GEOM/GEOM_IOperations.hxx +++ b/src/GEOM/GEOM_IOperations.hxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_IOperations_HXX_ #define _GEOM_IOperations_HXX_ @@ -62,7 +63,7 @@ class GEOM_IOperations //Returns an error code of the last operatioin Standard_EXPORT char* GetErrorCode() { - return _errorCode.ToCString(); + return (char*) _errorCode.ToCString(); } //Returns a pointer to GEOM_Engine which this operation interface is associated diff --git a/src/GEOM/GEOM_ISubShape.hxx b/src/GEOM/GEOM_ISubShape.hxx index 8b3f1430b..492b96f56 100644 --- a/src/GEOM/GEOM_ISubShape.hxx +++ b/src/GEOM/GEOM_ISubShape.hxx @@ -1,26 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // // NOTE: This is an intreface to a function for the Shapes // (Wire, Face, Shell, Solid and Compound) creation. - - +// #include "GEOM_Function.hxx" #include "TColStd_HSequenceOfTransient.hxx" diff --git a/src/GEOM/GEOM_Object.cxx b/src/GEOM/GEOM_Object.cxx index 6d5174d4d..672ce7835 100644 --- a/src/GEOM/GEOM_Object.cxx +++ b/src/GEOM/GEOM_Object.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include @@ -88,7 +90,9 @@ Handle(GEOM_Object) GEOM_Object::GetObject(TDF_Label& theLabel) GEOM_Engine* anEngine= GEOM_Engine::GetEngine(); if(anEngine == NULL) return NULL; - return anEngine->GetObject(anID->Get(), anEntry.ToCString()); + return anEngine->GetObject(anID->Get(), (char*) anEntry.ToCString()); + + } //============================================================================= @@ -378,6 +382,31 @@ TCollection_AsciiString GEOM_Object::GetAuxData() return aData; } +//============================================================================= +/*! + * SetParameters + */ +//============================================================================= +void GEOM_Object::SetParameters(const TCollection_AsciiString& theParameters) +{ + if( _parameters.IsEmpty() ) + _parameters = theParameters; + else { + _parameters += "|"; + _parameters += theParameters; + } +} + +//============================================================================= +/*! + * GetParameters + */ +//============================================================================= +TCollection_AsciiString GEOM_Object::GetParameters() const +{ + return _parameters; +} + //============================================================================= /*! diff --git a/src/GEOM/GEOM_Object.hxx b/src/GEOM/GEOM_Object.hxx index 7d8eda71b..67f309bb0 100644 --- a/src/GEOM/GEOM_Object.hxx +++ b/src/GEOM/GEOM_Object.hxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef _GEOM_Object_HeaderFile #define _GEOM_Object_HeaderFile @@ -219,6 +221,12 @@ class GEOM_Object : public MMgt_TShared //Returns an auxiliary data Standard_EXPORT TCollection_AsciiString GetAuxData(); + //Set a notebook variables used for object creation + Standard_EXPORT void SetParameters(const TCollection_AsciiString& theParameters); + + //Get a notebook variables used for object creation + Standard_EXPORT TCollection_AsciiString GetParameters() const; + //########################################################### // Sub shape methods //########################################################### @@ -270,6 +278,7 @@ class GEOM_Object : public MMgt_TShared Handle(TDataStd_TreeNode) _root; TDF_Label _label; TCollection_AsciiString _ior; + TCollection_AsciiString _parameters; }; #endif diff --git a/src/GEOM/GEOM_PythonDump.cxx b/src/GEOM/GEOM_PythonDump.cxx index 41b9c184f..8f4143404 100644 --- a/src/GEOM/GEOM_PythonDump.cxx +++ b/src/GEOM/GEOM_PythonDump.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #include "GEOM_PythonDump.hxx" #include @@ -117,7 +119,7 @@ namespace GEOM TDF_Tool::TagList(theObj1->GetEntry(), aTags1); TDF_Tool::TagList(theObj2->GetEntry(), aTags2); TColStd_ListIteratorOfListOfInteger aListIter1(aTags1), aListIter2(aTags2); - for (; aListIter1.More(); aListIter1.Next()) { + for (; aListIter1.More(); aListIter1.Next(), aListIter2.Next()) { if (!aListIter2.More()) return theObj1; // anObj1 is stored under anObj2 diff --git a/src/GEOM/GEOM_PythonDump.hxx b/src/GEOM/GEOM_PythonDump.hxx index 4e87df150..43c63133e 100644 --- a/src/GEOM/GEOM_PythonDump.hxx +++ b/src/GEOM/GEOM_PythonDump.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #ifndef _GEOM_PYTHONDUMP_HXX_ #define _GEOM_PYTHONDUMP_HXX_ diff --git a/src/GEOM/GEOM_Solver.cxx b/src/GEOM/GEOM_Solver.cxx index 0414a123b..4967c088b 100644 --- a/src/GEOM/GEOM_Solver.cxx +++ b/src/GEOM/GEOM_Solver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include "GEOM_Solver.hxx" #include #include diff --git a/src/GEOM/GEOM_Solver.hxx b/src/GEOM/GEOM_Solver.hxx index 03dc0c5d2..acc4e1194 100644 --- a/src/GEOM/GEOM_Solver.hxx +++ b/src/GEOM/GEOM_Solver.hxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_Solver_HXX_ #define _GEOM_Solver_HXX_ diff --git a/src/GEOM/GEOM_SubShapeDriver.cxx b/src/GEOM/GEOM_SubShapeDriver.cxx index b756d570e..12d62e5a1 100644 --- a/src/GEOM/GEOM_SubShapeDriver.cxx +++ b/src/GEOM/GEOM_SubShapeDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOM/GEOM_SubShapeDriver.hxx b/src/GEOM/GEOM_SubShapeDriver.hxx index bfe80e847..fde1c6b16 100644 --- a/src/GEOM/GEOM_SubShapeDriver.hxx +++ b/src/GEOM/GEOM_SubShapeDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_ShapeDriver.ixx // Module : GEOM - +// #ifndef _GEOM_SubShapeDriver_HeaderFile #define _GEOM_SubShapeDriver_HeaderFile diff --git a/src/GEOM/Handle_GEOM_Application.hxx b/src/GEOM/Handle_GEOM_Application.hxx index f8e3b285d..f7f21d156 100644 --- a/src/GEOM/Handle_GEOM_Application.hxx +++ b/src/GEOM/Handle_GEOM_Application.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : Handle_GEOM_Application.hxx // Module : GEOM - +// #ifndef _Handle_GEOM_Application_HeaderFile #define _Handle_GEOM_Application_HeaderFile diff --git a/src/GEOM/Handle_GEOM_DataMapNodeOfDataMapOfAsciiStringTransient.hxx b/src/GEOM/Handle_GEOM_DataMapNodeOfDataMapOfAsciiStringTransient.hxx index f0800cdff..9458f5db4 100644 --- a/src/GEOM/Handle_GEOM_DataMapNodeOfDataMapOfAsciiStringTransient.hxx +++ b/src/GEOM/Handle_GEOM_DataMapNodeOfDataMapOfAsciiStringTransient.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : Handle_GEOM_DataMapNodeOfDataMapOfAsciiStringTransient.hxx // Module : GEOM - +// #ifndef _Handle_GEOM_DataMapNodeOfDataMapOfAsciiStringTransient_HeaderFile #define _Handle_GEOM_DataMapNodeOfDataMapOfAsciiStringTransient_HeaderFile diff --git a/src/GEOM/Makefile.am b/src/GEOM/Makefile.am index 9eea77f17..4ab7a8b7c 100644 --- a/src/GEOM/Makefile.am +++ b/src/GEOM/Makefile.am @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,70 +17,66 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # - # File : Makefile.in # Author : Damien COQUERET (OCC) # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header: - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # Libraries targets lib_LTLIBRARIES = libGEOMbasic.la -dist_libGEOMbasic_la_SOURCES = \ - GEOM_Application.cxx \ - GEOM_Engine.cxx \ - GEOM_Function.cxx \ - GEOM_Object.cxx \ - GEOM_IOperations.cxx \ - GEOM_Solver.cxx \ - GEOM_SubShapeDriver.cxx \ - GEOM_PythonDump.cxx \ - GEOM_DataMapNodeOfDataMapOfAsciiStringTransient_0.cxx \ - GEOM_DataMapIteratorOfDataMapOfAsciiStringTransient_0.cxx \ +dist_libGEOMbasic_la_SOURCES = \ + GEOM_Application.cxx \ + GEOM_Engine.cxx \ + GEOM_Function.cxx \ + GEOM_Object.cxx \ + GEOM_IOperations.cxx \ + GEOM_Solver.cxx \ + GEOM_SubShapeDriver.cxx \ + GEOM_PythonDump.cxx \ + GEOM_DataMapNodeOfDataMapOfAsciiStringTransient_0.cxx \ + GEOM_DataMapIteratorOfDataMapOfAsciiStringTransient_0.cxx \ GEOM_DataMapOfAsciiStringTransient_0.cxx -#LIB_CLIENT_IDL = -#LIB_SERVER_IDL = - -# Executables targets -#BIN = -#BIN_SRC = -#BIN_CLIENT_IDL = -#BIN_SERVER_IDL = - # header files -salomeinclude_HEADERS = \ - GEOM_Application.hxx \ - Handle_GEOM_Application.hxx \ - GEOM_Engine.hxx \ - GEOM_Function.hxx \ - GEOM_Object.hxx \ - GEOM_IOperations.hxx \ - GEOM_ISubShape.hxx \ - GEOM_Solver.hxx \ - GEOM_PythonDump.hxx \ - GEOM_DataMapOfAsciiStringTransient.hxx \ +salomeinclude_HEADERS = \ + GEOM_Application.hxx \ + GEOM_Application.ixx \ + GEOM_Application.jxx \ + Handle_GEOM_Application.hxx \ + GEOM_Engine.hxx \ + GEOM_Function.hxx \ + GEOM_Object.hxx \ + GEOM_SubShapeDriver.hxx \ + GEOM_IOperations.hxx \ + GEOM_ISubShape.hxx \ + GEOM_Solver.hxx \ + GEOM_PythonDump.hxx \ + GEOM_DataMapIteratorOfDataMapOfAsciiStringTransient.hxx \ + GEOM_DataMapNodeOfDataMapOfAsciiStringTransient.hxx \ + GEOM_DataMapOfAsciiStringTransient.hxx \ Handle_GEOM_DataMapNodeOfDataMapOfAsciiStringTransient.hxx -# additionnal information to compil and link file -libGEOMbasic_la_CPPFLAGS = \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(BOOST_CPPFLAGS) \ - -I$(top_builddir)/idl \ +# additional information to compile and link file + +libGEOMbasic_la_CPPFLAGS = \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(BOOST_CPPFLAGS) \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libGEOMbasic_la_LDFLAGS = \ - $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ - $(STDLIB) \ - $(CAS_LDPATH) -lTKXSBase \ - $(CAS_OCAF) \ +libGEOMbasic_la_LDFLAGS = \ + $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ + $(STDLIB) \ + $(CAS_LDPATH) -lTKXSBase \ + $(CAS_OCAF) \ $(CAS_OCAFVIS) diff --git a/src/GEOM/geom.cxx b/src/GEOM/geom.cxx deleted file mode 100644 index 8ac0deb96..000000000 --- a/src/GEOM/geom.cxx +++ /dev/null @@ -1,88 +0,0 @@ -// GEOM GEOM : implementaion of GEOM_Gen.idl -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : geom.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - -#include - -#include -#include -#include - -//================================================================================== -// function : main() MAIN -// purpose : -//================================================================================== -int main(int argc, char** argv) -{ - try { - // Create and initialise the ORB. - // CORBA::ORB_var orb = CORBA::ORB_init(argc, argv, "omniORB4"); - CORBA::ORB_var orb = CORBA::ORB_init(argc, argv, "omniORB3"); - - // Obtain a reference to the root POA. - CORBA::Object_var obj = orb->resolve_initial_references("RootPOA"); - PortableServer::POA_var poa = PortableServer::POA::_narrow(obj); - - // We allocate the objects on the heap. Since these are reference - // counted objects, they will be deleted by the POA when they are no - // longer needed. -#ifdef WNT - GEOM_Gen_i * myGEOM_Gen_i = new GEOM_Gen_i((CORBA::ORB_ptr)orb, poa, 0, 0, 0 ); -#else - GEOM_Gen_i * myGEOM_Gen_i = new GEOM_Gen_i(orb); -#endif - - // Activate the objects. This tells the POA that the objects are - // ready to accept requests. - PortableServer::ObjectId_var myGEOM_Gen_iid = poa->activate_object(myGEOM_Gen_i); - myGEOM_Gen_i->register_name("/myGEOM_Gen"); - - // Obtain a POAManager, and tell the POA to start accepting - // requests on its objects. - PortableServer::POAManager_var pman = poa->the_POAManager(); - pman->activate(); - - orb->run(); - orb->destroy(); - } - catch(CORBA::SystemException&) { - cerr << "Caught CORBA::SystemException." << endl; - } - catch(CORBA::Exception&) { - cerr << "Caught CORBA::Exception." << endl; - } - catch(omniORB::fatalException& fe) { - cerr << "Caught omniORB::fatalException:" << endl; - cerr << " file: " << fe.file() << endl; - cerr << " line: " << fe.line() << endl; - cerr << " msg: " << fe.errmsg() << endl; - } - catch(...) { - cerr << "Caught unknown exception." << endl; - } - return 0; -} diff --git a/src/GEOMAlgo/BlockFix.cdl b/src/GEOMAlgo/BlockFix.cdl index 7825011c6..3edbd6ad5 100644 --- a/src/GEOMAlgo/BlockFix.cdl +++ b/src/GEOMAlgo/BlockFix.cdl @@ -1,27 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- File: BlockFix.cdl --- Created: Tue Dec 7 11:59:05 2004 --- Author: Pavel Durandin --- ----Copyright: Open CASCADE SA 2004 +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +-- +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- 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: BlockFix.cdl +-- Created: Tue Dec 7 11:59:05 2004 +-- Author: Pavel Durandin diff --git a/src/GEOMAlgo/BlockFix.cxx b/src/GEOMAlgo/BlockFix.cxx index eacbd4027..a8c47b09d 100644 --- a/src/GEOMAlgo/BlockFix.cxx +++ b/src/GEOMAlgo/BlockFix.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: BlockFix.cxx // Created: Tue Dec 7 11:59:05 2004 // Author: Pavel DURANDIN - - +// #include #include #include diff --git a/src/GEOMAlgo/BlockFix.hxx b/src/GEOMAlgo/BlockFix.hxx index a6007a7dd..80b041429 100644 --- a/src/GEOMAlgo/BlockFix.hxx +++ b/src/GEOMAlgo/BlockFix.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _BlockFix_HeaderFile #define _BlockFix_HeaderFile diff --git a/src/GEOMAlgo/BlockFix.ixx b/src/GEOMAlgo/BlockFix.ixx index 9912dd405..700a7f37a 100644 --- a/src/GEOMAlgo/BlockFix.ixx +++ b/src/GEOMAlgo/BlockFix.ixx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include diff --git a/src/GEOMAlgo/BlockFix.jxx b/src/GEOMAlgo/BlockFix.jxx index 552f48067..3c9000120 100644 --- a/src/GEOMAlgo/BlockFix.jxx +++ b/src/GEOMAlgo/BlockFix.jxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef _TopoDS_Shape_HeaderFile #include diff --git a/src/GEOMAlgo/BlockFix_BlockFixAPI.cdl b/src/GEOMAlgo/BlockFix_BlockFixAPI.cdl index 7b415e7cb..6682c1881 100644 --- a/src/GEOMAlgo/BlockFix_BlockFixAPI.cdl +++ b/src/GEOMAlgo/BlockFix_BlockFixAPI.cdl @@ -1,27 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- File: BlockFix_BlockFixAPI.cdl --- Created: Tue Dec 7 17:56:09 2004 --- Author: Pavel Durandin --- ----Copyright: Open CASCADE SA 2004 +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +-- +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- 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: BlockFix_BlockFixAPI.cdl +-- Created: Tue Dec 7 17:56:09 2004 +-- Author: Pavel Durandin class BlockFixAPI from BlockFix inherits TShared from MMgt diff --git a/src/GEOMAlgo/BlockFix_BlockFixAPI.cxx b/src/GEOMAlgo/BlockFix_BlockFixAPI.cxx index c87b2e60d..62e33fd4e 100644 --- a/src/GEOMAlgo/BlockFix_BlockFixAPI.cxx +++ b/src/GEOMAlgo/BlockFix_BlockFixAPI.cxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: BlockFix_BlockFixAPI.cxx // Created: Tue Dec 7 11:59:05 2004 // Author: Pavel DURANDIN -// Copyright: Open CASCADE SA 2004 - - +// #include #include #include diff --git a/src/GEOMAlgo/BlockFix_BlockFixAPI.hxx b/src/GEOMAlgo/BlockFix_BlockFixAPI.hxx index fd699a0de..9bece72c4 100644 --- a/src/GEOMAlgo/BlockFix_BlockFixAPI.hxx +++ b/src/GEOMAlgo/BlockFix_BlockFixAPI.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _BlockFix_BlockFixAPI_HeaderFile #define _BlockFix_BlockFixAPI_HeaderFile diff --git a/src/GEOMAlgo/BlockFix_BlockFixAPI.ixx b/src/GEOMAlgo/BlockFix_BlockFixAPI.ixx index d70496dc0..1b68aba32 100644 --- a/src/GEOMAlgo/BlockFix_BlockFixAPI.ixx +++ b/src/GEOMAlgo/BlockFix_BlockFixAPI.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/BlockFix_BlockFixAPI.jxx b/src/GEOMAlgo/BlockFix_BlockFixAPI.jxx index 7e28c943d..6dee401ac 100644 --- a/src/GEOMAlgo/BlockFix_BlockFixAPI.jxx +++ b/src/GEOMAlgo/BlockFix_BlockFixAPI.jxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef _ShapeBuild_ReShape_HeaderFile #include diff --git a/src/GEOMAlgo/BlockFix_BlockFixAPI.lxx b/src/GEOMAlgo/BlockFix_BlockFixAPI.lxx index 7926785d8..883e4fec6 100644 --- a/src/GEOMAlgo/BlockFix_BlockFixAPI.lxx +++ b/src/GEOMAlgo/BlockFix_BlockFixAPI.lxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include diff --git a/src/GEOMAlgo/BlockFix_CheckTool.cdl b/src/GEOMAlgo/BlockFix_CheckTool.cdl index aa85c32e8..3af730581 100644 --- a/src/GEOMAlgo/BlockFix_CheckTool.cdl +++ b/src/GEOMAlgo/BlockFix_CheckTool.cdl @@ -1,27 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- File: BlockFix_CheckTool.cdl --- Created: Fri Dec 17 10:36:58 2004 --- Author: Sergey KUUL --- ----Copyright: Open CASCADE SA 2004 +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +-- +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- 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: BlockFix_CheckTool.cdl +-- Created: Fri Dec 17 10:36:58 2004 +-- Author: Sergey KUUL class CheckTool from BlockFix diff --git a/src/GEOMAlgo/BlockFix_CheckTool.cxx b/src/GEOMAlgo/BlockFix_CheckTool.cxx index 94269ef75..a5d825255 100644 --- a/src/GEOMAlgo/BlockFix_CheckTool.cxx +++ b/src/GEOMAlgo/BlockFix_CheckTool.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: BlockFix_CheckTool.cxx // Created: 17.12.04 11:15:25 // Author: Sergey KUUL -// Copyright: Open CASCADE SA 2004 - +// #include #include diff --git a/src/GEOMAlgo/BlockFix_CheckTool.hxx b/src/GEOMAlgo/BlockFix_CheckTool.hxx index 605174576..89c32a9fc 100644 --- a/src/GEOMAlgo/BlockFix_CheckTool.hxx +++ b/src/GEOMAlgo/BlockFix_CheckTool.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _BlockFix_CheckTool_HeaderFile #define _BlockFix_CheckTool_HeaderFile diff --git a/src/GEOMAlgo/BlockFix_CheckTool.ixx b/src/GEOMAlgo/BlockFix_CheckTool.ixx index c7e4949ab..a0af6be71 100644 --- a/src/GEOMAlgo/BlockFix_CheckTool.ixx +++ b/src/GEOMAlgo/BlockFix_CheckTool.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/BlockFix_CheckTool.jxx b/src/GEOMAlgo/BlockFix_CheckTool.jxx index b9ba94f32..017d344ba 100644 --- a/src/GEOMAlgo/BlockFix_CheckTool.jxx +++ b/src/GEOMAlgo/BlockFix_CheckTool.jxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef _TopoDS_Shape_HeaderFile #include diff --git a/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.cdl b/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.cdl index 23551c0cb..06eedfc9f 100644 --- a/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.cdl +++ b/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.cdl @@ -1,27 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- File: BlockFix_PeriodicSurfaceModifier.cdl --- Created: Wed Dec 15 10:03:50 2004 --- Author: Sergey KUUL --- ----Copyright: Open CASCADE SA 2004 +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +-- +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- 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: BlockFix_PeriodicSurfaceModifier.cdl +-- Created: Wed Dec 15 10:03:50 2004 +-- Author: Sergey KUUL class PeriodicSurfaceModifier from BlockFix inherits Modification from BRepTools diff --git a/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.cxx b/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.cxx index 97590046a..5e523b68a 100644 --- a/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.cxx +++ b/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: BlockFix_PeriodicSurfaceModifier.cxx // Created: 15.12.04 10:08:50 // Author: Sergey KUUL -// Copyright: Open CASCADE SA 2004 - +// #include #include diff --git a/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.hxx b/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.hxx index 1230e3e6f..248723046 100644 --- a/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.hxx +++ b/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _BlockFix_PeriodicSurfaceModifier_HeaderFile #define _BlockFix_PeriodicSurfaceModifier_HeaderFile diff --git a/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.ixx b/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.ixx index 49daa3c1f..5ab8be7b8 100644 --- a/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.ixx +++ b/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.jxx b/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.jxx index b30f00602..72b3e9684 100644 --- a/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.jxx +++ b/src/GEOMAlgo/BlockFix_PeriodicSurfaceModifier.jxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef _TopoDS_Face_HeaderFile #include diff --git a/src/GEOMAlgo/BlockFix_SphereSpaceModifier.cdl b/src/GEOMAlgo/BlockFix_SphereSpaceModifier.cdl index b67d9d569..157ee2e1e 100644 --- a/src/GEOMAlgo/BlockFix_SphereSpaceModifier.cdl +++ b/src/GEOMAlgo/BlockFix_SphereSpaceModifier.cdl @@ -1,27 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- File: BlockFix_SphereSpaceModifier.cdl --- Created: Tue Dec 7 12:01:49 2004 --- Author: Pavel Durandin --- ----Copyright: Open CASCADE SA 2004 +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +-- +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- 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: BlockFix_SphereSpaceModifier.cdl +-- Created: Tue Dec 7 12:01:49 2004 +-- Author: Pavel Durandin class SphereSpaceModifier from BlockFix inherits Modification from BRepTools diff --git a/src/GEOMAlgo/BlockFix_SphereSpaceModifier.cxx b/src/GEOMAlgo/BlockFix_SphereSpaceModifier.cxx index e61b4a53b..a66e7b242 100644 --- a/src/GEOMAlgo/BlockFix_SphereSpaceModifier.cxx +++ b/src/GEOMAlgo/BlockFix_SphereSpaceModifier.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: BlockFix.cxx // Created: Tue Dec 7 11:59:05 2004 // Author: Pavel DURANDIN -// Copyright: Open CASCADE SA 2004 - +// #include #include diff --git a/src/GEOMAlgo/BlockFix_SphereSpaceModifier.hxx b/src/GEOMAlgo/BlockFix_SphereSpaceModifier.hxx index 80a600920..acdb3bda8 100644 --- a/src/GEOMAlgo/BlockFix_SphereSpaceModifier.hxx +++ b/src/GEOMAlgo/BlockFix_SphereSpaceModifier.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _BlockFix_SphereSpaceModifier_HeaderFile #define _BlockFix_SphereSpaceModifier_HeaderFile diff --git a/src/GEOMAlgo/BlockFix_SphereSpaceModifier.ixx b/src/GEOMAlgo/BlockFix_SphereSpaceModifier.ixx index 651423466..31ea8a258 100644 --- a/src/GEOMAlgo/BlockFix_SphereSpaceModifier.ixx +++ b/src/GEOMAlgo/BlockFix_SphereSpaceModifier.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/BlockFix_SphereSpaceModifier.jxx b/src/GEOMAlgo/BlockFix_SphereSpaceModifier.jxx index 61deba225..1b3792c56 100644 --- a/src/GEOMAlgo/BlockFix_SphereSpaceModifier.jxx +++ b/src/GEOMAlgo/BlockFix_SphereSpaceModifier.jxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef _TopoDS_Face_HeaderFile #include diff --git a/src/GEOMAlgo/BlockFix_UnionEdges.cdl b/src/GEOMAlgo/BlockFix_UnionEdges.cdl index ff806baf6..c943a6cfc 100644 --- a/src/GEOMAlgo/BlockFix_UnionEdges.cdl +++ b/src/GEOMAlgo/BlockFix_UnionEdges.cdl @@ -1,26 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- File: BlockFix_UnionEdges.cdl --- Created: Tue Dec 7 15:24:51 2004 --- Author: Sergey KUUL --- +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +-- +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- 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: BlockFix_UnionEdges.cdl +-- Created: Tue Dec 7 15:24:51 2004 +-- Author: Sergey KUUL class UnionEdges from BlockFix diff --git a/src/GEOMAlgo/BlockFix_UnionEdges.cxx b/src/GEOMAlgo/BlockFix_UnionEdges.cxx index 667375123..4ac917101 100644 --- a/src/GEOMAlgo/BlockFix_UnionEdges.cxx +++ b/src/GEOMAlgo/BlockFix_UnionEdges.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: BlockFix_UnionEdges.cxx // Created: 07.12.04 15:27:30 // Author: Sergey KUUL - - +// #include #include @@ -56,6 +57,7 @@ #include #include +#include "utilities.h" //======================================================================= //function : BlockFix_UnionEdges() @@ -109,7 +111,7 @@ static Standard_Boolean MergeEdges(const TopTools_SequenceOfShape& SeqEdges, } } if(aChain.Length()1) { // second step: union edges with various curves - cout<<"can not make analitical union => make approximation"<IsKind(STANDARD_TYPE(Geom_TrimmedCurve))) { + Handle(Geom_TrimmedCurve) tc = + Handle(Geom_TrimmedCurve)::DownCast(c3d); + c3d = tc->BasisCurve(); + } + if( ( c3d->IsKind(STANDARD_TYPE(Geom_BSplineCurve)) || + c3d->IsKind(STANDARD_TYPE(Geom_BezierCurve)) ) ) continue; + NeedUnion = false; + break; + } + if(NeedUnion) { + MESSAGE ("can not make analitical union => make approximation"); + TopoDS_Wire W; + B.MakeWire(W); + for(j=1; j<=aChain.Length(); j++) { + TopoDS_Edge edge = TopoDS::Edge(aChain.Value(j)); + B.Add(W,edge); + } + Handle(BRepAdaptor_HCompCurve) Adapt = new BRepAdaptor_HCompCurve(W); + Approx_Curve3d Conv(Adapt,Tol,GeomAbs_C1,9,1000); + Handle(Geom_BSplineCurve) bc = Conv.Curve(); + TopoDS_Edge E; + B.MakeEdge (E,bc,Precision::Confusion()); + B.Add (E,VF); + B.Add (E,VL); + aChain.SetValue(1,E); + } + else { + MESSAGE ("can not make approximation for such types of curves"); + return Standard_False; } - Handle(BRepAdaptor_HCompCurve) Adapt = new BRepAdaptor_HCompCurve(W); - Approx_Curve3d Conv(Adapt,Tol,GeomAbs_C1,9,1000); - Handle(Geom_BSplineCurve) bc = Conv.Curve(); - TopoDS_Edge E; - B.MakeEdge (E,bc,Precision::Confusion()); - B.Add (E,VF); - B.Add (E,VL); - aChain.SetValue(1,E); } anEdge = TopoDS::Edge(aChain.Value(1)); diff --git a/src/GEOMAlgo/BlockFix_UnionEdges.hxx b/src/GEOMAlgo/BlockFix_UnionEdges.hxx index 0f5baf48e..0c0bb19dd 100644 --- a/src/GEOMAlgo/BlockFix_UnionEdges.hxx +++ b/src/GEOMAlgo/BlockFix_UnionEdges.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _BlockFix_UnionEdges_HeaderFile #define _BlockFix_UnionEdges_HeaderFile diff --git a/src/GEOMAlgo/BlockFix_UnionEdges.ixx b/src/GEOMAlgo/BlockFix_UnionEdges.ixx index ffbdfbc39..03646c839 100644 --- a/src/GEOMAlgo/BlockFix_UnionEdges.ixx +++ b/src/GEOMAlgo/BlockFix_UnionEdges.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/BlockFix_UnionEdges.jxx b/src/GEOMAlgo/BlockFix_UnionEdges.jxx index bb3b12f68..4b4c3b635 100644 --- a/src/GEOMAlgo/BlockFix_UnionEdges.jxx +++ b/src/GEOMAlgo/BlockFix_UnionEdges.jxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef _ShapeBuild_ReShape_HeaderFile #include diff --git a/src/GEOMAlgo/BlockFix_UnionFaces.cdl b/src/GEOMAlgo/BlockFix_UnionFaces.cdl index 2251c6b45..14b0b02ae 100644 --- a/src/GEOMAlgo/BlockFix_UnionFaces.cdl +++ b/src/GEOMAlgo/BlockFix_UnionFaces.cdl @@ -1,27 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- File: BlockFix_UnionFaces.cdl --- Created: Tue Dec 7 17:15:42 2004 --- Author: Pavel Durandin --- ----Copyright: Open CASCADE SA 2004 +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +-- +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- 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: BlockFix_UnionFaces.cdl +-- Created: Tue Dec 7 17:15:42 2004 +-- Author: Pavel Durandin class UnionFaces from BlockFix diff --git a/src/GEOMAlgo/BlockFix_UnionFaces.cxx b/src/GEOMAlgo/BlockFix_UnionFaces.cxx index ee4398aeb..e513cbe59 100644 --- a/src/GEOMAlgo/BlockFix_UnionFaces.cxx +++ b/src/GEOMAlgo/BlockFix_UnionFaces.cxx @@ -1,76 +1,84 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: BlockFix_UnionFaces.cxx // Created: Tue Dec 7 17:15:42 2004 // Author: Pavel DURANDIN -// Open CASCADE SA 2004 +// #include -#include -#include -#include + +#include +#include + +#include #include + +#include +#include + +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include + +#include +#include +#include +#include +#include +#include + #include #include #include #include #include -#include -#include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -#include -#include - -#include -#include -#include -#include -#include -#include #include #include +#include + +#include +#include #include #include +#include +#include +#include +#include + +#include +#include //======================================================================= //function : BlockFix_UnionFaces @@ -291,7 +299,7 @@ TopoDS_Shape BlockFix_UnionFaces::Perform(const TopoDS_Shape& Shape) } } while (isNewFound); - // sorting eny type of edges + // sorting any type of edges aWire = TopoDS::Wire(aContext->Apply(aWire)); TopoDS_Face tmpF = TopoDS::Face(aContext->Apply(faces(1).Oriented(TopAbs_FORWARD))); @@ -488,7 +496,91 @@ Standard_Boolean BlockFix_UnionFaces::IsSameDomain(const TopoDS_Face& aFace, S1 = BRep_Tool::Surface(aFace,L1); S2 = BRep_Tool::Surface(aCheckedFace,L2); - return (S1 == S2 && L1 == L2); + if (S1 == S2 && L1 == L2) + return true; + + // begin: planar case (improvement 20052) + S1 = BRep_Tool::Surface(aFace); + S2 = BRep_Tool::Surface(aCheckedFace); + + Handle(Geom_Plane) aGP1, aGP2; + Handle(Geom_RectangularTrimmedSurface) aGRTS1, aGRTS2; + Handle(Geom_OffsetSurface) aGOFS1, aGOFS2; + + aGRTS1 = Handle(Geom_RectangularTrimmedSurface)::DownCast(S1); + aGRTS2 = Handle(Geom_RectangularTrimmedSurface)::DownCast(S2); + + aGOFS1 = Handle(Geom_OffsetSurface)::DownCast(S1); + aGOFS2 = Handle(Geom_OffsetSurface)::DownCast(S2); + + if (!aGOFS1.IsNull()) { + aGP1 = Handle(Geom_Plane)::DownCast(aGOFS1->BasisSurface()); + } + else if (!aGRTS1.IsNull()) { + aGP1 = Handle(Geom_Plane)::DownCast(aGRTS1->BasisSurface()); + } + else { + aGP1 = Handle(Geom_Plane)::DownCast(S1); + } + + if (!aGOFS2.IsNull()) { + aGP2 = Handle(Geom_Plane)::DownCast(aGOFS2->BasisSurface()); + } + else if (!aGRTS2.IsNull()) { + aGP2 = Handle(Geom_Plane)::DownCast(aGRTS2->BasisSurface()); + } + else { + aGP2 = Handle(Geom_Plane)::DownCast(S2); + } + + if (!aGP1.IsNull() && !aGP2.IsNull()) { + // both surfaces are planar, check equality + Standard_Real A1, B1, C1, D1; + Standard_Real A2, B2, C2, D2; + aGP1->Coefficients(A1, B1, C1, D1); + aGP2->Coefficients(A2, B2, C2, D2); + + if (fabs(A1) > Precision::Confusion()) { + A1 = 1.0; + B1 /= A1; + C1 /= A1; + D1 /= A1; + } + else if (fabs(B1) > Precision::Confusion()) { + B1 = 1.0; + C1 /= B1; + D1 /= B1; + } + else { + C1 = 1.0; + D1 /= C1; + } + + if (fabs(A2) > Precision::Confusion()) { + A2 = 1.0; + B2 /= A2; + C2 /= A2; + D2 /= A2; + } + else if (fabs(B2) > Precision::Confusion()) { + B2 = 1.0; + C2 /= B2; + D2 /= B2; + } + else { + C2 = 1.0; + D2 /= C2; + } + + if (fabs(A1 - A2) < Precision::Confusion() && + fabs(B1 - B2) < Precision::Confusion() && + fabs(C1 - C2) < Precision::Confusion() && + fabs(D1 - D2) < Precision::Confusion()) + return true; + } + // end: planar case (improvement 20052) + + return false; } @@ -528,4 +620,3 @@ void BlockFix_UnionFaces::MovePCurves(TopoDS_Face& aTarget, B.Add(aTarget,ResWire); } } - diff --git a/src/GEOMAlgo/BlockFix_UnionFaces.hxx b/src/GEOMAlgo/BlockFix_UnionFaces.hxx index 2618008b0..9cf0578d8 100644 --- a/src/GEOMAlgo/BlockFix_UnionFaces.hxx +++ b/src/GEOMAlgo/BlockFix_UnionFaces.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _BlockFix_UnionFaces_HeaderFile #define _BlockFix_UnionFaces_HeaderFile diff --git a/src/GEOMAlgo/BlockFix_UnionFaces.ixx b/src/GEOMAlgo/BlockFix_UnionFaces.ixx index eda22330b..155eca0f5 100644 --- a/src/GEOMAlgo/BlockFix_UnionFaces.ixx +++ b/src/GEOMAlgo/BlockFix_UnionFaces.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/BlockFix_UnionFaces.jxx b/src/GEOMAlgo/BlockFix_UnionFaces.jxx index 1a919c24a..7a735aac6 100644 --- a/src/GEOMAlgo/BlockFix_UnionFaces.jxx +++ b/src/GEOMAlgo/BlockFix_UnionFaces.jxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef _TopoDS_Shape_HeaderFile #include diff --git a/src/GEOMAlgo/GEOMAlgo.cdl b/src/GEOMAlgo/GEOMAlgo.cdl index 1e1e88f79..aa7e93982 100755 --- a/src/GEOMAlgo/GEOMAlgo.cdl +++ b/src/GEOMAlgo/GEOMAlgo.cdl @@ -1,27 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo.cdl -- Created: Sat Dec 04 12:36:22 2004 -- Author: Peter KURNEV -- - +-- package GEOMAlgo ---Purpose: diff --git a/src/GEOMAlgo/GEOMAlgo.pro b/src/GEOMAlgo/GEOMAlgo.pro new file mode 100644 index 000000000..8d8f69616 --- /dev/null +++ b/src/GEOMAlgo/GEOMAlgo.pro @@ -0,0 +1,249 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = GEOMAlgo +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +STDLIB = -lstdc++ + +CAS_LDPATH = -L$$(CASROOT)/Linux/lib + +INCLUDEPATH += $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} ../NMTDS ../NMTTools + +LIBS += -L$$(GEOM_ROOT_DIR)/lib -lNMTTools $${STDLIB} $${CAS_LDPATH} -lTKBO -lTKShHealing -lTKBool -lTKMesh + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS + +HEADERS = BlockFix_BlockFixAPI.hxx +HEADERS += BlockFix_BlockFixAPI.lxx +HEADERS += BlockFix_CheckTool.hxx +HEADERS += Handle_BlockFix_BlockFixAPI.hxx +HEADERS += GEOMAlgo_Algo.hxx +HEADERS += GEOMAlgo_BuilderArea.hxx +HEADERS += GEOMAlgo_BuilderFace.hxx +HEADERS += GEOMAlgo_Builder.hxx +HEADERS += GEOMAlgo_BuilderShape.hxx +HEADERS += GEOMAlgo_BuilderSolid.hxx +HEADERS += GEOMAlgo_BuilderTools.hxx +HEADERS += GEOMAlgo_ClsfBox.hxx +HEADERS += GEOMAlgo_Clsf.hxx +HEADERS += GEOMAlgo_ClsfSurf.hxx +HEADERS += GEOMAlgo_CoupleOfShapes.hxx +HEADERS += GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyInteger.hxx +HEADERS += GEOMAlgo_DataMapIteratorOfDataMapOfRealListOfShape.hxx +HEADERS += GEOMAlgo_DataMapIteratorOfDataMapOfShapeReal.hxx +HEADERS += GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet.hxx +HEADERS += GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger.hxx +HEADERS += GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape.hxx +HEADERS += GEOMAlgo_DataMapNodeOfDataMapOfShapeReal.hxx +HEADERS += GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet.hxx +HEADERS += GEOMAlgo_DataMapOfPassKeyInteger.hxx +HEADERS += GEOMAlgo_DataMapOfRealListOfShape.hxx +HEADERS += GEOMAlgo_DataMapOfShapeReal.hxx +HEADERS += GEOMAlgo_DataMapOfShapeShapeSet.hxx +HEADERS += GEOMAlgo_FinderShapeOn1.hxx +HEADERS += GEOMAlgo_FinderShapeOn2.hxx +HEADERS += GEOMAlgo_FinderShapeOn.hxx +HEADERS += GEOMAlgo_FinderShapeOnQuad.hxx +HEADERS += GEOMAlgo_GlueAnalyser.hxx +HEADERS += GEOMAlgo_Gluer.hxx +HEADERS += GEOMAlgo_HAlgo.hxx +HEADERS += GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx +HEADERS += GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape.hxx +HEADERS += GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape.hxx +HEADERS += GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx +HEADERS += GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState.hxx +HEADERS += GEOMAlgo_IndexedDataMapOfIntegerShape.hxx +HEADERS += GEOMAlgo_IndexedDataMapOfPassKeyListOfShape.hxx +HEADERS += GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape.hxx +HEADERS += GEOMAlgo_IndexedDataMapOfShapeBox.hxx +HEADERS += GEOMAlgo_IndexedDataMapOfShapeState.hxx +HEADERS += GEOMAlgo_ListIteratorOfListOfCoupleOfShapes.hxx +HEADERS += GEOMAlgo_ListIteratorOfListOfPnt.hxx +HEADERS += GEOMAlgo_ListNodeOfListOfCoupleOfShapes.hxx +HEADERS += GEOMAlgo_ListNodeOfListOfPnt.hxx +HEADERS += GEOMAlgo_ListOfCoupleOfShapes.hxx +HEADERS += GEOMAlgo_ListOfPnt.hxx +HEADERS += GEOMAlgo_PassKey.hxx +HEADERS += GEOMAlgo_PassKeyMapHasher.hxx +HEADERS += GEOMAlgo_PassKeyShape.hxx +HEADERS += GEOMAlgo_PassKeyShapeMapHasher.hxx +HEADERS += GEOMAlgo_PWireEdgeSet.hxx +HEADERS += GEOMAlgo_ShapeAlgo.hxx +HEADERS += GEOMAlgo_ShapeSet.hxx +HEADERS += GEOMAlgo_ShapeSolid.hxx +HEADERS += GEOMAlgo_ShellSolid.hxx +HEADERS += GEOMAlgo_SolidSolid.hxx +HEADERS += GEOMAlgo_Splitter.hxx +HEADERS += GEOMAlgo_StateCollector.hxx +HEADERS += GEOMAlgo_State.hxx +HEADERS += GEOMAlgo_SurfaceTools.hxx +HEADERS += GEOMAlgo_Tools3D.hxx +HEADERS += GEOMAlgo_Tools.hxx +HEADERS += GEOMAlgo_VertexSolid.hxx +HEADERS += GEOMAlgo_WESCorrector.hxx +HEADERS += GEOMAlgo_WireEdgeSet.hxx +HEADERS += GEOMAlgo_WireSolid.hxx +HEADERS += GEOMAlgo_WireSplitter.hxx +HEADERS += Handle_GEOMAlgo_ClsfBox.hxx +HEADERS += Handle_GEOMAlgo_Clsf.hxx +HEADERS += Handle_GEOMAlgo_ClsfSurf.hxx +HEADERS += Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger.hxx +HEADERS += Handle_GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape.hxx +HEADERS += Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeReal.hxx +HEADERS += Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet.hxx +HEADERS += Handle_GEOMAlgo_HAlgo.hxx +HEADERS += Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx +HEADERS += Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape.hxx +HEADERS += Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape.hxx +HEADERS += Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx +HEADERS += Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState.hxx +HEADERS += Handle_GEOMAlgo_ListNodeOfListOfCoupleOfShapes.hxx +HEADERS += Handle_GEOMAlgo_ListNodeOfListOfPnt.hxx +HEADERS += GEOMAlgo_ClsfSolid.hxx +HEADERS += GEOMAlgo_ClsfSolid.ixx +HEADERS += GEOMAlgo_ClsfSolid.jxx +HEADERS += GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyShapeShape.hxx +HEADERS += GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape.hxx +HEADERS += GEOMAlgo_DataMapOfPassKeyShapeShape.hxx +HEADERS += GEOMAlgo_Gluer1.cxx +HEADERS += GEOMAlgo_Gluer1.hxx +HEADERS += GEOMAlgo_Gluer1.ixx +HEADERS += GEOMAlgo_Gluer1.jxx +HEADERS += GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo.hxx +HEADERS += GEOMAlgo_IndexedDataMapOfShapeShapeInfo.hxx +HEADERS += GEOMAlgo_KindOfBounds.hxx +HEADERS += GEOMAlgo_KindOfClosed.hxx +HEADERS += GEOMAlgo_KindOfName.hxx +HEADERS += GEOMAlgo_KindOfShape.hxx +HEADERS += GEOMAlgo_ShapeInfo.hxx +HEADERS += GEOMAlgo_ShapeInfo.ixx +HEADERS += GEOMAlgo_ShapeInfo.jxx +HEADERS += GEOMAlgo_ShapeInfoFiller.hxx +HEADERS += GEOMAlgo_ShapeInfoFiller.ixx +HEADERS += GEOMAlgo_ShapeInfoFiller.jxx +HEADERS += Handle_GEOMAlgo_ClsfSolid.hxx +HEADERS += Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape.hxx +HEADERS += Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo.hxx + +SOURCES = BlockFix.cxx +SOURCES += BlockFix_BlockFixAPI.cxx +SOURCES += BlockFix_CheckTool.cxx +SOURCES += BlockFix_PeriodicSurfaceModifier.cxx +SOURCES += BlockFix_SphereSpaceModifier.cxx +SOURCES += BlockFix_UnionEdges.cxx +SOURCES += BlockFix_UnionFaces.cxx +SOURCES += GEOMAlgo_Algo.cxx +SOURCES += GEOMAlgo_Builder_0.cxx +SOURCES += GEOMAlgo_Builder_1.cxx +SOURCES += GEOMAlgo_Builder_2.cxx +SOURCES += GEOMAlgo_Builder_3.cxx +SOURCES += GEOMAlgo_Builder_4.cxx +SOURCES += GEOMAlgo_BuilderArea.cxx +SOURCES += GEOMAlgo_Builder.cxx +SOURCES += GEOMAlgo_BuilderFace.cxx +SOURCES += GEOMAlgo_BuilderShape.cxx +SOURCES += GEOMAlgo_BuilderSolid.cxx +SOURCES += GEOMAlgo_BuilderTools.cxx +SOURCES += GEOMAlgo_ClsfBox.cxx +SOURCES += GEOMAlgo_Clsf.cxx +SOURCES += GEOMAlgo_ClsfSurf.cxx +SOURCES += GEOMAlgo_CoupleOfShapes.cxx +SOURCES += GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyInteger_0.cxx +SOURCES += GEOMAlgo_DataMapIteratorOfDataMapOfRealListOfShape_0.cxx +SOURCES += GEOMAlgo_DataMapIteratorOfDataMapOfShapeReal_0.cxx +SOURCES += GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet_0.cxx +SOURCES += GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger_0.cxx +SOURCES += GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape_0.cxx +SOURCES += GEOMAlgo_DataMapNodeOfDataMapOfShapeReal_0.cxx +SOURCES += GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet_0.cxx +SOURCES += GEOMAlgo_DataMapOfPassKeyInteger_0.cxx +SOURCES += GEOMAlgo_DataMapOfRealListOfShape_0.cxx +SOURCES += GEOMAlgo_DataMapOfShapeReal_0.cxx +SOURCES += GEOMAlgo_DataMapOfShapeShapeSet_0.cxx +SOURCES += GEOMAlgo_FinderShapeOn1.cxx +SOURCES += GEOMAlgo_FinderShapeOn2.cxx +SOURCES += GEOMAlgo_FinderShapeOn.cxx +SOURCES += GEOMAlgo_FinderShapeOnQuad.cxx +SOURCES += GEOMAlgo_GlueAnalyser.cxx +SOURCES += GEOMAlgo_Gluer.cxx +SOURCES += GEOMAlgo_HAlgo.cxx +SOURCES += GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_0.cxx +SOURCES += GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape_0.cxx +SOURCES += GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape_0.cxx +SOURCES += GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_0.cxx +SOURCES += GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState_0.cxx +SOURCES += GEOMAlgo_IndexedDataMapOfIntegerShape_0.cxx +SOURCES += GEOMAlgo_IndexedDataMapOfPassKeyListOfShape_0.cxx +SOURCES += GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape_0.cxx +SOURCES += GEOMAlgo_IndexedDataMapOfShapeBox_0.cxx +SOURCES += GEOMAlgo_IndexedDataMapOfShapeState_0.cxx +SOURCES += GEOMAlgo_ListIteratorOfListOfCoupleOfShapes_0.cxx +SOURCES += GEOMAlgo_ListIteratorOfListOfPnt_0.cxx +SOURCES += GEOMAlgo_ListNodeOfListOfCoupleOfShapes_0.cxx +SOURCES += GEOMAlgo_ListNodeOfListOfPnt_0.cxx +SOURCES += GEOMAlgo_ListOfCoupleOfShapes_0.cxx +SOURCES += GEOMAlgo_ListOfPnt_0.cxx +SOURCES += GEOMAlgo_PassKey.cxx +SOURCES += GEOMAlgo_PassKeyMapHasher.cxx +SOURCES += GEOMAlgo_PassKeyShape.cxx +SOURCES += GEOMAlgo_PassKeyShapeMapHasher.cxx +SOURCES += GEOMAlgo_ShapeAlgo.cxx +SOURCES += GEOMAlgo_ShapeSet.cxx +SOURCES += GEOMAlgo_ShapeSolid.cxx +SOURCES += GEOMAlgo_ShellSolid.cxx +SOURCES += GEOMAlgo_SolidSolid.cxx +SOURCES += GEOMAlgo_Splitter.cxx +SOURCES += GEOMAlgo_StateCollector.cxx +SOURCES += GEOMAlgo_SurfaceTools.cxx +SOURCES += GEOMAlgo_Tools3D.cxx +SOURCES += GEOMAlgo_Tools.cxx +SOURCES += GEOMAlgo_VertexSolid.cxx +SOURCES += GEOMAlgo_WESCorrector.cxx +SOURCES += GEOMAlgo_WireEdgeSet.cxx +SOURCES += GEOMAlgo_WireSolid.cxx +SOURCES += GEOMAlgo_WireSplitter.cxx +SOURCES += GEOMAlgo_ClsfSolid.cxx +SOURCES += GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape_0.cxx +SOURCES += GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyShapeShape_0.cxx +SOURCES += GEOMAlgo_DataMapOfPassKeyShapeShape_0.cxx +SOURCES += GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo_0.cxx +SOURCES += GEOMAlgo_ShapeInfoFiller_1.cxx +SOURCES += GEOMAlgo_IndexedDataMapOfShapeShapeInfo_0.cxx +SOURCES += GEOMAlgo_ShapeInfo.cxx +SOURCES += GEOMAlgo_ShapeInfoFiller.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/GEOMAlgo/GEOMAlgo_Algo.cdl b/src/GEOMAlgo/GEOMAlgo_Algo.cdl index 1b56ef469..32f3a1b33 100755 --- a/src/GEOMAlgo/GEOMAlgo_Algo.cdl +++ b/src/GEOMAlgo/GEOMAlgo_Algo.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_Algo.cdl -- Created: Sat Dec 04 12:37:56 2004 -- Author: Peter KURNEV -- - - +-- deferred class Algo from GEOMAlgo ---Purpose: diff --git a/src/GEOMAlgo/GEOMAlgo_Algo.cxx b/src/GEOMAlgo/GEOMAlgo_Algo.cxx index 221cf1de7..a3426fffe 100755 --- a/src/GEOMAlgo/GEOMAlgo_Algo.cxx +++ b/src/GEOMAlgo/GEOMAlgo_Algo.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_Algo.cxx // Created: Sat Dec 04 12:39:47 2004 // Author: Peter KURNEV // - - +// #include //======================================================================= diff --git a/src/GEOMAlgo/GEOMAlgo_Algo.hxx b/src/GEOMAlgo/GEOMAlgo_Algo.hxx index 028e7fbce..a0df056ba 100644 --- a/src/GEOMAlgo/GEOMAlgo_Algo.hxx +++ b/src/GEOMAlgo/GEOMAlgo_Algo.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_Algo_HeaderFile #define _GEOMAlgo_Algo_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_Algo.ixx b/src/GEOMAlgo/GEOMAlgo_Algo.ixx index 5b8348358..c45fc54ca 100644 --- a/src/GEOMAlgo/GEOMAlgo_Algo.ixx +++ b/src/GEOMAlgo/GEOMAlgo_Algo.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_Algo.jxx b/src/GEOMAlgo/GEOMAlgo_Algo.jxx index 65f9ef05a..5dcdb780c 100644 --- a/src/GEOMAlgo/GEOMAlgo_Algo.jxx +++ b/src/GEOMAlgo/GEOMAlgo_Algo.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_Algo_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_Builder.cdl b/src/GEOMAlgo/GEOMAlgo_Builder.cdl index a6f4ca406..8bdcd4935 100755 --- a/src/GEOMAlgo/GEOMAlgo_Builder.cdl +++ b/src/GEOMAlgo/GEOMAlgo_Builder.cdl @@ -1,27 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: GEOMAlgo_Builder.cdl -- Created: -- Author: Peter KURNEV - - +-- class Builder from GEOMAlgo inherits BuilderShape from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_Builder.cxx b/src/GEOMAlgo/GEOMAlgo_Builder.cxx index ebb875893..8631ecd42 100755 --- a/src/GEOMAlgo/GEOMAlgo_Builder.cxx +++ b/src/GEOMAlgo/GEOMAlgo_Builder.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_Builder.cxx // Created: // Author: Peter KURNEV - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_Builder.hxx b/src/GEOMAlgo/GEOMAlgo_Builder.hxx index 930b3edf0..c5aa8f23d 100644 --- a/src/GEOMAlgo/GEOMAlgo_Builder.hxx +++ b/src/GEOMAlgo/GEOMAlgo_Builder.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_Builder_HeaderFile #define _GEOMAlgo_Builder_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_Builder.ixx b/src/GEOMAlgo/GEOMAlgo_Builder.ixx index 510e49dd6..7926e82e8 100644 --- a/src/GEOMAlgo/GEOMAlgo_Builder.ixx +++ b/src/GEOMAlgo/GEOMAlgo_Builder.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_Builder.jxx b/src/GEOMAlgo/GEOMAlgo_Builder.jxx index 4cc8d4a52..2b50611b6 100644 --- a/src/GEOMAlgo/GEOMAlgo_Builder.jxx +++ b/src/GEOMAlgo/GEOMAlgo_Builder.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_PaveFiller_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderArea.cdl b/src/GEOMAlgo/GEOMAlgo_BuilderArea.cdl index 48ef49f20..beed084dd 100755 --- a/src/GEOMAlgo/GEOMAlgo_BuilderArea.cdl +++ b/src/GEOMAlgo/GEOMAlgo_BuilderArea.cdl @@ -1,26 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: ModGlue_BuilderArea.cdl -- Created: -- Author: Peter KURNEV - +-- deferred class BuilderArea from GEOMAlgo inherits Algo from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderArea.cxx b/src/GEOMAlgo/GEOMAlgo_BuilderArea.cxx index 98a63c169..dbc4f51fb 100755 --- a/src/GEOMAlgo/GEOMAlgo_BuilderArea.cxx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderArea.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_BuilderArea.cxx // Created: // Author: Peter KURNEV - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderArea.hxx b/src/GEOMAlgo/GEOMAlgo_BuilderArea.hxx index 0a3af4928..91df68865 100644 --- a/src/GEOMAlgo/GEOMAlgo_BuilderArea.hxx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderArea.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_BuilderArea_HeaderFile #define _GEOMAlgo_BuilderArea_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderArea.ixx b/src/GEOMAlgo/GEOMAlgo_BuilderArea.ixx index 0ec206278..3b0db2c03 100644 --- a/src/GEOMAlgo/GEOMAlgo_BuilderArea.ixx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderArea.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderArea.jxx b/src/GEOMAlgo/GEOMAlgo_BuilderArea.jxx index df13a88bf..a33ada31e 100644 --- a/src/GEOMAlgo/GEOMAlgo_BuilderArea.jxx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderArea.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _IntTools_Context_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderFace.cdl b/src/GEOMAlgo/GEOMAlgo_BuilderFace.cdl index 542a828f3..3c994ff20 100755 --- a/src/GEOMAlgo/GEOMAlgo_BuilderFace.cdl +++ b/src/GEOMAlgo/GEOMAlgo_BuilderFace.cdl @@ -1,28 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: GEOMAlgo_BuilderFace.cdl -- Created: -- Author: Peter KURNEV - - - +-- class BuilderFace from GEOMAlgo inherits BuilderArea from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderFace.cxx b/src/GEOMAlgo/GEOMAlgo_BuilderFace.cxx index 724e9c77f..c6b7d4bf5 100755 --- a/src/GEOMAlgo/GEOMAlgo_BuilderFace.cxx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderFace.cxx @@ -1,26 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_BuilderFace.cxx // Created: // Author: Peter KURNEV - +// #include #include @@ -251,6 +253,7 @@ static TopTools_MapIteratorOfMapOfOrientedShape aItM; TopTools_IndexedDataMapOfShapeListOfShape aVEMap; TopTools_MapOfOrientedShape aMAdded; + TopoDS_Iterator aItW; BRep_Builder aBB; GEOMAlgo_WireEdgeSet aWES; GEOMAlgo_WESCorrector aWESCor; @@ -278,6 +281,37 @@ static const TopoDS_Shape& aW=aIt.Value(); myLoops.Append(aW); } + //modified by NIZNHY-PKV Tue Aug 5 15:09:29 2008f + // Post Treatment + TopTools_MapOfOrientedShape aMEP; + // + // a. collect all edges that are in loops + aIt.Initialize (myLoops); + for (; aIt.More(); aIt.Next()) { + const TopoDS_Shape& aW=aIt.Value(); + aItW.Initialize(aW); + for (; aItW.More(); aItW.Next()) { + const TopoDS_Shape& aE=aItW.Value(); + aMEP.Add(aE); + } + } + // + // b. collect all edges that are to avoid + aItM.Initialize(myShapesToAvoid); + for (; aItM.More(); aItM.Next()) { + const TopoDS_Shape& aE=aItM.Key(); + aMEP.Add(aE); + } + // + // c. add all edges that are not processed to myShapesToAvoid + aIt.Initialize (myShapes); + for (; aIt.More(); aIt.Next()) { + const TopoDS_Shape& aE=aIt.Value(); + if (!aMEP.Contains(aE)) { + myShapesToAvoid.Add(aE); + } + } + //modified by NIZNHY-PKV Tue Aug 5 15:09:35 2008t // // 2. Internal Wires myLoopsInternal.Clear(); @@ -302,7 +336,7 @@ static aBB.MakeWire(aW); aBB.Add(aW, aEE); // - TopoDS_Iterator aItW (aW); + aItW.Initialize(aW); for (; aItW.More()&&bFlag; aItW.Next()) { const TopoDS_Edge& aE=TopoDS::Edge(aItW.Value()); // diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderFace.hxx b/src/GEOMAlgo/GEOMAlgo_BuilderFace.hxx index 758cc7072..08cefeb9d 100644 --- a/src/GEOMAlgo/GEOMAlgo_BuilderFace.hxx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderFace.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_BuilderFace_HeaderFile #define _GEOMAlgo_BuilderFace_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderFace.ixx b/src/GEOMAlgo/GEOMAlgo_BuilderFace.ixx index 66adde68b..c3630db7b 100644 --- a/src/GEOMAlgo/GEOMAlgo_BuilderFace.ixx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderFace.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderFace.jxx b/src/GEOMAlgo/GEOMAlgo_BuilderFace.jxx index 8e533eed8..97dee3032 100644 --- a/src/GEOMAlgo/GEOMAlgo_BuilderFace.jxx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderFace.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Face_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderShape.cdl b/src/GEOMAlgo/GEOMAlgo_BuilderShape.cdl index b699831c7..f1c1c22f1 100755 --- a/src/GEOMAlgo/GEOMAlgo_BuilderShape.cdl +++ b/src/GEOMAlgo/GEOMAlgo_BuilderShape.cdl @@ -1,28 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: GEOMAlgo_BuilderShape.cdl -- Created: -- Author: Peter KURNEV - - - +-- deferred class BuilderShape from GEOMAlgo inherits Algo from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderShape.cxx b/src/GEOMAlgo/GEOMAlgo_BuilderShape.cxx index 9f7cdd501..5d09fde72 100755 --- a/src/GEOMAlgo/GEOMAlgo_BuilderShape.cxx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderShape.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_BuilderShape.cxx // Created: // Author: Peter KURNEV - - +// #include //======================================================================= //function : diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderShape.hxx b/src/GEOMAlgo/GEOMAlgo_BuilderShape.hxx index 8639f22a8..bf760dd97 100644 --- a/src/GEOMAlgo/GEOMAlgo_BuilderShape.hxx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderShape.hxx @@ -1,24 +1,24 @@ -// File generated by CPPExt (Value) +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 1991 - 2000 by -// Matra Datavision SA. All rights reserved. -// -// Copyright (C) 2001 - 2004 by -// Open CASCADE SA. All rights reserved. -// -// This file is part of the Open CASCADE Technology software. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// This software may be distributed and/or modified under the terms and -// conditions of the Open CASCADE Public License as defined by Open CASCADE SA -// and appearing in the file LICENSE included in the packaging of this file. -// -// This software is distributed on an "AS IS" basis, without warranty of any -// kind, and Open CASCADE SA hereby disclaims all such warranties, -// including without limitation, any warranties of merchantability, fitness -// for a particular purpose or non-infringement. Please see the License for -// the specific terms and conditions governing rights and limitations under the -// License. - #ifndef _GEOMAlgo_BuilderShape_HeaderFile #define _GEOMAlgo_BuilderShape_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderShape.ixx b/src/GEOMAlgo/GEOMAlgo_BuilderShape.ixx index b8d037aa1..754725182 100644 --- a/src/GEOMAlgo/GEOMAlgo_BuilderShape.ixx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderShape.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderShape.jxx b/src/GEOMAlgo/GEOMAlgo_BuilderShape.jxx index 516c355b2..4470c4034 100644 --- a/src/GEOMAlgo/GEOMAlgo_BuilderShape.jxx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderShape.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderSolid.cdl b/src/GEOMAlgo/GEOMAlgo_BuilderSolid.cdl index 7cbebaf80..8773aee80 100755 --- a/src/GEOMAlgo/GEOMAlgo_BuilderSolid.cdl +++ b/src/GEOMAlgo/GEOMAlgo_BuilderSolid.cdl @@ -1,26 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: GEOMAlgo_BuilderSolid.cdl -- Created: -- Author: Peter KURNEV - +-- class BuilderSolid from GEOMAlgo inherits BuilderArea from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderSolid.cxx b/src/GEOMAlgo/GEOMAlgo_BuilderSolid.cxx index 1701f3e38..6ea231c3e 100755 --- a/src/GEOMAlgo/GEOMAlgo_BuilderSolid.cxx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderSolid.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_BuilderSolid.cxx // Created: // Author: Peter KURNEV - - +// #include #include @@ -93,7 +94,10 @@ static void MakeInternalShells(const TopTools_MapOfShape& , TopTools_ListOfShape& ); - +//modified by NIZNHY-PKV Tue Aug 5 15:06:50 2008f +static + Standard_Boolean IsClosedShell(const TopoDS_Shell& theShell); +//modified by NIZNHY-PKV Tue Aug 5 15:06:57 2008t //======================================================================= //function : @@ -228,6 +232,17 @@ static myShapesToAvoid.Add(aF2); } } + //DEB + else { + TopTools_ListIteratorOfListOfShape aItLF; + // + aItLF.Initialize (aLF); + for (; aItLF.More(); aItLF.Next()) { + const TopoDS_Shape& aFx=aItLF.Value(); + int a=0; + } + } + //DEB }// for (i=1; i<=aNbE; ++i) { // if (!bFound) { @@ -246,14 +261,16 @@ static // myLoops.Clear(); // - Standard_Integer aNbLF, aNbOff, aNbFP; + Standard_Integer aNbLF, aNbOff, aNbFP, aNbFA; TopAbs_Orientation anOr; TopoDS_Edge aEL; BRep_Builder aBB; NMTTools_CoupleOfShape aCSOff; - TopTools_MapOfOrientedShape AddedFacesMap; + TopTools_MapOfOrientedShape AddedFacesMap;//, aMFP; TopTools_IndexedDataMapOfShapeListOfShape aEFMap, aMEFP; - TopTools_ListIteratorOfListOfShape aItF; + TopTools_ListIteratorOfListOfShape aItF, aIt; + TopTools_MapIteratorOfMapOfOrientedShape aItM; + TopoDS_Iterator aItS; // //================================================= // @@ -366,17 +383,61 @@ static } } // for (; aEdgeExp.More(); aEdgeExp.Next()) { } //for (; aItAddedF.More(); aItAddedF.Next()) { - myLoops.Append(aShell); + //modified by NIZNHY-PKV Tue Aug 5 15:07:08 2008f + //myLoops.Append(aShell); + if (IsClosedShell(aShell)) { + myLoops.Append(aShell); + } + /* + else { + TopoDS_Iterator aItS; + aItS.Initialize(aShell); + for (; aItS.More(); aItS.Next()) { + const TopoDS_Shape& aFs=aItS.Value(); + aMFP.Add(aFs); + } + } + */ + //modified by NIZNHY-PKV Tue Aug 5 15:07:30 2008t } // for (; aItF.More(); aItF.Next()) { + //modified by NIZNHY-PKV Tue Aug 5 15:07:35 2008f + // + // Post Treatment + TopTools_MapOfOrientedShape aMP; + // + // a. collect all edges that are in loops + aIt.Initialize (myLoops); + for (; aIt.More(); aIt.Next()) { + const TopoDS_Shape& aS=aIt.Value(); + aItS.Initialize(aS); + for (; aItS.More(); aItS.Next()) { + const TopoDS_Shape& aF=aItS.Value(); + aMP.Add(aF); + } + } + // + // b. collect all edges that are to avoid + aItM.Initialize(myShapesToAvoid); + for (; aItM.More(); aItM.Next()) { + const TopoDS_Shape& aF=aItM.Key(); + aMP.Add(aF); + } + // + // c. add all edges that are not processed to myShapesToAvoid + aIt.Initialize (myShapes); + for (; aIt.More(); aIt.Next()) { + const TopoDS_Shape& aF=aIt.Value(); + if (!aMP.Contains(aF)) { + myShapesToAvoid.Add(aF); + } + } + //modified by NIZNHY-PKV Tue Aug 5 15:07:44 2008t //================================================= // // 2.Internal Shells // myLoopsInternal.Clear(); // - Standard_Integer aNbFA; - TopTools_MapIteratorOfMapOfOrientedShape aItM; - // aEFMap.Clear(); AddedFacesMap.Clear(); // @@ -730,7 +791,50 @@ Standard_Boolean IsGrowthShell(const TopoDS_Shape& theShell, } return bRet; } - +//modified by NIZNHY-PKV Tue Aug 5 15:07:50 2008f +//======================================================================= +//function : IsClosedShell +//purpose : +//======================================================================= +Standard_Boolean IsClosedShell(const TopoDS_Shell& theShell) +{ + Standard_Integer aNbE; + Standard_Boolean bRet; + TopoDS_Iterator aIt; + TopExp_Explorer aExp; + TopTools_MapOfShape aM; + // + bRet=Standard_False; + aIt.Initialize(theShell); + for(; aIt.More(); aIt.Next()) { + const TopoDS_Face& aF=TopoDS::Face(aIt.Value()); + aExp.Init(aF, TopAbs_EDGE); + for (; aExp.More(); aExp.Next()) { + const TopoDS_Edge& aE=TopoDS::Edge(aExp.Current()); + if (BRep_Tool::Degenerated(aE)) { + continue; + } + /* + if (BRep_Tool::IsClosed(aE, aF)) { + continue; + } + */ + if (aE.Orientation()==TopAbs_INTERNAL) { + continue; + } + if (!aM.Add(aE)) { + aM.Remove(aE); + } + } + } + // + aNbE=aM.Extent(); + if (!aNbE) { + bRet=!bRet; + } + return bRet; +} +//modified by NIZNHY-PKV Tue Aug 5 15:08:07 2008t //BRepTools::Write(aFF, "ff"); // // ErrorStatus : diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderSolid.hxx b/src/GEOMAlgo/GEOMAlgo_BuilderSolid.hxx index d317a5cdc..be21d28b2 100644 --- a/src/GEOMAlgo/GEOMAlgo_BuilderSolid.hxx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderSolid.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_BuilderSolid_HeaderFile #define _GEOMAlgo_BuilderSolid_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderSolid.ixx b/src/GEOMAlgo/GEOMAlgo_BuilderSolid.ixx index 1d54ca3ce..c4209997c 100644 --- a/src/GEOMAlgo/GEOMAlgo_BuilderSolid.ixx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderSolid.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderSolid.jxx b/src/GEOMAlgo/GEOMAlgo_BuilderSolid.jxx index db2175f6c..7660e31d6 100644 --- a/src/GEOMAlgo/GEOMAlgo_BuilderSolid.jxx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderSolid.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_BuilderSolid_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderTools.cdl b/src/GEOMAlgo/GEOMAlgo_BuilderTools.cdl index 949e81d5a..5a3c3e162 100755 --- a/src/GEOMAlgo/GEOMAlgo_BuilderTools.cdl +++ b/src/GEOMAlgo/GEOMAlgo_BuilderTools.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: GEOMAlgo_BuilderTools.cdl -- Created: -- Author: Peter KURNEV -- - - +-- class BuilderTools from GEOMAlgo ---Purpose: diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderTools.cxx b/src/GEOMAlgo/GEOMAlgo_BuilderTools.cxx index 0d537dff2..1ecab1312 100755 --- a/src/GEOMAlgo/GEOMAlgo_BuilderTools.cxx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderTools.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_BuilderTools.cxx // Created: // Author: Peter KURNEV // - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderTools.hxx b/src/GEOMAlgo/GEOMAlgo_BuilderTools.hxx index 43bd9486f..fcadbf4a8 100644 --- a/src/GEOMAlgo/GEOMAlgo_BuilderTools.hxx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderTools.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_BuilderTools_HeaderFile #define _GEOMAlgo_BuilderTools_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderTools.ixx b/src/GEOMAlgo/GEOMAlgo_BuilderTools.ixx index 352fdb068..daa0bae98 100644 --- a/src/GEOMAlgo/GEOMAlgo_BuilderTools.ixx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderTools.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_BuilderTools.jxx b/src/GEOMAlgo/GEOMAlgo_BuilderTools.jxx index fc2050189..5b843c4a3 100644 --- a/src/GEOMAlgo/GEOMAlgo_BuilderTools.jxx +++ b/src/GEOMAlgo/GEOMAlgo_BuilderTools.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_Builder_0.cxx b/src/GEOMAlgo/GEOMAlgo_Builder_0.cxx index 728c8404d..57fb373fd 100644 --- a/src/GEOMAlgo/GEOMAlgo_Builder_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_Builder_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_Builder_1.cxx b/src/GEOMAlgo/GEOMAlgo_Builder_1.cxx index 5ee7ddaf4..b84058616 100755 --- a/src/GEOMAlgo/GEOMAlgo_Builder_1.cxx +++ b/src/GEOMAlgo/GEOMAlgo_Builder_1.cxx @@ -1,26 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_Builder_1.cxx // Created: // Author: Peter KURNEV - +// #include // #include diff --git a/src/GEOMAlgo/GEOMAlgo_Builder_2.cxx b/src/GEOMAlgo/GEOMAlgo_Builder_2.cxx index 92e9e2cc8..45e7543b4 100755 --- a/src/GEOMAlgo/GEOMAlgo_Builder_2.cxx +++ b/src/GEOMAlgo/GEOMAlgo_Builder_2.cxx @@ -1,26 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_Builder_2.cxx // Created: // Author: Peter KURNEV - +// #include #include @@ -360,6 +362,26 @@ static aBF.SetFace(aFF); aBF.SetContext(aCtx); const TopTools_ListOfShape& aSE=aWES.StartElements(); + // + //DEB f + /* + { + TopoDS_Compound aCx; + BRep_Builder aBBx; + TopTools_ListIteratorOfListOfShape aItx; + // + aBBx.MakeCompound(aCx); + aBBx.Add(aCx, aFF); + aItx.Initialize(aSE); + for (; aItx.More(); aItx.Next()) { + TopoDS_Shape& aEx=aItx.Value(); + aBBx.Add(aCx, aEx); + } + int a=0; + } + */ + //DEB t + // aBF.SetShapes(aSE); // aBF.Perform(); diff --git a/src/GEOMAlgo/GEOMAlgo_Builder_3.cxx b/src/GEOMAlgo/GEOMAlgo_Builder_3.cxx index 649c60370..1a3b5b566 100755 --- a/src/GEOMAlgo/GEOMAlgo_Builder_3.cxx +++ b/src/GEOMAlgo/GEOMAlgo_Builder_3.cxx @@ -1,26 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_Builder_3.cxx // Created: // Author: Peter KURNEV - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_Builder_4.cxx b/src/GEOMAlgo/GEOMAlgo_Builder_4.cxx index 8465cebba..bc755e492 100755 --- a/src/GEOMAlgo/GEOMAlgo_Builder_4.cxx +++ b/src/GEOMAlgo/GEOMAlgo_Builder_4.cxx @@ -1,26 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_Builder_4.cxx // Created: // Author: Peter KURNEV - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_Clsf.cdl b/src/GEOMAlgo/GEOMAlgo_Clsf.cdl index d32329d18..75149cf28 100644 --- a/src/GEOMAlgo/GEOMAlgo_Clsf.cdl +++ b/src/GEOMAlgo/GEOMAlgo_Clsf.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_Clsf.cdl -- Created: Wed Nov 22 10:19:29 2006 -- Author: Peter KURNEV -- - - +-- deferred class Clsf from GEOMAlgo inherits HAlgo from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_Clsf.cxx b/src/GEOMAlgo/GEOMAlgo_Clsf.cxx index 91b1b2a07..01d273327 100644 --- a/src/GEOMAlgo/GEOMAlgo_Clsf.cxx +++ b/src/GEOMAlgo/GEOMAlgo_Clsf.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_Classifier.cxx // Created: Wed Nov 22 10:23:04 2006 // Author: Peter KURNEV // - - +// #include //======================================================================= diff --git a/src/GEOMAlgo/GEOMAlgo_Clsf.hxx b/src/GEOMAlgo/GEOMAlgo_Clsf.hxx index 3b2c43abb..70fbc60c9 100644 --- a/src/GEOMAlgo/GEOMAlgo_Clsf.hxx +++ b/src/GEOMAlgo/GEOMAlgo_Clsf.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_Clsf_HeaderFile #define _GEOMAlgo_Clsf_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_Clsf.ixx b/src/GEOMAlgo/GEOMAlgo_Clsf.ixx index bb7371ff2..ed35cae59 100644 --- a/src/GEOMAlgo/GEOMAlgo_Clsf.ixx +++ b/src/GEOMAlgo/GEOMAlgo_Clsf.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_Clsf.jxx b/src/GEOMAlgo/GEOMAlgo_Clsf.jxx index 775a63809..df2281b67 100644 --- a/src/GEOMAlgo/GEOMAlgo_Clsf.jxx +++ b/src/GEOMAlgo/GEOMAlgo_Clsf.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _gp_Pnt_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_ClsfBox.cdl b/src/GEOMAlgo/GEOMAlgo_ClsfBox.cdl index 21c385de7..deb9a6c86 100644 --- a/src/GEOMAlgo/GEOMAlgo_ClsfBox.cdl +++ b/src/GEOMAlgo/GEOMAlgo_ClsfBox.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: GEOMAlgo_ClsfBox.cdl -- Created: Wed Nov 22 10:19:29 2006 -- Author: Peter KURNEV -- - - +-- class ClsfBox from GEOMAlgo inherits Clsf from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_ClsfBox.cxx b/src/GEOMAlgo/GEOMAlgo_ClsfBox.cxx index 1abad5406..b74c54e3e 100644 --- a/src/GEOMAlgo/GEOMAlgo_ClsfBox.cxx +++ b/src/GEOMAlgo/GEOMAlgo_ClsfBox.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_ClsfSurf.cxx // Created: Wed Nov 22 10:41:47 2006 // Author: Peter KURNEV // - - +// #include #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_ClsfBox.hxx b/src/GEOMAlgo/GEOMAlgo_ClsfBox.hxx index 2a0dc75d4..03fd2b123 100644 --- a/src/GEOMAlgo/GEOMAlgo_ClsfBox.hxx +++ b/src/GEOMAlgo/GEOMAlgo_ClsfBox.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_ClsfBox_HeaderFile #define _GEOMAlgo_ClsfBox_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ClsfBox.ixx b/src/GEOMAlgo/GEOMAlgo_ClsfBox.ixx index 8406273be..5cc2da30c 100644 --- a/src/GEOMAlgo/GEOMAlgo_ClsfBox.ixx +++ b/src/GEOMAlgo/GEOMAlgo_ClsfBox.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ClsfBox.jxx b/src/GEOMAlgo/GEOMAlgo_ClsfBox.jxx index dfcc22957..90fc5e97a 100644 --- a/src/GEOMAlgo/GEOMAlgo_ClsfBox.jxx +++ b/src/GEOMAlgo/GEOMAlgo_ClsfBox.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_ClsfSolid.cdl b/src/GEOMAlgo/GEOMAlgo_ClsfSolid.cdl index ed6093c58..0f4df1564 100755 --- a/src/GEOMAlgo/GEOMAlgo_ClsfSolid.cdl +++ b/src/GEOMAlgo/GEOMAlgo_ClsfSolid.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: GEOMAlgo_ClsfSolid.cdl -- Created: Mon Jan 29 10:28:07 2007 -- Author: Peter KURNEV -- - - +-- class ClsfSolid from GEOMAlgo inherits Clsf from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_ClsfSolid.cxx b/src/GEOMAlgo/GEOMAlgo_ClsfSolid.cxx index 0e779c996..f05fbaf92 100755 --- a/src/GEOMAlgo/GEOMAlgo_ClsfSolid.cxx +++ b/src/GEOMAlgo/GEOMAlgo_ClsfSolid.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_ClsfSolid.cxx // Created: Mon Jan 29 10:35:46 2007 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_ClsfSolid.hxx b/src/GEOMAlgo/GEOMAlgo_ClsfSolid.hxx index 8feb5337e..5012fed2f 100644 --- a/src/GEOMAlgo/GEOMAlgo_ClsfSolid.hxx +++ b/src/GEOMAlgo/GEOMAlgo_ClsfSolid.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_ClsfSolid_HeaderFile #define _GEOMAlgo_ClsfSolid_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ClsfSolid.ixx b/src/GEOMAlgo/GEOMAlgo_ClsfSolid.ixx index c3a9f9b2d..b777f32a4 100644 --- a/src/GEOMAlgo/GEOMAlgo_ClsfSolid.ixx +++ b/src/GEOMAlgo/GEOMAlgo_ClsfSolid.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ClsfSolid.jxx b/src/GEOMAlgo/GEOMAlgo_ClsfSolid.jxx index 3d84d0210..0c1f5add0 100644 --- a/src/GEOMAlgo/GEOMAlgo_ClsfSolid.jxx +++ b/src/GEOMAlgo/GEOMAlgo_ClsfSolid.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_ClsfSurf.cdl b/src/GEOMAlgo/GEOMAlgo_ClsfSurf.cdl index 15c0b69d4..d2b191cd3 100644 --- a/src/GEOMAlgo/GEOMAlgo_ClsfSurf.cdl +++ b/src/GEOMAlgo/GEOMAlgo_ClsfSurf.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: GEOMAlgo_ClsfSurf.cdl -- Created: Wed Nov 22 10:19:29 2006 -- Author: Peter KURNEV -- - - +-- class ClsfSurf from GEOMAlgo inherits Clsf from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_ClsfSurf.cxx b/src/GEOMAlgo/GEOMAlgo_ClsfSurf.cxx index a7b05096f..2d32d4448 100644 --- a/src/GEOMAlgo/GEOMAlgo_ClsfSurf.cxx +++ b/src/GEOMAlgo/GEOMAlgo_ClsfSurf.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_ClsfSurf.cxx // Created: Wed Nov 22 10:41:47 2006 // Author: Peter KURNEV // - - +// #include #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_ClsfSurf.hxx b/src/GEOMAlgo/GEOMAlgo_ClsfSurf.hxx index f35629562..54925be60 100644 --- a/src/GEOMAlgo/GEOMAlgo_ClsfSurf.hxx +++ b/src/GEOMAlgo/GEOMAlgo_ClsfSurf.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_ClsfSurf_HeaderFile #define _GEOMAlgo_ClsfSurf_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ClsfSurf.ixx b/src/GEOMAlgo/GEOMAlgo_ClsfSurf.ixx index dadf131a0..2ffee719f 100644 --- a/src/GEOMAlgo/GEOMAlgo_ClsfSurf.ixx +++ b/src/GEOMAlgo/GEOMAlgo_ClsfSurf.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ClsfSurf.jxx b/src/GEOMAlgo/GEOMAlgo_ClsfSurf.jxx index 6d8048bd8..c0a70f3dc 100644 --- a/src/GEOMAlgo/GEOMAlgo_ClsfSurf.jxx +++ b/src/GEOMAlgo/GEOMAlgo_ClsfSurf.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Geom_Surface_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.cdl b/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.cdl index 9314a0888..54ff2d959 100644 --- a/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.cdl +++ b/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.cdl @@ -1,29 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_CoupleOfShapes.cdl +-- Created: Wed Dec 15 13:00:10 2004 +-- Author: Peter KURNEV -- --- File: GEOMAlgo_CoupleOfShapes.cdl --- Created: Wed Dec 15 13:00:10 2004 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2004 - - class CoupleOfShapes from GEOMAlgo ---Purpose: diff --git a/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.cxx b/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.cxx index cdc6bbbd7..1047c2ba5 100644 --- a/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.cxx +++ b/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_CoupleOfShapes.cxx // Created: Wed Dec 15 13:03:52 2004 // Author: Peter KURNEV // - - +// #include //======================================================================= //function : GEOMAlgo_CoupleOfShapes diff --git a/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.hxx b/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.hxx index 2505f8049..46a62f754 100644 --- a/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.hxx +++ b/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_CoupleOfShapes_HeaderFile #define _GEOMAlgo_CoupleOfShapes_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.ixx b/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.ixx index 7d793c838..4567f905f 100644 --- a/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.ixx +++ b/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.jxx b/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.jxx index 9caff71ab..cd50cfedb 100644 --- a/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.jxx +++ b/src/GEOMAlgo/GEOMAlgo_CoupleOfShapes.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyInteger.hxx b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyInteger.hxx index cd9006ab1..854f60c7e 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyInteger.hxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyInteger.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyInteger_HeaderFile #define _GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyInteger_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyInteger_0.cxx b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyInteger_0.cxx index fea43de70..9cbe4e5a0 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyInteger_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyInteger_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyShapeShape.hxx b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyShapeShape.hxx index 8c046bf60..19064241d 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyShapeShape.hxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyShapeShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyShapeShape_HeaderFile #define _GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyShapeShape_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyShapeShape_0.cxx b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyShapeShape_0.cxx index 36e1955f0..587e9edaa 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyShapeShape_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyShapeShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfRealListOfShape.hxx b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfRealListOfShape.hxx index 0864e681c..d2aaa68a5 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfRealListOfShape.hxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfRealListOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_DataMapIteratorOfDataMapOfRealListOfShape_HeaderFile #define _GEOMAlgo_DataMapIteratorOfDataMapOfRealListOfShape_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfRealListOfShape_0.cxx b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfRealListOfShape_0.cxx index 6ad2f1860..eae315c2c 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfRealListOfShape_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfRealListOfShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfShapeReal.hxx b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfShapeReal.hxx index bea5ce80f..15bb79e4d 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfShapeReal.hxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfShapeReal.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_DataMapIteratorOfDataMapOfShapeReal_HeaderFile #define _GEOMAlgo_DataMapIteratorOfDataMapOfShapeReal_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfShapeReal_0.cxx b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfShapeReal_0.cxx index 0e1748b67..60b2fd9d2 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfShapeReal_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfShapeReal_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet.hxx b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet.hxx index 67260a8a1..77720cdb5 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet.hxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet_HeaderFile #define _GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet_0.cxx b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet_0.cxx index 56f780149..cdd9b3ebc 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger.hxx b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger.hxx index eda806e2b..a16e26ba8 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger.hxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger_HeaderFile #define _GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger_0.cxx b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger_0.cxx index 6dd49b86c..c1457e733 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape.hxx b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape.hxx index 856164622..e88ed19e0 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape.hxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape_HeaderFile #define _GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape_0.cxx b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape_0.cxx index 424e74701..f4e15a426 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape.hxx b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape.hxx index 3d61106de..1ba3c8bc2 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape.hxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape_HeaderFile #define _GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape_0.cxx b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape_0.cxx index 39f3ac1dd..9bcbe1201 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfShapeReal.hxx b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfShapeReal.hxx index d2ac36be9..5b418a034 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfShapeReal.hxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfShapeReal.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_DataMapNodeOfDataMapOfShapeReal_HeaderFile #define _GEOMAlgo_DataMapNodeOfDataMapOfShapeReal_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfShapeReal_0.cxx b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfShapeReal_0.cxx index f44a0c520..729f0996b 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfShapeReal_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfShapeReal_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet.hxx b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet.hxx index fdcdfb4bc..b354f9719 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet.hxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet_HeaderFile #define _GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet_0.cxx b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet_0.cxx index 6d4e37236..b0e5fee23 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapOfPassKeyInteger.hxx b/src/GEOMAlgo/GEOMAlgo_DataMapOfPassKeyInteger.hxx index b847a7345..4a48fe108 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapOfPassKeyInteger.hxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapOfPassKeyInteger.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_DataMapOfPassKeyInteger_HeaderFile #define _GEOMAlgo_DataMapOfPassKeyInteger_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapOfPassKeyInteger_0.cxx b/src/GEOMAlgo/GEOMAlgo_DataMapOfPassKeyInteger_0.cxx index 0a831e442..2b3a535cd 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapOfPassKeyInteger_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapOfPassKeyInteger_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapOfPassKeyShapeShape.hxx b/src/GEOMAlgo/GEOMAlgo_DataMapOfPassKeyShapeShape.hxx index 4e209557f..28693baea 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapOfPassKeyShapeShape.hxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapOfPassKeyShapeShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_DataMapOfPassKeyShapeShape_HeaderFile #define _GEOMAlgo_DataMapOfPassKeyShapeShape_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapOfPassKeyShapeShape_0.cxx b/src/GEOMAlgo/GEOMAlgo_DataMapOfPassKeyShapeShape_0.cxx index 777551745..3ffd39769 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapOfPassKeyShapeShape_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapOfPassKeyShapeShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapOfRealListOfShape.hxx b/src/GEOMAlgo/GEOMAlgo_DataMapOfRealListOfShape.hxx index 601edc17c..108370ac1 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapOfRealListOfShape.hxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapOfRealListOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_DataMapOfRealListOfShape_HeaderFile #define _GEOMAlgo_DataMapOfRealListOfShape_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapOfRealListOfShape_0.cxx b/src/GEOMAlgo/GEOMAlgo_DataMapOfRealListOfShape_0.cxx index e1d5ca6e8..7edbd031f 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapOfRealListOfShape_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapOfRealListOfShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapOfShapeReal.hxx b/src/GEOMAlgo/GEOMAlgo_DataMapOfShapeReal.hxx index 94be38772..7e121ac24 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapOfShapeReal.hxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapOfShapeReal.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_DataMapOfShapeReal_HeaderFile #define _GEOMAlgo_DataMapOfShapeReal_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapOfShapeReal_0.cxx b/src/GEOMAlgo/GEOMAlgo_DataMapOfShapeReal_0.cxx index 06abae332..66ae1a35d 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapOfShapeReal_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapOfShapeReal_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapOfShapeShapeSet.hxx b/src/GEOMAlgo/GEOMAlgo_DataMapOfShapeShapeSet.hxx index f7947802b..8c372df0a 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapOfShapeShapeSet.hxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapOfShapeShapeSet.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_DataMapOfShapeShapeSet_HeaderFile #define _GEOMAlgo_DataMapOfShapeShapeSet_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_DataMapOfShapeShapeSet_0.cxx b/src/GEOMAlgo/GEOMAlgo_DataMapOfShapeShapeSet_0.cxx index 96d931bf2..c583d68a4 100644 --- a/src/GEOMAlgo/GEOMAlgo_DataMapOfShapeShapeSet_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_DataMapOfShapeShapeSet_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.cdl b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.cdl index 9f30dab59..44be83e18 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.cdl +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.cdl @@ -1,29 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_FinderShapeOn.cdl +-- Created: Tue Jan 11 14:35:52 2005 +-- Author: Peter KURNEV -- --- File: GEOMAlgo_FinderShapeOn.cdl --- Created: Tue Jan 11 14:35:52 2005 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2005 - - class FinderShapeOn from GEOMAlgo inherits ShapeAlgo from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.cxx b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.cxx index 237e81ef4..372edf653 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.cxx +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_FinderShapeOn.cxx // Created: Tue Jan 11 14:44:31 2005 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.hxx b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.hxx index 6053ad654..632ad722f 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.hxx +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_FinderShapeOn_HeaderFile #define _GEOMAlgo_FinderShapeOn_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.ixx b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.ixx index 514a8fe3b..2dfc0be17 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.ixx +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.jxx b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.jxx index 6b45d4c1f..f7161c607 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.jxx +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Geom_Surface_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.cdl b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.cdl index 6a0b72e5b..cb9be924f 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.cdl +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.cdl @@ -1,29 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_FinderShapeOn1.cdl +-- Created: Fri Mar 4 10:26:54 2005 +-- Author: Peter KURNEV -- --- File: GEOMAlgo_FinderShapeOn1.cdl --- Created: Fri Mar 4 10:26:54 2005 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2005 - - class FinderShapeOn1 from GEOMAlgo inherits ShapeAlgo from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.cxx b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.cxx index 6f9f6a0b4..24f5ed55e 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.cxx +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_FinderShapeOn1.cxx // Created: Fri Mar 4 10:31:06 2005 // Author: Peter KURNEV // - - +// #include #include @@ -545,7 +546,7 @@ void GEOMAlgo_FinderShapeOn1::InnerPoints(const TopoDS_Face& aF, aTRF=BRep_Tool::Triangulation(aF, aLoc); if (aTRF.IsNull()) { if (!GEOMAlgo_FinderShapeOn::BuildTriangulation(aF)) { - myErrorStatus=20; // no triangulation found + myWarningStatus=20; // no triangulation found return; } aTRF=BRep_Tool::Triangulation(aF, aLoc); diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.hxx b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.hxx index d07cda45c..f3860edb0 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.hxx +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_FinderShapeOn1_HeaderFile #define _GEOMAlgo_FinderShapeOn1_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.ixx b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.ixx index da80e4d18..9b9caa61c 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.ixx +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.jxx b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.jxx index db9c4b7f7..196f0e706 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.jxx +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn1.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Geom_Surface_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.cdl b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.cdl index c0a1b9253..72d79265d 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.cdl +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_FinderShapeOn1.cdl -- Created: Fri Mar 4 10:26:54 2005 -- Author: Peter KURNEV -- - - +-- class FinderShapeOn2 from GEOMAlgo inherits ShapeAlgo from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.cxx b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.cxx index ebc34e718..b7f70f544 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.cxx +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_FinderShapeOn1.cxx // Created: Fri Mar 4 10:31:06 2005 // Author: Peter KURNEV // - - +// #include #include @@ -605,7 +606,7 @@ aTRF=BRep_Tool::Triangulation(aF, aLoc); if (aTRF.IsNull()) { if (!GEOMAlgo_FinderShapeOn::BuildTriangulation(aF)) { - myErrorStatus=20; // no triangulation found + myWarningStatus=20; // no triangulation found return; } aTRF=BRep_Tool::Triangulation(aF, aLoc); diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.hxx b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.hxx index 1d467a51e..7eaa024a8 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.hxx +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_FinderShapeOn2_HeaderFile #define _GEOMAlgo_FinderShapeOn2_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.ixx b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.ixx index 9e17577cf..d9cef81ac 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.ixx +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.jxx b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.jxx index 62172c460..448209129 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.jxx +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOn2.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_Clsf_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOnQuad.cxx b/src/GEOMAlgo/GEOMAlgo_FinderShapeOnQuad.cxx index c6d98798b..3d32d628b 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOnQuad.cxx +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOnQuad.cxx @@ -1,4 +1,6 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -15,14 +17,12 @@ // 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 -// -// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // // File : GEOMAlgo_FinderShapeOnQuad.cxx // Created : Mon Oct 17 17:31:45 2005 // Author : Edward AGAPOV (eap) - +// #include "GEOMAlgo_FinderShapeOnQuad.hxx" #include "GEOMAlgo_SurfaceTools.hxx" diff --git a/src/GEOMAlgo/GEOMAlgo_FinderShapeOnQuad.hxx b/src/GEOMAlgo/GEOMAlgo_FinderShapeOnQuad.hxx index 6b15851b1..18fca9a53 100644 --- a/src/GEOMAlgo/GEOMAlgo_FinderShapeOnQuad.hxx +++ b/src/GEOMAlgo/GEOMAlgo_FinderShapeOnQuad.hxx @@ -1,4 +1,6 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -15,14 +17,12 @@ // 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 -// -// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // // File : GEOMAlgo_FinderShapeOnQuad.hxx // Created : Mon Oct 17 17:15:59 2005 // Author : Edward AGAPOV (eap) - +// #ifndef GEOMAlgo_FinderShapeOnQuad_HeaderFile #define GEOMAlgo_FinderShapeOnQuad_HeaderFile @@ -51,10 +51,10 @@ protected: private: - bool myConcaveQuad; + bool myConcaveQuad; std::vector myConcaveSide; std::vector myPoints; std::vector myPlanes; - gp_Vec myQuadNormal; + gp_Vec myQuadNormal; }; #endif diff --git a/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.cdl b/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.cdl index 97dd6f476..925d094c5 100644 --- a/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.cdl +++ b/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_GlueAnalyser.cdl -- Created: Wed Dec 15 11:03:03 2004 -- Author: Peter KURNEV -- - - +-- class GlueAnalyser from GEOMAlgo inherits Gluer from GEOMAlgo ---Purpose: diff --git a/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.cxx b/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.cxx index e38911f5b..8a7124c31 100644 --- a/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.cxx +++ b/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_GlueDetector.cxx // Created: Wed Dec 15 11:08:09 2004 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.hxx b/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.hxx index 8b815072f..45d174918 100644 --- a/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.hxx +++ b/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_GlueAnalyser_HeaderFile #define _GEOMAlgo_GlueAnalyser_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.ixx b/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.ixx index d7456f060..6a279b7ef 100644 --- a/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.ixx +++ b/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.jxx b/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.jxx index f89777323..bc6388ba6 100644 --- a/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.jxx +++ b/src/GEOMAlgo/GEOMAlgo_GlueAnalyser.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_ListOfCoupleOfShapes_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_Gluer.cdl b/src/GEOMAlgo/GEOMAlgo_Gluer.cdl index fe629e68b..76631ff57 100755 --- a/src/GEOMAlgo/GEOMAlgo_Gluer.cdl +++ b/src/GEOMAlgo/GEOMAlgo_Gluer.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_Gluer.cdl -- Created: Sat Dec 04 12:41:32 2004 -- Author: Peter KURNEV -- - - +-- class Gluer from GEOMAlgo inherits ShapeAlgo from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_Gluer.cxx b/src/GEOMAlgo/GEOMAlgo_Gluer.cxx index e2f2c9a69..a147c90b0 100755 --- a/src/GEOMAlgo/GEOMAlgo_Gluer.cxx +++ b/src/GEOMAlgo/GEOMAlgo_Gluer.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_Gluer.cxx // Created: Sat Dec 04 12:45:53 2004 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_Gluer.hxx b/src/GEOMAlgo/GEOMAlgo_Gluer.hxx index 5ca326149..980424de0 100644 --- a/src/GEOMAlgo/GEOMAlgo_Gluer.hxx +++ b/src/GEOMAlgo/GEOMAlgo_Gluer.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_Gluer_HeaderFile #define _GEOMAlgo_Gluer_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_Gluer.ixx b/src/GEOMAlgo/GEOMAlgo_Gluer.ixx index 8fe0fabdf..574d72d81 100644 --- a/src/GEOMAlgo/GEOMAlgo_Gluer.ixx +++ b/src/GEOMAlgo/GEOMAlgo_Gluer.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_Gluer.jxx b/src/GEOMAlgo/GEOMAlgo_Gluer.jxx index 254e050e8..86f3f36ab 100644 --- a/src/GEOMAlgo/GEOMAlgo_Gluer.jxx +++ b/src/GEOMAlgo/GEOMAlgo_Gluer.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopTools_ListOfShape_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_Gluer1.cdl b/src/GEOMAlgo/GEOMAlgo_Gluer1.cdl index d226781a7..de00fbc0b 100755 --- a/src/GEOMAlgo/GEOMAlgo_Gluer1.cdl +++ b/src/GEOMAlgo/GEOMAlgo_Gluer1.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: GEOMAlgo_Gluer1.cdl -- Created: Wed Jan 24 11:37:31 2007 -- Author: Peter KURNEV -- - - +-- class Gluer1 from GEOMAlgo inherits Gluer from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_Gluer1.cxx b/src/GEOMAlgo/GEOMAlgo_Gluer1.cxx index d1636fea5..fbcec0512 100755 --- a/src/GEOMAlgo/GEOMAlgo_Gluer1.cxx +++ b/src/GEOMAlgo/GEOMAlgo_Gluer1.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_Gluer1.cxx // Created: Wed Jan 24 11:52:27 2007 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_Gluer1.hxx b/src/GEOMAlgo/GEOMAlgo_Gluer1.hxx index 0939c3ef4..ed68594be 100644 --- a/src/GEOMAlgo/GEOMAlgo_Gluer1.hxx +++ b/src/GEOMAlgo/GEOMAlgo_Gluer1.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_Gluer1_HeaderFile #define _GEOMAlgo_Gluer1_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_Gluer1.ixx b/src/GEOMAlgo/GEOMAlgo_Gluer1.ixx index 9198a8dbb..8081a3d03 100644 --- a/src/GEOMAlgo/GEOMAlgo_Gluer1.ixx +++ b/src/GEOMAlgo/GEOMAlgo_Gluer1.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_Gluer1.jxx b/src/GEOMAlgo/GEOMAlgo_Gluer1.jxx index bb63320eb..307f27e7f 100644 --- a/src/GEOMAlgo/GEOMAlgo_Gluer1.jxx +++ b/src/GEOMAlgo/GEOMAlgo_Gluer1.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_ListOfCoupleOfShapes_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_HAlgo.cdl b/src/GEOMAlgo/GEOMAlgo_HAlgo.cdl index 0da634889..b9e77ab42 100644 --- a/src/GEOMAlgo/GEOMAlgo_HAlgo.cdl +++ b/src/GEOMAlgo/GEOMAlgo_HAlgo.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_Algo.cdl -- Created: Sat Dec 04 12:37:56 2004 -- Author: Peter KURNEV -- - - +-- deferred class HAlgo from GEOMAlgo inherits TShared from MMgt ---Purpose: diff --git a/src/GEOMAlgo/GEOMAlgo_HAlgo.cxx b/src/GEOMAlgo/GEOMAlgo_HAlgo.cxx index 807929c73..69dfa4ac6 100644 --- a/src/GEOMAlgo/GEOMAlgo_HAlgo.cxx +++ b/src/GEOMAlgo/GEOMAlgo_HAlgo.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_Algo.cxx // Created: Sat Dec 04 12:39:47 2004 // Author: Peter KURNEV // - - +// #include //======================================================================= diff --git a/src/GEOMAlgo/GEOMAlgo_HAlgo.hxx b/src/GEOMAlgo/GEOMAlgo_HAlgo.hxx index 0f25b53de..c7002b5da 100644 --- a/src/GEOMAlgo/GEOMAlgo_HAlgo.hxx +++ b/src/GEOMAlgo/GEOMAlgo_HAlgo.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_HAlgo_HeaderFile #define _GEOMAlgo_HAlgo_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_HAlgo.ixx b/src/GEOMAlgo/GEOMAlgo_HAlgo.ixx index 96a32edb8..810ccc9e2 100644 --- a/src/GEOMAlgo/GEOMAlgo_HAlgo.ixx +++ b/src/GEOMAlgo/GEOMAlgo_HAlgo.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_HAlgo.jxx b/src/GEOMAlgo/GEOMAlgo_HAlgo.jxx index e6d20409d..6be6b1b67 100644 --- a/src/GEOMAlgo/GEOMAlgo_HAlgo.jxx +++ b/src/GEOMAlgo/GEOMAlgo_HAlgo.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_HAlgo_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx index bb87ad0a1..965ff0a27 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_HeaderFile #define _GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_0.cxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_0.cxx index 42561ece4..300973d78 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape.hxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape.hxx index cd79d0b02..c4f5752fc 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape.hxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape_HeaderFile #define _GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape_0.cxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape_0.cxx index d29cf0f21..3703fb54a 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape.hxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape.hxx index ce1a5003a..71466b812 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape.hxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape_HeaderFile #define _GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape_0.cxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape_0.cxx index ddacd8762..fa5437fc8 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx index b88bbcd3d..d01bc565d 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_HeaderFile #define _GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_0.cxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_0.cxx index e2efeae43..06f91398d 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo.hxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo.hxx index 2c37056e2..e974bb3c6 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo.hxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo.hxx @@ -1,25 +1,24 @@ -// File generated by CPPExt (Transient) +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// Copyright (C) 1991 - 2000 by -// Matra Datavision SA. All rights reserved. -// -// Copyright (C) 2001 - 2004 by -// Open CASCADE SA. All rights reserved. -// -// This file is part of the Open CASCADE Technology software. +// 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 // -// This software may be distributed and/or modified under the terms and -// conditions of the Open CASCADE Public License as defined by Open CASCADE SA -// and appearing in the file LICENSE included in the packaging of this file. -// -// This software is distributed on an "AS IS" basis, without warranty of any -// kind, and Open CASCADE SA hereby disclaims all such warranties, -// including without limitation, any warranties of merchantability, fitness -// for a particular purpose or non-infringement. Please see the License for -// the specific terms and conditions governing rights and limitations under the -// License. - #ifndef _GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo_HeaderFile #define _GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo_0.cxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo_0.cxx index 6afae1194..799e63395 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo_0.cxx @@ -1,24 +1,24 @@ -// File generated by CPPExt (Transient) +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 1991 - 2000 by -// Matra Datavision SA. All rights reserved. -// -// Copyright (C) 2001 - 2004 by -// Open CASCADE SA. All rights reserved. -// -// This file is part of the Open CASCADE Technology software. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// This software may be distributed and/or modified under the terms and -// conditions of the Open CASCADE Public License as defined by Open CASCADE SA -// and appearing in the file LICENSE included in the packaging of this file. -// -// This software is distributed on an "AS IS" basis, without warranty of any -// kind, and Open CASCADE SA hereby disclaims all such warranties, -// including without limitation, any warranties of merchantability, fitness -// for a particular purpose or non-infringement. Please see the License for -// the specific terms and conditions governing rights and limitations under the -// License. - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState.hxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState.hxx index b7f8701e1..ab44e2fe2 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState.hxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState_HeaderFile #define _GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState_0.cxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState_0.cxx index fec6e37ca..eb0fcc7db 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfIntegerShape.hxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfIntegerShape.hxx index 513ac78bf..a89e0146a 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfIntegerShape.hxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfIntegerShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_IndexedDataMapOfIntegerShape_HeaderFile #define _GEOMAlgo_IndexedDataMapOfIntegerShape_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfIntegerShape_0.cxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfIntegerShape_0.cxx index 8ec0d0daa..232a19d13 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfIntegerShape_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfIntegerShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfPassKeyListOfShape.hxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfPassKeyListOfShape.hxx index 59bd0bab5..de91f020f 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfPassKeyListOfShape.hxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfPassKeyListOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_IndexedDataMapOfPassKeyListOfShape_HeaderFile #define _GEOMAlgo_IndexedDataMapOfPassKeyListOfShape_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfPassKeyListOfShape_0.cxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfPassKeyListOfShape_0.cxx index a493ac29c..ff1528304 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfPassKeyListOfShape_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfPassKeyListOfShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape.hxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape.hxx index b27ee9a81..7bf5b4b4e 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape.hxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape_HeaderFile #define _GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape_0.cxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape_0.cxx index ccd40ac28..89b23d6a1 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeBox.hxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeBox.hxx index 9b05242de..8660ceb8f 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeBox.hxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeBox.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_IndexedDataMapOfShapeBox_HeaderFile #define _GEOMAlgo_IndexedDataMapOfShapeBox_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeBox_0.cxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeBox_0.cxx index c4add9933..d8b986624 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeBox_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeBox_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeShapeInfo.hxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeShapeInfo.hxx index ef912354e..3051acc43 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeShapeInfo.hxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeShapeInfo.hxx @@ -1,24 +1,24 @@ -// File generated by CPPExt (Value) +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 1991 - 2000 by -// Matra Datavision SA. All rights reserved. -// -// Copyright (C) 2001 - 2004 by -// Open CASCADE SA. All rights reserved. -// -// This file is part of the Open CASCADE Technology software. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// This software may be distributed and/or modified under the terms and -// conditions of the Open CASCADE Public License as defined by Open CASCADE SA -// and appearing in the file LICENSE included in the packaging of this file. -// -// This software is distributed on an "AS IS" basis, without warranty of any -// kind, and Open CASCADE SA hereby disclaims all such warranties, -// including without limitation, any warranties of merchantability, fitness -// for a particular purpose or non-infringement. Please see the License for -// the specific terms and conditions governing rights and limitations under the -// License. - #ifndef _GEOMAlgo_IndexedDataMapOfShapeShapeInfo_HeaderFile #define _GEOMAlgo_IndexedDataMapOfShapeShapeInfo_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeShapeInfo_0.cxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeShapeInfo_0.cxx index 96604846e..61e566417 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeShapeInfo_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeShapeInfo_0.cxx @@ -1,24 +1,24 @@ -// File generated by CPPExt (Value) +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 1991 - 2000 by -// Matra Datavision SA. All rights reserved. -// -// Copyright (C) 2001 - 2004 by -// Open CASCADE SA. All rights reserved. -// -// This file is part of the Open CASCADE Technology software. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// This software may be distributed and/or modified under the terms and -// conditions of the Open CASCADE Public License as defined by Open CASCADE SA -// and appearing in the file LICENSE included in the packaging of this file. -// -// This software is distributed on an "AS IS" basis, without warranty of any -// kind, and Open CASCADE SA hereby disclaims all such warranties, -// including without limitation, any warranties of merchantability, fitness -// for a particular purpose or non-infringement. Please see the License for -// the specific terms and conditions governing rights and limitations under the -// License. - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeState.hxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeState.hxx index d7f988310..59fa7a7cb 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeState.hxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeState.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_IndexedDataMapOfShapeState_HeaderFile #define _GEOMAlgo_IndexedDataMapOfShapeState_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeState_0.cxx b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeState_0.cxx index 92ab03801..26f31af15 100644 --- a/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeState_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_IndexedDataMapOfShapeState_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_KindOfBounds.hxx b/src/GEOMAlgo/GEOMAlgo_KindOfBounds.hxx index ba0043ebb..6ae789d88 100644 --- a/src/GEOMAlgo/GEOMAlgo_KindOfBounds.hxx +++ b/src/GEOMAlgo/GEOMAlgo_KindOfBounds.hxx @@ -1,24 +1,24 @@ -// File generated by CPPExt (Enum) +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 1991 - 2000 by -// Matra Datavision SA. All rights reserved. -// -// Copyright (C) 2001 - 2004 by -// Open CASCADE SA. All rights reserved. -// -// This file is part of the Open CASCADE Technology software. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// This software may be distributed and/or modified under the terms and -// conditions of the Open CASCADE Public License as defined by Open CASCADE SA -// and appearing in the file LICENSE included in the packaging of this file. -// -// This software is distributed on an "AS IS" basis, without warranty of any -// kind, and Open CASCADE SA hereby disclaims all such warranties, -// including without limitation, any warranties of merchantability, fitness -// for a particular purpose or non-infringement. Please see the License for -// the specific terms and conditions governing rights and limitations under the -// License. - #ifndef _GEOMAlgo_KindOfBounds_HeaderFile #define _GEOMAlgo_KindOfBounds_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_KindOfClosed.hxx b/src/GEOMAlgo/GEOMAlgo_KindOfClosed.hxx index 9854aed36..d3ac58477 100644 --- a/src/GEOMAlgo/GEOMAlgo_KindOfClosed.hxx +++ b/src/GEOMAlgo/GEOMAlgo_KindOfClosed.hxx @@ -1,24 +1,24 @@ -// File generated by CPPExt (Enum) +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 1991 - 2000 by -// Matra Datavision SA. All rights reserved. -// -// Copyright (C) 2001 - 2004 by -// Open CASCADE SA. All rights reserved. -// -// This file is part of the Open CASCADE Technology software. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// This software may be distributed and/or modified under the terms and -// conditions of the Open CASCADE Public License as defined by Open CASCADE SA -// and appearing in the file LICENSE included in the packaging of this file. -// -// This software is distributed on an "AS IS" basis, without warranty of any -// kind, and Open CASCADE SA hereby disclaims all such warranties, -// including without limitation, any warranties of merchantability, fitness -// for a particular purpose or non-infringement. Please see the License for -// the specific terms and conditions governing rights and limitations under the -// License. - #ifndef _GEOMAlgo_KindOfClosed_HeaderFile #define _GEOMAlgo_KindOfClosed_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_KindOfName.hxx b/src/GEOMAlgo/GEOMAlgo_KindOfName.hxx index 74c83eb78..e4a8316bc 100644 --- a/src/GEOMAlgo/GEOMAlgo_KindOfName.hxx +++ b/src/GEOMAlgo/GEOMAlgo_KindOfName.hxx @@ -1,24 +1,24 @@ -// File generated by CPPExt (Enum) +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 1991 - 2000 by -// Matra Datavision SA. All rights reserved. -// -// Copyright (C) 2001 - 2004 by -// Open CASCADE SA. All rights reserved. -// -// This file is part of the Open CASCADE Technology software. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// This software may be distributed and/or modified under the terms and -// conditions of the Open CASCADE Public License as defined by Open CASCADE SA -// and appearing in the file LICENSE included in the packaging of this file. -// -// This software is distributed on an "AS IS" basis, without warranty of any -// kind, and Open CASCADE SA hereby disclaims all such warranties, -// including without limitation, any warranties of merchantability, fitness -// for a particular purpose or non-infringement. Please see the License for -// the specific terms and conditions governing rights and limitations under the -// License. - #ifndef _GEOMAlgo_KindOfName_HeaderFile #define _GEOMAlgo_KindOfName_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_KindOfShape.hxx b/src/GEOMAlgo/GEOMAlgo_KindOfShape.hxx index 1b5ead9f9..cf40274d4 100644 --- a/src/GEOMAlgo/GEOMAlgo_KindOfShape.hxx +++ b/src/GEOMAlgo/GEOMAlgo_KindOfShape.hxx @@ -1,24 +1,24 @@ -// File generated by CPPExt (Enum) +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 1991 - 2000 by -// Matra Datavision SA. All rights reserved. -// -// Copyright (C) 2001 - 2004 by -// Open CASCADE SA. All rights reserved. -// -// This file is part of the Open CASCADE Technology software. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// This software may be distributed and/or modified under the terms and -// conditions of the Open CASCADE Public License as defined by Open CASCADE SA -// and appearing in the file LICENSE included in the packaging of this file. -// -// This software is distributed on an "AS IS" basis, without warranty of any -// kind, and Open CASCADE SA hereby disclaims all such warranties, -// including without limitation, any warranties of merchantability, fitness -// for a particular purpose or non-infringement. Please see the License for -// the specific terms and conditions governing rights and limitations under the -// License. - #ifndef _GEOMAlgo_KindOfShape_HeaderFile #define _GEOMAlgo_KindOfShape_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ListIteratorOfListOfCoupleOfShapes.hxx b/src/GEOMAlgo/GEOMAlgo_ListIteratorOfListOfCoupleOfShapes.hxx index 738875828..9464a35f3 100644 --- a/src/GEOMAlgo/GEOMAlgo_ListIteratorOfListOfCoupleOfShapes.hxx +++ b/src/GEOMAlgo/GEOMAlgo_ListIteratorOfListOfCoupleOfShapes.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_ListIteratorOfListOfCoupleOfShapes_HeaderFile #define _GEOMAlgo_ListIteratorOfListOfCoupleOfShapes_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ListIteratorOfListOfCoupleOfShapes_0.cxx b/src/GEOMAlgo/GEOMAlgo_ListIteratorOfListOfCoupleOfShapes_0.cxx index ab548e32e..3ded9dfbb 100644 --- a/src/GEOMAlgo/GEOMAlgo_ListIteratorOfListOfCoupleOfShapes_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_ListIteratorOfListOfCoupleOfShapes_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoMoreObject_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ListIteratorOfListOfPnt.hxx b/src/GEOMAlgo/GEOMAlgo_ListIteratorOfListOfPnt.hxx index 43bd2f9d0..1c1b7ca2c 100644 --- a/src/GEOMAlgo/GEOMAlgo_ListIteratorOfListOfPnt.hxx +++ b/src/GEOMAlgo/GEOMAlgo_ListIteratorOfListOfPnt.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_ListIteratorOfListOfPnt_HeaderFile #define _GEOMAlgo_ListIteratorOfListOfPnt_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ListIteratorOfListOfPnt_0.cxx b/src/GEOMAlgo/GEOMAlgo_ListIteratorOfListOfPnt_0.cxx index 179cdce45..69d459655 100644 --- a/src/GEOMAlgo/GEOMAlgo_ListIteratorOfListOfPnt_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_ListIteratorOfListOfPnt_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoMoreObject_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ListNodeOfListOfCoupleOfShapes.hxx b/src/GEOMAlgo/GEOMAlgo_ListNodeOfListOfCoupleOfShapes.hxx index 8f8dd4b42..04439ff5e 100644 --- a/src/GEOMAlgo/GEOMAlgo_ListNodeOfListOfCoupleOfShapes.hxx +++ b/src/GEOMAlgo/GEOMAlgo_ListNodeOfListOfCoupleOfShapes.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_ListNodeOfListOfCoupleOfShapes_HeaderFile #define _GEOMAlgo_ListNodeOfListOfCoupleOfShapes_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ListNodeOfListOfCoupleOfShapes_0.cxx b/src/GEOMAlgo/GEOMAlgo_ListNodeOfListOfCoupleOfShapes_0.cxx index 2ce4cb14b..d8786cc70 100644 --- a/src/GEOMAlgo/GEOMAlgo_ListNodeOfListOfCoupleOfShapes_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_ListNodeOfListOfCoupleOfShapes_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ListNodeOfListOfPnt.hxx b/src/GEOMAlgo/GEOMAlgo_ListNodeOfListOfPnt.hxx index 5fb729abd..908c29be4 100644 --- a/src/GEOMAlgo/GEOMAlgo_ListNodeOfListOfPnt.hxx +++ b/src/GEOMAlgo/GEOMAlgo_ListNodeOfListOfPnt.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_ListNodeOfListOfPnt_HeaderFile #define _GEOMAlgo_ListNodeOfListOfPnt_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ListNodeOfListOfPnt_0.cxx b/src/GEOMAlgo/GEOMAlgo_ListNodeOfListOfPnt_0.cxx index 4514c4898..3587b7daa 100644 --- a/src/GEOMAlgo/GEOMAlgo_ListNodeOfListOfPnt_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_ListNodeOfListOfPnt_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ListOfCoupleOfShapes.hxx b/src/GEOMAlgo/GEOMAlgo_ListOfCoupleOfShapes.hxx index a535c2261..0a4be4cc8 100644 --- a/src/GEOMAlgo/GEOMAlgo_ListOfCoupleOfShapes.hxx +++ b/src/GEOMAlgo/GEOMAlgo_ListOfCoupleOfShapes.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_ListOfCoupleOfShapes_HeaderFile #define _GEOMAlgo_ListOfCoupleOfShapes_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ListOfCoupleOfShapes_0.cxx b/src/GEOMAlgo/GEOMAlgo_ListOfCoupleOfShapes_0.cxx index 838464db1..82d3fc5e7 100644 --- a/src/GEOMAlgo/GEOMAlgo_ListOfCoupleOfShapes_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_ListOfCoupleOfShapes_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ListOfPnt.hxx b/src/GEOMAlgo/GEOMAlgo_ListOfPnt.hxx index 94a8be445..5e425bce3 100644 --- a/src/GEOMAlgo/GEOMAlgo_ListOfPnt.hxx +++ b/src/GEOMAlgo/GEOMAlgo_ListOfPnt.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_ListOfPnt_HeaderFile #define _GEOMAlgo_ListOfPnt_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ListOfPnt_0.cxx b/src/GEOMAlgo/GEOMAlgo_ListOfPnt_0.cxx index 295d9ef59..3f3344f5e 100644 --- a/src/GEOMAlgo/GEOMAlgo_ListOfPnt_0.cxx +++ b/src/GEOMAlgo/GEOMAlgo_ListOfPnt_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_PWireEdgeSet.hxx b/src/GEOMAlgo/GEOMAlgo_PWireEdgeSet.hxx index 1340244b4..058553ba1 100644 --- a/src/GEOMAlgo/GEOMAlgo_PWireEdgeSet.hxx +++ b/src/GEOMAlgo/GEOMAlgo_PWireEdgeSet.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_PWireEdgeSet_HeaderFile #define _GEOMAlgo_PWireEdgeSet_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_PassKey.cdl b/src/GEOMAlgo/GEOMAlgo_PassKey.cdl index 8b84345a4..a4b217a34 100755 --- a/src/GEOMAlgo/GEOMAlgo_PassKey.cdl +++ b/src/GEOMAlgo/GEOMAlgo_PassKey.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: GEOMAlgo_PassKey.cdl -- Created: Mon Nov 20 12:16:13 2006 -- Author: Peter KURNEV -- - - +-- class PassKey from GEOMAlgo ---Purpose: diff --git a/src/GEOMAlgo/GEOMAlgo_PassKey.cxx b/src/GEOMAlgo/GEOMAlgo_PassKey.cxx index 342a116f2..254ca6e59 100755 --- a/src/GEOMAlgo/GEOMAlgo_PassKey.cxx +++ b/src/GEOMAlgo/GEOMAlgo_PassKey.cxx @@ -1,29 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_Algo.cxx // Created: Sat Dec 04 12:39:47 2004 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_PassKey.hxx b/src/GEOMAlgo/GEOMAlgo_PassKey.hxx index 930eb1b08..ce79e29d3 100644 --- a/src/GEOMAlgo/GEOMAlgo_PassKey.hxx +++ b/src/GEOMAlgo/GEOMAlgo_PassKey.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_PassKey_HeaderFile #define _GEOMAlgo_PassKey_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_PassKey.ixx b/src/GEOMAlgo/GEOMAlgo_PassKey.ixx index d935f86ec..4b098cfda 100644 --- a/src/GEOMAlgo/GEOMAlgo_PassKey.ixx +++ b/src/GEOMAlgo/GEOMAlgo_PassKey.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_PassKey.jxx b/src/GEOMAlgo/GEOMAlgo_PassKey.jxx index 6363a879e..4a975175e 100644 --- a/src/GEOMAlgo/GEOMAlgo_PassKey.jxx +++ b/src/GEOMAlgo/GEOMAlgo_PassKey.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TColStd_ListOfInteger_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.cdl b/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.cdl index a0ba022fc..3bcef2436 100755 --- a/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.cdl +++ b/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_PassKeyMapHasher.cdl -- Created: -- Author: Peter KURNEV -- - - +-- class PassKeyMapHasher from GEOMAlgo ---Purpose: diff --git a/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.cxx b/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.cxx index 654278f7e..8db75c81c 100755 --- a/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.cxx +++ b/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_PassKeyMapHasher.cxx // Created: // Author: Peter KURNEV // - - +// #include //======================================================================= diff --git a/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.hxx b/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.hxx index 2e0287ee6..82cf8ff39 100644 --- a/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.hxx +++ b/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_PassKeyMapHasher_HeaderFile #define _GEOMAlgo_PassKeyMapHasher_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.ixx b/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.ixx index 331c4d8e9..c21de3f68 100644 --- a/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.ixx +++ b/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.jxx b/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.jxx index f1bedbdd8..7b8138bd1 100644 --- a/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.jxx +++ b/src/GEOMAlgo/GEOMAlgo_PassKeyMapHasher.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_PassKey_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_PassKeyShape.cdl b/src/GEOMAlgo/GEOMAlgo_PassKeyShape.cdl index 5215a4de4..b7a60b138 100755 --- a/src/GEOMAlgo/GEOMAlgo_PassKeyShape.cdl +++ b/src/GEOMAlgo/GEOMAlgo_PassKeyShape.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_PassKeyShape.cdl -- Created: -- Author: Peter KURNEV -- - - +-- class PassKeyShape from GEOMAlgo ---Purpose: diff --git a/src/GEOMAlgo/GEOMAlgo_PassKeyShape.cxx b/src/GEOMAlgo/GEOMAlgo_PassKeyShape.cxx index df01791ad..41debf27e 100755 --- a/src/GEOMAlgo/GEOMAlgo_PassKeyShape.cxx +++ b/src/GEOMAlgo/GEOMAlgo_PassKeyShape.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_PassKeyShape.cxx // Created: // Author: Peter KURNEV // - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_PassKeyShape.hxx b/src/GEOMAlgo/GEOMAlgo_PassKeyShape.hxx index d54dd3c0b..529fa3ae1 100644 --- a/src/GEOMAlgo/GEOMAlgo_PassKeyShape.hxx +++ b/src/GEOMAlgo/GEOMAlgo_PassKeyShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_PassKeyShape_HeaderFile #define _GEOMAlgo_PassKeyShape_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_PassKeyShape.ixx b/src/GEOMAlgo/GEOMAlgo_PassKeyShape.ixx index 9934607fc..94c1a74fa 100644 --- a/src/GEOMAlgo/GEOMAlgo_PassKeyShape.ixx +++ b/src/GEOMAlgo/GEOMAlgo_PassKeyShape.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_PassKeyShape.jxx b/src/GEOMAlgo/GEOMAlgo_PassKeyShape.jxx index 06b1a9edb..37f591564 100644 --- a/src/GEOMAlgo/GEOMAlgo_PassKeyShape.jxx +++ b/src/GEOMAlgo/GEOMAlgo_PassKeyShape.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.cdl b/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.cdl index 393b7e78f..becd85f7b 100644 --- a/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.cdl +++ b/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_PassKeyMapHasher.cdl -- Created: -- Author: Peter KURNEV -- - - +-- class PassKeyShapeMapHasher from GEOMAlgo ---Purpose: diff --git a/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.cxx b/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.cxx index 70478af43..036cddde9 100644 --- a/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.cxx +++ b/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_PassKeyMapHasher.cxx // Created: // Author: Peter KURNEV // - - +// #include //======================================================================= diff --git a/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.hxx b/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.hxx index 53caf6a70..7dcdd4670 100644 --- a/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.hxx +++ b/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_PassKeyShapeMapHasher_HeaderFile #define _GEOMAlgo_PassKeyShapeMapHasher_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.ixx b/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.ixx index ae17ce089..3115037ae 100644 --- a/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.ixx +++ b/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.jxx b/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.jxx index 99130d0ba..df8089e56 100644 --- a/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.jxx +++ b/src/GEOMAlgo/GEOMAlgo_PassKeyShapeMapHasher.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_PassKeyShape_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.cdl b/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.cdl index 26b5c27a9..36ede4369 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.cdl +++ b/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.cdl @@ -1,29 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_ShapeAlgo.cdl +-- Created: Tue Dec 7 12:05:19 2004 +-- Author: Peter KURNEV -- --- File: GEOMAlgo_ShapeAlgo.cdl --- Created: Tue Dec 7 12:05:19 2004 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2004 - - deferred class ShapeAlgo from GEOMAlgo inherits Algo from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.cxx b/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.cxx index 1c25bb27f..9e93ba6ca 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.cxx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_ShapeAlgo.cxx // Created: Tue Dec 7 12:06:54 2004 // Author: Peter KURNEV // - - +// #include //======================================================================= diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.hxx b/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.hxx index 7647c9bf2..f8a385f34 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.hxx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_ShapeAlgo_HeaderFile #define _GEOMAlgo_ShapeAlgo_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.ixx b/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.ixx index f1a56c8ff..58a281fef 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.ixx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.jxx b/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.jxx index 94b9d0c30..b5fda6902 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.jxx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeAlgo.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeInfo.cdl b/src/GEOMAlgo/GEOMAlgo_ShapeInfo.cdl index 625638b67..9115582b4 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeInfo.cdl +++ b/src/GEOMAlgo/GEOMAlgo_ShapeInfo.cdl @@ -1,10 +1,28 @@ --- File: GEOMAlgo_ShapeInfo.cdl --- Created: Mon Apr 2 14:04:24 2007 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2007 - - +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +-- +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- 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: GEOMAlgo_ShapeInfo.cdl +-- Created: Mon Apr 2 14:04:24 2007 +-- Author: Peter KURNEV +-- class ShapeInfo from GEOMAlgo ---Purpose: diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeInfo.cxx b/src/GEOMAlgo/GEOMAlgo_ShapeInfo.cxx index c12606236..e34a909fd 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeInfo.cxx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeInfo.cxx @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #include diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeInfo.hxx b/src/GEOMAlgo/GEOMAlgo_ShapeInfo.hxx index 3cbe05b5a..20dded14d 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeInfo.hxx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeInfo.hxx @@ -1,24 +1,24 @@ -// File generated by CPPExt (Value) +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 1991 - 2000 by -// Matra Datavision SA. All rights reserved. -// -// Copyright (C) 2001 - 2004 by -// Open CASCADE SA. All rights reserved. -// -// This file is part of the Open CASCADE Technology software. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// This software may be distributed and/or modified under the terms and -// conditions of the Open CASCADE Public License as defined by Open CASCADE SA -// and appearing in the file LICENSE included in the packaging of this file. -// -// This software is distributed on an "AS IS" basis, without warranty of any -// kind, and Open CASCADE SA hereby disclaims all such warranties, -// including without limitation, any warranties of merchantability, fitness -// for a particular purpose or non-infringement. Please see the License for -// the specific terms and conditions governing rights and limitations under the -// License. - #ifndef _GEOMAlgo_ShapeInfo_HeaderFile #define _GEOMAlgo_ShapeInfo_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeInfo.ixx b/src/GEOMAlgo/GEOMAlgo_ShapeInfo.ixx index 4d87536e8..e7ae2d9ae 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeInfo.ixx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeInfo.ixx @@ -1,24 +1,24 @@ -// File generated by CPPExt (Value) +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 1991 - 2000 by -// Matra Datavision SA. All rights reserved. -// -// Copyright (C) 2001 - 2004 by -// Open CASCADE SA. All rights reserved. -// -// This file is part of the Open CASCADE Technology software. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// This software may be distributed and/or modified under the terms and -// conditions of the Open CASCADE Public License as defined by Open CASCADE SA -// and appearing in the file LICENSE included in the packaging of this file. -// -// This software is distributed on an "AS IS" basis, without warranty of any -// kind, and Open CASCADE SA hereby disclaims all such warranties, -// including without limitation, any warranties of merchantability, fitness -// for a particular purpose or non-infringement. Please see the License for -// the specific terms and conditions governing rights and limitations under the -// License. - #include diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeInfo.jxx b/src/GEOMAlgo/GEOMAlgo_ShapeInfo.jxx index 493c1c8a7..2ad3d50e7 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeInfo.jxx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeInfo.jxx @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #ifndef _gp_Pnt_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.cdl b/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.cdl index 599a77d85..df956fd5d 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.cdl +++ b/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.cdl @@ -1,10 +1,28 @@ --- File: GEOMAlgo_ShapeInfoFiller.cdl --- Created: Mon Apr 2 15:05:34 2007 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2007 - - +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +-- +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- 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: GEOMAlgo_ShapeInfoFiller.cdl +-- Created: Mon Apr 2 15:05:34 2007 +-- Author: Peter KURNEV +-- class ShapeInfoFiller from GEOMAlgo inherits Algo from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.cxx b/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.cxx index 299fb5b1a..4c5690521 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.cxx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.cxx @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.hxx b/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.hxx index 5a52f94df..a25c2e0a4 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.hxx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.hxx @@ -1,24 +1,24 @@ -// File generated by CPPExt (Value) +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 1991 - 2000 by -// Matra Datavision SA. All rights reserved. -// -// Copyright (C) 2001 - 2004 by -// Open CASCADE SA. All rights reserved. -// -// This file is part of the Open CASCADE Technology software. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// This software may be distributed and/or modified under the terms and -// conditions of the Open CASCADE Public License as defined by Open CASCADE SA -// and appearing in the file LICENSE included in the packaging of this file. -// -// This software is distributed on an "AS IS" basis, without warranty of any -// kind, and Open CASCADE SA hereby disclaims all such warranties, -// including without limitation, any warranties of merchantability, fitness -// for a particular purpose or non-infringement. Please see the License for -// the specific terms and conditions governing rights and limitations under the -// License. - #ifndef _GEOMAlgo_ShapeInfoFiller_HeaderFile #define _GEOMAlgo_ShapeInfoFiller_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.ixx b/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.ixx index a56973ba8..99038a856 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.ixx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.ixx @@ -1,24 +1,24 @@ -// File generated by CPPExt (Value) +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 1991 - 2000 by -// Matra Datavision SA. All rights reserved. -// -// Copyright (C) 2001 - 2004 by -// Open CASCADE SA. All rights reserved. -// -// This file is part of the Open CASCADE Technology software. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// This software may be distributed and/or modified under the terms and -// conditions of the Open CASCADE Public License as defined by Open CASCADE SA -// and appearing in the file LICENSE included in the packaging of this file. -// -// This software is distributed on an "AS IS" basis, without warranty of any -// kind, and Open CASCADE SA hereby disclaims all such warranties, -// including without limitation, any warranties of merchantability, fitness -// for a particular purpose or non-infringement. Please see the License for -// the specific terms and conditions governing rights and limitations under the -// License. - #include diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.jxx b/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.jxx index f3d77a35b..e7edb1ea6 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.jxx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller.jxx @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller_1.cxx b/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller_1.cxx index 891b9c772..152a4f3ad 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller_1.cxx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeInfoFiller_1.cxx @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeSet.cdl b/src/GEOMAlgo/GEOMAlgo_ShapeSet.cdl index 49ee9295c..7695a4a0c 100755 --- a/src/GEOMAlgo/GEOMAlgo_ShapeSet.cdl +++ b/src/GEOMAlgo/GEOMAlgo_ShapeSet.cdl @@ -1,26 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: GEOMAlgo_ShapeSet.cdl -- Created: -- Author: Peter KURNEV - +-- class ShapeSet from GEOMAlgo ---Purpose: Implementation some formal diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeSet.cxx b/src/GEOMAlgo/GEOMAlgo_ShapeSet.cxx index 800e3eb3e..e48672d62 100755 --- a/src/GEOMAlgo/GEOMAlgo_ShapeSet.cxx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeSet.cxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_ShapeSet.cxx // Created: // Author: Peter KURNEV - - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeSet.hxx b/src/GEOMAlgo/GEOMAlgo_ShapeSet.hxx index 98fb46415..72d00d5b1 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeSet.hxx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeSet.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_ShapeSet_HeaderFile #define _GEOMAlgo_ShapeSet_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeSet.ixx b/src/GEOMAlgo/GEOMAlgo_ShapeSet.ixx index 445af6936..984facf18 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeSet.ixx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeSet.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeSet.jxx b/src/GEOMAlgo/GEOMAlgo_ShapeSet.jxx index b76eeb906..927257846 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeSet.jxx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeSet.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopTools_ListOfShape_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeSolid.cdl b/src/GEOMAlgo/GEOMAlgo_ShapeSolid.cdl index b26e74093..84fb33d37 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeSolid.cdl +++ b/src/GEOMAlgo/GEOMAlgo_ShapeSolid.cdl @@ -1,29 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_ShapeSolid.cdl +-- Created: Thu Jan 13 12:44:07 2005 +-- Author: Peter KURNEV -- --- File: GEOMAlgo_ShapeSolid.cdl --- Created: Thu Jan 13 12:44:07 2005 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2005 - - deferred class ShapeSolid from GEOMAlgo inherits Algo from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeSolid.cxx b/src/GEOMAlgo/GEOMAlgo_ShapeSolid.cxx index e22ed2e08..1883de4a0 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeSolid.cxx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeSolid.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_ShapeSolid.cxx // Created: Thu Jan 13 12:54:48 2005 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeSolid.hxx b/src/GEOMAlgo/GEOMAlgo_ShapeSolid.hxx index fa7d823b7..a913d917c 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeSolid.hxx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeSolid.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_ShapeSolid_HeaderFile #define _GEOMAlgo_ShapeSolid_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeSolid.ixx b/src/GEOMAlgo/GEOMAlgo_ShapeSolid.ixx index 2ef2ca6ef..22f64b475 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeSolid.ixx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeSolid.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_ShapeSolid.jxx b/src/GEOMAlgo/GEOMAlgo_ShapeSolid.jxx index 665e84a1a..e21210348 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShapeSolid.jxx +++ b/src/GEOMAlgo/GEOMAlgo_ShapeSolid.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _BOPTools_DSFiller_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_ShellSolid.cdl b/src/GEOMAlgo/GEOMAlgo_ShellSolid.cdl index 15d47e504..43aac10ac 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShellSolid.cdl +++ b/src/GEOMAlgo/GEOMAlgo_ShellSolid.cdl @@ -1,29 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_ShellSolid.cdl +-- Created: Wed Jan 12 12:45:20 2005 +-- Author: Peter KURNEV -- --- File: GEOMAlgo_ShellSolid.cdl --- Created: Wed Jan 12 12:45:20 2005 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2005 - - class ShellSolid from GEOMAlgo inherits ShapeSolid from GEOMAlgo ---Purpose: diff --git a/src/GEOMAlgo/GEOMAlgo_ShellSolid.cxx b/src/GEOMAlgo/GEOMAlgo_ShellSolid.cxx index f502a8fc2..c4dca68d0 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShellSolid.cxx +++ b/src/GEOMAlgo/GEOMAlgo_ShellSolid.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_ShellSolid.cxx // Created: Wed Jan 12 12:49:45 2005 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_ShellSolid.hxx b/src/GEOMAlgo/GEOMAlgo_ShellSolid.hxx index a074965c8..b00ac92c7 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShellSolid.hxx +++ b/src/GEOMAlgo/GEOMAlgo_ShellSolid.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_ShellSolid_HeaderFile #define _GEOMAlgo_ShellSolid_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_ShellSolid.ixx b/src/GEOMAlgo/GEOMAlgo_ShellSolid.ixx index 2be64c012..d34ab8352 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShellSolid.ixx +++ b/src/GEOMAlgo/GEOMAlgo_ShellSolid.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_ShellSolid.jxx b/src/GEOMAlgo/GEOMAlgo_ShellSolid.jxx index c2e95da40..587bf30e3 100644 --- a/src/GEOMAlgo/GEOMAlgo_ShellSolid.jxx +++ b/src/GEOMAlgo/GEOMAlgo_ShellSolid.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_ShellSolid_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_SolidSolid.cdl b/src/GEOMAlgo/GEOMAlgo_SolidSolid.cdl index aef1c1ae6..2722c9a73 100644 --- a/src/GEOMAlgo/GEOMAlgo_SolidSolid.cdl +++ b/src/GEOMAlgo/GEOMAlgo_SolidSolid.cdl @@ -1,29 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_SolidSolid.cdl +-- Created: Wed Jan 26 12:05:14 2005 +-- Author: Peter KURNEV -- --- File: GEOMAlgo_SolidSolid.cdl --- Created: Wed Jan 26 12:05:14 2005 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2005 - - class SolidSolid from GEOMAlgo inherits ShellSolid from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_SolidSolid.cxx b/src/GEOMAlgo/GEOMAlgo_SolidSolid.cxx index 132f7825e..b64df9d55 100644 --- a/src/GEOMAlgo/GEOMAlgo_SolidSolid.cxx +++ b/src/GEOMAlgo/GEOMAlgo_SolidSolid.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_SolidSolid.cxx // Created: Wed Jan 26 12:06:26 2005 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_SolidSolid.hxx b/src/GEOMAlgo/GEOMAlgo_SolidSolid.hxx index 7dcef534f..8fafb7b71 100644 --- a/src/GEOMAlgo/GEOMAlgo_SolidSolid.hxx +++ b/src/GEOMAlgo/GEOMAlgo_SolidSolid.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_SolidSolid_HeaderFile #define _GEOMAlgo_SolidSolid_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_SolidSolid.ixx b/src/GEOMAlgo/GEOMAlgo_SolidSolid.ixx index fae2b9509..a17ae72e2 100644 --- a/src/GEOMAlgo/GEOMAlgo_SolidSolid.ixx +++ b/src/GEOMAlgo/GEOMAlgo_SolidSolid.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_SolidSolid.jxx b/src/GEOMAlgo/GEOMAlgo_SolidSolid.jxx index 1fa87e792..41feab2d2 100644 --- a/src/GEOMAlgo/GEOMAlgo_SolidSolid.jxx +++ b/src/GEOMAlgo/GEOMAlgo_SolidSolid.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_Splitter.cdl b/src/GEOMAlgo/GEOMAlgo_Splitter.cdl index 19991027d..449ab9ace 100755 --- a/src/GEOMAlgo/GEOMAlgo_Splitter.cdl +++ b/src/GEOMAlgo/GEOMAlgo_Splitter.cdl @@ -1,28 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- +-- File: GEOMAlgo_Splitter.cdl +-- Created: +-- Author: Peter KURNEV -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- --- File: GEOMAlgo_Splitter.cdl --- Created: --- Author: Peter KURNEV --- --- Copyright: - class Splitter from GEOMAlgo inherits Builder from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_Splitter.cxx b/src/GEOMAlgo/GEOMAlgo_Splitter.cxx index 431719ab1..34b284b55 100755 --- a/src/GEOMAlgo/GEOMAlgo_Splitter.cxx +++ b/src/GEOMAlgo/GEOMAlgo_Splitter.cxx @@ -1,27 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_Splitter.cxx // Created: // Author: Peter KURNEV // - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_Splitter.hxx b/src/GEOMAlgo/GEOMAlgo_Splitter.hxx index 7f3b69fb7..d5ceaaf8b 100644 --- a/src/GEOMAlgo/GEOMAlgo_Splitter.hxx +++ b/src/GEOMAlgo/GEOMAlgo_Splitter.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_Splitter_HeaderFile #define _GEOMAlgo_Splitter_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_Splitter.ixx b/src/GEOMAlgo/GEOMAlgo_Splitter.ixx index ed917a680..9837af7dc 100644 --- a/src/GEOMAlgo/GEOMAlgo_Splitter.ixx +++ b/src/GEOMAlgo/GEOMAlgo_Splitter.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_Splitter.jxx b/src/GEOMAlgo/GEOMAlgo_Splitter.jxx index a15ed2864..d12cbbdd8 100644 --- a/src/GEOMAlgo/GEOMAlgo_Splitter.jxx +++ b/src/GEOMAlgo/GEOMAlgo_Splitter.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_State.hxx b/src/GEOMAlgo/GEOMAlgo_State.hxx index 1824b18bb..05359bd44 100644 --- a/src/GEOMAlgo/GEOMAlgo_State.hxx +++ b/src/GEOMAlgo/GEOMAlgo_State.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_State_HeaderFile #define _GEOMAlgo_State_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_StateCollector.cdl b/src/GEOMAlgo/GEOMAlgo_StateCollector.cdl index 15e89c8d1..ae01b2c5f 100644 --- a/src/GEOMAlgo/GEOMAlgo_StateCollector.cdl +++ b/src/GEOMAlgo/GEOMAlgo_StateCollector.cdl @@ -1,29 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_StateCollector.cdl +-- Created: Thu Mar 10 09:39:25 2005 +-- Author: Peter KURNEV -- --- File: GEOMAlgo_StateCollector.cdl --- Created: Thu Mar 10 09:39:25 2005 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2005 - - class StateCollector from GEOMAlgo ---Purpose: diff --git a/src/GEOMAlgo/GEOMAlgo_StateCollector.cxx b/src/GEOMAlgo/GEOMAlgo_StateCollector.cxx index 90da89ff5..5f43ce8d3 100644 --- a/src/GEOMAlgo/GEOMAlgo_StateCollector.cxx +++ b/src/GEOMAlgo/GEOMAlgo_StateCollector.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_StateCollector.cxx // Created: Thu Mar 10 09:42:11 2005 // Author: Peter KURNEV // - - +// #include //======================================================================= diff --git a/src/GEOMAlgo/GEOMAlgo_StateCollector.hxx b/src/GEOMAlgo/GEOMAlgo_StateCollector.hxx index 0bd3e756f..51e6ac87f 100644 --- a/src/GEOMAlgo/GEOMAlgo_StateCollector.hxx +++ b/src/GEOMAlgo/GEOMAlgo_StateCollector.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_StateCollector_HeaderFile #define _GEOMAlgo_StateCollector_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_StateCollector.ixx b/src/GEOMAlgo/GEOMAlgo_StateCollector.ixx index 542bc6eb1..f777e3344 100644 --- a/src/GEOMAlgo/GEOMAlgo_StateCollector.ixx +++ b/src/GEOMAlgo/GEOMAlgo_StateCollector.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_StateCollector.jxx b/src/GEOMAlgo/GEOMAlgo_StateCollector.jxx index 1a00e015a..3bdd7984c 100644 --- a/src/GEOMAlgo/GEOMAlgo_StateCollector.jxx +++ b/src/GEOMAlgo/GEOMAlgo_StateCollector.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_StateCollector_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_SurfaceTools.cdl b/src/GEOMAlgo/GEOMAlgo_SurfaceTools.cdl index d0fa19382..9478097b4 100644 --- a/src/GEOMAlgo/GEOMAlgo_SurfaceTools.cdl +++ b/src/GEOMAlgo/GEOMAlgo_SurfaceTools.cdl @@ -1,29 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_SurfaceTools.cdl +-- Created: Thu Jan 27 11:03:49 2005 +-- Author: Peter KURNEV -- --- File: GEOMAlgo_SurfaceTools.cdl --- Created: Thu Jan 27 11:03:49 2005 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2005 - - class SurfaceTools from GEOMAlgo ---Purpose: diff --git a/src/GEOMAlgo/GEOMAlgo_SurfaceTools.cxx b/src/GEOMAlgo/GEOMAlgo_SurfaceTools.cxx index fd2171e63..9039a1f18 100644 --- a/src/GEOMAlgo/GEOMAlgo_SurfaceTools.cxx +++ b/src/GEOMAlgo/GEOMAlgo_SurfaceTools.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_SurfaceTools.cxx // Created: Thu Jan 27 11:05:16 2005 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_SurfaceTools.hxx b/src/GEOMAlgo/GEOMAlgo_SurfaceTools.hxx index 5703def26..fbcd3ebbe 100644 --- a/src/GEOMAlgo/GEOMAlgo_SurfaceTools.hxx +++ b/src/GEOMAlgo/GEOMAlgo_SurfaceTools.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_SurfaceTools_HeaderFile #define _GEOMAlgo_SurfaceTools_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_SurfaceTools.ixx b/src/GEOMAlgo/GEOMAlgo_SurfaceTools.ixx index 520fe97a3..53cb8c9ad 100644 --- a/src/GEOMAlgo/GEOMAlgo_SurfaceTools.ixx +++ b/src/GEOMAlgo/GEOMAlgo_SurfaceTools.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_SurfaceTools.jxx b/src/GEOMAlgo/GEOMAlgo_SurfaceTools.jxx index 2837fd50f..716140b2d 100644 --- a/src/GEOMAlgo/GEOMAlgo_SurfaceTools.jxx +++ b/src/GEOMAlgo/GEOMAlgo_SurfaceTools.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Geom_Surface_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_Tools.cdl b/src/GEOMAlgo/GEOMAlgo_Tools.cdl index ece735396..6624245a4 100644 --- a/src/GEOMAlgo/GEOMAlgo_Tools.cdl +++ b/src/GEOMAlgo/GEOMAlgo_Tools.cdl @@ -1,28 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_Tools.cdl -- Created: Mon Dec 6 11:26:02 2004 -- Author: Peter KURNEV --- - - +-- class Tools from GEOMAlgo ---Purpose: diff --git a/src/GEOMAlgo/GEOMAlgo_Tools.cxx b/src/GEOMAlgo/GEOMAlgo_Tools.cxx index 65250c364..bad8a3c15 100644 --- a/src/GEOMAlgo/GEOMAlgo_Tools.cxx +++ b/src/GEOMAlgo/GEOMAlgo_Tools.cxx @@ -1,27 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_Tools.cxx // Created: Mon Dec 6 11:35:29 2004 // Author: Peter KURNEV // - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_Tools.hxx b/src/GEOMAlgo/GEOMAlgo_Tools.hxx index 5ca79dd40..700972411 100644 --- a/src/GEOMAlgo/GEOMAlgo_Tools.hxx +++ b/src/GEOMAlgo/GEOMAlgo_Tools.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_Tools_HeaderFile #define _GEOMAlgo_Tools_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_Tools.ixx b/src/GEOMAlgo/GEOMAlgo_Tools.ixx index 1a731d46c..6e05fe29e 100644 --- a/src/GEOMAlgo/GEOMAlgo_Tools.ixx +++ b/src/GEOMAlgo/GEOMAlgo_Tools.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_Tools.jxx b/src/GEOMAlgo/GEOMAlgo_Tools.jxx index 0fa411d8a..5ff48c3d3 100644 --- a/src/GEOMAlgo/GEOMAlgo_Tools.jxx +++ b/src/GEOMAlgo/GEOMAlgo_Tools.jxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef _TopoDS_Shape_HeaderFile #include diff --git a/src/GEOMAlgo/GEOMAlgo_Tools3D.cdl b/src/GEOMAlgo/GEOMAlgo_Tools3D.cdl index e781a9439..0bbc2fc20 100755 --- a/src/GEOMAlgo/GEOMAlgo_Tools3D.cdl +++ b/src/GEOMAlgo/GEOMAlgo_Tools3D.cdl @@ -1,26 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: GEOMAlgo_Tools3D.cdl -- Created: -- Author: Peter KURNEV - +-- class Tools3D from GEOMAlgo ---Purpose: Auxiliary tools for Algorithms diff --git a/src/GEOMAlgo/GEOMAlgo_Tools3D.cxx b/src/GEOMAlgo/GEOMAlgo_Tools3D.cxx index 6d97c6f61..f990d80f6 100755 --- a/src/GEOMAlgo/GEOMAlgo_Tools3D.cxx +++ b/src/GEOMAlgo/GEOMAlgo_Tools3D.cxx @@ -1,26 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_Tools3D.cxx // Created: // Author: Peter KURNEV - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_Tools3D.hxx b/src/GEOMAlgo/GEOMAlgo_Tools3D.hxx index 934cfa4fa..42cd68861 100644 --- a/src/GEOMAlgo/GEOMAlgo_Tools3D.hxx +++ b/src/GEOMAlgo/GEOMAlgo_Tools3D.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_Tools3D_HeaderFile #define _GEOMAlgo_Tools3D_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_Tools3D.ixx b/src/GEOMAlgo/GEOMAlgo_Tools3D.ixx index 52bb882c4..76dbf81ed 100644 --- a/src/GEOMAlgo/GEOMAlgo_Tools3D.ixx +++ b/src/GEOMAlgo/GEOMAlgo_Tools3D.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_Tools3D.jxx b/src/GEOMAlgo/GEOMAlgo_Tools3D.jxx index 22ac3268f..328d5bb72 100644 --- a/src/GEOMAlgo/GEOMAlgo_Tools3D.jxx +++ b/src/GEOMAlgo/GEOMAlgo_Tools3D.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_VertexSolid.cdl b/src/GEOMAlgo/GEOMAlgo_VertexSolid.cdl index 9e83db59a..7c2cecf17 100644 --- a/src/GEOMAlgo/GEOMAlgo_VertexSolid.cdl +++ b/src/GEOMAlgo/GEOMAlgo_VertexSolid.cdl @@ -1,29 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: GEOMAlgo_VertexSolid.cdl +-- Created: Wed Jan 12 16:34:53 2005 +-- Author: Peter KURNEV -- --- File: GEOMAlgo_VertexSolid.cdl --- Created: Wed Jan 12 16:34:53 2005 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2005 - - class VertexSolid from GEOMAlgo inherits ShapeSolid from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_VertexSolid.cxx b/src/GEOMAlgo/GEOMAlgo_VertexSolid.cxx index 716bf0390..bff0fb1e2 100644 --- a/src/GEOMAlgo/GEOMAlgo_VertexSolid.cxx +++ b/src/GEOMAlgo/GEOMAlgo_VertexSolid.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_VertexSolid.cxx // Created: Wed Jan 12 16:36:40 2005 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_VertexSolid.hxx b/src/GEOMAlgo/GEOMAlgo_VertexSolid.hxx index 7c77c2fa9..9514f5239 100644 --- a/src/GEOMAlgo/GEOMAlgo_VertexSolid.hxx +++ b/src/GEOMAlgo/GEOMAlgo_VertexSolid.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_VertexSolid_HeaderFile #define _GEOMAlgo_VertexSolid_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_VertexSolid.ixx b/src/GEOMAlgo/GEOMAlgo_VertexSolid.ixx index 32c7746f2..0ce665520 100644 --- a/src/GEOMAlgo/GEOMAlgo_VertexSolid.ixx +++ b/src/GEOMAlgo/GEOMAlgo_VertexSolid.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_VertexSolid.jxx b/src/GEOMAlgo/GEOMAlgo_VertexSolid.jxx index 8925ddd34..9a546c6e5 100644 --- a/src/GEOMAlgo/GEOMAlgo_VertexSolid.jxx +++ b/src/GEOMAlgo/GEOMAlgo_VertexSolid.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_VertexSolid_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_WESCorrector.cdl b/src/GEOMAlgo/GEOMAlgo_WESCorrector.cdl index d9f19b9d7..7b433dd10 100755 --- a/src/GEOMAlgo/GEOMAlgo_WESCorrector.cdl +++ b/src/GEOMAlgo/GEOMAlgo_WESCorrector.cdl @@ -1,27 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: GEOMAlgo_WESCorrector.cdl -- Created: -- Author: Peter KURNEV - - +-- class WESCorrector from GEOMAlgo inherits Algo from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_WESCorrector.cxx b/src/GEOMAlgo/GEOMAlgo_WESCorrector.cxx index 1b5a04035..b56d73ced 100755 --- a/src/GEOMAlgo/GEOMAlgo_WESCorrector.cxx +++ b/src/GEOMAlgo/GEOMAlgo_WESCorrector.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTAlgo_WESCorrector.cxx // Created: // Author: Peter KURNEV // - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_WESCorrector.hxx b/src/GEOMAlgo/GEOMAlgo_WESCorrector.hxx index 42e53af59..4fef49e1a 100644 --- a/src/GEOMAlgo/GEOMAlgo_WESCorrector.hxx +++ b/src/GEOMAlgo/GEOMAlgo_WESCorrector.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_WESCorrector_HeaderFile #define _GEOMAlgo_WESCorrector_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_WESCorrector.ixx b/src/GEOMAlgo/GEOMAlgo_WESCorrector.ixx index a2b071b1f..3e166ac8b 100644 --- a/src/GEOMAlgo/GEOMAlgo_WESCorrector.ixx +++ b/src/GEOMAlgo/GEOMAlgo_WESCorrector.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_WESCorrector.jxx b/src/GEOMAlgo/GEOMAlgo_WESCorrector.jxx index 236296f94..0b46e1d00 100644 --- a/src/GEOMAlgo/GEOMAlgo_WESCorrector.jxx +++ b/src/GEOMAlgo/GEOMAlgo_WESCorrector.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_WireEdgeSet_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.cdl b/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.cdl index 1fe60ad75..89153b277 100755 --- a/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.cdl +++ b/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: GEOMAlgo_WireEdgeSet.cdl -- Created: -- Author: Peter KURNEV -- - - +-- class WireEdgeSet from GEOMAlgo ---Purpose: diff --git a/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.cxx b/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.cxx index bcae26b8f..8e5936281 100755 --- a/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.cxx +++ b/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.cxx @@ -1,27 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_WireEdgeSet.cxx // Created: // Author: Peter KURNEV // - +// #include //======================================================================= diff --git a/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.hxx b/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.hxx index 0a0416438..3025b44f5 100644 --- a/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.hxx +++ b/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_WireEdgeSet_HeaderFile #define _GEOMAlgo_WireEdgeSet_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.ixx b/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.ixx index 70dbac598..68e641785 100644 --- a/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.ixx +++ b/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.jxx b/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.jxx index 68885c47e..1c8f96a17 100644 --- a/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.jxx +++ b/src/GEOMAlgo/GEOMAlgo_WireEdgeSet.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Face_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_WireSolid.cdl b/src/GEOMAlgo/GEOMAlgo_WireSolid.cdl index 1fa98cd39..3079bb44a 100644 --- a/src/GEOMAlgo/GEOMAlgo_WireSolid.cdl +++ b/src/GEOMAlgo/GEOMAlgo_WireSolid.cdl @@ -1,28 +1,27 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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. -- --- File: GEOMAlgo_WireSolid.cdl --- Created: Wed Jan 12 10:17:00 2005 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2005 - +-- 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: GEOMAlgo_WireSolid.cdl +-- Created: Wed Jan 12 10:17:00 2005 +-- Author: Peter KURNEV class WireSolid from GEOMAlgo inherits ShapeSolid from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_WireSolid.cxx b/src/GEOMAlgo/GEOMAlgo_WireSolid.cxx index 90b7985c2..62c3f4e20 100644 --- a/src/GEOMAlgo/GEOMAlgo_WireSolid.cxx +++ b/src/GEOMAlgo/GEOMAlgo_WireSolid.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_WireSolid.cxx // Created: Wed Jan 12 10:19:31 2005 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/GEOMAlgo/GEOMAlgo_WireSolid.hxx b/src/GEOMAlgo/GEOMAlgo_WireSolid.hxx index 867cc561e..58af52ede 100644 --- a/src/GEOMAlgo/GEOMAlgo_WireSolid.hxx +++ b/src/GEOMAlgo/GEOMAlgo_WireSolid.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_WireSolid_HeaderFile #define _GEOMAlgo_WireSolid_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_WireSolid.ixx b/src/GEOMAlgo/GEOMAlgo_WireSolid.ixx index d4943559c..32aa1fbfd 100644 --- a/src/GEOMAlgo/GEOMAlgo_WireSolid.ixx +++ b/src/GEOMAlgo/GEOMAlgo_WireSolid.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_WireSolid.jxx b/src/GEOMAlgo/GEOMAlgo_WireSolid.jxx index 4409553d2..cba4ece22 100644 --- a/src/GEOMAlgo/GEOMAlgo_WireSolid.jxx +++ b/src/GEOMAlgo/GEOMAlgo_WireSolid.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_WireSolid_HeaderFile #include #endif diff --git a/src/GEOMAlgo/GEOMAlgo_WireSplitter.cdl b/src/GEOMAlgo/GEOMAlgo_WireSplitter.cdl index ed3669b25..a5da76898 100755 --- a/src/GEOMAlgo/GEOMAlgo_WireSplitter.cdl +++ b/src/GEOMAlgo/GEOMAlgo_WireSplitter.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: GEOMAlgo_WireSplitter.cdl -- Created: -- Author: Peter KURNEV -- - - +-- class WireSplitter from GEOMAlgo inherits Algo from GEOMAlgo diff --git a/src/GEOMAlgo/GEOMAlgo_WireSplitter.cxx b/src/GEOMAlgo/GEOMAlgo_WireSplitter.cxx index e4671d3a2..ddfe74f80 100755 --- a/src/GEOMAlgo/GEOMAlgo_WireSplitter.cxx +++ b/src/GEOMAlgo/GEOMAlgo_WireSplitter.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: GEOMAlgo_WireSplitter.cxx // Created: // Author: Peter KURNEV // - - +// #include #include @@ -484,10 +485,10 @@ static gp_Pnt2d aPb=Coord2d(aVb, aEOuta, myFace); - const BOP_ListOfEdgeInfo& aLEInfoVb=mySmartMap.FindFromKey(aVb); + //const BOP_ListOfEdgeInfo& aLEInfoVb=mySmartMap.FindFromKey(aVb); // aTol=2.*Tolerance2D(aVb, aGAS); - aTol2=aTol*aTol; + aTol2=10.*aTol*aTol; // aNb=aLS.Length(); if (aNb>0) { @@ -549,7 +550,7 @@ static } // aTol2D=2.*Tolerance2D(aVb, aGAS); - aTol2D2=aTol2D*aTol2D; + aTol2D2=100.*aTol2D*aTol2D; // // anAngleIn in Vb from edge aEOuta const BOP_ListOfEdgeInfo& aLEInfo=mySmartMap.FindFromKey(aVb); @@ -664,9 +665,7 @@ static // if (aType==GeomAbs_BSplineSurface|| aType==GeomAbs_Sphere|| - //modified by NIZNHY-PKV Wed Nov 29 10:18:50 2006f GeomAbs_SurfaceOfRevolution) { - //modified by NIZNHY-PKV Wed Nov 29 10:18:55 2006t if (aTol2D < aTolV3D) { aTol2D=aTolV3D; } @@ -790,24 +789,29 @@ static const GeomAdaptor_Surface& aGAS, const Standard_Boolean aFlag) { - Standard_Real aFirst, aLast, aToler, dt, aTV, aTV1, anAngle; - + Standard_Real aFirst, aLast, aToler, dt, aTV, aTV1, anAngle, aTX; + gp_Pnt2d aPV, aPV1; + gp_Vec2d aV2D; Handle(Geom2d_Curve) aC2D; - + // + aTV=BRep_Tool::Parameter (aV, anEdge, myFace); + if (Precision::IsInfinite(aTV)) { + return 0.; + } + // BOPTools_Tools2D::CurveOnSurface (anEdge, myFace, aC2D, aFirst, aLast, aToler, Standard_True); - - aTV=BRep_Tool::Parameter (aV, anEdge, myFace); - if (Precision::IsInfinite(aTV)) - return 0.; - //dt=1.e-7; - dt=Tolerance2D(aV, aGAS); - - if(dt > (aLast - aFirst) * 0.25) { + //modified by NIZNHY-PKV Wed Sep 10 14:06:04 2008f + //dt=Tolerance2D(aV, aGAS); + dt=2.*Tolerance2D(aV, aGAS); + //modified by NIZNHY-PKV Wed Sep 10 14:06:07 2008t + // + aTX=0.25*(aLast - aFirst); + if(dt > aTX) { // to save direction of the curve as much as it possible // in the case of big tolerances - dt = (aLast - aFirst) * 0.25; + dt = aTX; } // if (fabs (aTV-aFirst) < fabs(aTV - aLast)) { @@ -816,27 +820,22 @@ static else { aTV1=aTV - dt; } - - gp_Pnt2d aPV, aPV1; + // aC2D->D0 (aTV, aPV); aC2D->D0 (aTV1, aPV1); - - gp_Vec2d aV2D; // if (aFlag) {//IN gp_Vec2d aV2DIn(aPV1, aPV); - // aV2D=aV2DIn; } - else { gp_Vec2d aV2DOut(aPV, aPV1); aV2D=aV2DOut; } - + // gp_Dir2d aDir2D(aV2D); anAngle=Angle(aDir2D); - + // return anAngle; } //======================================================================= diff --git a/src/GEOMAlgo/GEOMAlgo_WireSplitter.hxx b/src/GEOMAlgo/GEOMAlgo_WireSplitter.hxx index f2bb54361..24c2da7bc 100644 --- a/src/GEOMAlgo/GEOMAlgo_WireSplitter.hxx +++ b/src/GEOMAlgo/GEOMAlgo_WireSplitter.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _GEOMAlgo_WireSplitter_HeaderFile #define _GEOMAlgo_WireSplitter_HeaderFile diff --git a/src/GEOMAlgo/GEOMAlgo_WireSplitter.ixx b/src/GEOMAlgo/GEOMAlgo_WireSplitter.ixx index fa8f559f8..668dcb466 100644 --- a/src/GEOMAlgo/GEOMAlgo_WireSplitter.ixx +++ b/src/GEOMAlgo/GEOMAlgo_WireSplitter.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/GEOMAlgo/GEOMAlgo_WireSplitter.jxx b/src/GEOMAlgo/GEOMAlgo_WireSplitter.jxx index 235db1835..415548656 100644 --- a/src/GEOMAlgo/GEOMAlgo_WireSplitter.jxx +++ b/src/GEOMAlgo/GEOMAlgo_WireSplitter.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Face_HeaderFile #include #endif diff --git a/src/GEOMAlgo/Handle_BlockFix_BlockFixAPI.hxx b/src/GEOMAlgo/Handle_BlockFix_BlockFixAPI.hxx index 12d404dce..9a67a925a 100644 --- a/src/GEOMAlgo/Handle_BlockFix_BlockFixAPI.hxx +++ b/src/GEOMAlgo/Handle_BlockFix_BlockFixAPI.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_BlockFix_BlockFixAPI_HeaderFile #define _Handle_BlockFix_BlockFixAPI_HeaderFile diff --git a/src/GEOMAlgo/Handle_BlockFix_PeriodicSurfaceModifier.hxx b/src/GEOMAlgo/Handle_BlockFix_PeriodicSurfaceModifier.hxx index f0fc8be95..2b0556bab 100644 --- a/src/GEOMAlgo/Handle_BlockFix_PeriodicSurfaceModifier.hxx +++ b/src/GEOMAlgo/Handle_BlockFix_PeriodicSurfaceModifier.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_BlockFix_PeriodicSurfaceModifier_HeaderFile #define _Handle_BlockFix_PeriodicSurfaceModifier_HeaderFile diff --git a/src/GEOMAlgo/Handle_BlockFix_SphereSpaceModifier.hxx b/src/GEOMAlgo/Handle_BlockFix_SphereSpaceModifier.hxx index 8a84637b7..784bc139f 100644 --- a/src/GEOMAlgo/Handle_BlockFix_SphereSpaceModifier.hxx +++ b/src/GEOMAlgo/Handle_BlockFix_SphereSpaceModifier.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_BlockFix_SphereSpaceModifier_HeaderFile #define _Handle_BlockFix_SphereSpaceModifier_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_Clsf.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_Clsf.hxx index 8b9bf2d35..7db50df1d 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_Clsf.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_Clsf.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_Clsf_HeaderFile #define _Handle_GEOMAlgo_Clsf_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_ClsfBox.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_ClsfBox.hxx index b397bddb8..82c8df8b5 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_ClsfBox.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_ClsfBox.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_ClsfBox_HeaderFile #define _Handle_GEOMAlgo_ClsfBox_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_ClsfSolid.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_ClsfSolid.hxx index 8098ce527..ae126bd84 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_ClsfSolid.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_ClsfSolid.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_ClsfSolid_HeaderFile #define _Handle_GEOMAlgo_ClsfSolid_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_ClsfSurf.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_ClsfSurf.hxx index ca42ed917..0dc562e39 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_ClsfSurf.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_ClsfSurf.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_ClsfSurf_HeaderFile #define _Handle_GEOMAlgo_ClsfSurf_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger.hxx index 738d8abac..802db426b 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger_HeaderFile #define _Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape.hxx index 8360ec290..5bce8fb7b 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape_HeaderFile #define _Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape.hxx index b8439ed91..7d6201498 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape_HeaderFile #define _Handle_GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeReal.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeReal.hxx index f6956a7c1..3d04a64dd 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeReal.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeReal.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeReal_HeaderFile #define _Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeReal_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet.hxx index 3a26aeace..4d8ebab5d 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet_HeaderFile #define _Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_HAlgo.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_HAlgo.hxx index 861c3e3ea..b267e794e 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_HAlgo.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_HAlgo.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_HAlgo_HeaderFile #define _Handle_GEOMAlgo_HAlgo_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx index d1003aab3..90167a8ef 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_HeaderFile #define _Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape.hxx index 6a5b8a74c..02eff4be3 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape_HeaderFile #define _Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape.hxx index 019555891..e23bce049 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape_HeaderFile #define _Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx index 1c53e213a..9576d62eb 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_HeaderFile #define _Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo.hxx index ef425b4c2..f60329b5d 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo.hxx @@ -1,24 +1,24 @@ -// File generated by CPPExt (Transient) +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 1991 - 2000 by -// Matra Datavision SA. All rights reserved. -// -// Copyright (C) 2001 - 2004 by -// Open CASCADE SA. All rights reserved. -// -// This file is part of the Open CASCADE Technology software. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// This software may be distributed and/or modified under the terms and -// conditions of the Open CASCADE Public License as defined by Open CASCADE SA -// and appearing in the file LICENSE included in the packaging of this file. -// -// This software is distributed on an "AS IS" basis, without warranty of any -// kind, and Open CASCADE SA hereby disclaims all such warranties, -// including without limitation, any warranties of merchantability, fitness -// for a particular purpose or non-infringement. Please see the License for -// the specific terms and conditions governing rights and limitations under the -// License. - #ifndef _Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo_HeaderFile #define _Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState.hxx index f218abeae..fb305154f 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState_HeaderFile #define _Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_ListNodeOfListOfCoupleOfShapes.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_ListNodeOfListOfCoupleOfShapes.hxx index 6be59702f..974b6fe64 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_ListNodeOfListOfCoupleOfShapes.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_ListNodeOfListOfCoupleOfShapes.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_ListNodeOfListOfCoupleOfShapes_HeaderFile #define _Handle_GEOMAlgo_ListNodeOfListOfCoupleOfShapes_HeaderFile diff --git a/src/GEOMAlgo/Handle_GEOMAlgo_ListNodeOfListOfPnt.hxx b/src/GEOMAlgo/Handle_GEOMAlgo_ListNodeOfListOfPnt.hxx index de9397fc9..fc587d37b 100644 --- a/src/GEOMAlgo/Handle_GEOMAlgo_ListNodeOfListOfPnt.hxx +++ b/src/GEOMAlgo/Handle_GEOMAlgo_ListNodeOfListOfPnt.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_GEOMAlgo_ListNodeOfListOfPnt_HeaderFile #define _Handle_GEOMAlgo_ListNodeOfListOfPnt_HeaderFile diff --git a/src/GEOMAlgo/Makefile.am b/src/GEOMAlgo/Makefile.am index b1a0f9609..4f0ddc371 100644 --- a/src/GEOMAlgo/Makefile.am +++ b/src/GEOMAlgo/Makefile.am @@ -1,248 +1,391 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM GEOMAlgo : tools for Glue Faces algorithm -# -# Copyright (C) 2004 CEA -# -# 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 : Julia DOROVSKIKH # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header$ - - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # Libraries targets -lib_LTLIBRARIES = libGEOMAlgo.la +lib_LTLIBRARIES = libGEOMAlgo.la -dist_libGEOMAlgo_la_SOURCES = \ - BlockFix.cxx \ - BlockFix_BlockFixAPI.cxx \ - BlockFix_CheckTool.cxx \ - BlockFix_PeriodicSurfaceModifier.cxx \ - BlockFix_SphereSpaceModifier.cxx \ - BlockFix_UnionEdges.cxx \ - BlockFix_UnionFaces.cxx \ - GEOMAlgo_Algo.cxx \ - GEOMAlgo_Builder_0.cxx \ - GEOMAlgo_Builder_1.cxx \ - GEOMAlgo_Builder_2.cxx \ - GEOMAlgo_Builder_3.cxx \ - GEOMAlgo_Builder_4.cxx \ - GEOMAlgo_BuilderArea.cxx \ - GEOMAlgo_Builder.cxx \ - GEOMAlgo_BuilderFace.cxx \ - GEOMAlgo_BuilderShape.cxx \ - GEOMAlgo_BuilderSolid.cxx \ - GEOMAlgo_BuilderTools.cxx \ - GEOMAlgo_ClsfBox.cxx \ - GEOMAlgo_Clsf.cxx \ - GEOMAlgo_ClsfSurf.cxx \ - GEOMAlgo_CoupleOfShapes.cxx \ - GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyInteger_0.cxx \ - GEOMAlgo_DataMapIteratorOfDataMapOfRealListOfShape_0.cxx \ - GEOMAlgo_DataMapIteratorOfDataMapOfShapeReal_0.cxx \ - GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet_0.cxx \ - GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger_0.cxx \ - GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape_0.cxx \ - GEOMAlgo_DataMapNodeOfDataMapOfShapeReal_0.cxx \ - GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet_0.cxx \ - GEOMAlgo_DataMapOfPassKeyInteger_0.cxx \ - GEOMAlgo_DataMapOfRealListOfShape_0.cxx \ - GEOMAlgo_DataMapOfShapeReal_0.cxx \ - GEOMAlgo_DataMapOfShapeShapeSet_0.cxx \ - GEOMAlgo_FinderShapeOn1.cxx \ - GEOMAlgo_FinderShapeOn2.cxx \ - GEOMAlgo_FinderShapeOn.cxx \ - GEOMAlgo_FinderShapeOnQuad.cxx \ - GEOMAlgo_GlueAnalyser.cxx \ - GEOMAlgo_Gluer.cxx \ - GEOMAlgo_Gluer1.cxx \ - GEOMAlgo_HAlgo.cxx \ - GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_0.cxx \ - GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape_0.cxx \ - GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape_0.cxx \ - GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_0.cxx \ - GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState_0.cxx \ - GEOMAlgo_IndexedDataMapOfIntegerShape_0.cxx \ - GEOMAlgo_IndexedDataMapOfPassKeyListOfShape_0.cxx \ - GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape_0.cxx \ - GEOMAlgo_IndexedDataMapOfShapeBox_0.cxx \ - GEOMAlgo_IndexedDataMapOfShapeState_0.cxx \ - GEOMAlgo_ListIteratorOfListOfCoupleOfShapes_0.cxx \ - GEOMAlgo_ListIteratorOfListOfPnt_0.cxx \ - GEOMAlgo_ListNodeOfListOfCoupleOfShapes_0.cxx \ - GEOMAlgo_ListNodeOfListOfPnt_0.cxx \ - GEOMAlgo_ListOfCoupleOfShapes_0.cxx \ - GEOMAlgo_ListOfPnt_0.cxx \ - GEOMAlgo_PassKey.cxx \ - GEOMAlgo_PassKeyMapHasher.cxx \ - GEOMAlgo_PassKeyShape.cxx \ - GEOMAlgo_PassKeyShapeMapHasher.cxx \ - GEOMAlgo_ShapeAlgo.cxx \ - GEOMAlgo_ShapeSet.cxx \ - GEOMAlgo_ShapeSolid.cxx \ - GEOMAlgo_ShellSolid.cxx \ - GEOMAlgo_SolidSolid.cxx \ - GEOMAlgo_Splitter.cxx \ - GEOMAlgo_StateCollector.cxx \ - GEOMAlgo_SurfaceTools.cxx \ - GEOMAlgo_Tools3D.cxx \ - GEOMAlgo_Tools.cxx \ - GEOMAlgo_VertexSolid.cxx \ - GEOMAlgo_WESCorrector.cxx \ - GEOMAlgo_WireEdgeSet.cxx \ - GEOMAlgo_WireSolid.cxx \ - GEOMAlgo_WireSplitter.cxx \ - GEOMAlgo_ClsfSolid.cxx \ - GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape_0.cxx \ - GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyShapeShape_0.cxx \ - GEOMAlgo_DataMapOfPassKeyShapeShape_0.cxx \ - GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo_0.cxx \ - GEOMAlgo_ShapeInfoFiller_1.cxx \ - GEOMAlgo_IndexedDataMapOfShapeShapeInfo_0.cxx \ - GEOMAlgo_ShapeInfo.cxx \ +dist_libGEOMAlgo_la_SOURCES = \ + BlockFix.cxx \ + BlockFix_BlockFixAPI.cxx \ + BlockFix_CheckTool.cxx \ + BlockFix_PeriodicSurfaceModifier.cxx \ + BlockFix_SphereSpaceModifier.cxx \ + BlockFix_UnionEdges.cxx \ + BlockFix_UnionFaces.cxx \ + GEOMAlgo_Algo.cxx \ + GEOMAlgo_Builder_0.cxx \ + GEOMAlgo_Builder_1.cxx \ + GEOMAlgo_Builder_2.cxx \ + GEOMAlgo_Builder_3.cxx \ + GEOMAlgo_Builder_4.cxx \ + GEOMAlgo_BuilderArea.cxx \ + GEOMAlgo_Builder.cxx \ + GEOMAlgo_BuilderFace.cxx \ + GEOMAlgo_BuilderShape.cxx \ + GEOMAlgo_BuilderSolid.cxx \ + GEOMAlgo_BuilderTools.cxx \ + GEOMAlgo_ClsfBox.cxx \ + GEOMAlgo_Clsf.cxx \ + GEOMAlgo_ClsfSurf.cxx \ + GEOMAlgo_CoupleOfShapes.cxx \ + GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyInteger_0.cxx \ + GEOMAlgo_DataMapIteratorOfDataMapOfRealListOfShape_0.cxx \ + GEOMAlgo_DataMapIteratorOfDataMapOfShapeReal_0.cxx \ + GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet_0.cxx \ + GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger_0.cxx \ + GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape_0.cxx \ + GEOMAlgo_DataMapNodeOfDataMapOfShapeReal_0.cxx \ + GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet_0.cxx \ + GEOMAlgo_DataMapOfPassKeyInteger_0.cxx \ + GEOMAlgo_DataMapOfRealListOfShape_0.cxx \ + GEOMAlgo_DataMapOfShapeReal_0.cxx \ + GEOMAlgo_DataMapOfShapeShapeSet_0.cxx \ + GEOMAlgo_FinderShapeOn1.cxx \ + GEOMAlgo_FinderShapeOn2.cxx \ + GEOMAlgo_FinderShapeOn.cxx \ + GEOMAlgo_FinderShapeOnQuad.cxx \ + GEOMAlgo_GlueAnalyser.cxx \ + GEOMAlgo_Gluer.cxx \ + GEOMAlgo_Gluer1.cxx \ + GEOMAlgo_HAlgo.cxx \ + GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_0.cxx \ + GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape_0.cxx \ + GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape_0.cxx \ + GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_0.cxx \ + GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState_0.cxx \ + GEOMAlgo_IndexedDataMapOfIntegerShape_0.cxx \ + GEOMAlgo_IndexedDataMapOfPassKeyListOfShape_0.cxx \ + GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape_0.cxx \ + GEOMAlgo_IndexedDataMapOfShapeBox_0.cxx \ + GEOMAlgo_IndexedDataMapOfShapeState_0.cxx \ + GEOMAlgo_ListIteratorOfListOfCoupleOfShapes_0.cxx \ + GEOMAlgo_ListIteratorOfListOfPnt_0.cxx \ + GEOMAlgo_ListNodeOfListOfCoupleOfShapes_0.cxx \ + GEOMAlgo_ListNodeOfListOfPnt_0.cxx \ + GEOMAlgo_ListOfCoupleOfShapes_0.cxx \ + GEOMAlgo_ListOfPnt_0.cxx \ + GEOMAlgo_PassKey.cxx \ + GEOMAlgo_PassKeyMapHasher.cxx \ + GEOMAlgo_PassKeyShape.cxx \ + GEOMAlgo_PassKeyShapeMapHasher.cxx \ + GEOMAlgo_ShapeAlgo.cxx \ + GEOMAlgo_ShapeSet.cxx \ + GEOMAlgo_ShapeSolid.cxx \ + GEOMAlgo_ShellSolid.cxx \ + GEOMAlgo_SolidSolid.cxx \ + GEOMAlgo_Splitter.cxx \ + GEOMAlgo_StateCollector.cxx \ + GEOMAlgo_SurfaceTools.cxx \ + GEOMAlgo_Tools3D.cxx \ + GEOMAlgo_Tools.cxx \ + GEOMAlgo_VertexSolid.cxx \ + GEOMAlgo_WESCorrector.cxx \ + GEOMAlgo_WireEdgeSet.cxx \ + GEOMAlgo_WireSolid.cxx \ + GEOMAlgo_WireSplitter.cxx \ + GEOMAlgo_ClsfSolid.cxx \ + GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape_0.cxx \ + GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyShapeShape_0.cxx \ + GEOMAlgo_DataMapOfPassKeyShapeShape_0.cxx \ + GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo_0.cxx \ + GEOMAlgo_ShapeInfoFiller_1.cxx \ + GEOMAlgo_IndexedDataMapOfShapeShapeInfo_0.cxx \ + GEOMAlgo_ShapeInfo.cxx \ GEOMAlgo_ShapeInfoFiller.cxx # header files -salomeinclude_HEADERS = \ - BlockFix_BlockFixAPI.hxx \ - BlockFix_BlockFixAPI.lxx \ - BlockFix_CheckTool.hxx \ - Handle_BlockFix_BlockFixAPI.hxx \ - GEOMAlgo_Algo.hxx \ - GEOMAlgo_BuilderArea.hxx \ - GEOMAlgo_BuilderFace.hxx \ - GEOMAlgo_Builder.hxx \ - GEOMAlgo_BuilderShape.hxx \ - GEOMAlgo_BuilderSolid.hxx \ - GEOMAlgo_BuilderTools.hxx \ - GEOMAlgo_ClsfBox.hxx \ - GEOMAlgo_Clsf.hxx \ - GEOMAlgo_ClsfSurf.hxx \ - GEOMAlgo_CoupleOfShapes.hxx \ - GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyInteger.hxx \ - GEOMAlgo_DataMapIteratorOfDataMapOfRealListOfShape.hxx \ - GEOMAlgo_DataMapIteratorOfDataMapOfShapeReal.hxx \ - GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet.hxx \ - GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger.hxx \ - GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape.hxx \ - GEOMAlgo_DataMapNodeOfDataMapOfShapeReal.hxx \ - GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet.hxx \ - GEOMAlgo_DataMapOfPassKeyInteger.hxx \ - GEOMAlgo_DataMapOfRealListOfShape.hxx \ - GEOMAlgo_DataMapOfShapeReal.hxx \ - GEOMAlgo_DataMapOfShapeShapeSet.hxx \ - GEOMAlgo_FinderShapeOn1.hxx \ - GEOMAlgo_FinderShapeOn2.hxx \ - GEOMAlgo_FinderShapeOn.hxx \ - GEOMAlgo_FinderShapeOnQuad.hxx \ - GEOMAlgo_GlueAnalyser.hxx \ - GEOMAlgo_Gluer.hxx \ - GEOMAlgo_Gluer.ixx \ - GEOMAlgo_Gluer.jxx \ - GEOMAlgo_Gluer1.hxx \ - GEOMAlgo_Gluer1.ixx \ - GEOMAlgo_Gluer1.jxx \ - GEOMAlgo_HAlgo.hxx \ - GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx \ - GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape.hxx \ - GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape.hxx \ - GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx \ - GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState.hxx \ - GEOMAlgo_IndexedDataMapOfIntegerShape.hxx \ - GEOMAlgo_IndexedDataMapOfPassKeyListOfShape.hxx \ - GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape.hxx \ - GEOMAlgo_IndexedDataMapOfShapeBox.hxx \ - GEOMAlgo_IndexedDataMapOfShapeState.hxx \ - GEOMAlgo_ListIteratorOfListOfCoupleOfShapes.hxx \ - GEOMAlgo_ListIteratorOfListOfPnt.hxx \ - GEOMAlgo_ListNodeOfListOfCoupleOfShapes.hxx \ - GEOMAlgo_ListNodeOfListOfPnt.hxx \ - GEOMAlgo_ListOfCoupleOfShapes.hxx \ - GEOMAlgo_ListOfPnt.hxx \ - GEOMAlgo_PassKey.hxx \ - GEOMAlgo_PassKeyMapHasher.hxx \ - GEOMAlgo_PassKeyShape.hxx \ - GEOMAlgo_PassKeyShapeMapHasher.hxx \ - GEOMAlgo_PWireEdgeSet.hxx \ - GEOMAlgo_ShapeAlgo.hxx \ - GEOMAlgo_ShapeSet.hxx \ - GEOMAlgo_ShapeSolid.hxx \ - GEOMAlgo_ShellSolid.hxx \ - GEOMAlgo_SolidSolid.hxx \ - GEOMAlgo_Splitter.hxx \ - GEOMAlgo_StateCollector.hxx \ - GEOMAlgo_State.hxx \ - GEOMAlgo_SurfaceTools.hxx \ - GEOMAlgo_Tools3D.hxx \ - GEOMAlgo_Tools.hxx \ - GEOMAlgo_VertexSolid.hxx \ - GEOMAlgo_WESCorrector.hxx \ - GEOMAlgo_WireEdgeSet.hxx \ - GEOMAlgo_WireSolid.hxx \ - GEOMAlgo_WireSplitter.hxx \ - Handle_GEOMAlgo_ClsfBox.hxx \ - Handle_GEOMAlgo_Clsf.hxx \ - Handle_GEOMAlgo_ClsfSurf.hxx \ - Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger.hxx \ - Handle_GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape.hxx \ - Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeReal.hxx \ - Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet.hxx \ - Handle_GEOMAlgo_HAlgo.hxx \ - Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx \ - Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape.hxx \ - Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape.hxx \ - Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx \ - Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState.hxx \ - Handle_GEOMAlgo_ListNodeOfListOfCoupleOfShapes.hxx \ - Handle_GEOMAlgo_ListNodeOfListOfPnt.hxx - GEOMAlgo_ClsfSolid.hxx \ - GEOMAlgo_ClsfSolid.ixx \ - GEOMAlgo_ClsfSolid.jxx \ - GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyShapeShape.hxx \ - GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape.hxx \ - GEOMAlgo_DataMapOfPassKeyShapeShape.hxx \ - GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo.hxx \ - GEOMAlgo_IndexedDataMapOfShapeShapeInfo.hxx \ - GEOMAlgo_KindOfBounds.hxx \ - GEOMAlgo_KindOfClosed.hxx \ - GEOMAlgo_KindOfName.hxx \ - GEOMAlgo_KindOfShape.hxx \ - GEOMAlgo_ShapeInfo.hxx \ - GEOMAlgo_ShapeInfo.ixx \ - GEOMAlgo_ShapeInfo.jxx \ - GEOMAlgo_ShapeInfoFiller.hxx \ - GEOMAlgo_ShapeInfoFiller.ixx \ - GEOMAlgo_ShapeInfoFiller.jxx \ - Handle_GEOMAlgo_ClsfSolid.hxx \ - Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape.hxx \ +salomeinclude_HEADERS = \ + BlockFix.hxx \ + BlockFix.ixx \ + BlockFix.jxx \ + BlockFix_BlockFixAPI.hxx \ + BlockFix_BlockFixAPI.ixx \ + BlockFix_BlockFixAPI.jxx \ + BlockFix_BlockFixAPI.lxx \ + BlockFix_CheckTool.hxx \ + BlockFix_CheckTool.ixx \ + BlockFix_CheckTool.jxx \ + BlockFix_PeriodicSurfaceModifier.hxx \ + BlockFix_PeriodicSurfaceModifier.ixx \ + BlockFix_PeriodicSurfaceModifier.jxx \ + BlockFix_SphereSpaceModifier.hxx \ + BlockFix_SphereSpaceModifier.ixx \ + BlockFix_SphereSpaceModifier.jxx \ + BlockFix_UnionEdges.hxx \ + BlockFix_UnionEdges.ixx \ + BlockFix_UnionEdges.jxx \ + BlockFix_UnionFaces.hxx \ + BlockFix_UnionFaces.ixx \ + BlockFix_UnionFaces.jxx \ + Handle_BlockFix_BlockFixAPI.hxx \ + Handle_BlockFix_SphereSpaceModifier.hxx \ + Handle_BlockFix_PeriodicSurfaceModifier.hxx \ + GEOMAlgo_Algo.hxx \ + GEOMAlgo_Algo.ixx \ + GEOMAlgo_Algo.jxx \ + GEOMAlgo_BuilderArea.hxx \ + GEOMAlgo_BuilderArea.ixx \ + GEOMAlgo_BuilderArea.jxx \ + GEOMAlgo_BuilderFace.hxx \ + GEOMAlgo_BuilderFace.ixx \ + GEOMAlgo_BuilderFace.jxx \ + GEOMAlgo_Builder.hxx \ + GEOMAlgo_Builder.ixx \ + GEOMAlgo_Builder.jxx \ + GEOMAlgo_BuilderShape.hxx \ + GEOMAlgo_BuilderShape.ixx \ + GEOMAlgo_BuilderShape.jxx \ + GEOMAlgo_BuilderSolid.hxx \ + GEOMAlgo_BuilderSolid.ixx \ + GEOMAlgo_BuilderSolid.jxx \ + GEOMAlgo_BuilderTools.hxx \ + GEOMAlgo_BuilderTools.ixx \ + GEOMAlgo_BuilderTools.jxx \ + GEOMAlgo_ClsfBox.hxx \ + GEOMAlgo_ClsfBox.ixx \ + GEOMAlgo_ClsfBox.jxx \ + GEOMAlgo_Clsf.hxx \ + GEOMAlgo_Clsf.ixx \ + GEOMAlgo_Clsf.jxx \ + GEOMAlgo_ClsfSurf.hxx \ + GEOMAlgo_ClsfSurf.ixx \ + GEOMAlgo_ClsfSurf.jxx \ + GEOMAlgo_CoupleOfShapes.hxx \ + GEOMAlgo_CoupleOfShapes.ixx \ + GEOMAlgo_CoupleOfShapes.jxx \ + GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyInteger.hxx \ + GEOMAlgo_DataMapIteratorOfDataMapOfRealListOfShape.hxx \ + GEOMAlgo_DataMapIteratorOfDataMapOfShapeReal.hxx \ + GEOMAlgo_DataMapIteratorOfDataMapOfShapeShapeSet.hxx \ + GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger.hxx \ + GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape.hxx \ + GEOMAlgo_DataMapNodeOfDataMapOfShapeReal.hxx \ + GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet.hxx \ + GEOMAlgo_DataMapOfPassKeyInteger.hxx \ + GEOMAlgo_DataMapOfRealListOfShape.hxx \ + GEOMAlgo_DataMapOfShapeReal.hxx \ + GEOMAlgo_DataMapOfShapeShapeSet.hxx \ + GEOMAlgo_FinderShapeOn1.ixx \ + GEOMAlgo_FinderShapeOn1.hxx \ + GEOMAlgo_FinderShapeOn1.jxx \ + GEOMAlgo_FinderShapeOn2.hxx \ + GEOMAlgo_FinderShapeOn2.ixx \ + GEOMAlgo_FinderShapeOn2.jxx \ + GEOMAlgo_FinderShapeOn.hxx \ + GEOMAlgo_FinderShapeOn.ixx \ + GEOMAlgo_FinderShapeOn.jxx \ + GEOMAlgo_FinderShapeOnQuad.hxx \ + GEOMAlgo_GlueAnalyser.hxx \ + GEOMAlgo_GlueAnalyser.ixx \ + GEOMAlgo_GlueAnalyser.jxx \ + GEOMAlgo_Gluer.hxx \ + GEOMAlgo_Gluer.ixx \ + GEOMAlgo_Gluer.jxx \ + GEOMAlgo_Gluer1.hxx \ + GEOMAlgo_Gluer1.ixx \ + GEOMAlgo_Gluer1.jxx \ + GEOMAlgo_HAlgo.hxx \ + GEOMAlgo_HAlgo.ixx \ + GEOMAlgo_HAlgo.jxx \ + GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx \ + GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape.hxx \ + GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape.hxx \ + GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx \ + GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState.hxx \ + GEOMAlgo_IndexedDataMapOfIntegerShape.hxx \ + GEOMAlgo_IndexedDataMapOfPassKeyListOfShape.hxx \ + GEOMAlgo_IndexedDataMapOfPassKeyShapeListOfShape.hxx \ + GEOMAlgo_IndexedDataMapOfShapeBox.hxx \ + GEOMAlgo_IndexedDataMapOfShapeState.hxx \ + GEOMAlgo_ListIteratorOfListOfCoupleOfShapes.hxx \ + GEOMAlgo_ListIteratorOfListOfPnt.hxx \ + GEOMAlgo_ListNodeOfListOfCoupleOfShapes.hxx \ + GEOMAlgo_ListNodeOfListOfPnt.hxx \ + GEOMAlgo_ListOfCoupleOfShapes.hxx \ + GEOMAlgo_ListOfPnt.hxx \ + GEOMAlgo_PassKey.hxx \ + GEOMAlgo_PassKey.ixx \ + GEOMAlgo_PassKey.jxx \ + GEOMAlgo_PassKeyMapHasher.hxx \ + GEOMAlgo_PassKeyMapHasher.ixx \ + GEOMAlgo_PassKeyMapHasher.jxx \ + GEOMAlgo_PassKeyShape.hxx \ + GEOMAlgo_PassKeyShape.ixx \ + GEOMAlgo_PassKeyShape.jxx \ + GEOMAlgo_PassKeyShapeMapHasher.hxx \ + GEOMAlgo_PassKeyShapeMapHasher.ixx \ + GEOMAlgo_PassKeyShapeMapHasher.jxx \ + GEOMAlgo_PWireEdgeSet.hxx \ + GEOMAlgo_ShapeAlgo.hxx \ + GEOMAlgo_ShapeAlgo.ixx \ + GEOMAlgo_ShapeAlgo.jxx \ + GEOMAlgo_ShapeSet.hxx \ + GEOMAlgo_ShapeSet.ixx \ + GEOMAlgo_ShapeSet.jxx \ + GEOMAlgo_ShapeSolid.hxx \ + GEOMAlgo_ShapeSolid.ixx \ + GEOMAlgo_ShapeSolid.jxx \ + GEOMAlgo_ShellSolid.hxx \ + GEOMAlgo_ShellSolid.ixx \ + GEOMAlgo_ShellSolid.jxx \ + GEOMAlgo_SolidSolid.hxx \ + GEOMAlgo_SolidSolid.ixx \ + GEOMAlgo_SolidSolid.jxx \ + GEOMAlgo_Splitter.hxx \ + GEOMAlgo_Splitter.ixx \ + GEOMAlgo_Splitter.jxx \ + GEOMAlgo_StateCollector.hxx \ + GEOMAlgo_StateCollector.ixx \ + GEOMAlgo_StateCollector.jxx \ + GEOMAlgo_State.hxx \ + GEOMAlgo_SurfaceTools.hxx \ + GEOMAlgo_SurfaceTools.ixx \ + GEOMAlgo_SurfaceTools.jxx \ + GEOMAlgo_Tools3D.hxx \ + GEOMAlgo_Tools3D.ixx \ + GEOMAlgo_Tools3D.jxx \ + GEOMAlgo_Tools.hxx \ + GEOMAlgo_Tools.ixx \ + GEOMAlgo_Tools.jxx \ + GEOMAlgo_VertexSolid.hxx \ + GEOMAlgo_VertexSolid.ixx \ + GEOMAlgo_VertexSolid.jxx \ + GEOMAlgo_WESCorrector.hxx \ + GEOMAlgo_WESCorrector.ixx \ + GEOMAlgo_WESCorrector.jxx \ + GEOMAlgo_WireEdgeSet.hxx \ + GEOMAlgo_WireEdgeSet.ixx \ + GEOMAlgo_WireEdgeSet.jxx \ + GEOMAlgo_WireSolid.hxx \ + GEOMAlgo_WireSolid.ixx \ + GEOMAlgo_WireSolid.jxx \ + GEOMAlgo_WireSplitter.hxx \ + GEOMAlgo_WireSplitter.ixx \ + GEOMAlgo_WireSplitter.jxx \ + Handle_GEOMAlgo_ClsfBox.hxx \ + Handle_GEOMAlgo_Clsf.hxx \ + Handle_GEOMAlgo_ClsfSurf.hxx \ + Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyInteger.hxx \ + Handle_GEOMAlgo_DataMapNodeOfDataMapOfRealListOfShape.hxx \ + Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeReal.hxx \ + Handle_GEOMAlgo_DataMapNodeOfDataMapOfShapeShapeSet.hxx \ + Handle_GEOMAlgo_HAlgo.hxx \ + Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx \ + Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyListOfShape.hxx \ + Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfPassKeyShapeListOfShape.hxx \ + Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx \ + Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeState.hxx \ + Handle_GEOMAlgo_ListNodeOfListOfCoupleOfShapes.hxx \ + Handle_GEOMAlgo_ListNodeOfListOfPnt.hxx \ + GEOMAlgo_ClsfSolid.hxx \ + GEOMAlgo_ClsfSolid.ixx \ + GEOMAlgo_ClsfSolid.jxx \ + GEOMAlgo_DataMapIteratorOfDataMapOfPassKeyShapeShape.hxx \ + GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape.hxx \ + GEOMAlgo_DataMapOfPassKeyShapeShape.hxx \ + GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo.hxx \ + GEOMAlgo_IndexedDataMapOfShapeShapeInfo.hxx \ + GEOMAlgo_KindOfBounds.hxx \ + GEOMAlgo_KindOfClosed.hxx \ + GEOMAlgo_KindOfName.hxx \ + GEOMAlgo_KindOfShape.hxx \ + GEOMAlgo_ShapeInfo.hxx \ + GEOMAlgo_ShapeInfo.ixx \ + GEOMAlgo_ShapeInfo.jxx \ + GEOMAlgo_ShapeInfoFiller.hxx \ + GEOMAlgo_ShapeInfoFiller.ixx \ + GEOMAlgo_ShapeInfoFiller.jxx \ + Handle_GEOMAlgo_ClsfSolid.hxx \ + Handle_GEOMAlgo_DataMapNodeOfDataMapOfPassKeyShapeShape.hxx \ Handle_GEOMAlgo_IndexedDataMapNodeOfIndexedDataMapOfShapeShapeInfo.hxx -libGEOMAlgo_la_CPPFLAGS = \ - $(CAS_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - -I$(srcdir)/../NMTDS \ +libGEOMAlgo_la_CPPFLAGS = \ + $(CAS_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + -I$(srcdir)/../NMTDS \ -I$(srcdir)/../NMTTools -libGEOMAlgo_la_LDFLAGS = \ - ../NMTTools/libNMTTools.la \ - $(STDLIB) \ +libGEOMAlgo_la_LDFLAGS = \ + ../NMTTools/libNMTTools.la \ + $(STDLIB) \ $(CAS_LDPATH) -lTKBO -lTKShHealing -lTKBool -lTKMesh + +# extra distributed files +CDL_FILES = \ + BlockFix.cdl \ + BlockFix_BlockFixAPI.cdl \ + BlockFix_CheckTool.cdl \ + BlockFix_PeriodicSurfaceModifier.cdl \ + BlockFix_SphereSpaceModifier.cdl \ + BlockFix_UnionEdges.cdl \ + BlockFix_UnionFaces.cdl \ + GEOMAlgo.cdl \ + GEOMAlgo_Algo.cdl \ + GEOMAlgo_Builder.cdl \ + GEOMAlgo_BuilderArea.cdl \ + GEOMAlgo_BuilderFace.cdl \ + GEOMAlgo_BuilderShape.cdl \ + GEOMAlgo_BuilderSolid.cdl \ + GEOMAlgo_BuilderTools.cdl \ + GEOMAlgo_Clsf.cdl \ + GEOMAlgo_ClsfBox.cdl \ + GEOMAlgo_ClsfSolid.cdl \ + GEOMAlgo_ClsfSurf.cdl \ + GEOMAlgo_CoupleOfShapes.cdl \ + GEOMAlgo_FinderShapeOn.cdl \ + GEOMAlgo_FinderShapeOn1.cdl \ + GEOMAlgo_FinderShapeOn2.cdl \ + GEOMAlgo_GlueAnalyser.cdl \ + GEOMAlgo_Gluer.cdl \ + GEOMAlgo_Gluer1.cdl \ + GEOMAlgo_HAlgo.cdl \ + GEOMAlgo_PassKey.cdl \ + GEOMAlgo_PassKeyMapHasher.cdl \ + GEOMAlgo_PassKeyShape.cdl \ + GEOMAlgo_PassKeyShapeMapHasher.cdl \ + GEOMAlgo_ShapeAlgo.cdl \ + GEOMAlgo_ShapeInfo.cdl \ + GEOMAlgo_ShapeInfoFiller.cdl \ + GEOMAlgo_ShapeSet.cdl \ + GEOMAlgo_ShapeSolid.cdl \ + GEOMAlgo_ShellSolid.cdl \ + GEOMAlgo_SolidSolid.cdl \ + GEOMAlgo_Splitter.cdl \ + GEOMAlgo_StateCollector.cdl \ + GEOMAlgo_SurfaceTools.cdl \ + GEOMAlgo_Tools.cdl \ + GEOMAlgo_Tools3D.cdl \ + GEOMAlgo_VertexSolid.cdl \ + GEOMAlgo_WESCorrector.cdl \ + GEOMAlgo_WireEdgeSet.cdl \ + GEOMAlgo_WireSolid.cdl \ + GEOMAlgo_WireSplitter.cdl + +EXTRA_DIST += $(CDL_FILES) diff --git a/src/GEOMBase/GEOMBase.cxx b/src/GEOMBase/GEOMBase.cxx index 230515df9..e34e4587f 100644 --- a/src/GEOMBase/GEOMBase.cxx +++ b/src/GEOMBase/GEOMBase.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,45 +17,35 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMBase.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : GEOMBase.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "GEOMBase.h" -#include "GeometryGUI.h" -#include "GEOMBase_aParameterDlg.h" -#include "GEOM_Client.hxx" +#include +#include //// SALOME Includes -#include "Utils_ORB_INIT.hxx" -#include "Utils_SINGLETON.hxx" +#include +#include +#include +#include +#include +#include -#include "SALOME_LifeCycleCORBA.hxx" +#include +#include -#include "GEOM_AssemblyBuilder.h" -#include "GEOM_Actor.h" -#include "SVTK_RenderWindowInteractor.h" -#include "SVTK_ViewModel.h" -#include "SVTK_ViewWindow.h" -#include "OCCViewer_ViewPort3d.h" -#include "OCCViewer_ViewModel.h" -#include "OCCViewer_ViewWindow.h" - -#include "SALOME_ListIO.hxx" -#include "SALOME_ListIteratorOfListIO.hxx" -#include "GEOM_AISTrihedron.hxx" - -#include "SUIT_Session.h" -#include "SUIT_ViewWindow.h" -#include "SUIT_MessageBox.h" -#include "SalomeApp_Application.h" -#include "SalomeApp_Study.h" +#include +#include +#include +#include +#include +#include +#include // // Open CASCADE Includes #include @@ -63,34 +53,20 @@ #include #include -#include #include #include #include #include -#include -#include -#include -#include -#include #include +#include #include #include -#include -#include #include -#include "GEOMImpl_Types.hxx" - -using namespace std; - -#include "SALOMEDSClient.hxx" - - //===================================================================================== // function : GetShapeFromIOR() // purpose : exist also as static method ! @@ -98,10 +74,10 @@ using namespace std; TopoDS_Shape GEOMBase::GetShapeFromIOR(QString IOR) { TopoDS_Shape result; - if(IOR.stripWhiteSpace().isEmpty()) + if(IOR.trimmed().isEmpty()) return result; - CORBA::Object_var obj = SalomeApp_Application::orb()->string_to_object((char*)(IOR.latin1())); + CORBA::Object_var obj = SalomeApp_Application::orb()->string_to_object(IOR.toLatin1().data()); if(CORBA::is_nil(obj)) return result; GEOM::GEOM_Object_var GeomObject = GEOM::GEOM_Object::_narrow( obj ); @@ -227,55 +203,55 @@ bool GEOMBase::GetShapeTypeString(const TopoDS_Shape& aShape, Standard_CString& { case TopAbs_COMPOUND: { - aTypeString = CORBA::string_dup(QObject::tr("GEOM_COMPOUND")); + aTypeString = CORBA::string_dup(QObject::tr("GEOM_COMPOUND").toLatin1().constData()); return true; } case TopAbs_COMPSOLID: { - aTypeString = CORBA::string_dup(QObject::tr("GEOM_COMPOUNDSOLID")) ; + aTypeString = CORBA::string_dup(QObject::tr("GEOM_COMPOUNDSOLID").toLatin1().constData()) ; return true ; } case TopAbs_SOLID: { - aTypeString = CORBA::string_dup(QObject::tr("GEOM_SOLID")) ; + aTypeString = CORBA::string_dup(QObject::tr("GEOM_SOLID").toLatin1().constData()) ; return true ; } case TopAbs_SHELL: { - aTypeString = CORBA::string_dup(QObject::tr("GEOM_SHELL")) ; + aTypeString = CORBA::string_dup(QObject::tr("GEOM_SHELL").toLatin1().constData()) ; return true ; } case TopAbs_FACE: { BRepAdaptor_Surface surf(TopoDS::Face(aShape)); if(surf.GetType() == GeomAbs_Plane) { - aTypeString = CORBA::string_dup(QObject::tr("GEOM_PLANE")); + aTypeString = CORBA::string_dup(QObject::tr("GEOM_PLANE").toLatin1().constData()); return true; } else if(surf.GetType() == GeomAbs_Cylinder) { - aTypeString = CORBA::string_dup(QObject::tr("GEOM_SURFCYLINDER")); + aTypeString = CORBA::string_dup(QObject::tr("GEOM_SURFCYLINDER").toLatin1().constData()); return true; } else if(surf.GetType() == GeomAbs_Sphere) { - aTypeString = CORBA::string_dup(QObject::tr("GEOM_SURFSPHERE")); + aTypeString = CORBA::string_dup(QObject::tr("GEOM_SURFSPHERE").toLatin1().constData()); return true ; } else if(surf.GetType() == GeomAbs_Torus) { - aTypeString = CORBA::string_dup(QObject::tr("GEOM_SURFTORUS")); + aTypeString = CORBA::string_dup(QObject::tr("GEOM_SURFTORUS").toLatin1().constData()); return true ; } else if(surf.GetType() == GeomAbs_Cone) { - aTypeString = CORBA::string_dup(QObject::tr("GEOM_SURFCONE")); + aTypeString = CORBA::string_dup(QObject::tr("GEOM_SURFCONE").toLatin1().constData()); return true ; } else { - aTypeString = CORBA::string_dup(QObject::tr("GEOM_FACE")); + aTypeString = CORBA::string_dup(QObject::tr("GEOM_FACE").toLatin1().constData()); return true; } } case TopAbs_WIRE: { - aTypeString = CORBA::string_dup(QObject::tr("GEOM_WIRE")); + aTypeString = CORBA::string_dup(QObject::tr("GEOM_WIRE").toLatin1().constData()); return true; } case TopAbs_EDGE: @@ -283,31 +259,31 @@ bool GEOMBase::GetShapeTypeString(const TopoDS_Shape& aShape, Standard_CString& BRepAdaptor_Curve curv(TopoDS::Edge(aShape)); if(curv.GetType() == GeomAbs_Line) { if((Abs(curv.FirstParameter()) >= 1E6) || (Abs(curv.LastParameter()) >= 1E6)) - aTypeString = CORBA::string_dup(QObject::tr("GEOM_LINE")); + aTypeString = CORBA::string_dup(QObject::tr("GEOM_LINE").toLatin1().constData()); else - aTypeString = CORBA::string_dup(QObject::tr("GEOM_EDGE")); + aTypeString = CORBA::string_dup(QObject::tr("GEOM_EDGE").toLatin1().constData()); return true; } else if(curv.GetType() == GeomAbs_Circle) { if(curv.IsClosed()) - aTypeString = CORBA::string_dup(QObject::tr("GEOM_CIRCLE")); + aTypeString = CORBA::string_dup(QObject::tr("GEOM_CIRCLE").toLatin1().constData()); else - aTypeString = CORBA::string_dup(QObject::tr("GEOM_ARC")); + aTypeString = CORBA::string_dup(QObject::tr("GEOM_ARC").toLatin1().constData()); return true; } else { - aTypeString = CORBA::string_dup(QObject::tr("GEOM_EDGE")); + aTypeString = CORBA::string_dup(QObject::tr("GEOM_EDGE").toLatin1().constData()); return true; } } case TopAbs_VERTEX: { - aTypeString = CORBA::string_dup(QObject::tr("GEOM_VERTEX")); + aTypeString = CORBA::string_dup(QObject::tr("GEOM_VERTEX").toLatin1().constData()); return true; } case TopAbs_SHAPE: { - aTypeString = CORBA::string_dup(QObject::tr("GEOM_SHAPE")); + aTypeString = CORBA::string_dup(QObject::tr("GEOM_SHAPE").toLatin1().constData()); return true; } } @@ -332,11 +308,13 @@ Handle(GEOM_AISShape) GEOMBase::ConvertIORinGEOMAISShape(const char * IOR, Stand if ( !anObj ) return resultShape; - QPtrList aViewWindowsList = SUIT_Session::session()->activeApplication()->desktop()->windows(); + QList aViewWindowsList = SUIT_Session::session()->activeApplication()->desktop()->windows(); - for ( QPtrListIterator it( aViewWindowsList ); it.current(); ++it ) { - if (it.current()->getViewManager()->getType() == OCCViewer_Viewer::Type()) { - Handle (AIS_InteractiveContext) ic = ((OCCViewer_Viewer*)it.current()->getViewManager()->getViewModel())->getAISContext(); + QListIterator it( aViewWindowsList ); + while ( it.hasNext() ) { + SUIT_ViewWindow* aVW = it.next(); + if (aVW && aVW->getViewManager()->getType() == OCCViewer_Viewer::Type()) { + Handle (AIS_InteractiveContext) ic = ((OCCViewer_Viewer*)aVW->getViewManager()->getViewModel())->getAISContext(); AIS_ListOfInteractive List; ic->DisplayedObjects(List); @@ -352,7 +330,7 @@ Handle(GEOM_AISShape) GEOMBase::ConvertIORinGEOMAISShape(const char * IOR, Stand Handle(SALOME_InteractiveObject) GIO = Handle(SALOME_InteractiveObject)::DownCast(aSh->getIO()); if(GIO->hasEntry() && strcmp(GIO->getEntry(), anObj->GetID().c_str()) == 0) { if(!onlyInActiveView || - it.current() == SUIT_Session::session()->activeApplication()->desktop()->activeWindow()) { + aVW == SUIT_Session::session()->activeApplication()->desktop()->activeWindow()) { testResult = true; resultShape = aSh; return resultShape; @@ -384,11 +362,13 @@ GEOM_Actor* GEOMBase::ConvertIORinGEOMActor(const char* IOR, Standard_Boolean& t if ( !anObj ) return GEOM_Actor::New(); - QPtrList aViewWindowsList = SUIT_Session::session()->activeApplication()->desktop()->windows(); + QList aViewWindowsList = SUIT_Session::session()->activeApplication()->desktop()->windows(); - for ( QPtrListIterator it( aViewWindowsList ); it.current(); ++it ) { - if (it.current()->getViewManager()->getType() == SVTK_Viewer::Type()) { - SVTK_ViewWindow* aVTKViewWindow = dynamic_cast( it.current() ); + QListIterator it( aViewWindowsList ); + while ( it.hasNext() ) { + SUIT_ViewWindow* aVW = it.next(); + if (aVW && aVW->getViewManager()->getType() == SVTK_Viewer::Type()) { + SVTK_ViewWindow* aVTKViewWindow = dynamic_cast( aVW ); if( !aVTKViewWindow ) continue; vtkRenderer* Renderer = aVTKViewWindow->getRenderer(); @@ -402,7 +382,7 @@ GEOM_Actor* GEOMBase::ConvertIORinGEOMActor(const char* IOR, Standard_Boolean& t Handle(SALOME_InteractiveObject) GIO = Handle(SALOME_InteractiveObject)::DownCast(anActor->getIO()); if(GIO->hasEntry() && strcmp(GIO->getEntry(), anObj->GetID().c_str()) == 0) { if(!onlyInActiveView || - it.current() == SUIT_Session::session()->activeApplication()->desktop()->activeWindow()) { + aVW == SUIT_Session::session()->activeApplication()->desktop()->activeWindow()) { testResult = true; return anActor; } @@ -427,12 +407,14 @@ Handle(AIS_InteractiveObject) GEOMBase::GetAIS( const Handle(SALOME_InteractiveO if ( theIO.IsNull() || !theIO->hasEntry() ) return Handle(AIS_InteractiveObject)(); - QPtrList aViewWindowsList = SUIT_Session::session()->activeApplication()->desktop()->windows(); + QList aViewWindowsList = SUIT_Session::session()->activeApplication()->desktop()->windows(); - for ( QPtrListIterator it( aViewWindowsList ); it.current(); ++it ) { - if (it.current()->getViewManager()->getType() != OCCViewer_Viewer::Type()) + QListIterator it( aViewWindowsList ); + while ( it.hasNext() ) { + SUIT_ViewWindow* aVW = it.next(); + if (!aVW || aVW->getViewManager()->getType() != OCCViewer_Viewer::Type()) continue; - Handle (AIS_InteractiveContext) anIC = ((OCCViewer_Viewer*)it.current()->getViewManager()->getViewModel())->getAISContext(); + Handle (AIS_InteractiveContext) anIC = ((OCCViewer_Viewer*)aVW->getViewManager()->getViewModel())->getAISContext(); AIS_ListOfInteractive aList; anIC->DisplayedObjects( aList ); @@ -448,7 +430,7 @@ Handle(AIS_InteractiveObject) GEOMBase::GetAIS( const Handle(SALOME_InteractiveO { if( isOnlyInActiveView ) { - if ( it.current() == SUIT_Session::session()->activeApplication()->desktop()->activeWindow() ) + if ( aVW == SUIT_Session::session()->activeApplication()->desktop()->activeWindow() ) return anIter.Value(); } else @@ -475,11 +457,13 @@ Handle(GEOM_AISShape) GEOMBase::ConvertIOinGEOMAISShape(const Handle(SALOME_Inte return res; } - QPtrList aViewWindowsList = SUIT_Session::session()->activeApplication()->desktop()->windows(); + QList aViewWindowsList = SUIT_Session::session()->activeApplication()->desktop()->windows(); - for ( QPtrListIterator it( aViewWindowsList ); it.current(); ++it ) { - if (it.current()->getViewManager()->getType() == OCCViewer_Viewer::Type()) { - Handle (AIS_InteractiveContext) ic = ((OCCViewer_Viewer*)it.current()->getViewManager()->getViewModel())->getAISContext(); + QListIterator it( aViewWindowsList ); + while ( it.hasNext() ) { + SUIT_ViewWindow* aVW = it.next(); + if (aVW && aVW->getViewManager()->getType() == OCCViewer_Viewer::Type()) { + Handle (AIS_InteractiveContext) ic = ((OCCViewer_Viewer*)aVW->getViewManager()->getViewModel())->getAISContext(); AIS_ListOfInteractive List; ic->DisplayedObjects(List); @@ -499,7 +483,7 @@ Handle(GEOM_AISShape) GEOMBase::ConvertIOinGEOMAISShape(const Handle(SALOME_Inte { if(onlyInActiveView) { - if(it.current() == SUIT_Session::session()->activeApplication()->desktop()->activeWindow()) + if(aVW == SUIT_Session::session()->activeApplication()->desktop()->activeWindow()) { testResult = true; return aSh; @@ -753,34 +737,6 @@ bool GEOMBase::LinearEdgeExtremities(const TopoDS_Shape& S, gp_Pnt& P1, gp_Pnt& } -//======================================================================= -// function : Parameter() -// purpose : return a parameter (float) from a dialog box -// -// avalue1 : is a float or integer used as a default value displayed -// aTitle1 : is the title for aValue1 -// aTitle : is the main title -// bottom : maximum value to be entered -// top : minimum value to be entered -// decimals : number of decimals -//======================================================================= -double GEOMBase::Parameter(Standard_Boolean& res, const char* aValue1, const char* aTitle1, const char* aTitle, const double bottom, const double top, const int decimals) -{ - GEOMBase_aParameterDlg * Dialog = new GEOMBase_aParameterDlg(aValue1, aTitle1, SUIT_Session::session()->activeApplication()->desktop(), - aTitle, TRUE, 0, bottom, top, decimals); - int r = Dialog->exec(); - float X = 0.0; - if(r == QDialog::Accepted) { - res = Standard_True; - X = Dialog->getValue(); - } - else - res = Standard_False; - delete Dialog; - return X; -} - - //======================================================================= // function : SelectionByNameInDialogs() // purpose : Called when user has entered a name of object in a LineEdit. @@ -795,13 +751,13 @@ bool GEOMBase::SelectionByNameInDialogs(QWidget* aWidget, const QString& objectU _PTR(Study) ST = appStudy->studyDS(); std::vector<_PTR(SObject)> listSO; - listSO = ST->FindObjectByName(objectUserName.latin1(), "GEOM"); + listSO = ST->FindObjectByName(objectUserName.toStdString(), "GEOM"); if(listSO.size() < 1) { const QString caption = QObject::tr("GEOM_WRN_WARNING"); const QString text = QObject::tr("GEOM_NAME_INCORRECT"); const QString button0 = QObject::tr("GEOM_BUT_OK"); - SUIT_MessageBox::error1(aWidget, caption, text, button0); + SUIT_MessageBox::critical(aWidget, caption, text, button0); return false; } /* More than one object with same name */ @@ -809,14 +765,14 @@ bool GEOMBase::SelectionByNameInDialogs(QWidget* aWidget, const QString& objectU const QString caption = QObject::tr("GEOM_WRN_WARNING"); const QString text = QObject::tr("GEOM_IDENTICAL_NAMES_SELECT_BY_MOUSE"); const QString button0 = QObject::tr("GEOM_BUT_OK") ; - SUIT_MessageBox::error1(aWidget, caption, text, button0) ; + SUIT_MessageBox::critical(aWidget, caption, text, button0) ; listSO.clear(); return false; } _PTR(SObject) theObj ( listSO[0] ); /* Create a SALOME_InteractiveObject with a SALOME::SObject */ - char* aCopyobjectUserName = CORBA::string_dup(objectUserName); + char* aCopyobjectUserName = CORBA::string_dup(objectUserName.toLatin1().constData()); Handle(SALOME_InteractiveObject) SI = new SALOME_InteractiveObject(theObj->GetID().c_str(), "GEOM", aCopyobjectUserName); delete(aCopyobjectUserName); @@ -873,7 +829,7 @@ QString GEOMBase::GetDefaultName(const QString& theOperation) bool isUnique = false; while (!isUnique) { aName = theOperation + "_" + QString::number(++aNumber); - isUnique = (aSet.count(aName.latin1()) == 0); + isUnique = (aSet.count(aName.toStdString()) == 0); } return aName; @@ -891,12 +847,12 @@ void GEOMBase::ShowErrorMessage(const char* theErrorCode, const char* theComment QString aText = ""; if (!anErrorCode.isEmpty()) - aText.append("\n" + QObject::tr(anErrorCode)); + aText.append("\n" + QObject::tr(anErrorCode.toLatin1().constData())); if (!aComment.isEmpty()) aText.append("\n" + QString(theComment)); - SUIT_MessageBox::error1( SUIT_Session::session()->activeApplication()->desktop(), QObject::tr( "GEOM_ERROR" ), - QObject::tr("GEOM_PRP_ABORT") + aText, "OK" ); + SUIT_MessageBox::critical( SUIT_Session::session()->activeApplication()->desktop(), QObject::tr( "GEOM_ERROR" ), + QObject::tr("GEOM_PRP_ABORT") + aText, "OK" ); } @@ -957,7 +913,7 @@ QString GEOMBase::GetName( GEOM::GEOM_Object_ptr theObj ) CORBA::String_var anIOR = SalomeApp_Application::orb()->object_to_string( theObj ); if ( strcmp(anIOR.in(), "") != 0 ) { - _PTR(SObject) aSObj ( appStudy->studyDS()->FindObjectIOR( string( anIOR ) ) ); + _PTR(SObject) aSObj ( appStudy->studyDS()->FindObjectIOR( std::string( anIOR ) ) ); _PTR(GenericAttribute) anAttr; diff --git a/src/GEOMBase/GEOMBase.h b/src/GEOMBase/GEOMBase.h index ff3feecbb..360fd1318 100644 --- a/src/GEOMBase/GEOMBase.h +++ b/src/GEOMBase/GEOMBase.h @@ -1,37 +1,35 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMBase.h +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// File : GEOMBase.h -// Author : Damien COQUERET -// Module : GEOM - #ifndef GEOMBASE_H #define GEOMBASE_H #include "GEOM_GEOMBase.hxx" // SALOME Includes -#include "GEOM_AISShape.hxx" +#include // IDL Headers #include @@ -40,11 +38,10 @@ #include CORBA_SERVER_HEADER(GEOM_Gen) // QT Includes -#include +#include class GEOM_Actor; class SALOME_ListIO; -class TColStd_MapOfInteger; class QWidget; @@ -101,12 +98,6 @@ public : static bool LinearEdgeExtremities(const TopoDS_Shape& S, gp_Pnt& P1, gp_Pnt& P2); static void GetBipointDxDyDz(gp_Pnt P1, gp_Pnt P2, double& dx, double& dy, double& dz); - /* User dialog 1 parameter returned */ - static double Parameter(Standard_Boolean& res, - const char* aValue1 = 0, const char* aTitle1 = 0, - const char* aTitle = 0, const double bottom = -1E6, - const double top = +1E6, const int decimals = 6); - /* Simulation management */ static bool CreateArrowForLinearEdge(const TopoDS_Shape& tds, TopoDS_Shape& ArrowCone); @@ -127,4 +118,4 @@ public : static bool IsShape(GEOM::GEOM_Object_ptr theObj); }; -#endif +#endif // GEOMBASE_H diff --git a/src/GEOMBase/GEOMBase.pro b/src/GEOMBase/GEOMBase.pro new file mode 100644 index 000000000..bd3592ae0 --- /dev/null +++ b/src/GEOMBase/GEOMBase.pro @@ -0,0 +1,76 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = GEOMBase +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +QT_INCLUDES = $$(QTDIR)/include $$(QTDIR)/include/QtCore $$(QTDIR)/include/QtGui $$(QTDIR)/include/QtOpenGL $$(QTDIR)/include/QtXml + +VTK_INCLUDES = $$(VTKHOME)/include/vtk + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +PYTHON_INCLUDES = $$(PYTHONHOME)/include/python2.4 + +BOOST_CPPFLAGS = $$(BOOSTDIR)/include + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +GUI_CXXFLAGS = $$(GUI_ROOT_DIR)/include/salome + +CORBA_INCLUDES = $$(OMNIORBDIR)/include $$(OMNIORBDIR)/include/omniORB4 $$(OMNIORBDIR)/include/COS + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +GUI_LDFLAGS = -L$$(GUI_ROOT_DIR)/lib/salome + +CAS_LDPATH = -L$${CASROOT}/Linux/lib + +INCLUDEPATH += $${QT_INCLUDES} $${VTK_INCLUDES} $${CAS_CPPFLAGS} $${PYTHON_INCLUDES} $${BOOST_CPPFLAGS} $${KERNEL_CXXFLAGS} $${GUI_CXXFLAGS} $${CORBA_INCLUDES} ../OBJECT ../GEOMClient ../GEOMImpl ../GEOMGUI ../DlgRef $$(GEOM_ROOT_DIR)/idl $$(GEOM_ROOT_DIR)/salome_adm/unix + +LIBS += -L$$(GEOM_ROOT_DIR)/idl -lSalomeIDLGEOM -L$$(GEOM_ROOT_DIR)/lib -lGEOM -lDlgRef $${KERNEL_LDFLAGS} -lOpUtil $${GUI_LDFLAGS} -lsuit -lOCCViewer -lVTKViewer -lSVTK -lSalomePrs -lSalomeApp -lCAM $${CAS_LDPATH} -lTKPrim + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += GEOMBASE_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS OMNIORB_VERSION=4 __x86__ __linux__ COMP_CORBA_DOUBLE COMP_CORBA_LONG + +HEADERS = GEOMBase.h +HEADERS += GEOMBase_Skeleton.h +HEADERS += GEOMBase_Helper.h +HEADERS += GEOM_Operation.h +HEADERS += GEOM_GEOMBase.hxx + +SOURCES = GEOMBase.cxx +SOURCES += GEOMBase_Skeleton.cxx +SOURCES += GEOMBase_aParameterDlg.cxx +SOURCES += GEOMBase_Helper.cxx +SOURCES += GEOM_Operation.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/GEOMBase/GEOMBase_Helper.cxx b/src/GEOMBase/GEOMBase_Helper.cxx index d62fc63cd..326998aed 100755 --- a/src/GEOMBase/GEOMBase_Helper.cxx +++ b/src/GEOMBase/GEOMBase_Helper.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2004 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,26 +17,23 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMBase_Helper.cxx +// Author : Sergey ANIKIN, Open CASCADE S.A.S. (sergey.anikin@opencascade.com) // -// -// File : GEOMBase_Helper.cxx -// Author : Sergey ANIKIN -// Module : GEOM -// $Header$ - -#include - #include "GEOMBase_Helper.h" #include "GEOMBase.h" #include "GEOM_Operation.h" -#include "GeometryGUI.h" -#include "GEOM_Displayer.h" -#include "GEOMImpl_Types.hxx" +#include + +#include #include +#include #include +#include #include #include @@ -46,21 +43,15 @@ #include #include #include -#include + +#include #include #include -#include - #include #include -using namespace std; - -#include - - //================================================================ // Function : getActiveView // Purpose : Get active view window, returns 0 if no open study frame @@ -171,9 +162,9 @@ void GEOMBase_Helper::erase( const ObjectList& objList, const bool updateView ) void GEOMBase_Helper::erase( GEOM::GEOM_Object_ptr object, const bool updateView ) { if ( !object->_is_nil() ) { - string entry = getEntry( object ); + std::string entry = getEntry( object ); getDisplayer()->Erase( new SALOME_InteractiveObject( - entry.c_str(), "GEOM", strdup( GEOMBase::GetName( object ) ) ), true, updateView ); + entry.c_str(), "GEOM", strdup( GEOMBase::GetName( object ).toLatin1().constData() ) ), true, updateView ); } } @@ -210,9 +201,9 @@ void GEOMBase_Helper::redisplay( GEOM::GEOM_Object_ptr object, // Enable activisation of selection getDisplayer()->SetToActivate( true ); - string entry = getEntry( object ); + std::string entry = getEntry( object ); getDisplayer()->Redisplay(new SALOME_InteractiveObject - (entry.c_str(), "GEOM", strdup(GEOMBase::GetName(object))), false); + (entry.c_str(), "GEOM", strdup(GEOMBase::GetName(object).toLatin1().constData())), false); } if ( withChildren ) { @@ -220,7 +211,7 @@ void GEOMBase_Helper::redisplay( GEOM::GEOM_Object_ptr object, if ( aDoc && aDoc->studyDS() ) { _PTR(Study) aStudy = aDoc->studyDS(); CORBA::String_var objStr = SalomeApp_Application::orb()->object_to_string(object); - _PTR(SObject) aSObj (aStudy->FindObjectIOR(string(objStr.in()))); + _PTR(SObject) aSObj (aStudy->FindObjectIOR(std::string(objStr.in()))); if ( aSObj ) { _PTR(ChildIterator) anIt ( aStudy->NewChildIterator( aSObj ) ); for ( anIt->InitEx( true ); anIt->More(); anIt->Next() ) { @@ -228,9 +219,9 @@ void GEOMBase_Helper::redisplay( GEOM::GEOM_Object_ptr object, (GeometryGUI::ClientSObjectToObject(anIt->Value())); if ( !CORBA::is_nil( aChild ) ) { if ( !aChild->_is_nil() ) { - string entry = getEntry( aChild ); + std::string entry = getEntry( aChild ); getDisplayer()->Redisplay( new SALOME_InteractiveObject( - entry.c_str(), "GEOM", strdup( GEOMBase::GetName( aChild ) ) ), false ); + entry.c_str(), "GEOM", strdup( GEOMBase::GetName( aChild ).toLatin1().constData() ) ), false ); } } } @@ -449,10 +440,10 @@ void GEOMBase_Helper::localSelection( const ObjectList& theObjs, const int theMo GEOM::GEOM_Object_ptr anObj = *anIter; if ( anObj->_is_nil() ) continue; - string aEntry = getEntry( anObj ); + std::string aEntry = getEntry( anObj ); if ( aEntry != "" ) aListOfIO.Append( new SALOME_InteractiveObject( - aEntry.c_str(), "GEOM", strdup( GEOMBase::GetName( anObj ) ) ) ); + aEntry.c_str(), "GEOM", strdup( GEOMBase::GetName( anObj ).toLatin1().constData() ) ) ); } getDisplayer()->LocalSelection( aListOfIO, theMode ); @@ -498,6 +489,18 @@ void GEOMBase_Helper::globalSelection( const TColStd_MapOfInteger& theModes, getDisplayer()->GlobalSelection( theModes, update ); } +//================================================================ +// Function : globalSelection +// Purpose : Activate selection of subshapes. Set selection filters +// in accordance with mode. theMode is from GEOMImpl_Types +//================================================================ +void GEOMBase_Helper::globalSelection( const TColStd_MapOfInteger& theModes, + const QList& subShapes, + const bool update ) +{ + getDisplayer()->GlobalSelection( theModes, update, &subShapes ); +} + //================================================================ // Function : addInStudy // Purpose : Add object in study @@ -511,10 +514,33 @@ void GEOMBase_Helper::addInStudy( GEOM::GEOM_Object_ptr theObj, const char* theN if ( !aStudy || theObj->_is_nil() ) return; + SALOMEDS::Study_var aStudyDS = GeometryGUI::ClientStudyToStudy(aStudy); + GEOM::GEOM_Object_ptr aFatherObj = getFather( theObj ); - getGeomEngine()->AddInStudy(GeometryGUI::ClientStudyToStudy(aStudy), - theObj, theName, aFatherObj); + SALOMEDS::SObject_var aSO = + getGeomEngine()->AddInStudy(aStudyDS, theObj, theName, aFatherObj); + + // Each dialog is responsible for this method implementation, + // default implementation does nothing + restoreSubShapes(aStudyDS, aSO); +} + +//================================================================ +// Function : restoreSubShapes +// Purpose : restore tree of argument's sub-shapes under the resulting shape +//================================================================ +void GEOMBase_Helper::restoreSubShapes (SALOMEDS::Study_ptr /*theStudy*/, + SALOMEDS::SObject_ptr /*theSObject*/) +{ + // do nothing by default + + // example of implementation in particular dialog: + // GEOM::ListOfGO anArgs; + // anArgs.length(0); // empty list means that all arguments should be restored + // getGeomEngine()->RestoreSubShapesSO(theStudy, theSObject, anArgs, + // /*theFindMethod=*/GEOM::FSM_GetInPlace, + // /*theInheritFirstArg=*/false); } //================================================================ @@ -565,13 +591,14 @@ SalomeApp_Study* GEOMBase_Helper::getStudy() const if (!aDesktop) return 0; - QPtrList anAppList = SUIT_Session::session()->applications(); + QList anAppList = SUIT_Session::session()->applications(); SUIT_Application* anApp = 0; - for ( QPtrListIterator it( anAppList ); it.current() ; ++it ) + QListIterator it( anAppList ); + while ( it.hasNext() ) { - anApp = it.current(); - if ( anApp->desktop() == aDesktop ) + anApp = it.next(); + if ( anApp && anApp->desktop() == aDesktop ) break; } @@ -587,12 +614,12 @@ char* GEOMBase_Helper::getEntry( GEOM::GEOM_Object_ptr object ) const SalomeApp_Study* study = getStudy(); if ( study ) { char * objIOR = GEOMBase::GetIORFromObject( object ); - string IOR( objIOR ); + std::string IOR( objIOR ); free( objIOR ); if ( IOR != "" ) { _PTR(SObject) SO ( study->studyDS()->FindObjectIOR( IOR ) ); if ( SO ) { - return TCollection_AsciiString((char*)SO->GetID().c_str()).ToCString(); + return (char*) TCollection_AsciiString((char*)SO->GetID().c_str()).ToCString(); } } } @@ -627,7 +654,7 @@ void GEOMBase_Helper::clearShapeBuffer( GEOM::GEOM_Object_ptr theObj ) return; _PTR(Study) aStudy = getStudy()->studyDS(); - _PTR(SObject) aSObj ( aStudy->FindObjectIOR( string( IOR ) ) ); + _PTR(SObject) aSObj ( aStudy->FindObjectIOR( std::string( IOR ) ) ); if ( !aSObj ) return; @@ -722,10 +749,11 @@ GEOM::GEOM_IOperations_ptr GEOMBase_Helper::getOperation() bool GEOMBase_Helper::checkViewWindow() { if ( myViewWindow ){ - QPtrList aViewWindowsList = SUIT_Session::session()->activeApplication()->desktop()->windows(); - for ( QPtrListIterator it( aViewWindowsList ); it.current(); ++it ) + QList aViewWindowsList = SUIT_Session::session()->activeApplication()->desktop()->windows(); + QListIterator it( aViewWindowsList ); + while ( it.hasNext() ) { - if ( myViewWindow == it.current() ) + if ( myViewWindow == it.next() ) return true; } } @@ -748,10 +776,10 @@ bool GEOMBase_Helper::onAccept( const bool publish, const bool useTransaction ) bool aLocked = (_PTR(AttributeStudyProperties) (aStudy->GetProperties()))->IsLocked(); if ( aLocked ) { MESSAGE("GEOMBase_Helper::onAccept - ActiveStudy is locked"); - SUIT_MessageBox::warn1 ( (QWidget*)SUIT_Session::session()->activeApplication()->desktop(), - QObject::tr("WRN_WARNING"), - QObject::tr("WRN_STUDY_LOCKED"), - QObject::tr("BUT_OK") ); + SUIT_MessageBox::warning ( (QWidget*)SUIT_Session::session()->activeApplication()->desktop(), + QObject::tr("WRN_WARNING"), + QObject::tr("WRN_STUDY_LOCKED"), + QObject::tr("BUT_OK") ); return false; } @@ -795,7 +823,7 @@ bool GEOMBase_Helper::onAccept( const bool publish, const bool useTransaction ) if ( aName.isEmpty() ) aName = GEOMBase::GetDefaultName( getPrefix( *it ) ); } - addInStudy( *it, aName.latin1() ); + addInStudy( *it, aName.toLatin1().constData() ); // updateView=false display( *it, false ); } @@ -842,10 +870,10 @@ void GEOMBase_Helper::showError() if ( msg.isEmpty() ) msg = QObject::tr( "GEOM_PRP_ABORT" ); - SUIT_MessageBox::error1( SUIT_Session::session()->activeApplication()->desktop(), - QObject::tr( "GEOM_ERROR_STATUS" ), - msg, - QObject::tr( "BUT_OK" ) ); + SUIT_MessageBox::critical( SUIT_Session::session()->activeApplication()->desktop(), + QObject::tr( "GEOM_ERROR_STATUS" ), + msg, + QObject::tr( "BUT_OK" ) ); } //================================================================ @@ -857,7 +885,7 @@ void GEOMBase_Helper::showError( const QString& msg ) QString str( QObject::tr( "GEOM_INCORRECT_INPUT" ) ); if ( !msg.isEmpty() ) str += "\n" + msg; - SUIT_MessageBox::error1(SUIT_Session::session()->activeApplication()->desktop(), QObject::tr( "GEOM_ERROR" ), str, QObject::tr( "BUT_OK" ) ); + SUIT_MessageBox::critical(SUIT_Session::session()->activeApplication()->desktop(), QObject::tr( "GEOM_ERROR" ), str, QObject::tr( "BUT_OK" ) ); } ////////////////////////////////////////////////////////////////// @@ -909,9 +937,9 @@ GEOM::GEOM_Object_ptr GEOMBase_Helper::getFather( GEOM::GEOM_Object_ptr theObj ) // Function : getNewObjectName // Purpose : Redefine this method to return proper name for a new object //================================================================ -const char* GEOMBase_Helper::getNewObjectName() const +QString GEOMBase_Helper::getNewObjectName() const { - return ""; + return QString::null; } //================================================================ @@ -944,56 +972,10 @@ QString GEOMBase_Helper::getPrefix( GEOM::GEOM_Object_ptr theObj ) const } } -//================================================================ -// Function : selectedIO -// Purpose : Return the list of selected SALOME_InteractiveObject's -//================================================================ -const SALOME_ListIO& GEOMBase_Helper::selectedIO() -{ - mySelected.Clear(); - - SalomeApp_Application* app = dynamic_cast< SalomeApp_Application* >( SUIT_Session::session()->activeApplication() ); - if ( app ) { - LightApp_SelectionMgr* aSelMgr = app->selectionMgr(); - if ( aSelMgr ) - aSelMgr->selectedObjects( mySelected ); - } - - return mySelected; -} - -//================================================================ -// Function : IObjectCount -// Purpose : Return the number of selected objects -//================================================================ -int GEOMBase_Helper::IObjectCount() -{ - return selectedIO().Extent(); -} - -//================================================================ -// Function : firstIObject -// Purpose : Return the first selected object in the selected object list -//================================================================ -Handle(SALOME_InteractiveObject) GEOMBase_Helper::firstIObject() -{ - const SALOME_ListIO& aList = selectedIO(); - return aList.Extent() > 0 ? aList.First() : Handle(SALOME_InteractiveObject)(); -} - -//================================================================ -// Function : lastIObject -// Purpose : Return the last selected object in the selected object list -//================================================================ -Handle(SALOME_InteractiveObject) GEOMBase_Helper::lastIObject() -{ - const SALOME_ListIO& aList = selectedIO(); - return aList.Extent() > 0 ? aList.Last() : Handle(SALOME_InteractiveObject)(); -} - //================================================================ // Function : getDesktop -// Purpose : Returns myDesktop field. Initialized in constructor, usually as dynamic_cast(parentWidget()) +// Purpose : Returns myDesktop field. Initialized in constructor, +// usually as dynamic_cast(parentWidget()) //================================================================ SUIT_Desktop* GEOMBase_Helper::getDesktop() const { @@ -1010,7 +992,7 @@ bool GEOMBase_Helper::selectObjects( ObjectList& objects ) ObjectList::iterator anIter; for ( anIter = objects.begin(); anIter != objects.end(); ++anIter ) { - string entry = getEntry( *anIter ); + std::string entry = getEntry( *anIter ); QString aEntry( entry.c_str() ); LightApp_DataOwner* anOwher = new LightApp_DataOwner( aEntry ); aList.append( anOwher ); @@ -1035,20 +1017,21 @@ bool GEOMBase_Helper::selectObjects( ObjectList& objects ) // Purpose : It should return an object if its founded in study or // return Null object if the object is not founded //================================================================ -GEOM::GEOM_Object_ptr GEOMBase_Helper::findObjectInFather( GEOM::GEOM_Object_ptr theFather, const char* theName) +GEOM::GEOM_Object_ptr GEOMBase_Helper::findObjectInFather (GEOM::GEOM_Object_ptr theFather, + const QString& theName) { SalomeApp_Application* app = dynamic_cast< SalomeApp_Application* >( SUIT_Session::session()->activeApplication() ); SalomeApp_Study* appStudy = dynamic_cast( app->activeStudy() ); _PTR(Study) aDStudy = appStudy->studyDS(); - string IOR = GEOMBase::GetIORFromObject( theFather ); + std::string IOR = GEOMBase::GetIORFromObject( theFather ); _PTR(SObject) SObj ( aDStudy->FindObjectIOR( IOR ) ); bool inStudy = false; GEOM::GEOM_Object_var aReturnObject; for (_PTR(ChildIterator) iit (aDStudy->NewChildIterator( SObj )); iit->More() && !inStudy; iit->Next()) { _PTR(SObject) child (iit->Value()); - QString aChildName = child->GetName(); + QString aChildName = child->GetName().c_str(); if (aChildName == theName) { inStudy = true; CORBA::Object_var corbaObj = GeometryGUI::ClientSObjectToObject(iit->Value()); @@ -1087,14 +1070,14 @@ void GEOMBase_Helper::addSubshapesToFather( QMap for( QMap::Iterator it = theMap.begin(); it != theMap.end(); it++ ) { if ( !anOp->_is_nil() ) { - GEOM::GEOM_Object_var aFatherObj = anOp->GetMainShape( it.data() ); + GEOM::GEOM_Object_var aFatherObj = anOp->GetMainShape( it.value() ); if ( !aFatherObj->_is_nil() ) { - GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aFatherObj, it.key() ); + GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aFatherObj, it.key().toLatin1().data() ); //Add Object to study if its not exist if ( aFindedObject == GEOM::GEOM_Object::_nil() ) GeometryGUI::GetGeomGen()->AddInStudy(GeometryGUI::ClientStudyToStudy(aDStudy), - it.data(), it.key(), aFatherObj ); + it.value(), it.key().toLatin1().data(), aFatherObj ); } } else { diff --git a/src/GEOMBase/GEOMBase_Helper.h b/src/GEOMBase/GEOMBase_Helper.h index 911d6e443..d8bc391d4 100755 --- a/src/GEOMBase/GEOMBase_Helper.h +++ b/src/GEOMBase/GEOMBase_Helper.h @@ -1,44 +1,40 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2004 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMBase_Helper.h +// Author : Sergey ANIKIN, Open CASCADE S.A.S. (sergey.anikin@opencascade.com) // -// File : GEOMBase_Helper.h -// Author : Sergey ANIKIN -// Module : GEOM -// $Header$ - #ifndef GEOMBASE_HELPER_H #define GEOMBASE_HELPER_H #include "GEOM_GEOMBase.hxx" -#include "GEOM_Displayer.h" -#include "SALOME_Prs.h" -#include "SALOME_ListIO.hxx" +#include +#include #include #include CORBA_CLIENT_HEADER(GEOM_Gen) -#include -#include +#include +#include #include @@ -47,8 +43,8 @@ typedef std::list ObjectList; class SalomeApp_Study; class SUIT_Desktop; class SUIT_ViewWindow; +class SALOME_Prs; class GEOM_Operation; -class TopoDS_Shape; class TColStd_MapOfInteger; //================================================================ @@ -100,6 +96,7 @@ protected: void activate( const int ); void globalSelection( const int = GEOM_ALLOBJECTS, const bool = false ); void globalSelection( const TColStd_MapOfInteger&, const bool = false ); + void globalSelection( const TColStd_MapOfInteger&, const QList& ,const bool = false ); void updateViewer (); void prepareSelection( const ObjectList&, const int ); @@ -134,21 +131,6 @@ protected: inline void setPrefix( const QString& prefix ) { myPrefix = prefix; } QString getPrefix( GEOM::GEOM_Object_ptr = GEOM::GEOM_Object::_nil() ) const; - - const SALOME_ListIO& selectedIO(); - // Function returns a list of SALOME_InteractiveObject's from - // selection manager in GUI - - int IObjectCount() ; - // Function returns the number of selected objects - - Handle(SALOME_InteractiveObject) firstIObject() ; - // Function returns the first selected object in the list - // of selected objects - - Handle(SALOME_InteractiveObject) lastIObject() ; - // Function returns the last selected object in the list - // of selected objects bool selectObjects( ObjectList& objects ); // Selects list of objects @@ -170,15 +152,18 @@ protected: // It should perform the required operation and put all new or modified objects into // argument.Should return if some error occurs during its execution. + virtual void restoreSubShapes( SALOMEDS::Study_ptr theStudy, SALOMEDS::SObject_ptr theSObject ); + // This method is called by addInStudy(). + virtual GEOM::GEOM_Object_ptr getFather( GEOM::GEOM_Object_ptr theObj ); // This method is called by addInStudy(). It should return a father object // for or a nil reference if should be published // as a top-level object. - virtual const char* getNewObjectName() const; + virtual QString getNewObjectName() const; virtual void addSubshapesToStudy(); - GEOM::GEOM_Object_ptr findObjectInFather( GEOM::GEOM_Object_ptr theFather, const char* theName ); + GEOM::GEOM_Object_ptr findObjectInFather( GEOM::GEOM_Object_ptr theFather, const QString& theName ); //This Metod to find SubObject in theFather Object by Name (theName) void addSubshapesToFather( QMap& theMap ); @@ -208,4 +193,4 @@ private: }; -#endif +#endif // GEOMBASE_HELPER_H diff --git a/src/GEOMBase/GEOMBase_Skeleton.cxx b/src/GEOMBase/GEOMBase_Skeleton.cxx index c4e65d0bc..ad5d365d0 100644 --- a/src/GEOMBase/GEOMBase_Skeleton.cxx +++ b/src/GEOMBase/GEOMBase_Skeleton.cxx @@ -1,119 +1,189 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMBase_Skeleton.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// File : GEOMBase_Skeleton.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "GEOMBase_Skeleton.h" +#include "GEOMBase.h" -#include "GeometryGUI.h" +#include +#include -#include "SalomeApp_Application.h" -#include "LightApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "SUIT_Session.h" -#include "SUIT_MessageBox.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include -#include -#include - -using namespace std; +#include +#include +#include //================================================================================= // class : GEOMBase_Skeleton() // purpose : Constructs a GEOMBase_Skeleton which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to -// TRUE to construct a modal dialog. +// true to construct a modal dialog. //================================================================================= -GEOMBase_Skeleton::GEOMBase_Skeleton(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - : DlgRef_Skeleton_QTD( parent, name, modal, WStyle_Customize | WStyle_NormalBorder - | WStyle_Title | WStyle_SysMenu | WDestructiveClose ), - GEOMBase_Helper( dynamic_cast( parent ) ), - myGeomGUI( theGeometryGUI ) +GEOMBase_Skeleton::GEOMBase_Skeleton( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl ) + : QDialog( parent, fl ), + GEOMBase_Helper( dynamic_cast( parent ) ), + myGeomGUI( theGeometryGUI ), + myRBGroup( 0 ) { - if (!name) - setName("GEOMBase_Skeleton"); + setAttribute( Qt::WA_DeleteOnClose ); - GroupBoxName->setTitle(tr("GEOM_RESULT_NAME_GRP")); - NameLabel->setText(tr("GEOM_RESULT_NAME_LBL")); + setModal( modal ); - buttonCancel->setText(tr("GEOM_BUT_CLOSE")); - buttonOk->setText(tr("GEOM_BUT_OK")); - buttonApply->setText(tr("GEOM_BUT_APPLY")); - buttonHelp->setText(tr("GEOM_BUT_HELP")); + myMainFrame = new DlgRef_Skeleton( this ); + QVBoxLayout* topLayout = new QVBoxLayout( this ); + topLayout->setMargin( 0 ); topLayout->setSpacing( 0 ); + topLayout->addWidget( myMainFrame ); - resize(0, 0); + myMainFrame->GroupBoxName->setTitle( tr( "GEOM_RESULT_NAME_GRP" ) ); + myMainFrame->NameLabel->setText( tr( "GEOM_RESULT_NAME_LBL" ) ); + + myMainFrame->GroupBoxPublish->setTitle( tr( "GEOM_PUBLISH_RESULT_GRP" ) ); + myMainFrame->CheckBoxRestoreSS->setText( tr( "GEOM_RESTORE_SUB_SHAPES" ) ); + + buttonCancel()->setText( tr( "GEOM_BUT_CLOSE" ) ); + buttonOk()->setText( tr( "GEOM_BUT_APPLY_AND_CLOSE" ) ); + buttonApply()->setText( tr( "GEOM_BUT_APPLY" ) ); + buttonHelp()->setText( tr( "GEOM_BUT_HELP" ) ); + + myRBGroup = new QButtonGroup( this ); + myRBGroup->addButton( myMainFrame->RadioButton1, 0 ); + myRBGroup->addButton( myMainFrame->RadioButton2, 1 ); + myRBGroup->addButton( myMainFrame->RadioButton3, 2 ); + myRBGroup->addButton( myMainFrame->RadioButton4, 3 ); + myRBGroup->addButton( myMainFrame->RadioButton5, 4 ); + + connect( myRBGroup, SIGNAL( buttonClicked( int ) ), this, SIGNAL( constructorsClicked( int ) ) ); Init(); } - //================================================================================= // function : ~GEOMBase_Skeleton() // purpose : Destroys the object and frees any allocated resources //================================================================================= GEOMBase_Skeleton::~GEOMBase_Skeleton() { - if (myGeomGUI) + if ( myGeomGUI ) myGeomGUI->SetActiveDialogBox( 0 ); } - //================================================================================= // function : Init() // purpose : //================================================================================= void GEOMBase_Skeleton::Init() { - SalomeApp_Application* app = (SalomeApp_Application*)(SUIT_Session::session()->activeApplication()); - if (!myGeomGUI && app) + SalomeApp_Application* app = (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ); + if ( !myGeomGUI && app ) myGeomGUI = dynamic_cast( app->module( "Geometry" ) ); /* init variables */ - myGeomGUI->SetActiveDialogBox(this); + if ( myGeomGUI ) + myGeomGUI->SetActiveDialogBox( this ); /* signals and slots connections */ - connect(buttonCancel, SIGNAL(clicked()), this, SLOT(ClickOnCancel())); - if (myGeomGUI) - { - connect(myGeomGUI, SIGNAL(SignalDeactivateActiveDialog()), this, SLOT(DeactivateActiveDialog())); - connect(myGeomGUI, SIGNAL(SignalCloseAllDialogs()), this, SLOT(ClickOnCancel())); + connect( buttonCancel(), SIGNAL( clicked() ), this, SLOT( ClickOnCancel() ) ); + if ( myGeomGUI ) { + connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), this, SLOT( DeactivateActiveDialog() ) ); + connect( myGeomGUI, SIGNAL( SignalCloseAllDialogs() ), this, SLOT( ClickOnCancel() ) ); } // connect help button on a private slot that displays help information - connect( buttonHelp, SIGNAL( clicked() ), this, SLOT( ClickOnHelp() ) ); + connect( buttonHelp(), SIGNAL( clicked() ), this, SLOT( ClickOnHelp() ) ); /* displays Dialog */ - RadioButton1->setChecked(TRUE); - RadioButton4->hide(); + myMainFrame->RadioButton1->setChecked( true ); + myMainFrame->RadioButton4->hide(); + myMainFrame->RadioButton5->hide(); - return; + myMainFrame->CheckBoxRestoreSS->setChecked( false ); + myMainFrame->GroupBoxPublish->hide(); } +//================================================================================= +// function : initSpinBox() +// purpose : +//================================================================================= +void GEOMBase_Skeleton::initSpinBox( QSpinBox* spinBox, + int min, int max, int step ) +{ + spinBox->setRange( min, max ); + spinBox->setSingleStep( step ); +} + +//================================================================================= +// function : initSpinBox() +// purpose : +//================================================================================= +void GEOMBase_Skeleton::initSpinBox( SalomeApp_DoubleSpinBox* spinBox, + double min, double max, + double step, int decimals ) +{ + spinBox->setPrecision( decimals ); + spinBox->setDecimals( decimals ); // it's necessary to set decimals before the range setting, + // by default Qt rounds boundaries to 2 decimals at setRange + spinBox->setRange( min, max ); + spinBox->setSingleStep( step ); +} + +//================================================================================= +// function : updateAttributes() +// purpose : Workaround for Translation and Rotation operations with unchecked option "Create a copy". +// In this case PublishInStudy isn't called, so we need to update object's attributes manually +//================================================================================= +void GEOMBase_Skeleton::updateAttributes( GEOM::GEOM_Object_ptr theObj, + const QStringList& theParameters) +{ + SALOMEDS::Study_var aStudy = GeometryGUI::ClientStudyToStudy(getStudy()->studyDS()); + SALOMEDS::StudyBuilder_var aStudyBuilder = aStudy->NewBuilder(); + SALOMEDS::SObject_var aSObject = aStudy->FindObjectID(theObj->GetStudyEntry()); + SALOMEDS::GenericAttribute_var anAttr = aStudyBuilder->FindOrCreateAttribute(aSObject, "AttributeString"); + SALOMEDS::AttributeString_var aStringAttrib = SALOMEDS::AttributeString::_narrow(anAttr); + + std::string aValue = aStringAttrib->Value(); + if( aValue != "" ) + aValue += "|"; + for( int i = 0, n = theParameters.count(); i < n; i++ ) { + std::string aParameter = theParameters[i].toStdString(); + if(aStudy->IsVariable(aParameter.c_str())) + aValue += aParameter; + if(i != n-1) + aValue += ":"; + } + aStringAttrib->SetValue(aValue.c_str()); +} //================================================================================= // function : ClickOnCancel() @@ -124,14 +194,13 @@ void GEOMBase_Skeleton::ClickOnCancel() close(); } - //================================================================================= // function : LineEditReturnPressed() // purpose : //================================================================================= void GEOMBase_Skeleton::LineEditReturnPressed() { - if ( !myEditCurrentArgument ) + if (!myEditCurrentArgument) return; /* User name of object input management */ @@ -139,29 +208,30 @@ void GEOMBase_Skeleton::LineEditReturnPressed() /* so SelectionIntoArgument() is automatically called. */ const QString objectUserName = myEditCurrentArgument->text(); QWidget* thisWidget = (QWidget*)this; - - if(GEOMBase::SelectionByNameInDialogs(thisWidget, objectUserName, selectedIO())) - myEditCurrentArgument->setText(objectUserName); - return; + SALOME_ListIO aList; + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + if (aSelMgr) + aSelMgr->selectedObjects(aList); + if (GEOMBase::SelectionByNameInDialogs(thisWidget, objectUserName, aList)) + myEditCurrentArgument->setText(objectUserName); } - //================================================================================= // function : DeactivateActiveDialog() // purpose : //================================================================================= void GEOMBase_Skeleton::DeactivateActiveDialog() { - this->setEnabled(false); + this->setEnabled( false ); globalSelection(); - disconnect( ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), 0, this, 0); - if (myGeomGUI) myGeomGUI->SetActiveDialogBox(0); - - return; + if ( myGeomGUI ) { + myGeomGUI->SetActiveDialogBox( 0 ); + disconnect( myGeomGUI->getApp()->selectionMgr(), 0, this, 0 ); + } + erasePreview(); } - //================================================================================= // function : ActivateThisDialog() // purpose : @@ -169,23 +239,21 @@ void GEOMBase_Skeleton::DeactivateActiveDialog() void GEOMBase_Skeleton::ActivateThisDialog() { /* Emit a signal to deactivate the active dialog */ - if (myGeomGUI) myGeomGUI->EmitSignalDeactivateDialog(); - this->setEnabled(true); - if (myGeomGUI) myGeomGUI->SetActiveDialogBox((QDialog*)this); + if ( myGeomGUI ) myGeomGUI->EmitSignalDeactivateDialog(); + this->setEnabled( true ); + if ( myGeomGUI ) myGeomGUI->SetActiveDialogBox( (QDialog*)this ); return; } - //================================================================================= // function : closeEvent() // purpose : same than click on cancel button //================================================================================= -void GEOMBase_Skeleton::closeEvent(QCloseEvent* e) +void GEOMBase_Skeleton::closeEvent( QCloseEvent* e ) { - SalomeApp_Application* app = (SalomeApp_Application*)(SUIT_Session::session()->activeApplication()); - if(app) { - disconnect( app->selectionMgr(), 0, this, 0); - app->updateActions(); + if ( myGeomGUI ) { + disconnect( myGeomGUI->getApp()->selectionMgr(), 0, this, 0 ); + myGeomGUI->getApp()->updateActions(); } QDialog::closeEvent( e ); } @@ -194,20 +262,20 @@ void GEOMBase_Skeleton::closeEvent(QCloseEvent* e) // function : initName() // purpose : initialize the Name field with a string "thePrefix_X" (Vertex_3) //================================================================================= -void GEOMBase_Skeleton::initName( const char* thePrefix ) +void GEOMBase_Skeleton::initName( const QString& thePrefix ) { - if ( thePrefix ) + if ( !thePrefix.isNull() ) setPrefix( thePrefix ); - ResultName->setText( GEOMBase::GetDefaultName( getPrefix() ) ); + myMainFrame->ResultName->setText( GEOMBase::GetDefaultName( getPrefix() ) ); } //================================================================================= // function : getNewObjectName() // purpose : returns contents of Name field //================================================================================= -const char* GEOMBase_Skeleton::getNewObjectName() const +QString GEOMBase_Skeleton::getNewObjectName() const { - return ResultName->text(); + return myMainFrame->ResultName->text(); } //================================================================================= @@ -216,41 +284,77 @@ const char* GEOMBase_Skeleton::getNewObjectName() const //================================================================================= int GEOMBase_Skeleton::getConstructorId() const { - if ( GroupConstructors != NULL && GroupConstructors->selected() != NULL ) - return GroupConstructors->id( GroupConstructors->selected() ); + if ( myRBGroup ) + return myRBGroup->checkedId(); return -1; } +void GEOMBase_Skeleton::setConstructorId( const int id ) +{ + if ( myRBGroup && myRBGroup->button( id ) ) + myRBGroup->button( id )->setChecked( true ); +} + //================================================================================= // function : ClickOnHelp() // purpose : //================================================================================= void GEOMBase_Skeleton::ClickOnHelp() { - LightApp_Application* app = (LightApp_Application*)(SUIT_Session::session()->activeApplication()); - if (app) - app->onHelpContextModule(myGeomGUI ? app->moduleName(myGeomGUI->moduleName()) : QString(""), myHelpFileName); + LightApp_Application* app = (LightApp_Application*)( SUIT_Session::session()->activeApplication() ); + if ( app ) + app->onHelpContextModule( myGeomGUI ? app->moduleName( myGeomGUI->moduleName() ) : QString(""), myHelpFileName ); else { - QString platform; + QString platform; #ifdef WIN32 - platform = "winapplication"; + platform = "winapplication"; #else - platform = "application"; + platform = "application"; #endif - SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"), - QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE"). - arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(myHelpFileName), - QObject::tr("BUT_OK")); + SUIT_MessageBox::warning( 0, QObject::tr( "WRN_WARNING" ), + QObject::tr( "EXTERNAL_BROWSER_CANNOT_SHOW_PAGE" ). + arg( app->resourceMgr()->stringValue( "ExternalBrowser", platform ) ).arg( myHelpFileName ), + QObject::tr( "BUT_OK" ) ); } } + //================================================================================= // function : setHelpFileName() // purpose : set name for help file html //================================================================================= - -void GEOMBase_Skeleton::setHelpFileName(const QString& theName) +void GEOMBase_Skeleton::setHelpFileName( const QString& theName ) { - myHelpFileName = theName; + myHelpFileName = theName; +} + +DlgRef_Skeleton* GEOMBase_Skeleton::mainFrame() +{ + return myMainFrame; +} + +QWidget* GEOMBase_Skeleton::centralWidget() +{ + return myMainFrame->GroupMedium; +} + +QPushButton* GEOMBase_Skeleton::buttonCancel() const +{ + return myMainFrame->buttonCancel; +} + +QPushButton* GEOMBase_Skeleton::buttonOk() const +{ + return myMainFrame->buttonOk; +} + +QPushButton* GEOMBase_Skeleton::buttonApply() const +{ + return myMainFrame->buttonApply; +} + +QPushButton* GEOMBase_Skeleton::buttonHelp() const +{ + return myMainFrame->buttonHelp; } //================================================================================= @@ -263,9 +367,8 @@ void GEOMBase_Skeleton::keyPressEvent( QKeyEvent* e ) if ( e->isAccepted() ) return; - if ( e->key() == Key_F1 ) - { - e->accept(); - ClickOnHelp(); - } + if ( e->key() == Qt::Key_F1 ) { + e->accept(); + ClickOnHelp(); + } } diff --git a/src/GEOMBase/GEOMBase_Skeleton.h b/src/GEOMBase/GEOMBase_Skeleton.h index fdd00155b..a9f2c5aa2 100644 --- a/src/GEOMBase/GEOMBase_Skeleton.h +++ b/src/GEOMBase/GEOMBase_Skeleton.h @@ -1,89 +1,113 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMBase_Skeleton.h +// Author : Damine COQUERET, Open CASCADE S.A.S. // -// File : GEOMBase_Skeleton.h -// Author : Damine COQUERET -// Module : GEOM - #ifndef GEOMBASE_SKELETON_H #define GEOMBASE_SKELETON_H #include "GEOM_GEOMBase.hxx" - -#include "DlgRef_Skeleton_QTD.h" - -#include "GEOMBase.h" #include "GEOMBase_Helper.h" -#include "GeometryGUI.h" -#include -#include -#include -#include -#include -#include -#include +#include -class GEOMBASE_EXPORT GEOMBase_Skeleton : public DlgRef_Skeleton_QTD, public GEOMBase_Helper +class SalomeApp_DoubleSpinBox; +class GeometryGUI; +class DlgRef_Skeleton; +class QSpinBox; +class QDoubleSpinBox; +class QLineEdit; +class QButtonGroup; +class QPushButton; + +#ifndef COORD_MIN +# define COORD_MIN -1e+15 +# define COORD_MAX +1e+15 +# define MAX_NUMBER 100000 +# define DBL_DIGITS_DISPLAY 16 +#endif // COORD_MIN + +class GEOMBASE_EXPORT GEOMBase_Skeleton : public QDialog, public GEOMBase_Helper { - Q_OBJECT + Q_OBJECT public: - GEOMBase_Skeleton(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); + GEOMBase_Skeleton( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); ~GEOMBase_Skeleton(); private: void Init(); protected: - void closeEvent(QCloseEvent* e); - void keyPressEvent(QKeyEvent* e); + void initSpinBox( QSpinBox*, int, int, int = 1 ); + void initSpinBox( SalomeApp_DoubleSpinBox*, double, double, double = 0.1, int = 3 ); + + void updateAttributes( GEOM::GEOM_Object_ptr, const QStringList& ); + + void closeEvent( QCloseEvent* ); + void keyPressEvent( QKeyEvent* ); /*! initialize "Name" field with a string "thePrefix_X" (Vertex_3) */ - void initName( const char* thePrefix = 0 ); + void initName( const QString& = QString() ); /*! returns contents of "Name" field */ - virtual const char* getNewObjectName() const; + virtual QString getNewObjectName() const; /*! returns id of a selected "constructor" radio button or '-1' in case of error */ - int getConstructorId() const; + int getConstructorId() const; + /*! set selected "constructor" radio button id + */ + void setConstructorId( const int ); - void setHelpFileName( const QString& ); + void setHelpFileName( const QString& ); - QLineEdit* myEditCurrentArgument; //!< Current LineEdit - GeometryGUI* myGeomGUI; //!< reference GEOM GUI - QString myHelpFileName; + DlgRef_Skeleton* mainFrame(); + QWidget* centralWidget(); + QPushButton* buttonCancel() const; + QPushButton* buttonOk() const; + QPushButton* buttonApply() const; + QPushButton* buttonHelp() const; + +protected: + QLineEdit* myEditCurrentArgument; //!< Current LineEdit + GeometryGUI* myGeomGUI; //!< reference GEOM GUI + QString myHelpFileName; //!< Associated HTML help file name + + QButtonGroup* myRBGroup; //!< radio button group + DlgRef_Skeleton* myMainFrame; //!< dialog box's mainframe widgetx protected slots: - virtual void ClickOnCancel(); - void LineEditReturnPressed(); - void DeactivateActiveDialog(); - void ActivateThisDialog(); - void ClickOnHelp(); + virtual void ClickOnCancel(); + void LineEditReturnPressed(); + void DeactivateActiveDialog(); + void ActivateThisDialog(); + void ClickOnHelp(); + +signals: + void constructorsClicked( int ); }; #endif // GEOMBASE_SKELETON_H diff --git a/src/GEOMBase/GEOMBase_aParameterDlg.cxx b/src/GEOMBase/GEOMBase_aParameterDlg.cxx deleted file mode 100644 index ef6097e18..000000000 --- a/src/GEOMBase/GEOMBase_aParameterDlg.cxx +++ /dev/null @@ -1,159 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOMBase_aParameterDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - -#include "GEOMBase_aParameterDlg.h" -#include "QtxDblSpinBox.h" - -#include - -#include -#include -#include -#include -#include -#include - -#ifndef WNT -using namespace std; -#endif - - -//====================================================================================== -// function : GEOMBase_aParameterDlg() -// purpose : Constructs a GEOMBase_aParametertDlg which is a child of 'parent', with the -// name 'name' and widget flags set to 'f' -// -// avalue1 : is a float or integer used as default value in edit line -// aTitle1 : is the prompt for aValue1 -// aTitle : is the title for the user in dialog box -// -// bottom : the minimal value to be entered -// top : the maximum value to be entered -// decimals : number of decimals to be entered -// -// The dialog will by default be modeless, unless you set 'modal' to -// TRUE to construct a modal dialog. -// -//====================================================================================== -GEOMBase_aParameterDlg::GEOMBase_aParameterDlg(const char *aValue1, const char *aTitle1, QWidget* parent, const char* name, bool modal, WFlags fl, const double bottom, const double top, const int decimals) - :QDialog( parent, name, modal, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) -{ - if(!name) - setName( "MyParameterDialog" ); - resize(288, 81); - setCaption(name); /* appears on the title bar */ - setSizeGripEnabled(TRUE); - - QGridLayout* topLayout = new QGridLayout(this); - topLayout->setSpacing(6); - topLayout->setMargin(11); - - QGroupBox* mainGrp = new QGroupBox(this, "mainGrp"); - mainGrp->setColumnLayout(0, Qt::Vertical); - mainGrp->layout()->setSpacing(0); - mainGrp->layout()->setMargin(0); - QGridLayout* mainGrpLayout = new QGridLayout(mainGrp->layout()); - mainGrpLayout->setAlignment(Qt::AlignTop); - mainGrpLayout ->setSpacing(6); - mainGrpLayout->setMargin(11); - topLayout->addWidget(mainGrp, 0, 0); - - /* aTitle1 : text prompt on left of edit line */ - QLabel* TextLabel1 = new QLabel(mainGrp, "TextLabel1"); - TextLabel1->setText(tr(aTitle1)); - mainGrpLayout->addWidget(TextLabel1, 0, 0); - - mySpinBox = new QtxDblSpinBox(mainGrp, "mySpinBox"); - mySpinBox->setPrecision(12); - mySpinBox->setRange(bottom, top); - ((QDoubleValidator*)(mySpinBox->validator()))->setRange(bottom, top, decimals); - mySpinBox->setValue(QString(aValue1).toDouble()); - mainGrpLayout->addWidget(mySpinBox, 0, 1); - - QGroupBox* btnGrp = new QGroupBox(this, "btnGrp"); - btnGrp->setColumnLayout(0, Qt::Vertical); - btnGrp->layout()->setSpacing(0); - btnGrp->layout()->setMargin(0); - QGridLayout* btnGrpLayout = new QGridLayout(btnGrp->layout()); - btnGrpLayout->setAlignment(Qt::AlignTop); - btnGrpLayout->setSpacing(6); - btnGrpLayout->setMargin(11); - topLayout->addWidget(btnGrp, 1, 0); - - /* Ok button */ - myButtonOk = new QPushButton(btnGrp, "buttonOk"); - myButtonOk->setText(tr("GEOM_BUT_OK")); - myButtonOk->setAutoDefault(TRUE); - myButtonOk->setDefault(TRUE); - btnGrpLayout->addWidget(myButtonOk, 0, 0); - - btnGrpLayout->addItem(new QSpacerItem(5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum), 0, 1); - - /* Cancel button */ - myButtonCancel = new QPushButton(btnGrp, "buttonCancel"); - myButtonCancel->setText(tr("GEOM_BUT_CANCEL")); - myButtonCancel->setAutoDefault(TRUE); - btnGrpLayout->addWidget(myButtonCancel, 0, 2); - - /* signals and slots connections */ - connect(myButtonOk, SIGNAL(clicked()), this, SLOT(accept())); - connect(myButtonCancel, SIGNAL(clicked()), this, SLOT(reject())); - - /* Move widget on the botton right corner of main widget */ - //mzn: QAD_Tools::centerWidget(this, parent); -} - - -//====================================================================================== -// function : ~GEOMBase_aParameterDlg() destructor -// purpose : Destroys the object and frees any allocated resources -//====================================================================================== -GEOMBase_aParameterDlg::~GEOMBase_aParameterDlg() -{ - // no need to delete child widgets, Qt does it all for us -} - - -//====================================================================================== -// function : GEOMBase_aParameterDlg::setValue -// purpose : sets value -//====================================================================================== -void GEOMBase_aParameterDlg::setValue(double val) -{ - mySpinBox->setValue(val); -} - - -//====================================================================================== -// function : GEOMBase_aParameterDlg::getValue -// purpose : gets value -//====================================================================================== -double GEOMBase_aParameterDlg::getValue() -{ - return mySpinBox->value(); -} diff --git a/src/GEOMBase/GEOMBase_aParameterDlg.h b/src/GEOMBase/GEOMBase_aParameterDlg.h deleted file mode 100644 index 8dc1773f7..000000000 --- a/src/GEOMBase/GEOMBase_aParameterDlg.h +++ /dev/null @@ -1,61 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOMBase_aParameterDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - -#ifndef GEOMBase_aParameterDLG_H -#define GEOMBase_aParameterDLG_H - -#include "GEOM_GEOMBase.hxx" - -#include - -class QPushButton; -class QtxDblSpinBox; - -//================================================================================= -// class : GEOMBase_aParameterDlg -// purpose : -//================================================================================= -class GEOMBASE_EXPORT GEOMBase_aParameterDlg : public QDialog -{ - Q_OBJECT - -public: - GEOMBase_aParameterDlg(const char* aValue1 = "25", const char* aTitle1 = "Value :", QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0, const double bottom = -1E6, const double top = +1E6, const int decimals = 6); - ~GEOMBase_aParameterDlg(); - - void setValue(double val); - double getValue(); - -private: - QPushButton* myButtonOk; - QPushButton* myButtonCancel; - QtxDblSpinBox* mySpinBox; - -}; - -#endif // GEOMBase_aParameterDlg.h diff --git a/src/GEOMBase/GEOMBase_aWarningDlg.cxx b/src/GEOMBase/GEOMBase_aWarningDlg.cxx deleted file mode 100644 index 52a453035..000000000 --- a/src/GEOMBase/GEOMBase_aWarningDlg.cxx +++ /dev/null @@ -1,126 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOMBase_aWarningDlg.cxx -// Author : Dmitry Matveitchev -// Module : GEOM -// $Header: /home/server/cvs/GEOM/GEOM_SRC/src/GEOMBase/GEOMBase_aWarningDlg.cxx - -#include "GEOMBase_aWarningDlg.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#ifndef WNT -using namespace std; -#endif - -GEOMBase_aWarningDlg::GEOMBase_aWarningDlg( QWidget* parent, const char* name, const QString theText, int theNum ) - :QDialog( parent, name ) -{ - if(!name) - setName( "Warning" ); - if ( theNum < 15 ) - resize(296, (120 + (14*theNum)) ); - else - resize(296, 300); - setCaption(name); /* appears on the title bar */ - setSizeGripEnabled(TRUE); - - QGridLayout* topLayout = new QGridLayout(this); - topLayout->setSpacing(6); - topLayout->setMargin(11); - - QGroupBox* mainGrp = new QGroupBox(this, "mainGrp"); - mainGrp->setColumnLayout(0, Qt::Vertical); - mainGrp->layout()->setSpacing(0); - mainGrp->layout()->setMargin(0); - - QGridLayout* mainGrpLayout = new QGridLayout(mainGrp->layout()); - mainGrpLayout->setAlignment(Qt::AlignTop); - mainGrpLayout ->setSpacing(6); - mainGrpLayout->setMargin(11); - topLayout->addWidget(mainGrp, 0, 0); - - QLabel* TextLabel = new QLabel(mainGrp, "TextLabel"); - TextLabel->setText( QObject::tr( "GEOM_REALLY_DELETE" ).arg( theNum ) ); - mainGrpLayout->addWidget(TextLabel, 0, 0); - - QScrollView* viewer = new QScrollView (mainGrp, "viewer"); - viewer->setResizePolicy( QScrollView::AutoOneFit ); - QLabel* TextLabel1 = new QLabel(viewer, "TextLabel1"); - TextLabel1->setText( theText ); - TextLabel1->setAlignment(Qt::AlignTop); - viewer->addChild(TextLabel1); - mainGrpLayout->addWidget(viewer, 1, 0); - - //Create Buttons - - QGroupBox* btnGrp = new QGroupBox(this, "btnGrp"); - btnGrp->setColumnLayout(0, Qt::Vertical); - btnGrp->layout()->setSpacing(0); - btnGrp->layout()->setMargin(0); - QGridLayout* btnGrpLayout = new QGridLayout(btnGrp->layout()); - btnGrpLayout->setAlignment(Qt::AlignTop); - btnGrpLayout->setSpacing(6); - btnGrpLayout->setMargin(11); - topLayout->addWidget(btnGrp, 1, 0); - - /* No button */ - myButtonOk = new QPushButton(btnGrp, "buttonOk"); - myButtonOk->setText(tr("GEOM_BUT_YES")); - myButtonOk->setAutoDefault(TRUE); - btnGrpLayout->addWidget(myButtonOk, 0, 0); - - btnGrpLayout->addItem(new QSpacerItem(5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum), 0, 1); - - /* Yes button */ - myButtonCancel = new QPushButton(btnGrp, "buttonCancel"); - myButtonCancel->setText(tr("GEOM_BUT_NO")); - myButtonCancel->setAutoDefault(TRUE); - myButtonCancel->setDefault(TRUE); - btnGrpLayout->addWidget(myButtonCancel, 0, 2); - - /* signals and slots connections */ - connect(myButtonOk, SIGNAL(clicked()), this, SLOT(accept())); - connect(myButtonCancel, SIGNAL(clicked()), this, SLOT(reject())); -} - - -//====================================================================================== -// function : ~GEOMBase_aWarningDlg() destructor -// purpose : Destroys the object and frees any allocated resources -//====================================================================================== -GEOMBase_aWarningDlg::~GEOMBase_aWarningDlg() -{ - // no need to delete child widgets, Qt does it all for us -} - - - diff --git a/src/GEOMBase/GEOMBase_aWarningDlg.h b/src/GEOMBase/GEOMBase_aWarningDlg.h deleted file mode 100644 index 6601062bb..000000000 --- a/src/GEOMBase/GEOMBase_aWarningDlg.h +++ /dev/null @@ -1,56 +0,0 @@ -// GEOM GEOMGUI : GUI for Geometry component -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOMBase_aWarningDlg.h -// Author : Dmitry Matveitchev -// Module : GEOM -// $Header: /home/server/cvs/GEOM/GEOM_SRC/src/GEOMBase/GEOMBase_aWarningDlg.h - -#ifndef GEOMBase_aWarningDLG_H -#define GEOMBase_aWarningDLG_H - -#include -#include - -class QString; -class QPushButton; - -//================================================================================= -// class : GEOMBase_aWarningDlg -// purpose : -//================================================================================= -class GEOMBase_aWarningDlg : public QDialog -{ - Q_OBJECT - -public: - GEOMBase_aWarningDlg( QWidget* parent, const char* name, QString theText, int nb ); - ~GEOMBase_aWarningDlg(); - -private: - QPushButton* myButtonOk; - QPushButton* myButtonCancel; - -}; - -#endif diff --git a/src/GEOMBase/GEOM_GEOMBase.hxx b/src/GEOMBase/GEOM_GEOMBase.hxx index 99b371671..8f19982a4 100755 --- a/src/GEOMBase/GEOM_GEOMBase.hxx +++ b/src/GEOMBase/GEOM_GEOMBase.hxx @@ -1,47 +1,38 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// 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. // -// File : GEOM_GEOMBase.hxx -// Author : Alexander A. BORODIN -// Module : GEOM +// 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 : GEOM_GEOMBase.hxx +// Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +// +#ifndef GEOM_GEOMBASE_HXX +#define GEOM_GEOMBASE_HXX -#ifndef _GEOM_GEOMBase_HXX_ -#define _GEOM_GEOMBase_HXX_ - -#ifdef WNT - #if defined GEOMBASE_EXPORTS - #if defined WIN32 - #define GEOMBASE_EXPORT __declspec( dllexport ) - #else - #define GEOMBASE_EXPORT - #endif - #else - #if defined WIN32 - #define GEOMBASE_EXPORT __declspec( dllimport ) - #else - #define GEOMBASE_EXPORT - #endif - #endif +#if defined WIN32 +# if defined GEOMBASE_EXPORTS +# define GEOMBASE_EXPORT __declspec( dllexport ) +# else +# define GEOMBASE_EXPORT __declspec( dllimport ) +# endif #else - #define GEOMBASE_EXPORT +# define GEOMBASE_EXPORT #endif -#endif +#endif // GEOM_GEOMBASE_HXX diff --git a/src/GEOMBase/GEOM_Operation.cxx b/src/GEOMBase/GEOM_Operation.cxx index 1e6d475c5..060f4e26d 100644 --- a/src/GEOMBase/GEOM_Operation.cxx +++ b/src/GEOMBase/GEOM_Operation.cxx @@ -1,35 +1,32 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2004 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOM_Operation.cxx +// Author : Sergey ANIKIN, Open CASCADE S.A.S. (sergey.anikin@opencascade.com) // -// File : GEOM_Operation.cxx -// Author : Sergey ANIKIN -// Module : GEOM -// $Header$ - #include "GEOM_Operation.h" -#include "SUIT_Application.h" -#include "SalomeApp_Tools.h" +#include +#include //================================================================ @@ -62,7 +59,7 @@ void GEOM_Operation::startOperation() try { myIOperation->StartOperation(); } - catch( const SALOME::SALOME_Exception& e ) { + catch ( const SALOME::SALOME_Exception& e ) { SalomeApp_Tools:: QtCatchCorbaException( e ); } } @@ -80,7 +77,7 @@ void GEOM_Operation::commitOperation() try { myIOperation->FinishOperation(); } - catch( const SALOME::SALOME_Exception& e ) { + catch ( const SALOME::SALOME_Exception& e ) { SalomeApp_Tools:: QtCatchCorbaException( e ); } } @@ -116,7 +113,7 @@ void GEOM_Operation::abortOperation() try { myIOperation->AbortOperation(); } - catch( const SALOME::SALOME_Exception& e ) { + catch ( const SALOME::SALOME_Exception& e ) { SalomeApp_Tools::QtCatchCorbaException( e ); } } diff --git a/src/GEOMBase/GEOM_Operation.h b/src/GEOMBase/GEOM_Operation.h index c6654a9ea..39e9fd682 100644 --- a/src/GEOMBase/GEOM_Operation.h +++ b/src/GEOMBase/GEOM_Operation.h @@ -1,41 +1,37 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2004 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOM_Operation.h +// Author : Sergey ANIKIN, Open CASCADE S.A.S. (sergey.anikin@opencascade.com) // -// File : GEOM_Operation.h -// Author : Sergey ANIKIN -// Module : GEOM -// $Header$ - #ifndef GEOM_OPERATION_H #define GEOM_OPERATION_H #include "GEOM_GEOMBase.hxx" -#include "SUIT_Operation.h" +#include #include #include CORBA_CLIENT_HEADER(GEOM_Gen) - class GEOMBASE_EXPORT GEOM_Operation : public SUIT_Operation { public: @@ -44,14 +40,14 @@ public: protected: // Reimplemented from SUIT_Operation - virtual void startOperation(); - virtual void commitOperation(); - virtual void suspendOperation(); - virtual void resumeOperation(); - virtual void abortOperation(); + virtual void startOperation(); + virtual void commitOperation(); + virtual void suspendOperation(); + virtual void resumeOperation(); + virtual void abortOperation(); private: GEOM::GEOM_IOperations_var myIOperation; }; -#endif +#endif // GEOM_OPERATION_H diff --git a/src/GEOMBase/Makefile.am b/src/GEOMBase/Makefile.am index 078b1c4a2..5c7b9bdb9 100644 --- a/src/GEOMBase/Makefile.am +++ b/src/GEOMBase/Makefile.am @@ -1,95 +1,79 @@ -# GEOM GEOMBASE : +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# GEOM GEOMBASE : +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : GEOMBase # -# File : Makefile.in -# Author : Damien COQUERET (OCC) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header: - include $(top_srcdir)/adm_local/unix/make_common_starter.am # Libraries targets lib_LTLIBRARIES = libGEOMBase.la # header files -salomeinclude_HEADERS = \ - GEOMBase.h \ - GEOMBase_Skeleton.h \ - GEOMBase_Helper.h \ - GEOM_Operation.h \ - GEOMBase_aWarningDlg.h \ +salomeinclude_HEADERS = \ + GEOMBase.h \ + GEOMBase_Skeleton.h \ + GEOMBase_Helper.h \ + GEOM_Operation.h \ GEOM_GEOMBase.hxx -dist_libGEOMBase_la_SOURCES = \ - GEOMBase.cxx \ - GEOMBase_Skeleton.cxx \ - GEOMBase_aParameterDlg.cxx \ - GEOMBase_Helper.cxx \ - GEOMBase_aWarningDlg.cxx \ +dist_libGEOMBase_la_SOURCES = \ + GEOMBase.cxx \ + GEOMBase_Skeleton.cxx \ + GEOMBase_Helper.cxx \ GEOM_Operation.cxx -MOC_FILES = \ - GEOMBase_Skeleton_moc.cxx \ - GEOMBase_aWarningDlg_moc.cxx \ - GEOMBase_aParameterDlg_moc.cxx +MOC_FILES = \ + GEOMBase_Skeleton_moc.cxx -nodist_libGEOMBase_la_SOURCES= \ - $(MOC_FILES) +nodist_libGEOMBase_la_SOURCES = \ + $(MOC_FILES) -#LIB_CLIENT_IDL = SALOME_Exception.idl \ -# SALOMEDS.idl \ -# SALOMEDS_Attributes.idl \ -# SALOME_GenericObj.idl \ -# SALOME_Component.idl \ -# GEOM_Gen.idl +# additional information to compile and link file -#LIB_SERVER_IDL = - -# additionnal information to compil and link file - -libGEOMBase_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(VTK_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(PYTHON_INCLUDES) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../OBJECT \ - -I$(srcdir)/../GEOMClient \ - -I$(srcdir)/../GEOMImpl \ - -I$(srcdir)/../GEOMGUI \ - -I$(srcdir)/../DlgRef \ - -I$(top_builddir)/idl \ +libGEOMBase_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(VTK_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(PYTHON_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../OBJECT \ + -I$(srcdir)/../GEOMClient \ + -I$(srcdir)/../GEOMImpl \ + -I$(srcdir)/../GEOMGUI \ + -I$(srcdir)/../DlgRef \ + -I$(top_builddir)/src/DlgRef \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libGEOMBase_la_LDFLAGS = \ - ../../idl/libSalomeIDLGEOM.la \ - ../GEOMGUI/libGEOM.la \ - ../DlgRef/libDlgRef.la \ - $(KERNEL_LDFLAGS) -lOpUtil \ +libGEOMBase_la_LDFLAGS = \ + ../../idl/libSalomeIDLGEOM.la \ + ../GEOMGUI/libGEOM.la \ + ../DlgRef/libDlgRef.la \ + $(KERNEL_LDFLAGS) -lOpUtil \ $(GUI_LDFLAGS) -lsuit -lOCCViewer -lVTKViewer -lSVTK -lSalomePrs -lSalomeApp -lCAM \ $(CAS_LDPATH) -lTKPrim diff --git a/src/GEOMClient/GEOMClient.pro b/src/GEOMClient/GEOMClient.pro new file mode 100644 index 000000000..db1ca7959 --- /dev/null +++ b/src/GEOMClient/GEOMClient.pro @@ -0,0 +1,60 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = GEOMClient +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CORBA_INCLUDES = $$(OMNIORBDIR)/include $$(OMNIORBDIR)/include/omniORB4 $$(OMNIORBDIR)/include/COS + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +CAS_TKTopAlgo = -L$${CASROOT}/Linux/lib -lTKG2d -lTKG3d -lTKGeomBase -lTKBRep -lTKGeomAlgo -lTKTopAlgo + +CORBA_LIBS = -L$$(OMNIORBDIR)/lib -lomniORB4 -lomniDynamic4 -lCOS4 -lCOSDynamic4 -lomnithread + +STDLIB = -lstdc++ + +INCLUDEPATH += $${CORBA_INCLUDES} $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} $$(GEOM_ROOT_DIR)/idl ../../salome_adm/unix + +LIBS += -L$$(GEOM_ROOT_DIR)/idl -lSalomeIDLGEOM -L$$(GEOM_ROOT_DIR)/lib -lGEOMbasic $${KERNEL_LDFLAGS} -lSalomeIDLKernel -lOpUtil $${CAS_TKTopAlgo} $${CORBA_LIBS} $${STDLIB} + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += GEOMCLIENT_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS OMNIORB_VERSION=4 __x86__ __linux__ COMP_CORBA_DOUBLE COMP_CORBA_LONG + +HEADERS = GEOM_Client.hxx + +SOURCES = GEOM_Client.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/GEOMClient/GEOM_Client.cxx b/src/GEOMClient/GEOM_Client.cxx index 5f89234b9..88bd374a3 100644 --- a/src/GEOMClient/GEOM_Client.cxx +++ b/src/GEOMClient/GEOM_Client.cxx @@ -1,33 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM GEOMClient : tool to transfer BREP files from GEOM server to GEOM client -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_Client.cxx // Author : Yves FRICAUD/Lucien PIGNOLONI // Module : GEOM // $Header$ - -using namespace std; - +// #include #include @@ -36,7 +33,7 @@ using namespace std; #include "GEOM_Client.hxx" #include -#include "OpUtil.hxx" +#include "Basics_Utils.hxx" #include "utilities.h" #include @@ -68,7 +65,7 @@ using namespace std; //======================================================================= TopoDS_Shape GEOM_Client::Load( GEOM::GEOM_Gen_ptr geom, GEOM::GEOM_Object_ptr aShape ) { - string hst_client = GetHostname(); + std::string hst_client = Kernel_Utils::GetHostname(); Engines::Container_var ctn_server = geom->GetContainerRef(); long pid_server = ctn_server->getPID(); @@ -83,7 +80,7 @@ TopoDS_Shape GEOM_Client::Load( GEOM::GEOM_Gen_ptr geom, GEOM::GEOM_Object_ptr a int sizebuf = SeqFile->length(); char* buf; buf = (char*) &SeqFile[0]; - istrstream streamBrep(buf,sizebuf); + std::istrstream streamBrep(buf,sizebuf); BRep_Builder aBuilder; BRepTools::Read(S, streamBrep, aBuilder); return(S); diff --git a/src/GEOMClient/GEOM_Client.hxx b/src/GEOMClient/GEOM_Client.hxx index 161fcc105..ba7a9ef6d 100644 --- a/src/GEOMClient/GEOM_Client.hxx +++ b/src/GEOMClient/GEOM_Client.hxx @@ -1,31 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM GEOMClient : tool to transfer BREP files from GEOM server to GEOM client -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_Client.hxx // Author : Yves FRICAUD // Module : GEOM // $Header$ - +// #ifndef _GEOM_Client_HeaderFile #define _GEOM_Client_HeaderFile diff --git a/src/GEOMClient/Makefile.am b/src/GEOMClient/Makefile.am index 9b1cc44c9..6db3208fe 100644 --- a/src/GEOMClient/Makefile.am +++ b/src/GEOMClient/Makefile.am @@ -1,60 +1,61 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM GEOMClient : tool to transfer BREP files from GEOM server to GEOM client -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : Makefile.in # Author : Patrick GOLDBRONN (CEA) # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header$ - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files -salomeinclude_HEADERS = \ - GEOM_Client.hxx - +salomeinclude_HEADERS = \ + GEOM_Client.hxx # Libraries targets lib_LTLIBRARIES = libGEOMClient.la # Sources files -dist_libGEOMClient_la_SOURCES = \ +dist_libGEOMClient_la_SOURCES = \ GEOM_Client.cxx -# additionnal information to compil and link file -libGEOMClient_la_CPPFLAGS = \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - -I$(top_builddir)/idl \ +# additional information to compile and link file + +libGEOMClient_la_CPPFLAGS = \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libGEOMClient_la_LDFLAGS = \ - ../../idl/libSalomeIDLGEOM.la \ - ../GEOM/libGEOMbasic.la \ - $(KERNEL_LDFLAGS) -lSalomeIDLKernel -lOpUtil \ - $(CAS_TKTopAlgo) \ - $(CORBA_LIBS) \ - $(STDLIB) +libGEOMClient_la_LDFLAGS = \ + ../../idl/libSalomeIDLGEOM.la \ + ../GEOM/libGEOMbasic.la \ + $(KERNEL_LDFLAGS) -lSalomeIDLKernel -lOpUtil \ + $(CAS_TKTopAlgo) + +# \ +# $(CORBA_LIBS) \ +# #$(STDLIB) diff --git a/src/GEOMDS/GEOMDS_Commands.cxx b/src/GEOMDS/GEOMDS_Commands.cxx index 54facab66..315aa6ca5 100644 --- a/src/GEOMDS/GEOMDS_Commands.cxx +++ b/src/GEOMDS/GEOMDS_Commands.cxx @@ -1,31 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM GEOMDS : implementation of Geometry component data structure and Geometry documents management -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GeomDS_Commands.cxx // Author : Yves FRICAUD/Lucien PIGNOLONI // Module : GEOM // $Header$ - +// using namespace std; #include "utilities.h" #include "GEOMDS_Commands.ixx" diff --git a/src/GEOMDS/GEOMDS_Commands.jxx b/src/GEOMDS/GEOMDS_Commands.jxx index 879a3ac7b..662528e63 100644 --- a/src/GEOMDS/GEOMDS_Commands.jxx +++ b/src/GEOMDS/GEOMDS_Commands.jxx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM GEOMDS : implementation of Geometry component data structure and Geometry documents management -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOMDS_Commands.jxx // Module : GEOM - +// #ifndef _TDF_Label_HeaderFile #include #endif diff --git a/src/GEOMFiltersSelection/GEOMFiltersSelection.pro b/src/GEOMFiltersSelection/GEOMFiltersSelection.pro new file mode 100644 index 000000000..7654802e5 --- /dev/null +++ b/src/GEOMFiltersSelection/GEOMFiltersSelection.pro @@ -0,0 +1,74 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = GEOMFiltersSelection +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +QT_INCLUDES = $$(QTDIR)/include $$(QTDIR)/include/QtCore $$(QTDIR)/include/QtGui $$(QTDIR)/include/QtOpenGL $$(QTDIR)/include/QtXml + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +BOOST_CPPFLAGS = $$(BOOSTDIR)/include + +GUI_CXXFLAGS = $$(GUI_ROOT_DIR)/include/salome + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +CORBA_INCLUDES = $$(OMNIORBDIR)/include $$(OMNIORBDIR)/include/omniORB4 $$(OMNIORBDIR)/include/COS + +GUI_LDFLAGS = -L$$(GUI_ROOT_DIR)/lib/salome + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +INCLUDEPATH += $${QT_INCLUDES} $${CAS_CPPFLAGS} $${BOOST_CPPFLAGS} $${GUI_CXXFLAGS} $${KERNEL_CXXFLAGS} $${CORBA_CXXFLAGS} $${CORBA_INCLUDES} ../GEOMClient $$(GEOM_ROOT_DIR)/idl $$(GEOM_ROOT_DIR)/salome_adm/unix + +LIBS += -L$$(GEOM_ROOT_DIR)/idl -lSalomeIDLGEOM -L$$(GEOM_ROOT_DIR)/lib -lGEOMClient $${GUI_LDFLAGS} -lsuit -lSalomeApp -lSalomeSession $${KERNEL_LDFLAGS} -lSalomeLifeCycleCORBA -lSalomeContainer -lTOOLSDS + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS OMNIORB_VERSION=4 __x86__ __linux__ COMP_CORBA_DOUBLE COMP_CORBA_LONG + +HEADERS = GEOM_SelectionFilter.h +HEADERS += GEOM_EdgeFilter.h +HEADERS += GEOM_FaceFilter.h +HEADERS += GEOM_TypeFilter.h +HEADERS += GEOM_PreviewFilter.h +HEADERS += GEOM_LogicalFilter.h +HEADERS += GEOM_OCCFilter.h + +SOURCES = GEOM_SelectionFilter.cxx +SOURCES += GEOM_EdgeFilter.cxx +SOURCES += GEOM_FaceFilter.cxx +SOURCES += GEOM_TypeFilter.cxx +SOURCES += GEOM_PreviewFilter.cxx +SOURCES += GEOM_LogicalFilter.cxx +SOURCES += GEOM_OCCFilter.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/GEOMFiltersSelection/GEOM_CompoundFilter.cxx b/src/GEOMFiltersSelection/GEOM_CompoundFilter.cxx new file mode 100644 index 000000000..7f598cc6c --- /dev/null +++ b/src/GEOMFiltersSelection/GEOM_CompoundFilter.cxx @@ -0,0 +1,135 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// +// GEOM GEOM_CompoundFilter : filter selector for the viewer +// File : GEOM_CompoundFilter.cxx +// Author : Roman NIKOLAEV +// Module : GEOM +// +#include "GEOM_CompoundFilter.h" + +// OCCT Includes +#include +#include +#include +#include + + + +//======================================================================= +// function : GEOM_CompoundFilter +// purpose : +//======================================================================= +GEOM_CompoundFilter::GEOM_CompoundFilter(SalomeApp_Study* study) +: GEOM_SelectionFilter( study ) +{ + add( TopAbs_COMPOUND ); +} + +//======================================================================= +// function : ~GEOM_CompoundFilter +// purpose : +//======================================================================= +GEOM_CompoundFilter::~GEOM_CompoundFilter() +{ +} + +//======================================================================= +// function : isOk +// purpose : +//======================================================================= +bool GEOM_CompoundFilter::isOk( const SUIT_DataOwner* sOwner) const +{ + if(GEOM_SelectionFilter::isOk(sOwner)){ + + GEOM::GEOM_Object_var obj = getObject( sOwner ); + TopoDS_Shape shape; + if ( getShape( obj, shape )){ + bool subTypes[TopAbs_SHAPE]; + getInfo(shape,subTypes); + QList::const_iterator it; + bool result = false; + for ( it = myKinds.constBegin(); it != myKinds.constEnd(); ++it ) + result = result || subTypes[(*it)]; + + return result; + } + } + return false; +} + + +//======================================================================= +// function : addSubType +// purpose : +//======================================================================= +void GEOM_CompoundFilter::addSubType( const int type) +{ + if(!myKinds.contains(type)) + myKinds.append(type); +} + +//======================================================================= +// function : addSubTypes +// purpose : +//======================================================================= +void GEOM_CompoundFilter::addSubTypes(const QList& kinds) +{ + myKinds = kinds; +} + +//======================================================================= +// function : getInfo() +// purpose : +//======================================================================= +void GEOM_CompoundFilter::getInfo(const TopoDS_Shape& aShape, bool subTypes[]) const +{ + int iType, nbTypes[TopAbs_SHAPE]; + for (iType = 0; iType < TopAbs_SHAPE; ++iType){ + nbTypes[iType] = 0; + subTypes[iType] = false; + } + + nbTypes[aShape.ShapeType()]++; + TopTools_MapOfShape aMapOfShape; + aMapOfShape.Add(aShape); + TopTools_ListOfShape aListOfShape; + aListOfShape.Append(aShape); + + TopTools_ListIteratorOfListOfShape itL (aListOfShape); + for (; itL.More(); itL.Next()) { + TopoDS_Iterator it (itL.Value()); + for (; it.More(); it.Next()) { + TopoDS_Shape s = it.Value(); + if (aMapOfShape.Add(s)) { + aListOfShape.Append(s); + nbTypes[s.ShapeType()]++; + } + } + } + + for(iType = TopAbs_COMPSOLID; iType < TopAbs_SHAPE; ++iType) { + if(nbTypes[iType] > 0) { + subTypes[iType] = true; + break; + } + } +} diff --git a/src/GEOMFiltersSelection/GEOM_CompoundFilter.h b/src/GEOMFiltersSelection/GEOM_CompoundFilter.h new file mode 100644 index 000000000..ea174a813 --- /dev/null +++ b/src/GEOMFiltersSelection/GEOM_CompoundFilter.h @@ -0,0 +1,48 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// +#ifndef GEOM_COMPOUNDFILTER_H +#define GEOM_COMPOUNDFILTER_H +#include "GEOM_SelectionFilter.h" + +#include + +class Standard_EXPORT GEOM_CompoundFilter : public GEOM_SelectionFilter +{ + public: + GEOM_CompoundFilter( SalomeApp_Study* study ); + ~GEOM_CompoundFilter(); + + virtual bool isOk( const SUIT_DataOwner* ) const; + void addSubType(const int ); + void addSubTypes(const QList& ); + + private: + void getInfo(const TopoDS_Shape&, bool subTypes []) const; + + + private: + QList myKinds; +}; + + +#endif + diff --git a/src/GEOMFiltersSelection/GEOM_EdgeFilter.cxx b/src/GEOMFiltersSelection/GEOM_EdgeFilter.cxx index a73bb3eb2..c47f8b793 100644 --- a/src/GEOMFiltersSelection/GEOM_EdgeFilter.cxx +++ b/src/GEOMFiltersSelection/GEOM_EdgeFilter.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include "GEOM_EdgeFilter.h" diff --git a/src/GEOMFiltersSelection/GEOM_EdgeFilter.h b/src/GEOMFiltersSelection/GEOM_EdgeFilter.h index 3cc49eecf..9977bdf65 100644 --- a/src/GEOMFiltersSelection/GEOM_EdgeFilter.h +++ b/src/GEOMFiltersSelection/GEOM_EdgeFilter.h @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef GEOM_EDGEFILTER_H #define GEOM_EDGEFILTER_H diff --git a/src/GEOMFiltersSelection/GEOM_EdgeFilter.hxx b/src/GEOMFiltersSelection/GEOM_EdgeFilter.hxx deleted file mode 100644 index 54a19c1de..000000000 --- a/src/GEOMFiltersSelection/GEOM_EdgeFilter.hxx +++ /dev/null @@ -1,108 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOM_EdgeFilter.hxx -// Module : GEOM - -#ifndef _GEOM_EdgeFilter_HeaderFile -#define _GEOM_EdgeFilter_HeaderFile - -#ifndef _Handle_GEOM_EdgeFilter_HeaderFile -#include "Handle_GEOM_EdgeFilter.hxx" -#endif - -#include "SALOME_InteractiveObject.hxx" -#include "GEOM_ShapeTypeFilter.hxx" - -// IDL Headers -#include -#include CORBA_SERVER_HEADER(GEOM_Gen) -#include CORBA_SERVER_HEADER(SALOMEDS_Attributes) - -// Open CASCADE Includes -#include -#include - -class GEOM_EdgeFilter : public GEOM_ShapeTypeFilter { - -public: - - inline void* operator new(size_t,void* anAddress) - { - return anAddress; - } - inline void* operator new(size_t size) - { - return Standard::Allocate(size); - } - inline void operator delete(void *anAddress) - { - if (anAddress) Standard::Free((Standard_Address&)anAddress); - } -// inline void operator delete(void *anAddress, size_t size) -// { -// if (anAddress) Standard::Free((Standard_Address&)anAddress,size); -// } - // Methods PUBLIC - // -Standard_EXPORT GEOM_EdgeFilter( const StdSelect_TypeOfEdge Edge ); -Standard_EXPORT ~GEOM_EdgeFilter(); - - - // Type management - // - Standard_EXPORT friend Handle_Standard_Type& GEOM_EdgeFilter_Type_(); - Standard_EXPORT const Handle(Standard_Type)& DynamicType() const; - Standard_EXPORT Standard_Boolean IsKind(const Handle(Standard_Type)&) const; - -protected: - - // Methods PROTECTED - // - Standard_EXPORT virtual Standard_Boolean IsShapeOk(const TopoDS_Shape& theShape ) const; - - // Fields PROTECTED - // -StdSelect_TypeOfEdge myKind; - -private: - - // Methods PRIVATE - // - - - // Fields PRIVATE - // - - -}; - - - - - -// other inline functions and methods (like "C++: function call" methods) -// - - -#endif diff --git a/src/GEOMFiltersSelection/GEOM_EdgeFilter.ixx b/src/GEOMFiltersSelection/GEOM_EdgeFilter.ixx deleted file mode 100644 index 1b3af3248..000000000 --- a/src/GEOMFiltersSelection/GEOM_EdgeFilter.ixx +++ /dev/null @@ -1,83 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOM_EdgeFilter.ixx -// Module : GEOM - -#include "GEOM_EdgeFilter.jxx" - -#ifndef _Standard_TypeMismatch_HeaderFile -#include -#endif - -GEOM_EdgeFilter::~GEOM_EdgeFilter() {} - - - -Standard_EXPORT Handle_Standard_Type& GEOM_EdgeFilter_Type_() -{ - - static Handle_Standard_Type aType1 = STANDARD_TYPE(GEOM_ShapeTypeFilter); - if ( aType1.IsNull()) aType1 = STANDARD_TYPE(GEOM_ShapeTypeFilter); - static Handle_Standard_Type aType2 = STANDARD_TYPE(MMgt_TShared); - if ( aType2.IsNull()) aType2 = STANDARD_TYPE(MMgt_TShared); - static Handle_Standard_Type aType3 = STANDARD_TYPE(Standard_Transient); - if ( aType3.IsNull()) aType3 = STANDARD_TYPE(Standard_Transient); - - - static Handle_Standard_Transient _Ancestors[]= {aType1,aType2,aType3,NULL}; - static Handle_Standard_Type _aType = new Standard_Type("GEOM_EdgeFilter", - sizeof(GEOM_EdgeFilter), - 1, - (Standard_Address)_Ancestors, - (Standard_Address)NULL); - - return _aType; -} - - -// DownCast method -// allow safe downcasting -// -const Handle(GEOM_EdgeFilter) Handle(GEOM_EdgeFilter)::DownCast(const Handle(Standard_Transient)& AnObject) -{ - Handle(GEOM_EdgeFilter) _anOtherObject; - - if (!AnObject.IsNull()) { - if (AnObject->IsKind(STANDARD_TYPE(GEOM_EdgeFilter))) { - _anOtherObject = Handle(GEOM_EdgeFilter)((Handle(GEOM_EdgeFilter)&)AnObject); - } - } - - return _anOtherObject ; -} -const Handle(Standard_Type)& GEOM_EdgeFilter::DynamicType() const -{ - return STANDARD_TYPE(GEOM_EdgeFilter) ; -} -Standard_Boolean GEOM_EdgeFilter::IsKind(const Handle(Standard_Type)& AType) const -{ - return (STANDARD_TYPE(GEOM_EdgeFilter) == AType || GEOM_ShapeTypeFilter::IsKind(AType)); -} -Handle_GEOM_EdgeFilter::~Handle_GEOM_EdgeFilter() {} - diff --git a/src/GEOMFiltersSelection/GEOM_EdgeFilter.jxx b/src/GEOMFiltersSelection/GEOM_EdgeFilter.jxx deleted file mode 100644 index 791245987..000000000 --- a/src/GEOMFiltersSelection/GEOM_EdgeFilter.jxx +++ /dev/null @@ -1,29 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOM_EdgeFilter.jxx -// Module : GEOM - -#ifndef _GEOM_EdgeFilter_HeaderFile -#include "GEOM_EdgeFilter.hxx" -#endif diff --git a/src/GEOMFiltersSelection/GEOM_FaceFilter.cxx b/src/GEOMFiltersSelection/GEOM_FaceFilter.cxx index 732165db7..9b126852c 100644 --- a/src/GEOMFiltersSelection/GEOM_FaceFilter.cxx +++ b/src/GEOMFiltersSelection/GEOM_FaceFilter.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include "GEOM_FaceFilter.h" diff --git a/src/GEOMFiltersSelection/GEOM_FaceFilter.h b/src/GEOMFiltersSelection/GEOM_FaceFilter.h index 03a154218..9f68f01a8 100644 --- a/src/GEOMFiltersSelection/GEOM_FaceFilter.h +++ b/src/GEOMFiltersSelection/GEOM_FaceFilter.h @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef GEOM_FACEFILTER_H #define GEOM_FACEFILTER_H diff --git a/src/GEOMFiltersSelection/GEOM_FaceFilter.hxx b/src/GEOMFiltersSelection/GEOM_FaceFilter.hxx deleted file mode 100644 index 7184542d4..000000000 --- a/src/GEOMFiltersSelection/GEOM_FaceFilter.hxx +++ /dev/null @@ -1,110 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOM_FaceFilter.hxx -// Module : GEOM - -#ifndef _GEOM_FaceFilter_HeaderFile -#define _GEOM_FaceFilter_HeaderFile - -#ifndef _Handle_GEOM_FaceFilter_HeaderFile -#include "Handle_GEOM_FaceFilter.hxx" -#endif - -#include "GEOM_ShapeTypeFilter.hxx" - -// IDL Headers -#include -#include CORBA_SERVER_HEADER(GEOM_Gen) -#include CORBA_SERVER_HEADER(SALOMEDS_Attributes) - -// Open CASCADE Includes -#include -#include - -class GEOM_FaceFilter : public GEOM_ShapeTypeFilter { - -public: - - inline void* operator new(size_t,void* anAddress) - { - return anAddress; - } - inline void* operator new(size_t size) - { - return Standard::Allocate(size); - } - inline void operator delete(void *anAddress) - { - if (anAddress) Standard::Free((Standard_Address&)anAddress); - } -// inline void operator delete(void *anAddress, size_t size) -// { -// if (anAddress) Standard::Free((Standard_Address&)anAddress,size); -// } - // Methods PUBLIC - // -Standard_EXPORT GEOM_FaceFilter( const StdSelect_TypeOfFace Face ); -Standard_EXPORT ~GEOM_FaceFilter(); - - - - - // Type management - // - Standard_EXPORT friend Handle_Standard_Type& GEOM_FaceFilter_Type_(); - Standard_EXPORT const Handle(Standard_Type)& DynamicType() const; - Standard_EXPORT Standard_Boolean IsKind(const Handle(Standard_Type)&) const; - -protected: - - // Methods PROTECTED - // - Standard_EXPORT virtual Standard_Boolean IsShapeOk(const TopoDS_Shape& theShape ) const; - - - // Fields PROTECTED - // -StdSelect_TypeOfFace myKind; - -private: - - // Methods PRIVATE - // - - - // Fields PRIVATE - // - - -}; - - - - - -// other inline functions and methods (like "C++: function call" methods) -// - - -#endif diff --git a/src/GEOMFiltersSelection/GEOM_FaceFilter.ixx b/src/GEOMFiltersSelection/GEOM_FaceFilter.ixx deleted file mode 100644 index 92b872d7b..000000000 --- a/src/GEOMFiltersSelection/GEOM_FaceFilter.ixx +++ /dev/null @@ -1,83 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOM_FaceFilter.ixx -// Module : GEOM - -#include "GEOM_FaceFilter.jxx" - -#ifndef _Standard_TypeMismatch_HeaderFile -#include -#endif - -GEOM_FaceFilter::~GEOM_FaceFilter() {} - - - -Standard_EXPORT Handle_Standard_Type& GEOM_FaceFilter_Type_() -{ - - static Handle_Standard_Type aType1 = STANDARD_TYPE(GEOM_ShapeTypeFilter); - if ( aType1.IsNull()) aType1 = STANDARD_TYPE(GEOM_ShapeTypeFilter); - static Handle_Standard_Type aType2 = STANDARD_TYPE(MMgt_TShared); - if ( aType2.IsNull()) aType2 = STANDARD_TYPE(MMgt_TShared); - static Handle_Standard_Type aType3 = STANDARD_TYPE(Standard_Transient); - if ( aType3.IsNull()) aType3 = STANDARD_TYPE(Standard_Transient); - - - static Handle_Standard_Transient _Ancestors[]= {aType1,aType2,aType3,NULL}; - static Handle_Standard_Type _aType = new Standard_Type("GEOM_FaceFilter", - sizeof(GEOM_FaceFilter), - 1, - (Standard_Address)_Ancestors, - (Standard_Address)NULL); - - return _aType; -} - - -// DownCast method -// allow safe downcasting -// -const Handle(GEOM_FaceFilter) Handle(GEOM_FaceFilter)::DownCast(const Handle(Standard_Transient)& AnObject) -{ - Handle(GEOM_FaceFilter) _anOtherObject; - - if (!AnObject.IsNull()) { - if (AnObject->IsKind(STANDARD_TYPE(GEOM_FaceFilter))) { - _anOtherObject = Handle(GEOM_FaceFilter)((Handle(GEOM_FaceFilter)&)AnObject); - } - } - - return _anOtherObject ; -} -const Handle(Standard_Type)& GEOM_FaceFilter::DynamicType() const -{ - return STANDARD_TYPE(GEOM_FaceFilter) ; -} -Standard_Boolean GEOM_FaceFilter::IsKind(const Handle(Standard_Type)& AType) const -{ - return (STANDARD_TYPE(GEOM_FaceFilter) == AType || GEOM_ShapeTypeFilter::IsKind(AType)); -} -Handle_GEOM_FaceFilter::~Handle_GEOM_FaceFilter() {} - diff --git a/src/GEOMFiltersSelection/GEOM_FaceFilter.jxx b/src/GEOMFiltersSelection/GEOM_FaceFilter.jxx deleted file mode 100644 index 43abd891a..000000000 --- a/src/GEOMFiltersSelection/GEOM_FaceFilter.jxx +++ /dev/null @@ -1,29 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOM_FaceFilter.jxx -// Module : GEOM - -#ifndef _GEOM_FaceFilter_HeaderFile -#include "GEOM_FaceFilter.hxx" -#endif diff --git a/src/GEOMFiltersSelection/GEOM_LogicalFilter.cxx b/src/GEOMFiltersSelection/GEOM_LogicalFilter.cxx index a67a99219..1f54c3854 100644 --- a/src/GEOMFiltersSelection/GEOM_LogicalFilter.cxx +++ b/src/GEOMFiltersSelection/GEOM_LogicalFilter.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include "GEOM_LogicalFilter.h" @@ -23,7 +25,7 @@ // function : GEOM_LogicalFilter // purpose : //======================================================================= -GEOM_LogicalFilter::GEOM_LogicalFilter( const QPtrList& lst, const int op ) +GEOM_LogicalFilter::GEOM_LogicalFilter( const QList& lst, const int op ) : SUIT_SelectionFilter() { setFilters( lst ); @@ -45,8 +47,12 @@ GEOM_LogicalFilter::~GEOM_LogicalFilter() bool GEOM_LogicalFilter::isOk( const SUIT_DataOwner* owner ) const { GEOM_LogicalFilter* non_const_this = (GEOM_LogicalFilter*)this; - for ( SUIT_SelectionFilter* filter = non_const_this->myFilters.first(); filter; filter = non_const_this->myFilters.next() ) + QListIterator it( non_const_this->myFilters ); + while ( it.hasNext() ) { + SUIT_SelectionFilter* filter = it.next(); + if ( !filter ) continue; + if ( myOperation == LO_OR && filter->isOk( owner ) ) return true; if ( myOperation == LO_AND && !filter->isOk( owner ) ) @@ -62,7 +68,7 @@ bool GEOM_LogicalFilter::isOk( const SUIT_DataOwner* owner ) const // function : setFilters // purpose : //======================================================================= -void GEOM_LogicalFilter::setFilters( const QPtrList& lst ) +void GEOM_LogicalFilter::setFilters( const QList& lst ) { myFilters = lst; } @@ -80,7 +86,7 @@ void GEOM_LogicalFilter::setOperation( const int op ) // function : getFilters // purpose : //======================================================================= -QPtrList GEOM_LogicalFilter::getFilters() const +QList GEOM_LogicalFilter::getFilters() const { return myFilters; } diff --git a/src/GEOMFiltersSelection/GEOM_LogicalFilter.h b/src/GEOMFiltersSelection/GEOM_LogicalFilter.h index dbb590c49..d0ba7c683 100644 --- a/src/GEOMFiltersSelection/GEOM_LogicalFilter.h +++ b/src/GEOMFiltersSelection/GEOM_LogicalFilter.h @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef GEOM_LOGICALFILTER_H #define GEOM_LOGICALFILTER_H @@ -23,7 +25,7 @@ #include #include -#include +#include class Standard_EXPORT GEOM_LogicalFilter : public SUIT_SelectionFilter { @@ -31,19 +33,19 @@ public: enum { LO_OR, LO_AND, LO_NOT, LO_UNDEFINED }; public: - GEOM_LogicalFilter( const QPtrList& lst, const int op ); + GEOM_LogicalFilter( const QList& lst, const int op ); ~GEOM_LogicalFilter(); virtual bool isOk( const SUIT_DataOwner* ) const; - void setFilters( const QPtrList& lst ); + void setFilters( const QList& lst ); void setOperation( const int ); - QPtrList getFilters() const; + QList getFilters() const; int getOperation() const; private: - QPtrList myFilters; - int myOperation; + QList myFilters; + int myOperation; }; diff --git a/src/GEOMFiltersSelection/GEOM_LogicalFilter.hxx b/src/GEOMFiltersSelection/GEOM_LogicalFilter.hxx deleted file mode 100644 index eeb6e61d3..000000000 --- a/src/GEOMFiltersSelection/GEOM_LogicalFilter.hxx +++ /dev/null @@ -1,103 +0,0 @@ -// SALOME SALOMEGUI : implementation of desktop and GUI kernel -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOM_LogicalFilter.hxx -// Author : Sergey LITONIN -// Module : GEOM - -#ifndef _GEOM_LogicalFilter_HeaderFile -#define _GEOM_LogicalFilter_HeaderFile - -#include "SALOME_Filter.hxx" - -#include -#include -#include - -DEFINE_STANDARD_HANDLE( GEOM_LogicalFilter, SALOME_Filter ) - -DEFINE_BASECOLLECTION( GEOM_FilterColl, Handle(SALOME_Filter) ) -DEFINE_LIST( GEOM_ListOfFilter, GEOM_FilterColl, Handle(SALOME_Filter) ) - - -/* - Class : GEOM_LogicalFilter - Description : Filter for combaining several filters with logical operation (OR or AND) -*/ - -class GEOM_LogicalFilter : public SALOME_Filter -{ -public: - - enum { LO_OR, LO_AND, LO_NOT, LO_UNDEFINED }; - -public: - - GEOM_LogicalFilter( const GEOM_ListOfFilter&, const int ); - GEOM_LogicalFilter( const Handle(SALOME_Filter)&, const int ); - - - virtual ~GEOM_LogicalFilter(); - virtual Standard_Boolean IsOk( const Handle(SALOME_InteractiveObject)& ) const; - - void SetFilters( const GEOM_ListOfFilter& ); - void SetLogOp( const int ); - const GEOM_ListOfFilter& GetFilters() const; - int GetLogOp() const; - -private: - - GEOM_ListOfFilter myFilters; - int myLogOp; - -public: - DEFINE_STANDARD_RTTI( GEOM_LogicalFilter ) -}; - -#endif - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/GEOMFiltersSelection/GEOM_OCCFilter.cxx b/src/GEOMFiltersSelection/GEOM_OCCFilter.cxx index e62acd406..75027c74c 100644 --- a/src/GEOMFiltersSelection/GEOM_OCCFilter.cxx +++ b/src/GEOMFiltersSelection/GEOM_OCCFilter.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include "GEOM_OCCFilter.h" diff --git a/src/GEOMFiltersSelection/GEOM_OCCFilter.h b/src/GEOMFiltersSelection/GEOM_OCCFilter.h index eccfc5f6a..c21fd356b 100644 --- a/src/GEOMFiltersSelection/GEOM_OCCFilter.h +++ b/src/GEOMFiltersSelection/GEOM_OCCFilter.h @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef GEOM_OCCFILTER_H #define GEOM_OCCFILTER_H diff --git a/src/GEOMFiltersSelection/GEOM_PreviewFilter.cxx b/src/GEOMFiltersSelection/GEOM_PreviewFilter.cxx index 1be775274..40ce102be 100644 --- a/src/GEOMFiltersSelection/GEOM_PreviewFilter.cxx +++ b/src/GEOMFiltersSelection/GEOM_PreviewFilter.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include "GEOM_PreviewFilter.h" @@ -45,6 +47,6 @@ GEOM_PreviewFilter::~GEOM_PreviewFilter() bool GEOM_PreviewFilter::isOk( const SUIT_DataOwner* sOwner ) const { const LightApp_DataOwner* owner = dynamic_cast ( sOwner ); - return ( owner && strstr( owner->entry(), "TEMP" ) ); + return ( owner && strstr( owner->entry().toLatin1().constData(), "TEMP" ) ); } diff --git a/src/GEOMFiltersSelection/GEOM_PreviewFilter.h b/src/GEOMFiltersSelection/GEOM_PreviewFilter.h index e9c57f656..68b7f4644 100644 --- a/src/GEOMFiltersSelection/GEOM_PreviewFilter.h +++ b/src/GEOMFiltersSelection/GEOM_PreviewFilter.h @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef GEOM_PREVIEW_FILTER_H #define GEOM_PREVIEW_FILTER_H diff --git a/src/GEOMFiltersSelection/GEOM_PreviewFilter.hxx b/src/GEOMFiltersSelection/GEOM_PreviewFilter.hxx deleted file mode 100644 index 14117451e..000000000 --- a/src/GEOMFiltersSelection/GEOM_PreviewFilter.hxx +++ /dev/null @@ -1,102 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2004 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOM_PreviewFilter.hxx -// Module : GEOM - -#ifndef _GEOM_PreviewFilter_HeaderFile -#define _GEOM_PreviewFilter_HeaderFile - -#ifndef _Handle_GEOM_PreviewFilter_HeaderFile -#include "Handle_GEOM_PreviewFilter.hxx" -#endif - -#include "SALOME_InteractiveObject.hxx" -#include "SALOME_Filter.hxx" - -// IDL Headers - - -// Open CASCADE Includes -#include - -class GEOM_PreviewFilter : public SALOME_Filter { - -public: - - inline void* operator new(size_t,void* anAddress) - { - return anAddress; - } - inline void* operator new(size_t size) - { - return Standard::Allocate(size); - } - inline void operator delete(void *anAddress) - { - if (anAddress) Standard::Free((Standard_Address&)anAddress); - } - // Methods PUBLIC - // -Standard_EXPORT GEOM_PreviewFilter(); -Standard_EXPORT ~GEOM_PreviewFilter(); - -Standard_EXPORT virtual Standard_Boolean IsOk(const Handle(SALOME_InteractiveObject)& anobj) const; - - - // Type management - // - Standard_EXPORT friend Handle_Standard_Type& GEOM_PreviewFilter_Type_(); - Standard_EXPORT const Handle(Standard_Type)& DynamicType() const; - Standard_EXPORT Standard_Boolean IsKind(const Handle(Standard_Type)&) const; - -protected: - - // Methods PROTECTED - // - - - // Fields PROTECTED - // - -private: - - // Methods PRIVATE - // - - - // Fields PRIVATE - // - - -}; - - - - - -// other inline functions and methods (like "C++: function call" methods) -// - - -#endif diff --git a/src/GEOMFiltersSelection/GEOM_PreviewFilter.ixx b/src/GEOMFiltersSelection/GEOM_PreviewFilter.ixx deleted file mode 100644 index 2222f5188..000000000 --- a/src/GEOMFiltersSelection/GEOM_PreviewFilter.ixx +++ /dev/null @@ -1,83 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2004 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOM_PreviewFilter.ixx -// Module : GEOM - -#include "GEOM_PreviewFilter.jxx" - -#ifndef _Standard_TypeMismatch_HeaderFile -#include -#endif - -GEOM_PreviewFilter::~GEOM_PreviewFilter() {} - - - -Standard_EXPORT Handle_Standard_Type& GEOM_PreviewFilter_Type_() -{ - - static Handle_Standard_Type aType1 = STANDARD_TYPE(SALOME_Filter); - if ( aType1.IsNull()) aType1 = STANDARD_TYPE(SALOME_Filter); - static Handle_Standard_Type aType2 = STANDARD_TYPE(MMgt_TShared); - if ( aType2.IsNull()) aType2 = STANDARD_TYPE(MMgt_TShared); - static Handle_Standard_Type aType3 = STANDARD_TYPE(Standard_Transient); - if ( aType3.IsNull()) aType3 = STANDARD_TYPE(Standard_Transient); - - - static Handle_Standard_Transient _Ancestors[]= {aType1,aType2,aType3,NULL}; - static Handle_Standard_Type _aType = new Standard_Type("GEOM_PreviewFilter", - sizeof(GEOM_PreviewFilter), - 1, - (Standard_Address)_Ancestors, - (Standard_Address)NULL); - - return _aType; -} - - -// DownCast method -// allow safe downcasting -// -const Handle(GEOM_PreviewFilter) Handle(GEOM_PreviewFilter)::DownCast(const Handle(Standard_Transient)& AnObject) -{ - Handle(GEOM_PreviewFilter) _anOtherObject; - - if (!AnObject.IsNull()) { - if (AnObject->IsKind(STANDARD_TYPE(GEOM_PreviewFilter))) { - _anOtherObject = Handle(GEOM_PreviewFilter)((Handle(GEOM_PreviewFilter)&)AnObject); - } - } - - return _anOtherObject ; -} -const Handle(Standard_Type)& GEOM_PreviewFilter::DynamicType() const -{ - return STANDARD_TYPE(GEOM_PreviewFilter) ; -} -Standard_Boolean GEOM_PreviewFilter::IsKind(const Handle(Standard_Type)& AType) const -{ - return (STANDARD_TYPE(GEOM_PreviewFilter) == AType || SALOME_Filter::IsKind(AType)); -} -Handle_GEOM_PreviewFilter::~Handle_GEOM_PreviewFilter() {} - diff --git a/src/GEOMFiltersSelection/GEOM_PreviewFilter.jxx b/src/GEOMFiltersSelection/GEOM_PreviewFilter.jxx deleted file mode 100644 index 4342c9cdb..000000000 --- a/src/GEOMFiltersSelection/GEOM_PreviewFilter.jxx +++ /dev/null @@ -1,29 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2004 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOM_PreviewFilter.jxx -// Module : GEOM - -#ifndef _GEOM_PreviewFilter_HeaderFile -#include "GEOM_PreviewFilter.hxx" -#endif diff --git a/src/GEOMFiltersSelection/GEOM_SelectionFilter.cxx b/src/GEOMFiltersSelection/GEOM_SelectionFilter.cxx index 6d20b194c..a8360dc51 100644 --- a/src/GEOMFiltersSelection/GEOM_SelectionFilter.cxx +++ b/src/GEOMFiltersSelection/GEOM_SelectionFilter.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include "GEOM_SelectionFilter.h" @@ -29,9 +31,6 @@ #include -#include - - //======================================================================= // function : GEOM_SelectionFilter // purpose : @@ -84,7 +83,7 @@ GEOM::GEOM_Object_ptr GEOM_SelectionFilter::getObject( const SUIT_DataOwner* sOw _PTR(Study) study = appStudy->studyDS(); QString entry = owner->entry(); - _PTR(SObject) aSO (study->FindObjectID(entry.latin1())), aRefSO; + _PTR(SObject) aSO (study->FindObjectID(entry.toStdString())), aRefSO; if( extractReference && aSO && aSO->ReferencedObject( aRefSO ) ) aSO = aRefSO; @@ -164,7 +163,7 @@ void GEOM_SelectionFilter::add( const int type ) void GEOM_SelectionFilter::remove( const int type ) { if ( contains( type ) ) - myTypes.remove( type ); + myTypes.removeAll( type ); } //======================================================================= diff --git a/src/GEOMFiltersSelection/GEOM_SelectionFilter.h b/src/GEOMFiltersSelection/GEOM_SelectionFilter.h index 45b0fd969..aca520747 100644 --- a/src/GEOMFiltersSelection/GEOM_SelectionFilter.h +++ b/src/GEOMFiltersSelection/GEOM_SelectionFilter.h @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef GEOM_SELECTIONFILTER_H #define GEOM_SELECTIONFILTER_H @@ -24,7 +26,7 @@ #include -#include +#include // IDL Headers #include @@ -52,7 +54,7 @@ protected: bool isShapeOk( const TopoDS_Shape& ) const; private: - QValueList myTypes; + QList myTypes; bool myAll; }; diff --git a/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.cxx b/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.cxx deleted file mode 100644 index 1de7bd2e0..000000000 --- a/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.cxx +++ /dev/null @@ -1,168 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOM_ShapeTypeFilter.cxx -// Author : Nicolas REJNERI -// Module : GEOM -// $Header$ - -#include - -#include "GEOM_ShapeTypeFilter.ixx" -#include "SALOME_InteractiveObject.hxx" -#include "GEOM_Client.hxx" -#include "QAD_Application.h" -#include "QAD_Desktop.h" -#include "utilities.h" - -#include - -//======================================================================= -// function : getShape() -// purpose : returns a TopoDS_Shape stored in GEOM_Object -//======================================================================= -static bool getShape( const GEOM::GEOM_Object_ptr& theObject, TopoDS_Shape& theShape ) -{ - if ( !CORBA::is_nil( theObject ) ) - { - static GEOM::GEOM_Gen_var myGeom; - if(CORBA::is_nil(myGeom) { - Engines::Component_var comp = QAD_Application::getDesktop()->getEngine( "FactoryServer", "GEOM" ); - myGeom = GEOM::GEOM_Gen::_narrow( comp ); - } - TopoDS_Shape aTopoDSShape = GEOM_Client().GetShape( myGeom, theObject ); - - if ( !aTopoDSShape.IsNull() ) - { - theShape = aTopoDSShape; - return true; - } - } - return false; -} - -//======================================================================= -// function : ConvertIOinGEOMObject() -// purpose : -//======================================================================= -static GEOM::GEOM_Object_ptr convertIOinGEOMObject( - const Handle(SALOME_InteractiveObject)& theIO, Standard_Boolean& theResult ) -{ - theResult = Standard_False; - GEOM::GEOM_Object_var aReturnObject; - if ( !theIO.IsNull() ) - { - const char* anEntry = theIO->getEntry(); - SALOMEDS::SObject_var aSObj = - QAD_Application::getDesktop()->getActiveStudy()->getStudyDocument()->FindObjectID( anEntry ); - if ( !CORBA::is_nil( aSObj ) ) - { - aReturnObject = GEOM::GEOM_Object::_narrow( aSObj->GetObject() ); - theResult = !CORBA::is_nil( aReturnObject ); - } - } - return aReturnObject._retn(); -} - -//======================================================================= -// function : ShapeTypeFilter -// purpose : -//======================================================================= -GEOM_ShapeTypeFilter::GEOM_ShapeTypeFilter( const TopAbs_ShapeEnum theShapeType, - const bool theIsAll ) -{ - myIsAll = theIsAll; - myShapeTypes.Add( theShapeType ); - myTypeFilter = new SALOME_TypeFilter( "GEOM" ); -} - -//======================================================================= -// function : ShapeTypeFilter -// purpose : -//======================================================================= -GEOM_ShapeTypeFilter::GEOM_ShapeTypeFilter( const TColStd_MapOfInteger& theShapeTypes, - const bool theIsAll ) -{ - myIsAll = theIsAll; - myShapeTypes = theShapeTypes; - myTypeFilter = new SALOME_TypeFilter( "GEOM" ); -} - -//======================================================================= -// function : IsOk -// purpose : -//======================================================================= -Standard_Boolean GEOM_ShapeTypeFilter::IsOk( - const Handle(SALOME_InteractiveObject)& anObj ) const -{ - if ( !myTypeFilter->IsOk(anObj) ) - return Standard_False; - - Standard_Boolean aResult = Standard_False; - GEOM::GEOM_Object_ptr aGeomObj = convertIOinGEOMObject( anObj, aResult ); - if ( !CORBA::is_nil( aGeomObj ) && aResult && aGeomObj->IsShape() ) - { - if ( myIsAll ) - return true; - TopoDS_Shape aShape; - if ( getShape( aGeomObj, aShape ) ) - { - if ( myShapeTypes.Contains( aShape.ShapeType() ) ) - return IsShapeOk( aShape ); - } - } - return Standard_False; -} - -//======================================================================= -// function : IsShapeOk -// purpose : -//======================================================================= -Standard_Boolean GEOM_ShapeTypeFilter::IsShapeOk( const TopoDS_Shape& ) const -{ - return Standard_True; -} - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.hxx b/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.hxx deleted file mode 100644 index 5af6de182..000000000 --- a/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.hxx +++ /dev/null @@ -1,110 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOM_ShapeTypeFilter.hxx -// Module : GEOM - -#ifndef _GEOM_ShapeTypeFilter_HeaderFile -#define _GEOM_ShapeTypeFilter_HeaderFile - -#ifndef _Handle_GEOM_ShapeTypeFilter_HeaderFile -#include "Handle_GEOM_ShapeTypeFilter.hxx" -#endif - -#include "SALOME_InteractiveObject.hxx" -#include "SALOME_Filter.hxx" -#include "SALOME_TypeFilter.hxx" - -// IDL Headers -#include -#include CORBA_SERVER_HEADER(GEOM_Gen) -#include CORBA_SERVER_HEADER(SALOMEDS_Attributes) - -// Open CASCADE Includes -#include -#include -#include -#include - -class GEOM_ShapeTypeFilter : public SALOME_Filter -{ - -public: - - inline void* operator new(size_t,void* anAddress) - { - return anAddress; - } - inline void* operator new(size_t size) - { - return Standard::Allocate(size); - } - inline void operator delete(void *anAddress) - { - if (anAddress) Standard::Free((Standard_Address&)anAddress); - } - // Methods PUBLIC - // -Standard_EXPORT GEOM_ShapeTypeFilter( const TopAbs_ShapeEnum theShapeType, - const bool theIsAll = false ); -Standard_EXPORT GEOM_ShapeTypeFilter( const TColStd_MapOfInteger& theShapeTypes, - const bool theIsAll = false ); -Standard_EXPORT ~GEOM_ShapeTypeFilter(); - -Standard_EXPORT virtual Standard_Boolean IsOk(const Handle(SALOME_InteractiveObject)& anobj) const; - - - // Type management - // - Standard_EXPORT friend Handle_Standard_Type& GEOM_ShapeTypeFilter_Type_(); - Standard_EXPORT const Handle(Standard_Type)& DynamicType() const; - Standard_EXPORT Standard_Boolean IsKind(const Handle(Standard_Type)&) const; - -protected: - - // Methods PROTECTED - // - Standard_EXPORT virtual Standard_Boolean IsShapeOk(const TopoDS_Shape& theShape ) const; - - - // Fields PROTECTED - // -TColStd_MapOfInteger myShapeTypes; -Handle(SALOME_TypeFilter) myTypeFilter; - -private: - - bool myIsAll; - - -}; - - - - - -// other inline functions and methods (like "C++: function call" methods) -// - - -#endif diff --git a/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.ixx b/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.ixx deleted file mode 100644 index 86ca838f4..000000000 --- a/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.ixx +++ /dev/null @@ -1,83 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOM_ShapeTypeFilter.ixx -// Module : GEOM - -#include "GEOM_ShapeTypeFilter.jxx" - -#ifndef _Standard_TypeMismatch_HeaderFile -#include -#endif - -GEOM_ShapeTypeFilter::~GEOM_ShapeTypeFilter() {} - - - -Standard_EXPORT Handle_Standard_Type& GEOM_ShapeTypeFilter_Type_() -{ - - static Handle_Standard_Type aType1 = STANDARD_TYPE(SALOME_Filter); - if ( aType1.IsNull()) aType1 = STANDARD_TYPE(SALOME_Filter); - static Handle_Standard_Type aType2 = STANDARD_TYPE(MMgt_TShared); - if ( aType2.IsNull()) aType2 = STANDARD_TYPE(MMgt_TShared); - static Handle_Standard_Type aType3 = STANDARD_TYPE(Standard_Transient); - if ( aType3.IsNull()) aType3 = STANDARD_TYPE(Standard_Transient); - - - static Handle_Standard_Transient _Ancestors[]= {aType1,aType2,aType3,NULL}; - static Handle_Standard_Type _aType = new Standard_Type("GEOM_ShapeTypeFilter", - sizeof(GEOM_ShapeTypeFilter), - 1, - (Standard_Address)_Ancestors, - (Standard_Address)NULL); - - return _aType; -} - - -// DownCast method -// allow safe downcasting -// -const Handle(GEOM_ShapeTypeFilter) Handle(GEOM_ShapeTypeFilter)::DownCast(const Handle(Standard_Transient)& AnObject) -{ - Handle(GEOM_ShapeTypeFilter) _anOtherObject; - - if (!AnObject.IsNull()) { - if (AnObject->IsKind(STANDARD_TYPE(GEOM_ShapeTypeFilter))) { - _anOtherObject = Handle(GEOM_ShapeTypeFilter)((Handle(GEOM_ShapeTypeFilter)&)AnObject); - } - } - - return _anOtherObject ; -} -const Handle(Standard_Type)& GEOM_ShapeTypeFilter::DynamicType() const -{ - return STANDARD_TYPE(GEOM_ShapeTypeFilter) ; -} -Standard_Boolean GEOM_ShapeTypeFilter::IsKind(const Handle(Standard_Type)& AType) const -{ - return (STANDARD_TYPE(GEOM_ShapeTypeFilter) == AType || SALOME_Filter::IsKind(AType)); -} -Handle_GEOM_ShapeTypeFilter::~Handle_GEOM_ShapeTypeFilter() {} - diff --git a/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.jxx b/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.jxx deleted file mode 100644 index 0ddda3484..000000000 --- a/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.jxx +++ /dev/null @@ -1,29 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOM_ShapeTypeFilter.jxx -// Module : GEOM - -#ifndef _GEOM_ShapeTypeFilter_HeaderFile -#include "GEOM_ShapeTypeFilter.hxx" -#endif diff --git a/src/GEOMFiltersSelection/GEOM_TypeFilter.cxx b/src/GEOMFiltersSelection/GEOM_TypeFilter.cxx index daa00f0f1..a9bbde738 100644 --- a/src/GEOMFiltersSelection/GEOM_TypeFilter.cxx +++ b/src/GEOMFiltersSelection/GEOM_TypeFilter.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include "GEOM_TypeFilter.h" diff --git a/src/GEOMFiltersSelection/GEOM_TypeFilter.h b/src/GEOMFiltersSelection/GEOM_TypeFilter.h index ec2235ee7..d1e57fb9a 100644 --- a/src/GEOMFiltersSelection/GEOM_TypeFilter.h +++ b/src/GEOMFiltersSelection/GEOM_TypeFilter.h @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef GEOM_TYPEFILTER_H #define GEOM_TYPEFILTER_H diff --git a/src/GEOMFiltersSelection/GEOM_TypeFilter.hxx b/src/GEOMFiltersSelection/GEOM_TypeFilter.hxx deleted file mode 100644 index 8be86f636..000000000 --- a/src/GEOMFiltersSelection/GEOM_TypeFilter.hxx +++ /dev/null @@ -1,90 +0,0 @@ -// GEOM GEOMGUI : Implementation of selection filters for GEOM module -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : GEOM_TypeFilter.hxx -// Author : Sergey LITONIN -// Module : GEOM - -#ifndef _GEOM_TypeFilter_HeaderFile -#define _GEOM_TypeFilter_HeaderFile - -#include "SALOME_TypeFilter.hxx" - -#include - -DEFINE_STANDARD_HANDLE( GEOM_TypeFilter, SALOME_TypeFilter ) - -/* - Class : GEOM_TypeFilter - Description : Filter for verifyimg type of geom object ( GEOM_POINT, GEOM_MARKER and so on ) -*/ - -class GEOM_TypeFilter : public SALOME_TypeFilter -{ - -public: - - GEOM_TypeFilter( const int ); - - - virtual ~GEOM_TypeFilter(); - virtual Standard_Boolean IsOk( const Handle(SALOME_InteractiveObject)& ) const; - - void SetType( const int ); - int GetType() const; - -private: - - int myType; - -public: - DEFINE_STANDARD_RTTI( GEOM_TypeFilter ) -}; - -#endif - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/GEOMFiltersSelection/Handle_GEOM_EdgeFilter.hxx b/src/GEOMFiltersSelection/Handle_GEOM_EdgeFilter.hxx deleted file mode 100644 index 37fb4c6da..000000000 --- a/src/GEOMFiltersSelection/Handle_GEOM_EdgeFilter.hxx +++ /dev/null @@ -1,100 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : Handle_GEOM_EdgeFilter.hxx -// Module : GEOM - -#ifndef _Handle_GEOM_EdgeFilter_HeaderFile -#define _Handle_GEOM_EdgeFilter_HeaderFile - -#ifndef _Standard_Macro_HeaderFile -#include -#endif -#ifndef _Standard_HeaderFile -#include -#endif - -#ifndef _Handle_GEOM_ShapeTypeFilter_HeaderFile -#include "Handle_GEOM_ShapeTypeFilter.hxx" -#endif - -class Standard_Transient; -class Handle_Standard_Type; -class Handle(GEOM_ShapeTypeFilter); -class GEOM_EdgeFilter; -Standard_EXPORT Handle_Standard_Type& STANDARD_TYPE(GEOM_EdgeFilter); - -class Handle(GEOM_EdgeFilter) : public Handle(GEOM_ShapeTypeFilter) { - public: - inline void* operator new(size_t,void* anAddress) - { - return anAddress; - } - inline void* operator new(size_t size) - { - return Standard::Allocate(size); - } - inline void operator delete(void *anAddress) - { - if (anAddress) Standard::Free((Standard_Address&)anAddress); - } -// inline void operator delete(void *anAddress, size_t size) -// { -// if (anAddress) Standard::Free((Standard_Address&)anAddress,size); -// } - Handle(GEOM_EdgeFilter)():Handle(GEOM_ShapeTypeFilter)() {} - Handle(GEOM_EdgeFilter)(const Handle(GEOM_EdgeFilter)& aHandle) : Handle(GEOM_ShapeTypeFilter)(aHandle) - { - } - - Handle(GEOM_EdgeFilter)(const GEOM_EdgeFilter* anItem) : Handle(GEOM_ShapeTypeFilter)((GEOM_ShapeTypeFilter *)anItem) - { - } - - Handle(GEOM_EdgeFilter)& operator=(const Handle(GEOM_EdgeFilter)& aHandle) - { - Assign(aHandle.Access()); - return *this; - } - - Handle(GEOM_EdgeFilter)& operator=(const GEOM_EdgeFilter* anItem) - { - Assign((Standard_Transient *)anItem); - return *this; - } - - GEOM_EdgeFilter* operator->() - { - return (GEOM_EdgeFilter *)ControlAccess(); - } - - GEOM_EdgeFilter* operator->() const - { - return (GEOM_EdgeFilter *)ControlAccess(); - } - - Standard_EXPORT ~Handle(GEOM_EdgeFilter)(); - - Standard_EXPORT static const Handle(GEOM_EdgeFilter) DownCast(const Handle(Standard_Transient)& AnObject); -}; -#endif diff --git a/src/GEOMFiltersSelection/Handle_GEOM_FaceFilter.hxx b/src/GEOMFiltersSelection/Handle_GEOM_FaceFilter.hxx deleted file mode 100644 index e1b669f5c..000000000 --- a/src/GEOMFiltersSelection/Handle_GEOM_FaceFilter.hxx +++ /dev/null @@ -1,100 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : Handle_GEOM_FaceFilter.hxx -// Module : GEOM - -#ifndef _Handle_GEOM_FaceFilter_HeaderFile -#define _Handle_GEOM_FaceFilter_HeaderFile - -#ifndef _Standard_Macro_HeaderFile -#include -#endif -#ifndef _Standard_HeaderFile -#include -#endif - -#ifndef _Handle_GEOM_ShapeTypeFilter_HeaderFile -#include "Handle_GEOM_ShapeTypeFilter.hxx" -#endif - -class Standard_Transient; -class Handle_Standard_Type; -class Handle(GEOM_ShapeTypeFilter); -class GEOM_FaceFilter; -Standard_EXPORT Handle_Standard_Type& STANDARD_TYPE(GEOM_FaceFilter); - -class Handle(GEOM_FaceFilter) : public Handle(GEOM_ShapeTypeFilter) { - public: - inline void* operator new(size_t,void* anAddress) - { - return anAddress; - } - inline void* operator new(size_t size) - { - return Standard::Allocate(size); - } - inline void operator delete(void *anAddress) - { - if (anAddress) Standard::Free((Standard_Address&)anAddress); - } -// inline void operator delete(void *anAddress, size_t size) -// { -// if (anAddress) Standard::Free((Standard_Address&)anAddress,size); -// } - Handle(GEOM_FaceFilter)():Handle(GEOM_ShapeTypeFilter)() {} - Handle(GEOM_FaceFilter)(const Handle(GEOM_FaceFilter)& aHandle) : Handle(GEOM_ShapeTypeFilter)(aHandle) - { - } - - Handle(GEOM_FaceFilter)(const GEOM_FaceFilter* anItem) : Handle(GEOM_ShapeTypeFilter)((GEOM_ShapeTypeFilter *)anItem) - { - } - - Handle(GEOM_FaceFilter)& operator=(const Handle(GEOM_FaceFilter)& aHandle) - { - Assign(aHandle.Access()); - return *this; - } - - Handle(GEOM_FaceFilter)& operator=(const GEOM_FaceFilter* anItem) - { - Assign((Standard_Transient *)anItem); - return *this; - } - - GEOM_FaceFilter* operator->() - { - return (GEOM_FaceFilter *)ControlAccess(); - } - - GEOM_FaceFilter* operator->() const - { - return (GEOM_FaceFilter *)ControlAccess(); - } - - Standard_EXPORT ~Handle(GEOM_FaceFilter)(); - - Standard_EXPORT static const Handle(GEOM_FaceFilter) DownCast(const Handle(Standard_Transient)& AnObject); -}; -#endif diff --git a/src/GEOMFiltersSelection/Handle_GEOM_PreviewFilter.hxx b/src/GEOMFiltersSelection/Handle_GEOM_PreviewFilter.hxx deleted file mode 100644 index a5d7c5312..000000000 --- a/src/GEOMFiltersSelection/Handle_GEOM_PreviewFilter.hxx +++ /dev/null @@ -1,100 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2004 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : Handle_GEOM_PreviewFilter -// Module : GEOM - -#ifndef _Handle_GEOM_PreviewFilter_HeaderFile -#define _Handle_GEOM_PreviewFilter_HeaderFile - -#ifndef _Standard_Macro_HeaderFile -#include -#endif -#ifndef _Standard_HeaderFile -#include -#endif - -#ifndef _Handle_SALOME_Filter_HeaderFile -#include "Handle_SALOME_Filter.hxx" -#endif - -class Standard_Transient; -class Handle_Standard_Type; -class Handle(SALOME_Filter); -class GEOM_PreviewFilter; -Standard_EXPORT Handle_Standard_Type& STANDARD_TYPE(GEOM_PreviewFilter); - -class Handle(GEOM_PreviewFilter) : public Handle(SALOME_Filter) { - public: - inline void* operator new(size_t,void* anAddress) - { - return anAddress; - } - inline void* operator new(size_t size) - { - return Standard::Allocate(size); - } - inline void operator delete(void *anAddress) - { - if (anAddress) Standard::Free((Standard_Address&)anAddress); - } -// inline void operator delete(void *anAddress, size_t size) -// { -// if (anAddress) Standard::Free((Standard_Address&)anAddress,size); -// } - Handle(GEOM_PreviewFilter)():Handle(SALOME_Filter)() {} - Handle(GEOM_PreviewFilter)(const Handle(GEOM_PreviewFilter)& aHandle) : Handle(SALOME_Filter)(aHandle) - { - } - - Handle(GEOM_PreviewFilter)(const GEOM_PreviewFilter* anItem) : Handle(SALOME_Filter)((SALOME_Filter *)anItem) - { - } - - Handle(GEOM_PreviewFilter)& operator=(const Handle(GEOM_PreviewFilter)& aHandle) - { - Assign(aHandle.Access()); - return *this; - } - - Handle(GEOM_PreviewFilter)& operator=(const GEOM_PreviewFilter* anItem) - { - Assign((Standard_Transient *)anItem); - return *this; - } - - GEOM_PreviewFilter* operator->() - { - return (GEOM_PreviewFilter *)ControlAccess(); - } - - GEOM_PreviewFilter* operator->() const - { - return (GEOM_PreviewFilter *)ControlAccess(); - } - - Standard_EXPORT ~Handle(GEOM_PreviewFilter)(); - - Standard_EXPORT static const Handle(GEOM_PreviewFilter) DownCast(const Handle(Standard_Transient)& AnObject); -}; -#endif diff --git a/src/GEOMFiltersSelection/Handle_GEOM_ShapeTypeFilter.hxx b/src/GEOMFiltersSelection/Handle_GEOM_ShapeTypeFilter.hxx deleted file mode 100644 index c9de83ce3..000000000 --- a/src/GEOMFiltersSelection/Handle_GEOM_ShapeTypeFilter.hxx +++ /dev/null @@ -1,100 +0,0 @@ -// GEOM GEOMFiltersSelection : filter selector for the viewer -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// -// File : Handle_GEOM_ShapeTypeFilter.hxx -// Module : GEOM - -#ifndef _Handle_GEOM_ShapeTypeFilter_HeaderFile -#define _Handle_GEOM_ShapeTypeFilter_HeaderFile - -#ifndef _Standard_Macro_HeaderFile -#include -#endif -#ifndef _Standard_HeaderFile -#include -#endif - -#ifndef _Handle_SALOME_Filter_HeaderFile -#include "Handle_SALOME_Filter.hxx" -#endif - -class Standard_Transient; -class Handle_Standard_Type; -class Handle(SALOME_Filter); -class GEOM_ShapeTypeFilter; -Standard_EXPORT Handle_Standard_Type& STANDARD_TYPE(GEOM_ShapeTypeFilter); - -class Handle(GEOM_ShapeTypeFilter) : public Handle(SALOME_Filter) { - public: - inline void* operator new(size_t,void* anAddress) - { - return anAddress; - } - inline void* operator new(size_t size) - { - return Standard::Allocate(size); - } - inline void operator delete(void *anAddress) - { - if (anAddress) Standard::Free((Standard_Address&)anAddress); - } -// inline void operator delete(void *anAddress, size_t size) -// { -// if (anAddress) Standard::Free((Standard_Address&)anAddress,size); -// } - Handle(GEOM_ShapeTypeFilter)():Handle(SALOME_Filter)() {} - Handle(GEOM_ShapeTypeFilter)(const Handle(GEOM_ShapeTypeFilter)& aHandle) : Handle(SALOME_Filter)(aHandle) - { - } - - Handle(GEOM_ShapeTypeFilter)(const GEOM_ShapeTypeFilter* anItem) : Handle(SALOME_Filter)((SALOME_Filter *)anItem) - { - } - - Handle(GEOM_ShapeTypeFilter)& operator=(const Handle(GEOM_ShapeTypeFilter)& aHandle) - { - Assign(aHandle.Access()); - return *this; - } - - Handle(GEOM_ShapeTypeFilter)& operator=(const GEOM_ShapeTypeFilter* anItem) - { - Assign((Standard_Transient *)anItem); - return *this; - } - - GEOM_ShapeTypeFilter* operator->() - { - return (GEOM_ShapeTypeFilter *)ControlAccess(); - } - - GEOM_ShapeTypeFilter* operator->() const - { - return (GEOM_ShapeTypeFilter *)ControlAccess(); - } - - Standard_EXPORT ~Handle(GEOM_ShapeTypeFilter)(); - - Standard_EXPORT static const Handle(GEOM_ShapeTypeFilter) DownCast(const Handle(Standard_Transient)& AnObject); -}; -#endif diff --git a/src/GEOMFiltersSelection/Makefile.am b/src/GEOMFiltersSelection/Makefile.am index 43f5b0d17..d84453a4e 100644 --- a/src/GEOMFiltersSelection/Makefile.am +++ b/src/GEOMFiltersSelection/Makefile.am @@ -1,75 +1,72 @@ -# GEOM GEOMFiltersSelection : filter selector for the viewer +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# GEOM GEOMFiltersSelection : filter selector for the viewer +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : GEOMFiltersSelection # -# File : Makefile.in -# Author : Patrick GOLDBRONN (CEA) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header$ - include $(top_srcdir)/adm_local/unix/make_common_starter.am # Libraries targets lib_LTLIBRARIES = libGEOMFiltersSelection.la # header files -salomeinclude_HEADERS = \ - GEOM_SelectionFilter.h \ - GEOM_EdgeFilter.h \ - GEOM_FaceFilter.h \ - GEOM_TypeFilter.h \ - GEOM_PreviewFilter.h \ - GEOM_LogicalFilter.h \ - GEOM_OCCFilter.h +salomeinclude_HEADERS = \ + GEOM_SelectionFilter.h \ + GEOM_EdgeFilter.h \ + GEOM_FaceFilter.h \ + GEOM_TypeFilter.h \ + GEOM_PreviewFilter.h \ + GEOM_LogicalFilter.h \ + GEOM_OCCFilter.h \ + GEOM_CompoundFilter.h # Sources dist_libGEOMFiltersSelection_la_SOURCES = \ - GEOM_SelectionFilter.cxx \ - GEOM_EdgeFilter.cxx \ - GEOM_FaceFilter.cxx \ - GEOM_TypeFilter.cxx \ - GEOM_PreviewFilter.cxx \ - GEOM_LogicalFilter.cxx \ - GEOM_OCCFilter.cxx + GEOM_SelectionFilter.cxx \ + GEOM_EdgeFilter.cxx \ + GEOM_FaceFilter.cxx \ + GEOM_TypeFilter.cxx \ + GEOM_PreviewFilter.cxx \ + GEOM_LogicalFilter.cxx \ + GEOM_OCCFilter.cxx \ + GEOM_CompoundFilter.cxx -# LIB_CLIENT_IDL= GEOM_Gen.idl SALOMEDS.idl SALOME_Exception.idl SALOME_GenericObj.idl SALOME_Component.idl +# additional information to compile and link file - -# additionnal information to compil and link file -libGEOMFiltersSelection_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(BOOST_CPPFLAGS) \ - $(GUI_CXXFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../GEOMClient \ - -I$(top_builddir)/idl \ +libGEOMFiltersSelection_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(BOOST_CPPFLAGS) \ + $(GUI_CXXFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../GEOMClient \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix libGEOMFiltersSelection_la_LDFLAGS = \ - ../../idl/libSalomeIDLGEOM.la \ - ../GEOMClient/libGEOMClient.la \ - $(GUI_LDFLAGS) -lsuit -lSalomeApp -lSalomeSession \ + ../../idl/libSalomeIDLGEOM.la \ + ../GEOMClient/libGEOMClient.la \ + $(GUI_LDFLAGS) -lsuit -lSalomeApp -lSalomeSession \ $(KERNEL_LDFLAGS) -lSalomeLifeCycleCORBA -lSalomeContainer -lTOOLSDS diff --git a/src/GEOMGUI/GEOMGUI.cxx b/src/GEOMGUI/GEOMGUI.cxx index aa6f6eae1..c6797a789 100644 --- a/src/GEOMGUI/GEOMGUI.cxx +++ b/src/GEOMGUI/GEOMGUI.cxx @@ -1,39 +1,33 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMGUI.cxx +// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com) // -// File : GEOMGUI.cxx -// Author : Vadim SANDLER -// Module : GEOM -// $Header$ - #include "GEOMGUI.h" - -#include "SUIT_Desktop.h" -#include "SUIT_ViewWindow.h" - #include "GeometryGUI.h" -#include +#include +#include //================================================================================= // class : GEOMGUI::GEOMGUI diff --git a/src/GEOMGUI/GEOMGUI.h b/src/GEOMGUI/GEOMGUI.h index 8874590bb..afb014ab2 100644 --- a/src/GEOMGUI/GEOMGUI.h +++ b/src/GEOMGUI/GEOMGUI.h @@ -1,37 +1,34 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : GEOMGUI.h -// Author : Vadim SANDLER -// Module : GEOM -// $Header$ - -#if !defined( __GEOMGUI_H ) -#define __GEOMGUI_H +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMGUI.h +// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com) +// +#ifndef GEOMGUI_H +#define GEOMGUI_H #include "GEOM_GEOMGUI.hxx" -#include +#include class SUIT_Desktop; class SUIT_ViewWindow; @@ -67,5 +64,5 @@ private: GeometryGUI* myGeometryGUI; }; -#endif // __GEOMGUI_H +#endif // GEOMGUI_H diff --git a/src/GEOMGUI/GEOMGUI.pro b/src/GEOMGUI/GEOMGUI.pro new file mode 100644 index 000000000..9e95a0a26 --- /dev/null +++ b/src/GEOMGUI/GEOMGUI.pro @@ -0,0 +1,85 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = GEOM +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +QT_INCLUDES = $$(QTDIR)/include $$(QTDIR)/include/QtCore $$(QTDIR)/include/QtGui $$(QTDIR)/include/QtOpenGL $$(QTDIR)/include/QtXml + +VTK_INCLUDES = $$(VTKHOME)/include/vtk + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +PYTHON_INCLUDES = $$(PYTHONHOME)/include/python2.4 + +BOOST_CPPFLAGS = $$(BOOSTDIR)/include + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +GUI_CXXFLAGS = $$(GUI_ROOT_DIR)/include/salome + +CORBA_INCLUDES = $$(OMNIORBDIR)/include $$(OMNIORBDIR)/include/omniORB4 $$(OMNIORBDIR)/include/COS + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +GUI_LDFLAGS = -L$$(GUI_ROOT_DIR)/lib/salome + +INCLUDEPATH += $${QT_INCLUDES} $${VTK_INCLUDES} $${CAS_CPPFLAGS} $${PYTHON_INCLUDES} $${BOOST_CPPFLAGS} $${KERNEL_CXXFLAGS} $${GUI_CXXFLAGS} $${CORBA_INCLUDES} ../OBJECT ../GEOMFiltersSelection ../GEOMClient ../GEOMImpl $$(GEOM_ROOT_DIR)/idl $$(GEOM_ROOT_DIR)/salome_adm/unix + +LIBS += -L$$(GEOM_ROOT_DIR)/lib -lGEOMFiltersSelection -lGEOMClient -lGEOMObject $${KERNEL_LDFLAGS} -lSalomeLifeCycleCORBA $${GUI_LDFLAGS} -lOCCViewer -lVTKViewer -lCAM -lSOCC -lSVTK -lEvent + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += GEOMGUI_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS OMNIORB_VERSION=4 __x86__ __linux__ COMP_CORBA_DOUBLE COMP_CORBA_LONG + +HEADERS = GeometryGUI.h +HEADERS += GEOMGUI.h +HEADERS += GEOM_Displayer.h +HEADERS += GEOMGUI_OCCSelector.h +HEADERS += GEOMGUI_Selection.h +HEADERS += GeometryGUI_Swig.hxx +HEADERS += GeometryGUI_Swig.i +HEADERS += GEOM_GEOMGUI.hxx + +SOURCES = GeometryGUI.cxx +SOURCES += GEOMGUI.cxx +SOURCES += GEOM_Displayer.cxx +SOURCES += GEOMGUI_OCCSelector.cxx +SOURCES += GEOMGUI_Selection.cxx +SOURCES += GeometryGUI_Swig.cxx + +TRANSLATIONS = GEOM_images.ts \ + GEOM_msg_en.ts \ + GEOM_msg_fr.ts + +includes.files = $$HEADERS +includes.path = ../../include + +resources.files = *.qm +resources.path = ../../resources + +INSTALLS += includes resources diff --git a/src/GEOMGUI/GEOMGUI_OCCSelector.cxx b/src/GEOMGUI/GEOMGUI_OCCSelector.cxx index 0cd04c86f..6fed25fa8 100644 --- a/src/GEOMGUI/GEOMGUI_OCCSelector.cxx +++ b/src/GEOMGUI/GEOMGUI_OCCSelector.cxx @@ -1,23 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMGUI_OCCSelector.cxx +// Author : Alexander SOLOVYOV, Open CASCADE S.A.S. (alexander.solovyov@opencascade.com) // - #include "GEOMGUI_OCCSelector.h" #include @@ -100,6 +104,7 @@ void GEOMGUI_OCCSelector::getSelection( SUIT_DataOwnerPtrList& aList ) const if (!bigShape.IsEqual(curBigShape)) { curBigShape = bigShape; + subShapes.Clear(); TopExp::MapShapes(bigShape, subShapes); } index = subShapes.FindIndex(subShape); @@ -211,12 +216,12 @@ void GEOMGUI_OCCSelector::setSelection( const SUIT_DataOwnerPtrList& aList ) { QString entry = subOwner->entry(); #ifndef WNT - if ( indexesMap.IsBound( TCollection_AsciiString((char*)entry.latin1()))) + if ( indexesMap.IsBound( TCollection_AsciiString(entry.toLatin1().data()))) #else - if ( indexesMap.IsBound( (char*)entry.latin1())) + if ( indexesMap.IsBound( entry.toLatin1().data() ) ) #endif { - TColStd_IndexedMapOfInteger& subIndexes = indexesMap.ChangeFind((char*)entry.latin1()); + TColStd_IndexedMapOfInteger& subIndexes = indexesMap.ChangeFind(entry.toLatin1().data()); subIndexes.Add( subOwner->index() ); //indexesMap.replace( entry, subIndexes ); } @@ -224,7 +229,7 @@ void GEOMGUI_OCCSelector::setSelection( const SUIT_DataOwnerPtrList& aList ) { TColStd_IndexedMapOfInteger subIndexes; subIndexes.Add( subOwner->index() ); - indexesMap.Bind((char*)entry.latin1(), subIndexes); + indexesMap.Bind(entry.toLatin1().data(), subIndexes); } } else // the owner is NOT a sub owner, maybe it is a DataOwner == GLOBAL selection @@ -268,10 +273,11 @@ void GEOMGUI_OCCSelector::setSelection( const SUIT_DataOwnerPtrList& aList ) { // has a local selection Handle(AIS_Shape) aisShape = Handle(AIS_Shape)::DownCast( io ); - if (!aisShape.IsNull() && indexesMap.IsBound((char*)entryStr.latin1())) + if (!aisShape.IsNull() && indexesMap.IsBound(entryStr.toLatin1().data())) { isLocal = true; TopoDS_Shape shape = aisShape->Shape(); + aMapOfShapes.Clear(); TopExp::MapShapes(shape, aMapOfShapes); } } @@ -298,7 +304,7 @@ void GEOMGUI_OCCSelector::setSelection( const SUIT_DataOwnerPtrList& aList ) if (isLocal) { const TColStd_IndexedMapOfInteger& subIndexes = - indexesMap.ChangeFind((char*)entryStr.latin1()); + indexesMap.ChangeFind(entryStr.toLatin1().data()); const TopoDS_Shape& aSubShape = anOwner->Shape(); int aSubShapeId = aMapOfShapes.FindIndex( aSubShape ); diff --git a/src/GEOMGUI/GEOMGUI_OCCSelector.h b/src/GEOMGUI/GEOMGUI_OCCSelector.h index 81be7bc3b..ff16ecf25 100644 --- a/src/GEOMGUI/GEOMGUI_OCCSelector.h +++ b/src/GEOMGUI/GEOMGUI_OCCSelector.h @@ -1,21 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMGUI_OCCSelector.h +// Author : Alexander SOLOVYOV, Open CASCADE S.A.S. (alexander.solovyov@opencascade.com) // #ifndef GEOMGUI_OCCSELECTOR_H #define GEOMGUI_OCCSELECTOR_H @@ -36,4 +42,4 @@ protected: }; -#endif +#endif // GEOMGUI_OCCSELECTOR_H diff --git a/src/GEOMGUI/GEOMGUI_Selection.cxx b/src/GEOMGUI/GEOMGUI_Selection.cxx index 70cb563b5..d89088f61 100644 --- a/src/GEOMGUI/GEOMGUI_Selection.cxx +++ b/src/GEOMGUI/GEOMGUI_Selection.cxx @@ -1,40 +1,39 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMGUI_Selection.cxx +// Author : Alexander SOLOVYOV, Open CASCADE S.A.S. (alexander.solovyov@opencascade.com) // #include "GEOMGUI_Selection.h" #include "GeometryGUI.h" #include "GEOM_Displayer.h" -#include #include #include -#include - +#include #include #include #include -#include - -#include -#include #include #include @@ -46,7 +45,7 @@ #include #include -#include "GEOMImpl_Types.hxx" +#include // OCCT Includes #include @@ -57,6 +56,7 @@ #include GEOMGUI_Selection::GEOMGUI_Selection() +: LightApp_Selection() { } @@ -64,28 +64,28 @@ GEOMGUI_Selection::~GEOMGUI_Selection() { } -QtxValue GEOMGUI_Selection::globalParam( const QString& p ) const +QVariant GEOMGUI_Selection::parameter( const QString& p ) const { - if ( p == "isOCC" ) return QtxValue( activeViewType() == OCCViewer_Viewer::Type() ); + if ( p == "isOCC" ) return QVariant( activeViewType() == OCCViewer_Viewer::Type() ); if ( p == "selectionmode" ){ - return QtxValue(selectionMode()); + return QVariant(selectionMode()); } - return LightApp_Selection::globalParam( p ); + return LightApp_Selection::parameter( p ); } -QtxValue GEOMGUI_Selection::param( const int ind, const QString& p ) const +QVariant GEOMGUI_Selection::parameter( const int ind, const QString& p ) const { -// if ( p == "isVisible" ) return QtxValue( isVisible( ind ) ); +// if ( p == "isVisible" ) return QVariant( isVisible( ind ) ); // parameter isVisible is calculated in base SalomeApp_Selection // else if( p == "type" ) - return QtxValue( typeName( ind ) ); + return QVariant( typeName( ind ) ); else if ( p == "displaymode" ) - return QtxValue( displayMode( ind ) ); + return QVariant( displayMode( ind ) ); else if ( p == "isAutoColor" ) - return QtxValue( isAutoColor( ind ) ); + return QVariant( isAutoColor( ind ) ); else - return LightApp_Selection::param( ind, p ); + return LightApp_Selection::parameter( ind, p ); } QString GEOMGUI_Selection::typeName( const int index ) const @@ -108,7 +108,7 @@ bool GEOMGUI_Selection::isVisible( const int index ) const GEOM::GEOM_Object_var obj = getObject( index ); SALOME_View* view = GEOM_Displayer::GetActiveView(); if ( !CORBA::is_nil( obj ) && view ) { - Handle(SALOME_InteractiveObject) io = new SALOME_InteractiveObject( entry( index ).latin1(), "GEOM", "TEMP_IO" ); + Handle(SALOME_InteractiveObject) io = new SALOME_InteractiveObject( entry( index ).toLatin1().constData(), "GEOM", "TEMP_IO" ); return view->isVisible( io ); } return false; @@ -127,7 +127,7 @@ QString GEOMGUI_Selection::displayMode( const int index ) const SALOME_View* view = GEOM_Displayer::GetActiveView(); QString viewType = activeViewType(); if ( view /*fix for 9320==>*/&& ( viewType == OCCViewer_Viewer::Type() || viewType == SVTK_Viewer::Type() ) ) { - SALOME_Prs* prs = view->CreatePrs( entry( index ) ); + SALOME_Prs* prs = view->CreatePrs( entry( index ).toLatin1().constData() ); if ( prs ) { if ( viewType == OCCViewer_Viewer::Type() ) { // assuming OCC SOCC_Prs* occPrs = (SOCC_Prs*) prs; @@ -187,7 +187,7 @@ bool GEOMGUI_Selection::isComponent( const int index ) const QString anEntry = entry( index ); if ( study && !anEntry.isNull() ) { - _PTR(SObject) aSO( study->FindObjectID( anEntry.latin1() ) ); + _PTR(SObject) aSO( study->FindObjectID( anEntry.toStdString() ) ); if ( aSO && aSO->GetFatherComponent() ) return aSO->GetFatherComponent()->GetIOR() == aSO->GetIOR(); } @@ -205,7 +205,7 @@ GEOM::GEOM_Object_ptr GEOMGUI_Selection::getObject( const int index ) const QString anEntry = entry(index); if (study && !anEntry.isNull()) { - _PTR(SObject) aSO (study->FindObjectID(anEntry.latin1())); + _PTR(SObject) aSO (study->FindObjectID(anEntry.toStdString())); if (aSO) { CORBA::Object_var anObj = GeometryGUI::ClientSObjectToObject(aSO); return GEOM::GEOM_Object::_narrow(anObj); diff --git a/src/GEOMGUI/GEOMGUI_Selection.h b/src/GEOMGUI/GEOMGUI_Selection.h index 5690229b4..35b90f225 100644 --- a/src/GEOMGUI/GEOMGUI_Selection.h +++ b/src/GEOMGUI/GEOMGUI_Selection.h @@ -1,6 +1,6 @@ -// GEOMGUI_Selection +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,17 +17,13 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// File : GEOMGUI_Selection.h +// Author : Alexander SOLOVYOV, Open CASCADE S.A.S. (alexander.solovyov@opencascade.com) // -// -// File : GEOMGUI_Selection.h -// Author : Alexander SOLOVYOV -// Module : GUI -// $Header$ - -#ifndef GEOMGUI_SELECTION_HeaderFile -#define GEOMGUI_SELECTION_HeaderFile +#ifndef GEOMGUI_SELECTION_H +#define GEOMGUI_SELECTION_H #include "GEOM_GEOMGUI.hxx" @@ -36,14 +32,16 @@ #include #include CORBA_SERVER_HEADER(GEOM_Gen) +class LightApp_SelectionMgr; + class GEOMGUI_EXPORT GEOMGUI_Selection : public LightApp_Selection { public: GEOMGUI_Selection(); virtual ~GEOMGUI_Selection(); - virtual QtxValue param( const int, const QString& ) const; - virtual QtxValue globalParam( const QString& ) const; + virtual QVariant parameter( const int, const QString& ) const; + virtual QVariant parameter( const QString& ) const; private: bool isVisible( const int ) const; @@ -56,4 +54,4 @@ private: GEOM::GEOM_Object_ptr getObject( const int ) const; }; -#endif +#endif // GEOMGUI_SELECTION_H diff --git a/src/GEOMGUI/GEOM_Displayer.cxx b/src/GEOMGUI/GEOM_Displayer.cxx index fdceadb4d..b183b3f53 100644 --- a/src/GEOMGUI/GEOM_Displayer.cxx +++ b/src/GEOMGUI/GEOM_Displayer.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,38 +17,36 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOM_Displayer.cxx +// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com) // -// -// File : GEOM_Displayer.cxx -// Author : Vadim SANDLER -// Module : GEOM -// $Header$ - #include "GEOM_Displayer.h" #include "GeometryGUI.h" -#include "GEOM_TypeFilter.h" -#include "GEOM_EdgeFilter.h" -#include "GEOM_FaceFilter.h" -#include "GEOM_PreviewFilter.h" -#include "GEOM_LogicalFilter.h" -#include "GEOM_OCCFilter.h" +#include +#include +#include +#include +#include +#include +#include -#include "GEOM_Actor.h" -#include "GEOM_AssemblyBuilder.h" -#include "GEOM_AISShape.hxx" -#include "GEOM_AISVector.hxx" -#include "GEOM_AISTrihedron.hxx" -#include "GEOM_VTKTrihedron.hxx" +#include +#include +#include +#include +#include +#include #include #include #include -#include #include +#include #include #include @@ -57,6 +55,8 @@ #include #include +#include +#include #include #include @@ -64,15 +64,11 @@ #include #include -#include -#include - // OCCT Includes #include #include #include #include -#include #include #include #include @@ -88,13 +84,10 @@ #include #include -// STL Includes -#include - // CORBA Headers #include CORBA_CLIENT_HEADER(SALOMEDS_Attributes) -#include "GEOMImpl_Types.hxx" +#include using namespace std; @@ -167,6 +160,30 @@ SUIT_SelectionFilter* GEOM_Displayer::getFilter( const int theMode ) return aFilter; } +//================================================================ +// Function : getComplexFilter +// Purpose : Get compound filter corresponding to the type of +// object from GEOMImpl_Types.h +//================================================================ +SUIT_SelectionFilter* GEOM_Displayer::getComplexFilter( const QList* aSubShapes) +{ + GEOM_CompoundFilter* aFilter; + + if(aSubShapes != NULL ) { + aFilter = new GEOM_CompoundFilter(getStudy()); + QList aTopAbsTypes; + QList::const_iterator it; + for(it = aSubShapes->constBegin(); it != aSubShapes->constEnd(); ++it ) { + int topAbsMode = getTopAbsMode(*it); + if(topAbsMode != -1 ) + aTopAbsTypes.append(topAbsMode); + } + aFilter->addSubTypes(aTopAbsTypes); + } + + return aFilter; +} + //================================================================ // Function : getEntry // Purpose : @@ -379,9 +396,10 @@ void GEOM_Displayer::Redisplay( const Handle(SALOME_InteractiveObject)& theIO, if ( app ) { SUIT_Desktop* desk = app->desktop(); - QPtrList wnds = desk->windows(); + QList wnds = desk->windows(); SUIT_ViewWindow* wnd; - for ( wnd = wnds.first(); wnd; wnd = wnds.next() ) + QListIterator it( wnds ); + while ( it.hasNext() && (wnd = it.next()) ) { SUIT_ViewManager* vman = wnd->getViewManager(); if ( vman ) @@ -612,6 +630,10 @@ void GEOM_Displayer::Update( SALOME_OCCPrs* prs ) anAspect = AISShape->Attributes()->WireAspect(); anAspect->SetColor( aColor ); AISShape->Attributes()->SetWireAspect( anAspect ); + + // bug [SALOME platform 0019868] + // Set deviation angle. Default one is 12 degrees (Prs3d_Drawer.cxx:18) + AISShape->SetOwnDeviationAngle( 10*PI/180 ); } } @@ -666,7 +688,7 @@ void GEOM_Displayer::Update( SALOME_OCCPrs* prs ) GEOM::GEOM_Object_var aMainObject = anOperations->GetMainShape( aGeomObject ); if ( !aMainObject->_is_nil() && aMainObject->GetAutoColor() ) { - QValueList aReservedColors; + QList aReservedColors; SalomeApp_Application* app = dynamic_cast( app ); CORBA::String_var IOR = app->orb()->object_to_string( aMainObject ); @@ -929,7 +951,7 @@ SALOME_Prs* GEOM_Displayer::buildPresentation( const QString& entry, if ( prs ) { Handle( SALOME_InteractiveObject ) theIO = new SALOME_InteractiveObject(); - theIO->setEntry( entry.latin1() ); + theIO->setEntry( entry.toLatin1().constData() ); if ( !theIO.IsNull() ) { // set interactive object @@ -1032,7 +1054,7 @@ void GEOM_Displayer::GlobalSelection( const int theMode, const bool update ) */ //================================================================= void GEOM_Displayer::GlobalSelection( const TColStd_MapOfInteger& theModes, - const bool update ) + const bool update, const QList* theSubShapes ) { SUIT_Session* session = SUIT_Session::session(); SalomeApp_Application* app = dynamic_cast( session->activeApplication() ); @@ -1076,16 +1098,26 @@ void GEOM_Displayer::GlobalSelection( const TColStd_MapOfInteger& theModes, if ( theModes.Extent() == 1 ) { int aMode = TColStd_MapIteratorOfMapOfInteger( theModes ).Key(); - aFilter = getFilter( aMode ); + + if ( aMode == GEOM_COMPOUNDFILTER ) + aFilter = getComplexFilter( theSubShapes ); + else + aFilter = getFilter( aMode ); } else if ( theModes.Extent() > 1 ) { TColStd_MapOfInteger aTopAbsModes; TColStd_MapIteratorOfMapOfInteger anIter( theModes ); - QPtrList aListOfFilters; + QList aListOfFilters; for ( ; anIter.More(); anIter.Next() ) { - SUIT_SelectionFilter* aFilter = getFilter( anIter.Key() ); + SUIT_SelectionFilter* aFilter; + int aMode = anIter.Key(); + if ( aMode == GEOM_COMPOUNDFILTER ) + aFilter = getComplexFilter( theSubShapes ); + else + aFilter = getFilter( aMode ); + if ( aFilter ) aListOfFilters.append( aFilter ); } @@ -1300,7 +1332,7 @@ int GEOM_Displayer::UnsetDisplayMode() return aPrevMode; } -SALOMEDS::Color GEOM_Displayer::getUniqueColor( const QValueList& theReservedColors ) +SALOMEDS::Color GEOM_Displayer::getUniqueColor( const QList& theReservedColors ) { int aHue = -1; int aTolerance = 64; @@ -1323,8 +1355,8 @@ SALOMEDS::Color GEOM_Displayer::getUniqueColor( const QValueList::const_iterator it = theReservedColors.constBegin(); - QValueList::const_iterator itEnd = theReservedColors.constEnd(); + QList::const_iterator it = theReservedColors.constBegin(); + QList::const_iterator itEnd = theReservedColors.constEnd(); for( ; it != itEnd; ++it ) { SALOMEDS::Color anAutoColor = *it; diff --git a/src/GEOMGUI/GEOM_Displayer.h b/src/GEOMGUI/GEOM_Displayer.h index 8c877c94f..90b551fc3 100644 --- a/src/GEOMGUI/GEOM_Displayer.h +++ b/src/GEOMGUI/GEOM_Displayer.h @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,31 +17,32 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOM_Displayer.h +// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com) // -// -// File : GEOM_Displayer.h -// Author : Vadim SANDLER -// Module : GEOM -// $Header$ - -#if !defined (__GEOM_DISPLAYER_H) -#define __GEOM_DISPLAYER_H - -using namespace std; +#ifndef GEOM_DISPLAYER_H +#define GEOM_DISPLAYER_H #include "GEOM_GEOMGUI.hxx" -#include "SALOME_Prs.h" -#include "SALOME_InteractiveObject.hxx" -#include "SALOME_ListIO.hxx" +#include + +class SALOME_ListIO; +class SALOME_View; +class SALOME_Prs; +class SALOME_OCCPrs; +class SALOME_VTKPrs; +class SALOME_OCCViewType; + #include #include #include #include -#include +#include #include @@ -148,11 +149,11 @@ public: void LocalSelection( const Handle(SALOME_InteractiveObject)&, const int ); void LocalSelection( const SALOME_ListIO& theIOList, const int ); void GlobalSelection( const int = GEOM_ALLOBJECTS, const bool = false ); - void GlobalSelection( const TColStd_MapOfInteger&, const bool = false ); + void GlobalSelection( const TColStd_MapOfInteger&, const bool = false, const QList* = 0 ); SalomeApp_Study* getStudy() const; - static SALOMEDS::Color getUniqueColor( const QValueList& ); + static SALOMEDS::Color getUniqueColor( const QList& ); protected: /* internal methods */ @@ -171,11 +172,12 @@ protected: void clearTemporary( LightApp_SelectionMgr* theSelMgr ); SUIT_SelectionFilter* getFilter( const int theMode ); + SUIT_SelectionFilter* getComplexFilter( const QList* ); protected: Handle(SALOME_InteractiveObject) myIO; TopoDS_Shape myShape; - string myName; + std::string myName; int myType; SALOME_View* myViewFrame; @@ -192,5 +194,5 @@ private: SalomeApp_Application* myApp; }; -#endif // __GEOM_DISPLAYER_H +#endif // GEOM_DISPLAYER_H diff --git a/src/GEOMGUI/GEOM_GEOMGUI.hxx b/src/GEOMGUI/GEOM_GEOMGUI.hxx index 9508b0d19..525dde08d 100755 --- a/src/GEOMGUI/GEOM_GEOMGUI.hxx +++ b/src/GEOMGUI/GEOM_GEOMGUI.hxx @@ -1,47 +1,38 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// 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. // -// File : GEOM_GEOMGUI.hxx -// Author : Alexander A. BORODIN -// Module : GEOM +// 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 : GEOM_GEOMGUI.hxx +// Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +// +#ifndef GEOM_GEOMGUI_HXX +#define GEOM_GEOMGUI_HXX -#ifndef _GEOM_GEOMGUI_HXX_ -#define _GEOM_GEOMGUI_HXX_ - -#ifdef WNT - #if defined GEOMGUI_EXPORTS - #if defined WIN32 - #define GEOMGUI_EXPORT __declspec( dllexport ) - #else - #define GEOMGUI_EXPORT - #endif - #else - #if defined WIN32 - #define GEOMGUI_EXPORT __declspec( dllimport ) - #else - #define GEOMGUI_EXPORT - #endif - #endif +#if defined WIN32 +# if defined GEOMGUI_EXPORTS +# define GEOMGUI_EXPORT __declspec( dllexport ) +# else +# define GEOMGUI_EXPORT __declspec( dllimport ) +# endif #else - #define GEOMGUI_EXPORT +# define GEOMGUI_EXPORT #endif -#endif +#endif // GEOM_GEOMGUI_HXX diff --git a/src/GEOMGUI/GEOM_images.po b/src/GEOMGUI/GEOM_images.po index 01755c674..275247377 100644 --- a/src/GEOMGUI/GEOM_images.po +++ b/src/GEOMGUI/GEOM_images.po @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,12 +17,13 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # # This is a Qt message file in .po format. Each msgid starts with # a scope. This scope should *NOT* be translated - eg. translating # from French to English, "Foo::Bar" would be translated to "Pub", # not "Foo::Pub". +# msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" diff --git a/src/GEOMGUI/GEOM_images.ts b/src/GEOMGUI/GEOM_images.ts new file mode 100644 index 000000000..a4c96d025 --- /dev/null +++ b/src/GEOMGUI/GEOM_images.ts @@ -0,0 +1,1009 @@ + + + + + @default + + ICON_DLG_ADD_POINT_ON_EDGE + pointonedge.png + + + ICON_DLG_ARC + arc.png + + + ICON_DLG_ARCHIMEDE + archimede.png + + + ICON_DLG_ARC_CENTER + arccenter.png + + + ICON_DLG_ARC_OF_ELLIPSE + arcofellipse.png + + + ICON_DLG_BASICPROPERTIES + basicproperties.png + + + ICON_DLG_BEZIER + bezier.png + + + ICON_DLG_BLOCK_2F + block_2f.png + + + ICON_DLG_BLOCK_6F + block_6f.png + + + ICON_DLG_BLOCK_EXPLODE + subblock.png + + + ICON_DLG_BLOCK_MULTITRSF_DOUBLE + block_multitrsf_double.png + + + ICON_DLG_BLOCK_MULTITRSF_SIMPLE + block_multitrsf_simple.png + + + ICON_DLG_BOUNDING_BOX + bounding.png + + + ICON_DLG_BOX_2P + box2points.png + + + ICON_DLG_BOX_DXYZ + boxdxyz.png + + + ICON_DLG_BUILD_COMPOUND + build_compound.png + + + ICON_DLG_DISK + disk.png + + + ICON_DLG_DISK_PNT_VEC_R + disk_pntvecr.png + + + ICON_DLG_DISK_THREE_POINTS + disk3points.png + + + ICON_DLG_DISK_R + disk_r.png + + + ICON_DLG_BUILD_EDGE + build_edge.png + + + ICON_DLG_BUILD_FACE + build_face.png + + + ICON_DLG_FACE_HW + face_hw.png + + + ICON_DLG_FACE_OBJ_HW + face_vechw.png + + + ICON_DLG_BUILD_SHELL + build_shell.png + + + ICON_DLG_BUILD_SOLID + build_solid.png + + + ICON_DLG_BUILD_WIRE + build_wire.png + + + ICON_DLG_CENTERMASS + centergravity.png + + + ICON_DLG_CHAMFER + chamfer.png + + + ICON_DLG_CHAMFER_ALL + chamferall.png + + + ICON_DLG_CHAMFER_EDGE + chamferedge.png + + + ICON_DLG_CHAMFER_EDGE_FROM_FACE + chamferedgefromface.png + + + ICON_DLG_CHAMFER_FACE + chamferface.png + + + ICON_DLG_CHANGE_ORIENTATION + change_orientation.png + + + ICON_DLG_REMOVE_EXTRA_EDGES + remove_extra_edges.png + + + ICON_DLG_CHECKSHAPE + check.png + + + ICON_DLG_CHECK_COMPOUND_OF_BLOCKS + check_blocks_compound.png + + + ICON_DLG_CIRCLE_PNTS + circle3points.png + + + ICON_DLG_CIRCLE_PV + circlepointvector.png + + + ICON_DLG_CIRCLE_C2P + circlecenter2pnts.png + + + ICON_DLG_CLOSECONTOUR + closecontour.png + + + ICON_DLG_COMMON + common.png + + + ICON_DLG_CONE_DXYZ + conedxyz.png + + + ICON_DLG_CONE_PV + conepointvector.png + + + ICON_DLG_CUT + cut.png + + + ICON_DLG_CYLINDER_DXYZ + cylinderdxyz.png + + + ICON_DLG_CYLINDER_PV + cylinderpointvector.png + + + ICON_DLG_DIVIDE_EDGE + pointonedge.png + + + ICON_DLG_ELLIPSE_PV + ellipsepointvector.png + + + ICON_DLG_FILLET + fillet.png + + + ICON_DLG_FILLET_2D + fillet2d.png + + + ICON_DLG_FILLET_ALL + filletall.png + + + ICON_DLG_FILLET_EDGE + filletedge.png + + + ICON_DLG_FILLET_FACE + filletface.png + + + ICON_DLG_FILLING + filling.png + + + ICON_DLG_FREE_FACES + free_faces.png + + + ICON_DLG_FUSE + fuse.png + + + ICON_DLG_GLUE_FACES + glue.png + + + ICON_DLG_GLUE_FACES2 + glue2.png + + + ICON_DLG_INERTIA + axisinertia.png + + + ICON_DLG_INTERPOL + interpol.png + + + ICON_DLG_LINE_2P + line2points.png + + + ICON_DLG_LINE_2F + line2faces.png + + + ICON_DLG_MINDIST + mindist.png + + + ICON_DLG_MIRROR_AXE + mirrorAxe.png + + + ICON_DLG_MIRROR_PLANE + mirrorPlane.png + + + ICON_DLG_MIRROR_POINT + mirrorPoint.png + + + ICON_DLG_MULTIROTATION + multirotation.png + + + ICON_DLG_MULTIROTATION_DOUBLE + multirotationdouble.png + + + ICON_DLG_MULTIROTATION_SIMPLE + multirotationsimple.png + + + ICON_DLG_MULTITRANSLATION + multitranslation.png + + + ICON_DLG_MULTITRANSLATION_DOUBLE + multitranslationdouble.png + + + ICON_DLG_MULTITRANSLATION_SIMPLE + multitranslationsimple.png + + + ICON_DLG_OFFSET + offset.png + + + ICON_DLG_PARTITION + partition.png + + + ICON_DLG_PARTITION_KEEP_FACES + partitionkeep.png + + + ICON_DLG_PARTITION_PLANE + partitionplane.png + + + ICON_DLG_PIPE + pipe.png + + + ICON_DLG_PIPE_BINORMAL + pipebinormal.png + + + ICON_DLG_PLANE_3PNTS + plane3points.png + + + ICON_DLG_PLANE_FACE + planeface.png + + + ICON_DLG_PLANE_PV + planepointvector.png + + + ICON_DLG_POINT + point2.png + + + ICON_DLG_POINT_EDGE + pointonedge.png + + + ICON_DLG_POINT_REF + point3.png + + + ICON_DLG_POINT_LINES + point_line_intersection.png + + + ICON_DLG_POLYLINE + polyline.png + + + ICON_DLG_POSITION + position.png + + + ICON_DLG_NORMALE + normale.png + + + ICON_DLG_ANGLE + angle.png + + + ICON_DLG_POSITION2 + position2.png + + + ICON_DLG_POSITION3 + position3.png + + + ICON_DLG_PRISM + prism.png + + + ICON_DLG_PRISM_2P + prism2.png + + + ICON_DLG_PRISM_DXDYDZ + prism3.png + + + ICON_DLG_PROPAGATE + propagate.png + + + ICON_DLG_QUAD_FACE_2_EDGE + block_face_2e.png + + + ICON_DLG_QUAD_FACE_4_EDGE + block_face_4e.png + + + ICON_DLG_QUAD_FACE_4_VERT + block_face_4v.png + + + ICON_DLG_REDO + redo.png + + + ICON_DLG_REVOL + revol.png + + + ICON_DLG_ROTATION + rotate.png + + + ICON_DLG_ROTATION_THREE_POINTS + rotatepnt.png + + + ICON_DLG_SCALE + scale.png + + + ICON_DLG_SECTION + section.png + + + ICON_DLG_SEWING + sewing.png + + + ICON_DLG_SHAPEPROCESS + shapeprocess.png + + + ICON_DLG_SPHERE_DXYZ + spheredxyz.png + + + ICON_DLG_SPHERE_P + spherepoint.png + + + ICON_DLG_SPLINE + spline.png + + + ICON_DLG_SUBSHAPE + subshape.png + + + ICON_DLG_SUPPRESS_HOLES + supressHolesOnFaceShell.png + + + ICON_DLG_SUPPRESS_INT_WIRES + suppressintwires.png + + + ICON_DLG_SUPRESS_FACE + supressface.png + + + ICON_DLG_SUPRESS_HOLE + supresshole.png + + + ICON_DLG_SUPRESS_HOLE_FACE_SHELL + supressHolesOnFaceShell.png + + + ICON_DLG_TOLERANCE + tolerance.png + + + ICON_DLG_TORUS_DXYZ + torusdxyz.png + + + ICON_DLG_TORUS_PV + toruspointvector.png + + + ICON_DLG_TRANSLATION_DXYZ + translationDxyz.png + + + ICON_DLG_TRANSLATION_POINTS + translationPoints.png + + + ICON_DLG_TRANSLATION_VECTOR + translationVector.png + + + ICON_DLG_UNDO + undo.png + + + ICON_DLG_VECTOR_2P + vector2points.png + + + ICON_DLG_VECTOR_DXYZ + vectordxyz.png + + + ICON_DLG_WHATIS + whatis.png + + + ICON_DLG_WPLANE_FACE + planeworkingface.png + + + ICON_DLG_WPLANE_ORIGIN + planeworkingorigin.png + + + ICON_DLG_WPLANE_VECTOR + planeworkingvector.png + + + ICON_MARKER + marker.png + + + ICON_MARKER2 + marker2.png + + + ICON_MARKER3 + marker3.png + + + ICON_OBJBROWSER_BLOCK + tree_block.png + + + ICON_OBJBROWSER_COMPOUND + tree_compound.png + + + ICON_OBJBROWSER_COMPSOLID + tree_compsolid.png + + + ICON_OBJBROWSER_EDGE + tree_edge.png + + + ICON_OBJBROWSER_FACE + tree_face.png + + + ICON_OBJBROWSER_GROUP_EDGE + tree_group_edge.png + + + ICON_OBJBROWSER_GROUP_FACE + tree_group_face.png + + + ICON_OBJBROWSER_GROUP_PNT + tree_group_vertex.png + + + ICON_OBJBROWSER_GROUP_SOLID + tree_group_solid.png + + + ICON_OBJBROWSER_Geometry + geometry.png + + + ICON_OBJBROWSER_LCS + tree_lcs.png + + + ICON_OBJBROWSER_SHAPE + tree_shape.png + + + ICON_OBJBROWSER_SHELL + tree_shell.png + + + ICON_OBJBROWSER_SOLID + tree_solid.png + + + ICON_OBJBROWSER_VERTEX + tree_vertex.png + + + ICON_OBJBROWSER_WIRE + tree_wire.png + + + ICON_SELECT + select1.png + + + ICO_ARC + arc.png + + + ICO_ARCHIMEDE + archimede.png + + + ICO_BASIC_PROPS + basicproperties.png + + + ICO_BND_BOX + bounding.png + + + ICO_BOX + box.png + + + ICO_CHAMFER + chamfer.png + + + ICO_CHANGE_ORIENTATION + change_orientation.png + + + ICO_CHECK + check.png + + + ICO_CHECK_COMPOUND + check_blocks_compound.png + + + ICO_CHECK_FREE_BNDS + free_bound.png + + + ICO_CHECK_FREE_FACES + free_faces.png + + + ICO_CIRCLE + circle.png + + + ICO_CLOSE_CONTOUR + closecontour.png + + + ICO_COMMON + common.png + + + ICO_COMPOUND + build_compound.png + + + ICO_COMPOUND_SEL_ONLY + build_compound.png + + + ICO_CONE + cone.png + + + ICO_CURVE + spline.png + + + ICO_CUT + cut.png + + + ICO_CYLINDER + cylinder.png + + + ICO_DELETE + delete.png + + + ICO_DISK + disk.png + + + ICO_DISPLAY + display.png + + + ICO_DISPLAY_ALL + displayall.png + + + ICO_DISPLAY_ONLY + displayonly.png + + + ICO_EDGE + build_edge.png + + + ICO_EDGE_SEL_ONLY + build_edge.png + + + ICO_ELLIPSE + ellipse.png + + + ICO_ERASE + erase.png + + + ICO_ERASE_ALL + eraseall.png + + + ICO_EXPLODE + subshape.png + + + ICO_EXPLODE_BLOCKS + subshape.png + + + ICO_EXTRUSION + prism.png + + + ICO_FACE + build_face.png + + + ICO_FACE_SEL_ONLY + build_face.png + + + ICO_FILLET + fillet.png + + + ICO_FILLET_2D + fillet2d.png + + + ICO_FILLING + filling.png + + + ICO_FUSE + fuse.png + + + ICO_GLUE_FACES + glue.png + + + ICO_GROUP_CREATE + group_new.png + + + ICO_GROUP_EDIT + group_edit.png + + + ICO_HEX_SOLID + box.png + + + ICO_INERTIA + axisinertia.png + + + ICO_LINE + line.png + + + ICO_LOCAL_CS + marker.png + + + ICO_MASS_CENTER + centergravity.png + + + ICO_MIN_DIST + mindist.png + + + ICO_MIRROR + mirrorPlane.png + + + ICO_MODIFY_LOCATION + position2.png + + + ICO_MUL_ROTATION + multirotation.png + + + ICO_MUL_TRANSFORM + multirotation.png + + + ICO_MUL_TRANSLATION + multitranslation.png + + + ICO_OFFSET + offset.png + + + ICO_PARTITION + partition.png + + + ICO_PIPE + pipe.png + + + ICO_PLANE + plane.png + + + ICO_REMOVE_EXTRA_EDGES + remove_extra_edges.png + + + ICO_NORMALE + normale.png + + + ICO_MEASURE_ANGLE + angle.png + + + ICO_POINT + point2.png + + + ICO_POINT_COORDS + point_coord.png + + + ICO_POINT_ON_EDGE + pointonedge.png + + + ICO_POP_CREATE_GROUP + group_new.png + + + ICO_PROPAGATE + propagate.png + + + ICO_Q_FACE + build_face.png + + + ICO_REVOLUTION + revol.png + + + ICO_ROTATION + rotate.png + + + ICO_SCALE + scale.png + + + ICO_SECTION + section.png + + + ICO_SEWING + sewing.png + + + ICO_SHADING + shading.png + + + ICO_SHAPE_PROCESS + shapeprocess.png + + + ICO_SHELL + build_shell.png + + + ICO_SHELL_SEL_ONLY + build_shell.png + + + ICO_SKETCH + sketch.png + + + ICO_3DSKETCH + 3dsketch.png + + + ICO_SOLID + build_solid.png + + + ICO_SOLID_SEL_ONLY + build_solid.png + + + ICO_SPHERE + sphere.png + + + ICO_SUPPERSS_HOLES + supresshole.png + + + ICO_SUPPRESS_FACES + supressface.png + + + ICO_SUPPRESS_INT_WIRES + suppressintwires.png + + + ICO_TOLERANCE + tolerance.png + + + ICO_TORUS + torus.png + + + ICO_TRANSLATION + translationVector.png + + + ICO_VECTOR + vector.png + + + ICO_VERTEX_SEL_ONLY + point2.png + + + ICO_WHAT_IS + whatis.png + + + ICO_WIRE + build_wire.png + + + ICO_WIRE_SEL_ONLY + build_wire.png + + + ICO_WORK_PLANE + planeWorking.png + + + ICO_GET_SHAPES_ON_SHAPES + shapesonshape.png + + + ICON_DLG_POINT_FACE + pointonface.png + + + ICON_DLG_SHAPES_ON_SHAPE + shapesonshape.png + + + ICON_DLG_SCALE_ALONG_AXES + scale_along_axes.png + + + diff --git a/src/GEOMGUI/GEOM_msg_en.po b/src/GEOMGUI/GEOM_msg_en.po index 11e004ab0..74caf6b0e 100644 --- a/src/GEOMGUI/GEOM_msg_en.po +++ b/src/GEOMGUI/GEOM_msg_en.po @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,17 +17,18 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # # This is a Qt message file in .po format. Each msgid starts with # a scope. This scope should *NOT* be translated - eg. translating # from French to English, "Foo::Bar" would be translated to "Pub", # not "Foo::Pub". +# msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "POT-Creation-Date: 2002-03-19 09:35:48 AM CET\n" -"PO-Revision-Date: 2003-10-27 17:32+0100\n" +"PO-Revision-Date: 2008-03-12 12:26+0300\n" "Last-Translator: FULLNAME \n" "Content-Type: text/plain; charset=iso-8859-1\n" @@ -183,11 +186,11 @@ msgstr "%1 Objects" #: GeometryGUI.cxx:4414 msgid "GEOM_MEN_SKETCHER_X" -msgstr "Enter a length to set X" +msgstr "Enter a Length to Set X" #: GeometryGUI.cxx:4438 msgid "GEOM_MEN_SKETCHER_Y" -msgstr "Enter a length to set Y" +msgstr "Enter a Length to Set Y" #: GeometryGUI.cxx:2898 msgid "GEOM_MEN_TRANSPARENCY" @@ -203,11 +206,11 @@ msgstr "Y :" #: GeometryGUI_NbIsosDlg.cxx:36 msgid "GEOM_MEN_ISOU" -msgstr "Isos u :" +msgstr "Isos U :" #: GeometryGUI_NbIsosDlg.cxx:53 msgid "GEOM_MEN_ISOV" -msgstr "Isos v :" +msgstr "Isos V :" #: GeometryGUI_TransparencyDlg.cxx:31 msgid "GEOM_MEN_TRANSPARENCY_LABEL" @@ -241,6 +244,9 @@ msgstr "Warning" msgid "GEOM_REALLY_DELETE" msgstr "Do you really want to delete this %1 object(s):" +msgid "GEOM_DELETE_OBJECTS" +msgstr "Delete objects" + # #============================================================================== # @@ -678,6 +684,10 @@ msgstr "Edge" msgid "GEOM_FACE" msgstr "Face" +#Face +msgid "GEOM_PLANAR_FACE" +msgstr "Planar Face" + #Faces msgid "GEOM_FACES" msgstr "Faces" @@ -1012,10 +1022,6 @@ msgstr "Tol. 3D :" msgid "GEOM_FILLING_NB_ITER" msgstr "Nb. Iter :" -#: GeometryGUI_FillingDlg.cxx:84 -msgid "GEOM_FILLING_APPROX" -msgstr "Approximation" - #: GeometryGUI_FuseDlg.cxx:48 msgid "GEOM_FUSE_TITLE" msgstr "BOOLEAN : Fuse Two Objects" @@ -1385,7 +1391,7 @@ msgstr "Wireframe" #: GeometryGUI.cxx:4613 msgid "GEOM_MEN_SHADING" -msgstr "\nShading" +msgstr "Shading" msgid "GEOM_RECONSTRUCTION_LIMIT" msgstr "Reconstruction Limit" @@ -2235,7 +2241,7 @@ msgid "TOP_WORK_PLANE" msgstr "Create a working plane" msgid "MEN_WORK_PLANE" -msgstr "Working plane" +msgstr "Working Plane" msgid "STB_WORK_PLANE" msgstr "Create a working plane" @@ -2244,7 +2250,7 @@ msgid "TOP_LOCAL_CS" msgstr "Create a local coordinate system" msgid "MEN_LOCAL_CS" -msgstr "Local coordinate system" +msgstr "Local Coordinate System" msgid "STB_LOCAL_CS" msgstr "Create a local coordinate system" @@ -2331,7 +2337,7 @@ msgid "TOP_PIPE" msgstr "Extrusion along a path" msgid "MEN_PIPE" -msgstr "Extrusion along a path" +msgstr "Extrusion Along a Path" msgid "STB_PIPE" msgstr "Create a shape by Extrusion along a path" @@ -2529,7 +2535,7 @@ msgid "TOP_MIRROR" msgstr "Mirror image" msgid "MEN_MIRROR" -msgstr "Mirror image" +msgstr "Mirror Image" msgid "STB_MIRROR" msgstr "Mirror image" @@ -2538,7 +2544,7 @@ msgid "TOP_SCALE" msgstr "Scale transform" msgid "MEN_SCALE" -msgstr "Scale transform" +msgstr "Scale Transform" msgid "STB_SCALE" msgstr "Scale transform" @@ -2547,7 +2553,7 @@ msgid "TOP_OFFSET" msgstr "Offset surface" msgid "MEN_OFFSET" -msgstr "Offset surface" +msgstr "Offset Surface" msgid "STB_OFFSET" msgstr "Offset surface" @@ -2610,7 +2616,7 @@ msgid "TOP_CLIPPING" msgstr "Clipping range" msgid "MEN_CLIPPING" -msgstr "Clipping range" +msgstr "Clipping Range" msgid "STB_CLIPPING" msgstr "Clipping range" @@ -2619,7 +2625,7 @@ msgid "TOP_MUL_TRANSFORM" msgstr "Multi-transformation" msgid "MEN_MUL_TRANSFORM" -msgstr "Multi-transformation" +msgstr "Multi-Transformation" msgid "STB_MUL_TRANSFORM" msgstr "Multi-transformation" @@ -2649,7 +2655,7 @@ msgid "TOP_SHAPE_PROCESS" msgstr "Perform shape processing" msgid "MEN_SHAPE_PROCESS" -msgstr "Shape processing" +msgstr "Shape Processing" msgid "STB_SHAPE_PROCESS" msgstr "Perform shape processing " @@ -2658,7 +2664,7 @@ msgid "TOP_SUPPRESS_FACES" msgstr "Perform suppress faces" msgid "MEN_SUPPRESS_FACES" -msgstr "Suppress faces" +msgstr "Suppress Faces" msgid "STB_SUPPRESS_FACES" msgstr "Perform suppress faces" @@ -2667,7 +2673,7 @@ msgid "TOP_CLOSE_CONTOUR" msgstr "Perform close contour" msgid "MEN_CLOSE_CONTOUR" -msgstr "Close contour" +msgstr "Close Contour" msgid "STB_CLOSE_CONTOUR" msgstr "Perform close contour" @@ -2676,7 +2682,7 @@ msgid "TOP_SUPPRESS_INT_WIRES" msgstr "Perform suppress internal wires" msgid "MEN_SUPPRESS_INT_WIRES" -msgstr "Suppress internal wires" +msgstr "Suppress Internal Wires" msgid "STB_SUPPRESS_INT_WIRES" msgstr "Perform suppress internal wires" @@ -2685,7 +2691,7 @@ msgid "TOP_SUPPERSS_HOLES" msgstr "Perform suppress holes" msgid "MEN_SUPPERSS_HOLES" -msgstr "Suppress holes" +msgstr "Suppress Holes" msgid "STB_SUPPERSS_HOLES" msgstr "Perform suppress holes" @@ -2703,7 +2709,7 @@ msgid "TOP_GLUE_FACES" msgstr "Perform glue faces" msgid "MEN_GLUE_FACES" -msgstr "Glue faces" +msgstr "Glue Faces" msgid "STB_GLUE_FACES" msgstr "Perform glue faces" @@ -2712,7 +2718,7 @@ msgid "TOP_POINT_ON_EDGE" msgstr "Add point on edge" msgid "MEN_POINT_ON_EDGE" -msgstr "Add point on edge" +msgstr "Add Point on Edge" msgid "STB_POINT_ON_EDGE" msgstr "Add point on edge" @@ -2721,7 +2727,7 @@ msgid "TOP_CHECK_FREE_BNDS" msgstr "Check free boundaries" msgid "MEN_CHECK_FREE_BNDS" -msgstr "Check free boundaries" +msgstr "Check Free Boundaries" msgid "STB_CHECK_FREE_BNDS" msgstr "Check free boundaries" @@ -2730,7 +2736,7 @@ msgid "TOP_CHECK_FREE_FACES" msgstr "Check free faces" msgid "MEN_CHECK_FREE_FACES" -msgstr "Check free faces" +msgstr "Check Free Faces" msgid "STB_CHECK_FREE_FACES" msgstr "Check free faces" @@ -2739,7 +2745,7 @@ msgid "TOP_CHANGE_ORIENTATION" msgstr "Change orientation" msgid "MEN_CHANGE_ORIENTATION" -msgstr "Change orientation" +msgstr "Change Orientation" msgid "STB_CHANGE_ORIENTATION" msgstr "Change orientation" @@ -2748,7 +2754,7 @@ msgid "TOP_REMOVE_EXTRA_EDGES" msgstr "Remove extra edges" msgid "MEN_REMOVE_EXTRA_EDGES" -msgstr "Remove extra edges" +msgstr "Remove Extra Edges" msgid "STB_REMOVE_EXTRA_EDGES" msgstr "Remove extra edges" @@ -2760,7 +2766,7 @@ msgid "TOP_POINT_COORDS" msgstr "Point coordinates" msgid "MEN_POINT_COORDS" -msgstr "Point coordinates" +msgstr "Point Coordinates" msgid "STB_POINT_COORDS" msgstr "Point coordinates" @@ -2769,7 +2775,7 @@ msgid "TOP_BASIC_PROPS" msgstr "Basic properties" msgid "MEN_BASIC_PROPS" -msgstr "Basic properties" +msgstr "Basic Properties" msgid "STB_BASIC_PROPS" msgstr "Basic properties" @@ -2778,7 +2784,7 @@ msgid "TOP_MASS_CENTER" msgstr "Compute center of mass" msgid "MEN_MASS_CENTER" -msgstr "Center of mass" +msgstr "Center of Mass" msgid "STB_MASS_CENTER" msgstr "Compute center of mass" @@ -2787,7 +2793,7 @@ msgid "TOP_NORMALE" msgstr "Compute normal to a face" msgid "MEN_NORMALE" -msgstr "Normal to a face" +msgstr "Normal to a Face" msgid "STB_NORMALE" msgstr "Compute normal to a face in a point (optional)" @@ -2808,7 +2814,7 @@ msgid "TOP_BND_BOX" msgstr "Compute bounding box" msgid "MEN_BND_BOX" -msgstr "Bounding box" +msgstr "Bounding Box" msgid "STB_BND_BOX" msgstr "Compute bounding box" @@ -2817,7 +2823,7 @@ msgid "TOP_MIN_DIST" msgstr "Compute minimum distance" msgid "MEN_MIN_DIST" -msgstr "Min distance" +msgstr "Min Distance" msgid "STB_MIN_DIST" msgstr "Compute minimum distance" @@ -2835,7 +2841,7 @@ msgid "TOP_TOLERANCE" msgstr "Compute tolerance" msgid "MEN_TOLERANCE" -msgstr "Compute tolerance" +msgstr "Compute Tolerance" msgid "STB_TOLERANCE" msgstr "Compute tolerance" @@ -2862,7 +2868,7 @@ msgid "TOP_CHECK_COMPOUND" msgstr "Check compound of blocks" msgid "MEN_CHECK_COMPOUND" -msgstr "Check compound of blocks" +msgstr "Check Compound of Blocks" msgid "STB_CHECK_COMPOUND" msgstr "Check compound of blocks" @@ -2889,7 +2895,7 @@ msgid "TOP_SHADING_COLOR" msgstr "Set shading color" msgid "MEN_SHADING_COLOR" -msgstr "Shading color" +msgstr "Shading Color" msgid "STB_SHADING_COLOR" msgstr "Set shading color" @@ -2907,7 +2913,7 @@ msgid "TOP_STEP_VALUE" msgstr "Set step value" msgid "MEN_STEP_VALUE" -msgstr "Step value" +msgstr "Step Value" msgid "STB_STEP_VALUE" msgstr "Set step value" @@ -2916,7 +2922,7 @@ msgid "MEN_VIEW" msgstr "View" msgid "MEN_DISPLAY_MODE" -msgstr "Display mode" +msgstr "Display Mode" msgid "TOP_SHADING" msgstr "Shading" @@ -2934,7 +2940,7 @@ msgid "TOP_DISPLAY_ALL" msgstr "Show all" msgid "MEN_DISPLAY_ALL" -msgstr "Show all" +msgstr "Show All" msgid "STB_DISPLAY_ALL" msgstr "Show all" @@ -2943,7 +2949,7 @@ msgid "TOP_ERASE_ALL" msgstr "Hide all" msgid "MEN_ERASE_ALL" -msgstr "Hide all" +msgstr "Hide All" msgid "STB_ERASE_ALL" msgstr "Hide all" @@ -2961,7 +2967,7 @@ msgid "TOP_DISPLAY_ONLY" msgstr "Show only" msgid "MEN_DISPLAY_ONLY" -msgstr "Show only" +msgstr "Show Only" msgid "STB_DISPLAY_ONLY" msgstr "Show only" @@ -3006,7 +3012,7 @@ msgid "TOP_POP_AUTO_COLOR" msgstr "Auto color" msgid "MEN_POP_AUTO_COLOR" -msgstr "Auto color" +msgstr "Auto Color" msgid "STB_POP_AUTO_COLOR" msgstr "Auto color" @@ -3015,7 +3021,7 @@ msgid "TOP_POP_DISABLE_AUTO_COLOR" msgstr "Disable auto color" msgid "MEN_POP_DISABLE_AUTO_COLOR" -msgstr "Disable auto color" +msgstr "Disable Auto Color" msgid "STB_POP_DISABLE_AUTO_COLOR" msgstr "Disable auto color" @@ -3063,7 +3069,7 @@ msgid "TOOL_PRIMITIVES" msgstr "Primitives" msgid "TOOL_BOOLEAN" -msgstr "Boolean operations" +msgstr "Boolean Operations" msgid "TOOL_GENERATION" msgstr "Generation" diff --git a/src/GEOMGUI/GEOM_msg_en.ts b/src/GEOMGUI/GEOM_msg_en.ts new file mode 100644 index 000000000..15ac7e838 --- /dev/null +++ b/src/GEOMGUI/GEOM_msg_en.ts @@ -0,0 +1,4141 @@ + + + + + @default + + CHANGE_ORIENTATION_NEW_OBJ_NAME + Invert + + + CLOSE_CONTOUR_NEW_OBJ_NAME + CloseContour + + + DEP_OBJECT + Selected object has been used to create another one. +It can't be deleted + + + DEVIDE_EDGE_NEW_OBJECT_NAME + NewObject + + + ERROR_SHAPE_TYPE + Object of incorrect type selected! +Please, select face, shell or solid and try again + + + iErr : 10 + the Classifier is NULL + + + iErr : 11 + the Shape is NULL + + + iErr : 12 + Unallowed Type of Subshape + + + iErr : 13 + Unallowed State + + + iErr : 15 + Unallowed Surface Type + + + iErr : 20 + Triangulation is not Found + + + iErr : 30 + Can not Obtain the Line From the Link + + + iErr : 40 + A Point Can Not Be Classified + + + iErr : 41 + Invalid Data for Classifier + + + GEOM_2D_CONTINUTY + 2D continuity + + + GEOM_2D_CURVE_MODE + 2D curve mode + + + GEOM_2D_TOLERANCE + 2D tolerance + + + GEOM_3D_CONTINUTY + 3D continuity + + + GEOM_3D_CURVE_MODE + 3D curve mode + + + GEOM_3D_TOLERANCE + 3D tolerance + + + GEOM_3_POINTS + 3 points + + + GEOM_ADD_POINT + Add point + + + GEOM_ANGLE + Angle : + + + GEOM_ANGLE_1 + Angle + + + GEOM_ARC + Arc + + + GEOM_ARCHIMEDE + Archimede + + + GEOM_ARCHIMEDE_TITLE + Archimede Construction + + + GEOM_ARC_TITLE + Arc Construction + + + GEOM_ARGUMENTS + Arguments + + + GEOM_AXE_MIRROR + Axe Mirror + + + GEOM_AXIS + Axis + + + GEOM_BASE + Base + + + GEOM_BASE_OBJECT + Base Object + + + GEOM_BASE_POINT + Base Point + + + GEOM_BEZIER + Bezier + + + GEOM_BINORMAL + BiNormal + + + GEOM_BLOCK + Hexahedral Solid + + + GEOM_BLOCKS_COMPOUND + BlocksCompound + + + GEOM_BLOCK_EXPLODE + Sub Blocks + + + GEOM_BLOCK_EXPLODE_TITLE + Sub Blocks Selection + + + GEOM_BLOCK_MULTITRSF + Block Multi-Transformation + + + GEOM_BLOCK_MULTITRSF_DOUBLE + Multi-Transformation Double + + + GEOM_BLOCK_MULTITRSF_SIMPLE + Multi-Transformation Simple + + + GEOM_BLOCK_MULTITRSF_TITLE + Block Multi-Transformation + + + GEOM_BLOCK_TITLE + Hexahedral Solid Construction + + + GEOM_BNDBOX + Bounding Box + + + GEOM_BNDBOX_OBJDIM + Object And Its Dimensions + + + GEOM_BNDBOX_TITLE + Bounding Box Informations + + + GEOM_BOX + Box + + + GEOM_BOX_OBJ + Dimensions At Origin + + + GEOM_BOX_TITLE + Box Construction + + + GEOM_BSplineRestriction + BSplineRestriction + + + GEOM_BUT_APPLY + &Apply + + + GEOM_BUT_CANCEL + &Cancel + + + GEOM_BUT_CLOSE + &Close + + + GEOM_BUT_CLOSE_SKETCH + Sketch Closure + + + GEOM_BUT_END_SKETCH + Sketch Validation + + + GEOM_BUT_EXPLODE + &Explode + + + GEOM_BUT_HELP + &Help + + + GEOM_BUT_NO + &No + + + GEOM_BUT_OK + O&k + + + GEOM_BUT_APPLY_AND_CLOSE + A&pply and Close + + + GEOM_BUT_YES + &Yes + + + GEOM_BY_LENGTH + By length + + + GEOM_BY_PARAMETER + By parameter + + + GEOM_CENTER + Center + + + GEOM_CENTER_POINT + Center Point + + + GEOM_CENTRAL_POINT + Central Point + + + GEOM_CHAMFER + Chamfer + + + GEOM_CHAMFER_ABORT + Chamfer can't be computed with %1 and %2 + + + GEOM_CHAMFER_ALL + Chamfer On Whole Shape + + + GEOM_CHAMFER_EDGES + Chamfer On Edges From Shape + + + GEOM_CHAMFER_FACES + Chamfer On Faces From Shape + + + GEOM_CHAMFER_TITLE + Chamfer Construction + + + GEOM_CHANGE_ORIENTATION + Objects to change orientation + + + GEOM_CHANGE_ORIENTATION_TITLE + Change orientation + + + GEOM_CHECK_BLOCKS_COMPOUND + Check and Improve Blocks Compound + + + GEOM_CHECK_BLOCKS_COMPOUND_ERRORS + Errors + + + GEOM_CHECK_BLOCKS_COMPOUND_HAS_ERRORS + The Compound of Blocks has errors + + + GEOM_CHECK_BLOCKS_COMPOUND_HAS_NO_ERRORS + The Compound of Blocks has no errors + + + GEOM_CHECK_BLOCKS_COMPOUND_SUBSHAPES + Incriminated Sub-Shapes + + + GEOM_CHECK_INFOS + Object And Its Topological Information + + + GEOM_CHECK_SHAPE + Check Shape + + + GEOM_CHECK_TITLE + Check Shape Information + + + GEOM_CIRCLE + Circle + + + GEOM_CIRCLE_TITLE + Circle Construction + + + GEOM_CLOSECONTOUR_TITLE + Close contour + + + GEOM_CMASS + Center Of Mass + + + GEOM_CMASS_TITLE + Center Of Mass Construction + + + GEOM_COMMON + Common + + + GEOM_COMMON_TITLE + Common Of Two Objects + + + GEOM_COMPOUND + Compound + + + GEOM_COMPOUNDSOLID + CompSolid + + + GEOM_COMPOUND_TITLE + Create A Compound + + + GEOM_CONE + Cone + + + GEOM_CONE_TITLE + Cone Construction + + + GEOM_CONFIRM + Confirm operation + + + GEOM_CONFIRM_INFO + Shape contains %1 sub shapes ! + + + GEOM_COOR + Coord. : + + + GEOM_COORDINATES + Coordinates + + + GEOM_CREATE_COPY + Create a copy + + + GEOM_CREATE_SINGLE_SOLID + Create a single solid + + + GEOM_CURVE + Curve + + + GEOM_CURVE_CONTINUTY + Curve continuity + + + GEOM_CURVE_TITLE + Curve Construction + + + GEOM_CUT + Cut + + + GEOM_CUT_TITLE + Cut Of Two Objects + + + GEOM_CYLINDER + Cylinder + + + GEOM_CYLINDER_TITLE + Cylinder Construction + + + GEOM_D1 + D1 : + + + GEOM_D2 + D2 : + + + GEOM_DETECT + Detect + + + GEOM_DIAGONAL_POINTS + Diagonal Points + + + GEOM_DISK + Disk + + + GEOM_DISK_TITLE + Create A Disk + + + GEOM_DIMENSIONS + Dimensions + + + GEOM_DISTANCE + Distance + + + GEOM_DIVIDE_EDGE_TITLE + Addition of point + + + GEOM_DX + Dx : + + + GEOM_DY + Dy : + + + GEOM_DZ + Dz : + + + GEOM_DropSmallEdges + DropSmallEdges + + + GEOM_EDGE + Edge + + + GEOM_EDGE_TITLE + Create An Edge + + + GEOM_ELLIPSE + Ellipse + + + GEOM_ELLIPSE_ERROR_1 + Error creating ellipse. Reason: minor radius is greater than major radius. + + + GEOM_ELLIPSE_TITLE + Ellipse Construction + + + GEOM_END_LCS + End LCS + + + GEOM_ERROR + Error + + + GEOM_ERROR_STATUS + Operation status + + + GEOM_ERR_GET_ENGINE + Failed to obtain GEOM Engine component. Reload Geometry module and try again. + + + GEOM_ERR_LIB_NOT_FOUND + GUI library corresponding to the user action can not be found or loaded + + + GEOM_EXTRUSION + Extrusion + + + GEOM_EXTRUSION_BSV + Base Shape + Vector + + + GEOM_EXTRUSION_BSV_2P + Base Shape + 2 Points + + + GEOM_EXTRUSION_DXDYDZ + Base Shape + DX DY DZ Vector + + + GEOM_EXTRUSION_TITLE + Construction by Extrusion + + + GEOM_FACE + Face + + + GEOM_LCS + Local coordinate system + + + GEOM_FACES + Faces + + + GEOM_FACE_FFW + Face creation from wires and/or edges + + + GEOM_FACE_OPT + Try to create a planar face + + + GEOM_FACE_OR_LCS + Face or LCS + + + GEOM_FACE_SELECTION + Face Selection + + + GEOM_FACE_TITLE + Create A Face + + + GEOM_FILLET + Fillet + + + GEOM_FILLET_2D + Fillet 2D + + + GEOM_FILLET_ABORT + Fillet can't be computed with radius %1 + + + GEOM_FILLET_ALL + Fillet On Whole Shape + + + GEOM_FILLET_EDGES + Fillet On Edges From Shape + + + GEOM_FILLET_FACES + Fillet On Faces From Shape + + + GEOM_FILLET_VERTEXES + Fillet On Vertexes From Face + + + GEOM_FILLET_TITLE + Fillet Construction + + + GEOM_FILLET_2D_TITLE + 2D Fillet Construction + + + GEOM_FILLING + Filling + + + GEOM_FILLING_ARG + Arguments And Parameters + + + GEOM_FILLING_COMPOUND + Edges compound + + + GEOM_FILLING_MAX_DEG + Max deg + + + GEOM_FILLING_MIN_DEG + Min deg + + + GEOM_FILLING_NB_ITER + Nb. Iter : + + + GEOM_FILLING_TITLE + Filling Surface With Edges + + + GEOM_FILLING_TOL_2D + Tol. 2D : + + + GEOM_FILLING_TOL_3D + Tol. 3D : + + + GEOM_FREE_BOUNDARIES + Free boundaries + + + GEOM_FREE_BOUNDS_ERROR + Object is not selected + + + GEOM_FREE_BOUNDS_MSG + Number of free boundaries detected: %1 (%2 closed, %3 open) + + + GEOM_FREE_BOUNDS_TLT + Free boundary detection + + + GEOM_FREE_FACES + Free faces + + + GEOM_FREE_FACES_TITLE + Free faces + + + GEOM_FUSE + Fuse + + + GEOM_FUSE_TITLE + Fuse Two Objects + + + GEOM_FixFaceSize + FixFaceSize + + + GEOM_FixShape + FixShape + + + GEOM_GLUE + Glue + + + GEOM_GLUE_TITLE + Glue faces + + + GEOM_HEIGHT + Height : + + + GEOM_HOLES + Holes + + + GEOM_IDENTICAL_NAMES_SELECT_BY_MOUSE + Identical names : select by mouse ! + + + GEOM_IMPORT + Imported_Shape + + + GEOM_INCORRECT_INPUT + Some parameters are missing + + + GEOM_INERTIA_CONSTR + Matrix And Moments Of Inertia + + + GEOM_INERTIA_I + %1:1 : + + + GEOM_INERTIA_IXYZ + IX & IY & IZ : + + + GEOM_INERTIA_TITLE + Calculs Of Inertia + + + GEOM_INF_LOADED + File %1 loaded. + + + GEOM_INTERNAL_WIRES + Internal wires + + + GEOM_INTERPOL + Interpolation + + + GEOM_KEEP_OBJECT + Keep Object + + + GEOM_LENGTH + Length : + + + GEOM_LINE + Line + + + GEOM_LINE_TITLE + Line Construction + + + GEOM_MAIN_OBJECT + Main Object + + + GEOM_MARKER + Marker + + + GEOM_MARKER_TITLE + Create marker + + + GEOM_MATERIAL_ID + Material ID: + + + GEOM_MATERIAL_MATERIAL + Material + + + GEOM_MATERIAL_SET + << Set + + + GEOM_MATERIAL_SHAPE + Shapes + + + GEOM_MATERIAL_TITLE + Define materials for Dominant Fuse + + + GEOM_MATRIX + Matrix : + + + GEOM_MAX + Max : + + + GEOM_MAX_3D_TOLERANCE + Max 3D tolerance + + + GEOM_MAX_TOLERANCE + Max tolerance + + + GEOM_MEN_ALL_FILES + All Files ( * ) + + + GEOM_MEN_ANGLE + Angle : + + + GEOM_MEN_COMPONENT + Geometry + + + GEOM_MEN_ENTER_ANGLE + Enter An Angle In Degrees + + + GEOM_MEN_EXPORT + Export + + + GEOM_MEN_IMPORT + Import + + + GEOM_MEN_ISOS + Select Number Of Isos + + + GEOM_MEN_ISOU + Isos U : + + + GEOM_MEN_ISOV + Isos V : + + + GEOM_MEN_POPUP_NAME + %1 Objects + + + GEOM_MEN_SHADING + Shading + + + GEOM_MEN_SKETCHER_X + Enter a Length to Set X + + + GEOM_MEN_SKETCHER_Y + Enter a Length to Set Y + + + GEOM_MEN_STEP_LABEL + Step : + + + GEOM_MEN_TRANSPARENCY + Transparency + + + GEOM_MEN_TRANSPARENCY_LABEL + Transparency : + + + GEOM_MEN_WIREFRAME + Wireframe + + + GEOM_MEN_X + X : + + + GEOM_MEN_Y + Y : + + + GEOM_MESHING_DEFLECTION + Meshing Deflect. : + + + GEOM_MIN + Min : + + + GEOM_MINDIST_OBJ + Objects And Results + + + GEOM_MINDIST_TITLE + Minimun Distance Between Two Objects + + + GEOM_MIRROR + Mirror + + + GEOM_MIRROR_TITLE + Mirror An Object + + + GEOM_MULTIROTATION + Multi-Rotation + + + GEOM_MULTIROTATION_DOUBLE + Multi Rotation Double + + + GEOM_MULTIROTATION_SIMPLE + Multi Rotation Simple + + + GEOM_MULTIROTATION_TITLE + Multi-Rotation + + + GEOM_MULTITRANSLATION + Multi-Translation + + + GEOM_MULTITRANSLATION_DOUBLE + Multi Translation Double + + + GEOM_MULTITRANSLATION_SIMPLE + Multi Translation Simple + + + GEOM_MULTITRANSLATION_TITLE + Multi-Translation + + + GEOM_NAME_INCORRECT + Object name not found + + + GEOM_NB_BLOCKS_NO_OTHERS + There are %1 specified blocks and NO other solids + + + GEOM_NB_BLOCKS_SOME_OTHERS + There are %1 specified blocks and some other solids + + + GEOM_NB_TIMES + Nb. Times : + + + GEOM_NB_TIMES_U + Nb. Times U : + + + GEOM_NB_TIMES_V + Nb. Times V : + + + GEOM_NODES + Nodes + + + GEOM_NUM_SPLIT_POINTS + Number of splitting points + + + GEOM_OBJECT + Object + + + GEOM_OBJECT_TYPE + Object Type + + + GEOM_OBJECTS + Objects + + + GEOM_OBJECT_I + Object %1 + + + GEOM_OBJECT_RESULT + Object And Result + + + GEOM_OFFSET + Offset + + + GEOM_OFFSET_TITLE + Offset Surface + + + GEOM_OPERATIONS + Operations + + + GEOM_ORIENTATION + Orientation + + + GEOM_ORIENTATION_OPT + Reverse orientation with normal vectors simulation + + + GEOM_ORIENTATION_TITLE + Change Orientation + + + GEOM_PARAMETER + Parameter : + + + GEOM_PARAMETERS + Parameters + + + GEOM_PARAM_POINT + Parametric point + + + GEOM_PARTITION + Partition + + + GEOM_PARTITION_HALFSPACE + Half-space partition + + + GEOM_PARTITION_ORIENTATION + Change Orientation + + + GEOM_PARTITION_TITLE + Partition Of Object With Tool + + + GEOM_PATH_OBJECT + Path Object + + + GEOM_PIPE + Pipe + + + GEOM_PIPE_TITLE + Pipe Construction + + + GEOM_SELECT_UNPUBLISHED_EDGES + Select unpublished edges + + + GEOM_PLANE + Plane + + + GEOM_PLANE_MIRROR + Plane Mirror + + + GEOM_PLANE_PV + Point + Vector + + + GEOM_PLANE_PVC + Point + Coordinate Vector + + + GEOM_PLANE_SIZE + Size of plane : + + + GEOM_PLANE_TITLE + Plane Construction + + + GEOM_POINT + Point + + + GEOM_POINT1 + Point 1 + + + GEOM_POINT2 + Point 2 + + + GEOM_POINT3 + Point 3 + + + GEOM_POINTS + Points + + + GEOM_POINT_I + Point %1 + + + GEOM_POINT_MIRROR + Point Mirror + + + GEOM_POINT_TITLE + Point Construction + + + GEOM_POLYLINE + Polyline + + + GEOM_POSITION + Location + + + GEOM_POSITION_TITLE + Modify the Location of an Object + + + GEOM_PRECISION + Precision : + + + GEOM_PROPAGATE + Propagate + + + GEOM_PROPAGATE_TITLE + Propagate + + + GEOM_PROPERTIES + Basic Properties + + + GEOM_PROPERTIES_CONSTR + Object And Its Properties + + + GEOM_PROPERTIES_SURFACE + Surface is : + + + GEOM_PROPERTIES_TITLE + Basic Properties Informations + + + GEOM_PROPERTIES_VOLUME + Volume is : + + + GEOM_PRP_ABORT + Operation aborted + + + GEOM_PRP_COMMAND + No command associated with this id = %1. + + + GEOM_PRP_DONE + Operation done + + + GEOM_PRP_EXPORT + Exporting geometry to %1 ... + + + GEOM_PRP_LOADING + Loading %1 ... + + + GEOM_PRP_MIN_DIST + Min Distance not computed + + + GEOM_PRP_NOT_FOR_VTK_VIEWER + Not allowed in VTK viewer + + + GEOM_PRP_NULLSHAPE + Error, null or inappropriate shape ! + + + GEOM_PRP_READY + Ready + + + GEOM_PRP_SELECT_EDGE + Select edges and click on Apply + + + GEOM_PRP_SELECT_FACE + Select faces to suppress and click on Ok/Apply + + + GEOM_PRP_SELECT_FIRST + Select main shape first + + + GEOM_PRP_SELECT_SUBSHAPES + Select Sub Shapes + + + GEOM_PRP_SHAPE_IN_STUDY + Main shape must be in the study before + + + GEOM_QUAD_FACE + Quadrangle Face + + + GEOM_QUAD_FACE_TITLE + Quadrangle Face Construction + + + GEOM_RADIUS + Radius : + + + GEOM_RADIUS_I + Radius %1 : + + + GEOM_RADIUS_MAJOR + Major radius : + + + GEOM_RADIUS_MINOR + Minor radius : + + + GEOM_RECONSTRUCTION_LIMIT + Resulting Type + + + GEOM_RECONSTRUCTION_LIMIT_EDGE + Edge + + + GEOM_RECONSTRUCTION_LIMIT_FACE + Face + + + GEOM_RECONSTRUCTION_LIMIT_SHAPE + Shape + + + GEOM_RECONSTRUCTION_LIMIT_SHELL + Shell + + + GEOM_RECONSTRUCTION_LIMIT_SOLID + Solid + + + GEOM_RECONSTRUCTION_LIMIT_VERTEX + Vertex + + + GEOM_RECONSTRUCTION_LIMIT_WIRE + Wire + + + GEOM_REF_POINT + Point with reference + + + GEOM_REMOVE_ALL_HOLES + Remove all holes + + + GEOM_REMOVE_ALL_INT_WIRES + Remove all internal wires + + + GEOM_REMOVE_HOLES_TITLE + Suppress holes + + + GEOM_REMOVE_INTERNAL_WIRES_TITLE + Suppress internal wires + + + GEOM_REMOVE_WEBS + Remove webs + + + GEOM_REQUIRED_DEGREE + Required degree + + + GEOM_REQUIRED_NUM_SEGMENTS + Required number of segments + + + GEOM_REVERSE + Reverse + + + GEOM_REVERSE_DIRECTION + Reverse Direction + + + GEOM_REVERSE_PLANE + Reverse the plane normal + + + GEOM_REVERSE_U + Reverse U + + + GEOM_REVERSE_V + Reverse V + + + GEOM_REVERSE_VECTOR + Reverse Vector + + + GEOM_REVOLUTION + Revolution + + + GEOM_REVOLUTION_TITLE + Construction By Revolution + + + GEOM_ROTATION + Rotation + + + GEOM_ROTATION_TITLE + Rotation Of An Object + + + GEOM_SCALE + Scale + + + GEOM_SCALE_FACTOR + Scale Factor : + + + GEOM_SCALE_TITLE + Scale An Object + + + GEOM_SECTION + Section + + + GEOM_SECTION_TITLE + Section Of Two Objects + + + GEOM_SELECTED_FACE + Selected face + + + GEOM_SELECTED_OBJECTS + Selected objects + + + GEOM_SELECTED_SHAPE + Selected shape + + + GEOM_SELECTION + Selection + + + GEOM_SET_MATERIALS + Set materials + + + GEOM_SEWING + Sewing + + + GEOM_SEWING_TITLE + Topological sewing + + + GEOM_SHAPE + Shape + + + GEOM_SHAPEPROCESS_TITLE + Shape Processing + + + GEOM_SHAPES + Shapes + + + GEOM_SHELL + Shell + + + GEOM_SHELLS + Shells + + + GEOM_SHELL_TITLE + Shell Construction + + + GEOM_SKETCHER_ABS + Absolute + + + GEOM_SKETCHER_ANGLE + Angle + + + GEOM_SKETCHER_ANGLE2 + Angle : + + + GEOM_SKETCHER_APPLY + Apply + + + GEOM_SKETCHER_ARC + Arc + + + GEOM_SKETCHER_DEST + Destination + + + GEOM_SKETCHER_DIR + Direction + + + GEOM_SKETCHER_DX2 + DX : + + + GEOM_SKETCHER_DY2 + DY : + + + GEOM_SKETCHER_DZ2 + DZ : + + + GEOM_SKETCHER_EL + Element Type + + + GEOM_SKETCHER_LENGTH + Length + + + GEOM_SKETCHER_LENGTH2 + Length : + + + GEOM_SKETCHER_PER + Perpendicular + + + GEOM_SKETCHER_POINT + Point + + + GEOM_SKETCHER_POINT2 + Point : + + + GEOM_SKETCHER_RADIUS2 + Radius : + + + GEOM_SKETCHER_REL + Relative + + + GEOM_SKETCHER_SEGMENT + Segment + + + GEOM_SKETCHER_SEL + Selection + + + GEOM_SKETCHER_TAN + Tangent + + + GEOM_SKETCHER_TITLE + Sketch Construction + + + GEOM_3DSKETCHER_TITLE + 3D Sketch Construction + + + GEOM_SKETCHER_TYPE + Type + + + GEOM_SKETCHER_UNDO + Undo + + + GEOM_SKETCHER_VALUES + Values + + + GEOM_SKETCHER_VX2 + VX : + + + GEOM_SKETCHER_VXVY + VX-VY + + + GEOM_SKETCHER_VY2 + VY : + + + GEOM_SKETCHER_X + X + + + GEOM_SKETCHER_X2 + X : + + + GEOM_SKETCHER_X3 + Abs. X : + + + GEOM_SKETCHER_Y + Y + + + GEOM_SKETCHER_Y2 + Y : + + + GEOM_SKETCHER_Y3 + Abs. Y : + + + GEOM_SKETCHER_Z2 + Z : + + + GEOM_3DSKETCHER + 3D Sketcher + + + GEOM_COORDINATES_TYPE + Coordinates Type + + + GEOM_SOLID + Solid + + + GEOM_SOLID_TITLE + Solid Construction + + + GEOM_SPHERE + Sphere + + + GEOM_SPHERE_CR + Center + Radius + + + GEOM_SPHERE_RO + Radius At Origin + + + GEOM_SPHERE_TITLE + Sphere Construction + + + GEOM_SPLINE + Spline + + + GEOM_SPLINE_TITLE + Spline Construction + + + GEOM_START_LCS + Start LCS + + + SELECT_UNPUBLISHED_EDGES + Select unpublished edges + + + GEOM_STEP + Step : + + + GEOM_STEP_TITLE + Step value for GUI constructions + + + GEOM_STEP_U + Step U : + + + GEOM_STEP_V + Step V : + + + GEOM_STUDY_LOCKED + The active study is locked and therefore cannot be modified + + + GEOM_SUBSHAPE_SELECT + Select Sub Shapes + + + GEOM_SUBSHAPE_TITLE + Sub Shapes Selection + + + GEOM_SUBSHAPE_TYPE + Sub Shapes Type : + + + GEOM_SUB_SHAPE + Sub Shapes + + + GEOM_SUPPRESSHOLE_FACE_SHELL + Face or shell + + + GEOM_SUPPRESSHOLE_SELECTFACE + Select the face with hole + + + GEOM_SUPPRESSHOLE_SELECTFACE_END + Select end face (if hole traversing) + + + GEOM_SUPPRESSHOLE_SELECTWIRE + Select wire on face + + + GEOM_SUPPRESSHOLE_SELECTWIRE_END + Select end wire (if hole traversing) + + + GEOM_SUPPRESSHOLE_SELECT_HOLES_ON_FACE + Select hole(s) on the face + + + GEOM_SUPPRESSHOLE_TITLE + Suppress holes + + + GEOM_SUPPRESS_RESULT + Suppress Result + + + GEOM_SUPPRESS_RESULT_INSIDE + Inside + + + GEOM_SUPPRESS_RESULT_OUTSIDE + Outside + + + GEOM_SUPRESSFACE + Supress Face + + + GEOM_SUPRESSFACE_SELECT + Select Faces To Suppress + + + GEOM_SUPRESSFACE_TITLE + Suppress Faces In An Object + + + GEOM_SURFACE_CONTINUTY + Surface continuity + + + GEOM_SURFACE_MODE + Surface mode + + + GEOM_SURFCONE + Conical Face + + + GEOM_SURFCYLINDER + Cylindrical Face + + + GEOM_SURFSPHERE + Spherical Face + + + GEOM_SURFTORUS + Toroidal Face + + + GEOM_SameParameter + SameParameter + + + GEOM_SplitAngle + SplitAngle + + + GEOM_SplitClosedFaces + SplitClosedFaces + + + GEOM_SplitContinuity + SplitContinuity + + + GEOM_TOLERANCE + Tolerance + + + GEOM_TOLERANCE_CONSTR + Object And Its Tolerances + + + GEOM_TOLERANCE_EDGE + Edge : + + + GEOM_TOLERANCE_FACE + Face : + + + GEOM_TOLERANCE_TITLE + Maximum Tolerance + + + GEOM_TOLERANCE_VERTEX + Vertex : + + + GEOM_TOOL_OBJECT + Tool Object + + + GEOM_TORUS + Torus + + + GEOM_TORUS_TITLE + Torus Construction + + + GEOM_TRANSLATION + Translation + + + GEOM_TRANSLATION_COOR + Translation With Coordinates + + + GEOM_TRANSLATION_TITLE + Translation Of An Object + + + GEOM_TRANSPARENCY_OPAQUE + Opaque + + + GEOM_TRANSPARENCY_TITLE + Transparency + + + GEOM_TRANSPARENCY_TRANSPARENT + Transparent + + + GEOM_TRIHEDRON + Trihedron + + + GEOM_ToBezier + ToBezier + + + GEOM_VALUE + Value + + + GEOM_VECTOR + Vector + + + GEOM_VECTOR_LENGTH + Vector Length : + + + GEOM_VECTOR_TITLE + Vector Construction + + + GEOM_VECTOR_U + Vector U + + + GEOM_VECTOR_V + Vector V + + + GEOM_VERTEX + Vertex + + + GEOM_VERTEXES + Vertexes + + + GEOM_WATER_DENSITY + Water Density : + + + GEOM_WEIGHT + Weight : + + + GEOM_WIDTH + Width : + + + GEOM_WHATIS + Whatis + + + GEOM_WHATIS_OBJECT + Object And Its Topological Informations + + + GEOM_WHATIS_TITLE + Whatis Informations + + + GEOM_WIRE + Wire + + + GEOM_WIRES + Wire(s) + + + GEOM_WIRES_TO_REMOVE + Wires to remove + + + GEOM_WIREZ + Wires + + + GEOM_WIRE_CONNECT + Wire creation from wires/edges connected + + + GEOM_WIRE_TITLE + Create A Wire + + + GEOM_WPLANE + Working Plane + + + GEOM_WPLANE_FACE + Plane, Planar Face or LCS + + + GEOM_WPLANE_ORIGIN + Select a plane + + + GEOM_WPLANE_OXY + OXY + + + GEOM_WPLANE_OYZ + OYZ + + + GEOM_WPLANE_OZX + OZX + + + GEOM_WPLANE_TITLE + Working Plane Selection + + + GEOM_WPLANE_VECTOR + Select 2 vectors + + + GEOM_WPLANE_VX + Vector X + + + GEOM_WPLANE_VZ + Vector Z + + + GEOM_WRN_RADIUS_NULL + Radius is null + + + GEOM_WRN_WARNING + Warning + + + WRN_SHAPE_UNCLOSED + Unable to create solid from unclosed shape %1 + + + GEOM_X + X : + + + GEOM_Y + Y : + + + GEOM_Z + Z : + + + GLUE_NEW_OBJ_NAME + Glue + + + MEN_ALL_SEL_ONLY + Select All + + + MEN_ARC + Arc + + + MEN_ARCHIMEDE + Archimede + + + MEN_BASIC + Basic + + + MEN_BASIC_PROPS + Basic Properties + + + MEN_BLOCKS + Blocks + + + MEN_BND_BOX + Bounding Box + + + MEN_BOOLEAN + Boolean + + + MEN_BOX + Box + + + MEN_BUILD + Build + + + MEN_CHAMFER + Chamfer + + + MEN_CHANGE_ORIENTATION + Change Orientation + + + MEN_CHECK + Check + + + MEN_CHECK_COMPOUND + Check Compound of Blocks + + + MEN_CHECK_FREE_BNDS + Check Free Boundaries + + + MEN_CHECK_FREE_FACES + Check Free Faces + + + MEN_CHECK_GEOMETRY + Check Geometry + + + MEN_CIRCLE + Circle + + + MEN_CLIPPING + Clipping Range + + + MEN_CLOSE_CONTOUR + Close Contour + + + MEN_COMMON + Common + + + MEN_COMPOUND + Compound + + + MEN_COMPOUND_SEL_ONLY + Compound + + + MEN_CONE + Cone + + + MEN_CURVE + Curve + + + MEN_CUT + Cut + + + MEN_CYLINDER + Cylinder + + + MEN_DELETE + Delete + + + MEN_DIMENSIONS + Dimensions + + + MEN_DISPLAY + Show + + + MEN_DISK + Disk + + + MEN_DISPLAY_ALL + Show All + + + MEN_DISPLAY_MODE + Display Mode + + + MEN_DISPLAY_ONLY + Show Only + + + MEN_EDGE + Edge + + + MEN_EDGE_SEL_ONLY + Edge + + + MEN_EDIT + Edit + + + MEN_ELLIPSE + Ellipse + + + MEN_ERASE + Hide + + + MEN_ERASE_ALL + Hide All + + + MEN_EXPLODE + Explode + + + MEN_EXPLODE_BLOCKS + Explode on Blocks + + + MEN_EXPORT + Export... + + + MEN_EXTRUSION + Extrusion + + + MEN_FACE + Face + + + MEN_FACE_SEL_ONLY + Face + + + MEN_FILE + File + + + MEN_FILLET + Fillet + + + MEN_FILLET_2D + Fillet 2D + + + MEN_FILLING + Filling + + + MEN_FUSE + Fuse + + + MEN_GENERATION + Generation + + + MEN_GLUE_FACES + Glue Faces + + + MEN_GROUP + Group + + + MEN_GROUP_CREATE + Create + + + MEN_GROUP_EDIT + Edit + + + MEN_RELOAD_IMPORTED + Reload From Disk + + + MEN_HEX_SOLID + Hexahedral Solid + + + MEN_IMPORT + Import... + + + MEN_INERTIA + Inertia + + + MEN_ISOS + Isos + + + MEN_LINE + Line + + + MEN_LOCAL_CS + Local Coordinate System + + + MEN_MASS_CENTER + Center of Mass + + + MEN_MEASURES + Measures + + + MEN_MIN_DIST + Min Distance + + + MEN_MIRROR + Mirror Image + + + MEN_MODIFY_LOCATION + Modify the Location + + + MEN_MUL_ROTATION + Multi-Rotation + + + MEN_MUL_TRANSFORM + Multi-Transformation + + + MEN_MUL_TRANSLATION + Multi-Translation + + + MEN_NEW_ENTITY + New Entity + + + MEN_OFFSET + Offset Surface + + + MEN_OPERATIONS + Operations + + + MEN_PARTITION + Partition + + + MEN_PIPE + Extrusion Along a Path + + + MEN_PLANE + Plane + + + MEN_POINT + Point + + + MEN_POINT_COORDS + Point Coordinates + + + MEN_POINT_ON_EDGE + Add Point on Edge + + + MEN_POP_COLOR + Color + + + MEN_POP_CREATE_GROUP + Create Group + + + MEN_POP_ISOS + Isos + + + MEN_POP_RENAME + Rename + + + MEN_POP_SHADING + Shading + + + MEN_POP_TRANSPARENCY + Transparency + + + MEN_POP_WIREFRAME + Wireframe + + + MEN_PREFERENCES + Preferences + + + MEN_PREFERENCES_GEOM + Geometry + + + MEN_PRIMITIVES + Primitives + + + MEN_PROPAGATE + Propagate + + + MEN_Q_FACE + Quadrangle Face + + + MEN_REPAIR + Repair + + + MEN_REVOLUTION + Revolution + + + MEN_ROTATION + Rotation + + + MEN_SCALE + Scale Transform + + + MEN_SECTION + Section + + + MEN_SELECT_ONLY + Select Only + + + MEN_SEWING + Sewing + + + MEN_SHADING + Shading + + + MEN_SHADING_COLOR + Shading Color + + + MEN_SHAPE_PROCESS + Shape Processing + + + MEN_SHELL + Shell + + + MEN_SHELL_SEL_ONLY + Shell + + + MEN_SKETCH + Sketch + + + MEN_3DSKETCH + 3D Sketch + + + MEN_SOLID + Solid + + + MEN_SOLID_SEL_ONLY + Solid + + + MEN_SPHERE + Sphere + + + MEN_STEP_VALUE + Step Value + + + MEN_SUPPERSS_HOLES + Suppress Holes + + + MEN_SUPPRESS_FACES + Suppress Faces + + + MEN_SUPPRESS_INT_WIRES + Suppress Internal Wires + + + MEN_TOLERANCE + Compute Tolerance + + + MEN_TOOLS + Tools + + + MEN_TORUS + Torus + + + MEN_TRANSFORMATION + Transformation + + + MEN_TRANSLATION + Translation + + + MEN_VECTOR + Vector + + + MEN_VERTEX_SEL_ONLY + Vertex + + + MEN_VIEW + View + + + MEN_WHAT_IS + What is + + + MEN_WIRE + Wire + + + MEN_WIREFRAME + Wireframe + + + MEN_WIRE_SEL_ONLY + Wire + + + MEN_WORK_PLANE + Working Plane + + + NAME_LBL + Name: + + + NON_GEOM_OBJECTS_SELECTED + There are objects selected which do not belong to %1 component. + + + PREF_DISPLAY_MODE + Default display mode + + + PREF_FREE_BOUND_COLOR + Color of free boundaries + + + PREF_GROUP_GENERAL + General + + + PREF_GROUP_OCCVIEWER + OCC Viewer 3d + + + PREF_GROUP_VERTEX + Marker of Points + + + PREF_ISOS_COLOR + Color of isolines + + + PREF_LINE_COLOR + Color of edges, vectors, wires + + + PREF_MARKER_SCALE + Size + + + PREF_POINT_COLOR + Color of points + + + PREF_SHADING_COLOR + Default shading color + + + PREF_STEP_VALUE + Step value for spin boxes + + + PREF_TAB_SETTINGS + Settings + + + PREF_TYPE_OF_MARKER + Type + + + PREF_WIREFRAME_COLOR + Default wireframe color + + + PROCESS_SHAPE_NEW_OBJ_NAME + ProcessShape + + + REMOVE_HOLES_NEW_OBJ_NAME + SupressHoles + + + REMOVE_INT_WIRES_NEW_OBJ_NAME + RemoveIntWires + + + SEWING_NEW_OBJ_NAME + Sewing + + + STB_ALL_SEL_ONLY + Select all Objects + + + STB_ARC + Create an arc + + + STB_ARCHIMEDE + Archimede + + + STB_BASIC_PROPS + Basic properties + + + STB_BND_BOX + Compute bounding box + + + STB_BOX + Create a box + + + STB_CHAMFER + Chamfer + + + STB_CHANGE_ORIENTATION + Change orientation + + + STB_CHECK + Check + + + STB_CHECK_COMPOUND + Check compound of blocks + + + STB_CHECK_FREE_BNDS + Check free boundaries + + + STB_CHECK_FREE_FACES + Check free faces + + + STB_CHECK_GEOMETRY + Check Geometry + + + STB_CIRCLE + Create a circle + + + STB_CLIPPING + Clipping range + + + STB_CLOSE_CONTOUR + Perform close contour + + + STB_COMMON + Common + + + STB_COMPOUND + Build a compound + + + STB_COMPOUND_SEL_ONLY + Select only a Compounds + + + STB_CONE + Create a cone + + + STB_CURVE + Create a curve + + + STB_CUT + Cut + + + STB_CYLINDER + Create a cylinder + + + STB_DELETE + Delete object + + + STB_DISK + Create a disk + + + STB_DISPLAY + Show object(s) + + + STB_DISPLAY_ALL + Show all + + + STB_DISPLAY_ONLY + Show only + + + STB_EDGE + Build an edge + + + STB_EDGE_SEL_ONLY + Select only a Edges + + + STB_ELLIPSE + Create an ellipse + + + STB_ERASE + Hide object(s) + + + STB_ERASE_ALL + Hide all + + + STB_EXPLODE + Explode + + + STB_EXPLODE_BLOCKS + Explode on Blocks + + + STB_EXPORT + Export geometry to BREP file + + + STB_EXTRUSION + Create an extrusion + + + STB_FACE + Build a face + + + STB_FACE_SEL_ONLY + Select only a Faces + + + STB_FILLET + Fillet + + + STB_FILLING + Create a filling + + + STB_FUSE + Fuse + + + STB_GLUE_FACES + Perform glue faces + + + STB_GROUP_CREATE + Create a group + + + STB_GROUP_EDIT + Edit a group + + + STB_RELOAD_IMPORTED + Reload imported shape from its original place on disk + + + STB_HEX_SOLID + Hexahedral Solid + + + STB_IMPORT + Import geometry from BREP file + + + STB_INERTIA + Compute intertia + + + STB_ISOS + Set number of isolines + + + STB_LINE + Create a line + + + STB_LOCAL_CS + Create a local coordinate system + + + STB_MASS_CENTER + Compute center of mass + + + STB_MIN_DIST + Compute minimum distance + + + STB_MIRROR + Mirror image + + + STB_MODIFY_LOCATION + Modify the Location + + + STB_MUL_ROTATION + Multi-Rotation + + + STB_MUL_TRANSFORM + Multi-transformation + + + STB_MUL_TRANSLATION + Multi-Translation + + + STB_OFFSET + Offset surface + + + STB_PARTITION + Partition + + + STB_PIPE + Create a shape by Extrusion along a path + + + STB_PLANE + Create a plane + + + STB_POINT + Create a point + + + STB_POINT_COORDS + Point coordinates + + + STB_POINT_ON_EDGE + Add point on edge + + + STB_POP_COLOR + Color + + + STB_POP_CREATE_GROUP + Create Group + + + STB_POP_ISOS + Isolines + + + STB_POP_RENAME + Rename + + + STB_POP_SHADING + Shading + + + STB_POP_TRANSPARENCY + Transparency + + + STB_POP_WIREFRAME + Wireframe + + + STB_PROPAGATE + Propagate + + + STB_Q_FACE + Quadrangle Face + + + STB_REVOLUTION + Create a revolution + + + STB_ROTATION + Rotation + + + STB_SCALE + Scale transform + + + STB_SECTION + Section + + + STB_SEWING + Perform sewing + + + STB_SHADING + Shading + + + STB_SHADING_COLOR + Set shading color + + + STB_SHAPE_PROCESS + Perform shape processing + + + STB_SHELL + Build a shell + + + STB_SHELL_SEL_ONLY + Select only a Shells + + + STB_SKETCH + Sketch + + + STB_SOLID + Build a solid + + + STB_SOLID_SEL_ONLY + Select only a Solids + + + STB_SPHERE + Create a sphere + + + STB_STEP_VALUE + Set step value + + + STB_SUPPERSS_HOLES + Perform suppress holes + + + STB_SUPPRESS_FACES + Perform suppress faces + + + STB_SUPPRESS_INT_WIRES + Perform suppress internal wires + + + STB_TOLERANCE + Compute tolerance + + + STB_TORUS + Create a torus + + + STB_TRANSLATION + Translation + + + STB_VECTOR + Create a vector + + + STB_VERTEX_SEL_ONLY + Select only a Points + + + STB_WHAT_IS + What is + + + STB_WIRE + Build a wire + + + STB_WIRE_SEL_ONLY + Select only a Wires + + + STB_WORK_PLANE + Create a working plane + + + SUPPRESS_RESULT + Suppress Result + + + SUPRESS_FACE_NEW_OBJ_NAME + SupressFaces + + + ShHealOper_ErrorExecution_msg + Shape Healing algorithm failed + + + ShHealOper_InvalidParameters_msg + Incorrect parameters for Shape Healing algorithm + + + ShHealOper_NotError_msg + Shape Healing algorithm has done no modification of the original shape + + + TLT_RENAME + Rename + + + TOM_O + O + + + TOM_O_PLUS + + in O + + + TOM_O_POINT + . in O + + + TOM_O_STAR + * in O + + + TOM_O_X + X in O + + + TOM_PLUS + + + + + TOM_POINT + . + + + TOM_STAR + * + + + TOM_X + X + + + TOOL_BASIC + Basic + + + TOOL_BOOLEAN + Boolean operations + + + TOOL_GENERATION + Generation + + + TOOL_PRIMITIVES + Primitives + + + TOOL_TRANSFORMATION + Transformation + + + TOP_ARC + Create an arc + + + TOP_ARCHIMEDE + Archimede + + + TOP_BASIC_PROPS + Basic properties + + + TOP_BND_BOX + Compute bounding box + + + TOP_BOX + Create a box + + + TOP_CHAMFER + Chamfer + + + TOP_CHANGE_ORIENTATION + Change orientation + + + TOP_CHECK + Check + + + TOP_CHECK_COMPOUND + Check compound of blocks + + + TOP_CHECK_FREE_BNDS + Check free boundaries + + + TOP_CHECK_FREE_FACES + Check free faces + + + TOP_CHECK_GEOMETRY + Check Geometry + + + TOP_CIRCLE + Create a circle + + + TOP_CLIPPING + Clipping range + + + TOP_CLOSE_CONTOUR + Perform close contour + + + TOP_COMMON + Common + + + TOP_COMPOUND + Build a compound + + + TOP_CONE + Create a cone + + + TOP_CURVE + Create a curve + + + TOP_CUT + Cut + + + TOP_CYLINDER + Create a cylinder + + + TOP_DELETE + Delete object + + + TOP_DISK + Build a Disk + + + TOP_DISPLAY + Show + + + TOP_DISPLAY_ALL + Show all + + + TOP_DISPLAY_ONLY + Show only + + + TOP_EDGE + Build an edge + + + TOP_ELLIPSE + Create an ellipse + + + TOP_ERASE + Hide + + + TOP_ERASE_ALL + Hide all + + + TOP_EXPLODE + Explode + + + TOP_EXPLODE_BLOCKS + Explode on Blocks + + + TOP_EXPORT + Export geometry to BREP file + + + TOP_EXTRUSION + Create an extrusion + + + TOP_FACE + Build a face + + + TOP_FILLET + Fillet + + + TOP_FILLING + Create a filling + + + TOP_FUSE + Fuse + + + TOP_GLUE_FACES + Perform glue faces + + + TOP_GROUP_CREATE + Create a group + + + TOP_GROUP_EDIT + Edit a group + + + TOP_HEX_SOLID + Hexahedral Solid + + + TOP_IMPORT + Import geometry from BREP file + + + TOP_INERTIA + Compute intertia + + + TOP_ISOS + Set number of isolines + + + TOP_LINE + Create a line + + + TOP_LOCAL_CS + Create a local coordinate system + + + TOP_MASS_CENTER + Compute center of mass + + + TOP_MIN_DIST + Compute minimum distance + + + TOP_MIRROR + Mirror image + + + TOP_MODIFY_LOCATION + Modify the Location + + + TOP_MUL_ROTATION + Multi-Rotation + + + TOP_MUL_TRANSFORM + Multi-transformation + + + TOP_MUL_TRANSLATION + Multi-Translation + + + TOP_OFFSET + Offset surface + + + TOP_PARTITION + Partition + + + TOP_PIPE + Extrusion along a path + + + TOP_PLANE + Create a plane + + + TOP_POINT + Create a point + + + TOP_POINT_COORDS + Point coordinates + + + TOP_POINT_ON_EDGE + Add point on edge + + + TOP_POP_COLOR + Color + + + TOP_POP_CREATE_GROUP + Create Group + + + TOP_POP_ISOS + Isolines + + + TOP_POP_RENAME + Rename + + + TOP_POP_SHADING + Shading + + + TOP_POP_TRANSPARENCY + Transparency + + + TOP_POP_WIREFRAME + Wireframe + + + TOP_PROPAGATE + Propagate + + + TOP_Q_FACE + Quadrangle Face + + + TOP_REVOLUTION + Create a revolution + + + TOP_ROTATION + Rotation + + + TOP_SCALE + Scale transform + + + TOP_SECTION + Section + + + TOP_SEWING + Perform sewing + + + TOP_SHADING + Shading + + + TOP_SHADING_COLOR + Set shading color + + + TOP_SHAPE_PROCESS + Perform shape processing + + + TOP_SHELL + Build a shell + + + TOP_SKETCH + Sketch + + + TOP_SOLID + Build a solid + + + TOP_SPHERE + Create a sphere + + + TOP_STEP_VALUE + Set step value + + + TOP_SUPPERSS_HOLES + Perform suppress holes + + + TOP_SUPPRESS_FACES + Perform suppress faces + + + TOP_SUPPRESS_INT_WIRES + Perform suppress internal wires + + + TOP_TOLERANCE + Compute tolerance + + + TOP_TORUS + Create a torus + + + TOP_TRANSLATION + Translation + + + TOP_VECTOR + Create a vector + + + TOP_WHAT_IS + What is + + + TOP_WIRE + Build a wire + + + TOP_WORK_PLANE + Create a working plane + + + WRN_NOT_IMPLEMENTED + Sorry, this functionality is not yet implemented + + + _S_ + (s) + + + NOT_FOUND_ANY + Not a single entity has been found + + + GEOM_FACE_I + Face %1 + + + GEOM_CONSTANT_RADIUS + Radius : + + + GEOM_R1 + R1 : + + + GEOM_R2 + R2 : + + + GEOM_BOTHWAY + Both Directions + + + GEOM_NORMALE + Normal To A Face + + + GEOM_VECTOR_NORMALE + Vector_Normal + + + GEOM_LINE1 + Line 1 + + + GEOM_LINE2 + Line 2 + + + GEOM_D + D : + + + GEOM_CHAMFER_EDGE + Chamfer On Selected Edges + + + SELECTED_EDGE + Selected Edges + + + GEOM_NORMALE_TITLE + Create Normal To A Face + + + GEOM_MEASURE_ANGLE_TITLE + Angle Between Two Straight Edges/Lines/Vectors + + + GEOM_MEASURE_ANGLE_ANGLE + Angle + + + GEOM_MEASURE_ANGLE_OBJ + Objects And Results + + + GEOM_MEASURE_ANGLE_IS + Angle in degrees : + + + GEOM_LINE_INTERSECTION + Point On Lines Intersection + + + GEOM_KEEP_NONLIMIT_SHAPES + Keep shapes of lower type + + + GEOM_CENTER_2POINTS + Center and two points + + + GEOM_REMOVE_EXTRA_EDGES_TITLE + Remove extra edges + + + GEOM_REMOVE_EXTRA_EDGES + Object to remove extra edges + + + REMOVE_EXTRA_EDGES_NEW_OBJ_NAME + NoExtraEdges + + + TOP_REMOVE_EXTRA_EDGES + Remove extra edges + + + MEN_REMOVE_EXTRA_EDGES + Remove Extra Edges + + + STB_REMOVE_EXTRA_EDGES + Remove extra edges + + + TOP_NORMALE + Compute normal to a face + + + MEN_NORMALE + Normal to a Face + + + STB_NORMALE + Compute normal to a face in a point (optional) + + + TOP_MEASURE_ANGLE + Compute angle + + + MEN_MEASURE_ANGLE + Angle + + + STB_MEASURE_ANGLE + Compute angle between two lines or linear edges + + + TOP_POP_AUTO_COLOR + Auto color + + + MEN_POP_AUTO_COLOR + Auto Color + + + STB_POP_AUTO_COLOR + Auto color + + + TOP_POP_DISABLE_AUTO_COLOR + Disable auto color + + + MEN_POP_DISABLE_AUTO_COLOR + Disable Auto Color + + + STB_POP_DISABLE_AUTO_COLOR + Disable auto color + + + GEOM_RESULT_NAME_GRP + Result name + + + GEOM_RESULT_NAME_LBL + Name + + + GEOM_FILLING_APPROX + Approximation + + + GEOM_WRN_NO_APPROPRIATE_SELECTION + No appropriate objects selected + + + GEOM_SHAPES_ON_SHAPE + Get shapes on shape + + + GEOM_SHAPES_ON_SHAPE_ESHAPE + Shape for exploding + + + GEOM_SHAPES_ON_SHAPE_CSHAPE + Shape for checking + + + GEOM_SHAPES_ON_SHAPE_STATE + State + + + GEOM_KIND_OF_SHAPE + Kind of Shape : + + + GEOM_CLOSED + Closed + + + GEOM_UNCLOSED + Opened + + + GEOM_CLOSEDUNCLOSED + Not defined, Closed or Opened. Possibly, error occured. + + + GEOM_DISK_CIRCLE + Disk + + + GEOM_DISK_ELLIPSE + Elliptical face + + + GEOM_PLANAR_FACE + Planar Face + + + GEOM_POLYGON + Polygon + + + GEOM_NORMAL + Normal direction + + + GEOM_DIRECTION + Direction + + + GEOM_UPARAMETER + U-parameter : + + + GEOM_VPARAMETER + V-parameter : + + + GEOM_X_I + X%1 : + + + GEOM_Y_I + Y%1 : + + + GEOM_Z_I + Z%1 : + + + GEOM_SHAPES_ON_SHAPE_TITLE + Get shapes on shape + + + GEOM_SCALE_FACTOR_X + Scale Factor X : + + + GEOM_SCALE_FACTOR_Y + Scale Factor Y : + + + GEOM_SCALE_FACTOR_Z + Scale Factor Z : + + + GEOM_STATE_IN + IN + + + GEOM_STATE_OUT + OUT + + + GEOM_STATE_ON + ON + + + GEOM_STATE_ONIN + ONIN + + + GEOM_STATE_ONOUT + ONOUT + + + GEOM_STATE_INOUT + INOUT + + + TOP_GET_SHAPES_ON_SHAPES + Get shapes on shape + + + MEN_GET_SHAPES_ON_SHAPES + Get Shapes on Shape + + + STB_GET_SHAPES_ON_SHAPES + Get shapes on shape + + + GEOM_PUBLISH_RESULT_GRP + Advanced options + + + GEOM_RESTORE_SUB_SHAPES + Set presentation parameters and subshapes from arguments + + + GEOM_ALL_IMPORT_FILES + All supported formats ( %1 ) + + + GEOM_UNSUPPORTED_TYPE + Unsupported format for the file + + + GEOM_UNKNOWN_IMPORT_ERROR + Unknown error + + + GEOM_IMPORT_ERRORS + Import operation has finished with errors: + + + + BasicGUI_MarkerDlg + + CAPTION + Local CS Construction + + + DX + Dx + + + DY + Dy + + + DZ + Dz + + + LCS_NAME + LocalCS + + + LOCALCS + Local coordinate system + + + ORIGIN + Coordinates of origin + + + VEC_PARALLEL + Coordinate system axes cannot be parallel + + + XDIR + X axis direction + + + YDIR + Y axis direction + + + + BlocksGUI_BlockDlg + + FACE_1 + Face 1 + + + FACE_2 + Face 2 + + + FACE_3 + Face 3 + + + FACE_4 + Face 4 + + + FACE_5 + Face 5 + + + FACE_6 + Face 6 + + + + BlocksGUI_ExplodeDlg + + NB_FACES_MAX + Max. nb. faces + + + NB_FACES_MIN + Min. nb. faces + + + + BlocksGUI_QuadFaceDlg + + EDGE_1 + Edge 1 + + + EDGE_2 + Edge 2 + + + EDGE_3 + Edge 3 + + + EDGE_4 + Edge 4 + + + VERTEX_1 + Vertex 1 + + + VERTEX_2 + Vertex 2 + + + VERTEX_3 + Vertex 3 + + + VERTEX_4 + Vertex 4 + + + + BlocksGUI_TrsfDlg + + FACE_1 + Face 1 + + + FACE_1U + Face 1 U + + + FACE_1V + Face 1 V + + + FACE_2 + Face 2 + + + FACE_2U + Face 2 U + + + FACE_2V + Face 2 V + + + + EntityGUI_SketcherDlg + + CANNOT_CLOSE + It is impossible to close sketch +Number of sketch points too small + + + + EntityGUI_SubShapeDlg + + NO_SUBSHAPES_SELECTED + Please, select one or more sub-shapes + + + + GroupGUI + + NO_GROUP + Please, select a group to edit + + + + GroupGUI_GroupDlg + + ADD + Add + + + CREATE_GROUP_TITLE + Create Group + + + EDIT_GROUP_TITLE + Edit Group + + + EMPTY_LIST + Please, select one or more sub-shapes to put into the group + + + EMPTY_NAME + Please, specify a non-empty group name + + + GROUP_NAME + Group Name + + + GROUP_PREFIX + Group + + + MAIN_SHAPE + Main Shape + + + MAIN_SUB_SHAPES + Main Shape And Sub-Shapes + + + NO_GROUP + Please, select a group to edit + + + NO_MAIN_OBJ + Please, select a main shape + + + REMOVE + Remove + + + SELECT_ALL + Select All + + + SHAPE_SEL_RESTR + Main Shape Selection restriction + + + SHAPE_TYPE + Shape Type + + + NO_RESTR + No restriction + + + GEOM_PARTS_OF_SHAPE2 + Geometrical parts of the Second Shape + + + SUBSHAPES_OF_SHAPE2 + Only Sub-Shapes of the Second Shape + + + SECOND_SHAPE + Second Shape + + + + MeasureGUI_1Sel1TextView1Check_QTD + + CHECK_SHAPE_GEOMETRY + Check also geometry + + + + MeasureGUI_PointDlg + + CAPTION + Point Coordinates + + + COORDINATES + Point and its coordinates + + + POINT + Point + + + X + X + + + Y + Y + + + Z + Z + + + + OperationGUI_ChamferDlg + + D + D + + + FACE_1 + Face 1 + + + FACE_2 + Face 2 + + + SELECTED_FACES + Selected faces + + + + OperationGUI_FilletDlg + + SELECTED_EDGES + Selected edges + + + SELECTED_FACES + Selected faces + + + + RepairGUI_FreeBoundDlg + + CAPTION + Check free boundaries + + + FREE_BOUND + Free boundaries + + + NUMBER_CLOSED + Number of closed free boundaries: + + + NUMBER_OPEN + Number of open free boundaries: + + + + RepairGUI_GlueDlg + + FACES_FOR_GLUING_ARE_DETECTED + There are %1 face(s) that can be glued. They are coloured on the screen with red colour. +Please close this message box and select faces for glueing + + + GLUE_FACES + Glue faces + + + SELECT_FACES + Select Faces + + + THERE_ARE_NO_FACES_FOR_GLUING + There are no faces for gluing + + + + RepairGUI_ShapeProcessDlg + + ERROR_NO_OBJECTS + Please, select a geometrical object for Shape Processing. + + + ERROR_NO_OPERATORS + Please, select at least one Shape Process operation to proceed. + + + TIME_CONSUMING + Enabling this option may result in a very time-consuming operation for some input shapes. +Would you like to continue? + + + + GEOMToolsGUI_DeleteDlg + + GEOM_REALLY_DELETE + Do you really want to delete %1 object(s)? + + + GEOM_REALLY_DELETE_ALL + Do you really want to delete all objects? + + + GEOM_DELETE_OBJECTS + Delete objects + + + diff --git a/src/GEOMGUI/GEOM_msg_fr.po b/src/GEOMGUI/GEOM_msg_fr.po index d4efd381d..a0aaf1884 100644 --- a/src/GEOMGUI/GEOM_msg_fr.po +++ b/src/GEOMGUI/GEOM_msg_fr.po @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,12 +17,13 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # # This is a Qt message file in .po format. Each msgid starts with # a scope. This scope should *NOT* be translated - eg. translating # from French to English, "Foo::Bar" would be translated to "Pub", # not "Foo::Pub". +# msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" diff --git a/src/GEOMGUI/GEOM_msg_fr.ts b/src/GEOMGUI/GEOM_msg_fr.ts new file mode 100644 index 000000000..608ad2570 --- /dev/null +++ b/src/GEOMGUI/GEOM_msg_fr.ts @@ -0,0 +1,1445 @@ + + + + + @default + + GEOM_ANGLE + Angle : + + + GEOM_ARC + Arc + + + GEOM_ARCHIMEDE + Archimde + + + GEOM_ARCHIMEDE_TITLE + Construction d'Archimde + + + GEOM_ARC_TITLE + Construction d'un Arc + + + GEOM_ARGUMENTS + Arguments + + + GEOM_AXE_MIRROR + Axe Miroir + + + GEOM_AXIS + Axe + + + GEOM_BASE + Base + + + GEOM_BASE_OBJECT + Objet De Base + + + GEOM_BASE_POINT + Point De Base + + + GEOM_BEZIER + Bezier + + + GEOM_BNDBOX + Boite Anglobante + + + GEOM_BNDBOX_OBJDIM + Objet and ses dimensions + + + GEOM_BNDBOX_TITLE + Boite Englobante + + + GEOM_BOX + Boite + + + GEOM_BOX_OBJ + Dimensions A l'Origine + + + GEOM_BOX_TITLE + Construction d'une Boite + + + GEOM_BUT_APPLY + &Appliquer + + + GEOM_BUT_CANCEL + &Annuler + + + GEOM_BUT_CLOSE + &Fermer + + + GEOM_BUT_CLOSE_SKETCH + Fermer Sketch + + + GEOM_BUT_END_SKETCH + Terminer Sketch + + + GEOM_BUT_EXPLODE + &Exploser + + + GEOM_BUT_HELP + &Aide + + + GEOM_BUT_NO + &Non + + + GEOM_BUT_OK + &Ok + + + GEOM_BUT_YES + &Oui + + + GEOM_CENTER + Centre + + + GEOM_CENTER_POINT + Point Centre + + + GEOM_CENTRAL_POINT + Point Central + + + GEOM_CHAMFER + Chanfrein + + + GEOM_CHAMFER_ABORT + Le chanfrein ne peut-tre realis avec %1 et %2 + + + GEOM_CHAMFER_ALL + Chanfrein sur toute la Shape + + + GEOM_CHAMFER_EDGES + Chanfrein sur Edges de la Shape + + + GEOM_CHAMFER_FACES + Chanfrein sur Faces de la Shape + + + GEOM_CHAMFER_TITLE + Construction d'un Chanfrein + + + GEOM_CHECK_BLOCKS_COMPOUND + Check Blocks Compound + + + GEOM_CHECK_BLOCKS_COMPOUND_ERRORS + Errors + + + GEOM_CHECK_BLOCKS_COMPOUND_HAS_ERRORS + The Compound of Blocks has errors + + + GEOM_CHECK_BLOCKS_COMPOUND_HAS_NO_ERRORS + The Compound of Blocks has no errors + + + GEOM_CHECK_BLOCKS_COMPOUND_SUBSHAPES + Incriminated Sub-Shapes + + + GEOM_CHECK_COMPOUND_BLOCKS_TITLE + Check Blocks Compound + + + GEOM_CHECK_INFOS + Objet et ses Informations Topologiques + + + GEOM_CHECK_SHAPE + Check Shape + + + GEOM_CHECK_TITLE + Check Shape + + + GEOM_CIRCLE + Cercle + + + GEOM_CIRCLE_TITLE + Construction d'un Cercle + + + GEOM_CMASS + Centre de Masse + + + GEOM_CMASS_TITLE + Centre De Gravit + + + GEOM_COMMON + Joindre + + + GEOM_COMMON_TITLE + BOOLEEN : Jonction De Deux Objets + + + GEOM_COMPOUND + Compound + + + GEOM_COMPOUNDSOLID + CompSolid + + + GEOM_COMPOUND_TITLE + Cration d'un Compound + + + GEOM_CONE + Cone + + + GEOM_CONE_TITLE + Construction d'un Cone + + + GEOM_CONFIRM + Confirmer cette operation + + + GEOM_CONFIRM_INFO + L'objet contient %1 sous objets + + + GEOM_COOR + Coord. : + + + GEOM_COORDINATES + Coordonnes + + + GEOM_CREATE_COPY + Create a copy + + + GEOM_CREATE_SINGLE_SOLID + Create a single solid + + + GEOM_CUT + Couper + + + GEOM_CUT_TITLE + BOOLEEN : Couper Deux Objets + + + GEOM_CYLINDER + Cylindre + + + GEOM_CYLINDER_TITLE + Construction d'un Cylindre + + + GEOM_D1 + D1 : + + + GEOM_D2 + D2 : + + + GEOM_DIAGONAL_POINTS + Points Diagonaux + + + GEOM_DIMENSIONS + Dimensions + + + GEOM_DISTANCE + Distance + + + GEOM_DX + Dx : + + + GEOM_DY + Dy : + + + GEOM_DZ + Dz : + + + GEOM_EDGE + Edge + + + GEOM_EDGE_TITLE + Cration d'un Edge + + + GEOM_ELLIPSE + Ellipse + + + GEOM_ELLIPSE_TITLE + Construction d'Ellipses + + + GEOM_EXTRUSION + Extrusion + + + GEOM_EXTRUSION_BSV + Shape de base + Vecteur + + + GEOM_EXTRUSION_BSV_2P + Shape de base + 2 Points + + + GEOM_EXTRUSION_TITLE + Extruder une Shape de base + + + GEOM_FACE + Face + + + GEOM_FACES + Faces + + + GEOM_FACE_FFW + Face a partir d'un wire + + + GEOM_FACE_OPT + Cration d'une Face plane + + + GEOM_FACE_SELECTION + Selection de Face + + + GEOM_FACE_TITLE + Cration d'une Face + + + GEOM_FILLET + Conge + + + GEOM_FILLET_ABORT + Le cong ne peut-tre realis avec un rayon de %1 + + + GEOM_FILLET_ALL + Cong sur toute la Shape + + + GEOM_FILLET_EDGES + Cong sur Edges de la Shape + + + GEOM_FILLET_FACES + Cong sur Faces de la Shape + + + GEOM_FILLET_TITLE + Construction d'un Cong + + + GEOM_FILLING + Surface Par Edges + + + GEOM_FILLING_ARG + Argument Et Parametres + + + GEOM_FILLING_COMPOUND + Compound de Edges + + + GEOM_FILLING_MAX_DEG + Max. Deg + + + GEOM_FILLING_MIN_DEG + Min. Deg + + + GEOM_FILLING_NB_ITER + Nb. Iter + + + GEOM_FILLING_TITLE + Surface Par Edges + + + GEOM_FILLING_TOL_2D + Tol. 2D + + + GEOM_FILLING_TOL_3D + Tol. 3D + + + GEOM_FREE_FACES + Free faces + + + GEOM_FREE_FACES_TITLE + Free faces + + + GEOM_FUSE + Fusionner + + + GEOM_FUSE_TITLE + BOOLEEN : Fusionner deux Objets + + + GEOM_HEIGHT + Hauteur + + + GEOM_IDENTICAL_NAMES_SELECT_BY_MOUSE + Noms identiques : selectionner avec la souris ! + + + GEOM_INERTIA_CONSTR + Matrice Et Moments d'Inertie + + + GEOM_INERTIA_I + %1:1 + + + GEOM_INERTIA_IXYZ + IX & IY & IZ + + + GEOM_INERTIA_TITLE + Calculs d'Inertie + + + GEOM_INF_LOADED + Le fichier %1 est charg. + + + GEOM_INTERPOL + Interpolation + + + GEOM_KEEP_OBJECT + Objet garde + + + GEOM_LENGTH + Longueur : + + + GEOM_LINE + Ligne + + + GEOM_LINE_TITLE + Construction d'une Ligne + + + GEOM_MAIN_OBJECT + Objet Principal + + + GEOM_MATERIAL_ID + Material ID: + + + GEOM_MATERIAL_MATERIAL + Material + + + GEOM_MATERIAL_SET + << Set + + + GEOM_MATERIAL_SHAPE + Shapes + + + GEOM_MATERIAL_TITLE + Define materials for Dominant Fuse + + + GEOM_MATRIX + Matrice : + + + GEOM_MAX + Max : + + + GEOM_MEN_ALL_FILES + Tous fichiers ( * ) + + + GEOM_MEN_ANGLE + Angle : + + + GEOM_MEN_COMPONENT + Gometrie + + + GEOM_MEN_ENTER_ANGLE + Saisir un angle en degrs + + + GEOM_MEN_EXPORT + Exporter + + + GEOM_MEN_IMPORT + Importer + + + GEOM_MEN_ISOS + Choisir un nombre d'isos + + + GEOM_MEN_ISOU + Isos u : + + + GEOM_MEN_ISOV + Isos v : + + + GEOM_MEN_LOAD_SCRIPT + Fichiers PYTHON ( *.py ) + + + GEOM_MEN_POPUP_NAME + %1 Objets + + + GEOM_MEN_SHADING + Ombr + + + GEOM_MEN_SKETCHER_X + Saisir une longueur pour fixer X + + + GEOM_MEN_SKETCHER_Y + Saisir une longueur pour fixer Y + + + GEOM_MEN_STEP_LABEL + Increment + + + GEOM_MEN_TRANSPARENCY + Transparence + + + GEOM_MEN_TRANSPARENCY_LABEL + Transparence : + + + GEOM_MEN_WIREFRAME + Filaire + + + GEOM_MEN_X + X : + + + GEOM_MEN_Y + Y : + + + GEOM_MESHING_DEFLECTION + Dflection Du Maillage : + + + GEOM_MIN + Min : + + + GEOM_MINDIST_OBJ + Objets Et Resultats + + + GEOM_MINDIST_TITLE + Distance Minimale entre Deux Objets + + + GEOM_MIRROR + Miroir + + + GEOM_MIRROR_TITLE + Methode Miroir + + + GEOM_MULTIROTATION + Multi-Rotation + + + GEOM_MULTIROTATION_DOUBLE + Multi Rotation Double + + + GEOM_MULTIROTATION_SIMPLE + Multi Rotation Simple + + + GEOM_MULTIROTATION_TITLE + Multi-Rotation + + + GEOM_MULTITRANSLATION + Multi-Translation + + + GEOM_MULTITRANSLATION_DOUBLE + Multi Translation Double + + + GEOM_MULTITRANSLATION_SIMPLE + Multi Translation Simple + + + GEOM_MULTITRANSLATION_TITLE + Multi-Translation + + + GEOM_NAME_INCORRECT + Le nom saisi n'existe pas + + + GEOM_NB_TIMES + Nb. Fois : + + + GEOM_NB_TIMES_U + Nb. Fois U : + + + GEOM_NB_TIMES_V + Nb. Fois V : + + + GEOM_OBJECT + Objet + + + GEOM_OBJECTS + Objets + + + GEOM_OBJECT_I + Objet %1 + + + GEOM_OBJECT_RESULT + Objet Et Rsultat + + + GEOM_ORIENTATION + Orientation + + + GEOM_ORIENTATION_OPT + Renverser l'orientation avec une simulation de vecteur normal + + + GEOM_ORIENTATION_TITLE + Changer l'Orientation + + + GEOM_PARAMETER + Paramtre : + + + GEOM_PARAM_POINT + Point paramtrique + + + GEOM_PARTITION + Partition + + + GEOM_PARTITION_HALFSPACE + Half-space partition + + + GEOM_PARTITION_ORIENTATION + Change l'orientation + + + GEOM_PARTITION_TITLE + Partition d'Objects Avec Outils + + + GEOM_PATH_OBJECT + Objet Chemin + + + GEOM_PIPE + Pipe + + + GEOM_PIPE_TITLE + Construction d'une Pipe + + + GEOM_PLANE + Plan + + + GEOM_PLANE_MIRROR + Plan Miroir + + + GEOM_PLANE_PV + Point + Vecteur + + + GEOM_PLANE_PVC + Point + Vecteur Coordonnes + + + GEOM_PLANE_SIZE + Taille du plan : + + + GEOM_PLANE_TITLE + Construction d'un Plan + + + GEOM_POINT + Point + + + GEOM_POINTS + Points + + + GEOM_POINT_I + Point %1 + + + GEOM_POINT_MIRROR + Point Miroir + + + GEOM_POINT_TITLE + Construction d'un Point + + + GEOM_PRECISION + Prcision : + + + GEOM_PROPAGATE + Propagate + + + GEOM_PROPAGATE_TITLE + Propagate + + + GEOM_PROPERTIES + Basiques Proprietes + + + GEOM_PROPERTIES_CONSTR + Objet et ses Proprietes + + + GEOM_PROPERTIES_SURFACE + Surface : + + + GEOM_PROPERTIES_TITLE + Proprietes Basiques + + + GEOM_PROPERTIES_VOLUME + Volume : + + + GEOM_PRP_ABORT + L'opration a echou + + + GEOM_PRP_COMMAND + Pas de commande associe l'id = %1. + + + GEOM_PRP_DONE + Opration effectue + + + GEOM_PRP_LOADING + Chargement de %1 ... + + + GEOM_PRP_MIN_DIST + Min Distance non calculer + + + GEOM_PRP_NOT_FOR_VTK_VIEWER + Non permis dans viewer VTK + + + GEOM_PRP_NULLSHAPE + Erreur, objet inconsistant ou inappropri ! + + + GEOM_PRP_READY + Prt... + + + GEOM_PRP_SELECT_EDGE + Selectionner les edges et clicker sur Apply + + + GEOM_PRP_SELECT_FACE + Select les faces a supprimer et clicker sur Ok/Apply + + + GEOM_PRP_SELECT_FIRST + Selectionner la shape principale en premier + + + GEOM_PRP_SELECT_SUBSHAPES + Selection de sous objets + + + GEOM_PRP_SHAPE_IN_STUDY + La shape principale doit etre avant dans l'etude + + + GEOM_RADIUS + Rayon + + + GEOM_RADIUS_I + Rayon %1 + + + GEOM_RADIUS_MAJOR + Rayon max. : + + + GEOM_RADIUS_MINOR + Rayon min. : + + + GEOM_REALLY_DELETE + Voulez-vous supprimer l'object(s) ? + + + GEOM_RECONSTRUCTION_LIMIT + Limite de Reconstruction + + + GEOM_RECONSTRUCTION_LIMIT_EDGE + Edge + + + GEOM_RECONSTRUCTION_LIMIT_FACE + Face + + + GEOM_RECONSTRUCTION_LIMIT_SHAPE + Shape + + + GEOM_RECONSTRUCTION_LIMIT_SHELL + Shell + + + GEOM_RECONSTRUCTION_LIMIT_SOLID + Solid + + + GEOM_RECONSTRUCTION_LIMIT_VERTEX + Vertex + + + GEOM_RECONSTRUCTION_LIMIT_WIRE + Wire + + + GEOM_REMOVE_WEBS + Remove webs + + + GEOM_REVERSE + Renverser + + + GEOM_REVERSE_U + Renverser U + + + GEOM_REVERSE_V + Reverser V + + + GEOM_REVERSE_VECTOR + Renverser Le Vecteur + + + GEOM_REVOLUTION + Rvolution + + + GEOM_REVOLUTION_TITLE + Construction Par Revolution + + + GEOM_ROTATION + Rotation + + + GEOM_ROTATION_TITLE + Rotation d'un Objet + + + GEOM_SCALE + Echelle + + + GEOM_SCALE_FACTOR + Facteur d'echelle + + + GEOM_SCALE_TITLE + Echelle d'un Objet + + + GEOM_SECTION + Section + + + GEOM_SECTION_TITLE + BOOLEEN : Section De Deux Objets + + + GEOM_SELECTION + Slection + + + GEOM_SET_MATERIALS + Set materials + + + GEOM_SEWING + Coudre + + + GEOM_SEWING_TITLE + Coudre des Topologies + + + GEOM_SHAPE + Shape + + + GEOM_SHELL + Shell + + + GEOM_SHELLS + Shells + + + GEOM_SHELL_TITLE + Construction d'une Shell + + + GEOM_SKETCHER_ABS + Absolu + + + GEOM_SKETCHER_ANGLE + Angle + + + GEOM_SKETCHER_ANGLE2 + Angle : + + + GEOM_SKETCHER_APPLY + Appliquer + + + GEOM_SKETCHER_ARC + Arc + + + GEOM_SKETCHER_DEST + Destination + + + GEOM_SKETCHER_DIR + Direction + + + GEOM_SKETCHER_DX2 + DX : + + + GEOM_SKETCHER_DY2 + DY : + + + GEOM_SKETCHER_EL + Type d'Element + + + GEOM_SKETCHER_LENGTH + Longueur + + + GEOM_SKETCHER_LENGTH2 + Longueur : + + + GEOM_SKETCHER_PER + Perpendiculaire + + + GEOM_SKETCHER_POINT + Point + + + GEOM_SKETCHER_POINT2 + Point : + + + GEOM_SKETCHER_RADIUS2 + Radius : + + + GEOM_SKETCHER_REL + Relative + + + GEOM_SKETCHER_SEGMENT + Sgment + + + GEOM_SKETCHER_SEL + Slection + + + GEOM_SKETCHER_TAN + Tangent + + + GEOM_SKETCHER_TITLE + Construction de Sketch + + + GEOM_SKETCHER_TYPE + Type + + + GEOM_SKETCHER_UNDO + Undo + + + GEOM_SKETCHER_VALUES + Valeurs + + + GEOM_SKETCHER_VX2 + VX : + + + GEOM_SKETCHER_VXVY + VX-VY + + + GEOM_SKETCHER_VY2 + VY : + + + GEOM_SKETCHER_X + X + + + GEOM_SKETCHER_X2 + X : + + + GEOM_SKETCHER_X3 + Abs. X : + + + GEOM_SKETCHER_Y + Y + + + GEOM_SKETCHER_Y2 + Y : + + + GEOM_SKETCHER_Y3 + Abs. Y : + + + GEOM_SOLID + Solide + + + GEOM_SOLID_TITLE + Construction d'un Solid + + + GEOM_SPHERE + Sphre + + + GEOM_SPHERE_CR + Centre + rayon + + + GEOM_SPHERE_RO + Rayon a l'origine + + + GEOM_SPHERE_TITLE + Construction d'une Sphere + + + GEOM_SPLINE + Spline + + + GEOM_SPLINE_TITLE + Construction de Splines + + + GEOM_STEP + Pas : + + + GEOM_STEP_TITLE + Increment par dfaut lors des constructions + + + GEOM_STEP_U + Pas U : + + + GEOM_STEP_V + Pas V : + + + GEOM_SUBSHAPE_SELECT + Selectionner de Sous Shapes + + + GEOM_SUBSHAPE_TITLE + Selection de Sous Shapes + + + GEOM_SUBSHAPE_TYPE + Type de Sous Shapes + + + GEOM_SUB_SHAPE + Sous Shapes + + + GEOM_SUPPRESSHOLE_FACE_SHELL + Face ou shell + + + GEOM_SUPPRESSHOLE_SELECTFACE + Selection de la face initiale + + + GEOM_SUPPRESSHOLE_SELECTFACE_END + Selection de la face terminale (si trou traversant) + + + GEOM_SUPPRESSHOLE_SELECTWIRE + Selection du contour/trou sur la face + + + GEOM_SUPPRESSHOLE_SELECTWIRE_END + Selection de contour final (si trou traversant) + + + GEOM_SUPPRESSHOLE_SELECT_HOLES_ON_FACE + Selection de trou(s) sur la face + + + GEOM_SUPPRESSHOLE_TITLE + Suppression de trous + + + GEOM_SUPPRESS_RESULT + Supprimer le Resultat + + + GEOM_SUPPRESS_RESULT_INSIDE + Intrieur + + + GEOM_SUPPRESS_RESULT_OUTSIDE + Extrieur + + + GEOM_SUPRESSFACE + Supression de Face + + + GEOM_SUPRESSFACE_SELECT + Selectionner les Faces a Supprimer + + + GEOM_SUPRESSFACE_TITLE + Supprimer des Faces dans un Objet + + + GEOM_SURFCONE + Face Conique + + + GEOM_SURFCYLINDER + Face Cylindrique + + + GEOM_SURFSPHERE + Face Sphrique + + + GEOM_SURFTORUS + Face Toroique + + + GEOM_TOLERANCE + Tolrance + + + GEOM_TOLERANCE_CONSTR + Object et ses Tolerances + + + GEOM_TOLERANCE_EDGE + Edge : + + + GEOM_TOLERANCE_FACE + Face : + + + GEOM_TOLERANCE_TITLE + Tolerance Maximale + + + GEOM_TOLERANCE_VERTEX + Vertex : + + + GEOM_TOOL_OBJECT + Objet Outil + + + GEOM_TORUS + Tore + + + GEOM_TORUS_TITLE + Constructiond'un Tore + + + GEOM_TRANSLATION + Translation + + + GEOM_TRANSLATION_COOR + Translation Avec Coordonnees + + + GEOM_TRANSLATION_TITLE + Translation d'un Objet + + + GEOM_TRANSPARENCY_OPAQUE + Opaque + + + GEOM_TRANSPARENCY_TITLE + Transparence + + + GEOM_TRANSPARENCY_TRANSPARENT + Transparent + + + GEOM_VECTOR + Vecteur + + + GEOM_VECTOR_LENGTH + Longueur Du Vecteur : + + + GEOM_VECTOR_TITLE + Construction d'un Vecteur + + + GEOM_VECTOR_U + Vecteur U + + + GEOM_VECTOR_V + Vecteur V + + + GEOM_VERTEX + Vertex + + + GEOM_WATER_DENSITY + Densit de l'eau : + + + GEOM_WEIGHT + poids + + + GEOM_WHATIS + Whatis + + + GEOM_WHATIS_OBJECT + Objet et ses Informations Topologiques + + + GEOM_WHATIS_TITLE + Whatis + + + GEOM_WIRE + Wire + + + GEOM_WIRES + Wire(s) + + + GEOM_WIRE_CONNECT + Creation d'un Wire a partir de wires/edges connectes + + + GEOM_WIRE_TITLE + Creer un Wire + + + GEOM_WPLANE + Plan de Travail + + + GEOM_WPLANE_FACE + Plan Ou Face plane + + + GEOM_WPLANE_TITLE + plan de travail + + + GEOM_WRN_RADIUS_NULL + Le rayon est nul + + + GEOM_WRN_WARNING + Avertissement + + + GEOM_X + X : + + + GEOM_Y + Y : + + + GEOM_Z + Z : + + + SUPPRESS_RESULT + Suppress Result + + + diff --git a/src/GEOMGUI/GeometryGUI.cxx b/src/GEOMGUI/GeometryGUI.cxx index 11d602f2c..54722fe93 100644 --- a/src/GEOMGUI/GeometryGUI.cxx +++ b/src/GEOMGUI/GeometryGUI.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -19,18 +19,19 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GeometryGUI.cxx +// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com) // -// -// File : GeometryGUI.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "GeometryGUI.h" #include "GEOMGUI_OCCSelector.h" #include "GEOMGUI_Selection.h" #include "GEOM_Displayer.h" +#include "GEOM_AISShape.hxx" +#include "GEOM_Actor.h" + +#include #include #include #include @@ -41,34 +42,53 @@ #include #include +#include +#include + #include #include #include #include -#include #include +#include + #include #include -#include +#include #include + #include #include +#include + +#include +#include // External includes -#include -#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include #include #include +#include #include #include #include +#include "GEOMImpl_Types.hxx" + +using namespace Qt; extern "C" { Standard_EXPORT CAM_Module* createModule() { @@ -129,41 +149,14 @@ SALOMEDS::Study_var GeometryGUI::ClientStudyToStudy (_PTR(Study) theStudy) return aDSStudy._retn(); } -//================================================================================= -// class : CustomItem -// purpose : Set Font to a text. -//================================================================================= -class CustomItem : public QCustomMenuItem +//======================================================================= +// function : JoinObjectParameters +// purpose : +//======================================================================= +char* GeometryGUI::JoinObjectParameters(const QStringList& theParametersList) { -public: - CustomItem(const QString& s, const QFont& f) : myString(s), myFont(f) {} - ~CustomItem() {} - - void paint(QPainter* p, const QColorGroup& cg, bool act, bool /*enabled*/, int x, int y, int w, int h) - { - p->save(); - p->fillRect( x, y, w, h, act ? cg.highlight() : cg.mid() ); - p->setPen( act ? cg.highlightedText() : cg.buttonText() ); - p->setFont( myFont ); - p->drawText( x, y, w, h, AlignHCenter | AlignVCenter | ShowPrefix | DontClip | SingleLine, myString ); - p->restore(); - } - - QSize sizeHint() - { - return QFontMetrics( myFont ).size( AlignHCenter | AlignVCenter | ShowPrefix | DontClip | SingleLine, myString ); - } - - bool fullSpan() const - { - return true; - } - -private: - QString myString; - QFont myFont; -}; - + return theParametersList.join(":").toLatin1().data(); +} //======================================================================= // function : GeometryGUI::GeometryGUI() // purpose : Constructor @@ -186,9 +179,6 @@ GeometryGUI::GeometryGUI() : gp_Dir direction = gp_Dir(0., 0., 1.); myWorkingPlane = gp_Ax3(origin, direction); - myOCCSelectors.setAutoDelete( true ); - myVTKSelectors.setAutoDelete( true ); - myDisplayer = 0; myLocalSelectionMode = GEOM_ALLOBJECTS; } @@ -199,6 +189,11 @@ GeometryGUI::GeometryGUI() : //======================================================================= GeometryGUI::~GeometryGUI() { + while (!myOCCSelectors.isEmpty()) + delete myOCCSelectors.takeFirst(); + + while (!myVTKSelectors.isEmpty()) + delete myVTKSelectors.takeFirst(); } //======================================================================= @@ -210,19 +205,21 @@ GEOMGUI* GeometryGUI::getLibrary( const QString& libraryName ) { if ( !myGUIMap.contains( libraryName ) ) { // try to load library if it is not loaded yet - QCString libs; + QString libs; #ifndef WNT - if ( (libs = getenv( "LD_LIBRARY_PATH" )) ) { - QStringList dirList = QStringList::split( ":", libs, false ); // skip empty entries + libs = getenv( "LD_LIBRARY_PATH" ); + if( !libs.isEmpty() ) { + QStringList dirList = libs.split( ":", QString::SkipEmptyParts ); // skip empty entries #else - if ( (libs = getenv( "PATH" )) ) { - QStringList dirList = QStringList::split( ";", libs, false ); // skip empty entries + libs = getenv( "PATH" ); + if( !libs.isEmpty() ) { + QStringList dirList = libs.split( ";", QString::SkipEmptyParts ); // skip empty entries #endif for( int i = dirList.count()-1; i >= 0; i-- ) { QString dir = dirList[ i ]; QFileInfo fi( Qtx::addSlash( dirList[ i ] ) + libraryName ); if( fi.exists() ) { - OSD_SharedLibrary aSharedLibrary( (char*)fi.fileName().latin1() ); + OSD_SharedLibrary aSharedLibrary( fi.fileName().toLatin1().data() ); bool res = aSharedLibrary.DlOpen( OSD_RTLD_LAZY ); if( !res ) { MESSAGE( "Can't open library : " << aSharedLibrary.DlError() ); @@ -358,7 +355,7 @@ void GeometryGUI::OnGUIEvent( int id ) // fix for IPAL9103, point 2 if ( CORBA::is_nil( GetGeomGen() ) ) { - SUIT_MessageBox::error1( desk, tr( "GEOM_ERROR" ), tr( "GEOM_ERR_GET_ENGINE" ), tr( "GEOM_BUT_OK" ) ); + SUIT_MessageBox::critical( desk, tr( "GEOM_ERROR" ), tr( "GEOM_ERR_GET_ENGINE" ), tr( "GEOM_BUT_OK" ) ); return; } @@ -382,8 +379,6 @@ void GeometryGUI::OnGUIEvent( int id ) id == 33 || // MENU EDIT - DELETE id == 411 || // MENU SETTINGS - ADD IN STUDY id == 412 || // MENU SETTINGS - SHADING COLOR - id == 413 || // MENU SETTINGS - ISOS - id == 414 || // MENU SETTINGS - STEP VALUE FOR SPIN BOXES id == 5103 || // MENU TOOLS - CHECK GEOMETRY id == 8032 || // POPUP VIEWER - COLOR id == 8033 || // POPUP VIEWER - TRANSPARENCY @@ -434,7 +429,9 @@ void GeometryGUI::OnGUIEvent( int id ) id == 4022 || // MENU PRIMITIVE - CYLINDER id == 4023 || // MENU PRIMITIVE - SPHERE id == 4024 || // MENU PRIMITIVE - TORUS - id == 4025 ) { // MENU PRIMITIVE - CONE + id == 4025 || // MENU PRIMITIVE - CONE + id == 4026 || // MENU PRIMITIVE - FACE + id == 4027 ) { // MENU PRIMITIVE - DISK #ifndef WNT library = getLibrary( "libPrimitiveGUI.so" ); #else @@ -452,6 +449,7 @@ void GeometryGUI::OnGUIEvent( int id ) #endif } else if( id == 404 || // MENU ENTITY - SKETCHER + id == 405 || // MENU ENTITY - 3D SKETCHER id == 407 ) { // MENU ENTITY - EXPLODE #ifndef WNT library = getLibrary( "libEntityGUI.so" ); @@ -488,7 +486,8 @@ void GeometryGUI::OnGUIEvent( int id ) id == 5025 || // MENU TRANSFORMATION - SCALE id == 5026 || // MENU TRANSFORMATION - OFFSET id == 5027 || // MENU TRANSFORMATION - MULTI-TRANSLATION - id == 5028 ) { // MENU TRANSFORMATION - MULTI-ROTATION + id == 5028 || // MENU TRANSFORMATION - MULTI-ROTATION + id == 5029 ) { // CONTEXT(POPUP) MENU - RELOAD_IMPORTED #ifndef WNT library = getLibrary( "libTransformationGUI.so" ); #else @@ -499,7 +498,9 @@ void GeometryGUI::OnGUIEvent( int id ) id == 504 || // MENU OPERATION - ARCHIMEDE id == 505 || // MENU OPERATION - FILLET id == 506 || // MENU OPERATION - CHAMFER - id == 507 ) { // MENU OPERATION - CLIPPING RANGE + id == 507 || // MENU OPERATION - CLIPPING RANGE + id == 508 || // MENU OPERATION - GET SHAPES ON SHAPE + id == 509 ) { // MENU OPERATION - FILLET 2D #ifndef WNT library = getLibrary( "libOperationGUI.so" ); #else @@ -535,7 +536,7 @@ void GeometryGUI::OnGUIEvent( int id ) id == 706 || // MENU MEASURE - WHATIS id == 707 || // MENU MEASURE - CHECK id == 7072 || // MENU MEASURE - CHECK COMPOUND OF BLOCKS - id == 708 ) { // MENU MEASURE - POINT COORDINATES + id == 708 ) { // MENU MEASURE - POINT COORDINATES #ifndef WNT library = getLibrary( "libMeasureGUI.so" ); #else @@ -555,7 +556,7 @@ void GeometryGUI::OnGUIEvent( int id ) id == 9998 || // MENU BLOCKS - MULTI-TRANSFORMATION id == 9997 || // MENU BLOCKS - QUADRANGLE FACE id == 99991 || // MENU BLOCKS - PROPAGATE - id == 9995 ) { // MENU BLOCKS - EXPLODE ON BLOCKS + id == 9995 ) { // MENU BLOCKS - EXPLODE ON BLOCKS #ifndef WNT library = getLibrary( "libBlocksGUI.so" ); #else @@ -567,7 +568,7 @@ void GeometryGUI::OnGUIEvent( int id ) if ( library ) library->OnGUIEvent( id, desk ); else - SUIT_MessageBox::error1( desk, tr( "GEOM_ERROR" ), tr( "GEOM_ERR_LIB_NOT_FOUND" ), tr( "GEOM_BUT_OK" ) ); + SUIT_MessageBox::critical( desk, tr( "GEOM_ERROR" ), tr( "GEOM_ERR_LIB_NOT_FOUND" ), tr( "GEOM_BUT_OK" ) ); } @@ -582,7 +583,7 @@ void GeometryGUI::OnKeyPress( SUIT_ViewWindow* win, QKeyEvent* pe ) for ( it = myGUIMap.begin(); it != myGUIMap.end(); ++it ) { SUIT_Application* anApp = application(); if (!anApp) return; - bOk = bOk && it.data()->OnKeyPress( pe, anApp->desktop(), win ); + bOk = bOk && it.value()->OnKeyPress( pe, anApp->desktop(), win ); } // return bOk; } @@ -599,7 +600,7 @@ void GeometryGUI::OnMouseMove( SUIT_ViewWindow* win, QMouseEvent* pe ) for ( it = myGUIMap.begin(); it != myGUIMap.end(); ++it ) { SUIT_Application* anApp = application(); if (!anApp) return; - bOk = bOk && it.data()->OnMouseMove( pe, anApp->desktop(), win ); + bOk = bOk && it.value()->OnMouseMove( pe, anApp->desktop(), win ); } // return bOk; } @@ -618,7 +619,7 @@ void GeometryGUI::OnMousePress( SUIT_ViewWindow* win, QMouseEvent* pe ) for ( it = myGUIMap.begin(); it != myGUIMap.end(); ++it ) { SUIT_Application* anApp = application(); if (!anApp) return; - processed = processed || it.data()->OnMousePress( pe, anApp->desktop(), win ); + processed = processed || it.value()->OnMousePress( pe, anApp->desktop(), win ); } // return processed; } @@ -738,20 +739,20 @@ bool GeometryGUI::SetSettings() //======================================================================= void GeometryGUI::createGeomAction( const int id, const QString& po_id, const QString& icon_id, const int key, const bool toggle ) { - QIconSet icon; + QIcon icon; QWidget* parent = application()->desktop(); SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); QPixmap pix; if ( icon_id.length() ) - pix = resMgr->loadPixmap( "GEOM", tr( icon_id ) ); + pix = resMgr->loadPixmap( "GEOM", tr( icon_id.toLatin1().constData() ) ); else - pix = resMgr->loadPixmap( "GEOM", tr( QString( "ICO_" )+po_id ), false ); + pix = resMgr->loadPixmap( "GEOM", tr( (QString( "ICO_" )+po_id).toLatin1().constData() ), false ); if ( !pix.isNull() ) - icon = QIconSet( pix ); + icon = QIcon( pix ); - QString tooltip = tr( QString( "TOP_" )+po_id ), - menu = tr( QString( "MEN_" )+po_id ), - status_bar = tr( QString( "STB_" )+po_id ); + QString tooltip = tr( (QString( "TOP_" )+po_id).toLatin1().constData() ), + menu = tr( (QString( "MEN_" )+po_id).toLatin1().constData() ), + status_bar = tr( (QString( "STB_" )+po_id).toLatin1().constData() ); createAction( id, tooltip, icon, menu, status_bar, key, parent, toggle, this, SLOT( OnGUIEvent() ) ); } @@ -771,7 +772,7 @@ void GeometryGUI::initialize( CAM_Application* app ) createGeomAction( 111, "IMPORT", "", (CTRL + Key_I) ); createGeomAction( 121, "EXPORT", "", (CTRL + Key_E) ); - createGeomAction( 33, "DELETE", "", Key_Delete ); + createGeomAction( 33, "DELETE", "", Qt::Key_Delete ); createGeomAction( 4011, "POINT" ); createGeomAction( 4012, "LINE" ); @@ -789,6 +790,8 @@ void GeometryGUI::initialize( CAM_Application* app ) createGeomAction( 4023, "SPHERE" ); createGeomAction( 4024, "TORUS" ); createGeomAction( 4025, "CONE" ); + createGeomAction( 4026, "FACE" ); + createGeomAction( 4027, "DISK" ); createGeomAction( 4031, "EXTRUSION" ); createGeomAction( 4032, "REVOLUTION" ); @@ -798,10 +801,13 @@ void GeometryGUI::initialize( CAM_Application* app ) createGeomAction( 800, "GROUP_CREATE" ); createGeomAction( 801, "GROUP_EDIT" ); + createGeomAction( 5029, "RELOAD_IMPORTED" ); + createGeomAction( 9997, "Q_FACE" ); createGeomAction( 9999, "HEX_SOLID" ); createGeomAction( 404, "SKETCH" ); + createGeomAction( 405, "3DSKETCH" ); createGeomAction( 407, "EXPLODE" ); createGeomAction( 4081, "EDGE" ); @@ -830,6 +836,8 @@ void GeometryGUI::initialize( CAM_Application* app ) createGeomAction( 505, "FILLET" ); createGeomAction( 506, "CHAMFER" ); //createGeomAction( 507, "CLIPPING" ); + createGeomAction( 508, "GET_SHAPES_ON_SHAPES" ); + createGeomAction( 509, "FILLET_2D" ); createGeomAction( 9998, "MUL_TRANSFORM" ); createGeomAction( 9995, "EXPLODE_BLOCKS" ); @@ -866,8 +874,6 @@ void GeometryGUI::initialize( CAM_Application* app ) createGeomAction( 5103, "CHECK_GEOMETRY" ); #endif createGeomAction( 412, "SHADING_COLOR" ); - createGeomAction( 413, "ISOS" ); - createGeomAction( 414, "STEP_VALUE" ); createGeomAction( 211, "SHADING" ); createGeomAction( 212, "DISPLAY_ALL" ); @@ -884,7 +890,7 @@ void GeometryGUI::initialize( CAM_Application* app ) createGeomAction( 213, "DISPLAY_ONLY" ); createGeomAction( 215, "ERASE" ); - createGeomAction( 901, "POP_RENAME", "", Key_F2 ); + createGeomAction( 901, "POP_RENAME", "", Qt::Key_F2 ); createGeomAction( 80311, "POP_WIREFRAME", "", 0, true ); createGeomAction( 80312, "POP_SHADING", "", 0, true ); createGeomAction( 8032, "POP_COLOR" ); @@ -930,6 +936,8 @@ void GeometryGUI::initialize( CAM_Application* app ) createMenu( 4023, primId, -1 ); createMenu( 4024, primId, -1 ); createMenu( 4025, primId, -1 ); + createMenu( 4026, primId, -1 ); + createMenu( 4027, primId, -1 ); int genId = createMenu( tr( "MEN_GENERATION" ), newEntId, -1 ); createMenu( 4031, genId, -1 ); @@ -949,6 +957,7 @@ void GeometryGUI::initialize( CAM_Application* app ) createMenu( separator(), newEntId, -1 ); createMenu( 404, newEntId, -1 ); + createMenu( 405, newEntId, -1 ); createMenu( separator(), newEntId, -1 ); createMenu( 407, newEntId, -1 ); @@ -981,7 +990,9 @@ void GeometryGUI::initialize( CAM_Application* app ) createMenu( 503, operId, -1 ); createMenu( 504, operId, -1 ); + createMenu( 508, operId, -1 ); createMenu( separator(), operId, -1 ); + createMenu( 509, transId, -1 ); createMenu( 505, transId, -1 ); createMenu( 506, transId, -1 ); //createMenu( 507, transId, -1 ); @@ -1040,8 +1051,6 @@ void GeometryGUI::initialize( CAM_Application* app ) //createMenu( separator(), prefId, -1 ); //int geomId = createMenu( tr( "MEN_PREFERENCES_GEOM" ), prefId, -1 ); //createMenu( 412, geomId, -1 ); - //createMenu( 413, geomId, -1 ); - //createMenu( 414, geomId, -1 ); //createMenu( separator(), prefId, -1 ); int viewId = createMenu( tr( "MEN_VIEW" ), -1, -1 ); @@ -1085,6 +1094,8 @@ void GeometryGUI::initialize( CAM_Application* app ) createTool( 4023, primTbId ); createTool( 4024, primTbId ); createTool( 4025, primTbId ); + createTool( 4026, primTbId ); + createTool( 4027, primTbId ); int boolTbId = createTool( tr( "TOOL_BOOLEAN" ) ); createTool( 5011, boolTbId ); @@ -1122,33 +1133,33 @@ void GeometryGUI::initialize( CAM_Application* app ) QtxPopupMgr* mgr = popupMgr(); mgr->insert( action( 901 ), -1, -1 ); // rename - mgr->setRule( action( 901 ), "$type in {'Shape' 'Group'} and selcount=1", true ); + mgr->setRule( action( 901 ), QString("$type in {'Shape' 'Group'} and selcount=1"), QtxPopupMgr::VisibleRule ); mgr->insert( action( 33 ), -1, -1 ); // delete - mgr->setRule( action( 33 ), "$type in {'Shape' 'Group'} and selcount>0", true ); + mgr->setRule( action( 33 ), QString("$type in {'Shape' 'Group'} and selcount>0"), QtxPopupMgr::VisibleRule ); mgr->insert( action( 8001 ), -1, -1 ); // create group - mgr->setRule( action( 8001 ), "client='ObjectBrowser' and type='Shape' and selcount=1 and isOCC=true", true ); + mgr->setRule( action( 8001 ), QString("client='ObjectBrowser' and type='Shape' and selcount=1 and isOCC=true"), QtxPopupMgr::VisibleRule ); mgr->insert( action( 801 ), -1, -1 ); // edit group - mgr->setRule( action( 801 ), "client='ObjectBrowser' and type='Group' and selcount=1 and isOCC=true", true ); + mgr->setRule( action( 801 ), QString("client='ObjectBrowser' and type='Group' and selcount=1 and isOCC=true"), QtxPopupMgr::VisibleRule ); mgr->insert( separator(), -1, -1 ); // ----------- dispmodeId = mgr->insert( tr( "MEN_DISPLAY_MODE" ), -1, -1 ); // display mode menu mgr->insert( action( 80311 ), dispmodeId, -1 ); // wireframe - mgr->setRule( action( 80311 ), clientOCCorVTK_AndSomeVisible, true ); - mgr->setRule( action( 80311 ), clientOCCorVTK + " and displaymode='Wireframe'", false ); + mgr->setRule( action( 80311 ), clientOCCorVTK_AndSomeVisible, QtxPopupMgr::VisibleRule ); + mgr->setRule( action( 80311 ), clientOCCorVTK + " and displaymode='Wireframe'", QtxPopupMgr::ToggleRule ); mgr->insert( action( 80312 ), dispmodeId, -1 ); // shading - mgr->setRule( action( 80312 ), clientOCCorVTK_AndSomeVisible, true ); - mgr->setRule( action( 80312 ), clientOCCorVTK + " and displaymode='Shading'", false ); + mgr->setRule( action( 80312 ), clientOCCorVTK_AndSomeVisible, QtxPopupMgr::VisibleRule ); + mgr->setRule( action( 80312 ), clientOCCorVTK + " and displaymode='Shading'", QtxPopupMgr::ToggleRule ); mgr->insert( separator(), -1, -1 ); // ----------- mgr->insert( action( 8032 ), -1, -1 ); // color - mgr->setRule( action( 8032 ), clientOCCorVTKorOB_AndSomeVisible + " and ($component={'GEOM'})", true ); + mgr->setRule( action( 8032 ), clientOCCorVTKorOB_AndSomeVisible + " and ($component={'GEOM'})", QtxPopupMgr::VisibleRule ); mgr->insert( action( 8033 ), -1, -1 ); // transparency - mgr->setRule( action( 8033 ), clientOCCorVTK_AndSomeVisible, true ); + mgr->setRule( action( 8033 ), clientOCCorVTK_AndSomeVisible, QtxPopupMgr::VisibleRule ); mgr->insert( action( 8034 ), -1, -1 ); // isos - mgr->setRule( action( 8034 ), clientOCCorVTK_AndSomeVisible + " and selcount>0 and isVisible", true ); + mgr->setRule( action( 8034 ), clientOCCorVTK_AndSomeVisible + " and selcount>0 and isVisible", QtxPopupMgr::VisibleRule ); mgr->insert( separator(), -1, -1 ); // ----------- mgr->insert( action( 8035 ), -1, -1 ); // auto color - mgr->setRule( action( 8035 ), autoColorPrefix + " and isAutoColor=false", true ); + mgr->setRule( action( 8035 ), autoColorPrefix + " and isAutoColor=false", QtxPopupMgr::VisibleRule ); mgr->insert( action( 8036 ), -1, -1 ); // disable auto color - mgr->setRule( action( 8036 ), autoColorPrefix + " and isAutoColor=true", true ); + mgr->setRule( action( 8036 ), autoColorPrefix + " and isAutoColor=true", QtxPopupMgr::VisibleRule ); mgr->insert( separator(), -1, -1 ); // ----------- @@ -1158,45 +1169,44 @@ void GeometryGUI::initialize( CAM_Application* app ) types = "'Shape' 'Group'"; mgr->insert( action( 216 ), -1, -1 ); // display - mgr->setRule( action( 216 ), rule.arg( types ).arg( "not isVisible" ), true ); + mgr->setRule( action( 216 ), rule.arg( types ).arg( "not isVisible" ), QtxPopupMgr::VisibleRule ); mgr->insert( action( 215 ), -1, -1 ); // erase - mgr->setRule( action( 215 ), rule.arg( types ).arg( "isVisible" ), true ); + mgr->setRule( action( 215 ), rule.arg( types ).arg( "isVisible" ), QtxPopupMgr::VisibleRule ); mgr->insert( action( 214 ), -1, -1 ); // erase All - mgr->setRule( action( 214 ), clientOCCorVTK, true ); + mgr->setRule( action( 214 ), clientOCCorVTK, QtxPopupMgr::VisibleRule ); QString selectOnly = "(client='OCCViewer' or client='VTKViewer') and (selcount=0)"; int selectolnyId = mgr->insert( tr("MEN_SELECT_ONLY"), -1, -1); //select only menu mgr->insert( action(2171), selectolnyId, -1); //Vertex - mgr->setRule(action(2171), selectOnly, true); - mgr->setRule(action(2171), selectOnly + " and selectionmode='VERTEX'", false); + mgr->setRule(action(2171), selectOnly, QtxPopupMgr::VisibleRule); + mgr->setRule(action(2171), selectOnly + " and selectionmode='VERTEX'", QtxPopupMgr::ToggleRule); mgr->insert( action(2172), selectolnyId, -1); //Edge - mgr->setRule(action(2172), selectOnly, true); - mgr->setRule(action(2172), selectOnly + " and selectionmode='EDGE'", false); + mgr->setRule(action(2172), selectOnly, QtxPopupMgr::VisibleRule); + mgr->setRule(action(2172), selectOnly + " and selectionmode='EDGE'", QtxPopupMgr::ToggleRule); mgr->insert( action(2173), selectolnyId, -1); //Wire - mgr->setRule(action(2173), selectOnly, true); - mgr->setRule(action(2173), selectOnly + " and selectionmode='WIRE'", false); + mgr->setRule(action(2173), selectOnly, QtxPopupMgr::VisibleRule); + mgr->setRule(action(2173), selectOnly + " and selectionmode='WIRE'", QtxPopupMgr::ToggleRule); mgr->insert( action(2174), selectolnyId, -1); //Face - mgr->setRule(action(2174), selectOnly, true); - mgr->setRule(action(2174), selectOnly + " and selectionmode='FACE'", false); + mgr->setRule(action(2174), selectOnly, QtxPopupMgr::VisibleRule); + mgr->setRule(action(2174), selectOnly + " and selectionmode='FACE'", QtxPopupMgr::ToggleRule); mgr->insert( action(2175), selectolnyId, -1); //Shell - mgr->setRule(action(2175), selectOnly, true); - mgr->setRule(action(2175), selectOnly + " and selectionmode='SHELL'", false); + mgr->setRule(action(2175), selectOnly, QtxPopupMgr::VisibleRule); + mgr->setRule(action(2175), selectOnly + " and selectionmode='SHELL'", QtxPopupMgr::ToggleRule); mgr->insert( action(2176), selectolnyId, -1); //Solid - mgr->setRule(action(2176), selectOnly, true); - mgr->setRule(action(2176), selectOnly + " and selectionmode='SOLID'", false); + mgr->setRule(action(2176), selectOnly, QtxPopupMgr::VisibleRule); + mgr->setRule(action(2176), selectOnly + " and selectionmode='SOLID'", QtxPopupMgr::ToggleRule); mgr->insert( action(2177), selectolnyId, -1); //Compound - mgr->setRule(action(2177), selectOnly, true); - mgr->setRule(action(2177), selectOnly + " and selectionmode='COMPOUND'", false); + mgr->setRule(action(2177), selectOnly, QtxPopupMgr::VisibleRule); + mgr->setRule(action(2177), selectOnly + " and selectionmode='COMPOUND'", QtxPopupMgr::ToggleRule); mgr->insert( separator(), selectolnyId, -1); mgr->insert( action(2178), selectolnyId, -1); //Clear selection filter - mgr->setRule(action(2178), selectOnly, true); - mgr->setRule(action(2178), selectOnly + " and selectionmode='ALL'", false); - + mgr->setRule(action(2178), selectOnly, QtxPopupMgr::VisibleRule); + mgr->setRule(action(2178), selectOnly + " and selectionmode='ALL'", QtxPopupMgr::ToggleRule); mgr->insert( action( 213 ), -1, -1 ); // display only - mgr->setRule( action( 213 ), rule.arg( types ).arg( "true" ), true ); + mgr->setRule( action( 213 ), rule.arg( types ).arg( "true" ), QtxPopupMgr::VisibleRule ); mgr->insert( separator(), -1, -1 ); mgr->hide( mgr->actionId( action( myEraseAll ) ) ); @@ -1225,32 +1235,50 @@ bool GeometryGUI::activateModule( SUIT_Study* study ) // Reset actions accelerator keys //action(111)->setAccel(QKeySequence(CTRL + Key_I)); // Import //action(121)->setAccel(QKeySequence(CTRL + Key_E)); // Export - action(111)->setEnabled(true); // Import - action(121)->setEnabled(true); // Export + action(111)->setEnabled( true ); // Import: CTRL + Key_I + action(121)->setEnabled( true ); // Export: CTRL + Key_E + action( 33)->setEnabled( true ); // Delete: Key_Delete + action(901)->setEnabled( true ); // Rename: Key_F2 GUIMap::Iterator it; for ( it = myGUIMap.begin(); it != myGUIMap.end(); ++it ) - it.data()->activate( application()->desktop() ); + it.value()->activate( application()->desktop() ); LightApp_SelectionMgr* sm = getApp()->selectionMgr(); + SUIT_ViewManager* vm; ViewManagerList OCCViewManagers, VTKViewManagers; + application()->viewManagers( OCCViewer_Viewer::Type(), OCCViewManagers ); - for ( vm = OCCViewManagers.first(); vm; vm = OCCViewManagers.next() ) + QListIterator itOCC( OCCViewManagers ); + while ( itOCC.hasNext() && (vm = itOCC.next()) ) myOCCSelectors.append( new GEOMGUI_OCCSelector( ((OCCViewer_ViewManager*)vm)->getOCCViewer(), sm ) ); + application()->viewManagers( SVTK_Viewer::Type(), VTKViewManagers ); - for ( vm = VTKViewManagers.first(); vm; vm = VTKViewManagers.next() ) + QListIterator itVTK( VTKViewManagers ); + while ( itVTK.hasNext() && (vm = itVTK.next()) ) myVTKSelectors.append( new LightApp_VTKSelector( dynamic_cast( vm->getViewModel() ), sm ) ); + //NPAL 19674 + SALOME_ListIO selected; + sm->selectedObjects( selected ); + sm->clearSelected(); + // disable OCC selectors - //getApp()->selectionMgr()->setEnabled( false, OCCViewer_Viewer::Type() ); - for ( GEOMGUI_OCCSelector* sr = myOCCSelectors.first(); sr; sr = myOCCSelectors.next() ) - sr->setEnabled(true); + getApp()->selectionMgr()->setEnabled( false, OCCViewer_Viewer::Type() ); + QListIterator itOCCSel( myOCCSelectors ); + while ( itOCCSel.hasNext() ) + if ( GEOMGUI_OCCSelector* sr = itOCCSel.next() ) + sr->setEnabled(true); // disable VTK selectors - //getApp()->selectionMgr()->setEnabled( false, SVTK_Viewer::Type() ); - for ( LightApp_VTKSelector* sr = myVTKSelectors.first(); sr; sr = myVTKSelectors.next() ) - sr->setEnabled(true); + getApp()->selectionMgr()->setEnabled( false, SVTK_Viewer::Type() ); + QListIterator itVTKSel( myVTKSelectors ); + while ( itVTKSel.hasNext() ) + if ( LightApp_VTKSelector* sr = itVTKSel.next() ) + sr->setEnabled(true); + + sm->setSelectedObjects( selected, true ); //NPAL 19674 return true; } @@ -1272,325 +1300,27 @@ bool GeometryGUI::deactivateModule( SUIT_Study* study ) GUIMap::Iterator it; for ( it = myGUIMap.begin(); it != myGUIMap.end(); ++it ) - it.data()->deactivate(); + it.value()->deactivate(); // Unset actions accelerator keys //action(111)->setAccel(QKeySequence()); // Import //action(121)->setAccel(QKeySequence()); // Export - action(111)->setEnabled(false); // Import - action(121)->setEnabled(false); // Export + action(111)->setEnabled( false ); // Import: CTRL + Key_I + action(121)->setEnabled( false ); // Export: CTRL + Key_E + action( 33)->setEnabled( false ); // Delete: Key_Delete + action(901)->setEnabled( false ); // Rename: Key_F2 + qDeleteAll(myOCCSelectors); myOCCSelectors.clear(); getApp()->selectionMgr()->setEnabled( true, OCCViewer_Viewer::Type() ); + qDeleteAll(myVTKSelectors); myVTKSelectors.clear(); getApp()->selectionMgr()->setEnabled( true, SVTK_Viewer::Type() ); return SalomeApp_Module::deactivateModule( study ); } -//================================================================================= -// function : GeometryGUI::DefinePopup() -// purpose : Called from desktop to define popup menu [static] -//================================================================================= -/* -void GeometryGUI::DefinePopup(QString& theContext, QString& theParent, QString& theObject) -{ - QAD_Study* ActiveStudy = QAD_Application::getDesktop()->getActiveStudy(); - SALOME_Selection* Sel = SALOME_Selection::Selection(ActiveStudy->getSelection()); - - theObject = ""; - theContext = ""; - - if ( theParent == "Viewer" ) { - if ( Sel->IObjectCount() == 0 ) - theContext = "NothingSelected"; - } - - if ( Sel->IObjectCount() == 1 ) { - Handle(SALOME_InteractiveObject) IO = Sel->firstIObject(); - if( IO->hasEntry() ) { - SALOMEDS::SObject_var sobj = ActiveStudy->getStudyDocument()->FindObjectID( IO->getEntry() ); - if ( !sobj->_is_nil() ) { - SALOMEDS::SComponent_var scomp = sobj->GetFatherComponent(); - if ( !strcmp(scomp->GetID(), IO->getEntry() ) ) { - // component is selected - theObject = "Component"; - } - else { - GEOM::GEOM_Object_var aGObj = GEOM::GEOM_Object::_narrow( sobj->GetObject() ); - if ( !CORBA::is_nil( aGObj ) ) { - switch( aGObj->GetType() ) { - case GEOM_GROUP: - theObject = "Group"; - break; - default: - theObject = "Shape"; - break; - } - } - } - } - } - } -} - -//================================================================================= -// function : GeometryGUI::CustomPopup() -// purpose : Called from desktop to create popup menu [static] -//================================================================================= -bool GeometryGUI::CustomPopup(QAD_Desktop* parent, QPopupMenu* popup, const QString& theContext, - const QString& theParent, const QString& theObject) -{ - GeometryGUI* geomGUI = GetGeomGUI(); - - // Deactivate any non modal dialog box to get the neutral point - geomGUI->EmitSignalDeactivateDialog(); - QAD_Study* anActiveStudy = parent->getActiveStudy(); - QAD_StudyFrame* aStudyFrame = anActiveStudy->getActiveStudyFrame(); - QAD_ViewFrame* aViewFrame = aStudyFrame->getRightFrame()->getViewFrame(); - SALOME_Selection* Sel = SALOME_Selection::Selection(anActiveStudy->getSelection()); - QString parentComponent = ((SALOMEGUI_Desktop*)parent)->getComponentFromSelection(); - bool isOCCViewer = aViewFrame->getTypeView() == VIEW_OCC; - bool isVTKViewer = aViewFrame->getTypeView() == VIEW_VTK; - int aDisplayMode = 0; - QString objectName; - - if ( aViewFrame->getTypeView() == VIEW_OCC ) - aDisplayMode = ((OCCViewer_ViewFrame*)aViewFrame)->getViewer()->getAISContext()->DisplayMode(); - else if ( aViewFrame->getTypeView() == VIEW_VTK ) - aDisplayMode = (dynamic_cast( aViewFrame )->getRWInteractor()->GetDisplayMode(); - - int nbSel = Sel->IObjectCount(); - - if( nbSel == 0 ) { - ////// NOTHING SELECTED - popup->clear(); - } - else if ( nbSel == 1 ) { - ////// SINGLE OBJECT SELECTION - if ( parentComponent != parent->getActiveComponent() ) { - ////// selected object does not belong to GEOM module: - // remove all commands except Display/Erase... - while ( 1 ) { - int id = popup->idAt( 0 ); - if ( id <= QAD_TopLabel_Popup_ID ) - popup->removeItemAt( 0 ); - else - break; - } - } - else { - ////// selected object belong to the GEOM module - // get interactive object - Handle(SALOME_InteractiveObject) IObject = Sel->firstIObject(); - objectName = IObject->getName(); - // if object has entry get SObject - SALOMEDS::SObject_var SO; - if ( IObject->hasEntry() ) - SO = anActiveStudy->getStudyDocument()->FindObjectID( IObject->getEntry() ); - - if ( theObject == "Component" ) { - ////// menu for component - if ( !isOCCViewer && !isVTKViewer ) { - popup->removeItem( QAD_DisplayOnly_Popup_ID ); - popup->removeItem( QAD_Display_Popup_ID ); - popup->removeItem( QAD_Erase_Popup_ID ); - } - } - else { - ////// not component (should be shape) - if ( IObject->hasEntry() ) /////// VSR : TO BE REMOVED - popup->removeItem( 804 ); // "Add in Study" - - // Here could be analysis of the geom shape's type - // ... // - - SALOMEDS::GenericAttribute_var aTmpAttr; - if( SO->_is_nil() || SO->GetFatherComponent()->FindAttribute( aTmpAttr, "AttributeIOR") ) - popup->removeItem( 9024 ); // "Open" /////// VSR : TO BE REMOVED - - if ( !isOCCViewer && theParent == "ObjectBrowser" ) { - if ( theObject == "Shape" ) - popup->removeItem( 800 ); // Create Group - else if ( theObject == "Group" ) - popup->removeItem( 801 ); // Edit Group - } - - if ( isOCCViewer || isVTKViewer ) { - ////// current viewer is OCC or VTK - SALOME_Prs* prs = aViewFrame->CreatePrs( IObject->getEntry() ); - if ( aViewFrame->isVisible( IObject ) ) { - ////// object is already displayed in the viewer - popup->removeItem( QAD_Display_Popup_ID ); - if ( isOCCViewer ) { - ////// OCC viewer only - OCCViewer_Prs* occPrs = dynamic_cast( prs ); - if ( occPrs && !occPrs->IsNull() ) { - AIS_ListOfInteractive ioList; - occPrs->GetObjects( ioList ); - QMenuItem* mi = popup->findItem( 803 ); - if ( mi && mi->popup() ) { - if ( ioList.First()->DisplayMode() == 0 ) - mi->popup()->setItemChecked( 80311, true ); // "Wireframe" - else if ( ioList.First()->DisplayMode() == 1 ) - mi->popup()->setItemChecked( 80312, true ); // "Shading" - else if ( ioList.First()->DisplayMode() < 0 ) - mi->popup()->setItemChecked( aDisplayMode == 0 ? 80311 : 80312 , true ); // "Wireframe" or "Shading" - } - } - } - else { - ////// VTK viewer only - //popup->removeItem( 8034 ); // "Isos" - SVTK_Prs* vtkPrs = dynamic_cast( prs ); - if ( vtkPrs && !vtkPrs->IsNull() ) { - vtkActorCollection* actorList = vtkPrs->GetObjects(); - actorList->InitTraversal(); - SALOME_Actor* ac = SALOME_Actor::SafeDownCast( actorList->GetNextActor() ); - QMenuItem* mi = popup->findItem( 803 ); - if ( ac && mi && mi->popup() ) { - if ( ac->getDisplayMode() == 0 ) - mi->popup()->setItemChecked( 80311, true ); // "Wireframe" - else if ( ac->getDisplayMode() == 1 ) - mi->popup()->setItemChecked( 80312, true ); // "Shading" - else - mi->popup()->setItemChecked( aDisplayMode == 0 ? 80311 : 80312 , true ); // "Wireframe" or "Shading" - } - } - } - } - else { - ////// object is not yet displayed in the viewer - popup->removeItem( 803 ); // "Display Mode" - popup->removeItem( 8032 ); // "Color" - popup->removeItem( 8033 ); // "Transparency" - popup->removeItem( 8034 ); // "Isos" - popup->removeItem( QAD_Erase_Popup_ID ); - } - delete prs; - } - else { - ////// other viewer type (neither OCC nor VTK) - popup->removeItem( 803 ); // "Display Mode" - popup->removeItem( 8032 ); // "Color" - popup->removeItem( 8033 ); // "Transparency" - popup->removeItem( 8034 ); // "Isos" - popup->removeItem( QAD_Display_Popup_ID ); - popup->removeItem( QAD_DisplayOnly_Popup_ID ); - popup->removeItem( QAD_Erase_Popup_ID ); - } - } - } - } - else { - ////// MULTIPLE SELECTION - if ( parentComponent != parent->getActiveComponent() ) { - ////// not GEOM module objects or objects belong to different modules - // remove all commands except Display/Erase... - while ( 1 ) { - int id = popup->idAt( 0 ); - if ( id <= QAD_TopLabel_Popup_ID ) - popup->removeItemAt( 0 ); - else - break; - } - if ( parentComponent.isNull() ) { - ////// objects belong to different modules - popup->removeItem(QAD_Display_Popup_ID); - popup->removeItem(QAD_DisplayOnly_Popup_ID); - popup->removeItem(QAD_Erase_Popup_ID); - } - else { - objectName = tr( "GEOM_MEN_POPUP_NAME" ).arg( nbSel ); - } - } - else { - ////// all selected objects belong to GEOM module - popup->removeItem( 901 ); // "Rename" - - SALOME_ListIteratorOfListIO It( Sel->StoredIObjects() ); - bool isComponent = false; - bool needOpen = false; - bool needDisplay = false; - bool needErase = false; - int needToPublish = 0; - - for( ;It.More();It.Next() ) { - Handle(SALOME_InteractiveObject) anIObject = It.Value(); - - if ( aViewFrame->isVisible( anIObject ) ) - needErase = true; - else - needDisplay = true; - - if( anIObject->hasEntry() ) { - needToPublish = -1; /////// VSR : TO BE REMOVED - SALOMEDS::SObject_var obj = anActiveStudy->getStudyDocument()->FindObjectID( anIObject->getEntry() ); - SALOMEDS::GenericAttribute_var aTmpAttr; - if ( !obj->_is_nil() && !obj->GetFatherComponent()->FindAttribute( aTmpAttr, "AttributeIOR" ) ) - needOpen = true; /////// VSR : TO BE REMOVED - if ( !obj->_is_nil() && QString( obj->GetID() ) == QString( obj->GetFatherComponent()->GetID() ) ) - isComponent = true; - } - else { - if ( needToPublish != -1 ) needToPublish = 1; - } - } - if( needOpen || ( !isOCCViewer && !isVTKViewer ) ) { - ////// Data is not loaded yet or current viewer is neither OCC nor VTK - popup->removeItem( 803 ); // "Display Mode" - popup->removeItem( 8032 ); // "Color" - popup->removeItem( 8033 ); // "Transparency" - popup->removeItem( 8034 ); // "Isos" - popup->removeItem( 804 ); // "Add in Study" - popup->removeItem( QAD_DisplayOnly_Popup_ID ); - popup->removeItem( QAD_Display_Popup_ID ); - popup->removeItem( QAD_Erase_Popup_ID ); - } - else { - popup->removeItem( 9024 ); // "Open" - if ( needToPublish <= 0 ) - popup->removeItem( 804 ); // "Add in Study" - - if( isComponent ) { - popup->removeItem( 803 ); // "Display Mode" - popup->removeItem( 8032 ); // "Color" - popup->removeItem( 8033 ); // "Transparency" - popup->removeItem( 8034 ); // "Isos" - popup->removeItem( QAD_DisplayOnly_Popup_ID ); - } - - if ( !needDisplay ) - popup->removeItem( QAD_Display_Popup_ID ); - if ( !needErase ) - popup->removeItem( QAD_Erase_Popup_ID ); - if ( !isOCCViewer && !isVTKViewer) - popup->removeItem( 8034 ); // "Isos" - } - } - } - - // check popup for unnecessary separators - QAD_Tools::checkPopup( popup ); - // find popup menu's TopLabel item (with title) - int topItem = popup->indexOf( QAD_TopLabel_Popup_ID ); - if ( topItem >= 0 ) { - // remove popup menu's title item - popup->removeItem( QAD_TopLabel_Popup_ID ); - if ( theParent == "Viewer" && !objectName.isEmpty() && popup->count() > 0 ) { - // set bold font for popup menu's title - QFont f = popup->font(); f.setBold( TRUE ); - popup->removeItem( QAD_TopLabel_Popup_ID ); - popup->insertItem( new CustomItem( objectName, f ), QAD_TopLabel_Popup_ID, topItem ); - } - } - - return false; -} - -*/ - //======================================================================= // function : GeometryGUI::BuildPresentation() // purpose : @@ -1610,7 +1340,7 @@ void GeometryGUI::onWindowActivated( SUIT_ViewWindow* win ) return; const bool ViewOCC = ( win->getViewManager()->getType() == OCCViewer_Viewer::Type() ); - const bool ViewVTK = ( win->getViewManager()->getType() == SVTK_Viewer::Type() ); + //const bool ViewVTK = ( win->getViewManager()->getType() == SVTK_Viewer::Type() ); // disable non-OCC viewframe menu commands // action( 404 )->setEnabled( ViewOCC ); // SKETCHER @@ -1620,8 +1350,6 @@ void GeometryGUI::onWindowActivated( SUIT_ViewWindow* win ) action( 607 )->setEnabled( ViewOCC ); // RemoveInternalWires action( 608 )->setEnabled( ViewOCC ); // AddPointOnEdge // action( 609 )->setEnabled( ViewOCC ); // Free boundaries - action( 413 )->setEnabled( ViewOCC ); // Isos Settings - action( 413 )->setEnabled( ViewVTK ); // Isos Settings action( 800 )->setEnabled( ViewOCC ); // Create Group action( 801 )->setEnabled( ViewOCC ); // Edit Group @@ -1631,8 +1359,8 @@ void GeometryGUI::onWindowActivated( SUIT_ViewWindow* win ) void GeometryGUI::windows( QMap& mappa ) const { - mappa.insert( SalomeApp_Application::WT_ObjectBrowser, Qt::DockLeft ); - mappa.insert( SalomeApp_Application::WT_PyConsole, Qt::DockBottom ); + mappa.insert( SalomeApp_Application::WT_ObjectBrowser, Qt::LeftDockWidgetArea ); + mappa.insert( SalomeApp_Application::WT_PyConsole, Qt::BottomDockWidgetArea ); } void GeometryGUI::viewManagers( QStringList& lst ) const @@ -1658,8 +1386,10 @@ void GeometryGUI::onViewManagerAdded( SUIT_ViewManager* vm ) // disable OCC selectors getApp()->selectionMgr()->setEnabled( false, OCCViewer_Viewer::Type() ); - for ( GEOMGUI_OCCSelector* sr = myOCCSelectors.first(); sr; sr = myOCCSelectors.next() ) - sr->setEnabled(true); + QListIterator itOCCSel( myOCCSelectors ); + while ( itOCCSel.hasNext() ) + if ( GEOMGUI_OCCSelector* sr = itOCCSel.next() ) + sr->setEnabled(true); } else if ( vm->getType() == SVTK_Viewer::Type() ) { @@ -1668,8 +1398,10 @@ void GeometryGUI::onViewManagerAdded( SUIT_ViewManager* vm ) // disable VTK selectors getApp()->selectionMgr()->setEnabled( false, SVTK_Viewer::Type() ); - for ( LightApp_VTKSelector* sr = myVTKSelectors.first(); sr; sr = myVTKSelectors.next() ) - sr->setEnabled(true); + QListIterator itVTKSel( myVTKSelectors ); + while ( itVTKSel.hasNext() ) + if ( LightApp_VTKSelector* sr = itVTKSel.next() ) + sr->setEnabled(true); } } @@ -1678,21 +1410,25 @@ void GeometryGUI::onViewManagerRemoved( SUIT_ViewManager* vm ) SUIT_ViewModel* viewer = vm->getViewModel(); if ( vm->getType() == OCCViewer_Viewer::Type() ) { - for ( GEOMGUI_OCCSelector* sr = myOCCSelectors.first(); sr; sr = myOCCSelectors.next() ) - if ( sr->viewer() == viewer ) - { - myOCCSelectors.remove( sr ); - break; - } + QListIterator itOCCSel( myOCCSelectors ); + while ( itOCCSel.hasNext() ) + if ( GEOMGUI_OCCSelector* sr = itOCCSel.next() ) + if ( sr->viewer() == viewer ) + { + delete myOCCSelectors.takeAt( myOCCSelectors.indexOf( sr ) ); + break; + } } if ( vm->getType() == SVTK_Viewer::Type() ) { - for ( LightApp_VTKSelector* sr = myVTKSelectors.first(); sr; sr = myVTKSelectors.next() ) - if ( sr->viewer() == viewer ) - { - myVTKSelectors.remove( sr ); - break; - } + QListIterator itVTKSel( myVTKSelectors ); + while ( itVTKSel.hasNext() ) + if ( LightApp_VTKSelector* sr = itVTKSel.next() ) + if ( sr->viewer() == viewer ) + { + delete myVTKSelectors.takeAt( myVTKSelectors.indexOf( sr ) ); + break; + } } } @@ -1700,7 +1436,7 @@ QString GeometryGUI::engineIOR() const { if ( !CORBA::is_nil( GetGeomGen() ) ) return QString( getApp()->orb()->object_to_string( GetGeomGen() ) ); - return QString( "" ); + return ""; } LightApp_Selection* GeometryGUI::createSelection() const @@ -1708,18 +1444,39 @@ LightApp_Selection* GeometryGUI::createSelection() const return new GEOMGUI_Selection(); } -void GeometryGUI::contextMenuPopup( const QString& client, QPopupMenu* menu, QString& title ) +void GeometryGUI::contextMenuPopup( const QString& client, QMenu* menu, QString& title ) { - SalomeApp_Module::contextMenuPopup( client, menu, title ); + SalomeApp_Module::contextMenuPopup(client, menu, title); + SALOME_ListIO lst; - getApp()->selectionMgr()->selectedObjects( lst ); - if ( ( client == "OCCViewer" || client == "VTKViewer" ) && lst.Extent() == 1 ) { - Handle(SALOME_InteractiveObject) io = lst.First(); - SalomeApp_Study* appStudy = dynamic_cast( application()->activeStudy() ); - _PTR(Study) study = appStudy->studyDS(); - _PTR(SObject) obj = study->FindObjectID( io->getEntry() ); - if ( obj ) - title = QString( obj->GetName().c_str() ); + getApp()->selectionMgr()->selectedObjects(lst); + if (lst.Extent() < 1) + return; + + SalomeApp_Study* appStudy = dynamic_cast(application()->activeStudy()); + _PTR(Study) study = appStudy->studyDS(); + + bool isImported = true; + SALOME_ListIteratorOfListIO anIt (lst); + for (; anIt.More() && isImported; anIt.Next()) { + Handle(SALOME_InteractiveObject) io = anIt.Value(); + _PTR(SObject) aSObj = study->FindObjectID(io->getEntry()); + if (aSObj) { + if (lst.Extent() == 1) { + // Set context menu title + if (client == "OCCViewer" || client == "VTKViewer") + title = QString(aSObj->GetName().c_str()); + } + + CORBA::Object_var anObj = GeometryGUI::ClientSObjectToObject(aSObj); + GEOM::GEOM_Object_var aGeomObj = GEOM::GEOM_Object::_narrow(anObj); + if (CORBA::is_nil(aGeomObj) || aGeomObj->GetType() != GEOM_IMPORT) + isImported = false; + } + } + + if (isImported) { + menu->addAction(action(5029)); // Reload imported shape } } @@ -1728,10 +1485,11 @@ void GeometryGUI::createPreferences() int tabId = addPreference( tr( "PREF_TAB_SETTINGS" ) ); int genGroup = addPreference( tr( "PREF_GROUP_GENERAL" ), tabId ); - setPreferenceProperty( genGroup, "columns", 1 ); + setPreferenceProperty( genGroup, "columns", 2 ); int dispmode = addPreference( tr( "PREF_DISPLAY_MODE" ), genGroup, - LightApp_Preferences::Selector, "Geometry", "display_mode" ); + LightApp_Preferences::Selector, + "Geometry", "display_mode" ); addPreference( tr( "PREF_SHADING_COLOR" ), genGroup, LightApp_Preferences::Color, "Geometry", "shading_color" ); @@ -1755,6 +1513,7 @@ void GeometryGUI::createPreferences() LightApp_Preferences::IntSpin, "Geometry", "SettingsGeomStep" ); int VertexGroup = addPreference( tr( "PREF_GROUP_VERTEX" ), tabId ); + setPreferenceProperty( VertexGroup, "columns", 2 ); int typeOfMarker = addPreference( tr( "PREF_TYPE_OF_MARKER" ), VertexGroup, LightApp_Preferences::Selector, "Geometry", "type_of_marker" ); @@ -1767,7 +1526,7 @@ void GeometryGUI::createPreferences() aModesList.append( tr("MEN_WIREFRAME") ); aModesList.append( tr("MEN_SHADING") ); - QValueList anIndexesList; + QList anIndexesList; anIndexesList.append(0); anIndexesList.append(1); @@ -1775,13 +1534,13 @@ void GeometryGUI::createPreferences() setPreferenceProperty( dispmode, "indexes", anIndexesList ); // Set property for step value for spinboxes - setPreferenceProperty( step, "min", 0.001 ); + setPreferenceProperty( step, "min", 1 ); setPreferenceProperty( step, "max", 10000 ); setPreferenceProperty( step, "precision", 3 ); // Set property for type of vertex marker QStringList aTypeOfMarkerList; - QValueList anTypeOfMarkerIndexesList; + QList anTypeOfMarkerIndexesList; aTypeOfMarkerList.append( tr("TOM_PLUS") ); anTypeOfMarkerIndexesList.append(Aspect_TOM_PLUS); @@ -1848,3 +1607,440 @@ int GeometryGUI::getLocalSelectionMode() const { return myLocalSelectionMode; } + +const char gSeparator = '_'; // character used to separate parameter names +const char gDigitsSep = ':'; // character used to separate numeric parameter values (color = r:g:b) + +/*! + * \brief Store visual parameters + * + * This method is called just before the study document is saved. + * Store visual parameters in AttributeParameter attribue(s) + */ +void GeometryGUI::storeVisualParameters (int savePoint) +{ + SalomeApp_Study* appStudy = dynamic_cast(application()->activeStudy()); + if (!appStudy || !appStudy->studyDS()) + return; + _PTR(Study) studyDS = appStudy->studyDS(); + + // componentName is used for encoding of entries when storing them in IParameters + std::string componentName = myComponentGeom->ComponentDataType(); + //_PTR(SComponent) aSComponent = studyDS->FindComponent("GEOM"); + //if (!aSComponent) return; + + // IParameters + _PTR(AttributeParameter) ap = studyDS->GetModuleParameters("Interface Applicative", + componentName.c_str(), + savePoint); + _PTR(IParameters) ip = ClientFactory::getIParameters(ap); + + // viewers counters are used for storing view_numbers in IParameters + int vtkViewers(0), occViewers(0); + + QList lst; + QList::Iterator it; + + // main cycle to store parameters of displayed objects + lst.clear(); + vtkViewers = occViewers = 0; + getApp()->viewManagers(lst); + for (it = lst.begin(); it != lst.end(); it++) + { + SUIT_ViewManager* vman = *it; + QString vType = vman->getType(); + + // saving VTK actors properties + if (vType == SVTK_Viewer::Type()) + { + QVector views = vman->getViews(); + for (int i = 0, iEnd = vman->getViewsCount(); i < iEnd; i++) + { + if (SVTK_ViewWindow* vtkView = dynamic_cast(views[i])) + { + vtkActorCollection* allActors = vtkView->getRenderer()->GetActors(); + allActors->InitTraversal(); + while (vtkActor* actor = allActors->GetNextActor()) + { + if (actor->GetVisibility()) // store only visible actors + { + GEOM_Actor* aGeomActor = 0; + if (actor->IsA("GEOM_Actor")) + aGeomActor = GEOM_Actor::SafeDownCast(actor); + if (aGeomActor && aGeomActor->hasIO()) + { + Handle(SALOME_InteractiveObject) io = aGeomActor->getIO(); + if (io->hasEntry()) + { + // entry is "encoded" = it does NOT contain component adress, since it is a + // subject to change on next component loading + std::string entry = ip->encodeEntry(io->getEntry(), componentName); + + std::string param, occParam = vType.toLatin1().data(); + occParam += gSeparator; + occParam += QString::number(vtkViewers).toLatin1().data(); + occParam += gSeparator; + + param = occParam + "Visibility"; + ip->setParameter(entry, param, "On"); + + param = occParam + "DisplayMode"; + ip->setParameter(entry, param, QString::number + (aGeomActor->getDisplayMode()).toLatin1().data()); + + vtkFloatingPointType r, g, b; + aGeomActor->GetColor(r, g, b); + QString colorStr = QString::number(r); + colorStr += gDigitsSep; colorStr += QString::number(g); + colorStr += gDigitsSep; colorStr += QString::number(b); + param = occParam + "Color"; + ip->setParameter(entry, param, colorStr.toLatin1().data()); + + param = occParam + "Opacity"; + ip->setParameter(entry, param, QString::number(aGeomActor->GetOpacity()).toLatin1().data()); + + int nbUIso(0), nbVIso(0); + aGeomActor->GetNbIsos(nbUIso,nbVIso); + QString isosStr = QString::number(nbUIso); + isosStr += gDigitsSep; + isosStr += QString::number(nbVIso); + param = occParam + "Isos"; + ip->setParameter(entry, param, isosStr.toLatin1().data()); + } // if (io->hasEntry()) + } // GEOM_Actor && hasIO + } // isVisible + } // while.. actors traversal + } // if (vtkView) + } // for (views) + vtkViewers++; + } // if (SVTK view model) + else if (vType == SOCC_Viewer::Type()) // processing OCC viewers + { + QVector views = vman->getViews(); + for (int i = 0, iEnd = vman->getViewsCount(); i < iEnd; i++) + { + SOCC_ViewWindow* occView = dynamic_cast(views[i]); + if (occView) + { + //Handle(AIS_InteractiveContext) ic = + // ((OCCViewer_Viewer*)(occView->getViewManager()->getViewModel()))->getAISContext(); + OCCViewer_Viewer* viewModel = (OCCViewer_Viewer*)(vman->getViewModel()); + //OCCViewer_Viewer* viewModel = ((OCCViewer_ViewManager*)vman)->getOCCViewer(); + Handle(AIS_InteractiveContext) ic = viewModel->getAISContext(); + + AIS_ListOfInteractive aList; + ic->DisplayedObjects(aList); + + AIS_ListIteratorOfListOfInteractive ite (aList); + for (; ite.More(); ite.Next()) + { + if (ite.Value()->IsInstance(STANDARD_TYPE(GEOM_AISShape))) + { + Handle(GEOM_AISShape) aSh = Handle(GEOM_AISShape)::DownCast(ite.Value()); + if (aSh->hasIO()) + { + Handle(SALOME_InteractiveObject) io = + Handle(SALOME_InteractiveObject)::DownCast(aSh->getIO()); + if (io->hasEntry()) + { + // entry is "encoded": it does NOT contain component adress, + // since it is a subject to change on next component loading + std::string entry = ip->encodeEntry(io->getEntry(), componentName); + + std::string param, occParam = vType.toLatin1().data(); + occParam += gSeparator; + occParam += QString::number(occViewers).toLatin1().data(); + occParam += gSeparator; + + // Visibility + param = occParam + "Visibility"; + ip->setParameter(entry, param, "On"); + + // DisplayMode + param = occParam + "DisplayMode"; + int dm = aSh->DisplayMode(); + ip->setParameter(entry, param, QString::number(dm).toLatin1().data()); + + // Color + // is a property of GEOM_Object, it is stored by GEOM engine + + // Transparency + param = occParam + "Transparency"; + ip->setParameter(entry, param, QString::number(aSh->Transparency()).toLatin1().data()); + + // Isos + Handle(AIS_Drawer) aDrawer = aSh->Attributes(); + int nbUIso = aDrawer->UIsoAspect()->Number(); + int nbVIso = aDrawer->VIsoAspect()->Number(); + QString isosStr = QString::number(nbUIso); + isosStr += gDigitsSep; + isosStr += QString::number(nbVIso); + param = occParam + "Isos"; + ip->setParameter(entry, param, isosStr.toLatin1().data()); + } // if (io->hasEntry()) + } // if (io) + } // if (GEOM_AISShape) + } // for (AIS_ListOfInteractive) + } // if ( occView ) + } // for ( views ) + occViewers++; + } // if (SOCC view model) + else + { + // unknown viewer type + } + } // for (viewManagers) +} + +/*! + * \brief Restore visual parameters + * + * This method is called after the study document is opened. + * Restore visual parameters from AttributeParameter attribue(s) + */ +void GeometryGUI::restoreVisualParameters (int savePoint) +{ + SalomeApp_Study* appStudy = dynamic_cast(application()->activeStudy()); + if (!appStudy || !appStudy->studyDS()) + return; + _PTR(Study) studyDS = appStudy->studyDS(); + + // componentName is used for encoding of entries when storing them in IParameters + std::string componentName = myComponentGeom->ComponentDataType(); + //_PTR(SComponent) aSComponent = studyDS->FindComponent("GEOM"); + //if (!aSComponent) return; + + // IParameters + _PTR(AttributeParameter) ap = studyDS->GetModuleParameters("Interface Applicative", + componentName.c_str(), + savePoint); + _PTR(IParameters) ip = ClientFactory::getIParameters(ap); + + std::vector entries = ip->getEntries(); + + for (std::vector::iterator entIt = entries.begin(); entIt != entries.end(); ++entIt) + { + // entry is a normal entry - it should be "decoded" (setting base adress of component) + QString entry (ip->decodeEntry(*entIt).c_str()); + + // Check that the entry corresponds to a real object in the Study + // as the object may be deleted or modified after the visual state is saved. + _PTR(SObject) so = studyDS->FindObjectID(entry.toLatin1().data()); + if (!so) continue; //Skip the not existent entry + + std::vector paramNames = ip->getAllParameterNames( *entIt ); + std::vector paramValues = ip->getAllParameterValues( *entIt ); + + std::vector::iterator namesIt = paramNames.begin(); + std::vector::iterator valuesIt = paramValues.begin(); + + // actors are stored in a map after displaying of them for + // quicker access in the future: map < viewID to actor > + NCollection_DataMap vtkActors; + NCollection_DataMap occActors; + + for (; namesIt != paramNames.end(); ++namesIt, ++valuesIt) + { + // visual parameters are stored in strings as follows: ViewerType_ViewIndex_ParamName. + // '_' is used as separator and should not be used in viewer type or parameter names. + QStringList lst = QString((*namesIt).c_str()).split(gSeparator, QString::SkipEmptyParts); + if (lst.size() != 3) + continue; + + QString viewerTypStr = lst[0]; + QString viewIndexStr = lst[1]; + QString paramNameStr = lst[2]; + + bool ok; + int viewIndex = viewIndexStr.toUInt(&ok); + if (!ok) // bad conversion of view index to integer + continue; + + // viewers + if (viewerTypStr == SVTK_Viewer::Type()) + { + GEOM_Actor* vActor = 0; + if (vtkActors.IsBound(viewIndex)) + vActor = vtkActors.Find(viewIndex); + + if (paramNameStr == "Visibility") + { + if (!vActor && displayer()) + { + QList lst; + getApp()->viewManagers(viewerTypStr, lst); + + // SVTK ViewManager always has 1 ViewWindow, so view index is index of view manager + if (viewIndex >= 0 && viewIndex < lst.count()) { + SUIT_ViewManager* vman = lst.at(viewIndex); + SUIT_ViewModel* vmodel = vman->getViewModel(); + // SVTK view model can be casted to SALOME_View + displayer()->Display(entry, true, dynamic_cast(vmodel)); + + // store displayed actor in a temporary map for quicker + // access later when restoring other parameters + SVTK_ViewWindow* vtkView = (SVTK_ViewWindow*) vman->getActiveView(); + vtkRenderer* Renderer = vtkView->getRenderer(); + vtkActorCollection* theActors = Renderer->GetActors(); + theActors->InitTraversal(); + bool isFound = false; + vtkActor *ac = theActors->GetNextActor(); + for (; ac != NULL && !isFound; ac = theActors->GetNextActor()) { + if (ac->IsA("GEOM_Actor")) { + GEOM_Actor* aGeomAc = GEOM_Actor::SafeDownCast(ac); + if (aGeomAc->hasIO()) { + Handle(SALOME_InteractiveObject) io = + Handle(SALOME_InteractiveObject)::DownCast(aGeomAc->getIO()); + if (io->hasEntry() && strcmp(io->getEntry(), entry.toLatin1().data()) == 0) { + isFound = true; + vtkActors.Bind(viewIndex, aGeomAc); + } + } + } + } + } + } + } // if (paramNameStr == "Visibility") + else + { + // the rest properties "work" with GEOM_Actor + if (vActor) + { + QString val ((*valuesIt).c_str()); + + if (paramNameStr == "DisplayMode") { + vActor->setDisplayMode(val.toInt()); + } + else if (paramNameStr == "Color") { + QStringList colors = val.split(gDigitsSep, QString::SkipEmptyParts); + if (colors.count() == 3) + vActor->SetColor(colors[0].toFloat(), colors[1].toFloat(), colors[2].toFloat()); + } + else if (paramNameStr == "Opacity") { + vActor->SetOpacity(val.toFloat()); + } + else if (paramNameStr == "Isos") { + QStringList isos = val.split(gDigitsSep, QString::SkipEmptyParts); + if (isos.count() == 2) { + int aIsos[2] = {isos[0].toInt(), isos[1].toInt()}; + vActor->SetNbIsos(aIsos); + } + } + } + } // other parameters than Visibility + } + else if (viewerTypStr == SOCC_Viewer::Type()) + { + //Handle(AIS_InteractiveObject) occActor; + Handle(GEOM_AISShape) occActor; + if (occActors.IsBound(viewIndex)) + occActor = occActors.Find(viewIndex); + + // ViewModel and InteractiveContext + SOCC_Viewer* occVModel = 0; + Handle(AIS_InteractiveContext) ic; + + QList lst; + getApp()->viewManagers(viewerTypStr, lst); + + // SOCC ViewManager always has 1 ViewWindow, so view index is index of view manager + if (viewIndex >= 0 && viewIndex < lst.count()) { + SUIT_ViewManager* vman = lst.at(viewIndex); + SUIT_ViewModel* vmodel = vman->getViewModel(); + occVModel = dynamic_cast(vmodel); + if (occVModel) + ic = occVModel->getAISContext(); + } + + if (ic.IsNull()) + continue; + + if (paramNameStr == "Visibility") + { + if (occActor.IsNull() && displayer()) + { + displayer()->Display(entry, true, occVModel); + + // store displayed actor in a temporary map for quicker + // access later when restoring other parameters + AIS_ListOfInteractive aList; + ic->DisplayedObjects(aList); + bool isFound = false; + AIS_ListIteratorOfListOfInteractive ite (aList); + for (; ite.More() && !isFound; ite.Next()) { + if (ite.Value()->IsInstance(STANDARD_TYPE(GEOM_AISShape))) { + Handle(GEOM_AISShape) aSh = Handle(GEOM_AISShape)::DownCast(ite.Value()); + if (aSh->hasIO()) { + Handle(SALOME_InteractiveObject) io = + Handle(SALOME_InteractiveObject)::DownCast(aSh->getIO()); + if (io->hasEntry() && strcmp(io->getEntry(), entry.toLatin1().data()) == 0) { + isFound = true; + occActors.Bind(viewIndex, aSh); + } + } + } + } + } + } // if (paramNameStr == "Visibility") + else + { + // the rest properties "work" with GEOM_AISShape + if (!occActor.IsNull()) + { + QString val ((*valuesIt).c_str()); + + if (paramNameStr == "DisplayMode") { + ic->SetDisplayMode(occActor, AIS_DisplayMode(val.toInt()), false); + //ic->Redisplay(occActor, Standard_False, Standard_True); + } + // Color is restored by the GEOM engine + else if (paramNameStr == "Transparency") { + ic->SetTransparency(occActor, val.toFloat(), false); + ic->Redisplay(occActor, Standard_False, Standard_True); + } + else if (paramNameStr == "Isos") { + QStringList isos = val.split(gDigitsSep, QString::SkipEmptyParts); + if (isos.count() == 2) { + Handle(AIS_Drawer) aDrawer = occActor->Attributes(); + int nbUIso = isos[0].toInt(); + int nbVIso = isos[1].toInt(); + Handle(Prs3d_IsoAspect) uIsoAspect = aDrawer->UIsoAspect(); + Handle(Prs3d_IsoAspect) vIsoAspect = aDrawer->VIsoAspect(); + uIsoAspect->SetNumber(nbUIso); + vIsoAspect->SetNumber(nbVIso); + aDrawer->SetUIsoAspect(uIsoAspect); + aDrawer->SetVIsoAspect(vIsoAspect); + ic->SetLocalAttributes(occActor, aDrawer); + ic->Redisplay(occActor); + } + } + } + } // other parameters than Visibility + } + else + { + // unknown viewer type + } + } // for names/parameters iterator + } // for entries iterator + + // update all VTK and OCC views + QList lst; + getApp()->viewManagers(lst); + for (QList::Iterator it = lst.begin(); it != lst.end(); it++) { + SUIT_ViewModel* vmodel = (*it)->getViewModel(); + if (!vmodel) + continue; + if (vmodel->getType() == SVTK_Viewer::Type()) { + SVTK_ViewWindow* vtkView = (SVTK_ViewWindow*) (*it)->getActiveView(); + vtkView->getRenderer()->ResetCameraClippingRange(); + vtkView->Repaint(); + } + else if (vmodel->getType() == SOCC_Viewer::Type()) { + //SOCC_ViewWindow* occView = (SOCC_ViewWindow*) (*it)->getActiveView(); + SALOME_View* occVMod = dynamic_cast(vmodel); + if (occVMod) + occVMod->Repaint(); + } + } +} diff --git a/src/GEOMGUI/GeometryGUI.h b/src/GEOMGUI/GeometryGUI.h index 484e3883f..36d06fd55 100644 --- a/src/GEOMGUI/GeometryGUI.h +++ b/src/GEOMGUI/GeometryGUI.h @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,30 +17,27 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GeometryGUI.h +// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com) // -// -// File : GeometryGUI.h -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #ifndef GEOMETRYGUI_H #define GEOMETRYGUI_H #include "GEOM_GEOMGUI.hxx" -#include "SalomeApp_Module.h" +#include + +#include +#include +#include #include "GEOMGUI.h" -#include "GEOM_Client.hxx" -#include "SALOME_InteractiveObject.hxx" - -#include "SALOMEDSClient.hxx" // QT Includes -#include +#include // OCCT Includes #include @@ -52,7 +49,7 @@ typedef QMap GUIMap; class QDialog; -class QPopupMenu; +class QMenu; class GEOMGUI_OCCSelector; class LightApp_VTKSelector; class LightApp_Selection; @@ -84,6 +81,8 @@ public: static CORBA::Object_var ClientSObjectToObject (_PTR(SObject) theSObject); static SALOMEDS::Study_var ClientStudyToStudy (_PTR(Study) theStudy); + static char* JoinObjectParameters(const QStringList& theParametersList); + GEOM_Client& GetShapeReader() { return myShapeReader; } Standard_CString& GetFatherior() { return myFatherior; } //void SetState( const int state ) { myState = state; } @@ -106,7 +105,7 @@ public: virtual void BuildPresentation( const Handle(SALOME_InteractiveObject)&, SUIT_ViewWindow* = 0 ); // virtual void DefinePopup( QString & theContext, QString & theParent, QString & theObject); -// virtual bool CustomPopup( QAD_Desktop* parent, QPopupMenu* popup, const QString& theContext, +// virtual bool CustomPopup( QAD_Desktop* parent, QMenu* popup, const QString& theContext, // const QString& theParent, const QString& theObject ); // The Working Plane management @@ -117,12 +116,15 @@ public: virtual void windows( QMap& ) const; virtual void viewManagers( QStringList& ) const; - virtual void contextMenuPopup( const QString&, QPopupMenu*, QString& ); + virtual void contextMenuPopup( const QString&, QMenu*, QString& ); virtual void createPreferences(); virtual void preferencesChanged( const QString&, const QString& ); int getLocalSelectionMode() const; void setLocalSelectionMode(const int mode); + virtual void storeVisualParameters (int savePoint); + virtual void restoreVisualParameters(int savePoint); + public slots: virtual bool deactivateModule( SUIT_Study* ); virtual bool activateModule( SUIT_Study* ); @@ -167,8 +169,8 @@ private: gp_Ax3 myWorkingPlane; QMap myRules; // popup rules - QPtrList myOCCSelectors; - QPtrList myVTKSelectors; + QList myOCCSelectors; + QList myVTKSelectors; LightApp_Displayer* myDisplayer; int myLocalSelectionMode; //Select Only diff --git a/src/GEOMGUI/GeometryGUI_Swig.cxx b/src/GEOMGUI/GeometryGUI_Swig.cxx index 57df497a6..e1e8f1390 100644 --- a/src/GEOMGUI/GeometryGUI_Swig.cxx +++ b/src/GEOMGUI/GeometryGUI_Swig.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,24 +17,20 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GeometryGUI_Swig.cxx +// Author : Nicolas REJNERI, Paul RASCLE // -// -// File : GeometryGUI_Swig.cxx -// Author : Nicolas REJNERI, Paul RASCLE -// Module : GEOM -// $Header$ - #include "GeometryGUI_Swig.hxx" -#include "SALOMEGUI_Swig.hxx" #include "GeometryGUI.h" +#include "SUIT_Desktop.h" #include "SUIT_Session.h" #include "SalomeApp_Application.h" #include "SalomeApp_Study.h" -#include "SalomeApp_ImportOperation.h" #include "OB_Browser.h" @@ -50,15 +46,10 @@ #include "GEOM_Actor.h" #include "GEOM_Client.hxx" #include "GEOM_AISShape.hxx" -#include "GEOM_AssemblyBuilder.h" #include "GEOM_InteractiveObject.hxx" #include "GEOM_Displayer.h" -#include "SALOME_Event.hxx" - -#include "utilities.h" - -#include "SALOMEDSClient.hxx" +#include "SALOME_Event.h" // OCCT Includes #include diff --git a/src/GEOMGUI/GeometryGUI_Swig.hxx b/src/GEOMGUI/GeometryGUI_Swig.hxx index 86fa64594..a0f079ac3 100644 --- a/src/GEOMGUI/GeometryGUI_Swig.hxx +++ b/src/GEOMGUI/GeometryGUI_Swig.hxx @@ -1,33 +1,30 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : GeometryGUI_Swig.hxx -// Author : Nicolas REJNERI, Paul RASCLE -// Module : GEOM -// $Header$ - -#ifndef _GeometryGUI_SWIG_HXX_ -#define _GeometryGUI_SWIG_HXX_ +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GeometryGUI_Swig.hxx +// Author : Nicolas REJNERI, Paul RASCLE +// +#ifndef GEOMETRYGUI_SWIG_HXX +#define GEOMETRYGUI_SWIG_HXX #include "GEOM_GEOMGUI.hxx" @@ -37,8 +34,6 @@ #include CORBA_SERVER_HEADER(SALOMEDS) #include CORBA_SERVER_HEADER(SALOMEDS_Attributes) -class GEOM_Client; - class GEOMGUI_EXPORT GEOM_Swig { public: @@ -61,5 +56,4 @@ public: bool initGeomGen(); }; - -#endif +#endif // GEOMETRYGUI_SWIG_HXX diff --git a/src/GEOMGUI/GeometryGUI_Swig.i b/src/GEOMGUI/GeometryGUI_Swig.i index d562c0ffc..4fa8d7ea2 100644 --- a/src/GEOMGUI/GeometryGUI_Swig.i +++ b/src/GEOMGUI/GeometryGUI_Swig.i @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -19,13 +19,10 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GeometryGUI_Swig.i +// Author : Nicolas REJNERI, Paul RASCLE // -// -// File : GeometryGUI_Swig.i -// Author : Nicolas REJNERI, Paul RASCLE -// Module : GEOM -// $Header$ - %{ #include "GeometryGUI_Swig.hxx" %} diff --git a/src/GEOMGUI/Makefile.am b/src/GEOMGUI/Makefile.am index 798553d30..9dc50a430 100644 --- a/src/GEOMGUI/Makefile.am +++ b/src/GEOMGUI/Makefile.am @@ -1,102 +1,89 @@ -# GEOM GEOMGUI : GUI for Geometry component +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# GEOM GEOMGUI : GUI for Geometry component +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : GEOMGUI # -# File : Makefile.in -# Author : Marc Tajchman (CEA) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header$ - include $(top_srcdir)/adm_local/unix/make_common_starter.am # Libraries targets lib_LTLIBRARIES = libGEOM.la # header files -salomeinclude_HEADERS = \ - GeometryGUI.h \ - GEOMGUI.h \ - GEOM_Displayer.h \ - GEOMGUI_OCCSelector.h \ - GEOMGUI_Selection.h \ - GeometryGUI_Swig.hxx \ - GeometryGUI_Swig.i \ +salomeinclude_HEADERS = \ + GeometryGUI.h \ + GEOMGUI.h \ + GEOM_Displayer.h \ + GEOMGUI_OCCSelector.h \ + GEOMGUI_Selection.h \ + GeometryGUI_Swig.hxx \ + GeometryGUI_Swig.i \ GEOM_GEOMGUI.hxx -dist_libGEOM_la_SOURCES = \ - GeometryGUI.cxx \ - GEOMGUI.cxx \ - GEOM_Displayer.cxx \ - GEOMGUI_OCCSelector.cxx \ - GEOMGUI_Selection.cxx \ +dist_libGEOM_la_SOURCES = \ + GeometryGUI.cxx \ + GEOMGUI.cxx \ + GEOM_Displayer.cxx \ + GEOMGUI_OCCSelector.cxx \ + GEOMGUI_Selection.cxx \ GeometryGUI_Swig.cxx -MOC_FILES = \ +MOC_FILES = \ GeometryGUI_moc.cxx - -nodist_libGEOM_la_SOURCES= \ +nodist_libGEOM_la_SOURCES = \ $(MOC_FILES) # resources files -nodist_salomeres_DATA= \ - GEOM_images.qm \ - GEOM_msg_en.qm \ +nodist_salomeres_DATA = \ + GEOM_images.qm \ + GEOM_msg_en.qm \ GEOM_msg_fr.qm -#LIB_CLIENT_IDL = SALOME_Exception.idl \ -# SALOMEDS.idl \ -# SALOMEDS_Attributes.idl \ -# SALOME_GenericObj.idl \ -# SALOME_Component.idl \ -# GEOM_Gen.idl +# additional information to compile and link file -#LIB_SERVER_IDL = - -# additionnal information to compil and link file - -libGEOM_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(VTK_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(PYTHON_INCLUDES) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../OBJECT \ - -I$(srcdir)/../GEOMFiltersSelection \ - -I$(srcdir)/../GEOMClient \ - -I$(srcdir)/../GEOMImpl \ - -I$(top_builddir)/idl \ +libGEOM_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(VTK_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(PYTHON_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../OBJECT \ + -I$(srcdir)/../GEOMFiltersSelection \ + -I$(srcdir)/../GEOMClient \ + -I$(srcdir)/../GEOMImpl \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libGEOM_la_LDFLAGS = \ - ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ - ../GEOMClient/libGEOMClient.la \ - ../OBJECT/libGEOMObject.la \ - $(KERNEL_LDFLAGS) -lSalomeLifeCycleCORBA \ +libGEOM_la_LDFLAGS = \ + ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ + ../GEOMClient/libGEOMClient.la \ + ../OBJECT/libGEOMObject.la \ + $(KERNEL_LDFLAGS) -lSalomeLifeCycleCORBA \ $(GUI_LDFLAGS) -lOCCViewer -lVTKViewer -lCAM -lSOCC -lSVTK -lEvent # -lSalomeApp # -lToolsGUI diff --git a/src/GEOMImpl/GEOMImpl.pro b/src/GEOMImpl/GEOMImpl.pro new file mode 100644 index 000000000..87d10eaee --- /dev/null +++ b/src/GEOMImpl/GEOMImpl.pro @@ -0,0 +1,127 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = GEOMimpl +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +BOOST_CPPFLAGS = $$(BOOSTDIR)/include + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +STDLIB = -lstdc++ + +CAS_LDPATH = -L$$(CASROOT)/Linux/lib + +INCLUDEPATH += $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} $${BOOST_CPPFLAGS} ../ShHealOper ../NMTAlgo ../NMTTools ../GEOM ../GEOMAlgo ../SKETCHER ../ARCHIMEDE ../../salome_adm/unix + +LIBS += -L$$(GEOM_ROOT_DIR)/lib -lGEOMbasic -lNMTAlgo -lGEOMAlgo -lShHealOper -lGEOMArchimede -lGEOMSketcher $${KERNEL_LDFLAGS} -lSALOMELocalTrace $${STDLIB} $${CAS_LDPATH} -lTKCAF -lTKFillet -lTKOffset + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += GEOMIMPL_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS + +HEADERS = GEOMImpl_Gen.hxx +HEADERS += GEOMImpl_IBasicOperations.hxx +HEADERS += GEOMImpl_ITransformOperations.hxx +HEADERS += GEOMImpl_IHealingOperations.hxx +HEADERS += GEOMImpl_I3DPrimOperations.hxx +HEADERS += GEOMImpl_IShapesOperations.hxx +HEADERS += GEOMImpl_IBlocksOperations.hxx +HEADERS += GEOMImpl_IBooleanOperations.hxx +HEADERS += GEOMImpl_ICurvesOperations.hxx +HEADERS += GEOMImpl_ILocalOperations.hxx +HEADERS += GEOMImpl_IInsertOperations.hxx +HEADERS += GEOMImpl_IMeasureOperations.hxx +HEADERS += GEOMImpl_IGroupOperations.hxx +HEADERS += GEOMImpl_CopyDriver.hxx +HEADERS += GEOMImpl_Types.hxx +HEADERS += GEOM_GEOMImpl.hxx + +SOURCES = GEOMImpl_IBasicOperations.cxx +SOURCES += GEOMImpl_ITransformOperations.cxx +SOURCES += GEOMImpl_IHealingOperations.cxx +SOURCES += GEOMImpl_I3DPrimOperations.cxx +SOURCES += GEOMImpl_IShapesOperations.cxx +SOURCES += GEOMImpl_IBlocksOperations.cxx +SOURCES += GEOMImpl_IBooleanOperations.cxx +SOURCES += GEOMImpl_ICurvesOperations.cxx +SOURCES += GEOMImpl_ILocalOperations.cxx +SOURCES += GEOMImpl_IInsertOperations.cxx +SOURCES += GEOMImpl_IMeasureOperations.cxx +SOURCES += GEOMImpl_IGroupOperations.cxx +SOURCES += GEOMImpl_Gen.cxx +SOURCES += GEOMImpl_PointDriver.cxx +SOURCES += GEOMImpl_VectorDriver.cxx +SOURCES += GEOMImpl_LineDriver.cxx +SOURCES += GEOMImpl_PlaneDriver.cxx +SOURCES += GEOMImpl_MarkerDriver.cxx +SOURCES += GEOMImpl_TranslateDriver.cxx +SOURCES += GEOMImpl_MirrorDriver.cxx +SOURCES += GEOMImpl_OffsetDriver.cxx +SOURCES += GEOMImpl_ScaleDriver.cxx +SOURCES += GEOMImpl_PositionDriver.cxx +SOURCES += GEOMImpl_BoxDriver.cxx +SOURCES += GEOMImpl_ConeDriver.cxx +SOURCES += GEOMImpl_CylinderDriver.cxx +SOURCES += GEOMImpl_SphereDriver.cxx +SOURCES += GEOMImpl_TorusDriver.cxx +SOURCES += GEOMImpl_PrismDriver.cxx +SOURCES += GEOMImpl_PipeDriver.cxx +SOURCES += GEOMImpl_ThruSectionsDriver.cxx +SOURCES += GEOMImpl_RevolutionDriver.cxx +SOURCES += GEOMImpl_ShapeDriver.cxx +SOURCES += GEOMImpl_BlockDriver.cxx +SOURCES += GEOMImpl_Block6Explorer.cxx +SOURCES += GEOMImpl_MeasureDriver.cxx +SOURCES += GEOMImpl_PolylineDriver.cxx +SOURCES += GEOMImpl_CircleDriver.cxx +SOURCES += GEOMImpl_EllipseDriver.cxx +SOURCES += GEOMImpl_ArcDriver.cxx +SOURCES += GEOMImpl_SplineDriver.cxx +SOURCES += GEOMImpl_SketcherDriver.cxx +SOURCES += GEOMImpl_FilletDriver.cxx +SOURCES += GEOMImpl_Fillet2dDriver.cxx +SOURCES += GEOMImpl_ChamferDriver.cxx +SOURCES += GEOMImpl_BooleanDriver.cxx +SOURCES += GEOMImpl_PartitionDriver.cxx +SOURCES += GEOMImpl_CopyDriver.cxx +SOURCES += GEOMImpl_ExportDriver.cxx +SOURCES += GEOMImpl_ImportDriver.cxx +SOURCES += GEOMImpl_RotateDriver.cxx +SOURCES += GEOMImpl_ArchimedeDriver.cxx +SOURCES += GEOMImpl_HealingDriver.cxx +SOURCES += GEOMImpl_FillingDriver.cxx +SOURCES += GEOMImpl_GlueDriver.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/GEOMImpl/GEOMImpl_Template.cxx b/src/GEOMImpl/GEOMImpl_3DSketcherDriver.cxx old mode 100644 new mode 100755 similarity index 54% rename from src/GEOMImpl/GEOMImpl_Template.cxx rename to src/GEOMImpl/GEOMImpl_3DSketcherDriver.cxx index ccfb70528..ccf53fdfb --- a/src/GEOMImpl/GEOMImpl_Template.cxx +++ b/src/GEOMImpl/GEOMImpl_3DSketcherDriver.cxx @@ -20,65 +20,106 @@ #include -#include +#include +#include +#include #include + +#include + +// OCCT Includes +#include +#include +#include #include +#include +#include + +#include //======================================================================= //function : GetID //purpose : -//======================================================================= -const Standard_GUID& GEOMImpl_Template::GetID() +//======================================================================= +const Standard_GUID& GEOMImpl_3DSketcherDriver::GetID() { - static Standard_GUID aTemplate("Insert the correct GUID here"); - return aTemplate; + static Standard_GUID a3DSketcherDriver("FF2BBB54-5D24-4df3-210B-3A678263EA26"); + return a3DSketcherDriver; } //======================================================================= -//function : GEOMImpl_Template -//purpose : +//function : GEOMImpl_3DSketcherDriver +//purpose : //======================================================================= - -GEOMImpl_Template::GEOMImpl_Template() +GEOMImpl_3DSketcherDriver::GEOMImpl_3DSketcherDriver() { } //======================================================================= //function : Execute //purpose : -//======================================================================= -Standard_Integer GEOMImpl_Template::Execute(TFunction_Logbook& log) const +//======================================================================= +Standard_Integer GEOMImpl_3DSketcherDriver::Execute(TFunction_Logbook& log) const { if (Label().IsNull()) return 0; - Handle(GEOM_Function) aFunction = GEOM_Function::GetFunction(Label()); - if(aFunction.IsNull()) return 0; - - //Add implemetation here + Handle(GEOM_Function) aFunction = GEOM_Function::GetFunction(Label()); + GEOMImpl_I3DSketcher aCI (aFunction); + + TopoDS_Shape aShape; + + Handle(TColStd_HArray1OfReal) aCoordsArray = aCI.GetCoordinates(); + + BRepBuilderAPI_MakePolygon aMakePoly; + int anArrayLength = aCoordsArray->Length(); + double x, y, z; + gp_Pnt aPnt; + for (int i = 0; i <=(anArrayLength - 3); i+=3) { + x = aCoordsArray->Value(i+1); + y = aCoordsArray->Value(i+2); + z = aCoordsArray->Value(i+3); + aPnt = gp_Pnt(x, y, z); + aMakePoly.Add(aPnt); + } + if ( anArrayLength == 3) { // Only Start Point + BRepBuilderAPI_MakeVertex mkVertex (aPnt); + aShape = mkVertex.Shape(); + } + else { // Make Wire + if (aCoordsArray->Value(1) == x && aCoordsArray->Value(2) == y && aCoordsArray->Value(3) == z) + aMakePoly.Close(); + + if (aMakePoly.IsDone()) + aShape = aMakePoly.Wire(); + } + + if (aShape.IsNull()) return 0; + + aFunction->SetValue(aShape); log.SetTouched(Label()); - return 1; + return 1; } //======================================================================= -//function : GEOMImpl_Template_Type_ +//function : GEOMImpl_3DSketcherDriver_Type_ //purpose : -//======================================================================= -Standard_EXPORT Handle_Standard_Type& GEOMImpl_Template_Type_() +//======================================================================= +Standard_EXPORT Handle_Standard_Type& GEOMImpl_3DSketcherDriver_Type_() { static Handle_Standard_Type aType1 = STANDARD_TYPE(TFunction_Driver); if ( aType1.IsNull()) aType1 = STANDARD_TYPE(TFunction_Driver); static Handle_Standard_Type aType2 = STANDARD_TYPE(MMgt_TShared); - if ( aType2.IsNull()) aType2 = STANDARD_TYPE(MMgt_TShared); + if ( aType2.IsNull()) aType2 = STANDARD_TYPE(MMgt_TShared); static Handle_Standard_Type aType3 = STANDARD_TYPE(Standard_Transient); if ( aType3.IsNull()) aType3 = STANDARD_TYPE(Standard_Transient); - + static Handle_Standard_Transient _Ancestors[]= {aType1,aType2,aType3,NULL}; - static Handle_Standard_Type _aType = new Standard_Type("GEOMImpl_Template", - sizeof(GEOMImpl_Template), + static Handle_Standard_Type _aType = new Standard_Type("GEOMImpl_3DSketcherDriver", + sizeof(GEOMImpl_3DSketcherDriver), 1, (Standard_Address)_Ancestors, (Standard_Address)NULL); @@ -89,19 +130,16 @@ Standard_EXPORT Handle_Standard_Type& GEOMImpl_Template_Type_() //======================================================================= //function : DownCast //purpose : -//======================================================================= - -const Handle(GEOMImpl_Template) Handle(GEOMImpl_Template)::DownCast(const Handle(Standard_Transient)& AnObject) +//======================================================================= +const Handle(GEOMImpl_3DSketcherDriver) Handle(GEOMImpl_3DSketcherDriver)::DownCast(const Handle(Standard_Transient)& AnObject) { - Handle(GEOMImpl_Template) _anOtherObject; + Handle(GEOMImpl_3DSketcherDriver) _anOtherObject; if (!AnObject.IsNull()) { - if (AnObject->IsKind(STANDARD_TYPE(GEOMImpl_Template))) { - _anOtherObject = Handle(GEOMImpl_Template)((Handle(GEOMImpl_Template)&)AnObject); + if (AnObject->IsKind(STANDARD_TYPE(GEOMImpl_3DSketcherDriver))) { + _anOtherObject = Handle(GEOMImpl_3DSketcherDriver)((Handle(GEOMImpl_3DSketcherDriver)&)AnObject); } } return _anOtherObject ; } - - diff --git a/src/GEOMImpl/GEOMImpl_3DSketcherDriver.hxx b/src/GEOMImpl/GEOMImpl_3DSketcherDriver.hxx new file mode 100755 index 000000000..f0f2476f8 --- /dev/null +++ b/src/GEOMImpl/GEOMImpl_3DSketcherDriver.hxx @@ -0,0 +1,158 @@ +// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// File : GEOMImpl_3DSketcherDriver.ixx +// Module : GEOMImpl + +#ifndef _GEOMImpl_3DSketcherDriver_HeaderFile +#define _GEOMImpl_3DSketcherDriver_HeaderFile + +#ifndef _TColStd_SequenceOfExtendedString_HeaderFile +#include +#endif +#ifndef _Standard_TypeMismatch_HeaderFile +#include +#endif + +#ifndef _Standard_HeaderFile +#include +#endif + +#ifndef _Standard_Macro_HeaderFile +#include +#endif +#ifndef _Standard_HeaderFile +#include +#endif +#ifndef _Standard_GUID_HeaderFile +#include +#endif + +#ifndef _Handle_TFunction_Driver_HeaderFile +#include +#endif + +class Standard_Transient; +class Handle_Standard_Type; +class Handle(TFunction_Driver); +class GEOMImpl_3DSketcherDriver; + +Standard_EXPORT Handle_Standard_Type& STANDARD_TYPE(GEOMImpl_3DSketcherDriver); + +class Handle(GEOMImpl_3DSketcherDriver) : public Handle(TFunction_Driver) { + public: + inline void* operator new(size_t,void* anAddress) + { + return anAddress; + } + inline void* operator new(size_t size) + { + return Standard::Allocate(size); + } + inline void operator delete(void *anAddress) + { + if (anAddress) Standard::Free((Standard_Address&)anAddress); + } + + Handle(GEOMImpl_3DSketcherDriver)():Handle(TFunction_Driver)() {} + Handle(GEOMImpl_3DSketcherDriver)(const Handle(GEOMImpl_3DSketcherDriver)& aHandle) : Handle(TFunction_Driver)(aHandle) + { + } + + Handle(GEOMImpl_3DSketcherDriver)(const GEOMImpl_3DSketcherDriver* anItem) : Handle(TFunction_Driver)((TFunction_Driver *)anItem) + { + } + + Handle(GEOMImpl_3DSketcherDriver)& operator=(const Handle(GEOMImpl_3DSketcherDriver)& aHandle) + { + Assign(aHandle.Access()); + return *this; + } + + Handle(GEOMImpl_3DSketcherDriver)& operator=(const GEOMImpl_3DSketcherDriver* anItem) + { + Assign((Standard_Transient *)anItem); + return *this; + } + + GEOMImpl_3DSketcherDriver* operator->() + { + return (GEOMImpl_3DSketcherDriver *)ControlAccess(); + } + + GEOMImpl_3DSketcherDriver* operator->() const + { + return (GEOMImpl_3DSketcherDriver *)ControlAccess(); + } + + Standard_EXPORT ~Handle(GEOMImpl_3DSketcherDriver)() {}; + + Standard_EXPORT static const Handle(GEOMImpl_3DSketcherDriver) DownCast(const Handle(Standard_Transient)& AnObject); +}; + +#ifndef _TFunction_Driver_HeaderFile +#include +#endif +#ifndef _TFunction_Logbook_HeaderFile +#include +#endif +#ifndef _Standard_CString_HeaderFile +#include +#endif + +class TColStd_SequenceOfExtendedString; + + +class GEOMImpl_3DSketcherDriver : public TFunction_Driver { + +public: + + inline void* operator new(size_t,void* anAddress) + { + return anAddress; + } + inline void* operator new(size_t size) + { + return Standard::Allocate(size); + } + inline void operator delete(void *anAddress) + { + if (anAddress) Standard::Free((Standard_Address&)anAddress); + } + + // Methods PUBLIC + // +Standard_EXPORT GEOMImpl_3DSketcherDriver(); +Standard_EXPORT virtual Standard_Integer Execute(TFunction_Logbook& log) const; +Standard_EXPORT virtual void Validate(TFunction_Logbook&) const {} +Standard_EXPORT Standard_Boolean MustExecute(const TFunction_Logbook&) const { return Standard_True; } +Standard_EXPORT static const Standard_GUID& GetID(); +Standard_EXPORT ~GEOMImpl_3DSketcherDriver() {}; + + + // Type management + // +Standard_EXPORT friend Handle_Standard_Type& GEOMImpl_3DSketcherDriver_Type_(); +Standard_EXPORT const Handle(Standard_Type)& DynamicType() const { return STANDARD_TYPE(GEOMImpl_3DSketcherDriver) ; } +Standard_EXPORT Standard_Boolean IsKind(const Handle(Standard_Type)& AType) const { return (STANDARD_TYPE(GEOMImpl_3DSketcherDriver) == AType || TFunction_Driver::IsKind(AType)); } + + +}; + +#endif diff --git a/src/GEOMImpl/GEOMImpl_ArcDriver.cxx b/src/GEOMImpl/GEOMImpl_ArcDriver.cxx index d08ae24cc..ad099022f 100644 --- a/src/GEOMImpl/GEOMImpl_ArcDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_ArcDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include @@ -36,12 +37,16 @@ #include #include +#include +#include #include #include #include #include #include +#include #include +#include #include "utilities.h" @@ -77,7 +82,7 @@ Standard_Integer GEOMImpl_ArcDriver::Execute(TFunction_Logbook& log) const Standard_Integer aType = aFunction->GetType(); TopoDS_Shape aShape; - if ((aType == CIRC_ARC_THREE_PNT) || (aType == CIRC_ARC_CENTER)) + if ((aType == CIRC_ARC_THREE_PNT) || (aType == CIRC_ARC_CENTER) || (aType == ELLIPSE_ARC_CENTER_TWO_PNT)) { Handle(GEOM_Function) aRefPoint1 = aCI.GetPoint1(); Handle(GEOM_Function) aRefPoint2 = aCI.GetPoint2(); @@ -107,9 +112,7 @@ Standard_Integer GEOMImpl_ArcDriver::Execute(TFunction_Logbook& log) const { GC_MakeArcOfCircle arc (aP1, aP2, aP3); aShape = BRepBuilderAPI_MakeEdge(arc).Edge(); - } - else // CIRC_ARC_CENTER - { + } else if ( aType == CIRC_ARC_CENTER ) { // CIRC_ARC_CENTER Standard_Boolean sense = aCI.GetSense(); Standard_Real aRad = aP1.Distance(aP2); @@ -125,9 +128,29 @@ Standard_Integer GEOMImpl_ArcDriver::Execute(TFunction_Logbook& log) const GC_MakeArcOfCircle arc (aGeomCirc->Circ(), aP2, aP3, Standard_True); aShape = BRepBuilderAPI_MakeEdge(arc).Edge(); + } else if ( aType == ELLIPSE_ARC_CENTER_TWO_PNT ) { // ELLIPSE_ARC_CENTER_TWO_PNT + if ( aP1.Distance(aP2) <= aP1.Distance(aP3) ) { + // Standard_ConstructionError::Raise("Arc creation aborted: the distance from Center Point to Point 1 needs to be bigger than the distance from Center Point to Point 2"); + cout << "aP1.Distance(aP2) <= aP1.Distance(aP3)" << endl; + gp_Pnt aTmpP = aP2; + aP2 = aP3; + aP3 = aTmpP; + } + + GC_MakeEllipse ellipse (aP2, aP3, aP1); + Handle(Geom_Ellipse) aGeomEllipse = ellipse.Value(); + + gp_Vec aV1 (aP1, aP2); + gp_Vec aV2 (aP1, aP3); + + double alpha = fabs(aV1.Angle(aV2)); + + GC_MakeArcOfEllipse arc (aGeomEllipse->Elips(), aP2, aP3, Standard_True); + aShape = BRepBuilderAPI_MakeEdge(arc).Edge(); } } - } else { + } + else { } if (aShape.IsNull()) return 0; diff --git a/src/GEOMImpl/GEOMImpl_ArcDriver.hxx b/src/GEOMImpl/GEOMImpl_ArcDriver.hxx index 89dbdcf81..4e84d5292 100644 --- a/src/GEOMImpl/GEOMImpl_ArcDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_ArcDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_ArcDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_ArcDriver_HeaderFile #define _GEOMImpl_ArcDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_ArchimedeDriver.cxx b/src/GEOMImpl/GEOMImpl_ArchimedeDriver.cxx index fbd03ee9e..9997cf2a7 100644 --- a/src/GEOMImpl/GEOMImpl_ArchimedeDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_ArchimedeDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include "GEOMImpl_ArchimedeDriver.hxx" #include "GEOMImpl_IArchimede.hxx" #include "GEOMImpl_Types.hxx" diff --git a/src/GEOMImpl/GEOMImpl_ArchimedeDriver.hxx b/src/GEOMImpl/GEOMImpl_ArchimedeDriver.hxx index 3dbe0b615..1fb7839be 100644 --- a/src/GEOMImpl/GEOMImpl_ArchimedeDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_ArchimedeDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_ArchimedeDriver.hxx // Module : GEOMImpl - +// #ifndef _GEOMImpl_ArchimedeDriver_HeaderFile #define _GEOMImpl_ArchimedeDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_Block6Explorer.cxx b/src/GEOMImpl/GEOMImpl_Block6Explorer.cxx index 8366db405..68e3983d9 100644 --- a/src/GEOMImpl/GEOMImpl_Block6Explorer.cxx +++ b/src/GEOMImpl/GEOMImpl_Block6Explorer.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include diff --git a/src/GEOMImpl/GEOMImpl_Block6Explorer.hxx b/src/GEOMImpl/GEOMImpl_Block6Explorer.hxx index db0613668..3ad008aed 100644 --- a/src/GEOMImpl/GEOMImpl_Block6Explorer.hxx +++ b/src/GEOMImpl/GEOMImpl_Block6Explorer.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_Block6Explorer.hxx // Module : GEOMImpl - +// #ifndef GEOMImpl_Block6Explorer_HeaderFile #define GEOMImpl_Block6Explorer_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_BlockDriver.cxx b/src/GEOMImpl/GEOMImpl_BlockDriver.cxx index 2efdd7ca2..7a98359ac 100644 --- a/src/GEOMImpl/GEOMImpl_BlockDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_BlockDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include @@ -34,7 +35,7 @@ #include #include -//#include +#include #include #include @@ -53,6 +54,7 @@ #include #include #include +#include #include #include #include @@ -507,17 +509,28 @@ Standard_Integer GEOMImpl_BlockDriver::Execute(TFunction_Logbook& log) const aTool.SetShape(aBlockOrComp); aTool.Perform(); - if (aType == BLOCK_REMOVE_EXTRA) { + TopoDS_Shape aFixedExtra = aTool.Shape(); + + // Repair result + BRepCheck_Analyzer ana (aFixedExtra, false); + if (!ana.IsValid()) { + TopoDS_Shape aFixed; + ShHealOper_ShapeProcess aHealer; + aHealer.Perform(aFixedExtra, aFixed); + if (aHealer.isDone()) + aFixedExtra = aFixed; + } + + if (aType == BLOCK_REMOVE_EXTRA) + { + aShape = aFixedExtra; - aShape = aTool.Shape(); if (aShape == aBlockOrComp) { MESSAGE("No modifications have been done"); } - - } else { // aType == BLOCK_COMPOUND_IMPROVE - - TopoDS_Shape aFixedExtra = aTool.Shape(); - + } + else // aType == BLOCK_COMPOUND_IMPROVE + { // 2. Separate non-blocks TopTools_ListOfShape BLO; // All blocks from the given compound TopTools_ListOfShape NOT; // Not blocks diff --git a/src/GEOMImpl/GEOMImpl_BlockDriver.hxx b/src/GEOMImpl/GEOMImpl_BlockDriver.hxx index a51ca743a..9037bbecf 100644 --- a/src/GEOMImpl/GEOMImpl_BlockDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_BlockDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_BlockDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_BlockDriver_HeaderFile #define _GEOMImpl_BlockDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_BooleanDriver.cxx b/src/GEOMImpl/GEOMImpl_BooleanDriver.cxx index c419cd6d5..bf82f5136 100644 --- a/src/GEOMImpl/GEOMImpl_BooleanDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_BooleanDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include #include @@ -38,6 +39,9 @@ #include #include #include +#include +#include +#include #include #include @@ -405,9 +409,24 @@ Standard_Integer GEOMImpl_BooleanDriver::Execute(TFunction_Logbook& log) const } if (aShape.IsNull()) return 0; - if (!BRepAlgo::IsValid(aShape)) { - Standard_ConstructionError::Raise("Boolean operation aborted : non valid shape result"); + + // 08.07.2008 skl for bug 19761 from Mantis + BRepCheck_Analyzer ana (aShape, Standard_True); + ana.Init(aShape); + if (!ana.IsValid()) { + ShapeFix_ShapeTolerance aSFT; + aSFT.LimitTolerance(aShape, Precision::Confusion(), + Precision::Confusion(), TopAbs_SHAPE); + Handle(ShapeFix_Shape) aSfs = new ShapeFix_Shape(aShape); + aSfs->Perform(); + aShape = aSfs->Shape(); + ana.Init(aShape); + if (!ana.IsValid()) + Standard_ConstructionError::Raise("Boolean operation aborted : non valid shape result"); } + //if (!BRepAlgo::IsValid(aShape)) { + // Standard_ConstructionError::Raise("Boolean operation aborted : non valid shape result"); + //} aFunction->SetValue(aShape); diff --git a/src/GEOMImpl/GEOMImpl_BooleanDriver.hxx b/src/GEOMImpl/GEOMImpl_BooleanDriver.hxx index a9b198ce1..c8d0cb10a 100644 --- a/src/GEOMImpl/GEOMImpl_BooleanDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_BooleanDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_BooleanDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_BooleanDriver_HeaderFile #define _GEOMImpl_BooleanDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_BoxDriver.cxx b/src/GEOMImpl/GEOMImpl_BoxDriver.cxx index f35350788..48be1001d 100644 --- a/src/GEOMImpl/GEOMImpl_BoxDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_BoxDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_BoxDriver.hxx b/src/GEOMImpl/GEOMImpl_BoxDriver.hxx index 7721d2a04..ecd3377c4 100644 --- a/src/GEOMImpl/GEOMImpl_BoxDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_BoxDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_BoxDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_BoxDriver_HeaderFile #define _GEOMImpl_BoxDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_ChamferDriver.cxx b/src/GEOMImpl/GEOMImpl_ChamferDriver.cxx index 54431c6dc..5a05432e1 100644 --- a/src/GEOMImpl/GEOMImpl_ChamferDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_ChamferDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_ChamferDriver.hxx b/src/GEOMImpl/GEOMImpl_ChamferDriver.hxx index fbcd12928..4107f9dfe 100644 --- a/src/GEOMImpl/GEOMImpl_ChamferDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_ChamferDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_ChamferDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_ChamferDriver_HeaderFile #define _GEOMImpl_ChamferDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_CircleDriver.cxx b/src/GEOMImpl/GEOMImpl_CircleDriver.cxx index 79184422b..2edcc5c1b 100644 --- a/src/GEOMImpl/GEOMImpl_CircleDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_CircleDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include @@ -77,65 +78,87 @@ Standard_Integer GEOMImpl_CircleDriver::Execute(TFunction_Logbook& log) const TopoDS_Shape aShape; if (aType == CIRCLE_PNT_VEC_R) { - Handle(GEOM_Function) aRefPoint = aCI.GetCenter(); + // Center + gp_Pnt aP = gp::Origin(); + Handle(GEOM_Function) aRefPoint = aCI.GetCenter(); + if (!aRefPoint.IsNull()) { + TopoDS_Shape aShapePnt = aRefPoint->GetValue(); + if (aShapePnt.ShapeType() != TopAbs_VERTEX) { + Standard_ConstructionError::Raise + ("Circle creation aborted: invalid center argument, must be a point"); + } + aP = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt)); + } + // Normal + gp_Vec aV = gp::DZ(); Handle(GEOM_Function) aRefVector = aCI.GetVector(); - TopoDS_Shape aShapePnt = aRefPoint->GetValue(); - TopoDS_Shape aShapeVec = aRefVector->GetValue(); - if (aShapePnt.ShapeType() == TopAbs_VERTEX && - aShapeVec.ShapeType() == TopAbs_EDGE) { - gp_Pnt aP = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt)); + if (!aRefVector.IsNull()) { + TopoDS_Shape aShapeVec = aRefVector->GetValue(); + if (aShapeVec.ShapeType() != TopAbs_EDGE) { + Standard_ConstructionError::Raise + ("Circle creation aborted: invalid vector argument, must be a vector or an edge"); + } TopoDS_Edge anE = TopoDS::Edge(aShapeVec); TopoDS_Vertex V1, V2; TopExp::Vertices(anE, V1, V2, Standard_True); if (!V1.IsNull() && !V2.IsNull()) { - gp_Vec aV (BRep_Tool::Pnt(V1), BRep_Tool::Pnt(V2)); - gp_Ax2 anAxes (aP, aV); - gp_Circ aCirc (anAxes, aCI.GetRadius()); - aShape = BRepBuilderAPI_MakeEdge(aCirc).Edge(); + aV = gp_Vec(BRep_Tool::Pnt(V1), BRep_Tool::Pnt(V2)); + if (aV.Magnitude() < gp::Resolution()) { + Standard_ConstructionError::Raise + ("Circle creation aborted: vector of zero length is given"); + } } } + // Axes + gp_Ax2 anAxes (aP, aV); + // Circle + gp_Circ aCirc (anAxes, aCI.GetRadius()); + aShape = BRepBuilderAPI_MakeEdge(aCirc).Edge(); } - else if (aType == CIRCLE_CENTER_TWO_PNT) { - Handle(GEOM_Function) aRefPoint1 = aCI.GetPoint1(); - Handle(GEOM_Function) aRefPoint2 = aCI.GetPoint2(); - Handle(GEOM_Function) aRefPoint3 = aCI.GetPoint3(); - TopoDS_Shape aShapePnt1 = aRefPoint1->GetValue(); - TopoDS_Shape aShapePnt2 = aRefPoint2->GetValue(); - TopoDS_Shape aShapePnt3 = aRefPoint3->GetValue(); - if (aShapePnt1.ShapeType() == TopAbs_VERTEX && aShapePnt2.ShapeType() == TopAbs_VERTEX && - aShapePnt3.ShapeType() == TopAbs_VERTEX) - { - gp_Pnt aP1 = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt1)); - gp_Pnt aP2 = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt2)); - gp_Pnt aP3 = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt3)); + else if (aType == CIRCLE_CENTER_TWO_PNT) { + Handle(GEOM_Function) aRefPoint1 = aCI.GetPoint1(); + Handle(GEOM_Function) aRefPoint2 = aCI.GetPoint2(); + Handle(GEOM_Function) aRefPoint3 = aCI.GetPoint3(); + TopoDS_Shape aShapePnt1 = aRefPoint1->GetValue(); + TopoDS_Shape aShapePnt2 = aRefPoint2->GetValue(); + TopoDS_Shape aShapePnt3 = aRefPoint3->GetValue(); + if (aShapePnt1.ShapeType() == TopAbs_VERTEX && + aShapePnt2.ShapeType() == TopAbs_VERTEX && + aShapePnt3.ShapeType() == TopAbs_VERTEX) + { + gp_Pnt aP1 = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt1)); + gp_Pnt aP2 = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt2)); + gp_Pnt aP3 = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt3)); - if (aP1.Distance(aP2) < gp::Resolution() || - aP1.Distance(aP3) < gp::Resolution() || - aP2.Distance(aP3) < gp::Resolution()) - Standard_ConstructionError::Raise("Circle creation aborted: coincident points given"); - if (gp_Vec(aP1, aP2).IsParallel(gp_Vec(aP1, aP3), Precision::Angular())) - Standard_ConstructionError::Raise("Circle creation aborted: points lay on one line"); - double x, y, z, x1, y1, z1, x2, y2, z2, dx, dy, dz, dx2, dy2, dz2, dx3, dy3, dz3, aRadius; - //Calculations for Radius - x = aP1.X(); y = aP1.Y(); z = aP1.Z(); - x1 = aP2.X(); y1 = aP2.Y(); z1 = aP2.Z(); - dx = x1 - x; - dy = y1 - y; - dz = z1 - z; - aRadius = sqrt(dx*dx + dy*dy + dz*dz); - //Calculations for Plane Vector - x2 = aP3.X(); y2 = aP3.Y(); z2 = aP3.Z(); - dx2 = x2 - x; dy2 = y2 - y; dz2 = z2 - z; - dx3 = ((dy*dz2) - (dy2*dz))/100; - dy3 = ((dx2*dz) - (dx*dz2))/100; - dz3 = ((dx*dy2) - (dx2*dy))/100; - //Make Plane Vector - gp_Dir aDir ( dx3, dy3, dz3 ); - //Make Circle - gp_Ax2 anAxes (aP1, aDir); - gp_Circ aCirc (anAxes, aRadius); - aShape = BRepBuilderAPI_MakeEdge(aCirc).Edge(); - } + if (aP1.Distance(aP2) < gp::Resolution() || + aP1.Distance(aP3) < gp::Resolution() || + aP2.Distance(aP3) < gp::Resolution()) + Standard_ConstructionError::Raise("Circle creation aborted: coincident points given"); + + if (gp_Vec(aP1, aP2).IsParallel(gp_Vec(aP1, aP3), Precision::Angular())) + Standard_ConstructionError::Raise("Circle creation aborted: points lay on one line"); + + double x, y, z, x1, y1, z1, x2, y2, z2, dx, dy, dz, dx2, dy2, dz2, dx3, dy3, dz3, aRadius; + //Calculations for Radius + x = aP1.X(); y = aP1.Y(); z = aP1.Z(); + x1 = aP2.X(); y1 = aP2.Y(); z1 = aP2.Z(); + dx = x1 - x; + dy = y1 - y; + dz = z1 - z; + aRadius = sqrt(dx*dx + dy*dy + dz*dz); + //Calculations for Plane Vector + x2 = aP3.X(); y2 = aP3.Y(); z2 = aP3.Z(); + dx2 = x2 - x; dy2 = y2 - y; dz2 = z2 - z; + dx3 = ((dy*dz2) - (dy2*dz))/100; + dy3 = ((dx2*dz) - (dx*dz2))/100; + dz3 = ((dx*dy2) - (dx2*dy))/100; + //Make Plane Vector + gp_Dir aDir ( dx3, dy3, dz3 ); + //Make Circle + gp_Ax2 anAxes (aP1, aDir); + gp_Circ aCirc (anAxes, aRadius); + aShape = BRepBuilderAPI_MakeEdge(aCirc).Edge(); + } } else if (aType == CIRCLE_THREE_PNT) { Handle(GEOM_Function) aRefPoint1 = aCI.GetPoint1(); @@ -160,7 +183,7 @@ Standard_Integer GEOMImpl_CircleDriver::Execute(TFunction_Logbook& log) const aShape = BRepBuilderAPI_MakeEdge(aCirc).Edge(); } } - else { + else { } if (aShape.IsNull()) return 0; diff --git a/src/GEOMImpl/GEOMImpl_CircleDriver.hxx b/src/GEOMImpl/GEOMImpl_CircleDriver.hxx index 8eb470385..4aa2ab5dc 100644 --- a/src/GEOMImpl/GEOMImpl_CircleDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_CircleDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_CircleDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_CircleDriver_HeaderFile #define _GEOMImpl_CircleDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_ConeDriver.cxx b/src/GEOMImpl/GEOMImpl_ConeDriver.cxx index d9ee6044a..a84948554 100644 --- a/src/GEOMImpl/GEOMImpl_ConeDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_ConeDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_ConeDriver.hxx b/src/GEOMImpl/GEOMImpl_ConeDriver.hxx index 7c53100a6..81aaf2779 100644 --- a/src/GEOMImpl/GEOMImpl_ConeDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_ConeDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_ConeDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_ConeDriver_HeaderFile #define _GEOMImpl_ConeDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_CopyDriver.cxx b/src/GEOMImpl/GEOMImpl_CopyDriver.cxx index 6fd87146f..008d28289 100644 --- a/src/GEOMImpl/GEOMImpl_CopyDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_CopyDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_CopyDriver.hxx b/src/GEOMImpl/GEOMImpl_CopyDriver.hxx index ca86e7664..4b2271be2 100644 --- a/src/GEOMImpl/GEOMImpl_CopyDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_CopyDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_CopyDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_CopyDriver_HeaderFile #define _GEOMImpl_CopyDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_CylinderDriver.cxx b/src/GEOMImpl/GEOMImpl_CylinderDriver.cxx index cba3e36c5..3cf373e4e 100644 --- a/src/GEOMImpl/GEOMImpl_CylinderDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_CylinderDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_CylinderDriver.hxx b/src/GEOMImpl/GEOMImpl_CylinderDriver.hxx index a7799c927..ab063d334 100644 --- a/src/GEOMImpl/GEOMImpl_CylinderDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_CylinderDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_CylinderDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_CylinderDriver_HeaderFile #define _GEOMImpl_CylinderDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_DiskDriver.cxx b/src/GEOMImpl/GEOMImpl_DiskDriver.cxx new file mode 100755 index 000000000..5804a77ac --- /dev/null +++ b/src/GEOMImpl/GEOMImpl_DiskDriver.cxx @@ -0,0 +1,205 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// +#include + +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#include +#include +#include +#include +#include + +//======================================================================= +//function : GetID +//purpose : +//======================================================================= +const Standard_GUID& GEOMImpl_DiskDriver::GetID() +{ + static Standard_GUID aDiskDriver("C1FEEF9D-1C6D-41ce-9507-F10D75430CE1"); + return aDiskDriver; +} + + +//======================================================================= +//function : GEOMImpl_DiskDriver +//purpose : +//======================================================================= +GEOMImpl_DiskDriver::GEOMImpl_DiskDriver() +{ +} + +//======================================================================= +//function : Execute +//purpose : +//======================================================================= +Standard_Integer GEOMImpl_DiskDriver::Execute(TFunction_Logbook& log) const +{ + if (Label().IsNull()) return 0; + Handle(GEOM_Function) aFunction = GEOM_Function::GetFunction(Label()); + + GEOMImpl_IDisk aCI (aFunction); + Standard_Integer aType = aFunction->GetType(); + + TopoDS_Shape aShape; + + if (aType == DISK_PNT_VEC_R) { + Handle(GEOM_Function) aRefPoint = aCI.GetCenter(); + Handle(GEOM_Function) aRefVector = aCI.GetVector(); + TopoDS_Shape aShapePnt = aRefPoint->GetValue(); + TopoDS_Shape aShapeVec = aRefVector->GetValue(); + if (aShapePnt.ShapeType() == TopAbs_VERTEX && + aShapeVec.ShapeType() == TopAbs_EDGE) { + gp_Pnt aP = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt)); + TopoDS_Edge anE = TopoDS::Edge(aShapeVec); + TopoDS_Vertex V1, V2; + TopExp::Vertices(anE, V1, V2, Standard_True); + if (!V1.IsNull() && !V2.IsNull()) { + gp_Vec aV (BRep_Tool::Pnt(V1), BRep_Tool::Pnt(V2)); + gp_Ax2 anAxes (aP, -aV); + gp_Circ aCirc (anAxes, aCI.GetRadius()); + TopoDS_Shape aCircle = BRepBuilderAPI_MakeEdge(aCirc).Edge(); + BRepBuilderAPI_MakeWire MW; + MW.Add(TopoDS::Edge(aCircle)); + BRepBuilderAPI_MakeFace MF (MW, Standard_False); + aShape = MF.Shape(); + } + } + } + else if (aType == DISK_THREE_PNT) { + Handle(GEOM_Function) aRefPoint1 = aCI.GetPoint1(); + Handle(GEOM_Function) aRefPoint2 = aCI.GetPoint2(); + Handle(GEOM_Function) aRefPoint3 = aCI.GetPoint3(); + TopoDS_Shape aShapePnt1 = aRefPoint1->GetValue(); + TopoDS_Shape aShapePnt2 = aRefPoint2->GetValue(); + TopoDS_Shape aShapePnt3 = aRefPoint3->GetValue(); + if (aShapePnt1.ShapeType() == TopAbs_VERTEX && + aShapePnt2.ShapeType() == TopAbs_VERTEX && + aShapePnt3.ShapeType() == TopAbs_VERTEX) { + gp_Pnt aP1 = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt1)); + gp_Pnt aP2 = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt2)); + gp_Pnt aP3 = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt3)); + if (aP1.Distance(aP2) < gp::Resolution() || + aP1.Distance(aP3) < gp::Resolution() || + aP2.Distance(aP3) < gp::Resolution()) + Standard_ConstructionError::Raise("Disk creation aborted: coincident points given"); + if (gp_Vec(aP1, aP2).IsParallel(gp_Vec(aP1, aP3), Precision::Angular())) + Standard_ConstructionError::Raise("Disk creation aborted: points lay on one line"); + Handle(Geom_Circle) aCirc = GC_MakeCircle(aP3, aP2, aP1).Value(); + TopoDS_Shape aCircle = BRepBuilderAPI_MakeEdge(aCirc).Edge(); + BRepBuilderAPI_MakeWire MW; + MW.Add(TopoDS::Edge(aCircle)); + BRepBuilderAPI_MakeFace MF (MW, Standard_False); + aShape = MF.Shape(); + } + } + else if (aType == DISK_R) { + int anOrient = aCI.GetOrientation(); + gp_Pnt aP = gp::Origin(); + gp_Vec aV; + if (anOrient == 1) + aV = gp::DZ(); + else if (anOrient == 2) + aV = gp::DX(); + else if (anOrient == 3) + aV = gp::DY(); + + gp_Ax2 anAxes (aP, -aV); + gp_Circ aCirc (anAxes, aCI.GetRadius()); + TopoDS_Shape aCircle = BRepBuilderAPI_MakeEdge(aCirc).Edge(); + BRepBuilderAPI_MakeWire MW; + MW.Add(TopoDS::Edge(aCircle)); + BRepBuilderAPI_MakeFace MF (MW, Standard_False); + aShape = MF.Shape(); + } + else { + } + + if (aShape.IsNull()) return 0; + + aFunction->SetValue(aShape); + + log.SetTouched(Label()); + + return 1; +} + + +//======================================================================= +//function : GEOMImpl_DiskDriver_Type_ +//purpose : +//======================================================================= +Standard_EXPORT Handle_Standard_Type& GEOMImpl_DiskDriver_Type_() +{ + + static Handle_Standard_Type aType1 = STANDARD_TYPE(TFunction_Driver); + if ( aType1.IsNull()) aType1 = STANDARD_TYPE(TFunction_Driver); + static Handle_Standard_Type aType2 = STANDARD_TYPE(MMgt_TShared); + if ( aType2.IsNull()) aType2 = STANDARD_TYPE(MMgt_TShared); + static Handle_Standard_Type aType3 = STANDARD_TYPE(Standard_Transient); + if ( aType3.IsNull()) aType3 = STANDARD_TYPE(Standard_Transient); + + + static Handle_Standard_Transient _Ancestors[]= {aType1,aType2,aType3,NULL}; + static Handle_Standard_Type _aType = new Standard_Type("GEOMImpl_DiskDriver", + sizeof(GEOMImpl_DiskDriver), + 1, + (Standard_Address)_Ancestors, + (Standard_Address)NULL); + + return _aType; +} + +//======================================================================= +//function : DownCast +//purpose : +//======================================================================= +const Handle(GEOMImpl_DiskDriver) Handle(GEOMImpl_DiskDriver)::DownCast(const Handle(Standard_Transient)& AnObject) +{ + Handle(GEOMImpl_DiskDriver) _anOtherObject; + + if (!AnObject.IsNull()) { + if (AnObject->IsKind(STANDARD_TYPE(GEOMImpl_DiskDriver))) { + _anOtherObject = Handle(GEOMImpl_DiskDriver)((Handle(GEOMImpl_DiskDriver)&)AnObject); + } + } + + return _anOtherObject ; +} diff --git a/src/GEOMImpl/GEOMImpl_DiskDriver.hxx b/src/GEOMImpl/GEOMImpl_DiskDriver.hxx new file mode 100755 index 000000000..ffee9eddf --- /dev/null +++ b/src/GEOMImpl/GEOMImpl_DiskDriver.hxx @@ -0,0 +1,160 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 : GEOMImpl_DiskDriver.ixx +// Module : GEOMImpl +// +#ifndef _GEOMImpl_DiskDriver_HeaderFile +#define _GEOMImpl_DiskDriver_HeaderFile + +#ifndef _TColStd_SequenceOfExtendedString_HeaderFile +#include +#endif +#ifndef _Standard_TypeMismatch_HeaderFile +#include +#endif + +#ifndef _Standard_HeaderFile +#include +#endif + +#ifndef _Standard_Macro_HeaderFile +#include +#endif +#ifndef _Standard_HeaderFile +#include +#endif +#ifndef _Standard_GUID_HeaderFile +#include +#endif + +#ifndef _Handle_TFunction_Driver_HeaderFile +#include +#endif + +class Standard_Transient; +class Handle_Standard_Type; +class Handle(TFunction_Driver); +class GEOMImpl_DiskDriver; + +Standard_EXPORT Handle_Standard_Type& STANDARD_TYPE(GEOMImpl_DiskDriver); + +class Handle(GEOMImpl_DiskDriver) : public Handle(TFunction_Driver) { + public: + inline void* operator new(size_t,void* anAddress) + { + return anAddress; + } + inline void* operator new(size_t size) + { + return Standard::Allocate(size); + } + inline void operator delete(void *anAddress) + { + if (anAddress) Standard::Free((Standard_Address&)anAddress); + } + + Handle(GEOMImpl_DiskDriver)():Handle(TFunction_Driver)() {} + Handle(GEOMImpl_DiskDriver)(const Handle(GEOMImpl_DiskDriver)& aHandle) : Handle(TFunction_Driver)(aHandle) + { + } + + Handle(GEOMImpl_DiskDriver)(const GEOMImpl_DiskDriver* anItem) : Handle(TFunction_Driver)((TFunction_Driver *)anItem) + { + } + + Handle(GEOMImpl_DiskDriver)& operator=(const Handle(GEOMImpl_DiskDriver)& aHandle) + { + Assign(aHandle.Access()); + return *this; + } + + Handle(GEOMImpl_DiskDriver)& operator=(const GEOMImpl_DiskDriver* anItem) + { + Assign((Standard_Transient *)anItem); + return *this; + } + + GEOMImpl_DiskDriver* operator->() + { + return (GEOMImpl_DiskDriver *)ControlAccess(); + } + + GEOMImpl_DiskDriver* operator->() const + { + return (GEOMImpl_DiskDriver *)ControlAccess(); + } + + Standard_EXPORT ~Handle(GEOMImpl_DiskDriver)() {}; + + Standard_EXPORT static const Handle(GEOMImpl_DiskDriver) DownCast(const Handle(Standard_Transient)& AnObject); +}; + +#ifndef _TFunction_Driver_HeaderFile +#include +#endif +#ifndef _TFunction_Logbook_HeaderFile +#include +#endif +#ifndef _Standard_CString_HeaderFile +#include +#endif + +class TColStd_SequenceOfExtendedString; + + +class GEOMImpl_DiskDriver : public TFunction_Driver { + +public: + + inline void* operator new(size_t,void* anAddress) + { + return anAddress; + } + inline void* operator new(size_t size) + { + return Standard::Allocate(size); + } + inline void operator delete(void *anAddress) + { + if (anAddress) Standard::Free((Standard_Address&)anAddress); + } + + // Methods PUBLIC + // +Standard_EXPORT GEOMImpl_DiskDriver(); +Standard_EXPORT virtual Standard_Integer Execute(TFunction_Logbook& log) const; +Standard_EXPORT virtual void Validate(TFunction_Logbook&) const {} +Standard_EXPORT Standard_Boolean MustExecute(const TFunction_Logbook&) const { return Standard_True; } +Standard_EXPORT static const Standard_GUID& GetID(); +Standard_EXPORT ~GEOMImpl_DiskDriver() {}; + + + // Type management + // +Standard_EXPORT friend Handle_Standard_Type& GEOMImpl_DiskDriver_Type_(); +Standard_EXPORT const Handle(Standard_Type)& DynamicType() const { return STANDARD_TYPE(GEOMImpl_DiskDriver) ; } +Standard_EXPORT Standard_Boolean IsKind(const Handle(Standard_Type)& AType) const { return (STANDARD_TYPE(GEOMImpl_DiskDriver) == AType || TFunction_Driver::IsKind(AType)); } + + +}; + +#endif diff --git a/src/GEOMImpl/GEOMImpl_EllipseDriver.cxx b/src/GEOMImpl/GEOMImpl_EllipseDriver.cxx index 03685a46b..24ac23eb6 100644 --- a/src/GEOMImpl/GEOMImpl_EllipseDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_EllipseDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include @@ -71,24 +72,44 @@ Standard_Integer GEOMImpl_EllipseDriver::Execute(TFunction_Logbook& log) const TopoDS_Shape aShape; if (aType == ELLIPSE_PNT_VEC_RR) { - Handle(GEOM_Function) aRefPoint = aCI.GetCenter(); + // Center + gp_Pnt aP = gp::Origin(); + Handle(GEOM_Function) aRefPoint = aCI.GetCenter(); + if (!aRefPoint.IsNull()) { + TopoDS_Shape aShapePnt = aRefPoint->GetValue(); + if (aShapePnt.ShapeType() != TopAbs_VERTEX) { + Standard_ConstructionError::Raise + ("Circle creation aborted: invalid center argument, must be a point"); + } + aP = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt)); + } + // Normal + gp_Vec aV = gp::DZ(); Handle(GEOM_Function) aRefVector = aCI.GetVector(); - TopoDS_Shape aShapePnt = aRefPoint->GetValue(); - TopoDS_Shape aShapeVec = aRefVector->GetValue(); - if (aShapePnt.ShapeType() == TopAbs_VERTEX && - aShapeVec.ShapeType() == TopAbs_EDGE) { - gp_Pnt aP = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt)); + if (!aRefVector.IsNull()) { + TopoDS_Shape aShapeVec = aRefVector->GetValue(); + if (aShapeVec.ShapeType() != TopAbs_EDGE) { + Standard_ConstructionError::Raise + ("Circle creation aborted: invalid vector argument, must be a vector or an edge"); + } TopoDS_Edge anE = TopoDS::Edge(aShapeVec); TopoDS_Vertex V1, V2; TopExp::Vertices(anE, V1, V2, Standard_True); if (!V1.IsNull() && !V2.IsNull()) { - gp_Vec aV (BRep_Tool::Pnt(V1), BRep_Tool::Pnt(V2)); - gp_Ax2 anAxes (aP, aV); - gp_Elips anEll (anAxes, aCI.GetRMajor(), aCI.GetRMinor()); - aShape = BRepBuilderAPI_MakeEdge(anEll).Edge(); + aV = gp_Vec(BRep_Tool::Pnt(V1), BRep_Tool::Pnt(V2)); + if (aV.Magnitude() < gp::Resolution()) { + Standard_ConstructionError::Raise + ("Circle creation aborted: vector of zero length is given"); + } } } - } else { + // Axes + gp_Ax2 anAxes (aP, aV); + // Ellipse + gp_Elips anEll (anAxes, aCI.GetRMajor(), aCI.GetRMinor()); + aShape = BRepBuilderAPI_MakeEdge(anEll).Edge(); + } + else { } if (aShape.IsNull()) return 0; diff --git a/src/GEOMImpl/GEOMImpl_EllipseDriver.hxx b/src/GEOMImpl/GEOMImpl_EllipseDriver.hxx index 9e80dc606..98bdec9a5 100644 --- a/src/GEOMImpl/GEOMImpl_EllipseDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_EllipseDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_EllipseDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_EllipseDriver_HeaderFile #define _GEOMImpl_EllipseDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_ExportDriver.cxx b/src/GEOMImpl/GEOMImpl_ExportDriver.cxx index 5ea854b96..44efd6e1e 100644 --- a/src/GEOMImpl/GEOMImpl_ExportDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_ExportDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_ExportDriver.hxx b/src/GEOMImpl/GEOMImpl_ExportDriver.hxx index 307df2424..040d7c912 100644 --- a/src/GEOMImpl/GEOMImpl_ExportDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_ExportDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_ExportDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_ExportDriver_HeaderFile #define _GEOMImpl_ExportDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_FaceDriver.cxx b/src/GEOMImpl/GEOMImpl_FaceDriver.cxx new file mode 100755 index 000000000..197b52ee0 --- /dev/null +++ b/src/GEOMImpl/GEOMImpl_FaceDriver.cxx @@ -0,0 +1,169 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// +#include + +#include +#include +#include +#include + +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +//======================================================================= +//function : GetID +//purpose : +//======================================================================= +const Standard_GUID& GEOMImpl_FaceDriver::GetID() +{ + static Standard_GUID aFaceDriver("F7953CC1-FF8B-4628-BF5E-9D3510DE4629"); + return aFaceDriver; +} + + +//======================================================================= +//function : GEOMImpl_FaceDriver +//purpose : +//======================================================================= +GEOMImpl_FaceDriver::GEOMImpl_FaceDriver() +{ +} + +//======================================================================= +//function : Execute +//purpose : +//======================================================================= +Standard_Integer GEOMImpl_FaceDriver::Execute(TFunction_Logbook& log) const +{ + if (Label().IsNull()) return 0; + Handle(GEOM_Function) aFunction = GEOM_Function::GetFunction(Label()); + + GEOMImpl_IFace aFI (aFunction); + Standard_Integer aType = aFunction->GetType(); + + TopoDS_Shape aShape; + + if (aType == FACE_OBJ_H_W) { + Handle(GEOM_Function) aRefFunct = aFI.GetRef1(); + TopoDS_Shape aRefShape = aRefFunct->GetValue(); + if (aRefShape.ShapeType() == TopAbs_EDGE) { + TopoDS_Edge anEdge = TopoDS::Edge(aRefShape); + double aH = aFI.GetH() / 2.0; + double aW = aFI.GetW() / 2.0; + TopoDS_Vertex V1, V2; + TopExp::Vertices(anEdge, V1, V2, Standard_True); + gp_Pnt aP (BRep_Tool::Pnt(V1)); + gp_Vec aV (BRep_Tool::Pnt(V1), BRep_Tool::Pnt(V2)); + gp_Pln aPlane (aP, aV); + aShape = BRepBuilderAPI_MakeFace(aPlane, -aH, +aH, -aW, +aW).Shape(); + } else if (aRefShape.ShapeType() == TopAbs_FACE) { + double aH = aFI.GetH() / 2.0; + double aW = aFI.GetW() / 2.0; + gp_Ax3 anAx = GEOMImpl_IMeasureOperations::GetPosition(aRefShape); + gp_Pln aPln (anAx); + aShape = BRepBuilderAPI_MakeFace(aPln, -aH, +aH, -aW, +aW).Shape(); + } + } + else if (aType == FACE_H_W) { + double aH = aFI.GetH() / 2.0; + double aW = aFI.GetW() / 2.0; + TopoDS_Vertex V1, V2; + int anOrient = aFI.GetOrientation(); + gp_Pnt aP = gp::Origin(); + gp_Vec aV; + if (anOrient == 1) + aV = gp::DZ(); + else if (anOrient == 2) + aV = gp::DX(); + else if (anOrient == 3) + aV = gp::DY(); + + gp_Pln aPlane (aP, aV); + aShape = BRepBuilderAPI_MakeFace(aPlane, -aH, +aH, -aW, +aW).Shape(); + } + else { + } + + if (aShape.IsNull()) return 0; + + aFunction->SetValue(aShape); + + log.SetTouched(Label()); + + return 1; +} + + +//======================================================================= +//function : GEOMImpl_FaceDriver_Type_ +//purpose : +//======================================================================= +Standard_EXPORT Handle_Standard_Type& GEOMImpl_FaceDriver_Type_() +{ + + static Handle_Standard_Type aType1 = STANDARD_TYPE(TFunction_Driver); + if ( aType1.IsNull()) aType1 = STANDARD_TYPE(TFunction_Driver); + static Handle_Standard_Type aType2 = STANDARD_TYPE(MMgt_TShared); + if ( aType2.IsNull()) aType2 = STANDARD_TYPE(MMgt_TShared); + static Handle_Standard_Type aType3 = STANDARD_TYPE(Standard_Transient); + if ( aType3.IsNull()) aType3 = STANDARD_TYPE(Standard_Transient); + + + static Handle_Standard_Transient _Ancestors[]= {aType1,aType2,aType3,NULL}; + static Handle_Standard_Type _aType = new Standard_Type("GEOMImpl_FaceDriver", + sizeof(GEOMImpl_FaceDriver), + 1, + (Standard_Address)_Ancestors, + (Standard_Address)NULL); + + return _aType; +} + +//======================================================================= +//function : DownCast +//purpose : +//======================================================================= +const Handle(GEOMImpl_FaceDriver) Handle(GEOMImpl_FaceDriver)::DownCast(const Handle(Standard_Transient)& AnObject) +{ + Handle(GEOMImpl_FaceDriver) _anOtherObject; + + if (!AnObject.IsNull()) { + if (AnObject->IsKind(STANDARD_TYPE(GEOMImpl_FaceDriver))) { + _anOtherObject = Handle(GEOMImpl_FaceDriver)((Handle(GEOMImpl_FaceDriver)&)AnObject); + } + } + + return _anOtherObject ; +} diff --git a/src/GEOMImpl/GEOMImpl_FaceDriver.hxx b/src/GEOMImpl/GEOMImpl_FaceDriver.hxx new file mode 100755 index 000000000..4e927d510 --- /dev/null +++ b/src/GEOMImpl/GEOMImpl_FaceDriver.hxx @@ -0,0 +1,160 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 : GEOMImpl_FaceDriver.ixx +// Module : GEOMImpl +// +#ifndef _GEOMImpl_FaceDriver_HeaderFile +#define _GEOMImpl_FaceDriver_HeaderFile + +#ifndef _TColStd_SequenceOfExtendedString_HeaderFile +#include +#endif +#ifndef _Standard_TypeMismatch_HeaderFile +#include +#endif + +#ifndef _Standard_HeaderFile +#include +#endif + +#ifndef _Standard_Macro_HeaderFile +#include +#endif +#ifndef _Standard_HeaderFile +#include +#endif +#ifndef _Standard_GUID_HeaderFile +#include +#endif + +#ifndef _Handle_TFunction_Driver_HeaderFile +#include +#endif + +class Standard_Transient; +class Handle_Standard_Type; +class Handle(TFunction_Driver); +class GEOMImpl_FaceDriver; + +Standard_EXPORT Handle_Standard_Type& STANDARD_TYPE(GEOMImpl_FaceDriver); + +class Handle(GEOMImpl_FaceDriver) : public Handle(TFunction_Driver) { + public: + inline void* operator new(size_t,void* anAddress) + { + return anAddress; + } + inline void* operator new(size_t size) + { + return Standard::Allocate(size); + } + inline void operator delete(void *anAddress) + { + if (anAddress) Standard::Free((Standard_Address&)anAddress); + } + + Handle(GEOMImpl_FaceDriver)():Handle(TFunction_Driver)() {} + Handle(GEOMImpl_FaceDriver)(const Handle(GEOMImpl_FaceDriver)& aHandle) : Handle(TFunction_Driver)(aHandle) + { + } + + Handle(GEOMImpl_FaceDriver)(const GEOMImpl_FaceDriver* anItem) : Handle(TFunction_Driver)((TFunction_Driver *)anItem) + { + } + + Handle(GEOMImpl_FaceDriver)& operator=(const Handle(GEOMImpl_FaceDriver)& aHandle) + { + Assign(aHandle.Access()); + return *this; + } + + Handle(GEOMImpl_FaceDriver)& operator=(const GEOMImpl_FaceDriver* anItem) + { + Assign((Standard_Transient *)anItem); + return *this; + } + + GEOMImpl_FaceDriver* operator->() + { + return (GEOMImpl_FaceDriver *)ControlAccess(); + } + + GEOMImpl_FaceDriver* operator->() const + { + return (GEOMImpl_FaceDriver *)ControlAccess(); + } + + Standard_EXPORT ~Handle(GEOMImpl_FaceDriver)() {}; + + Standard_EXPORT static const Handle(GEOMImpl_FaceDriver) DownCast(const Handle(Standard_Transient)& AnObject); +}; + +#ifndef _TFunction_Driver_HeaderFile +#include +#endif +#ifndef _TFunction_Logbook_HeaderFile +#include +#endif +#ifndef _Standard_CString_HeaderFile +#include +#endif + +class TColStd_SequenceOfExtendedString; + + +class GEOMImpl_FaceDriver : public TFunction_Driver { + +public: + + inline void* operator new(size_t,void* anAddress) + { + return anAddress; + } + inline void* operator new(size_t size) + { + return Standard::Allocate(size); + } + inline void operator delete(void *anAddress) + { + if (anAddress) Standard::Free((Standard_Address&)anAddress); + } + + // Methods PUBLIC + // +Standard_EXPORT GEOMImpl_FaceDriver(); +Standard_EXPORT virtual Standard_Integer Execute(TFunction_Logbook& log) const; +Standard_EXPORT virtual void Validate(TFunction_Logbook&) const {} +Standard_EXPORT Standard_Boolean MustExecute(const TFunction_Logbook&) const { return Standard_True; } +Standard_EXPORT static const Standard_GUID& GetID(); +Standard_EXPORT ~GEOMImpl_FaceDriver() {}; + + + // Type management + // +Standard_EXPORT friend Handle_Standard_Type& GEOMImpl_FaceDriver_Type_(); +Standard_EXPORT const Handle(Standard_Type)& DynamicType() const { return STANDARD_TYPE(GEOMImpl_FaceDriver) ; } +Standard_EXPORT Standard_Boolean IsKind(const Handle(Standard_Type)& AType) const { return (STANDARD_TYPE(GEOMImpl_FaceDriver) == AType || TFunction_Driver::IsKind(AType)); } + + +}; + +#endif diff --git a/src/GEOMImpl/GEOMImpl_Fillet2dDriver.cxx b/src/GEOMImpl/GEOMImpl_Fillet2dDriver.cxx new file mode 100755 index 000000000..f7f2050ae --- /dev/null +++ b/src/GEOMImpl/GEOMImpl_Fillet2dDriver.cxx @@ -0,0 +1,152 @@ +// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// + +#include + +#include +#include +#include +#include +#include + +#include +#include +#include + +#include +#include +#include +#include +#include + +#include +#include + +#include +#include +#include + +//======================================================================= +//function : GetID +//purpose : +//======================================================================= +const Standard_GUID& GEOMImpl_Fillet2dDriver::GetID() +{ + static Standard_GUID aFillet2dDriver("FF1AAB41-2A14-4df2-581B-3A568163BA46"); + return aFillet2dDriver; +} + + +//======================================================================= +//function : GEOMImpl_Fillet2dDriver +//purpose : +//======================================================================= +GEOMImpl_Fillet2dDriver::GEOMImpl_Fillet2dDriver() +{ +} + +//======================================================================= +//function : Execute +//purpose : +//======================================================================= +Standard_Integer GEOMImpl_Fillet2dDriver::Execute(TFunction_Logbook& log) const +{ + if (Label().IsNull()) return 0; + Handle(GEOM_Function) aFunction = GEOM_Function::GetFunction(Label()); + + GEOMImpl_IFillet2d aCI (aFunction); + + TopoDS_Shape aShape; + + Handle(GEOM_Function) aRefShape = aCI.GetShape(); + TopoDS_Face aFaceShape = TopoDS::Face(aRefShape->GetValue()); + + if (aFaceShape.ShapeType() != TopAbs_FACE) + Standard_ConstructionError::Raise("Wrong arguments: two faces must be given"); + + BRepFilletAPI_MakeFillet2d fillet2d (aFaceShape); + + int aLen = aCI.GetLength(); + int ind = 1; + double rad = aCI.GetR(); + for (; ind <= aLen; ind++) { + TopoDS_Shape aShapeVertex; + if (GEOMImpl_ILocalOperations::GetSubShape + (aFaceShape, aCI.GetVertex(ind), aShapeVertex)) { + fillet2d.AddFillet(TopoDS::Vertex(aShapeVertex), rad); + } + } + + fillet2d.Build(); + if (!fillet2d.IsDone()) { + StdFail_NotDone::Raise("2D Fillet can't be computed on the given shape with the given radius"); + } + aShape = fillet2d.Shape(); + + if (aShape.IsNull()) return 0; + + aFunction->SetValue(aShape); + log.SetTouched(Label()); + + return 1; +} + + +//======================================================================= +//function : GEOMImpl_Fillet2dDriver_Type_ +//purpose : +//======================================================================= +Standard_EXPORT Handle_Standard_Type& GEOMImpl_Fillet2dDriver_Type_() +{ + + static Handle_Standard_Type aType1 = STANDARD_TYPE(TFunction_Driver); + if ( aType1.IsNull()) aType1 = STANDARD_TYPE(TFunction_Driver); + static Handle_Standard_Type aType2 = STANDARD_TYPE(MMgt_TShared); + if ( aType2.IsNull()) aType2 = STANDARD_TYPE(MMgt_TShared); + static Handle_Standard_Type aType3 = STANDARD_TYPE(Standard_Transient); + if ( aType3.IsNull()) aType3 = STANDARD_TYPE(Standard_Transient); + + + static Handle_Standard_Transient _Ancestors[]= {aType1,aType2,aType3,NULL}; + static Handle_Standard_Type _aType = new Standard_Type("GEOMImpl_Fillet2dDriver", + sizeof(GEOMImpl_Fillet2dDriver), + 1, + (Standard_Address)_Ancestors, + (Standard_Address)NULL); + + return _aType; +} + +//======================================================================= +//function : DownCast +//purpose : +//======================================================================= +const Handle(GEOMImpl_Fillet2dDriver) Handle(GEOMImpl_Fillet2dDriver)::DownCast(const Handle(Standard_Transient)& AnObject) +{ + Handle(GEOMImpl_Fillet2dDriver) _anOtherObject; + + if (!AnObject.IsNull()) { + if (AnObject->IsKind(STANDARD_TYPE(GEOMImpl_Fillet2dDriver))) { + _anOtherObject = Handle(GEOMImpl_Fillet2dDriver)((Handle(GEOMImpl_Fillet2dDriver)&)AnObject); + } + } + + return _anOtherObject ; +} diff --git a/src/GEOMImpl/GEOMImpl_Template.hxx b/src/GEOMImpl/GEOMImpl_Fillet2dDriver.hxx old mode 100644 new mode 100755 similarity index 67% rename from src/GEOMImpl/GEOMImpl_Template.hxx rename to src/GEOMImpl/GEOMImpl_Fillet2dDriver.hxx index 866b7fefe..a5448db66 --- a/src/GEOMImpl/GEOMImpl_Template.hxx +++ b/src/GEOMImpl/GEOMImpl_Fillet2dDriver.hxx @@ -17,11 +17,11 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// File : GEOMImpl_Template.hxx +// File : GEOMImpl_Fillet2dDriver.ixx // Module : GEOMImpl -#ifndef _GEOMImpl_Template_HeaderFile -#define _GEOMImpl_Template_HeaderFile +#ifndef _GEOMImpl_Fillet2dDriver_HeaderFile +#define _GEOMImpl_Fillet2dDriver_HeaderFile #ifndef _TColStd_SequenceOfExtendedString_HeaderFile #include @@ -51,11 +51,11 @@ class Standard_Transient; class Handle_Standard_Type; class Handle(TFunction_Driver); -class GEOMImpl_Template; +class GEOMImpl_Fillet2dDriver; -Standard_EXPORT Handle_Standard_Type& STANDARD_TYPE(GEOMImpl_Template); +Standard_EXPORT Handle_Standard_Type& STANDARD_TYPE(GEOMImpl_Fillet2dDriver); -class Handle(GEOMImpl_Template) : public Handle(TFunction_Driver) { +class Handle(GEOMImpl_Fillet2dDriver) : public Handle(TFunction_Driver) { public: inline void* operator new(size_t,void* anAddress) { @@ -70,40 +70,40 @@ class Handle(GEOMImpl_Template) : public Handle(TFunction_Driver) { if (anAddress) Standard::Free((Standard_Address&)anAddress); } - Handle(GEOMImpl_Template)():Handle(TFunction_Driver)() {} - Handle(GEOMImpl_Template)(const Handle(GEOMImpl_Template)& aHandle) : Handle(TFunction_Driver)(aHandle) + Handle(GEOMImpl_Fillet2dDriver)():Handle(TFunction_Driver)() {} + Handle(GEOMImpl_Fillet2dDriver)(const Handle(GEOMImpl_Fillet2dDriver)& aHandle) : Handle(TFunction_Driver)(aHandle) { } - Handle(GEOMImpl_Template)(const GEOMImpl_Template* anItem) : Handle(TFunction_Driver)((TFunction_Driver *)anItem) + Handle(GEOMImpl_Fillet2dDriver)(const GEOMImpl_Fillet2dDriver* anItem) : Handle(TFunction_Driver)((TFunction_Driver *)anItem) { } - Handle(GEOMImpl_Template)& operator=(const Handle(GEOMImpl_Template)& aHandle) + Handle(GEOMImpl_Fillet2dDriver)& operator=(const Handle(GEOMImpl_Fillet2dDriver)& aHandle) { Assign(aHandle.Access()); return *this; } - Handle(GEOMImpl_Template)& operator=(const GEOMImpl_Template* anItem) + Handle(GEOMImpl_Fillet2dDriver)& operator=(const GEOMImpl_Fillet2dDriver* anItem) { Assign((Standard_Transient *)anItem); return *this; } - GEOMImpl_Template* operator->() + GEOMImpl_Fillet2dDriver* operator->() { - return (GEOMImpl_Template *)ControlAccess(); + return (GEOMImpl_Fillet2dDriver *)ControlAccess(); } - GEOMImpl_Template* operator->() const + GEOMImpl_Fillet2dDriver* operator->() const { - return (GEOMImpl_Template *)ControlAccess(); + return (GEOMImpl_Fillet2dDriver *)ControlAccess(); } - Standard_EXPORT ~Handle(GEOMImpl_Template)() {}; + Standard_EXPORT ~Handle(GEOMImpl_Fillet2dDriver)() {}; - Standard_EXPORT static const Handle(GEOMImpl_Template) DownCast(const Handle(Standard_Transient)& AnObject); + Standard_EXPORT static const Handle(GEOMImpl_Fillet2dDriver) DownCast(const Handle(Standard_Transient)& AnObject); }; #ifndef _TFunction_Driver_HeaderFile @@ -119,7 +119,7 @@ class Handle(GEOMImpl_Template) : public Handle(TFunction_Driver) { class TColStd_SequenceOfExtendedString; -class GEOMImpl_Template : public TFunction_Driver { +class GEOMImpl_Fillet2dDriver : public TFunction_Driver { public: @@ -138,19 +138,19 @@ public: // Methods PUBLIC // -Standard_EXPORT GEOMImpl_Template(); +Standard_EXPORT GEOMImpl_Fillet2dDriver(); Standard_EXPORT virtual Standard_Integer Execute(TFunction_Logbook& log) const; Standard_EXPORT virtual void Validate(TFunction_Logbook&) const {} Standard_EXPORT Standard_Boolean MustExecute(const TFunction_Logbook&) const { return Standard_True; } Standard_EXPORT static const Standard_GUID& GetID(); -Standard_EXPORT ~GEOMImpl_Template() {}; +Standard_EXPORT ~GEOMImpl_Fillet2dDriver() {}; // Type management // -Standard_EXPORT friend Handle_Standard_Type& GEOMImpl_Template_Type_(); -Standard_EXPORT const Handle(Standard_Type)& DynamicType() const { return STANDARD_TYPE(GEOMImpl_Template) ; } -Standard_EXPORT Standard_Boolean IsKind(const Handle(Standard_Type)& AType) const { return (STANDARD_TYPE(GEOMImpl_Template) == AType || TFunction_Driver::IsKind(AType)); } +Standard_EXPORT friend Handle_Standard_Type& GEOMImpl_Fillet2dDriver_Type_(); +Standard_EXPORT const Handle(Standard_Type)& DynamicType() const { return STANDARD_TYPE(GEOMImpl_Fillet2dDriver) ; } +Standard_EXPORT Standard_Boolean IsKind(const Handle(Standard_Type)& AType) const { return (STANDARD_TYPE(GEOMImpl_Fillet2dDriver) == AType || TFunction_Driver::IsKind(AType)); } }; diff --git a/src/GEOMImpl/GEOMImpl_FilletDriver.cxx b/src/GEOMImpl/GEOMImpl_FilletDriver.cxx index e662d4cac..af8f67064 100644 --- a/src/GEOMImpl/GEOMImpl_FilletDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_FilletDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include @@ -36,6 +37,9 @@ #include #include +#include +#include + #include #include #include @@ -128,7 +132,16 @@ Standard_Integer GEOMImpl_FilletDriver::Execute(TFunction_Logbook& log) const // Check shape validity BRepCheck_Analyzer ana (aShape, false); if (!ana.IsValid()) { - StdFail_NotDone::Raise("Fillet algorithm have produced an invalid shape result"); + // 08.07.2008 added by skl during fixing bug 19761 from Mantis + ShapeFix_ShapeTolerance aSFT; + aSFT.LimitTolerance(aShape, Precision::Confusion(), + Precision::Confusion(), TopAbs_SHAPE); + Handle(ShapeFix_Shape) aSfs = new ShapeFix_Shape(aShape); + aSfs->Perform(); + aShape = aSfs->Shape(); + ana.Init(aShape); + if (!ana.IsValid()) + StdFail_NotDone::Raise("Fillet algorithm have produced an invalid shape result"); } aFunction->SetValue(aShape); diff --git a/src/GEOMImpl/GEOMImpl_FilletDriver.hxx b/src/GEOMImpl/GEOMImpl_FilletDriver.hxx index 22a5baec7..d5ac84451 100644 --- a/src/GEOMImpl/GEOMImpl_FilletDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_FilletDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_FilletDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_FilletDriver_HeaderFile #define _GEOMImpl_FilletDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_FillingDriver.cxx b/src/GEOMImpl/GEOMImpl_FillingDriver.cxx index d17febfd2..5be038b34 100644 --- a/src/GEOMImpl/GEOMImpl_FillingDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_FillingDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include @@ -45,6 +46,11 @@ #include #include +#include +#include +#include +#include + //======================================================================= //function : GetID //purpose : @@ -99,34 +105,109 @@ Standard_Integer GEOMImpl_FillingDriver::Execute(TFunction_Logbook& log) const TopoDS_Shape Scurrent; Standard_Real First, Last; Handle(Geom_Curve) C; - GeomFill_SectionGenerator Section; - Standard_Integer i = 0; - for (Ex.Init(aShape, TopAbs_EDGE); Ex.More(); Ex.Next()) { - Scurrent = Ex.Current() ; - if (Scurrent.IsNull() || Scurrent.ShapeType() != TopAbs_EDGE) return 0; - C = BRep_Tool::Curve(TopoDS::Edge(Scurrent), First, Last); - C = new Geom_TrimmedCurve(C, First, Last); - Section.AddCurve(C); - i++; + TopoDS_Iterator It (aShape); + for (; It.More(); It.Next()) { + Scurrent = It.Value(); + if (Scurrent.ShapeType() != TopAbs_EDGE) + Standard_ConstructionError::Raise("The argument compound must contain only edges"); } - /* a 'tolerance' is used to compare 2 knots : see GeomFill_Generator.cdl */ - Section.Perform(Precision::Confusion()); - Handle(GeomFill_Line) Line = new GeomFill_Line(i); + if (!isApprox) { + // make filling as in old version of SALOME (before 4.1.1) + GeomFill_SectionGenerator Section; + Standard_Integer i = 0; + for (Ex.Init(aShape, TopAbs_EDGE); Ex.More(); Ex.Next()) { + Scurrent = Ex.Current(); + if (Scurrent.IsNull() || Scurrent.ShapeType() != TopAbs_EDGE) return 0; + if (BRep_Tool::Degenerated(TopoDS::Edge(Scurrent))) continue; + C = BRep_Tool::Curve(TopoDS::Edge(Scurrent), First, Last); + C = new Geom_TrimmedCurve(C, First, Last); + Section.AddCurve(C); + i++; + } - GeomFill_AppSurf App (mindeg, maxdeg, tol3d, tol2d, nbiter); /* user parameters */ - App.Perform(Line, Section, isApprox); - - if (!App.IsDone()) return 0; - Standard_Integer UDegree, VDegree, NbUPoles, NbVPoles, NbUKnots, NbVKnots; - App.SurfShape(UDegree, VDegree, NbUPoles, NbVPoles, NbUKnots, NbVKnots); - Handle(Geom_BSplineSurface) GBS = new Geom_BSplineSurface - (App.SurfPoles(), App.SurfWeights(), App.SurfUKnots(), App.SurfVKnots(), - App.SurfUMults(), App.SurfVMults(), App.UDegree(), App.VDegree()); - - if (GBS.IsNull()) return 0; - aShape = BRepBuilderAPI_MakeFace(GBS); + /* a 'tolerance' is used to compare 2 knots : see GeomFill_Generator.cdl */ + Section.Perform(Precision::Confusion()); + Handle(GeomFill_Line) Line = new GeomFill_Line(i); + + GeomFill_AppSurf App (mindeg, maxdeg, tol3d, tol2d, nbiter); /* user parameters */ + App.Perform(Line, Section); + + if (!App.IsDone()) return 0; + Standard_Integer UDegree, VDegree, NbUPoles, NbVPoles, NbUKnots, NbVKnots; + App.SurfShape(UDegree, VDegree, NbUPoles, NbVPoles, NbUKnots, NbVKnots); + Handle(Geom_BSplineSurface) GBS = new Geom_BSplineSurface + (App.SurfPoles(), App.SurfWeights(), App.SurfUKnots(), App.SurfVKnots(), + App.SurfUMults(), App.SurfVMults(), App.UDegree(), App.VDegree()); + + if (GBS.IsNull()) return 0; + aShape = BRepBuilderAPI_MakeFace(GBS); + } + else { + // implemented by skl 20.03.2008 for bug 16568 + // make approximation - try to create bspline surface + // using GeomAPI_PointsToBSplineSurface + TColGeom_SequenceOfCurve aSeq; + int MaxNbPoles = 0; + // add curves from edges to sequence and find maximal + // number of poles if some of them are bsplines + for (Ex.Init(aShape, TopAbs_EDGE); Ex.More(); Ex.Next()) { + Scurrent = Ex.Current(); + if (Scurrent.IsNull() || Scurrent.ShapeType() != TopAbs_EDGE) return 0; + if (BRep_Tool::Degenerated(TopoDS::Edge(Scurrent))) continue; + C = BRep_Tool::Curve(TopoDS::Edge(Scurrent), First, Last); + Handle(Geom_TrimmedCurve) TC = Handle(Geom_TrimmedCurve)::DownCast(C); + if(TC.IsNull()) { + Handle(Geom_BSplineCurve) BC = Handle(Geom_BSplineCurve)::DownCast(C); + if(!BC.IsNull()) { + MaxNbPoles = Max(MaxNbPoles,BC->NbPoles()); + } + } + else { + Handle(Geom_BSplineCurve) BC = Handle(Geom_BSplineCurve)::DownCast(TC->BasisCurve()); + if(BC.IsNull()) { + Handle(Geom_TrimmedCurve) TC1 = Handle(Geom_TrimmedCurve)::DownCast(TC->BasisCurve()); + if(!TC1.IsNull()) { + BC = Handle(Geom_BSplineCurve)::DownCast(TC1->BasisCurve()); + } + } + if(!BC.IsNull()) { + MaxNbPoles = Max(MaxNbPoles,BC->NbPoles()); + } + } + aSeq.Append(C); + } + // prepare array of points for creation bspline surface + // size of this array: by U parameter - number of curves, + // by V parameter - determ using MaxNbPoles but it's + // value must be between 21(min) and 101(max) + int nbc = aSeq.Length(); + int nbp = Max(21,2*MaxNbPoles-1); + if(nbp>101) nbp = 101; + TColgp_Array2OfPnt Points(1,nbc,1,nbp); + int ic = 1; + for(; ic<=nbc; ic++) { + Handle(Geom_Curve) C = aSeq.Value(ic); + double fp = C->FirstParameter(); + double lp = C->LastParameter(); + double dp = (lp-fp)/(nbp-1); + int j = 0; + gp_Pnt P; + for(; jD0(fp+dp*j,P); + Points.SetValue(ic,j+1,P); + } + } + GeomAPI_PointsToBSplineSurface PTB(Points,mindeg,maxdeg,GeomAbs_C2,tol3d); + Handle(Geom_BSplineSurface) BS = PTB.Surface(); + BRepBuilderAPI_MakeFace BB(BS); + TopoDS_Face NewF = BB.Face(); + Handle(ShapeFix_Face) sff = new ShapeFix_Face(NewF); + sff->Perform(); + sff->FixOrientation(); + aShape = sff->Face(); + } /* We test the validity of resulting shape */ if (!BRepAlgo::IsValid((aShape))) { diff --git a/src/GEOMImpl/GEOMImpl_FillingDriver.hxx b/src/GEOMImpl/GEOMImpl_FillingDriver.hxx index 88eb0d8ab..753439de2 100644 --- a/src/GEOMImpl/GEOMImpl_FillingDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_FillingDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_FillingDriver.hxx // Module : GEOMImpl - +// #ifndef _GEOMImpl_FillingDriver_HeaderFile #define _GEOMImpl_FillingDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_Gen.cxx b/src/GEOMImpl/GEOMImpl_Gen.cxx index ff5d2a26a..b01b3f88a 100644 --- a/src/GEOMImpl/GEOMImpl_Gen.cxx +++ b/src/GEOMImpl/GEOMImpl_Gen.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifdef WNT #pragma warning( disable:4786 ) @@ -43,7 +45,10 @@ #include #include #include +#include #include +#include +#include #include #include #include @@ -57,6 +62,7 @@ #include #include #include +#include #include #include #include @@ -98,9 +104,12 @@ GEOMImpl_Gen::GEOMImpl_Gen() TFunction_DriverTable::Get()->AddDriver(GEOMImpl_PolylineDriver::GetID(), new GEOMImpl_PolylineDriver()); TFunction_DriverTable::Get()->AddDriver(GEOMImpl_SplineDriver::GetID(), new GEOMImpl_SplineDriver()); TFunction_DriverTable::Get()->AddDriver(GEOMImpl_SketcherDriver::GetID(), new GEOMImpl_SketcherDriver()); + TFunction_DriverTable::Get()->AddDriver(GEOMImpl_3DSketcherDriver::GetID(), new GEOMImpl_3DSketcherDriver()); // 3D Primitives TFunction_DriverTable::Get()->AddDriver(GEOMImpl_BoxDriver::GetID(), new GEOMImpl_BoxDriver()); + TFunction_DriverTable::Get()->AddDriver(GEOMImpl_FaceDriver::GetID(), new GEOMImpl_FaceDriver()); + TFunction_DriverTable::Get()->AddDriver(GEOMImpl_DiskDriver::GetID(), new GEOMImpl_DiskDriver()); TFunction_DriverTable::Get()->AddDriver(GEOMImpl_ConeDriver::GetID(), new GEOMImpl_ConeDriver()); TFunction_DriverTable::Get()->AddDriver(GEOMImpl_CylinderDriver::GetID(), new GEOMImpl_CylinderDriver()); TFunction_DriverTable::Get()->AddDriver(GEOMImpl_PrismDriver::GetID(), new GEOMImpl_PrismDriver()); @@ -125,6 +134,7 @@ GEOMImpl_Gen::GEOMImpl_Gen() // Local Operations TFunction_DriverTable::Get()->AddDriver(GEOMImpl_ChamferDriver::GetID(), new GEOMImpl_ChamferDriver()); TFunction_DriverTable::Get()->AddDriver(GEOMImpl_FilletDriver::GetID(), new GEOMImpl_FilletDriver()); + TFunction_DriverTable::Get()->AddDriver(GEOMImpl_Fillet2dDriver::GetID(), new GEOMImpl_Fillet2dDriver()); TFunction_DriverTable::Get()->AddDriver(GEOMImpl_ArchimedeDriver::GetID(), new GEOMImpl_ArchimedeDriver()); // Geometrical Transformations, Offset, Scale diff --git a/src/GEOMImpl/GEOMImpl_Gen.hxx b/src/GEOMImpl/GEOMImpl_Gen.hxx index f1a22a785..c777a3a6b 100644 --- a/src/GEOMImpl/GEOMImpl_Gen.hxx +++ b/src/GEOMImpl/GEOMImpl_Gen.hxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOMImpl_GEN_HXX_ #define _GEOMImpl_GEN_HXX_ diff --git a/src/GEOMImpl/GEOMImpl_GlueDriver.cxx b/src/GEOMImpl/GEOMImpl_GlueDriver.cxx index ec18620ff..cd6235466 100644 --- a/src/GEOMImpl/GEOMImpl_GlueDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_GlueDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_GlueDriver.hxx b/src/GEOMImpl/GEOMImpl_GlueDriver.hxx index e7c3befa8..1121c2f6d 100644 --- a/src/GEOMImpl/GEOMImpl_GlueDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_GlueDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_GlueDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_GlueDriver_HeaderFile #define _GEOMImpl_GlueDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_HealingDriver.cxx b/src/GEOMImpl/GEOMImpl_HealingDriver.cxx index d4921d648..9516c6137 100644 --- a/src/GEOMImpl/GEOMImpl_HealingDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_HealingDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_HealingDriver.hxx b/src/GEOMImpl/GEOMImpl_HealingDriver.hxx index 3bc27c1a8..d89f3e408 100644 --- a/src/GEOMImpl/GEOMImpl_HealingDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_HealingDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_HealingDriver.hxx // Module : GEOMImpl - +// #ifndef _GEOMImpl_HealingDriver_HeaderFile #define _GEOMImpl_HealingDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_I3DPrimOperations.cxx b/src/GEOMImpl/GEOMImpl_I3DPrimOperations.cxx index a1c554544..ffa7b4d3f 100644 --- a/src/GEOMImpl/GEOMImpl_I3DPrimOperations.cxx +++ b/src/GEOMImpl/GEOMImpl_I3DPrimOperations.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include @@ -36,6 +38,8 @@ #include #include +#include +#include #include #include #include @@ -48,6 +52,8 @@ #include #include +#include +#include #include #include #include @@ -60,6 +66,7 @@ #include #include #include +#include #include #include // CAREFUL ! position of this file is critic : see Lucien PIGNOLONI / OCC @@ -192,6 +199,281 @@ Handle(GEOM_Object) GEOMImpl_I3DPrimOperations::MakeBoxTwoPnt (Handle(GEOM_Objec return aBox; } +//============================================================================= +/*! + * MakeFaceHW + */ +//============================================================================= +Handle(GEOM_Object) GEOMImpl_I3DPrimOperations::MakeFaceHW (double theH, double theW, int theOrientation) +{ + SetErrorCode(KO); + + if (theH == 0 || theW == 0) return NULL; + + //Add a new Face object + Handle(GEOM_Object) aFace = GetEngine()->AddObject(GetDocID(), GEOM_FACE); + + //Add a new Box function for creation a box relatively to two points + Handle(GEOM_Function) aFunction = aFace->AddFunction(GEOMImpl_FaceDriver::GetID(), FACE_H_W); + if (aFunction.IsNull()) return NULL; + + //Check if the function is set correctly + if (aFunction->GetDriverGUID() != GEOMImpl_FaceDriver::GetID()) return aFace; + + GEOMImpl_IFace aFI (aFunction); + + aFI.SetH(theH); + aFI.SetW(theW); + aFI.SetOrientation(theOrientation); + + //Compute the Face + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + if (!GetSolver()->ComputeFunction(aFunction)) { + SetErrorCode("Face driver failed"); + return NULL; + } + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return NULL; + } + + //Make a Python command + GEOM::TPythonDump(aFunction) << aFace << " = geompy.MakeFaceHW(" + << theH << ", " << theW << ", " << theOrientation << ")"; + + SetErrorCode(OK); + return aFace; +} + +//============================================================================= +/*! + * MakeFaceObjHW + */ +//============================================================================= +Handle(GEOM_Object) GEOMImpl_I3DPrimOperations::MakeFaceObjHW (Handle(GEOM_Object) theObj, + double theH, double theW) +{ + SetErrorCode(KO); + + if (theObj.IsNull()) return NULL; + + //Add a new Face object + Handle(GEOM_Object) aFace = GetEngine()->AddObject(GetDocID(), GEOM_FACE); + + //Add a new Box function for creation a box relatively to two points + Handle(GEOM_Function) aFunction = aFace->AddFunction(GEOMImpl_FaceDriver::GetID(), FACE_OBJ_H_W); + if (aFunction.IsNull()) return NULL; + + //Check if the function is set correctly + if (aFunction->GetDriverGUID() != GEOMImpl_FaceDriver::GetID()) return aFace; + + GEOMImpl_IFace aFI (aFunction); + + Handle(GEOM_Function) aRefFunction1 = theObj->GetLastFunction(); + + if (aRefFunction1.IsNull()) + return aFace; + + aFI.SetRef1(aRefFunction1); + aFI.SetH(theH); + aFI.SetW(theW); + + //Compute the Face + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + if (!GetSolver()->ComputeFunction(aFunction)) { + SetErrorCode("Face driver failed"); + return NULL; + } + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return NULL; + } + + //Make a Python command + GEOM::TPythonDump(aFunction) << aFace << " = geompy.MakeFaceObjHW(" + << theObj << ", " << theH << ", " << theW << ")"; + + SetErrorCode(OK); + return aFace; +} + +//============================================================================= +/*! + * MakeDiskPntVecR + */ +//============================================================================= +Handle(GEOM_Object) GEOMImpl_I3DPrimOperations::MakeDiskPntVecR + (Handle(GEOM_Object) thePnt, Handle(GEOM_Object) theVec, double theR) +{ + SetErrorCode(KO); + + if (thePnt.IsNull() || theVec.IsNull()) return NULL; + + //Add a new Disk object + Handle(GEOM_Object) aDisk = GetEngine()->AddObject(GetDocID(), GEOM_FACE); + + //Add a new Disk function for creation a disk relatively to point and vector + Handle(GEOM_Function) aFunction = + aDisk->AddFunction(GEOMImpl_DiskDriver::GetID(), DISK_PNT_VEC_R); + if (aFunction.IsNull()) return NULL; + + //Check if the function is set correctly + if (aFunction->GetDriverGUID() != GEOMImpl_DiskDriver::GetID()) return NULL; + + GEOMImpl_IDisk aCI (aFunction); + + Handle(GEOM_Function) aRefPnt = thePnt->GetLastFunction(); + Handle(GEOM_Function) aRefVec = theVec->GetLastFunction(); + + if (aRefPnt.IsNull() || aRefVec.IsNull()) return NULL; + + aCI.SetCenter(aRefPnt); + aCI.SetVector(aRefVec); + aCI.SetRadius(theR); + + //Compute the Disk value + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + if (!GetSolver()->ComputeFunction(aFunction)) { + SetErrorCode("Disk driver failed"); + return NULL; + } + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return NULL; + } + + //Make a Python command + GEOM::TPythonDump(aFunction) << aDisk << " = geompy.MakeDiskPntVecR(" + << thePnt << ", " << theVec << ", " << theR << ")"; + + SetErrorCode(OK); + return aDisk; +} + +//============================================================================= +/*! + * MakeDiskThreePnt + */ +//============================================================================= +Handle(GEOM_Object) GEOMImpl_I3DPrimOperations::MakeDiskThreePnt (Handle(GEOM_Object) thePnt1, + Handle(GEOM_Object) thePnt2, + Handle(GEOM_Object) thePnt3) +{ + SetErrorCode(KO); + + if (thePnt1.IsNull() || thePnt2.IsNull() || thePnt3.IsNull()) return NULL; + + //Add a new Disk object + Handle(GEOM_Object) aDisk = GetEngine()->AddObject(GetDocID(), GEOM_FACE); + + //Add a new Disk function for creation a disk relatively to three points + Handle(GEOM_Function) aFunction = + aDisk->AddFunction(GEOMImpl_DiskDriver::GetID(), DISK_THREE_PNT); + if (aFunction.IsNull()) return NULL; + + //Check if the function is set correctly + if (aFunction->GetDriverGUID() != GEOMImpl_DiskDriver::GetID()) return NULL; + + GEOMImpl_IDisk aCI (aFunction); + + Handle(GEOM_Function) aRefPnt1 = thePnt1->GetLastFunction(); + Handle(GEOM_Function) aRefPnt2 = thePnt2->GetLastFunction(); + Handle(GEOM_Function) aRefPnt3 = thePnt3->GetLastFunction(); + + if (aRefPnt1.IsNull() || aRefPnt2.IsNull() || aRefPnt3.IsNull()) return NULL; + + aCI.SetPoint1(aRefPnt1); + aCI.SetPoint2(aRefPnt2); + aCI.SetPoint3(aRefPnt3); + + //Compute the Disk value + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + if (!GetSolver()->ComputeFunction(aFunction)) { + SetErrorCode("Disk driver failed"); + return NULL; + } + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return NULL; + } + + //Make a Python command + GEOM::TPythonDump(aFunction) << aDisk << " = geompy.MakeDiskThreePnt(" + << thePnt1 << ", " << thePnt2 << ", " << thePnt3 << ")"; + + SetErrorCode(OK); + return aDisk; +} + +//============================================================================= +/*! + * MakeDiskR + */ +//============================================================================= +Handle(GEOM_Object) GEOMImpl_I3DPrimOperations::MakeDiskR (double theR, int theOrientation) +{ + SetErrorCode(KO); + + if (theR == 0 ) return NULL; + + //Add a new Disk object + Handle(GEOM_Object) aDisk = GetEngine()->AddObject(GetDocID(), GEOM_FACE); + + //Add a new Box function for creation a box relatively to two points + Handle(GEOM_Function) aFunction = aDisk->AddFunction(GEOMImpl_DiskDriver::GetID(), DISK_R); + if (aFunction.IsNull()) return NULL; + + //Check if the function is set correctly + if (aFunction->GetDriverGUID() != GEOMImpl_DiskDriver::GetID()) return aDisk; + + GEOMImpl_IDisk aDI (aFunction); + + aDI.SetRadius(theR); + aDI.SetOrientation(theOrientation); + + //Compute the Disk + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + if (!GetSolver()->ComputeFunction(aFunction)) { + SetErrorCode("Disk driver failed"); + return NULL; + } + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return NULL; + } + + //Make a Python command + GEOM::TPythonDump(aFunction) << aDisk << " = geompy.MakeDiskR(" + << theR << ", " << theOrientation << ")"; + + SetErrorCode(OK); + return aDisk; +} //============================================================================= /*! @@ -874,6 +1156,121 @@ Handle(GEOM_Object) GEOMImpl_I3DPrimOperations::MakePrismTwoPnt2Ways return aPrism; } +//============================================================================= +/*! + * MakePrismDXDYDZ + */ +//============================================================================= +Handle(GEOM_Object) GEOMImpl_I3DPrimOperations::MakePrismDXDYDZ + (Handle(GEOM_Object) theBase, double theDX, double theDY, double theDZ) +{ + SetErrorCode(KO); + + if (theBase.IsNull()) return NULL; + + //Add a new Prism object + Handle(GEOM_Object) aPrism = GetEngine()->AddObject(GetDocID(), GEOM_PRISM); + + //Add a new Prism function for creation a Prism by DXDYDZ + Handle(GEOM_Function) aFunction = + aPrism->AddFunction(GEOMImpl_PrismDriver::GetID(), PRISM_BASE_DXDYDZ); + if (aFunction.IsNull()) return NULL; + + //Check if the function is set correctly + if (aFunction->GetDriverGUID() != GEOMImpl_PrismDriver::GetID()) return NULL; + + GEOMImpl_IPrism aCI (aFunction); + + Handle(GEOM_Function) aRefBase = theBase->GetLastFunction(); + + if (aRefBase.IsNull()) return NULL; + + aCI.SetBase(aRefBase); + aCI.SetDX(theDX); + aCI.SetDY(theDY); + aCI.SetDZ(theDZ); + + //Compute the Prism value + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + if (!GetSolver()->ComputeFunction(aFunction)) { + SetErrorCode("Extrusion can not be created, check input data"); + return NULL; + } + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return NULL; + } + + //Make a Python command + GEOM::TPythonDump(aFunction) << aPrism << " = geompy.MakePrismDXDYDZ(" + << theBase << ", " << theDX << ", " << theDY << ", " << theDZ << ")"; + + SetErrorCode(OK); + return aPrism; +} + +//============================================================================= +/*! + * MakePrismDXDYDZ_2WAYS + */ +//============================================================================= +Handle(GEOM_Object) GEOMImpl_I3DPrimOperations::MakePrismDXDYDZ2Ways + (Handle(GEOM_Object) theBase, double theDX, double theDY, double theDZ) +{ + SetErrorCode(KO); + + if (theBase.IsNull()) return NULL; + + //Add a new Prism object + Handle(GEOM_Object) aPrism = GetEngine()->AddObject(GetDocID(), GEOM_PRISM); + + //Add a new Prism function for creation a Prism by DXDYDZ + Handle(GEOM_Function) aFunction = + aPrism->AddFunction(GEOMImpl_PrismDriver::GetID(), PRISM_BASE_DXDYDZ_2WAYS); + if (aFunction.IsNull()) return NULL; + + //Check if the function is set correctly + if (aFunction->GetDriverGUID() != GEOMImpl_PrismDriver::GetID()) return NULL; + + GEOMImpl_IPrism aCI (aFunction); + + Handle(GEOM_Function) aRefBase = theBase->GetLastFunction(); + + if (aRefBase.IsNull()) return NULL; + + aCI.SetBase(aRefBase); + aCI.SetDX(theDX); + aCI.SetDY(theDY); + aCI.SetDZ(theDZ); + + //Compute the Prism value + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + if (!GetSolver()->ComputeFunction(aFunction)) { + SetErrorCode("Extrusion can not be created, check input data"); + return NULL; + } + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return NULL; + } + + //Make a Python command + GEOM::TPythonDump(aFunction) << aPrism << " = geompy.MakePrismDXDYDZ2Ways(" + << theBase << ", " << theDX << ", " << theDY << ", " << theDZ << ")"; + + SetErrorCode(OK); + return aPrism; +} //============================================================================= /*! @@ -1728,3 +2125,64 @@ Handle(GEOM_Object) GEOMImpl_I3DPrimOperations::MakePipeShellsWithoutPath( } + +//============================================================================= +/*! + * MakePipeBiNormalAlongVector + */ +//============================================================================= +Handle(GEOM_Object) GEOMImpl_I3DPrimOperations::MakePipeBiNormalAlongVector (Handle(GEOM_Object) theBase, + Handle(GEOM_Object) thePath, + Handle(GEOM_Object) theVec) +{ + SetErrorCode(KO); + + if (theBase.IsNull() || thePath.IsNull() || theVec.IsNull()) return NULL; + + //Add a new Pipe object + Handle(GEOM_Object) aPipe = GetEngine()->AddObject(GetDocID(), GEOM_PIPE); + + //Add a new Pipe function + Handle(GEOM_Function) aFunction = + aPipe->AddFunction(GEOMImpl_PipeDriver::GetID(), PIPE_BI_NORMAL_ALONG_VECTOR); + if (aFunction.IsNull()) return NULL; + + //Check if the function is set correctly + if (aFunction->GetDriverGUID() != GEOMImpl_PipeDriver::GetID()) return NULL; + + GEOMImpl_IPipeBiNormal aCI (aFunction); + + Handle(GEOM_Function) aRefBase = theBase->GetLastFunction(); + Handle(GEOM_Function) aRefPath = thePath->GetLastFunction(); + Handle(GEOM_Function) aRefVec = theVec->GetLastFunction(); + + if (aRefBase.IsNull() || aRefPath.IsNull() || aRefVec.IsNull()) return NULL; + + aCI.SetBase(aRefBase); + aCI.SetPath(aRefPath); + aCI.SetVector(aRefVec); + + //Compute the Pipe value + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + if (!GetSolver()->ComputeFunction(aFunction)) { + SetErrorCode("Pipe driver failed"); + return NULL; + } + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return NULL; + } + + //Make a Python command + GEOM::TPythonDump(aFunction) << aPipe << " = geompy.MakePipeBiNormalAlongVector(" + << theBase << ", " << thePath << ", " << theVec << ")"; + + SetErrorCode(OK); + return aPipe; +} + diff --git a/src/GEOMImpl/GEOMImpl_I3DPrimOperations.hxx b/src/GEOMImpl/GEOMImpl_I3DPrimOperations.hxx index 5f1f52f36..6f1295b41 100644 --- a/src/GEOMImpl/GEOMImpl_I3DPrimOperations.hxx +++ b/src/GEOMImpl/GEOMImpl_I3DPrimOperations.hxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOMImpl_I3DPrimOperations_HXX_ #define _GEOMImpl_I3DPrimOperations_HXX_ @@ -35,8 +36,17 @@ class GEOMImpl_I3DPrimOperations : public GEOM_IOperations { Standard_EXPORT Handle(GEOM_Object) MakeBoxDXDYDZ (double theDX, double theDY, double theDZ); Standard_EXPORT Handle(GEOM_Object) MakeBoxTwoPnt (Handle(GEOM_Object) thePnt1, - Handle(GEOM_Object) thePnt2); - + Handle(GEOM_Object) thePnt2); + Standard_EXPORT Handle(GEOM_Object) MakeFaceHW (double theH, double theW, int theOrientation); + Standard_EXPORT Handle(GEOM_Object) MakeFaceObjHW (Handle(GEOM_Object) theObj, + double theH, double theW); + Standard_EXPORT Handle(GEOM_Object) MakeDiskThreePnt (Handle(GEOM_Object) thePnt1, + Handle(GEOM_Object) thePnt2, + Handle(GEOM_Object) thePnt3); + Standard_EXPORT Handle(GEOM_Object) MakeDiskPntVecR (Handle(GEOM_Object) thePnt1, + Handle(GEOM_Object) theVec, + double theR); + Standard_EXPORT Handle(GEOM_Object) MakeDiskR (double theR, int theOrientation); Standard_EXPORT Handle(GEOM_Object) MakeCylinderRH (double theR, double theH); Standard_EXPORT Handle(GEOM_Object) MakeCylinderPntVecRH (Handle(GEOM_Object) thePnt, Handle(GEOM_Object) theVec, @@ -70,6 +80,12 @@ class GEOMImpl_I3DPrimOperations : public GEOM_IOperations { Handle(GEOM_Object) thePoint1, Handle(GEOM_Object) thePoint2); + Standard_EXPORT Handle(GEOM_Object) MakePrismDXDYDZ (Handle(GEOM_Object) theBase, + double theDX, double theDY, double theDZ); + + Standard_EXPORT Handle(GEOM_Object) MakePrismDXDYDZ2Ways (Handle(GEOM_Object) theBase, + double theDX, double theDY, double theDZ); + Standard_EXPORT Handle(GEOM_Object) MakePipe (Handle(GEOM_Object) theBase, Handle(GEOM_Object) thePath); @@ -109,6 +125,10 @@ class GEOMImpl_I3DPrimOperations : public GEOM_IOperations { const Handle(TColStd_HSequenceOfTransient)& theBases, const Handle(TColStd_HSequenceOfTransient)& theLocations); + Standard_EXPORT Handle(GEOM_Object) MakePipeBiNormalAlongVector (Handle(GEOM_Object) theBase, + Handle(GEOM_Object) thePath, + Handle(GEOM_Object) theVec); + }; #endif diff --git a/src/DlgRef/DlgRef_1Sel_Ext.h b/src/GEOMImpl/GEOMImpl_I3DSketcher.hxx old mode 100644 new mode 100755 similarity index 52% rename from src/DlgRef/DlgRef_1Sel_Ext.h rename to src/GEOMImpl/GEOMImpl_I3DSketcher.hxx index ff29a6216..dc4ea30f6 --- a/src/DlgRef/DlgRef_1Sel_Ext.h +++ b/src/GEOMImpl/GEOMImpl_I3DSketcher.hxx @@ -17,33 +17,27 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -/**************************************************************************** -** Form interface generated from reading ui file 'DlgRef_1Sel_QTD.ui' -** -** Created: lun sep 22 17:38:05 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef DlgRef_1Sel_Ext_H -#define DlgRef_1Sel_Ext_H +//NOTE: This is an interface to a function for the Sketcher creation. -#include "GEOM_DlgRef.hxx" -#include "DlgRef_1Sel_QTD.h" +#include "GEOM_Function.hxx" -class QGridLayout; +#include -class GEOM_DLGREF_EXPORT DlgRef_1Sel_Ext : public DlgRef_1Sel_QTD -{ - Q_OBJECT +#define SKETCH_ARG_COORDS 1 -public: - DlgRef_1Sel_Ext( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ) - : DlgRef_1Sel_QTD( parent, name, fl ) {}; - ~DlgRef_1Sel_Ext() {}; +class GEOMImpl_I3DSketcher +{ + public: - QGridLayout* getGroupBoxLayout() { return GroupBox1Layout; } + GEOMImpl_I3DSketcher(Handle(GEOM_Function) theFunction): _func(theFunction) {} + + void SetCoordinates(const Handle(TColStd_HArray1OfReal)& theValue) + { _func->SetRealArray(SKETCH_ARG_COORDS, theValue); } + + Handle(TColStd_HArray1OfReal) GetCoordinates() { return _func->GetRealArray(SKETCH_ARG_COORDS); } + + private: + + Handle(GEOM_Function) _func; }; - -#endif // DlgRef_1Sel_Ext_H diff --git a/src/GEOMImpl/GEOMImpl_IArc.hxx b/src/GEOMImpl/GEOMImpl_IArc.hxx index dc7372cd5..8aecd206c 100644 --- a/src/GEOMImpl/GEOMImpl_IArc.hxx +++ b/src/GEOMImpl/GEOMImpl_IArc.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Arc creation. - - +// #include "GEOM_Function.hxx" #define ARC_ARG_PI 1 diff --git a/src/GEOMImpl/GEOMImpl_IArchimede.hxx b/src/GEOMImpl/GEOMImpl_IArchimede.hxx index ca31fa31b..4b93c91f0 100644 --- a/src/GEOMImpl/GEOMImpl_IArchimede.hxx +++ b/src/GEOMImpl/GEOMImpl_IArchimede.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Archimede operation. - - +// #include "GEOM_Function.hxx" #define ARG_WEIGHT 1 diff --git a/src/GEOMImpl/GEOMImpl_IBasicOperations.cxx b/src/GEOMImpl/GEOMImpl_IBasicOperations.cxx index 08d1fde18..1594f5827 100644 --- a/src/GEOMImpl/GEOMImpl_IBasicOperations.cxx +++ b/src/GEOMImpl/GEOMImpl_IBasicOperations.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include @@ -231,6 +233,64 @@ Handle(GEOM_Object) GEOMImpl_IBasicOperations::MakePointOnCurve return aPoint; } + +//============================================================================= +/*! + * MakePointOnSurface + */ +//============================================================================= +Handle(GEOM_Object) GEOMImpl_IBasicOperations::MakePointOnSurface + (Handle(GEOM_Object) theSurface, double theUParameter, double theVParameter) +{ + SetErrorCode(KO); + + if (theSurface.IsNull()) return NULL; + + //Add a new Point object + Handle(GEOM_Object) aPoint = GetEngine()->AddObject(GetDocID(), GEOM_POINT); + + //Add a new Point function for creation a point relativley another point + Handle(GEOM_Function) aFunction = aPoint->AddFunction(GEOMImpl_PointDriver::GetID(), + POINT_SURFACE_PAR); + + //Check if the function is set correctly + if (aFunction->GetDriverGUID() != GEOMImpl_PointDriver::GetID()) return NULL; + + GEOMImpl_IPoint aPI (aFunction); + + Handle(GEOM_Function) aRefFunction = theSurface->GetLastFunction(); + if (aRefFunction.IsNull()) return NULL; + + aPI.SetSurface(aRefFunction); + aPI.SetParameter(theUParameter); + aPI.SetParameter2(theVParameter); + + //Compute the point value + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + if (!GetSolver()->ComputeFunction(aFunction)) { + SetErrorCode("Point driver failed"); + return NULL; + } + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return NULL; + } + + //Make a Python command + GEOM::TPythonDump(aFunction) << aPoint << " = geompy.MakeVertexOnSurface(" + << theSurface << ", " << theUParameter + << ", " << theVParameter << ")"; + + SetErrorCode(OK); + return aPoint; +} + + //============================================================================= /*! * MakePointOnLinesIntersection diff --git a/src/GEOMImpl/GEOMImpl_IBasicOperations.hxx b/src/GEOMImpl/GEOMImpl_IBasicOperations.hxx index e6155178b..16c4af6ea 100644 --- a/src/GEOMImpl/GEOMImpl_IBasicOperations.hxx +++ b/src/GEOMImpl/GEOMImpl_IBasicOperations.hxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOMImpl_IBasicOperations_HXX_ #define _GEOMImpl_IBasicOperations_HXX_ @@ -44,6 +45,10 @@ class GEOMImpl_IBasicOperations : public GEOM_IOperations { Standard_EXPORT Handle(GEOM_Object) MakePointOnLinesIntersection (Handle(GEOM_Object) theLine1, Handle(GEOM_Object) theLine2); + Standard_EXPORT Handle(GEOM_Object) MakePointOnSurface (Handle(GEOM_Object) theSurface, + double theUParameter, + double theVParameter); + // Vector Standard_EXPORT Handle(GEOM_Object) MakeVectorDXDYDZ (double theDX, double theDY, double theDZ); diff --git a/src/GEOMImpl/GEOMImpl_IBlockTrsf.hxx b/src/GEOMImpl/GEOMImpl_IBlockTrsf.hxx index 0c5eac84a..b6827133d 100644 --- a/src/GEOMImpl/GEOMImpl_IBlockTrsf.hxx +++ b/src/GEOMImpl/GEOMImpl_IBlockTrsf.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an interface to a function for the Blocks Multi-Transformations. - - +// #include "GEOM_Function.hxx" #define TRSF_ORIGIN 1 diff --git a/src/GEOMImpl/GEOMImpl_IBlocks.hxx b/src/GEOMImpl/GEOMImpl_IBlocks.hxx index f32575c30..dac943bd2 100644 --- a/src/GEOMImpl/GEOMImpl_IBlocks.hxx +++ b/src/GEOMImpl/GEOMImpl_IBlocks.hxx @@ -1,26 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // // NOTE: This is an interface to a function for the Blocks // creation and transformation. - - +// #include "GEOM_Function.hxx" #include "TColStd_HSequenceOfTransient.hxx" diff --git a/src/GEOMImpl/GEOMImpl_IBlocksOperations.cxx b/src/GEOMImpl/GEOMImpl_IBlocksOperations.cxx index 22032807a..590881408 100644 --- a/src/GEOMImpl/GEOMImpl_IBlocksOperations.cxx +++ b/src/GEOMImpl/GEOMImpl_IBlocksOperations.cxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifdef WNT #pragma warning( disable:4786 ) #endif -using namespace std; - #include #include @@ -1925,7 +1925,7 @@ Standard_Boolean HasAnyConnection (const Standard_Integer theBlockIndex, //============================================================================= Standard_Boolean GEOMImpl_IBlocksOperations::CheckCompoundOfBlocksOld (Handle(GEOM_Object) theCompound, - list& theErrors) + std::list& theErrors) { SetErrorCode(KO); @@ -2077,11 +2077,11 @@ Standard_Boolean GEOMImpl_IBlocksOperations::CheckCompoundOfBlocksOld //============================================================================= TCollection_AsciiString GEOMImpl_IBlocksOperations::PrintBCErrors (Handle(GEOM_Object) theCompound, - const list& theErrors) + const std::list& theErrors) { TCollection_AsciiString aDescr; - list::const_iterator errIt = theErrors.begin(); + std::list::const_iterator errIt = theErrors.begin(); int i = 0; for (; errIt != theErrors.end(); i++, errIt++) { BCError errStruct = *errIt; @@ -2106,8 +2106,8 @@ TCollection_AsciiString GEOMImpl_IBlocksOperations::PrintBCErrors break; } - list sshList = errStruct.incriminated; - list::iterator sshIt = sshList.begin(); + std::list sshList = errStruct.incriminated; + std::list::iterator sshIt = sshList.begin(); int jj = 0; for (; sshIt != sshList.end(); jj++, sshIt++) { if (jj > 0) @@ -2126,7 +2126,7 @@ TCollection_AsciiString GEOMImpl_IBlocksOperations::PrintBCErrors //============================================================================= Standard_Boolean GEOMImpl_IBlocksOperations::CheckCompoundOfBlocks (Handle(GEOM_Object) theCompound, - list& theErrors) + std::list& theErrors) { SetErrorCode(KO); diff --git a/src/GEOMImpl/GEOMImpl_IBlocksOperations.hxx b/src/GEOMImpl/GEOMImpl_IBlocksOperations.hxx index 8248df00f..449c36f51 100644 --- a/src/GEOMImpl/GEOMImpl_IBlocksOperations.hxx +++ b/src/GEOMImpl/GEOMImpl_IBlocksOperations.hxx @@ -1,28 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOMImpl_IBlocksOperations_HXX_ #define _GEOMImpl_IBlocksOperations_HXX_ -using namespace std; - #include "GEOM_IOperations.hxx" #include @@ -114,17 +113,17 @@ class GEOMImpl_IBlocksOperations : public GEOM_IOperations { struct BCError { BCErrorType error; - list incriminated; + std::list incriminated; }; Standard_EXPORT Standard_Boolean CheckCompoundOfBlocksOld (Handle(GEOM_Object) theCompound, - list& theErrors); + std::list& theErrors); Standard_EXPORT Standard_Boolean CheckCompoundOfBlocks (Handle(GEOM_Object) theCompound, - list& theErrors); + std::list& theErrors); Standard_EXPORT TCollection_AsciiString PrintBCErrors (Handle(GEOM_Object) theCompound, - const list& theErrors); + const std::list& theErrors); Standard_EXPORT Handle(GEOM_Object) RemoveExtraEdges (Handle(GEOM_Object) theShape); diff --git a/src/GEOMImpl/GEOMImpl_IBoolean.hxx b/src/GEOMImpl/GEOMImpl_IBoolean.hxx index 302ecfc44..871b58caa 100644 --- a/src/GEOMImpl/GEOMImpl_IBoolean.hxx +++ b/src/GEOMImpl/GEOMImpl_IBoolean.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Common, Cut and Fuse creation. - - +// #include "GEOM_Function.hxx" #define BOOL_ARG_SHAPE1 1 diff --git a/src/GEOMImpl/GEOMImpl_IBooleanOperations.cxx b/src/GEOMImpl/GEOMImpl_IBooleanOperations.cxx index f5c4040a1..bae1dd0c6 100644 --- a/src/GEOMImpl/GEOMImpl_IBooleanOperations.cxx +++ b/src/GEOMImpl/GEOMImpl_IBooleanOperations.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_IBooleanOperations.hxx b/src/GEOMImpl/GEOMImpl_IBooleanOperations.hxx index 6dc82d7be..7e99fa82f 100644 --- a/src/GEOMImpl/GEOMImpl_IBooleanOperations.hxx +++ b/src/GEOMImpl/GEOMImpl_IBooleanOperations.hxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOMImpl_IBooleanOperations_HXX_ #define _GEOMImpl_IBooleanOperations_HXX_ diff --git a/src/GEOMImpl/GEOMImpl_IBox.hxx b/src/GEOMImpl/GEOMImpl_IBox.hxx index 7ce2152a8..81445ab6e 100644 --- a/src/GEOMImpl/GEOMImpl_IBox.hxx +++ b/src/GEOMImpl/GEOMImpl_IBox.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Box creation. - - +// #include "GEOM_Function.hxx" #define BOX_ARG_DX 1 diff --git a/src/GEOMImpl/GEOMImpl_IChamfer.hxx b/src/GEOMImpl/GEOMImpl_IChamfer.hxx index 17f7e5afc..32f43fa17 100644 --- a/src/GEOMImpl/GEOMImpl_IChamfer.hxx +++ b/src/GEOMImpl/GEOMImpl_IChamfer.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an interface to a function for the Chamfer and creation. - - +// #include "GEOM_Function.hxx" #define CHAM_ARG_SH 1 diff --git a/src/GEOMImpl/GEOMImpl_ICircle.hxx b/src/GEOMImpl/GEOMImpl_ICircle.hxx index ab44ba5d7..e5d466a8a 100644 --- a/src/GEOMImpl/GEOMImpl_ICircle.hxx +++ b/src/GEOMImpl/GEOMImpl_ICircle.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Circle creation. - - +// #include "GEOM_Function.hxx" #define CIRC_ARG_P1 1 diff --git a/src/GEOMImpl/GEOMImpl_ICone.hxx b/src/GEOMImpl/GEOMImpl_ICone.hxx index bce989a92..f927a59c7 100644 --- a/src/GEOMImpl/GEOMImpl_ICone.hxx +++ b/src/GEOMImpl/GEOMImpl_ICone.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Cone creation. - - +// #include "GEOM_Function.hxx" #define CONE_ARG_R1 1 diff --git a/src/GEOMImpl/GEOMImpl_ICopy.hxx b/src/GEOMImpl/GEOMImpl_ICopy.hxx index 09b9ee001..a9c4ad251 100644 --- a/src/GEOMImpl/GEOMImpl_ICopy.hxx +++ b/src/GEOMImpl/GEOMImpl_ICopy.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Copy operation. - - +// #include "GEOM_Function.hxx" #define COPY_ARG_REF 1 diff --git a/src/GEOMImpl/GEOMImpl_ICurvesOperations.cxx b/src/GEOMImpl/GEOMImpl_ICurvesOperations.cxx index d6628ca43..6a6b8f9ef 100644 --- a/src/GEOMImpl/GEOMImpl_ICurvesOperations.cxx +++ b/src/GEOMImpl/GEOMImpl_ICurvesOperations.cxx @@ -1,26 +1,30 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include #include +#include + #include #include @@ -32,6 +36,7 @@ #include #include #include +#include #include #include @@ -39,6 +44,7 @@ #include #include #include +#include #include "utilities.h" @@ -266,7 +272,9 @@ Handle(GEOM_Object) GEOMImpl_ICurvesOperations::MakeCirclePntVecR { SetErrorCode(KO); - if (thePnt.IsNull() || theVec.IsNull()) return NULL; + // Not set thePnt means origin of global CS, + // Not set theVec means Z axis of global CS + //if (thePnt.IsNull() || theVec.IsNull()) return NULL; //Add a new Circle object Handle(GEOM_Object) aCircle = GetEngine()->AddObject(GetDocID(), GEOM_CIRCLE); @@ -281,13 +289,18 @@ Handle(GEOM_Object) GEOMImpl_ICurvesOperations::MakeCirclePntVecR GEOMImpl_ICircle aCI (aFunction); - Handle(GEOM_Function) aRefPnt = thePnt->GetLastFunction(); - Handle(GEOM_Function) aRefVec = theVec->GetLastFunction(); + if (!thePnt.IsNull()) { + Handle(GEOM_Function) aRefPnt = thePnt->GetLastFunction(); + if (aRefPnt.IsNull()) return NULL; + aCI.SetCenter(aRefPnt); + } - if (aRefPnt.IsNull() || aRefVec.IsNull()) return NULL; + if (!theVec.IsNull()) { + Handle(GEOM_Function) aRefVec = theVec->GetLastFunction(); + if (aRefVec.IsNull()) return NULL; + aCI.SetVector(aRefVec); + } - aCI.SetCenter(aRefPnt); - aCI.SetVector(aRefVec); aCI.SetRadius(theR); //Compute the Circle value @@ -325,7 +338,9 @@ Handle(GEOM_Object) GEOMImpl_ICurvesOperations::MakeEllipse { SetErrorCode(KO); - if (thePnt.IsNull() || theVec.IsNull()) return NULL; + // Not set thePnt means origin of global CS, + // Not set theVec means Z axis of global CS + //if (thePnt.IsNull() || theVec.IsNull()) return NULL; //Add a new Ellipse object Handle(GEOM_Object) anEll = GetEngine()->AddObject(GetDocID(), GEOM_ELLIPSE); @@ -340,13 +355,18 @@ Handle(GEOM_Object) GEOMImpl_ICurvesOperations::MakeEllipse GEOMImpl_IEllipse aCI (aFunction); - Handle(GEOM_Function) aRefPnt = thePnt->GetLastFunction(); - Handle(GEOM_Function) aRefVec = theVec->GetLastFunction(); + if (!thePnt.IsNull()) { + Handle(GEOM_Function) aRefPnt = thePnt->GetLastFunction(); + if (aRefPnt.IsNull()) return NULL; + aCI.SetCenter(aRefPnt); + } - if (aRefPnt.IsNull() || aRefVec.IsNull()) return NULL; + if (!theVec.IsNull()) { + Handle(GEOM_Function) aRefVec = theVec->GetLastFunction(); + if (aRefVec.IsNull()) return NULL; + aCI.SetVector(aRefVec); + } - aCI.SetCenter(aRefPnt); - aCI.SetVector(aRefVec); aCI.SetRMajor(theRMajor); aCI.SetRMinor(theRMinor); @@ -495,6 +515,67 @@ Handle(GEOM_Object) GEOMImpl_ICurvesOperations::MakeArcCenter (Handle(GEOM_Objec return anArc; } +//============================================================================= +/*! + * MakeArcOfEllipse + */ +//============================================================================= +Handle(GEOM_Object) GEOMImpl_ICurvesOperations::MakeArcOfEllipse (Handle(GEOM_Object) thePnt1, + Handle(GEOM_Object) thePnt2, + Handle(GEOM_Object) thePnt3) +{ + SetErrorCode(KO); + + if (thePnt1.IsNull() || thePnt2.IsNull() || thePnt3.IsNull()) return NULL; + + //Add a new Circle Arc object + Handle(GEOM_Object) anArc = GetEngine()->AddObject(GetDocID(), GEOM_ELLIPSE_ARC); + + //Add a new Circle Arc function + Handle(GEOM_Function) aFunction = + anArc->AddFunction(GEOMImpl_ArcDriver::GetID(), ELLIPSE_ARC_CENTER_TWO_PNT); + + if (aFunction.IsNull()) return NULL; + + //Check if the function is set correctly + if (aFunction->GetDriverGUID() != GEOMImpl_ArcDriver::GetID()) return NULL; + GEOMImpl_IArc aCI (aFunction); + + Handle(GEOM_Function) aRefPnt1 = thePnt1->GetLastFunction(); + Handle(GEOM_Function) aRefPnt2 = thePnt2->GetLastFunction(); + Handle(GEOM_Function) aRefPnt3 = thePnt3->GetLastFunction(); + + + if (aRefPnt1.IsNull() || aRefPnt2.IsNull() || aRefPnt3.IsNull()) return NULL; + + aCI.SetPoint1(aRefPnt1); + aCI.SetPoint2(aRefPnt2); + aCI.SetPoint3(aRefPnt3); + + //Compute the Arc value + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + if (!GetSolver()->ComputeFunction(aFunction)) { + SetErrorCode("Arc driver failed"); + return NULL; + } + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return NULL; + } + + //Make a Python command + GEOM::TPythonDump(aFunction) << anArc << " = geompy.MakeArcOfEllipse(" + << thePnt1 << ", " << thePnt2 << ", " << thePnt3 << ")"; + + SetErrorCode(OK); + return anArc; +} + //============================================================================= /*! * MakeSplineBezier @@ -634,13 +715,12 @@ Handle(GEOM_Object) GEOMImpl_ICurvesOperations::MakeSplineInterpolation * MakeSketcher */ //============================================================================= -Handle(GEOM_Object) GEOMImpl_ICurvesOperations::MakeSketcher - (const TCollection_AsciiString& theCommand, - list theWorkingPlane) +Handle(GEOM_Object) GEOMImpl_ICurvesOperations::MakeSketcher (const char* theCommand, + list theWorkingPlane) { SetErrorCode(KO); - if (theCommand.IsEmpty()) return NULL; + if (!theCommand || strcmp(theCommand, "") == 0) return NULL; //Add a new Sketcher object Handle(GEOM_Object) aSketcher = GetEngine()->AddObject(GetDocID(), GEOM_SKETCHER); @@ -655,7 +735,8 @@ Handle(GEOM_Object) GEOMImpl_ICurvesOperations::MakeSketcher GEOMImpl_ISketcher aCI (aFunction); - aCI.SetCommand(theCommand); + TCollection_AsciiString aCommand((char*) theCommand); + aCI.SetCommand(aCommand); int ind = 1; list::iterator it = theWorkingPlane.begin(); @@ -680,7 +761,7 @@ Handle(GEOM_Object) GEOMImpl_ICurvesOperations::MakeSketcher //Make a Python command GEOM::TPythonDump pd (aFunction); - pd << aSketcher << " = geompy.MakeSketcher(\"" << theCommand.ToCString() << "\", ["; + pd << aSketcher << " = geompy.MakeSketcher(\"" << aCommand.ToCString() << "\", ["; it = theWorkingPlane.begin(); pd << (*it++); @@ -693,18 +774,85 @@ Handle(GEOM_Object) GEOMImpl_ICurvesOperations::MakeSketcher return aSketcher; } +//============================================================================= +/*! + * Make3DSketcher + */ +//============================================================================= +Handle(GEOM_Object) GEOMImpl_ICurvesOperations::Make3DSketcher (list theCoordinates) +{ + SetErrorCode(KO); + + //Add a new Sketcher object + Handle(GEOM_Object) a3DSketcher = GetEngine()->AddObject(GetDocID(), GEOM_3DSKETCHER); + + //Add a new Sketcher function + Handle(GEOM_Function) aFunction = + a3DSketcher->AddFunction(GEOMImpl_3DSketcherDriver::GetID(), GEOM_3DSKETCHER); + if (aFunction.IsNull()) return NULL; + + //Check if the function is set correctly + if (aFunction->GetDriverGUID() != GEOMImpl_3DSketcherDriver::GetID()) return NULL; + + GEOMImpl_I3DSketcher aCI (aFunction); + + int nbOfCoords = 0; + list::iterator it = theCoordinates.begin(); + for (; it != theCoordinates.end(); it++) + nbOfCoords++; + + Handle(TColStd_HArray1OfReal) aCoordsArray = new TColStd_HArray1OfReal (1, nbOfCoords); + + it = theCoordinates.begin(); + int ind = 1; + for (; it != theCoordinates.end(); it++, ind++) + aCoordsArray->SetValue(ind, *it); + + aCI.SetCoordinates(aCoordsArray); + + //Compute the Sketcher value + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + if (!GetSolver()->ComputeFunction(aFunction)) { + SetErrorCode("3D Sketcher driver failed"); + return NULL; + } + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return NULL; + } + + //Make a Python command + GEOM::TPythonDump pd (aFunction); + pd << a3DSketcher << " = geompy.Make3DSketcher(["; + + it = theCoordinates.begin(); + pd << (*it++); + while (it != theCoordinates.end()) { + pd << ", " << (*it++); + } + pd << "])"; + + SetErrorCode(OK); + return a3DSketcher; +} + //============================================================================= /*! * MakeSketcherOnPlane */ //============================================================================= Handle(GEOM_Object) GEOMImpl_ICurvesOperations::MakeSketcherOnPlane - (const TCollection_AsciiString& theCommand, + (const char* theCommand, Handle(GEOM_Object) theWorkingPlane) { SetErrorCode(KO); - if (theCommand.IsEmpty()) return NULL; + if (!theCommand || strcmp(theCommand, "") == 0) return NULL; //Add a new Sketcher object Handle(GEOM_Object) aSketcher = GetEngine()->AddObject(GetDocID(), GEOM_SKETCHER); @@ -718,7 +866,9 @@ Handle(GEOM_Object) GEOMImpl_ICurvesOperations::MakeSketcherOnPlane if (aFunction->GetDriverGUID() != GEOMImpl_SketcherDriver::GetID()) return NULL; GEOMImpl_ISketcher aCI (aFunction); - aCI.SetCommand(theCommand); + + TCollection_AsciiString aCommand((char*) theCommand); + aCI.SetCommand(aCommand); Handle(GEOM_Function) aRefPlane = theWorkingPlane->GetLastFunction(); if (aRefPlane.IsNull()) return NULL; @@ -742,7 +892,7 @@ Handle(GEOM_Object) GEOMImpl_ICurvesOperations::MakeSketcherOnPlane //Make a Python command GEOM::TPythonDump (aFunction) << aSketcher << " = geompy.MakeSketcherOnPlane(\"" - << theCommand.ToCString() << "\", " << theWorkingPlane << " )"; + << aCommand.ToCString() << "\", " << theWorkingPlane << " )"; SetErrorCode(OK); return aSketcher; diff --git a/src/GEOMImpl/GEOMImpl_ICurvesOperations.hxx b/src/GEOMImpl/GEOMImpl_ICurvesOperations.hxx index 34bb01148..7380a0977 100644 --- a/src/GEOMImpl/GEOMImpl_ICurvesOperations.hxx +++ b/src/GEOMImpl/GEOMImpl_ICurvesOperations.hxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // using namespace std; @@ -60,12 +62,17 @@ class GEOMImpl_ICurvesOperations : public GEOM_IOperations { Handle(GEOM_Object) thePnt3, bool theSense); + Standard_EXPORT Handle(GEOM_Object) MakeArcOfEllipse (Handle(GEOM_Object) thePnt1, + Handle(GEOM_Object) thePnt2, + Handle(GEOM_Object) thePnt3); + Standard_EXPORT Handle(GEOM_Object) MakeSplineBezier (list thePoints); Standard_EXPORT Handle(GEOM_Object) MakeSplineInterpolation (list thePoints); - Standard_EXPORT Handle(GEOM_Object) MakeSketcher (const TCollection_AsciiString& theCommand, + Standard_EXPORT Handle(GEOM_Object) MakeSketcher (const char* theCommand, list theWorkingPlane); - Standard_EXPORT Handle(GEOM_Object) MakeSketcherOnPlane (const TCollection_AsciiString& theCommand, + Standard_EXPORT Handle(GEOM_Object) Make3DSketcher (list theCoordinates); + Standard_EXPORT Handle(GEOM_Object) MakeSketcherOnPlane (const char* theCommand, Handle(GEOM_Object) theWorkingPlane); }; diff --git a/src/GEOMImpl/GEOMImpl_ICylinder.hxx b/src/GEOMImpl/GEOMImpl_ICylinder.hxx index e71b4f5d5..735668007 100644 --- a/src/GEOMImpl/GEOMImpl_ICylinder.hxx +++ b/src/GEOMImpl/GEOMImpl_ICylinder.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Cylinder creation. - - +// #include "GEOM_Function.hxx" #define CYL_ARG_R 1 diff --git a/src/GEOMImpl/GEOMImpl_IDisk.hxx b/src/GEOMImpl/GEOMImpl_IDisk.hxx new file mode 100755 index 000000000..3102ea484 --- /dev/null +++ b/src/GEOMImpl/GEOMImpl_IDisk.hxx @@ -0,0 +1,65 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// +//NOTE: This is an intreface to a function for the Disk creation. +// +#include "GEOM_Function.hxx" + +#define DISK_ARG_P1 1 +#define DISK_ARG_P2 2 +#define DISK_ARG_P3 3 + +#define DISK_ARG_CC 4 +#define DISK_ARG_VV 5 +#define DISK_ARG_RR 6 + +#define DISK_ARG_ORIENT 7 + +class GEOMImpl_IDisk +{ + public: + + GEOMImpl_IDisk(Handle(GEOM_Function) theFunction): _func(theFunction) {} + + void SetPoint1(Handle(GEOM_Function) theP) { _func->SetReference(DISK_ARG_P1, theP); } + void SetPoint2(Handle(GEOM_Function) theP) { _func->SetReference(DISK_ARG_P2, theP); } + void SetPoint3(Handle(GEOM_Function) theP) { _func->SetReference(DISK_ARG_P3, theP); } + + void SetCenter(Handle(GEOM_Function) theP) { _func->SetReference(DISK_ARG_CC, theP); } + void SetVector(Handle(GEOM_Function) theV) { _func->SetReference(DISK_ARG_VV, theV); } + + void SetRadius(double theR) { _func->SetReal(DISK_ARG_RR, theR); } + void SetOrientation(double theO) { _func->SetReal(DISK_ARG_ORIENT, theO); } + + Handle(GEOM_Function) GetPoint1() { return _func->GetReference(DISK_ARG_P1); } + Handle(GEOM_Function) GetPoint2() { return _func->GetReference(DISK_ARG_P2); } + Handle(GEOM_Function) GetPoint3() { return _func->GetReference(DISK_ARG_P3); } + + Handle(GEOM_Function) GetCenter() { return _func->GetReference(DISK_ARG_CC); } + Handle(GEOM_Function) GetVector() { return _func->GetReference(DISK_ARG_VV); } + + double GetRadius() { return _func->GetReal(DISK_ARG_RR); } + double GetOrientation() { return _func->GetReal(DISK_ARG_ORIENT); } + + private: + + Handle(GEOM_Function) _func; +}; diff --git a/src/GEOMImpl/GEOMImpl_IEllipse.hxx b/src/GEOMImpl/GEOMImpl_IEllipse.hxx index a87713518..8a199e760 100644 --- a/src/GEOMImpl/GEOMImpl_IEllipse.hxx +++ b/src/GEOMImpl/GEOMImpl_IEllipse.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Ellipse creation. - - +// #include "GEOM_Function.hxx" #define ELLIPS_ARG_CC 1 diff --git a/src/GEOMImpl/GEOMImpl_IFace.hxx b/src/GEOMImpl/GEOMImpl_IFace.hxx new file mode 100755 index 000000000..6782c0891 --- /dev/null +++ b/src/GEOMImpl/GEOMImpl_IFace.hxx @@ -0,0 +1,54 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// +//NOTE: This is an intreface to a function for the Face creation. +// +#include "GEOM_Function.hxx" + +#define FACE_ARG_REF1 1 +#define FACE_ARG_ORIENT 2 + +#define FACE_ARG_PLANE 4 +#define FACE_ARG_H 5 +#define FACE_ARG_W 6 + +class GEOMImpl_IFace +{ + public: + + GEOMImpl_IFace(Handle(GEOM_Function) theFunction): _func(theFunction) {} + + void SetRef1(Handle(GEOM_Function) theRefPoint1) { _func->SetReference(FACE_ARG_REF1, theRefPoint1); } + Handle(GEOM_Function) GetRef1() { return _func->GetReference(FACE_ARG_REF1); } + + void SetOrientation(int theOrientation) { _func->SetReal(FACE_ARG_ORIENT, theOrientation); } + int GetOrientation() { return _func->GetReal(FACE_ARG_ORIENT); } + + void SetH(double theH) { _func->SetReal(FACE_ARG_H, theH); } + void SetW(double theW) { _func->SetReal(FACE_ARG_W, theW); } + + double GetH() { return _func->GetReal(FACE_ARG_H); } + double GetW() { return _func->GetReal(FACE_ARG_W); } + + private: + + Handle(GEOM_Function) _func; +}; diff --git a/src/GEOMImpl/GEOMImpl_IFillet.hxx b/src/GEOMImpl/GEOMImpl_IFillet.hxx index f9deb9b86..975670a8c 100644 --- a/src/GEOMImpl/GEOMImpl_IFillet.hxx +++ b/src/GEOMImpl/GEOMImpl_IFillet.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an interface to a function for the Fillet and creation. - - +// #include "GEOM_Function.hxx" #define FILLET_ARG_SH 1 diff --git a/src/GEOMImpl/GEOMImpl_IFillet2d.hxx b/src/GEOMImpl/GEOMImpl_IFillet2d.hxx new file mode 100755 index 000000000..ba67a6a18 --- /dev/null +++ b/src/GEOMImpl/GEOMImpl_IFillet2d.hxx @@ -0,0 +1,51 @@ +// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +//NOTE: This is an interface to a function for the Fillet2d and creation. + + +#include "GEOM_Function.hxx" + +#define FILLET2D_ARG_SH 1 +#define FILLET2D_ARG_R 2 +#define FILLET2D_ARG_LENG 3 +#define FILLET2D_ARG_LAST 4 + +class GEOMImpl_IFillet2d +{ + public: + + GEOMImpl_IFillet2d(Handle(GEOM_Function) theFunction): _func(theFunction) {} + + void SetShape(Handle(GEOM_Function) theRef) { _func->SetReference(FILLET2D_ARG_SH, theRef); } + Handle(GEOM_Function) GetShape() { return _func->GetReference(FILLET2D_ARG_SH); } + + void SetR(double theR) { _func->SetReal(FILLET2D_ARG_R, theR); } + void SetLength(int theLen) { _func->SetInteger(FILLET2D_ARG_LENG, theLen); } + void SetVertex(int theInd, int theVertex) + { _func->SetInteger(FILLET2D_ARG_LAST + theInd, theVertex); } + + double GetR() { return _func->GetReal(FILLET2D_ARG_R); } + int GetLength() { return _func->GetInteger(FILLET2D_ARG_LENG); } + int GetVertex(int theInd) { return _func->GetInteger(FILLET2D_ARG_LAST + theInd); } + + private: + + Handle(GEOM_Function) _func; +}; diff --git a/src/GEOMImpl/GEOMImpl_IFilling.hxx b/src/GEOMImpl/GEOMImpl_IFilling.hxx index f8fbae645..491555e48 100644 --- a/src/GEOMImpl/GEOMImpl_IFilling.hxx +++ b/src/GEOMImpl/GEOMImpl_IFilling.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Filling operation. - - +// #include "GEOM_Function.hxx" #define FILL_ARG_MINDEG 1 diff --git a/src/GEOMImpl/GEOMImpl_IGlue.hxx b/src/GEOMImpl/GEOMImpl_IGlue.hxx index e6e269221..1ee1515d0 100644 --- a/src/GEOMImpl/GEOMImpl_IGlue.hxx +++ b/src/GEOMImpl/GEOMImpl_IGlue.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // // NOTE: This is an interface to a function for the Glueing of faces - - +// #include "GEOM_Function.hxx" #include diff --git a/src/GEOMImpl/GEOMImpl_IGroupOperations.cxx b/src/GEOMImpl/GEOMImpl_IGroupOperations.cxx index f9c99baa1..1c0a5c1e6 100644 --- a/src/GEOMImpl/GEOMImpl_IGroupOperations.cxx +++ b/src/GEOMImpl/GEOMImpl_IGroupOperations.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_IGroupOperations.hxx b/src/GEOMImpl/GEOMImpl_IGroupOperations.hxx index 9629b5912..272d2c532 100644 --- a/src/GEOMImpl/GEOMImpl_IGroupOperations.hxx +++ b/src/GEOMImpl/GEOMImpl_IGroupOperations.hxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOMImpl_IGroupOperations_HXX_ #define _GEOMImpl_IGroupOperations_HXX_ diff --git a/src/GEOMImpl/GEOMImpl_IHealing.hxx b/src/GEOMImpl/GEOMImpl_IHealing.hxx index 8e52151ca..62e53e804 100755 --- a/src/GEOMImpl/GEOMImpl_IHealing.hxx +++ b/src/GEOMImpl/GEOMImpl_IHealing.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Healing creation. - - +// #include "GEOM_Function.hxx" #include diff --git a/src/GEOMImpl/GEOMImpl_IHealingOperations.cxx b/src/GEOMImpl/GEOMImpl_IHealingOperations.cxx index bf9a60316..6057b7a37 100644 --- a/src/GEOMImpl/GEOMImpl_IHealingOperations.cxx +++ b/src/GEOMImpl/GEOMImpl_IHealingOperations.cxx @@ -1,31 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - - - #ifdef WNT #pragma warning( disable:4786 ) #endif -using namespace std; - #include #include @@ -192,9 +189,9 @@ Handle(GEOM_Object) GEOMImpl_IHealingOperations::ShapeProcess (Handle(GEOM_Objec * ShapeProcess */ //============================================================================= -void GEOMImpl_IHealingOperations::GetShapeProcessParameters (list& theOperations, - list& theParams, - list& theValues) +void GEOMImpl_IHealingOperations::GetShapeProcessParameters (std::list& theOperations, + std::list& theParams, + std::list& theValues) { ShHealOper_ShapeProcess aHealer; TColStd_SequenceOfAsciiString anOperators; @@ -203,7 +200,7 @@ void GEOMImpl_IHealingOperations::GetShapeProcessParameters (list& theOp { for ( Standard_Integer i = 1; i <= anOperators.Length(); i++ ) { - string anOperation = anOperators.Value( i ).ToCString(); + std::string anOperation = anOperators.Value( i ).ToCString(); if ( GetOperatorParameters( anOperation, theParams, theValues ) ) theOperations.push_back( anOperation ); else @@ -227,15 +224,15 @@ void GEOMImpl_IHealingOperations::GetShapeProcessParameters (list& theOp * GetOperatorParameters */ //============================================================================= -bool GEOMImpl_IHealingOperations::GetOperatorParameters( const string theOperation, - list& theParams, - list& theValues ) +bool GEOMImpl_IHealingOperations::GetOperatorParameters( const std::string theOperation, + std::list& theParams, + std::list& theValues ) { ShHealOper_ShapeProcess aHealer; int nbParamValueErrors( 0 ); - list aParams; + std::list aParams; if ( GetParameters( theOperation, aParams ) ) { - for ( list::iterator it = aParams.begin(); it != aParams.end(); ++it ) { + for ( std::list::iterator it = aParams.begin(); it != aParams.end(); ++it ) { TCollection_AsciiString aParam( (Standard_CString)(*it).c_str() ); TCollection_AsciiString aValue; if ( aHealer.GetParameter( aParam, aValue ) ) { @@ -263,8 +260,8 @@ bool GEOMImpl_IHealingOperations::GetOperatorParameters( const string theOperati * GetParameters */ //============================================================================= -bool GEOMImpl_IHealingOperations::GetParameters (const string theOperation, - list& theParams) +bool GEOMImpl_IHealingOperations::GetParameters (const std::string theOperation, + std::list& theParams) { if ( theOperation == "SplitAngle" ) { theParams.push_back( "SplitAngle.Angle" ); diff --git a/src/GEOMImpl/GEOMImpl_IHealingOperations.hxx b/src/GEOMImpl/GEOMImpl_IHealingOperations.hxx index 119873d19..9be4f44f5 100644 --- a/src/GEOMImpl/GEOMImpl_IHealingOperations.hxx +++ b/src/GEOMImpl/GEOMImpl_IHealingOperations.hxx @@ -1,25 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - -using namespace std; - #ifndef _GEOMImpl_IHealingOperations_HXX_ #define _GEOMImpl_IHealingOperations_HXX_ @@ -44,17 +43,17 @@ class GEOMImpl_IHealingOperations : public GEOM_IOperations { const Handle(TColStd_HArray1OfExtendedString)& theValues ); // Retrieve default Shape Process parameters (from resource file) - Standard_EXPORT void GetShapeProcessParameters( list& theOperations, - list& theParams, - list& theValues ); + Standard_EXPORT void GetShapeProcessParameters( std::list& theOperations, + std::list& theParams, + std::list& theValues ); // Retrieve default Shape Process parameters for given operator - Standard_EXPORT bool GetOperatorParameters( const string theOperation, - list& theParams, - list& theValues ); + Standard_EXPORT bool GetOperatorParameters( const std::string theOperation, + std::list& theParams, + std::list& theValues ); // returns all parameters that are valid for the given operation (Shape Process operator) - Standard_EXPORT static bool GetParameters( const string theOperation, list& theParams ); + Standard_EXPORT static bool GetParameters( const std::string theOperation, std::list& theParams ); Standard_EXPORT Handle(GEOM_Object) SuppressFaces( Handle(GEOM_Object) theObject, const Handle(TColStd_HArray1OfInteger)& theFaces); diff --git a/src/GEOMImpl/GEOMImpl_IImportExport.hxx b/src/GEOMImpl/GEOMImpl_IImportExport.hxx index 3ead28531..731e637ec 100644 --- a/src/GEOMImpl/GEOMImpl_IImportExport.hxx +++ b/src/GEOMImpl/GEOMImpl_IImportExport.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Import Export operation. - - +// #include "GEOM_Function.hxx" #define EXP_ARG_REF 1 diff --git a/src/GEOMImpl/GEOMImpl_IInsertOperations.cxx b/src/GEOMImpl/GEOMImpl_IInsertOperations.cxx index 9339f4a47..5fb461ff7 100644 --- a/src/GEOMImpl/GEOMImpl_IInsertOperations.cxx +++ b/src/GEOMImpl/GEOMImpl_IInsertOperations.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include @@ -163,7 +165,7 @@ void GEOMImpl_IInsertOperations::Export OCC_CATCH_SIGNALS; #endif if (!GetSolver()->ComputeFunction(aFunction)) { - SetErrorCode("Export driver failed"); + SetErrorCode("Not enough space on disk, or you haven't permissions to write this directory"); return; } } diff --git a/src/GEOMImpl/GEOMImpl_IInsertOperations.hxx b/src/GEOMImpl/GEOMImpl_IInsertOperations.hxx index 7660da21e..aba0c227f 100644 --- a/src/GEOMImpl/GEOMImpl_IInsertOperations.hxx +++ b/src/GEOMImpl/GEOMImpl_IInsertOperations.hxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOMImpl_IInsertOperations_HXX_ #define _GEOMImpl_IInsertOperations_HXX_ diff --git a/src/GEOMImpl/GEOMImpl_ILine.hxx b/src/GEOMImpl/GEOMImpl_ILine.hxx index 99a60b778..faa1d462c 100644 --- a/src/GEOMImpl/GEOMImpl_ILine.hxx +++ b/src/GEOMImpl/GEOMImpl_ILine.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the vector creation. - - +// #include "GEOM_Function.hxx" #define LINE_ARG_PNT1 1 diff --git a/src/GEOMImpl/GEOMImpl_ILocalOperations.cxx b/src/GEOMImpl/GEOMImpl_ILocalOperations.cxx index 2ec4e5e39..9e552229a 100644 --- a/src/GEOMImpl/GEOMImpl_ILocalOperations.cxx +++ b/src/GEOMImpl/GEOMImpl_ILocalOperations.cxx @@ -1,25 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - -using namespace std; - #include #include @@ -30,9 +29,11 @@ using namespace std; #include #include +#include #include #include +#include #include #include @@ -138,7 +139,7 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeFilletAll */ //============================================================================= Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeFilletEdges - (Handle(GEOM_Object) theShape, double theR, list theEdges) + (Handle(GEOM_Object) theShape, double theR, std::list theEdges) { SetErrorCode(KO); @@ -164,7 +165,7 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeFilletEdges aCI.SetLength(aLen); int ind = 1; - list::iterator it = theEdges.begin(); + std::list::iterator it = theEdges.begin(); for (; it != theEdges.end(); it++, ind++) { aCI.SetEdge(ind, (*it)); } @@ -207,7 +208,7 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeFilletEdges */ //============================================================================= Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeFilletEdgesR1R2 - (Handle(GEOM_Object) theShape, double theR1, double theR2, list theEdges) + (Handle(GEOM_Object) theShape, double theR1, double theR2, std::list theEdges) { SetErrorCode(KO); @@ -234,7 +235,7 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeFilletEdgesR1R2 aCI.SetLength(aLen); int ind = 1; - list::iterator it = theEdges.begin(); + std::list::iterator it = theEdges.begin(); for (; it != theEdges.end(); it++, ind++) { aCI.SetEdge(ind, (*it)); } @@ -278,7 +279,7 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeFilletEdgesR1R2 */ //============================================================================= Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeFilletFaces - (Handle(GEOM_Object) theShape, double theR, list theFaces) + (Handle(GEOM_Object) theShape, double theR, std::list theFaces) { SetErrorCode(KO); @@ -304,7 +305,7 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeFilletFaces aCI.SetLength(aLen); int ind = 1; - list::iterator it = theFaces.begin(); + std::list::iterator it = theFaces.begin(); for (; it != theFaces.end(); it++, ind++) { aCI.SetFace(ind, (*it)); } @@ -347,7 +348,7 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeFilletFaces */ //============================================================================= Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeFilletFacesR1R2 - (Handle(GEOM_Object) theShape, double theR1, double theR2, list theFaces) + (Handle(GEOM_Object) theShape, double theR1, double theR2, std::list theFaces) { SetErrorCode(KO); @@ -374,7 +375,7 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeFilletFacesR1R2 aCI.SetLength(aLen); int ind = 1; - list::iterator it = theFaces.begin(); + std::list::iterator it = theFaces.begin(); for (; it != theFaces.end(); it++, ind++) { aCI.SetFace(ind, (*it)); } @@ -411,6 +412,75 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeFilletFacesR1R2 return aFillet; } +//============================================================================= +/*! + * MakeFillet2D + */ +//============================================================================= +Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeFillet2D + (Handle(GEOM_Object) theShape, double theR, std::list theVertexes) +{ + SetErrorCode(KO); + + //Add a new Fillet object + Handle(GEOM_Object) aFillet2D = GetEngine()->AddObject(GetDocID(), GEOM_FILLET_2D); + + //Add a new Fillet function + Handle(GEOM_Function) aFunction = + aFillet2D->AddFunction(GEOMImpl_Fillet2dDriver::GetID(), FILLET_2D_SHAPE_VERTEXES); + if (aFunction.IsNull()) return NULL; + + //Check if the function is set correctly + if (aFunction->GetDriverGUID() != GEOMImpl_Fillet2dDriver::GetID()) return NULL; + + GEOMImpl_IFillet2d aCI (aFunction); + + Handle(GEOM_Function) aRefShape = theShape->GetLastFunction(); + if (aRefShape.IsNull()) return NULL; + + aCI.SetShape(aRefShape); + aCI.SetR(theR); + int aLen = theVertexes.size(); + aCI.SetLength(aLen); + + int ind = 1; + std::list::iterator it = theVertexes.begin(); + for (; it != theVertexes.end(); it++, ind++) { + aCI.SetVertex(ind, (*it)); + } + + //Compute the Fillet value + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + if (!GetSolver()->ComputeFunction(aFunction)) { + SetErrorCode("2D Fillet driver failed"); + return NULL; + } + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return NULL; + } + + //Make a Python command + GEOM::TPythonDump pd (aFunction); + pd << aFillet2D << " = geompy.MakeFillet2D(" << theShape + << ", " << theR << ", ["; + + it = theVertexes.begin(); + pd << (*it++); + while (it != theVertexes.end()) { + pd << ", " << (*it++); + } + pd << "])"; + + SetErrorCode(OK); + return aFillet2D; +} + //============================================================================= /*! * MakeChamferAll @@ -585,7 +655,7 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeChamferEdgeAD //============================================================================= Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeChamferFaces (Handle(GEOM_Object) theShape, double theD1, double theD2, - list theFaces) + std::list theFaces) { SetErrorCode(KO); @@ -612,7 +682,7 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeChamferFaces aCI.SetLength(aLen); int ind = 1; - list::iterator it = theFaces.begin(); + std::list::iterator it = theFaces.begin(); for (; it != theFaces.end(); it++, ind++) { aCI.SetFace(ind, (*it)); } @@ -656,7 +726,7 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeChamferFaces //============================================================================= Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeChamferFacesAD (Handle(GEOM_Object) theShape, double theD, double theAngle, - list theFaces) + std::list theFaces) { SetErrorCode(KO); @@ -683,7 +753,7 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeChamferFacesAD aCI.SetLength(aLen); int ind = 1; - list::iterator it = theFaces.begin(); + std::list::iterator it = theFaces.begin(); for (; it != theFaces.end(); it++, ind++) { aCI.SetFace(ind, (*it)); } @@ -727,7 +797,7 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeChamferFacesAD //============================================================================= Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeChamferEdges (Handle(GEOM_Object) theShape, double theD1, double theD2, - list theEdges) + std::list theEdges) { SetErrorCode(KO); @@ -737,16 +807,16 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeChamferEdges //Add a new Chamfer function Handle(GEOM_Function) aFunction = aChamfer->AddFunction(GEOMImpl_ChamferDriver::GetID(), CHAMFER_SHAPE_EDGES); - if (aFunction.IsNull()) { return NULL; cout << "Edges Function is NULL!!!" << endl; } + if (aFunction.IsNull()) { MESSAGE ( "Edges Function is NULL!!!" ); return NULL;} //Check if the function is set correctly if (aFunction->GetDriverGUID() != GEOMImpl_ChamferDriver::GetID()) - { return NULL; cout << "Chamfer Driver is NULL!!!" << endl; } + { MESSAGE ( "Chamfer Driver is NULL!!!" ); return NULL; } GEOMImpl_IChamfer aCI (aFunction); Handle(GEOM_Function) aRefShape = theShape->GetLastFunction(); - if (aRefShape.IsNull()) { return NULL; cout << "Shape is NULL!!!" << endl; } + if (aRefShape.IsNull()) { MESSAGE ("Shape is NULL!!!"); return NULL;} aCI.SetShape(aRefShape); aCI.SetD1(theD1); @@ -755,7 +825,7 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeChamferEdges aCI.SetLength(aLen); int ind = 1; - list::iterator it = theEdges.begin(); + std::list::iterator it = theEdges.begin(); for (; it != theEdges.end(); it++, ind++) { aCI.SetEdge(ind, (*it)); } @@ -799,7 +869,7 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeChamferEdges //============================================================================= Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeChamferEdgesAD (Handle(GEOM_Object) theShape, double theD, double theAngle, - list theEdges) + std::list theEdges) { SetErrorCode(KO); @@ -809,16 +879,16 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeChamferEdgesAD //Add a new Chamfer function Handle(GEOM_Function) aFunction = aChamfer->AddFunction(GEOMImpl_ChamferDriver::GetID(), CHAMFER_SHAPE_EDGES_AD); - if (aFunction.IsNull()) { return NULL; cout << "Edges Function is NULL!!!" << endl; } + if (aFunction.IsNull()) { MESSAGE ( "Edges Function is NULL!!!" ); return NULL; } //Check if the function is set correctly if (aFunction->GetDriverGUID() != GEOMImpl_ChamferDriver::GetID()) - { return NULL; cout << "Chamfer Driver is NULL!!!" << endl; } + { MESSAGE("Chamfer Driver is NULL!!!"); return NULL;} GEOMImpl_IChamfer aCI (aFunction); Handle(GEOM_Function) aRefShape = theShape->GetLastFunction(); - if (aRefShape.IsNull()) { return NULL; cout << "Shape is NULL!!!" << endl; } + if (aRefShape.IsNull()) { MESSAGE ("Shape is NULL!!!"); return NULL;} aCI.SetShape(aRefShape); aCI.SetD(theD); @@ -827,7 +897,7 @@ Handle(GEOM_Object) GEOMImpl_ILocalOperations::MakeChamferEdgesAD aCI.SetLength(aLen); int ind = 1; - list::iterator it = theEdges.begin(); + std::list::iterator it = theEdges.begin(); for (; it != theEdges.end(); it++, ind++) { aCI.SetEdge(ind, (*it)); } diff --git a/src/GEOMImpl/GEOMImpl_ILocalOperations.hxx b/src/GEOMImpl/GEOMImpl_ILocalOperations.hxx index ba1972e37..15acc6eaf 100644 --- a/src/GEOMImpl/GEOMImpl_ILocalOperations.hxx +++ b/src/GEOMImpl/GEOMImpl_ILocalOperations.hxx @@ -1,28 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOMImpl_ILocalOperations_HXX_ #define _GEOMImpl_ILocalOperations_HXX_ -using namespace std; - #include "Utils_SALOME_Exception.hxx" #include "GEOM_IOperations.hxx" #include "GEOM_Engine.hxx" @@ -38,15 +37,17 @@ class GEOMImpl_ILocalOperations : public GEOM_IOperations { Standard_EXPORT Handle(GEOM_Object) MakeFilletAll (Handle(GEOM_Object) theShape, double theR); Standard_EXPORT Handle(GEOM_Object) MakeFilletEdges (Handle(GEOM_Object) theShape, double theR, - list theEdges); + std::list theEdges); Standard_EXPORT Handle(GEOM_Object) MakeFilletEdgesR1R2 (Handle(GEOM_Object) theShape, double theR1, double theR2, - list theEdges); + std::list theEdges); Standard_EXPORT Handle(GEOM_Object) MakeFilletFaces (Handle(GEOM_Object) theShape, double theR, - list theFaces); + std::list theFaces); Standard_EXPORT Handle(GEOM_Object) MakeFilletFacesR1R2 (Handle(GEOM_Object) theShape, double theR1, double theR2, - list theFaces); + std::list theFaces); + Standard_EXPORT Handle(GEOM_Object) MakeFillet2D (Handle(GEOM_Object) theShape, double theR, + std::list theVertexes); Standard_EXPORT Handle(GEOM_Object) MakeChamferAll (Handle(GEOM_Object) theShape, double theD); Standard_EXPORT Handle(GEOM_Object) MakeChamferEdge (Handle(GEOM_Object) theShape, @@ -56,27 +57,27 @@ class GEOMImpl_ILocalOperations : public GEOM_IOperations { double theD, double theAngle, int theFace1, int theFace2); Standard_EXPORT Handle(GEOM_Object) MakeChamferFaces (Handle(GEOM_Object) theShape, - double theD1, double theD2, - list theFaces); + double theD1, double theD2, + std::list theFaces); Standard_EXPORT Handle(GEOM_Object) MakeChamferFacesAD (Handle(GEOM_Object) theShape, - double theD, double theAngle, - list theFaces); + double theD, double theAngle, + std::list theFaces); Standard_EXPORT Handle(GEOM_Object) MakeChamferEdges (Handle(GEOM_Object) theShape, - double theD1, double theD2, - list theEdges); + double theD1, double theD2, + std::list theEdges); Standard_EXPORT Handle(GEOM_Object) MakeChamferEdgesAD (Handle(GEOM_Object) theShape, - double theD, double theAngle, - list theEdges); + double theD, double theAngle, + std::list theEdges); Standard_EXPORT Handle(GEOM_Object) MakeArchimede (Handle(GEOM_Object) theShape, - double theWeight, double theWaterDensity, - double theMeshingDeflection); - + double theWeight, double theWaterDensity, + double theMeshingDeflection); + Standard_EXPORT Standard_Integer GetSubShapeIndex (Handle(GEOM_Object) theShape, - Handle(GEOM_Object) theSubShape); - + Handle(GEOM_Object) theSubShape); + Standard_EXPORT static bool GetSubShape (const TopoDS_Shape& theShape, - const int theIndex, - TopoDS_Shape& theSubShape); + const int theIndex, + TopoDS_Shape& theSubShape); }; #endif diff --git a/src/GEOMImpl/GEOMImpl_IMarker.hxx b/src/GEOMImpl/GEOMImpl_IMarker.hxx index 1fa2f49d5..54265314f 100644 --- a/src/GEOMImpl/GEOMImpl_IMarker.hxx +++ b/src/GEOMImpl/GEOMImpl_IMarker.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an interface to a function for the local coordinate system creation. - - +// #include "GEOM_Function.hxx" #define CS_ARG_O_X 1 diff --git a/src/GEOMImpl/GEOMImpl_IMeasure.hxx b/src/GEOMImpl/GEOMImpl_IMeasure.hxx index db615f1f3..c6c8ab74e 100644 --- a/src/GEOMImpl/GEOMImpl_IMeasure.hxx +++ b/src/GEOMImpl/GEOMImpl_IMeasure.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // // NOTE: This is an interface to a functions for the Measurement - - +// #include "GEOM_Function.hxx" //#define MEASURE_ARG_BASE 1 diff --git a/src/GEOMImpl/GEOMImpl_IMeasureOperations.cxx b/src/GEOMImpl/GEOMImpl_IMeasureOperations.cxx index 67e26c014..d77245838 100644 --- a/src/GEOMImpl/GEOMImpl_IMeasureOperations.cxx +++ b/src/GEOMImpl/GEOMImpl_IMeasureOperations.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include @@ -87,9 +88,24 @@ #include #include +#include +#include +#include +#include +#include + #include #include // CAREFUL ! position of this file is critic : see Lucien PIGNOLONI / OCC +#include +#include +#include +#include +#include +#include +#include + + //============================================================================= /*! * Constructor @@ -1296,6 +1312,306 @@ TCollection_AsciiString GEOMImpl_IMeasureOperations::WhatIs (Handle(GEOM_Object) return Astr; } + +//======================================================================= +//function : CheckSingularCase +//purpose : auxilary for GetMinDistance() +// workaround for bugs 19899, 19908 and 19910 from Mantis +//======================================================================= +static double CheckSingularCase(const TopoDS_Shape& aSh1, + const TopoDS_Shape& aSh2, + gp_Pnt& Ptmp1, gp_Pnt& Ptmp2) +{ + bool IsChange1 = false; + double AddDist1 = 0.0; + TopExp_Explorer anExp; + TopoDS_Shape tmpSh1, tmpSh2; + int nbf = 0; + for ( anExp.Init( aSh1, TopAbs_FACE ); anExp.More(); anExp.Next() ) { + nbf++; + tmpSh1 = anExp.Current(); + } + if(nbf==1) { + TopoDS_Shape sh = aSh1; + while(sh.ShapeType()==TopAbs_COMPOUND) { + TopoDS_Iterator it(sh); + sh = it.Value(); + } + Handle(Geom_Surface) S = BRep_Tool::Surface(TopoDS::Face(tmpSh1)); + if( S->IsKind(STANDARD_TYPE(Geom_SphericalSurface)) || + S->IsKind(STANDARD_TYPE(Geom_ToroidalSurface)) ) { + if( sh.ShapeType()==TopAbs_SHELL || sh.ShapeType()==TopAbs_FACE ) { + // non solid case + double U1,U2,V1,V2; + S->Bounds(U1,U2,V1,V2); + Handle(Geom_RectangularTrimmedSurface) TrS1 = + new Geom_RectangularTrimmedSurface(S,U1,(U1+U2)/2.,V1,V2); + Handle(Geom_RectangularTrimmedSurface) TrS2 = + new Geom_RectangularTrimmedSurface(S,(U1+U2)/2.,U2,V1,V2); + BRep_Builder B; + TopoDS_Face F1,F2; + TopoDS_Compound Comp; + B.MakeCompound(Comp); + B.MakeFace(F1,TrS1,1.e-7); + B.Add(Comp,F1); + B.MakeFace(F2,TrS2,1.e-7); + B.Add(Comp,F2); + Handle(ShapeFix_Shape) sfs = new ShapeFix_Shape; + sfs->Init(Comp); + sfs->SetPrecision(1.e-6); + sfs->SetMaxTolerance(1.0); + sfs->Perform(); + tmpSh1 = sfs->Shape(); + IsChange1 = true; + } + else { + if( S->IsKind(STANDARD_TYPE(Geom_SphericalSurface)) ) { + Handle(Geom_SphericalSurface) SS = Handle(Geom_SphericalSurface)::DownCast(S); + gp_Pnt PC = SS->Location(); + BRep_Builder B; + TopoDS_Vertex V; + B.MakeVertex(V,PC,1.e-7); + tmpSh1 = V; + AddDist1 = SS->Radius(); + IsChange1 = true; + } + else { + Handle(Geom_ToroidalSurface) TS = Handle(Geom_ToroidalSurface)::DownCast(S); + gp_Ax3 ax3 = TS->Position(); + Handle(Geom_Circle) C = new Geom_Circle(ax3.Ax2(),TS->MajorRadius()); + BRep_Builder B; + TopoDS_Edge E; + B.MakeEdge(E,C,1.e-7); + tmpSh1 = E; + AddDist1 = TS->MinorRadius(); + IsChange1 = true; + } + } + } + else + tmpSh1 = aSh1; + } + else + tmpSh1 = aSh1; + bool IsChange2 = false; + double AddDist2 = 0.0; + nbf = 0; + for ( anExp.Init( aSh2, TopAbs_FACE ); anExp.More(); anExp.Next() ) { + nbf++; + tmpSh2 = anExp.Current(); + } + if(nbf==1) { + TopoDS_Shape sh = aSh2; + while(sh.ShapeType()==TopAbs_COMPOUND) { + TopoDS_Iterator it(sh); + sh = it.Value(); + } + Handle(Geom_Surface) S = BRep_Tool::Surface(TopoDS::Face(tmpSh2)); + if( S->IsKind(STANDARD_TYPE(Geom_SphericalSurface)) || + S->IsKind(STANDARD_TYPE(Geom_ToroidalSurface)) ) { + if( sh.ShapeType()==TopAbs_SHELL || sh.ShapeType()==TopAbs_FACE ) { + // non solid case + double U1,U2,V1,V2; + S->Bounds(U1,U2,V1,V2); + Handle(Geom_RectangularTrimmedSurface) TrS1 = + new Geom_RectangularTrimmedSurface(S,U1,(U1+U2)/2.,V1,V2); + Handle(Geom_RectangularTrimmedSurface) TrS2 = + new Geom_RectangularTrimmedSurface(S,(U1+U2)/2.,U2,V1,V2); + BRep_Builder B; + TopoDS_Face F1,F2; + TopoDS_Compound Comp; + B.MakeCompound(Comp); + B.MakeFace(F1,TrS1,1.e-7); + B.Add(Comp,F1); + B.MakeFace(F2,TrS2,1.e-7); + B.Add(Comp,F2); + Handle(ShapeFix_Shape) sfs = new ShapeFix_Shape; + sfs->Init(Comp); + sfs->SetPrecision(1.e-6); + sfs->SetMaxTolerance(1.0); + sfs->Perform(); + tmpSh2 = sfs->Shape(); + IsChange2 = true; + } + else { + if( S->IsKind(STANDARD_TYPE(Geom_SphericalSurface)) ) { + Handle(Geom_SphericalSurface) SS = Handle(Geom_SphericalSurface)::DownCast(S); + gp_Pnt PC = SS->Location(); + BRep_Builder B; + TopoDS_Vertex V; + B.MakeVertex(V,PC,1.e-7); + tmpSh2 = V; + AddDist2 = SS->Radius(); + IsChange2 = true; + } + else if( S->IsKind(STANDARD_TYPE(Geom_ToroidalSurface)) ) { + Handle(Geom_ToroidalSurface) TS = Handle(Geom_ToroidalSurface)::DownCast(S); + gp_Ax3 ax3 = TS->Position(); + Handle(Geom_Circle) C = new Geom_Circle(ax3.Ax2(),TS->MajorRadius()); + BRep_Builder B; + TopoDS_Edge E; + B.MakeEdge(E,C,1.e-7); + tmpSh2 = E; + AddDist2 = TS->MinorRadius(); + IsChange2 = true; + } + } + } + else + tmpSh2 = aSh2; + } + else + tmpSh2 = aSh2; + + if( !IsChange1 && !IsChange2 ) + return -2.0; + + BRepExtrema_DistShapeShape dst(tmpSh1,tmpSh2); + if (dst.IsDone()) { + double MinDist = 1.e9; + gp_Pnt PMin1, PMin2, P1, P2; + for (int i = 1; i <= dst.NbSolution(); i++) { + P1 = dst.PointOnShape1(i); + P2 = dst.PointOnShape2(i); + Standard_Real Dist = P1.Distance(P2); + if (MinDist > Dist) { + MinDist = Dist; + PMin1 = P1; + PMin2 = P2; + } + } + if(MinDist<1.e-7) { + Ptmp1 = PMin1; + Ptmp2 = PMin2; + } + else { + gp_Dir aDir(gp_Vec(PMin1,PMin2)); + if( MinDist > (AddDist1+AddDist2) ) { + Ptmp1 = gp_Pnt( PMin1.X() + aDir.X()*AddDist1, + PMin1.Y() + aDir.Y()*AddDist1, + PMin1.Z() + aDir.Z()*AddDist1 ); + Ptmp2 = gp_Pnt( PMin2.X() - aDir.X()*AddDist2, + PMin2.Y() - aDir.Y()*AddDist2, + PMin2.Z() - aDir.Z()*AddDist2 ); + return (MinDist - AddDist1 - AddDist2); + } + else { + if( AddDist1 > 0 ) { + Ptmp1 = gp_Pnt( PMin1.X() + aDir.X()*AddDist1, + PMin1.Y() + aDir.Y()*AddDist1, + PMin1.Z() + aDir.Z()*AddDist1 ); + Ptmp2 = Ptmp1; + } + else { + Ptmp2 = gp_Pnt( PMin2.X() - aDir.X()*AddDist2, + PMin2.Y() - aDir.Y()*AddDist2, + PMin2.Z() - aDir.Z()*AddDist2 ); + Ptmp1 = Ptmp2; + } + } + } + double res = MinDist - AddDist1 - AddDist2; + if(res<0.) res = 0.0; + return res; + } + return -2.0; +} +/* old variant +static bool CheckSingularCase(const TopoDS_Shape& aSh1, + const TopoDS_Shape& aSh2, + gp_Pnt& Ptmp) +{ + TopExp_Explorer anExp; + TopoDS_Shape tmpSh1, tmpSh2; + int nbf = 0; + for ( anExp.Init( aSh1, TopAbs_FACE ); anExp.More(); anExp.Next() ) { + nbf++; + tmpSh1 = anExp.Current(); + } + if(nbf==1) { + Handle(Geom_Surface) S1 = BRep_Tool::Surface(TopoDS::Face(tmpSh1)); + if( S1->IsKind(STANDARD_TYPE(Geom_SphericalSurface)) || + S1->IsKind(STANDARD_TYPE(Geom_ToroidalSurface)) ) { + nbf = 0; + for ( anExp.Init( aSh2, TopAbs_FACE ); anExp.More(); anExp.Next() ) { + nbf++; + tmpSh2 = anExp.Current(); + Handle(Geom_Surface) S2 = BRep_Tool::Surface(TopoDS::Face(tmpSh2)); + GeomAPI_IntSS ISS(S1,S2,1.e-7); + if(ISS.IsDone()) { + for(int i=1; i<=ISS.NbLines(); i++) { + Handle(Geom_Curve) C3d = ISS.Line(i); + BRep_Builder B; + TopoDS_Edge E; + B.MakeEdge(E,C3d,1.e-7); + BRepExtrema_DistShapeShape dst(tmpSh2,E); + if (dst.IsDone()) { + gp_Pnt PMin1, PMin2, P1, P2; + double MinDist = 1.e9; + for (int i = 1; i <= dst.NbSolution(); i++) { + P1 = dst.PointOnShape1(i); + P2 = dst.PointOnShape2(i); + Standard_Real Dist = P1.Distance(P2); + if (MinDist > Dist) { + MinDist = Dist; + Ptmp = P1; + } + } + if(MinDist<1.e-7) + return true; + } + } + } + } + } + } + nbf = 0; + for ( anExp.Init( aSh2, TopAbs_FACE ); anExp.More(); anExp.Next() ) { + nbf++; + tmpSh1 = anExp.Current(); + } + if(nbf==1) { + Handle(Geom_Surface) S1 = BRep_Tool::Surface(TopoDS::Face(tmpSh1)); + if( S1->IsKind(STANDARD_TYPE(Geom_SphericalSurface)) || + S1->IsKind(STANDARD_TYPE(Geom_ToroidalSurface)) ) { + nbf = 0; + for ( anExp.Init( aSh1, TopAbs_FACE ); anExp.More(); anExp.Next() ) { + nbf++; + tmpSh2 = anExp.Current(); + Handle(Geom_Surface) S2 = BRep_Tool::Surface(TopoDS::Face(tmpSh2)); + GeomAPI_IntSS ISS(S1,S2,1.e-7); + if(ISS.IsDone()) { + for(int i=1; i<=ISS.NbLines(); i++) { + Handle(Geom_Curve) C3d = ISS.Line(i); + BRep_Builder B; + TopoDS_Edge E; + B.MakeEdge(E,C3d,1.e-7); + BRepExtrema_DistShapeShape dst(tmpSh2,E); + if (dst.IsDone()) { + gp_Pnt P1,P2; + double MinDist = 1.e9; + for (int i = 1; i <= dst.NbSolution(); i++) { + P1 = dst.PointOnShape1(i); + P2 = dst.PointOnShape2(i); + Standard_Real Dist = P1.Distance(P2); + if (MinDist > Dist) { + MinDist = Dist; + Ptmp = P1; + } + } + if(MinDist<1.e-7) + return true; + } + } + } + } + } + } + return false; +} +*/ + + //============================================================================= /*! * GetMinDistance @@ -1327,6 +1643,18 @@ Standard_Real GEOMImpl_IMeasureOperations::GetMinDistance #if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 OCC_CATCH_SIGNALS; #endif + + // skl 30.06.2008 + // additional workaround for bugs 19899, 19908 and 19910 from Mantis + gp_Pnt Ptmp1, Ptmp2; + double dist = CheckSingularCase(aShape1, aShape2, Ptmp1, Ptmp2); + if(dist>-1.0) { + Ptmp1.Coord(X1, Y1, Z1); + Ptmp2.Coord(X2, Y2, Z2); + SetErrorCode(OK); + return dist; + } + BRepExtrema_DistShapeShape dst (aShape1, aShape2); if (dst.IsDone()) { gp_Pnt PMin1, PMin2, P1, P2; @@ -1440,7 +1768,8 @@ Standard_Real GEOMImpl_IMeasureOperations::GetAngle (Handle(GEOM_Object) theLine Handle(Geom_Curve) C1 = BRep_Tool::Curve(E1,fp,lp); Handle(Geom_Curve) C2 = BRep_Tool::Curve(E2,fp,lp); - if (!C1->IsKind(STANDARD_TYPE(Geom_Line)) || + if ( C1.IsNull() || C2.IsNull() || + !C1->IsKind(STANDARD_TYPE(Geom_Line)) || !C2->IsKind(STANDARD_TYPE(Geom_Line))) { SetErrorCode("The edges must be linear"); @@ -1467,6 +1796,317 @@ Standard_Real GEOMImpl_IMeasureOperations::GetAngle (Handle(GEOM_Object) theLine return anAngle; } + +//============================================================================= +/*! + * CurveCurvatureByParam + */ +//============================================================================= +Standard_Real GEOMImpl_IMeasureOperations::CurveCurvatureByParam + (Handle(GEOM_Object) theCurve, Standard_Real& theParam) +{ + SetErrorCode(KO); + Standard_Real aRes = -1.0; + + if(theCurve.IsNull()) return aRes; + + Handle(GEOM_Function) aRefShape = theCurve->GetLastFunction(); + if(aRefShape.IsNull()) return aRes; + + TopoDS_Shape aShape = aRefShape->GetValue(); + if(aShape.IsNull()) { + SetErrorCode("One of Objects has NULL Shape"); + return aRes; + } + + Standard_Real aFP, aLP, aP; + Handle(Geom_Curve) aCurve = BRep_Tool::Curve(TopoDS::Edge(aShape), aFP, aLP); + aP = aFP + (aLP - aFP) * theParam; + + if(aCurve.IsNull()) return aRes; + + //Compute curvature + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + GeomLProp_CLProps Prop = GeomLProp_CLProps + (aCurve, aP, 2, Precision::Confusion()); + aRes = fabs(Prop.Curvature()); + SetErrorCode(OK); + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return aRes; + } + + if( aRes > Precision::Confusion() ) + aRes = 1/aRes; + else + aRes = RealLast(); + + return aRes; +} + + +//============================================================================= +/*! + * CurveCurvatureByPoint + */ +//============================================================================= +Standard_Real GEOMImpl_IMeasureOperations::CurveCurvatureByPoint + (Handle(GEOM_Object) theCurve, Handle(GEOM_Object) thePoint) +{ + SetErrorCode(KO); + Standard_Real aRes = -1.0; + + if( theCurve.IsNull() || thePoint.IsNull() ) return aRes; + + Handle(GEOM_Function) aRefCurve = theCurve->GetLastFunction(); + Handle(GEOM_Function) aRefPoint = thePoint->GetLastFunction(); + if( aRefCurve.IsNull() || aRefPoint.IsNull() ) return aRes; + + TopoDS_Edge anEdge = TopoDS::Edge(aRefCurve->GetValue()); + TopoDS_Vertex aPnt = TopoDS::Vertex(aRefPoint->GetValue()); + if( anEdge.IsNull() || aPnt.IsNull() ) { + SetErrorCode("One of Objects has NULL Shape"); + return aRes; + } + + Standard_Real aFP, aLP; + Handle(Geom_Curve) aCurve = BRep_Tool::Curve(anEdge, aFP, aLP); + if(aCurve.IsNull()) return aRes; + gp_Pnt aPoint = BRep_Tool::Pnt(aPnt); + + //Compute curvature + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + GeomAPI_ProjectPointOnCurve PPC(aPoint, aCurve, aFP, aLP); + if(PPC.NbPoints()>0) { + GeomLProp_CLProps Prop = GeomLProp_CLProps + (aCurve, PPC.LowerDistanceParameter(), 2, Precision::Confusion()); + aRes = fabs(Prop.Curvature()); + SetErrorCode(OK); + } + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return aRes; + } + + if( aRes > Precision::Confusion() ) + aRes = 1/aRes; + else + aRes = RealLast(); + + return aRes; +} + + +//============================================================================= +/*! + * getSurfaceCurvatures + */ +//============================================================================= +Standard_Real GEOMImpl_IMeasureOperations::getSurfaceCurvatures + (const Handle(Geom_Surface)& aSurf, + Standard_Real theUParam, + Standard_Real theVParam, + Standard_Boolean theNeedMaxCurv) +{ + SetErrorCode(KO); + Standard_Real aRes = 1.0; + + if (aSurf.IsNull()) return aRes; + + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + GeomLProp_SLProps Prop = GeomLProp_SLProps + (aSurf, theUParam, theVParam, 2, Precision::Confusion()); + if(Prop.IsCurvatureDefined()) { + if(Prop.IsUmbilic()) { + //cout<<"is umbilic"<GetMessageString()); + return aRes; + } + + if( fabs(aRes) > Precision::Confusion() ) + aRes = 1/aRes; + else + aRes = RealLast(); + + return aRes; +} + + +//============================================================================= +/*! + * MaxSurfaceCurvatureByParam + */ +//============================================================================= +Standard_Real GEOMImpl_IMeasureOperations::MaxSurfaceCurvatureByParam + (Handle(GEOM_Object) theSurf, + Standard_Real& theUParam, + Standard_Real& theVParam) +{ + SetErrorCode(KO); + Standard_Real aRes = -1.0; + + if (theSurf.IsNull()) return aRes; + + Handle(GEOM_Function) aRefShape = theSurf->GetLastFunction(); + if(aRefShape.IsNull()) return aRes; + + TopoDS_Shape aShape = aRefShape->GetValue(); + if(aShape.IsNull()) { + SetErrorCode("One of Objects has NULL Shape"); + return aRes; + } + + TopoDS_Face F = TopoDS::Face(aShape); + Handle(Geom_Surface) aSurf = BRep_Tool::Surface(F); + + //Compute the parameters + Standard_Real U1,U2,V1,V2; + ShapeAnalysis::GetFaceUVBounds(F,U1,U2,V1,V2); + Standard_Real U = U1 + (U2-U1)*theUParam; + Standard_Real V = V1 + (V2-V1)*theVParam; + + return getSurfaceCurvatures(aSurf, U, V, true); +} + + +//============================================================================= +/*! + * MaxSurfaceCurvatureByPoint + */ +//============================================================================= +Standard_Real GEOMImpl_IMeasureOperations::MaxSurfaceCurvatureByPoint + (Handle(GEOM_Object) theSurf, Handle(GEOM_Object) thePoint) +{ + SetErrorCode(KO); + Standard_Real aRes = -1.0; + + if( theSurf.IsNull() || thePoint.IsNull() ) return aRes; + + Handle(GEOM_Function) aRefShape = theSurf->GetLastFunction(); + Handle(GEOM_Function) aRefPoint = thePoint->GetLastFunction(); + if( aRefShape.IsNull() || aRefPoint.IsNull() ) return aRes; + + TopoDS_Face aFace = TopoDS::Face(aRefShape->GetValue()); + TopoDS_Vertex aPnt = TopoDS::Vertex(aRefPoint->GetValue()); + if( aFace.IsNull() || aPnt.IsNull() ) { + SetErrorCode("One of Objects has NULL Shape"); + return 0; + } + + Handle(Geom_Surface) aSurf = BRep_Tool::Surface(aFace); + if(aSurf.IsNull()) return aRes; + gp_Pnt aPoint = BRep_Tool::Pnt(aPnt); + + //Compute the parameters + ShapeAnalysis_Surface sas(aSurf); + gp_Pnt2d UV = sas.ValueOfUV(aPoint,Precision::Confusion()); + + return getSurfaceCurvatures(aSurf, UV.X(), UV.Y(), true); +} + + +//============================================================================= +/*! + * MinSurfaceCurvatureByParam + */ +//============================================================================= +Standard_Real GEOMImpl_IMeasureOperations::MinSurfaceCurvatureByParam + (Handle(GEOM_Object) theSurf, + Standard_Real& theUParam, + Standard_Real& theVParam) +{ + SetErrorCode(KO); + Standard_Real aRes = -1.0; + + if (theSurf.IsNull()) return aRes; + + Handle(GEOM_Function) aRefShape = theSurf->GetLastFunction(); + if(aRefShape.IsNull()) return aRes; + + TopoDS_Shape aShape = aRefShape->GetValue(); + if(aShape.IsNull()) { + SetErrorCode("One of Objects has NULL Shape"); + return aRes; + } + + TopoDS_Face F = TopoDS::Face(aShape); + Handle(Geom_Surface) aSurf = BRep_Tool::Surface(F); + + //Compute the parameters + Standard_Real U1,U2,V1,V2; + ShapeAnalysis::GetFaceUVBounds(F,U1,U2,V1,V2); + Standard_Real U = U1 + (U2-U1)*theUParam; + Standard_Real V = V1 + (V2-V1)*theVParam; + + return getSurfaceCurvatures(aSurf, U, V, false); +} + + +//============================================================================= +/*! + * MinSurfaceCurvatureByPoint + */ +//============================================================================= +Standard_Real GEOMImpl_IMeasureOperations::MinSurfaceCurvatureByPoint + (Handle(GEOM_Object) theSurf, Handle(GEOM_Object) thePoint) +{ + SetErrorCode(KO); + Standard_Real aRes = -1.0; + + if( theSurf.IsNull() || thePoint.IsNull() ) return aRes; + + Handle(GEOM_Function) aRefShape = theSurf->GetLastFunction(); + Handle(GEOM_Function) aRefPoint = thePoint->GetLastFunction(); + if( aRefShape.IsNull() || aRefPoint.IsNull() ) return aRes; + + TopoDS_Face aFace = TopoDS::Face(aRefShape->GetValue()); + TopoDS_Vertex aPnt = TopoDS::Vertex(aRefPoint->GetValue()); + if( aFace.IsNull() || aPnt.IsNull() ) { + SetErrorCode("One of Objects has NULL Shape"); + return 0; + } + + Handle(Geom_Surface) aSurf = BRep_Tool::Surface(aFace); + if(aSurf.IsNull()) return aRes; + gp_Pnt aPoint = BRep_Tool::Pnt(aPnt); + + //Compute the parameters + ShapeAnalysis_Surface sas(aSurf); + gp_Pnt2d UV = sas.ValueOfUV(aPoint,Precision::Confusion()); + + return getSurfaceCurvatures(aSurf, UV.X(), UV.Y(), false); +} + + //======================================================================= //function : StructuralDump //purpose : Structural (data exchange) style of output. @@ -1709,6 +2349,7 @@ void GEOMImpl_IMeasureOperations::StructuralDump (const BRepCheck_Analyzer& theA } } + //======================================================================= //function : GetProblemShapes // purpose : for StructuralDump diff --git a/src/GEOMImpl/GEOMImpl_IMeasureOperations.hxx b/src/GEOMImpl/GEOMImpl_IMeasureOperations.hxx index 24f6e5253..8d484b716 100644 --- a/src/GEOMImpl/GEOMImpl_IMeasureOperations.hxx +++ b/src/GEOMImpl/GEOMImpl_IMeasureOperations.hxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOMImpl_IMeasureOperations_HXX_ #define _GEOMImpl_IMeasureOperations_HXX_ @@ -31,6 +32,7 @@ #include #include #include +#include class GEOM_Engine; class Handle(GEOM_Object); @@ -130,6 +132,24 @@ class GEOMImpl_IMeasureOperations : public GEOM_IOperations { Standard_EXPORT Standard_Real GetAngle (Handle(GEOM_Object) theLine1, Handle(GEOM_Object) theLine2); + + // Methods for recieving radiuses of curvature of curves and surfaces + // in the given point + Standard_EXPORT Standard_Real CurveCurvatureByParam (Handle(GEOM_Object) theCurve, + Standard_Real& theParam); + Standard_EXPORT Standard_Real CurveCurvatureByPoint (Handle(GEOM_Object) theCurve, + Handle(GEOM_Object) thePoint); + Standard_EXPORT Standard_Real MaxSurfaceCurvatureByParam (Handle(GEOM_Object) theSurf, + Standard_Real& theUParam, + Standard_Real& theVParam); + Standard_EXPORT Standard_Real MaxSurfaceCurvatureByPoint (Handle(GEOM_Object) theSurf, + Handle(GEOM_Object) thePoint); + Standard_EXPORT Standard_Real MinSurfaceCurvatureByParam (Handle(GEOM_Object) theSurf, + Standard_Real& theUParam, + Standard_Real& theVParam); + Standard_EXPORT Standard_Real MinSurfaceCurvatureByPoint (Handle(GEOM_Object) theSurf, + Handle(GEOM_Object) thePoint); + public: Standard_EXPORT static gp_Ax3 GetPosition (const TopoDS_Shape& theShape); @@ -150,6 +170,11 @@ class GEOMImpl_IMeasureOperations : public GEOM_IOperations { Handle(TColStd_HArray1OfInteger)& NbProblems, const TopAbs_ShapeEnum Subtype, TopTools_DataMapOfShapeListOfShape& theMap); + + Standard_Real getSurfaceCurvatures (const Handle(Geom_Surface)& aSurf, + Standard_Real theUParam, + Standard_Real theVParam, + Standard_Boolean theNeedMaxCurv); }; #endif diff --git a/src/GEOMImpl/GEOMImpl_IMirror.hxx b/src/GEOMImpl/GEOMImpl_IMirror.hxx index 4475216a2..513d81a30 100644 --- a/src/GEOMImpl/GEOMImpl_IMirror.hxx +++ b/src/GEOMImpl/GEOMImpl_IMirror.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Mirror creation. - - +// #include "GEOM_Function.hxx" #define MIRROR_ARG_ORIGINAL 1 diff --git a/src/GEOMImpl/GEOMImpl_IOffset.hxx b/src/GEOMImpl/GEOMImpl_IOffset.hxx index 6533324b7..eb8821589 100644 --- a/src/GEOMImpl/GEOMImpl_IOffset.hxx +++ b/src/GEOMImpl/GEOMImpl_IOffset.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Offset creation. - - +// #include "GEOM_Function.hxx" #define OFF_ARG_SHAPE 1 diff --git a/src/GEOMImpl/GEOMImpl_IPartition.hxx b/src/GEOMImpl/GEOMImpl_IPartition.hxx index bf1ff4d7c..ae5d9e2a7 100644 --- a/src/GEOMImpl/GEOMImpl_IPartition.hxx +++ b/src/GEOMImpl/GEOMImpl_IPartition.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Partition creation. - - +// #include "GEOM_Function.hxx" #include "TColStd_HSequenceOfTransient.hxx" diff --git a/src/GEOMImpl/GEOMImpl_IPipe.hxx b/src/GEOMImpl/GEOMImpl_IPipe.hxx index 7982d8614..5b56e2454 100644 --- a/src/GEOMImpl/GEOMImpl_IPipe.hxx +++ b/src/GEOMImpl/GEOMImpl_IPipe.hxx @@ -1,24 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Pipe creation. - +// #ifndef _GEOMImpl_IPIPE_HXX_ #define _GEOMImpl_IPIPE_HXX_ diff --git a/src/GEOMImpl/GEOMImpl_IPipeBiNormal.hxx b/src/GEOMImpl/GEOMImpl_IPipeBiNormal.hxx new file mode 100644 index 000000000..04ccfd371 --- /dev/null +++ b/src/GEOMImpl/GEOMImpl_IPipeBiNormal.hxx @@ -0,0 +1,49 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// +//NOTE: This is an interface to a function for the Pipe creation. +// +#ifndef _GEOMImpl_IPIPEBINORMAL_HXX_ +#define _GEOMImpl_IPIPEBINORMAL_HXX_ + +#include "GEOM_Function.hxx" + +#ifndef _GEOMImpl_IPIPE_HXX_ +#include "GEOMImpl_IPipe.hxx" +#endif + +#define PIPE_ARG_BASE 1 +#define PIPE_ARG_PATH 2 +#define PIPE_ARG_VEC 3 + +class GEOMImpl_IPipeBiNormal : public GEOMImpl_IPipe +{ + public: + + GEOMImpl_IPipeBiNormal(Handle(GEOM_Function)& theFunction):GEOMImpl_IPipe(theFunction) {} + + void SetVector(Handle(GEOM_Function) theVec) { _func->SetReference(PIPE_ARG_VEC, theVec); } + + Handle(GEOM_Function) GetVector() { return _func->GetReference(PIPE_ARG_VEC); } + +}; + +#endif diff --git a/src/GEOMImpl/GEOMImpl_IPipeDiffSect.hxx b/src/GEOMImpl/GEOMImpl_IPipeDiffSect.hxx index 711348b97..3b51e624c 100644 --- a/src/GEOMImpl/GEOMImpl_IPipeDiffSect.hxx +++ b/src/GEOMImpl/GEOMImpl_IPipeDiffSect.hxx @@ -1,24 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Pipe creation. - +// #ifndef _GEOMImpl_IPIPEDIFFSECT_HXX_ #define _GEOMImpl_IPIPEDIFFSECT_HXX_ diff --git a/src/GEOMImpl/GEOMImpl_IPipeShellSect.hxx b/src/GEOMImpl/GEOMImpl_IPipeShellSect.hxx index 590e83697..0afb7506f 100644 --- a/src/GEOMImpl/GEOMImpl_IPipeShellSect.hxx +++ b/src/GEOMImpl/GEOMImpl_IPipeShellSect.hxx @@ -1,24 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Pipe creation. - +// #ifndef _GEOMImpl_IPIPESHELLSECT_HXX_ #define _GEOMImpl_IPIPESHELLSECT_HXX_ diff --git a/src/GEOMImpl/GEOMImpl_IPlane.hxx b/src/GEOMImpl/GEOMImpl_IPlane.hxx index bf328a80f..fbd97d705 100644 --- a/src/GEOMImpl/GEOMImpl_IPlane.hxx +++ b/src/GEOMImpl/GEOMImpl_IPlane.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the vector creation. - - +// #include "GEOM_Function.hxx" #define PLN_ARG_SIZE 1 diff --git a/src/GEOMImpl/GEOMImpl_IPoint.hxx b/src/GEOMImpl/GEOMImpl_IPoint.hxx index b796a51f5..61b2ae8bc 100755 --- a/src/GEOMImpl/GEOMImpl_IPoint.hxx +++ b/src/GEOMImpl/GEOMImpl_IPoint.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the point creation. - - +// #include "GEOM_Function.hxx" #define ARG_X 1 @@ -33,6 +34,9 @@ #define ARG_LINE1 7 #define ARG_LINE2 8 +#define ARG_SURFACE 9 +#define ARG_PARAM2 10 + class GEOMImpl_IPoint { public: @@ -52,16 +56,20 @@ class GEOMImpl_IPoint Handle(GEOM_Function) GetRef() { return _func->GetReference(ARG_REF); } void SetCurve(Handle(GEOM_Function) theRef) { _func->SetReference(ARG_CURVE, theRef); } + void SetSurface(Handle(GEOM_Function) theRef) { _func->SetReference(ARG_SURFACE, theRef); } void SetLine1(Handle(GEOM_Function) theRef) { _func->SetReference(ARG_LINE1, theRef); } void SetLine2(Handle(GEOM_Function) theRef) { _func->SetReference(ARG_LINE2, theRef); } Handle(GEOM_Function) GetCurve() { return _func->GetReference(ARG_CURVE); } + Handle(GEOM_Function) GetSurface() { return _func->GetReference(ARG_SURFACE); } Handle(GEOM_Function) GetLine1() { return _func->GetReference(ARG_LINE1); } Handle(GEOM_Function) GetLine2() { return _func->GetReference(ARG_LINE2); } void SetParameter(double theParam) { _func->SetReal(ARG_PARAM, theParam); } + void SetParameter2(double theParam) { _func->SetReal(ARG_PARAM2, theParam); } double GetParameter() { return _func->GetReal(ARG_PARAM); } + double GetParameter2() { return _func->GetReal(ARG_PARAM2); } private: diff --git a/src/GEOMImpl/GEOMImpl_IPolyline.hxx b/src/GEOMImpl/GEOMImpl_IPolyline.hxx index 800795a4b..5c0c80ad3 100644 --- a/src/GEOMImpl/GEOMImpl_IPolyline.hxx +++ b/src/GEOMImpl/GEOMImpl_IPolyline.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Polyline creation. - - +// #include "GEOM_Function.hxx" #define POLY_ARG_LENG 1 diff --git a/src/GEOMImpl/GEOMImpl_IPosition.hxx b/src/GEOMImpl/GEOMImpl_IPosition.hxx index 77a0e358a..5d42d5d92 100644 --- a/src/GEOMImpl/GEOMImpl_IPosition.hxx +++ b/src/GEOMImpl/GEOMImpl_IPosition.hxx @@ -1,30 +1,34 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Setting In Position. - - +// #include "GEOM_Function.hxx" -#define POSITION_ARG_SHAPE 1 +#define POSITION_ARG_SHAPE 1 #define POSITION_ARG_START_LCS 2 -#define POSITION_ARG_END_LCS 3 +#define POSITION_ARG_END_LCS 3 +#define POSITION_ARG_PATH 5 +#define POSITION_ARG_DISTANCE 6 +#define POSITION_ARG_REVERSE 7 class GEOMImpl_IPosition { @@ -46,6 +50,17 @@ class GEOMImpl_IPosition Handle(GEOM_Function) GetEndLCS() { return _func->GetReference(POSITION_ARG_END_LCS); } + void SetPath(Handle(GEOM_Function) thePath) { _func->SetReference(POSITION_ARG_PATH, thePath); } + + Handle(GEOM_Function) GetPath() { return _func->GetReference(POSITION_ARG_PATH); } + + void SetDistance(double theDistance) { _func->SetReal(POSITION_ARG_DISTANCE, theDistance); } + + double GetDistance() { return _func->GetReal(POSITION_ARG_DISTANCE); } + + void SetReverse(bool theReverse) { _func->SetReal(POSITION_ARG_REVERSE, theReverse); } + bool GetReverse() { return _func->GetReal(POSITION_ARG_REVERSE); } + private: Handle(GEOM_Function) _func; diff --git a/src/GEOMImpl/GEOMImpl_IPrism.hxx b/src/GEOMImpl/GEOMImpl_IPrism.hxx index 14c01864e..f3496f0d9 100644 --- a/src/GEOMImpl/GEOMImpl_IPrism.hxx +++ b/src/GEOMImpl/GEOMImpl_IPrism.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Prism creation. - - +// #include "GEOM_Function.hxx" #define PRISM_ARG_H 1 @@ -27,6 +28,9 @@ #define PRISM_ARG_BASE 3 #define PRISM_ARG_PNT_F 4 #define PRISM_ARG_PNT_L 5 +#define PRISM_ARG_DX 6 +#define PRISM_ARG_DY 7 +#define PRISM_ARG_DZ 8 class GEOMImpl_IPrism { @@ -39,6 +43,14 @@ class GEOMImpl_IPrism void SetFirstPoint(Handle(GEOM_Function) thePoint) { _func->SetReference(PRISM_ARG_PNT_F, thePoint); } void SetLastPoint (Handle(GEOM_Function) thePoint) { _func->SetReference(PRISM_ARG_PNT_L, thePoint); } + void SetDX(double theDX) { _func->SetReal(PRISM_ARG_DX, theDX); } + void SetDY(double theDY) { _func->SetReal(PRISM_ARG_DY, theDY); } + void SetDZ(double theDZ) { _func->SetReal(PRISM_ARG_DZ, theDZ); } + + double GetDX() { return _func->GetReal(PRISM_ARG_DX); } + double GetDY() { return _func->GetReal(PRISM_ARG_DY); } + double GetDZ() { return _func->GetReal(PRISM_ARG_DZ); } + Handle(GEOM_Function) GetBase () { return _func->GetReference(PRISM_ARG_BASE); } Handle(GEOM_Function) GetVector() { return _func->GetReference(PRISM_ARG_VEC ); } Handle(GEOM_Function) GetFirstPoint() { return _func->GetReference(PRISM_ARG_PNT_F ); } diff --git a/src/GEOMImpl/GEOMImpl_IRevolution.hxx b/src/GEOMImpl/GEOMImpl_IRevolution.hxx index c0d551b34..a02b7ad73 100644 --- a/src/GEOMImpl/GEOMImpl_IRevolution.hxx +++ b/src/GEOMImpl/GEOMImpl_IRevolution.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Revolution creation. - - +// #include "GEOM_Function.hxx" #define REVOL_ARG_ANGLE 1 diff --git a/src/GEOMImpl/GEOMImpl_IRotate.hxx b/src/GEOMImpl/GEOMImpl_IRotate.hxx index 2cdad4d5a..e4a603070 100644 --- a/src/GEOMImpl/GEOMImpl_IRotate.hxx +++ b/src/GEOMImpl/GEOMImpl_IRotate.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Rotate operation. - - +// #include "GEOM_Function.hxx" #define ROTATE_ANGLE 1 diff --git a/src/GEOMImpl/GEOMImpl_IScale.hxx b/src/GEOMImpl/GEOMImpl_IScale.hxx index 9a7e904a2..bcbd0493e 100644 --- a/src/GEOMImpl/GEOMImpl_IScale.hxx +++ b/src/GEOMImpl/GEOMImpl_IScale.hxx @@ -1,30 +1,33 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Scale creation. - - +// #include "GEOM_Function.hxx" #define SCALE_ARG_SHAPE 1 #define SCALE_ARG_VALUE 2 #define SCALE_ARG_POINT 3 +#define SCALE_ARG_VALUE_Y 4 +#define SCALE_ARG_VALUE_Z 5 class GEOMImpl_IScale { @@ -44,6 +47,14 @@ class GEOMImpl_IScale Handle(GEOM_Function) GetPoint() { return _func->GetReference(SCALE_ARG_POINT); } + void SetFactorX(double theValue) { _func->SetReal(SCALE_ARG_VALUE , theValue); } + void SetFactorY(double theValue) { _func->SetReal(SCALE_ARG_VALUE_Y, theValue); } + void SetFactorZ(double theValue) { _func->SetReal(SCALE_ARG_VALUE_Z, theValue); } + + double GetFactorX() { return _func->GetReal(SCALE_ARG_VALUE ); } + double GetFactorY() { return _func->GetReal(SCALE_ARG_VALUE_Y); } + double GetFactorZ() { return _func->GetReal(SCALE_ARG_VALUE_Z); } + private: Handle(GEOM_Function) _func; diff --git a/src/GEOMImpl/GEOMImpl_IShapes.hxx b/src/GEOMImpl/GEOMImpl_IShapes.hxx index 25c3796d3..a4efd5161 100644 --- a/src/GEOMImpl/GEOMImpl_IShapes.hxx +++ b/src/GEOMImpl/GEOMImpl_IShapes.hxx @@ -1,26 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // // NOTE: This is an intreface to a function for the Shapes // (Wire, Face, Shell, Solid and Compound) creation. - - +// #include "GEOM_Function.hxx" #include "TColStd_HSequenceOfTransient.hxx" diff --git a/src/GEOMImpl/GEOMImpl_IShapesOperations.cxx b/src/GEOMImpl/GEOMImpl_IShapesOperations.cxx index 089072899..09a2477a7 100644 --- a/src/GEOMImpl/GEOMImpl_IShapesOperations.cxx +++ b/src/GEOMImpl/GEOMImpl_IShapesOperations.cxx @@ -1,30 +1,30 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_IShapesOperations.cxx -// Created : +// Created : // Author : modified by Lioka RAZAFINDRAZAKA (CEA) 22/06/2007 // Project : SALOME // $Header$ - -using namespace std; - +// #include #include "GEOMImpl_IShapesOperations.hxx" @@ -50,6 +50,7 @@ using namespace std; #include "GEOMAlgo_FinderShapeOnQuad.hxx" #include "GEOMAlgo_FinderShapeOn2.hxx" #include "GEOMAlgo_ClsfBox.hxx" +#include "GEOMAlgo_ClsfSolid.hxx" #include "GEOMAlgo_Gluer1.hxx" #include "GEOMAlgo_ListIteratorOfListOfCoupleOfShapes.hxx" #include "GEOMAlgo_CoupleOfShapes.hxx" @@ -67,6 +68,7 @@ using namespace std; #include #include +#include #include #include @@ -116,6 +118,7 @@ using namespace std; #include +#include #include #include // CAREFUL ! position of this file is critic : see Lucien PIGNOLONI / OCC @@ -150,7 +153,6 @@ GEOMImpl_IShapesOperations::~GEOMImpl_IShapesOperations() MESSAGE("GEOMImpl_IShapesOperations::~GEOMImpl_IShapesOperations"); } - //============================================================================= /*! * MakeEdge @@ -212,7 +214,7 @@ Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeEdge */ //============================================================================= Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeWire - (list theShapes) + (std::list theShapes) { return MakeShape(theShapes, GEOM_WIRE, WIRE_EDGES, "MakeWire"); } @@ -279,7 +281,7 @@ Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeFace (Handle(GEOM_Object) th */ //============================================================================= Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeFaceWires - (list theShapes, + (std::list theShapes, const bool isPlanarWanted) { SetErrorCode(KO); @@ -300,7 +302,7 @@ Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeFaceWires Handle(TColStd_HSequenceOfTransient) aShapesSeq = new TColStd_HSequenceOfTransient; // Shapes - list::iterator it = theShapes.begin(); + std::list::iterator it = theShapes.begin(); for (; it != theShapes.end(); it++) { Handle(GEOM_Function) aRefSh = (*it)->GetLastFunction(); if (aRefSh.IsNull()) { @@ -353,7 +355,7 @@ Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeFaceWires */ //============================================================================= Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeShell - (list theShapes) + (std::list theShapes) { return MakeShape(theShapes, GEOM_SHELL, SHELL_FACES, "MakeShell"); } @@ -364,7 +366,7 @@ Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeShell */ //============================================================================= Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeSolidShells - (list theShapes) + (std::list theShapes) { return MakeShape(theShapes, GEOM_SOLID, SOLID_SHELLS, "MakeSolid"); } @@ -429,7 +431,7 @@ Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeSolidShell (Handle(GEOM_Obje */ //============================================================================= Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeCompound - (list theShapes) + (std::list theShapes) { return MakeShape(theShapes, GEOM_COMPOUND, COMPOUND_SHAPES, "MakeCompound"); } @@ -440,7 +442,7 @@ Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeCompound */ //============================================================================= Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeShape - (list theShapes, + (std::list theShapes, const Standard_Integer theObjectType, const Standard_Integer theFunctionType, const TCollection_AsciiString& theMethodName) @@ -463,7 +465,7 @@ Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeShape Handle(TColStd_HSequenceOfTransient) aShapesSeq = new TColStd_HSequenceOfTransient; // Shapes - list::iterator it = theShapes.begin(); + std::list::iterator it = theShapes.begin(); for (; it != theShapes.end(); it++) { Handle(GEOM_Function) aRefSh = (*it)->GetLastFunction(); if (aRefSh.IsNull()) { @@ -647,7 +649,6 @@ Handle(TColStd_HSequenceOfTransient) GEOMImpl_IShapesOperations::GetGlueFaces return aSeq; } - //============================================================================= /*! * MakeGlueFacesByList @@ -656,7 +657,7 @@ Handle(TColStd_HSequenceOfTransient) GEOMImpl_IShapesOperations::GetGlueFaces Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeGlueFacesByList (Handle(GEOM_Object) theShape, const Standard_Real theTolerance, - list theFaces, + std::list theFaces, const Standard_Boolean doKeepNonSolids) { SetErrorCode(KO); @@ -684,7 +685,7 @@ Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeGlueFacesByList aCI.SetKeepNonSolids(doKeepNonSolids); Handle(TColStd_HSequenceOfTransient) aFaces = new TColStd_HSequenceOfTransient; - list::iterator it = theFaces.begin(); + std::list::iterator it = theFaces.begin(); for (; it != theFaces.end(); it++) { Handle(GEOM_Function) aRefSh = (*it)->GetLastFunction(); if (aRefSh.IsNull()) { @@ -718,7 +719,7 @@ Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeGlueFacesByList } //Make a Python command - + GEOM::TPythonDump pd(aFunction); pd << aGlued << " = geompy.MakeGlueFacesByList(" << theShape << ", " << theTolerance << ", ["; @@ -732,14 +733,11 @@ Handle(GEOM_Object) GEOMImpl_IShapesOperations::MakeGlueFacesByList } pd << "])"; - // to provide warning if (!isWarning) SetErrorCode(OK); return aGlued; } - - //============================================================================= /*! * MakeExplode @@ -796,8 +794,6 @@ Handle(TColStd_HSequenceOfTransient) GEOMImpl_IShapesOperations::MakeExplode TopExp::MapShapes(aShape, anIndices); Handle(TColStd_HArray1OfInteger) anArray; - Standard_Integer nbAllSubShape = anIndices.Extent(); - TopTools_ListIteratorOfListOfShape itSub (listShape); TCollection_AsciiString anAsciiList, anEntry; for (int index = 1; itSub.More(); itSub.Next(), ++index) @@ -1081,7 +1077,7 @@ TCollection_AsciiString GEOMImpl_IShapesOperations::GetShapeTypeString (Handle(G (Abs(curv.LastParameter()) >= 1E6)) aTypeName = "Line"; else - aTypeName = "Edge" ; + aTypeName = "Edge"; } else if (curv.GetType() == GeomAbs_Circle) { if (curv.IsClosed()) aTypeName = "Circle"; @@ -1105,7 +1101,6 @@ TCollection_AsciiString GEOMImpl_IShapesOperations::GetShapeTypeString (Handle(G return aTypeName; } - //============================================================================= /*! * NumberOfFaces @@ -1264,7 +1259,6 @@ Handle(TColStd_HSequenceOfInteger) GEOMImpl_IShapesOperations::GetFreeFacesIDs //function : GetSharedShapes //purpose : //======================================================================= - Handle(TColStd_HSequenceOfTransient) GEOMImpl_IShapesOperations::GetSharedShapes (Handle(GEOM_Object) theShape1, Handle(GEOM_Object) theShape2, @@ -1364,7 +1358,6 @@ static GEOM::TPythonDump& operator<< (GEOM::TPythonDump& theDump, * \retval bool - result of the check */ //======================================================================= - bool GEOMImpl_IShapesOperations::checkTypeShapesOn(const Standard_Integer theShapeType) { if (theShapeType != TopAbs_VERTEX && @@ -1385,7 +1378,6 @@ bool GEOMImpl_IShapesOperations::checkTypeShapesOn(const Standard_Integer theSha * \retval Handle(Geom_Surface) - resulting surface */ //======================================================================= - Handle(Geom_Surface) GEOMImpl_IShapesOperations::makePlane(const TopoDS_Shape& anAx1) { if (anAx1.ShapeType() != TopAbs_EDGE) return NULL; @@ -1414,7 +1406,6 @@ Handle(Geom_Surface) GEOMImpl_IShapesOperations::makePlane(const TopoDS_Shape& a * \retval Handle(Geom_Surface) - resulting surface */ //======================================================================= - Handle(Geom_Surface) GEOMImpl_IShapesOperations::makeCylinder(const TopoDS_Shape& anAxis, const Standard_Real theRadius) { @@ -1441,7 +1432,6 @@ Handle(Geom_Surface) GEOMImpl_IShapesOperations::makeCylinder(const TopoDS_Shape return new Geom_CylindricalSurface(anAx3, theRadius); } - //======================================================================= //function : getShapesOnBoxIDs /*! @@ -1453,7 +1443,6 @@ Handle(Geom_Surface) GEOMImpl_IShapesOperations::makeCylinder(const TopoDS_Shape * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes */ //======================================================================= - Handle(TColStd_HSequenceOfInteger) GEOMImpl_IShapesOperations::getShapesOnBoxIDs(const Handle(GEOM_Object)& theBox, const Handle(GEOM_Object)& theShape, @@ -1524,7 +1513,6 @@ Handle(TColStd_HSequenceOfInteger) return aSeqOfIDs; } - //======================================================================= //function : GetShapesOnBoxIDs /*! @@ -1536,7 +1524,6 @@ Handle(TColStd_HSequenceOfInteger) * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes */ //======================================================================= - Handle(TColStd_HSequenceOfInteger) GEOMImpl_IShapesOperations::GetShapesOnBoxIDs(const Handle(GEOM_Object)& theBox, const Handle(GEOM_Object)& theShape, @@ -1554,7 +1541,7 @@ Handle(TColStd_HSequenceOfInteger) // Make a Python command GEOM::TPythonDump(aFunction) - << "listShapesOnBoxIDs = geompy.GetShapesOnQuadrangleIDs(" + << "listShapesOnBoxIDs = geompy.GetShapesOnBoxIDs(" << theBox << ", " << theShape << ", " << TopAbs_ShapeEnum(theShapeType) << ", " @@ -1575,7 +1562,6 @@ Handle(TColStd_HSequenceOfInteger) * \retval Handle(TColStd_HSequenceOfTransient) - found subshapes */ //======================================================================= - Handle(TColStd_HSequenceOfTransient) GEOMImpl_IShapesOperations::GetShapesOnBox(const Handle(GEOM_Object)& theBox, const Handle(GEOM_Object)& theShape, @@ -1611,6 +1597,225 @@ Handle(TColStd_HSequenceOfTransient) return aSeq; } +//======================================================================= +//function : getShapesOnShapeIDs +/*! + * \brief Find IDs of subshapes complying with given status about surface + * \param theCheckShape - the shape to check state of subshapes against + * \param theShape - the shape to explore + * \param theShapeType - type of subshape of theShape + * \param theState - required state + * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes + */ +//======================================================================= +Handle(TColStd_HSequenceOfInteger) + GEOMImpl_IShapesOperations::getShapesOnShapeIDs + (const Handle(GEOM_Object)& theCheckShape, + const Handle(GEOM_Object)& theShape, + const Standard_Integer theShapeType, + GEOMAlgo_State theState) +{ + Handle(TColStd_HSequenceOfInteger) aSeqOfIDs; + + TopoDS_Shape aCheckShape = theCheckShape->GetValue(); + TopoDS_Shape aShape = theShape->GetValue(); + TopTools_ListOfShape res; + + // Check presence of triangulation, build if need + if (!CheckTriangulation(aShape)) { + SetErrorCode("Cannot build triangulation on the shape"); + return aSeqOfIDs; + } + + // Call algo + GEOMAlgo_FinderShapeOn2 aFinder; + Standard_Real aTol = 0.0001; // default value + + Handle(GEOMAlgo_ClsfSolid) aClsfSolid = new GEOMAlgo_ClsfSolid; + aClsfSolid->SetShape(aCheckShape); + + aFinder.SetShape(aShape); + aFinder.SetTolerance(aTol); + aFinder.SetClsf(aClsfSolid); + aFinder.SetShapeType( (TopAbs_ShapeEnum)theShapeType ); + aFinder.SetState(theState); + aFinder.Perform(); + + // Interprete results + Standard_Integer iErr = aFinder.ErrorStatus(); + // the detailed description of error codes is in GEOMAlgo_FinderShapeOn1.cxx + if (iErr) { + MESSAGE(" iErr : " << iErr); + TCollection_AsciiString aMsg (" iErr : "); + aMsg += TCollection_AsciiString(iErr); + SetErrorCode(aMsg); + return aSeqOfIDs; + } + Standard_Integer iWrn = aFinder.WarningStatus(); + // the detailed description of warning codes is in GEOMAlgo_FinderShapeOn1.cxx + if (iWrn) { + MESSAGE(" *** iWrn : " << iWrn); + } + + const TopTools_ListOfShape& listSS = aFinder.Shapes(); // the result + + if (listSS.Extent() < 1) { + //SetErrorCode("Not a single sub-shape of the requested type found on the given surface"); + SetErrorCode(NOT_FOUND_ANY); // NPAL18017 + } + + // Fill sequence of object IDs + aSeqOfIDs = new TColStd_HSequenceOfInteger; + + TopTools_IndexedMapOfShape anIndices; + TopExp::MapShapes(aShape, anIndices); + + TopTools_ListIteratorOfListOfShape itSub (listSS); + for (int index = 1; itSub.More(); itSub.Next(), ++index) { + int id = anIndices.FindIndex(itSub.Value()); + aSeqOfIDs->Append(id); + } + + return aSeqOfIDs; +} + +//======================================================================= +//function : GetShapesOnShapeIDs +/*! + * \brief Find subshapes complying with given status about surface + * \param theCheckShape - the shape to check state of subshapes against + * \param theShape - the shape to explore + * \param theShapeType - type of subshape of theShape + * \param theState - required state + * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes + */ +//======================================================================= +Handle(TColStd_HSequenceOfInteger) + GEOMImpl_IShapesOperations::GetShapesOnShapeIDs + (const Handle(GEOM_Object)& theCheckShape, + const Handle(GEOM_Object)& theShape, + const Standard_Integer theShapeType, + GEOMAlgo_State theState) +{ + Handle(TColStd_HSequenceOfInteger) aSeqOfIDs = + getShapesOnShapeIDs (theCheckShape, theShape, theShapeType, theState); + + if ( aSeqOfIDs.IsNull() || aSeqOfIDs->Length() == 0 ) + return NULL; + + // The GetShapesOnShape() doesn't change object so no new function is required. + Handle(GEOM_Function) aFunction = + GEOM::GetCreatedLast(theShape,theCheckShape)->GetLastFunction(); + + // Make a Python command + GEOM::TPythonDump(aFunction) + << "listShapesOnBoxIDs = geompy.GetShapesOnShapeIDs(" + << theCheckShape << ", " + << theShape << ", " + << TopAbs_ShapeEnum(theShapeType) << ", " + << theState << ")"; + + SetErrorCode(OK); + return aSeqOfIDs; +} + +//======================================================================= +//function : GetShapesOnShape +/*! + * \brief Find subshapes complying with given status about surface + * \param theCheckShape - the shape to check state of subshapes against + * \param theShape - the shape to explore + * \param theShapeType - type of subshape of theShape + * \param theState - required state + * \retval Handle(TColStd_HSequenceOfTransient) - found subshapes + */ +//======================================================================= +Handle(TColStd_HSequenceOfTransient) + GEOMImpl_IShapesOperations::GetShapesOnShape + (const Handle(GEOM_Object)& theCheckShape, + const Handle(GEOM_Object)& theShape, + const Standard_Integer theShapeType, + GEOMAlgo_State theState) +{ + Handle(TColStd_HSequenceOfInteger) aSeqOfIDs = + getShapesOnShapeIDs (theCheckShape, theShape, theShapeType, theState); + if ( aSeqOfIDs.IsNull() || aSeqOfIDs->Length() == 0 ) + return NULL; + + // Find objects by indices + TCollection_AsciiString anAsciiList; + Handle(TColStd_HSequenceOfTransient) aSeq; + aSeq = getObjectsShapesOn( theShape, aSeqOfIDs, anAsciiList ); + + if ( aSeq.IsNull() || aSeq->IsEmpty() ) + return NULL; + + // Make a Python command + + Handle(GEOM_Object) anObj = Handle(GEOM_Object)::DownCast( aSeq->Value( 1 )); + Handle(GEOM_Function) aFunction = anObj->GetLastFunction(); + + GEOM::TPythonDump(aFunction) + << "[" << anAsciiList.ToCString() << "] = geompy.GetShapesOnShape(" + << theCheckShape << ", " + << theShape << ", " + << TopAbs_ShapeEnum(theShapeType) << ", " + << theState << ")"; + + SetErrorCode(OK); + return aSeq; +} + +//======================================================================= +//function : GetShapesOnShapeAsCompound +//======================================================================= +Handle(GEOM_Object) GEOMImpl_IShapesOperations::GetShapesOnShapeAsCompound + (const Handle(GEOM_Object)& theCheckShape, + const Handle(GEOM_Object)& theShape, + const Standard_Integer theShapeType, + GEOMAlgo_State theState) +{ + Handle(TColStd_HSequenceOfInteger) aSeqOfIDs = + getShapesOnShapeIDs (theCheckShape, theShape, theShapeType, theState); + + if ( aSeqOfIDs.IsNull() || aSeqOfIDs->Length() == 0 ) + return NULL; + + // Find objects by indices + TCollection_AsciiString anAsciiList; + Handle(TColStd_HSequenceOfTransient) aSeq; + aSeq = getObjectsShapesOn( theShape, aSeqOfIDs, anAsciiList ); + + if ( aSeq.IsNull() || aSeq->IsEmpty() ) + return NULL; + + TopoDS_Compound aCompound; + BRep_Builder B; + B.MakeCompound(aCompound); + int i = 1; + for(; i<=aSeq->Length(); i++) { + Handle(GEOM_Object) anObj = Handle(GEOM_Object)::DownCast(aSeq->Value(i)); + TopoDS_Shape aShape_i = anObj->GetValue(); + B.Add(aCompound,aShape_i); + } + + //Add a new result object + Handle(GEOM_Object) aRes = GetEngine()->AddObject(GetDocID(), GEOM_SHAPES_ON_SHAPE); + Handle(GEOM_Function) aFunction = + aRes->AddFunction(GEOMImpl_ShapeDriver::GetID(), SHAPES_ON_SHAPE); + aFunction->SetValue(aCompound); + + GEOM::TPythonDump(aFunction) + << aRes << " = geompy.GetShapesOnShapeAsCompound(" + << theCheckShape << ", " + << theShape << ", " + << TopAbs_ShapeEnum(theShapeType) << ", " + << theState << ")"; + + SetErrorCode(OK); + + return aRes; +} //======================================================================= //function : getShapesOnSurfaceIDs @@ -1623,7 +1828,6 @@ Handle(TColStd_HSequenceOfTransient) * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes */ //======================================================================= - Handle(TColStd_HSequenceOfInteger) GEOMImpl_IShapesOperations::getShapesOnSurfaceIDs(const Handle(Geom_Surface)& theSurface, const TopoDS_Shape& theShape, @@ -1708,7 +1912,6 @@ Handle(TColStd_HSequenceOfInteger) * \retval Handle(TColStd_HSequenceOfTransient) - found shape objects */ //======================================================================= - Handle(TColStd_HSequenceOfTransient) GEOMImpl_IShapesOperations:: getObjectsShapesOn(const Handle(GEOM_Object)& theShape, const Handle(TColStd_HSequenceOfInteger)& theShapeIDs, @@ -1747,7 +1950,6 @@ Handle(TColStd_HSequenceOfTransient) GEOMImpl_IShapesOperations:: * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes */ //======================================================================= - Handle(TColStd_HSequenceOfTransient) GEOMImpl_IShapesOperations::getShapesOnSurface(const Handle(Geom_Surface)& theSurface, const Handle(GEOM_Object)& theShape, @@ -2213,7 +2415,6 @@ Handle(TColStd_HSequenceOfInteger) GEOMImpl_IShapesOperations::GetShapesOnSphere * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes */ //======================================================================= - Handle(TColStd_HSequenceOfInteger) GEOMImpl_IShapesOperations::getShapesOnQuadrangleIDs (const Handle(GEOM_Object)& theShape, const Standard_Integer theShapeType, @@ -2340,7 +2541,6 @@ Handle(TColStd_HSequenceOfInteger) * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes */ //======================================================================= - Handle(TColStd_HSequenceOfTransient) GEOMImpl_IShapesOperations::GetShapesOnQuadrangle (const Handle(GEOM_Object)& theShape, const Standard_Integer theShapeType, @@ -2402,7 +2602,6 @@ Handle(TColStd_HSequenceOfTransient) * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes */ //======================================================================= - Handle(TColStd_HSequenceOfInteger) GEOMImpl_IShapesOperations::GetShapesOnQuadrangleIDs (const Handle(GEOM_Object)& theShape, const Standard_Integer theShapeType, @@ -2447,7 +2646,6 @@ Handle(TColStd_HSequenceOfInteger) return aSeqOfIDs; } - //============================================================================= /*! * GetInPlaceOfShape @@ -2577,23 +2775,20 @@ static bool GetInPlaceOfShape (const Handle(GEOM_Function)& theWhereFunction, * GetShapeProperties */ //============================================================================= - void GEOMImpl_IShapesOperations::GetShapeProperties( const TopoDS_Shape aShape, Standard_Real tab[], gp_Pnt & aVertex ) { - GProp_GProps SProps, VProps; + GProp_GProps theProps; gp_Pnt aCenterMass; TopoDS_Shape aPntShape; Standard_Real aShapeSize; - BRepGProp::VolumeProperties(aShape, VProps); - aCenterMass = VProps.CentreOfMass(); - aShapeSize = VProps.Mass(); - if (aShape.ShapeType() == TopAbs_FACE) { - BRepGProp::SurfaceProperties(aShape, SProps); - aCenterMass = SProps.CentreOfMass(); - aShapeSize = SProps.Mass(); - } + if (aShape.ShapeType() == TopAbs_EDGE) BRepGProp::LinearProperties(aShape, theProps); + else if (aShape.ShapeType() == TopAbs_FACE) BRepGProp::SurfaceProperties(aShape, theProps); + else BRepGProp::VolumeProperties(aShape, theProps); + + aCenterMass = theProps.CentreOfMass(); + aShapeSize = theProps.Mass(); aPntShape = BRepBuilderAPI_MakeVertex(aCenterMass).Shape(); aVertex = BRep_Tool::Pnt( TopoDS::Vertex( aPntShape ) ); @@ -2618,6 +2813,8 @@ Handle(GEOM_Object) GEOMImpl_IShapesOperations::GetInPlace (Handle(GEOM_Object) TopoDS_Shape aWhere = theShapeWhere->GetValue(); TopoDS_Shape aWhat = theShapeWhat->GetValue(); + TopoDS_Shape aPntShape; + TopoDS_Vertex aVertex; if (aWhere.IsNull() || aWhat.IsNull()) { SetErrorCode("Error: aWhere and aWhat TopoDS_Shape are Null."); @@ -2640,32 +2837,54 @@ Handle(GEOM_Object) GEOMImpl_IShapesOperations::GetInPlace (Handle(GEOM_Object) bool isFound = false; Standard_Integer iType = TopAbs_SOLID; + Standard_Integer compType = TopAbs_SOLID; Standard_Real aWhat_Mass = 0., aWhere_Mass = 0.; Standard_Real tab_aWhat[4], tab_aWhere[4]; Standard_Real dl_l = 1e-3; Standard_Real min_l, Tol_1D, Tol_2D, Tol_3D, Tol_Mass; - gp_Pnt aPnt, aPnt_aWhat; + Standard_Real aXmin, aYmin, aZmin, aXmax, aYmax, aZmax; + Bnd_Box BoundingBox; + gp_Pnt aPnt, aPnt_aWhat, tab_Pnt[2]; GProp_GProps aProps; - // 2D or 3D shapes - if ( aWhat.ShapeType() == TopAbs_COMPOUND || - aWhat.ShapeType() == TopAbs_SHELL || - aWhat.ShapeType() == TopAbs_COMPSOLID ) { - TopExp_Explorer Exp( aWhat, TopAbs_ShapeEnum( iType ) ); - if ( ! Exp.More() ) iType = TopAbs_FACE; + // Find the iType of the aWhat shape + if ( aWhat.ShapeType() == TopAbs_EDGE || aWhat.ShapeType() == TopAbs_WIRE ) iType = TopAbs_EDGE; + else if ( aWhat.ShapeType() == TopAbs_FACE || aWhat.ShapeType() == TopAbs_SHELL ) iType = TopAbs_FACE; + else if ( aWhat.ShapeType() == TopAbs_SOLID || aWhat.ShapeType() == TopAbs_COMPSOLID ) iType = TopAbs_SOLID; + else if ( aWhat.ShapeType() == TopAbs_COMPOUND ) { + // Only the iType of the first shape in the compound is taken into account + TopoDS_Iterator It (aWhat, Standard_True, Standard_True); + compType = It.Value().ShapeType(); + if ( compType == TopAbs_EDGE || compType == TopAbs_WIRE ) iType = TopAbs_EDGE; + else if ( compType == TopAbs_FACE || compType == TopAbs_SHELL) iType = TopAbs_FACE; + else if ( compType == TopAbs_SOLID || compType == TopAbs_COMPSOLID) iType = TopAbs_SOLID; + } + else { + SetErrorCode("Error: An attempt to extract a shape of not supported type."); + return NULL; } - else if ( aWhat.ShapeType() == TopAbs_FACE ) - iType = TopAbs_FACE; TopExp_Explorer Exp_aWhat( aWhat, TopAbs_ShapeEnum( iType ) ); TopExp_Explorer Exp_aWhere( aWhere, TopAbs_ShapeEnum( iType ) ); TopExp_Explorer Exp_Edge( aWhere, TopAbs_EDGE ); // Find the shortest edge in theShapeWhere shape + BRepBndLib::Add(aWhere, BoundingBox); + BoundingBox.Get(aXmin, aYmin, aZmin, aXmax, aYmax, aZmax); + min_l = fabs(aXmax - aXmin); + if( min_l < fabs(aYmax - aYmin) ) min_l = fabs(aYmax - aYmin); + if( min_l < fabs(aZmax - aZmin) ) min_l = fabs(aZmax - aZmin); + min_l /= dl_l; for ( Standard_Integer nbEdge = 0; Exp_Edge.More(); Exp_Edge.Next(), nbEdge++ ) { - BRepGProp::LinearProperties(Exp_Edge.Current(), aProps); - if ( ! nbEdge ) min_l = aProps.Mass(); - if ( aProps.Mass() < min_l ) min_l = aProps.Mass(); + TopExp_Explorer Exp_Vertex( Exp_Edge.Current(), TopAbs_VERTEX); + for ( Standard_Integer nbVertex = 0; Exp_Vertex.More(); Exp_Vertex.Next(), nbVertex++ ) { + aPnt = BRep_Tool::Pnt( TopoDS::Vertex( Exp_Vertex.Current() ) ); + tab_Pnt[nbVertex] = aPnt; + } + if ( ! tab_Pnt[0].IsEqual(tab_Pnt[1], dl_l) ) { + BRepGProp::LinearProperties(Exp_Edge.Current(), aProps); + if ( aProps.Mass() < min_l ) min_l = aProps.Mass(); + } } // Compute tolerances @@ -2673,30 +2892,41 @@ Handle(GEOM_Object) GEOMImpl_IShapesOperations::GetInPlace (Handle(GEOM_Object) Tol_2D = dl_l * ( min_l * min_l) * ( 2. + dl_l); Tol_3D = dl_l * ( min_l * min_l * min_l ) * ( 3. + (3 * dl_l) + (dl_l * dl_l) ); + if (Tol_1D < Precision::Confusion()) Tol_1D = Precision::Confusion(); + if (Tol_2D < Precision::Confusion()) Tol_2D = Precision::Confusion(); + if (Tol_3D < Precision::Confusion()) Tol_3D = Precision::Confusion(); + Tol_Mass = Tol_3D; - if ( iType == TopAbs_FACE ) Tol_Mass = Tol_2D; + if ( iType == TopAbs_EDGE ) Tol_Mass = Tol_1D; + else if ( iType == TopAbs_FACE ) Tol_Mass = Tol_2D; // Compute the ShapeWhat Mass for ( ; Exp_aWhat.More(); Exp_aWhat.Next() ) { - if ( iType == TopAbs_SOLID ) BRepGProp::VolumeProperties(Exp_aWhat.Current(), aProps); - else if ( iType == TopAbs_FACE ) BRepGProp::SurfaceProperties(Exp_aWhat.Current(), aProps); + if ( iType == TopAbs_EDGE ) BRepGProp::LinearProperties(Exp_aWhat.Current(), aProps); + else if ( iType == TopAbs_FACE ) BRepGProp::SurfaceProperties(Exp_aWhat.Current(), aProps); + else BRepGProp::VolumeProperties(Exp_aWhat.Current(), aProps); aWhat_Mass += aProps.Mass(); } - // Finding the Sub-ShapeWhere + // Searching for the sub-shapes inside the ShapeWhere shape + TopTools_MapOfShape map_aWhere; for ( Exp_aWhere.ReInit(); Exp_aWhere.More(); Exp_aWhere.Next() ) { + if (!map_aWhere.Add(Exp_aWhere.Current())) + continue; // skip repeated shape to avoid mass addition GetShapeProperties( Exp_aWhere.Current(), tab_aWhere, aPnt ); for ( Exp_aWhat.ReInit(); Exp_aWhat.More(); Exp_aWhat.Next() ) { GetShapeProperties( Exp_aWhat.Current(), tab_aWhat, aPnt_aWhat ); if ( fabs(tab_aWhat[3] - tab_aWhere[3]) <= Tol_Mass && aPnt_aWhat.Distance(aPnt) <= Tol_1D ) isFound = true; - else if ( tab_aWhat[3] - ( tab_aWhere[3] > Tol_Mass) ) { - BRepClass3d_SolidClassifier SC_aWhere (Exp_aWhere.Current(), aPnt, Precision::Confusion()); - BRepClass3d_SolidClassifier SC_aWhat (Exp_aWhat.Current(), aPnt, Precision::Confusion()); - // Block construction 3D - if ( SC_aWhere.State() == TopAbs_IN && SC_aWhat.State() == TopAbs_IN ) isFound = true; - // Block construction 2D - else if ( SC_aWhere.State() == TopAbs_ON && SC_aWhat.State() == TopAbs_ON ) isFound = true; + else { + if ( (tab_aWhat[3] - tab_aWhere[3]) > Tol_Mass ) { + aPntShape = BRepBuilderAPI_MakeVertex( aPnt ).Shape(); + aVertex = TopoDS::Vertex( aPntShape ); + BRepExtrema_DistShapeShape aWhereDistance ( aVertex, Exp_aWhere.Current() ); + BRepExtrema_DistShapeShape aWhatDistance ( aVertex, Exp_aWhat.Current() ); + if ( fabs(aWhereDistance.Value() - aWhatDistance.Value()) <= Tol_1D ) + isFound = true; + } } if ( isFound ) { aWhereIndex = aWhereIndices.FindIndex(Exp_aWhere.Current()); @@ -2709,6 +2939,11 @@ Handle(GEOM_Object) GEOMImpl_IShapesOperations::GetInPlace (Handle(GEOM_Object) if ( fabs( aWhat_Mass - aWhere_Mass ) <= Tol_Mass ) break; } + if (aModifiedList.Extent() == 0) { // Not found any Results + SetErrorCode(NOT_FOUND_ANY); + return NULL; + } + aModifiedArray = new TColStd_HArray1OfInteger (1, aModifiedList.Extent()); TColStd_ListIteratorOfListOfInteger anIterModif (aModifiedList); for (Standard_Integer imod = 1; anIterModif.More(); anIterModif.Next(), imod++) @@ -2805,7 +3040,7 @@ Handle(GEOM_Object) GEOMImpl_IShapesOperations::GetInPlaceByHistory //Make a Python command Handle(GEOM_Function) aFunction = aResult->GetFunction(1); - GEOM::TPythonDump(aFunction) << aResult << " = geompy.GetInPlace(" + GEOM::TPythonDump(aFunction) << aResult << " = geompy.GetInPlaceByHistory(" << theShapeWhere << ", " << theShapeWhat << ")"; SetErrorCode(OK); @@ -2860,6 +3095,7 @@ void GEOMImpl_IShapesOperations::SortShapes(TopTools_ListOfShape& SL) Sort = Standard_False; for (Index=1; Index < MaxShapes; Index++) { + exchange = Standard_False; Standard_Real dMidXYZ = MidXYZ(OrderInd(Index)) - MidXYZ(OrderInd(Index+1)); Standard_Real dLength = Length(OrderInd(Index)) - Length(OrderInd(Index+1)); if ( dMidXYZ >= tol ) { @@ -2892,13 +3128,14 @@ void GEOMImpl_IShapesOperations::SortShapes(TopTools_ListOfShape& SL) val1 = (aXmin+aXmax)*999 + (aYmin+aYmax)*99 + (aZmin+aZmax)*0.9; box2.Get(aXmin, aYmin, aZmin, aXmax, aYmax, aZmax); val2 = (aXmin+aXmax)*999 + (aYmin+aYmax)*99 + (aZmin+aZmax)*0.9; - exchange = val1 > val2; -// cout << "box: " << val1<<" > "< val2; + if ((val1 - val2) >= tol) { + exchange = Standard_True; + } + //cout << "box: " << val1<<" > "< zmaxB2) zmaxB2 = P.Z(); } - //Compare the bounding boxes of both faces if(gp_Pnt(xminB1, yminB1, zminB1).Distance(gp_Pnt(xminB2, yminB2, zminB2)) > MAX_TOLERANCE) return false; @@ -3109,16 +3350,16 @@ static bool isSameFace(const TopoDS_Face& theFace1, const TopoDS_Face& theFace2) U = U11+rangeU*2.0/3.0; V = V11+rangeV*2.0/3.0; gp_Pnt P2 = S1->Value(U, V); - - if(!GeomLib_Tool::Parameters(S2, P1, MAX_TOLERANCE, U, V) || U < U21 || U > U22 || V < V21 || V > V22) + + if (!GeomLib_Tool::Parameters(S2, P1, MAX_TOLERANCE, U, V) || U < U21 || U > U22 || V < V21 || V > V22) return false; - - if(P1.Distance(S2->Value(U,V)) > MAX_TOLERANCE) return false; - - if(!GeomLib_Tool::Parameters(S2, P2, MAX_TOLERANCE, U, V) || U < U21 || U > U22 || V < V21 || V > V22) + + if (P1.Distance(S2->Value(U,V)) > MAX_TOLERANCE) return false; + + if (!GeomLib_Tool::Parameters(S2, P2, MAX_TOLERANCE, U, V) || U < U21 || U > U22 || V < V21 || V > V22) return false; - - if(P2.Distance(S2->Value(U, V)) > MAX_TOLERANCE) return false; + + if (P2.Distance(S2->Value(U, V)) > MAX_TOLERANCE) return false; //Check that each edge of the Face1 has a counterpart in the Face2 TopTools_MapOfOrientedShape aMap; diff --git a/src/GEOMImpl/GEOMImpl_IShapesOperations.hxx b/src/GEOMImpl/GEOMImpl_IShapesOperations.hxx index 6506de36e..3deb09d0a 100644 --- a/src/GEOMImpl/GEOMImpl_IShapesOperations.hxx +++ b/src/GEOMImpl/GEOMImpl_IShapesOperations.hxx @@ -1,35 +1,35 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_IShapesOperations.hxx // Created : // Author : modified by Lioka RAZAFINDRAZAKA (CEA) 22/06/2007 // Project : SALOME -// Copyright : CEA 2003 // $Header$ //============================================================================= +// #ifndef _GEOMImpl_IShapesOperations_HXX_ #define _GEOMImpl_IShapesOperations_HXX_ -using namespace std; - #include "GEOM_IOperations.hxx" #include "GEOMAlgo_State.hxx" @@ -56,20 +56,20 @@ class GEOMImpl_IShapesOperations : public GEOM_IOperations Standard_EXPORT Handle(GEOM_Object) MakeEdge (Handle(GEOM_Object) thePoint1, Handle(GEOM_Object) thePoint2); - Standard_EXPORT Handle(GEOM_Object) MakeWire (list theEdgesAndWires); + Standard_EXPORT Handle(GEOM_Object) MakeWire (std::list theEdgesAndWires); Standard_EXPORT Handle(GEOM_Object) MakeFace (Handle(GEOM_Object) theWire, const bool isPlanarWanted); - Standard_EXPORT Handle(GEOM_Object) MakeFaceWires (list theWires, + Standard_EXPORT Handle(GEOM_Object) MakeFaceWires (std::list theWires, const bool isPlanarWanted); - Standard_EXPORT Handle(GEOM_Object) MakeShell (list theShapes); + Standard_EXPORT Handle(GEOM_Object) MakeShell (std::list theShapes); Standard_EXPORT Handle(GEOM_Object) MakeSolidShell (Handle(GEOM_Object) theShell); - Standard_EXPORT Handle(GEOM_Object) MakeSolidShells (list theShells); + Standard_EXPORT Handle(GEOM_Object) MakeSolidShells (std::list theShells); - Standard_EXPORT Handle(GEOM_Object) MakeCompound (list theShapes); + Standard_EXPORT Handle(GEOM_Object) MakeCompound (std::list theShapes); Standard_EXPORT Handle(GEOM_Object) MakeGlueFaces (Handle(GEOM_Object) theShape, const Standard_Real theTolerance, @@ -80,7 +80,7 @@ class GEOMImpl_IShapesOperations : public GEOM_IOperations Standard_EXPORT Handle(GEOM_Object) MakeGlueFacesByList (Handle(GEOM_Object) theShape, const Standard_Real theTolerance, - list theFaces, + std::list theFaces, const Standard_Boolean doKeepNonSolids); Standard_EXPORT Handle(TColStd_HSequenceOfTransient) MakeExplode (Handle(GEOM_Object) theShape, @@ -254,13 +254,46 @@ class GEOMImpl_IShapesOperations : public GEOM_IOperations * \param theShape - the shape to explore * \param theShapeType - type of subshape of theShape * \param theState - required state - * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes + * \retval Handle(TColStd_HSequenceOfTransient) - found shape objects */ Standard_EXPORT Handle(TColStd_HSequenceOfTransient) - GetShapesOnBox(const Handle(GEOM_Object)& theBox, - const Handle(GEOM_Object)& theShape, - const Standard_Integer theShapeType, - GEOMAlgo_State theState); + GetShapesOnBox(const Handle(GEOM_Object)& theBox, + const Handle(GEOM_Object)& theShape, + const Standard_Integer theShapeType, + GEOMAlgo_State theState); + + /*! + * \brief Find IDs of subshapes complying with given status about surface + * \param theCheckShape - the shape to check state of subshapes against + * \param theShape - the shape to explore + * \param theShapeType - type of subshape of theShape + * \param theState - required state + * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes + */ + Standard_EXPORT Handle(TColStd_HSequenceOfInteger) + GetShapesOnShapeIDs(const Handle(GEOM_Object)& theCheckShape, + const Handle(GEOM_Object)& theShape, + const Standard_Integer theShapeType, + GEOMAlgo_State theState); + + /*! + * \brief Find subshapes complying with given status about surface + * \param theCheckShape - the shape to check state of subshapes against + * \param theShape - the shape to explore + * \param theShapeType - type of subshape of theShape + * \param theState - required state + * \retval Handle(TColStd_HSequenceOfTransient) - found shape objects + */ + Standard_EXPORT Handle(TColStd_HSequenceOfTransient) + GetShapesOnShape(const Handle(GEOM_Object)& theCheckShape, + const Handle(GEOM_Object)& theShape, + const Standard_Integer theShapeType, + GEOMAlgo_State theState); + Standard_EXPORT Handle(GEOM_Object) + GetShapesOnShapeAsCompound(const Handle(GEOM_Object)& theCheckShape, + const Handle(GEOM_Object)& theShape, + const Standard_Integer theShapeType, + GEOMAlgo_State theState); public: /*! @@ -287,7 +320,7 @@ class GEOMImpl_IShapesOperations : public GEOM_IOperations Standard_EXPORT static bool CheckTriangulation (const TopoDS_Shape& theShape); private: - Handle(GEOM_Object) MakeShape (list theShapes, + Handle(GEOM_Object) MakeShape (std::list theShapes, const Standard_Integer theObjectType, const Standard_Integer theFunctionType, const TCollection_AsciiString& theMethodName); @@ -298,34 +331,34 @@ class GEOMImpl_IShapesOperations : public GEOM_IOperations /*! * \brief Checks if theShapeType parameter of GetShapesOnXXX() is OK - * \param theShapeType - the shape type to check - * \retval bool - result of the check + * \param theShapeType - the shape type to check + * \retval bool - result of the check */ bool checkTypeShapesOn(const Standard_Integer theShapeType); /*! * \brief Creates Geom_Plane - * \param theAx1 - edge defining plane normal - * \retval Handle(Geom_Surface) - resulting surface + * \param theAx1 - edge defining plane normal + * \retval Handle(Geom_Surface) - resulting surface */ Handle(Geom_Surface) makePlane(const TopoDS_Shape& theAx1); /*! * \brief Creates Geom_CylindricalSurface - * \param theAx1 - edge defining cylinder axis - * \param theRadius - cylinder radius - * \retval Handle(Geom_Surface) - resulting surface + * \param theAx1 - edge defining cylinder axis + * \param theRadius - cylinder radius + * \retval Handle(Geom_Surface) - resulting surface */ Handle(Geom_Surface) makeCylinder(const TopoDS_Shape& theAx1, const Standard_Real theRadius); /*! * \brief Find IDs of subshapes complying with given status about surface - * \param theSurface - the surface to check state of subshapes against - * \param theShape - the shape to explore - * \param theShapeType - type of subshape of theShape - * \param theState - required state - * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes + * \param theSurface - the surface to check state of subshapes against + * \param theShape - the shape to explore + * \param theShapeType - type of subshape of theShape + * \param theState - required state + * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes */ Handle(TColStd_HSequenceOfInteger) getShapesOnSurfaceIDs(const Handle(Geom_Surface)& theSurface, @@ -335,12 +368,12 @@ class GEOMImpl_IShapesOperations : public GEOM_IOperations /*! * \brief Find subshapes complying with given status about surface - * \param theSurface - the surface to check state of subshapes against - * \param theShape - the shape to explore - * \param theShapeType - type of subshape of theShape - * \param theState - required state - * \param theShapeEntries - outgoing entries like "entry1, entry2, ..." - * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes + * \param theSurface - the surface to check state of subshapes against + * \param theShape - the shape to explore + * \param theShapeType - type of subshape of theShape + * \param theState - required state + * \param theShapeEntries - outgoing entries like "entry1, entry2, ..." + * \retval Handle(TColStd_HSequenceOfTransient) - found shape objects */ Handle(TColStd_HSequenceOfTransient) getShapesOnSurface(const Handle(Geom_Surface)& theSurface, @@ -351,14 +384,14 @@ class GEOMImpl_IShapesOperations : public GEOM_IOperations /*! * \brief Find IDs of subshapes complying with given status about quadrangle - * \param theShape - the shape to explore - * \param theShapeType - type of subshape of theShape - * \param theTopLeftPoint - top left quadrangle corner - * \param theTopRigthPoint - top right quadrangle corner - * \param theBottomLeftPoint - bottom left quadrangle corner - * \param theBottomRigthPoint - bottom right quadrangle corner - * \param theState - required state - * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes + * \param theShape - the shape to explore + * \param theShapeType - type of subshape of theShape + * \param theTopLeftPoint - top left quadrangle corner + * \param theTopRigthPoint - top right quadrangle corner + * \param theBottomLeftPoint - bottom left quadrangle corner + * \param theBottomRigthPoint - bottom right quadrangle corner + * \param theState - required state + * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes */ Handle(TColStd_HSequenceOfInteger) getShapesOnQuadrangleIDs (const Handle(GEOM_Object)& theShape, @@ -371,23 +404,37 @@ class GEOMImpl_IShapesOperations : public GEOM_IOperations /*! * \brief Find IDs of subshapes complying with given status about surface - * \param theBox - the box to check state of subshapes against - * \param theShape - the shape to explore - * \param theShapeType - type of subshape of theShape - * \param theState - required state - * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes + * \param theBox - the box to check state of subshapes against + * \param theShape - the shape to explore + * \param theShapeType - type of subshape of theShape + * \param theState - required state + * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes */ Handle(TColStd_HSequenceOfInteger) getShapesOnBoxIDs(const Handle(GEOM_Object)& theBox, const Handle(GEOM_Object)& theShape, const Standard_Integer theShapeType, GEOMAlgo_State theState); + /*! + * \brief Find IDs of subshapes complying with given status about surface + * \param theCheckShape - the shape to check state of subshapes against + * \param theShape - the shape to explore + * \param theShapeType - type of subshape of theShape + * \param theState - required state + * \retval Handle(TColStd_HSequenceOfInteger) - IDs of found subshapes + */ + Handle(TColStd_HSequenceOfInteger) getShapesOnShapeIDs + (const Handle(GEOM_Object)& theCheckShape, + const Handle(GEOM_Object)& theShape, + const Standard_Integer theShapeType, + GEOMAlgo_State theState); + /*! * \brief Find shape objects and their entries by their ids - * \param theShape - the main shape - * \param theShapeIDs - theShapeIDs - incoming shape ids - * \param theShapeEntries - outgoing entries like "entry1, entry2, ..." - * \retval Handle(TColStd_HSequenceOfTransient) - found shape objects + * \param theShape - the main shape + * \param theShapeIDs - theShapeIDs - incoming shape ids + * \param theShapeEntries - outgoing entries like "entry1, entry2, ..." + * \retval Handle(TColStd_HSequenceOfTransient) - found shape objects */ Handle(TColStd_HSequenceOfTransient) getObjectsShapesOn(const Handle(GEOM_Object)& theShape, @@ -396,9 +443,9 @@ class GEOMImpl_IShapesOperations : public GEOM_IOperations /*! * \brief Select the object created last - * \param theObj1 - Object 1 - * \param theObj2 - Object 2 - * \retval Handle(GEOM_Object) - selected object + * \param theObj1 - Object 1 + * \param theObj2 - Object 2 + * \retval Handle(GEOM_Object) - selected object */ static Handle(GEOM_Object) getCreatedLast(const Handle(GEOM_Object)& theObj1, const Handle(GEOM_Object)& theObj2); diff --git a/src/GEOMImpl/GEOMImpl_ISketcher.hxx b/src/GEOMImpl/GEOMImpl_ISketcher.hxx index cf2d46f21..2cec2cb61 100644 --- a/src/GEOMImpl/GEOMImpl_ISketcher.hxx +++ b/src/GEOMImpl/GEOMImpl_ISketcher.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an interface to a function for the Sketcher creation. - - +// #include "GEOM_Function.hxx" #define SKETCH_ARG_CMD 1 diff --git a/src/GEOMImpl/GEOMImpl_ISphere.hxx b/src/GEOMImpl/GEOMImpl_ISphere.hxx index 23ee4c245..785af6fd7 100644 --- a/src/GEOMImpl/GEOMImpl_ISphere.hxx +++ b/src/GEOMImpl/GEOMImpl_ISphere.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Sphere creation. - - +// #include "GEOM_Function.hxx" #define SPH_ARG_R 1 diff --git a/src/GEOMImpl/GEOMImpl_ISpline.hxx b/src/GEOMImpl/GEOMImpl_ISpline.hxx index 75d5ea6d0..3694a556d 100644 --- a/src/GEOMImpl/GEOMImpl_ISpline.hxx +++ b/src/GEOMImpl/GEOMImpl_ISpline.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Spline creation. - - +// #include "GEOM_Function.hxx" #define SPL_ARG_LENG 1 diff --git a/src/GEOMImpl/GEOMImpl_IThruSections.hxx b/src/GEOMImpl/GEOMImpl_IThruSections.hxx index 330d83c96..f2e2a55e2 100644 --- a/src/GEOMImpl/GEOMImpl_IThruSections.hxx +++ b/src/GEOMImpl/GEOMImpl_IThruSections.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Pipe creation. - - +// #include "GEOM_Function.hxx" #include diff --git a/src/GEOMImpl/GEOMImpl_ITorus.hxx b/src/GEOMImpl/GEOMImpl_ITorus.hxx index 86909ac8c..9edc7e359 100644 --- a/src/GEOMImpl/GEOMImpl_ITorus.hxx +++ b/src/GEOMImpl/GEOMImpl_ITorus.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Torus creation. - - +// #include "GEOM_Function.hxx" #define TORUS_ARG_CC 1 diff --git a/src/GEOMImpl/GEOMImpl_ITransformOperations.cxx b/src/GEOMImpl/GEOMImpl_ITransformOperations.cxx index 9bf0da1bf..5150f0a1c 100644 --- a/src/GEOMImpl/GEOMImpl_ITransformOperations.cxx +++ b/src/GEOMImpl/GEOMImpl_ITransformOperations.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include @@ -178,7 +180,7 @@ Handle(GEOM_Object) GEOMImpl_ITransformOperations::TranslateDXDYDZ } //Make a Python command - GEOM::TPythonDump(aFunction) << "geompy.TrsfOp.TranslateDXDYDZ(" + GEOM::TPythonDump(aFunction) << "geompy.TranslateDXDYDZ(" << theObject << ", " << theX << ", " << theY << ", " << theZ << ")"; SetErrorCode(OK); @@ -350,7 +352,6 @@ Handle(GEOM_Object) GEOMImpl_ITransformOperations::TranslateVector SetErrorCode(OK); return theObject; } - //============================================================================= /*! * TranslateVectorCopy @@ -405,6 +406,73 @@ Handle(GEOM_Object) GEOMImpl_ITransformOperations::TranslateVectorCopy return aCopy; } +//============================================================================= +/*! + * TranslateVectorDistance + */ +//============================================================================= +Handle(GEOM_Object) GEOMImpl_ITransformOperations::TranslateVectorDistance + (Handle(GEOM_Object) theObject, Handle(GEOM_Object) theVector, double theDistance, bool theCopy) +{ + SetErrorCode(KO); + + if (theObject.IsNull() || theVector.IsNull()) return NULL; + + Handle(GEOM_Function) aLastFunction = theObject->GetLastFunction(); + if (aLastFunction.IsNull()) return NULL; //There is no function which creates an object to be moved + + Handle(GEOM_Object) aCopy; //Add a new Copy object + Handle(GEOM_Function) aFunction; + + //Add a translate function + if (theCopy) { + aCopy = GetEngine()->AddObject(GetDocID(), theObject->GetType()); + aFunction = aCopy->AddFunction(GEOMImpl_TranslateDriver::GetID(), TRANSLATE_VECTOR_DISTANCE); + } + else { + aFunction = theObject->AddFunction(GEOMImpl_TranslateDriver::GetID(), TRANSLATE_VECTOR_DISTANCE); + } + if (aFunction.IsNull()) return NULL; + + //Check if the function is set correctly + if (aFunction->GetDriverGUID() != GEOMImpl_TranslateDriver::GetID()) return NULL; + + GEOMImpl_ITranslate aTI(aFunction); + aTI.SetVector(theVector->GetLastFunction()); + aTI.SetDistance(theDistance); +// aTI.SetShape(theObject->GetValue()); + aTI.SetOriginal(aLastFunction); + + //Compute the translation + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + if (!GetSolver()->ComputeFunction(aFunction)) { + SetErrorCode("Translation driver failed"); + return NULL; + } + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return NULL; + } + + //Make a Python command + if (theCopy) { + GEOM::TPythonDump(aFunction) << aCopy << " = geompy.MakeTranslationVectorDistance(" + << theObject << ", " << theVector << ", " << theDistance << ")"; + SetErrorCode(OK); + return aCopy; + } + + GEOM::TPythonDump(aFunction) << "geompy.TranslateVectorDistance(" + << theObject << ", " << theVector << ", " << theDistance << ", " << theCopy << ")"; + SetErrorCode(OK); + return theObject; +} + //============================================================================= /*! * Translate1D @@ -964,14 +1032,11 @@ Handle(GEOM_Object) GEOMImpl_ITransformOperations::ScaleShape { SetErrorCode(KO); - if (theObject.IsNull() || thePoint.IsNull()) return NULL; + if (theObject.IsNull()) return NULL; Handle(GEOM_Function) anOriginal = theObject->GetLastFunction(); if (anOriginal.IsNull()) return NULL; //There is no function which creates an object to be scaled - // Get last functions of the arguments - Handle(GEOM_Function) aPF = thePoint->GetLastFunction(); - //Add a scale function Handle(GEOM_Function) aFunction = theObject->AddFunction(GEOMImpl_ScaleDriver::GetID(), SCALE_SHAPE); @@ -980,11 +1045,17 @@ Handle(GEOM_Object) GEOMImpl_ITransformOperations::ScaleShape //Check if the function is set correctly if (aFunction->GetDriverGUID() != GEOMImpl_ScaleDriver::GetID()) return NULL; + // Set arguments GEOMImpl_IScale aTI (aFunction); aTI.SetShape(anOriginal); - aTI.SetPoint(aPF); aTI.SetFactor(theFactor); + // Set point argument + if (!thePoint.IsNull()) { + Handle(GEOM_Function) aPF = thePoint->GetLastFunction(); + aTI.SetPoint(aPF); + } + //Compute the scale try { #if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 @@ -1019,7 +1090,7 @@ Handle(GEOM_Object) GEOMImpl_ITransformOperations::ScaleShapeCopy { SetErrorCode(KO); - if (theObject.IsNull() || thePoint.IsNull()) return NULL; + if (theObject.IsNull()) return NULL; Handle(GEOM_Function) anOriginal = theObject->GetLastFunction(); if (anOriginal.IsNull()) return NULL; //There is no function which creates an object to be scaled @@ -1035,11 +1106,17 @@ Handle(GEOM_Object) GEOMImpl_ITransformOperations::ScaleShapeCopy //Check if the function is set correctly if (aFunction->GetDriverGUID() != GEOMImpl_ScaleDriver::GetID()) return NULL; + // Set arguments GEOMImpl_IScale aTI (aFunction); aTI.SetShape(anOriginal); - aTI.SetPoint(thePoint->GetLastFunction()); aTI.SetFactor(theFactor); + // Set point argument + if (!thePoint.IsNull()) { + Handle(GEOM_Function) aPF = thePoint->GetLastFunction(); + aTI.SetPoint(aPF); + } + //Compute the scale try { #if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 @@ -1064,6 +1141,85 @@ Handle(GEOM_Object) GEOMImpl_ITransformOperations::ScaleShapeCopy return aCopy; } +//============================================================================= +/*! + * ScaleShapeAlongAxes + */ +//============================================================================= +Handle(GEOM_Object) GEOMImpl_ITransformOperations::ScaleShapeAlongAxes (Handle(GEOM_Object) theObject, + Handle(GEOM_Object) thePoint, + double theFactorX, + double theFactorY, + double theFactorZ, + bool doCopy) +{ + SetErrorCode(KO); + + if (theObject.IsNull()) return NULL; + + Handle(GEOM_Function) anOriginal = theObject->GetLastFunction(); + if (anOriginal.IsNull()) return NULL; //There is no function which creates an object to be scaled + + //Add a scale function + Handle(GEOM_Object) aCopy; //Add a new Copy object + Handle(GEOM_Function) aFunction; + if (doCopy) { + aCopy = GetEngine()->AddObject(GetDocID(), theObject->GetType()); + aFunction = aCopy->AddFunction(GEOMImpl_ScaleDriver::GetID(), SCALE_SHAPE_AXES_COPY); + } + else { + aFunction = theObject->AddFunction(GEOMImpl_ScaleDriver::GetID(), SCALE_SHAPE_AXES); + } + if (aFunction.IsNull()) return NULL; + + //Check if the function is set correctly + if (aFunction->GetDriverGUID() != GEOMImpl_ScaleDriver::GetID()) return NULL; + + // Set arguments + GEOMImpl_IScale aTI (aFunction); + aTI.SetShape(anOriginal); + aTI.SetFactorX(theFactorX); + aTI.SetFactorY(theFactorY); + aTI.SetFactorZ(theFactorZ); + + // Set point (optional argument) + if (!thePoint.IsNull()) { + Handle(GEOM_Function) aPF = thePoint->GetLastFunction(); + aTI.SetPoint(aPF); + } + + //Compute the scale + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + if (!GetSolver()->ComputeFunction(aFunction)) { + SetErrorCode("Scale driver failed"); + return NULL; + } + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return NULL; + } + + SetErrorCode(OK); + + //Make a Python command + if (doCopy) { + GEOM::TPythonDump(aFunction) << aCopy << " = geompy.MakeScaleAlongAxes(" + << theObject << ", " << thePoint << ", " + << theFactorX << ", " << theFactorY << ", " << theFactorZ << ")"; + return aCopy; + } + + GEOM::TPythonDump(aFunction) << "geompy.TrsfOp.ScaleShapeAlongAxes(" + << theObject << ", " << thePoint << ", " + << theFactorX << ", " << theFactorY << ", " << theFactorZ << ")"; + return theObject; +} + //============================================================================= /*! * PositionShape @@ -1180,6 +1336,75 @@ Handle(GEOM_Object) GEOMImpl_ITransformOperations::PositionShapeCopy return aCopy; } +//============================================================================= +/*! + * PositionAlongPath + */ +//============================================================================= +Handle(GEOM_Object) GEOMImpl_ITransformOperations::PositionAlongPath + (Handle(GEOM_Object) theObject, Handle(GEOM_Object) thePath, + double theDistance, bool theCopy, bool theReverse) +{ + SetErrorCode(KO); + + if (theObject.IsNull() || thePath.IsNull()) return NULL; + + Handle(GEOM_Function) anOriginal = theObject->GetLastFunction(); + if (anOriginal.IsNull()) return NULL; //There is no function which creates an object to be set in position + + //Add a position function + Handle(GEOM_Function) aFunction; + Handle(GEOM_Object) aCopy; + + if (theCopy) { + aCopy = GetEngine()->AddObject(GetDocID(), theObject->GetType()); + aFunction = aCopy->AddFunction(GEOMImpl_PositionDriver::GetID(), POSITION_ALONG_PATH); + } + else + aFunction = theObject->AddFunction(GEOMImpl_PositionDriver::GetID(), POSITION_ALONG_PATH); + + if (aFunction.IsNull()) return NULL; + + //Check if the function is set correctly + if (aFunction->GetDriverGUID() != GEOMImpl_PositionDriver::GetID()) return NULL; + + GEOMImpl_IPosition aTI (aFunction); + aTI.SetShape(anOriginal); + aTI.SetPath(thePath->GetLastFunction()); + aTI.SetDistance(theDistance); + aTI.SetReverse(theReverse); + + //Compute the position + try { +#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 + OCC_CATCH_SIGNALS; +#endif + if (!GetSolver()->ComputeFunction(aFunction)) { + SetErrorCode("Position driver failed"); + return NULL; + } + } + catch (Standard_Failure) { + Handle(Standard_Failure) aFail = Standard_Failure::Caught(); + SetErrorCode(aFail->GetMessageString()); + return NULL; + } + + //Make a Python command + if (theCopy) { + GEOM::TPythonDump(aFunction) << aCopy << " = geompy.PositionAlongPath(" + << theObject << ", " << thePath << ", " << theDistance << ", " << theCopy << ", " << theReverse << ")"; + SetErrorCode(OK); + return aCopy; + } + + GEOM::TPythonDump(aFunction) << "geompy.TrsfOp.PositionAlongPath(" + << theObject << ", " << thePath << ", " << theDistance << ", " << theCopy << ", " << theReverse << ")"; + + SetErrorCode(OK); + return theObject; +} + //============================================================================= /*! * Rotate @@ -1229,7 +1454,7 @@ Handle(GEOM_Object) GEOMImpl_ITransformOperations::Rotate (Handle(GEOM_Object) t } //Make a Python command - GEOM::TPythonDump(aFunction) << "geompy.TrsfOp.Rotate(" << theObject + GEOM::TPythonDump(aFunction) << "geompy.Rotate(" << theObject << ", " << theAxis << ", " << theAngle * 180.0 / PI << "*math.pi/180.0)"; SetErrorCode(OK); diff --git a/src/GEOMImpl/GEOMImpl_ITransformOperations.hxx b/src/GEOMImpl/GEOMImpl_ITransformOperations.hxx index 843c8a12a..99c52595e 100644 --- a/src/GEOMImpl/GEOMImpl_ITransformOperations.hxx +++ b/src/GEOMImpl/GEOMImpl_ITransformOperations.hxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOMImpl_ITransformOperations_HXX_ #define _GEOMImpl_ITransformOperations_HXX_ @@ -27,96 +28,131 @@ #include "GEOM_Object.hxx" #include -class GEOMImpl_ITransformOperations : public GEOM_IOperations { +class GEOMImpl_ITransformOperations : public GEOM_IOperations +{ public: Standard_EXPORT GEOMImpl_ITransformOperations(GEOM_Engine* theEngine, int theDocID); Standard_EXPORT ~GEOMImpl_ITransformOperations(); Standard_EXPORT Handle(GEOM_Object) TranslateTwoPoints (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) thePoint1, - Handle(GEOM_Object) thePoint2); + Handle(GEOM_Object) thePoint1, + Handle(GEOM_Object) thePoint2); Standard_EXPORT Handle(GEOM_Object) TranslateTwoPointsCopy (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) thePoint1, - Handle(GEOM_Object) thePoint2); + Handle(GEOM_Object) thePoint1, + Handle(GEOM_Object) thePoint2); - Standard_EXPORT Handle(GEOM_Object) TranslateDXDYDZ (Handle(GEOM_Object) theObject, double theX, double theY, double theZ); + Standard_EXPORT Handle(GEOM_Object) TranslateDXDYDZ (Handle(GEOM_Object) theObject, + double theX, double theY, double theZ); - Standard_EXPORT Handle(GEOM_Object) TranslateDXDYDZCopy (Handle(GEOM_Object) theObject, double theX, double theY, double theZ); + Standard_EXPORT Handle(GEOM_Object) TranslateDXDYDZCopy (Handle(GEOM_Object) theObject, + double theX, double theY, double theZ); Standard_EXPORT Handle(GEOM_Object) TranslateVector (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) theVector); + Handle(GEOM_Object) theVector); Standard_EXPORT Handle(GEOM_Object) TranslateVectorCopy (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) theVector); + Handle(GEOM_Object) theVector); - Standard_EXPORT Handle(GEOM_Object) Translate1D (Handle(GEOM_Object) theObject, Handle(GEOM_Object) theVector, double theStep, Standard_Integer theNbTimes); + Standard_EXPORT Handle(GEOM_Object) TranslateVectorDistance (Handle(GEOM_Object) theObject, + Handle(GEOM_Object) theVector, + double theDistance, + bool theCopy); - Standard_EXPORT Handle(GEOM_Object) Translate2D (Handle(GEOM_Object) theObject, Handle(GEOM_Object) theVector, double theStep1, Standard_Integer theNbTimes1, - Handle(GEOM_Object) theVector2, double theStep2, Standard_Integer theNbTimes2); + Standard_EXPORT Handle(GEOM_Object) Translate1D (Handle(GEOM_Object) theObject, + Handle(GEOM_Object) theVector, + double theStep, + Standard_Integer theNbTimes); + + Standard_EXPORT Handle(GEOM_Object) Translate2D (Handle(GEOM_Object) theObject, + Handle(GEOM_Object) theVector, + double theStep1, + Standard_Integer theNbTimes1, + Handle(GEOM_Object) theVector2, + double theStep2, + Standard_Integer theNbTimes2); Standard_EXPORT Handle(GEOM_Object) MirrorPlane (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) thePlane); + Handle(GEOM_Object) thePlane); Standard_EXPORT Handle(GEOM_Object) MirrorPlaneCopy (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) thePlane); + Handle(GEOM_Object) thePlane); Standard_EXPORT Handle(GEOM_Object) MirrorAxis (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) theAxis); + Handle(GEOM_Object) theAxis); Standard_EXPORT Handle(GEOM_Object) MirrorAxisCopy (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) theAxis); + Handle(GEOM_Object) theAxis); Standard_EXPORT Handle(GEOM_Object) MirrorPoint (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) thePoint); + Handle(GEOM_Object) thePoint); Standard_EXPORT Handle(GEOM_Object) MirrorPointCopy (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) thePoint); + Handle(GEOM_Object) thePoint); Standard_EXPORT Handle(GEOM_Object) OffsetShape (Handle(GEOM_Object) theObject, - double theOffset); + double theOffset); Standard_EXPORT Handle(GEOM_Object) OffsetShapeCopy (Handle(GEOM_Object) theObject, - double theOffset); + double theOffset); Standard_EXPORT Handle(GEOM_Object) ScaleShape (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) thePoint, - double theFactor); + Handle(GEOM_Object) thePoint, + double theFactor); Standard_EXPORT Handle(GEOM_Object) ScaleShapeCopy (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) thePoint, - double theFactor); + Handle(GEOM_Object) thePoint, + double theFactor); + + Standard_EXPORT Handle(GEOM_Object) ScaleShapeAlongAxes (Handle(GEOM_Object) theObject, + Handle(GEOM_Object) thePoint, + double theFactorX, + double theFactorY, + double theFactorZ, + bool doCopy); Standard_EXPORT Handle(GEOM_Object) PositionShape (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) theStartLCS, - Handle(GEOM_Object) theEndLCS); + Handle(GEOM_Object) theStartLCS, + Handle(GEOM_Object) theEndLCS); Standard_EXPORT Handle(GEOM_Object) PositionShapeCopy (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) theStartLCS, - Handle(GEOM_Object) theEndLCS); + Handle(GEOM_Object) theStartLCS, + Handle(GEOM_Object) theEndLCS); - Standard_EXPORT Handle(GEOM_Object) Rotate (Handle(GEOM_Object) theObject, Handle(GEOM_Object) theAxis, double theAngle); + Standard_EXPORT Handle(GEOM_Object) PositionAlongPath (Handle(GEOM_Object) theObject, + Handle(GEOM_Object) thePath, + double theDistance, + bool theCopy, + bool theReverse); - Standard_EXPORT Handle(GEOM_Object) RotateCopy (Handle(GEOM_Object) theObject, Handle(GEOM_Object) theAxis, double theAngle); + Standard_EXPORT Handle(GEOM_Object) Rotate (Handle(GEOM_Object) theObject, + Handle(GEOM_Object) theAxis, + double theAngle); - Standard_EXPORT Handle(GEOM_Object) Rotate1D (Handle(GEOM_Object) theObject, Handle(GEOM_Object) theAxis, Standard_Integer theNbTimes); - - Standard_EXPORT Handle(GEOM_Object) Rotate2D (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) theAxis, - double theAngle, - Standard_Integer theNbTimes1, - double theStep, - Standard_Integer theNbTimes2); + Standard_EXPORT Handle(GEOM_Object) RotateCopy (Handle(GEOM_Object) theObject, + Handle(GEOM_Object) theAxis, + double theAngle); + + Standard_EXPORT Handle(GEOM_Object) Rotate1D (Handle(GEOM_Object) theObject, + Handle(GEOM_Object) theAxis, + Standard_Integer theNbTimes); + + Standard_EXPORT Handle(GEOM_Object) Rotate2D (Handle(GEOM_Object) theObject, + Handle(GEOM_Object) theAxis, + double theAngle, + Standard_Integer theNbTimes1, + double theStep, + Standard_Integer theNbTimes2); Standard_EXPORT Handle(GEOM_Object) RotateThreePoints (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) theCentPoint, - Handle(GEOM_Object) thePoint1, - Handle(GEOM_Object) thePoint2); + Handle(GEOM_Object) theCentPoint, + Handle(GEOM_Object) thePoint1, + Handle(GEOM_Object) thePoint2); - Standard_EXPORT Handle(GEOM_Object) RotateThreePointsCopy (Handle(GEOM_Object) theObject, - Handle(GEOM_Object) theCentPoint, - Handle(GEOM_Object) thePoint1, - Handle(GEOM_Object) thePoint2); + Standard_EXPORT Handle(GEOM_Object) RotateThreePointsCopy (Handle(GEOM_Object) theObject, + Handle(GEOM_Object) theCentPoint, + Handle(GEOM_Object) thePoint1, + Handle(GEOM_Object) thePoint2); }; diff --git a/src/GEOMImpl/GEOMImpl_ITranslate.hxx b/src/GEOMImpl/GEOMImpl_ITranslate.hxx index 0ca4201e4..4c6692440 100755 --- a/src/GEOMImpl/GEOMImpl_ITranslate.hxx +++ b/src/GEOMImpl/GEOMImpl_ITranslate.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the Translate creation. - - +// #include "GEOM_Function.hxx" #define TRANSLATE_ARG_POINT1 1 @@ -33,7 +34,8 @@ #define TRANSLATE_ARG_VECTOR2 11 #define TRANSLATE_ARG_DX 12 #define TRANSLATE_ARG_DY 13 -#define TRANSLATE_ARG_DZ 14 +#define TRANSLATE_ARG_DZ 14 +#define TRANSLATE_ARG_DISTANCE 15 class GEOMImpl_ITranslate { @@ -81,6 +83,10 @@ class GEOMImpl_ITranslate double GetDX() { return _func->GetReal(TRANSLATE_ARG_DX); } + void SetDistance(double theDistance) { return _func->SetReal(TRANSLATE_ARG_DISTANCE, theDistance); } + + double GetDistance() { return _func->GetReal(TRANSLATE_ARG_DISTANCE); } + void SetDY(double theDY) { return _func->SetReal(TRANSLATE_ARG_DY, theDY); } double GetDY() { return _func->GetReal(TRANSLATE_ARG_DY); } diff --git a/src/GEOMImpl/GEOMImpl_IVector.hxx b/src/GEOMImpl/GEOMImpl_IVector.hxx index 63b72f370..fc63787ac 100644 --- a/src/GEOMImpl/GEOMImpl_IVector.hxx +++ b/src/GEOMImpl/GEOMImpl_IVector.hxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //NOTE: This is an intreface to a function for the vector creation. - - +// #include "GEOM_Function.hxx" #define VEC_ARG_DX 1 diff --git a/src/GEOMImpl/GEOMImpl_ImportDriver.cxx b/src/GEOMImpl/GEOMImpl_ImportDriver.cxx index 3249a485e..4a309a0b6 100644 --- a/src/GEOMImpl/GEOMImpl_ImportDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_ImportDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_ImportDriver.hxx b/src/GEOMImpl/GEOMImpl_ImportDriver.hxx index 318ade68e..c165d1aab 100644 --- a/src/GEOMImpl/GEOMImpl_ImportDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_ImportDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_ImportDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_ImportDriver_HeaderFile #define _GEOMImpl_ImportDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_LineDriver.cxx b/src/GEOMImpl/GEOMImpl_LineDriver.cxx index 4f7b9263c..9e9a18e05 100644 --- a/src/GEOMImpl/GEOMImpl_LineDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_LineDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_LineDriver.hxx b/src/GEOMImpl/GEOMImpl_LineDriver.hxx index 72041a016..4f5d8e2c5 100644 --- a/src/GEOMImpl/GEOMImpl_LineDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_LineDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_LineDriver.hxx // Module : GEOMImpl - +// #ifndef _GEOMImpl_LineDriver_HeaderFile #define _GEOMImpl_LineDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_MarkerDriver.cxx b/src/GEOMImpl/GEOMImpl_MarkerDriver.cxx index b4d605340..bbe8a5f38 100644 --- a/src/GEOMImpl/GEOMImpl_MarkerDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_MarkerDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_MarkerDriver.hxx b/src/GEOMImpl/GEOMImpl_MarkerDriver.hxx index d95295692..90222bdd9 100644 --- a/src/GEOMImpl/GEOMImpl_MarkerDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_MarkerDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_MarkerDriver.hxx // Module : GEOMImpl - +// #ifndef _GEOMImpl_MarkerDriver_HeaderFile #define _GEOMImpl_MarkerDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_MeasureDriver.cxx b/src/GEOMImpl/GEOMImpl_MeasureDriver.cxx index 69ffeabd8..b9dff3e14 100644 --- a/src/GEOMImpl/GEOMImpl_MeasureDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_MeasureDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_MeasureDriver.hxx b/src/GEOMImpl/GEOMImpl_MeasureDriver.hxx index cceeb6df0..9463fed63 100644 --- a/src/GEOMImpl/GEOMImpl_MeasureDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_MeasureDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_MeasureDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_MeasureDriver_HeaderFile #define _GEOMImpl_MeasureDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_MirrorDriver.cxx b/src/GEOMImpl/GEOMImpl_MirrorDriver.cxx index 218e1fee2..69a8c599d 100644 --- a/src/GEOMImpl/GEOMImpl_MirrorDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_MirrorDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_MirrorDriver.hxx b/src/GEOMImpl/GEOMImpl_MirrorDriver.hxx index f8dfd7676..3fafbd3aa 100644 --- a/src/GEOMImpl/GEOMImpl_MirrorDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_MirrorDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_MirrorDriver.hxx // Module : GEOMImpl - +// #ifndef _GEOMImpl_MirrorDriver_HeaderFile #define _GEOMImpl_MirrorDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_OffsetDriver.cxx b/src/GEOMImpl/GEOMImpl_OffsetDriver.cxx index 42d437e71..ff68f7e8d 100644 --- a/src/GEOMImpl/GEOMImpl_OffsetDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_OffsetDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_OffsetDriver.hxx b/src/GEOMImpl/GEOMImpl_OffsetDriver.hxx index b9ea5c641..b171523fe 100644 --- a/src/GEOMImpl/GEOMImpl_OffsetDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_OffsetDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_OffsetDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_OffsetDriver_HeaderFile #define _GEOMImpl_OffsetDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_PartitionDriver.cxx b/src/GEOMImpl/GEOMImpl_PartitionDriver.cxx index b68177098..40d68aa88 100644 --- a/src/GEOMImpl/GEOMImpl_PartitionDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_PartitionDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include @@ -46,6 +47,9 @@ #include #include +#include +#include + #include #include #include @@ -258,7 +262,15 @@ Standard_Integer GEOMImpl_PartitionDriver::Execute(TFunction_Logbook& log) const if (aShape.IsNull()) return 0; if (!BRepAlgo::IsValid(aShape)) { - Standard_ConstructionError::Raise("Partition aborted : non valid shape result"); + // 08.07.2008 added by skl during fixing bug 19761 from Mantis + ShapeFix_ShapeTolerance aSFT; + aSFT.LimitTolerance(aShape, Precision::Confusion(), + Precision::Confusion(), TopAbs_SHAPE); + Handle(ShapeFix_Shape) aSfs = new ShapeFix_Shape(aShape); + aSfs->Perform(); + aShape = aSfs->Shape(); + if (!BRepAlgo::IsValid(aShape)) + Standard_ConstructionError::Raise("Partition aborted : non valid shape result"); } aFunction->SetValue(aShape); diff --git a/src/GEOMImpl/GEOMImpl_PartitionDriver.hxx b/src/GEOMImpl/GEOMImpl_PartitionDriver.hxx index 095d3c1e5..4c0e0d684 100644 --- a/src/GEOMImpl/GEOMImpl_PartitionDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_PartitionDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_PartitionDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_PartitionDriver_HeaderFile #define _GEOMImpl_PartitionDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_PipeDriver.cxx b/src/GEOMImpl/GEOMImpl_PipeDriver.cxx index df73fdb80..430cb0ef9 100644 --- a/src/GEOMImpl/GEOMImpl_PipeDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_PipeDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include @@ -25,6 +26,7 @@ #include #include #include +#include #include #include #include @@ -146,7 +148,7 @@ static bool FillForOtherEdges(const TopoDS_Shape& F1, ShapeAnalysis_Edge sae; while(1) { if(!aMapVertEdge1.Contains(VS1)) - cout<<" FillForOtherEdges: map aMapVertEdge1 not contains key VS1"<edge for created pipe edges @@ -1506,7 +1508,7 @@ static TopoDS_Shape CreatePipeShellsWithoutPath(GEOMImpl_IPipe* aCI) //if(nbff!=3) continue; - cout<<" make pipe for "<IsKind(STANDARD_TYPE(Geom_RectangularTrimmedSurface))) { @@ -1550,12 +1552,12 @@ static TopoDS_Shape CreatePipeShellsWithoutPath(GEOMImpl_IPipe* aCI) TopoDS_Edge E1 = TopoDS::Edge(anExpE.Current()); //nbee++; if(!FF.Contains(E1)) - cout<<"map FF not contains key E1"<Add(anExp.Current()); } aSewing->Perform(); - cout<<" shell for face "<SewedShape(); //BRepTools::Write(aSewShape,"/dn02/users_Linux/skl/work/Bugs/14857/sew.brep"); if( aSewShape.ShapeType() == TopAbs_SHELL ) { @@ -1810,16 +1812,16 @@ static TopoDS_Shape CreatePipeShellsWithoutPath(GEOMImpl_IPipe* aCI) B.MakeSolid(aSolid); B.Add(aSolid,aShell); B.Add(aComp,aSolid); - cout<<" solid for face "<GetBase(); + Handle(GEOM_Function) aRefVec = aCIBN->GetVector(); + TopoDS_Shape aShapeBase = aRefBase->GetValue(); + TopoDS_Shape aShapeVec = aRefVec->GetValue(); + + if (aShapeBase.IsNull()) { + if(aCIBN) delete aCIBN; + Standard_NullObject::Raise("MakePipe aborted : null base argument"); + } + + TopoDS_Shape aProf; + if( aShapeBase.ShapeType() == TopAbs_VERTEX ) { + aProf = aShapeBase; + } + else if( aShapeBase.ShapeType() == TopAbs_EDGE) { + aProf = BRepBuilderAPI_MakeWire(TopoDS::Edge(aShapeBase)).Shape(); + } + else if( aShapeBase.ShapeType() == TopAbs_WIRE) { + aProf = aShapeBase; + } + else if( aShapeBase.ShapeType() == TopAbs_FACE) { + TopExp_Explorer wexp(aShapeBase,TopAbs_WIRE); + aProf = wexp.Current(); + } + else { + Standard_TypeMismatch::Raise + ("MakePipe aborted : invalid type of base"); + } + BRepOffsetAPI_MakePipeShell PipeBuilder(aWirePath); + PipeBuilder.Add(aProf); + + if (aShapeVec.IsNull()) { + if(aCIBN) delete aCIBN; + Standard_NullObject::Raise + ("MakePipe aborted : null vector argument"); + } + if (aShapeVec.ShapeType() != TopAbs_EDGE) + Standard_TypeMismatch::Raise + ("MakePipe aborted: invalid type of vector"); + TopoDS_Edge anEdge = TopoDS::Edge(aShapeVec); + TopoDS_Vertex V1, V2; + TopExp::Vertices(anEdge, V1, V2, Standard_True); + if (V1.IsNull() || V2.IsNull()) + Standard_NullObject::Raise + ("MakePipe aborted: vector is not defined"); + gp_Vec aVec(BRep_Tool::Pnt(V1), BRep_Tool::Pnt(V2)); + gp_Dir BiNormal(aVec); + PipeBuilder.SetMode(BiNormal); + PipeBuilder.Build(); + if( aShapeBase.ShapeType() == TopAbs_FACE) { + PipeBuilder.MakeSolid(); + } + + return PipeBuilder.Shape(); +} + + //======================================================================= //function : Execute //purpose : @@ -1870,6 +1938,8 @@ Standard_Integer GEOMImpl_PipeDriver::Execute(TFunction_Logbook& log) const aCI = new GEOMImpl_IPipeShellSect(aFunction); else if(aType == PIPE_SHELLS_WITHOUT_PATH) aCI = new GEOMImpl_IPipeShellSect(aFunction); + else if(aType == PIPE_BI_NORMAL_ALONG_VECTOR) + aCI = new GEOMImpl_IPipeBiNormal(aFunction); else return 0; @@ -1880,7 +1950,7 @@ Standard_Integer GEOMImpl_PipeDriver::Execute(TFunction_Logbook& log) const TopoDS_Shape aShapePath = aRefPath->GetValue(); if (aShapePath.IsNull()) { - cout<<"Driver : path is null"< #include diff --git a/src/GEOMImpl/GEOMImpl_PlaneDriver.hxx b/src/GEOMImpl/GEOMImpl_PlaneDriver.hxx index 926d1e905..8eb27642a 100644 --- a/src/GEOMImpl/GEOMImpl_PlaneDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_PlaneDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_PlaneDriver.hxx // Module : GEOMImpl - +// #ifndef _GEOMImpl_PlaneDriver_HeaderFile #define _GEOMImpl_PlaneDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_PointDriver.cxx b/src/GEOMImpl/GEOMImpl_PointDriver.cxx index a511c53ea..accc93779 100644 --- a/src/GEOMImpl/GEOMImpl_PointDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_PointDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include @@ -36,7 +37,11 @@ #include #include +#include #include +#include +#include + //======================================================================= //function : GetID @@ -57,6 +62,7 @@ GEOMImpl_PointDriver::GEOMImpl_PointDriver() { } + //======================================================================= //function : Execute //purpose : @@ -74,7 +80,8 @@ Standard_Integer GEOMImpl_PointDriver::Execute(TFunction_Logbook& log) const if (aType == POINT_XYZ) { aPnt = gp_Pnt(aPI.GetX(), aPI.GetY(), aPI.GetZ()); - } else if (aType == POINT_XYZ_REF) { + } + else if (aType == POINT_XYZ_REF) { Handle(GEOM_Function) aRefPoint = aPI.GetRef(); TopoDS_Shape aRefShape = aRefPoint->GetValue(); @@ -85,8 +92,8 @@ Standard_Integer GEOMImpl_PointDriver::Execute(TFunction_Logbook& log) const gp_Pnt P = BRep_Tool::Pnt(TopoDS::Vertex(aRefShape)); aPnt = gp_Pnt(P.X() + aPI.GetX(), P.Y() + aPI.GetY(), P.Z() + aPI.GetZ()); - } else if (aType == POINT_CURVE_PAR) { - + } + else if (aType == POINT_CURVE_PAR) { Handle(GEOM_Function) aRefCurve = aPI.GetCurve(); TopoDS_Shape aRefShape = aRefCurve->GetValue(); if (aRefShape.ShapeType() != TopAbs_EDGE) { @@ -97,8 +104,24 @@ Standard_Integer GEOMImpl_PointDriver::Execute(TFunction_Logbook& log) const Handle(Geom_Curve) aCurve = BRep_Tool::Curve(TopoDS::Edge(aRefShape), aFP, aLP); aP = aFP + (aLP - aFP) * aPI.GetParameter(); aPnt = aCurve->Value(aP); - - } else if (aType == POINT_LINES_INTERSECTION) { + } + else if (aType == POINT_SURFACE_PAR) { + Handle(GEOM_Function) aRefCurve = aPI.GetSurface(); + TopoDS_Shape aRefShape = aRefCurve->GetValue(); + if (aRefShape.ShapeType() != TopAbs_FACE) { + Standard_TypeMismatch::Raise + ("Point On Surface creation aborted : surface shape is not a face"); + } + TopoDS_Face F = TopoDS::Face(aRefShape); + Handle(Geom_Surface) aSurf = BRep_Tool::Surface(F); + Standard_Real U1,U2,V1,V2; + //aSurf->Bounds(U1,U2,V1,V2); + ShapeAnalysis::GetFaceUVBounds(F,U1,U2,V1,V2); + Standard_Real U = U1 + (U2-U1) * aPI.GetParameter(); + Standard_Real V = V1 + (V2-V1) * aPI.GetParameter2(); + aPnt = aSurf->Value(U,V); + } + else if (aType == POINT_LINES_INTERSECTION) { Handle(GEOM_Function) aRef1 = aPI.GetLine1(); Handle(GEOM_Function) aRef2 = aPI.GetLine2(); diff --git a/src/GEOMImpl/GEOMImpl_PointDriver.hxx b/src/GEOMImpl/GEOMImpl_PointDriver.hxx index 50f098be7..acffa0196 100644 --- a/src/GEOMImpl/GEOMImpl_PointDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_PointDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_PointDriver.hxx // Module : GEOMImpl - +// #ifndef _GEOMImpl_PointDriver_HeaderFile #define _GEOMImpl_PointDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_PolylineDriver.cxx b/src/GEOMImpl/GEOMImpl_PolylineDriver.cxx index a079f608c..5a295e43b 100644 --- a/src/GEOMImpl/GEOMImpl_PolylineDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_PolylineDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_PolylineDriver.hxx b/src/GEOMImpl/GEOMImpl_PolylineDriver.hxx index 0f9b7a6a8..197087d66 100644 --- a/src/GEOMImpl/GEOMImpl_PolylineDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_PolylineDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_PolylineDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_PolylineDriver_HeaderFile #define _GEOMImpl_PolylineDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_PositionDriver.cxx b/src/GEOMImpl/GEOMImpl_PositionDriver.cxx index 789575c79..2bdec65f3 100644 --- a/src/GEOMImpl/GEOMImpl_PositionDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_PositionDriver.cxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - //#include - +// #include #include #include @@ -29,19 +30,33 @@ // OCCT Includes #include +#include +#include #include +#include +#include #include #include #include +#include +#include #include #include +#include #include #include +#include #include #include +#include +#include +#include +#include #include #include +#include +#include //======================================================================= //function : GetID @@ -130,6 +145,183 @@ Standard_Integer GEOMImpl_PositionDriver::Execute(TFunction_Logbook& log) const BRepBuilderAPI_Transform aBRepTrsf (aShapeBase, aTrsf, Standard_False); aShape = aBRepTrsf.Shape(); } + else if (aType == POSITION_ALONG_PATH) { + Handle(GEOM_Function) aRefShape = aCI.GetShape(); + Handle(GEOM_Function) aPathShape = aCI.GetPath(); + double aValue = aCI.GetDistance(); + bool aReversed = aCI.GetReverse(); + + TopoDS_Shape aShapeBase = aRefShape->GetValue(); + TopoDS_Shape aPath = aPathShape->GetValue(); + + if (aShapeBase.IsNull() || aPath.IsNull()) + return 0; + + //Get a Center Of Mass Of Base Object + GProp_GProps aSystem; + gp_Pnt aCenterMass; + if (aShapeBase.ShapeType() == TopAbs_VERTEX) { + aCenterMass = BRep_Tool::Pnt(TopoDS::Vertex(aShapeBase)); + } else if (aShapeBase.ShapeType() == TopAbs_EDGE || aShapeBase.ShapeType() == TopAbs_WIRE) { + BRepGProp::LinearProperties(aShapeBase, aSystem); + aCenterMass = aSystem.CentreOfMass(); + } else if (aShapeBase.ShapeType() == TopAbs_FACE || aShapeBase.ShapeType() == TopAbs_SHELL) { + BRepGProp::SurfaceProperties(aShapeBase, aSystem); + aCenterMass = aSystem.CentreOfMass(); + } else { + BRepGProp::VolumeProperties(aShapeBase, aSystem); + aCenterMass = aSystem.CentreOfMass(); + } + + TopoDS_Shape aTrimmedPath; + gp_Trsf aTrsf; + Handle(Geom_Curve) aCurve; + Standard_Real aFirst =0.,aLast=0.; + Standard_Real aParam = 0.; + Standard_Real aLength = 0.; + + gp_Pnt aPFirst, aPLast; + + if ( aPath.ShapeType() == TopAbs_EDGE ) { // The Path is Edge + TopoDS_Edge anEdge = TopoDS::Edge(aPath); + + BRep_Tool::Range(anEdge,aFirst,aLast); + aCurve = BRep_Tool::Curve(anEdge,aFirst,aLast); + if (aReversed) + aCurve = aCurve->Reversed(); + + aCurve->D0(aFirst, aPFirst); + aCurve->D0(aLast, aPLast); + + // Translate a CenterMass of Base Shape to the start of the path + if ( !aPFirst.IsEqual(aCenterMass, gp::Resolution()) ) { + gp_Trsf aCurTrsf; + aCurTrsf.SetTranslation(aCenterMass, aPFirst); + aTrsf.PreMultiply(aCurTrsf); + } + aParam = aFirst + aValue*(aLast - aFirst); // Calculate parameter + } else if ( aPath.ShapeType() == TopAbs_WIRE ) { // The path Shape is Wire + TopoDS_Wire aWire = TopoDS::Wire(aPath); + + // fix edges order + Handle(ShapeFix_Wire) aFixWire = new ShapeFix_Wire; + aFixWire->Load(aWire); + aFixWire->FixReorder(); + aWire = aFixWire->Wire(); + + TopExp_Explorer ex; + TopTools_SequenceOfShape Edges; + Standard_Real nbEdges = 0.; + BRepTools_WireExplorer aWE (aWire); + for (; aWE.More(); aWE.Next(), nbEdges++) // Explore a Wire on Edges + Edges.Append(aWE.Current()); + + Standard_Real aSummOfLen =0.; + Standard_Real aCurLen =0.; + GeomAdaptor_Curve aAdC; + + for(int i=1; i<=Edges.Length(); i++) { // Calculate summary Lenght of edges + TopoDS_Edge anEdge = TopoDS::Edge(Edges.Value(i)); + BRep_Tool::Range(anEdge,aFirst,aLast); + aCurve = BRep_Tool::Curve(anEdge,aFirst,aLast); + aAdC.Load(aCurve,aFirst,aLast); + aCurLen = GCPnts_AbscissaPoint::Length(aAdC,aFirst,aLast); + aSummOfLen += aCurLen; + } + + // Move BaseShape to the Start Of the Curve + TopoDS_Edge anEdge; + if (!aReversed) + anEdge = TopoDS::Edge(Edges.Value(1)); + else + anEdge = TopoDS::Edge(Edges.Value(Edges.Length())); + + BRep_Tool::Range(anEdge,aFirst,aLast); + aCurve = BRep_Tool::Curve(anEdge,aFirst,aLast); + aCurve->D0(aFirst, aPFirst); + aCurve->D0(aLast, aPLast); + if ( !aPFirst.IsEqual(aCenterMass, gp::Resolution()) ) { + gp_Trsf aCurTrsf; + if (aReversed && anEdge.Orientation() == TopAbs_FORWARD) + aPFirst = aPLast; + + aCurTrsf.SetTranslation(aCenterMass, aPFirst); + aTrsf.PreMultiply(aCurTrsf); + } + + Standard_Real aWireLen = aSummOfLen*aValue; + aSummOfLen = 0; + for(int i=1; i<=Edges.Length(); i++) { + TopoDS_Edge anEdge; + if (!aReversed) + anEdge = TopoDS::Edge(Edges.Value(i)); + else + anEdge = TopoDS::Edge(Edges.Value(Edges.Length() - i + 1)); + + aCurve = BRep_Tool::Curve(anEdge,aFirst,aLast); + BRep_Tool::Range(anEdge,aFirst,aLast); + + if (!aReversed && anEdge.Orientation() == TopAbs_REVERSED) + aCurve = aCurve->Reversed(); + + if (aReversed && anEdge.Orientation() == TopAbs_FORWARD) + aCurve = aCurve->Reversed(); + + aAdC.Load(aCurve,aFirst,aLast); + aCurLen = GCPnts_AbscissaPoint::Length(aAdC,aFirst,aLast); + + if ( aWireLen > (aSummOfLen + aCurLen) ) { // Transform a Base object along this Edge + aSummOfLen += aCurLen; + gp_Pnt aP1, aP2; + gp_Vec aStartVec1, aStartVec2, aDestVec1, aDestVec2; + aCurve->D2(aFirst, aP1, aStartVec1, aStartVec2 ); + aCurve->D2(aLast, aP2, aDestVec1, aDestVec2 ); + gp_Trsf aCurTrsf; + if (aStartVec2.Magnitude() > gp::Resolution() && aDestVec2.Magnitude() > gp::Resolution()) { + gp_Ax3 aStartAx3(aP1, aStartVec1, aStartVec2); + gp_Ax3 aDestAx3(aP2, aDestVec1, aDestVec2); + aCurTrsf.SetDisplacement(aStartAx3, aDestAx3); + } else + aCurTrsf.SetTranslation(aP1, aP2); + + aTrsf.PreMultiply(aCurTrsf); + } + else { + aLength = aWireLen - aSummOfLen; + GCPnts_AbscissaPoint anAbsc(aAdC,aLength,aFirst); + if(anAbsc.IsDone()) + aParam = anAbsc.Parameter(); + break; + } + } + } else + return 0; // Unknown Type + + gp_Trsf aCurTrsf; + gp_Pnt aP1, aP2; + gp_Vec aStartVec1, aStartVec2, aDestVec1, aDestVec2; + aCurve->D2(aFirst, aP1, aStartVec1, aStartVec2 ); + aCurve->D2(aParam, aP2, aDestVec1, aDestVec2 ); + + if (aStartVec2.Magnitude() > gp::Resolution() && aDestVec2.Magnitude() > gp::Resolution()) { + gp_Ax3 aStartAx3(aP1, aStartVec1, aStartVec2); + gp_Ax3 aDestAx3(aP2, aDestVec1, aDestVec2); + aCurTrsf.SetDisplacement(aStartAx3, aDestAx3); + } else + aCurTrsf.SetTranslation(aP1, aP2); + + aTrsf.PreMultiply(aCurTrsf); + + if ( !aPFirst.IsEqual(aCenterMass, gp::Resolution()) ) { + gp_Trsf aCurTrsf; + aCurTrsf.SetTranslation(aPFirst, aCenterMass); + aTrsf.PreMultiply(aCurTrsf); + } + + // Perform transformation + BRepBuilderAPI_Transform aBRepTrsf (aShapeBase, aTrsf, Standard_False); + aShape = aBRepTrsf.Shape(); + } else return 0; diff --git a/src/GEOMImpl/GEOMImpl_PositionDriver.hxx b/src/GEOMImpl/GEOMImpl_PositionDriver.hxx index 64d2a19d1..96d147fa7 100644 --- a/src/GEOMImpl/GEOMImpl_PositionDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_PositionDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_PositionDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_PositionDriver_HeaderFile #define _GEOMImpl_PositionDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_PrismDriver.cxx b/src/GEOMImpl/GEOMImpl_PrismDriver.cxx index 11bb15ad6..0cd63b150 100644 --- a/src/GEOMImpl/GEOMImpl_PrismDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_PrismDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include @@ -129,7 +130,21 @@ Standard_Integer GEOMImpl_PrismDriver::Execute(TFunction_Logbook& log) const } } } - } else { + } else if (aType == PRISM_BASE_DXDYDZ || aType == PRISM_BASE_DXDYDZ_2WAYS) { + Handle(GEOM_Function) aRefBase = aCI.GetBase(); + TopoDS_Shape aShapeBase = aRefBase->GetValue(); + gp_Vec aV (aCI.GetDX(), aCI.GetDY(), aCI.GetDZ()); + if (aV.Magnitude() > gp::Resolution()) { + if (aType == PRISM_BASE_DXDYDZ_2WAYS) + { + gp_Trsf aTrsf; + aTrsf.SetTranslation(-aV); + BRepBuilderAPI_Transform aTransformation(aShapeBase, aTrsf, Standard_False); + aShapeBase = aTransformation.Shape(); + aV = aV * 2; + } + aShape = BRepPrimAPI_MakePrism(aShapeBase, aV, Standard_False).Shape(); + } } if (aShape.IsNull()) return 0; diff --git a/src/GEOMImpl/GEOMImpl_PrismDriver.hxx b/src/GEOMImpl/GEOMImpl_PrismDriver.hxx index 27ce618c9..a1f890d9f 100644 --- a/src/GEOMImpl/GEOMImpl_PrismDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_PrismDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_PrismDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_PrismDriver_HeaderFile #define _GEOMImpl_PrismDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_RevolutionDriver.cxx b/src/GEOMImpl/GEOMImpl_RevolutionDriver.cxx index 9d3d91ca3..f4e8026b1 100644 --- a/src/GEOMImpl/GEOMImpl_RevolutionDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_RevolutionDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_RevolutionDriver.hxx b/src/GEOMImpl/GEOMImpl_RevolutionDriver.hxx index 1290b8339..b1e7b15ad 100644 --- a/src/GEOMImpl/GEOMImpl_RevolutionDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_RevolutionDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_RevolutionDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_RevolutionDriver_HeaderFile #define _GEOMImpl_RevolutionDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_RotateDriver.cxx b/src/GEOMImpl/GEOMImpl_RotateDriver.cxx index c6655fa58..cff3a9b51 100644 --- a/src/GEOMImpl/GEOMImpl_RotateDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_RotateDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include @@ -98,6 +99,7 @@ Standard_Integer GEOMImpl_RotateDriver::Execute(TFunction_Logbook& log) const gp_Dir aDir(gp_Vec(aP1, aP2)); gp_Ax1 anAx1(aP1, aDir); Standard_Real anAngle = RI.GetAngle(); + if (fabs(anAngle) < Precision::Angular()) anAngle += 2*PI; // NPAL19665,19769 aTrsf.SetRotation(anAx1, anAngle); //NPAL18620: performance problem: multiple locations are accumulated @@ -106,7 +108,9 @@ Standard_Integer GEOMImpl_RotateDriver::Execute(TFunction_Logbook& log) const //aShape = aTransformation.Shape(); TopLoc_Location aLocOrig = anOriginal.Location(); gp_Trsf aTrsfOrig = aLocOrig.Transformation(); - TopLoc_Location aLocRes (aTrsf * aTrsfOrig); + //TopLoc_Location aLocRes (aTrsf * aTrsfOrig); // gp_Trsf::Multiply() has a bug + aTrsfOrig.PreMultiply(aTrsf); + TopLoc_Location aLocRes (aTrsfOrig); aShape = anOriginal.Located(aLocRes); } else if (aType == ROTATE_THREE_POINTS || aType == ROTATE_THREE_POINTS_COPY) { @@ -125,11 +129,12 @@ Standard_Integer GEOMImpl_RotateDriver::Execute(TFunction_Logbook& log) const aP1 = BRep_Tool::Pnt(TopoDS::Vertex(aV1)); aP2 = BRep_Tool::Pnt(TopoDS::Vertex(aV2)); - gp_Vec aVec1(aCP, aP1); - gp_Vec aVec2(aCP, aP2); - gp_Dir aDir(aVec1 ^ aVec2); - gp_Ax1 anAx1(aCP, aDir); + gp_Vec aVec1 (aCP, aP1); + gp_Vec aVec2 (aCP, aP2); + gp_Dir aDir (aVec1 ^ aVec2); + gp_Ax1 anAx1 (aCP, aDir); Standard_Real anAngle = aVec1.Angle(aVec2); + if (fabs(anAngle) < Precision::Angular()) anAngle += 2*PI; // NPAL19665 aTrsf.SetRotation(anAx1, anAngle); //NPAL18620: performance problem: multiple locations are accumulated // in shape and need a great time to process @@ -137,7 +142,9 @@ Standard_Integer GEOMImpl_RotateDriver::Execute(TFunction_Logbook& log) const //aShape = aTransformation.Shape(); TopLoc_Location aLocOrig = anOriginal.Location(); gp_Trsf aTrsfOrig = aLocOrig.Transformation(); - TopLoc_Location aLocRes (aTrsf * aTrsfOrig); + //TopLoc_Location aLocRes (aTrsf * aTrsfOrig); // gp_Trsf::Multiply() has a bug + aTrsfOrig.PreMultiply(aTrsf); + TopLoc_Location aLocRes (aTrsfOrig); aShape = anOriginal.Located(aLocRes); } else if (aType == ROTATE_1D) { @@ -165,20 +172,26 @@ Standard_Integer GEOMImpl_RotateDriver::Execute(TFunction_Logbook& log) const gp_Trsf aTrsfOrig = aLocOrig.Transformation(); for (int i = 0; i < nbtimes; i++ ) { - aTrsf.SetRotation(AX1, i*angle*PI180); + if (i == 0) { // NPAL19665 + B.Add(aCompound, anOriginal); + } + else { + aTrsf.SetRotation(AX1, i*angle*PI180); + //TopLoc_Location aLocRes (aTrsf * aTrsfOrig); // gp_Trsf::Multiply() has a bug + gp_Trsf aTrsfNew (aTrsfOrig); + aTrsfNew.PreMultiply(aTrsf); + TopLoc_Location aLocRes (aTrsfNew); + B.Add(aCompound, anOriginal.Located(aLocRes)); + } //NPAL18620: performance problem: multiple locations are accumulated // in shape and need a great time to process //BRepBuilderAPI_Transform aBRepTransformation(anOriginal, aTrsf, Standard_False); //B.Add(aCompound, aBRepTransformation.Shape()); - TopLoc_Location aLocRes (aTrsf * aTrsfOrig); - B.Add(aCompound, anOriginal.Located(aLocRes)); } aShape = aCompound; } else if (aType == ROTATE_2D) { - Standard_Real DX, DY, DZ; - //Get direction Handle(GEOM_Function) anAxis = RI.GetAxis(); if(anAxis.IsNull()) return 0; @@ -219,7 +232,7 @@ Standard_Integer GEOMImpl_RotateDriver::Execute(TFunction_Logbook& log) const if ( P1.IsEqual(P2, Precision::Confusion() ) ) return 0; - gp_Vec Vec(P1.X()-P2.X(), P1.Y()-P2.Y(), P1.Z()-P2.Z()); + gp_Vec Vec (P1.X()-P2.X(), P1.Y()-P2.Y(), P1.Z()-P2.Z()); Vec.Normalize(); Standard_Integer nbtimes2 = RI.GetNbIter2(); @@ -234,21 +247,35 @@ Standard_Integer GEOMImpl_RotateDriver::Execute(TFunction_Logbook& log) const TopoDS_Compound aCompound; BRep_Builder B; B.MakeCompound( aCompound ); + + Standard_Real DX, DY, DZ; + for (int i = 0; i < nbtimes2; i++ ) { + DX = i * step * Vec.X(); + DY = i * step * Vec.Y(); + DZ = i * step * Vec.Z(); + aVec.SetCoord( DX, DY, DZ ); + aTrsf1.SetTranslation(aVec); + for (int j = 0; j < nbtimes1; j++ ) { - DX = i * step * Vec.X(); - DY = i * step * Vec.Y(); - DZ = i * step * Vec.Z(); - aVec.SetCoord( DX, DY, DZ ); - aTrsf1.SetTranslation(aVec); - aTrsf2.SetRotation(AX1, j*ang*PI180); + if (j == 0) { // NPAL19665 + TopLoc_Location aLocRes (aTrsf1 * aTrsfOrig); + B.Add(aCompound, anOriginal.Located(aLocRes)); + } + else { + aTrsf2.SetRotation(AX1, j*ang*PI180); + //TopLoc_Location aLocRes (aTrsf2 * aTrsf1 * aTrsfOrig); // gp_Trsf::Multiply() has a bug + gp_Trsf aTrsfNew (aTrsfOrig); + aTrsfNew.PreMultiply(aTrsf1); + aTrsfNew.PreMultiply(aTrsf2); + TopLoc_Location aLocRes (aTrsfNew); + B.Add(aCompound, anOriginal.Located(aLocRes)); + } //NPAL18620: performance problem: multiple locations are accumulated // in shape and need a great time to process //BRepBuilderAPI_Transform aBRepTrsf1 (anOriginal, aTrsf1, Standard_False); //BRepBuilderAPI_Transform aBRepTrsf2 (aBRepTrsf1.Shape(), aTrsf2, Standard_False); //B.Add(aCompound, aBRepTrsf2.Shape()); - TopLoc_Location aLocRes (aTrsf2 * aTrsf1 * aTrsfOrig); - B.Add(aCompound, anOriginal.Located(aLocRes)); } } diff --git a/src/GEOMImpl/GEOMImpl_RotateDriver.hxx b/src/GEOMImpl/GEOMImpl_RotateDriver.hxx index e88b65697..5b94668ba 100644 --- a/src/GEOMImpl/GEOMImpl_RotateDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_RotateDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_RotateDriver.hxx // Module : GEOMImpl - +// #ifndef _GEOMImpl_RotateDriver_HeaderFile #define _GEOMImpl_RotateDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_ScaleDriver.cxx b/src/GEOMImpl/GEOMImpl_ScaleDriver.cxx index 88342f057..0c4dea8f4 100644 --- a/src/GEOMImpl/GEOMImpl_ScaleDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_ScaleDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include @@ -25,9 +26,15 @@ #include #include +#include +#include + #include +#include #include #include +#include + #include #include #include @@ -37,6 +44,8 @@ #include #include +#include +#include //======================================================================= //function : GetID @@ -73,11 +82,17 @@ Standard_Integer GEOMImpl_ScaleDriver::Execute(TFunction_Logbook& log) const if (aType == SCALE_SHAPE || aType == SCALE_SHAPE_COPY) { Handle(GEOM_Function) aRefShape = aCI.GetShape(); - Handle(GEOM_Function) aRefPoint = aCI.GetPoint(); TopoDS_Shape aShapeBase = aRefShape->GetValue(); - TopoDS_Shape aShapePnt = aRefPoint->GetValue(); - if (aShapeBase.IsNull() || aShapePnt.IsNull()) return 0; - if (aShapePnt.ShapeType() != TopAbs_VERTEX) return 0; + if (aShapeBase.IsNull()) return 0; + + gp_Pnt aP (0,0,0); + Handle(GEOM_Function) aRefPoint = aCI.GetPoint(); + if (!aRefPoint.IsNull()) { + TopoDS_Shape aShapePnt = aRefPoint->GetValue(); + if (aShapePnt.IsNull()) return 0; + if (aShapePnt.ShapeType() != TopAbs_VERTEX) return 0; + aP = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt)); + } // Bug 6839: Check for standalone (not included in faces) degenerated edges TopTools_IndexedDataMapOfShapeListOfShape aEFMap; @@ -94,18 +109,84 @@ Standard_Integer GEOMImpl_ScaleDriver::Execute(TFunction_Logbook& log) const } // Perform Scaling - gp_Pnt aP = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt)); gp_Trsf aTrsf; aTrsf.SetScale(aP, aCI.GetFactor()); BRepBuilderAPI_Transform aBRepTrsf (aShapeBase, aTrsf, Standard_False); aShape = aBRepTrsf.Shape(); - } else { + } + else if (aType == SCALE_SHAPE_AXES || aType == SCALE_SHAPE_AXES_COPY) { + Handle(GEOM_Function) aRefShape = aCI.GetShape(); + TopoDS_Shape aShapeBase = aRefShape->GetValue(); + if (aShapeBase.IsNull()) return 0; + + bool isP = false; + gp_Pnt aP (0,0,0); + Handle(GEOM_Function) aRefPoint = aCI.GetPoint(); + if (!aRefPoint.IsNull()) { + TopoDS_Shape aShapePnt = aRefPoint->GetValue(); + if (aShapePnt.IsNull()) return 0; + if (aShapePnt.ShapeType() != TopAbs_VERTEX) return 0; + aP = BRep_Tool::Pnt(TopoDS::Vertex(aShapePnt)); + isP = true; + } + + // Bug 6839: Check for standalone (not included in faces) degenerated edges + TopTools_IndexedDataMapOfShapeListOfShape aEFMap; + TopExp::MapShapesAndAncestors(aShapeBase, TopAbs_EDGE, TopAbs_FACE, aEFMap); + Standard_Integer i, nbE = aEFMap.Extent(); + for (i = 1; i <= nbE; i++) { + TopoDS_Shape anEdgeSh = aEFMap.FindKey(i); + if (BRep_Tool::Degenerated(TopoDS::Edge(anEdgeSh))) { + const TopTools_ListOfShape& aFaces = aEFMap.FindFromIndex(i); + if (aFaces.IsEmpty()) + Standard_ConstructionError::Raise + ("Scaling aborted : cannot scale standalone degenerated edge"); + } + } + + // Perform Scaling + gp_GTrsf aGTrsf; + gp_Mat rot (aCI.GetFactorX(), 0, 0, + 0, aCI.GetFactorY(), 0, + 0, 0, aCI.GetFactorZ()); + aGTrsf.SetVectorialPart(rot); + + if (isP) { + gp_Pnt anO (0,0,0); + if (anO.Distance(aP) > Precision::Confusion()) { + gp_GTrsf aGTrsfP0; + aGTrsfP0.SetTranslationPart(anO.XYZ() - aP.XYZ()); + gp_GTrsf aGTrsf0P; + aGTrsf0P.SetTranslationPart(aP.XYZ()); + //aGTrsf = aGTrsf0P * aGTrsf * aGTrsfP0; + aGTrsf = aGTrsf0P.Multiplied(aGTrsf); + aGTrsf = aGTrsf.Multiplied(aGTrsfP0); + } + } + + BRepBuilderAPI_GTransform aBRepGTrsf (aShapeBase, aGTrsf, Standard_False); + if (!aBRepGTrsf.IsDone()) + Standard_ConstructionError::Raise("Scaling not done"); + aShape = aBRepGTrsf.Shape(); + } + else { } if (aShape.IsNull()) return 0; - if (!BRepAlgo::IsValid(aShape)) - Standard_ConstructionError::Raise("Scaling aborted : non valid shape result"); + BRepCheck_Analyzer ana (aShape, Standard_False); + if (!ana.IsValid()) { + ShapeFix_ShapeTolerance aSFT; + aSFT.LimitTolerance(aShape,Precision::Confusion(),Precision::Confusion()); + Handle(ShapeFix_Shape) aSfs = new ShapeFix_Shape(aShape); + aSfs->SetPrecision(Precision::Confusion()); + aSfs->Perform(); + aShape = aSfs->Shape(); + + ana.Init(aShape, Standard_False); + if (!ana.IsValid()) + Standard_ConstructionError::Raise("Scaling aborted : algorithm has produced an invalid shape result"); + } aFunction->SetValue(aShape); diff --git a/src/GEOMImpl/GEOMImpl_ScaleDriver.hxx b/src/GEOMImpl/GEOMImpl_ScaleDriver.hxx index bbc2f7c9c..9aca82323 100644 --- a/src/GEOMImpl/GEOMImpl_ScaleDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_ScaleDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_ScaleDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_ScaleDriver_HeaderFile #define _GEOMImpl_ScaleDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_ShapeDriver.cxx b/src/GEOMImpl/GEOMImpl_ShapeDriver.cxx index 349b59f09..43af2ed5c 100644 --- a/src/GEOMImpl/GEOMImpl_ShapeDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_ShapeDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_ShapeDriver.hxx b/src/GEOMImpl/GEOMImpl_ShapeDriver.hxx index fa0a0023d..45bc5e65b 100644 --- a/src/GEOMImpl/GEOMImpl_ShapeDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_ShapeDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_ShapeDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_ShapeDriver_HeaderFile #define _GEOMImpl_ShapeDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_SketcherDriver.cxx b/src/GEOMImpl/GEOMImpl_SketcherDriver.cxx index 2a6eb0a7b..6642592d1 100644 --- a/src/GEOMImpl/GEOMImpl_SketcherDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_SketcherDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_SketcherDriver.hxx b/src/GEOMImpl/GEOMImpl_SketcherDriver.hxx index 6d84a4d06..5d5362b25 100644 --- a/src/GEOMImpl/GEOMImpl_SketcherDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_SketcherDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_SketcherDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_SketcherDriver_HeaderFile #define _GEOMImpl_SketcherDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_SphereDriver.cxx b/src/GEOMImpl/GEOMImpl_SphereDriver.cxx index c8d175adc..9bc4f0e8d 100644 --- a/src/GEOMImpl/GEOMImpl_SphereDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_SphereDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_SphereDriver.hxx b/src/GEOMImpl/GEOMImpl_SphereDriver.hxx index 065fcb22c..e80729ca0 100644 --- a/src/GEOMImpl/GEOMImpl_SphereDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_SphereDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_SphereDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_SphereDriver_HeaderFile #define _GEOMImpl_SphereDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_SplineDriver.cxx b/src/GEOMImpl/GEOMImpl_SplineDriver.cxx index 4f5832006..11aaea41f 100644 --- a/src/GEOMImpl/GEOMImpl_SplineDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_SplineDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_SplineDriver.hxx b/src/GEOMImpl/GEOMImpl_SplineDriver.hxx index e09a0446a..c615207c1 100644 --- a/src/GEOMImpl/GEOMImpl_SplineDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_SplineDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_SplineDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_SplineDriver_HeaderFile #define _GEOMImpl_SplineDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_ThruSectionsDriver.cxx b/src/GEOMImpl/GEOMImpl_ThruSectionsDriver.cxx index 07855fdcc..2f99b2580 100644 --- a/src/GEOMImpl/GEOMImpl_ThruSectionsDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_ThruSectionsDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,F -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_ThruSectionsDriver.hxx b/src/GEOMImpl/GEOMImpl_ThruSectionsDriver.hxx index b0b25d9c5..2aacffe9a 100644 --- a/src/GEOMImpl/GEOMImpl_ThruSectionsDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_ThruSectionsDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_ThruSectionsDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_ThruSectionsDriver_HeaderFile #define _GEOMImpl_ThruSectionsDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_TorusDriver.cxx b/src/GEOMImpl/GEOMImpl_TorusDriver.cxx index 810757b74..7ccffe4bd 100644 --- a/src/GEOMImpl/GEOMImpl_TorusDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_TorusDriver.cxx @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include diff --git a/src/GEOMImpl/GEOMImpl_TorusDriver.hxx b/src/GEOMImpl/GEOMImpl_TorusDriver.hxx index f27520ed1..56db37230 100644 --- a/src/GEOMImpl/GEOMImpl_TorusDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_TorusDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_TorusDriver.ixx // Module : GEOMImpl - +// #ifndef _GEOMImpl_TorusDriver_HeaderFile #define _GEOMImpl_TorusDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_TranslateDriver.cxx b/src/GEOMImpl/GEOMImpl_TranslateDriver.cxx index ad967865b..57689ec57 100644 --- a/src/GEOMImpl/GEOMImpl_TranslateDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_TranslateDriver.cxx @@ -1,34 +1,39 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include #include #include #include -#include -#include -#include -#include + +#include +#include + +#include #include +#include +#include + #include #include #include @@ -37,7 +42,10 @@ #include #include #include -#include + +#include +#include +#include //======================================================================= //function : GetID @@ -122,6 +130,26 @@ Standard_Integer GEOMImpl_TranslateDriver::Execute(TFunction_Logbook& log) const TopLoc_Location aLocRes (aTrsf * aTrsfOrig); aShape = anOriginal.Located(aLocRes); } + else if (aType == TRANSLATE_VECTOR_DISTANCE) { + Handle(GEOM_Function) aVector = TI.GetVector(); + double aDistance = TI.GetDistance(); + if(aVector.IsNull()) return 0; + TopoDS_Shape aV = aVector->GetValue(); + if(aV.IsNull() || aV.ShapeType() != TopAbs_EDGE) return 0; + TopoDS_Edge anEdge = TopoDS::Edge(aV); + + aP1 = BRep_Tool::Pnt(TopExp::FirstVertex(anEdge)); + aP2 = BRep_Tool::Pnt(TopExp::LastVertex(anEdge)); + + gp_Vec aVec (aP1, aP2); + aVec.Normalize(); + aTrsf.SetTranslation(aVec * aDistance); + + TopLoc_Location aLocOrig = anOriginal.Location(); + gp_Trsf aTrsfOrig = aLocOrig.Transformation(); + TopLoc_Location aLocRes (aTrsf * aTrsfOrig); + aShape = anOriginal.Located(aLocRes); + } else if (aType == TRANSLATE_XYZ || aType == TRANSLATE_XYZ_COPY) { gp_Vec aVec (TI.GetDX(), TI.GetDY(), TI.GetDZ()); aTrsf.SetTranslation(aVec); @@ -217,9 +245,22 @@ Standard_Integer GEOMImpl_TranslateDriver::Execute(TFunction_Logbook& log) const } else return 0; - if (aShape.IsNull()) return 0; + BRepCheck_Analyzer ana (aShape, Standard_True); + if (!ana.IsValid()) { + ShapeFix_ShapeTolerance aSFT; + aSFT.LimitTolerance(aShape,Precision::Confusion(),Precision::Confusion()); + Handle(ShapeFix_Shape) aSfs = new ShapeFix_Shape(aShape); + aSfs->SetPrecision(Precision::Confusion()); + aSfs->Perform(); + aShape = aSfs->Shape(); + + ana.Init(aShape, Standard_False); + if (!ana.IsValid()) + Standard_ConstructionError::Raise("Scaling aborted : algorithm has produced an invalid shape result"); + } + aFunction->SetValue(aShape); log.SetTouched(Label()); diff --git a/src/GEOMImpl/GEOMImpl_TranslateDriver.hxx b/src/GEOMImpl/GEOMImpl_TranslateDriver.hxx index d8294a2d3..d8875696b 100644 --- a/src/GEOMImpl/GEOMImpl_TranslateDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_TranslateDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_TranslateDriver.hxx // Module : GEOMImpl - +// #ifndef _GEOMImpl_TranslateDriver_HeaderFile #define _GEOMImpl_TranslateDriver_HeaderFile diff --git a/src/GEOMImpl/GEOMImpl_Types.hxx b/src/GEOMImpl/GEOMImpl_Types.hxx index be924b3f7..49cf5542f 100755 --- a/src/GEOMImpl/GEOMImpl_Types.hxx +++ b/src/GEOMImpl/GEOMImpl_Types.hxx @@ -1,24 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // //GEOM_Object types - +// #define GEOM_COPY 0 #define GEOM_IMPORT 1 @@ -45,8 +47,9 @@ #define GEOM_ELLIPSE 18 #define GEOM_CIRC_ARC 19 -#define GEOM_FILLET 20 -#define GEOM_CHAMFER 21 +#define GEOM_FILLET 20 +#define GEOM_FILLET_2D 45 +#define GEOM_CHAMFER 21 #define GEOM_EDGE 22 #define GEOM_WIRE 23 @@ -81,6 +84,14 @@ #define GEOM_THRUSECTIONS 40 +#define GEOM_COMPOUNDFILTER 41 + +#define GEOM_SHAPES_ON_SHAPE 42 + +#define GEOM_ELLIPSE_ARC 43 + +#define GEOM_3DSKETCHER 44 + //GEOM_Function types #define COPY_WITH_REF 1 @@ -93,6 +104,7 @@ #define POINT_XYZ_REF 2 #define POINT_CURVE_PAR 3 #define POINT_LINES_INTERSECTION 4 +#define POINT_SURFACE_PAR 5 //#define POINT_FACE_PAR 5 #define VECTOR_TWO_PNT 1 @@ -111,6 +123,7 @@ #define TRANSLATE_TWO_POINTS 1 #define TRANSLATE_VECTOR 2 +#define TRANSLATE_VECTOR_DISTANCE 9 #define TRANSLATE_TWO_POINTS_COPY 3 #define TRANSLATE_VECTOR_COPY 4 #define TRANSLATE_1D 5 @@ -137,11 +150,14 @@ #define SCALE_SHAPE 1 #define SCALE_SHAPE_COPY 2 +#define SCALE_SHAPE_AXES 3 +#define SCALE_SHAPE_AXES_COPY 4 #define POSITION_SHAPE 1 #define POSITION_SHAPE_COPY 2 #define POSITION_SHAPE_FROM_GLOBAL 3 #define POSITION_SHAPE_FROM_GLOBAL_COPY 4 +#define POSITION_ALONG_PATH 5 #define TORUS_RR 1 #define TORUS_PNT_VEC_RR 2 @@ -149,6 +165,13 @@ #define BOX_DX_DY_DZ 1 #define BOX_TWO_PNT 2 +#define FACE_OBJ_H_W 1 +#define FACE_H_W 2 + +#define DISK_PNT_VEC_R 1 +#define DISK_THREE_PNT 2 +#define DISK_R 3 + #define CYLINDER_R_H 1 #define CYLINDER_PNT_VEC_R_H 2 @@ -162,6 +185,8 @@ #define PRISM_BASE_TWO_PNT 2 #define PRISM_BASE_VEC_H_2WAYS 3 #define PRISM_BASE_TWO_PNT_2WAYS 4 +#define PRISM_BASE_DXDYDZ 5 +#define PRISM_BASE_DXDYDZ_2WAYS 6 #define REVOLUTION_BASE_AXIS_ANGLE 1 #define REVOLUTION_BASE_AXIS_ANGLE_2WAYS 2 @@ -170,6 +195,7 @@ #define PIPE_DIFFERENT_SECTIONS 2 #define PIPE_SHELL_SECTIONS 3 #define PIPE_SHELLS_WITHOUT_PATH 4 +#define PIPE_BI_NORMAL_ALONG_VECTOR 5 #define THRUSECTIONS_RULED 1 #define THRUSECTIONS_SMOOTHED 2 @@ -194,8 +220,9 @@ #define ELLIPSE_PNT_VEC_RR 1 -#define CIRC_ARC_THREE_PNT 1 -#define CIRC_ARC_CENTER 2 +#define CIRC_ARC_THREE_PNT 1 +#define CIRC_ARC_CENTER 2 +#define ELLIPSE_ARC_CENTER_TWO_PNT 3 #define FILLET_SHAPE_ALL 1 #define FILLET_SHAPE_EDGES 2 @@ -203,6 +230,8 @@ #define FILLET_SHAPE_EDGES_2R 4 #define FILLET_SHAPE_FACES_2R 5 +#define FILLET_2D_SHAPE_VERTEXES 1 + #define CHAMFER_SHAPE_ALL 1 #define CHAMFER_SHAPE_EDGE 2 #define CHAMFER_SHAPE_FACES 3 @@ -246,6 +275,8 @@ #define GROUP_FUNCTION 1 +#define SHAPES_ON_SHAPE 1 + // Blocks #define BLOCK_FACE_FOUR_PNT 1 #define BLOCK_FACE_FOUR_EDGES 2 diff --git a/src/GEOMImpl/GEOMImpl_VectorDriver.cxx b/src/GEOMImpl/GEOMImpl_VectorDriver.cxx index 0be034733..e925d0e8b 100644 --- a/src/GEOMImpl/GEOMImpl_VectorDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_VectorDriver.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include diff --git a/src/GEOMImpl/GEOMImpl_VectorDriver.hxx b/src/GEOMImpl/GEOMImpl_VectorDriver.hxx index 38c92fd52..7bf4a469f 100644 --- a/src/GEOMImpl/GEOMImpl_VectorDriver.hxx +++ b/src/GEOMImpl/GEOMImpl_VectorDriver.hxx @@ -1,25 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : GEOMImpl_VectorDriver.hxx // Module : GEOMImpl - +// #ifndef _GEOMImpl_VectorDriver_HeaderFile #define _GEOMImpl_VectorDriver_HeaderFile diff --git a/src/GEOMImpl/GEOM_GEOMImpl.hxx b/src/GEOMImpl/GEOM_GEOMImpl.hxx index a8f4a439f..b101bae15 100755 --- a/src/GEOMImpl/GEOM_GEOMImpl.hxx +++ b/src/GEOMImpl/GEOM_GEOMImpl.hxx @@ -1,28 +1,28 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// 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 : GEOM_GEOMImpl.hxx // Author : Alexander A. BORODIN // Module : GEOM - +// #ifndef _GEOM_GEOMImpl_HXX_ #define _GEOM_GEOMImpl_HXX_ diff --git a/src/GEOMImpl/Makefile.am b/src/GEOMImpl/Makefile.am index 0c025b8b7..eb02b2929 100644 --- a/src/GEOMImpl/Makefile.am +++ b/src/GEOMImpl/Makefile.am @@ -1,30 +1,31 @@ -# GEOM GEOM : implementaion of GEOM_Gen.idl +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# GEOM GEOM : implementaion of GEOM_Gen.idl # File : Makefile.in # Author : Damien COQUERET (OCC) # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header: - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # Libraries targets @@ -32,103 +33,203 @@ include $(top_srcdir)/adm_local/unix/make_common_starter.am lib_LTLIBRARIES = libGEOMimpl.la # header files -salomeinclude_HEADERS = \ - GEOMImpl_Gen.hxx \ - GEOMImpl_IBasicOperations.hxx \ - GEOMImpl_ITransformOperations.hxx \ - GEOMImpl_IHealingOperations.hxx \ - GEOMImpl_I3DPrimOperations.hxx \ - GEOMImpl_IShapesOperations.hxx \ - GEOMImpl_IBlocksOperations.hxx \ - GEOMImpl_IBooleanOperations.hxx \ - GEOMImpl_ICurvesOperations.hxx \ - GEOMImpl_ILocalOperations.hxx \ - GEOMImpl_IInsertOperations.hxx \ - GEOMImpl_IMeasureOperations.hxx \ - GEOMImpl_IGroupOperations.hxx \ - GEOMImpl_CopyDriver.hxx \ - GEOMImpl_Types.hxx \ +salomeinclude_HEADERS = \ + GEOMImpl_Gen.hxx \ + GEOMImpl_IBasicOperations.hxx \ + GEOMImpl_ITransformOperations.hxx \ + GEOMImpl_IHealingOperations.hxx \ + GEOMImpl_I3DPrimOperations.hxx \ + GEOMImpl_IShapesOperations.hxx \ + GEOMImpl_IBlocksOperations.hxx \ + GEOMImpl_IBooleanOperations.hxx \ + GEOMImpl_ICurvesOperations.hxx \ + GEOMImpl_ILocalOperations.hxx \ + GEOMImpl_IInsertOperations.hxx \ + GEOMImpl_IMeasureOperations.hxx \ + GEOMImpl_IGroupOperations.hxx \ + GEOMImpl_IGlue.hxx \ + GEOMImpl_Gen.hxx \ + GEOMImpl_PointDriver.hxx \ + GEOMImpl_IPoint.hxx \ + GEOMImpl_IPolyline.hxx \ + GEOMImpl_ICircle.hxx \ + GEOMImpl_ISpline.hxx \ + GEOMImpl_IEllipse.hxx \ + GEOMImpl_IFillet.hxx \ + GEOMImpl_IFillet2d.hxx \ + GEOMImpl_IChamfer.hxx \ + GEOMImpl_ICopy.hxx \ + GEOMImpl_IArchimede.hxx \ + GEOMImpl_IArc.hxx \ + GEOMImpl_ISketcher.hxx \ + GEOMImpl_I3DSketcher.hxx \ + GEOMImpl_IVector.hxx \ + GEOMImpl_IDisk.hxx \ + GEOMImpl_IFace.hxx \ + GEOMImpl_ILine.hxx \ + GEOMImpl_IPlane.hxx \ + GEOMImpl_IMarker.hxx \ + GEOMImpl_ITranslate.hxx \ + GEOMImpl_IMirror.hxx \ + GEOMImpl_IOffset.hxx \ + GEOMImpl_IScale.hxx \ + GEOMImpl_IRotate.hxx \ + GEOMImpl_IPosition.hxx \ + GEOMImpl_IHealing.hxx \ + GEOMImpl_IImportExport.hxx \ + GEOMImpl_IBox.hxx \ + GEOMImpl_IBlocks.hxx \ + GEOMImpl_IBlockTrsf.hxx \ + GEOMImpl_IBoolean.hxx \ + GEOMImpl_ICylinder.hxx \ + GEOMImpl_ICone.hxx \ + GEOMImpl_ISphere.hxx \ + GEOMImpl_ITorus.hxx \ + GEOMImpl_IPrism.hxx \ + GEOMImpl_IPipe.hxx \ + GEOMImpl_IRevolution.hxx \ + GEOMImpl_IMeasure.hxx \ + GEOMImpl_IShapes.hxx \ + GEOMImpl_IFilling.hxx \ + GEOMImpl_IThruSections.hxx \ + GEOMImpl_IPartition.hxx \ + GEOMImpl_IPipeDiffSect.hxx \ + GEOMImpl_IPipeShellSect.hxx \ + GEOMImpl_IPipeBiNormal.hxx \ + GEOMImpl_VectorDriver.hxx \ + GEOMImpl_LineDriver.hxx \ + GEOMImpl_DiskDriver.hxx \ + GEOMImpl_FaceDriver.hxx \ + GEOMImpl_PlaneDriver.hxx \ + GEOMImpl_MarkerDriver.hxx \ + GEOMImpl_TranslateDriver.hxx \ + GEOMImpl_MirrorDriver.hxx \ + GEOMImpl_OffsetDriver.hxx \ + GEOMImpl_ScaleDriver.hxx \ + GEOMImpl_PositionDriver.hxx \ + GEOMImpl_BoxDriver.hxx \ + GEOMImpl_ConeDriver.hxx \ + GEOMImpl_CylinderDriver.hxx \ + GEOMImpl_SphereDriver.hxx \ + GEOMImpl_TorusDriver.hxx \ + GEOMImpl_PrismDriver.hxx \ + GEOMImpl_PipeDriver.hxx \ + GEOMImpl_ThruSectionsDriver.hxx \ + GEOMImpl_RevolutionDriver.hxx \ + GEOMImpl_ShapeDriver.hxx \ + GEOMImpl_BlockDriver.hxx \ + GEOMImpl_Block6Explorer.hxx \ + GEOMImpl_MeasureDriver.hxx \ + GEOMImpl_PolylineDriver.hxx \ + GEOMImpl_CircleDriver.hxx \ + GEOMImpl_EllipseDriver.hxx \ + GEOMImpl_ArcDriver.hxx \ + GEOMImpl_SplineDriver.hxx \ + GEOMImpl_SketcherDriver.hxx \ + GEOMImpl_3DSketcherDriver.hxx \ + GEOMImpl_FilletDriver.hxx \ + GEOMImpl_Fillet2dDriver.hxx \ + GEOMImpl_ChamferDriver.hxx \ + GEOMImpl_BooleanDriver.hxx \ + GEOMImpl_PartitionDriver.hxx \ + GEOMImpl_CopyDriver.hxx \ + GEOMImpl_ExportDriver.hxx \ + GEOMImpl_ImportDriver.hxx \ + GEOMImpl_RotateDriver.hxx \ + GEOMImpl_ArchimedeDriver.hxx \ + GEOMImpl_HealingDriver.hxx \ + GEOMImpl_FillingDriver.hxx \ + GEOMImpl_GlueDriver.hxx \ + GEOMImpl_CopyDriver.hxx \ + GEOMImpl_Types.hxx \ GEOM_GEOMImpl.hxx -dist_libGEOMimpl_la_SOURCES = \ - GEOMImpl_IBasicOperations.cxx \ - GEOMImpl_ITransformOperations.cxx \ - GEOMImpl_IHealingOperations.cxx \ - GEOMImpl_I3DPrimOperations.cxx \ - GEOMImpl_IShapesOperations.cxx \ - GEOMImpl_IBlocksOperations.cxx \ - GEOMImpl_IBooleanOperations.cxx \ - GEOMImpl_ICurvesOperations.cxx \ - GEOMImpl_ILocalOperations.cxx \ - GEOMImpl_IInsertOperations.cxx \ - GEOMImpl_IMeasureOperations.cxx \ - GEOMImpl_IGroupOperations.cxx \ - GEOMImpl_Gen.cxx \ - GEOMImpl_PointDriver.cxx \ - GEOMImpl_VectorDriver.cxx \ - GEOMImpl_LineDriver.cxx \ - GEOMImpl_PlaneDriver.cxx \ - GEOMImpl_MarkerDriver.cxx \ - GEOMImpl_TranslateDriver.cxx \ - GEOMImpl_MirrorDriver.cxx \ - GEOMImpl_OffsetDriver.cxx \ - GEOMImpl_ScaleDriver.cxx \ - GEOMImpl_PositionDriver.cxx \ - GEOMImpl_BoxDriver.cxx \ - GEOMImpl_ConeDriver.cxx \ - GEOMImpl_CylinderDriver.cxx \ - GEOMImpl_SphereDriver.cxx \ - GEOMImpl_TorusDriver.cxx \ - GEOMImpl_PrismDriver.cxx \ - GEOMImpl_PipeDriver.cxx \ - GEOMImpl_ThruSectionsDriver.cxx \ - GEOMImpl_RevolutionDriver.cxx \ - GEOMImpl_ShapeDriver.cxx \ - GEOMImpl_BlockDriver.cxx \ - GEOMImpl_Block6Explorer.cxx \ - GEOMImpl_MeasureDriver.cxx \ - GEOMImpl_PolylineDriver.cxx \ - GEOMImpl_CircleDriver.cxx \ - GEOMImpl_EllipseDriver.cxx \ - GEOMImpl_ArcDriver.cxx \ - GEOMImpl_SplineDriver.cxx \ - GEOMImpl_SketcherDriver.cxx \ - GEOMImpl_FilletDriver.cxx \ - GEOMImpl_ChamferDriver.cxx \ - GEOMImpl_BooleanDriver.cxx \ - GEOMImpl_PartitionDriver.cxx \ - GEOMImpl_CopyDriver.cxx \ - GEOMImpl_ExportDriver.cxx \ - GEOMImpl_ImportDriver.cxx \ - GEOMImpl_RotateDriver.cxx \ - GEOMImpl_ArchimedeDriver.cxx \ - GEOMImpl_HealingDriver.cxx \ - GEOMImpl_FillingDriver.cxx \ +dist_libGEOMimpl_la_SOURCES = \ + GEOMImpl_IBasicOperations.cxx \ + GEOMImpl_ITransformOperations.cxx \ + GEOMImpl_IHealingOperations.cxx \ + GEOMImpl_I3DPrimOperations.cxx \ + GEOMImpl_IShapesOperations.cxx \ + GEOMImpl_IBlocksOperations.cxx \ + GEOMImpl_IBooleanOperations.cxx \ + GEOMImpl_ICurvesOperations.cxx \ + GEOMImpl_ILocalOperations.cxx \ + GEOMImpl_IInsertOperations.cxx \ + GEOMImpl_IMeasureOperations.cxx \ + GEOMImpl_IGroupOperations.cxx \ + GEOMImpl_Gen.cxx \ + GEOMImpl_PointDriver.cxx \ + GEOMImpl_VectorDriver.cxx \ + GEOMImpl_LineDriver.cxx \ + GEOMImpl_PlaneDriver.cxx \ + GEOMImpl_MarkerDriver.cxx \ + GEOMImpl_TranslateDriver.cxx \ + GEOMImpl_MirrorDriver.cxx \ + GEOMImpl_OffsetDriver.cxx \ + GEOMImpl_ScaleDriver.cxx \ + GEOMImpl_PositionDriver.cxx \ + GEOMImpl_BoxDriver.cxx \ + GEOMImpl_FaceDriver.cxx \ + GEOMImpl_DiskDriver.cxx \ + GEOMImpl_ConeDriver.cxx \ + GEOMImpl_CylinderDriver.cxx \ + GEOMImpl_SphereDriver.cxx \ + GEOMImpl_TorusDriver.cxx \ + GEOMImpl_PrismDriver.cxx \ + GEOMImpl_PipeDriver.cxx \ + GEOMImpl_ThruSectionsDriver.cxx \ + GEOMImpl_RevolutionDriver.cxx \ + GEOMImpl_ShapeDriver.cxx \ + GEOMImpl_BlockDriver.cxx \ + GEOMImpl_Block6Explorer.cxx \ + GEOMImpl_MeasureDriver.cxx \ + GEOMImpl_PolylineDriver.cxx \ + GEOMImpl_CircleDriver.cxx \ + GEOMImpl_EllipseDriver.cxx \ + GEOMImpl_ArcDriver.cxx \ + GEOMImpl_SplineDriver.cxx \ + GEOMImpl_SketcherDriver.cxx \ + GEOMImpl_3DSketcherDriver.cxx \ + GEOMImpl_FilletDriver.cxx \ + GEOMImpl_Fillet2dDriver.cxx \ + GEOMImpl_ChamferDriver.cxx \ + GEOMImpl_BooleanDriver.cxx \ + GEOMImpl_PartitionDriver.cxx \ + GEOMImpl_CopyDriver.cxx \ + GEOMImpl_ExportDriver.cxx \ + GEOMImpl_ImportDriver.cxx \ + GEOMImpl_RotateDriver.cxx \ + GEOMImpl_ArchimedeDriver.cxx \ + GEOMImpl_HealingDriver.cxx \ + GEOMImpl_FillingDriver.cxx \ GEOMImpl_GlueDriver.cxx -# additionnal information to compil and link file -libGEOMimpl_la_CPPFLAGS = \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(BOOST_CPPFLAGS) \ - -I$(srcdir)/../ShHealOper \ - -I$(srcdir)/../NMTTools \ - -I$(srcdir)/../GEOM \ - -I$(srcdir)/../GEOMAlgo \ - -I$(srcdir)/../SKETCHER \ - -I$(srcdir)/../ARCHIMEDE \ - -I$(top_builddir)/idl \ +# additional information to compile and link file + +libGEOMimpl_la_CPPFLAGS = \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(BOOST_CPPFLAGS) \ + -I$(srcdir)/../ShHealOper \ + -I$(srcdir)/../NMTTools \ + -I$(srcdir)/../GEOM \ + -I$(srcdir)/../GEOMAlgo \ + -I$(srcdir)/../SKETCHER \ + -I$(srcdir)/../ARCHIMEDE \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libGEOMimpl_la_LDFLAGS = \ - ../GEOM/libGEOMbasic.la \ - ../GEOMAlgo/libGEOMAlgo.la \ - ../ShHealOper/libShHealOper.la \ - ../ARCHIMEDE/libGEOMArchimede.la \ - ../SKETCHER/libGEOMSketcher.la \ - $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ - $(STDLIB) \ +libGEOMimpl_la_LDFLAGS = \ + ../GEOM/libGEOMbasic.la \ + ../GEOMAlgo/libGEOMAlgo.la \ + ../ShHealOper/libShHealOper.la \ + ../ARCHIMEDE/libGEOMArchimede.la \ + ../SKETCHER/libGEOMSketcher.la \ + $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ + $(STDLIB) \ $(CAS_LDPATH) -lTKCAF -lTKFillet -lTKOffset +# extra dist files +EXTRA_DIST += GUID.txt diff --git a/src/GEOMToolsGUI/GEOMToolsGUI.cxx b/src/GEOMToolsGUI/GEOMToolsGUI.cxx index ae6fb406e..4945b72e8 100644 --- a/src/GEOMToolsGUI/GEOMToolsGUI.cxx +++ b/src/GEOMToolsGUI/GEOMToolsGUI.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,47 +17,42 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMBase_Tools.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : GEOMBase_Tools.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "GEOMToolsGUI.h" +#include "GEOMToolsGUI_DeleteDlg.h" -#include "GeometryGUI.h" -#include "GEOM_Actor.h" -#include "GEOMBase.h" -#include "GEOMBase_aWarningDlg.h" - -#include "GEOM_Operation.h" -#include "GEOM_Displayer.h" +#include +#include +#include +#include #include -#include #include #include #include #include #include #include +#include #include #include #include #include +#include #include #include -#include "utilities.h" - // QT Includes -#include -#include +#include +#include +#include // OCCT Includes #include @@ -65,6 +60,7 @@ using namespace std; typedef QMap FilterMap; +static QString lastUsedFilter; //======================================================================= // function : getFileName @@ -74,48 +70,194 @@ typedef QMap FilterMap; static QString getFileName( QWidget* parent, const QString& initial, const FilterMap& filterMap, - const QStringList filters, + const QStringList& filters, const QString& caption, bool open, - QString& format ) + QString& format, + bool showCurrentDirInitially = false ) { - static QString lastUsedFilter; //QStringList filters; QString aBrepFilter; for ( FilterMap::const_iterator it = filterMap.begin(); it != filterMap.end(); ++it ) { //filters.push_back( it.key() ); - - if (it.key().contains("BREP", false)) { + if ( it.key().contains( "BREP", Qt::CaseInsensitive ) ) aBrepFilter = it.key(); - } } SUIT_FileDlg* fd = new SUIT_FileDlg( parent, open, true, true ); if ( !caption.isEmpty() ) - fd->setCaption( caption ); + fd->setWindowTitle( caption ); if ( !initial.isEmpty() ) - fd->setSelection( initial ); + fd->selectFile( initial ); + + if ( showCurrentDirInitially && SUIT_FileDlg::getLastVisitedPath().isEmpty() ) + fd->setDirectory( QDir::currentPath() ); fd->setFilters( filters ); - - if ( !lastUsedFilter.isEmpty() && filterMap.contains( lastUsedFilter ) ) - fd->setSelectedFilter( lastUsedFilter ); - else { - if (!aBrepFilter.isEmpty()) { - fd->setSelectedFilter(aBrepFilter); - } + + if ( !lastUsedFilter.isEmpty() && filterMap.contains( lastUsedFilter ) ) { + fd->selectFilter( lastUsedFilter ); + } + else if ( !aBrepFilter.isEmpty() ) { + fd->selectFilter( aBrepFilter ); + } + + QString filename; + if ( fd->exec() == QDialog::Accepted ) { + filename = fd->selectedFile(); + format = filterMap[fd->selectedFilter()]; + lastUsedFilter = fd->selectedFilter(); } - fd->exec(); - QString filename = fd->selectedFile(); - format = filterMap[fd->selectedFilter()]; - lastUsedFilter = fd->selectedFilter(); delete fd; qApp->processEvents(); return filename; } +//======================================================================= +// function : getFileNames +// purpose : Select list of files for Import operation. Returns also +// the selected file type code through argument. +//======================================================================= +static QStringList getFileNames( QWidget* parent, + const QString& initial, + const FilterMap& filterMap, + const QString& caption, + QString& format, + bool showCurrentDirInitially = false) +{ + QString aBrepFilter; + QStringList allFilters; + QStringList filters; + QRegExp re( "\\((.*)\\)" ); + re.setMinimal( true ); + for ( FilterMap::const_iterator it = filterMap.begin(); it != filterMap.end(); ++it ) { + if ( it.value().contains( "BREP", Qt::CaseInsensitive ) && aBrepFilter.isEmpty() ) + aBrepFilter = it.key(); + filters.append( it.key() ); + int pos = 0; + while ( re.indexIn( it.key(), pos ) >= 0 ) { + QString f = re.cap(1); + pos = re.pos() + f.length() + 2; + allFilters.append( f.simplified() ); + } + } + filters.append( QObject::tr( "GEOM_ALL_IMPORT_FILES" ).arg( allFilters.join( " " ) ) ); + + SUIT_FileDlg fd( parent, true, true, true ); + fd.setFileMode( SUIT_FileDlg::ExistingFiles ); + if ( !caption.isEmpty() ) + fd.setWindowTitle( caption ); + if ( !initial.isEmpty() ) + fd.selectFile( initial ); + + if ( showCurrentDirInitially && SUIT_FileDlg::getLastVisitedPath().isEmpty() ) + fd.setDirectory( QDir::currentPath() ); + + fd.setFilters( filters ); + + if ( !lastUsedFilter.isEmpty() && filterMap.contains( lastUsedFilter ) ) + fd.selectFilter( lastUsedFilter ); + else if ( !aBrepFilter.isEmpty() ) + fd.selectFilter( aBrepFilter ); + + QStringList filenames; + if ( fd.exec() ) { + filenames = fd.selectedFiles(); + format = filterMap.contains( fd.selectedFilter() ) ? filterMap[ fd.selectedFilter() ] : QString(); + lastUsedFilter = fd.selectedFilter(); + } + qApp->processEvents(); + return filenames; +} + +//======================================================================= +// function : getParentComponent +// purpose : Get object's parent component entry +//======================================================================= +static QString getParentComponent( _PTR( SObject ) obj ) +{ + if ( obj ) { + _PTR(SComponent) comp = obj->GetFatherComponent(); + if ( comp ) + return QString( comp->GetID().c_str() ); + } + return QString(); +} + +//===================================================================================== +// function : inUse +// purpose : check if the object(s) passed as the the second arguments are used +// by the other objects in the study +//===================================================================================== +static bool inUse( _PTR(Study) study, const QString& component, const QMap& objects ) +{ + _PTR(SObject) comp = study->FindObjectID( component.toLatin1().data() ); + if ( !comp ) + return false; + + // collect all GEOM objects being deleted + QMap gobjects; + QMap::ConstIterator oit; + list<_PTR(SObject)> aSelectedSO; + for ( oit = objects.begin(); oit != objects.end(); ++oit ) { + _PTR(SObject) so = study->FindObjectID( oit.key().toLatin1().data() ); + if ( !so ) + continue; + aSelectedSO.push_back(so); + CORBA::Object_var corbaObj_rem = GeometryGUI::ClientSObjectToObject( so ); + GEOM::GEOM_Object_var geomObj_rem = GEOM::GEOM_Object::_narrow( corbaObj_rem ); + if( CORBA::is_nil( geomObj_rem ) ) + continue; + gobjects.insert( oit.key(), geomObj_rem ); + } + + // Search References with other Modules + list< _PTR(SObject) >::iterator itSO = aSelectedSO.begin(); + for ( ; itSO != aSelectedSO.end(); ++itSO ) { + std::vector<_PTR(SObject)> aReferences = study->FindDependances( *itSO ); + int aRefLength = aReferences.size(); + if (aRefLength) { + for (int i = 0; i < aRefLength; i++) { + _PTR(SObject) firstSO( aReferences[i] ); + _PTR(SComponent) aComponent = firstSO->GetFatherComponent(); + QString type = aComponent->ComponentDataType().c_str(); + if ( type == "SMESH" ) + return true; + } + } + } + + // browse through all GEOM data tree + _PTR(ChildIterator) it ( study->NewChildIterator( comp ) ); + for ( it->InitEx( true ); it->More(); it->Next() ) { + _PTR(SObject) child( it->Value() ); + CORBA::Object_var corbaObj = GeometryGUI::ClientSObjectToObject( child ); + GEOM::GEOM_Object_var geomObj = GEOM::GEOM_Object::_narrow( corbaObj ); + if( CORBA::is_nil( geomObj ) ) + continue; + + GEOM::ListOfGO_var list = geomObj->GetDependency(); + if( list->length() == 0 ) + continue; + + for( int i = 0; i < list->length(); i++ ) { + bool depends = false; + bool deleted = false; + QMap::Iterator git; + for ( git = gobjects.begin(); git != gobjects.end() && ( !depends || !deleted ); ++git ) { + depends = depends || list[i]->_is_equivalent( *git ); + deleted = deleted || git.key() == child->GetID().c_str() ;//geomObj->_is_equivalent( *git ); + } + if ( depends && !deleted ) + return true; + } + } + return false; +} + + //======================================================================= // function : GEOMToolsGUI() // purpose : Constructor @@ -219,16 +361,6 @@ bool GEOMToolsGUI::OnGUIEvent(int theCommandID, SUIT_Desktop* parent) OnSettingsColor(); break; } - case 413: // SETTINGS - ISOS - { - OnSettingsIsos(); - break; - } - case 414: // SETTINGS : STEP VALUE FOR SPIN BOXES - { - OnSettingsStep(); - break; - } case 804: // ADD IN STUDY - POPUP VIEWER { // SAN -- TO BE REMOVED !!!! @@ -284,7 +416,6 @@ bool GEOMToolsGUI::OnGUIEvent(int theCommandID, SUIT_Desktop* parent) } - //=============================================================================== // function : OnEditDelete() // purpose : @@ -294,157 +425,145 @@ void GEOMToolsGUI::OnEditDelete() SALOME_ListIO selected; SalomeApp_Application* app = dynamic_cast< SalomeApp_Application* >( SUIT_Session::session()->activeApplication() ); - if ( app ) { - LightApp_SelectionMgr* aSelMgr = app->selectionMgr(); - SalomeApp_Study* appStudy = dynamic_cast( app->activeStudy() ); - if ( aSelMgr && appStudy ) { - aSelMgr->selectedObjects( selected, QString::null, false ); - if ( !selected.IsEmpty() ) { - _PTR(Study) aStudy = appStudy->studyDS(); + if ( !app ) + return; - bool aLocked = (_PTR(AttributeStudyProperties)(aStudy->GetProperties()))->IsLocked(); - if ( aLocked ) { - SUIT_MessageBox::warn1 ( app->desktop(), - QObject::tr("WRN_WARNING"), - QObject::tr("WRN_STUDY_LOCKED"), - QObject::tr("BUT_OK") ); - return; - } + LightApp_SelectionMgr* aSelMgr = app->selectionMgr(); + SalomeApp_Study* appStudy = dynamic_cast( app->activeStudy() ); + if ( !aSelMgr || !appStudy ) + return; - // VSR 17/11/04: check if all objects selected belong to GEOM component --> start - // modifications of ASV 01.06.05 - QString parentComp = getParentComponent( aStudy, selected ); - CORBA::String_var geomIOR = app->orb()->object_to_string( GeometryGUI::GetGeomGen() ); - QString geomComp = getParentComponent( aStudy->FindObjectIOR( geomIOR.in() ) ); + // get selection + aSelMgr->selectedObjects( selected, "ObjectBrowser", false ); + if ( selected.IsEmpty() ) + return; - if ( parentComp != geomComp ) { - SUIT_MessageBox::warn1 ( app->desktop(), - QObject::tr("ERR_ERROR"), - QObject::tr("NON_GEOM_OBJECTS_SELECTED").arg( getGeometryGUI()->moduleName() ), - QObject::tr("BUT_OK") ); - return; - } - // VSR 17/11/04: check if all objects selected belong to GEOM component <-- finish - QString aNameList; - int nbSel = 0; - //Get Main Objects Names - Handle(SALOME_InteractiveObject) anIObject; - for ( SALOME_ListIteratorOfListIO It( selected ); It.More(); It.Next() ) - { - QString aName = It.Value()->getName(); - if ( aName != "" && aName.ref(0) != '*') { - aNameList.append(" - " + aName + "\n"); - nbSel++; - } - anIObject = It.Value(); - } - // Append Child Names of Last Selected Object - _PTR(SObject) obj ( aStudy->FindObjectID( anIObject->getEntry() ) ); - for (_PTR(ChildIterator) iit (aStudy->NewChildIterator(obj)); iit->More(); iit->Next()) { - _PTR(SObject) child (iit->Value()); - QString aName = child->GetName(); - if (aName != "" && aName.ref(0) != '*') { - aNameList.append(" - " + aName + "\n"); - nbSel++; - //append childs child - for (_PTR(ChildIterator) iitt(aStudy->NewChildIterator(child)); iitt->More(); iitt->Next()) { - _PTR(SObject) childchild(iitt->Value()); - QString aName = childchild->GetName(); - if (aName != "" && aName.ref(0) != '*') { - aNameList.append(" - " + aName + "\n"); - nbSel++; - for (_PTR(ChildIterator) itt(aStudy->NewChildIterator(childchild)); itt->More(); itt->Next()) - { - _PTR(SObject) childs(itt->Value()); - QString aName = childs->GetName(); - if (aName != "" && aName.ref(0) != '*') { - aNameList.append(" - " + aName + "\n"); - nbSel++; - } - } - } - } - } - } //end of child append + _PTR(Study) aStudy = appStudy->studyDS(); + + // check if study is locked + if ( _PTR(AttributeStudyProperties)( aStudy->GetProperties() )->IsLocked() ) { + SUIT_MessageBox::warning( app->desktop(), + tr("WRN_WARNING"), + tr("WRN_STUDY_LOCKED") ); + return; // study is locked + } + + // get GEOM component + CORBA::String_var geomIOR = app->orb()->object_to_string( GeometryGUI::GetGeomGen() ); + QString geomComp = getParentComponent( aStudy->FindObjectIOR( geomIOR.in() ) ); - GEOMBase_aWarningDlg* Dialog = new GEOMBase_aWarningDlg( app->desktop(), QObject::tr( "GEOM_WRN_WARNING" ), aNameList, nbSel); - int r = Dialog->exec(); + // check each selected object: if belongs to GEOM, if not reference... + QMap toBeDeleted; + QMap allDeleted; + bool isComponentSelected = false; + for ( SALOME_ListIteratorOfListIO It( selected ); It.More(); It.Next() ) { + Handle(SALOME_InteractiveObject) anIObject = It.Value(); + if ( !anIObject->hasEntry() ) + continue; // invalid object + // ... + QString entry = anIObject->getEntry(); + _PTR(SObject) obj = aStudy->FindObjectID( entry.toLatin1().data() ); + // check parent component + QString parentComp = getParentComponent( obj ); + if ( parentComp != geomComp ) { + SUIT_MessageBox::warning( app->desktop(), + QObject::tr("ERR_ERROR"), + QObject::tr("NON_GEOM_OBJECTS_SELECTED").arg( getGeometryGUI()->moduleName() ) ); + return; // not GEOM object selected + } - if (!r) - return; + /////////////////////////////////////////////////////// + // if GEOM component is selected, so skip other checks + if ( isComponentSelected ) continue; + /////////////////////////////////////////////////////// + + // check if object is reference + _PTR(SObject) refobj; + if ( obj && obj->ReferencedObject( refobj ) ) + continue; // skip references + // ... + QString aName = obj->GetName().c_str(); + if ( entry == geomComp ) { + // GEOM component is selected, skip other checks + isComponentSelected = true; + continue; + } + toBeDeleted.insert( entry, aName ); + allDeleted.insert( entry, aName ); // skip GEOM component + // browse through all children recursively + _PTR(ChildIterator) it ( aStudy->NewChildIterator( obj ) ); + for ( it->InitEx( true ); it->More(); it->Next() ) { + _PTR(SObject) child( it->Value() ); + if ( child && child->ReferencedObject( refobj ) ) + continue; // skip references + aName = child->GetName().c_str(); + if ( !aName.isEmpty() ) + allDeleted.insert( child->GetID().c_str(), aName ); + } + } + + // is there is anything to delete? + if ( !isComponentSelected && allDeleted.count() <= 0 ) + return; // nothing to delete - // QAD_Operation* op = new SALOMEGUI_ImportOperation(.....); - // op->start(); - - // prepare list of SALOME_Views - QPtrList views; - SALOME_View* view; - // fill the list - ViewManagerList vmans = app->viewManagers(); - SUIT_ViewManager* vman; - for ( vman = vmans.first(); vman; vman = vmans.next() ) { - SUIT_ViewModel* vmod = vman->getViewModel(); - view = dynamic_cast ( vmod ); // must work for OCC and VTK views - if ( view ) - views.append( view ); - } - - _PTR(StudyBuilder) aStudyBuilder (aStudy->NewBuilder()); - _PTR(GenericAttribute) anAttr; - GEOM_Displayer* disp = new GEOM_Displayer( appStudy ); - - _PTR(SComponent) aGeom ( aStudy->FindComponent("GEOM") ); - if ( !aGeom ) - return; - - // MAIN LOOP OF SELECTED OBJECTS - for ( SALOME_ListIteratorOfListIO It( selected ); It.More(); It.Next() ) { - - Handle(SALOME_InteractiveObject) io = It.Value(); - if ( !io->hasEntry() ) - continue; - - _PTR(SObject) obj ( aStudy->FindObjectID( io->getEntry() ) ); - - // disable removal of "Geometry" component object - if ( !strcmp( obj->GetIOR().c_str(), geomIOR ) ) - continue; - - //If the object has been used to create another one,then it can't be deleted - _PTR(ChildIterator) it (aStudy->NewChildIterator(aGeom)); - for ( it->InitEx( true ); it->More(); it->Next() ) { - _PTR(SObject) chobj (it->Value()); - if(CheckSubObjectInUse(chobj, obj, aStudy)) return; - //check subobjects - for (_PTR(ChildIterator) it (aStudy->NewChildIterator(obj)); it->More(); it->Next()) { - _PTR(SObject) child (it->Value()); - if(CheckSubObjectInUse( chobj, child, aStudy)) return; - } - } - - RemoveObjectWithChildren(obj, aStudy, views, disp); - - // Remove objects from Study - aStudyBuilder->RemoveObjectWithChildren( obj ); - - //deleted = true; - } // MAIN LOOP of selected - - selected.Clear(); - aSelMgr->setSelectedObjects( selected ); - getGeometryGUI()->updateObjBrowser(); - } // if ( selected not empty ) - } // if ( selMgr && appStudy ) - - app->updateActions(); //SRN: To update a Save button in the toolbar - - } // if ( app ) - - - // if ( deleted ) - // op->finish(); - // else - // op->abort(); + // show confirmation dialog box + GEOMToolsGUI_DeleteDlg dlg( app->desktop(), allDeleted, isComponentSelected ); + if ( !dlg.exec() ) + return; // operation is cancelled by user + + // get currently opened views + QList views; + SALOME_View* view; + ViewManagerList vmans = app->viewManagers(); + SUIT_ViewManager* vman; + foreach ( vman, vmans ) { + SUIT_ViewModel* vmod = vman->getViewModel(); + view = dynamic_cast ( vmod ); // must work for OCC and VTK views + if ( view ) + views.append( view ); + } + + _PTR(StudyBuilder) aStudyBuilder (aStudy->NewBuilder()); + GEOM_Displayer* disp = new GEOM_Displayer( appStudy ); + + if ( isComponentSelected ) { + // GEOM component is selected: delete all objects recursively + _PTR(SObject) comp = aStudy->FindObjectID( geomComp.toLatin1().data() ); + if ( !comp ) + return; + _PTR(ChildIterator) it ( aStudy->NewChildIterator( comp ) ); + // remove top-level objects only + for ( it->InitEx( false ); it->More(); it->Next() ) { + _PTR(SObject) child( it->Value() ); + // remove object from GEOM engine + removeObjectWithChildren( child, aStudy, views, disp ); + // remove object from study + aStudyBuilder->RemoveObjectWithChildren( child ); + } + } + else { + // GEOM component is not selected: check if selected objects are in use + if ( inUse( aStudy, geomComp, allDeleted ) ) { + SUIT_MessageBox::warning( app->desktop(), + QObject::tr("WRN_WARNING"), + QObject::tr("DEP_OBJECT") ); + return; // object(s) in use + } + // ... and then delete all objects + QMap::Iterator it; + for ( it = toBeDeleted.begin(); it != toBeDeleted.end(); ++it ) { + _PTR(SObject) obj ( aStudy->FindObjectID( it.key().toLatin1().data() ) ); + // remove object from GEOM engine + removeObjectWithChildren( obj, aStudy, views, disp ); + // remove objects from study + aStudyBuilder->RemoveObjectWithChildren( obj ); + } + } + + selected.Clear(); + aSelMgr->setSelectedObjects( selected ); + getGeometryGUI()->updateObjBrowser(); + app->updateActions(); //SRN: To update a Save button in the toolbar } @@ -483,7 +602,6 @@ void GEOMToolsGUI::OnEditCopy() */ } - //===================================================================================== // function : Import // purpose : BRep, Iges, Step @@ -491,116 +609,141 @@ void GEOMToolsGUI::OnEditCopy() bool GEOMToolsGUI::Import() { SalomeApp_Application* app = dynamic_cast< SalomeApp_Application* >( getGeometryGUI()->getApp() ); - //SUIT_Application* app = getGeometryGUI()->getApp(); if (! app) return false; SalomeApp_Study* stud = dynamic_cast ( app->activeStudy() ); if ( !stud ) { - cout << "FAILED to cast active study to SalomeApp_Study" << endl; + MESSAGE ( "FAILED to cast active study to SalomeApp_Study" ); return false; } _PTR(Study) aStudy = stud->studyDS(); + // check if study is locked bool aLocked = (_PTR(AttributeStudyProperties)(aStudy->GetProperties()))->IsLocked(); if ( aLocked ) { - SUIT_MessageBox::warn1 ( app->desktop(), - QObject::tr("WRN_WARNING"), - QObject::tr("WRN_STUDY_LOCKED"), - QObject::tr("BUT_OK") ); + SUIT_MessageBox::warning( app->desktop(), + QObject::tr("WRN_WARNING"), + QObject::tr("WRN_STUDY_LOCKED") ); return false; } + // check if GEOM engine is available GEOM::GEOM_Gen_var eng = GeometryGUI::GetGeomGen(); if ( CORBA::is_nil( eng ) ) { - SUIT_MessageBox::error1( app->desktop(), - QObject::tr("WRN_WARNING"), - QObject::tr( "GEOM Engine is not started" ), - QObject::tr("BUT_OK") ); - return false; - } + SUIT_MessageBox::critical( app->desktop(), + QObject::tr("WRN_WARNING"), + QObject::tr( "GEOM Engine is not started" ) ); + return false; + } GEOM::GEOM_IInsertOperations_var aInsOp = eng->GetIInsertOperations( aStudy->StudyId() ); if ( aInsOp->_is_nil() ) return false; - GEOM::GEOM_Object_var anObj; - - // Obtain a list of available import formats + // obtain a list of available import formats FilterMap aMap; - QStringList filters; GEOM::string_array_var aFormats, aPatterns; aInsOp->ImportTranslators( aFormats, aPatterns ); - for ( int i = 0, n = aFormats->length(); i < n; i++ ) { + for ( int i = 0, n = aFormats->length(); i < n; i++ ) aMap.insert( (char*)aPatterns[i], (char*)aFormats[i] ); - filters.push_back( (char*)aPatterns[i] ); - } + // select files to be imported QString fileType; + QStringList fileNames = getFileNames( app->desktop(), "", aMap, + tr( "GEOM_MEN_IMPORT" ), fileType, true ); - QString fileName = getFileName(app->desktop(), "", aMap, filters, - tr("GEOM_MEN_IMPORT"), true, fileType); + // set Wait cursor + SUIT_OverrideCursor wc; - if (fileType.isEmpty() ) - { - // Trying to detect file type - QFileInfo aFileInfo( fileName ); - QString aPossibleType = (aFileInfo.extension(false)).upper() ; + if ( fileNames.count() == 0 ) + return false; // nothing selected, return - if ( (aMap.values()).contains(aPossibleType) ) - fileType = aPossibleType; - } + QStringList errors; - if (fileName.isEmpty() || fileType.isEmpty()) - return false; + QList< GEOM::GEOM_Object_var > objsForDisplay; + + // iterate through all selected files + for ( QStringList::ConstIterator it = fileNames.begin(); it != fileNames.end(); ++it ) { + QString fileName = *it; - GEOM_Operation* anOp = new GEOM_Operation (app, aInsOp.in()); - try { - SUIT_OverrideCursor wc; + if ( fileName.isEmpty() ) + continue; - app->putInfo(tr("GEOM_PRP_LOADING").arg(SUIT_Tools::file(fileName, /*withExten=*/true))); - - anOp->start(); - - CORBA::String_var fileN = fileName.latin1(); - CORBA::String_var fileT = fileType.latin1(); - anObj = aInsOp->Import(fileN, fileT); - - if ( !anObj->_is_nil() && aInsOp->IsDone() ) { - QString aPublishObjName = - GEOMBase::GetDefaultName(SUIT_Tools::file(fileName, /*withExten=*/true)); - - SALOMEDS::Study_var aDSStudy = GeometryGUI::ClientStudyToStudy(aStudy); - GeometryGUI::GetGeomGen()->PublishInStudy(aDSStudy, - SALOMEDS::SObject::_nil(), - anObj, - aPublishObjName); - - GEOM_Displayer( stud ).Display( anObj.in() ); - - // update data model and object browser - getGeometryGUI()->updateObjBrowser( true ); - - anOp->commit(); + QString aCurrentType; + if ( fileType.isEmpty() ) { + // file type is not defined, try to detect + QString ext = QFileInfo( fileName ).suffix().toUpper(); + QRegExp re( "\\*\\.(\\w+)" ); + for ( FilterMap::const_iterator it = aMap.begin(); + it != aMap.end() && aCurrentType.isEmpty(); ++it ) { + int pos = 0; + while ( re.indexIn( it.key(), pos ) >= 0 ) { + QString f = re.cap(1).trimmed().toUpper(); + if ( ext == f ) { aCurrentType = it.value(); break; } + pos = re.pos() + re.cap(1).length() + 2; + } + } } else { + aCurrentType = fileType; + } + + if ( aCurrentType.isEmpty() ) { + errors.append( QString( "%1 : %2" ).arg( fileName ).arg( tr( "GEOM_UNSUPPORTED_TYPE" ) ) ); + continue; + } + + GEOM_Operation* anOp = new GEOM_Operation( app, aInsOp.in() ); + try { + app->putInfo( tr( "GEOM_PRP_LOADING" ).arg( SUIT_Tools::file( fileName, /*withExten=*/true ) ) ); + anOp->start(); + + CORBA::String_var fileN = fileName.toLatin1().constData(); + CORBA::String_var fileT = aCurrentType.toLatin1().constData(); + GEOM::GEOM_Object_var anObj = aInsOp->Import( fileN, fileT ); + + if ( !anObj->_is_nil() && aInsOp->IsDone() ) { + QString aPublishObjName = + GEOMBase::GetDefaultName( SUIT_Tools::file( fileName, /*withExten=*/true ) ); + + SALOMEDS::Study_var aDSStudy = GeometryGUI::ClientStudyToStudy( aStudy ); + GeometryGUI::GetGeomGen()->PublishInStudy( aDSStudy, + SALOMEDS::SObject::_nil(), + anObj, + aPublishObjName.toLatin1().constData() ); + + objsForDisplay.append( anObj ); + + anOp->commit(); + } + else { + anOp->abort(); + errors.append( QString( "%1 : %2" ).arg( fileName ).arg( aInsOp->GetErrorCode() ) ); + } + } + catch( const SALOME::SALOME_Exception& S_ex ) { anOp->abort(); - wc.suspend(); - SUIT_MessageBox::error1( app->desktop(), - QObject::tr( "GEOM_ERROR" ), - QObject::tr("GEOM_PRP_ABORT") + "\n" + QString( aInsOp->GetErrorCode() ), - QObject::tr("BUT_OK") ); + errors.append( QString( "%1 : %2" ).arg( fileName ).arg( tr( "GEOM_UNKNOWN_IMPORT_ERROR" ) ) ); } } - catch( const SALOME::SALOME_Exception& S_ex ) { - //QtCatchCorbaException(S_ex); - anOp->abort(); - return false; + + // update object browser + getGeometryGUI()->updateObjBrowser( true ); + + // display imported model (if only one file is selected) + if ( objsForDisplay.count() == 1 ) + GEOM_Displayer( stud ).Display( objsForDisplay[0].in() ); + + if ( errors.count() > 0 ) { + SUIT_MessageBox::critical( app->desktop(), + QObject::tr( "GEOM_ERROR" ), + QObject::tr( "GEOM_IMPORT_ERRORS" ) + "\n" + errors.join( "\n" ) ); } app->updateActions(); //SRN: To update a Save button in the toolbar - return true; + return objsForDisplay.count() > 0; } @@ -615,17 +758,16 @@ bool GEOMToolsGUI::Export() SalomeApp_Study* stud = dynamic_cast ( app->activeStudy() ); if ( !stud ) { - cout << "FAILED to cast active study to SalomeApp_Study" << endl; + MESSAGE ( "FAILED to cast active study to SalomeApp_Study" ); return false; } _PTR(Study) aStudy = stud->studyDS(); GEOM::GEOM_Gen_var eng = GeometryGUI::GetGeomGen(); if ( CORBA::is_nil( eng ) ) { - SUIT_MessageBox::error1( app->desktop(), - QObject::tr("WRN_WARNING"), - QObject::tr( "GEOM Engine is not started" ), - QObject::tr("BUT_OK") ); + SUIT_MessageBox::critical( app->desktop(), + QObject::tr("WRN_WARNING"), + QObject::tr( "GEOM Engine is not started" ) ); return false; } @@ -650,6 +792,7 @@ bool GEOMToolsGUI::Export() SALOME_ListIO selectedObjects; sm->selectedObjects( selectedObjects ); + bool appropriateObj = false; SALOME_ListIteratorOfListIO It( selectedObjects ); for(;It.More();It.Next()) { @@ -662,7 +805,7 @@ bool GEOMToolsGUI::Export() QString fileType; QString file = getFileName(app->desktop(), QString( IObject->getName() ), aMap, filters, - tr("GEOM_MEN_EXPORT"), false, fileType); + tr("GEOM_MEN_EXPORT"), false, fileType, true); // User has pressed "Cancel" --> stop the operation if ( file.isEmpty() || fileType.isEmpty() ) @@ -677,7 +820,7 @@ bool GEOMToolsGUI::Export() anOp->start(); - aInsOp->Export( anObj, file, fileType.latin1() ); + aInsOp->Export( anObj, file.toStdString().c_str(), fileType.toLatin1().constData() ); if ( aInsOp->IsDone() ) anOp->commit(); @@ -685,10 +828,9 @@ bool GEOMToolsGUI::Export() { anOp->abort(); wc.suspend(); - SUIT_MessageBox::error1( app->desktop(), - QObject::tr( "GEOM_ERROR" ), - QObject::tr("GEOM_PRP_ABORT") + "\n" + QString( aInsOp->GetErrorCode() ), - QObject::tr("BUT_OK") ); + SUIT_MessageBox::critical( app->desktop(), + QObject::tr( "GEOM_ERROR" ), + QObject::tr("GEOM_PRP_ABORT") + "\n" + QString( aInsOp->GetErrorCode() ) ); return false; } } @@ -697,63 +839,29 @@ bool GEOMToolsGUI::Export() anOp->abort(); return false; } + appropriateObj = true; } + if ( !appropriateObj ) + SUIT_MessageBox::warning( app->desktop(), + QObject::tr("WRN_WARNING"), + QObject::tr("GEOM_WRN_NO_APPROPRIATE_SELECTION") ); return true; } - -QString GEOMToolsGUI::getParentComponent( _PTR( Study ) study, const SALOME_ListIO& iobjs ) -{ - QString parentComp; - - for ( SALOME_ListIteratorOfListIO it( iobjs ); it.More(); it.Next() ) { - - Handle(SALOME_InteractiveObject) io = it.Value(); - if ( !io->hasEntry() ) - continue; - - QString compName = getParentComponent( study->FindObjectID( io->getEntry() ) ); - - if ( parentComp.isNull() ) - parentComp = compName; - else if ( parentComp.compare( compName) != 0 ) { // objects belonging to different components are selected - parentComp = QString::null; - break; - } - } - - return parentComp; -} - -QString GEOMToolsGUI::getParentComponent( _PTR( SObject ) obj ) -{ - if ( obj ) { - _PTR(SComponent) comp = obj->GetFatherComponent(); - if ( comp ) { - _PTR(GenericAttribute) anAttr; - if ( comp->FindAttribute( anAttr, "AttributeName") ) { - _PTR(AttributeName) aName( anAttr ); - return QString( aName->Value().c_str() ); - } - } - } - return QString(); -} - //===================================================================================== // function : RemoveObjectWithChildren // purpose : to be used by OnEditDelete() method //===================================================================================== -void GEOMToolsGUI::RemoveObjectWithChildren(_PTR(SObject) obj, +void GEOMToolsGUI::removeObjectWithChildren(_PTR(SObject) obj, _PTR(Study) aStudy, - QPtrList views, + QList views, GEOM_Displayer* disp) { // iterate through all children of obj for (_PTR(ChildIterator) it (aStudy->NewChildIterator(obj)); it->More(); it->Next()) { _PTR(SObject) child (it->Value()); - RemoveObjectWithChildren(child, aStudy, views, disp); + removeObjectWithChildren(child, aStudy, views, disp); } // erase object and remove it from engine @@ -769,50 +877,17 @@ void GEOMToolsGUI::RemoveObjectWithChildren(_PTR(SObject) obj, GEOM::GEOM_Object_var geomObj = GEOM::GEOM_Object::_narrow( corbaObj ); if (!CORBA::is_nil(geomObj)) { // Erase graphical object - SALOME_View* view = views.first(); - for (; view; view = views.next()) { - disp->Erase(geomObj, true, view); - } - + QListIterator it( views ); + while ( it.hasNext() ) + if ( SALOME_View* view = it.next() ) + disp->Erase(geomObj, true, view); + // Remove object from Engine GeometryGUI::GetGeomGen()->RemoveObject( geomObj ); } } } -//===================================================================================== -// function : CheckSubObjectInUse -// purpose : to be used by OnEditDelete() method -//===================================================================================== -bool GEOMToolsGUI::CheckSubObjectInUse(_PTR(SObject) checkobj, - _PTR(SObject) remobj, - _PTR(Study) aStudy) -{ - CORBA::Object_var corbaObj = GeometryGUI::ClientSObjectToObject(checkobj); - GEOM::GEOM_Object_var geomObj = GEOM::GEOM_Object::_narrow( corbaObj ); - if( CORBA::is_nil(geomObj) ) - return false; - - GEOM::ListOfGO_var list = geomObj->GetDependency(); - if( list->length() > 1 ) - for(int i = 0; i < list->length(); i++ ){ - CORBA::Object_var corbaObj_rem = GeometryGUI::ClientSObjectToObject(remobj); - GEOM::GEOM_Object_var geomObj_rem = GEOM::GEOM_Object::_narrow( corbaObj_rem ); - if( list[i]->_is_equivalent( geomObj_rem ) ){ - SalomeApp_Application* app = - dynamic_cast< SalomeApp_Application* >( SUIT_Session::session()->activeApplication() ); - - SUIT_MessageBox::warn1 ( app->desktop(), - QObject::tr("WRN_WARNING"), - QObject::tr("DEP_OBJECT"), - QObject::tr("BUT_OK") ); - return true; - } - } - - return false; -} - //================================================================================= // function : deactivate() // purpose : Called when GEOM component is deactivated @@ -833,7 +908,9 @@ void GEOMToolsGUI::deactivate() //===================================================================================== extern "C" { -GEOMTOOLSGUI_EXPORT +#ifdef WIN32 + __declspec( dllexport ) +#endif GEOMGUI* GetLibGUI( GeometryGUI* parent ) { return new GEOMToolsGUI( parent ); diff --git a/src/GEOMToolsGUI/GEOMToolsGUI.h b/src/GEOMToolsGUI/GEOMToolsGUI.h index 69ad114d1..3ae7e7808 100644 --- a/src/GEOMToolsGUI/GEOMToolsGUI.h +++ b/src/GEOMToolsGUI/GEOMToolsGUI.h @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,31 +17,26 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMToolsGUI.h +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : GEOMToolsGUI.h -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #ifndef GEOMTOOLSGUI_H #define GEOMTOOLSGUI_H #include "GEOM_ToolsGUI.hxx" -#include "GEOMGUI.h" -#include "GEOM_Displayer.h" - -#include +#include #include -#include -#include +class GEOM_Displayer; +class SALOME_View; +class SALOME_ListIO; -#include +#include //================================================================================= // class : GEOMToolsGUI @@ -49,51 +44,39 @@ //================================================================================= class GEOMTOOLSGUI_EXPORT GEOMToolsGUI : public GEOMGUI { -public : +public: GEOMToolsGUI( GeometryGUI* ); // hide constructor to avoid direct creation ~GEOMToolsGUI(); - bool OnGUIEvent( int theCommandID, SUIT_Desktop* parent ); + bool OnGUIEvent( int, SUIT_Desktop* ); virtual void deactivate(); private: // Import and export topology methods - bool Import(); - bool Export(); + bool Import(); + bool Export(); - void OnEditCopy(); - void OnEditDelete(); + void OnEditCopy(); + void OnEditDelete(); - void OnSettingsColor(); - void OnSettingsIsos(); - void OnSettingsStep(); - void OnRename(); - void OnCheckGeometry(); + void OnSettingsColor(); + void OnRename(); + void OnCheckGeometry(); // Popup commands - void OnAutoColor(); - void OnDisableAutoColor(); - void OnColor(); - void OnTransparency(); - void OnNbIsos(); - void OnOpen(); - void OnSelectOnly(int mode); + void OnAutoColor(); + void OnDisableAutoColor(); + void OnColor(); + void OnTransparency(); + void OnNbIsos(); + void OnOpen(); + void OnSelectOnly(int mode); - // returns name of Module (Component) of given objects (usually selected objects) - // if objects belong to different Components, a NULL string is returned. - QString getParentComponent( _PTR( Study ), const SALOME_ListIO& ); - QString getParentComponent( _PTR(SObject) ); - // Recursive deletion of object with children - void RemoveObjectWithChildren(_PTR(SObject) obj, - _PTR(Study) aStudy, - QPtrList views, - GEOM_Displayer* disp); - - //checks if the object passed as the first argument depends on the second arguments - bool CheckSubObjectInUse(_PTR(SObject) checkobj, - _PTR(SObject) remobj, - _PTR(Study) aStudy); + void removeObjectWithChildren( _PTR(SObject), + _PTR(Study), + QList, + GEOM_Displayer* ); }; -#endif +#endif // GEOMTOOLSGUI_H diff --git a/src/GEOMToolsGUI/GEOMToolsGUI.pro b/src/GEOMToolsGUI/GEOMToolsGUI.pro new file mode 100644 index 000000000..3ab591e7b --- /dev/null +++ b/src/GEOMToolsGUI/GEOMToolsGUI.pro @@ -0,0 +1,65 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = GEOMToolsGUI +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +QT_INCLUDES = $$(QTDIR)/include $$(QTDIR)/include/QtCore $$(QTDIR)/include/QtGui $$(QTDIR)/include/QtOpenGL $$(QTDIR)/include/QtXml + +VTK_INCLUDES = $$(VTKHOME)/include/vtk + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +PYTHON_INCLUDES = $$(PYTHONHOME)/include/python2.4 + +BOOST_CPPFLAGS = $$(BOOSTDIR)/include + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +GUI_CXXFLAGS = $$(GUI_ROOT_DIR)/include/salome + +CORBA_INCLUDES = $$(OMNIORBDIR)/include $$(OMNIORBDIR)/include/omniORB4 $$(OMNIORBDIR)/include/COS + +GUI_LDFLAGS = -L$$(GUI_ROOT_DIR)/lib/salome + +INCLUDEPATH += $${QT_INCLUDES} $${VTK_INCLUDES} $${CAS_CPPFLAGS} $${PYTHON_INCLUDES} $${BOOST_CPPFLAGS} $${KERNEL_CXXFLAGS} $${GUI_CXXFLAGS} $${CORBA_INCLUDES} ../OBJECT ../GEOMBase ../GEOMClient ../GEOMImpl ../GEOMGUI $$(GEOM_ROOT_DIR)/idl $$(GEOM_ROOT_DIR)/salome_adm/unix + +LIBS += -L$$(GEOM_ROOT_DIR)/lib -lGEOMBase -lGEOM $${GUI_LDFLAGS} -lVTKViewer -lOCCViewer -lsuit -lSalomeApp + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += GEOMTOOLSGUI_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS OMNIORB_VERSION=4 __x86__ __linux__ COMP_CORBA_DOUBLE COMP_CORBA_LONG + +SOURCES = GEOMToolsGUI.cxx +SOURCES += GEOMToolsGUI_1.cxx +SOURCES += GEOMToolsGUI_TransparencyDlg.cxx +SOURCES += GEOMToolsGUI_NbIsosDlg.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/GEOMToolsGUI/GEOMToolsGUI_1.cxx b/src/GEOMToolsGUI/GEOMToolsGUI_1.cxx index 139630563..a996e25ef 100644 --- a/src/GEOMToolsGUI/GEOMToolsGUI_1.cxx +++ b/src/GEOMToolsGUI/GEOMToolsGUI_1.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2004 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,28 +17,26 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMToolsGUI_1.cxx +// Author : Sergey ANIKIN, Open CASCADE S.A.S. (sergey.anikin@opencascade.com) // -// -// File : GEOMToolsGUI_1.cxx -// Author : Sergey ANIKIN -// Module : GEOM -// $Header$ - -#include +#include #include "GEOMToolsGUI.h" - -#include "GeometryGUI.h" #include "GEOMToolsGUI_TransparencyDlg.h" -#include "GEOMToolsGUI_NbIsosDlg.h" // Method ISOS adjustement +#include "GEOMToolsGUI_NbIsosDlg.h" -#include "GEOM_Actor.h" -#include "GEOMBase.h" +#include +#include -#include "SALOME_ListIO.hxx" -#include "SALOME_ListIteratorOfListIO.hxx" +#include +#include + +#include +#include #include @@ -48,10 +46,8 @@ #include #include -#include #include -#include #include #include #include @@ -67,35 +63,20 @@ #include -#include "SALOMEDSClient.hxx" - #include "utilities.h" // OCCT Includes #include -#include -#include #include #include #include -// VTK Includes -#include -#include -#include -#include -#include -#include - // QT Includes -#include -#include -#include -#include -#include - -using namespace std; +#include +#include +// VTK includes +#include void GEOMToolsGUI::OnSettingsColor() { @@ -116,68 +97,11 @@ void GEOMToolsGUI::OnSettingsColor() } } -void GEOMToolsGUI::OnSettingsIsos() -{ -/* - SUIT_Session* sess = SUIT_Session::session(); - SUIT_ResourceMgr* resMgr = sess->resourceMgr(); - SUIT_Desktop* desk = sess->activeApplication()->desktop(); - - SUIT_ViewManager* vman = desk->activeWindow()->getViewManager(); - QString type = vman->getType(); - - if ( type != OCCViewer_Viewer::Type() ) - return; - - OCCViewer_Viewer* vm = (OCCViewer_Viewer*)vman->getViewModel(); - Handle (AIS_InteractiveContext) ic = vm->getAISContext(); - - int IsoU = resMgr->integerValue( "Geometry:SettingsIsoU", 1 ); - int IsoV = resMgr->integerValue( "Geometry:SettingsIsoV", 1 ); - - ic->DefaultDrawer()->UIsoAspect()->SetNumber( IsoU ); - ic->DefaultDrawer()->VIsoAspect()->SetNumber( IsoV ); - - GEOMBase_NbIsosDlg* NbIsosDlg = new GEOMBase_NbIsosDlg(desk, tr("GEOM_MEN_ISOS"), TRUE); - - NbIsosDlg->SpinBoxU->setValue(IsoU); - NbIsosDlg->SpinBoxV->setValue(IsoV); - - if(NbIsosDlg->exec()) { - IsoU = NbIsosDlg->SpinBoxU->text().toInt(); - IsoV = NbIsosDlg->SpinBoxV->text().toInt(); - - ic->DefaultDrawer()->UIsoAspect()->SetNumber(UIso); - ic->DefaultDrawer()->VIsoAspect()->SetNumber(VIso); - resMgr->setValue("Geometry:SettingsIsoU", isoU); - resMgr->setValue("Geometry:SettingsIsoV", isoV); - } -*/ -} - -void GEOMToolsGUI::OnSettingsStep() -{ - SUIT_Session* sess = SUIT_Session::session(); - SUIT_ResourceMgr* resMgr = sess->resourceMgr(); - - double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100. ); - - Standard_Boolean res = false; - double dd = GEOMBase::Parameter( res, QString("%1").arg(step), tr("GEOM_MEN_STEP_LABEL"), tr("GEOM_STEP_TITLE"), 0.001, 10000.0, 3); - if(res) { - resMgr->setValue( "Geometry", "SettingsGeomStep", dd ); - - /* Emit signal to GeometryGUI_SpinBoxes */ - getGeometryGUI()->EmitSignalDefaultStepValueChanged( dd ); - } - else - sess->activeApplication()->putInfo(tr("GEOM_PRP_ABORT")); -} - void GEOMToolsGUI::OnRename() { SALOME_ListIO selected; - SalomeApp_Application* app = dynamic_cast< SalomeApp_Application* >( SUIT_Session::session()->activeApplication() ); + SalomeApp_Application* app = + dynamic_cast< SalomeApp_Application* >( SUIT_Session::session()->activeApplication() ); if ( app ) { LightApp_SelectionMgr* aSelMgr = app->selectionMgr(); SalomeApp_Study* appStudy = dynamic_cast( app->activeStudy() ); @@ -188,35 +112,44 @@ void GEOMToolsGUI::OnRename() bool aLocked = (_PTR(AttributeStudyProperties)(aStudy->GetProperties()))->IsLocked(); if ( aLocked ) { - SUIT_MessageBox::warn1 ( app->desktop(), - QObject::tr("WRN_WARNING"), - QObject::tr("WRN_STUDY_LOCKED"), - QObject::tr("BUT_OK") ); + SUIT_MessageBox::warning ( app->desktop(), + QObject::tr("WRN_WARNING"), + QObject::tr("WRN_STUDY_LOCKED") ); return; } + bool isAny = false; // is there any appropriate object selected for ( SALOME_ListIteratorOfListIO It( selected ); It.More(); It.Next() ) { Handle(SALOME_InteractiveObject) IObject = It.Value(); _PTR(SObject) obj ( aStudy->FindObjectID(IObject->getEntry()) ); _PTR(GenericAttribute) anAttr; if ( obj ) { - if( obj->FindAttribute(anAttr, "AttributeName") ) { + if ( obj->FindAttribute(anAttr, "AttributeName") ) { _PTR(AttributeName) aName (anAttr); - QString newName = LightApp_NameDlg::getName( app->desktop(), aName->Value().c_str() ); - if ( !newName.isEmpty() ) { - aName->SetValue( newName.latin1() ); // rename the SObject - IObject->setName( newName.latin1() );// rename the InteractiveObject - // Rename the corresponding GEOM_Object - GEOM::GEOM_Object_var anObj = GEOM::GEOM_Object::_narrow(GeometryGUI::ClientSObjectToObject(obj)); - if (!CORBA::is_nil( anObj )) - anObj->SetName( newName.latin1() ); - (dynamic_cast(app->activeModule()))->updateObjBrowser( false ); - } + GEOM::GEOM_Object_var anObj = + GEOM::GEOM_Object::_narrow(GeometryGUI::ClientSObjectToObject(obj)); + if (!CORBA::is_nil(anObj)) { + isAny = true; + QString newName = LightApp_NameDlg::getName( app->desktop(), aName->Value().c_str() ); + if (!newName.isEmpty()) { + aName->SetValue( newName.toLatin1().data() ); // rename the SObject + IObject->setName( newName.toLatin1().data() );// rename the InteractiveObject + anObj->SetName( newName.toLatin1().data() ); // Rename the corresponding GEOM_Object + (dynamic_cast(app->activeModule()))->updateObjBrowser( false ); + } + } // if ( anObj ) } // if ( name attribute ) } // if ( obj ) } // iterator + + if (!isAny) { + SUIT_MessageBox::warning( app->desktop(), + QObject::tr("WRN_WARNING"), + QObject::tr("GEOM_WRN_NO_APPROPRIATE_SELECTION") ); + return; + } } } } @@ -227,7 +160,7 @@ void GEOMToolsGUI::OnRename() void GEOMToolsGUI::OnCheckGeometry() { SalomeApp_Application* app = dynamic_cast< SalomeApp_Application* >( SUIT_Session::session()->activeApplication() ); - PythonConsole* pyConsole = app->pythonConsole(); + PyConsole_Console* pyConsole = app->pythonConsole(); if(pyConsole) pyConsole->exec("from GEOM_usinggeom import *"); @@ -235,8 +168,6 @@ void GEOMToolsGUI::OnCheckGeometry() void GEOMToolsGUI::OnAutoColor() { - QPtrList aListOfGroups; - SALOME_ListIO selected; SalomeApp_Application* app = dynamic_cast< SalomeApp_Application* >( SUIT_Session::session()->activeApplication() ); if( !app ) @@ -261,7 +192,7 @@ void GEOMToolsGUI::OnAutoColor() aMainObject->SetAutoColor( true ); - QValueList aReservedColors; + QList aReservedColors; GEOM_Displayer aDisp (appStudy); @@ -461,10 +392,9 @@ void GEOMToolsGUI::OnNbIsos() SUIT_ViewWindow* window = SUIT_Session::session()->activeApplication()->desktop()->activeWindow(); bool isOCC = ( window && window->getViewManager()->getType() == OCCViewer_Viewer::Type() ); - const bool isVTK = ( window && window->getViewManager()->getType() == SVTK_Viewer::Type() ); + bool isVTK = ( window && window->getViewManager()->getType() == SVTK_Viewer::Type() ); - // if is OCCViewer - if(isOCC){ + if(isOCC){ // if is OCCViewer OCCViewer_Viewer* vm = dynamic_cast( window->getViewManager()->getViewModel() ); Handle (AIS_InteractiveContext) ic = vm->getAISContext(); @@ -500,8 +430,8 @@ void GEOMToolsGUI::OnNbIsos() } } } - } else if(isVTK){ // if is VTKViewer - + } + else if(isVTK){ // if is VTKViewer // // Warning. It's works incorrect. must be recheked. // @@ -516,50 +446,61 @@ void GEOMToolsGUI::OnNbIsos() if ( selected.IsEmpty() ) return; - Handle(SALOME_InteractiveObject) FirstIOS = selected.First(); - if ( FirstIOS.IsNull() ) - return; - SVTK_ViewWindow* vtkVW = dynamic_cast( window ); if ( !vtkVW ) return; + + SALOME_View* view = GEOM_Displayer::GetActiveView(); + + vtkActorCollection* aCollection = vtkActorCollection::New(); - SVTK_View* aView = vtkVW->getView(); - vtkActorCollection* aCollection = aView->getRenderer()->GetActors(); - + for ( SALOME_ListIteratorOfListIO It( selected ); It.More(); It.Next() ) { + Handle(SALOME_InteractiveObject) anIObject = It.Value(); + SALOME_Prs* aPrs = view->CreatePrs( anIObject->getEntry() ); + SVTK_Prs* vtkPrs = dynamic_cast( aPrs ); + if ( vtkPrs ) { + vtkActorCollection* anActors = vtkPrs->GetObjects(); + anActors->InitTraversal(); + vtkActor* anAct = anActors->GetNextActor(); + aCollection->AddItem(anAct); + } + } + + if(aCollection) + aCollection->InitTraversal(); + else + return; + int UIso = 0; int VIso = 0; - if(aCollection){ - aCollection->InitTraversal(); - } - vtkActor *anAct = aCollection->GetNextActor(); - if(GEOM_Actor *anActor = dynamic_cast(anAct)){ + vtkActor* anAct = aCollection->GetNextActor(); + if (GEOM_Actor* anActor = GEOM_Actor::SafeDownCast(anAct)) anActor->GetNbIsos(UIso,VIso); - } + else + return; - - GEOMToolsGUI_NbIsosDlg * NbIsosDlg = + GEOMToolsGUI_NbIsosDlg* NbIsosDlg = new GEOMToolsGUI_NbIsosDlg( SUIT_Session::session()->activeApplication()->desktop() ); - + NbIsosDlg->setU( UIso ); NbIsosDlg->setV( VIso ); - + if ( NbIsosDlg->exec() ) { SUIT_OverrideCursor(); - while(anAct = aCollection->GetNextActor()) { - if(GEOM_Actor *anActor = dynamic_cast(anAct)){ + while( anAct!=NULL ) { + if(GEOM_Actor* anActor = GEOM_Actor::SafeDownCast(anAct)){ // There are no casting to needed actor. UIso = NbIsosDlg->getU(); VIso = NbIsosDlg->getV(); int aIsos[2]={UIso,VIso}; anActor->SetNbIsos(aIsos); } + anAct = aCollection->GetNextActor(); } } } // end vtkviewer - } void GEOMToolsGUI::OnOpen() diff --git a/src/GEOMToolsGUI/GEOMToolsGUI_DeleteDlg.cxx b/src/GEOMToolsGUI/GEOMToolsGUI_DeleteDlg.cxx new file mode 100644 index 000000000..9a350496f --- /dev/null +++ b/src/GEOMToolsGUI/GEOMToolsGUI_DeleteDlg.cxx @@ -0,0 +1,132 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMToolsGUI_DeleteDlg.cxx +// Author : Dmitry Matveitchev, Open CASCADE S.A.S. +// +#include "GEOMToolsGUI_DeleteDlg.h" + +#include +#include +#include +#include +#include +#include + +static bool isEntryLess( const QString& e1, const QString& e2 ) +{ + QStringList el1 = e1.split(":"); + QStringList el2 = e2.split(":"); + int e1c = el1.count(), e2c = el2.count(); + for ( int i = 0; i < e1c && i < e2c; i++ ) { + int id1 = el1[i].toInt(); + int id2 = el2[i].toInt(); + if ( id1 < id2 ) return true; + else if ( id2 < id1 ) return false; + } + return el1.count() < el2.count(); +} + +static QStringList objectsToNames( const QMap& objects ) +{ + QStringList entries; + for ( QMap::ConstIterator it = objects.begin(); it != objects.end(); ++it ) { + QString entry = it.key(); + QStringList::Iterator iter; + bool added = false; + for ( iter = entries.begin(); iter != entries.end() && !added; ++iter ) { + if ( isEntryLess( entry, *iter ) ) { + entries.insert( iter, entry ); + added = true; + } + } + if ( !added ) + entries.append( entry ); + } + QStringList names; + for ( int i = 0; i < entries.count(); i++ ) { + int level = entries[i].count(":")-3; + names.append( QString( level*2, ' ' ) + objects[ entries[i] ] ); + } + return names; +} + +/*! + \brief Constructor. + \param parent parent widget +*/ +GEOMToolsGUI_DeleteDlg::GEOMToolsGUI_DeleteDlg( QWidget* parent, + const QMap& objects, + bool deleteAll ) +: QDialog( parent ) +{ + setModal( true ); + setObjectName( "GEOMToolsGUI_DeleteDlg" ); + + setWindowTitle( tr( "GEOM_DELETE_OBJECTS" ) ); + setSizeGripEnabled( true ); + + QGridLayout* topLayout = new QGridLayout( this ); + + topLayout->setSpacing( 6 ); + topLayout->setMargin( 11 ); + + QLabel* pix = new QLabel( this ); + pix->setPixmap( SUIT_MessageBox::standardIcon( QMessageBox::Question ) ); + pix->setScaledContents( false ); + pix->setSizePolicy( QSizePolicy( QSizePolicy::Fixed, QSizePolicy::Fixed ) ); + topLayout->addWidget( pix, 0, 0, 1, 1 ); + + QLabel* lab = new QLabel( this ); + lab->setAlignment( Qt::AlignCenter ); + topLayout->addWidget( lab, 0, 1, 1, 1 ); + + if ( !deleteAll ) { + lab->setText( tr( "GEOM_REALLY_DELETE" ).arg( objects.count() ) ); + QTextBrowser* viewer = new QTextBrowser( this ); + viewer->setText( QString( " - %1" ).arg( objectsToNames( objects ).join( "\n - " ) ) ); + topLayout->addWidget( viewer, 1, 0, 1, 2 ); + } + else { + lab->setText( tr( "GEOM_REALLY_DELETE_ALL" ) ); + } + + QPushButton* buttonYes = new QPushButton( tr( "GEOM_BUT_YES" ), this ); + QPushButton* buttonNo = new QPushButton( tr( "GEOM_BUT_NO" ), this ); + QHBoxLayout* btnLayout = new QHBoxLayout; + btnLayout->setMargin( 0 ); + btnLayout->setSpacing( 6 ); + btnLayout->addWidget( buttonYes ); + btnLayout->addSpacing( 10 ); + btnLayout->addStretch(); + btnLayout->addWidget( buttonNo ); + int rc = topLayout->rowCount(); + topLayout->addLayout( btnLayout, rc, 0, 1, 2 ); + + /* signals and slots connections */ + connect( buttonYes, SIGNAL( clicked() ), this, SLOT( accept() ) ); + connect( buttonNo, SIGNAL( clicked() ), this, SLOT( reject() ) ); +} + +GEOMToolsGUI_DeleteDlg::~GEOMToolsGUI_DeleteDlg() +{ +} diff --git a/src/GEOMToolsGUI/GEOMToolsGUI_DeleteDlg.h b/src/GEOMToolsGUI/GEOMToolsGUI_DeleteDlg.h new file mode 100644 index 000000000..2e5e906e1 --- /dev/null +++ b/src/GEOMToolsGUI/GEOMToolsGUI_DeleteDlg.h @@ -0,0 +1,43 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMToolsGUI_DeleteDlg.h +// Author : Dmitry Matveitchev, Open CASCADE S.A.S. +// +#ifndef GEOMTOOLSGUI_DELETEDLG_H +#define GEOMTOOLSGUI_DELETEDLG_H + +#include "GEOM_ToolsGUI.hxx" + +#include +#include + +class GEOMTOOLSGUI_EXPORT GEOMToolsGUI_DeleteDlg : public QDialog +{ + Q_OBJECT + +public: + GEOMToolsGUI_DeleteDlg( QWidget*, const QMap&, bool = false ); + ~GEOMToolsGUI_DeleteDlg(); +}; + +#endif // GEOMTOOLSGUI_DELETEDLG_H diff --git a/src/GEOMToolsGUI/GEOMToolsGUI_NameDlg.h b/src/GEOMToolsGUI/GEOMToolsGUI_NameDlg.h deleted file mode 100644 index 050806d8a..000000000 --- a/src/GEOMToolsGUI/GEOMToolsGUI_NameDlg.h +++ /dev/null @@ -1,48 +0,0 @@ -// SALOME GEOMToolsGUI : implementation of desktop and GUI kernel -// -// Copyright (C) 2003 CEA/DEN, EDF R&D -// -// -// -// File : GEOMToolsGUI_NameDlg.h -// Author : Vadim SANDLER -// Module : SALOME -// $Header$ - -#ifndef GEOMToolsGUI_NAMEDLG_H -#define GEOMToolsGUI_NAMEDLG_H - -#include "GEOM_ToolsGUI.hxx" - -#include - -class QLineEdit; -class QPushButton; - -//================================================================================= -// class : GEOMToolsGUI_NameDlg -// purpose : Common dialog box class -//================================================================================= -class GEOMTOOLSGUI_EXPORT GEOMToolsGUI_NameDlg : public QDialog -{ - Q_OBJECT - -public: - GEOMToolsGUI_NameDlg( QWidget* parent = 0 ); - ~GEOMToolsGUI_NameDlg(); - - void setName( const QString& name ); - QString name(); - - static QString getName( QWidget* parent = 0, const QString& oldName = QString::null ); - -protected slots: - void accept(); - -private: - QPushButton* myButtonOk; - QPushButton* myButtonCancel; - QLineEdit* myLineEdit; -}; - -#endif // GEOMToolsGUI_NAMEDLG_H diff --git a/src/GEOMToolsGUI/GEOMToolsGUI_NbIsosDlg.cxx b/src/GEOMToolsGUI/GEOMToolsGUI_NbIsosDlg.cxx index 3fad26e35..b8bc790ba 100644 --- a/src/GEOMToolsGUI/GEOMToolsGUI_NbIsosDlg.cxx +++ b/src/GEOMToolsGUI/GEOMToolsGUI_NbIsosDlg.cxx @@ -1,45 +1,42 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMToolsGUI_NbIsosDlg.cxx +// Author : OCC Team // -// File : GEOMBase_NbIsosDlg.cxx -// Author : -// Module : GEOM -// $Header: - - #include "GEOMToolsGUI_NbIsosDlg.h" -#include "GeometryGUI.h" +#include #include #include +#include #include #include -#include -#include -#include -#include -#include -//using namespace std; +#include +#include +#include +#include +#include +#include //================================================================================= // class : GEOMToolsGUI_NbIsosDlg() @@ -49,55 +46,59 @@ // TRUE to construct a modal dialog. //================================================================================= GEOMToolsGUI_NbIsosDlg::GEOMToolsGUI_NbIsosDlg(QWidget* parent ) - :QDialog( parent, "GEOMToolsGUI_NbIsosDlg", true, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) + :QDialog( parent, Qt::WindowTitleHint | Qt::WindowSystemMenuHint ) { - setCaption( tr( "GEOM_MEN_ISOS" ) ); + setObjectName( "GEOMToolsGUI_NbIsosDlg" ); + setModal( true ); + + setWindowTitle( tr( "GEOM_MEN_ISOS" ) ); setSizeGripEnabled(TRUE); QGridLayout* MyDialogLayout = new QGridLayout(this); MyDialogLayout->setSpacing(6); MyDialogLayout->setMargin(11); /***************************************************************/ - QGroupBox* GroupC1 = new QGroupBox( this, "GroupC1" ); - GroupC1->setColumnLayout(0, Qt::Vertical ); - GroupC1->layout()->setSpacing( 0 ); - GroupC1->layout()->setMargin( 0 ); - QGridLayout* GroupC1Layout = new QGridLayout( GroupC1->layout() ); + QGroupBox* GroupC1 = new QGroupBox( this ); + GroupC1->setObjectName( "GroupC1" ); + QGridLayout* GroupC1Layout = new QGridLayout( GroupC1 ); GroupC1Layout->setAlignment( Qt::AlignTop ); GroupC1Layout->setSpacing( 6 ); GroupC1Layout->setMargin( 11 ); - QLabel* TextLabel1 = new QLabel( GroupC1, "TextLabel1" ); + QLabel* TextLabel1 = new QLabel( GroupC1 ); + TextLabel1->setObjectName( "TextLabel1" ); TextLabel1->setText( tr( "GEOM_MEN_ISOU") ); GroupC1Layout->addWidget( TextLabel1, 0, 0 ); - SpinBoxU = new QSpinBox( GroupC1, "SpinBoxU" ); + SpinBoxU = new QSpinBox( GroupC1 ); + SpinBoxU->setObjectName( "SpinBoxU" ); SpinBoxU->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) ); - SpinBoxU->setMinValue( 0 ); + SpinBoxU->setMinimum( 0 ); SpinBoxU->setValue( 1 ); GroupC1Layout->addWidget( SpinBoxU, 0, 1 ); - QLabel* TextLabel2 = new QLabel( GroupC1, "TextLabel2" ); + QLabel* TextLabel2 = new QLabel( GroupC1 ); + TextLabel2->setObjectName( "TextLabel2" ); TextLabel2->setText( tr( "GEOM_MEN_ISOV") ) ; GroupC1Layout->addWidget( TextLabel2, 0, 2 ); - SpinBoxV = new QSpinBox( GroupC1, "SpinBoxV"); + SpinBoxV = new QSpinBox( GroupC1 ); + SpinBoxV->setObjectName( "SpinBoxV"); SpinBoxV->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) ); SpinBoxV->setValue( 1 ); - SpinBoxV->setMinValue( 0 ); + SpinBoxV->setMinimum( 0 ); GroupC1Layout->addWidget( SpinBoxV, 0, 3 ); /***************************************************************/ - QGroupBox* GroupButtons = new QGroupBox( this, "GroupButtons" ); - GroupButtons->setColumnLayout(0, Qt::Vertical ); - GroupButtons->layout()->setSpacing( 0 ); - GroupButtons->layout()->setMargin( 0 ); - QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons->layout() ); + QGroupBox* GroupButtons = new QGroupBox( this ); + GroupButtons->setObjectName( "GroupButtons" ); + QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons ); GroupButtonsLayout->setAlignment( Qt::AlignTop ); GroupButtonsLayout->setSpacing( 6 ); GroupButtonsLayout->setMargin( 11 ); - QPushButton* buttonOk = new QPushButton( GroupButtons, "buttonOk" ); + QPushButton* buttonOk = new QPushButton( GroupButtons ); + buttonOk->setObjectName( "buttonOk" ); buttonOk->setText( tr( "GEOM_BUT_OK" ) ) ; buttonOk->setAutoDefault( TRUE ); buttonOk->setDefault( TRUE ); @@ -105,12 +106,14 @@ GEOMToolsGUI_NbIsosDlg::GEOMToolsGUI_NbIsosDlg(QWidget* parent ) GroupButtonsLayout->addItem( new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 ); - QPushButton* buttonCancel = new QPushButton( GroupButtons, "buttonCancel" ); + QPushButton* buttonCancel = new QPushButton( GroupButtons ); + buttonCancel->setObjectName( "buttonCancel" ); buttonCancel->setText( tr( "GEOM_BUT_CANCEL" ) ) ; buttonCancel->setAutoDefault( TRUE ); GroupButtonsLayout->addWidget( buttonCancel, 0, 1 ); - QPushButton* buttonHelp = new QPushButton( GroupButtons, "buttonHelp" ); + QPushButton* buttonHelp = new QPushButton( GroupButtons ); + buttonHelp->setObjectName( "buttonHelp" ); buttonHelp->setText( tr( "GEOM_BUT_HELP" ) ) ; buttonHelp->setAutoDefault( TRUE ); GroupButtonsLayout->addWidget( buttonHelp, 0, 2 ); @@ -177,10 +180,10 @@ void GEOMToolsGUI_NbIsosDlg::ClickOnHelp() #else platform = "application"; #endif - SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"), - QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE"). - arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(myHelpFileName), - QObject::tr("BUT_OK")); + SUIT_MessageBox::warning(0, QObject::tr("WRN_WARNING"), + QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE"). + arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(myHelpFileName), + QObject::tr("BUT_OK")); } } @@ -194,7 +197,7 @@ void GEOMToolsGUI_NbIsosDlg::keyPressEvent( QKeyEvent* e ) if ( e->isAccepted() ) return; - if ( e->key() == Key_F1 ) + if ( e->key() == Qt::Key_F1 ) { e->accept(); ClickOnHelp(); diff --git a/src/GEOMToolsGUI/GEOMToolsGUI_NbIsosDlg.h b/src/GEOMToolsGUI/GEOMToolsGUI_NbIsosDlg.h index e93b1ded3..23beae1ea 100644 --- a/src/GEOMToolsGUI/GEOMToolsGUI_NbIsosDlg.h +++ b/src/GEOMToolsGUI/GEOMToolsGUI_NbIsosDlg.h @@ -1,37 +1,34 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMToolsGUI_NbIsosDlg.h +// Author : OCC Team // -// File : GEOMToolsGUI_NbIsosDlg.h -// Author : -// Module : GEOM -// $Header: - #ifndef GEOMTOOLSGUI_NBISOSDLG_H #define GEOMTOOLSGUI_NBISOSDLG_H #include "GEOM_ToolsGUI.hxx" -#include +#include class QSpinBox; @@ -41,29 +38,28 @@ class QSpinBox; //================================================================================= class GEOMTOOLSGUI_EXPORT GEOMToolsGUI_NbIsosDlg : public QDialog { - Q_OBJECT + Q_OBJECT public: - GEOMToolsGUI_NbIsosDlg( QWidget* parent ); - ~GEOMToolsGUI_NbIsosDlg(); + GEOMToolsGUI_NbIsosDlg( QWidget* ); + ~GEOMToolsGUI_NbIsosDlg(); - int getU() const; - int getV() const; - - void setU( const int ); - void setV( const int ); - + int getU() const; + int getV() const; + + void setU( const int ); + void setV( const int ); + private slots: - void ClickOnHelp(); + void ClickOnHelp(); private: - void keyPressEvent(QKeyEvent*); + void keyPressEvent( QKeyEvent* ); private: - QSpinBox* SpinBoxU; - QSpinBox* SpinBoxV; - QString myHelpFileName; - + QSpinBox* SpinBoxU; + QSpinBox* SpinBoxV; + QString myHelpFileName; }; #endif // GEOMTOOLSGUI_NBISOSDLG_H diff --git a/src/GEOMToolsGUI/GEOMToolsGUI_TransparencyDlg.cxx b/src/GEOMToolsGUI/GEOMToolsGUI_TransparencyDlg.cxx index ad43b1bd0..c3f06d704 100644 --- a/src/GEOMToolsGUI/GEOMToolsGUI_TransparencyDlg.cxx +++ b/src/GEOMToolsGUI/GEOMToolsGUI_TransparencyDlg.cxx @@ -1,48 +1,43 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMToolsGUI_TransparencyDlg.cxx +// Author : Lucien PIGNOLONI // -// File : GEOMBase_TransparencyDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM - - #include "GEOMToolsGUI_TransparencyDlg.h" -#include "GEOMBase.h" -#include "GEOM_AISShape.hxx" -#include "GeometryGUI.h" +#include +#include +#include -#include "SALOME_ListIO.hxx" -#include "SALOME_ListIteratorOfListIO.hxx" +#include +#include #include #include #include #include -#include #include -#include #include #include #include @@ -53,18 +48,17 @@ #include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include +#include #include + using namespace std; //================================================================================= @@ -76,82 +70,92 @@ using namespace std; // //================================================================================= GEOMToolsGUI_TransparencyDlg::GEOMToolsGUI_TransparencyDlg( QWidget* parent ) - :QDialog( parent, "GEOMBase_TransparencyDlg", true, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu ) + :QDialog( parent, Qt::WindowTitleHint | Qt::WindowSystemMenuHint ) { + setModal( true ); + resize(152, 107); - setCaption(tr("GEOM_TRANSPARENCY_TITLE")); - setSizeGripEnabled(TRUE); - QGridLayout* lay = new QGridLayout(this); + setWindowTitle(tr("GEOM_TRANSPARENCY_TITLE")); + setSizeGripEnabled(true); + QVBoxLayout* lay = new QVBoxLayout(this); lay->setSpacing(6); lay->setMargin(11); - + /*************************************************************************/ - QGroupBox* GroupButtons = new QGroupBox( this, "GroupButtons" ); - GroupButtons->setColumnLayout(0, Qt::Vertical ); - GroupButtons->layout()->setSpacing( 0 ); - GroupButtons->layout()->setMargin( 0 ); - QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons->layout() ); + QGroupBox* GroupButtons = new QGroupBox( this ); + QHBoxLayout* GroupButtonsLayout = new QHBoxLayout( GroupButtons ); GroupButtonsLayout->setAlignment( Qt::AlignTop ); GroupButtonsLayout->setSpacing( 6 ); GroupButtonsLayout->setMargin( 11 ); - QPushButton* buttonOk = new QPushButton( GroupButtons, "buttonOk" ); - buttonOk->setText( tr( "GEOM_BUT_OK" ) ); - buttonOk->setAutoDefault( TRUE ); - buttonOk->setDefault( TRUE ); - - QPushButton* buttonHelp = new QPushButton( GroupButtons, "buttonHelp" ); - buttonHelp->setText( tr( "GEOM_BUT_HELP" ) ); - buttonHelp->setAutoDefault( TRUE ); - buttonHelp->setDefault( TRUE ); - - GroupButtonsLayout->addWidget( buttonOk, 0, 0 ); - GroupButtonsLayout->addItem( new QSpacerItem( 0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum), 0, 1 ); - GroupButtonsLayout->addWidget( buttonHelp, 0, 2 ); - /*************************************************************************/ - QGroupBox* GroupC1 = new QGroupBox( this, "GroupC1" ); - GroupC1->setColumnLayout(0, Qt::Vertical ); - GroupC1->layout()->setSpacing( 0 ); - GroupC1->layout()->setMargin( 0 ); - QGridLayout* GroupC1Layout = new QGridLayout( GroupC1->layout() ); + QGroupBox* GroupC1 = new QGroupBox( this ); + QGridLayout* GroupC1Layout = new QGridLayout( GroupC1 ); GroupC1Layout->setAlignment( Qt::AlignTop ); GroupC1Layout->setSpacing( 6 ); GroupC1Layout->setMargin( 11 ); - QLabel* TextLabelOpaque = new QLabel( GroupC1, "TextLabelOpaque" ); - TextLabelOpaque->setText( tr( "GEOM_TRANSPARENCY_OPAQUE" ) ); - TextLabelOpaque->setAlignment( int( QLabel::AlignLeft ) ); - GroupC1Layout->addWidget( TextLabelOpaque, 0, 0 ); - GroupC1Layout->addItem( new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 ); + QLabel* TextLabelTransparent = new QLabel( tr( "GEOM_TRANSPARENCY_TRANSPARENT" ), GroupC1 ); + TextLabelTransparent->setAlignment( Qt::AlignRight ); + GroupC1Layout->addWidget( TextLabelTransparent, 0, 0 ); - QLabel* TextLabelTransparent = new QLabel( GroupC1, "TextLabelTransparent" ); - TextLabelTransparent->setText( tr( "GEOM_TRANSPARENCY_TRANSPARENT" ) ); - TextLabelTransparent->setAlignment( int( QLabel::AlignRight ) ); - GroupC1Layout->addWidget( TextLabelTransparent, 0, 2 ); + myValueLab = new QLabel( GroupC1 ); + myValueLab->setAlignment( Qt::AlignCenter ); + myValueLab->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) ); + QFont fnt = myValueLab->font(); fnt.setBold( true ); myValueLab->setFont( fnt ); + GroupC1Layout->addWidget( myValueLab, 0, 1 ); + + QLabel* TextLabelOpaque = new QLabel( tr( "GEOM_TRANSPARENCY_OPAQUE" ), GroupC1 ); + TextLabelOpaque->setAlignment( Qt::AlignLeft ); + GroupC1Layout->addWidget( TextLabelOpaque, 0, 2 ); + //GroupC1Layout->addItem( new QSpacerItem( 20, 20, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 ); - mySlider = new QSlider( 0, 10, 1, 5, Horizontal, GroupC1, "mySlider" ); + mySlider = new QSlider( Qt::Horizontal, GroupC1 ); + mySlider->setFocusPolicy( Qt::NoFocus ); mySlider->setMinimumSize( 300, 0 ); - mySlider->setTickmarks( QSlider::Left ); - GroupC1Layout->addMultiCellWidget( mySlider, 1, 1, 0, 2 ); + mySlider->setTickPosition( QSlider::TicksAbove ); + mySlider->setTickInterval( 10 ); + mySlider->setMinimum( 0 ); + mySlider->setMaximum( 100 ); + mySlider->setSingleStep( 1 ); + mySlider->setPageStep( 10 ); + //mySlider->setValue( 5 ); + + mySlider->setTickPosition( QSlider::TicksLeft ); + GroupC1Layout->addWidget( mySlider, 1, 0, 1, 3 ); + /*************************************************************************/ + QPushButton* buttonOk = new QPushButton( tr( "GEOM_BUT_OK" ), GroupButtons ); + buttonOk->setAutoDefault( true ); + buttonOk->setDefault( true ); - lay->addWidget(GroupC1, 0, 0); - lay->addWidget(GroupButtons, 1, 0); + QPushButton* buttonHelp = new QPushButton( tr( "GEOM_BUT_HELP" ), GroupButtons ); + buttonHelp->setAutoDefault( true ); + buttonHelp->setDefault( true ); + + GroupButtonsLayout->addWidget( buttonOk ); + GroupButtonsLayout->addSpacing( 10 ); + GroupButtonsLayout->addStretch(); + GroupButtonsLayout->addWidget( buttonHelp ); + + /*************************************************************************/ + lay->addWidget(GroupC1); + lay->addWidget(GroupButtons); /* First call valueChanged() method for initialisation */ /* The default value of transparency will change with the selection */ myFirstInit = true; // mySlider->setMaxValue( 10 ); // mySlider->setValue( 5 ) ; - ValueHasChanged(mySlider->value()); + SetTransparency(); myHelpFileName = "transparency_page.html"; // signals and slots connections : after ValueHasChanged() - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); connect(buttonHelp, SIGNAL(clicked()), this, SLOT(ClickOnHelp())); - connect(mySlider, SIGNAL(valueChanged(int)), this, SLOT(ValueHasChanged(int))); + connect(mySlider, SIGNAL(valueChanged(int)), this, SLOT(SetTransparency())); + connect(mySlider, SIGNAL(sliderMoved(int)), this, SLOT(ValueHasChanged())); } @@ -204,20 +208,31 @@ void GEOMToolsGUI_TransparencyDlg::ClickOnHelp() #else platform = "application"; #endif - SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"), - QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE"). - arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(myHelpFileName), - QObject::tr("BUT_OK")); + SUIT_MessageBox::warning(0, QObject::tr("WRN_WARNING"), + QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE"). + arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(myHelpFileName), + QObject::tr("BUT_OK")); } } //================================================================================= // function : ValueHasChanged() // purpose : Called when value of slider change +//================================================================================= +void GEOMToolsGUI_TransparencyDlg::ValueHasChanged() +{ + myValueLab->setText( QString("%1%").arg( mySlider->value() ) ); +} + +//================================================================================= +// function : SetTransparency() +// purpose : Called when value of slider change // : or the first time as initilisation //================================================================================= -void GEOMToolsGUI_TransparencyDlg::ValueHasChanged( int newValue ) +void GEOMToolsGUI_TransparencyDlg::SetTransparency() { + float newValue = ( 100 - mySlider->value() ) / 100.; + SalomeApp_Application* app = dynamic_cast< SalomeApp_Application* >( SUIT_Session::session()->activeApplication() ); if ( !app ) return; @@ -244,14 +259,15 @@ void GEOMToolsGUI_TransparencyDlg::ValueHasChanged( int newValue ) SVTK_View* aView = vtkVW->getView(); if ( myFirstInit ) { myFirstInit = false; - float transp = (aView->GetTransparency(FirstIOS))*10.0; - mySlider->setValue(int(transp)); + int transp = int (100 - ((aView->GetTransparency(FirstIOS))*100.0) + 0.5); + mySlider->setValue(transp); + ValueHasChanged(); return; } SUIT_OverrideCursor(); for ( SALOME_ListIteratorOfListIO It( selected ); It.More(); It.Next() ) { - aView->SetTransparency( It.Value(), newValue/10.0 ); + aView->SetTransparency( It.Value(), newValue ); } aView->Repaint(); } // if ( isVTK ) @@ -265,8 +281,9 @@ void GEOMToolsGUI_TransparencyDlg::ValueHasChanged( int newValue ) aisShape = gb->ConvertIOinGEOMAISShape( FirstIOS, found ); if( !found ) return; - float transp = (int(aisShape->Transparency() * 10.0 + 0.001)); - mySlider->setValue(int(transp)); + int transp = int( 100 - ( aisShape->Transparency() * 100.0 ) + 0.5); + mySlider->setValue(transp); + ValueHasChanged(); return; } @@ -278,12 +295,14 @@ void GEOMToolsGUI_TransparencyDlg::ValueHasChanged( int newValue ) for ( SALOME_ListIteratorOfListIO It( selected ); It.More(); It.Next() ) { aisShape = gb->ConvertIOinGEOMAISShape( It.Value(), found ); if ( found ) { - ic->SetTransparency( aisShape, newValue / 10.0, false ); + ic->SetTransparency( aisShape, newValue, false ); ic->Redisplay( aisShape, Standard_False, Standard_True ); } } // for... ic->UpdateCurrentViewer(); } // if ( isOCC ) + + ValueHasChanged(); } //================================================================================= @@ -296,7 +315,7 @@ void GEOMToolsGUI_TransparencyDlg::keyPressEvent( QKeyEvent* e ) if ( e->isAccepted() ) return; - if ( e->key() == Key_F1 ) + if ( e->key() == Qt::Key_F1 ) { e->accept(); ClickOnHelp(); diff --git a/src/GEOMToolsGUI/GEOMToolsGUI_TransparencyDlg.h b/src/GEOMToolsGUI/GEOMToolsGUI_TransparencyDlg.h index 0b7aa869c..96eda5d71 100644 --- a/src/GEOMToolsGUI/GEOMToolsGUI_TransparencyDlg.h +++ b/src/GEOMToolsGUI/GEOMToolsGUI_TransparencyDlg.h @@ -1,39 +1,37 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : GEOMBase_TransparencyDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - -#ifndef DIALOGBOX_TRANSPARENCYDLG_H -#define DIALOGBOX_TRANSPARENCYDLG_H +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GEOMToolsGUI_TransparencyDlg.h +// Author : Lucien PIGNOLONI +// +#ifndef GEOMTOOLSGUI_TRANSPARENCYDLG_H +#define GEOMTOOLSGUI_TRANSPARENCYDLG_H #include "GEOM_ToolsGUI.hxx" -#include +#include class QSlider; +class QLabel; //================================================================================= // class : GEOMBase_TransparencyDlg @@ -42,27 +40,27 @@ class QSlider; //================================================================================= class GEOMTOOLSGUI_EXPORT GEOMToolsGUI_TransparencyDlg : public QDialog { - Q_OBJECT + Q_OBJECT public: - GEOMToolsGUI_TransparencyDlg( QWidget* parent ); + GEOMToolsGUI_TransparencyDlg( QWidget* ); ~GEOMToolsGUI_TransparencyDlg(); private: - void keyPressEvent(QKeyEvent*); + void keyPressEvent( QKeyEvent* ); -private : - bool myFirstInit ; /* Inform for the first init */ +private: + bool myFirstInit; /* Inform for the first init */ QSlider* mySlider; + QLabel* myValueLab; QString myHelpFileName; private slots: void ClickOnOk(); void ClickOnClose(); void ClickOnHelp(); - void ValueHasChanged( int ) ; - + void ValueHasChanged(); + void SetTransparency(); }; -#endif // DIALOGBOX_TRANSPARENCYDLG_H - +#endif // GEOMTOOLSGUI_TRANSPARENCYDLG_H diff --git a/src/GEOMToolsGUI/GEOM_ToolsGUI.hxx b/src/GEOMToolsGUI/GEOM_ToolsGUI.hxx index db2c0ed56..97cc42ba3 100755 --- a/src/GEOMToolsGUI/GEOM_ToolsGUI.hxx +++ b/src/GEOMToolsGUI/GEOM_ToolsGUI.hxx @@ -1,28 +1,28 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// 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 : GEOM_ToolsGUI.hxx // Author : Alexander A. BORODIN // Module : GEOM - +// #ifndef _GEOM_ToolsGUI_HXX_ #define _GEOM_ToolsGUI_HXX_ diff --git a/src/GEOMToolsGUI/Makefile.am b/src/GEOMToolsGUI/Makefile.am index 45092979a..4f879990b 100644 --- a/src/GEOMToolsGUI/Makefile.am +++ b/src/GEOMToolsGUI/Makefile.am @@ -1,80 +1,78 @@ -# GEOM GEOMTOOLSGUI : +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : GEOMToolsGUI # -# File : Makefile.in -# Author : Damien COQUERET (OCC) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header: - include $(top_srcdir)/adm_local/unix/make_common_starter.am # Libraries targets lib_LTLIBRARIES = libGEOMToolsGUI.la # header files -salomeinclude_HEADERS = +salomeinclude_HEADERS = \ + GEOMToolsGUI.h \ + GEOM_ToolsGUI.hxx \ + GEOMToolsGUI_NbIsosDlg.h \ + GEOMToolsGUI_TransparencyDlg.h \ + GEOMToolsGUI_DeleteDlg.h \ + GEOMToolsGUI_NbIsosDlg.h -dist_libGEOMToolsGUI_la_SOURCES = \ - GEOMToolsGUI.cxx \ - GEOMToolsGUI_1.cxx \ - GEOMToolsGUI_TransparencyDlg.cxx \ - GEOMToolsGUI_NbIsosDlg.cxx +dist_libGEOMToolsGUI_la_SOURCES = \ + GEOMToolsGUI.cxx \ + GEOMToolsGUI_1.cxx \ + GEOMToolsGUI_TransparencyDlg.cxx \ + GEOMToolsGUI_NbIsosDlg.cxx \ + GEOMToolsGUI_DeleteDlg.cxx -MOC_FILES = \ - GEOMToolsGUI_TransparencyDlg_moc.cxx \ - GEOMToolsGUI_NbIsosDlg_moc.cxx +MOC_FILES = \ + GEOMToolsGUI_TransparencyDlg_moc.cxx \ + GEOMToolsGUI_NbIsosDlg_moc.cxx \ + GEOMToolsGUI_DeleteDlg_moc.cxx -nodist_libGEOMToolsGUI_la_SOURCES= \ +nodist_libGEOMToolsGUI_la_SOURCES = \ $(MOC_FILES) -#LIB_CLIENT_IDL = SALOMEDS_Attributes.idl \ -# SALOME_GenericObj.idl \ -# SALOME_Exception.idl \ -# SALOME_Component.idl +# additional information to compile and link file -#LIB_SERVER_IDL = - -# additionnal information to compile and link file -libGEOMToolsGUI_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(VTK_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(PYTHON_INCLUDES) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../OBJECT \ - -I$(srcdir)/../GEOMBase \ - -I$(srcdir)/../GEOMGUI \ - -I$(srcdir)/../GEOMClient \ - -I$(srcdir)/../GEOMImpl \ - -I$(top_builddir)/idl \ +libGEOMToolsGUI_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(VTK_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(PYTHON_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../OBJECT \ + -I$(srcdir)/../GEOMBase \ + -I$(srcdir)/../GEOMGUI \ + -I$(srcdir)/../GEOMClient \ + -I$(srcdir)/../GEOMImpl \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libGEOMToolsGUI_la_LDFLAGS = \ - ../GEOMBase/libGEOMBase.la \ - ../GEOMGUI/libGEOM.la \ +libGEOMToolsGUI_la_LDFLAGS = \ + ../GEOMBase/libGEOMBase.la \ + ../GEOMGUI/libGEOM.la \ $(GUI_LDFLAGS) -lVTKViewer -lOCCViewer -lsuit -lSalomeApp diff --git a/src/GEOM_I/GEOM_DumpPython.cc b/src/GEOM_I/GEOM_DumpPython.cc index 3fb087871..82f5f5d44 100644 --- a/src/GEOM_I/GEOM_DumpPython.cc +++ b/src/GEOM_I/GEOM_DumpPython.cc @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifdef WNT #pragma warning( disable:4786 ) @@ -24,11 +26,15 @@ #include #include "GEOM_Gen_i.hh" + #include #include #include #include +#include +#include + //======================================================================= //function : DumpPython //purpose : @@ -48,6 +54,8 @@ Engines::TMPFile* GEOM_Gen_i::DumpPython(CORBA::Object_ptr theStudy, Resource_DataMapOfAsciiStringAsciiString aMap; + TVariablesList aVariableMap; + SALOMEDS::ChildIterator_var Itr = aStudy->NewChildIterator(aSO); for(Itr->InitEx(true); Itr->More(); Itr->Next()) { SALOMEDS::SObject_var aValue = Itr->Value(); @@ -59,14 +67,47 @@ Engines::TMPFile* GEOM_Gen_i::DumpPython(CORBA::Object_ptr theStudy, CORBA::String_var aName = aValue->GetName(); CORBA::String_var anEntry = GO->GetEntry(); aMap.Bind( (char*)anEntry.in(), (char*)aName.in() ); + + //Find attribute with list of used notebook variables + SALOMEDS::GenericAttribute_var anAttr; + SALOMEDS::AttributeString_var anAttrStr; + if(aValue->FindAttribute(anAttr,"AttributeString")){ + anAttrStr = SALOMEDS::AttributeString::_narrow(anAttr); + SALOMEDS::ListOfListOfStrings_var aSections = aStudy->ParseVariables(anAttrStr->Value()); + ObjectStates* aStates = new ObjectStates(); + for(int i = 0; i < aSections->length(); i++) { + TState aState; + SALOMEDS::ListOfStrings aListOfVars = aSections[i]; + for(int j = 0; j < aListOfVars.length(); j++) { + bool isVar = aStudy->IsVariable(aListOfVars[j].in()); + TVariable aVar = TVariable( (char*)aListOfVars[j].in(), isVar ); + aState.push_back(aVar); + } + aStates->AddState(aState); + } + aVariableMap.insert(pair(TCollection_AsciiString(anEntry),aStates)); + } } } } - + TCollection_AsciiString aScript = "### This file is generated by SALOME automatically by dump python functionality\n" "### of GEOM component\n\n"; - aScript += _impl->DumpPython(aStudy->StudyId(), aMap, isPublished, isValidScript); + aScript += _impl->DumpPython(aStudy->StudyId(), aMap, aVariableMap, isPublished, isValidScript); + + if (isPublished) + { + //Output the script that sets up the visual parameters. + char* script = aStudy->GetDefaultScript(ComponentDataType(), "\t"); + if (script && strlen(script) > 0) { + aScript += "\n\t### Store presentation parameters of displayed objects\n"; + aScript += script; + CORBA::string_free(script); + } + } + + aScript += "\n\tpass\n"; int aLen = aScript.Length(); unsigned char* aBuffer = new unsigned char[aLen+1]; diff --git a/src/GEOM_I/GEOM_GEOM_I.hxx b/src/GEOM_I/GEOM_GEOM_I.hxx index 0d0d57396..b9ef2ed75 100755 --- a/src/GEOM_I/GEOM_GEOM_I.hxx +++ b/src/GEOM_I/GEOM_GEOM_I.hxx @@ -1,28 +1,28 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// 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 : GEOM_GEOM_I.hxx // Author : Alexander A. BORODIN // Module : GEOM - +// #ifndef _GEOM_GEOM_I_HXX_ #define _GEOM_GEOM_I_HXX_ diff --git a/src/GEOM_I/GEOM_Gen_i.cc b/src/GEOM_I/GEOM_Gen_i.cc index 106ee9ef6..6e8e4e430 100644 --- a/src/GEOM_I/GEOM_Gen_i.cc +++ b/src/GEOM_I/GEOM_Gen_i.cc @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifdef WNT #pragma warning( disable:4786 ) @@ -159,7 +161,6 @@ SALOMEDS::SObject_ptr GEOM_Gen_i::PublishInStudy(SALOMEDS::Study_ptr theStudy, Unexpect aCatch(SALOME_SalomeException); SALOMEDS::SObject_var aResultSO; if(CORBA::is_nil(theObject) || theStudy->_is_nil()) return aResultSO; - GEOM::GEOM_Object_var aShape = GEOM::GEOM_Object::_narrow(theObject); if(aShape->_is_nil()) return aResultSO; @@ -272,7 +273,25 @@ SALOMEDS::SObject_ptr GEOM_Gen_i::PublishInStudy(SALOMEDS::Study_ptr theStudy, anAttr = aStudyBuilder->FindOrCreateAttribute(aResultSO, "AttributeName"); SALOMEDS::AttributeName_var aNameAttrib = SALOMEDS::AttributeName::_narrow(anAttr); aNameAttrib->SetValue(aShapeName.ToCString()); - + + //Set NoteBook variables used in the object creation + TCollection_AsciiString aVars; + SALOMEDS::ListOfListOfStrings_var aSections = theStudy->ParseVariables(aShape->GetParameters()); + for(int i = 0, n = aSections->length(); i < n; i++) { + SALOMEDS::ListOfStrings aListOfVars = aSections[i]; + for(int j = 0, m = aListOfVars.length(); j < m; j++) { + if(theStudy->IsVariable(aListOfVars[j].in())) + aVars += TCollection_AsciiString(aListOfVars[j].in()); + if(j != m-1) + aVars += ":"; + } + if(i != n-1) + aVars += "|"; + } + anAttr = aStudyBuilder->FindOrCreateAttribute(aResultSO, "AttributeString"); + SALOMEDS::AttributeString_var aStringAttrib = SALOMEDS::AttributeString::_narrow(anAttr); + aStringAttrib->SetValue(aVars.ToCString()); + //Set a name of the GEOM object aShape->SetName(theName); @@ -313,7 +332,7 @@ SALOMEDS::TMPFile* GEOM_Gen_i::Save(SALOMEDS::SComponent_ptr theComponent, // Build a full file name of temporary file TCollection_AsciiString aFullName = TCollection_AsciiString((char*)aTmpDir.c_str()) + aNameWithExt; // Save GEOM component in this file - _impl->Save(theComponent->GetStudy()->StudyId(), aFullName.ToCString()); + _impl->Save(theComponent->GetStudy()->StudyId(),(char*) aFullName.ToCString()); // Conver a file to the byte stream aStreamFile = SALOMEDS_Tool::PutFilesToStream(aTmpDir.c_str(), aSeq.in(), isMultiFile); // Remove the created file and tmp directory @@ -375,7 +394,7 @@ CORBA::Boolean GEOM_Gen_i::Load(SALOMEDS::SComponent_ptr theComponent, TCollection_AsciiString aFullName = (TCollection_AsciiString((char*)aTmpDir.c_str()) + aNameWithExt); // Open document - if (!_impl->Load(theComponent->GetStudy()->StudyId(), aFullName.ToCString())) return false; + if (!_impl->Load(theComponent->GetStudy()->StudyId(),(char*) aFullName.ToCString())) return false; // Remove the created file and tmp directory if (!isMultiFile) SALOMEDS_Tool::RemoveTemporaryFiles(aTmpDir.c_str(), aSeq.in(), true); @@ -522,7 +541,10 @@ char* GEOM_Gen_i::ComponentDataType() // function : AddInStudy // purpose : //============================================================================ -SALOMEDS::SObject_ptr GEOM_Gen_i::AddInStudy(SALOMEDS::Study_ptr theStudy, GEOM::GEOM_Object_ptr theObject, const char* theName, GEOM::GEOM_Object_ptr theFather) +SALOMEDS::SObject_ptr GEOM_Gen_i::AddInStudy (SALOMEDS::Study_ptr theStudy, + GEOM::GEOM_Object_ptr theObject, + const char* theName, + GEOM::GEOM_Object_ptr theFather) { SALOMEDS::SObject_var aResultSO; if(theObject->_is_nil() || theStudy->_is_nil()) return aResultSO; @@ -559,6 +581,393 @@ SALOMEDS::SObject_ptr GEOM_Gen_i::AddInStudy(SALOMEDS::Study_ptr theStudy, GEOM: return aResultSO._retn(); } +//============================================================================ +// function : RestoreSubShapesO +// purpose : Publish sub-shapes, standing for arguments and sub-shapes of arguments. +// To be used from python scripts out of geompy.addToStudy (non-default usage) +//============================================================================ +CORBA::Boolean GEOM_Gen_i::RestoreSubShapesO (SALOMEDS::Study_ptr theStudy, + GEOM::GEOM_Object_ptr theObject, + const GEOM::ListOfGO& theArgs, + GEOM::find_shape_method theFindMethod, + CORBA::Boolean theInheritFirstArg) +{ + if (CORBA::is_nil(theStudy) || CORBA::is_nil(theObject)) + return false; + + // find SObject in the study + CORBA::String_var anIORo = _orb->object_to_string(theObject); + SALOMEDS::SObject_var aSO = theStudy->FindObjectIOR(anIORo.in()); + if (CORBA::is_nil(aSO)) + return false; + + return RestoreSubShapes(theStudy, theObject, aSO, theArgs, theFindMethod, theInheritFirstArg); +} + +//============================================================================ +// function : RestoreSubShapesSO +// purpose : Publish sub-shapes, standing for arguments and sub-shapes of arguments. +// To be used from GUI and from geompy.addToStudy +//============================================================================ +CORBA::Boolean GEOM_Gen_i::RestoreSubShapesSO (SALOMEDS::Study_ptr theStudy, + SALOMEDS::SObject_ptr theSObject, + const GEOM::ListOfGO& theArgs, + GEOM::find_shape_method theFindMethod, + CORBA::Boolean theInheritFirstArg) +{ + if (CORBA::is_nil(theStudy) || CORBA::is_nil(theSObject)) + return false; + + SALOMEDS::GenericAttribute_var anAttr; + if (!theSObject->FindAttribute(anAttr, "AttributeIOR")) + return false; + + SALOMEDS::AttributeIOR_var anAttrIOR = SALOMEDS::AttributeIOR::_narrow(anAttr); + CORBA::String_var anIORso = anAttrIOR->Value(); + + // get Object from SObject + GEOM::GEOM_Object_var anO = GEOM::GEOM_Object::_narrow(_orb->string_to_object(anIORso)); + if (CORBA::is_nil(anO)) + return false; + + return RestoreSubShapes(theStudy, anO, theSObject, theArgs, theFindMethod, theInheritFirstArg); +} + +//============================================================================ +// function : RestoreSubShapes +// purpose : Private method. Works only if both theObject and theSObject +// are defined, and does not check, if they correspond to each other. +//============================================================================ +CORBA::Boolean GEOM_Gen_i::RestoreSubShapes (SALOMEDS::Study_ptr theStudy, + GEOM::GEOM_Object_ptr theObject, + SALOMEDS::SObject_ptr theSObject, + const GEOM::ListOfGO& theArgs, + GEOM::find_shape_method theFindMethod, + CORBA::Boolean theInheritFirstArg) +{ + if (CORBA::is_nil(theStudy) || CORBA::is_nil(theObject) || CORBA::is_nil(theSObject)) + return false; + + // Arguments to be published + GEOM::ListOfGO_var aList; + + // If theArgs list is empty, we try to publish all arguments, + // otherwise publish only passed args + Standard_Integer nbArgsActual = -1; // -1 means unknown + Standard_Integer aLength = theArgs.length(); + if (aLength > 0) { + aList = new GEOM::ListOfGO; + aList->length(aLength); + for (int i = 0; i < aLength; i++) { + aList[i] = theArgs[i]; + } + } + else { + // Get all arguments + aList = theObject->GetDependency(); + aLength = aList->length(); + nbArgsActual = aLength; + } + + if (aLength < 1) + return false; + + if (theInheritFirstArg || (nbArgsActual == 1)) { + // Do not publish argument's reflection, + // but only reconstruct its published sub-shapes + + GEOM::GEOM_Object_var anArgO = aList[0]; + CORBA::String_var anIOR = _orb->object_to_string(anArgO); + SALOMEDS::SObject_var anArgSO = theStudy->FindObjectIOR(anIOR.in()); + + GEOM::ListOfGO_var aParts = + RestoreSubShapesOneLevel(theStudy, anArgSO, theSObject, theObject, theFindMethod); + + // set the color of the transformed shape to the color of initial shape + theObject->SetColor(aList[0]->GetColor()); + + return (aParts->length() > 0); + } + + // Get interface, containing method, which we will use to reconstruct sub-shapes + GEOM::GEOM_IShapesOperations_var aShapesOp = GetIShapesOperations(theStudy->StudyId()); + GEOM::GEOM_IGroupOperations_var aGroupOp = GetIGroupOperations(theStudy->StudyId()); + + // Reconstruct arguments and tree of sub-shapes of the arguments + CORBA::String_var anIOR; + SALOMEDS::StudyBuilder_var aStudyBuilder = theStudy->NewBuilder(); + for (Standard_Integer i = 0; i < aLength; i++) + { + GEOM::GEOM_Object_var anArgO = aList[i]; + if (!CORBA::is_nil(anArgO)) { + anIOR = _orb->object_to_string(anArgO); + SALOMEDS::SObject_var anArgSO = theStudy->FindObjectIOR(anIOR.in()); + TCollection_AsciiString anArgName; + if (CORBA::is_nil(anArgSO)) { + anArgName = "arg_"; + anArgName += TCollection_AsciiString(i); + } + else { + anArgName = anArgSO->GetName(); + } + + // Find a sub-shape of theObject in place of the argument + GEOM::GEOM_Object_var aSubO; + switch (theFindMethod) { + case GEOM::FSM_GetInPlace: + { + // Use GetInPlace + aSubO = aShapesOp->GetInPlace(theObject, anArgO); + } + break; + case GEOM::FSM_Transformed: + { + // transformation, cannot use GetInPlace, operate with indices + GEOM::ListOfLong_var anIDs = anArgO->GetSubShapeIndices(); + if (anIDs->length() > 1) { + // group + aSubO = aGroupOp->CreateGroup(theObject, aGroupOp->GetType(anArgO)); + if (!CORBA::is_nil(aSubO)) + aGroupOp->UnionIDs(aSubO, anIDs); + } + else { + // single sub-shape + aSubO = aShapesOp->GetSubShape(theObject, anIDs[0]); + } + } + break; + case GEOM::FSM_GetSame: + { + // Use GetSame + aSubO = aShapesOp->GetSame(theObject, anArgO); + } + break; + case GEOM::FSM_GetShapesOnShape: + { + // Use GetShapesOnShape. Can work only on solids, so it has sense to search only solids + aSubO = aShapesOp->GetShapesOnShapeAsCompound(anArgO, theObject, + (short)GEOM::SOLID, GEOM::ST_ONIN); + } + break; + case GEOM::FSM_GetInPlaceByHistory: + { + // Use GetInPlaceByHistory + aSubO = aShapesOp->GetInPlaceByHistory(theObject, anArgO); + } + break; + default: + {} + } + + if (!CORBA::is_nil(aSubO)) { + // Publish the sub-shape + TCollection_AsciiString aSubName ("from_"); + aSubName += anArgName; + SALOMEDS::SObject_var aSubSO = aStudyBuilder->NewObject(theSObject); + aSubSO = PublishInStudy(theStudy, aSubSO, aSubO, aSubName.ToCString()); + // Restore color + aSubO->SetColor(anArgO->GetColor()); + + if (!CORBA::is_nil(anArgSO)) { + // Restore published sub-shapes of the argument + if (theFindMethod == GEOM::FSM_GetInPlaceByHistory) + // pass theObject, because only it has the history + RestoreSubShapesOneLevel(theStudy, anArgSO, aSubSO, theObject, theFindMethod); + else + RestoreSubShapesOneLevel(theStudy, anArgSO, aSubSO, aSubO, theFindMethod); + } + } + else { // GetInPlace failed, try to build from published parts + if (!CORBA::is_nil(anArgSO)) { + SALOMEDS::SObject_var aSubSO = aStudyBuilder->NewObject(theSObject); + + // Restore published sub-shapes of the argument + GEOM::ListOfGO_var aParts = + RestoreSubShapesOneLevel(theStudy, anArgSO, aSubSO, theObject, theFindMethod); + + if (aParts->length() > 0) { + // try to build an argument from a set of its sub-shapes, + // that published and will be reconstructed + if (aParts->length() > 1) { + aSubO = aShapesOp->MakeCompound(aParts); + } + else { + aSubO = aParts[0]; + } + if (!CORBA::is_nil(aSubO)) { + // Publish the sub-shape + TCollection_AsciiString aSubName ("from_parts_of_"); + aSubName += anArgName; + aSubSO = PublishInStudy(theStudy, aSubSO, aSubO, aSubName.ToCString()); + // Restore color + aSubO->SetColor(anArgO->GetColor()); + } + } + else { + // remove created aSubSO, because no parts have been found + aStudyBuilder->RemoveObject(aSubSO); + } + } + } // try to build from published parts + } + } // process arguments + + return true; +} + +//============================================================================ +// function : RestoreSubShapesOneLevel +// purpose : Private method +//============================================================================ +GEOM::ListOfGO* GEOM_Gen_i::RestoreSubShapesOneLevel (SALOMEDS::Study_ptr theStudy, + SALOMEDS::SObject_ptr theOldSO, + SALOMEDS::SObject_ptr theNewSO, + GEOM::GEOM_Object_ptr theNewO, + GEOM::find_shape_method theFindMethod) +{ + int i = 0; + GEOM::ListOfGO_var aParts = new GEOM::ListOfGO; + if (CORBA::is_nil(theStudy) || CORBA::is_nil(theOldSO) || + CORBA::is_nil(theNewO) || CORBA::is_nil(theNewSO)) + return aParts._retn(); + + SALOMEDS::StudyBuilder_var aStudyBuilder = theStudy->NewBuilder(); + + // Get interface, containing method, which we will use to reconstruct sub-shapes + GEOM::GEOM_IShapesOperations_var aShapesOp = GetIShapesOperations(theStudy->StudyId()); + GEOM::GEOM_IGroupOperations_var aGroupOp = GetIGroupOperations(theStudy->StudyId()); + + // Reconstruct published sub-shapes + SALOMEDS::ChildIterator_var it = theStudy->NewChildIterator(theOldSO); + + int aLen = 0; + for (it->Init(); it->More(); it->Next()) { + aLen++; + } + aParts->length(aLen); + + for (it->Init(); it->More(); it->Next()) { + SALOMEDS::SObject_var anOldSubSO = it->Value(); + + TCollection_AsciiString anArgName = anOldSubSO->GetName(); + + SALOMEDS::GenericAttribute_var anAttr; + if (anOldSubSO->FindAttribute(anAttr, "AttributeIOR")) { + SALOMEDS::AttributeIOR_var anAttrIOR = SALOMEDS::AttributeIOR::_narrow(anAttr); + GEOM::GEOM_Object_var anOldSubO = + GEOM::GEOM_Object::_narrow(_orb->string_to_object(anAttrIOR->Value())); + if (!CORBA::is_nil(anOldSubO)) { + // Find a sub-shape of theNewO in place of anOldSubO + GEOM::GEOM_Object_var aNewSubO; + switch (theFindMethod) { + case GEOM::FSM_GetInPlace: + { + // Use GetInPlace + aNewSubO = aShapesOp->GetInPlace(theNewO, anOldSubO); + } + break; + case GEOM::FSM_Transformed: + { + // transformation, cannot use GetInPlace, operate with indices + GEOM::ListOfLong_var anIDs = anOldSubO->GetSubShapeIndices(); + if (anIDs->length() > 1) { + // group + aNewSubO = aGroupOp->CreateGroup(theNewO, aGroupOp->GetType(anOldSubO)); + if (!CORBA::is_nil(aNewSubO)) + aGroupOp->UnionIDs(aNewSubO, anIDs); + } + else { + // single sub-shape + aNewSubO = aShapesOp->GetSubShape(theNewO, anIDs[0]); + } + } + break; + case GEOM::FSM_GetSame: + { + // Use GetSame + aNewSubO = aShapesOp->GetSame(theNewO, anOldSubO); + } + break; + case GEOM::FSM_GetShapesOnShape: + { + // Use GetShapesOnShape. Can work only on solids, so it has sense to search only solids + aNewSubO = aShapesOp->GetShapesOnShapeAsCompound(anOldSubO, theNewO, + (short)GEOM::SOLID, GEOM::ST_ONIN); + } + break; + case GEOM::FSM_GetInPlaceByHistory: + { + // Use GetInPlaceByHistory + aNewSubO = aShapesOp->GetInPlaceByHistory(theNewO, anOldSubO); + } + break; + default: + {} + } + + if (!CORBA::is_nil(aNewSubO)) { + // add the part to the list + aParts[i] = aNewSubO; + i++; + + // Publish the sub-shape + TCollection_AsciiString aSubName ("from_"); + aSubName += anArgName; + SALOMEDS::SObject_var aNewSubSO = aStudyBuilder->NewObject(theNewSO); + aNewSubSO = PublishInStudy(theStudy, aNewSubSO, aNewSubO, aSubName.ToCString()); + // Restore color + aNewSubO->SetColor(anOldSubO->GetColor()); + + // Restore published sub-shapes of the argument + if (theFindMethod == GEOM::FSM_GetInPlaceByHistory) + // pass the main shape as Object, because only it has the history + RestoreSubShapesOneLevel(theStudy, anOldSubSO, aNewSubSO, theNewO, theFindMethod); + else + RestoreSubShapesOneLevel(theStudy, anOldSubSO, aNewSubSO, aNewSubO, theFindMethod); + } + else { // GetInPlace failed, try to build from published parts + SALOMEDS::SObject_var aNewSubSO = aStudyBuilder->NewObject(theNewSO); + + // Restore published sub-shapes of the argument + GEOM::ListOfGO_var aParts = + RestoreSubShapesOneLevel(theStudy, anOldSubSO, aNewSubSO, theNewO, theFindMethod); + + if (aParts->length() > 0) { + // try to build an object from a set of its sub-shapes, + // that published and will be reconstructed + if (aParts->length() > 1) { + aNewSubO = aShapesOp->MakeCompound(aParts); + } + else { + aNewSubO = aParts[0]; + } + + if (!CORBA::is_nil(aNewSubO)) { + // add the part to the list + aParts[i] = aNewSubO; + i++; + + // Publish the sub-shape + TCollection_AsciiString aSubName = "from_parts_of_"; + aSubName += anArgName; + aNewSubSO = PublishInStudy(theStudy, aNewSubSO, aNewSubO, aSubName.ToCString()); + // Restore color + aNewSubO->SetColor(anOldSubO->GetColor()); + } + } + else { + // remove created aSubSO, because no parts have been found + aStudyBuilder->RemoveObject(aNewSubSO); + } + } // try to build from published parts + } + } + } // iterate on published sub-shapes + + aParts->length(i); + return aParts._retn(); +} + //============================================================================ // function : register() // purpose : register 'name' in 'name_service' @@ -858,7 +1267,8 @@ GEOM::GEOM_Object_ptr GEOM_Gen_i::AddSubShape (GEOM::GEOM_Object_ptr theMainShap //============================================================================= void GEOM_Gen_i::RemoveObject(GEOM::GEOM_Object_ptr theObject) { - Handle(GEOM_Object) anObject = _impl->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + CORBA::String_var anEntry = theObject->GetEntry(); + Handle(GEOM_Object) anObject = _impl->GetObject(theObject->GetStudyID(), anEntry); if (anObject.IsNull()) return; _impl->RemoveObject(anObject); return; @@ -915,6 +1325,157 @@ GEOM::GEOM_Object_ptr GEOM_Gen_i::GetObject (CORBA::Long theStudyID, const char* return obj._retn(); } +//================================================================================= +// function : hasObjectInfo() +// purpose : shows if module provides information for its objects +//================================================================================= +bool GEOM_Gen_i::hasObjectInfo() +{ + return true; +} + +//================================================================================= +// function : getObjectInfo() +// purpose : returns an information for a given object by its entry +//================================================================================= +char* GEOM_Gen_i::getObjectInfo(CORBA::Long studyId, const char* entry) +{ + GEOM::GEOM_Object_var aGeomObject; + + CORBA::Object_var aSMObject = name_service->Resolve( "/myStudyManager" ); + SALOMEDS::StudyManager_var aStudyManager = SALOMEDS::StudyManager::_narrow( aSMObject ); + SALOMEDS::Study_var aStudy = aStudyManager->GetStudyByID( studyId ); + SALOMEDS::SObject_var aSObj = aStudy->FindObjectID( entry ); + SALOMEDS::SObject_var aResultSObj; + if (aSObj->ReferencedObject(aResultSObj)) + aSObj = aResultSObj; + + SALOMEDS::GenericAttribute_var anAttr; + if (!aSObj->_is_nil() && aSObj->FindAttribute(anAttr, "AttributeIOR")) { + SALOMEDS::AttributeIOR_var anIOR = SALOMEDS::AttributeIOR::_narrow(anAttr); + CORBA::String_var aVal = anIOR->Value(); + CORBA::Object_var anObject = aStudy->ConvertIORToObject(aVal); + aGeomObject = GEOM::GEOM_Object::_narrow(anObject); + } + + char* aTypeInfo = "Object"; + if ( !aGeomObject->_is_nil() ) { + GEOM::GEOM_IKindOfShape::shape_kind aKind; + GEOM::ListOfLong_var anInts; + GEOM::ListOfDouble_var aDbls; + + GEOM::GEOM_IMeasureOperations_var anOp = GetIMeasureOperations( studyId ); + aKind = anOp->KindOfShape( aGeomObject, anInts, aDbls ); + + if ( anOp->IsDone() ) { + switch ( aKind ) { + case GEOM::GEOM_IKindOfShape::COMPOUND: + aTypeInfo = "Compound"; + break; + case GEOM::GEOM_IKindOfShape::COMPSOLID: + aTypeInfo = "CompSolid"; + break; + case GEOM::GEOM_IKindOfShape::SHELL: + aTypeInfo = "Shell"; + break; + case GEOM::GEOM_IKindOfShape::WIRE: + if ( anInts[0] == 1 ) + aTypeInfo = "Closed Wire"; + else if ( anInts[0] == 2 ) + aTypeInfo = "Opened Wire"; + else + aTypeInfo = "Wire"; + break; + // SOLIDs + case GEOM::GEOM_IKindOfShape::SPHERE: + aTypeInfo = "Sphere"; + break; + case GEOM::GEOM_IKindOfShape::CYLINDER: + aTypeInfo = "Cylinder"; + break; + case GEOM::GEOM_IKindOfShape::BOX: + case GEOM::GEOM_IKindOfShape::ROTATED_BOX: + aTypeInfo = "Box"; + break; + case GEOM::GEOM_IKindOfShape::TORUS: + aTypeInfo = "Torus"; + break; + case GEOM::GEOM_IKindOfShape::CONE: + aTypeInfo = "Cone"; + break; + case GEOM::GEOM_IKindOfShape::POLYHEDRON: + aTypeInfo = "Polyhedron"; + break; + case GEOM::GEOM_IKindOfShape::SOLID: + aTypeInfo = "Solid"; + break; + // FACEs + case GEOM::GEOM_IKindOfShape::SPHERE2D: + aTypeInfo = "Spherical Face"; + break; + case GEOM::GEOM_IKindOfShape::CYLINDER2D: + aTypeInfo = "Cylindrical Face"; + break; + case GEOM::GEOM_IKindOfShape::TORUS2D: + aTypeInfo = "Toroidal Face"; + break; + case GEOM::GEOM_IKindOfShape::CONE2D: + aTypeInfo = "Conical Face"; + break; + case GEOM::GEOM_IKindOfShape::DISK_CIRCLE: + aTypeInfo = "Disk"; + break; + case GEOM::GEOM_IKindOfShape::DISK_ELLIPSE: + aTypeInfo = "Elliptical Face"; + break; + case GEOM::GEOM_IKindOfShape::POLYGON: + aTypeInfo = "Polygon"; + break; + case GEOM::GEOM_IKindOfShape::PLANE: + aTypeInfo = "Plane"; + break; + case GEOM::GEOM_IKindOfShape::PLANAR: + aTypeInfo = "Planar Face"; + break; + case GEOM::GEOM_IKindOfShape::FACE: + aTypeInfo = "Face"; + break; + // EDGEs + case GEOM::GEOM_IKindOfShape::CIRCLE: + aTypeInfo = "Circle"; + break; + case GEOM::GEOM_IKindOfShape::ARC_CIRCLE: + aTypeInfo = "Ark"; + break; + case GEOM::GEOM_IKindOfShape::ELLIPSE: + aTypeInfo = "Ellipse"; + break; + case GEOM::GEOM_IKindOfShape::ARC_ELLIPSE: + aTypeInfo = "Arc Ellipse"; + break; + case GEOM::GEOM_IKindOfShape::LINE: + aTypeInfo = "Line"; + break; + case GEOM::GEOM_IKindOfShape::SEGMENT: + aTypeInfo = "Segment"; + break; + case GEOM::GEOM_IKindOfShape::EDGE: + aTypeInfo = "Edge"; + break; + case GEOM::GEOM_IKindOfShape::VERTEX: + aTypeInfo = "Vertex"; + break; + default: + break; + } + } + } + + char anInfo [strlen("Module ") + strlen(ComponentDataType()) + strlen(", ") + strlen(aTypeInfo)]; + sprintf(anInfo, "Module %s, %s", ComponentDataType(), aTypeInfo); + + return CORBA::string_dup(anInfo); +} //===================================================================================== // EXPORTED METHODS diff --git a/src/GEOM_I/GEOM_Gen_i.hh b/src/GEOM_I/GEOM_Gen_i.hh index 30188801f..aba3b6aa6 100644 --- a/src/GEOM_I/GEOM_Gen_i.hh +++ b/src/GEOM_I/GEOM_Gen_i.hh @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef __GEOM_GEN_I_H__ #define __GEOM_GEN_I_H__ @@ -133,6 +135,24 @@ class GEOM_I_EXPORT GEOM_Gen_i: virtual public POA_GEOM::GEOM_Gen, virtual publi const char* theName, GEOM::GEOM_Object_ptr theFather); + /*! \brief Publish sub-shapes, standing for arguments and sub-shapes of arguments. + * To be used from python scripts out of geompy.addToStudy (non-default usage) + */ + CORBA::Boolean RestoreSubShapesO (SALOMEDS::Study_ptr theStudy, + GEOM::GEOM_Object_ptr theObject, + const GEOM::ListOfGO& theArgs, + GEOM::find_shape_method theFindMethod, + CORBA::Boolean theInheritFirstArg); + + /*! \brief Publish sub-shapes, standing for arguments and sub-shapes of arguments. + * To be used from GUI and from geompy.addToStudy + */ + CORBA::Boolean RestoreSubShapesSO (SALOMEDS::Study_ptr theStudy, + SALOMEDS::SObject_ptr theSObject, + const GEOM::ListOfGO& theArgs, + GEOM::find_shape_method theFindMethod, + CORBA::Boolean theInheritFirstArg); + //-----------------------------------------------------------------------// // Transaction methods // //-----------------------------------------------------------------------// @@ -212,13 +232,31 @@ class GEOM_I_EXPORT GEOM_Gen_i: virtual public POA_GEOM::GEOM_Gen, virtual publi char* GetDumpName (const char* theStudyEntry); GEOM::string_array* GetAllDumpNames(); - + + // Object information + virtual bool hasObjectInfo(); + virtual char* getObjectInfo(CORBA::Long studyId, const char* entry); + //-----------------------------------------------------------------------// // Internal methods // //-----------------------------------------------------------------------// virtual GEOM::GEOM_Object_ptr GetObject(CORBA::Long theStudyID, const char* theEntry); + private: + GEOM::ListOfGO* RestoreSubShapesOneLevel (SALOMEDS::Study_ptr theStudy, + SALOMEDS::SObject_ptr theOldSO, + SALOMEDS::SObject_ptr theNewSO, + GEOM::GEOM_Object_ptr theNewO, + GEOM::find_shape_method theFindMethod); + + CORBA::Boolean RestoreSubShapes (SALOMEDS::Study_ptr theStudy, + GEOM::GEOM_Object_ptr theObject, + SALOMEDS::SObject_ptr theSObject, + const GEOM::ListOfGO& theArgs, + GEOM::find_shape_method theFindMethod, + CORBA::Boolean theInheritFirstArg); + private: ::GEOMImpl_Gen* _impl; diff --git a/src/GEOM_I/GEOM_I.pro b/src/GEOM_I/GEOM_I.pro new file mode 100644 index 000000000..7b2cccd07 --- /dev/null +++ b/src/GEOM_I/GEOM_I.pro @@ -0,0 +1,94 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = GEOMEngine +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CORBA_INCLUDES = $$(OMNIORBDIR)/include $$(OMNIORBDIR)/include/omniORB4 $$(OMNIORBDIR)/include/COS + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +BOOST_CPPFLAGS = $$(BOOSTDIR)/include + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +CAS_DATAEXCHANGE = -L$${CASROOT}/Linux/lib -lTKIGES -lTKSTEP + +STDLIB = -lstdc++ + +CAS_LDPATH = -L$${CASROOT}/Linux/lib + +CORBA_LIBS = -L$$(OMNIORBDIR)/lib -lomniORB4 -lomniDynamic4 -lCOS4 -lCOSDynamic4 -lomnithread + +INCLUDEPATH += $${CORBA_INCLUDES} $${CAS_CPPFLAGS} $${BOOST_CPPFLAGS} $${KERNEL_CXXFLAGS} ../SKETCHER ../ARCHIMEDE ../GEOMImpl ../GEOMAlgo ../GEOM $$(GEOM_ROOT_DIR)/idl ../../salome_adm/unix + +LIBS += -L$$(GEOM_ROOT_DIR)/idl -lSalomeIDLGEOM -L$$(GEOM_ROOT_DIR)/lib -lGEOMArchimede -lGEOMimpl -lGEOMSketcher -lGEOMbasic $${KERNEL_LDFLAGS} -lSalomeNS -lSalomeContainer -lSalomeGenericObj -lTOOLSDS $${CAS_DATAEXCHANGE} $${CAS_LDPATH} -lTKFillet -lTKOffset $${STDLIB} $${CORBA_LIBS} + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += GEOM_I_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS OMNIORB_VERSION=4 __x86__ __linux__ COMP_CORBA_DOUBLE COMP_CORBA_LONG + +HEADERS = GEOM_Object_i.hh +HEADERS += GEOM_IOperations_i.hh +HEADERS += GEOM_IBasicOperations_i.hh +HEADERS += GEOM_IHealingOperations_i.hh +HEADERS += GEOM_I3DPrimOperations_i.hh +HEADERS += GEOM_IShapesOperations_i.hh +HEADERS += GEOM_IBlocksOperations_i.hh +HEADERS += GEOM_IBooleanOperations_i.hh +HEADERS += GEOM_ICurvesOperations_i.hh +HEADERS += GEOM_ILocalOperations_i.hh +HEADERS += GEOM_IInsertOperations_i.hh +HEADERS += GEOM_ITransformOperations_i.hh +HEADERS += GEOM_IMeasureOperations_i.hh +HEADERS += GEOM_IGroupOperations_i.hh +HEADERS += GEOM_Gen_i.hh +HEADERS += GEOM_GEOM_I.hxx + +SOURCES = GEOM_Object_i.cc +SOURCES += GEOM_IOperations_i.cc +SOURCES += GEOM_IBasicOperations_i.cc +SOURCES += GEOM_IHealingOperations_i.cc +SOURCES += GEOM_I3DPrimOperations_i.cc +SOURCES += GEOM_IShapesOperations_i.cc +SOURCES += GEOM_IBlocksOperations_i.cc +SOURCES += GEOM_IBooleanOperations_i.cc +SOURCES += GEOM_ICurvesOperations_i.cc +SOURCES += GEOM_ILocalOperations_i.cc +SOURCES += GEOM_IInsertOperations_i.cc +SOURCES += GEOM_ITransformOperations_i.cc +SOURCES += GEOM_IMeasureOperations_i.cc +SOURCES += GEOM_IGroupOperations_i.cc +SOURCES += GEOM_Gen_i.cc +SOURCES += GEOM_DumpPython.cc + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/GEOM_I/GEOM_I3DPrimOperations_i.cc b/src/GEOM_I/GEOM_I3DPrimOperations_i.cc index 55160f0fb..104bb85ab 100644 --- a/src/GEOM_I/GEOM_I3DPrimOperations_i.cc +++ b/src/GEOM_I/GEOM_I3DPrimOperations_i.cc @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include @@ -103,6 +105,156 @@ GEOM::GEOM_Object_ptr GEOM_I3DPrimOperations_i::MakeBoxTwoPnt return GetObject(anObject); } +//============================================================================= +/*! + * MakeFaceHW + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_I3DPrimOperations_i::MakeFaceHW (CORBA::Double theH, + CORBA::Double theW, + CORBA::Short theOrientation) +{ + GEOM::GEOM_Object_var aGEOMObject; + + //Set a not done flag + GetOperations()->SetNotDone(); + + if (theH == 0 || theW == 0) + return aGEOMObject._retn(); + + //Create the Face + Handle(GEOM_Object) anObject = GetOperations()->MakeFaceHW(theH, theW, theOrientation); + if (!GetOperations()->IsDone() || anObject.IsNull()) + return aGEOMObject._retn(); + + return GetObject(anObject); +} + +//============================================================================= +/*! + * MakeFaceObjHW + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_I3DPrimOperations_i::MakeFaceObjHW + (GEOM::GEOM_Object_ptr theObj, + CORBA::Double theH, + CORBA::Double theW) +{ + GEOM::GEOM_Object_var aGEOMObject; + + //Set a not done flag + GetOperations()->SetNotDone(); + + if (theObj == NULL || theH == 0 || theW == 0) + return aGEOMObject._retn(); + + //Get the reference points + Handle(GEOM_Object) anObj = GetOperations()->GetEngine()->GetObject + (theObj->GetStudyID(), theObj->GetEntry()); + + if (anObj.IsNull()) + return aGEOMObject._retn(); + + //Create the Face + Handle(GEOM_Object) anObject = GetOperations()->MakeFaceObjHW(anObj, theH, theW); + if (!GetOperations()->IsDone() || anObject.IsNull()) + return aGEOMObject._retn(); + + return GetObject(anObject); +} + +//============================================================================= +/*! + * MakeDiskPntVecR + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_I3DPrimOperations_i::MakeDiskPntVecR + (GEOM::GEOM_Object_ptr thePnt, GEOM::GEOM_Object_ptr theVec, + CORBA::Double theR) +{ + GEOM::GEOM_Object_var aGEOMObject; + + //Set a not done flag + GetOperations()->SetNotDone(); + + if (thePnt == NULL || theVec == NULL) return aGEOMObject._retn(); + + //Get the reference points + Handle(GEOM_Object) aPnt = GetOperations()->GetEngine()->GetObject + (thePnt->GetStudyID(), thePnt->GetEntry()); + Handle(GEOM_Object) aVec = GetOperations()->GetEngine()->GetObject + (theVec->GetStudyID(), theVec->GetEntry()); + + if (aPnt.IsNull() || aVec.IsNull()) return aGEOMObject._retn(); + + // Make Disk + Handle(GEOM_Object) anObject = + GetOperations()->MakeDiskPntVecR(aPnt, aVec, theR); + if (!GetOperations()->IsDone() || anObject.IsNull()) + return aGEOMObject._retn(); + + return GetObject(anObject); +} + +//============================================================================= +/*! + * MakeDiskThreePnt + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_I3DPrimOperations_i::MakeDiskThreePnt + (GEOM::GEOM_Object_ptr thePnt1, GEOM::GEOM_Object_ptr thePnt2, + GEOM::GEOM_Object_ptr thePnt3) +{ + GEOM::GEOM_Object_var aGEOMObject; + + //Set a not done flag + GetOperations()->SetNotDone(); + + if (thePnt1 == NULL || thePnt2 == NULL || thePnt3 == NULL) return aGEOMObject._retn(); + + //Get the reference points + Handle(GEOM_Object) aPnt1 = GetOperations()->GetEngine()->GetObject + (thePnt1->GetStudyID(), thePnt1->GetEntry()); + Handle(GEOM_Object) aPnt2 = GetOperations()->GetEngine()->GetObject + (thePnt2->GetStudyID(), thePnt2->GetEntry()); + Handle(GEOM_Object) aPnt3 = GetOperations()->GetEngine()->GetObject + (thePnt3->GetStudyID(), thePnt3->GetEntry()); + + if (aPnt1.IsNull() || aPnt2.IsNull() || aPnt3.IsNull()) return aGEOMObject._retn(); + + // Make Disk + Handle(GEOM_Object) anObject = + GetOperations()->MakeDiskThreePnt(aPnt1, aPnt2, aPnt3); + if (!GetOperations()->IsDone() || anObject.IsNull()) + return aGEOMObject._retn(); + + return GetObject(anObject); +} + +//============================================================================= +/*! + * MakeDiskR + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_I3DPrimOperations_i::MakeDiskR (CORBA::Double theR, + CORBA::Short theOrientation) +{ + GEOM::GEOM_Object_var aGEOMObject; + + //Set a not done flag + GetOperations()->SetNotDone(); + + if (theR == 0) + return aGEOMObject._retn(); + + //Create the Face + Handle(GEOM_Object) anObject = GetOperations()->MakeDiskR(theR, theOrientation); + if (!GetOperations()->IsDone() || anObject.IsNull()) + return aGEOMObject._retn(); + + return GetObject(anObject); +} + //============================================================================= /*! * MakeCylinderRH @@ -459,6 +611,68 @@ GEOM::GEOM_Object_ptr GEOM_I3DPrimOperations_i::MakePrismTwoPnt2Ways return GetObject(anObject); } +//============================================================================= +/*! + * MakePrismDXDYDZ + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_I3DPrimOperations_i::MakePrismDXDYDZ + (GEOM::GEOM_Object_ptr theBase, CORBA::Double theDX, + CORBA::Double theDY, CORBA::Double theDZ) +{ + GEOM::GEOM_Object_var aGEOMObject; + + //Set a not done flag + GetOperations()->SetNotDone(); + + if (theBase == NULL) return aGEOMObject._retn(); + + //Get the reference objects + Handle(GEOM_Object) aBase = GetOperations()->GetEngine()->GetObject + (theBase->GetStudyID(), theBase->GetEntry()); + + if (aBase.IsNull()) return aGEOMObject._retn(); + + //Create the Prism + Handle(GEOM_Object) anObject = + GetOperations()->MakePrismDXDYDZ(aBase, theDX, theDY, theDZ); + if (!GetOperations()->IsDone() || anObject.IsNull()) + return aGEOMObject._retn(); + + return GetObject(anObject); +} + +//============================================================================= +/*! + * MakePrismDXDYDZ2Ways + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_I3DPrimOperations_i::MakePrismDXDYDZ2Ways + (GEOM::GEOM_Object_ptr theBase, CORBA::Double theDX, + CORBA::Double theDY, CORBA::Double theDZ) +{ + GEOM::GEOM_Object_var aGEOMObject; + + //Set a not done flag + GetOperations()->SetNotDone(); + + if (theBase == NULL) return aGEOMObject._retn(); + + //Get the reference objects + Handle(GEOM_Object) aBase = GetOperations()->GetEngine()->GetObject + (theBase->GetStudyID(), theBase->GetEntry()); + + if (aBase.IsNull()) return aGEOMObject._retn(); + + //Create the Prism + Handle(GEOM_Object) anObject = + GetOperations()->MakePrismDXDYDZ2Ways(aBase, theDX, theDY, theDZ); + if (!GetOperations()->IsDone() || anObject.IsNull()) + return aGEOMObject._retn(); + + return GetObject(anObject); +} + //============================================================================= /*! * MakePipe @@ -819,3 +1033,40 @@ GEOM::GEOM_Object_ptr GEOM_I3DPrimOperations_i::MakePipeShellsWithoutPath return GetObject(anObject); } + + +//============================================================================= +/*! + * MakePipeBiNormalAlongVector + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_I3DPrimOperations_i::MakePipeBiNormalAlongVector + (GEOM::GEOM_Object_ptr theBase, + GEOM::GEOM_Object_ptr thePath, + GEOM::GEOM_Object_ptr theVec) +{ + GEOM::GEOM_Object_var aGEOMObject; + + //Set a not done flag + GetOperations()->SetNotDone(); + + if (theBase == NULL || thePath == NULL || theVec == NULL) return aGEOMObject._retn(); + + //Get the reference objects + Handle(GEOM_Object) aBase = GetOperations()->GetEngine()->GetObject + (theBase->GetStudyID(), theBase->GetEntry()); + Handle(GEOM_Object) aPath = GetOperations()->GetEngine()->GetObject + (thePath->GetStudyID(), thePath->GetEntry()); + Handle(GEOM_Object) aVec = GetOperations()->GetEngine()->GetObject + (theVec->GetStudyID(), theVec->GetEntry()); + + if (aBase.IsNull() || aPath.IsNull() || aVec.IsNull()) return aGEOMObject._retn(); + + //Create the Pipe + Handle(GEOM_Object) anObject = + GetOperations()->MakePipeBiNormalAlongVector(aBase, aPath, aVec); + if (!GetOperations()->IsDone() || anObject.IsNull()) + return aGEOMObject._retn(); + + return GetObject(anObject); +} diff --git a/src/GEOM_I/GEOM_I3DPrimOperations_i.hh b/src/GEOM_I/GEOM_I3DPrimOperations_i.hh index 330f4974b..e6574b876 100644 --- a/src/GEOM_I/GEOM_I3DPrimOperations_i.hh +++ b/src/GEOM_I/GEOM_I3DPrimOperations_i.hh @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_I3DPrimOperations_i_HeaderFile #define _GEOM_I3DPrimOperations_i_HeaderFile @@ -46,6 +47,25 @@ class GEOM_I_EXPORT GEOM_I3DPrimOperations_i : GEOM::GEOM_Object_ptr MakeBoxTwoPnt (GEOM::GEOM_Object_ptr thePnt1, GEOM::GEOM_Object_ptr thePnt2); + + GEOM::GEOM_Object_ptr MakeFaceHW (CORBA::Double theH, + CORBA::Double theW, + CORBA::Short theOrientation); + + GEOM::GEOM_Object_ptr MakeFaceObjHW (GEOM::GEOM_Object_ptr theObj, + CORBA::Double theH, + CORBA::Double theW); + + GEOM::GEOM_Object_ptr MakeDiskPntVecR (GEOM::GEOM_Object_ptr theCenter, + GEOM::GEOM_Object_ptr theVector, + double theR); + + GEOM::GEOM_Object_ptr MakeDiskThreePnt (GEOM::GEOM_Object_ptr thePnt1, + GEOM::GEOM_Object_ptr thePnt2, + GEOM::GEOM_Object_ptr thePnt3); + + GEOM::GEOM_Object_ptr MakeDiskR (CORBA::Double theR, + CORBA::Short theOrientation); GEOM::GEOM_Object_ptr MakeCylinderRH (CORBA::Double theR, CORBA::Double theH); @@ -94,6 +114,15 @@ class GEOM_I_EXPORT GEOM_I3DPrimOperations_i : GEOM::GEOM_Object_ptr thePoint1, GEOM::GEOM_Object_ptr thePoint2); + GEOM::GEOM_Object_ptr MakePrismDXDYDZ (GEOM::GEOM_Object_ptr theBase, + CORBA::Double theDX, + CORBA::Double theDY, + CORBA::Double theDZ); + GEOM::GEOM_Object_ptr MakePrismDXDYDZ2Ways (GEOM::GEOM_Object_ptr theBase, + CORBA::Double theDX, + CORBA::Double theDY, + CORBA::Double theDZ); + GEOM::GEOM_Object_ptr MakePipe (GEOM::GEOM_Object_ptr theBase, GEOM::GEOM_Object_ptr thePath); @@ -128,6 +157,10 @@ class GEOM_I_EXPORT GEOM_I3DPrimOperations_i : GEOM::GEOM_Object_ptr MakePipeShellsWithoutPath(const GEOM::ListOfGO& theBases, const GEOM::ListOfGO& theLocations); + GEOM::GEOM_Object_ptr MakePipeBiNormalAlongVector (GEOM::GEOM_Object_ptr theBase, + GEOM::GEOM_Object_ptr thePath, + GEOM::GEOM_Object_ptr theVec); + ::GEOMImpl_I3DPrimOperations* GetOperations() { return (::GEOMImpl_I3DPrimOperations*)GetImpl(); } }; diff --git a/src/GEOM_I/GEOM_IBasicOperations_i.cc b/src/GEOM_I/GEOM_IBasicOperations_i.cc index fe525509c..f475de827 100644 --- a/src/GEOM_I/GEOM_IBasicOperations_i.cc +++ b/src/GEOM_I/GEOM_IBasicOperations_i.cc @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include @@ -138,6 +140,7 @@ GEOM::GEOM_Object_ptr GEOM_IBasicOperations_i::MakePointOnLinesIntersection return GetObject(anObject); } + //============================================================================= /*! * MakePointOnCurve @@ -169,6 +172,39 @@ GEOM::GEOM_Object_ptr GEOM_IBasicOperations_i::MakePointOnCurve return GetObject(anObject); } + +//============================================================================= +/*! + * MakePointOnSurface + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_IBasicOperations_i::MakePointOnSurface + (GEOM::GEOM_Object_ptr theSurface, + CORBA::Double theUParameter, + CORBA::Double theVParameter) +{ + GEOM::GEOM_Object_var aGEOMObject; + + //Set a not done flag + GetOperations()->SetNotDone(); + + if (theSurface == NULL) return aGEOMObject._retn(); + + //Get the reference surface + Handle(GEOM_Object) aRefernce = GetOperations()->GetEngine()->GetObject + (theSurface->GetStudyID(), theSurface->GetEntry()); + if (aRefernce.IsNull()) return aGEOMObject._retn(); + + //Create the point + Handle(GEOM_Object) anObject = + GetOperations()->MakePointOnSurface(aRefernce, theUParameter, theVParameter); + if (!GetOperations()->IsDone() || anObject.IsNull()) + return aGEOMObject._retn(); + + return GetObject(anObject); +} + + //============================================================================= /*! * MakeTangentOnCurve diff --git a/src/GEOM_I/GEOM_IBasicOperations_i.hh b/src/GEOM_I/GEOM_IBasicOperations_i.hh index 753e0df16..cc44faafc 100644 --- a/src/GEOM_I/GEOM_IBasicOperations_i.hh +++ b/src/GEOM_I/GEOM_IBasicOperations_i.hh @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_IBasicOperations_i_HeaderFile #define _GEOM_IBasicOperations_i_HeaderFile @@ -53,6 +54,10 @@ class GEOM_I_EXPORT GEOM_IBasicOperations_i : GEOM::GEOM_Object_ptr MakePointOnCurve (GEOM::GEOM_Object_ptr theCurve, CORBA::Double theParameter); + GEOM::GEOM_Object_ptr MakePointOnSurface (GEOM::GEOM_Object_ptr theSurface, + CORBA::Double theUParameter, + CORBA::Double theVParameter); + GEOM::GEOM_Object_ptr MakePointOnLinesIntersection (GEOM::GEOM_Object_ptr theLine1, GEOM::GEOM_Object_ptr theLine2); diff --git a/src/GEOM_I/GEOM_IBlocksOperations_i.cc b/src/GEOM_I/GEOM_IBlocksOperations_i.cc index f8a1d2a20..093df705a 100644 --- a/src/GEOM_I/GEOM_IBlocksOperations_i.cc +++ b/src/GEOM_I/GEOM_IBlocksOperations_i.cc @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include diff --git a/src/GEOM_I/GEOM_IBlocksOperations_i.hh b/src/GEOM_I/GEOM_IBlocksOperations_i.hh index 701b374dc..ff6480f8b 100644 --- a/src/GEOM_I/GEOM_IBlocksOperations_i.hh +++ b/src/GEOM_I/GEOM_IBlocksOperations_i.hh @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_IBlocksOperations_i_HeaderFile #define _GEOM_IBlocksOperations_i_HeaderFile diff --git a/src/GEOM_I/GEOM_IBooleanOperations_i.cc b/src/GEOM_I/GEOM_IBooleanOperations_i.cc index 57dabf6a6..cceef3727 100644 --- a/src/GEOM_I/GEOM_IBooleanOperations_i.cc +++ b/src/GEOM_I/GEOM_IBooleanOperations_i.cc @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include "GEOM_IBooleanOperations_i.hh" diff --git a/src/GEOM_I/GEOM_IBooleanOperations_i.hh b/src/GEOM_I/GEOM_IBooleanOperations_i.hh index 7379d00b8..5be05a05e 100644 --- a/src/GEOM_I/GEOM_IBooleanOperations_i.hh +++ b/src/GEOM_I/GEOM_IBooleanOperations_i.hh @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_IBooleanOperations_i_HeaderFile #define _GEOM_IBooleanOperations_i_HeaderFile diff --git a/src/GEOM_I/GEOM_ICurvesOperations_i.cc b/src/GEOM_I/GEOM_ICurvesOperations_i.cc index 3a15afb1b..2b15af49f 100644 --- a/src/GEOM_I/GEOM_ICurvesOperations_i.cc +++ b/src/GEOM_I/GEOM_ICurvesOperations_i.cc @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include @@ -65,15 +67,22 @@ GEOM::GEOM_Object_ptr GEOM_ICurvesOperations_i::MakeCirclePntVecR //Set a not done flag GetOperations()->SetNotDone(); - if (thePnt == NULL || theVec == NULL) return aGEOMObject._retn(); + // Not set thePnt means origin of global CS, + // Not set theVec means Z axis of global CS + //if (thePnt == NULL || theVec == NULL) return aGEOMObject._retn(); - //Get the reference points - Handle(GEOM_Object) aPnt = GetOperations()->GetEngine()->GetObject - (thePnt->GetStudyID(), thePnt->GetEntry()); - Handle(GEOM_Object) aVec = GetOperations()->GetEngine()->GetObject - (theVec->GetStudyID(), theVec->GetEntry()); - - if (aPnt.IsNull() || aVec.IsNull()) return aGEOMObject._retn(); + //Get the arguments + Handle(GEOM_Object) aPnt, aVec; + if (!CORBA::is_nil(thePnt)) { + aPnt = GetOperations()->GetEngine()->GetObject + (thePnt->GetStudyID(), thePnt->GetEntry()); + if (aPnt.IsNull()) return aGEOMObject._retn(); + } + if (!CORBA::is_nil(theVec)) { + aVec = GetOperations()->GetEngine()->GetObject + (theVec->GetStudyID(), theVec->GetEntry()); + if (aVec.IsNull()) return aGEOMObject._retn(); + } // Make Circle Handle(GEOM_Object) anObject = @@ -167,15 +176,22 @@ GEOM::GEOM_Object_ptr GEOM_ICurvesOperations_i::MakeEllipse //Set a not done flag GetOperations()->SetNotDone(); - if (thePnt == NULL || theVec == NULL) return aGEOMObject._retn(); + // Not set thePnt means origin of global CS, + // Not set theVec means Z axis of global CS + //if (thePnt == NULL || theVec == NULL) return aGEOMObject._retn(); - //Get the reference points - Handle(GEOM_Object) aPnt = GetOperations()->GetEngine()->GetObject - (thePnt->GetStudyID(), thePnt->GetEntry()); - Handle(GEOM_Object) aVec = GetOperations()->GetEngine()->GetObject - (theVec->GetStudyID(), theVec->GetEntry()); - - if (aPnt.IsNull() || aVec.IsNull()) return aGEOMObject._retn(); + //Get the arguments + Handle(GEOM_Object) aPnt, aVec; + if (!CORBA::is_nil(thePnt)) { + aPnt = GetOperations()->GetEngine()->GetObject + (thePnt->GetStudyID(), thePnt->GetEntry()); + if (aPnt.IsNull()) return aGEOMObject._retn(); + } + if (!CORBA::is_nil(theVec)) { + aVec = GetOperations()->GetEngine()->GetObject + (theVec->GetStudyID(), theVec->GetEntry()); + if (aVec.IsNull()) return aGEOMObject._retn(); + } // Make Ellipse Handle(GEOM_Object) anObject = @@ -259,6 +275,43 @@ GEOM::GEOM_Object_ptr GEOM_ICurvesOperations_i::MakeArcCenter return GetObject(anObject); } + +//============================================================================= +/*! + * MakeArc + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_ICurvesOperations_i::MakeArcOfEllipse + (GEOM::GEOM_Object_ptr thePnt1, + GEOM::GEOM_Object_ptr thePnt2, + GEOM::GEOM_Object_ptr thePnt3) +{ + GEOM::GEOM_Object_var aGEOMObject; + + //Set a not done flag + GetOperations()->SetNotDone(); + + if (thePnt1 == NULL || thePnt2 == NULL || thePnt3 == NULL) return aGEOMObject._retn(); + + //Get the reference points + Handle(GEOM_Object) aPnt1 = GetOperations()->GetEngine()->GetObject + (thePnt1->GetStudyID(), thePnt1->GetEntry()); + Handle(GEOM_Object) aPnt2 = GetOperations()->GetEngine()->GetObject + (thePnt2->GetStudyID(), thePnt2->GetEntry()); + Handle(GEOM_Object) aPnt3 = GetOperations()->GetEngine()->GetObject + (thePnt3->GetStudyID(), thePnt3->GetEntry()); + + if (aPnt1.IsNull() || aPnt2.IsNull() || aPnt3.IsNull()) return aGEOMObject._retn(); + + // Make Arc + Handle(GEOM_Object) anObject = + GetOperations()->MakeArcOfEllipse(aPnt1, aPnt2, aPnt3); + if (!GetOperations()->IsDone() || anObject.IsNull()) + return aGEOMObject._retn(); + + return GetObject(anObject); +} + //============================================================================= /*! * MakePolyline @@ -386,13 +439,38 @@ GEOM::GEOM_Object_ptr GEOM_ICurvesOperations_i::MakeSketcher // Make Sketcher Handle(GEOM_Object) anObject = - GetOperations()->MakeSketcher((char*)theCommand, aWorkingPlane); + GetOperations()->MakeSketcher(theCommand, aWorkingPlane); if (!GetOperations()->IsDone() || anObject.IsNull()) return GEOM::GEOM_Object::_nil(); return GetObject(anObject); } +//============================================================================= +/*! + * Make3DSketcher + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_ICurvesOperations_i::Make3DSketcher + (const GEOM::ListOfDouble& theCoordinates) +{ + //Set a not done flag + GetOperations()->SetNotDone(); + + int ind = 0; + int aLen = theCoordinates.length(); + list aCoords; + for (; ind < aLen; ind++) + aCoords.push_back(theCoordinates[ind]); + + // Make Sketcher + Handle(GEOM_Object) anObject = + GetOperations()->Make3DSketcher(aCoords); + if (!GetOperations()->IsDone() || anObject.IsNull()) + return GEOM::GEOM_Object::_nil(); + + return GetObject(anObject); +} //============================================================================= /*! @@ -410,7 +488,7 @@ GEOM::GEOM_Object_ptr GEOM_ICurvesOperations_i::MakeSketcherOnPlane // Make Sketcher Handle(GEOM_Object) anObject = - GetOperations()->MakeSketcherOnPlane((char*)theCommand, aWorkingPlane); + GetOperations()->MakeSketcherOnPlane(theCommand, aWorkingPlane); if (!GetOperations()->IsDone() || anObject.IsNull()) return GEOM::GEOM_Object::_nil(); diff --git a/src/GEOM_I/GEOM_ICurvesOperations_i.hh b/src/GEOM_I/GEOM_ICurvesOperations_i.hh index d341c4575..24179fc1f 100644 --- a/src/GEOM_I/GEOM_ICurvesOperations_i.hh +++ b/src/GEOM_I/GEOM_ICurvesOperations_i.hh @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_ICurvesOperations_i_HeaderFile #define _GEOM_ICurvesOperations_i_HeaderFile @@ -64,6 +65,10 @@ class GEOM_I_EXPORT GEOM_ICurvesOperations_i : GEOM::GEOM_Object_ptr thePnt2, GEOM::GEOM_Object_ptr thePnt3, bool theSense); + + GEOM::GEOM_Object_ptr MakeArcOfEllipse (GEOM::GEOM_Object_ptr thePnt1, + GEOM::GEOM_Object_ptr thePnt2, + GEOM::GEOM_Object_ptr thePnt3); GEOM::GEOM_Object_ptr MakePolyline (const GEOM::ListOfGO& thePoints); @@ -72,6 +77,8 @@ class GEOM_I_EXPORT GEOM_ICurvesOperations_i : GEOM::GEOM_Object_ptr MakeSplineInterpolation (const GEOM::ListOfGO& thePoints); GEOM::GEOM_Object_ptr MakeSketcher (const char* theCommand, const GEOM::ListOfDouble& theWorkingPlane); + + GEOM::GEOM_Object_ptr Make3DSketcher (const GEOM::ListOfDouble& theCoordinates); GEOM::GEOM_Object_ptr MakeSketcherOnPlane (const char* theCommand, GEOM::GEOM_Object_ptr theWorkingPlane); diff --git a/src/GEOM_I/GEOM_IGroupOperations_i.cc b/src/GEOM_I/GEOM_IGroupOperations_i.cc index e99524c98..7f87d4ac4 100644 --- a/src/GEOM_I/GEOM_IGroupOperations_i.cc +++ b/src/GEOM_I/GEOM_IGroupOperations_i.cc @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include diff --git a/src/GEOM_I/GEOM_IGroupOperations_i.hh b/src/GEOM_I/GEOM_IGroupOperations_i.hh index 505f16ee4..c4cf01e93 100644 --- a/src/GEOM_I/GEOM_IGroupOperations_i.hh +++ b/src/GEOM_I/GEOM_IGroupOperations_i.hh @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_IGroupOperations_i_HeaderFile #define _GEOM_IGroupOperations_i_HeaderFile diff --git a/src/GEOM_I/GEOM_IHealingOperations_i.cc b/src/GEOM_I/GEOM_IHealingOperations_i.cc index cdd3f1efe..a529c1cfe 100644 --- a/src/GEOM_I/GEOM_IHealingOperations_i.cc +++ b/src/GEOM_I/GEOM_IHealingOperations_i.cc @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include diff --git a/src/GEOM_I/GEOM_IHealingOperations_i.hh b/src/GEOM_I/GEOM_IHealingOperations_i.hh index 1b3f45118..a76e39ac1 100644 --- a/src/GEOM_I/GEOM_IHealingOperations_i.hh +++ b/src/GEOM_I/GEOM_IHealingOperations_i.hh @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_IHealingOperations_i_HeaderFile #define _GEOM_IHealingOperations_i_HeaderFile diff --git a/src/GEOM_I/GEOM_IInsertOperations_i.cc b/src/GEOM_I/GEOM_IInsertOperations_i.cc index 01ffb311d..a0145517c 100644 --- a/src/GEOM_I/GEOM_IInsertOperations_i.cc +++ b/src/GEOM_I/GEOM_IInsertOperations_i.cc @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifdef WNT #pragma warning( disable:4786 ) diff --git a/src/GEOM_I/GEOM_IInsertOperations_i.hh b/src/GEOM_I/GEOM_IInsertOperations_i.hh index bd0941f4f..da29eabf0 100644 --- a/src/GEOM_I/GEOM_IInsertOperations_i.hh +++ b/src/GEOM_I/GEOM_IInsertOperations_i.hh @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_IInsertOperations_i_HeaderFile #define _GEOM_IInsertOperations_i_HeaderFile diff --git a/src/GEOM_I/GEOM_ILocalOperations_i.cc b/src/GEOM_I/GEOM_ILocalOperations_i.cc index a9ec1fc6d..c71a24780 100644 --- a/src/GEOM_I/GEOM_ILocalOperations_i.cc +++ b/src/GEOM_I/GEOM_ILocalOperations_i.cc @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include @@ -219,6 +221,41 @@ GEOM::GEOM_Object_ptr GEOM_ILocalOperations_i::MakeFilletFacesR1R2 return GetObject(anObject); } +//============================================================================= +/*! + * MakeFillet2D + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_ILocalOperations_i::MakeFillet2D + (GEOM::GEOM_Object_ptr theShape, CORBA::Double theR, + const GEOM::ListOfLong& theVertexes) +{ + GEOM::GEOM_Object_var aGEOMObject; + + if (theShape == NULL) return aGEOMObject._retn(); + + //Get the reference shape + Handle(GEOM_Object) aShapeRef = GetOperations()->GetEngine()->GetObject + (theShape->GetStudyID(), theShape->GetEntry()); + if (aShapeRef.IsNull()) return aGEOMObject._retn(); + + //Get the reference vertex + int ind = 0; + int aLen = theVertexes.length(); + list aVertexes; + for (; ind < aLen; ind++) { + aVertexes.push_back(theVertexes[ind]); + } + + //Create the Fillet + Handle(GEOM_Object) anObject = + GetOperations()->MakeFillet2D(aShapeRef, theR, aVertexes); + if (!GetOperations()->IsDone() || anObject.IsNull()) + return aGEOMObject._retn(); + + return GetObject(anObject); +} + //============================================================================= /*! * MakeChamferAll diff --git a/src/GEOM_I/GEOM_ILocalOperations_i.hh b/src/GEOM_I/GEOM_ILocalOperations_i.hh index 79a80acfc..e13d37f49 100644 --- a/src/GEOM_I/GEOM_ILocalOperations_i.hh +++ b/src/GEOM_I/GEOM_ILocalOperations_i.hh @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_ILocalOperations_i_HeaderFile #define _GEOM_ILocalOperations_i_HeaderFile @@ -58,6 +59,9 @@ class GEOM_I_EXPORT GEOM_ILocalOperations_i : CORBA::Double theR1, CORBA::Double theR2, const GEOM::ListOfLong& theFaces); + + GEOM::GEOM_Object_ptr MakeFillet2D (GEOM::GEOM_Object_ptr theShape, CORBA::Double theR, + const GEOM::ListOfLong& theVertexes); GEOM::GEOM_Object_ptr MakeChamferAll (GEOM::GEOM_Object_ptr theShape, CORBA::Double theD); diff --git a/src/GEOM_I/GEOM_IMeasureOperations_i.cc b/src/GEOM_I/GEOM_IMeasureOperations_i.cc index d4e8c6a8e..84248c73b 100644 --- a/src/GEOM_I/GEOM_IMeasureOperations_i.cc +++ b/src/GEOM_I/GEOM_IMeasureOperations_i.cc @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include #include "GEOM_IMeasureOperations_i.hh" @@ -473,3 +474,151 @@ CORBA::Double GEOM_IMeasureOperations_i::GetAngle (GEOM::GEOM_Object_ptr theShap // Get the angle return GetOperations()->GetAngle(aShape1, aShape2); } + + +//============================================================================= +/*! + * CurveCurvatureByParam + */ +//============================================================================= +CORBA::Double GEOM_IMeasureOperations_i::CurveCurvatureByParam + (GEOM::GEOM_Object_ptr theCurve, CORBA::Double theParam) +{ + //Set a not done flag + GetOperations()->SetNotDone(); + + if(theCurve==NULL) return -1.0; + + //Get the reference shape + Handle(GEOM_Object) aShape = GetOperations()->GetEngine()->GetObject + (theCurve->GetStudyID(), theCurve->GetEntry()); + + if(aShape.IsNull()) return -1.0; + + return GetOperations()->CurveCurvatureByParam(aShape,theParam); +} + + +//============================================================================= +/*! + * CurveCurvatureByPoint + */ +//============================================================================= +CORBA::Double GEOM_IMeasureOperations_i::CurveCurvatureByPoint + (GEOM::GEOM_Object_ptr theCurve, GEOM::GEOM_Object_ptr thePoint) +{ + //Set a not done flag + GetOperations()->SetNotDone(); + + if( theCurve==NULL || thePoint==NULL ) return -1.0; + + //Get the reference shape + Handle(GEOM_Object) aShape = GetOperations()->GetEngine()->GetObject + (theCurve->GetStudyID(), theCurve->GetEntry()); + Handle(GEOM_Object) aPoint = GetOperations()->GetEngine()->GetObject + (thePoint->GetStudyID(), thePoint->GetEntry()); + + if( aShape.IsNull() || aPoint.IsNull() ) return -1.0; + + return GetOperations()->CurveCurvatureByPoint(aShape,aPoint); +} + + +//============================================================================= +/*! + * MaxSurfaceCurvatureByParam + */ +//============================================================================= +CORBA::Double GEOM_IMeasureOperations_i::MaxSurfaceCurvatureByParam + (GEOM::GEOM_Object_ptr theSurf, + CORBA::Double theUParam, + CORBA::Double theVParam) +{ + //Set a not done flag + GetOperations()->SetNotDone(); + + if(theSurf==NULL) return -1.0; + + //Get the reference shape + Handle(GEOM_Object) aShape = GetOperations()->GetEngine()->GetObject + (theSurf->GetStudyID(), theSurf->GetEntry()); + + if(aShape.IsNull()) return -1.0; + + return GetOperations()->MaxSurfaceCurvatureByParam(aShape,theUParam,theVParam); +} + + +//============================================================================= +/*! + * MaxSurfaceCurvatureByPoint + */ +//============================================================================= +CORBA::Double GEOM_IMeasureOperations_i::MaxSurfaceCurvatureByPoint + (GEOM::GEOM_Object_ptr theSurf, GEOM::GEOM_Object_ptr thePoint) +{ + //Set a not done flag + GetOperations()->SetNotDone(); + + if( theSurf==NULL || thePoint==NULL ) return -1.0; + + //Get the reference shape + Handle(GEOM_Object) aShape = GetOperations()->GetEngine()->GetObject + (theSurf->GetStudyID(), theSurf->GetEntry()); + Handle(GEOM_Object) aPoint = GetOperations()->GetEngine()->GetObject + (thePoint->GetStudyID(), thePoint->GetEntry()); + + if( aShape.IsNull() || aPoint.IsNull() ) return -1.0; + + return GetOperations()->MaxSurfaceCurvatureByPoint(aShape,aPoint); +} + + +//============================================================================= +/*! + * MinSurfaceCurvatureByParam + */ +//============================================================================= +CORBA::Double GEOM_IMeasureOperations_i::MinSurfaceCurvatureByParam + (GEOM::GEOM_Object_ptr theSurf, + CORBA::Double theUParam, + CORBA::Double theVParam) +{ + //Set a not done flag + GetOperations()->SetNotDone(); + + if(theSurf==NULL) return -1.0; + + //Get the reference shape + Handle(GEOM_Object) aShape = GetOperations()->GetEngine()->GetObject + (theSurf->GetStudyID(), theSurf->GetEntry()); + + if(aShape.IsNull()) return -1.0; + + return GetOperations()->MinSurfaceCurvatureByParam(aShape,theUParam,theVParam); +} + + +//============================================================================= +/*! + * MinSurfaceCurvatureByPoint + */ +//============================================================================= +CORBA::Double GEOM_IMeasureOperations_i::MinSurfaceCurvatureByPoint + (GEOM::GEOM_Object_ptr theSurf, GEOM::GEOM_Object_ptr thePoint) +{ + //Set a not done flag + GetOperations()->SetNotDone(); + + if( theSurf==NULL || thePoint==NULL ) return -1.0; + + //Get the reference shape + Handle(GEOM_Object) aShape = GetOperations()->GetEngine()->GetObject + (theSurf->GetStudyID(), theSurf->GetEntry()); + Handle(GEOM_Object) aPoint = GetOperations()->GetEngine()->GetObject + (thePoint->GetStudyID(), thePoint->GetEntry()); + + if( aShape.IsNull() || aPoint.IsNull() ) return -1.0; + + return GetOperations()->MinSurfaceCurvatureByPoint(aShape,aPoint); +} diff --git a/src/GEOM_I/GEOM_IMeasureOperations_i.hh b/src/GEOM_I/GEOM_IMeasureOperations_i.hh index 4db8a26d4..1aace732a 100644 --- a/src/GEOM_I/GEOM_IMeasureOperations_i.hh +++ b/src/GEOM_I/GEOM_IMeasureOperations_i.hh @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_IMeasureOperations_i_HeaderFile #define _GEOM_IMeasureOperations_i_HeaderFile @@ -94,6 +95,28 @@ class GEOM_I_EXPORT GEOM_IMeasureOperations_i : CORBA::Double GetAngle (GEOM::GEOM_Object_ptr theShape1, GEOM::GEOM_Object_ptr theShape2); + // Methods for recieving radiuses of curvature of curves and surfaces + // in the given point + CORBA::Double CurveCurvatureByParam (GEOM::GEOM_Object_ptr theCurve, + CORBA::Double theParam); + + CORBA::Double CurveCurvatureByPoint (GEOM::GEOM_Object_ptr theCurve, + GEOM::GEOM_Object_ptr thePoint); + + CORBA::Double MaxSurfaceCurvatureByParam (GEOM::GEOM_Object_ptr theSurf, + CORBA::Double theUParam, + CORBA::Double theVParam); + + CORBA::Double MaxSurfaceCurvatureByPoint (GEOM::GEOM_Object_ptr theSurf, + GEOM::GEOM_Object_ptr thePoint); + + CORBA::Double MinSurfaceCurvatureByParam (GEOM::GEOM_Object_ptr theSurf, + CORBA::Double theUParam, + CORBA::Double theVParam); + + CORBA::Double MinSurfaceCurvatureByPoint (GEOM::GEOM_Object_ptr theSurf, + GEOM::GEOM_Object_ptr thePoint); + ::GEOMImpl_IMeasureOperations* GetOperations() { return (::GEOMImpl_IMeasureOperations*)GetImpl(); } }; diff --git a/src/GEOM_I/GEOM_IOperations_i.cc b/src/GEOM_I/GEOM_IOperations_i.cc index 3d5c87c46..3a6516150 100644 --- a/src/GEOM_I/GEOM_IOperations_i.cc +++ b/src/GEOM_I/GEOM_IOperations_i.cc @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include "GEOM_IOperations_i.hh" diff --git a/src/GEOM_I/GEOM_IOperations_i.hh b/src/GEOM_I/GEOM_IOperations_i.hh index c425449dc..c816e0beb 100644 --- a/src/GEOM_I/GEOM_IOperations_i.hh +++ b/src/GEOM_I/GEOM_IOperations_i.hh @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_IOperations_i_HeaderFile #define _GEOM_IOperations_i_HeaderFile diff --git a/src/GEOM_I/GEOM_IShapesOperations_i.cc b/src/GEOM_I/GEOM_IShapesOperations_i.cc index 6d9bf7fcc..16eb76575 100644 --- a/src/GEOM_I/GEOM_IShapesOperations_i.cc +++ b/src/GEOM_I/GEOM_IShapesOperations_i.cc @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include @@ -1290,6 +1292,133 @@ GEOM::ListOfLong* GEOM_IShapesOperations_i::GetShapesOnBoxIDs return aSeq._retn(); } + +//============================================================================= +/*! + * GetShapesOnShape + */ +//============================================================================= +GEOM::ListOfGO* GEOM_IShapesOperations_i::GetShapesOnShape + (GEOM::GEOM_Object_ptr theCheckShape, + GEOM::GEOM_Object_ptr theShape, + CORBA::Short theShapeType, + GEOM::shape_state theState) +{ + GEOM::ListOfGO_var aSeq = new GEOM::ListOfGO; + + //Set a not done flag + GetOperations()->SetNotDone(); + + if ( theShape == NULL || theCheckShape == NULL ) + return aSeq._retn(); + + //Get the reference objects + Handle(GEOM_Object) aShape = GetOperations()->GetEngine()->GetObject + (theShape->GetStudyID(), theShape->GetEntry()); + Handle(GEOM_Object) aCheckShape = GetOperations()->GetEngine()->GetObject + (theShape->GetStudyID(), theCheckShape->GetEntry()); + + if (aShape.IsNull() || aCheckShape.IsNull() ) + return aSeq._retn(); + + //Get Shapes On Shape + Handle(TColStd_HSequenceOfTransient) aHSeq = GetOperations()->GetShapesOnShape + (aCheckShape,aShape, theShapeType,ShapeState(theState)); + + if (!GetOperations()->IsDone() || aHSeq.IsNull()) + return aSeq._retn(); + + Standard_Integer aLength = aHSeq->Length(); + aSeq->length(aLength); + for (Standard_Integer i = 1; i <= aLength; i++) + aSeq[i-1] = GetObject(Handle(GEOM_Object)::DownCast(aHSeq->Value(i))); + + return aSeq._retn(); +} + + +//============================================================================= +/*! + * GetShapesOnShapeAsCompound + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_IShapesOperations_i::GetShapesOnShapeAsCompound + (GEOM::GEOM_Object_ptr theCheckShape, + GEOM::GEOM_Object_ptr theShape, + CORBA::Short theShapeType, + GEOM::shape_state theState) +{ + GEOM::GEOM_Object_var aGEOMObject; + + //Set a not done flag + GetOperations()->SetNotDone(); + + if ( theShape == NULL || theCheckShape == NULL ) + return aGEOMObject._retn(); + + //Get the reference objects + Handle(GEOM_Object) aShape = GetOperations()->GetEngine()->GetObject + (theShape->GetStudyID(), theShape->GetEntry()); + Handle(GEOM_Object) aCheckShape = GetOperations()->GetEngine()->GetObject + (theShape->GetStudyID(), theCheckShape->GetEntry()); + + if (aShape.IsNull() || aCheckShape.IsNull() ) + return aGEOMObject._retn(); + + //Get Shapes On Shape + Handle(GEOM_Object) anObject = GetOperations()->GetShapesOnShapeAsCompound + (aCheckShape,aShape, theShapeType,ShapeState(theState)); + + if (anObject.IsNull()) + return aGEOMObject._retn(); + + return GetObject(anObject); +} + + +//============================================================================= +/*! + * GetShapesOnShapeIDs + */ +//============================================================================= +GEOM::ListOfLong* GEOM_IShapesOperations_i::GetShapesOnShapeIDs + (GEOM::GEOM_Object_ptr theCheckShape, + GEOM::GEOM_Object_ptr theShape, + CORBA::Short theShapeType, + GEOM::shape_state theState) +{ + GEOM::ListOfLong_var aSeq = new GEOM::ListOfLong; + + //Set a not done flag + GetOperations()->SetNotDone(); + + if ( theShape == NULL || theCheckShape == NULL ) + return aSeq._retn(); + + //Get the reference objects + Handle(GEOM_Object) aShape = GetOperations()->GetEngine()->GetObject + (theShape->GetStudyID(), theShape->GetEntry()); + Handle(GEOM_Object) aCheckShape = GetOperations()->GetEngine()->GetObject + (theShape->GetStudyID(), theCheckShape->GetEntry()); + + if (aShape.IsNull() || aCheckShape.IsNull() ) + return aSeq._retn(); + + //Get Shapes On Shape + Handle(TColStd_HSequenceOfInteger) aHSeq = GetOperations()->GetShapesOnShapeIDs + (aCheckShape,aShape, theShapeType,ShapeState(theState)); + if (!GetOperations()->IsDone() || aHSeq.IsNull()) + return aSeq._retn(); + + Standard_Integer aLength = aHSeq->Length(); + aSeq->length(aLength); + for (Standard_Integer i = 1; i <= aLength; i++) + aSeq[i-1] = aHSeq->Value(i); + + return aSeq._retn(); +} + + //============================================================================= /*! * GetInPlace diff --git a/src/GEOM_I/GEOM_IShapesOperations_i.hh b/src/GEOM_I/GEOM_IShapesOperations_i.hh index de1b24be1..2b1523918 100644 --- a/src/GEOM_I/GEOM_IShapesOperations_i.hh +++ b/src/GEOM_I/GEOM_IShapesOperations_i.hh @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_IShapesOperations_i_HeaderFile #define _GEOM_IShapesOperations_i_HeaderFile @@ -175,6 +176,22 @@ class GEOM_I_EXPORT GEOM_IShapesOperations_i : CORBA::Long theShapeType, GEOM::shape_state theState); + GEOM::ListOfGO* GetShapesOnShape (GEOM::GEOM_Object_ptr theSheckShape, + GEOM::GEOM_Object_ptr theShape, + CORBA::Short theShapeType, + GEOM::shape_state theState); + + GEOM::GEOM_Object_ptr GetShapesOnShapeAsCompound + (GEOM::GEOM_Object_ptr theSheckShape, + GEOM::GEOM_Object_ptr theShape, + CORBA::Short theShapeType, + GEOM::shape_state theState); + + GEOM::ListOfLong* GetShapesOnShapeIDs (GEOM::GEOM_Object_ptr theCheckShape, + GEOM::GEOM_Object_ptr theShape, + CORBA::Short theShapeType, + GEOM::shape_state theState); + GEOM::GEOM_Object_ptr GetInPlace (GEOM::GEOM_Object_ptr theShapeWhere, GEOM::GEOM_Object_ptr theShapeWhat); diff --git a/src/GEOM_I/GEOM_ITransformOperations_i.cc b/src/GEOM_I/GEOM_ITransformOperations_i.cc index e914733f6..ac359856d 100644 --- a/src/GEOM_I/GEOM_ITransformOperations_i.cc +++ b/src/GEOM_I/GEOM_ITransformOperations_i.cc @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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. // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include @@ -84,18 +86,21 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::TranslateTwoPoints aGEOMObject = GEOM::GEOM_Object::_duplicate(theObject); //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) anObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (anObject.IsNull()) return aGEOMObject._retn(); //Get the first point of translation + CORBA::String_var aP1Entry = thePoint1->GetEntry(); Handle(GEOM_Object) aPoint1 = - GetOperations()->GetEngine()->GetObject(thePoint1->GetStudyID(), thePoint1->GetEntry()); + GetOperations()->GetEngine()->GetObject(thePoint1->GetStudyID(), aP1Entry); if (aPoint1.IsNull()) return aGEOMObject._retn(); //Get the second point of translation + CORBA::String_var aP2Entry = thePoint2->GetEntry(); Handle(GEOM_Object) aPoint2 = - GetOperations()->GetEngine()->GetObject(thePoint2->GetStudyID(), thePoint2->GetEntry()); + GetOperations()->GetEngine()->GetObject(thePoint2->GetStudyID(), aP2Entry); if (aPoint2.IsNull()) return aGEOMObject._retn(); //Perform the translation @@ -122,18 +127,21 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::TranslateTwoPointsCopy if (thePoint1 == NULL || thePoint2 == NULL || theObject == NULL) return aGEOMObject._retn(); //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) aBasicObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (aBasicObject.IsNull()) return aGEOMObject._retn(); //Get the first point of translation + CORBA::String_var aP1Entry = thePoint1->GetEntry(); Handle(GEOM_Object) aPoint1 = - GetOperations()->GetEngine()->GetObject(thePoint1->GetStudyID(), thePoint1->GetEntry()); + GetOperations()->GetEngine()->GetObject(thePoint1->GetStudyID(), aP1Entry); if (aPoint1.IsNull()) return aGEOMObject._retn(); //Get the second point of translation + CORBA::String_var aP2Entry = thePoint2->GetEntry(); Handle(GEOM_Object) aPoint2 = - GetOperations()->GetEngine()->GetObject(thePoint2->GetStudyID(), thePoint2->GetEntry()); + GetOperations()->GetEngine()->GetObject(thePoint2->GetStudyID(), aP2Entry); if (aPoint2.IsNull()) return aGEOMObject._retn(); //Create the translated shape @@ -150,8 +158,9 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::TranslateTwoPointsCopy * TranslateDXDYDZ */ //============================================================================= -GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::TranslateDXDYDZ (GEOM::GEOM_Object_ptr theObject, - CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ) +GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::TranslateDXDYDZ + (GEOM::GEOM_Object_ptr theObject, + CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ) { //Set a not done flag GetOperations()->SetNotDone(); @@ -168,8 +177,9 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::TranslateDXDYDZ (GEOM::GEOM_O aGEOMObject = GEOM::GEOM_Object::_duplicate(theObject); //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) anObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (anObject.IsNull()) return aGEOMObject._retn(); //Perform the translation @@ -185,7 +195,8 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::TranslateDXDYDZ (GEOM::GEOM_O */ //============================================================================= GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::TranslateDXDYDZCopy - (GEOM::GEOM_Object_ptr theObject, CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ) + (GEOM::GEOM_Object_ptr theObject, + CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ) { GEOM::GEOM_Object_var aGEOMObject; @@ -195,12 +206,11 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::TranslateDXDYDZCopy if (theObject == NULL) return aGEOMObject._retn(); //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) aBasicObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (aBasicObject.IsNull()) return aGEOMObject._retn(); - - //Create the translated shape Handle(GEOM_Object) anObject = GetOperations()->TranslateDXDYDZCopy(aBasicObject, theDX, theDY, theDZ); @@ -232,16 +242,18 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::TranslateVector return aGEOMObject._retn(); } - aGEOMObject = GEOM::GEOM_Object::_duplicate(theObject); + aGEOMObject = GEOM::GEOM_Object::_duplicate(theObject); //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) anObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (anObject.IsNull()) return aGEOMObject._retn(); //Get the vector of translation + CORBA::String_var aVEntry = theVector->GetEntry(); Handle(GEOM_Object) aVector = - GetOperations()->GetEngine()->GetObject(theVector->GetStudyID(), theVector->GetEntry()); + GetOperations()->GetEngine()->GetObject(theVector->GetStudyID(), aVEntry); if (aVector.IsNull()) return aGEOMObject._retn(); //Perform the translation @@ -267,13 +279,15 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::TranslateVectorCopy if (theObject == NULL || theVector == NULL) return aGEOMObject._retn(); //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) aBasicObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (aBasicObject.IsNull()) return aGEOMObject._retn(); //Get the vector of translation + CORBA::String_var aVEntry = theVector->GetEntry(); Handle(GEOM_Object) aVector = - GetOperations()->GetEngine()->GetObject(theVector->GetStudyID(), theVector->GetEntry()); + GetOperations()->GetEngine()->GetObject(theVector->GetStudyID(), aVEntry); if (aVector.IsNull()) return aGEOMObject._retn(); //Perform the translation @@ -284,6 +298,56 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::TranslateVectorCopy return GetObject(anObject); } +//============================================================================= +/*! + * TranslateVectorDistance + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::TranslateVectorDistance + (GEOM::GEOM_Object_ptr theObject, + GEOM::GEOM_Object_ptr theVector, + CORBA::Double theDistance, + CORBA::Boolean theCopy) +{ + GEOM::GEOM_Object_var aGEOMObject; + GetOperations()->SetNotDone(); //Set a not done flag + + if (theObject == NULL || theVector == NULL) return aGEOMObject._retn(); + + //check if the object is a subshape + if (!theCopy && !theObject->IsMainShape()) { + GetOperations()->SetErrorCode(SUBSHAPE_ERROR); + return aGEOMObject._retn(); + } + + if (!theCopy) + aGEOMObject = GEOM::GEOM_Object::_duplicate(theObject); + + //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); + Handle(GEOM_Object) aBasicObject = + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); + if (aBasicObject.IsNull()) return aGEOMObject._retn(); + + //Get the vector of translation + CORBA::String_var aVecEntry = theVector->GetEntry(); + Handle(GEOM_Object) aVector = + GetOperations()->GetEngine()->GetObject(theVector->GetStudyID(), aVecEntry); + if (aVector.IsNull()) return aGEOMObject._retn(); + + //Perform the translation + if (theCopy) { + Handle(GEOM_Object) anObject = GetOperations()-> + TranslateVectorDistance(aBasicObject, aVector, theDistance, theCopy); + if (!GetOperations()->IsDone() || anObject.IsNull()) + return aGEOMObject._retn(); + + return GetObject(anObject); + } + + GetOperations()->TranslateVectorDistance(aBasicObject, aVector, theDistance, theCopy); + return aGEOMObject._retn(); +} //============================================================================= /*! @@ -309,12 +373,15 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::Rotate (GEOM::GEOM_Object_ptr aGEOMObject = GEOM::GEOM_Object::_duplicate(theObject); //Get the object itself - Handle(GEOM_Object) anObject = GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + CORBA::String_var anEntry = theObject->GetEntry(); + Handle(GEOM_Object) anObject = + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (anObject.IsNull()) return aGEOMObject._retn(); //Get the axis of revolution + CORBA::String_var anAEntry = theAxis->GetEntry(); Handle(GEOM_Object) anAxis = - GetOperations()->GetEngine()->GetObject(theAxis->GetStudyID(), theAxis->GetEntry()); + GetOperations()->GetEngine()->GetObject(theAxis->GetStudyID(), anAEntry); if (anAxis.IsNull()) return aGEOMObject._retn(); //Perform the rotation @@ -340,13 +407,15 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::RotateCopy (GEOM::GEOM_Object if (theObject == NULL || theAxis == NULL) return aGEOMObject._retn(); //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) aBasicObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (aBasicObject.IsNull()) return aGEOMObject._retn(); //Get the axis of rotation + CORBA::String_var anAEntry = theAxis->GetEntry(); Handle(GEOM_Object) anAxis = - GetOperations()->GetEngine()->GetObject(theAxis->GetStudyID(), theAxis->GetEntry()); + GetOperations()->GetEngine()->GetObject(theAxis->GetStudyID(), anAEntry); if (anAxis.IsNull()) return aGEOMObject._retn(); //Perform the rotation @@ -375,19 +444,21 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::MirrorPlane if (theObject == NULL || thePlane == NULL) return aGEOMObject._retn(); //check if the object is a subshape - if(!theObject->IsMainShape()) { + if (!theObject->IsMainShape()) { GetOperations()->SetErrorCode(SUBSHAPE_ERROR); return aGEOMObject._retn(); } //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) anObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (anObject.IsNull()) return aGEOMObject._retn(); //Get the plane + CORBA::String_var aPlnEntry = thePlane->GetEntry(); Handle(GEOM_Object) aPlane = - GetOperations()->GetEngine()->GetObject(thePlane->GetStudyID(), thePlane->GetEntry()); + GetOperations()->GetEngine()->GetObject(thePlane->GetStudyID(), aPlnEntry); if (aPlane.IsNull()) return aGEOMObject._retn(); //Perform the mirror @@ -413,13 +484,15 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::MirrorPlaneCopy if (theObject == NULL || thePlane == NULL) return aGEOMObject._retn(); //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) aBasicObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (aBasicObject.IsNull()) return aGEOMObject._retn(); //Get the vector of translation + CORBA::String_var aPlnEntry = thePlane->GetEntry(); Handle(GEOM_Object) aPlane = - GetOperations()->GetEngine()->GetObject(thePlane->GetStudyID(), thePlane->GetEntry()); + GetOperations()->GetEngine()->GetObject(thePlane->GetStudyID(), aPlnEntry); if (aPlane.IsNull()) return aGEOMObject._retn(); //Perform the mirror @@ -453,13 +526,15 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::MirrorAxis } //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) anObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (anObject.IsNull()) return aGEOMObject._retn(); //Get the axis + CORBA::String_var anAEntry = theAxis->GetEntry(); Handle(GEOM_Object) aAxis = - GetOperations()->GetEngine()->GetObject(theAxis->GetStudyID(), theAxis->GetEntry()); + GetOperations()->GetEngine()->GetObject(theAxis->GetStudyID(), anAEntry); if (aAxis.IsNull()) return aGEOMObject._retn(); //Perform the mirror @@ -485,13 +560,15 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::MirrorAxisCopy if (theObject == NULL || theAxis == NULL) return aGEOMObject._retn(); //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) aBasicObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (aBasicObject.IsNull()) return aGEOMObject._retn(); //Get the vector of translation + CORBA::String_var anAEntry = theAxis->GetEntry(); Handle(GEOM_Object) aAxis = - GetOperations()->GetEngine()->GetObject(theAxis->GetStudyID(), theAxis->GetEntry()); + GetOperations()->GetEngine()->GetObject(theAxis->GetStudyID(), anAEntry); if (aAxis.IsNull()) return aGEOMObject._retn(); //Perform the mirror @@ -519,19 +596,21 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::MirrorPoint if (theObject == NULL || thePoint == NULL) return aGEOMObject._retn(); //check if the object is a subshape - if(!theObject->IsMainShape()) { + if (!theObject->IsMainShape()) { GetOperations()->SetErrorCode(SUBSHAPE_ERROR); return aGEOMObject._retn(); } //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) anObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (anObject.IsNull()) return aGEOMObject._retn(); //Get the point + CORBA::String_var aPntEntry = thePoint->GetEntry(); Handle(GEOM_Object) aPoint = - GetOperations()->GetEngine()->GetObject(thePoint->GetStudyID(), thePoint->GetEntry()); + GetOperations()->GetEngine()->GetObject(thePoint->GetStudyID(), aPntEntry); if (aPoint.IsNull()) return aGEOMObject._retn(); //Perform the mirror @@ -557,13 +636,15 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::MirrorPointCopy if (theObject == NULL || thePoint == NULL) return aGEOMObject._retn(); //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) aBasicObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (aBasicObject.IsNull()) return aGEOMObject._retn(); //Get the vector of translation + CORBA::String_var aPntEntry = thePoint->GetEntry(); Handle(GEOM_Object) aPoint = - GetOperations()->GetEngine()->GetObject(thePoint->GetStudyID(), thePoint->GetEntry()); + GetOperations()->GetEngine()->GetObject(thePoint->GetStudyID(), aPntEntry); if (aPoint.IsNull()) return aGEOMObject._retn(); //Perform the mirror @@ -592,15 +673,15 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::OffsetShape if (theObject == NULL) return aGEOMObject._retn(); //check if the object is a subshape - if(!theObject->IsMainShape()) { + if (!theObject->IsMainShape()) { GetOperations()->SetErrorCode(SUBSHAPE_ERROR); return aGEOMObject._retn(); } - //Get the basic object + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) aBasicObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (aBasicObject.IsNull()) return aGEOMObject._retn(); //Create the offset shape @@ -626,8 +707,9 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::OffsetShapeCopy if (theObject == NULL) return aGEOMObject._retn(); //Get the basic object + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) aBasicObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (aBasicObject.IsNull()) return aGEOMObject._retn(); //Create the offset shape @@ -647,30 +729,34 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::OffsetShapeCopy GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::ScaleShape (GEOM::GEOM_Object_ptr theObject, GEOM::GEOM_Object_ptr thePoint, - CORBA::Double theFactor) + CORBA::Double theFactor) { GEOM::GEOM_Object_var aGEOMObject = GEOM::GEOM_Object::_duplicate(theObject); //Set a not done flag GetOperations()->SetNotDone(); - if (thePoint == NULL || theObject == NULL) return aGEOMObject._retn(); + if (theObject->_is_nil()) return aGEOMObject._retn(); //check if the object is a subshape - if(!theObject->IsMainShape()) { + if (!theObject->IsMainShape()) { GetOperations()->SetErrorCode(SUBSHAPE_ERROR); return aGEOMObject._retn(); } //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) anObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (anObject.IsNull()) return aGEOMObject._retn(); //Get the point - Handle(GEOM_Object) aPoint = - GetOperations()->GetEngine()->GetObject(thePoint->GetStudyID(), thePoint->GetEntry()); - if (aPoint.IsNull()) return aGEOMObject._retn(); + Handle(GEOM_Object) aPoint; + if (!thePoint->_is_nil()) { + CORBA::String_var aPntEntry = thePoint->GetEntry(); + aPoint = GetOperations()->GetEngine()->GetObject(thePoint->GetStudyID(), aPntEntry); + if (aPoint.IsNull()) return aGEOMObject._retn(); + } //Perform the scale GetOperations()->ScaleShape(anObject, aPoint, theFactor); @@ -686,24 +772,28 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::ScaleShape GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::ScaleShapeCopy (GEOM::GEOM_Object_ptr theObject, GEOM::GEOM_Object_ptr thePoint, - CORBA::Double theFactor) + CORBA::Double theFactor) { GEOM::GEOM_Object_var aGEOMObject; //Set a not done flag GetOperations()->SetNotDone(); - if (thePoint == NULL || theObject == NULL) return aGEOMObject._retn(); + if (theObject->_is_nil()) return aGEOMObject._retn(); //Get the basic object + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) aBasicObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (aBasicObject.IsNull()) return aGEOMObject._retn(); //Get the point - Handle(GEOM_Object) aPoint = - GetOperations()->GetEngine()->GetObject(thePoint->GetStudyID(), thePoint->GetEntry()); - if (aPoint.IsNull()) return aGEOMObject._retn(); + Handle(GEOM_Object) aPoint; + if (!thePoint->_is_nil()) { + CORBA::String_var aPntEntry = thePoint->GetEntry(); + aPoint = GetOperations()->GetEngine()->GetObject(thePoint->GetStudyID(), aPntEntry); + if (aPoint.IsNull()) return aGEOMObject._retn(); + } //Perform the scale Handle(GEOM_Object) anObject = @@ -714,6 +804,94 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::ScaleShapeCopy return GetObject(anObject); } +//============================================================================= +/*! + * ScaleShapeAlongAxes + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::ScaleShapeAlongAxes + (GEOM::GEOM_Object_ptr theObject, + GEOM::GEOM_Object_ptr thePoint, + CORBA::Double theFactorX, + CORBA::Double theFactorY, + CORBA::Double theFactorZ) +{ + GEOM::GEOM_Object_var aGEOMObject = GEOM::GEOM_Object::_duplicate(theObject); + + //Set a not done flag + GetOperations()->SetNotDone(); + + if (theObject->_is_nil()) return aGEOMObject._retn(); + + //check if the object is a subshape + if (!theObject->IsMainShape()) { + GetOperations()->SetErrorCode(SUBSHAPE_ERROR); + return aGEOMObject._retn(); + } + + //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); + Handle(GEOM_Object) anObject = + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); + if (anObject.IsNull()) return aGEOMObject._retn(); + + //Get the point + Handle(GEOM_Object) aPoint; + if (!thePoint->_is_nil()) { + CORBA::String_var aPntEntry = thePoint->GetEntry(); + aPoint = GetOperations()->GetEngine()->GetObject(thePoint->GetStudyID(), aPntEntry); + if (aPoint.IsNull()) return aGEOMObject._retn(); + } + + //Perform the scale + GetOperations()->ScaleShapeAlongAxes + (anObject, aPoint, theFactorX, theFactorY, theFactorZ, /*doCopy*/false); + + return aGEOMObject._retn(); +} + +//============================================================================= +/*! + * ScaleShapeAlongAxesCopy + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::ScaleShapeAlongAxesCopy + (GEOM::GEOM_Object_ptr theObject, + GEOM::GEOM_Object_ptr thePoint, + CORBA::Double theFactorX, + CORBA::Double theFactorY, + CORBA::Double theFactorZ) +{ + GEOM::GEOM_Object_var aGEOMObject; + + //Set a not done flag + GetOperations()->SetNotDone(); + + if (theObject->_is_nil()) return aGEOMObject._retn(); + + //Get the basic object + CORBA::String_var anEntry = theObject->GetEntry(); + Handle(GEOM_Object) aBasicObject = + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); + if (aBasicObject.IsNull()) return aGEOMObject._retn(); + + //Get the point + Handle(GEOM_Object) aPoint; + if (!thePoint->_is_nil()) { + CORBA::String_var aPntEntry = thePoint->GetEntry(); + aPoint = GetOperations()->GetEngine()->GetObject(thePoint->GetStudyID(), aPntEntry); + if (aPoint.IsNull()) return aGEOMObject._retn(); + } + + //Perform the scale + Handle(GEOM_Object) anObject = GetOperations()->ScaleShapeAlongAxes + (aBasicObject, aPoint, theFactorX, theFactorY, theFactorZ, /*doCopy*/true); + if (!GetOperations()->IsDone() || anObject.IsNull()) + return aGEOMObject._retn(); + + return GetObject(anObject); +} + //============================================================================= /*! * PositionShape @@ -733,26 +911,29 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::PositionShape return aGEOMObject._retn(); //check if the object is a subshape - if(!theObject->IsMainShape()) { + if (!theObject->IsMainShape()) { GetOperations()->SetErrorCode(SUBSHAPE_ERROR); return aGEOMObject._retn(); } //Get the basic object + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) anObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (anObject.IsNull()) return aGEOMObject._retn(); //Get the Start LCS (may be NULL for positioning from global LCS) Handle(GEOM_Object) aStartLCS = NULL; if (theStartLCS != NULL && !CORBA::is_nil(theStartLCS)) { - aStartLCS = GetOperations()->GetEngine()->GetObject(theStartLCS->GetStudyID(), theStartLCS->GetEntry()); + CORBA::String_var aStartLCSEntry = theStartLCS->GetEntry(); + aStartLCS = GetOperations()->GetEngine()->GetObject(theStartLCS->GetStudyID(), aStartLCSEntry); if (aStartLCS.IsNull()) return aGEOMObject._retn(); } //Get the End LCS + CORBA::String_var anEndLCSEntry = theEndLCS->GetEntry(); Handle(GEOM_Object) aEndLCS = - GetOperations()->GetEngine()->GetObject(theEndLCS->GetStudyID(), theEndLCS->GetEntry()); + GetOperations()->GetEngine()->GetObject(theEndLCS->GetStudyID(), anEndLCSEntry); if (aEndLCS.IsNull()) return aGEOMObject._retn(); //Perform the Position @@ -780,20 +961,23 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::PositionShapeCopy return aGEOMObject._retn(); //Get the basic object + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) aBasicObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (aBasicObject.IsNull()) return aGEOMObject._retn(); //Get the Start LCS (may be NULL for positioning from global LCS) Handle(GEOM_Object) aStartLCS = NULL; if (theStartLCS != NULL && !CORBA::is_nil(theStartLCS)) { - aStartLCS = GetOperations()->GetEngine()->GetObject(theStartLCS->GetStudyID(), theStartLCS->GetEntry()); + CORBA::String_var aStartLCSEntry = theStartLCS->GetEntry(); + aStartLCS = GetOperations()->GetEngine()->GetObject(theStartLCS->GetStudyID(), aStartLCSEntry); if (aStartLCS.IsNull()) return aGEOMObject._retn(); } //Get the End LCS + CORBA::String_var anEndLCSEntry = theEndLCS->GetEntry(); Handle(GEOM_Object) aEndLCS = - GetOperations()->GetEngine()->GetObject(theEndLCS->GetStudyID(), theEndLCS->GetEntry()); + GetOperations()->GetEngine()->GetObject(theEndLCS->GetStudyID(), anEndLCSEntry); if (aEndLCS.IsNull()) return aGEOMObject._retn(); //Perform the position @@ -805,6 +989,47 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::PositionShapeCopy return GetObject(anObject); } +//============================================================================= +/*! + * PositionAlongPath + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::PositionAlongPath + (GEOM::GEOM_Object_ptr theObject, + GEOM::GEOM_Object_ptr thePath, + CORBA::Double theDistance, + CORBA::Boolean theCopy, + CORBA::Boolean theReverse) +{ + GEOM::GEOM_Object_var aGEOMObject; + + //Set a not done flag + GetOperations()->SetNotDone(); + + if (theObject == NULL || thePath == NULL) + return aGEOMObject._retn(); + + //Get the basic object + CORBA::String_var anEntry = theObject->GetEntry(); + Handle(GEOM_Object) aBasicObject = + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); + if (aBasicObject.IsNull()) return aGEOMObject._retn(); + + //Get the path object + CORBA::String_var aPathEntry = thePath->GetEntry(); + Handle(GEOM_Object) aPathObject = + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), aPathEntry); + if (aPathObject.IsNull()) return aGEOMObject._retn(); + + //Perform the position + Handle(GEOM_Object) anObject = + GetOperations()->PositionAlongPath(aBasicObject, aPathObject, theDistance, theCopy, theReverse); + if (!GetOperations()->IsDone() || anObject.IsNull()) + return aGEOMObject._retn(); + + return GetObject(anObject); +} + //============================================================================= /*! * MultiTranslate1D @@ -823,13 +1048,15 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::MultiTranslate1D if (theObject == NULL || theVector == NULL) return aGEOMObject._retn(); //Get the object itself - Handle(GEOM_Object) aBasicObject = GetOperations()->GetEngine()->GetObject - (theObject->GetStudyID(), theObject->GetEntry()); + CORBA::String_var anEntry = theObject->GetEntry(); + Handle(GEOM_Object) aBasicObject = + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (aBasicObject.IsNull()) return aGEOMObject._retn(); //Get the vector of translation - Handle(GEOM_Object) aVector = GetOperations()->GetEngine()->GetObject - (theVector->GetStudyID(), theVector->GetEntry()); + CORBA::String_var aVecEntry = theVector->GetEntry(); + Handle(GEOM_Object) aVector = + GetOperations()->GetEngine()->GetObject(theVector->GetStudyID(), aVecEntry); if (aVector.IsNull()) return aGEOMObject._retn(); //Perform the translation @@ -861,18 +1088,21 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::MultiTranslate2D (GEOM::GEOM_ if (theObject == NULL || theVector1 == NULL || theVector2 == NULL) return aGEOMObject._retn(); //Get the object itself - Handle(GEOM_Object) aBasicObject = GetOperations()->GetEngine()->GetObject - (theObject->GetStudyID(), theObject->GetEntry()); + CORBA::String_var anEntry = theObject->GetEntry(); + Handle(GEOM_Object) aBasicObject = + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (aBasicObject.IsNull()) return aGEOMObject._retn(); //Get the vector1 of translation - Handle(GEOM_Object) aVector1 = GetOperations()->GetEngine()->GetObject - (theVector1->GetStudyID(), theVector1->GetEntry()); + CORBA::String_var aVec1Entry = theVector1->GetEntry(); + Handle(GEOM_Object) aVector1 = + GetOperations()->GetEngine()->GetObject(theVector1->GetStudyID(), aVec1Entry); if (aVector1.IsNull()) return aGEOMObject._retn(); //Get the vector2 of translation - Handle(GEOM_Object) aVector2 = GetOperations()->GetEngine()->GetObject - (theVector2->GetStudyID(), theVector2->GetEntry()); + CORBA::String_var aVec2Entry = theVector2->GetEntry(); + Handle(GEOM_Object) aVector2 = + GetOperations()->GetEngine()->GetObject(theVector2->GetStudyID(), aVec2Entry); if (aVector2.IsNull()) return aGEOMObject._retn(); //Perform the translation @@ -900,13 +1130,15 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::MultiRotate1D (GEOM::GEOM_Obj if (theObject == NULL || theVector == NULL) return aGEOMObject._retn(); //Get the object itself - Handle(GEOM_Object) aBasicObject = GetOperations()->GetEngine()->GetObject - (theObject->GetStudyID(), theObject->GetEntry()); + CORBA::String_var anEntry = theObject->GetEntry(); + Handle(GEOM_Object) aBasicObject = + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (aBasicObject.IsNull()) return aGEOMObject._retn(); //Get the a directon of rotation - Handle(GEOM_Object) aVector = GetOperations()->GetEngine()->GetObject - (theVector->GetStudyID(), theVector->GetEntry()); + CORBA::String_var aVecEntry = theVector->GetEntry(); + Handle(GEOM_Object) aVector = + GetOperations()->GetEngine()->GetObject(theVector->GetStudyID(), aVecEntry); if (aVector.IsNull()) return aGEOMObject._retn(); //Perform the rotation @@ -936,13 +1168,15 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::MultiRotate2D (GEOM::GEOM_Obj if (theObject == NULL || theVector == NULL) return aGEOMObject._retn(); //Get the object itself - Handle(GEOM_Object) aBasicObject = GetOperations()->GetEngine()->GetObject - (theObject->GetStudyID(), theObject->GetEntry()); + CORBA::String_var anEntry = theObject->GetEntry(); + Handle(GEOM_Object) aBasicObject = + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (aBasicObject.IsNull()) return aGEOMObject._retn(); //Get the a directon of rotation - Handle(GEOM_Object) aVector = GetOperations()->GetEngine()->GetObject - (theVector->GetStudyID(), theVector->GetEntry()); + CORBA::String_var aVecEntry = theVector->GetEntry(); + Handle(GEOM_Object) aVector = + GetOperations()->GetEngine()->GetObject(theVector->GetStudyID(), aVecEntry); if (aVector.IsNull()) return aGEOMObject._retn(); //Perform the rotation @@ -968,10 +1202,11 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::RotateThreePoints GetOperations()->SetNotDone(); GEOM::GEOM_Object_var aGEOMObject; - if (theCentPoint == NULL || thePoint1 == NULL || thePoint2 == NULL || theObject == NULL) return aGEOMObject._retn(); + if (theCentPoint == NULL || thePoint1 == NULL || thePoint2 == NULL || theObject == NULL) + return aGEOMObject._retn(); //check if the object is a subshape - if(!theObject->IsMainShape()) { + if (!theObject->IsMainShape()) { GetOperations()->SetErrorCode(SUBSHAPE_ERROR); return aGEOMObject._retn(); } @@ -979,23 +1214,27 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::RotateThreePoints aGEOMObject = GEOM::GEOM_Object::_duplicate(theObject); //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) anObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (anObject.IsNull()) return aGEOMObject._retn(); //Get the central point of rotation + CORBA::String_var aCPEntry = theCentPoint->GetEntry(); Handle(GEOM_Object) aCentPoint = - GetOperations()->GetEngine()->GetObject(theCentPoint->GetStudyID(), theCentPoint->GetEntry()); + GetOperations()->GetEngine()->GetObject(theCentPoint->GetStudyID(), aCPEntry); if (aCentPoint.IsNull()) return aGEOMObject._retn(); //Get the first point + CORBA::String_var aP1Entry = thePoint1->GetEntry(); Handle(GEOM_Object) aPoint1 = - GetOperations()->GetEngine()->GetObject(thePoint1->GetStudyID(), thePoint1->GetEntry()); + GetOperations()->GetEngine()->GetObject(thePoint1->GetStudyID(), aP1Entry); if (aPoint1.IsNull()) return aGEOMObject._retn(); //Get the second point + CORBA::String_var aP2Entry = thePoint2->GetEntry(); Handle(GEOM_Object) aPoint2 = - GetOperations()->GetEngine()->GetObject(thePoint2->GetStudyID(), thePoint2->GetEntry()); + GetOperations()->GetEngine()->GetObject(thePoint2->GetStudyID(), aP2Entry); if (aPoint2.IsNull()) return aGEOMObject._retn(); //Perform the translation @@ -1020,26 +1259,31 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::RotateThreePointsCopy //Set a not done flag GetOperations()->SetNotDone(); - if (theCentPoint == NULL || thePoint1 == NULL || thePoint2 == NULL || theObject == NULL) return aGEOMObject._retn(); + if (theCentPoint == NULL || thePoint1 == NULL || thePoint2 == NULL || theObject == NULL) + return aGEOMObject._retn(); //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); Handle(GEOM_Object) aBasicObject = - GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), theObject->GetEntry()); + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); if (aBasicObject.IsNull()) return aGEOMObject._retn(); //Get the central point of rotation + CORBA::String_var aCPEntry = theCentPoint->GetEntry(); Handle(GEOM_Object) aCentPoint = - GetOperations()->GetEngine()->GetObject(theCentPoint->GetStudyID(), theCentPoint->GetEntry()); + GetOperations()->GetEngine()->GetObject(theCentPoint->GetStudyID(), aCPEntry); if (aCentPoint.IsNull()) return aGEOMObject._retn(); //Get the first point + CORBA::String_var aP1Entry = thePoint1->GetEntry(); Handle(GEOM_Object) aPoint1 = - GetOperations()->GetEngine()->GetObject(thePoint1->GetStudyID(), thePoint1->GetEntry()); + GetOperations()->GetEngine()->GetObject(thePoint1->GetStudyID(), aP1Entry); if (aPoint1.IsNull()) return aGEOMObject._retn(); //Get the second point + CORBA::String_var aP2Entry = thePoint2->GetEntry(); Handle(GEOM_Object) aPoint2 = - GetOperations()->GetEngine()->GetObject(thePoint2->GetStudyID(), thePoint2->GetEntry()); + GetOperations()->GetEngine()->GetObject(thePoint2->GetStudyID(), aP2Entry); if (aPoint2.IsNull()) return aGEOMObject._retn(); //Perform the rotation @@ -1051,3 +1295,38 @@ GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::RotateThreePointsCopy return GetObject(anObject); } +//============================================================================= +/*! + * RecomputeObject + */ +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_ITransformOperations_i::RecomputeObject + (GEOM::GEOM_Object_ptr theObject) +{ + //Set a not done flag + GetOperations()->SetNotDone(); + GEOM::GEOM_Object_var aGEOMObject; + + if (theObject == NULL) return aGEOMObject._retn(); + + //check if the object is a subshape + //if (!theObject->IsMainShape()) { + // GetOperations()->SetErrorCode(SUBSHAPE_ERROR); + // return aGEOMObject._retn(); + //} + + aGEOMObject = GEOM::GEOM_Object::_duplicate(theObject); + + //Get the object itself + CORBA::String_var anEntry = theObject->GetEntry(); + Handle(GEOM_Object) anObject = + GetOperations()->GetEngine()->GetObject(theObject->GetStudyID(), anEntry); + if (anObject.IsNull()) return aGEOMObject._retn(); + + //Perform the recomputation + Handle(GEOM_Function) aLastFunction = anObject->GetLastFunction(); + if (aLastFunction.IsNull()) return aGEOMObject._retn(); + GetOperations()->GetSolver()->ComputeFunction(aLastFunction); + + return aGEOMObject._retn(); +} diff --git a/src/GEOM_I/GEOM_ITransformOperations_i.hh b/src/GEOM_I/GEOM_ITransformOperations_i.hh index 3f49b17b7..e46758e01 100644 --- a/src/GEOM_I/GEOM_ITransformOperations_i.hh +++ b/src/GEOM_I/GEOM_ITransformOperations_i.hh @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_ITransformOperations_i_HeaderFile #define _GEOM_ITransformOperations_i_HeaderFile @@ -60,6 +61,11 @@ class GEOM_I_EXPORT GEOM_ITransformOperations_i : GEOM::GEOM_Object_ptr TranslateVectorCopy (GEOM::GEOM_Object_ptr theObject, GEOM::GEOM_Object_ptr theVector); + GEOM::GEOM_Object_ptr TranslateVectorDistance (GEOM::GEOM_Object_ptr theObject, + GEOM::GEOM_Object_ptr theVector, + CORBA::Double theDistance, + CORBA::Boolean theCopy); + GEOM::GEOM_Object_ptr MultiTranslate1D (GEOM::GEOM_Object_ptr theObject, GEOM::GEOM_Object_ptr theVector, CORBA::Double theStep, CORBA::Long theNbTimes); GEOM::GEOM_Object_ptr MultiTranslate2D (GEOM::GEOM_Object_ptr theObject, GEOM::GEOM_Object_ptr theVector1, CORBA::Double theStep1, CORBA::Long theNbTimes1, @@ -72,7 +78,6 @@ class GEOM_I_EXPORT GEOM_ITransformOperations_i : GEOM::GEOM_Object_ptr MultiRotate1D (GEOM::GEOM_Object_ptr theObject, GEOM::GEOM_Object_ptr theVector, CORBA::Long theNbTimes); - GEOM::GEOM_Object_ptr MultiRotate2D (GEOM::GEOM_Object_ptr theObject, GEOM::GEOM_Object_ptr theVector, @@ -117,6 +122,18 @@ class GEOM_I_EXPORT GEOM_ITransformOperations_i : GEOM::GEOM_Object_ptr thePoint, CORBA::Double theFactor); + GEOM::GEOM_Object_ptr ScaleShapeAlongAxes (GEOM::GEOM_Object_ptr theObject, + GEOM::GEOM_Object_ptr thePoint, + CORBA::Double theFactorX, + CORBA::Double theFactorY, + CORBA::Double theFactorZ); + + GEOM::GEOM_Object_ptr ScaleShapeAlongAxesCopy (GEOM::GEOM_Object_ptr theObject, + GEOM::GEOM_Object_ptr thePoint, + CORBA::Double theFactorX, + CORBA::Double theFactorY, + CORBA::Double theFactorZ); + GEOM::GEOM_Object_ptr PositionShape (GEOM::GEOM_Object_ptr theObject, GEOM::GEOM_Object_ptr theStartLCS, GEOM::GEOM_Object_ptr theEndLCS); @@ -125,6 +142,12 @@ class GEOM_I_EXPORT GEOM_ITransformOperations_i : GEOM::GEOM_Object_ptr theStartLCS, GEOM::GEOM_Object_ptr theEndLCS); + GEOM::GEOM_Object_ptr PositionAlongPath (GEOM::GEOM_Object_ptr theObject, + GEOM::GEOM_Object_ptr thePath, + CORBA::Double theDistance, + CORBA::Boolean theCopy, + CORBA::Boolean theReverse); + GEOM::GEOM_Object_ptr RotateThreePoints (GEOM::GEOM_Object_ptr theObject, GEOM::GEOM_Object_ptr theCentPoint, GEOM::GEOM_Object_ptr thePoint1, @@ -135,6 +158,8 @@ class GEOM_I_EXPORT GEOM_ITransformOperations_i : GEOM::GEOM_Object_ptr thePoint1, GEOM::GEOM_Object_ptr thePoint2); + GEOM::GEOM_Object_ptr RecomputeObject (GEOM::GEOM_Object_ptr theObject); + ::GEOMImpl_ITransformOperations* GetOperations() { return (::GEOMImpl_ITransformOperations*)GetImpl(); } }; diff --git a/src/GEOM_I/GEOM_Object_i.cc b/src/GEOM_I/GEOM_Object_i.cc index 4a86443b6..12ea73a99 100644 --- a/src/GEOM_I/GEOM_Object_i.cc +++ b/src/GEOM_I/GEOM_Object_i.cc @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #include @@ -360,3 +362,14 @@ bool GEOM_Object_i::IsShape() { return !_impl->GetValue().IsNull() && _impl->GetType() != GEOM_MARKER; } + +void GEOM_Object_i::SetParameters(const char* theParameters) +{ + _impl->SetParameters((char*)theParameters); +} + +char* GEOM_Object_i::GetParameters() +{ + return CORBA::string_dup(_impl->GetParameters().ToCString()); +} + diff --git a/src/GEOM_I/GEOM_Object_i.hh b/src/GEOM_I/GEOM_Object_i.hh index 56631b7f0..13bb0290f 100644 --- a/src/GEOM_I/GEOM_Object_i.hh +++ b/src/GEOM_I/GEOM_Object_i.hh @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #ifndef _GEOM_Object_i_HeaderFile #define _GEOM_Object_i_HeaderFile @@ -81,6 +82,10 @@ class GEOM_I_EXPORT GEOM_Object_i : public virtual POA_GEOM::GEOM_Object, public virtual bool IsShape(); + virtual void SetParameters(const char* theParameters); + + virtual char* GetParameters(); + Handle(GEOM_Object) GetImpl() { return _impl; } private: diff --git a/src/GEOM_I/Makefile.am b/src/GEOM_I/Makefile.am index 7915c62bb..445804206 100644 --- a/src/GEOM_I/Makefile.am +++ b/src/GEOM_I/Makefile.am @@ -1,98 +1,100 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM GEOM : implementaion of GEOM_Gen.idl -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : Makefile.in # Author : Patrick GOLDBRONN (CEA) # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header$ - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # Libraries targets lib_LTLIBRARIES = libGEOMEngine.la # header files -salomeinclude_HEADERS = \ - GEOM_Object_i.hh \ - GEOM_IOperations_i.hh \ - GEOM_IBasicOperations_i.hh \ - GEOM_IHealingOperations_i.hh \ - GEOM_I3DPrimOperations_i.hh \ - GEOM_IShapesOperations_i.hh \ - GEOM_IBlocksOperations_i.hh \ - GEOM_IBooleanOperations_i.hh \ - GEOM_ICurvesOperations_i.hh \ - GEOM_ILocalOperations_i.hh \ - GEOM_IInsertOperations_i.hh \ - GEOM_ITransformOperations_i.hh \ - GEOM_IMeasureOperations_i.hh \ - GEOM_IGroupOperations_i.hh \ - GEOM_Gen_i.hh \ +salomeinclude_HEADERS = \ + GEOM_Object_i.hh \ + GEOM_IOperations_i.hh \ + GEOM_IBasicOperations_i.hh \ + GEOM_IHealingOperations_i.hh \ + GEOM_I3DPrimOperations_i.hh \ + GEOM_IShapesOperations_i.hh \ + GEOM_IBlocksOperations_i.hh \ + GEOM_IBooleanOperations_i.hh \ + GEOM_ICurvesOperations_i.hh \ + GEOM_ILocalOperations_i.hh \ + GEOM_IInsertOperations_i.hh \ + GEOM_ITransformOperations_i.hh \ + GEOM_IMeasureOperations_i.hh \ + GEOM_IGroupOperations_i.hh \ + GEOM_Gen_i.hh \ GEOM_GEOM_I.hxx -dist_libGEOMEngine_la_SOURCES = \ - GEOM_Object_i.cc \ - GEOM_IOperations_i.cc \ - GEOM_IBasicOperations_i.cc \ - GEOM_IHealingOperations_i.cc \ - GEOM_I3DPrimOperations_i.cc \ - GEOM_IShapesOperations_i.cc \ - GEOM_IBlocksOperations_i.cc \ - GEOM_IBooleanOperations_i.cc \ - GEOM_ICurvesOperations_i.cc \ - GEOM_ILocalOperations_i.cc \ - GEOM_IInsertOperations_i.cc \ - GEOM_ITransformOperations_i.cc \ - GEOM_IMeasureOperations_i.cc \ - GEOM_IGroupOperations_i.cc \ - GEOM_Gen_i.cc \ +dist_libGEOMEngine_la_SOURCES = \ + GEOM_Object_i.cc \ + GEOM_IOperations_i.cc \ + GEOM_IBasicOperations_i.cc \ + GEOM_IHealingOperations_i.cc \ + GEOM_I3DPrimOperations_i.cc \ + GEOM_IShapesOperations_i.cc \ + GEOM_IBlocksOperations_i.cc \ + GEOM_IBooleanOperations_i.cc \ + GEOM_ICurvesOperations_i.cc \ + GEOM_ILocalOperations_i.cc \ + GEOM_IInsertOperations_i.cc \ + GEOM_ITransformOperations_i.cc \ + GEOM_IMeasureOperations_i.cc \ + GEOM_IGroupOperations_i.cc \ + GEOM_Gen_i.cc \ GEOM_DumpPython.cc -# additionnal information to compil and link file -libGEOMEngine_la_CPPFLAGS = \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - -I$(srcdir)/../SKETCHER \ - -I$(srcdir)/../ARCHIMEDE \ - -I$(srcdir)/../GEOMImpl \ - -I$(srcdir)/../GEOMAlgo \ - -I$(srcdir)/../GEOM \ - -I$(top_builddir)/idl \ +# additional information to compile and link file + +libGEOMEngine_la_CPPFLAGS = \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + -I$(srcdir)/../SKETCHER \ + -I$(srcdir)/../ARCHIMEDE \ + -I$(srcdir)/../GEOMImpl \ + -I$(srcdir)/../GEOMAlgo \ + -I$(srcdir)/../GEOM \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libGEOMEngine_la_LDFLAGS = \ - ../../idl/libSalomeIDLGEOM.la \ - ../ARCHIMEDE/libGEOMArchimede.la \ - ../GEOMImpl/libGEOMimpl.la \ - ../SKETCHER/libGEOMSketcher.la \ - ../GEOM/libGEOMbasic.la \ - $(KERNEL_LDFLAGS) -lSalomeNS -lSalomeContainer -lSalomeGenericObj -lTOOLSDS \ - $(CAS_DATAEXCHANGE) \ - $(CAS_LDPATH) -lTKFillet -lTKOffset \ - $(STDLIB) \ - $(CORBA_LIBS) +libGEOMEngine_la_LDFLAGS = \ + ../../idl/libSalomeIDLGEOM.la \ + ../ARCHIMEDE/libGEOMArchimede.la \ + ../GEOMImpl/libGEOMimpl.la \ + ../SKETCHER/libGEOMSketcher.la \ + ../GEOM/libGEOMbasic.la \ + $(KERNEL_LDFLAGS) -lSalomeNS -lSalomeContainer -lSalomeGenericObj -lTOOLSDS \ + $(CAS_DATAEXCHANGE) \ + $(CAS_LDPATH) -lTKFillet -lTKOffset + +# \ +# $(STDLIB) \ +# $(CORBA_LIBS) diff --git a/src/GEOM_I_Superv/GEOM_List_i.hh b/src/GEOM_I_Superv/GEOM_List_i.hh index 7b8e56c75..292cb4fb9 100644 --- a/src/GEOM_I_Superv/GEOM_List_i.hh +++ b/src/GEOM_I_Superv/GEOM_List_i.hh @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef __GEOM_LIST_I_H__ #define __GEOM_LIST_I_H__ diff --git a/src/GEOM_I_Superv/GEOM_Superv_i.cc b/src/GEOM_I_Superv/GEOM_Superv_i.cc index 387c3b0d4..159bb6f49 100644 --- a/src/GEOM_I_Superv/GEOM_Superv_i.cc +++ b/src/GEOM_I_Superv/GEOM_Superv_i.cc @@ -1,23 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - #include "GEOM_Superv_i.hh" #include "SALOME_LifeCycleCORBA.hxx" @@ -771,6 +772,80 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoxTwoPnt (GEOM::GEOM_Object_ptr thePnt return anObj; } +//============================================================================= +// MakeFaceHW: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceHW (CORBA::Double theH, + CORBA::Double theW, + CORBA::Short theOrientation) +{ + beginService( " GEOM_Superv_i::MakeFaceHW" ); + MESSAGE("GEOM_Superv_i::MakeFaceHW"); + get3DPrimOp(); + GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeFaceHW(theH, theW, theOrientation); + endService( " GEOM_Superv_i::MakeFaceHW" ); + return anObj; +} + +//============================================================================= +// MakeFaceObjHW: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceObjHW (GEOM::GEOM_Object_ptr theObj, + CORBA::Double theH, + CORBA::Double theW) +{ + beginService( " GEOM_Superv_i::MakeFaceObjHW" ); + MESSAGE("GEOM_Superv_i::MakeFaceObjHW"); + get3DPrimOp(); + GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeFaceObjHW(theObj, theH, theW); + endService( " GEOM_Superv_i::MakeFaceObjHW" ); + return anObj; +} + +//============================================================================= +// MakeDiskPntVecR: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskPntVecR (GEOM::GEOM_Object_ptr theCenter, + GEOM::GEOM_Object_ptr theVector, + CORBA::Double theR) +{ + beginService( " GEOM_Superv_i::MakeDiskPntVecR" ); + MESSAGE("GEOM_Superv_i::MakeDiskPntVecR"); + get3DPrimOp(); + GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskPntVecR(theCenter, theVector, theR); + endService( " GEOM_Superv_i::MakeDiskPntVecR" ); + return anObj; +} + +//============================================================================= +// MakeDiskThreePnt: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskThreePnt (GEOM::GEOM_Object_ptr thePnt1, + GEOM::GEOM_Object_ptr thePnt2, + GEOM::GEOM_Object_ptr thePnt3) +{ + beginService( " GEOM_Superv_i::MakeDiskThreePnt" ); + MESSAGE("GEOM_Superv_i::MakeDiskThreePnt"); + get3DPrimOp(); + GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskThreePnt(thePnt1, thePnt2, thePnt3); + endService( " GEOM_Superv_i::MakeDiskThreePnt" ); + return anObj; +} + +//============================================================================= +// MakeDiskR: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskR (CORBA::Double theR, + CORBA::Short theOrientation) +{ + beginService( " GEOM_Superv_i::MakeDiskR" ); + MESSAGE("GEOM_Superv_i::MakeDiskR"); + get3DPrimOp(); + GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskR(theR, theOrientation); + endService( " GEOM_Superv_i::MakeDiskR" ); + return anObj; +} + //============================================================================= // MakeCylinderPntVecRH: //============================================================================= @@ -813,9 +888,7 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSphere (CORBA::Double theX, MESSAGE("GEOM_Superv_i::MakeSphepe"); getBasicOp(); get3DPrimOp(); - GEOM::GEOM_Object_var o = myBasicOp->MakePointXYZ(theX, theY, theZ); - GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSpherePntR(o, theRadius); - o->Destroy(); + GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSpherePntR(myBasicOp->MakePointXYZ(theX, theY, theZ), theRadius); endService( " GEOM_Superv_i::MakeSphepe" ); return anObj; } @@ -969,6 +1042,34 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismTwoPnt2Ways (GEOM::GEOM_Object_ptr return anObj; } +//============================================================================= +// MakePrismDXDYDZ: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismDXDYDZ (GEOM::GEOM_Object_ptr theBase, + CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ) +{ + beginService( " GEOM_Superv_i::MakePrismDXDYDZ" ); + MESSAGE("GEOM_Superv_i::MakePrismDXDYDZ"); + get3DPrimOp(); + GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismDXDYDZ(theBase, theDX, theDY, theDZ); + endService( " GEOM_Superv_i::MakePrismDXDYDZ" ); + return anObj; +} + +//============================================================================= +// MakePrismDXDYDZ: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismDXDYDZ2Ways (GEOM::GEOM_Object_ptr theBase, + CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ) +{ + beginService( " GEOM_Superv_i::MakePrismDXDYDZ2Ways" ); + MESSAGE("GEOM_Superv_i::MakePrismDXDYDZ2Ways"); + get3DPrimOp(); + GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismDXDYDZ2Ways(theBase, theDX, theDY, theDZ); + endService( " GEOM_Superv_i::MakePrismDXDYDZ2Ways" ); + return anObj; +} + //============================================================================= // MakePipe: //============================================================================= @@ -1122,6 +1223,24 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeShellsWithoutPath } +//============================================================================= +// MakePipe: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeBiNormalAlongVector + (GEOM::GEOM_Object_ptr theBase, + GEOM::GEOM_Object_ptr thePath, + GEOM::GEOM_Object_ptr theVec) +{ + beginService( " GEOM_Superv_i::MakePipeBiNormalAlongVector" ); + MESSAGE("GEOM_Superv_i::MakePipeBiNormalAlongVector"); + get3DPrimOp(); + GEOM::GEOM_Object_ptr anObj = + my3DPrimOp->MakePipeBiNormalAlongVector(theBase, thePath, theVec); + endService( " GEOM_Superv_i::MakePipeBiNormalAlongVector" ); + return anObj; +} + + //============================================================================= // MakeFuse: //============================================================================= @@ -1347,6 +1466,23 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVectorCopy (GEOM::GEOM_Object_ptr return anObj; } +//============================================================================= +// TranslateVectorDistance: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVectorDistance (GEOM::GEOM_Object_ptr theObject, + GEOM::GEOM_Object_ptr theVector, + CORBA::Double theDistance, + CORBA::Boolean theCopy) +{ + beginService( " GEOM_Superv_i::TranslateVectorDistance" ); + MESSAGE("GEOM_Superv_i::TranslateVectorDistance"); + getTransfOp(); + GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVectorDistance(theObject, + theVector, theDistance, theCopy); + endService( " GEOM_Superv_i::TranslateVectorDistance" ); + return anObj; +} + //============================================================================= // MultiTranslate1D: //============================================================================= @@ -1619,6 +1755,42 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeCopy (GEOM::GEOM_Object_ptr theOb return anObj; } +//============================================================================= +// ScaleShapeAlongAxes: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeAlongAxes (GEOM::GEOM_Object_ptr theObject, + GEOM::GEOM_Object_ptr thePoint, + CORBA::Double theFactorX, + CORBA::Double theFactorY, + CORBA::Double theFactorZ) +{ + beginService( " GEOM_Superv_i::ScaleShapeAlongAxes" ); + MESSAGE("GEOM_Superv_i::ScaleShapeAlongAxes"); + getTransfOp(); + GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeAlongAxes + (theObject, thePoint, theFactorX, theFactorY, theFactorZ); + endService( " GEOM_Superv_i::ScaleShapeAlongAxes" ); + return anObj; +} + +//============================================================================= +// ScaleShapeAlongAxesCopy: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeAlongAxesCopy (GEOM::GEOM_Object_ptr theObject, + GEOM::GEOM_Object_ptr thePoint, + CORBA::Double theFactorX, + CORBA::Double theFactorY, + CORBA::Double theFactorZ) +{ + beginService( " GEOM_Superv_i::ScaleShapeAlongAxesCopy" ); + MESSAGE("GEOM_Superv_i::ScaleShapeAlongAxesCopy"); + getTransfOp(); + GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeAlongAxesCopy + (theObject, thePoint, theFactorX, theFactorY, theFactorZ); + endService( " GEOM_Superv_i::ScaleShapeAlongAxesCopy" ); + return anObj; +} + //============================================================================= // PositionShape: //============================================================================= @@ -1649,6 +1821,23 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionShapeCopy (GEOM::GEOM_Object_ptr th return anObj; } +//============================================================================= +// PositionAlongPath: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionAlongPath (GEOM::GEOM_Object_ptr theObject, + GEOM::GEOM_Object_ptr thePath, + CORBA::Double theDistance, + CORBA::Boolean theCopy, + CORBA::Boolean theReverse) +{ + beginService( " GEOM_Superv_i::PositionAlongPath" ); + MESSAGE("GEOM_Superv_i::PositionAlongPath"); + getTransfOp(); + GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionAlongPath(theObject, thePath, theDistance, theCopy, theReverse); + endService( " GEOM_Superv_i::PositionAlongPath" ); + return anObj; +} + //=============================== ShapesOperations ============================ //============================================================================= // Make: @@ -1875,6 +2064,7 @@ CORBA::Long GEOM_Superv_i::NumberOfEdges (GEOM::GEOM_Object_ptr theShape) return aRes; } + //============================================================================= // ChangeOrientation: //============================================================================= @@ -1889,6 +2079,46 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::ChangeOrientation (GEOM::GEOM_Object_ptr th } +//============================================================================= +// GetShapesOnShape: +//============================================================================= +GEOM::GEOM_List_ptr GEOM_Superv_i::GetShapesOnShape + (GEOM::GEOM_Object_ptr theCheckShape, + GEOM::GEOM_Object_ptr theShape, + CORBA::Short theShapeType, + GEOM::shape_state theState) +{ + beginService( " GEOM_Superv_i::GetShapesOnShape" ); + MESSAGE("GEOM_Superv_i::GetShapesOnShape"); + getShapesOp(); + GEOM::ListOfGO* aList = + myShapesOp->GetShapesOnShape(theCheckShape, theShape, theShapeType, theState); + GEOM_List_i* aListPtr = new GEOM_List_i(*(aList)); + MESSAGE(" List of "<GetList().length()<<" element(s)"); + endService( " GEOM_Superv_i::GetShapesOnShape" ); + return aListPtr->_this(); +} + + +//============================================================================= +// GetShapesOnShapeAsCompound: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::GetShapesOnShapeAsCompound + (GEOM::GEOM_Object_ptr theCheckShape, + GEOM::GEOM_Object_ptr theShape, + CORBA::Short theShapeType, + GEOM::shape_state theState) +{ + beginService( " GEOM_Superv_i::GetShapesOnShapeAsCompound" ); + MESSAGE("GEOM_Superv_i::GetShapesOnShapeAsCompound"); + getShapesOp(); + GEOM::GEOM_Object_ptr anObj = + myShapesOp->GetShapesOnShapeAsCompound(theCheckShape, theShape, theShapeType, theState); + endService( " GEOM_Superv_i::GetShapesOnShapeAsCompound" ); + return anObj; +} + + //=============================== BlocksOperations ============================ //============================================================================= // MakeQuad4Vertices: @@ -2333,6 +2563,21 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArcCenter (GEOM::GEOM_Object_ptr theCen return anObj; } +//============================================================================= +// MakeArcOfEllipse: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArcOfEllipse (GEOM::GEOM_Object_ptr thePnt1, + GEOM::GEOM_Object_ptr thePnt2, + GEOM::GEOM_Object_ptr thePnt3) +{ + beginService( " GEOM_Superv_i::MakeArcOfEllipse" ); + MESSAGE("GEOM_Superv_i::MakeArcOfEllipse"); + getCurvesOp(); + GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArcOfEllipse(thePnt1, thePnt2, thePnt3); + endService( " GEOM_Superv_i::MakeArcOfEllipse" ); + return anObj; +} + //============================================================================= // MakePolyline: //============================================================================= @@ -2406,6 +2651,24 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSketcher (const char* theCommand, return NULL; } +//============================================================================= +// Make3DSketcher: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::Make3DSketcher ( GEOM::GEOM_List_ptr theCoordinates) +{ + beginService( " GEOM_Superv_i::Make3DSketcher" ); + MESSAGE("GEOM_Superv_i::Make3DSketcher"); + if (GEOM_List_i* aListImpl = + dynamic_cast*>(GetServant(theCoordinates, myPOA).in())) { + getCurvesOp(); + GEOM::GEOM_Object_ptr anObj = myCurvesOp->Make3DSketcher(aListImpl->GetList()); + endService( " GEOM_Superv_i::Make3DSketcher" ); + return anObj; + } + endService( " GEOM_Superv_i::Make3DSketcher" ); + return NULL; +} + //=============================== LocalOperations ============================= //============================================================================= // MakeFilletAll: @@ -2505,6 +2768,26 @@ GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletFacesR1R2 (GEOM::GEOM_Object_ptr return NULL; } +//============================================================================= +// MakeFillet2D: +//============================================================================= +GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFillet2D (GEOM::GEOM_Object_ptr theShape, + CORBA::Double theR, + GEOM::GEOM_List_ptr theVertexes) +{ + beginService( " GEOM_Superv_i::MakeFillet2D" ); + MESSAGE("GEOM_Superv_i::MakeFillet2D"); + if (GEOM_List_i* aListImplV = + dynamic_cast*>(GetServant(theVertexes, myPOA).in())) { + getLocalOp(); + GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFillet2D(theShape, theR, aListImplV->GetList()); + endService( " GEOM_Superv_i::MakeFillet2D" ); + return anObj; + } + endService( " GEOM_Superv_i::MakeFillet2D" ); + return NULL; +} + //============================================================================= // MakeChamferAll: //============================================================================= diff --git a/src/GEOM_I_Superv/GEOM_Superv_i.hh b/src/GEOM_I_Superv/GEOM_Superv_i.hh index 3cb1ffd25..b34c13214 100644 --- a/src/GEOM_I_Superv/GEOM_Superv_i.hh +++ b/src/GEOM_I_Superv/GEOM_Superv_i.hh @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef __GEOM_SUPERV_I_H__ #define __GEOM_SUPERV_I_H__ @@ -187,6 +189,20 @@ public: CORBA::Double theDZ); GEOM::GEOM_Object_ptr MakeBoxTwoPnt (GEOM::GEOM_Object_ptr thePnt1, GEOM::GEOM_Object_ptr thePnt2); + GEOM::GEOM_Object_ptr MakeFaceHW (CORBA::Double theH, + CORBA::Double theW, + CORBA::Short theOrientation); + GEOM::GEOM_Object_ptr MakeFaceObjHW (GEOM::GEOM_Object_ptr theObj, + CORBA::Double theH, + CORBA::Double theW); + GEOM::GEOM_Object_ptr MakeDiskPntVecR (GEOM::GEOM_Object_ptr theCenter, + GEOM::GEOM_Object_ptr theVector, + CORBA::Double theR); + GEOM::GEOM_Object_ptr MakeDiskThreePnt (GEOM::GEOM_Object_ptr thePnt1, + GEOM::GEOM_Object_ptr thePnt2, + GEOM::GEOM_Object_ptr thePnt3); + GEOM::GEOM_Object_ptr MakeDiskR (CORBA::Double theR, + CORBA::Short theOrientation); GEOM::GEOM_Object_ptr MakeCylinderPntVecRH (GEOM::GEOM_Object_ptr thePnt, GEOM::GEOM_Object_ptr theAxis, CORBA::Double theRadius, @@ -226,6 +242,14 @@ public: GEOM::GEOM_Object_ptr MakePrismTwoPnt2Ways (GEOM::GEOM_Object_ptr theBase, GEOM::GEOM_Object_ptr thePoint1, GEOM::GEOM_Object_ptr thePoint2); + GEOM::GEOM_Object_ptr MakePrismDXDYDZ (GEOM::GEOM_Object_ptr theBase, + CORBA::Double theDX, + CORBA::Double theDY, + CORBA::Double theDZ); + GEOM::GEOM_Object_ptr MakePrismDXDYDZ2Ways (GEOM::GEOM_Object_ptr theBase, + CORBA::Double theDX, + CORBA::Double theDY, + CORBA::Double theDZ); GEOM::GEOM_Object_ptr MakePipe (GEOM::GEOM_Object_ptr theBase, GEOM::GEOM_Object_ptr thePath); GEOM::GEOM_Object_ptr MakeRevolutionAxisAngle (GEOM::GEOM_Object_ptr theBase, @@ -260,6 +284,10 @@ public: GEOM::GEOM_Object_ptr MakePipeShellsWithoutPath(const GEOM::ListOfGO& theBases, const GEOM::ListOfGO& theLocations); + GEOM::GEOM_Object_ptr MakePipeBiNormalAlongVector (GEOM::GEOM_Object_ptr theBase, + GEOM::GEOM_Object_ptr thePath, + GEOM::GEOM_Object_ptr theVec); + //-----------------------------------------------------------// // BooleanOperations // //-----------------------------------------------------------// @@ -314,6 +342,10 @@ public: GEOM::GEOM_Object_ptr theVector); GEOM::GEOM_Object_ptr TranslateVectorCopy (GEOM::GEOM_Object_ptr theObject, GEOM::GEOM_Object_ptr theVector); + GEOM::GEOM_Object_ptr TranslateVectorDistance (GEOM::GEOM_Object_ptr theObject, + GEOM::GEOM_Object_ptr theVector, + CORBA::Double theDistance, + CORBA::Boolean theCopy); GEOM::GEOM_Object_ptr MultiTranslate1D (GEOM::GEOM_Object_ptr theObject, GEOM::GEOM_Object_ptr theVector, CORBA::Double theStep, @@ -373,12 +405,27 @@ public: GEOM::GEOM_Object_ptr ScaleShapeCopy (GEOM::GEOM_Object_ptr theObject, GEOM::GEOM_Object_ptr thePoint, CORBA::Double theFactor); + GEOM::GEOM_Object_ptr ScaleShapeAlongAxes (GEOM::GEOM_Object_ptr theObject, + GEOM::GEOM_Object_ptr thePoint, + CORBA::Double theFactorX, + CORBA::Double theFactorY, + CORBA::Double theFactorZ); + GEOM::GEOM_Object_ptr ScaleShapeAlongAxesCopy (GEOM::GEOM_Object_ptr theObject, + GEOM::GEOM_Object_ptr thePoint, + CORBA::Double theFactorX, + CORBA::Double theFactorY, + CORBA::Double theFactorZ); GEOM::GEOM_Object_ptr PositionShape (GEOM::GEOM_Object_ptr theObject, GEOM::GEOM_Object_ptr theStartLCS, GEOM::GEOM_Object_ptr theEndLCS); GEOM::GEOM_Object_ptr PositionShapeCopy (GEOM::GEOM_Object_ptr theObject, GEOM::GEOM_Object_ptr theStartLCS, GEOM::GEOM_Object_ptr theEndLCS); + GEOM::GEOM_Object_ptr PositionAlongPath (GEOM::GEOM_Object_ptr theObject, + GEOM::GEOM_Object_ptr thePath, + CORBA::Double theDistance, + CORBA::Boolean theCopy, + CORBA::Boolean theReverse); //-----------------------------------------------------------// // ShapesOperations // @@ -410,6 +457,17 @@ public: CORBA::Long NumberOfEdges (GEOM::GEOM_Object_ptr theShape); GEOM::GEOM_Object_ptr ChangeOrientation (GEOM::GEOM_Object_ptr theShape); + GEOM::GEOM_List_ptr GetShapesOnShape (GEOM::GEOM_Object_ptr theCheckShape, + GEOM::GEOM_Object_ptr theShape, + CORBA::Short theShapeType, + GEOM::shape_state theState); + GEOM::GEOM_Object_ptr GetShapesOnShapeAsCompound + (GEOM::GEOM_Object_ptr theCheckShape, + GEOM::GEOM_Object_ptr theShape, + CORBA::Short theShapeType, + GEOM::shape_state theState); + + //-----------------------------------------------------------// // BlocksOperations // //-----------------------------------------------------------// @@ -506,11 +564,15 @@ public: GEOM::GEOM_Object_ptr thePnt1, GEOM::GEOM_Object_ptr thePnt2, CORBA::Boolean theSense); + GEOM::GEOM_Object_ptr MakeArcOfEllipse (GEOM::GEOM_Object_ptr thePnt1, + GEOM::GEOM_Object_ptr thePnt2, + GEOM::GEOM_Object_ptr thePnt3); GEOM::GEOM_Object_ptr MakePolyline (GEOM::GEOM_List_ptr thePoints); GEOM::GEOM_Object_ptr MakeSplineBezier (GEOM::GEOM_List_ptr thePoints); GEOM::GEOM_Object_ptr MakeSplineInterpolation (GEOM::GEOM_List_ptr thePoints); GEOM::GEOM_Object_ptr MakeSketcher (const char* theCommand, GEOM::GEOM_List_ptr theWorkingPlane); + GEOM::GEOM_Object_ptr Make3DSketcher (GEOM::GEOM_List_ptr theCoordinates); //-----------------------------------------------------------// // LocalOperations // @@ -525,6 +587,8 @@ public: GEOM::GEOM_List_ptr theFaces); GEOM::GEOM_Object_ptr MakeFilletFacesR1R2 (GEOM::GEOM_Object_ptr theShape, CORBA::Double theR1, CORBA::Double theR2, GEOM::GEOM_List_ptr theFaces); + GEOM::GEOM_Object_ptr MakeFillet2D (GEOM::GEOM_Object_ptr theShape, CORBA::Double theR, + GEOM::GEOM_List_ptr theVertexes); GEOM::GEOM_Object_ptr MakeChamferAll (GEOM::GEOM_Object_ptr theShape, CORBA::Double theD); GEOM::GEOM_Object_ptr MakeChamferEdge (GEOM::GEOM_Object_ptr theShape, CORBA::Double theD1, CORBA::Double theD2, diff --git a/src/GEOM_I_Superv/Makefile.am b/src/GEOM_I_Superv/Makefile.am index 4a97945b0..69edb9a10 100644 --- a/src/GEOM_I_Superv/Makefile.am +++ b/src/GEOM_I_Superv/Makefile.am @@ -1,38 +1,38 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM GEOM : implementaion of GEOM_Superv.idl -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : Makefile.in # Author : Patrick GOLDBRONN (CEA) # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header$ - # Libraries targets - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files -salomeinclude_HEADERS = +salomeinclude_HEADERS = \ + GEOM_Superv_i.hh \ + GEOM_List_i.hh # Libraries targets lib_LTLIBRARIES = libGEOM_SupervEngine.la @@ -40,29 +40,26 @@ lib_LTLIBRARIES = libGEOM_SupervEngine.la dist_libGEOM_SupervEngine_la_SOURCES = \ GEOM_Superv_i.cc -#LIB_SERVER_IDL = SALOMEDS.idl SALOMEDS_Attributes.idl SALOME_Component.idl SALOME_Exception.idl \ -# SALOME_GenericObj.idl SALOME_ModuleCatalog.idl SALOME_Session.idl GEOM_Gen.idl GEOM_Superv.idl +# additional information to compile and link file -# additionnal information to compil and link file -libGEOM_SupervEngine_la_CPPFLAGS = \ - $(CAS_CPPFLAGS) \ - $(QT_INCLUDES) \ - $(KERNEL_CXXFLAGS) \ - $(BOOST_CPPFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../GEOMGUI \ - -I$(srcdir)/../GEOMBase \ - -I$(srcdir)/../GEOMClient \ - -I$(srcdir)/../GEOMImpl \ - -I$(srcdir)/../GEOM \ - -I$(srcdir)/../GEOM_I \ - -I$(srcdir)/../GEOMAlgo \ - -I$(top_builddir)/idl \ +libGEOM_SupervEngine_la_CPPFLAGS = \ + $(CAS_CPPFLAGS) \ + $(QT_INCLUDES) \ + $(KERNEL_CXXFLAGS) \ + $(BOOST_CPPFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../GEOMGUI \ + -I$(srcdir)/../GEOMBase \ + -I$(srcdir)/../GEOMClient \ + -I$(srcdir)/../GEOMImpl \ + -I$(srcdir)/../GEOM \ + -I$(srcdir)/../GEOM_I \ + -I$(srcdir)/../GEOMAlgo \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libGEOM_SupervEngine_la_LDFLAGS = \ - ../GEOM_I/libGEOMEngine.la \ +libGEOM_SupervEngine_la_LDFLAGS = \ + $(CORBA_LIBS) \ $(KERNEL_LDFLAGS) -lSalomeGenericObj -lSalomeNS -lSalomeLifeCycleCORBA -lSalomeContainer -lSalomeDSClient \ - $(CORBA_LIBS) \ $(STDLIB) diff --git a/src/GEOM_SWIG/GEOM_Nut.py b/src/GEOM_SWIG/GEOM_Nut.py index 3a1f90adb..d5624c17f 100755 --- a/src/GEOM_SWIG/GEOM_Nut.py +++ b/src/GEOM_SWIG/GEOM_Nut.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,13 +17,13 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # ##################################################################### #Created :17/02/2005 #Auhtor :MASLOV Eugeny, KOVALTCHUK Alexey ##################################################################### - +# import geompy import salome import os diff --git a/src/GEOM_SWIG/GEOM_ObjectInfo.py b/src/GEOM_SWIG/GEOM_ObjectInfo.py new file mode 100644 index 000000000..a5c57e9e0 --- /dev/null +++ b/src/GEOM_SWIG/GEOM_ObjectInfo.py @@ -0,0 +1,60 @@ +# GEOM GEOM_SWIG : binding of C++ omplementaion with Python +# +# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# +# +# File : GEOM_ObjectInfo.py +# Author : Michael ZORIN +# Module : GEOM +# $Header: + +import salome +import geompy + +geom = salome.lcc.FindOrLoadComponent("FactoryServer", "GEOM") + +# Create several objects +obj1 = geompy.MakeVertex(0.,0.,0.) +obj2 = geompy.MakeCircleR(150.) +obj3 = geompy.MakeBoxDXDYDZ(300.,400.,500.) +obj4 = geompy.MakeCylinderRH(100.,200.) +ShapeListCompound = [] +ShapeListCompound.append(obj3) +ShapeListCompound.append(obj4) +obj5 = geompy.MakeCompound(ShapeListCompound) + +obj1_entry = geompy.addToStudy(obj1, "Object1") +obj2_entry = geompy.addToStudy(obj2, "Object2") +obj3_entry = geompy.addToStudy(obj3, "Object3") +obj4_entry = geompy.addToStudy(obj4, "Object4") +obj5_entry = geompy.addToStudy(obj5, "Object5") + +# Get information about objects +hasInfo = geom.hasObjectInfo() +print "Check if GEOM module provides information about its objects: ", hasInfo +if hasInfo == True: + print "Information about first object: ", geom.getObjectInfo(salome.myStudyId, obj1_entry) + print "Information about second object: ", geom.getObjectInfo(salome.myStudyId, obj2_entry) + print "Information about third object: ", geom.getObjectInfo(salome.myStudyId, obj3_entry) + print "Information about fourth object: ", geom.getObjectInfo(salome.myStudyId, obj4_entry) + print "Information about fifth object: ", geom.getObjectInfo(salome.myStudyId, obj5_entry) + +salome.sg.updateObjBrowser(1) diff --git a/src/GEOM_SWIG/GEOM_Partition1.py b/src/GEOM_SWIG/GEOM_Partition1.py index bc8e4c138..14b7be011 100755 --- a/src/GEOM_SWIG/GEOM_Partition1.py +++ b/src/GEOM_SWIG/GEOM_Partition1.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -18,17 +20,13 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # # GEOM GEOM_SWIG : binding of C++ omplementaion with Python -# # File : GEOM_Partition1.py # Module : GEOM - -#%Make geometry (like CEA script (A1)) using Partition algorithm% # appel: # import alveole_3D_01_GEOM # reload(alveole_3D_01_GEOM) - # -- Rayon de la bariere - +# barier_height = 7.0 barier_radius = 5.6 / 2 # Rayon de la bariere colis_radius = 1.0 / 2 # Rayon du colis diff --git a/src/GEOM_SWIG/GEOM_Partition2.py b/src/GEOM_SWIG/GEOM_Partition2.py index fd66fa72c..14375f6c9 100755 --- a/src/GEOM_SWIG/GEOM_Partition2.py +++ b/src/GEOM_SWIG/GEOM_Partition2.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -18,19 +20,14 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # # GEOM GEOM_SWIG : binding of C++ omplementaion with Python -# # File : GEOM_Partition2.py # Module : GEOM - -#%Make geometry (like CEA script (A2)) using Partition algorithm% # import callovo_01_GEOM # reload(callovo_01_GEOM) - - # -------------------------------------------- # Geometrie avec une galerie perpendiculaire # -------------------------------------------- - +# import geompy geom = geompy.geom diff --git a/src/GEOM_SWIG/GEOM_Partition3.py b/src/GEOM_SWIG/GEOM_Partition3.py index 462c8ac7f..c613a4b20 100755 --- a/src/GEOM_SWIG/GEOM_Partition3.py +++ b/src/GEOM_SWIG/GEOM_Partition3.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -18,15 +20,11 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # # GEOM GEOM_SWIG : binding of C++ omplementaion with Python -# # File : GEOM_Partition3.py # Module : GEOM - -#%Make geometry (like CEA script (A2)) using Partition algorithm% # import callovo_01_GEOM # reload(callovo_01_GEOM) - - +# import geompy geom = geompy.geom diff --git a/src/GEOM_SWIG/GEOM_Partition4.py b/src/GEOM_SWIG/GEOM_Partition4.py index 348d6b45b..6c5924711 100755 --- a/src/GEOM_SWIG/GEOM_Partition4.py +++ b/src/GEOM_SWIG/GEOM_Partition4.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -18,17 +20,13 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # # GEOM GEOM_SWIG : binding of C++ omplementaion with Python -# # File : GEOM_Partition4.py # Module : GEOM - -#%Make geometry (like CEA script (A3)) using Partition algorithm% # import couplex2_01_GEOM # reload(couplex2_01_GEOM) - # Dimensions de alveolus # Parall‰pipˆde rectangle de taille alDx, alDy, alDz - +# alDx = 2.5 alDy = 20.0 alDz = 2.5 diff --git a/src/GEOM_SWIG/GEOM_Partition5.py b/src/GEOM_SWIG/GEOM_Partition5.py index 00ce525d5..69c621a5f 100755 --- a/src/GEOM_SWIG/GEOM_Partition5.py +++ b/src/GEOM_SWIG/GEOM_Partition5.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -18,16 +20,12 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # # GEOM GEOM_SWIG : binding of C++ omplementaion with Python -# # File : GEOM_Partition5.py # Module : GEOM - -#%Make geometry (like CEA script (A4)) using Partition algorithm% # import gallery_01_GEOM # reload(gallery_01_GEOM) - # -- Import geompy pour piloter GEOM par script - +# import geompy geom = geompy.geom diff --git a/src/GEOM_SWIG/GEOM_Sketcher.py b/src/GEOM_SWIG/GEOM_Sketcher.py index dc8bf692d..7ea56b3cb 100644 --- a/src/GEOM_SWIG/GEOM_Sketcher.py +++ b/src/GEOM_SWIG/GEOM_Sketcher.py @@ -1,31 +1,30 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM GEOM_SWIG : binding of C++ omplementaion with Python -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : GEOM_Sketcher.py # Author : Damien COQUERET, Open CASCADE # Module : GEOM # $Header$ - +# import geompy #SKETCHER INFOS diff --git a/src/GEOM_SWIG/GEOM_Spanner.py b/src/GEOM_SWIG/GEOM_Spanner.py index 2e410ca9c..f95ab64e3 100644 --- a/src/GEOM_SWIG/GEOM_Spanner.py +++ b/src/GEOM_SWIG/GEOM_Spanner.py @@ -1,6 +1,7 @@ -# GEOM GEOM_SWIG : binding of C++ implementaion with Python +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 CEA +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -16,17 +17,19 @@ # 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 -# -# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # +# GEOM GEOM_SWIG : binding of C++ implementaion with Python # File : GEOM_Spanner.py # Author : Julia DOROVSKIKH # Module : GEOM # $Header$ - +# ! Please, if you edit this example file, update also +# ! GEOM_SRC/doc/salome/gui/GEOM/input/tui_test_spanner.doc +# ! as some sequences of symbols from this example are used during +# ! documentation generation to identify certain places of this file ############# MakeSpanner ############# - +# def MakeSpanner (geompy, math, isBlocksTest = 0, isMeshTest = 0, smesh = None): ### Variables ### @@ -400,8 +403,8 @@ def MakeSpanner (geompy, math, isBlocksTest = 0, isMeshTest = 0, smesh = None): print algoReg.GetName() print algoReg.GetId() algoReg.SetName("Regular_1D") - - + + hypNbSeg3 = algoReg.NumberOfSegments(3) print hypNbSeg3.GetName() print hypNbSeg3.GetId() @@ -419,7 +422,7 @@ def MakeSpanner (geompy, math, isBlocksTest = 0, isMeshTest = 0, smesh = None): algoQuad.SetName("Quadrangle_2D") print "-------------------------- add hypothesis to the Middle Block" - + print "-------------------------- LocalLength" algoRegMb = mesh.Segment(BlockMh) hypLen1 = algoRegMb.LocalLength(10) @@ -436,14 +439,14 @@ def MakeSpanner (geompy, math, isBlocksTest = 0, isMeshTest = 0, smesh = None): print hypPropE1.GetId() smesh.SetName(hypPropE1, "Propagation hypothesis") smesh.SetName(algoRegE1.GetSubMesh(), "SubMesh Edge 1 of Top Face") - + algoRegE2 = mesh.Segment(Edge2) hypPropE2 = algoRegE2.Propagation() print hypPropE2.GetName() print hypPropE2.GetId() smesh.SetName(hypPropE2, "Propagation hypothesis") smesh.SetName(algoRegE2.GetSubMesh(), "SubMesh Edge 2 of Top Face") - + print "-------------------------- compute the mesh" mesh.Compute() diff --git a/src/GEOM_SWIG/GEOM_TestAll.py b/src/GEOM_SWIG/GEOM_TestAll.py index 4c2d3675a..317f1dc40 100644 --- a/src/GEOM_SWIG/GEOM_TestAll.py +++ b/src/GEOM_SWIG/GEOM_TestAll.py @@ -1,7 +1,7 @@ -# GEOM GEOM_SWIG : binding of C++ omplementaion with Python +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 CEA - +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -17,15 +17,18 @@ # 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 -# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # +# GEOM GEOM_SWIG : binding of C++ omplementaion with Python # File : GEOM_usinggeom.py # Author : Damien COQUERET, Open CASCADE # Module : GEOM -# $Header$ - - +# +# ! Please, if you edit this example file, update also +# ! GEOM_SRC/doc/salome/gui/GEOM/input/tui_test_all.doc +# ! as some sequences of symbols from this example are used during +# ! documentation generation to identify certain places of this file +# def TestAll (geompy, math): #Create base Variables @@ -76,18 +79,20 @@ def TestAll (geompy, math): vxyz = geompy.MakeVectorDXDYDZ(100., 100., 100.) #(3 Doubles)->GEOM_Object_ptr #Create local coordinate systems - cs1 = geompy.MakeMarker(50,50,50, 1,0,0, 0,1,0) - cs2 = geompy.MakeMarker(70,80,10, 1,0,1, 1,1,0) + cs1 = geompy.MakeMarker(50,50,50, 1,0,0, 0,1,0) #(9 Doubles)->GEOM_Object_ptr + cs2 = geompy.MakeMarker(70,80,10, 1,0,1, 1,1,0) #(9 Doubles)->GEOM_Object_ptr + cs3 = geompy.MakeMarkerPntTwoVec(pz, vxy, vz) #(3 GEOM_Object_ptr)->GEOM_Object_ptr #Create base geometry 2D Line = geompy.MakeLineTwoPnt(p0, pxyz) #(2 GEOM_Object_ptr)->GEOM_Object_ptr Line1 = geompy.MakeLine(pz, vxy) #(2 GEOM_Object_ptr)->GEOM_Object_ptr - Line2 = geompy.MakeLineTwoPnt(pxyz, pz) #(2 GEOM_Object_ptr)->GEOM_Object_ptr + Line2 = geompy.MakeLineTwoPnt(pxyz, pz) #(2 GEOM_Object_ptr)->GEOM_Object_ptr Plane = geompy.MakePlane(pz, vxyz, trimsize) #(2 GEOM_Object_ptr, Double)->GEOM_Object_ptr Plane1 = geompy.MakePlaneThreePnt(px, pz, p200, trimsize) #(4 Doubles)->GEOM_Object_ptr Arc = geompy.MakeArc(py, pz, px) #(3 GEOM_Object_ptr)->GEOM_Object_ptr Arc2 = geompy.MakeArcCenter(py, pz, px,0) #(3 GEOM_Object_ptr,Boolean)->GEOM_Object_ptr + Arc3 = geompy.MakeArcOfEllipse(p0, px, pz) #(3 GEOM_Object_ptr,Boolean)->GEOM_Object_ptr Circle = geompy.MakeCircle(p0, vz, radius1) #(2 GEOM_Object_ptr, Double)->GEOM_Object_ptr Circle1 = geompy.MakeCircleThreePnt(p0, pxyz, px) #(3 GEOM_Object_ptr)->GEOM_Object_ptr Circle2 = geompy.MakeCircleCenter2Pnt(p0, pxyz, py) #(3 GEOM_Object_ptr)->GEOM_Object_ptr @@ -97,12 +102,16 @@ def TestAll (geompy, math): Interpol = geompy.MakeInterpol([px, py, p200, pxyz]) #(List of GEOM_Object_ptr)->GEOM_Object_ptr Sketcher = geompy.MakeSketcher("Sketcher:F -100 -100:TT 250 -100:R 0:C 100 150:R 0:L 300:WW", [100,0,0, 1,1,1, -1,1,0]) #(String, List of Doubles)->GEOM_Object_ptr + Sketcher3d = geompy.Make3DSketcher([0,0,0, 50,50,50, 0,50,50, 10,0,0]) #Test point on curve creation p_on_arc = geompy.MakeVertexOnCurve(Arc, 0.25) #(GEOM_Object_ptr, Double)->GEOM_Object_ptr #Test point on lines intersection - pLine = geompy.MakeVertexOnLinesIntersection( Line1, Line2 ) + p_on_l1l2 = geompy.MakeVertexOnLinesIntersection(Line1, Line2) #(2 GEOM_Object_ptr)->GEOM_Object_ptr + + #Test tangent on curve creation + tan_on_arc = geompy.MakeTangentOnCurve(Arc, 0.7) #(GEOM_Object_ptr, Double)->GEOM_Object_ptr #Create base geometry 3D Box = geompy.MakeBoxTwoPnt(p0, p200) #(2 GEOM_Object_ptr)->GEOM_Object_ptr @@ -131,6 +140,11 @@ def TestAll (geompy, math): Face1 = geompy.MakeFaceWires([Wire, Sketcher], WantPlanarFace) #(List of GEOM_Object_ptr, Boolean)->GEOM_Object_ptr Face2 = geompy.MakeFace(Sketcher, WantPlanarFace) + Face3 = geompy.MakeFaceHW (100., 200., 1) #(2 Doubles, 1 Int)->GEOM_Object_ptr + Face4 = geompy.MakeFaceObjHW (vz, 200., 100.) #(1 GEOM_Object_ptr, 2 Doubles)->GEOM_Object_ptr + Disk = geompy.MakeDiskPntVecR (p0, vz, radius) #(2 GEOM_Object_ptr, 1 Double)->GEOM_Object_ptr + Disk2 = geompy.MakeDiskThreePnt(p0, p200, pz) #(3 GEOM_Object_ptr)->GEOM_Object_ptr + Disk3 = geompy.MakeDiskR(100., 1) #(1 Doubles, 1 Int)->GEOM_Object_ptr Shell = geompy.MakeShell([Face, Face1]) #(List of GEOM_Object_ptr)->GEOM_Object_ptr Prism1 = geompy.MakePrism(Face2, p0, pxyz) #(3 GEOM_Object_ptr)->GEOM_Object_ptr @@ -148,19 +162,24 @@ def TestAll (geompy, math): i = i + 1 Compound = geompy.MakeCompound(ShapeListCompound) #(List of GEOM_Object_ptr)->GEOM_Object_ptr + #Test point on surface creation + p_on_face = geompy.MakeVertexOnSurface(Face, 0.1, 0.8) #(GEOM_Object_ptr, Double, Double)->GEOM_Object_ptr + # Test plane from existing face creation Plane2 = geompy.MakePlaneFace(Face, trimsize) #(GEOM_Object_ptr, Double)->GEOM_Object_ptr #ShapeList for Sewing S = geompy.MakeRotation(Face, vxy, angle1) - + #Test Line on Faces Intersection - Line3 = geompy.MakeLineTwoFaces( prism1_faces[0], prism1_faces[1]) #(2 GEOM_Object_ptr)->GEOM_Object_ptr + Line3 = geompy.MakeLineTwoFaces(prism1_faces[0], prism1_faces[1]) #(2 GEOM_Object_ptr)->GEOM_Object_ptr #Create advanced objects Copy = geompy.MakeCopy(Box) #(GEOM_Object_ptr)->GEOM_Object_ptr Prism = geompy.MakePrismVecH(Face, vz, 100.0) #(2 GEOM_Object_ptr, Double)->GEOM_Object_ptr Prism2Ways = geompy.MakePrismVecH2Ways(Face, vz, 10.0) #(2 GEOM_Object_ptr, Double)->GEOM_Object_ptr + PrismDXDYDZ= geompy.MakePrismDXDYDZ(Face2, 10, 20, 100)#(2 GEOM_Object_ptr, Double)->GEOM_Object_ptr + PrismDXDYDZ2Ways= geompy.MakePrismDXDYDZ2Ways(Face, 30, -20, 200)#(2 GEOM_Object_ptr, Double)->GEOM_Object_ptr Revolution = geompy.MakeRevolution(Face, vz, angle2) # Revolution2Ways = geompy.MakeRevolution(Face, vz, angle1) # Filling = geompy.MakeFilling(Compound, mindeg, maxdeg, @@ -171,14 +190,25 @@ def TestAll (geompy, math): #Transform objects Translation = geompy.MakeTranslationTwoPoints(Box, px, pz) #(3 GEOM_Object_ptr)->GEOM_Object_ptr TranslVect = geompy.MakeTranslationVector(Box, vxyz) #(2 GEOM_Object_ptr)->GEOM_Object_ptr + TranslVectD = geompy.MakeTranslationVectorDistance(Box, vxyz, 50.0) #(2 GEOM_Object_ptr)->GEOM_Object_ptr Rotation = geompy.MakeRotation(Box, vz, angle1) #(2 GEOM_Object_ptr, Double)->GEOM_Object_ptr RotatPnt = geompy.MakeRotationThreePoints(Box, px, py, pz) #(4 GEOM_Object_ptr)->GEOM_Object_ptr - Scale = geompy.MakeScaleTransform(Box, p0, factor) # - Mirror = geompy.MakeMirrorByPlane(Box, Plane) #(2 GEOM_Object_ptr)->GEOM_Object_ptr - MirrorAxis = geompy.MakeMirrorByAxis(Box, Line1) # - MirrorPnt = geompy.MakeMirrorByPoint(Box, p200) # - Position = geompy.MakePosition(Box, cs1, cs2) #(3 GEOM_Object_ptr)->GEOM_Object_ptr - Offset = geompy.MakeOffset(Box, 10.) #(GEOM_Object_ptr, Double)->GEOM_Object_ptr + + #Scale by factor relatively given point + Scale1 = geompy.MakeScaleTransform(Box, pxyz, factor) #(2 GEOM_Object_ptr, Double)->GEOM_Object_ptr + #Scale by factor relatively the origin of global CS + Scale2 = geompy.MakeScaleTransform(Box, None, factor) # + #Scale along axes of global CS by different factors. Scale relatively given point + Scale3 = geompy.MakeScaleAlongAxes(Box, pxyz, 1.5, 0.5, 3) #(2 GEOM_Object_ptr, 3 Doubles)->GEOM_Object_ptr + #Scale along axes of global CS by different factors. Scale relatively the origin of global CS + Scale4 = geompy.MakeScaleAlongAxes(Box, None, 1.5, 0.5, 3) # + + Mirror = geompy.MakeMirrorByPlane(Box, Plane) #(2 GEOM_Object_ptr)->GEOM_Object_ptr + MirrorAxis = geompy.MakeMirrorByAxis(Box, Line1) # + MirrorPnt = geompy.MakeMirrorByPoint(Box, p200) # + Position = geompy.MakePosition(Box, cs1, cs2) #(3 GEOM_Object_ptr)->GEOM_Object_ptr + Position2 = geompy.PositionAlongPath(Box, Arc, 0.5, 1, 0) #(2 GEOM_Object_ptr, 1 Double, 2 Bool)->GEOM_Object_ptr + Offset = geompy.MakeOffset(Box, 10.) #(GEOM_Object_ptr, Double)->GEOM_Object_ptr Orientation = geompy.ChangeOrientation(Box) #IDList for Fillet/Chamfer @@ -205,6 +235,7 @@ def TestAll (geompy, math): IDlist_f = [f_ind_1, f_ind_2] #Local operations + Fillet2d = geompy.MakeFillet2D(Face3, radius, [4, 7, 9]) #(GEOM_Object_ptr, Double, ListOfLong)->GEOM_Object_ptr Fillet = geompy.MakeFillet (Prism, radius, ShapeTypeEdge, IDlist_e) #(GEOM_Object_ptr, Double, Short, ListOfLong)->GEOM_Object_ptr Fillet2 = geompy.MakeFilletR1R2 (Prism, 7., 13., ShapeTypeEdge, @@ -217,6 +248,8 @@ def TestAll (geompy, math): IDlist_e) #(GEOM_Object_ptr, 2 Doubles, ListOfLong)->GEOM_Object_ptr Chamfer4 = geompy.MakeChamferFacesAD(Prism, d1, 20. * math.pi / 180., IDlist_f) #(GEOM_Object_ptr, 2 Doubles, ListOfLong)->GEOM_Object_ptr + #End of Local operations + #Create Patterns MultiTrans1D = geompy.MakeMultiTranslation1D(Fillet, vz, step1, nbtimes1) MultiTrans2D = geompy.MakeMultiTranslation2D(Fillet, vz, step1, nbtimes1, vy, step2, nbtimes2) @@ -228,6 +261,9 @@ def TestAll (geompy, math): CDG = geompy.MakeCDG(Prism) #(GEOM_Object_ptr)->GEOM_Object_ptr Archimede = geompy.Archimede(Box, weight, waterdensity, meshingdeflection) #(GEOM_Object_ptr, 3 Doubles)->GEOM_Object_ptr + mindist = geompy.MinDistanceComponents(TranslVect, Mirror) #(2 GEOM_Object_ptr)->4 Doubles + print "Minumal distance between TranslVect and Mirror is", mindist[0], + print "by components:", mindist[1], ",", mindist[2], ",", mindist[3] CheckShape = geompy.CheckShape(Prism) #(GEOM_Object_ptr)->Boolean print "CheckShape(Prism) = ", CheckShape @@ -236,14 +272,12 @@ def TestAll (geompy, math): Partition1 = geompy.MakeHalfPartition(Box, Plane) #(2 GEOM_Object_ptr)->GEOM_Object_ptr #Add In Study - id_p0 = geompy.addToStudy(p0, "Vertex 0") id_px = geompy.addToStudy(px, "Vertex X") id_py = geompy.addToStudy(py, "Vertex Y") id_pz = geompy.addToStudy(pz, "Vertex Z") id_pxyz = geompy.addToStudy(pxyz, "Vertex XYZ") id_p200 = geompy.addToStudy(p200, "Vertex 200") - id_pLine = geompy.addToStudy(pLine, "Vertex on Lines Intersection") id_vx = geompy.addToStudy(vx, "Vector X") id_vy = geompy.addToStudy(vy, "Vector Y") @@ -253,6 +287,7 @@ def TestAll (geompy, math): id_cs1 = geompy.addToStudy(cs1, "CS 50,50,50, 1,0,0, 0,1,0") id_cs2 = geompy.addToStudy(cs2, "CS 70,80,10, 1,0,1, 1,1,0") + id_cs3 = geompy.addToStudy(cs3, "CS: pz, vxy, vz") id_Line = geompy.addToStudy(Line, "Line") id_Line1 = geompy.addToStudy(Line1, "Line by point and vector") @@ -261,6 +296,8 @@ def TestAll (geompy, math): id_Plane1 = geompy.addToStudy(Plane1, "Plane by 3 points") id_Arc = geompy.addToStudy(Arc, "Arc") + id_Arc2 = geompy.addToStudy(Arc2, "Arc2") + id_Arc3 = geompy.addToStudy(Arc3, "Arc3") id_Circle = geompy.addToStudy(Circle, "Circle") id_Circle1 = geompy.addToStudy(Circle1, "Circle by 3 points") id_Circle2 = geompy.addToStudy(Circle2, "Circle by center and 2 points") @@ -269,8 +306,12 @@ def TestAll (geompy, math): id_Bezier = geompy.addToStudy(Bezier, "Bezier") id_Interpol = geompy.addToStudy(Interpol, "Interpol") id_Sketcher = geompy.addToStudy(Sketcher, "Sketcher") + id_Sketcher3d = geompy.addToStudy(Sketcher3d, "Sketcher 3D") - id_p_on_arc = geompy.addToStudy(p_on_arc, "Vertex on Arc") + id_p_on_arc = geompy.addToStudy(p_on_arc, "Vertex on Arc (0.25)") + id_p_on_l1l2 = geompy.addToStudy(p_on_l1l2, "Vertex on Lines Intersection") + + id_tan_on_arc = geompy.addToStudy(tan_on_arc, "Tangent on Arc (0.7)") id_Box = geompy.addToStudy(Box, "Box") id_Box1 = geompy.addToStudy(Box1, "Box 10x20x30") @@ -295,8 +336,15 @@ def TestAll (geompy, math): id_Face = geompy.addToStudy(Face, "Face") id_Face1 = geompy.addToStudy(Face1, "Face from two wires") id_Face2 = geompy.addToStudy(Face2, "Face from Sketcher") + id_Face3 = geompy.addToStudy(Face3, "Face Height Width") + id_Face4 = geompy.addToStudy(Face4, "Face Plane_HW") + id_Disk = geompy.addToStudy(Disk, "Disk PntVecR") + id_Disk2 = geompy.addToStudy(Disk2, "Disk Three Points") + id_Disk3 = geompy.addToStudy(Disk3, "Disk OXY Radius") id_Shell = geompy.addToStudy(Shell, "Shell") + id_p_on_face = geompy.addToStudy(p_on_face, "Vertex on Face (0.1, 0.8)") + id_Prism1 = geompy.addToStudy(Prism1, "Prism by Two Pnt") id_Shell1 = geompy.addToStudy(Shell1, "Shell from Prism1 faces") id_Solid = geompy.addToStudy(Solid, "Solid") @@ -307,6 +355,8 @@ def TestAll (geompy, math): id_Copy = geompy.addToStudy(Copy, "Copy") id_Prism = geompy.addToStudy(Prism, "Prism") id_Prism2Ways = geompy.addToStudy(Prism2Ways, "Prism2Ways") + id_PrismDXDYDZ= geompy.addToStudy(PrismDXDYDZ,"PrismDXDYDZ") + id_PrismDXDYDZ2Ways= geompy.addToStudy(PrismDXDYDZ2Ways,"PrismDXDYDZ2Ways") id_Revolution = geompy.addToStudy(Revolution, "Revolution") id_Revolution2Ways = geompy.addToStudy(Revolution2Ways, "Revolution2Ways") id_Filling = geompy.addToStudy(Filling, "Filling") @@ -315,18 +365,24 @@ def TestAll (geompy, math): id_Translation = geompy.addToStudy(Translation, "Translation") id_TranslVect = geompy.addToStudy(TranslVect , "Translation along vector") + id_TranslVectD = geompy.addToStudy(TranslVectD, "Translation along vector with defined distance") id_Rotation = geompy.addToStudy(Rotation, "Rotation") id_RotatPnt = geompy.addToStudy(RotatPnt, "Rotation by three points") - id_Scale = geompy.addToStudy(Scale, "Scale") + id_Scale1 = geompy.addToStudy(Scale1, "Scale1") + id_Scale2 = geompy.addToStudy(Scale2, "Scale2") + id_Scale3 = geompy.addToStudy(Scale3, "Scale3") + id_Scale4 = geompy.addToStudy(Scale4, "Scale4") id_Mirror = geompy.addToStudy(Mirror, "Mirror by Plane") id_MirrorAxis = geompy.addToStudy(MirrorAxis, "Mirror by Axis") id_MirrorPnt = geompy.addToStudy(MirrorPnt, "Mirror by Point") id_Position = geompy.addToStudy(Position, "Positioned box") + id_Position2 = geompy.addToStudy(Position2, "Positioned box along path") id_Offset = geompy.addToStudy(Offset, "Offset") id_Orientation = geompy.addToStudy(Orientation, "Orientation") id_Fillet = geompy.addToStudy(Fillet, "Fillet") id_Fillet2 = geompy.addToStudy(Fillet2, "Fillet2") + id_Fillet2d = geompy.addToStudy(Fillet2d, "Fillet2D") id_Chamfer = geompy.addToStudy(Chamfer, "Chamfer on Edge") id_Chamfer2 = geompy.addToStudy(Chamfer2, "Chamfer on Faces") @@ -345,20 +401,40 @@ def TestAll (geompy, math): id_Partition1 = geompy.addToStudy(Partition1, "Half Partition") #Decompose objects + + # SubShape SubFace = geompy.SubShape(Box, geompy.ShapeType["FACE"], [2]) name = geompy.SubShapeName(SubFace, Box) id_SubFace = geompy.addToStudyInFather(Box, SubFace, name) + # SubShapeSorted SubFaceS = geompy.SubShapeSorted(Box, geompy.ShapeType["FACE"], [5]) nameS = geompy.SubShapeName(SubFaceS, Box) id_SubFace = geompy.addToStudyInFather(Box, SubFaceS, nameS) + # SubShapeAll SubEdgeList = geompy.SubShapeAll(SubFace, geompy.ShapeType["EDGE"]) i=0 for SubEdge in SubEdgeList : name = geompy.SubShapeName(SubEdge, SubFace) id_SubEdge = geompy.addToStudyInFather(SubFace, SubEdge, name) - #------------------- + # SubShapeAllIDs + SubEdgeIDsList = geompy.SubShapeAllIDs(SubFace, geompy.ShapeType["EDGE"]) + print "IDs of edges of SubFace:", SubEdgeIDsList, "(unsorted)" + group = geompy.CreateGroup(SubFace, geompy.ShapeType["EDGE"]) + geompy.UnionIDs(group, SubEdgeIDsList) + geompy.addToStudyInFather(SubFace, group, "Group of all edges") + + # SubShapeAllSortedIDs + SubEdgeIDsList = geompy.SubShapeAllSortedIDs(SubFace, geompy.ShapeType["EDGE"]) + print "IDs of edges of SubFace:", SubEdgeIDsList, "(sorted)" + + # GetSubShape and GetSubShapeID + for ind in SubEdgeIDsList: + edge = geompy.GetSubShape(SubFace, [ind]) + ind_e = geompy.GetSubShapeID(SubFace, edge) + if ind_e != ind: + print "Error in GetSubShape or GetSubShapeID" print "DONE" diff --git a/src/GEOM_SWIG/GEOM_TestHealing.py b/src/GEOM_SWIG/GEOM_TestHealing.py index 1ae6078c9..b5f4d688a 100644 --- a/src/GEOM_SWIG/GEOM_TestHealing.py +++ b/src/GEOM_SWIG/GEOM_TestHealing.py @@ -1,6 +1,7 @@ -# GEOM GEOM_SWIG : binding of C++ implementaion with Python +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 CEA +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -16,14 +17,14 @@ # 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 -# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # +# GEOM GEOM_SWIG : binding of C++ implementaion with Python # File : GEOM_TestHealing.py # Author : Julia DOROVSKIKH # Module : GEOM # $Header$ - +# def TestProcessShape (geompy): ##Load shape from BREP file diff --git a/src/GEOM_SWIG/GEOM_TestMeasures.py b/src/GEOM_SWIG/GEOM_TestMeasures.py index d552abf06..08d341090 100644 --- a/src/GEOM_SWIG/GEOM_TestMeasures.py +++ b/src/GEOM_SWIG/GEOM_TestMeasures.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,7 +17,7 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # def TestMeasureOperations (geompy, math): @@ -152,6 +154,13 @@ def TestMeasureOperations (geompy, math): if math.fabs(Angle - 45.0) > 1e-05: print " Error: returned angle is", Angle, "while must be 45.0" + Angle = geompy.GetAngleRadians(OX, OXY) + + print "\nAngle between OX and OXY in radians = ", Angle + if math.fabs(Angle - math.pi/4) > 1e-05: + print " Error: returned angle is", Angle, "while must be pi/4" + pass + # not in one plane OXY_shift = geompy.MakeTranslation(OXY,10,-10,20) Angle = geompy.GetAngle(OX, OXY_shift) diff --git a/src/GEOM_SWIG/GEOM_TestOthers.py b/src/GEOM_SWIG/GEOM_TestOthers.py index 3bf25cf75..76d4e2811 100644 --- a/src/GEOM_SWIG/GEOM_TestOthers.py +++ b/src/GEOM_SWIG/GEOM_TestOthers.py @@ -1,6 +1,7 @@ -# GEOM GEOM_SWIG : binding of C++ implementaion with Python +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 CEA +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -16,14 +17,18 @@ # 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 -# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # +# GEOM GEOM_SWIG : binding of C++ implementaion with Python # File : GEOM_TestOthers.py # Author : Julia DOROVSKIKH # Module : GEOM # $Header$ - +# ! Please, if you edit this example file, update also +# ! GEOM_SRC/doc/salome/gui/GEOM/input/tui_test_others.doc +# ! as some sequences of symbols from this example are used during +# ! documentation generation to identify certain places of this file +# import os def TestExportImport (geompy, shape): @@ -94,7 +99,11 @@ def TestExportImport (geompy, shape): def TestOtherOperations (geompy, math): - # MakeFaces + # prepare data for further operations + vx = geompy.MakeVectorDXDYDZ( 1, 0, 0) + vy = geompy.MakeVectorDXDYDZ( 0, 1, 0) + vz = geompy.MakeVectorDXDYDZ( 0, 0, 1) + p11 = geompy.MakeVertex( 0, 0, 0) p12 = geompy.MakeVertex(30, 0, 0) p13 = geompy.MakeVertex(30, 30, 0) @@ -123,6 +132,7 @@ def TestOtherOperations (geompy, math): id_w2 = geompy.addToStudy(w2, "Inside Wire") id_w3 = geompy.addToStudy(w3, "Inside Wire, translated along OZ") + # MakeFaces f12 = geompy.MakeFaces([w1, w2], 0) id_f12 = geompy.addToStudy(f12, "MakeFaces WO + WI") @@ -232,6 +242,10 @@ def TestOtherOperations (geompy, math): else: print "The Box is VALID" + # GetSame + Cone_ss = geompy.GetSame(Compound1, Cone) + id_Cone_ss = geompy.addToStudyInFather(Compound1, Cone_ss, "Cone subshape") + # test geometrical groups # CreateGroup @@ -269,6 +283,7 @@ def TestOtherOperations (geompy, math): for ObjectID in GetObjectIDs: print " ", ObjectID + # GetMainShape BoxCopy = geompy.GetMainShape(CreateGroup) # DifferenceIDs @@ -289,7 +304,8 @@ def TestOtherOperations (geompy, math): # ----------------------------------------------------------------------------- # enumeration ShapeTypeString as a dictionary # ----------------------------------------------------------------------------- - ShapeTypeString = {'0':"COMPOUND", '1':"COMPSOLID", '2':"SOLID", '3':"SHELL", '4':"FACE", '5':"WIRE", '6':"EDGE", '7':"VERTEX", '8':"SHAPE"} + ShapeTypeString = {'0':"COMPOUND", '1':"COMPSOLID", '2':"SOLID", '3':"SHELL", + '4':"FACE", '5':"WIRE", '6':"EDGE", '7':"VERTEX", '8':"SHAPE"} GroupType = geompy.GetType(CreateGroup) print "Type of elements of the created group is ", ShapeTypeString[`GroupType`] @@ -303,66 +319,67 @@ def TestOtherOperations (geompy, math): id_s0 = geompy.addToStudy(s0, "s0") v_0pp = geompy.MakeVectorDXDYDZ( 0, 1, 1) - v_0np = geompy.MakeVectorDXDYDZ( 0, -1, 1) - v_p0p = geompy.MakeVectorDXDYDZ( 1, 0, 1) - v_n0p = geompy.MakeVectorDXDYDZ(-1, 0, 1) - v_pp0 = geompy.MakeVectorDXDYDZ( 1, 1, 0) - v_np0 = geompy.MakeVectorDXDYDZ(-1, 1, 0) + #v_0np = geompy.MakeVectorDXDYDZ( 0, -1, 1) + #v_p0p = geompy.MakeVectorDXDYDZ( 1, 0, 1) + #v_n0p = geompy.MakeVectorDXDYDZ(-1, 0, 1) + #v_pp0 = geompy.MakeVectorDXDYDZ( 1, 1, 0) + #v_np0 = geompy.MakeVectorDXDYDZ(-1, 1, 0) v_0n0 = geompy.MakeVectorDXDYDZ( 0, -1, 0) - pln_0pp = geompy.MakePlane(p0, v_0pp, 300) - pln_0np = geompy.MakePlane(p0, v_0np, 300) - pln_p0p = geompy.MakePlane(p0, v_p0p, 300) - pln_n0p = geompy.MakePlane(p0, v_n0p, 300) - pln_pp0 = geompy.MakePlane(p0, v_pp0, 300) - pln_np0 = geompy.MakePlane(p0, v_np0, 300) - - #part_tool_1 = geompy.MakePartition([b0, pln_0pp, pln_0np, pln_p0p, pln_n0p, pln_pp0, pln_np0], - # [], - # [], - # [b0]) - part_tool_1 = geompy.MakePartition([b0, pln_0pp, pln_0np, pln_p0p, pln_n0p, pln_pp0, pln_np0]) - - id_part_tool_1 = geompy.addToStudy(part_tool_1, "part_tool_1") - - pt_pnt_1 = geompy.MakeVertex( 55, 0, 55) - pt_pnt_2 = geompy.MakeVertex( 0, 55, 55) - pt_pnt_3 = geompy.MakeVertex(-55, 0, 55) - pt_pnt_4 = geompy.MakeVertex( 0, -55, 55) - pt_pnt_5 = geompy.MakeVertex( 55, 55, 0) - pt_pnt_6 = geompy.MakeVertex( 55, -55, 0) - pt_pnt_7 = geompy.MakeVertex(-55, 55, 0) - pt_pnt_8 = geompy.MakeVertex(-55, -55, 0) - pt_pnt_9 = geompy.MakeVertex( 55, 0, -55) - pt_pnt_10 = geompy.MakeVertex( 0, 55, -55) - pt_pnt_11 = geompy.MakeVertex(-55, 0, -55) - pt_pnt_12 = geompy.MakeVertex( 0, -55, -55) - - pt_face_1 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_1) - pt_face_2 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_2) - pt_face_3 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_3) - pt_face_4 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_4) - pt_face_5 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_5) - pt_face_6 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_6) - pt_face_7 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_7) - pt_face_8 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_8) - pt_face_9 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_9) - pt_face_10 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_10) - pt_face_11 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_11) - pt_face_12 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_12) - + #pln_0pp = geompy.MakePlane(p0, v_0pp, 300) + #pln_0np = geompy.MakePlane(p0, v_0np, 300) + #pln_p0p = geompy.MakePlane(p0, v_p0p, 300) + #pln_n0p = geompy.MakePlane(p0, v_n0p, 300) + #pln_pp0 = geompy.MakePlane(p0, v_pp0, 300) + #pln_np0 = geompy.MakePlane(p0, v_np0, 300) + # + #part_objs = [b0, pln_0pp, pln_0np, pln_p0p, pln_n0p, pln_pp0, pln_np0] + #part_tool_1 = geompy.MakePartition(part_objs, [], [], [b0]) + #part_tool_1 = geompy.MakePartition(part_objs) + # + #id_part_tool_1 = geompy.addToStudy(part_tool_1, "part_tool_1") + # + #pt_pnt_1 = geompy.MakeVertex( 55, 0, 55) + #pt_pnt_2 = geompy.MakeVertex( 0, 55, 55) + #pt_pnt_3 = geompy.MakeVertex(-55, 0, 55) + #pt_pnt_4 = geompy.MakeVertex( 0, -55, 55) + #pt_pnt_5 = geompy.MakeVertex( 55, 55, 0) + #pt_pnt_6 = geompy.MakeVertex( 55, -55, 0) + #pt_pnt_7 = geompy.MakeVertex(-55, 55, 0) + #pt_pnt_8 = geompy.MakeVertex(-55, -55, 0) + #pt_pnt_9 = geompy.MakeVertex( 55, 0, -55) + #pt_pnt_10 = geompy.MakeVertex( 0, 55, -55) + #pt_pnt_11 = geompy.MakeVertex(-55, 0, -55) + #pt_pnt_12 = geompy.MakeVertex( 0, -55, -55) + # + #pt_face_1 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_1) + #pt_face_2 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_2) + #pt_face_3 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_3) + #pt_face_4 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_4) + #pt_face_5 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_5) + #pt_face_6 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_6) + #pt_face_7 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_7) + #pt_face_8 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_8) + #pt_face_9 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_9) + #pt_face_10 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_10) + #pt_face_11 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_11) + #pt_face_12 = geompy.GetFaceNearPoint(part_tool_1, pt_pnt_12) + # #pt_box = geompy.GetBlockNearPoint(part_tool_1, p0) - - #part_tool = geompy.MakeCompound([pt_face_1, pt_face_4, pt_face_7, pt_face_10, - # pt_face_2, pt_face_5, pt_face_8, pt_face_11, - # #pt_face_3, pt_face_6, pt_face_9, pt_face_12, pt_box]) - # pt_face_3, pt_face_6, pt_face_9, pt_face_12) + # + #comp_parts = [pt_face_1, pt_face_4, pt_face_7, pt_face_10, + # pt_face_2, pt_face_5, pt_face_8, pt_face_11, + # #pt_face_3, pt_face_6, pt_face_9, pt_face_12, pt_box] + # pt_face_3, pt_face_6, pt_face_9, pt_face_12] + #part_tool = geompy.MakeCompound(comp_parts) #id_part_tool = geompy.addToStudy(part_tool, "part_tool") - + # #part = geompy.MakePartition([s0], [part_tool]) - #part = geompy.MakePartition([s0], [ pt_face_1, pt_face_4, pt_face_7, pt_face_10, - # pt_face_2, pt_face_5, pt_face_8, pt_face_11, - # pt_face_3, pt_face_6, pt_face_9, pt_face_12, b0] ) + # + #part_tools = [pt_face_1, pt_face_4, pt_face_7, pt_face_10, + # pt_face_2, pt_face_5, pt_face_8, pt_face_11, + # pt_face_3, pt_face_6, pt_face_9, pt_face_12, b0] + #part = geompy.MakePartition([s0], part_tools) p1 = geompy.MakeVertex(50, 0, 0) p2 = geompy.MakeVertex(-50, 0, 0) @@ -371,10 +388,6 @@ def TestOtherOperations (geompy, math): p5 = geompy.MakeVertex(0, 0, 50) p6 = geompy.MakeVertex(0, 0, -50) - vx = geompy.MakeVectorDXDYDZ( 1, 0, 0) - vy = geompy.MakeVectorDXDYDZ( 0, 1, 0) - vz = geompy.MakeVectorDXDYDZ( 0, 0, 1) - plnX1 = geompy.MakePlane(p1, vx, 300) plnX2 = geompy.MakePlane(p2, vx, 300) plnY1 = geompy.MakePlane(p3, vy, 300) @@ -403,7 +416,8 @@ def TestOtherOperations (geompy, math): geompy.addToStudy(freeFacesWithoutExtra, "freeFacesWithoutExtra") # GetSharedShapes - sharedFaces = geompy.GetSharedShapes(part, freeFacesWithoutExtra, geompy.ShapeType["FACE"]) + sharedFaces = geompy.GetSharedShapes(part, freeFacesWithoutExtra, + geompy.ShapeType["FACE"]) for shFace in sharedFaces: geompy.addToStudy(shFace, "sharedFace") @@ -465,12 +479,13 @@ def TestOtherOperations (geompy, math): geompy.addToStudy(edge_i, "Edge on Plane (N = (0, -1, 0) & Location = (0, -50, 0)") # GetShapesOnPlaneWithLocationIDs - edges_on_pln_ids = geompy.GetShapesOnPlaneWithLocationIDs(blocksComp, geompy.ShapeType["EDGE"], - v_0n0, Loc, geompy.GEOM.ST_ON) + edges_on_pln_ids = geompy.GetShapesOnPlaneWithLocationIDs( + blocksComp, geompy.ShapeType["EDGE"], v_0n0, Loc, geompy.GEOM.ST_ON) group_edges_on_pln = geompy.CreateGroup(blocksComp, geompy.ShapeType["EDGE"]) geompy.UnionIDs(group_edges_on_pln, edges_on_pln_ids) - geompy.addToStudy(group_edges_on_pln, "Group of edges on Plane (N = (0, -1, 0) & Location = (0, -50, 0))") - + grname = "Group of edges on Plane (N = (0, -1, 0) & Location = (0, -50, 0))" + geompy.addToStudy(group_edges_on_pln, grname) + # GetShapesOnCylinder edges_out_cyl = geompy.GetShapesOnCylinder(blocksComp, geompy.ShapeType["EDGE"], vy, 55, geompy.GEOM.ST_OUT) @@ -489,7 +504,6 @@ def TestOtherOperations (geompy, math): p0, 100, geompy.GEOM.ST_ON) for vertex_i in vertices_on_sph: geompy.addToStudy(vertex_i, "Vertex on Sphere (center = (0, 0, 0), r = 100)") - pass # GetShapesOnSphereIDs vertices_on_sph_ids = geompy.GetShapesOnSphereIDs(blocksComp, geompy.ShapeType["VERTEX"], @@ -513,13 +527,12 @@ def TestOtherOperations (geompy, math): quadrangle = geompy.MakeWire([qe1, qe2, qe3, qe4]) geompy.addToStudy(quadrangle, "Quadrangle") - edges_onin_quad = geompy.GetShapesOnQuadrangle( f12, geompy.ShapeType["EDGE"], - tl, tr, bl, br, geompy.GEOM.ST_ONIN) + edges_onin_quad = geompy.GetShapesOnQuadrangle(f12, geompy.ShapeType["EDGE"], + tl, tr, bl, br, geompy.GEOM.ST_ONIN) comp = geompy.MakeCompound(edges_onin_quad) geompy.addToStudy(comp, "Edges of F12 ONIN Quadrangle") if len( edges_onin_quad ) != 4: print "Error in GetShapesOnQuadrangle()" - pass # GetShapesOnQuadrangleIDs vertices_on_quad_ids = geompy.GetShapesOnQuadrangleIDs(f12, geompy.ShapeType["VERTEX"], @@ -528,6 +541,55 @@ def TestOtherOperations (geompy, math): geompy.UnionIDs(vertices_on_quad, vertices_on_quad_ids) geompy.addToStudy(vertices_on_quad, "Group of vertices on Quadrangle F12") + # GetShapesOnBox + edges_on_box = geompy.GetShapesOnBox(b0, part, geompy.ShapeType["EDGE"], + geompy.GEOM.ST_ON) + comp = geompy.MakeCompound(edges_on_box) + geompy.addToStudy(comp, "Edges of part ON box b0") + if len( edges_on_box ) != 12: + print "Error in GetShapesOnBox()" + + # GetShapesOnBoxIDs + faces_on_box_ids = geompy.GetShapesOnBoxIDs(b0, part, geompy.ShapeType["FACE"], + geompy.GEOM.ST_ON) + faces_on_box = geompy.CreateGroup(part, geompy.ShapeType["FACE"]) + geompy.UnionIDs(faces_on_box, faces_on_box_ids) + geompy.addToStudyInFather(part, faces_on_box, "Group of faces on box b0") + + # Prepare arguments for GetShapesOnShape + sph1 = geompy.MakeSphere(50, 50, 50, 40) + sph2 = geompy.MakeSphere(50, 50, -50, 40) + pcyl = geompy.MakeVertex(50, 50, -50) + cyli = geompy.MakeCylinder(pcyl, vz, 40, 100) + fuse = geompy.MakeFuse(sph1, cyli) + fuse = geompy.MakeFuse(fuse, sph2) + # As after Fuse we have a compound, we need to obtain a solid from it + shsh = geompy.SubShapeAll(fuse, geompy.ShapeType["SOLID"]) + sh_1 = shsh[0] + geompy.addToStudy(sh_1, "sh_1") + + # GetShapesOnShape + faces_in_sh = geompy.GetShapesOnShape(sh_1, part, geompy.ShapeType["FACE"], + geompy.GEOM.ST_IN) + comp = geompy.MakeCompound(faces_in_sh) + geompy.addToStudy(comp, "Faces of part IN shape sh_1") + if len(faces_in_sh) != 11: + print "Error in GetShapesOnShape()" + + # GetShapesOnShapeAsCompound + faces_in_sh_c = geompy.GetShapesOnShapeAsCompound(sh_1, part, geompy.ShapeType["FACE"], + geompy.GEOM.ST_IN) + geompy.addToStudy(faces_in_sh_c, "Faces of part IN shape sh_1 (as compound)") + + # GetShapesOnShapeIDs + edges_in_sh_ids = geompy.GetShapesOnShapeIDs(sh_1, part, geompy.ShapeType["EDGE"], + geompy.GEOM.ST_IN) + edges_in_sh = geompy.CreateGroup(part, geompy.ShapeType["EDGE"]) + geompy.UnionIDs(edges_in_sh, edges_in_sh_ids) + geompy.addToStudyInFather(part, edges_in_sh, "Group of edges in shape sh_1") + if len(edges_in_sh_ids) != 15: + print "Error in GetShapesOnShapeIDs()" + # Prepare arguments for GetInPlace and GetInPlaceByHistory box5 = geompy.MakeBoxDXDYDZ(100, 100, 100) box6 = geompy.MakeTranslation(box5, 50, 50, 0) @@ -541,15 +603,9 @@ def TestOtherOperations (geompy, math): box5_faces = geompy.SubShapeAll(box5, geompy.ShapeType["FACE"]) box6_faces = geompy.SubShapeAll(box6, geompy.ShapeType["FACE"]) - ifa = 1 - for aface in box5_faces: - geompy.addToStudyInFather(box5, aface, "Face" + `ifa`) - ifa = ifa + 1 - - ifa = 1 - for aface in box6_faces: - geompy.addToStudyInFather(box6, aface, "Face" + `ifa`) - ifa = ifa + 1 + for ifa in range(6): + geompy.addToStudyInFather(box5, box5_faces[ifa], "Face" + `ifa + 1`) + geompy.addToStudyInFather(box6, box6_faces[ifa], "Face" + `ifa + 1`) # GetInPlace(theShapeWhere, theShapeWhat) ibb = 5 @@ -557,19 +613,17 @@ def TestOtherOperations (geompy, math): for afaces in faces_list: ifa = 1 for aface in afaces: + refl_box_face = geompy.GetInPlace(part, aface) if ibb == 6 and (ifa == 2 or ifa == 4): - # use IDL interface directly to avoid error message appearence in Python console - refl_box_face = geompy.ShapesOp.GetInPlace(part, aface) + # For two faces of the tool box + # there is no reflection in the result. if refl_box_face is not None: - geompy.addToStudyInFather(part, refl_box_face, - "Reflection of face " + `ifa` + " of box " + `ibb`) - error = "Result of GetInPlace must be NULL for face " + `ifa` + " of box " + `ibb` + error = "Result of GetInPlace must be NULL for face " + error += `ifa` + " of box " + `ibb` raise RuntimeError, error else: - # use geompy interface - refl_box_face = geompy.GetInPlace(part, aface) - geompy.addToStudyInFather(part, refl_box_face, - "Reflection of face " + `ifa` + " of box " + `ibb`) + ssname = "Reflection of face " + `ifa` + " of box " + `ibb` + geompy.addToStudyInFather(part, refl_box_face, ssname) ifa = ifa + 1 ibb = ibb + 1 @@ -582,18 +636,20 @@ def TestOtherOperations (geompy, math): for afaces in faces_list: ifa = 1 for aface in afaces: + ssname = "Reflection of face " + `ifa` + " of box " + `ibb` + " (by history)" if ibb == 6 and (ifa == 2 or ifa == 4): # use IDL interface directly to avoid error message appearence in Python console refl_box_face = geompy.ShapesOp.GetInPlaceByHistory(part, aface) if refl_box_face is not None: - geompy.addToStudyInFather(part, refl_box_face, - "Reflection of face " + `ifa` + " of box " + `ibb` + " (by history)") - error = "Result of GetInPlaceByHistory must be NULL for face " + `ifa` + " of box " + `ibb` + geompy.addToStudyInFather(part, refl_box_face, ssname) + error = "Result of GetInPlaceByHistory must be NULL for face " + error += `ifa` + " of box " + `ibb` raise RuntimeError, error else: # use geompy interface refl_box_face = geompy.GetInPlaceByHistory(part, aface) - geompy.addToStudyInFather(part, refl_box_face, - "Reflection of face " + `ifa` + " of box " + `ibb` + " (by history)") + geompy.addToStudyInFather(part, refl_box_face, ssname) ifa = ifa + 1 ibb = ibb + 1 + +#END diff --git a/src/GEOM_SWIG/GEOM_blocks.py b/src/GEOM_SWIG/GEOM_blocks.py index 6155e2971..99be53789 100644 --- a/src/GEOM_SWIG/GEOM_blocks.py +++ b/src/GEOM_SWIG/GEOM_blocks.py @@ -1,6 +1,7 @@ -# GEOM GEOM_SWIG : binding of C++ implementaion with Python +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 CEA +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -16,15 +17,14 @@ # 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 -# -# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # +# GEOM GEOM_SWIG : binding of C++ implementaion with Python # File : GEOM_blocks.py # Author : Julia DOROVSKIKH # Module : GEOM # $Header$ - +# import salome import geompy import math diff --git a/src/GEOM_SWIG/GEOM_cyl2complementary.py b/src/GEOM_SWIG/GEOM_cyl2complementary.py index fd979913d..7a28cfe4b 100755 --- a/src/GEOM_SWIG/GEOM_cyl2complementary.py +++ b/src/GEOM_SWIG/GEOM_cyl2complementary.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,7 +17,7 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # #============================================================================== # Info. @@ -24,10 +26,9 @@ # Author : Kovaltchuk Alexey # Project : PAL/SALOME #============================================================================== - # Import # ------ - +# import salome import geompy geomgui = salome.ImportComponentGUI("GEOM") diff --git a/src/GEOM_SWIG/GEOM_example.py b/src/GEOM_SWIG/GEOM_example.py index 121419496..d5f2463a2 100644 --- a/src/GEOM_SWIG/GEOM_example.py +++ b/src/GEOM_SWIG/GEOM_example.py @@ -1,31 +1,30 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM GEOM_SWIG : binding of C++ omplementaion with Python -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : GEOM_example.py # Author : Paul RASCLE, EDF # Module : GEOM # $Header$ - +# import salome import geompy diff --git a/src/GEOM_SWIG/GEOM_example2.py b/src/GEOM_SWIG/GEOM_example2.py index 5b57a7078..000623295 100644 --- a/src/GEOM_SWIG/GEOM_example2.py +++ b/src/GEOM_SWIG/GEOM_example2.py @@ -1,31 +1,30 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM GEOM_SWIG : binding of C++ omplementaion with Python -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : GEOM_example2.py # Author : Paul RASCLE, EDF # Module : GEOM # $Header$ - +# import salome import geompy import math diff --git a/src/GEOM_SWIG/GEOM_example3.py b/src/GEOM_SWIG/GEOM_example3.py index 4e0dbd1bc..3c5bd0498 100644 --- a/src/GEOM_SWIG/GEOM_example3.py +++ b/src/GEOM_SWIG/GEOM_example3.py @@ -1,31 +1,30 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM GEOM_SWIG : binding of C++ omplementaion with Python -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : GEOM_example3.py # Author : Paul RASCLE, EDF # Module : GEOM # $Header$ - +# import salome import geompy import math diff --git a/src/GEOM_SWIG/GEOM_example4.py b/src/GEOM_SWIG/GEOM_example4.py index cc8d82941..4406bd81d 100755 --- a/src/GEOM_SWIG/GEOM_example4.py +++ b/src/GEOM_SWIG/GEOM_example4.py @@ -1,31 +1,30 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM GEOM_SWIG : binding of C++ omplementaion with Python -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : GEOM_example4.py # Module : GEOM - #import SMESH #import smeshpy +# import salome from salome import sg import math diff --git a/src/GEOM_SWIG/GEOM_example5.py b/src/GEOM_SWIG/GEOM_example5.py index 035d9a956..9edda83e1 100644 --- a/src/GEOM_SWIG/GEOM_example5.py +++ b/src/GEOM_SWIG/GEOM_example5.py @@ -1,31 +1,30 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM GEOM_SWIG : binding of C++ omplementaion with Python -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : GEOM_example5.py # Author : Damien COQUERET, Open CASCADE # Module : GEOM # $Header$ - +# import salome import geompy diff --git a/src/GEOM_SWIG/GEOM_example6.py b/src/GEOM_SWIG/GEOM_example6.py index 91c373981..904d4b897 100755 --- a/src/GEOM_SWIG/GEOM_example6.py +++ b/src/GEOM_SWIG/GEOM_example6.py @@ -1,30 +1,30 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM GEOM_SWIG : binding of C++ omplementaion with Python -# -# Copyright (C) 2003 CEA -# -# 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 : GEOM_example6.py # Author : Dmitry MATVEITCHEV # Module : GEOM # $Header$ - - +# import salome import geompy diff --git a/src/GEOM_SWIG/GEOM_moteur.py b/src/GEOM_SWIG/GEOM_moteur.py index 23ad1aeda..22a6bd88c 100644 --- a/src/GEOM_SWIG/GEOM_moteur.py +++ b/src/GEOM_SWIG/GEOM_moteur.py @@ -1,6 +1,6 @@ -# GEOM GEOM_SWIG : binding of C++ omplementaion with Python +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -17,15 +17,14 @@ # 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 -# -# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # +# GEOM GEOM_SWIG : binding of C++ omplementaion with Python # File : GEOM_moteur.py # Author : Damien COQUERET, Open CASCADE # Module : GEOM # $Header$ - +# import salome import geompy import math diff --git a/src/GEOM_SWIG/GEOM_shared_modules.py b/src/GEOM_SWIG/GEOM_shared_modules.py index 1c05517c4..2bd68bcb2 100644 --- a/src/GEOM_SWIG/GEOM_shared_modules.py +++ b/src/GEOM_SWIG/GEOM_shared_modules.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,7 +17,7 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # """ diff --git a/src/GEOM_SWIG/GEOM_shellSolid.py b/src/GEOM_SWIG/GEOM_shellSolid.py index b3c1daffd..5ea176206 100755 --- a/src/GEOM_SWIG/GEOM_shellSolid.py +++ b/src/GEOM_SWIG/GEOM_shellSolid.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,7 +17,7 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # #============================================================================== # Info. @@ -24,10 +26,9 @@ # Author : Kovaltchuk Alexey # Project : PAL/SALOME #============================================================================== - # Imports # ------- - +# import salome import SALOMEDS diff --git a/src/GEOM_SWIG/GEOM_tube_geom.py b/src/GEOM_SWIG/GEOM_tube_geom.py index c3034ffaf..1e2d91689 100755 --- a/src/GEOM_SWIG/GEOM_tube_geom.py +++ b/src/GEOM_SWIG/GEOM_tube_geom.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,7 +17,7 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # #============================================================================== # Info. @@ -24,7 +26,6 @@ # Author : Kovaltchuk Alexey # Project : PAL/SALOME #============================================================================== -# # Geometrie du cas test # import salome diff --git a/src/GEOM_SWIG/GEOM_tube_geom_gg2.py b/src/GEOM_SWIG/GEOM_tube_geom_gg2.py index 9c1f2ce01..6cc90f3c0 100755 --- a/src/GEOM_SWIG/GEOM_tube_geom_gg2.py +++ b/src/GEOM_SWIG/GEOM_tube_geom_gg2.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,7 +17,7 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # #============================================================================== # Info. @@ -24,10 +26,8 @@ # Author : Kovaltchuk Alexey # Project : PAL/SALOME #============================================================================== -# # Geometrie du cas test # - from geompy import * import salome # diff --git a/src/GEOM_SWIG/GEOM_usinggeom.py b/src/GEOM_SWIG/GEOM_usinggeom.py index b49d22d11..14d98ed37 100644 --- a/src/GEOM_SWIG/GEOM_usinggeom.py +++ b/src/GEOM_SWIG/GEOM_usinggeom.py @@ -1,6 +1,6 @@ -# GEOM GEOM_SWIG : binding of C++ omplementaion with Python +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -17,15 +17,14 @@ # 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 -# -# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # +# GEOM GEOM_SWIG : binding of C++ omplementaion with Python # File : GEOM_usinggeom.py # Author : Damien COQUERET, Open CASCADE # Module : GEOM # $Header$ - +# import geompy import math diff --git a/src/GEOM_SWIG/Makefile.am b/src/GEOM_SWIG/Makefile.am index 040d500ce..3b7c921fb 100644 --- a/src/GEOM_SWIG/Makefile.am +++ b/src/GEOM_SWIG/Makefile.am @@ -1,6 +1,6 @@ -# GEOM GEOM_SWIG : binding of C++ omplementaion with Python +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -19,64 +19,58 @@ # # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # -# -# +# GEOM GEOM_SWIG : binding of C++ omplementaion with Python # File : Makefile.in # Author : Nicolas REJNERI, Paul RASCLE # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM -# $Header$ # Libraries targets - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am - -EXPORT_SHAREDPYSCRIPTS=\ - GEOM_shared_modules.py - -# # =============================================================== # Files to be installed # =============================================================== # # Scripts to be installed. -dist_salomescript_DATA= \ - geompy.py \ - geompyDC.py \ - batchmode_geompy.py \ - GEOM_Spanner.py \ - GEOM_blocks.py \ - GEOM_example.py \ - GEOM_example2.py \ - GEOM_example3.py \ - GEOM_example4.py \ - GEOM_example5.py \ - GEOM_example6.py \ - GEOM_moteur.py \ - GEOM_TestAll.py \ - GEOM_TestOthers.py \ - GEOM_TestHealing.py \ - GEOM_TestMeasures.py \ - GEOM_usinggeom.py \ - GEOM_Partition1.py \ - GEOM_Partition2.py \ - GEOM_Partition3.py \ - GEOM_Partition4.py \ - GEOM_Partition5.py \ - GEOM_cyl2complementary.py \ - GEOM_shellSolid.py \ - GEOM_tube_geom.py \ - GEOM_tube_geom_gg2.py \ - GEOM_Nut.py \ - GEOM_Sketcher.py \ - PAL_MESH_019_020_geometry.py \ - PAL_MESH_028_geometry.py \ - PAL_MESH_030_geometry.py \ - PAL_MESH_033_geometry.py \ +dist_salomescript_DATA = \ + geompy.py \ + geompyDC.py \ + batchmode_geompy.py \ + GEOM_Spanner.py \ + GEOM_blocks.py \ + GEOM_example.py \ + GEOM_example2.py \ + GEOM_example3.py \ + GEOM_example4.py \ + GEOM_example5.py \ + GEOM_example6.py \ + GEOM_moteur.py \ + GEOM_TestAll.py \ + GEOM_TestOthers.py \ + GEOM_TestHealing.py \ + GEOM_TestMeasures.py \ + GEOM_usinggeom.py \ + GEOM_Partition1.py \ + GEOM_Partition2.py \ + GEOM_Partition3.py \ + GEOM_Partition4.py \ + GEOM_Partition5.py \ + GEOM_cyl2complementary.py \ + GEOM_shellSolid.py \ + GEOM_tube_geom.py \ + GEOM_tube_geom_gg2.py \ + GEOM_Nut.py \ + GEOM_Sketcher.py \ + GEOM_ObjectInfo.py \ + PAL_MESH_019_020_geometry.py \ + PAL_MESH_028_geometry.py \ + PAL_MESH_030_geometry.py \ + PAL_MESH_033_geometry.py \ PAL_MESH_035_geometry.py -sharedpkgpython_PYTHON = \ +sharedpkgpython_PYTHON = \ GEOM_shared_modules.py diff --git a/src/GEOM_SWIG/PAL_MESH_019_020_geometry.py b/src/GEOM_SWIG/PAL_MESH_019_020_geometry.py index 46b7ecabf..e2e5667d4 100755 --- a/src/GEOM_SWIG/PAL_MESH_019_020_geometry.py +++ b/src/GEOM_SWIG/PAL_MESH_019_020_geometry.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,14 +17,14 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # ##################################################################################### #Created :17/02/2005 #Auhtor :KOVALTCHUK Alexey #GUI test scenario :PAL-MESH-019 (geometry part), PAL-MESH-020 (geometry part) ##################################################################################### - +# import geompy import salome diff --git a/src/GEOM_SWIG/PAL_MESH_028_geometry.py b/src/GEOM_SWIG/PAL_MESH_028_geometry.py index 6063695c3..0c52a7e94 100755 --- a/src/GEOM_SWIG/PAL_MESH_028_geometry.py +++ b/src/GEOM_SWIG/PAL_MESH_028_geometry.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,14 +17,14 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # ##################################################################### #Created :17/02/2005 #Auhtor :KOVALTCHUK Alexey #GUI test scenario :PAL-MESH-028 (geometry part) ##################################################################### - +# import geompy import salome import os diff --git a/src/GEOM_SWIG/PAL_MESH_030_geometry.py b/src/GEOM_SWIG/PAL_MESH_030_geometry.py index de0c447fe..e8503a489 100755 --- a/src/GEOM_SWIG/PAL_MESH_030_geometry.py +++ b/src/GEOM_SWIG/PAL_MESH_030_geometry.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,14 +17,14 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # #============================================================================== # Created : 17/02/2005 # Author : Alexander KOVALEV # GUI test scenario : PAL-MESH-030_geometry #============================================================================== - +# import salome import geompy diff --git a/src/GEOM_SWIG/PAL_MESH_033_geometry.py b/src/GEOM_SWIG/PAL_MESH_033_geometry.py index e4c4e3541..06f3dfeb5 100755 --- a/src/GEOM_SWIG/PAL_MESH_033_geometry.py +++ b/src/GEOM_SWIG/PAL_MESH_033_geometry.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,14 +17,14 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # ##################################################################### #Created :17/02/2005 #Auhtor :KOVALTCHUK Alexey #GUI test scenario :PAL-MESH-033 (geometry part) ##################################################################### - +# import geompy import salome diff --git a/src/GEOM_SWIG/PAL_MESH_035_geometry.py b/src/GEOM_SWIG/PAL_MESH_035_geometry.py index d79f21c9a..615d41bad 100755 --- a/src/GEOM_SWIG/PAL_MESH_035_geometry.py +++ b/src/GEOM_SWIG/PAL_MESH_035_geometry.py @@ -1,4 +1,6 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -15,14 +17,14 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # ##################################################################### #Created :15/02/2005 #Auhtor :KOVALTCHUK Alexey #GUI test scenario :PAL-MESH-035 (geometry part) ##################################################################### - +# import geompy import salome diff --git a/src/GEOM_SWIG/batchmode_geompy.py b/src/GEOM_SWIG/batchmode_geompy.py index 3ca8d022f..181f5f34f 100644 --- a/src/GEOM_SWIG/batchmode_geompy.py +++ b/src/GEOM_SWIG/batchmode_geompy.py @@ -1,6 +1,6 @@ -# GEOM GEOM_SWIG : binding of C++ omplementaion with Python +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -17,1277 +17,13 @@ # 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 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # -# -# -# File : geompy.py +# GEOM GEOM_SWIG : binding of C++ omplementaion with Python +# File : batchmode_geompy.py # Author : Paul RASCLE, EDF # Module : GEOM # $Header$ - -from batchmode_salome import * -import GEOM - -g=None -step = 0 -sleeping_time = 0.01 -sleeping_time_max = 1.0 -while 1: - g = lcc.FindOrLoadComponent("FactoryServer", "GEOM") - if g is not None: break - step = step + 1 - if step > 100: break - time.sleep(sleeping_time) - sleeping_time = max(sleeping_time_max, 2*sleeping_time) - pass -geom = g._narrow( GEOM.GEOM_Gen ) - -myBuilder = None -myStudyId = 0 -father = None - -BasicOp = None -CurvesOp = None -PrimOp = None -ShapesOp = None -HealOp = None -InsertOp = None -BoolOp = None -TrsfOp = None -LocalOp = None -MeasuOp = None -BlocksOp = None -GroupOp = None - -def init_geom(theStudy): - - global myStudy, myBuilder, myStudyId, BasicOp, CurvesOp, PrimOp, ShapesOp, HealOp - global InsertOp, BoolOp, TrsfOp, LocalOp, MeasuOp, BlocksOp, GroupOp, father - - myStudy = theStudy - myStudyId = myStudy._get_StudyId() - myBuilder = myStudy.NewBuilder() - father = myStudy.FindComponent("GEOM") - if father is None: - father = myBuilder.NewComponent("GEOM") - A1 = myBuilder.FindOrCreateAttribute(father, "AttributeName") - FName = A1._narrow(SALOMEDS.AttributeName) - FName.SetValue("Geometry") - A2 = myBuilder.FindOrCreateAttribute(father, "AttributePixMap") - aPixmap = A2._narrow(SALOMEDS.AttributePixMap) - aPixmap.SetPixMap("ICON_OBJBROWSER_Geometry") - myBuilder.DefineComponentInstance(father,geom) - pass - - # ----------------------------------------------------------------------------- - # Assign Operations Interfaces - # ----------------------------------------------------------------------------- - - BasicOp = geom.GetIBasicOperations (myStudyId) - CurvesOp = geom.GetICurvesOperations (myStudyId) - PrimOp = geom.GetI3DPrimOperations (myStudyId) - ShapesOp = geom.GetIShapesOperations (myStudyId) - HealOp = geom.GetIHealingOperations (myStudyId) - InsertOp = geom.GetIInsertOperations (myStudyId) - BoolOp = geom.GetIBooleanOperations (myStudyId) - TrsfOp = geom.GetITransformOperations(myStudyId) - LocalOp = geom.GetILocalOperations (myStudyId) - MeasuOp = geom.GetIMeasureOperations (myStudyId) - BlocksOp = geom.GetIBlocksOperations (myStudyId) - GroupOp = geom.GetIGroupOperations (myStudyId) - pass - -init_geom(myStudy) - -# * Get name for sub-shape aSubObj of shape aMainObj +# From Salome version 3.2.0 geompy package suits for work in batch mode # -def SubShapeName(aSubObj, aMainObj): - name = "SubShape" - print name - return name - -# * Publish in study aShape with name aName -# -def addToStudy(aShape, aName): - try: - aSObject = geom.AddInStudy(myStudy, aShape, aName, None) - except: - print "addToStudy() failed" - return "" - return aShape.GetStudyEntry() - -# * Publish in study aShape with name aName as sub-object of previously published aFather -# -def addToStudyInFather(aFather, aShape, aName): - try: - aSObject = geom.AddInStudy(myStudy, aShape, aName, aFather) - except: - print "addToStudyInFather() failed" - return "" - return aShape.GetStudyEntry() - -# ----------------------------------------------------------------------------- -# enumeration ShapeType as a dictionary -# ----------------------------------------------------------------------------- - -ShapeType = {"COMPOUND":0, "COMPSOLID":1, "SOLID":2, "SHELL":3, "FACE":4, "WIRE":5, "EDGE":6, "VERTEX":7, "SHAPE":8} - -# ----------------------------------------------------------------------------- -# Basic primitives -# ----------------------------------------------------------------------------- - -def MakeVertex(theX, theY, theZ): - anObj = BasicOp.MakePointXYZ(theX, theY, theZ) - if BasicOp.IsDone() == 0: - print "MakePointXYZ : ", BasicOp.GetErrorCode() - return anObj - -def MakeVertexWithRef(vertex,x,y,z): - anObj = BasicOp.MakePointWithReference(vertex,x,y,z) - if BasicOp.IsDone() == 0: - print "MakePointWithReference : ", BasicOp.GetErrorCode() - return anObj - -def MakeVertexOnCurve(curve,par): - anObj = BasicOp.MakePointOnCurve(curve,par) - if BasicOp.IsDone() == 0: - print "MakePointOnCurve : ", BasicOp.GetErrorCode() - return anObj - -def MakeVertexOnLinesIntersection(line1,line2): - anObj = BasicOp.MakePointOnLinesIntersection(line1,line2) - if BasicOp.IsDone() == 0: - print "MakePointOnLinesIntersection : ", BasicOp.GetErrorCode() - return anObj - -def MakeVectorDXDYDZ(dx,dy,dz): - anObj = BasicOp.MakeVectorDXDYDZ(dx,dy,dz) - if BasicOp.IsDone() == 0: - print "MakeVectorDXDYDZ : ", BasicOp.GetErrorCode() - return anObj - -def MakeVector(p1,p2): - anObj = BasicOp.MakeVectorTwoPnt(p1, p2) - if BasicOp.IsDone() == 0: - print "MakeVectorTwoPnt : ", BasicOp.GetErrorCode() - return anObj - -def MakeLine(p1, d1): - anObj = BasicOp.MakeLine(p1,d1) - if BasicOp.IsDone() == 0: - print "MakeLine : ", BasicOp.GetErrorCode() - return anObj - -def MakeLineTwoPnt(p1, p2): - anObj = BasicOp.MakeLineTwoPnt(p1,p2) - if BasicOp.IsDone() == 0: - print "MakeLineTwoPnt : ", BasicOp.GetErrorCode() - return anObj - -def MakeLineTwoFaces(f1, f2): - anObj = BasicOp.MakeLineTwoFaces(f1,f2) - if BasicOp.IsDone() == 0: - print "MakeLineTwoFaces : ", BasicOp.GetErrorCode() - return anObj - -def MakePlane(p1,v1,trimsize): - anObj = BasicOp.MakePlanePntVec(p1,v1,trimsize) - if BasicOp.IsDone() == 0: - print "MakePlanePntVec : ", BasicOp.GetErrorCode() - return anObj - -def MakePlaneThreePnt(p1,p2,p3,trimsize): - anObj = BasicOp.MakePlaneThreePnt(p1,p2,p3,trimsize) - if BasicOp.IsDone() == 0: - print "MakePlaneThreePnt : ", BasicOp.GetErrorCode() - return anObj - -def MakePlaneFace(face,trimsize): - anObj = BasicOp.MakePlaneFace(face,trimsize) - if BasicOp.IsDone() == 0: - print "MakePlaneFace : ", BasicOp.GetErrorCode() - return anObj - -def MakeMarker(OX,OY,OZ, XDX,XDY,XDZ, YDX,YDY,YDZ): - anObj = BasicOp.MakeMarker(OX,OY,OZ, XDX,XDY,XDZ, YDX,YDY,YDZ) - if BasicOp.IsDone() == 0: - print "MakeMarker : ", BasicOp.GetErrorCode() - return anObj - -def MakeMarkerPntTwoVec(theOrigin, theXVec, theYVec): - """ - * Create a local coordinate system. - * \param theOrigin Point of coordinate system origin. - * \param theXVec Vector of X direction - * \param theYVec Vector of Y direction - * \return New GEOM_Object, containing the created coordinate system. - """ - O = PointCoordinates( theOrigin ) - OXOY = [] - for vec in [ theXVec, theYVec ]: - v1, v2 = SubShapeAll( vec, ShapeType["VERTEX"] ) - p1 = PointCoordinates( v1 ) - p2 = PointCoordinates( v2 ) - for i in range( 0, 3 ): - OXOY.append( p2[i] - p1[i] ) - # - anObj = BasicOp.MakeMarker( O[0], O[1], O[2], - OXOY[0], OXOY[1], OXOY[2], - OXOY[3], OXOY[4], OXOY[5], ) - if BasicOp.IsDone() == 0: - print "MakeMarker : ", BasicOp.GetErrorCode() - return anObj - -# ----------------------------------------------------------------------------- -# Curves -# ----------------------------------------------------------------------------- - -def MakeArc(p1,p2,p3): - anObj = CurvesOp.MakeArc(p1,p2,p3) - if CurvesOp.IsDone() == 0: - print "MakeArc : ", CurvesOp.GetErrorCode() - return anObj - -def MakeCircle(p1,v1,radius): - anObj = CurvesOp.MakeCirclePntVecR(p1,v1,radius) - if CurvesOp.IsDone() == 0: - print "MakeCirclePntVecR : ", CurvesOp.GetErrorCode() - return anObj - -def MakeCircleThreePnt(p1,p2,p3): - anObj = CurvesOp.MakeCircleThreePnt(p1,p2,p3) - if CurvesOp.IsDone() == 0: - print "MakeCircleThreePnt : ", CurvesOp.GetErrorCode() - return anObj - -def MakeCircleCenter2Pnt(p1,p2,p3): - anObj = CurvesOp.MakeCircleCenter2Pnt(p1,p2,p3) - if CurvesOp.IsDone() == 0: - print "MakeCircleCenter2Pnt : ", CurvesOp.GetErrorCode() - return anObj - -def MakeEllipse(p1,v1,radiusMaj,radiusMin): - anObj = CurvesOp.MakeEllipse(p1,v1,radiusMaj, radiusMin) - if CurvesOp.IsDone() == 0: - print "MakeEllipse : ", CurvesOp.GetErrorCode() - return anObj - -def MakePolyline(ListShape): - anObj = CurvesOp.MakePolyline(ListShape) - if CurvesOp.IsDone() == 0: - print "MakePolyline : ", CurvesOp.GetErrorCode() - return anObj - -def MakeBezier(ListShape): - anObj = CurvesOp.MakeSplineBezier(ListShape) - if CurvesOp.IsDone() == 0: - print "MakeSplineBezier : ", CurvesOp.GetErrorCode() - return anObj - -def MakeInterpol(ListShape): - anObj = CurvesOp.MakeSplineInterpolation(ListShape) - if CurvesOp.IsDone() == 0: - print "MakeSplineInterpolation : ", CurvesOp.GetErrorCode() - return anObj - -# : Nine double values, defining origin, -# OZ and OX directions of the working plane. -def MakeSketcher(Cmd, WPL = [0,0,0, 0,0,1, 1,0,0]): - anObj = CurvesOp.MakeSketcher(Cmd, WPL) - if CurvesOp.IsDone() == 0: - print "MakeSketcher : ", CurvesOp.GetErrorCode() - return anObj - -def MakeSketcherOnPlane(theCommand, theWorkingPlane): - """ - * Create a sketcher (wire or face), following the textual description, - * passed through \a theCommand argument. \n - * For format of the description string see the previous method.\n - * \param theCommand String, defining the sketcher in local - * coordinates of the working plane. - * \param theWorkingPlane Planar Face of the working plane. - * \return New GEOM_Object, containing the created wire. - """ - anObj = CurvesOp.MakeSketcherOnPlane(theCommand, theWorkingPlane) - if CurvesOp.IsDone() == 0: - print "MakeSketcher : ", CurvesOp.GetErrorCode() - return anObj - -# ----------------------------------------------------------------------------- -# Create 3D Primitives -# ----------------------------------------------------------------------------- - -def MakeBox(x1,y1,z1,x2,y2,z2): - pnt1 = MakeVertex(x1,y1,z1) - pnt2 = MakeVertex(x2,y2,z2) - return MakeBoxTwoPnt(pnt1,pnt2) - -def MakeBoxDXDYDZ(dx,dy,dz): - anObj = PrimOp.MakeBoxDXDYDZ(dx,dy,dz) - if PrimOp.IsDone() == 0: - print "MakeBoxDXDYDZ : ", PrimOp.GetErrorCode() - return anObj - -def MakeBoxTwoPnt(point1, point2): - anObj = PrimOp.MakeBoxTwoPnt(point1, point2) - if PrimOp.IsDone() == 0: - print "MakeBoxTwoPnt : ", PrimOp.GetErrorCode() - return anObj - -def MakeCylinder(p1,v1,radius,height): - anObj = PrimOp.MakeCylinderPntVecRH(p1,v1,radius,height) - if PrimOp.IsDone() == 0: - print "MakeCylinderPntVecRH : ", PrimOp.GetErrorCode() - return anObj - -def MakeCylinderRH(radius,height): - anObj = PrimOp.MakeCylinderRH(radius,height) - if PrimOp.IsDone() == 0: - print "MakeCylinderRH : ", PrimOp.GetErrorCode() - return anObj - -def MakeSpherePntR(point,radius): - anObj = PrimOp.MakeSpherePntR(point,radius) - if PrimOp.IsDone() == 0: - print "MakeSpherePntR : ", PrimOp.GetErrorCode() - return anObj - -def MakeSphere(x,y,z,radius): - point = MakeVertex(x,y,z) - anObj = MakeSpherePntR(point,radius) - return anObj - -def MakeSphereR(radius): - anObj = PrimOp.MakeSphereR(radius) - if PrimOp.IsDone() == 0: - print "MakeSphereR : ", PrimOp.GetErrorCode() - return anObj - -def MakeCone(p1,v1,radius1,radius2,height): - anObj = PrimOp.MakeConePntVecR1R2H(p1,v1,radius1,radius2,height) - if PrimOp.IsDone() == 0: - print "MakeConePntVecR1R2H : ", PrimOp.GetErrorCode() - return anObj - -def MakeConeR1R2H(radius1,radius2,height): - anObj = PrimOp.MakeConeR1R2H(radius1,radius2,height) - if PrimOp.IsDone() == 0: - print "MakeConeR1R2H : ", PrimOp.GetErrorCode() - return anObj - -def MakeTorus(p1,v1,major_radius,minor_radius): - anObj = PrimOp.MakeTorusPntVecRR(p1,v1,major_radius,minor_radius) - if PrimOp.IsDone() == 0: - print "MakeTorusPntVecRR : ", PrimOp.GetErrorCode() - return anObj - -def MakeTorusRR(major_radius,minor_radius): - anObj = PrimOp.MakeTorusRR(major_radius,minor_radius) - if PrimOp.IsDone() == 0: - print "MakeTorusRR : ", PrimOp.GetErrorCode() - return anObj - -def MakePrism(baseShape,point1,point2): - anObj = PrimOp.MakePrismTwoPnt(baseShape,point1,point2) - if PrimOp.IsDone() == 0: - print "MakePrismTwoPnt : ", PrimOp.GetErrorCode() - return anObj - -def MakePrism2Ways(baseShape,point1,point2): - anObj = PrimOp.MakePrismTwoPnt2Ways(baseShape,point1,point2) - if PrimOp.IsDone() == 0: - print "MakePrismTwoPnt2Ways : ", PrimOp.GetErrorCode() - return anObj - -def MakePrismVecH(baseShape,vector,height): - anObj = PrimOp.MakePrismVecH(baseShape,vector,height) - if PrimOp.IsDone() == 0: - print "MakePrismVecH : ", PrimOp.GetErrorCode() - return anObj - -def MakePrismVecH2Ways(baseShape,vector,height): - anObj = PrimOp.MakePrismVecH2Ways(baseShape,vector,height) - if PrimOp.IsDone() == 0: - print "MakePrismVecH2Ways : ", PrimOp.GetErrorCode() - return anObj - -def MakePipe(baseShape,pathShape): - anObj = PrimOp.MakePipe(baseShape,pathShape) - if PrimOp.IsDone() == 0: - print "MakePipe : ", PrimOp.GetErrorCode() - return anObj - -def MakeRevolution(aShape,axis,angle): - anObj = PrimOp.MakeRevolutionAxisAngle(aShape,axis,angle) - if PrimOp.IsDone() == 0: - print "MakeRevolutionAxisAngle : ", PrimOp.GetErrorCode() - return anObj - -def MakeRevolution2Ways(aShape,axis,angle): - anObj = PrimOp.MakeRevolutionAxisAngle2Ways(aShape,axis,angle) - if PrimOp.IsDone() == 0: - print "MakeRevolutionAxisAngle2Ways : ", PrimOp.GetErrorCode() - return anObj - -# ----------------------------------------------------------------------------- -# Create base shapes -# ----------------------------------------------------------------------------- - -def MakeEdge(p1,p2): - anObj = ShapesOp.MakeEdge(p1,p2) - if ShapesOp.IsDone() == 0: - print "MakeEdge : ", ShapesOp.GetErrorCode() - return anObj - -def MakeWire(ListShape): - anObj = ShapesOp.MakeWire(ListShape) - if ShapesOp.IsDone() == 0: - print "MakeWire : ", ShapesOp.GetErrorCode() - return anObj - -def MakeFace(aShapeWire,WantPlanarFace): - anObj = ShapesOp.MakeFace(aShapeWire,WantPlanarFace) - if ShapesOp.IsDone() == 0: - print "MakeFace : ", ShapesOp.GetErrorCode() - return anObj - -def MakeFaceWires(ListWires,WantPlanarFace): - anObj = ShapesOp.MakeFaceWires(ListWires,WantPlanarFace) - if ShapesOp.IsDone() == 0: - print "MakeFaceWires : ", ShapesOp.GetErrorCode() - return anObj - -def MakeFaces(ListWires,WantPlanarFace): - anObj = MakeFaceWires(ListWires,WantPlanarFace) - return anObj - -def MakeShell(ListOfShapes): - anObj = ShapesOp.MakeShell(ListOfShapes) - if ShapesOp.IsDone() == 0: - print "MakeShell : ", ShapesOp.GetErrorCode() - return anObj - -def MakeSolid(ListOfShells): - anObj = ShapesOp.MakeSolidShells(ListOfShells) - if ShapesOp.IsDone() == 0: - print "MakeSolid : ", ShapesOp.GetErrorCode() - return anObj - -def MakeCompound(ListShape): - anObj = ShapesOp.MakeCompound(ListShape) - if ShapesOp.IsDone() == 0: - print "MakeCompound : ", ShapesOp.GetErrorCode() - return anObj - -def NumberOfFaces(theShape): - nb_faces = ShapesOp.NumberOfFaces(theShape) - if ShapesOp.IsDone() == 0: - print "NumberOfFaces : ", ShapesOp.GetErrorCode() - return nb_faces - -def NumberOfEdges(theShape): - nb_edges = ShapesOp.NumberOfEdges(theShape) - if ShapesOp.IsDone() == 0: - print "NumberOfEdges : ", ShapesOp.GetErrorCode() - return nb_edges - -def ChangeOrientation(Shape): - anObj = ShapesOp.ChangeOrientation(Shape) - if ShapesOp.IsDone() == 0: - print "ChangeOrientation : ", ShapesOp.GetErrorCode() - return anObj - -def OrientationChange(Shape): - anObj = ChangeOrientation(Shape) - return anObj - -def GetFreeFacesIDs(theShape): - anIDs = ShapesOp.GetFreeFacesIDs(theShape) - if ShapesOp.IsDone() == 0: - print "GetFreeFacesIDs : ", ShapesOp.GetErrorCode() - return anIDs - -def GetSharedShapes(theShape1, theShape2, theShapeType): - aList = ShapesOp.GetSharedShapes(theShape1, theShape2, theShapeType) - if ShapesOp.IsDone() == 0: - print "GetSharedShapes : ", ShapesOp.GetErrorCode() - return aList - -def GetShapesOnPlane(theShape, theShapeType, theAx1, theState): - aList = ShapesOp.GetShapesOnPlane(theShape, theShapeType, theAx1, theState) - if ShapesOp.IsDone() == 0: - print "GetShapesOnPlane : ", ShapesOp.GetErrorCode() - return aList - -def GetShapesOnPlaneIDs(theShape, theShapeType, theAx1, theState): - aList = ShapesOp.GetShapesOnPlaneIDs(theShape, theShapeType, theAx1, theState) - if ShapesOp.IsDone() == 0: - print "GetShapesOnPlaneIDs : ", ShapesOp.GetErrorCode() - return aList - -def GetShapesOnCylinder(theShape, theShapeType, theAxis, theRadius, theState): - aList = ShapesOp.GetShapesOnCylinder(theShape, theShapeType, theAxis, theRadius, theState) - if ShapesOp.IsDone() == 0: - print "GetShapesOnCylinder : ", ShapesOp.GetErrorCode() - return aList - -def GetShapesOnCylinderIDs(theShape, theShapeType, theAxis, theRadius, theState): - aList = ShapesOp.GetShapesOnCylinderIDs(theShape, theShapeType, theAxis, theRadius, theState) - if ShapesOp.IsDone() == 0: - print "GetShapesOnCylinderIDs : ", ShapesOp.GetErrorCode() - return aList - -def GetShapesOnSphere(theShape, theShapeType, theCenter, theRadius, theState): - aList = ShapesOp.GetShapesOnSphere(theShape, theShapeType, theCenter, theRadius, theState) - if ShapesOp.IsDone() == 0: - print "GetShapesOnSphere : ", ShapesOp.GetErrorCode() - return aList - -def GetShapesOnSphereIDs(theShape, theShapeType, theCenter, theRadius, theState): - aList = ShapesOp.GetShapesOnSphereIDs(theShape, theShapeType, theCenter, theRadius, theState) - if ShapesOp.IsDone() == 0: - print "GetShapesOnSphereIDs : ", ShapesOp.GetErrorCode() - return aList - -def GetShapesOnQuadrangle(theShape, theShapeType, theTopLeftPoint, theTopRigthPoint, theBottomLeftPoint, theBottomRigthPoint, theState): - aList = ShapesOp.GetShapesOnQuadrangle(theShape, theShapeType, theTopLeftPoint, theTopRigthPoint, theBottomLeftPoint, theBottomRigthPoint, theState) - if ShapesOp.IsDone() == 0: - print "GetShapesOnQuadrangle : ", ShapesOp.GetErrorCode() - return aList - -def GetShapesOnQuadrangleIDs(theShape, theShapeType, theTopLeftPoint, theTopRigthPoint, theBottomLeftPoint, theBottomRigthPoint, theState): - aList = ShapesOp.GetShapesOnQuadrangleIDs(theShape, theShapeType, theTopLeftPoint, theTopRigthPoint, theBottomLeftPoint, theBottomRigthPoint, theState) - if ShapesOp.IsDone() == 0: - print "GetShapesOnQuadrangleIDs : ", ShapesOp.GetErrorCode() - return aList - -def GetInPlace(theShapeWhere, theShapeWhat): - anObj = ShapesOp.GetInPlace(theShapeWhere, theShapeWhat) - if ShapesOp.IsDone() == 0: - print "GetInPlace : ", ShapesOp.GetErrorCode() - return anObj - -# ----------------------------------------------------------------------------- -# Access to sub-shapes by their unique IDs inside the main shape. -# ----------------------------------------------------------------------------- - -# Obtain a composite sub-shape of , composed from sub-shapes -# of , selected by their unique IDs inside -def GetSubShape(aShape, ListOfID): - anObj = geom.AddSubShape(aShape,ListOfID) - return anObj - -# Obtain unique ID of sub-shape inside -def GetSubShapeID(aShape, aSubShape): - anID = LocalOp.GetSubShapeIndex(aShape, aSubShape) - if LocalOp.IsDone() == 0: - print "GetSubShapeIndex : ", LocalOp.GetErrorCode() - return anID - -# ----------------------------------------------------------------------------- -# Decompose objects -# ----------------------------------------------------------------------------- - -def SubShapeAll(aShape, aType): - ListObj = ShapesOp.MakeExplode(aShape,aType,0) - if ShapesOp.IsDone() == 0: - print "MakeExplode : ", ShapesOp.GetErrorCode() - return ListObj - -def SubShapeAllIDs(aShape, aType): - ListObj = ShapesOp.SubShapeAllIDs(aShape,aType,0) - if ShapesOp.IsDone() == 0: - print "SubShapeAllIDs : ", ShapesOp.GetErrorCode() - return ListObj - -def SubShapeAllSorted(aShape, aType): - ListObj = ShapesOp.MakeExplode(aShape,aType,1) - if ShapesOp.IsDone() == 0: - print "MakeExplode : ", ShapesOp.GetErrorCode() - return ListObj - -def SubShapeAllSortedIDs(aShape, aType): - ListIDs = ShapesOp.SubShapeAllIDs(aShape,aType,1) - if ShapesOp.IsDone() == 0: - print "SubShapeAllSortedIDs : ", ShapesOp.GetErrorCode() - return ListObj - -# Obtain a compound of sub-shapes of , -# selected by they indices in list of all sub-shapes of type -def SubShape(aShape, aType, ListOfInd): - ListOfIDs = [] - AllShapeList = SubShapeAll(aShape, aType) - for ind in ListOfInd: - ListOfIDs.append(GetSubShapeID(aShape, AllShapeList[ind - 1])) - anObj = GetSubShape(aShape, ListOfIDs) - return anObj - -# Obtain a compound of sub-shapes of , -# selected by they indices in sorted list of all sub-shapes of type -def SubShapeSorted(aShape, aType, ListOfInd): - ListOfIDs = [] - AllShapeList = SubShapeAllSorted(aShape, aType) - for ind in ListOfInd: - ListOfIDs.append(GetSubShapeID(aShape, AllShapeList[ind - 1])) - anObj = GetSubShape(aShape, ListOfIDs) - return anObj - -# ----------------------------------------------------------------------------- -# Healing operations -# ----------------------------------------------------------------------------- - -def ProcessShape(Shape, Operators, Parameters, Values): - anObj = HealOp.ProcessShape(Shape, Operators, Parameters, Values) - if HealOp.IsDone() == 0: - print "ProcessShape : ", HealOp.GetErrorCode() - return anObj - -def SuppressFaces(aShape,ListOfId): - anObj = HealOp.SuppressFaces(aShape,ListOfId) - if HealOp.IsDone() == 0: - print "SuppressFaces : ", HealOp.GetErrorCode() - return anObj - -def MakeSewing(ListShape,precision): - comp = MakeCompound(ListShape) - anObj = Sew(comp,precision) - return anObj - -def Sew(aShape,precision): - anObj = HealOp.Sew(aShape,precision) - if HealOp.IsDone() == 0: - print "Sew : ", HealOp.GetErrorCode() - return anObj - -def SuppressInternalWires(aShape, Wires): - anObj = HealOp.RemoveIntWires(aShape, Wires) - if HealOp.IsDone() == 0: - print "SuppressInternalWires : ", HealOp.GetErrorCode() - return anObj - -def SuppressHoles(aShape, ListOfId): - anObj = HealOp.FillHoles(aShape,ListOfId) - if HealOp.IsDone() == 0: - print "SuppressHoles : ", HealOp.GetErrorCode() - return anObj - -def CloseContour(aShape, Wires, IsCommonVertex): - anObj = HealOp.CloseContour(aShape, Wires, IsCommonVertex) - if HealOp.IsDone() == 0: - print "CloseContour : ", HealOp.GetErrorCode() - return anObj - -def DivideEdge(aShape, EdgeID, Value, IsByParameter): - anObj = HealOp.DivideEdge(aShape, EdgeID, Value, IsByParameter) - if HealOp.IsDone() == 0: - print "DivideEdge : ", HealOp.GetErrorCode() - return anObj - -def GetFreeBoundary(Shape): - anObj = HealOp.GetFreeBoundary(Shape) - if HealOp.IsDone() == 0: - print "GetFreeBoundaries : ", HealOp.GetErrorCode() - return anObj - -# ----------------------------------------------------------------------------- -# Create advanced objects -# ----------------------------------------------------------------------------- - -def MakeCopy(aShape): - anObj = InsertOp.MakeCopy(aShape) - if InsertOp.IsDone() == 0: - print "MakeCopy : ", InsertOp.GetErrorCode() - return anObj - -def MakeFilling(aShape,mindeg,maxdeg,tol2d,tol3d,nbiter,isApprox=0): - anObj = PrimOp.MakeFilling(aShape,mindeg,maxdeg,tol2d,tol3d,nbiter,isApprox) - if PrimOp.IsDone() == 0: - print "MakeFilling : ", PrimOp.GetErrorCode() - return anObj - -def MakeGlueFaces(aShape,aTolerance): - anObj = ShapesOp.MakeGlueFaces(aShape,aTolerance) - if ShapesOp.IsDone() == 0: - print "MakeGlueFaces : ", ShapesOp.GetErrorCode() - return anObj - -# ----------------------------------------------------------------------------- -# Boolean (Common, Cut, Fuse, Section) -# ----------------------------------------------------------------------------- - -def MakeBoolean(shape1,shape2,operation): - anObj = BoolOp.MakeBoolean(shape1,shape2,operation) - if BoolOp.IsDone() == 0: - print "MakeBoolean : ", BoolOp.GetErrorCode() - return anObj - -def MakeCommon(s1, s2): - return MakeBoolean(s1, s2, 1) - -def MakeCut(s1, s2): - return MakeBoolean(s1, s2, 2) - -def MakeFuse(s1, s2): - return MakeBoolean(s1, s2, 3) - -def MakeSection(s1, s2): - return MakeBoolean(s1, s2, 4) - -def MakePartition(ListShapes, ListTools=[], ListKeepInside=[], ListRemoveInside=[], - Limit=ShapeType["SHAPE"], RemoveWebs=0, ListMaterials=[], - KeepNonlimitShapes=0): - anObj = BoolOp.MakePartition(ListShapes, ListTools, - ListKeepInside, ListRemoveInside, - Limit, RemoveWebs, ListMaterials, - KeepNonlimitShapes); - if BoolOp.IsDone() == 0: - print "MakePartition : ", BoolOp.GetErrorCode() - return anObj - -def Partition(ListShapes, ListTools=[], ListKeepInside=[], ListRemoveInside=[], - Limit=ShapeType["SHAPE"], RemoveWebs=0, ListMaterials=[], - KeepNonlimitShapes=0): - anObj = MakePartition(ListShapes, ListTools, - ListKeepInside, ListRemoveInside, - Limit, RemoveWebs, ListMaterials, - KeepNonlimitShapes); - return anObj - -def MakeHalfPartition(theShape, thePlane): - anObj = BoolOp.MakeHalfPartition(theShape, thePlane) - if BoolOp.IsDone() == 0: - print "MakeHalfPartition : ", BoolOp.GetErrorCode() - return anObj - -# ----------------------------------------------------------------------------- -# Transform objects -# ----------------------------------------------------------------------------- - -def MakeTranslationTwoPoints(aShape,point1,point2): - anObj = TrsfOp.TranslateTwoPointsCopy(aShape,point1,point2) - if TrsfOp.IsDone() == 0: - print "TranslateTwoPointsCopy : ", TrsfOp.GetErrorCode() - return anObj - -def MakeTranslation(aShape,dx,dy,dz): - anObj = TrsfOp.TranslateDXDYDZCopy(aShape,dx,dy,dz) - if TrsfOp.IsDone() == 0: - print "TranslateDXDYDZCopy : ", TrsfOp.GetErrorCode() - return anObj - -def MakeTranslationVector(theObject, theVector): - anObj = TrsfOp.TranslateVectorCopy(theObject, theVector) - if TrsfOp.IsDone() == 0: - print "TranslateVectorCopy : ", TrsfOp.GetErrorCode() - return anObj - -def MakeRotation(aShape,axis,angle): - anObj = TrsfOp.RotateCopy(aShape,axis,angle) - if TrsfOp.IsDone() == 0: - print "RotateCopy : ", TrsfOp.GetErrorCode() - return anObj - -def MakeRotationThreePoints(aShape, centpoint, point1, point2): - anObj = TrsfOp.RotateThreePointsCopy(aShape, centpoint, point1, point2) - if TrsfOp.IsDone() == 0: - print "RotateThreePointsCopy : ", TrsfOp.GetErrorCode() - return anObj - -def MakeScaleTransform(aShape,theCenterofScale,factor): - anObj = TrsfOp.ScaleShapeCopy(aShape,theCenterofScale,factor) - if TrsfOp.IsDone() == 0: - print "ScaleShapeCopy : ", TrsfOp.GetErrorCode() - return anObj - -def MakeMirrorByPlane(aShape,aPlane): - anObj = TrsfOp.MirrorPlaneCopy(aShape,aPlane) - if TrsfOp.IsDone() == 0: - print "MirrorPlaneCopy : ", TrsfOp.GetErrorCode() - return anObj - -def MakeMirrorByAxis(theObject, theAxis): - anObj = TrsfOp.MirrorAxisCopy(theObject, theAxis) - if TrsfOp.IsDone() == 0: - print "MirrorAxisCopy : ", TrsfOp.GetErrorCode() - return anObj - -def MakeMirrorByPoint(theObject, thePoint): - anObj = TrsfOp.MirrorPointCopy(theObject, thePoint) - if TrsfOp.IsDone() == 0: - print "MirrorPointCopy : ", TrsfOp.GetErrorCode() - return anObj - -def MakePosition(aShape,theStartLCS,theEndLCS): - anObj = TrsfOp.PositionShapeCopy(aShape,theStartLCS,theEndLCS) - if TrsfOp.IsDone() == 0: - print "PositionShapeCopy : ", TrsfOp.GetErrorCode() - return anObj - -def MakeOffset(aShape, anOffset): - anObj = TrsfOp.OffsetShapeCopy(aShape, anOffset) - if TrsfOp.IsDone() == 0: - print "OffsetShapeCopy : ", TrsfOp.GetErrorCode() - return anObj - -# ----------------------------------------------------------------------------- -# Patterns -# ----------------------------------------------------------------------------- - -def MakeMultiTranslation1D(aShape,aDir,aStep,aNbTimes): - anObj = TrsfOp.MultiTranslate1D(aShape,aDir,aStep,aNbTimes) - if TrsfOp.IsDone() == 0: - print "MultiTranslate1D : ", TrsfOp.GetErrorCode() - return anObj - -def MakeMultiTranslation2D(aShape,d1,step1,nbtimes1,d2,step2,nbtimes2): - anObj = TrsfOp.MultiTranslate2D(aShape,d1,step1,nbtimes1,d2,step2,nbtimes2) - if TrsfOp.IsDone() == 0: - print "MultiTranslate2D : ", TrsfOp.GetErrorCode() - return anObj - -def MultiRotate1D(aShape,aVec,aNbTimes): - anObj = TrsfOp.MultiRotate1D(aShape,aVec,aNbTimes) - if TrsfOp.IsDone() == 0: - print "MultiRotate1D : ", TrsfOp.GetErrorCode() - return anObj - -def MultiRotate2D(aShape,aVec,anAngle,nbtimes1,aStep,nbtimes2): - anObj = TrsfOp.MultiRotate2D(aShape,aVec,anAngle,nbtimes1,aStep,nbtimes2) - if TrsfOp.IsDone() == 0: - print "MultiRotate2D : ", TrsfOp.GetErrorCode() - return anObj - -def MakeMultiRotation1D(aShape,aDir,aPoint,aNbTimes): - aVec = MakeLine(aPoint,aDir) - anObj = MultiRotate1D(aShape,aVec,aNbTimes) - return anObj - -def MakeMultiRotation2D(aShape,aDir,aPoint,anAngle,nbtimes1,aStep,nbtimes2): - aVec = MakeLine(aPoint,aDir) - anObj = MultiRotate2D(aShape,aVec,anAngle,nbtimes1,aStep,nbtimes2) - return anObj - -# ----------------------------------------------------------------------------- -# Local operations -# ----------------------------------------------------------------------------- - -def MakeFilletAll(aShape,radius): - anObj = LocalOp.MakeFilletAll(aShape,radius) - if LocalOp.IsDone() == 0: - print "MakeFilletAll : ", LocalOp.GetErrorCode() - return anObj - -def MakeFillet(aShape,radius,aShapeType,ListShape): - anObj = None - if aShapeType == ShapeType["EDGE"]: - anObj = LocalOp.MakeFilletEdges(aShape,radius,ListShape) - else: - anObj = LocalOp.MakeFilletFaces(aShape,radius,ListShape) - if LocalOp.IsDone() == 0: - print "MakeFillet : ", LocalOp.GetErrorCode() - return anObj - -def MakeFilletR1R2(aShape,radius1,radius2,aShapeType,ListShape): - anObj = None - if aShapeType == ShapeType["EDGE"]: - anObj = LocalOp.MakeFilletEdgesR1R2(aShape,radius1,radius2,ListShape) - else: - anObj = LocalOp.MakeFilletFacesR1R2(aShape,radius1,radius2,ListShape) - if LocalOp.IsDone() == 0: - print "MakeFilletR1R2 : ", LocalOp.GetErrorCode() - return anObj - -def MakeChamferAll(aShape,d): - anObj = LocalOp.MakeChamferAll(aShape,d) - if LocalOp.IsDone() == 0: - print "MakeChamferAll : ", LocalOp.GetErrorCode() - return anObj - -def MakeChamferEdge(aShape,d1,d2,face1,face2): - anObj = LocalOp.MakeChamferEdge(aShape,d1,d2,face1,face2) - if LocalOp.IsDone() == 0: - print "MakeChamferEdge : ", LocalOp.GetErrorCode() - return anObj - -def MakeChamferEdgeAD(aShape,d,angle,face1,face2): - anObj = LocalOp.MakeChamferEdgeAD(aShape,d,angle,face1,face2) - if LocalOp.IsDone() == 0: - print "MakeChamferEdgeAD : ", LocalOp.GetErrorCode() - return anObj - -def MakeChamferFaces(aShape,d1,d2,ListShape): - anObj = LocalOp.MakeChamferFaces(aShape,d1,d2,ListShape) - if LocalOp.IsDone() == 0: - print "MakeChamferFaces : ", LocalOp.GetErrorCode() - return anObj - -def MakeChamferFacesAD(aShape,d,angle,ListShape): - anObj = LocalOp.MakeChamferFacesAD(aShape,d,angle,ListShape) - if LocalOp.IsDone() == 0: - print "MakeChamferFacesAD : ", LocalOp.GetErrorCode() - return anObj - -def MakeChamferEdges(aShape,d1,d2,ListShape): - anObj = LocalOp.MakeChamferEdges(aShape,d1,d2,ListShape) - if LocalOp.IsDone() == 0: - print "MakeChamferEdges : ", LocalOp.GetErrorCode() - return anObj - -def MakeChamferEdgesAD(aShape,d,angle,ListShape): - anObj = LocalOp.MakeChamferEdgesAD(aShape,d,angle,ListShape) - if LocalOp.IsDone() == 0: - print "MakeChamferEdgesAD : ", LocalOp.GetErrorCode() - return anObj - -def MakeChamfer(aShape,d1,d2,aShapeType,ListShape): - anObj = None - if aShapeType == ShapeType["EDGE"]: - anObj = MakeChamferEdge(aShape,d1,d2,ListShape[0],ListShape[1]) - else: - anObj = MakeChamferFaces(aShape,d1,d2,ListShape) - return anObj - -def Archimede(aShape,weight,WaterDensity,MeshingDeflection): - anObj = LocalOp.MakeArchimede(aShape,weight,WaterDensity,MeshingDeflection) - if LocalOp.IsDone() == 0: - print "MakeArchimede : ", LocalOp.GetErrorCode() - return anObj - -# ----------------------------------------------------------------------------- -# Information objects -# ----------------------------------------------------------------------------- - -def PointCoordinates(Point): - aTuple = MeasuOp.PointCoordinates(Point) - if MeasuOp.IsDone() == 0: - print "PointCoordinates : ", MeasuOp.GetErrorCode() - return aTuple - -def BasicProperties(Shape): - aTuple = MeasuOp.GetBasicProperties(Shape) - if MeasuOp.IsDone() == 0: - print "BasicProperties : ", MeasuOp.GetErrorCode() - return aTuple - -def BoundingBox(Shape): - aTuple = MeasuOp.GetBoundingBox(Shape) - if MeasuOp.IsDone() == 0: - print "BoundingBox : ", MeasuOp.GetErrorCode() - return aTuple - -def Inertia(Shape): - aTuple = MeasuOp.GetInertia(Shape) - if MeasuOp.IsDone() == 0: - print "Inertia : ", MeasuOp.GetErrorCode() - return aTuple - -def MinDistance(Shape1, Shape2): - aTuple = MeasuOp.GetMinDistance(Shape1, Shape2) - if MeasuOp.IsDone() == 0: - print "MinDistance : ", MeasuOp.GetErrorCode() - return aTuple[0] - -def Tolerance(Shape): - aTuple = MeasuOp.GetTolerance(Shape) - if MeasuOp.IsDone() == 0: - print "Tolerance : ", MeasuOp.GetErrorCode() - return aTuple - -def WhatIs(Shape): - aDescr = MeasuOp.WhatIs(Shape) - if MeasuOp.IsDone() == 0: - print "WhatIs : ", MeasuOp.GetErrorCode() - return aDescr - -def MakeCDG(aShape): - anObj = MeasuOp.GetCentreOfMass(aShape) - if MeasuOp.IsDone() == 0: - print "GetCentreOfMass : ", MeasuOp.GetErrorCode() - return anObj - -def CheckShape(theShape, theIsCheckGeom = 0): - if theIsCheckGeom: - (IsValid, Status) = MeasuOp.CheckShapeWithGeometry(theShape) - else: - (IsValid, Status) = MeasuOp.CheckShape(theShape) - - if MeasuOp.IsDone() == 0: - print "CheckShape : ", MeasuOp.GetErrorCode() - else: - if IsValid == 0: - print Status - return IsValid - -# ----------------------------------------------------------------------------- -# Import/Export objects -# ----------------------------------------------------------------------------- - -def Import(filename, formatname): - anObj = InsertOp.Import(filename, formatname) - if InsertOp.IsDone() == 0: - print "Import : ", InsertOp.GetErrorCode() - return anObj - -def ImportBREP(theFileName): - return Import(theFileName, "BREP") - -def ImportIGES(theFileName): - return Import(theFileName, "IGES") - -def ImportSTEP(theFileName): - return Import(theFileName, "STEP") - -def Export(aShape, filename, formatname): - InsertOp.Export(aShape, filename, formatname) - if InsertOp.IsDone() == 0: - print "Export : ", InsertOp.GetErrorCode() - -def ExportBREP(theObject, theFileName): - return Export(theObject, theFileName, "BREP") - -def ExportIGES(theObject, theFileName): - return Export(theObject, theFileName, "IGES") - -def ExportSTEP(theObject, theFileName): - return Export(theObject, theFileName, "STEP") - -# ----------------------------------------------------------------------------- -# Block operations -# ----------------------------------------------------------------------------- - -def MakeQuad(E1, E2, E3, E4): - anObj = BlocksOp.MakeQuad(E1, E2, E3, E4) - if BlocksOp.IsDone() == 0: - print "MakeQuad : ", BlocksOp.GetErrorCode() - return anObj - -def MakeQuad2Edges(E1, E2): - anObj = BlocksOp.MakeQuad2Edges(E1, E2) - if BlocksOp.IsDone() == 0: - print "MakeQuad2Edges : ", BlocksOp.GetErrorCode() - return anObj - -def MakeQuad4Vertices(V1, V2, V3, V4): - anObj = BlocksOp.MakeQuad4Vertices(V1, V2, V3, V4) - if BlocksOp.IsDone() == 0: - print "MakeQuad4Vertices : ", BlocksOp.GetErrorCode() - return anObj - -def MakeHexa(F1, F2, F3, F4, F5, F6): - anObj = BlocksOp.MakeHexa(F1, F2, F3, F4, F5, F6) - if BlocksOp.IsDone() == 0: - print "MakeHexa : ", BlocksOp.GetErrorCode() - return anObj - -def MakeHexa2Faces(F1, F2): - anObj = BlocksOp.MakeHexa2Faces(F1, F2) - if BlocksOp.IsDone() == 0: - print "MakeHexa2Faces : ", BlocksOp.GetErrorCode() - return anObj - -def GetPoint(theShape, theX, theY, theZ, theEpsilon): - anObj = BlocksOp.GetPoint(theShape, theX, theY, theZ, theEpsilon) - if BlocksOp.IsDone() == 0: - print "GetPoint : ", BlocksOp.GetErrorCode() - return anObj - -def GetEdge(theShape, thePoint1, thePoint2): - anObj = BlocksOp.GetEdge(theShape, thePoint1, thePoint2) - if BlocksOp.IsDone() == 0: - print "GetEdge : ", BlocksOp.GetErrorCode() - return anObj - -def GetEdgeNearPoint(theShape, thePoint): - anObj = BlocksOp.GetEdgeNearPoint(theShape, thePoint) - if BlocksOp.IsDone() == 0: - print "GetEdgeNearPoint : ", BlocksOp.GetErrorCode() - return anObj - -def GetFaceByPoints(theShape, thePoint1, thePoint2, thePoint3, thePoint4): - anObj = BlocksOp.GetFaceByPoints(theShape, thePoint1, thePoint2, thePoint3, thePoint4) - if BlocksOp.IsDone() == 0: - print "GetFaceByPoints : ", BlocksOp.GetErrorCode() - return anObj - -def GetFaceByEdges(theShape, theEdge1, theEdge2): - anObj = BlocksOp.GetFaceByEdges(theShape, theEdge1, theEdge2) - if BlocksOp.IsDone() == 0: - print "GetFaceByEdges : ", BlocksOp.GetErrorCode() - return anObj - -def GetOppositeFace(theBlock, theFace): - anObj = BlocksOp.GetOppositeFace(theBlock, theFace) - if BlocksOp.IsDone() == 0: - print "GetOppositeFace : ", BlocksOp.GetErrorCode() - return anObj - -def GetFaceNearPoint(theShape, thePoint): - anObj = BlocksOp.GetFaceNearPoint(theShape, thePoint) - if BlocksOp.IsDone() == 0: - print "GetFaceNearPoint : ", BlocksOp.GetErrorCode() - return anObj - -def GetFaceByNormale(theBlock, theVector): - anObj = BlocksOp.GetFaceByNormale(theBlock, theVector) - if BlocksOp.IsDone() == 0: - print "GetFaceByNormale : ", BlocksOp.GetErrorCode() - return anObj - -def CheckCompoundOfBlocks(theCompound): - (IsValid, BCErrors) = BlocksOp.CheckCompoundOfBlocks(theCompound) - if BlocksOp.IsDone() == 0: - print "CheckCompoundOfBlocks : ", BlocksOp.GetErrorCode() - else: - if IsValid == 0: - Descr = BlocksOp.PrintBCErrors(theCompound, BCErrors) - print Descr - return IsValid - -def RemoveExtraEdges(theShape): - anObj = BlocksOp.RemoveExtraEdges(theShape) - if BlocksOp.IsDone() == 0: - print "RemoveExtraEdges : ", BlocksOp.GetErrorCode() - return anObj - -def CheckAndImprove(theShape): - anObj = BlocksOp.CheckAndImprove(theShape) - if BlocksOp.IsDone() == 0: - print "CheckAndImprove : ", BlocksOp.GetErrorCode() - return anObj - -def MakeBlockExplode(theCompound, theMinNbFaces, theMaxNbFaces): - aList = BlocksOp.ExplodeCompoundOfBlocks(theCompound, theMinNbFaces, theMaxNbFaces) - if BlocksOp.IsDone() == 0: - print "MakeBlockExplode : ", BlocksOp.GetErrorCode() - return aList - -def GetBlockNearPoint(theCompound, thePoint): - anObj = BlocksOp.GetBlockNearPoint(theCompound, thePoint) - if BlocksOp.IsDone() == 0: - print "GetBlockNearPoint : ", BlocksOp.GetErrorCode() - return anObj - -def GetBlockByParts(theCompound, theParts): - anObj = BlocksOp.GetBlockByParts(theCompound, theParts) - if BlocksOp.IsDone() == 0: - print "GetBlockByParts : ", BlocksOp.GetErrorCode() - return anObj - -def GetBlocksByParts(theCompound, theParts): - aList = BlocksOp.GetBlocksByParts(theCompound, theParts) - if BlocksOp.IsDone() == 0: - print "GetBlocksByParts : ", BlocksOp.GetErrorCode() - return aList - -def MakeMultiTransformation1D(Block, DirFaceID1, DirFaceID2, NbTimes): - anObj = BlocksOp.MakeMultiTransformation1D(Block, DirFaceID1, DirFaceID2, NbTimes) - if BlocksOp.IsDone() == 0: - print "MakeMultiTransformation1D : ", BlocksOp.GetErrorCode() - return anObj - -def MakeMultiTransformation2D(Block, DirFaceID1U, DirFaceID2U, NbTimesU, - DirFaceID1V, DirFaceID2V, NbTimesV): - anObj = BlocksOp.MakeMultiTransformation2D(Block, DirFaceID1U, DirFaceID2U, NbTimesU, - DirFaceID1V, DirFaceID2V, NbTimesV) - if BlocksOp.IsDone() == 0: - print "MakeMultiTransformation2D : ", BlocksOp.GetErrorCode() - return anObj - -def Propagate(theShape): - listChains = BlocksOp.Propagate(theShape) - if BlocksOp.IsDone() == 0: - print "Propagate : ", BlocksOp.GetErrorCode() - return listChains - -# ----------------------------------------------------------------------------- -# Group operations -# ----------------------------------------------------------------------------- - -def CreateGroup(MainShape, ShapeType): - anObj = GroupOp.CreateGroup(MainShape, ShapeType) - if GroupOp.IsDone() == 0: - print "CreateGroup : ", GroupOp.GetErrorCode() - return anObj - -def AddObject(Group, SubShapeID): - GroupOp.AddObject(Group, SubShapeID) - if GroupOp.IsDone() == 0: - print "AddObject : ", GroupOp.GetErrorCode() - -def RemoveObject(Group, SubShapeID): - GroupOp.RemoveObject(Group, SubShapeID) - if GroupOp.IsDone() == 0: - print "RemoveObject : ", GroupOp.GetErrorCode() - -def UnionList (theGroup, theSubShapes): - GroupOp.UnionList(theGroup, theSubShapes) - if GroupOp.IsDone() == 0: - print "UnionList : ", GroupOp.GetErrorCode() - -def UnionIDs(theGroup, theSubShapes): - GroupOp.UnionIDs(theGroup, theSubShapes) - if GroupOp.IsDone() == 0: - print "UnionIDs : ", GroupOp.GetErrorCode() - -def DifferenceList (theGroup, theSubShapes): - GroupOp.DifferenceList(theGroup, theSubShapes) - if GroupOp.IsDone() == 0: - print "DifferenceList : ", GroupOp.GetErrorCode() - -def DifferenceIDs(theGroup, theSubShapes): - GroupOp.DifferenceIDs(theGroup, theSubShapes) - if GroupOp.IsDone() == 0: - print "DifferenceIDs : ", GroupOp.GetErrorCode() - -def GetObjectIDs(Group): - ListIDs = GroupOp.GetObjects(Group) - if GroupOp.IsDone() == 0: - print "GetObjectIDs : ", GroupOp.GetErrorCode() - return ListIDs - -def GetType(theGroup): - aType = GroupOp.GetType(theGroup) - if GroupOp.IsDone() == 0: - print "GetType : ", GroupOp.GetErrorCode() - return aType - -def GetMainShape(theGroup): - anObj = GroupOp.GetMainShape(theGroup) - if GroupOp.IsDone() == 0: - print "GetMainShape : ", GroupOp.GetErrorCode() - return anObj - -def GetEdgesByLength (theShape, min_length, max_length, include_min = 1, include_max = 1): - """ - Create group of edges of theShape, whose length is in range [min_length, max_length]. - If include_min/max == 0, edges with length == min/max_length will not be included in result. - """ - - edges = SubShapeAll(theShape, ShapeType["EDGE"]) - edges_in_range = [] - for edge in edges: - Props = BasicProperties(edge) - if min_length <= Props[0] and Props[0] <= max_length: - if (not include_min) and (min_length == Props[0]): - skip = 1 - else: - if (not include_max) and (Props[0] == max_length): - skip = 1 - else: - edges_in_range.append(edge) - - if len(edges_in_range) <= 0: - print "No edges found by given criteria" - return 0 - - group_edges = CreateGroup(theShape, ShapeType["EDGE"]) - UnionList(group_edges, edges_in_range) - - return group_edges - -# Add Path to the system path -# -def addPath(Path): - if (sys.path.count(Path) < 1): - sys.path.append(Path) +from geompy import * diff --git a/src/GEOM_SWIG/geompy.py b/src/GEOM_SWIG/geompy.py index 7a997f564..83b9fa7dd 100644 --- a/src/GEOM_SWIG/geompy.py +++ b/src/GEOM_SWIG/geompy.py @@ -1,6 +1,6 @@ -# GEOM GEOM_SWIG : binding of C++ omplementaion with Python +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -17,15 +17,14 @@ # 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 -# -# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # +# GEOM GEOM_SWIG : binding of C++ omplementaion with Python # File : geompy.py # Author : Paul RASCLE, EDF # Module : GEOM # $Header$ - +# import salome import geompyDC from salome import * diff --git a/src/GEOM_SWIG/geompyDC.py b/src/GEOM_SWIG/geompyDC.py index 5853af966..849095d4e 100644 --- a/src/GEOM_SWIG/geompyDC.py +++ b/src/GEOM_SWIG/geompyDC.py @@ -1,6 +1,6 @@ -# GEOM GEOM_SWIG : binding of C++ omplementaion with Python +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -17,45 +17,162 @@ # 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 -# -# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # +# GEOM GEOM_SWIG : binding of C++ omplementaion with Python # File : geompy.py # Author : Paul RASCLE, EDF # Module : GEOM -# $Header$ + """ \namespace geompy \brief Module geompy """ +## @defgroup l1_geompy_auxiliary Auxiliary data structures and methods + +## @defgroup l1_geompy_purpose All package methods, grouped by their purpose +## @{ +## @defgroup l2_import_export Importing/exporting geometrical objects +## @defgroup l2_creating Creating geometrical objects +## @{ +## @defgroup l3_basic_go Creating Basic Geometric Objects +## @{ +## @defgroup l4_curves Creating Curves + +## @} +## @defgroup l3_3d_primitives Creating 3D Primitives +## @defgroup l3_complex Creating Complex Objects +## @defgroup l3_groups Working with groups +## @defgroup l3_blocks Building by blocks +## @{ +## @defgroup l4_blocks_measure Check and Improve + +## @} +## @defgroup l3_sketcher Sketcher +## @defgroup l3_advanced Creating Advanced Geometrical Objects +## @{ +## @defgroup l4_decompose Decompose objects +## @defgroup l4_access Access to sub-shapes by their unique IDs inside the main shape +## @defgroup l4_obtain Access to subshapes by a criteria + +## @} + +## @} +## @defgroup l2_transforming Transforming geometrical objects +## @{ +## @defgroup l3_basic_op Basic Operations +## @defgroup l3_boolean Boolean Operations +## @defgroup l3_transform Transformation Operations +## @defgroup l3_local Local Operations (Fillet and Chamfer) +## @defgroup l3_blocks_op Blocks Operations +## @defgroup l3_healing Repairing Operations +## @defgroup l3_restore_ss Restore presentation parameters and a tree of subshapes + +## @} +## @defgroup l2_measure Using measurement tools + +## @} + import salome salome.salome_init() from salome import * +from salome_notebook import * + import GEOM +import math -# ----------------------------------------------------------------------------- -# enumeration ShapeType as a dictionary -# ----------------------------------------------------------------------------- - +## Enumeration ShapeType as a dictionary +# @ingroup l1_geompy_auxiliary ShapeType = {"COMPOUND":0, "COMPSOLID":1, "SOLID":2, "SHELL":3, "FACE":4, "WIRE":5, "EDGE":6, "VERTEX":7, "SHAPE":8} -# ----------------------------------------------------------------------------- -# Raise an Error Function if Operation is Failed -# ----------------------------------------------------------------------------- +## Raise an Error, containing the Method_name, if Operation is Failed +## @ingroup l1_geompy_auxiliary def RaiseIfFailed (Method_name, Operation): - #NPAL18017#if Operation.IsDone() == 0: if Operation.IsDone() == 0 and Operation.GetErrorCode() != "NOT_FOUND_ANY": raise RuntimeError, Method_name + " : " + Operation.GetErrorCode() + +## Return list of variables value from salome notebook +## @ingroup l1_geompy_auxiliary +def ParseParameters(*parameters): + Result = [] + StringResult = "" + for parameter in parameters: + if isinstance(parameter,str): + if notebook.isVariable(parameter): + Result.append(notebook.get(parameter)) + else: + raise RuntimeError, "Variable with name '" + parameter + "' doesn't exist!!!" + else: + Result.append(parameter) + pass + + StringResult = StringResult + str(parameter) + StringResult = StringResult + ":" + pass + StringResult = StringResult[:len(StringResult)-1] + Result.append(StringResult) + return Result + +## Return list of variables value from salome notebook +## @ingroup l1_geompy_auxiliary +def ParseList(list): + Result = [] + StringResult = "" + for parameter in list: + if isinstance(parameter,str) and notebook.isVariable(parameter): + Result.append(str(notebook.get(parameter))) + pass + else: + Result.append(str(parameter)) + pass + + StringResult = StringResult + str(parameter) + StringResult = StringResult + ":" + pass + StringResult = StringResult[:len(StringResult)-1] + return Result, StringResult + +## Return list of variables value from salome notebook +## @ingroup l1_geompy_auxiliary +def ParseSketcherCommand(command): + Result = "" + StringResult = "" + sections = command.split(":") + for section in sections: + parameters = section.split(" ") + paramIndex = 1 + for parameter in parameters: + if paramIndex > 1 and parameter.find("'") != -1: + parameter = parameter.replace("'","") + if notebook.isVariable(parameter): + Result = Result + str(notebook.get(parameter)) + " " + pass + else: + raise RuntimeError, "Variable with name '" + parameter + "' doesn't exist!!!" + pass + pass + else: + Result = Result + str(parameter) + " " + pass + if paramIndex > 1: + StringResult = StringResult + parameter + StringResult = StringResult + ":" + pass + paramIndex = paramIndex + 1 + pass + Result = Result[:len(Result)-1] + ":" + pass + Result = Result[:len(Result)-1] + return Result, StringResult -# ----------------------------------------------------------------------------- -# enumeration shape_kind -# ----------------------------------------------------------------------------- - +## Kinds of shape enumeration +# @ingroup l1_geompy_auxiliary kind = GEOM.GEOM_IKindOfShape +## Information about closed/unclosed state of shell or wire +# @ingroup l1_geompy_auxiliary class info: UNKNOWN = 0 CLOSED = 1 @@ -63,12 +180,13 @@ class info: class geompyDC(GEOM._objref_GEOM_Gen): + def __init__(self): GEOM._objref_GEOM_Gen.__init__(self) self.myBuilder = None self.myStudyId = 0 self.father = None - + self.BasicOp = None self.CurvesOp = None self.PrimOp = None @@ -83,6 +201,8 @@ class geompyDC(GEOM._objref_GEOM_Gen): self.GroupOp = None pass + ## @addtogroup l1_geompy_auxiliary + ## @{ def init_geom(self,theStudy): self.myStudy = theStudy self.myStudyId = self.myStudy._get_StudyId() @@ -111,11 +231,13 @@ class geompyDC(GEOM._objref_GEOM_Gen): self.BlocksOp = self.GetIBlocksOperations (self.myStudyId) self.GroupOp = self.GetIGroupOperations (self.myStudyId) pass - + ## Get name for sub-shape aSubObj of shape aMainObj # - # Example: see GEOM_TestAll.py + # @ref swig_SubShapeAllSorted "Example" def SubShapeName(self,aSubObj, aMainObj): + # Example: see GEOM_TestAll.py + #aSubId = orb.object_to_string(aSubObj) #aMainId = orb.object_to_string(aMainObj) #index = gg.getIndexTopology(aSubId, aMainId) @@ -123,45 +245,96 @@ class geompyDC(GEOM._objref_GEOM_Gen): index = self.ShapesOp.GetTopologyIndex(aMainObj, aSubObj) name = self.ShapesOp.GetShapeTypeString(aSubObj) + "_%d"%(index) return name - + ## Publish in study aShape with name aName # - # Example: see GEOM_TestAll.py - def addToStudy(self,aShape, aName): + # \param aShape the shape to be published + # \param aName the name for the shape + # \param doRestoreSubShapes if True, finds and publishes also + # sub-shapes of aShape, corresponding to its arguments + # and published sub-shapes of arguments + # \param theArgs,theFindMethod,theInheritFirstArg see geompy.RestoreSubShapes for + # these arguments description + # \return study entry of the published shape in form of string + # + # @ref swig_MakeQuad4Vertices "Example" + def addToStudy(self, aShape, aName, doRestoreSubShapes=False, + theArgs=[], theFindMethod=GEOM.FSM_GetInPlace, theInheritFirstArg=False): + # Example: see GEOM_TestAll.py try: aSObject = self.AddInStudy(self.myStudy, aShape, aName, None) + if doRestoreSubShapes: + self.RestoreSubShapesSO(self.myStudy, aSObject, theArgs, + theFindMethod, theInheritFirstArg) except: print "addToStudy() failed" return "" return aShape.GetStudyEntry() - + ## Publish in study aShape with name aName as sub-object of previously published aFather # - # Example: see GEOM_TestAll.py - def addToStudyInFather(self,aFather, aShape, aName): + # @ref swig_SubShapeAllSorted "Example" + def addToStudyInFather(self, aFather, aShape, aName): + # Example: see GEOM_TestAll.py try: aSObject = self.AddInStudy(myStudy, aShape, aName, aFather) except: print "addToStudyInFather() failed" return "" return aShape.GetStudyEntry() - - # ----------------------------------------------------------------------------- - # Basic primitives - # ----------------------------------------------------------------------------- - + + # end of l1_geompy_auxiliary + ## @} + + ## @addtogroup l3_restore_ss + ## @{ + + ## Publish sub-shapes, standing for arguments and sub-shapes of arguments + # To be used from python scripts out of geompy.addToStudy (non-default usage) + # \param theObject published GEOM object, arguments of which will be published + # \param theArgs list of GEOM_Object, operation arguments to be published. + # If this list is empty, all operation arguments will be published + # \param theFindMethod method to search subshapes, corresponding to arguments and + # their subshapes. Value from enumeration GEOM::find_shape_method. + # \param theInheritFirstArg set properties of the first argument for theObject. + # Do not publish subshapes in place of arguments, but only + # in place of subshapes of the first argument, + # because the whole shape corresponds to the first argument. + # Mainly to be used after transformations, but it also can be + # usefull after partition with one object shape, and some other + # operations, where only the first argument has to be considered. + # If theObject has only one argument shape, this flag is automatically + # considered as True, not regarding really passed value. + # \return True in case of success, False otherwise. + # + # @ref tui_restore_prs_params "Example" + def RestoreSubShapes (self, theObject, theArgs=[], + theFindMethod=GEOM.FSM_GetInPlace, theInheritFirstArg=False): + # Example: see GEOM_TestAll.py + return self.RestoreSubShapesO(self.myStudy, theObject, theArgs, + theFindMethod, theInheritFirstArg) + + # end of l3_restore_ss + ## @} + + ## @addtogroup l3_basic_go + ## @{ + ## Create point by three coordinates. # @param theX The X coordinate of the point. # @param theY The Y coordinate of the point. # @param theZ The Z coordinate of the point. # @return New GEOM_Object, containing the created point. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_point "Example" def MakeVertex(self,theX, theY, theZ): + # Example: see GEOM_TestAll.py + theX,theY,theZ,Parameters = ParseParameters(theX, theY, theZ) anObj = self.BasicOp.MakePointXYZ(theX, theY, theZ) RaiseIfFailed("MakePointXYZ", self.BasicOp) + anObj.SetParameters(Parameters) return anObj - + ## Create a point, distant from the referenced point # on the given distances along the coordinate axes. # @param theReference The referenced point. @@ -170,99 +343,131 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theZ Displacement from the referenced point along OZ axis. # @return New GEOM_Object, containing the created point. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_point "Example" def MakeVertexWithRef(self,theReference, theX, theY, theZ): + # Example: see GEOM_TestAll.py + theX,theY,theZ,Parameters = ParseParameters(theX, theY, theZ) anObj = self.BasicOp.MakePointWithReference(theReference, theX, theY, theZ) RaiseIfFailed("MakePointWithReference", self.BasicOp) + anObj.SetParameters(Parameters) return anObj - + ## Create a point, corresponding to the given parameter on the given curve. # @param theRefCurve The referenced curve. # @param theParameter Value of parameter on the referenced curve. # @return New GEOM_Object, containing the created point. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_point "Example" def MakeVertexOnCurve(self,theRefCurve, theParameter): + # Example: see GEOM_TestAll.py + theParameter, Parameters = ParseParameters(theParameter) anObj = self.BasicOp.MakePointOnCurve(theRefCurve, theParameter) RaiseIfFailed("MakePointOnCurve", self.BasicOp) + anObj.SetParameters(Parameters) + return anObj + + ## Create a point, corresponding to the given parameters on the + # given surface. + # @param theRefSurf The referenced surface. + # @param theUParameter Value of U-parameter on the referenced surface. + # @param theVParameter Value of V-parameter on the referenced surface. + # @return New GEOM_Object, containing the created point. + # + # @ref swig_MakeVertexOnSurface "Example" + def MakeVertexOnSurface(self, theRefSurf, theUParameter, theVParameter): + theUParameter, theVParameter, Parameters = ParseParameters(theUParameter, theVParameter) + # Example: see GEOM_TestAll.py + anObj = self.BasicOp.MakePointOnSurface(theRefSurf, theUParameter, theVParameter) + RaiseIfFailed("MakePointOnSurface", self.BasicOp) + anObj.SetParameters(Parameters); return anObj ## Create a point on intersection of two lines. # @param theRefLine1, theRefLine2 The referenced lines. # @return New GEOM_Object, containing the created point. # - # Example: see GEOM_TestAll.py + # @ref swig_MakeVertexOnLinesIntersection "Example" def MakeVertexOnLinesIntersection(self, theRefLine1, theRefLine2): + # Example: see GEOM_TestAll.py anObj = self.BasicOp.MakePointOnLinesIntersection(theRefLine1, theRefLine2) RaiseIfFailed("MakePointOnLinesIntersection", self.BasicOp) return anObj - + ## Create a tangent, corresponding to the given parameter on the given curve. # @param theRefCurve The referenced curve. # @param theParameter Value of parameter on the referenced curve. # @return New GEOM_Object, containing the created tangent. - def MakeTangentOnCurve(self,theRefCurve, theParameter): + # + # @ref swig_MakeTangentOnCurve "Example" + def MakeTangentOnCurve(self, theRefCurve, theParameter): anObj = self.BasicOp.MakeTangentOnCurve(theRefCurve, theParameter) RaiseIfFailed("MakeTangentOnCurve", self.BasicOp) return anObj - + ## Create a vector with the given components. # @param theDX X component of the vector. # @param theDY Y component of the vector. # @param theDZ Z component of the vector. # @return New GEOM_Object, containing the created vector. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_vector "Example" def MakeVectorDXDYDZ(self,theDX, theDY, theDZ): + # Example: see GEOM_TestAll.py + theDX,theDY,theDZ,Parameters = ParseParameters(theDX, theDY, theDZ) anObj = self.BasicOp.MakeVectorDXDYDZ(theDX, theDY, theDZ) RaiseIfFailed("MakeVectorDXDYDZ", self.BasicOp) + anObj.SetParameters(Parameters) return anObj - + ## Create a vector between two points. # @param thePnt1 Start point for the vector. # @param thePnt2 End point for the vector. # @return New GEOM_Object, containing the created vector. - - # Example: see GEOM_TestAll.py + # + # @ref tui_creation_vector "Example" def MakeVector(self,thePnt1, thePnt2): + # Example: see GEOM_TestAll.py anObj = self.BasicOp.MakeVectorTwoPnt(thePnt1, thePnt2) RaiseIfFailed("MakeVectorTwoPnt", self.BasicOp) return anObj - + ## Create a line, passing through the given point # and parrallel to the given direction # @param thePnt Point. The resulting line will pass through it. # @param theDir Direction. The resulting line will be parallel to it. # @return New GEOM_Object, containing the created line. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_line "Example" def MakeLine(self,thePnt, theDir): + # Example: see GEOM_TestAll.py anObj = self.BasicOp.MakeLine(thePnt, theDir) RaiseIfFailed("MakeLine", self.BasicOp) return anObj - + ## Create a line, passing through the given points # @param thePnt1 First of two points, defining the line. # @param thePnt2 Second of two points, defining the line. # @return New GEOM_Object, containing the created line. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_line "Example" def MakeLineTwoPnt(self,thePnt1, thePnt2): + # Example: see GEOM_TestAll.py anObj = self.BasicOp.MakeLineTwoPnt(thePnt1, thePnt2) RaiseIfFailed("MakeLineTwoPnt", self.BasicOp) return anObj - ## Create a line on two faces intersection. + ## Create a line on two faces intersection. # @param theFace1 First of two faces, defining the line. # @param theFace2 Second of two faces, defining the line. # @return New GEOM_Object, containing the created line. # - # Example: see GEOM_TestAll.py + # @ref swig_MakeLineTwoFaces "Example" def MakeLineTwoFaces(self, theFace1, theFace2): + # Example: see GEOM_TestAll.py anObj = self.BasicOp.MakeLineTwoFaces(theFace1, theFace2) RaiseIfFailed("MakeLineTwoFaces", self.BasicOp) return anObj - + ## Create a plane, passing through the given point # and normal to the given vector. # @param thePnt Point, the plane has to pass through. @@ -270,12 +475,15 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theTrimSize Half size of a side of quadrangle face, representing the plane. # @return New GEOM_Object, containing the created plane. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_plane "Example" def MakePlane(self,thePnt, theVec, theTrimSize): + # Example: see GEOM_TestAll.py + theTrimSize, Parameters = ParseParameters(theTrimSize); anObj = self.BasicOp.MakePlanePntVec(thePnt, theVec, theTrimSize) RaiseIfFailed("MakePlanePntVec", self.BasicOp) + anObj.SetParameters(Parameters) return anObj - + ## Create a plane, passing through the three given points # @param thePnt1 First of three points, defining the plane. # @param thePnt2 Second of three points, defining the plane. @@ -283,41 +491,52 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theTrimSize Half size of a side of quadrangle face, representing the plane. # @return New GEOM_Object, containing the created plane. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_plane "Example" def MakePlaneThreePnt(self,thePnt1, thePnt2, thePnt3, theTrimSize): + # Example: see GEOM_TestAll.py + theTrimSize, Parameters = ParseParameters(theTrimSize); anObj = self.BasicOp.MakePlaneThreePnt(thePnt1, thePnt2, thePnt3, theTrimSize) RaiseIfFailed("MakePlaneThreePnt", self.BasicOp) + anObj.SetParameters(Parameters) return anObj - + ## Create a plane, similar to the existing one, but with another size of representing face. # @param theFace Referenced plane or LCS(Marker). # @param theTrimSize New half size of a side of quadrangle face, representing the plane. # @return New GEOM_Object, containing the created plane. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_plane "Example" def MakePlaneFace(self,theFace, theTrimSize): + # Example: see GEOM_TestAll.py + theTrimSize, Parameters = ParseParameters(theTrimSize); anObj = self.BasicOp.MakePlaneFace(theFace, theTrimSize) RaiseIfFailed("MakePlaneFace", self.BasicOp) + anObj.SetParameters(Parameters) return anObj - + ## Create a local coordinate system. # @param OX,OY,OZ Three coordinates of coordinate system origin. # @param XDX,XDY,XDZ Three components of OX direction # @param YDX,YDY,YDZ Three components of OY direction # @return New GEOM_Object, containing the created coordinate system. # - # Example: see GEOM_TestAll.py - def MakeMarker(self,OX,OY,OZ, XDX,XDY,XDZ, YDX,YDY,YDZ): + # @ref swig_MakeMarker "Example" + def MakeMarker(self, OX,OY,OZ, XDX,XDY,XDZ, YDX,YDY,YDZ): + # Example: see GEOM_TestAll.py + OX,OY,OZ, XDX,XDY,XDZ, YDX,YDY,YDZ, Parameters = ParseParameters(OX,OY,OZ, XDX,XDY,XDZ, YDX,YDY,YDZ); anObj = self.BasicOp.MakeMarker(OX,OY,OZ, XDX,XDY,XDZ, YDX,YDY,YDZ) RaiseIfFailed("MakeMarker", self.BasicOp) + anObj.SetParameters(Parameters) return anObj - + ## Create a local coordinate system. # @param theOrigin Point of coordinate system origin. # @param theXVec Vector of X direction # @param theYVec Vector of Y direction # @return New GEOM_Object, containing the created coordinate system. - def MakeMarkerPntTwoVec(self,theOrigin, theXVec, theYVec): + # + # @ref swig_MakeMarker "Example" + def MakeMarkerPntTwoVec(self, theOrigin, theXVec, theYVec): O = self.PointCoordinates( theOrigin ) OXOY = [] for vec in [ theXVec, theYVec ]: @@ -332,53 +551,85 @@ class geompyDC(GEOM._objref_GEOM_Gen): OXOY[3], OXOY[4], OXOY[5], ) RaiseIfFailed("MakeMarker", self.BasicOp) return anObj - - # ----------------------------------------------------------------------------- - # Curves - # ----------------------------------------------------------------------------- - + + # end of l3_basic_go + ## @} + + ## @addtogroup l4_curves + ## @{ + ## Create an arc of circle, passing through three given points. # @param thePnt1 Start point of the arc. # @param thePnt2 Middle point of the arc. # @param thePnt3 End point of the arc. # @return New GEOM_Object, containing the created arc. # - # Example: see GEOM_TestAll.py + # @ref swig_MakeArc "Example" def MakeArc(self,thePnt1, thePnt2, thePnt3): + # Example: see GEOM_TestAll.py anObj = self.CurvesOp.MakeArc(thePnt1, thePnt2, thePnt3) RaiseIfFailed("MakeArc", self.CurvesOp) return anObj - + ## Create an arc of circle from a center and 2 points. # @param thePnt1 Center of the arc # @param thePnt2 Start point of the arc. (Gives also the radius of the arc) # @param thePnt3 End point of the arc (Gives also a direction) + # @param theSense Orientation of the arc # @return New GEOM_Object, containing the created arc. # - # Example: see GEOM_TestAll.py - def MakeArcCenter(self,thePnt1, thePnt2, thePnt3,theSense): - anObj = self.CurvesOp.MakeArcCenter(thePnt1, thePnt2, thePnt3,theSense) + # @ref swig_MakeArc "Example" + def MakeArcCenter(self, thePnt1, thePnt2, thePnt3, theSense=False): + # Example: see GEOM_TestAll.py + anObj = self.CurvesOp.MakeArcCenter(thePnt1, thePnt2, thePnt3, theSense) RaiseIfFailed("MakeArcCenter", self.CurvesOp) return anObj - + + ## Create an arc of ellipse, of center and two points. + # @param theCenter Center of the arc. + # @param thePnt1 defines major radius of the arc by distance from Pnt1 to Pnt2. + # @param thePnt2 defines plane of ellipse and minor radius as distance from Pnt3 to line from Pnt1 to Pnt2. + # @return New GEOM_Object, containing the created arc. + # + # @ref swig_MakeArc "Example" + def MakeArcOfEllipse(self,theCenter, thePnt1, thePnt2): + # Example: see GEOM_TestAll.py + anObj = self.CurvesOp.MakeArcOfEllipse(theCenter, thePnt1, thePnt2) + RaiseIfFailed("MakeArcOfEllipse", self.CurvesOp) + return anObj + ## Create a circle with given center, normal vector and radius. # @param thePnt Circle center. # @param theVec Vector, normal to the plane of the circle. # @param theR Circle radius. # @return New GEOM_Object, containing the created circle. # - # Example: see GEOM_TestAll.py - def MakeCircle(self,thePnt, theVec, theR): + # @ref tui_creation_circle "Example" + def MakeCircle(self, thePnt, theVec, theR): + # Example: see GEOM_TestAll.py + theR, Parameters = ParseParameters(theR) anObj = self.CurvesOp.MakeCirclePntVecR(thePnt, theVec, theR) RaiseIfFailed("MakeCirclePntVecR", self.CurvesOp) + anObj.SetParameters(Parameters) return anObj - + + ## Create a circle with given radius. + # Center of the circle will be in the origin of global + # coordinate system and normal vector will be codirected with Z axis + # @param theR Circle radius. + # @return New GEOM_Object, containing the created circle. + def MakeCircleR(self, theR): + anObj = self.CurvesOp.MakeCirclePntVecR(None, None, theR) + RaiseIfFailed("MakeCirclePntVecR", self.CurvesOp) + return anObj + ## Create a circle, passing through three given points # @param thePnt1,thePnt2,thePnt3 Points, defining the circle. # @return New GEOM_Object, containing the created circle. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_circle "Example" def MakeCircleThreePnt(self,thePnt1, thePnt2, thePnt3): + # Example: see GEOM_TestAll.py anObj = self.CurvesOp.MakeCircleThreePnt(thePnt1, thePnt2, thePnt3) RaiseIfFailed("MakeCircleThreePnt", self.CurvesOp) return anObj @@ -389,12 +640,13 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param thePnt1,thePnt2,thePnt3 Points, defining the circle. # @return New GEOM_Object, containing the created circle. # - # Example: see GEOM_example6.py + # @ref swig_MakeCircle "Example" def MakeCircleCenter2Pnt(self,thePnt1, thePnt2, thePnt3): + # Example: see GEOM_example6.py anObj = self.CurvesOp.MakeCircleCenter2Pnt(thePnt1, thePnt2, thePnt3) RaiseIfFailed("MakeCircleCenter2Pnt", self.CurvesOp) return anObj - + ## Create an ellipse with given center, normal vector and radiuses. # @param thePnt Ellipse center. # @param theVec Vector, normal to the plane of the ellipse. @@ -402,44 +654,67 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theRMinor Minor ellipse radius. # @return New GEOM_Object, containing the created ellipse. # - # Example: see GEOM_TestAll.py - def MakeEllipse(self,thePnt, theVec, theRMajor, theRMinor): + # @ref tui_creation_ellipse "Example" + def MakeEllipse(self, thePnt, theVec, theRMajor, theRMinor): + # Example: see GEOM_TestAll.py + theRMajor, theRMinor, Parameters = ParseParameters(theRMajor, theRMinor) anObj = self.CurvesOp.MakeEllipse(thePnt, theVec, theRMajor, theRMinor) RaiseIfFailed("MakeEllipse", self.CurvesOp) + anObj.SetParameters(Parameters) return anObj - + + ## Create an ellipse with given radiuses. + # Center of the ellipse will be in the origin of global + # coordinate system and normal vector will be codirected with Z axis + # @param theRMajor Major ellipse radius. + # @param theRMinor Minor ellipse radius. + # @return New GEOM_Object, containing the created ellipse. + def MakeEllipseRR(self, theRMajor, theRMinor): + anObj = self.CurvesOp.MakeEllipse(None, None, theRMajor, theRMinor) + RaiseIfFailed("MakeEllipse", self.CurvesOp) + return anObj + ## Create a polyline on the set of points. # @param thePoints Sequence of points for the polyline. # @return New GEOM_Object, containing the created polyline. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_curve "Example" def MakePolyline(self,thePoints): + # Example: see GEOM_TestAll.py anObj = self.CurvesOp.MakePolyline(thePoints) RaiseIfFailed("MakePolyline", self.CurvesOp) return anObj - + ## Create bezier curve on the set of points. # @param thePoints Sequence of points for the bezier curve. # @return New GEOM_Object, containing the created bezier curve. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_curve "Example" def MakeBezier(self,thePoints): + # Example: see GEOM_TestAll.py anObj = self.CurvesOp.MakeSplineBezier(thePoints) RaiseIfFailed("MakeSplineBezier", self.CurvesOp) return anObj - + ## Create B-Spline curve on the set of points. # @param thePoints Sequence of points for the B-Spline curve. # @return New GEOM_Object, containing the created B-Spline curve. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_curve "Example" def MakeInterpol(self,thePoints): + # Example: see GEOM_TestAll.py anObj = self.CurvesOp.MakeSplineInterpolation(thePoints) RaiseIfFailed("MakeSplineInterpolation", self.CurvesOp) return anObj - + + # end of l4_curves + ## @} + + ## @addtogroup l3_sketcher + ## @{ + ## Create a sketcher (wire or face), following the textual description, - # passed through \a theCommand argument. \n + # passed through theCommand argument. \n # Edges of the resulting wire or face will be arcs of circles and/or linear segments. \n # Format of the description string have to be the following: # @@ -471,36 +746,56 @@ class geompyDC(GEOM._objref_GEOM_Gen): # OZ and OX directions of the working plane. # @return New GEOM_Object, containing the created wire. # - # Example: see GEOM_TestAll.py - def MakeSketcher(self,theCommand, theWorkingPlane = [0,0,0, 0,0,1, 1,0,0]): + # @ref tui_sketcher_page "Example" + def MakeSketcher(self, theCommand, theWorkingPlane = [0,0,0, 0,0,1, 1,0,0]): + # Example: see GEOM_TestAll.py + theCommand,Parameters = ParseSketcherCommand(theCommand) anObj = self.CurvesOp.MakeSketcher(theCommand, theWorkingPlane) RaiseIfFailed("MakeSketcher", self.CurvesOp) + anObj.SetParameters(Parameters) return anObj - + ## Create a sketcher (wire or face), following the textual description, - # passed through \a theCommand argument. \n + # passed through theCommand argument. \n # For format of the description string see the previous method.\n # @param theCommand String, defining the sketcher in local # coordinates of the working plane. # @param theWorkingPlane Planar Face or LCS(Marker) of the working plane. # @return New GEOM_Object, containing the created wire. - def MakeSketcherOnPlane(self,theCommand, theWorkingPlane): + # + # @ref tui_sketcher_page "Example" + def MakeSketcherOnPlane(self, theCommand, theWorkingPlane): anObj = self.CurvesOp.MakeSketcherOnPlane(theCommand, theWorkingPlane) RaiseIfFailed("MakeSketcherOnPlane", self.CurvesOp) return anObj - - # ----------------------------------------------------------------------------- - # Create 3D Primitives - # ----------------------------------------------------------------------------- - + + ## Create a sketcher wire, following the numerical description, + # passed through theCoordinates argument. \n + # @param theCoordinates double values, defining points to create a wire, + # passing from it. + # @return New GEOM_Object, containing the created wire. + # + # @ref tui_sketcher_page "Example" + def Make3DSketcher(self, theCoordinates): + anObj = self.CurvesOp.Make3DSketcher(theCoordinates) + RaiseIfFailed("Make3DSketcher", self.CurvesOp) + return anObj + + # end of l3_sketcher + ## @} + + ## @addtogroup l3_3d_primitives + ## @{ + ## Create a box by coordinates of two opposite vertices. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_box "Example" def MakeBox(self,x1,y1,z1,x2,y2,z2): + # Example: see GEOM_TestAll.py pnt1 = self.MakeVertex(x1,y1,z1) pnt2 = self.MakeVertex(x2,y2,z2) return self.MakeBoxTwoPnt(pnt1,pnt2) - + ## Create a box with specified dimensions along the coordinate axes # and with edges, parallel to the coordinate axes. # Center of the box will be at point (DX/2, DY/2, DZ/2). @@ -509,24 +804,101 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theDZ Length of Box edges, parallel to OZ axis. # @return New GEOM_Object, containing the created box. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_box "Example" def MakeBoxDXDYDZ(self,theDX, theDY, theDZ): + # Example: see GEOM_TestAll.py + theDX,theDY,theDZ,Parameters = ParseParameters(theDX, theDY, theDZ) anObj = self.PrimOp.MakeBoxDXDYDZ(theDX, theDY, theDZ) RaiseIfFailed("MakeBoxDXDYDZ", self.PrimOp) + anObj.SetParameters(Parameters) return anObj - + ## Create a box with two specified opposite vertices, # and with edges, parallel to the coordinate axes # @param thePnt1 First of two opposite vertices. # @param thePnt2 Second of two opposite vertices. # @return New GEOM_Object, containing the created box. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_box "Example" def MakeBoxTwoPnt(self,thePnt1, thePnt2): + # Example: see GEOM_TestAll.py anObj = self.PrimOp.MakeBoxTwoPnt(thePnt1, thePnt2) RaiseIfFailed("MakeBoxTwoPnt", self.PrimOp) return anObj - + + ## Create a face with specified dimensions along OX-OY coordinate axes, + # with edges, parallel to this coordinate axes. + # @param theH height of Face. + # @param theW width of Face. + # @param theOrientation orientation belong axis OXY OYZ OZX + # @return New GEOM_Object, containing the created face. + # + # @ref tui_creation_face "Example" + def MakeFaceHW(self,theH, theW, theOrientation): + # Example: see GEOM_TestAll.py + theH,theW,Parameters = ParseParameters(theH, theW) + anObj = self.PrimOp.MakeFaceHW(theH, theW, theOrientation) + RaiseIfFailed("MakeFaceHW", self.PrimOp) + anObj.SetParameters(Parameters) + return anObj + + ## Create a face from another plane and two sizes, + # vertical size and horisontal size. + # @param theObj Normale vector to the creating face or + # the face object. + # @param theH Height (vertical size). + # @param theW Width (horisontal size). + # @return New GEOM_Object, containing the created face. + # + # @ref tui_creation_face "Example" + def MakeFaceObjHW(self, theObj, theH, theW): + # Example: see GEOM_TestAll.py + theH,theW,Parameters = ParseParameters(theH, theW) + anObj = self.PrimOp.MakeFaceObjHW(theObj, theH, theW) + RaiseIfFailed("MakeFaceObjHW", self.PrimOp) + anObj.SetParameters(Parameters) + return anObj + + ## Create a disk with given center, normal vector and radius. + # @param thePnt Disk center. + # @param theVec Vector, normal to the plane of the disk. + # @param theR Disk radius. + # @return New GEOM_Object, containing the created disk. + # + # @ref tui_creation_disk "Example" + def MakeDiskPntVecR(self,thePnt, theVec, theR): + # Example: see GEOM_TestAll.py + theR,Parameters = ParseParameters(theR) + anObj = self.PrimOp.MakeDiskPntVecR(thePnt, theVec, theR) + RaiseIfFailed("MakeDiskPntVecR", self.PrimOp) + anObj.SetParameters(Parameters) + return anObj + + ## Create a disk, passing through three given points + # @param thePnt1,thePnt2,thePnt3 Points, defining the disk. + # @return New GEOM_Object, containing the created disk. + # + # @ref tui_creation_disk "Example" + def MakeDiskThreePnt(self,thePnt1, thePnt2, thePnt3): + # Example: see GEOM_TestAll.py + anObj = self.PrimOp.MakeDiskThreePnt(thePnt1, thePnt2, thePnt3) + RaiseIfFailed("MakeDiskThreePnt", self.PrimOp) + return anObj + + ## Create a disk with specified dimensions along OX-OY coordinate axes. + # @param theR Radius of Face. + # @param theOrientation set the orientation belong axis OXY or OYZ or OZX + # @return New GEOM_Object, containing the created disk. + # + # @ref tui_creation_face "Example" + def MakeDiskR(self,theR, theOrientation): + # Example: see GEOM_TestAll.py + theR,Parameters = ParseParameters(theR) + anObj = self.PrimOp.MakeDiskR(theR, theOrientation) + RaiseIfFailed("MakeDiskR", self.PrimOp) + anObj.SetParameters(Parameters) + return anObj + ## Create a cylinder with given base point, axis, radius and height. # @param thePnt Central point of cylinder base. # @param theAxis Cylinder axis. @@ -534,12 +906,15 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theH Cylinder height. # @return New GEOM_Object, containing the created cylinder. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_cylinder "Example" def MakeCylinder(self,thePnt, theAxis, theR, theH): + # Example: see GEOM_TestAll.py + theR,theH,Parameters = ParseParameters(theR, theH) anObj = self.PrimOp.MakeCylinderPntVecRH(thePnt, theAxis, theR, theH) RaiseIfFailed("MakeCylinderPntVecRH", self.PrimOp) + anObj.SetParameters(Parameters) return anObj - + ## Create a cylinder with given radius and height at # the origin of coordinate system. Axis of the cylinder # will be collinear to the OZ axis of the coordinate system. @@ -547,30 +922,37 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theH Cylinder height. # @return New GEOM_Object, containing the created cylinder. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_cylinder "Example" def MakeCylinderRH(self,theR, theH): + # Example: see GEOM_TestAll.py + theR,theH,Parameters = ParseParameters(theR, theH) anObj = self.PrimOp.MakeCylinderRH(theR, theH) RaiseIfFailed("MakeCylinderRH", self.PrimOp) + anObj.SetParameters(Parameters) return anObj - + ## Create a sphere with given center and radius. # @param thePnt Sphere center. # @param theR Sphere radius. # @return New GEOM_Object, containing the created sphere. # - # Example: see GEOM_TestAll.py - def MakeSpherePntR(self,thePnt, theR): + # @ref tui_creation_sphere "Example" + def MakeSpherePntR(self, thePnt, theR): + # Example: see GEOM_TestAll.py + theR,Parameters = ParseParameters(theR) anObj = self.PrimOp.MakeSpherePntR(thePnt, theR) RaiseIfFailed("MakeSpherePntR", self.PrimOp) + anObj.SetParameters(Parameters) return anObj - + ## Create a sphere with given center and radius. # @param x,y,z Coordinates of sphere center. # @param theR Sphere radius. # @return New GEOM_Object, containing the created sphere. # - # Example: see GEOM_TestAll.py - def MakeSphere(self,x, y, z, theR): + # @ref tui_creation_sphere "Example" + def MakeSphere(self, x, y, z, theR): + # Example: see GEOM_TestAll.py point = self.MakeVertex(x, y, z) anObj = self.MakeSpherePntR(point, theR) return anObj @@ -579,12 +961,15 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theR Sphere radius. # @return New GEOM_Object, containing the created sphere. # - # Example: see GEOM_TestAll.py - def MakeSphereR(self,theR): + # @ref tui_creation_sphere "Example" + def MakeSphereR(self, theR): + # Example: see GEOM_TestAll.py + theR,Parameters = ParseParameters(theR) anObj = self.PrimOp.MakeSphereR(theR) RaiseIfFailed("MakeSphereR", self.PrimOp) + anObj.SetParameters(Parameters) return anObj - + ## Create a cone with given base point, axis, height and radiuses. # @param thePnt Central point of the first cone base. # @param theAxis Cone axis. @@ -595,12 +980,15 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theH Cone height. # @return New GEOM_Object, containing the created cone. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_cone "Example" def MakeCone(self,thePnt, theAxis, theR1, theR2, theH): + # Example: see GEOM_TestAll.py + theR1,theR2,theH,Parameters = ParseParameters(theR1,theR2,theH) anObj = self.PrimOp.MakeConePntVecR1R2H(thePnt, theAxis, theR1, theR2, theH) RaiseIfFailed("MakeConePntVecR1R2H", self.PrimOp) + anObj.SetParameters(Parameters) return anObj - + ## Create a cone with given height and radiuses at # the origin of coordinate system. Axis of the cone will # be collinear to the OZ axis of the coordinate system. @@ -611,12 +999,15 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theH Cone height. # @return New GEOM_Object, containing the created cone. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_cone "Example" def MakeConeR1R2H(self,theR1, theR2, theH): + # Example: see GEOM_TestAll.py + theR1,theR2,theH,Parameters = ParseParameters(theR1,theR2,theH) anObj = self.PrimOp.MakeConeR1R2H(theR1, theR2, theH) RaiseIfFailed("MakeConeR1R2H", self.PrimOp) + anObj.SetParameters(Parameters) return anObj - + ## Create a torus with given center, normal vector and radiuses. # @param thePnt Torus central point. # @param theVec Torus axis of symmetry. @@ -624,35 +1015,48 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theRMinor Torus minor radius. # @return New GEOM_Object, containing the created torus. # - # Example: see GEOM_TestAll.py - def MakeTorus(self,thePnt, theVec, theRMajor, theRMinor): + # @ref tui_creation_torus "Example" + def MakeTorus(self, thePnt, theVec, theRMajor, theRMinor): + # Example: see GEOM_TestAll.py + theRMajor,theRMinor,Parameters = ParseParameters(theRMajor,theRMinor) anObj = self.PrimOp.MakeTorusPntVecRR(thePnt, theVec, theRMajor, theRMinor) RaiseIfFailed("MakeTorusPntVecRR", self.PrimOp) + anObj.SetParameters(Parameters) return anObj - + ## Create a torus with given radiuses at the origin of coordinate system. # @param theRMajor Torus major radius. # @param theRMinor Torus minor radius. # @return New GEOM_Object, containing the created torus. # - # Example: see GEOM_TestAll.py - def MakeTorusRR(self,theRMajor, theRMinor): + # @ref tui_creation_torus "Example" + def MakeTorusRR(self, theRMajor, theRMinor): + # Example: see GEOM_TestAll.py + theRMajor,theRMinor,Parameters = ParseParameters(theRMajor,theRMinor) anObj = self.PrimOp.MakeTorusRR(theRMajor, theRMinor) RaiseIfFailed("MakeTorusRR", self.PrimOp) + anObj.SetParameters(Parameters) return anObj - + + # end of l3_3d_primitives + ## @} + + ## @addtogroup l3_complex + ## @{ + ## Create a shape by extrusion of the base shape along a vector, defined by two points. # @param theBase Base shape to be extruded. # @param thePoint1 First end of extrusion vector. # @param thePoint2 Second end of extrusion vector. # @return New GEOM_Object, containing the created prism. # - # Example: see GEOM_TestAll.py - def MakePrism(self,theBase, thePoint1, thePoint2): + # @ref tui_creation_prism "Example" + def MakePrism(self, theBase, thePoint1, thePoint2): + # Example: see GEOM_TestAll.py anObj = self.PrimOp.MakePrismTwoPnt(theBase, thePoint1, thePoint2) RaiseIfFailed("MakePrismTwoPnt", self.PrimOp) return anObj - + ## Create a shape by extrusion of the base shape along the vector, # i.e. all the space, transfixed by the base shape during its translation # along the vector on the given distance. @@ -661,10 +1065,13 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theH Prism dimension along theVec. # @return New GEOM_Object, containing the created prism. # - # Example: see GEOM_TestAll.py - def MakePrismVecH(self,theBase, theVec, theH): + # @ref tui_creation_prism "Example" + def MakePrismVecH(self, theBase, theVec, theH): + # Example: see GEOM_TestAll.py + theH,Parameters = ParseParameters(theH) anObj = self.PrimOp.MakePrismVecH(theBase, theVec, theH) RaiseIfFailed("MakePrismVecH", self.PrimOp) + anObj.SetParameters(Parameters) return anObj ## Create a shape by extrusion of the base shape along the vector, @@ -675,24 +1082,45 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theH Prism dimension along theVec in forward direction. # @return New GEOM_Object, containing the created prism. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_prism "Example" def MakePrismVecH2Ways(self, theBase, theVec, theH): + # Example: see GEOM_TestAll.py + theH,Parameters = ParseParameters(theH) anObj = self.PrimOp.MakePrismVecH2Ways(theBase, theVec, theH) RaiseIfFailed("MakePrismVecH2Ways", self.PrimOp) + anObj.SetParameters(Parameters) return anObj - - ## Create a shape by extrusion of the base shape along - # the path shape. The path shape can be a wire or an edge. + + ## Create a shape by extrusion of the base shape along the dx, dy, dz direction # @param theBase Base shape to be extruded. - # @param thePath Path shape to extrude the base shape along it. - # @return New GEOM_Object, containing the created pipe. + # @param theDX, theDY, theDZ Directions of extrusion. + # @return New GEOM_Object, containing the created prism. # - # Example: see GEOM_TestAll.py - def MakePipe(self,theBase, thePath): - anObj = self.PrimOp.MakePipe(theBase, thePath) - RaiseIfFailed("MakePipe", self.PrimOp) + # @ref tui_creation_prism "Example" + def MakePrismDXDYDZ(self, theBase, theDX, theDY, theDZ): + # Example: see GEOM_TestAll.py + theDX,theDY,theDZ,Parameters = ParseParameters(theDX, theDY, theDZ) + anObj = self.PrimOp.MakePrismDXDYDZ(theBase, theDX, theDY, theDZ) + RaiseIfFailed("MakePrismDXDYDZ", self.PrimOp) + anObj.SetParameters(Parameters) return anObj - + + ## Create a shape by extrusion of the base shape along the dx, dy, dz direction + # i.e. all the space, transfixed by the base shape during its translation + # along the vector on the given distance in 2 Ways (forward/backward) . + # @param theBase Base shape to be extruded. + # @param theDX, theDY, theDZ Directions of extrusion. + # @return New GEOM_Object, containing the created prism. + # + # @ref tui_creation_prism "Example" + def MakePrismDXDYDZ2Ways(self, theBase, theDX, theDY, theDZ): + # Example: see GEOM_TestAll.py + theDX,theDY,theDZ,Parameters = ParseParameters(theDX, theDY, theDZ) + anObj = self.PrimOp.MakePrismDXDYDZ2Ways(theBase, theDX, theDY, theDZ) + RaiseIfFailed("MakePrismDXDYDZ2Ways", self.PrimOp) + anObj.SetParameters(Parameters) + return anObj + ## Create a shape by revolution of the base shape around the axis # on the given angle, i.e. all the space, transfixed by the base # shape during its rotation around the axis on the given angle. @@ -701,17 +1129,48 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theAngle Rotation angle in radians. # @return New GEOM_Object, containing the created revolution. # - # Example: see GEOM_TestAll.py - def MakeRevolution(self,theBase, theAxis, theAngle): + # @ref tui_creation_revolution "Example" + def MakeRevolution(self, theBase, theAxis, theAngle): + # Example: see GEOM_TestAll.py + theAngle,Parameters = ParseParameters(theAngle) anObj = self.PrimOp.MakeRevolutionAxisAngle(theBase, theAxis, theAngle) RaiseIfFailed("MakeRevolutionAxisAngle", self.PrimOp) + anObj.SetParameters(Parameters) return anObj + ## The Same Revolution but in both ways forward&backward. def MakeRevolution2Ways(self, theBase, theAxis, theAngle): + theAngle,Parameters = ParseParameters(theAngle) anObj = self.PrimOp.MakeRevolutionAxisAngle2Ways(theBase, theAxis, theAngle) RaiseIfFailed("MakeRevolutionAxisAngle2Ways", self.PrimOp) + anObj.SetParameters(Parameters) return anObj - + + ## Create a filling from the given compound of contours. + # @param theShape the compound of contours + # @param theMinDeg a minimal degree of BSpline surface to create + # @param theMaxDeg a maximal degree of BSpline surface to create + # @param theTol2D a 2d tolerance to be reached + # @param theTol3D a 3d tolerance to be reached + # @param theNbIter a number of iteration of approximation algorithm + # @param isApprox if True, BSpline curves are generated in the process + # of surface construction. By default it is False, that means + # the surface is created using Besier curves. The usage of + # Approximation makes the algorithm work slower, but allows + # building the surface for rather complex cases + # @return New GEOM_Object, containing the created filling surface. + # + # @ref tui_creation_filling "Example" + def MakeFilling(self, theShape, theMinDeg, theMaxDeg, theTol2D, theTol3D, theNbIter, isApprox=0): + # Example: see GEOM_TestAll.py + theMinDeg,theMaxDeg,theTol2D,theTol3D,theNbIter,Parameters = ParseParameters(theMinDeg, theMaxDeg, + theTol2D, theTol3D, theNbIter) + anObj = self.PrimOp.MakeFilling(theShape, theMinDeg, theMaxDeg, + theTol2D, theTol3D, theNbIter, isApprox) + RaiseIfFailed("MakeFilling", self.PrimOp) + anObj.SetParameters(Parameters) + return anObj + ## Create a shell or solid passing through set of sections.Sections should be wires,edges or vertices. # @param theSeqSections - set of specified sections. # @param theModeSolid - mode defining building solid or shell @@ -719,12 +1178,26 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theRuled - mode defining type of the result surfaces (ruled or smoothed). # @return New GEOM_Object, containing the created shell or solid. # - # Example: see GEOM_TestAll.py + # @ref swig_todo "Example" def MakeThruSections(self,theSeqSections,theModeSolid,thePreci,theRuled): + # Example: see GEOM_TestAll.py anObj = self.PrimOp.MakeThruSections(theSeqSections,theModeSolid,thePreci,theRuled) RaiseIfFailed("MakeThruSections", self.PrimOp) return anObj - + + ## Create a shape by extrusion of the base shape along + # the path shape. The path shape can be a wire or an edge. + # @param theBase Base shape to be extruded. + # @param thePath Path shape to extrude the base shape along it. + # @return New GEOM_Object, containing the created pipe. + # + # @ref tui_creation_pipe "Example" + def MakePipe(self,theBase, thePath): + # Example: see GEOM_TestAll.py + anObj = self.PrimOp.MakePipe(theBase, thePath) + RaiseIfFailed("MakePipe", self.PrimOp) + return anObj + ## Create a shape by extrusion of the profile shape along # the path shape. The path shape can be a wire or an edge. # the several profiles can be specified in the several locations of path. @@ -735,10 +1208,11 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param thePath - Path shape to extrude the base shape along it. # @param theWithContact - the mode defining that the section is translated to be in # contact with the spine. - # @param - WithCorrection - defining that the section is rotated to be - # orthogonal to the spine tangent in the correspondent point + # @param theWithCorrection - defining that the section is rotated to be + # orthogonal to the spine tangent in the correspondent point # @return New GEOM_Object, containing the created pipe. # + # @ref tui_creation_pipe_with_diff_sec "Example" def MakePipeWithDifferentSections(self, theSeqBases, theLocations, thePath, theWithContact, theWithCorrection): @@ -747,12 +1221,18 @@ class geompyDC(GEOM._objref_GEOM_Gen): theWithContact, theWithCorrection) RaiseIfFailed("MakePipeWithDifferentSections", self.PrimOp) return anObj - + ## Create a shape by extrusion of the profile shape along - # the path shape. The path shape can be a shell or a face. + # the path shape. The path shape can be a wire or a edge. # the several profiles can be specified in the several locations of path. - # @param theSeqBases - list of Bases shape to be extruded. + # @param theSeqBases - list of Bases shape to be extruded. Base shape must be + # shell or face. If number of faces in neighbour sections + # aren't coincided result solid between such sections will + # be created using external boundaries of this shells. # @param theSeqSubBases - list of corresponding subshapes of section shapes. + # This list is used for searching correspondences between + # faces in the sections. Size of this list must be equal + # to size of list of base shapes. # @param theLocations - list of locations on the path corresponding # specified list of the Bases shapes. Number of locations # should be equal to number of bases. First and last @@ -761,10 +1241,11 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param thePath - Path shape to extrude the base shape along it. # @param theWithContact - the mode defining that the section is translated to be in # contact with the spine. - # @param - WithCorrection - defining that the section is rotated to be - # orthogonal to the spine tangent in the correspondent point + # @param theWithCorrection - defining that the section is rotated to be + # orthogonal to the spine tangent in the correspondent point # @return New GEOM_Object, containing the created solids. # + # @ref tui_creation_pipe_with_shell_sec "Example" def MakePipeWithShellSections(self,theSeqBases, theSeqSubBases, theLocations, thePath, theWithContact, theWithCorrection): @@ -774,6 +1255,12 @@ class geompyDC(GEOM._objref_GEOM_Gen): RaiseIfFailed("MakePipeWithShellSections", self.PrimOp) return anObj + ## Create a shape by extrusion of the profile shape along + # the path shape. This function is used only for debug pipe + # functionality - it is a version of previous function + # (MakePipeWithShellSections(...)) which give a possibility to + # recieve information about creating pipe between each pair of + # sections step by step. def MakePipeWithShellSectionsBySteps(self, theSeqBases, theSeqSubBases, theLocations, thePath, theWithContact, theWithCorrection): @@ -799,115 +1286,150 @@ class geompyDC(GEOM._objref_GEOM_Gen): res.append(anObj) pass pass - + resc = self.MakeCompound(res) #resc = self.MakeSewing(res, 0.001) #print "resc: ",resc return resc - + ## Create solids between given sections # @param theSeqBases - list of sections (shell or face). # @param theLocations - list of corresponding vertexes # @return New GEOM_Object, containing the created solids. # + # @ref tui_creation_pipe_without_path "Example" def MakePipeShellsWithoutPath(self, theSeqBases, theLocations): anObj = self.PrimOp.MakePipeShellsWithoutPath(theSeqBases, theLocations) RaiseIfFailed("MakePipeShellsWithoutPath", self.PrimOp) return anObj - - - # ----------------------------------------------------------------------------- - # Create base shapes - # ----------------------------------------------------------------------------- - + + ## Create a shape by extrusion of the base shape along + # the path shape with constant bi-normal direction along the given vector. + # The path shape can be a wire or an edge. + # @param theBase Base shape to be extruded. + # @param thePath Path shape to extrude the base shape along it. + # @param theVec Vector defines a constant binormal direction to keep the + # same angle beetween the direction and the sections + # along the sweep surface. + # @return New GEOM_Object, containing the created pipe. + # + # @ref tui_creation_pipe "Example" + def MakePipeBiNormalAlongVector(self,theBase, thePath, theVec): + # Example: see GEOM_TestAll.py + anObj = self.PrimOp.MakePipeBiNormalAlongVector(theBase, thePath, theVec) + RaiseIfFailed("MakePipeBiNormalAlongVector", self.PrimOp) + return anObj + + # end of l3_complex + ## @} + + ## @addtogroup l3_advanced + ## @{ + ## Create a linear edge with specified ends. # @param thePnt1 Point for the first end of edge. # @param thePnt2 Point for the second end of edge. # @return New GEOM_Object, containing the created edge. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_edge "Example" def MakeEdge(self,thePnt1, thePnt2): + # Example: see GEOM_TestAll.py anObj = self.ShapesOp.MakeEdge(thePnt1, thePnt2) RaiseIfFailed("MakeEdge", self.ShapesOp) return anObj - + ## Create a wire from the set of edges and wires. # @param theEdgesAndWires List of edges and/or wires. # @return New GEOM_Object, containing the created wire. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_wire "Example" def MakeWire(self,theEdgesAndWires): + # Example: see GEOM_TestAll.py anObj = self.ShapesOp.MakeWire(theEdgesAndWires) RaiseIfFailed("MakeWire", self.ShapesOp) return anObj - + ## Create a face on the given wire. # @param theWire closed Wire or Edge to build the face on. # @param isPlanarWanted If TRUE, only planar face will be built. # If impossible, NULL object will be returned. # @return New GEOM_Object, containing the created face. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_face "Example" def MakeFace(self,theWire, isPlanarWanted): + # Example: see GEOM_TestAll.py anObj = self.ShapesOp.MakeFace(theWire, isPlanarWanted) RaiseIfFailed("MakeFace", self.ShapesOp) return anObj - + ## Create a face on the given wires set. # @param theWires List of closed wires or edges to build the face on. # @param isPlanarWanted If TRUE, only planar face will be built. # If impossible, NULL object will be returned. # @return New GEOM_Object, containing the created face. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_face "Example" def MakeFaceWires(self,theWires, isPlanarWanted): + # Example: see GEOM_TestAll.py anObj = self.ShapesOp.MakeFaceWires(theWires, isPlanarWanted) RaiseIfFailed("MakeFaceWires", self.ShapesOp) return anObj - + ## Shortcut to MakeFaceWires() # - # Example: see GEOM_TestOthers.py + # @ref tui_creation_face "Example 1" + # \n @ref swig_MakeFaces "Example 2" def MakeFaces(self,theWires, isPlanarWanted): + # Example: see GEOM_TestOthers.py anObj = self.MakeFaceWires(theWires, isPlanarWanted) return anObj - + ## Create a shell from the set of faces and shells. # @param theFacesAndShells List of faces and/or shells. # @return New GEOM_Object, containing the created shell. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_shell "Example" def MakeShell(self,theFacesAndShells): + # Example: see GEOM_TestAll.py anObj = self.ShapesOp.MakeShell(theFacesAndShells) RaiseIfFailed("MakeShell", self.ShapesOp) return anObj - + ## Create a solid, bounded by the given shells. # @param theShells Sequence of bounding shells. # @return New GEOM_Object, containing the created solid. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_solid "Example" def MakeSolid(self,theShells): + # Example: see GEOM_TestAll.py anObj = self.ShapesOp.MakeSolidShells(theShells) RaiseIfFailed("MakeSolidShells", self.ShapesOp) return anObj - + ## Create a compound of the given shapes. # @param theShapes List of shapes to put in compound. # @return New GEOM_Object, containing the created compound. # - # Example: see GEOM_TestAll.py + # @ref tui_creation_compound "Example" def MakeCompound(self,theShapes): + # Example: see GEOM_TestAll.py anObj = self.ShapesOp.MakeCompound(theShapes) RaiseIfFailed("MakeCompound", self.ShapesOp) return anObj - + + # end of l3_advanced + ## @} + + ## @addtogroup l2_measure + ## @{ + ## Gives quantity of faces in the given shape. # @param theShape Shape to count faces of. # @return Quantity of faces. # - # Example: see GEOM_TestOthers.py + # @ref swig_NumberOfFaces "Example" def NumberOfFaces(self,theShape): + # Example: see GEOM_TestOthers.py nb_faces = self.ShapesOp.NumberOfFaces(theShape) RaiseIfFailed("NumberOfFaces", self.ShapesOp) return nb_faces @@ -916,54 +1438,72 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theShape Shape to count edges of. # @return Quantity of edges. # - # Example: see GEOM_TestOthers.py + # @ref swig_NumberOfEdges "Example" def NumberOfEdges(self,theShape): + # Example: see GEOM_TestOthers.py nb_edges = self.ShapesOp.NumberOfEdges(theShape) RaiseIfFailed("NumberOfEdges", self.ShapesOp) return nb_edges - + + # end of l2_measure + ## @} + + ## @addtogroup l3_healing + ## @{ + ## Reverses an orientation the given shape. # @param theShape Shape to be reversed. # @return The reversed copy of theShape. # - # Example: see GEOM_TestAll.py + # @ref swig_ChangeOrientation "Example" def ChangeOrientation(self,theShape): + # Example: see GEOM_TestAll.py anObj = self.ShapesOp.ChangeOrientation(theShape) RaiseIfFailed("ChangeOrientation", self.ShapesOp) return anObj - + ## Shortcut to ChangeOrientation() # - # Example: see GEOM_TestOthers.py + # @ref swig_OrientationChange "Example" def OrientationChange(self,theShape): + # Example: see GEOM_TestOthers.py anObj = self.ChangeOrientation(theShape) return anObj - + + # end of l3_healing + ## @} + + ## @addtogroup l4_obtain + ## @{ + ## Retrieve all free faces from the given shape. # Free face is a face, which is not shared between two shells of the shape. # @param theShape Shape to find free faces in. # @return List of IDs of all free faces, contained in theShape. # - # Example: see GEOM_TestOthers.py + # @ref tui_measurement_tools_page "Example" def GetFreeFacesIDs(self,theShape): + # Example: see GEOM_TestOthers.py anIDs = self.ShapesOp.GetFreeFacesIDs(theShape) RaiseIfFailed("GetFreeFacesIDs", self.ShapesOp) return anIDs - + ## Get all sub-shapes of theShape1 of the given type, shared with theShape2. # @param theShape1 Shape to find sub-shapes in. # @param theShape2 Shape to find shared sub-shapes with. # @param theShapeType Type of sub-shapes to be retrieved. # @return List of sub-shapes of theShape1, shared with theShape2. # - # Example: see GEOM_TestOthers.py + # @ref swig_GetSharedShapes "Example" def GetSharedShapes(self,theShape1, theShape2, theShapeType): + # Example: see GEOM_TestOthers.py aList = self.ShapesOp.GetSharedShapes(theShape1, theShape2, theShapeType) RaiseIfFailed("GetSharedShapes", self.ShapesOp) return aList - - ## Find in \a theShape all sub-shapes of type \a theShapeType, situated relatively - # the specified plane by the certain way, defined through \a theState parameter. + + ## Find in theShape all sub-shapes of type theShapeType, + # situated relatively the specified plane by the certain way, + # defined through theState parameter. # @param theShape Shape to find sub-shapes of. # @param theShapeType Type of sub-shapes to be retrieved. # @param theAx1 Vector (or line, or linear edge), specifying normal @@ -972,45 +1512,52 @@ class geompyDC(GEOM._objref_GEOM_Gen): # ST_ON, ST_OUT, ST_ONOUT, ST_IN, ST_ONIN. # @return List of all found sub-shapes. # - # Example: see GEOM_TestOthers.py + # @ref swig_GetShapesOnPlane "Example" def GetShapesOnPlane(self,theShape, theShapeType, theAx1, theState): + # Example: see GEOM_TestOthers.py aList = self.ShapesOp.GetShapesOnPlane(theShape, theShapeType, theAx1, theState) RaiseIfFailed("GetShapesOnPlane", self.ShapesOp) return aList - + ## Works like the above method, but returns list of sub-shapes indices # - # Example: see GEOM_TestOthers.py + # @ref swig_GetShapesOnPlaneIDs "Example" def GetShapesOnPlaneIDs(self,theShape, theShapeType, theAx1, theState): + # Example: see GEOM_TestOthers.py aList = self.ShapesOp.GetShapesOnPlaneIDs(theShape, theShapeType, theAx1, theState) RaiseIfFailed("GetShapesOnPlaneIDs", self.ShapesOp) return aList - - ## Find in \a theShape all sub-shapes of type \a theShapeType, situated relatively - # the specified plane by the certain way, defined through \a theState parameter. + + ## Find in theShape all sub-shapes of type theShapeType, + # situated relatively the specified plane by the certain way, + # defined through theState parameter. # @param theShape Shape to find sub-shapes of. # @param theShapeType Type of sub-shapes to be retrieved. # @param theAx1 Vector (or line, or linear edge), specifying normal # direction of the plane to find shapes on. # @param thePnt Point specifying location of the plane to find shapes on. # @param theState The state of the subshapes to find. It can be one of - # ST_ON, ST_OUT, ST_ONOUT, ST_IN, ST_ONIN. + # ST_ON, ST_OUT, ST_ONOUT, ST_IN, ST_ONIN. # @return List of all found sub-shapes. # - # Example: see GEOM_TestOthers.py - def GetShapesOnPlaneWithLocation(self,theShape, theShapeType, theAx1, thePnt, theState): - aList = self.ShapesOp.GetShapesOnPlaneWithLocation(theShape, theShapeType, theAx1, thePnt, theState) + # @ref swig_GetShapesOnPlaneWithLocation "Example" + def GetShapesOnPlaneWithLocation(self, theShape, theShapeType, theAx1, thePnt, theState): + # Example: see GEOM_TestOthers.py + aList = self.ShapesOp.GetShapesOnPlaneWithLocation(theShape, theShapeType, + theAx1, thePnt, theState) RaiseIfFailed("GetShapesOnPlaneWithLocation", self.ShapesOp) return aList - + ## Works like the above method, but returns list of sub-shapes indices # - # Example: see GEOM_TestOthers.py - def GetShapesOnPlaneWithLocationIDs(self,theShape, theShapeType, theAx1, thePnt, theState): - aList = self.ShapesOp.GetShapesOnPlaneWithLocationIDs(theShape, theShapeType, theAx1, thePnt, theState) + # @ref swig_GetShapesOnPlaneWithLocationIDs "Example" + def GetShapesOnPlaneWithLocationIDs(self, theShape, theShapeType, theAx1, thePnt, theState): + # Example: see GEOM_TestOthers.py + aList = self.ShapesOp.GetShapesOnPlaneWithLocationIDs(theShape, theShapeType, + theAx1, thePnt, theState) RaiseIfFailed("GetShapesOnPlaneWithLocationIDs", self.ShapesOp) return aList - + ## Find in \a theShape all sub-shapes of type \a theShapeType, situated relatively # the specified cylinder by the certain way, defined through \a theState parameter. # @param theShape Shape to find sub-shapes of. @@ -1022,20 +1569,22 @@ class geompyDC(GEOM._objref_GEOM_Gen): # ST_ON, ST_OUT, ST_ONOUT, ST_IN, ST_ONIN. # @return List of all found sub-shapes. # - # Example: see GEOM_TestOthers.py - def GetShapesOnCylinder(self,theShape, theShapeType, theAxis, theRadius, theState): + # @ref swig_GetShapesOnCylinder "Example" + def GetShapesOnCylinder(self, theShape, theShapeType, theAxis, theRadius, theState): + # Example: see GEOM_TestOthers.py aList = self.ShapesOp.GetShapesOnCylinder(theShape, theShapeType, theAxis, theRadius, theState) RaiseIfFailed("GetShapesOnCylinder", self.ShapesOp) return aList - + ## Works like the above method, but returns list of sub-shapes indices # - # Example: see GEOM_TestOthers.py - def GetShapesOnCylinderIDs(self,theShape, theShapeType, theAxis, theRadius, theState): + # @ref swig_GetShapesOnCylinderIDs "Example" + def GetShapesOnCylinderIDs(self, theShape, theShapeType, theAxis, theRadius, theState): + # Example: see GEOM_TestOthers.py aList = self.ShapesOp.GetShapesOnCylinderIDs(theShape, theShapeType, theAxis, theRadius, theState) RaiseIfFailed("GetShapesOnCylinderIDs", self.ShapesOp) return aList - + ## Find in \a theShape all sub-shapes of type \a theShapeType, situated relatively # the specified sphere by the certain way, defined through \a theState parameter. # @param theShape Shape to find sub-shapes of. @@ -1046,20 +1595,22 @@ class geompyDC(GEOM._objref_GEOM_Gen): # ST_ON, ST_OUT, ST_ONOUT, ST_IN, ST_ONIN. # @return List of all found sub-shapes. # - # Example: see GEOM_TestOthers.py + # @ref swig_GetShapesOnSphere "Example" def GetShapesOnSphere(self,theShape, theShapeType, theCenter, theRadius, theState): + # Example: see GEOM_TestOthers.py aList = self.ShapesOp.GetShapesOnSphere(theShape, theShapeType, theCenter, theRadius, theState) RaiseIfFailed("GetShapesOnSphere", self.ShapesOp) return aList - + ## Works like the above method, but returns list of sub-shapes indices # - # Example: see GEOM_TestOthers.py + # @ref swig_GetShapesOnSphereIDs "Example" def GetShapesOnSphereIDs(self,theShape, theShapeType, theCenter, theRadius, theState): + # Example: see GEOM_TestOthers.py aList = self.ShapesOp.GetShapesOnSphereIDs(theShape, theShapeType, theCenter, theRadius, theState) RaiseIfFailed("GetShapesOnSphereIDs", self.ShapesOp) return aList - + ## Find in \a theShape all sub-shapes of type \a theShapeType, situated relatively # the specified quadrangle by the certain way, defined through \a theState parameter. # @param theShape Shape to find sub-shapes of. @@ -1069,56 +1620,109 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theBottomLeftPoint Point, specifying bottom left corner of a quadrangle # @param theBottomRigthPoint Point, specifying bottom right corner of a quadrangle # @param theState The state of the subshapes to find. It can be one of - # ST_ON, ST_OUT, ST_ONOUT, ST_IN, ST_ONIN. + # ST_ON, ST_OUT, ST_ONOUT, ST_IN, ST_ONIN. # @return List of all found sub-shapes. # - # Example: see GEOM_TestOthers.py - def GetShapesOnQuadrangle(self,theShape, theShapeType, theTopLeftPoint, theTopRigthPoint, theBottomLeftPoint, theBottomRigthPoint, theState): - aList = self.ShapesOp.GetShapesOnQuadrangle(theShape, theShapeType, theTopLeftPoint, theTopRigthPoint, theBottomLeftPoint, theBottomRigthPoint, theState) + # @ref swig_GetShapesOnQuadrangle "Example" + def GetShapesOnQuadrangle(self, theShape, theShapeType, + theTopLeftPoint, theTopRigthPoint, + theBottomLeftPoint, theBottomRigthPoint, theState): + # Example: see GEOM_TestOthers.py + aList = self.ShapesOp.GetShapesOnQuadrangle(theShape, theShapeType, + theTopLeftPoint, theTopRigthPoint, + theBottomLeftPoint, theBottomRigthPoint, theState) RaiseIfFailed("GetShapesOnQuadrangle", self.ShapesOp) return aList - + ## Works like the above method, but returns list of sub-shapes indices # - # Example: see GEOM_TestOthers.py - def GetShapesOnQuadrangleIDs(self,theShape, theShapeType, theTopLeftPoint, theTopRigthPoint, theBottomLeftPoint, theBottomRigthPoint, theState): - aList = self.ShapesOp.GetShapesOnQuadrangleIDs(theShape, theShapeType, theTopLeftPoint, theTopRigthPoint, theBottomLeftPoint, theBottomRigthPoint, theState) + # @ref swig_GetShapesOnQuadrangleIDs "Example" + def GetShapesOnQuadrangleIDs(self, theShape, theShapeType, + theTopLeftPoint, theTopRigthPoint, + theBottomLeftPoint, theBottomRigthPoint, theState): + # Example: see GEOM_TestOthers.py + aList = self.ShapesOp.GetShapesOnQuadrangleIDs(theShape, theShapeType, + theTopLeftPoint, theTopRigthPoint, + theBottomLeftPoint, theBottomRigthPoint, theState) RaiseIfFailed("GetShapesOnQuadrangleIDs", self.ShapesOp) return aList - + ## Find in \a theShape all sub-shapes of type \a theShapeType, situated relatively # the specified \a theBox by the certain way, defined through \a theState parameter. # @param theBox Shape for relative comparing. # @param theShape Shape to find sub-shapes of. # @param theShapeType Type of sub-shapes to be retrieved. # @param theState The state of the subshapes to find. It can be one of - # ST_ON, ST_OUT, ST_ONOUT, ST_IN, ST_ONIN. + # ST_ON, ST_OUT, ST_ONOUT, ST_IN, ST_ONIN. # @return List of all found sub-shapes. # - def GetShapesOnBox(self,theBox, theShape, theShapeType, theState): + # @ref swig_GetShapesOnBox "Example" + def GetShapesOnBox(self, theBox, theShape, theShapeType, theState): + # Example: see GEOM_TestOthers.py aList = self.ShapesOp.GetShapesOnBox(theBox, theShape, theShapeType, theState) RaiseIfFailed("GetShapesOnBox", self.ShapesOp) return aList - + ## Works like the above method, but returns list of sub-shapes indices # - def GetShapesOnBoxIDs(self,theBox, theShape, theShapeType, theState): + # @ref swig_GetShapesOnBoxIDs "Example" + def GetShapesOnBoxIDs(self, theBox, theShape, theShapeType, theState): + # Example: see GEOM_TestOthers.py aList = self.ShapesOp.GetShapesOnBoxIDs(theBox, theShape, theShapeType, theState) RaiseIfFailed("GetShapesOnBoxIDs", self.ShapesOp) return aList - + + ## Find in \a theShape all sub-shapes of type \a theShapeType, + # situated relatively the specified \a theCheckShape by the + # certain way, defined through \a theState parameter. + # @param theCheckShape Shape for relative comparing. + # @param theShape Shape to find sub-shapes of. + # @param theShapeType Type of sub-shapes to be retrieved. + # @param theState The state of the subshapes to find. It can be one of + # ST_ON, ST_OUT, ST_ONOUT, ST_IN, ST_ONIN. + # @return List of all found sub-shapes. + # + # @ref swig_GetShapesOnShape "Example" + def GetShapesOnShape(self, theCheckShape, theShape, theShapeType, theState): + # Example: see GEOM_TestOthers.py + aList = self.ShapesOp.GetShapesOnShape(theCheckShape, theShape, + theShapeType, theState) + RaiseIfFailed("GetShapesOnShape", self.ShapesOp) + return aList + + ## Works like the above method, but returns result as compound + # + # @ref swig_GetShapesOnShapeAsCompound "Example" + def GetShapesOnShapeAsCompound(self, theCheckShape, theShape, theShapeType, theState): + # Example: see GEOM_TestOthers.py + anObj = self.ShapesOp.GetShapesOnShapeAsCompound(theCheckShape, theShape, + theShapeType, theState) + RaiseIfFailed("GetShapesOnShapeAsCompound", self.ShapesOp) + return anObj + + ## Works like the above method, but returns list of sub-shapes indices + # + # @ref swig_GetShapesOnShapeIDs "Example" + def GetShapesOnShapeIDs(self, theCheckShape, theShape, theShapeType, theState): + # Example: see GEOM_TestOthers.py + aList = self.ShapesOp.GetShapesOnShapeIDs(theCheckShape, theShape, + theShapeType, theState) + RaiseIfFailed("GetShapesOnShapeIDs", self.ShapesOp) + return aList + ## Get sub-shape(s) of theShapeWhere, which are # coincident with \a theShapeWhat or could be a part of it. # @param theShapeWhere Shape to find sub-shapes of. # @param theShapeWhat Shape, specifying what to find. # @return Group of all found sub-shapes or a single found sub-shape. # - # Example: see GEOM_TestOthers.py + # @ref swig_GetInPlace "Example" def GetInPlace(self,theShapeWhere, theShapeWhat): + # Example: see GEOM_TestOthers.py anObj = self.ShapesOp.GetInPlace(theShapeWhere, theShapeWhat) RaiseIfFailed("GetInPlace", self.ShapesOp) return anObj - + ## Get sub-shape(s) of \a theShapeWhere, which are # coincident with \a theShapeWhat or could be a part of it. # @@ -1133,8 +1737,9 @@ class geompyDC(GEOM._objref_GEOM_Gen): # building history of the ShapeWhere). # @return Group of all found sub-shapes or a single found sub-shape. # - # Example: see GEOM_TestOthers.py + # @ref swig_GetInPlace "Example" def GetInPlaceByHistory(self, theShapeWhere, theShapeWhat): + # Example: see GEOM_TestOthers.py anObj = self.ShapesOp.GetInPlaceByHistory(theShapeWhere, theShapeWhat) RaiseIfFailed("GetInPlaceByHistory", self.ShapesOp) return anObj @@ -1145,83 +1750,97 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theShapeWhat Shape, specifying what to find. # @return New GEOM_Object for found sub-shape. # + # @ref swig_GetSame "Example" def GetSame(self,theShapeWhere, theShapeWhat): anObj = self.ShapesOp.GetSame(theShapeWhere, theShapeWhat) RaiseIfFailed("GetSame", self.ShapesOp) return anObj - - # ----------------------------------------------------------------------------- - # Access to sub-shapes by their unique IDs inside the main shape. - # ----------------------------------------------------------------------------- - - ## Obtain a composite sub-shape of , composed from sub-shapes - # of , selected by their unique IDs inside + + # end of l4_obtain + ## @} + + ## @addtogroup l4_access + ## @{ + + ## Obtain a composite sub-shape of aShape, composed from sub-shapes + # of aShape, selected by their unique IDs inside aShape # - # Example: see GEOM_TestAll.py - def GetSubShape(self,aShape, ListOfID): + # @ref swig_all_decompose "Example" + def GetSubShape(self, aShape, ListOfID): + # Example: see GEOM_TestAll.py anObj = self.AddSubShape(aShape,ListOfID) return anObj - - ## Obtain unique ID of sub-shape inside + + ## Obtain unique ID of sub-shape aSubShape inside aShape # - # Example: see GEOM_TestAll.py - def GetSubShapeID(self,aShape, aSubShape): + # @ref swig_all_decompose "Example" + def GetSubShapeID(self, aShape, aSubShape): + # Example: see GEOM_TestAll.py anID = self.LocalOp.GetSubShapeIndex(aShape, aSubShape) RaiseIfFailed("GetSubShapeIndex", self.LocalOp) return anID - - # ----------------------------------------------------------------------------- - # Decompose objects - # ----------------------------------------------------------------------------- - + + # end of l4_access + ## @} + + ## @addtogroup l4_decompose + ## @{ + ## Explode a shape on subshapes of a given type. - # @param theShape Shape to be exploded. - # @param theShapeType Type of sub-shapes to be retrieved. + # @param aShape Shape to be exploded. + # @param aType Type of sub-shapes to be retrieved. # @return List of sub-shapes of type theShapeType, contained in theShape. # - # Example: see GEOM_TestAll.py - def SubShapeAll(self,aShape, aType): + # @ref swig_all_decompose "Example" + def SubShapeAll(self, aShape, aType): + # Example: see GEOM_TestAll.py ListObj = self.ShapesOp.MakeExplode(aShape,aType,0) RaiseIfFailed("MakeExplode", self.ShapesOp) return ListObj - + ## Explode a shape on subshapes of a given type. - # @param theShape Shape to be exploded. - # @param theShapeType Type of sub-shapes to be retrieved. + # @param aShape Shape to be exploded. + # @param aType Type of sub-shapes to be retrieved. # @return List of IDs of sub-shapes. - def SubShapeAllIDs(self,aShape, aType): + # + # @ref swig_all_decompose "Example" + def SubShapeAllIDs(self, aShape, aType): ListObj = self.ShapesOp.SubShapeAllIDs(aShape,aType,0) RaiseIfFailed("SubShapeAllIDs", self.ShapesOp) return ListObj - + ## Explode a shape on subshapes of a given type. # Sub-shapes will be sorted by coordinates of their gravity centers. - # @param theShape Shape to be exploded. - # @param theShapeType Type of sub-shapes to be retrieved. + # @param aShape Shape to be exploded. + # @param aType Type of sub-shapes to be retrieved. # @return List of sub-shapes of type theShapeType, contained in theShape. # - # Example: see GEOM_TestAll.py - def SubShapeAllSorted(self,aShape, aType): + # @ref swig_SubShapeAllSorted "Example" + def SubShapeAllSorted(self, aShape, aType): + # Example: see GEOM_TestAll.py ListObj = self.ShapesOp.MakeExplode(aShape,aType,1) RaiseIfFailed("MakeExplode", self.ShapesOp) return ListObj - + ## Explode a shape on subshapes of a given type. # Sub-shapes will be sorted by coordinates of their gravity centers. - # @param theShape Shape to be exploded. - # @param theShapeType Type of sub-shapes to be retrieved. + # @param aShape Shape to be exploded. + # @param aType Type of sub-shapes to be retrieved. # @return List of IDs of sub-shapes. - def SubShapeAllSortedIDs(self,aShape, aType): + # + # @ref swig_all_decompose "Example" + def SubShapeAllSortedIDs(self, aShape, aType): ListIDs = self.ShapesOp.SubShapeAllIDs(aShape,aType,1) RaiseIfFailed("SubShapeAllIDs", self.ShapesOp) return ListIDs - - ## Obtain a compound of sub-shapes of , - # selected by they indices in list of all sub-shapes of type . + + ## Obtain a compound of sub-shapes of aShape, + # selected by they indices in list of all sub-shapes of type aType. # Each index is in range [1, Nb_Sub-Shapes_Of_Given_Type] # - # Example: see GEOM_TestAll.py - def SubShape(self,aShape, aType, ListOfInd): + # @ref swig_all_decompose "Example" + def SubShape(self, aShape, aType, ListOfInd): + # Example: see GEOM_TestAll.py ListOfIDs = [] AllShapeList = self.SubShapeAll(aShape, aType) for ind in ListOfInd: @@ -1229,54 +1848,65 @@ class geompyDC(GEOM._objref_GEOM_Gen): anObj = self.GetSubShape(aShape, ListOfIDs) return anObj - ## Obtain a compound of sub-shapes of , - # selected by they indices in sorted list of all sub-shapes of type . + ## Obtain a compound of sub-shapes of aShape, + # selected by they indices in sorted list of all sub-shapes of type aType. # Each index is in range [1, Nb_Sub-Shapes_Of_Given_Type] # - # Example: see GEOM_TestAll.py + # @ref swig_all_decompose "Example" def SubShapeSorted(self,aShape, aType, ListOfInd): + # Example: see GEOM_TestAll.py ListOfIDs = [] AllShapeList = self.SubShapeAllSorted(aShape, aType) for ind in ListOfInd: ListOfIDs.append(self.GetSubShapeID(aShape, AllShapeList[ind - 1])) anObj = self.GetSubShape(aShape, ListOfIDs) return anObj - - # ----------------------------------------------------------------------------- - # Healing operations - # ----------------------------------------------------------------------------- - + + # end of l4_decompose + ## @} + + ## @addtogroup l3_healing + ## @{ + ## Apply a sequence of Shape Healing operators to the given object. # @param theShape Shape to be processed. # @param theOperators List of names of operators ("FixShape", "SplitClosedFaces", etc.). # @param theParameters List of names of parameters # ("FixShape.Tolerance3d", "SplitClosedFaces.NbSplitPoints", etc.). # @param theValues List of values of parameters, in the same order - # as parameters are listed in \a theParameters list. + # as parameters are listed in theParameters list. # @return New GEOM_Object, containing processed shape. # - # Example: see GEOM_TestHealing.py + # @ref tui_shape_processing "Example" def ProcessShape(self,theShape, theOperators, theParameters, theValues): + # Example: see GEOM_TestHealing.py + theValues,Parameters = ParseList(theValues) anObj = self.HealOp.ProcessShape(theShape, theOperators, theParameters, theValues) RaiseIfFailed("ProcessShape", self.HealOp) + for string in (theOperators + theParameters): + Parameters = ":" + Parameters + pass + anObj.SetParameters(Parameters) return anObj - + ## Remove faces from the given object (shape). # @param theObject Shape to be processed. # @param theFaces Indices of faces to be removed, if EMPTY then the method # removes ALL faces of the given object. # @return New GEOM_Object, containing processed shape. # - # Example: see GEOM_TestHealing.py + # @ref tui_suppress_faces "Example" def SuppressFaces(self,theObject, theFaces): + # Example: see GEOM_TestHealing.py anObj = self.HealOp.SuppressFaces(theObject, theFaces) RaiseIfFailed("SuppressFaces", self.HealOp) return anObj ## Sewing of some shapes into single shape. # - # Example: see GEOM_TestHealing.py - def MakeSewing(self,ListShape, theTolerance): + # @ref tui_sewing "Example" + def MakeSewing(self, ListShape, theTolerance): + # Example: see GEOM_TestHealing.py comp = self.MakeCompound(ListShape) anObj = self.Sew(comp, theTolerance) return anObj @@ -1285,51 +1915,55 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theObject Shape to be processed. # @param theTolerance Required tolerance value. # @return New GEOM_Object, containing processed shape. - # - # Example: see MakeSewing() above - def Sew(self,theObject, theTolerance): + def Sew(self, theObject, theTolerance): + # Example: see MakeSewing() above + theTolerance,Parameters = ParseParameters(theTolerance) anObj = self.HealOp.Sew(theObject, theTolerance) RaiseIfFailed("Sew", self.HealOp) + anObj.SetParameters(Parameters) return anObj - + ## Remove internal wires and edges from the given object (face). # @param theObject Shape to be processed. # @param theWires Indices of wires to be removed, if EMPTY then the method # removes ALL internal wires of the given object. # @return New GEOM_Object, containing processed shape. # - # Example: see GEOM_TestHealing.py + # @ref tui_suppress_internal_wires "Example" def SuppressInternalWires(self,theObject, theWires): + # Example: see GEOM_TestHealing.py anObj = self.HealOp.RemoveIntWires(theObject, theWires) RaiseIfFailed("RemoveIntWires", self.HealOp) return anObj - + ## Remove internal closed contours (holes) from the given object. # @param theObject Shape to be processed. # @param theWires Indices of wires to be removed, if EMPTY then the method # removes ALL internal holes of the given object # @return New GEOM_Object, containing processed shape. # - # Example: see GEOM_TestHealing.py + # @ref tui_suppress_holes "Example" def SuppressHoles(self,theObject, theWires): + # Example: see GEOM_TestHealing.py anObj = self.HealOp.FillHoles(theObject, theWires) RaiseIfFailed("FillHoles", self.HealOp) return anObj - + ## Close an open wire. # @param theObject Shape to be processed. # @param theWires Indexes of edge(s) and wire(s) to be closed within theObject's shape, - # if -1, then theObject itself is a wire. + # if -1, then theObject itself is a wire. # @param isCommonVertex If TRUE : closure by creation of a common vertex, # If FALS : closure by creation of an edge between ends. # @return New GEOM_Object, containing processed shape. # - # Example: see GEOM_TestHealing.py + # @ref tui_close_contour "Example" def CloseContour(self,theObject, theWires, isCommonVertex): + # Example: see GEOM_TestHealing.py anObj = self.HealOp.CloseContour(theObject, theWires, isCommonVertex) RaiseIfFailed("CloseContour", self.HealOp) return anObj - + ## Addition of a point to a given edge object. # @param theObject Shape to be processed. # @param theEdgeIndex Index of edge to be divided within theObject's shape, @@ -1340,28 +1974,34 @@ class geompyDC(GEOM._objref_GEOM_Gen): # if FALSE : \a theValue is treated as a length parameter [0..1] # @return New GEOM_Object, containing processed shape. # - # Example: see GEOM_TestHealing.py + # @ref tui_add_point_on_edge "Example" def DivideEdge(self,theObject, theEdgeIndex, theValue, isByParameter): + # Example: see GEOM_TestHealing.py + theEdgeIndex,theValue,isByParameter,Parameters = ParseParameters(theEdgeIndex,theValue,isByParameter) anObj = self.HealOp.DivideEdge(theObject, theEdgeIndex, theValue, isByParameter) RaiseIfFailed("DivideEdge", self.HealOp) + anObj.SetParameters(Parameters) return anObj - - ## Change orientation of the given object. + + ## Change orientation of the given object. Updates given shape. # @param theObject Shape to be processed. - # @update given shape + # + # @ref swig_todo "Example" def ChangeOrientationShell(self,theObject): theObject = self.HealOp.ChangeOrientation(theObject) RaiseIfFailed("ChangeOrientation", self.HealOp) pass - + ## Change orientation of the given object. # @param theObject Shape to be processed. # @return New GEOM_Object, containing processed shape. + # + # @ref swig_todo "Example" def ChangeOrientationShellCopy(self,theObject): anObj = self.HealOp.ChangeOrientationCopy(theObject) RaiseIfFailed("ChangeOrientationCopy", self.HealOp) return anObj - + ## Get a list of wires (wrapped in GEOM_Object-s), # that constitute a free boundary of the given shape. # @param theObject Shape to get free boundary of. @@ -1370,39 +2010,13 @@ class geompyDC(GEOM._objref_GEOM_Gen): # theClosedWires: Closed wires on the free boundary of the given shape. # theOpenWires: Open wires on the free boundary of the given shape. # - # Example: see GEOM_TestHealing.py + # @ref tui_measurement_tools_page "Example" def GetFreeBoundary(self,theObject): + # Example: see GEOM_TestHealing.py anObj = self.HealOp.GetFreeBoundary(theObject) RaiseIfFailed("GetFreeBoundary", self.HealOp) return anObj - - # ----------------------------------------------------------------------------- - # Create advanced objects - # ----------------------------------------------------------------------------- - - ## Create a copy of the given object - # - # Example: see GEOM_TestAll.py - def MakeCopy(self,theOriginal): - anObj = self.InsertOp.MakeCopy(theOriginal) - RaiseIfFailed("MakeCopy", self.InsertOp) - return anObj - - ## Create a filling from the given compound of contours. - # @param theShape the compound of contours - # @param theMinDeg a minimal degree of BSpline surface to create - # @param theMaxDeg a maximal degree of BSpline surface to create - # @param theTol2D a 2d tolerance to be reached - # @param theTol3D a 3d tolerance to be reached - # @param theNbIter a number of iteration of approximation algorithm - # @return New GEOM_Object, containing the created filling surface. - # - # Example: see GEOM_TestAll.py - def MakeFilling(self,theShape, theMinDeg, theMaxDeg, theTol2D, theTol3D, theNbIter, isApprox=0): - anObj = self.PrimOp.MakeFilling(theShape, theMinDeg, theMaxDeg, theTol2D, theTol3D, theNbIter, isApprox) - RaiseIfFailed("MakeFilling", self.PrimOp) - return anObj - + ## Replace coincident faces in theShape by one face. # @param theShape Initial shape. # @param theTolerance Maximum distance between faces, which can be considered as coincident. @@ -1410,27 +2024,29 @@ class geompyDC(GEOM._objref_GEOM_Gen): # otherwise all initial shapes. # @return New GEOM_Object, containing a copy of theShape without coincident faces. # - # Example: see GEOM_Spanner.py + # @ref tui_glue_faces "Example" def MakeGlueFaces(self, theShape, theTolerance, doKeepNonSolids=True): + # Example: see GEOM_Spanner.py + theTolerance,Parameters = ParseParameters(theTolerance) anObj = self.ShapesOp.MakeGlueFaces(theShape, theTolerance, doKeepNonSolids) if anObj is None: raise RuntimeError, "MakeGlueFaces : " + self.ShapesOp.GetErrorCode() + anObj.SetParameters(Parameters) return anObj - - + ## Find coincident faces in theShape for possible gluing. # @param theShape Initial shape. # @param theTolerance Maximum distance between faces, # which can be considered as coincident. # @return ListOfGO. # - # Example: see GEOM_Spanner.py + # @ref swig_todo "Example" def GetGlueFaces(self, theShape, theTolerance): + # Example: see GEOM_Spanner.py anObj = self.ShapesOp.GetGlueFaces(theShape, theTolerance) RaiseIfFailed("GetGlueFaces", self.ShapesOp) return anObj - - + ## Replace coincident faces in theShape by one face # in compliance with given list of faces # @param theShape Initial shape. @@ -1442,18 +2058,24 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @return New GEOM_Object, containing a copy of theShape # without some faces. # - # Example: see GEOM_Spanner.py + # @ref swig_todo "Example" def MakeGlueFacesByList(self, theShape, theTolerance, theFaces, doKeepNonSolids=True): + # Example: see GEOM_Spanner.py anObj = self.ShapesOp.MakeGlueFacesByList(theShape, theTolerance, theFaces, doKeepNonSolids) if anObj is None: raise RuntimeError, "MakeGlueFacesByList : " + self.ShapesOp.GetErrorCode() return anObj - - + + # end of l3_healing + ## @} + + ## @addtogroup l3_boolean Boolean Operations + ## @{ + # ----------------------------------------------------------------------------- # Boolean (Common, Cut, Fuse, Section) # ----------------------------------------------------------------------------- - + ## Perform one of boolean operations on two given shapes. # @param theShape1 First argument for boolean operation. # @param theShape2 Second argument for boolean operation. @@ -1461,36 +2083,51 @@ class geompyDC(GEOM._objref_GEOM_Gen): # 1 - Common, 2 - Cut, 3 - Fuse, 4 - Section. # @return New GEOM_Object, containing the result shape. # - # Example: see GEOM_TestAll.py + # @ref tui_fuse "Example" def MakeBoolean(self,theShape1, theShape2, theOperation): + # Example: see GEOM_TestAll.py anObj = self.BoolOp.MakeBoolean(theShape1, theShape2, theOperation) RaiseIfFailed("MakeBoolean", self.BoolOp) return anObj - + ## Shortcut to MakeBoolean(s1, s2, 1) # - # Example: see GEOM_TestOthers.py + # @ref tui_common "Example 1" + # \n @ref swig_MakeCommon "Example 2" def MakeCommon(self, s1, s2): + # Example: see GEOM_TestOthers.py return self.MakeBoolean(s1, s2, 1) ## Shortcut to MakeBoolean(s1, s2, 2) # - # Example: see GEOM_TestOthers.py + # @ref tui_cut "Example 1" + # \n @ref swig_MakeCommon "Example 2" def MakeCut(self, s1, s2): + # Example: see GEOM_TestOthers.py return self.MakeBoolean(s1, s2, 2) - + ## Shortcut to MakeBoolean(s1, s2, 3) # - # Example: see GEOM_TestOthers.py + # @ref tui_fuse "Example 1" + # \n @ref swig_MakeCommon "Example 2" def MakeFuse(self, s1, s2): + # Example: see GEOM_TestOthers.py return self.MakeBoolean(s1, s2, 3) - + ## Shortcut to MakeBoolean(s1, s2, 4) # - # Example: see GEOM_TestOthers.py + # @ref tui_section "Example 1" + # \n @ref swig_MakeCommon "Example 2" def MakeSection(self, s1, s2): + # Example: see GEOM_TestOthers.py return self.MakeBoolean(s1, s2, 4) - + + # end of l3_boolean + ## @} + + ## @addtogroup l3_basic_op + ## @{ + ## Perform partition operation. # @param ListShapes Shapes to be intersected. # @param ListTools Shapes to intersect theShapes. @@ -1517,17 +2154,18 @@ class geompyDC(GEOM._objref_GEOM_Gen): # # @return New GEOM_Object, containing the result shapes. # - # Example: see GEOM_TestAll.py + # @ref tui_partition "Example" def MakePartition(self, ListShapes, ListTools=[], ListKeepInside=[], ListRemoveInside=[], Limit=ShapeType["SHAPE"], RemoveWebs=0, ListMaterials=[], KeepNonlimitShapes=0): + # Example: see GEOM_TestAll.py anObj = self.BoolOp.MakePartition(ListShapes, ListTools, ListKeepInside, ListRemoveInside, Limit, RemoveWebs, ListMaterials, KeepNonlimitShapes); RaiseIfFailed("MakePartition", self.BoolOp) return anObj - + ## Perform partition operation. # This method may be useful if it is needed to make a partition for # compound contains nonintersected shapes. Performance will be better @@ -1540,6 +2178,7 @@ class geompyDC(GEOM._objref_GEOM_Gen): # # @return New GEOM_Object, containing the result shapes. # + # @ref swig_todo "Example" def MakePartitionNonSelfIntersectedShape(self, ListShapes, ListTools=[], ListKeepInside=[], ListRemoveInside=[], Limit=ShapeType["SHAPE"], RemoveWebs=0, @@ -1550,34 +2189,39 @@ class geompyDC(GEOM._objref_GEOM_Gen): KeepNonlimitShapes); RaiseIfFailed("MakePartitionNonSelfIntersectedShape", self.BoolOp) return anObj - + ## Shortcut to MakePartition() # - # Example: see GEOM_TestOthers.py + # @ref tui_partition "Example 1" + # \n @ref swig_Partition "Example 2" def Partition(self, ListShapes, ListTools=[], ListKeepInside=[], ListRemoveInside=[], Limit=ShapeType["SHAPE"], RemoveWebs=0, ListMaterials=[], KeepNonlimitShapes=0): + # Example: see GEOM_TestOthers.py anObj = self.MakePartition(ListShapes, ListTools, ListKeepInside, ListRemoveInside, Limit, RemoveWebs, ListMaterials, KeepNonlimitShapes); return anObj - + ## Perform partition of the Shape with the Plane # @param theShape Shape to be intersected. # @param thePlane Tool shape, to intersect theShape. # @return New GEOM_Object, containing the result shape. # - # Example: see GEOM_TestAll.py + # @ref tui_partition "Example" def MakeHalfPartition(self,theShape, thePlane): + # Example: see GEOM_TestAll.py anObj = self.BoolOp.MakeHalfPartition(theShape, thePlane) RaiseIfFailed("MakeHalfPartition", self.BoolOp) return anObj - - # ----------------------------------------------------------------------------- - # Transform objects - # ----------------------------------------------------------------------------- - + + # end of l3_basic_op + ## @} + + ## @addtogroup l3_transform + ## @{ + ## Translate the given object along the vector, specified # by its end points, creating its copy before the translation. # @param theObject The object to be translated. @@ -1585,36 +2229,108 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param thePoint2 End point of translation vector. # @return New GEOM_Object, containing the translated object. # - # Example: see GEOM_TestAll.py + # @ref tui_translation "Example 1" + # \n @ref swig_MakeTranslationTwoPoints "Example 2" def MakeTranslationTwoPoints(self,theObject, thePoint1, thePoint2): + # Example: see GEOM_TestAll.py anObj = self.TrsfOp.TranslateTwoPointsCopy(theObject, thePoint1, thePoint2) RaiseIfFailed("TranslateTwoPointsCopy", self.TrsfOp) return anObj - + + ## Translate the given object along the vector, specified by its components. + # @param theObject The object to be translated. + # @param theDX,theDY,theDZ Components of translation vector. + # @return Translated GEOM_Object. + # + # @ref tui_translation "Example" + def TranslateDXDYDZ(self,theObject, theDX, theDY, theDZ): + # Example: see GEOM_TestAll.py + theDX, theDY, theDZ, Parameters = ParseParameters(theDX, theDY, theDZ) + anObj = self.TrsfOp.TranslateDXDYDZ(theObject, theDX, theDY, theDZ) + anObj.SetParameters(Parameters) + RaiseIfFailed("TranslateDXDYDZ", self.TrsfOp) + return anObj + ## Translate the given object along the vector, specified # by its components, creating its copy before the translation. # @param theObject The object to be translated. # @param theDX,theDY,theDZ Components of translation vector. # @return New GEOM_Object, containing the translated object. # - # Example: see GEOM_TestAll.py + # @ref tui_translation "Example" def MakeTranslation(self,theObject, theDX, theDY, theDZ): + # Example: see GEOM_TestAll.py + theDX, theDY, theDZ, Parameters = ParseParameters(theDX, theDY, theDZ) anObj = self.TrsfOp.TranslateDXDYDZCopy(theObject, theDX, theDY, theDZ) + anObj.SetParameters(Parameters) RaiseIfFailed("TranslateDXDYDZ", self.TrsfOp) return anObj - + ## Translate the given object along the given vector, # creating its copy before the translation. # @param theObject The object to be translated. # @param theVector The translation vector. # @return New GEOM_Object, containing the translated object. # - # Example: see GEOM_TestAll.py + # @ref tui_translation "Example" def MakeTranslationVector(self,theObject, theVector): + # Example: see GEOM_TestAll.py anObj = self.TrsfOp.TranslateVectorCopy(theObject, theVector) RaiseIfFailed("TranslateVectorCopy", self.TrsfOp) return anObj + ## Translate the given object along the given vector on given distance. + # @param theObject The object to be translated. + # @param theVector The translation vector. + # @param theDistance The translation distance. + # @param theCopy Flag used to translate object itself or create a copy. + # @return Translated GEOM_Object. + # + # @ref tui_translation "Example" + def TranslateVectorDistance(self, theObject, theVector, theDistance, theCopy): + # Example: see GEOM_TestAll.py + theDistance,Parameters = ParseParameters(theDistance) + anObj = self.TrsfOp.TranslateVectorDistance(theObject, theVector, theDistance, theCopy) + RaiseIfFailed("TranslateVectorDistance", self.TrsfOp) + anObj.SetParameters(Parameters) + return anObj + + ## Translate the given object along the given vector on given distance, + # creating its copy before the translation. + # @param theObject The object to be translated. + # @param theVector The translation vector. + # @param theDistance The translation distance. + # @return New GEOM_Object, containing the translated object. + # + # @ref tui_translation "Example" + def MakeTranslationVectorDistance(self, theObject, theVector, theDistance): + # Example: see GEOM_TestAll.py + theDistance,Parameters = ParseParameters(theDistance) + anObj = self.TrsfOp.TranslateVectorDistance(theObject, theVector, theDistance, 1) + RaiseIfFailed("TranslateVectorDistance", self.TrsfOp) + anObj.SetParameters(Parameters) + return anObj + + ## Rotate the given object around the given axis on the given angle. + # @param theObject The object to be rotated. + # @param theAxis Rotation axis. + # @param theAngle Rotation angle in radians. + # @return Rotated GEOM_Object. + # + # @ref tui_rotation "Example" + def Rotate(self,theObject, theAxis, theAngle): + # Example: see GEOM_TestAll.py + flag = False + if isinstance(theAngle,str): + flag = True + theAngle, Parameters = ParseParameters(theAngle) + if flag: + theAngle = theAngle*math.pi/180.0 + anObj = self.TrsfOp.Rotate(theObject, theAxis, theAngle) + RaiseIfFailed("RotateCopy", self.TrsfOp) + anObj.SetParameters(Parameters) + return anObj + ## Rotate the given object around the given axis # on the given angle, creating its copy before the rotatation. # @param theObject The object to be rotated. @@ -1622,74 +2338,108 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theAngle Rotation angle in radians. # @return New GEOM_Object, containing the rotated object. # - # Example: see GEOM_TestAll.py + # @ref tui_rotation "Example" def MakeRotation(self,theObject, theAxis, theAngle): + # Example: see GEOM_TestAll.py + flag = False + if isinstance(theAngle,str): + flag = True + theAngle, Parameters = ParseParameters(theAngle) + if flag: + theAngle = theAngle*math.pi/180.0 anObj = self.TrsfOp.RotateCopy(theObject, theAxis, theAngle) RaiseIfFailed("RotateCopy", self.TrsfOp) + anObj.SetParameters(Parameters) return anObj - + ## Rotate given object around vector perpendicular to plane # containing three points, creating its copy before the rotatation. # @param theObject The object to be rotated. # @param theCentPoint central point - the axis is the vector perpendicular to the plane # containing the three points. - # @param thePoint1 and thePoint2 - in a perpendicular plan of the axis. + # @param thePoint1,thePoint2 - in a perpendicular plane of the axis. # @return New GEOM_Object, containing the rotated object. # - # Example: see GEOM_TestAll.py + # @ref tui_rotation "Example" def MakeRotationThreePoints(self,theObject, theCentPoint, thePoint1, thePoint2): + # Example: see GEOM_TestAll.py anObj = self.TrsfOp.RotateThreePointsCopy(theObject, theCentPoint, thePoint1, thePoint2) RaiseIfFailed("RotateThreePointsCopy", self.TrsfOp) return anObj - + ## Scale the given object by the factor, creating its copy before the scaling. # @param theObject The object to be scaled. # @param thePoint Center point for scaling. + # Passing None for it means scaling relatively the origin of global CS. # @param theFactor Scaling factor value. # @return New GEOM_Object, containing the scaled shape. # - # Example: see GEOM_TestAll.py - def MakeScaleTransform(self,theObject, thePoint, theFactor): + # @ref tui_scale "Example" + def MakeScaleTransform(self, theObject, thePoint, theFactor): + # Example: see GEOM_TestAll.py + theFactor, Parameters = ParseParameters(theFactor) anObj = self.TrsfOp.ScaleShapeCopy(theObject, thePoint, theFactor) RaiseIfFailed("ScaleShapeCopy", self.TrsfOp) + anObj.SetParameters(Parameters) return anObj - + + ## Scale the given object by different factors along coordinate axes, + # creating its copy before the scaling. + # @param theObject The object to be scaled. + # @param thePoint Center point for scaling. + # Passing None for it means scaling relatively the origin of global CS. + # @param theFactorX,theFactorY,theFactorZ Scaling factors along each axis. + # @return New GEOM_Object, containing the scaled shape. + # + # @ref swig_scale "Example" + def MakeScaleAlongAxes(self, theObject, thePoint, theFactorX, theFactorY, theFactorZ): + # Example: see GEOM_TestAll.py + theFactorX, theFactorY, theFactorZ, Parameters = ParseParameters(theFactorX, theFactorY, theFactorZ) + anObj = self.TrsfOp.ScaleShapeAlongAxesCopy(theObject, thePoint, + theFactorX, theFactorY, theFactorZ) + RaiseIfFailed("MakeScaleAlongAxes", self.TrsfOp) + anObj.SetParameters(Parameters) + return anObj + ## Create an object, symmetrical # to the given one relatively the given plane. # @param theObject The object to be mirrored. # @param thePlane Plane of symmetry. # @return New GEOM_Object, containing the mirrored shape. # - # Example: see GEOM_TestAll.py + # @ref tui_mirror "Example" def MakeMirrorByPlane(self,theObject, thePlane): + # Example: see GEOM_TestAll.py anObj = self.TrsfOp.MirrorPlaneCopy(theObject, thePlane) RaiseIfFailed("MirrorPlaneCopy", self.TrsfOp) return anObj - + ## Create an object, symmetrical # to the given one relatively the given axis. # @param theObject The object to be mirrored. # @param theAxis Axis of symmetry. # @return New GEOM_Object, containing the mirrored shape. # - # Example: see GEOM_TestAll.py + # @ref tui_mirror "Example" def MakeMirrorByAxis(self,theObject, theAxis): + # Example: see GEOM_TestAll.py anObj = self.TrsfOp.MirrorAxisCopy(theObject, theAxis) RaiseIfFailed("MirrorAxisCopy", self.TrsfOp) return anObj - + ## Create an object, symmetrical # to the given one relatively the given point. # @param theObject The object to be mirrored. # @param thePoint Point of symmetry. # @return New GEOM_Object, containing the mirrored shape. # - # Example: see GEOM_TestAll.py + # @ref tui_mirror "Example" def MakeMirrorByPoint(self,theObject, thePoint): + # Example: see GEOM_TestAll.py anObj = self.TrsfOp.MirrorPointCopy(theObject, thePoint) RaiseIfFailed("MirrorPointCopy", self.TrsfOp) return anObj - + ## Modify the Location of the given object by LCS, # creating its copy before the setting. # @param theObject The object to be displaced. @@ -1701,27 +2451,46 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theEndLCS Coordinate system to perform displacement to it. # @return New GEOM_Object, containing the displaced shape. # - # Example: see GEOM_TestAll.py + # @ref tui_modify_location "Example" def MakePosition(self,theObject, theStartLCS, theEndLCS): + # Example: see GEOM_TestAll.py anObj = self.TrsfOp.PositionShapeCopy(theObject, theStartLCS, theEndLCS) RaiseIfFailed("PositionShapeCopy", self.TrsfOp) return anObj - + + ## Modify the Location of the given object by Path, + # @param theObject The object to be displaced. + # @param thePath Wire or Edge along that the object will be translated. + # @param theDistance progress of Path (0 = start location, 1 = end of path location). + # @param theCopy is to create a copy objects if true. + # @param theReverse - 0 for usual direction, 1 to reverse path direction. + # @return New GEOM_Object, containing the displaced shape. + # + # @ref tui_modify_location "Example" + def PositionAlongPath(self,theObject, thePath, theDistance, theCopy, theReverse): + # Example: see GEOM_TestAll.py + anObj = self.TrsfOp.PositionAlongPath(theObject, thePath, theDistance, theCopy, theReverse) + RaiseIfFailed("PositionAlongPath", self.TrsfOp) + return anObj + ## Create new object as offset of the given one. # @param theObject The base object for the offset. # @param theOffset Offset value. # @return New GEOM_Object, containing the offset object. # - # Example: see GEOM_TestAll.py + # @ref tui_offset "Example" def MakeOffset(self,theObject, theOffset): + # Example: see GEOM_TestAll.py + theOffset, Parameters = ParseParameters(theOffset) anObj = self.TrsfOp.OffsetShapeCopy(theObject, theOffset) RaiseIfFailed("OffsetShapeCopy", self.TrsfOp) + anObj.SetParameters(Parameters) return anObj - + # ----------------------------------------------------------------------------- # Patterns # ----------------------------------------------------------------------------- - + ## Translate the given object along the given vector a given number times # @param theObject The object to be translated. # @param theVector Direction of the translation. @@ -1730,12 +2499,15 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @return New GEOM_Object, containing compound of all # the shapes, obtained after each translation. # - # Example: see GEOM_TestAll.py + # @ref tui_multi_translation "Example" def MakeMultiTranslation1D(self,theObject, theVector, theStep, theNbTimes): + # Example: see GEOM_TestAll.py + theStep, theNbTimes, Parameters = ParseParameters(theStep, theNbTimes) anObj = self.TrsfOp.MultiTranslate1D(theObject, theVector, theStep, theNbTimes) RaiseIfFailed("MultiTranslate1D", self.TrsfOp) + anObj.SetParameters(Parameters) return anObj - + ## Conseqently apply two specified translations to theObject specified number of times. # @param theObject The object to be translated. # @param theVector1 Direction of the first translation. @@ -1747,14 +2519,17 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @return New GEOM_Object, containing compound of all # the shapes, obtained after each translation. # - # Example: see GEOM_TestAll.py + # @ref tui_multi_translation "Example" def MakeMultiTranslation2D(self,theObject, theVector1, theStep1, theNbTimes1, theVector2, theStep2, theNbTimes2): + # Example: see GEOM_TestAll.py + theStep1,theNbTimes1,theStep2,theNbTimes2, Parameters = ParseParameters(theStep1,theNbTimes1,theStep2,theNbTimes2) anObj = self.TrsfOp.MultiTranslate2D(theObject, theVector1, theStep1, theNbTimes1, theVector2, theStep2, theNbTimes2) RaiseIfFailed("MultiTranslate2D", self.TrsfOp) + anObj.SetParameters(Parameters) return anObj - + ## Rotate the given object around the given axis a given number times. # Rotation angle will be 2*PI/theNbTimes. # @param theObject The object to be rotated. @@ -1763,12 +2538,15 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @return New GEOM_Object, containing compound of all the # shapes, obtained after each rotation. # - # Example: see GEOM_TestAll.py + # @ref tui_multi_rotation "Example" def MultiRotate1D(self,theObject, theAxis, theNbTimes): + # Example: see GEOM_TestAll.py + theAxis, theNbTimes, Parameters = ParseParameters(theAxis, theNbTimes) anObj = self.TrsfOp.MultiRotate1D(theObject, theAxis, theNbTimes) RaiseIfFailed("MultiRotate1D", self.TrsfOp) + anObj.SetParameters(Parameters) return anObj - + ## Rotate the given object around the # given axis on the given angle a given number # times and multi-translate each rotation result. @@ -1783,53 +2561,64 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @return New GEOM_Object, containing compound of all the # shapes, obtained after each transformation. # - # Example: see GEOM_TestAll.py + # @ref tui_multi_rotation "Example" def MultiRotate2D(self,theObject, theAxis, theAngle, theNbTimes1, theStep, theNbTimes2): + # Example: see GEOM_TestAll.py + theAngle, theNbTimes1, theStep, theNbTimes2, Parameters = ParseParameters(theAngle, theNbTimes1, theStep, theNbTimes2) anObj = self.TrsfOp.MultiRotate2D(theObject, theAxis, theAngle, theNbTimes1, theStep, theNbTimes2) RaiseIfFailed("MultiRotate2D", self.TrsfOp) + anObj.SetParameters(Parameters) return anObj - + ## The same, as MultiRotate1D(), but axis is given by direction and point - # - # Example: see GEOM_TestOthers.py + # @ref swig_MakeMultiRotation "Example" def MakeMultiRotation1D(self,aShape,aDir,aPoint,aNbTimes): + # Example: see GEOM_TestOthers.py aVec = self.MakeLine(aPoint,aDir) anObj = self.MultiRotate1D(aShape,aVec,aNbTimes) return anObj - + ## The same, as MultiRotate2D(), but axis is given by direction and point - # - # Example: see GEOM_TestOthers.py + # @ref swig_MakeMultiRotation "Example" def MakeMultiRotation2D(self,aShape,aDir,aPoint,anAngle,nbtimes1,aStep,nbtimes2): + # Example: see GEOM_TestOthers.py aVec = self.MakeLine(aPoint,aDir) anObj = self.MultiRotate2D(aShape,aVec,anAngle,nbtimes1,aStep,nbtimes2) return anObj - - # ----------------------------------------------------------------------------- - # Local operations - # ----------------------------------------------------------------------------- - + + # end of l3_transform + ## @} + + ## @addtogroup l3_local + ## @{ + ## Perform a fillet on all edges of the given shape. # @param theShape Shape, to perform fillet on. # @param theR Fillet radius. # @return New GEOM_Object, containing the result shape. # - # Example: see GEOM_TestOthers.py + # @ref tui_fillet "Example 1" + # \n @ref swig_MakeFilletAll "Example 2" def MakeFilletAll(self,theShape, theR): + # Example: see GEOM_TestOthers.py + theR,Parameters = ParseParameters(theR) anObj = self.LocalOp.MakeFilletAll(theShape, theR) RaiseIfFailed("MakeFilletAll", self.LocalOp) + anObj.SetParameters(Parameters) return anObj - + ## Perform a fillet on the specified edges/faces of the given shape # @param theShape Shape, to perform fillet on. # @param theR Fillet radius. - # @param theShapeType Type of shapes in . + # @param theShapeType Type of shapes in theListShapes. # @param theListShapes Global indices of edges/faces to perform fillet on. # \note Global index of sub-shape can be obtained, using method geompy.GetSubShapeID(). # @return New GEOM_Object, containing the result shape. # - # Example: see GEOM_TestAll.py + # @ref tui_fillet "Example" def MakeFillet(self,theShape, theR, theShapeType, theListShapes): + # Example: see GEOM_TestAll.py + theR,Parameters = ParseParameters(theR) anObj = None if theShapeType == ShapeType["EDGE"]: anObj = self.LocalOp.MakeFilletEdges(theShape, theR, theListShapes) @@ -1837,10 +2626,12 @@ class geompyDC(GEOM._objref_GEOM_Gen): else: anObj = self.LocalOp.MakeFilletFaces(theShape, theR, theListShapes) RaiseIfFailed("MakeFilletFaces", self.LocalOp) + anObj.SetParameters(Parameters) return anObj - + ## The same that MakeFillet but with two Fillet Radius R1 and R2 def MakeFilletR1R2(self, theShape, theR1, theR2, theShapeType, theListShapes): + theR1,theR2,Parameters = ParseParameters(theR1,theR2) anObj = None if theShapeType == ShapeType["EDGE"]: anObj = self.LocalOp.MakeFilletEdgesR1R2(theShape, theR1, theR2, theListShapes) @@ -1848,19 +2639,38 @@ class geompyDC(GEOM._objref_GEOM_Gen): else: anObj = self.LocalOp.MakeFilletFacesR1R2(theShape, theR1, theR2, theListShapes) RaiseIfFailed("MakeFilletFacesR1R2", self.LocalOp) + anObj.SetParameters(Parameters) return anObj - + + ## Perform a fillet on the specified edges/faces of the given shape + # @param theShape - Face Shape to perform fillet on. + # @param theR - Fillet radius. + # @param theListOfVertexes Global indices of vertexes to perform fillet on. + # \note Global index of sub-shape can be obtained, using method geompy.GetSubShapeID(). + # @return New GEOM_Object, containing the result shape. + # + # @ref tui_fillet2d "Example" + def MakeFillet2D(self,theShape, theR, theListOfVertexes): + # Example: see GEOM_TestAll.py + anObj = self.LocalOp.MakeFillet2D(theShape, theR, theListOfVertexes) + RaiseIfFailed("MakeFillet2D", self.LocalOp) + return anObj + ## Perform a symmetric chamfer on all edges of the given shape. # @param theShape Shape, to perform chamfer on. # @param theD Chamfer size along each face. # @return New GEOM_Object, containing the result shape. # - # Example: see GEOM_TestOthers.py + # @ref tui_chamfer "Example 1" + # \n @ref swig_MakeChamferAll "Example 2" def MakeChamferAll(self,theShape, theD): + # Example: see GEOM_TestOthers.py + theD,Parameters = ParseParameters(theD) anObj = self.LocalOp.MakeChamferAll(theShape, theD) RaiseIfFailed("MakeChamferAll", self.LocalOp) + anObj.SetParameters(Parameters) return anObj - + ## Perform a chamfer on edges, common to the specified faces, # with distance D1 on the Face1 # @param theShape Shape, to perform chamfer on. @@ -1870,19 +2680,29 @@ class geompyDC(GEOM._objref_GEOM_Gen): # \note Global index of sub-shape can be obtained, using method geompy.GetSubShapeID(). # @return New GEOM_Object, containing the result shape. # - # Example: see GEOM_TestAll.py + # @ref tui_chamfer "Example" def MakeChamferEdge(self,theShape, theD1, theD2, theFace1, theFace2): + # Example: see GEOM_TestAll.py + theD1,theD2,Parameters = ParseParameters(theD1,theD2) anObj = self.LocalOp.MakeChamferEdge(theShape, theD1, theD2, theFace1, theFace2) RaiseIfFailed("MakeChamferEdge", self.LocalOp) + anObj.SetParameters(Parameters) return anObj - - ## The Same that MakeChamferEdge but with params theD is chamfer lenght and - # theAngle is Angle of chamfer (angle in radians) + + ## The Same that MakeChamferEdge but with params theD is chamfer length and + # theAngle is Angle of chamfer (angle in radians or a name of variable which defines angle in degrees) def MakeChamferEdgeAD(self, theShape, theD, theAngle, theFace1, theFace2): + flag = False + if isinstance(theAngle,str): + flag = True + theD,theAngle,Parameters = ParseParameters(theD,theAngle) + if flag: + theAngle = theAngle*math.pi/180.0 anObj = self.LocalOp.MakeChamferEdgeAD(theShape, theD, theAngle, theFace1, theFace2) RaiseIfFailed("MakeChamferEdgeAD", self.LocalOp) + anObj.SetParameters(Parameters) return anObj - + ## Perform a chamfer on all edges of the specified faces, # with distance D1 on the first specified face (if several for one edge) # @param theShape Shape, to perform chamfer on. @@ -1894,50 +2714,78 @@ class geompyDC(GEOM._objref_GEOM_Gen): # \note Global index of sub-shape can be obtained, using method geompy.GetSubShapeID(). # @return New GEOM_Object, containing the result shape. # - # Example: see GEOM_TestAll.py + # @ref tui_chamfer "Example" def MakeChamferFaces(self,theShape, theD1, theD2, theFaces): + # Example: see GEOM_TestAll.py + theD1,theD2,Parameters = ParseParameters(theD1,theD2) anObj = self.LocalOp.MakeChamferFaces(theShape, theD1, theD2, theFaces) RaiseIfFailed("MakeChamferFaces", self.LocalOp) + anObj.SetParameters(Parameters) return anObj - + ## The Same that MakeChamferFaces but with params theD is chamfer lenght and - # theAngle is Angle of chamfer (angle in radians) + # theAngle is Angle of chamfer (angle in radians or a name of variable which defines angle in degrees) + # + # @ref swig_FilletChamfer "Example" def MakeChamferFacesAD(self, theShape, theD, theAngle, theFaces): + flag = False + if isinstance(theAngle,str): + flag = True + theD,theAngle,Parameters = ParseParameters(theD,theAngle) + if flag: + theAngle = theAngle*math.pi/180.0 anObj = self.LocalOp.MakeChamferFacesAD(theShape, theD, theAngle, theFaces) RaiseIfFailed("MakeChamferFacesAD", self.LocalOp) + anObj.SetParameters(Parameters) return anObj - + ## Perform a chamfer on edges, # with distance D1 on the first specified face (if several for one edge) # @param theShape Shape, to perform chamfer on. - # @param theD1 and theD2 Chamfer size + # @param theD1,theD2 Chamfer size # @param theEdges Sequence of edges of \a theShape. # @return New GEOM_Object, containing the result shape. # - # Example: + # @ref swig_FilletChamfer "Example" def MakeChamferEdges(self, theShape, theD1, theD2, theEdges): + theD1,theD2,Parameters = ParseParameters(theD1,theD2) anObj = self.LocalOp.MakeChamferEdges(theShape, theD1, theD2, theEdges) RaiseIfFailed("MakeChamferEdges", self.LocalOp) + anObj.SetParameters(Parameters) return anObj - + ## The Same that MakeChamferEdges but with params theD is chamfer lenght and - # theAngle is Angle of chamfer (angle in radians) + # theAngle is Angle of chamfer (angle in radians or a name of variable which defines angle in degrees) def MakeChamferEdgesAD(self, theShape, theD, theAngle, theEdges): + flag = False + if isinstance(theAngle,str): + flag = True + theD,theAngle,Parameters = ParseParameters(theD,theAngle) + if flag: + theAngle = theAngle*math.pi/180.0 anObj = self.LocalOp.MakeChamferEdgesAD(theShape, theD, theAngle, theEdges) RaiseIfFailed("MakeChamferEdgesAD", self.LocalOp) + anObj.SetParameters(Parameters) return anObj - + ## Shortcut to MakeChamferEdge() and MakeChamferFaces() # - # Example: see GEOM_TestOthers.py + # @ref swig_MakeChamfer "Example" def MakeChamfer(self,aShape,d1,d2,aShapeType,ListShape): + # Example: see GEOM_TestOthers.py anObj = None if aShapeType == ShapeType["EDGE"]: anObj = self.MakeChamferEdge(aShape,d1,d2,ListShape[0],ListShape[1]) else: anObj = self.MakeChamferFaces(aShape,d1,d2,ListShape) return anObj - + + # end of l3_local + ## @} + + ## @addtogroup l3_basic_op + ## @{ + ## Perform an Archimde operation on the given shape with given parameters. # The object presenting the resulting face is returned. # @param theShape Shape to be put in water. @@ -1947,25 +2795,32 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @return New GEOM_Object, containing a section of \a theShape # by a plane, corresponding to water level. # - # Example: see GEOM_TestAll.py + # @ref tui_archimede "Example" def Archimede(self,theShape, theWeight, theWaterDensity, theMeshDeflection): + # Example: see GEOM_TestAll.py + theWeight,theWaterDensity,theMeshDeflection,Parameters = ParseParameters( + theWeight,theWaterDensity,theMeshDeflection) anObj = self.LocalOp.MakeArchimede(theShape, theWeight, theWaterDensity, theMeshDeflection) RaiseIfFailed("MakeArchimede", self.LocalOp) + anObj.SetParameters(Parameters) return anObj - - # ----------------------------------------------------------------------------- - # Information objects - # ----------------------------------------------------------------------------- - + + # end of l3_basic_op + ## @} + + ## @addtogroup l2_measure + ## @{ + ## Get point coordinates # @return [x, y, z] # - # Example: see GEOM_TestMeasures.py + # @ref tui_measurement_tools_page "Example" def PointCoordinates(self,Point): + # Example: see GEOM_TestMeasures.py aTuple = self.MeasuOp.PointCoordinates(Point) RaiseIfFailed("PointCoordinates", self.MeasuOp) return aTuple - + ## Get summarized length of all wires, # area of surface and volume of the given shape. # @param theShape Shape to define properties of. @@ -1974,12 +2829,13 @@ class geompyDC(GEOM._objref_GEOM_Gen): # theSurfArea: Area of surface of the given shape. # theVolume: Volume of the given shape. # - # Example: see GEOM_TestMeasures.py + # @ref tui_measurement_tools_page "Example" def BasicProperties(self,theShape): + # Example: see GEOM_TestMeasures.py aTuple = self.MeasuOp.GetBasicProperties(theShape) RaiseIfFailed("GetBasicProperties", self.MeasuOp) return aTuple - + ## Get parameters of bounding box of the given shape # @param theShape Shape to obtain bounding box of. # @return [Xmin,Xmax, Ymin,Ymax, Zmin,Zmax] @@ -1987,30 +2843,33 @@ class geompyDC(GEOM._objref_GEOM_Gen): # Ymin,Ymax: Limits of shape along OY axis. # Zmin,Zmax: Limits of shape along OZ axis. # - # Example: see GEOM_TestMeasures.py + # @ref tui_measurement_tools_page "Example" def BoundingBox(self,theShape): + # Example: see GEOM_TestMeasures.py aTuple = self.MeasuOp.GetBoundingBox(theShape) RaiseIfFailed("GetBoundingBox", self.MeasuOp) return aTuple - + ## Get inertia matrix and moments of inertia of theShape. # @param theShape Shape to calculate inertia of. # @return [I11,I12,I13, I21,I22,I23, I31,I32,I33, Ix,Iy,Iz] # I(1-3)(1-3): Components of the inertia matrix of the given shape. # Ix,Iy,Iz: Moments of inertia of the given shape. # - # Example: see GEOM_TestMeasures.py + # @ref tui_measurement_tools_page "Example" def Inertia(self,theShape): + # Example: see GEOM_TestMeasures.py aTuple = self.MeasuOp.GetInertia(theShape) RaiseIfFailed("GetInertia", self.MeasuOp) return aTuple - + ## Get minimal distance between the given shapes. # @param theShape1,theShape2 Shapes to find minimal distance between. # @return Value of the minimal distance between the given shapes. # - # Example: see GEOM_TestMeasures.py + # @ref tui_measurement_tools_page "Example" def MinDistance(self, theShape1, theShape2): + # Example: see GEOM_TestMeasures.py aTuple = self.MeasuOp.GetMinDistance(theShape1, theShape2) RaiseIfFailed("GetMinDistance", self.MeasuOp) return aTuple[0] @@ -2019,22 +2878,90 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theShape1,theShape2 Shapes to find minimal distance between. # @return Value of the minimal distance between the given shapes. # - # Example: see GEOM_TestMeasures.py + # @ref swig_all_measure "Example" def MinDistanceComponents(self, theShape1, theShape2): + # Example: see GEOM_TestMeasures.py aTuple = self.MeasuOp.GetMinDistance(theShape1, theShape2) RaiseIfFailed("GetMinDistance", self.MeasuOp) aRes = [aTuple[0], aTuple[4] - aTuple[1], aTuple[5] - aTuple[2], aTuple[6] - aTuple[3]] return aRes - ## Get angle between the given shapes. + ## Get angle between the given shapes in degrees. # @param theShape1,theShape2 Lines or linear edges to find angle between. - # @return Value of the angle between the given shapes. + # @return Value of the angle between the given shapes in degrees. # - # Example: see GEOM_TestMeasures.py + # @ref tui_measurement_tools_page "Example" def GetAngle(self, theShape1, theShape2): + # Example: see GEOM_TestMeasures.py anAngle = self.MeasuOp.GetAngle(theShape1, theShape2) RaiseIfFailed("GetAngle", self.MeasuOp) return anAngle + ## Get angle between the given shapes in radians. + # @param theShape1,theShape2 Lines or linear edges to find angle between. + # @return Value of the angle between the given shapes in radians. + # + # @ref tui_measurement_tools_page "Example" + def GetAngleRadians(self, theShape1, theShape2): + # Example: see GEOM_TestMeasures.py + anAngle = self.MeasuOp.GetAngle(theShape1, theShape2)*math.pi/180. + RaiseIfFailed("GetAngle", self.MeasuOp) + return anAngle + + ## @name Curve Curvature Measurement + # Methods for receiving radius of curvature of curves + # in the given point + ## @{ + + ## Measure curvature of a curve at a point, set by parameter. + # @ref swig_todo "Example" + def CurveCurvatureByParam(self, theCurve, theParam): + # Example: see GEOM_TestMeasures.py + aCurv = self.MeasuOp.CurveCurvatureByParam(theCurve,theParam) + RaiseIfFailed("CurveCurvatureByParam", self.MeasuOp) + return aCurv + + ## @details + # @ref swig_todo "Example" + def CurveCurvatureByPoint(self, theCurve, thePoint): + aCurv = self.MeasuOp.CurveCurvatureByPoint(theCurve,thePoint) + RaiseIfFailed("CurveCurvatureByPoint", self.MeasuOp) + return aCurv + ## @} + + ## @name Surface Curvature Measurement + # Methods for receiving max and min radius of curvature of surfaces + # in the given point + ## @{ + + ## @details + ## @ref swig_todo "Example" + def MaxSurfaceCurvatureByParam(self, theSurf, theUParam, theVParam): + # Example: see GEOM_TestMeasures.py + aSurf = self.MeasuOp.MaxSurfaceCurvatureByParam(theSurf,theUParam,theVParam) + RaiseIfFailed("MaxSurfaceCurvatureByParam", self.MeasuOp) + return aSurf + + ## @details + ## @ref swig_todo "Example" + def MaxSurfaceCurvatureByPoint(self, theSurf, thePoint): + aSurf = self.MeasuOp.MaxSurfaceCurvatureByPoint(theSurf,thePoint) + RaiseIfFailed("MaxSurfaceCurvatureByPoint", self.MeasuOp) + return aSurf + + ## @details + ## @ref swig_todo "Example" + def MinSurfaceCurvatureByParam(self, theSurf, theUParam, theVParam): + aSurf = self.MeasuOp.MinSurfaceCurvatureByParam(theSurf,theUParam,theVParam) + RaiseIfFailed("MinSurfaceCurvatureByParam", self.MeasuOp) + return aSurf + + ## @details + ## @ref swig_todo "Example" + def MinSurfaceCurvatureByPoint(self, theSurf, thePoint): + aSurf = self.MeasuOp.MinSurfaceCurvatureByPoint(theSurf,thePoint) + RaiseIfFailed("MinSurfaceCurvatureByPoint", self.MeasuOp) + return aSurf + ## @} ## Get min and max tolerances of sub-shapes of theShape # @param theShape Shape, to get tolerances of. @@ -2043,8 +2970,9 @@ class geompyDC(GEOM._objref_GEOM_Gen): # EdgeMin,EdgeMax: Min and max tolerances of the edges. # VertMin,VertMax: Min and max tolerances of the vertices. # - # Example: see GEOM_TestMeasures.py + # @ref tui_measurement_tools_page "Example" def Tolerance(self,theShape): + # Example: see GEOM_TestMeasures.py aTuple = self.MeasuOp.GetTolerance(theShape) RaiseIfFailed("GetTolerance", self.MeasuOp) return aTuple @@ -2053,34 +2981,37 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theShape Shape to be described. # @return Description of the given shape. # - # Example: see GEOM_TestMeasures.py + # @ref tui_measurement_tools_page "Example" def WhatIs(self,theShape): + # Example: see GEOM_TestMeasures.py aDescr = self.MeasuOp.WhatIs(theShape) RaiseIfFailed("WhatIs", self.MeasuOp) return aDescr - + ## Get a point, situated at the centre of mass of theShape. # @param theShape Shape to define centre of mass of. # @return New GEOM_Object, containing the created point. # - # Example: see GEOM_TestMeasures.py + # @ref tui_measurement_tools_page "Example" def MakeCDG(self,theShape): + # Example: see GEOM_TestMeasures.py anObj = self.MeasuOp.GetCentreOfMass(theShape) RaiseIfFailed("GetCentreOfMass", self.MeasuOp) return anObj - + ## Get a normale to the given face. If the point is not given, # the normale is calculated at the center of mass. # @param theFace Face to define normale of. # @param theOptionalPoint Point to compute the normale at. # @return New GEOM_Object, containing the created vector. # - # Example: see GEOM_TestMeasures.py + # @ref swig_todo "Example" def GetNormal(self, theFace, theOptionalPoint = None): + # Example: see GEOM_TestMeasures.py anObj = self.MeasuOp.GetNormal(theFace, theOptionalPoint) RaiseIfFailed("GetNormal", self.MeasuOp) return anObj - + ## Check a topology of the given shape. # @param theShape Shape to check validity of. # @param theIsCheckGeom If FALSE, only the shape's topology will be checked, @@ -2088,8 +3019,9 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @return TRUE, if the shape "seems to be valid". # If theShape is invalid, prints a description of problem. # - # Example: see GEOM_TestMeasures.py + # @ref tui_measurement_tools_page "Example" def CheckShape(self,theShape, theIsCheckGeom = 0): + # Example: see GEOM_TestMeasures.py if theIsCheckGeom: (IsValid, Status) = self.MeasuOp.CheckShapeWithGeometry(theShape) RaiseIfFailed("CheckShapeWithGeometry", self.MeasuOp) @@ -2099,7 +3031,7 @@ class geompyDC(GEOM._objref_GEOM_Gen): if IsValid == 0: print Status return IsValid - + ## Get position (LCS) of theShape. # # Origin of the LCS is situated at the shape's center of mass. @@ -2112,12 +3044,13 @@ class geompyDC(GEOM._objref_GEOM_Gen): # Zx,Zy,Zz: Coordinates of shape's LCS normal(main) direction. # Xx,Xy,Xz: Coordinates of shape's LCS X direction. # - # Example: see GEOM_TestMeasures.py + # @ref swig_todo "Example" def GetPosition(self,theShape): + # Example: see GEOM_TestMeasures.py aTuple = self.MeasuOp.GetPosition(theShape) RaiseIfFailed("GetPosition", self.MeasuOp) return aTuple - + ## Get kind of theShape. # # @param theShape Shape to get a kind of. @@ -2127,69 +3060,72 @@ class geompyDC(GEOM._objref_GEOM_Gen): # or \a theDoubles list depends on the kind of the shape. # The full list of possible outputs is: # - # geompy.kind.COMPOUND nb_solids nb_faces nb_edges nb_vertices - # geompy.kind.COMPSOLID nb_solids nb_faces nb_edges nb_vertices + # - geompy.kind.COMPOUND nb_solids nb_faces nb_edges nb_vertices + # - geompy.kind.COMPSOLID nb_solids nb_faces nb_edges nb_vertices # - # geompy.kind.SHELL geompy.info.CLOSED nb_faces nb_edges nb_vertices - # geompy.kind.SHELL geompy.info.UNCLOSED nb_faces nb_edges nb_vertices + # - geompy.kind.SHELL geompy.info.CLOSED nb_faces nb_edges nb_vertices + # - geompy.kind.SHELL geompy.info.UNCLOSED nb_faces nb_edges nb_vertices # - # geompy.kind.WIRE geompy.info.CLOSED nb_edges nb_vertices - # geompy.kind.WIRE geompy.info.UNCLOSED nb_edges nb_vertices + # - geompy.kind.WIRE geompy.info.CLOSED nb_edges nb_vertices + # - geompy.kind.WIRE geompy.info.UNCLOSED nb_edges nb_vertices # - # geompy.kind.SPHERE xc yc zc R - # geompy.kind.CYLINDER xb yb zb dx dy dz R H - # geompy.kind.BOX xc yc zc ax ay az - # geompy.kind.ROTATED_BOX xc yc zc zx zy zz xx xy xz ax ay az - # geompy.kind.TORUS xc yc zc dx dy dz R_1 R_2 - # geompy.kind.CONE xb yb zb dx dy dz R_1 R_2 H - # geompy.kind.POLYHEDRON nb_faces nb_edges nb_vertices - # geompy.kind.SOLID nb_faces nb_edges nb_vertices + # - geompy.kind.SPHERE xc yc zc R + # - geompy.kind.CYLINDER xb yb zb dx dy dz R H + # - geompy.kind.BOX xc yc zc ax ay az + # - geompy.kind.ROTATED_BOX xc yc zc zx zy zz xx xy xz ax ay az + # - geompy.kind.TORUS xc yc zc dx dy dz R_1 R_2 + # - geompy.kind.CONE xb yb zb dx dy dz R_1 R_2 H + # - geompy.kind.POLYHEDRON nb_faces nb_edges nb_vertices + # - geompy.kind.SOLID nb_faces nb_edges nb_vertices # - # geompy.kind.SPHERE2D xc yc zc R - # geompy.kind.CYLINDER2D xb yb zb dx dy dz R H - # geompy.kind.TORUS2D xc yc zc dx dy dz R_1 R_2 - # geompy.kind.CONE2D xc yc zc dx dy dz R_1 R_2 H - # geompy.kind.DISK_CIRCLE xc yc zc dx dy dz R - # geompy.kind.DISK_ELLIPSE xc yc zc dx dy dz R_1 R_2 - # geompy.kind.POLYGON xo yo zo dx dy dz nb_edges nb_vertices - # geompy.kind.PLANE xo yo zo dx dy dz - # geompy.kind.PLANAR xo yo zo dx dy dz nb_edges nb_vertices - # geompy.kind.FACE nb_edges nb_vertices + # - geompy.kind.SPHERE2D xc yc zc R + # - geompy.kind.CYLINDER2D xb yb zb dx dy dz R H + # - geompy.kind.TORUS2D xc yc zc dx dy dz R_1 R_2 + # - geompy.kind.CONE2D xc yc zc dx dy dz R_1 R_2 H + # - geompy.kind.DISK_CIRCLE xc yc zc dx dy dz R + # - geompy.kind.DISK_ELLIPSE xc yc zc dx dy dz R_1 R_2 + # - geompy.kind.POLYGON xo yo zo dx dy dz nb_edges nb_vertices + # - geompy.kind.PLANE xo yo zo dx dy dz + # - geompy.kind.PLANAR xo yo zo dx dy dz nb_edges nb_vertices + # - geompy.kind.FACE nb_edges nb_vertices # - # geompy.kind.CIRCLE xc yc zc dx dy dz R - # geompy.kind.ARC_CIRCLE xc yc zc dx dy dz R x1 y1 z1 x2 y2 z2 - # geompy.kind.ELLIPSE xc yc zc dx dy dz R_1 R_2 - # geompy.kind.ARC_ELLIPSE xc yc zc dx dy dz R_1 R_2 x1 y1 z1 x2 y2 z2 - # geompy.kind.LINE xo yo zo dx dy dz - # geompy.kind.SEGMENT x1 y1 z1 x2 y2 z2 - # geompy.kind.EDGE nb_vertices + # - geompy.kind.CIRCLE xc yc zc dx dy dz R + # - geompy.kind.ARC_CIRCLE xc yc zc dx dy dz R x1 y1 z1 x2 y2 z2 + # - geompy.kind.ELLIPSE xc yc zc dx dy dz R_1 R_2 + # - geompy.kind.ARC_ELLIPSE xc yc zc dx dy dz R_1 R_2 x1 y1 z1 x2 y2 z2 + # - geompy.kind.LINE xo yo zo dx dy dz + # - geompy.kind.SEGMENT x1 y1 z1 x2 y2 z2 + # - geompy.kind.EDGE nb_vertices # - # geompy.kind.VERTEX x y z + # - geompy.kind.VERTEX x y z # - # Example: see GEOM_TestMeasures.py + # @ref swig_todo "Example" def KindOfShape(self,theShape): + # Example: see GEOM_TestMeasures.py aRoughTuple = self.MeasuOp.KindOfShape(theShape) RaiseIfFailed("KindOfShape", self.MeasuOp) - + aKind = aRoughTuple[0] anInts = aRoughTuple[1] aDbls = aRoughTuple[2] - + # Now there is no exception from this rule: aKindTuple = [aKind] + aDbls + anInts - + # If they are we will regroup parameters for such kind of shape. # For example: #if aKind == kind.SOME_KIND: # # SOME_KIND int int double int double double # aKindTuple = [aKind, anInts[0], anInts[1], aDbls[0], anInts[2], aDbls[1], aDbls[2]] - + return aKindTuple - - # ----------------------------------------------------------------------------- - # Import/Export objects - # ----------------------------------------------------------------------------- - + + # end of l2_measure + ## @} + + ## @addtogroup l2_import_export + ## @{ + ## Import a shape from the BREP or IGES or STEP file # (depends on given format) with given name. # @param theFileName The file, containing the shape. @@ -2197,121 +3133,145 @@ class geompyDC(GEOM._objref_GEOM_Gen): # Available formats can be obtained with InsertOp.ImportTranslators() method. # @return New GEOM_Object, containing the imported shape. # - # Example: see GEOM_TestOthers.py + # @ref swig_Import_Export "Example" def Import(self,theFileName, theFormatName): + # Example: see GEOM_TestOthers.py anObj = self.InsertOp.Import(theFileName, theFormatName) RaiseIfFailed("Import", self.InsertOp) return anObj - + ## Shortcut to Import() for BREP format # - # Example: see GEOM_TestOthers.py + # @ref swig_Import_Export "Example" def ImportBREP(self,theFileName): + # Example: see GEOM_TestOthers.py return self.Import(theFileName, "BREP") - + ## Shortcut to Import() for IGES format # - # Example: see GEOM_TestOthers.py + # @ref swig_Import_Export "Example" def ImportIGES(self,theFileName): + # Example: see GEOM_TestOthers.py return self.Import(theFileName, "IGES") - + ## Shortcut to Import() for STEP format # - # Example: see GEOM_TestOthers.py + # @ref swig_Import_Export "Example" def ImportSTEP(self,theFileName): + # Example: see GEOM_TestOthers.py return self.Import(theFileName, "STEP") - + ## Export the given shape into a file with given name. # @param theObject Shape to be stored in the file. # @param theFileName Name of the file to store the given shape in. # @param theFormatName Specify format for the shape storage. # Available formats can be obtained with InsertOp.ImportTranslators() method. # - # Example: see GEOM_TestOthers.py + # @ref swig_Import_Export "Example" def Export(self,theObject, theFileName, theFormatName): + # Example: see GEOM_TestOthers.py self.InsertOp.Export(theObject, theFileName, theFormatName) if self.InsertOp.IsDone() == 0: raise RuntimeError, "Export : " + self.InsertOp.GetErrorCode() pass pass - + ## Shortcut to Export() for BREP format # - # Example: see GEOM_TestOthers.py + # @ref swig_Import_Export "Example" def ExportBREP(self,theObject, theFileName): + # Example: see GEOM_TestOthers.py return self.Export(theObject, theFileName, "BREP") - + ## Shortcut to Export() for IGES format # - # Example: see GEOM_TestOthers.py + # @ref swig_Import_Export "Example" def ExportIGES(self,theObject, theFileName): + # Example: see GEOM_TestOthers.py return self.Export(theObject, theFileName, "IGES") - + ## Shortcut to Export() for STEP format # - # Example: see GEOM_TestOthers.py + # @ref swig_Import_Export "Example" def ExportSTEP(self,theObject, theFileName): + # Example: see GEOM_TestOthers.py return self.Export(theObject, theFileName, "STEP") - - # ----------------------------------------------------------------------------- - # Block operations - # ----------------------------------------------------------------------------- - + + # end of l2_import_export + ## @} + + ## @addtogroup l3_blocks + ## @{ + ## Create a quadrangle face from four edges. Order of Edges is not # important. It is not necessary that edges share the same vertex. # @param E1,E2,E3,E4 Edges for the face bound. # @return New GEOM_Object, containing the created face. # - # Example: see GEOM_Spanner.py + # @ref tui_building_by_blocks_page "Example" def MakeQuad(self,E1, E2, E3, E4): + # Example: see GEOM_Spanner.py anObj = self.BlocksOp.MakeQuad(E1, E2, E3, E4) RaiseIfFailed("MakeQuad", self.BlocksOp) return anObj - + ## Create a quadrangle face on two edges. # The missing edges will be built by creating the shortest ones. # @param E1,E2 Two opposite edges for the face. # @return New GEOM_Object, containing the created face. # - # Example: see GEOM_Spanner.py + # @ref tui_building_by_blocks_page "Example" def MakeQuad2Edges(self,E1, E2): + # Example: see GEOM_Spanner.py anObj = self.BlocksOp.MakeQuad2Edges(E1, E2) RaiseIfFailed("MakeQuad2Edges", self.BlocksOp) return anObj - + ## Create a quadrangle face with specified corners. # The missing edges will be built by creating the shortest ones. # @param V1,V2,V3,V4 Corner vertices for the face. # @return New GEOM_Object, containing the created face. # - # Example: see GEOM_Spanner.py + # @ref tui_building_by_blocks_page "Example 1" + # \n @ref swig_MakeQuad4Vertices "Example 2" def MakeQuad4Vertices(self,V1, V2, V3, V4): + # Example: see GEOM_Spanner.py anObj = self.BlocksOp.MakeQuad4Vertices(V1, V2, V3, V4) RaiseIfFailed("MakeQuad4Vertices", self.BlocksOp) return anObj - + ## Create a hexahedral solid, bounded by the six given faces. Order of # faces is not important. It is not necessary that Faces share the same edge. # @param F1,F2,F3,F4,F5,F6 Faces for the hexahedral solid. # @return New GEOM_Object, containing the created solid. # - # Example: see GEOM_Spanner.py + # @ref tui_building_by_blocks_page "Example 1" + # \n @ref swig_MakeHexa "Example 2" def MakeHexa(self,F1, F2, F3, F4, F5, F6): + # Example: see GEOM_Spanner.py anObj = self.BlocksOp.MakeHexa(F1, F2, F3, F4, F5, F6) RaiseIfFailed("MakeHexa", self.BlocksOp) return anObj - + ## Create a hexahedral solid between two given faces. # The missing faces will be built by creating the smallest ones. # @param F1,F2 Two opposite faces for the hexahedral solid. # @return New GEOM_Object, containing the created solid. # - # Example: see GEOM_Spanner.py + # @ref tui_building_by_blocks_page "Example 1" + # \n @ref swig_MakeHexa2Faces "Example 2" def MakeHexa2Faces(self,F1, F2): + # Example: see GEOM_Spanner.py anObj = self.BlocksOp.MakeHexa2Faces(F1, F2) RaiseIfFailed("MakeHexa2Faces", self.BlocksOp) return anObj - + + # end of l3_blocks + ## @} + + ## @addtogroup l3_blocks_op + ## @{ + ## Get a vertex, found in the given shape by its coordinates. # @param theShape Block or a compound of blocks. # @param theX,theY,theZ Coordinates of the sought vertex. @@ -2319,89 +3279,103 @@ class geompyDC(GEOM._objref_GEOM_Gen): # vertex and point with the given coordinates. # @return New GEOM_Object, containing the found vertex. # - # Example: see GEOM_TestOthers.py + # @ref swig_GetPoint "Example" def GetPoint(self,theShape, theX, theY, theZ, theEpsilon): + # Example: see GEOM_TestOthers.py anObj = self.BlocksOp.GetPoint(theShape, theX, theY, theZ, theEpsilon) RaiseIfFailed("GetPoint", self.BlocksOp) return anObj - + ## Get an edge, found in the given shape by two given vertices. # @param theShape Block or a compound of blocks. # @param thePoint1,thePoint2 Points, close to the ends of the desired edge. # @return New GEOM_Object, containing the found edge. # - # Example: see GEOM_Spanner.py + # @ref swig_todo "Example" def GetEdge(self,theShape, thePoint1, thePoint2): + # Example: see GEOM_Spanner.py anObj = self.BlocksOp.GetEdge(theShape, thePoint1, thePoint2) RaiseIfFailed("GetEdge", self.BlocksOp) return anObj - + ## Find an edge of the given shape, which has minimal distance to the given point. # @param theShape Block or a compound of blocks. # @param thePoint Point, close to the desired edge. # @return New GEOM_Object, containing the found edge. # - # Example: see GEOM_TestOthers.py + # @ref swig_GetEdgeNearPoint "Example" def GetEdgeNearPoint(self,theShape, thePoint): + # Example: see GEOM_TestOthers.py anObj = self.BlocksOp.GetEdgeNearPoint(theShape, thePoint) RaiseIfFailed("GetEdgeNearPoint", self.BlocksOp) return anObj - + ## Returns a face, found in the given shape by four given corner vertices. # @param theShape Block or a compound of blocks. - # @param thePoint1-thePoint4 Points, close to the corners of the desired face. + # @param thePoint1,thePoint2,thePoint3,thePoint4 Points, close to the corners of the desired face. # @return New GEOM_Object, containing the found face. # - # Example: see GEOM_Spanner.py + # @ref swig_todo "Example" def GetFaceByPoints(self,theShape, thePoint1, thePoint2, thePoint3, thePoint4): + # Example: see GEOM_Spanner.py anObj = self.BlocksOp.GetFaceByPoints(theShape, thePoint1, thePoint2, thePoint3, thePoint4) RaiseIfFailed("GetFaceByPoints", self.BlocksOp) return anObj - + ## Get a face of block, found in the given shape by two given edges. # @param theShape Block or a compound of blocks. # @param theEdge1,theEdge2 Edges, close to the edges of the desired face. # @return New GEOM_Object, containing the found face. # - # Example: see GEOM_Spanner.py + # @ref swig_todo "Example" def GetFaceByEdges(self,theShape, theEdge1, theEdge2): + # Example: see GEOM_Spanner.py anObj = self.BlocksOp.GetFaceByEdges(theShape, theEdge1, theEdge2) RaiseIfFailed("GetFaceByEdges", self.BlocksOp) return anObj - + ## Find a face, opposite to the given one in the given block. # @param theBlock Must be a hexahedral solid. # @param theFace Face of \a theBlock, opposite to the desired face. # @return New GEOM_Object, containing the found face. # - # Example: see GEOM_Spanner.py + # @ref swig_GetOppositeFace "Example" def GetOppositeFace(self,theBlock, theFace): + # Example: see GEOM_Spanner.py anObj = self.BlocksOp.GetOppositeFace(theBlock, theFace) RaiseIfFailed("GetOppositeFace", self.BlocksOp) return anObj - + ## Find a face of the given shape, which has minimal distance to the given point. # @param theShape Block or a compound of blocks. # @param thePoint Point, close to the desired face. # @return New GEOM_Object, containing the found face. # - # Example: see GEOM_Spanner.py + # @ref swig_GetFaceNearPoint "Example" def GetFaceNearPoint(self,theShape, thePoint): + # Example: see GEOM_Spanner.py anObj = self.BlocksOp.GetFaceNearPoint(theShape, thePoint) RaiseIfFailed("GetFaceNearPoint", self.BlocksOp) return anObj - + ## Find a face of block, whose outside normale has minimal angle with the given vector. - # @param theShape Block or a compound of blocks. + # @param theBlock Block or a compound of blocks. # @param theVector Vector, close to the normale of the desired face. # @return New GEOM_Object, containing the found face. # - # Example: see GEOM_Spanner.py - def GetFaceByNormale(self,theBlock, theVector): + # @ref swig_todo "Example" + def GetFaceByNormale(self, theBlock, theVector): + # Example: see GEOM_Spanner.py anObj = self.BlocksOp.GetFaceByNormale(theBlock, theVector) RaiseIfFailed("GetFaceByNormale", self.BlocksOp) return anObj - + + # end of l3_blocks_op + ## @} + + ## @addtogroup l4_blocks_measure + ## @{ + ## Check, if the compound of blocks is given. # To be considered as a compound of blocks, the # given shape must satisfy the following conditions: @@ -2413,39 +3387,49 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @return TRUE, if the given shape is a compound of blocks. # If theCompound is not valid, prints all discovered errors. # - # Example: see GEOM_Spanner.py + # @ref tui_measurement_tools_page "Example 1" + # \n @ref swig_CheckCompoundOfBlocks "Example 2" def CheckCompoundOfBlocks(self,theCompound): + # Example: see GEOM_Spanner.py (IsValid, BCErrors) = self.BlocksOp.CheckCompoundOfBlocks(theCompound) RaiseIfFailed("CheckCompoundOfBlocks", self.BlocksOp) if IsValid == 0: Descr = self.BlocksOp.PrintBCErrors(theCompound, BCErrors) print Descr return IsValid - + ## Remove all seam and degenerated edges from \a theShape. # Unite faces and edges, sharing one surface. It means that # this faces must have references to one C++ surface object (handle). # @param theShape The compound or single solid to remove irregular edges from. # @return Improved shape. # - # Example: see GEOM_TestOthers.py + # @ref swig_RemoveExtraEdges "Example" def RemoveExtraEdges(self,theShape): + # Example: see GEOM_TestOthers.py anObj = self.BlocksOp.RemoveExtraEdges(theShape) RaiseIfFailed("RemoveExtraEdges", self.BlocksOp) return anObj - + ## Check, if the given shape is a blocks compound. # Fix all detected errors. # \note Single block can be also fixed by this method. - # @param theCompound The compound to check and improve. + # @param theShape The compound to check and improve. # @return Improved compound. # - # Example: see GEOM_TestOthers.py + # @ref swig_CheckAndImprove "Example" def CheckAndImprove(self,theShape): + # Example: see GEOM_TestOthers.py anObj = self.BlocksOp.CheckAndImprove(theShape) RaiseIfFailed("CheckAndImprove", self.BlocksOp) return anObj - + + # end of l4_blocks_measure + ## @} + + ## @addtogroup l3_blocks_op + ## @{ + ## Get all the blocks, contained in the given compound. # @param theCompound The compound to explode. # @param theMinNbFaces If solid has lower number of faces, it is not a block. @@ -2453,42 +3437,51 @@ class geompyDC(GEOM._objref_GEOM_Gen): # \note If theMaxNbFaces = 0, the maximum number of faces is not restricted. # @return List of GEOM_Objects, containing the retrieved blocks. # - # Example: see GEOM_TestOthers.py + # @ref tui_explode_on_blocks "Example 1" + # \n @ref swig_MakeBlockExplode "Example 2" def MakeBlockExplode(self,theCompound, theMinNbFaces, theMaxNbFaces): + # Example: see GEOM_TestOthers.py + theMinNbFaces,theMaxNbFaces,Parameters = ParseParameters(theMinNbFaces,theMaxNbFaces) aList = self.BlocksOp.ExplodeCompoundOfBlocks(theCompound, theMinNbFaces, theMaxNbFaces) RaiseIfFailed("ExplodeCompoundOfBlocks", self.BlocksOp) + for anObj in aList: + anObj.SetParameters(Parameters) + pass return aList - + ## Find block, containing the given point inside its volume or on boundary. # @param theCompound Compound, to find block in. # @param thePoint Point, close to the desired block. If the point lays on # boundary between some blocks, we return block with nearest center. # @return New GEOM_Object, containing the found block. # - # Example: see GEOM_Spanner.py + # @ref swig_todo "Example" def GetBlockNearPoint(self,theCompound, thePoint): + # Example: see GEOM_Spanner.py anObj = self.BlocksOp.GetBlockNearPoint(theCompound, thePoint) RaiseIfFailed("GetBlockNearPoint", self.BlocksOp) return anObj - + ## Find block, containing all the elements, passed as the parts, or maximum quantity of them. # @param theCompound Compound, to find block in. # @param theParts List of faces and/or edges and/or vertices to be parts of the found block. # @return New GEOM_Object, containing the found block. # - # Example: see GEOM_TestOthers.py + # @ref swig_GetBlockByParts "Example" def GetBlockByParts(self,theCompound, theParts): + # Example: see GEOM_TestOthers.py anObj = self.BlocksOp.GetBlockByParts(theCompound, theParts) RaiseIfFailed("GetBlockByParts", self.BlocksOp) return anObj - + ## Return all blocks, containing all the elements, passed as the parts. # @param theCompound Compound, to find blocks in. # @param theParts List of faces and/or edges and/or vertices to be parts of the found blocks. # @return List of GEOM_Objects, containing the found blocks. # - # Example: see GEOM_Spanner.py + # @ref swig_todo "Example" def GetBlocksByParts(self,theCompound, theParts): + # Example: see GEOM_Spanner.py aList = self.BlocksOp.GetBlocksByParts(theCompound, theParts) RaiseIfFailed("GetBlocksByParts", self.BlocksOp) return aList @@ -2502,12 +3495,15 @@ class geompyDC(GEOM._objref_GEOM_Gen): # \note Unique ID of sub-shape can be obtained, using method GetSubShapeID(). # @return New GEOM_Object, containing the result shape. # - # Example: see GEOM_Spanner.py + # @ref tui_multi_transformation "Example" def MakeMultiTransformation1D(self,Block, DirFace1, DirFace2, NbTimes): + # Example: see GEOM_Spanner.py + DirFace1,DirFace2,NbTimes,Parameters = ParseParameters(DirFace1,DirFace2,NbTimes) anObj = self.BlocksOp.MakeMultiTransformation1D(Block, DirFace1, DirFace2, NbTimes) RaiseIfFailed("MakeMultiTransformation1D", self.BlocksOp) + anObj.SetParameters(Parameters) return anObj - + ## Multi-transformate block and glue the result. # @param Block Hexahedral solid to be multi-transformed. # @param DirFace1U,DirFace2U IDs of Direction faces for the first transformation. @@ -2515,14 +3511,18 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param NbTimesU,NbTimesV Quantity of transformations to be done. # @return New GEOM_Object, containing the result shape. # - # Example: see GEOM_Spanner.py + # @ref tui_multi_transformation "Example" def MakeMultiTransformation2D(self,Block, DirFace1U, DirFace2U, NbTimesU, DirFace1V, DirFace2V, NbTimesV): + # Example: see GEOM_Spanner.py + DirFace1U,DirFace2U,NbTimesU,DirFace1V,DirFace2V,NbTimesV,Parameters = ParseParameters( + DirFace1U,DirFace2U,NbTimesU,DirFace1V,DirFace2V,NbTimesV) anObj = self.BlocksOp.MakeMultiTransformation2D(Block, DirFace1U, DirFace2U, NbTimesU, DirFace1V, DirFace2V, NbTimesV) RaiseIfFailed("MakeMultiTransformation2D", self.BlocksOp) + anObj.SetParameters(Parameters) return anObj - + ## Build all possible propagation groups. # Propagation group is a set of all edges, opposite to one (main) # edge of this group directly or through other opposite edges. @@ -2530,74 +3530,84 @@ class geompyDC(GEOM._objref_GEOM_Gen): # @param theShape Shape to build propagation groups on. # @return List of GEOM_Objects, each of them is a propagation group. # - # Example: see GEOM_TestOthers.py + # @ref swig_Propagate "Example" def Propagate(self,theShape): + # Example: see GEOM_TestOthers.py listChains = self.BlocksOp.Propagate(theShape) RaiseIfFailed("Propagate", self.BlocksOp) return listChains - - # ----------------------------------------------------------------------------- - # Group operations - # ----------------------------------------------------------------------------- - + + # end of l3_blocks_op + ## @} + + ## @addtogroup l3_groups + ## @{ + ## Creates a new group which will store sub shapes of theMainShape # @param theMainShape is a GEOM object on which the group is selected # @param theShapeType defines a shape type of the group # @return a newly created GEOM group # - # Example: see GEOM_TestOthers.py + # @ref tui_working_with_groups_page "Example 1" + # \n @ref swig_CreateGroup "Example 2" def CreateGroup(self,theMainShape, theShapeType): + # Example: see GEOM_TestOthers.py anObj = self.GroupOp.CreateGroup(theMainShape, theShapeType) RaiseIfFailed("CreateGroup", self.GroupOp) return anObj - + ## Adds a sub object with ID theSubShapeId to the group # @param theGroup is a GEOM group to which the new sub shape is added # @param theSubShapeID is a sub shape ID in the main object. # \note Use method GetSubShapeID() to get an unique ID of the sub shape # - # Example: see GEOM_TestOthers.py + # @ref tui_working_with_groups_page "Example" def AddObject(self,theGroup, theSubShapeID): + # Example: see GEOM_TestOthers.py self.GroupOp.AddObject(theGroup, theSubShapeID) RaiseIfFailed("AddObject", self.GroupOp) pass - + ## Removes a sub object with ID \a theSubShapeId from the group # @param theGroup is a GEOM group from which the new sub shape is removed # @param theSubShapeID is a sub shape ID in the main object. # \note Use method GetSubShapeID() to get an unique ID of the sub shape # - # Example: see GEOM_TestOthers.py + # @ref tui_working_with_groups_page "Example" def RemoveObject(self,theGroup, theSubShapeID): + # Example: see GEOM_TestOthers.py self.GroupOp.RemoveObject(theGroup, theSubShapeID) RaiseIfFailed("RemoveObject", self.GroupOp) pass - + ## Adds to the group all the given shapes. No errors, if some shapes are alredy included. # @param theGroup is a GEOM group to which the new sub shapes are added. # @param theSubShapes is a list of sub shapes to be added. # - # Example: see GEOM_TestOthers.py + # @ref tui_working_with_groups_page "Example" def UnionList (self,theGroup, theSubShapes): + # Example: see GEOM_TestOthers.py self.GroupOp.UnionList(theGroup, theSubShapes) RaiseIfFailed("UnionList", self.GroupOp) pass - + ## Works like the above method, but argument # theSubShapes here is a list of sub-shapes indices # - # Example: see GEOM_TestOthers.py + # @ref swig_UnionIDs "Example" def UnionIDs(self,theGroup, theSubShapes): + # Example: see GEOM_TestOthers.py self.GroupOp.UnionIDs(theGroup, theSubShapes) RaiseIfFailed("UnionIDs", self.GroupOp) pass - + ## Removes from the group all the given shapes. No errors, if some shapes are not included. # @param theGroup is a GEOM group from which the sub-shapes are removed. # @param theSubShapes is a list of sub-shapes to be removed. # - # Example: see GEOM_TestOthers.py + # @ref tui_working_with_groups_page "Example" def DifferenceList (self,theGroup, theSubShapes): + # Example: see GEOM_TestOthers.py self.GroupOp.DifferenceList(theGroup, theSubShapes) RaiseIfFailed("DifferenceList", self.GroupOp) pass @@ -2605,43 +3615,49 @@ class geompyDC(GEOM._objref_GEOM_Gen): ## Works like the above method, but argument # theSubShapes here is a list of sub-shapes indices # - # Example: see GEOM_TestOthers.py + # @ref swig_DifferenceIDs "Example" def DifferenceIDs(self,theGroup, theSubShapes): + # Example: see GEOM_TestOthers.py self.GroupOp.DifferenceIDs(theGroup, theSubShapes) RaiseIfFailed("DifferenceIDs", self.GroupOp) pass - + ## Returns a list of sub objects ID stored in the group # @param theGroup is a GEOM group for which a list of IDs is requested # - # Example: see GEOM_TestOthers.py + # @ref swig_GetObjectIDs "Example" def GetObjectIDs(self,theGroup): + # Example: see GEOM_TestOthers.py ListIDs = self.GroupOp.GetObjects(theGroup) RaiseIfFailed("GetObjects", self.GroupOp) return ListIDs - + ## Returns a type of sub objects stored in the group # @param theGroup is a GEOM group which type is returned. # - # Example: see GEOM_TestOthers.py + # @ref swig_GetType "Example" def GetType(self,theGroup): + # Example: see GEOM_TestOthers.py aType = self.GroupOp.GetType(theGroup) RaiseIfFailed("GetType", self.GroupOp) return aType - + ## Returns a main shape associated with the group # @param theGroup is a GEOM group for which a main shape object is requested # @return a GEOM object which is a main shape for theGroup # - # Example: see GEOM_TestOthers.py + # @ref swig_GetMainShape "Example" def GetMainShape(self,theGroup): + # Example: see GEOM_TestOthers.py anObj = self.GroupOp.GetMainShape(theGroup) RaiseIfFailed("GetMainShape", self.GroupOp) return anObj - + ## Create group of edges of theShape, whose length is in range [min_length, max_length]. # If include_min/max == 0, edges with length == min/max_length will not be included in result. - def GetEdgesByLength (self,theShape, min_length, max_length, include_min = 1, include_max = 1): + # + # @ref swig_todo "Example" + def GetEdgesByLength (self, theShape, min_length, max_length, include_min = 1, include_max = 1): edges = self.SubShapeAll(theShape, ShapeType["EDGE"]) edges_in_range = [] for edge in edges: @@ -2654,19 +3670,21 @@ class geompyDC(GEOM._objref_GEOM_Gen): skip = 1 else: edges_in_range.append(edge) - + if len(edges_in_range) <= 0: print "No edges found by given criteria" return 0 - + group_edges = self.CreateGroup(theShape, ShapeType["EDGE"]) self.UnionList(group_edges, edges_in_range) - + return group_edges - + ## Create group of edges of selected shape, whose length is in range [min_length, max_length]. # If include_min/max == 0, edges with length == min/max_length will not be included in result. - def SelectEdges (self,min_length, max_length, include_min = 1, include_max = 1): + # + # @ref swig_todo "Example" + def SelectEdges (self, min_length, max_length, include_min = 1, include_max = 1): nb_selected = sg.SelectedCount() if nb_selected < 1: print "Select a shape before calling this function, please." @@ -2674,25 +3692,39 @@ class geompyDC(GEOM._objref_GEOM_Gen): if nb_selected > 1: print "Only one shape must be selected" return 0 - + id_shape = sg.getSelected(0) shape = IDToObject( id_shape ) - + group_edges = self.GetEdgesByLength(shape, min_length, max_length, include_min, include_max) - + left_str = " < " right_str = " < " if include_min: left_str = " <= " if include_max: right_str = " <= " - + self.addToStudyInFather(shape, group_edges, "Group of edges with " + `min_length` + left_str + "length" + right_str + `max_length`) - + sg.updateObjBrowser(1) - + return group_edges - + + # end of l3_groups + ## @} + + ## Create a copy of the given object + # @ingroup l1_geompy_auxiliary + # + # @ref swig_all_advanced "Example" + def MakeCopy(self,theOriginal): + # Example: see GEOM_TestAll.py + anObj = self.InsertOp.MakeCopy(theOriginal) + RaiseIfFailed("MakeCopy", self.InsertOp) + return anObj + ## Add Path to load python scripts from + # @ingroup l1_geompy_auxiliary def addPath(self,Path): if (sys.path.count(Path) < 1): sys.path.append(Path) diff --git a/src/GEOM_SWIG_WITHIHM/Makefile.am b/src/GEOM_SWIG_WITHIHM/Makefile.am index e71593115..1fcd94b42 100644 --- a/src/GEOM_SWIG_WITHIHM/Makefile.am +++ b/src/GEOM_SWIG_WITHIHM/Makefile.am @@ -1,6 +1,6 @@ -# GEOM GEOM_SWIG : binding of C++ omplementaion with Python +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # # This library is free software; you can redistribute it and/or @@ -17,19 +17,16 @@ # 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 -# -# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # +# GEOM GEOM_SWIG : binding of C++ omplementaion with Python # File : Makefile.in # Author : Nicolas REJNERI, Paul RASCLE # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header$ - - # Libraries targets - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # =============================================================== @@ -49,66 +46,46 @@ include $(top_srcdir)/adm_local/unix/make_common_starter.am # + | # dependant libs | # -# The file libSALOME_Swigcmodule.py will be installed in -# /lib/python/site-package/salome. -# The library will be installed in the same place. +# The file libGEOM_Swig.py will be installed to the +# /bin/salome directory. +# The library _libGEOM_Swig.so will be installed to the +# /lib/python/site-package/salome directory. # -# this option puts it to dist -#BUILT_SOURCES = swig_wrap.cpp - -SWIG_FLAGS = \ - @SWIG_FLAGS@ \ - -I$(srcdir) \ - -I$(srcdir)/../GEOMGUI - +SWIG_FLAGS = @SWIG_FLAGS@ -I$(srcdir) -I$(srcdir)/../GEOMGUI SWIG_SOURCES = libGEOM_Swig.i -# Libraries targets -lib_LTLIBRARIES = libGEOM_Swigcmodule.la - -nodist_pkgpython_DATA = libGEOM_Swig.py libGEOM_Swig.py: swig_wrap.cpp -libGEOM_Swigcmodule_la_SOURCES = \ - $(BUILT_SOURCES) \ - $(SWIG_SOURCES) +# Libraries targets +lib_LTLIBRARIES = _libGEOM_Swig.la +_libGEOM_Swig_la_SOURCES = $(SWIG_SOURCES) +nodist__libGEOM_Swig_la_SOURCES = swig_wrap.cpp +salomeinclude_HEADERS = $(SWIG_SOURCES) -nodist_libGEOM_Swigcmodule_la_SOURCES = swig_wrap.cpp - -#LIB_CLIENT_IDL = SALOMEDS.idl \ -# SALOMEDS_Attributes.idl \ -# SALOME_Exception.idl \ -# GEOM_Gen.idl \ -# SALOME_Component.idl \ -# SALOME_GenericObj.idl - -libGEOM_Swigcmodule_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(PYTHON_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(VTK_INCLUDES) \ - $(OGL_INCLUDES) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../GEOMGUI \ - -I$(top_builddir)/idl \ +_libGEOM_Swig_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(PYTHON_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(VTK_INCLUDES) \ + $(OGL_INCLUDES) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../GEOMGUI \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libGEOM_Swigcmodule_la_LDFLAGS = \ - ../GEOMGUI/libGEOM.la - - -libGEOM_Swigcmodule_la_LIBADD = \ +_libGEOM_Swig_la_LDFLAGS = -module +_libGEOM_Swig_la_LIBADD = \ + ../GEOMGUI/libGEOM.la \ $(PYTHON_LIBS) swig_wrap.cpp : $(SWIG_SOURCES) $(SWIG) $(SWIG_FLAGS) -o $@ $< -CLEANFILES = \ - swig_wrap.cpp +CLEANFILES = swig_wrap.cpp libGEOM_Swig.py # # =============================================================== @@ -116,12 +93,8 @@ CLEANFILES = \ # =============================================================== # -# Scripts to be installed. -dist_salomescript_DATA= \ - libGEOM_Swig.py +# Scripts to be installed (distributed) +dist_salomescript_DATA = -install-exec-hook:\ - $(libdir)/_libGEOM_Swig.so - -$(libdir)/_libGEOM_Swig.so: - ( cd $(libdir); ln -sf libGEOM_Swigcmodule.so _libGEOM_Swig.so; ) +# Scripts to be installed (non-distributed) +nodist_salomescript_DATA = libGEOM_Swig.py diff --git a/src/GEOM_SWIG_WITHIHM/libGEOM_Swig.i b/src/GEOM_SWIG_WITHIHM/libGEOM_Swig.i index b1c76a904..2ca52598a 100644 --- a/src/GEOM_SWIG_WITHIHM/libGEOM_Swig.i +++ b/src/GEOM_SWIG_WITHIHM/libGEOM_Swig.i @@ -1,30 +1,31 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 : libGeometry_Swig.i // Created : Tue Mar 26 15:04:48 2002 // Author : Nicolas REJNERI, Paul RASCLE // Project : SALOME // Module : GEOM -// Copyright : Open CASCADE, EDF 2002 // $Header$ - +// %module libGEOM_Swig %include "GeometryGUI_Swig.i" diff --git a/src/GenerationGUI/GenerationGUI.cxx b/src/GenerationGUI/GenerationGUI.cxx index 85832ed84..0b16254ac 100644 --- a/src/GenerationGUI/GenerationGUI.cxx +++ b/src/GenerationGUI/GenerationGUI.cxx @@ -1,50 +1,46 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GenerationGUI.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : GenerationGUI.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "GenerationGUI.h" -#include "SUIT_Session.h" -#include "SUIT_Desktop.h" +#include -#include "SalomeApp_Application.h" +#include +#include #include "GenerationGUI_PrismDlg.h" // Method PRISM #include "GenerationGUI_RevolDlg.h" // Method REVOL #include "GenerationGUI_FillingDlg.h" // Method FILLING #include "GenerationGUI_PipeDlg.h" // Method PIPE -using namespace std; - //======================================================================= // function : GenerationGUI() // purpose : Constructor //======================================================================= -GenerationGUI::GenerationGUI(GeometryGUI* parent) : GEOMGUI(parent) +GenerationGUI::GenerationGUI( GeometryGUI* parent ) + : GEOMGUI( parent ) { } @@ -70,17 +66,16 @@ bool GenerationGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) QDialog* aDlg = NULL; - switch (theCommandID) - { - case 4031: aDlg = new GenerationGUI_PrismDlg ( getGeometryGUI(), parent, ""); break; - case 4032: aDlg = new GenerationGUI_RevolDlg ( getGeometryGUI(), parent, ""); break; - case 4033: aDlg = new GenerationGUI_FillingDlg ( getGeometryGUI(), parent, ""); break; - case 4034: aDlg = new GenerationGUI_PipeDlg ( getGeometryGUI(), parent, ""); break; + switch ( theCommandID ) { + case 4031: aDlg = new GenerationGUI_PrismDlg ( getGeometryGUI(), parent ); break; + case 4032: aDlg = new GenerationGUI_RevolDlg ( getGeometryGUI(), parent ); break; + case 4033: aDlg = new GenerationGUI_FillingDlg ( getGeometryGUI(), parent ); break; + case 4034: aDlg = new GenerationGUI_PipeDlg ( getGeometryGUI(), parent ); break; - default: app->putInfo( tr( "GEOM_PRP_COMMAND" ).arg( theCommandID ) ); break; + default: app->putInfo( tr( "GEOM_PRP_COMMAND" ).arg( theCommandID ) ); break; } - if (aDlg != NULL) + if (aDlg != NULL ) aDlg->show(); return true; @@ -92,9 +87,11 @@ bool GenerationGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) //===================================================================================== extern "C" { -GENERATIONGUI_EXPORT - GEOMGUI* GetLibGUI(GeometryGUI* parent) +#ifdef WIN32 + __declspec( dllexport ) +#endif + GEOMGUI* GetLibGUI( GeometryGUI* parent ) { - return new GenerationGUI(parent); + return new GenerationGUI( parent ); } } diff --git a/src/GenerationGUI/GenerationGUI.h b/src/GenerationGUI/GenerationGUI.h index a809bdcf7..17a28b815 100644 --- a/src/GenerationGUI/GenerationGUI.h +++ b/src/GenerationGUI/GenerationGUI.h @@ -1,56 +1,44 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GenerationGUI.h +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : GenerationGUI.h -// Author : Damien COQUERET -// Module : GEOM - #ifndef GENERATIONGUI_H #define GENERATIONGUI_H -#ifdef WNT -# if defined GENERATIONGUI_EXPORTS -# define GENERATIONGUI_EXPORT __declspec( dllexport ) -# else -# define GENERATIONGUI_EXPORT __declspec( dllimport ) -# endif -#else -# define GENERATIONGUI_EXPORT -#endif - -#include "GEOMGUI.h" +#include //================================================================================= // class : GenerationGUI // purpose : //================================================================================= -class GENERATIONGUI_EXPORT GenerationGUI : public GEOMGUI +class GenerationGUI : public GEOMGUI { public: - GenerationGUI(GeometryGUI* parent); + GenerationGUI( GeometryGUI* ); ~GenerationGUI(); - bool OnGUIEvent( int theCommandID, SUIT_Desktop* parent ); + bool OnGUIEvent( int, SUIT_Desktop* ); }; #endif diff --git a/src/GenerationGUI/GenerationGUI.pro b/src/GenerationGUI/GenerationGUI.pro new file mode 100644 index 000000000..124ba1499 --- /dev/null +++ b/src/GenerationGUI/GenerationGUI.pro @@ -0,0 +1,66 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = GenerationGUI +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +QT_INCLUDES = $$(QTDIR)/include $$(QTDIR)/include/QtCore $$(QTDIR)/include/QtGui $$(QTDIR)/include/QtOpenGL $$(QTDIR)/include/QtXml + +VTK_INCLUDES = $$(VTKHOME)/include/vtk + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +PYTHON_INCLUDES = $$(PYTHONHOME)/include/python2.4 + +BOOST_CPPFLAGS = $$(BOOSTDIR)/include + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +GUI_CXXFLAGS = $$(GUI_ROOT_DIR)/include/salome + +CORBA_INCLUDES = $$(OMNIORBDIR)/include $$(OMNIORBDIR)/include/omniORB4 $$(OMNIORBDIR)/include/COS + +CAS_LDPATH = -L$${CASROOT}/Linux/lib + +INCLUDEPATH += $${QT_INCLUDES} $${VTK_INCLUDES} $${CAS_CPPFLAGS} $${PYTHON_INCLUDES} $${BOOST_CPPFLAGS} $${KERNEL_CXXFLAGS} $${GUI_CXXFLAGS} $${CORBA_INCLUDES} ../GEOMGUI ../DlgRef ../GEOMBase ../OBJECT ../GEOMClient ../GEOMImpl ../GEOMFiltersSelection $$(GEOM_ROOT_DIR)/idl $$(GEOM_ROOT_DIR)/salome_adm/unix + +LIBS += -L$$(GEOM_ROOT_DIR)/lib -lGEOMFiltersSelection -lGEOMBase $${CAS_LDPATH} -lTKOffset + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += GENERATIONGUI_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS OMNIORB_VERSION=4 __x86__ __linux__ COMP_CORBA_DOUBLE COMP_CORBA_LONG + +SOURCES = GenerationGUI.cxx +SOURCES += GenerationGUI_PrismDlg.cxx +SOURCES += GenerationGUI_RevolDlg.cxx +SOURCES += GenerationGUI_FillingDlg.cxx +SOURCES += GenerationGUI_PipeDlg.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/GenerationGUI/GenerationGUI_FillingDlg.cxx b/src/GenerationGUI/GenerationGUI_FillingDlg.cxx index 9f6bc2c60..4f46e1962 100644 --- a/src/GenerationGUI/GenerationGUI_FillingDlg.cxx +++ b/src/GenerationGUI/GenerationGUI_FillingDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,38 +17,25 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GenerationGUI_FillingDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : GenerationGUI_FillingDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "GenerationGUI_FillingDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include + +#include +#include +#include +#include -#include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include "GEOMImpl_Types.hxx" - -#include -#include - -#include "utilities.h" +#include //================================================================================= // class : GenerationGUI_FillingDlg() @@ -57,38 +44,41 @@ // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -GenerationGUI_FillingDlg::GenerationGUI_FillingDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +GenerationGUI_FillingDlg::GenerationGUI_FillingDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ) { - QPixmap image0 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_FILLING"))); - QPixmap image1 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_FILLING" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_FILLING_TITLE")); + setWindowTitle( tr( "GEOM_FILLING_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_FILLING")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr ( "GEOM_FILLING" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_1Sel5Spin1Check(this, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); - GroupPoints->TextLabel1->setText(tr("GEOM_FILLING_COMPOUND")); - GroupPoints->TextLabel2->setText(tr("GEOM_FILLING_MIN_DEG")); - GroupPoints->TextLabel3->setText(tr("GEOM_FILLING_TOL_2D")); - GroupPoints->TextLabel4->setText(tr("GEOM_FILLING_NB_ITER")); - GroupPoints->TextLabel5->setText(tr("GEOM_FILLING_MAX_DEG")); - GroupPoints->TextLabel6->setText(tr("GEOM_FILLING_TOL_3D")); - GroupPoints->CheckBox1->setText(tr("GEOM_FILLING_APPROX")); - GroupPoints->PushButton1->setPixmap(image1); + GroupPoints = new DlgRef_1Sel5Spin1Check( centralWidget() ); + GroupPoints->GroupBox1->setTitle( tr( "GEOM_ARGUMENTS" ) ); + GroupPoints->TextLabel1->setText( tr( "GEOM_FILLING_COMPOUND" ) ); + GroupPoints->TextLabel2->setText( tr( "GEOM_FILLING_MIN_DEG" ) ); + GroupPoints->TextLabel3->setText( tr( "GEOM_FILLING_TOL_2D" ) ); + GroupPoints->TextLabel4->setText( tr( "GEOM_FILLING_NB_ITER" ) ); + GroupPoints->TextLabel5->setText( tr( "GEOM_FILLING_MAX_DEG" ) ); + GroupPoints->TextLabel6->setText( tr( "GEOM_FILLING_TOL_3D" ) ); + GroupPoints->CheckBox1->setText( tr( "GEOM_FILLING_APPROX" ) ); + GroupPoints->PushButton1->setIcon( image1 ); GroupPoints->LineEdit1->setReadOnly( true ); - Layout1->addWidget(GroupPoints, 2, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); /***************************************************************/ - setHelpFileName("create_filling_page.html"); + setHelpFileName( "create_filling_page.html" ); /* Initialisations */ Init(); @@ -117,7 +107,7 @@ void GenerationGUI_FillingDlg::Init() myMaxDeg = 5; myTol3D = 0.0001; myTol2D = 0.0001; - myNbIter = 5; + myNbIter = 0; myIsApprox = false; myOkCompound = false; @@ -126,42 +116,52 @@ void GenerationGUI_FillingDlg::Init() double SpecificStep1 = 1; double SpecificStep2 = 0.0001; /* min, max, step and decimals for spin boxes & initial values */ - GroupPoints->SpinBox_1->RangeStepAndValidator(2.0, MAX_NUMBER, SpecificStep1, 3); - GroupPoints->SpinBox_2->RangeStepAndValidator(0.00001, 10000.0, SpecificStep2, 5); - GroupPoints->SpinBox_3->RangeStepAndValidator(1.0, MAX_NUMBER, SpecificStep1, 3); - GroupPoints->SpinBox_4->RangeStepAndValidator(1.0, MAX_NUMBER, SpecificStep1, 3); - GroupPoints->SpinBox_5->RangeStepAndValidator(0.00001, 10000.0, SpecificStep2, 5); + initSpinBox( GroupPoints->SpinBox1, 2.0, MAX_NUMBER, SpecificStep1, 3 ); + initSpinBox( GroupPoints->SpinBox2, 0.00001, 10000.0, SpecificStep2, 5 ); + initSpinBox( GroupPoints->SpinBox3, 0.0, MAX_NUMBER, SpecificStep1, 3 ); + initSpinBox( GroupPoints->SpinBox4, 1.0, MAX_NUMBER, SpecificStep1, 3 ); + initSpinBox( GroupPoints->SpinBox5, 0.00001, 10000.0, SpecificStep2, 5 ); - GroupPoints->SpinBox_1->SetValue(myMinDeg); - GroupPoints->SpinBox_2->SetValue(myTol2D); - GroupPoints->SpinBox_3->SetValue(myNbIter); - GroupPoints->SpinBox_4->SetValue(myMaxDeg); - GroupPoints->SpinBox_5->SetValue(myTol3D); + GroupPoints->SpinBox1->setValue( myMinDeg ); + GroupPoints->SpinBox2->setValue( myTol2D ); + GroupPoints->SpinBox3->setValue( myNbIter ); + GroupPoints->SpinBox4->setValue( myMaxDeg ); + GroupPoints->SpinBox5->setValue( myTol3D ); /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPoints->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect(GroupPoints->SpinBox_1, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(GroupPoints->SpinBox_2, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(GroupPoints->SpinBox_3, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(GroupPoints->SpinBox_4, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(GroupPoints->SpinBox_5, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(GroupPoints->CheckBox1, SIGNAL(stateChanged(int)), this, SLOT(ApproxChanged())); + connect( GroupPoints->SpinBox1, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupPoints->SpinBox2, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupPoints->SpinBox3, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupPoints->SpinBox4, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupPoints->SpinBox5, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_1, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_2, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_3, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_4, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_5, SLOT(SetStep(double))); + connect( GroupPoints->CheckBox1, SIGNAL( stateChanged( int ) ), this, SLOT( ApproxChanged() ) ); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( myGeomGUI, SIGNAL( SignalDefaultStepValueChanged( double ) ), this, SLOT( SetDoubleSpinBoxStep( double ) ) ); - initName(tr("GEOM_FILLING")); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); + + initName( tr( "GEOM_FILLING" ) ); +} + +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void GenerationGUI_FillingDlg::SetDoubleSpinBoxStep( double step ) +{ + GroupPoints->SpinBox1->setSingleStep(step); + GroupPoints->SpinBox2->setSingleStep(step); + GroupPoints->SpinBox3->setSingleStep(step); + GroupPoints->SpinBox4->setSingleStep(step); + GroupPoints->SpinBox5->setSingleStep(step); } @@ -199,40 +199,41 @@ void GenerationGUI_FillingDlg::SelectionIntoArgument() erasePreview(); myEditCurrentArgument->setText(""); - if(IObjectCount() != 1) { - if(myEditCurrentArgument == GroupPoints->LineEdit1) + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) { + if (myEditCurrentArgument == GroupPoints->LineEdit1) myOkCompound = false; return; } // nbSel == 1 Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_ptr aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult ); + GEOM::GEOM_Object_ptr aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); if (!testResult) return; - if(myEditCurrentArgument == GroupPoints->LineEdit1) { + if (myEditCurrentArgument == GroupPoints->LineEdit1) { TopoDS_Shape S; myOkCompound = false; - if ( GEOMBase::GetShape(aSelectedObject, S) && - S.ShapeType() == TopAbs_COMPOUND) - { - // myCompound should be a compound of edges - for ( TopoDS_Iterator it( S ); it.More(); it.Next() ) - if ( it.Value().ShapeType() != TopAbs_EDGE ) - return; - myCompound = aSelectedObject; - myOkCompound = true; - } + if (GEOMBase::GetShape(aSelectedObject, S) && S.ShapeType() == TopAbs_COMPOUND) { + // myCompound should be a compound of edges + for (TopoDS_Iterator it (S); it.More(); it.Next()) + if (it.Value().ShapeType() != TopAbs_EDGE) + return; + myCompound = aSelectedObject; + myOkCompound = true; + } } - myEditCurrentArgument->setText( GEOMBase::GetName( aSelectedObject ) ); + myEditCurrentArgument->setText(GEOMBase::GetName(aSelectedObject)); displayPreview(); } - //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -242,7 +243,7 @@ void GenerationGUI_FillingDlg::SetEditCurrentArgument() QPushButton* send = (QPushButton*)sender(); globalSelection( GEOM_ALLSHAPES ); - if(send == GroupPoints->PushButton1) { + if ( send == GroupPoints->PushButton1 ) { GroupPoints->LineEdit1->setFocus(); myEditCurrentArgument = GroupPoints->LineEdit1; globalSelection( GEOM_COMPOUND ); @@ -258,11 +259,10 @@ void GenerationGUI_FillingDlg::SetEditCurrentArgument() void GenerationGUI_FillingDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if(send == GroupPoints->LineEdit1) - { - myEditCurrentArgument = send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } + if ( send == GroupPoints->LineEdit1 ) { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } } @@ -273,8 +273,8 @@ void GenerationGUI_FillingDlg::LineEditReturnPressed() void GenerationGUI_FillingDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); globalSelection( GEOM_COMPOUND ); displayPreview(); } @@ -284,9 +284,9 @@ void GenerationGUI_FillingDlg::ActivateThisDialog() // function : enterEvent() // purpose : //================================================================================= -void GenerationGUI_FillingDlg::enterEvent(QEvent* e) +void GenerationGUI_FillingDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } @@ -295,19 +295,19 @@ void GenerationGUI_FillingDlg::enterEvent(QEvent* e) // function : ValueChangedInSpinBox() // purpose : //================================================================================= -void GenerationGUI_FillingDlg::ValueChangedInSpinBox(double newValue) +void GenerationGUI_FillingDlg::ValueChangedInSpinBox( double newValue ) { QObject* send = (QObject*)sender(); - if(send == GroupPoints->SpinBox_1) - myMinDeg = int(newValue); - else if(send == GroupPoints->SpinBox_2) + if ( send == GroupPoints->SpinBox1 ) + myMinDeg = int( newValue ); + else if ( send == GroupPoints->SpinBox2 ) myTol2D = newValue; - else if(send == GroupPoints->SpinBox_3) + else if ( send == GroupPoints->SpinBox3 ) myNbIter = int(newValue); - else if(send == GroupPoints->SpinBox_4) + else if ( send == GroupPoints->SpinBox4 ) myMaxDeg = int(newValue); - else if(send == GroupPoints->SpinBox_5) + else if ( send == GroupPoints->SpinBox5 ) myTol3D = newValue; displayPreview(); @@ -336,9 +336,16 @@ GEOM::GEOM_IOperations_ptr GenerationGUI_FillingDlg::createOperation() // function : isValid // purpose : //================================================================================= -bool GenerationGUI_FillingDlg::isValid( QString& ) +bool GenerationGUI_FillingDlg::isValid( QString& msg ) { - return myOkCompound > 0; + bool ok = true; + ok = GroupPoints->SpinBox1->isValid( msg, !IsPreview() ) && ok; + ok = GroupPoints->SpinBox2->isValid( msg, !IsPreview() ) && ok; + ok = GroupPoints->SpinBox3->isValid( msg, !IsPreview() ) && ok; + ok = GroupPoints->SpinBox4->isValid( msg, !IsPreview() ) && ok; + ok = GroupPoints->SpinBox5->isValid( msg, !IsPreview() ) && ok; + + return myOkCompound > 0 && ok; } //================================================================================= @@ -350,10 +357,21 @@ bool GenerationGUI_FillingDlg::execute( ObjectList& objects ) GEOM::GEOM_Object_var anObj; anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation() )->MakeFilling( - myCompound, myMinDeg, myMaxDeg, myTol2D, myTol3D, myNbIter, myIsApprox ); - + myCompound, myMinDeg, myMaxDeg, myTol2D, myTol3D, myNbIter, myIsApprox ); if ( !anObj->_is_nil() ) + { + if ( !IsPreview() ) + { + QStringList aParameters; + aParameters << GroupPoints->SpinBox1->text(); + aParameters << GroupPoints->SpinBox2->text(); + aParameters << GroupPoints->SpinBox3->text(); + aParameters << GroupPoints->SpinBox4->text(); + aParameters << GroupPoints->SpinBox5->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } objects.push_back( anObj._retn() ); + } return true; } diff --git a/src/GenerationGUI/GenerationGUI_FillingDlg.h b/src/GenerationGUI/GenerationGUI_FillingDlg.h index 67d70b837..ed4de1d3d 100644 --- a/src/GenerationGUI/GenerationGUI_FillingDlg.h +++ b/src/GenerationGUI/GenerationGUI_FillingDlg.h @@ -1,81 +1,79 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : GenerationGUI_FillingDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GenerationGUI_FillingDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef GENERATIONGUI_FILLINGDLG_H +#define GENERATIONGUI_FILLINGDLG_H -#ifndef DIALOGBOX_FILLING_H -#define DIALOGBOX_FILLING_H +#include -#include "GenerationGUI.h" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel5Spin1Check.h" +class DlgRef_1Sel5Spin1Check; //================================================================================= // class : GenerationGUI_FillingDlg // purpose : //================================================================================= -class GENERATIONGUI_EXPORT GenerationGUI_FillingDlg : public GEOMBase_Skeleton +class GenerationGUI_FillingDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - GenerationGUI_FillingDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~GenerationGUI_FillingDlg(); + GenerationGUI_FillingDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~GenerationGUI_FillingDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& msg ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); private: - void Init(); - void enterEvent(QEvent* e); + void Init(); + void enterEvent( QEvent* ); - GEOM::GEOM_Object_var myCompound; /* compound of curves */ - Standard_Integer myMinDeg; - Standard_Integer myMaxDeg; - Standard_Real myTol3D; - Standard_Real myTol2D; - Standard_Integer myNbIter; - bool myIsApprox; - bool myOkCompound; /* to check when curv. compound is defined */ - - DlgRef_1Sel5Spin1Check* GroupPoints; +private: + GEOM::GEOM_Object_var myCompound; /* compound of curves */ + Standard_Integer myMinDeg; + Standard_Integer myMaxDeg; + Standard_Real myTol3D; + Standard_Real myTol2D; + Standard_Integer myNbIter; + bool myIsApprox; + bool myOkCompound; /* to check when curv. compound is defined */ + DlgRef_1Sel5Spin1Check* GroupPoints; + private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ValueChangedInSpinBox(double newValue); - void ApproxChanged(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ValueChangedInSpinBox( double ); + void ApproxChanged(); + void SetDoubleSpinBoxStep( double ); }; -#endif // DIALOGBOX_FILLING_H +#endif // GENERATIONGUI_FILLINGDLG_H diff --git a/src/GenerationGUI/GenerationGUI_PipeDlg.cxx b/src/GenerationGUI/GenerationGUI_PipeDlg.cxx index 2d124940d..e560176dc 100644 --- a/src/GenerationGUI/GenerationGUI_PipeDlg.cxx +++ b/src/GenerationGUI/GenerationGUI_PipeDlg.cxx @@ -1,141 +1,200 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GenerationGUI_PipeDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : GenerationGUI_PipeDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "GenerationGUI_PipeDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include -#include +#include +#include +#include +#include -#include #include #include #include #include #include -#include -#include -#if OCC_VERSION_MAJOR >= 5 -#include -#else -#include -#endif +#include +#include -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" +#include //================================================================================= // class : GenerationGUI_PipeDlg() -// purpose : Constructs a GenerationGUI_PipeDlg which is a child of 'parent', with the +// purpose : Constructs a GenerationGUI_PipeDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -GenerationGUI_PipeDlg::GenerationGUI_PipeDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +GenerationGUI_PipeDlg::GenerationGUI_PipeDlg (GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_PIPE"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_PIPE"))); + QPixmap image1 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); + QPixmap image2 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_PIPE_BINORMAL"))); - setCaption(tr("GEOM_PIPE_TITLE")); + setWindowTitle(tr("GEOM_PIPE_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_PIPE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_PIPE")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setIcon(image2); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); + + GroupPoints = new DlgRef_3Sel1Check(centralWidget()); - GroupPoints = new DlgRef_2Sel_QTD(this, "GroupPoints"); GroupPoints->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); GroupPoints->TextLabel1->setText(tr("GEOM_BASE_OBJECT")); GroupPoints->TextLabel2->setText(tr("GEOM_PATH_OBJECT")); - GroupPoints->PushButton1->setPixmap(image1); - GroupPoints->PushButton2->setPixmap(image1); - GroupPoints->LineEdit1->setReadOnly( true ); - GroupPoints->LineEdit2->setReadOnly( true ); + GroupPoints->TextLabel3->setText(tr("GEOM_BINORMAL")); + GroupPoints->PushButton1->setIcon(image1); + GroupPoints->PushButton2->setIcon(image1); + GroupPoints->PushButton3->setIcon(image1); + GroupPoints->CheckButton1->setText(tr("GEOM_SELECT_UNPUBLISHED_EDGES")); - Layout1->addWidget(GroupPoints, 2, 0); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); /***************************************************************/ setHelpFileName("create_extrusion_alongpath_page.html"); - /* Initialisations */ + // Initialisation Init(); } - //================================================================================= // function : ~GenerationGUI_PipeDlg() // purpose : Destroys the object and frees any allocated resources //================================================================================= GenerationGUI_PipeDlg::~GenerationGUI_PipeDlg() { - /* no need to delete child widgets, Qt does it all for us */ + // no need to delete child widgets, Qt does it all for us } - //================================================================================= // function : Init() // purpose : //================================================================================= void GenerationGUI_PipeDlg::Init() { - /* init variables */ - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit1->setReadOnly( true ); - GroupPoints->LineEdit2->setReadOnly( true ); + // init variables + GroupPoints->LineEdit1->setReadOnly(true); + GroupPoints->LineEdit2->setReadOnly(true); + GroupPoints->LineEdit3->setReadOnly(true); - myOkBase = myOkPath = false; + GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit2->setText(""); + GroupPoints->LineEdit3->setText(""); + myBase = myPath = myVec = GEOM::GEOM_Object::_nil(); + myOkBase = myOkPath = myOkVec = false; - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + GroupPoints->CheckButton1->setEnabled(false); + + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); + + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupPoints->PushButton3, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->LineEdit3, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + + connect(GroupPoints->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(SelectionTypeButtonClicked())); initName(tr("GEOM_PIPE")); - // globalSelection( GEOM_ALLSHAPES ); + GroupPoints->TextLabel3->hide(); + GroupPoints->PushButton3->hide(); + GroupPoints->LineEdit3->hide(); + ConstructorsClicked(0); + + GroupPoints->PushButton1->click(); + SelectionIntoArgument(); } +//================================================================================= +// function : ConstructorsClicked() +// purpose : Radio button management +//================================================================================= +void GenerationGUI_PipeDlg::ConstructorsClicked( int constructorId ) +{ + erasePreview(); + + switch (constructorId) + { + case 0: + { + GroupPoints->TextLabel3->hide(); + GroupPoints->PushButton3->hide(); + GroupPoints->LineEdit3->hide(); + break; + } + case 1: + { + GroupPoints->TextLabel3->show(); + GroupPoints->PushButton3->show(); + GroupPoints->LineEdit3->show(); + break; + } + } + + displayPreview(); +} + +//================================================================================= +// function : SelectionBittonClicked() +// purpose : Selection type Radio button management +//================================================================================= +void GenerationGUI_PipeDlg::SelectionTypeButtonClicked() +{ + globalSelection(); + if ( GroupPoints->CheckButton1->isChecked() ) { + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + } else { + TColStd_MapOfInteger aMap; + aMap.Add(GEOM_WIRE); + aMap.Add(GEOM_LINE); + globalSelection(aMap); + } + if(myEditCurrentArgument == GroupPoints->LineEdit2) { + myEditCurrentArgument->setText(""); + myOkPath = false; + } + displayPreview(); +} //================================================================================= // function : ClickOnOk() @@ -143,115 +202,153 @@ void GenerationGUI_PipeDlg::Init() //================================================================================= void GenerationGUI_PipeDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } - //================================================================================= -// function : ClickOnAply() +// function : ClickOnApply() // purpose : //================================================================================= bool GenerationGUI_PipeDlg::ClickOnApply() { - if ( !onAccept() ) + if (!onAccept()) return false; initName(); + if ( getConstructorId() != 1 ) + ConstructorsClicked( getConstructorId() ); + // activate selection and connect selection manager + GroupPoints->PushButton1->click(); return true; } - //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection has changed +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void GenerationGUI_PipeDlg::SelectionIntoArgument() { erasePreview(); myEditCurrentArgument->setText(""); - - if(IObjectCount() != 1) { - if(myEditCurrentArgument == GroupPoints->LineEdit1) - myOkBase = false; - else if(myEditCurrentArgument == GroupPoints->LineEdit2) - myOkPath = false; + if (myEditCurrentArgument == GroupPoints->LineEdit1) myOkBase = false; + else if (myEditCurrentArgument == GroupPoints->LineEdit2) myOkPath = false; + else if (myEditCurrentArgument == GroupPoints->LineEdit3) myOkVec = false; + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) return; - } - + // nbSel == 1 Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_ptr aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult ); - - if (!testResult) + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + + if (!testResult || aSelectedObject->_is_nil()) return; - + TopoDS_Shape S; - - if(myEditCurrentArgument == GroupPoints->LineEdit1) { - myOkBase = false; - - if(!GEOMBase::GetShape(aSelectedObject, S) || - S.ShapeType() == TopAbs_COMPSOLID || - S.ShapeType() == TopAbs_COMPOUND || - S.ShapeType() == TopAbs_SOLID || - S.ShapeType() == TopAbs_SHAPE) + if (!GEOMBase::GetShape(aSelectedObject, S)) + return; + + if (myEditCurrentArgument == GroupPoints->LineEdit1) { + if (S.ShapeType() == TopAbs_COMPSOLID || + S.ShapeType() == TopAbs_COMPOUND || + S.ShapeType() == TopAbs_SOLID || + S.ShapeType() == TopAbs_SHAPE) return; - + if ( getConstructorId() == 1 && + (S.ShapeType() == TopAbs_SHELL || + S.ShapeType() == TopAbs_VERTEX)) + return; + myBase = aSelectedObject; - myEditCurrentArgument->setText( GEOMBase::GetName( aSelectedObject ) ); + myEditCurrentArgument->setText(GEOMBase::GetName(aSelectedObject)); myOkBase = true; + if (!myOkPath) + GroupPoints->PushButton2->click(); + else if (!myOkVec) + GroupPoints->PushButton3->click(); } - else if(myEditCurrentArgument == GroupPoints->LineEdit2) { - myOkPath = false; - - if( !GEOMBase::GetShape(aSelectedObject, S) ) - return; - - QString aName = GEOMBase::GetName( aSelectedObject ); - - if ( testResult && !aSelectedObject->_is_nil() && aSelectedObject != myBase) - { - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); - TColStd_IndexedMapOfInteger aMap; - - aSelMgr->GetIndexes( firstIObject(), aMap ); - if ( aMap.Extent() == 1 ) - { - int anIndex = aMap( 1 ); - aName.append( ":edge_" + QString::number( anIndex ) ); + else if (myEditCurrentArgument == GroupPoints->LineEdit2 || + myEditCurrentArgument == GroupPoints->LineEdit3) { + myEditCurrentArgument == GroupPoints->LineEdit2 ? myOkPath = false : myOkVec = false; + bool myOk = false; + QString aName = GEOMBase::GetName(aSelectedObject); + if (myEditCurrentArgument == GroupPoints->LineEdit2 && !GroupPoints->CheckButton1->isChecked() ){ + myPath = aSelectedObject; + myOkPath = true; + myEditCurrentArgument->setText(aName); + } + else + { + if (aSelectedObject != myBase) { + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) { + int anIndex = aMap(1); + aName.append(":edge_" + QString::number(anIndex)); + //Find SubShape Object in Father GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study GEOM::GEOM_IShapesOperations_var aShapesOp = - getGeomEngine()->GetIShapesOperations( getStudyId() ); - myPath = aShapesOp->GetSubShape(aSelectedObject, anIndex); - myOkPath = true; + getGeomEngine()->GetIShapesOperations(getStudyId()); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + myOk = true; } - else { // get Object from study - myPath = aFindedObject; - myOkPath = true; + else { // get Object from study + aSelectedObject = aFindedObject; + myOk = true; } } - else { - myOkPath = true; - if (S.ShapeType() != TopAbs_EDGE) { - aSelectedObject = GEOM::GEOM_Object::_nil(); - aName = ""; - myOkPath = false; + else { + myOk = true; + if (S.ShapeType() != TopAbs_EDGE) { + aSelectedObject = GEOM::GEOM_Object::_nil(); + aName = ""; + myOk = false; + } } - myPath = aSelectedObject; + if (myEditCurrentArgument == GroupPoints->LineEdit2) { + myPath = aSelectedObject; + myOkPath = myOk; + } + else if (myEditCurrentArgument == GroupPoints->LineEdit3) { + myVec = aSelectedObject; + myOkVec = myOk; + } + } + myEditCurrentArgument->setText(aName); + + if (myOkPath) { + if (!myOkBase) + GroupPoints->PushButton1->click(); + else if (!myOkVec) + GroupPoints->PushButton3->click(); + } + else if (myOkVec) { + if (!myOkBase) + GroupPoints->PushButton1->click(); + else if (!myOkPath) + GroupPoints->PushButton2->click(); } } - myEditCurrentArgument->setText( aName ); } - + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + displayPreview(); } - //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -259,22 +356,49 @@ void GenerationGUI_PipeDlg::SelectionIntoArgument() void GenerationGUI_PipeDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - globalSelection(); - if(send == GroupPoints->PushButton1) { - GroupPoints->LineEdit1->setFocus(); - globalSelection( GEOM_ALLSHAPES ); + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + globalSelection(GEOM_ALLSHAPES); + GroupPoints->PushButton1->setDown(false); + GroupPoints->PushButton2->setDown(false); + GroupPoints->PushButton3->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + GroupPoints->LineEdit2->setEnabled(false); + GroupPoints->LineEdit3->setEnabled(false); + if (send == GroupPoints->PushButton1) { myEditCurrentArgument = GroupPoints->LineEdit1; + GroupPoints->CheckButton1->setEnabled(false); } - else if(send == GroupPoints->PushButton2) { - GroupPoints->LineEdit2->setFocus(); + else if (send == GroupPoints->PushButton2) { myEditCurrentArgument = GroupPoints->LineEdit2; - globalSelection(); + + if ( GroupPoints->CheckButton1->isChecked() ) { + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + } else { + TColStd_MapOfInteger aMap; + aMap.Add(GEOM_WIRE); + aMap.Add(GEOM_LINE); + globalSelection(aMap); + } + GroupPoints->CheckButton1->setEnabled(true); + } + else if(send == GroupPoints->PushButton3) { + myEditCurrentArgument = GroupPoints->LineEdit3; + GroupPoints->CheckButton1->setEnabled(false); localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); } - SelectionIntoArgument(); -} + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); +} //================================================================================= // function : LineEditReturnPressed() @@ -283,26 +407,19 @@ void GenerationGUI_PipeDlg::SetEditCurrentArgument() void GenerationGUI_PipeDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if(send == GroupPoints->LineEdit1 || - send == GroupPoints->LineEdit2) - { - myEditCurrentArgument = send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } + if (send == GroupPoints->LineEdit1 || + send == GroupPoints->LineEdit2 || + send == GroupPoints->LineEdit3) { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } + + if (send == GroupPoints->LineEdit2) + GroupPoints->CheckButton1->setEnabled(true); + else + GroupPoints->CheckButton1->setEnabled(false); } - -//================================================================================= -// function : enterEvent() -// purpose : when mouse enter onto the QWidget -//================================================================================= -void GenerationGUI_PipeDlg::enterEvent(QEvent* e) -{ - if ( !GroupConstructors->isEnabled() ) - ActivateThisDialog(); -} - - //================================================================================= // function : ActivateThisDialog() // purpose : @@ -310,12 +427,21 @@ void GenerationGUI_PipeDlg::enterEvent(QEvent* e) void GenerationGUI_PipeDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - globalSelection( GEOM_ALLSHAPES ); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - displayPreview(); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + + ConstructorsClicked(getConstructorId()); } +//================================================================================= +// function : enterEvent() +// purpose : when mouse enter onto the QWidget +//================================================================================= +void GenerationGUI_PipeDlg::enterEvent (QEvent*) +{ + if (!mainFrame()->GroupConstructors->isEnabled()) + ActivateThisDialog(); +} //================================================================================= // function : createOperation @@ -323,31 +449,43 @@ void GenerationGUI_PipeDlg::ActivateThisDialog() //================================================================================= GEOM::GEOM_IOperations_ptr GenerationGUI_PipeDlg::createOperation() { - return getGeomEngine()->GetI3DPrimOperations( getStudyId() ); + return getGeomEngine()->GetI3DPrimOperations(getStudyId()); } //================================================================================= // function : isValid // purpose : //================================================================================= -bool GenerationGUI_PipeDlg::isValid( QString& ) +bool GenerationGUI_PipeDlg::isValid (QString&) { - return myOkBase && myOkPath; + switch ( getConstructorId() ) { + case 0 : + return myOkBase && myOkPath; + case 1 : + return myOkBase && myOkPath && myOkVec; + } } //================================================================================= // function : execute // purpose : //================================================================================= -bool GenerationGUI_PipeDlg::execute( ObjectList& objects ) +bool GenerationGUI_PipeDlg::execute (ObjectList& objects) { GEOM::GEOM_Object_var anObj; - anObj = GEOM::GEOM_I3DPrimOperations::_narrow( - getOperation() )->MakePipe( myBase, myPath ); + switch ( getConstructorId() ) { + case 0 : + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())->MakePipe(myBase, myPath); + break; + case 1 : + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakePipeBiNormalAlongVector(myBase, myPath, myVec); + break; + } - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); return true; } @@ -362,6 +500,5 @@ void GenerationGUI_PipeDlg::addSubshapesToStudy() objMap[GroupPoints->LineEdit2->text()] = myPath; - addSubshapesToFather( objMap ); + addSubshapesToFather(objMap); } - diff --git a/src/GenerationGUI/GenerationGUI_PipeDlg.h b/src/GenerationGUI/GenerationGUI_PipeDlg.h index b926d6de7..ed0b92625 100644 --- a/src/GenerationGUI/GenerationGUI_PipeDlg.h +++ b/src/GenerationGUI/GenerationGUI_PipeDlg.h @@ -1,76 +1,77 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : GenerationGUI_PipeDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GenerationGUI_PipeDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef GENERATIONGUI_PIPEDLG_H +#define GENERATIONGUI_PIPEDLG_H -#ifndef DIALOGBOX_PIPE_H -#define DIALOGBOX_PIPE_H +#include -#include "GenerationGUI.h" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel_QTD.h" +class DlgRef_3Sel1Check; //================================================================================= // class : GenerationGUI_PipeDlg // purpose : //================================================================================= -class GENERATIONGUI_EXPORT GenerationGUI_PipeDlg : public GEOMBase_Skeleton +class GenerationGUI_PipeDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - GenerationGUI_PipeDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~GenerationGUI_PipeDlg(); - + GenerationGUI_PipeDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~GenerationGUI_PipeDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& msg ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); private: - void Init(); - void enterEvent(QEvent* e); - - GEOM::GEOM_Object_var myBase; /* Base shape */ - GEOM::GEOM_Object_var myPath; /* Shape, defining the path */ - bool myOkBase; - bool myOkPath; /* to check when arguments are defined */ - - DlgRef_2Sel_QTD* GroupPoints; + void Init(); + void enterEvent( QEvent* ); + +private: + GEOM::GEOM_Object_var myBase; /* Base shape */ + GEOM::GEOM_Object_var myPath; /* Shape, defining the path */ + GEOM::GEOM_Object_var myVec; /* Vector, defining the constant binormal direction */ + bool myOkBase; + bool myOkPath; + bool myOkVec; /* to check when arguments are defined */ + + DlgRef_3Sel1Check* GroupPoints; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ConstructorsClicked( int ); + void SelectionTypeButtonClicked(); }; -#endif // DIALOGBOX_PIPE_H +#endif // GENERATIONGUI_PIPEDLG_H diff --git a/src/GenerationGUI/GenerationGUI_PrismDlg.cxx b/src/GenerationGUI/GenerationGUI_PrismDlg.cxx index 92fd0fb38..e4ff74ff3 100644 --- a/src/GenerationGUI/GenerationGUI_PrismDlg.cxx +++ b/src/GenerationGUI/GenerationGUI_PrismDlg.cxx @@ -1,38 +1,40 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GenerationGUI_PrismDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : GenerationGUI_PrismDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "GenerationGUI_PrismDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include +#include +#include +#include + +// OCCT Includes #include #include #include @@ -40,12 +42,7 @@ #include #include -#include -#include - -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" +#include //================================================================================= // class : GenerationGUI_PrismDlg() @@ -54,53 +51,67 @@ // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -GenerationGUI_PrismDlg::GenerationGUI_PrismDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - : GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +GenerationGUI_PrismDlg::GenerationGUI_PrismDlg (GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl), + myInitial(true) { SUIT_ResourceMgr* aResMgr = SUIT_Session::session()->resourceMgr(); - QPixmap image0(aResMgr->loadPixmap("GEOM", tr("ICON_DLG_PRISM"))); - QPixmap image1(aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); - QPixmap image2(aResMgr->loadPixmap("GEOM", tr("ICON_DLG_PRISM_2P"))); + QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_PRISM"))); + QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); + QPixmap image2 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_PRISM_2P"))); + QPixmap image3 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_PRISM_DXDYDZ"))); - setCaption(tr("GEOM_EXTRUSION_TITLE")); + setWindowTitle(tr("GEOM_EXTRUSION_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_EXTRUSION")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image2); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_EXTRUSION")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setIcon(image2); + mainFrame()->RadioButton3->setIcon(image3); - RadioButton1->setChecked(true); - myBothway = myBothway2 = false; + mainFrame()->RadioButton1->setChecked(true); + myBothway = myBothway2 = myBothway3 = false; - GroupPoints = new DlgRef_2Sel1Spin2Check(this, "GroupPoints"); + GroupPoints = new DlgRef_2Sel1Spin2Check(centralWidget()); GroupPoints->GroupBox1->setTitle(tr("GEOM_EXTRUSION_BSV")); GroupPoints->TextLabel1->setText(tr("GEOM_BASE")); GroupPoints->TextLabel2->setText(tr("GEOM_VECTOR")); GroupPoints->TextLabel3->setText(tr("GEOM_HEIGHT")); - GroupPoints->PushButton1->setPixmap(image1); - GroupPoints->PushButton2->setPixmap(image1); - GroupPoints->LineEdit1->setReadOnly( true ); - GroupPoints->LineEdit2->setReadOnly( true ); + GroupPoints->PushButton1->setIcon(image1); + GroupPoints->PushButton2->setIcon(image1); + GroupPoints->LineEdit1->setReadOnly(true); + GroupPoints->LineEdit2->setReadOnly(true); GroupPoints->CheckButton1->setText(tr("GEOM_BOTHWAY")); GroupPoints->CheckButton1->setChecked(myBothway); GroupPoints->CheckButton2->setText(tr("GEOM_REVERSE")); - GroupPoints2 = new DlgRef_3Sel1Check_QTD(this, "GroupPoints2"); + GroupPoints2 = new DlgRef_3Sel1Check(centralWidget()); GroupPoints2->GroupBox1->setTitle(tr("GEOM_EXTRUSION_BSV_2P")); GroupPoints2->TextLabel1->setText(tr("GEOM_BASE")); - GroupPoints2->TextLabel2->setText(tr("GEOM_POINT_I").arg("1")); - GroupPoints2->TextLabel3->setText(tr("GEOM_POINT_I").arg("2")); - GroupPoints2->PushButton1->setPixmap(image1); - GroupPoints2->PushButton2->setPixmap(image1); - GroupPoints2->PushButton3->setPixmap(image1); + GroupPoints2->TextLabel2->setText(tr("GEOM_POINT_I").arg(1)); + GroupPoints2->TextLabel3->setText(tr("GEOM_POINT_I").arg(2)); + GroupPoints2->PushButton1->setIcon(image1); + GroupPoints2->PushButton2->setIcon(image1); + GroupPoints2->PushButton3->setIcon(image1); GroupPoints2->CheckButton1->setText(tr("GEOM_BOTHWAY")); GroupPoints2->CheckButton1->setChecked(myBothway2); - Layout1->addWidget(GroupPoints, 2, 0); - Layout1->addWidget(GroupPoints2, 2, 0); + GroupPoints3 = new DlgRef_1Sel3Spin1Check(centralWidget()); + GroupPoints3->GroupBox1->setTitle(tr("GEOM_EXTRUSION_DXDYDZ")); + GroupPoints3->TextLabel1->setText(tr("GEOM_BASE")); + GroupPoints3->PushButton1->setIcon(image1); + GroupPoints3->TextLabel2->setText(tr("GEOM_DX")); + GroupPoints3->TextLabel3->setText(tr("GEOM_DY")); + GroupPoints3->TextLabel4->setText(tr("GEOM_DZ")); + GroupPoints3->CheckButton1->setText(tr("GEOM_BOTHWAY")); + GroupPoints3->CheckButton1->setChecked(myBothway3); + + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); + layout->addWidget(GroupPoints2); + layout->addWidget(GroupPoints3); /***************************************************************/ setHelpFileName("create_extrusion_page.html"); @@ -108,7 +119,6 @@ GenerationGUI_PrismDlg::GenerationGUI_PrismDlg(GeometryGUI* theGeometryGUI, QWid Init(); } - //================================================================================= // function : ~GenerationGUI_PrismDlg() // purpose : Destroys the object and frees any allocated resources @@ -118,38 +128,55 @@ GenerationGUI_PrismDlg::~GenerationGUI_PrismDlg() // no need to delete child widgets, Qt does it all for us } - //================================================================================= // function : Init() // purpose : //================================================================================= void GenerationGUI_PrismDlg::Init() { - /* init variables */ - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit1->setReadOnly( true ); - GroupPoints->LineEdit2->setReadOnly( true ); + // Get setting of step value from file configuration + SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); + double step = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100); - GroupPoints2->LineEdit1->setReadOnly( true ); - GroupPoints2->LineEdit2->setReadOnly( true ); - GroupPoints2->LineEdit3->setReadOnly( true ); + // min, max, step and decimals for spin boxes & initial values + initSpinBox(GroupPoints3->SpinBox_DX, COORD_MIN, COORD_MAX, step, 6); // VSR:TODO : DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints3->SpinBox_DY, COORD_MIN, COORD_MAX, step, 6); // VSR:TODO : DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints3->SpinBox_DZ, COORD_MIN, COORD_MAX, step, 6); // VSR:TODO : DBL_DIGITS_DISPLAY + GroupPoints3->SpinBox_DX->setValue(0.0); + GroupPoints3->SpinBox_DY->setValue(0.0); + GroupPoints3->SpinBox_DZ->setValue(0.0); + + initSpinBox(GroupPoints->SpinBox_DX, 0.000001, COORD_MAX, step, 6); // VSR: TODO: DBL_DIGITS_DISPLAY + GroupPoints->SpinBox_DX->setValue(100.0); + + // init variables + myEditCurrentArgument = GroupPoints->LineEdit1; + GroupPoints->LineEdit1->setReadOnly(true); + GroupPoints->LineEdit2->setReadOnly(true); + + GroupPoints2->LineEdit1->setReadOnly(true); + GroupPoints2->LineEdit2->setReadOnly(true); + GroupPoints2->LineEdit3->setReadOnly(true); + + GroupPoints3->LineEdit1->setReadOnly(true); + + GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit2->setText(""); + + GroupPoints2->LineEdit1->setText(""); + GroupPoints2->LineEdit2->setText(""); + GroupPoints2->LineEdit3->setText(""); + + GroupPoints3->LineEdit1->setText(""); myPoint1 = myPoint2 = myBase = myVec = GEOM::GEOM_Object::_nil(); myOkBase = myOkVec = myOkPnt1 = myOkPnt2 = false; - /* Get setting of step value from file configuration */ - SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100); + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); - /* min, max, step and decimals for spin boxes & initial values */ - GroupPoints->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupPoints->SpinBox_DX->SetValue(100.0); - - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); @@ -158,122 +185,149 @@ void GenerationGUI_PrismDlg::Init() connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupPoints->SpinBox_DX, SLOT(SetStep(double))); + connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), this, SLOT(SetDoubleSpinBoxStep(double))); - connect(GroupPoints->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(onBothway())); - connect(GroupPoints->CheckButton2, SIGNAL(toggled(bool)), this, SLOT(onReverse())); + connect(GroupPoints->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(onBothway())); + connect(GroupPoints->CheckButton2, SIGNAL(toggled(bool)), this, SLOT(onReverse())); - connect(GroupPoints2->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints2->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints2->PushButton3, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints2->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(onBothway2())); + connect(GroupPoints2->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupPoints2->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupPoints2->PushButton3, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupPoints2->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(onBothway())); - connect(GroupPoints2->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints2->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints2->LineEdit3, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints2->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints2->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints2->LineEdit3, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect(GroupPoints3->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupPoints3->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints3->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + connect(GroupPoints3->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + connect(GroupPoints3->SpinBox_DZ, SIGNAL(valueChanged (double)), this, SLOT(ValueChangedInSpinBox())); + connect(GroupPoints3->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(onBothway())); initName(tr("GEOM_EXTRUSION")); + ConstructorsClicked(0); } +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void GenerationGUI_PrismDlg::SetDoubleSpinBoxStep (double step) +{ + GroupPoints->SpinBox_DX->setSingleStep(step); + GroupPoints3->SpinBox_DX->setSingleStep(step); + GroupPoints3->SpinBox_DY->setSingleStep(step); + GroupPoints3->SpinBox_DZ->setSingleStep(step); +} //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void GenerationGUI_PrismDlg::ConstructorsClicked(int constructorId) +void GenerationGUI_PrismDlg::ConstructorsClicked (int constructorId) { - erasePreview(); disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); - switch (constructorId) - { + switch (constructorId) { case 0: { - globalSelection( GEOM_ALLSHAPES ); - GroupPoints2->hide(); - resize(0, 0); + GroupPoints3->hide(); GroupPoints->show(); - myEditCurrentArgument = GroupPoints->LineEdit1; GroupPoints->LineEdit1->setText(GroupPoints2->LineEdit1->text()); // keep base GroupPoints->LineEdit2->setText(""); myVec = GEOM::GEOM_Object::_nil(); myOkVec = false; + GroupPoints->PushButton1->click(); break; } case 1: { - globalSelection( GEOM_ALLSHAPES ); - GroupPoints->hide(); - resize(0, 0); GroupPoints2->show(); + GroupPoints3->hide(); - myEditCurrentArgument = GroupPoints2->LineEdit1; GroupPoints2->LineEdit1->setText(GroupPoints->LineEdit1->text()); // keep base GroupPoints2->LineEdit2->setText(""); GroupPoints2->LineEdit3->setText(""); myPoint1 = myPoint2 = GEOM::GEOM_Object::_nil(); myOkPnt1 = myOkPnt2 = false; + GroupPoints2->PushButton1->click(); + break; + } + case 2: + { + GroupPoints->hide(); + GroupPoints2->hide(); + GroupPoints3->show(); + + GroupPoints3->LineEdit1->setText(GroupPoints->LineEdit1->text()); // keep base + + GroupPoints3->PushButton1->click(); break; } } - myEditCurrentArgument->setFocus(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); - if (!myOkBase) + if (myInitial) { + myInitial = false; SelectionIntoArgument(); + } + else { + displayPreview(); + } } - //================================================================================= // function : ClickOnOk() // purpose : //================================================================================= void GenerationGUI_PrismDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool GenerationGUI_PrismDlg::ClickOnApply() { - if ( !onAccept() ) + if (!onAccept()) return false; initName(); + // activate selection and connect selection manager + ConstructorsClicked(getConstructorId()); return true; } - //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection has changed +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void GenerationGUI_PrismDlg::SelectionIntoArgument() { erasePreview(); myEditCurrentArgument->setText(""); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + if (getConstructorId() == 0) { - if (IObjectCount() != 1) { + if (aSelList.Extent() != 1) { if (myEditCurrentArgument == GroupPoints->LineEdit1) myOkBase = false; else if (myEditCurrentArgument == GroupPoints->LineEdit2) @@ -284,65 +338,69 @@ void GenerationGUI_PrismDlg::SelectionIntoArgument() // nbSel == 1 Standard_Boolean testResult = Standard_False; GEOM::GEOM_Object_var aSelectedObject = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), testResult ); - - if (!testResult) + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + if (!testResult || CORBA::is_nil(aSelectedObject)) return; + QString aName = GEOMBase::GetName(aSelectedObject); + + // Get Selected object if selected subshape bool myOk = true; TopoDS_Shape aShape; - QString aName = GEOMBase::GetName( aSelectedObject ); - if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) - { - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); - TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes( firstIObject(), aMap ); - if ( aMap.Extent() == 1 ) - { - int anIndex = aMap( 1 ); - aName.append( ":edge_" + QString::number( anIndex ) ); + if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) + { + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) { + int anIndex = aMap(1); + aName.append(":edge_" + QString::number(anIndex)); - //Find SubShape Object in Father - GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = - getGeomEngine()->GetIShapesOperations( getStudyId() ); - aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); - } - else - aSelectedObject = aFindedObject; // get Object from study - } - else { - if (aShape.ShapeType() != TopAbs_EDGE && myEditCurrentArgument == GroupPoints->LineEdit2) { - aSelectedObject = GEOM::GEOM_Object::_nil(); - aName = ""; - myOk = false; - } - } + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = + getGeomEngine()->GetIShapesOperations(getStudyId()); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + } + else { + aSelectedObject = aFindedObject; // get Object from study + } } - + else { // Global Selection + if (aShape.ShapeType() != TopAbs_EDGE && myEditCurrentArgument == GroupPoints->LineEdit2) { + aSelectedObject = GEOM::GEOM_Object::_nil(); + aName = ""; + myOk = false; + } + } + } + + myEditCurrentArgument->setText(aName); + if (myEditCurrentArgument == GroupPoints->LineEdit1) { myBase = aSelectedObject; myOkBase = true; + if (!myOkVec) + GroupPoints->PushButton2->click(); } else if (myEditCurrentArgument == GroupPoints->LineEdit2 && myOk) { - myOkVec = true; + myOkVec = true; myVec = aSelectedObject; + if (!myOkBase) + GroupPoints->PushButton1->click(); } - myEditCurrentArgument->setText( aName ); } - else // getConstructorId()==1 - extrusion using 2 points - { - if (IObjectCount() != 1) { + else if (getConstructorId() == 1) { // getConstructorId()==1 - extrusion using 2 points + if (aSelList.Extent() != 1) { if (myEditCurrentArgument == GroupPoints2->LineEdit1) myOkBase = false; else if (myEditCurrentArgument == GroupPoints2->LineEdit2) { - myPoint1 = GEOM::GEOM_Object::_nil(); + myPoint1 = GEOM::GEOM_Object::_nil(); myOkPnt1 = false; } else if (myEditCurrentArgument == GroupPoints2->LineEdit3) { - myPoint2 = GEOM::GEOM_Object::_nil(); + myPoint2 = GEOM::GEOM_Object::_nil(); myOkPnt2 = false; } return; @@ -351,62 +409,143 @@ void GenerationGUI_PrismDlg::SelectionIntoArgument() // nbSel == 1 Standard_Boolean testResult = Standard_False; GEOM::GEOM_Object_var aSelectedObject = - GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult ); + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); - if (!testResult || CORBA::is_nil( aSelectedObject )) + if (!testResult || CORBA::is_nil(aSelectedObject)) return; - QString aName = GEOMBase::GetName( aSelectedObject ); + QString aName = GEOMBase::GetName(aSelectedObject); TopoDS_Shape aShape; bool myOk = true; - if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) - { - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); - TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes( firstIObject(), aMap ); - if (aMap.Extent() == 1) - { - int anIndex = aMap(1); - aName.append(":vertex_" + QString::number(anIndex)); + if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) { + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) { + int anIndex = aMap(1); + aName.append(":vertex_" + QString::number(anIndex)); - //Find SubShape Object in Father - GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aSelectedObject, aName); - - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId()); - aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); - } - else - aSelectedObject = aFindedObject; + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aSelectedObject, aName); + + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId()); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); } - else - { - if ((aShape.ShapeType() != TopAbs_VERTEX && myEditCurrentArgument == GroupPoints2->LineEdit2) || - (aShape.ShapeType() != TopAbs_VERTEX && myEditCurrentArgument == GroupPoints2->LineEdit3)) - { - aSelectedObject = GEOM::GEOM_Object::_nil(); - aName = ""; - myOk = false; - } - } + else { + aSelectedObject = aFindedObject; + } + } + else { + if ((aShape.ShapeType() != TopAbs_VERTEX && myEditCurrentArgument == GroupPoints2->LineEdit2) || + (aShape.ShapeType() != TopAbs_VERTEX && myEditCurrentArgument == GroupPoints2->LineEdit3)) { + aSelectedObject = GEOM::GEOM_Object::_nil(); + aName = ""; + myOk = false; + } + } } myEditCurrentArgument->setText(aName); if (myEditCurrentArgument == GroupPoints2->LineEdit1) { - myBase = aSelectedObject; myOkBase = true; + myBase = aSelectedObject; + if (!myOkPnt1) + GroupPoints2->PushButton2->click(); } else if (myEditCurrentArgument == GroupPoints2->LineEdit2 && myOk) { myOkPnt1 = true; myPoint1 = aSelectedObject; + if (!myOkPnt2) + GroupPoints2->PushButton3->click(); } else if (myEditCurrentArgument == GroupPoints2->LineEdit3 && myOk) { myOkPnt2 = true; myPoint2 = aSelectedObject; + if (!myOkBase) + GroupPoints2->PushButton1->click(); } } + else if (getConstructorId() == 2) { // extrusion using dx dy dz + Standard_Boolean testResult = Standard_False; + GEOM::GEOM_Object_var aSelectedObject = + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + if (!testResult || CORBA::is_nil(aSelectedObject)) + return; + + QString aName = GEOMBase::GetName(aSelectedObject); + myBase = aSelectedObject; + myOkBase = true; + myEditCurrentArgument->setText(aName); + } + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + displayPreview(); +} + +//================================================================================= +// function : SetEditCurrentArgument() +// purpose : +//================================================================================= +void GenerationGUI_PrismDlg::SetEditCurrentArgument() +{ + QPushButton* send = (QPushButton*)sender(); + + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + globalSelection(GEOM_ALLSHAPES); + if (send == GroupPoints->PushButton1) { + myEditCurrentArgument = GroupPoints->LineEdit1; + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit2->setEnabled(false); + } + else if (send == GroupPoints->PushButton2) { + myEditCurrentArgument = GroupPoints->LineEdit2; + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); + } + else if (send == GroupPoints2->PushButton1) { + myEditCurrentArgument = GroupPoints2->LineEdit1; + GroupPoints2->PushButton2->setDown(false); + GroupPoints2->PushButton3->setDown(false); + GroupPoints2->LineEdit2->setEnabled(false); + GroupPoints2->LineEdit3->setEnabled(false); + } + else if (send == GroupPoints2->PushButton2) { + myEditCurrentArgument = GroupPoints2->LineEdit2; + GroupPoints2->PushButton1->setDown(false); + GroupPoints2->PushButton3->setDown(false); + GroupPoints2->LineEdit1->setEnabled(false); + GroupPoints2->LineEdit3->setEnabled(false); + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + } + else if (send == GroupPoints2->PushButton3) { + myEditCurrentArgument = GroupPoints2->LineEdit3; + GroupPoints2->PushButton1->setDown(false); + GroupPoints2->PushButton2->setDown(false); + GroupPoints2->LineEdit1->setEnabled(false); + GroupPoints2->LineEdit2->setEnabled(false); + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + } + else if (send == GroupPoints3->PushButton1) { + myEditCurrentArgument = GroupPoints3->LineEdit1; + } + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + // seems we need it only to avoid preview disappearing, caused by selection mode change displayPreview(); } @@ -421,52 +560,13 @@ void GenerationGUI_PrismDlg::LineEditReturnPressed() send == GroupPoints->LineEdit2 || send == GroupPoints2->LineEdit1 || send == GroupPoints2->LineEdit2 || - send == GroupPoints2->LineEdit3 ) - { + send == GroupPoints2->LineEdit3 || + send == GroupPoints3->LineEdit1) { myEditCurrentArgument = send; GEOMBase_Skeleton::LineEditReturnPressed(); } } - -//================================================================================= -// function : SetEditCurrentArgument() -// purpose : -//================================================================================= -void GenerationGUI_PrismDlg::SetEditCurrentArgument() -{ - QPushButton* send = (QPushButton*)sender(); - globalSelection( GEOM_ALLSHAPES ); - - if (send == GroupPoints->PushButton1) { - GroupPoints->LineEdit1->setFocus(); - myEditCurrentArgument = GroupPoints->LineEdit1; - } - else if (send == GroupPoints->PushButton2) { - GroupPoints->LineEdit2->setFocus(); - myEditCurrentArgument = GroupPoints->LineEdit2; - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); - } - else if (send == GroupPoints2->PushButton1) { - GroupPoints2->LineEdit1->setFocus(); - myEditCurrentArgument = GroupPoints2->LineEdit1; - } - else if (send == GroupPoints2->PushButton2) { - GroupPoints2->LineEdit2->setFocus(); - myEditCurrentArgument = GroupPoints2->LineEdit2; - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); - } - else if (send == GroupPoints2->PushButton3) { - GroupPoints2->LineEdit3->setFocus(); - myEditCurrentArgument = GroupPoints2->LineEdit3; - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); - } - - myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); -} - - //================================================================================= // function : ActivateThisDialog() // purpose : @@ -475,24 +575,22 @@ void GenerationGUI_PrismDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); ConstructorsClicked( getConstructorId() ); } - //================================================================================= // function : enterEvent() // purpose : when mouse enter onto the QWidget //================================================================================= -void GenerationGUI_PrismDlg::enterEvent(QEvent * e) +void GenerationGUI_PrismDlg::enterEvent (QEvent*) { - if (!GroupConstructors->isEnabled()) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } - //================================================================================= // function : ValueChangedInSpinBox() // purpose : @@ -502,14 +600,13 @@ void GenerationGUI_PrismDlg::ValueChangedInSpinBox() displayPreview(); } - //================================================================================= // function : getHeight() // purpose : //================================================================================= double GenerationGUI_PrismDlg::getHeight() const { - return GroupPoints->SpinBox_DX->GetValue(); + return GroupPoints->SpinBox_DX->value(); } //================================================================================= @@ -518,86 +615,138 @@ double GenerationGUI_PrismDlg::getHeight() const //================================================================================= GEOM::GEOM_IOperations_ptr GenerationGUI_PrismDlg::createOperation() { - return getGeomEngine()->GetI3DPrimOperations( getStudyId() ); + return getGeomEngine()->GetI3DPrimOperations(getStudyId()); } //================================================================================= // function : isValid // purpose : //================================================================================= -bool GenerationGUI_PrismDlg::isValid( QString& ) +bool GenerationGUI_PrismDlg::isValid (QString& msg) { + bool ok = true; + if( getConstructorId() == 0 ) + ok = GroupPoints->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + else if( getConstructorId() == 2 ) + { + ok = GroupPoints3->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupPoints3->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + ok = GroupPoints3->SpinBox_DZ->isValid( msg, !IsPreview() ) && ok; + } + if (getConstructorId() == 0) - return (myOkBase && myOkVec); // by vector and height - else + return (myOkBase && myOkVec) && ok; // by vector and height + else if (getConstructorId() == 1) return (myOkBase && myOkPnt1 && myOkPnt2); // by two points + else if (getConstructorId() == 2) + return myOkBase && ok; + + return false; } //================================================================================= // function : execute // purpose : //================================================================================= -bool GenerationGUI_PrismDlg::execute( ObjectList& objects ) +bool GenerationGUI_PrismDlg::execute (ObjectList& objects) { + QStringList aParameters; GEOM::GEOM_Object_var anObj; - switch ( getConstructorId() ) - { + switch (getConstructorId()) { case 0: - { - if (!myBothway) - anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> - MakePrismVecH(myBase, myVec, getHeight()); - else - anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> - MakePrismVecH2Ways(myBase, myVec, getHeight() ); - break; + if (!myBothway) { + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakePrismVecH(myBase, myVec, getHeight()); } + else { + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakePrismVecH2Ways(myBase, myVec, getHeight()); + } + + if (!anObj->_is_nil() && !IsPreview()) + { + aParameters << GroupPoints->SpinBox_DX->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } + + break; case 1: - { - if (!myBothway2) - anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + if (!myBothway2) { + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> MakePrismTwoPnt(myBase, myPoint1, myPoint2); - else - anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> - MakePrismTwoPnt2Ways(myBase, myPoint1, myPoint2); - break; } + else { + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakePrismTwoPnt2Ways(myBase, myPoint1, myPoint2); + } + break; + case 2: + double dx = GroupPoints3->SpinBox_DX->value(); + double dy = GroupPoints3->SpinBox_DY->value(); + double dz = GroupPoints3->SpinBox_DZ->value(); + + if (!myBothway3) { + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakePrismDXDYDZ(myBase, dx, dy, dz); + } + else { + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakePrismDXDYDZ2Ways(myBase, dx, dy, dz); + } + + if (!anObj->_is_nil() && !IsPreview()) + { + aParameters << GroupPoints3->SpinBox_DX->text(); + aParameters << GroupPoints3->SpinBox_DY->text(); + aParameters << GroupPoints3->SpinBox_DZ->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } + + break; } - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); + + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); return true; } - //================================================================================= -// function : onReverse() +// function : onReverse() // purpose : //================================================================================= void GenerationGUI_PrismDlg::onReverse() { - double anOldValue = GroupPoints->SpinBox_DX->GetValue(); - GroupPoints->SpinBox_DX->SetValue( -anOldValue ); + double anOldValue = GroupPoints->SpinBox_DX->value(); + GroupPoints->SpinBox_DX->setValue(-anOldValue); } //================================================================================= -// function : onBothway() -// purpose : +// function : onBothway() +// purpose : //================================================================================= void GenerationGUI_PrismDlg::onBothway() { - bool anOldValue = myBothway; - myBothway = !anOldValue; - GroupPoints->CheckButton2->setEnabled(!myBothway); - displayPreview(); -} - -void GenerationGUI_PrismDlg::onBothway2() -{ - bool anOldValue = myBothway2; - myBothway2 = !anOldValue; - displayPreview(); + bool anOldValue; + switch (getConstructorId()) { + case 0: + anOldValue = myBothway; + myBothway = !anOldValue; + GroupPoints->CheckButton2->setEnabled(!myBothway); + displayPreview(); + break; + case 1: + anOldValue = myBothway2; + myBothway2 = !anOldValue; + displayPreview(); + break; + case 2: + anOldValue = myBothway3; + myBothway3 = !anOldValue; + displayPreview(); + break; + } } //================================================================================= @@ -608,15 +757,14 @@ void GenerationGUI_PrismDlg::addSubshapesToStudy() { QMap objMap; - switch (getConstructorId()) - { - case 0: - objMap[GroupPoints->LineEdit2->text()] = myVec; - break; - case 1: - objMap[GroupPoints2->LineEdit2->text()] = myPoint1; - objMap[GroupPoints2->LineEdit3->text()] = myPoint2; - break; - } - addSubshapesToFather( objMap ); + switch (getConstructorId()) { + case 0: + objMap[GroupPoints->LineEdit2->text()] = myVec; + break; + case 1: + objMap[GroupPoints2->LineEdit2->text()] = myPoint1; + objMap[GroupPoints2->LineEdit3->text()] = myPoint2; + break; + } + addSubshapesToFather(objMap); } diff --git a/src/GenerationGUI/GenerationGUI_PrismDlg.h b/src/GenerationGUI/GenerationGUI_PrismDlg.h index 5f90c0fe1..1ccc7461b 100644 --- a/src/GenerationGUI/GenerationGUI_PrismDlg.h +++ b/src/GenerationGUI/GenerationGUI_PrismDlg.h @@ -1,91 +1,93 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GenerationGUI_PrismDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : GenerationGUI_PrismDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +#ifndef GENERATIONGUI_PRISMDLG_H +#define GENERATIONGUI_PRISMDLG_H -#ifndef DIALOGBOX_PRISM_H -#define DIALOGBOX_PRISM_H +#include -#include "GenerationGUI.h" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel1Spin2Check.h" -#include "DlgRef_3Sel1Check_QTD.h" +class DlgRef_2Sel1Spin2Check; +class DlgRef_3Sel1Check; +class DlgRef_1Sel3Spin1Check; //================================================================================= // class : GenerationGUI_PrismDlg // purpose : //================================================================================= -class GENERATIONGUI_EXPORT GenerationGUI_PrismDlg : public GEOMBase_Skeleton +class GenerationGUI_PrismDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - GenerationGUI_PrismDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~GenerationGUI_PrismDlg(); - + GenerationGUI_PrismDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~GenerationGUI_PrismDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& msg ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); private: - void Init(); - void enterEvent(QEvent* e); - double getHeight() const; - - GEOM::GEOM_Object_var myBase; /* Base shape */ - GEOM::GEOM_Object_var myVec; /* Vector, defining the direction */ - GEOM::GEOM_Object_var myPoint1, myPoint2; /* Points for extrusion */ - - bool myOkBase; - bool myOkVec; - bool myOkPnt1; - bool myOkPnt2; - bool myBothway; - bool myBothway2; - - DlgRef_2Sel1Spin2Check* GroupPoints; - DlgRef_3Sel1Check_QTD* GroupPoints2; // for second layout for extrusion using 2 points - + void Init(); + void enterEvent( QEvent* ); + double getHeight() const; + +private: + GEOM::GEOM_Object_var myBase; /* Base shape */ + GEOM::GEOM_Object_var myVec; /* Vector, defining the direction */ + GEOM::GEOM_Object_var myPoint1, myPoint2; /* Points for extrusion */ + + bool myOkBase; + bool myOkVec; + bool myOkPnt1; + bool myOkPnt2; + bool myBothway; + bool myBothway2; + bool myBothway3; + + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; + + DlgRef_2Sel1Spin2Check* GroupPoints; + DlgRef_3Sel1Check* GroupPoints2; // for second layout for extrusion using 2 points + DlgRef_1Sel3Spin1Check* GroupPoints3; + private slots: - void ClickOnOk(); - bool ClickOnApply(); - - void ActivateThisDialog(); - void ConstructorsClicked(int); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ValueChangedInSpinBox(); - void onReverse(); - void onBothway(); - void onBothway2(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ConstructorsClicked( int ); + void ValueChangedInSpinBox(); + void SetDoubleSpinBoxStep( double ); + void onReverse(); + void onBothway(); }; -#endif // DIALOGBOX_PRISM_H +#endif // GENERATIONGUI_PRISMDLG_H diff --git a/src/GenerationGUI/GenerationGUI_RevolDlg.cxx b/src/GenerationGUI/GenerationGUI_RevolDlg.cxx index 928fd15f6..2a5d00b43 100644 --- a/src/GenerationGUI/GenerationGUI_RevolDlg.cxx +++ b/src/GenerationGUI/GenerationGUI_RevolDlg.cxx @@ -1,37 +1,38 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GenerationGUI_RevolDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : GenerationGUI_RevolDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "GenerationGUI_RevolDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include + +#include +#include +#include +#include #include #include @@ -39,64 +40,58 @@ #include #include #include - -#include -#include -#include #include -#include "GEOMImpl_Types.hxx" -#include -#include - -#include "utilities.h" +#include //================================================================================= // class : GenerationGUI_RevolDlg() -// purpose : Constructs a GenerationGUI_RevolDlg which is a child of 'parent', with the +// purpose : Constructs a GenerationGUI_RevolDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -GenerationGUI_RevolDlg::GenerationGUI_RevolDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +GenerationGUI_RevolDlg::GenerationGUI_RevolDlg (GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_REVOL"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_REVOL"))); + QPixmap image1 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_REVOLUTION_TITLE")); + setWindowTitle(tr("GEOM_REVOLUTION_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_REVOLUTION")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_REVOLUTION")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); myBothway = false; - GroupPoints = new DlgRef_2Sel1Spin2Check(this, "GroupPoints"); + GroupPoints = new DlgRef_2Sel1Spin2Check(centralWidget()); GroupPoints->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); GroupPoints->TextLabel1->setText(tr("GEOM_OBJECT")); GroupPoints->TextLabel2->setText(tr("GEOM_AXIS")); GroupPoints->TextLabel3->setText(tr("GEOM_ANGLE")); - GroupPoints->PushButton1->setPixmap(image1); - GroupPoints->PushButton2->setPixmap(image1); - GroupPoints->LineEdit1->setReadOnly( true ); - GroupPoints->LineEdit2->setReadOnly( true ); + GroupPoints->PushButton1->setIcon(image1); + GroupPoints->PushButton2->setIcon(image1); + GroupPoints->LineEdit1->setReadOnly(true); + GroupPoints->LineEdit2->setReadOnly(true); GroupPoints->CheckButton1->setText(tr("GEOM_BOTHWAY")); GroupPoints->CheckButton2->setText(tr("GEOM_REVERSE")); - Layout1->addWidget(GroupPoints, 2, 0); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); /***************************************************************/ setHelpFileName("create_revolution_page.html"); - /* Initialisations */ + // Initialisation Init(); } - //================================================================================= // function : ~GenerationGUI_RevolDlg() // purpose : Destroys the object and frees any allocated resources @@ -106,49 +101,56 @@ GenerationGUI_RevolDlg::~GenerationGUI_RevolDlg() // no need to delete child widgets, Qt does it all for us } - //================================================================================= // function : Init() // purpose : //================================================================================= void GenerationGUI_RevolDlg::Init() { - /* init variables */ - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit1->setReadOnly( true ); - GroupPoints->LineEdit2->setReadOnly( true ); + // min, max, step and decimals for spin boxes & initial values + double SpecificStep = 5; + initSpinBox(GroupPoints->SpinBox_DX, -360.0, 360.0, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY + GroupPoints->SpinBox_DX->setValue(45.0); + // init variables + GroupPoints->LineEdit1->setReadOnly(true); + GroupPoints->LineEdit2->setReadOnly(true); + + GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit2->setText(""); + myBase = myAxis = GEOM::GEOM_Object::_nil(); myOkBase = myOkAxis = false; - double SpecificStep = 5; - /* min, max, step and decimals for spin boxes & initial values */ - GroupPoints->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, SpecificStep, DBL_DIGITS_DISPLAY); - GroupPoints->SpinBox_DX->SetValue(45.0); + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); connect(GroupPoints->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(onBothway())); connect(GroupPoints->CheckButton2, SIGNAL(toggled(bool)), this, SLOT(onReverse())); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_DX, SLOT(SetStep(double))); - - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), this, SLOT(SetDoubleSpinBoxStep(double))); initName(tr("GEOM_REVOLUTION")); - globalSelection( GEOM_ALLSHAPES ); + GroupPoints->PushButton1->click(); + SelectionIntoArgument(); } +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void GenerationGUI_RevolDlg::SetDoubleSpinBoxStep (double step) +{ + GroupPoints->SpinBox_DX->setSingleStep(step); +} //================================================================================= // function : ClickOnOk() @@ -156,21 +158,22 @@ void GenerationGUI_RevolDlg::Init() //================================================================================= void GenerationGUI_RevolDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool GenerationGUI_RevolDlg::ClickOnApply() { - if ( !onAccept() ) + if (!onAccept()) return false; initName(); + // activate selection and connect selection manager + GroupPoints->PushButton1->click(); return true; } @@ -178,10 +181,9 @@ bool GenerationGUI_RevolDlg::ClickOnApply() //function : isAcceptableBase //purpose : return true if theBase can be used as algo argument //======================================================================= - -static bool isAcceptableBase(const TopoDS_Shape& theBase) +static bool isAcceptableBase (const TopoDS_Shape& theBase) { - switch ( theBase.ShapeType() ) { + switch (theBase.ShapeType()) { case TopAbs_VERTEX: case TopAbs_EDGE: case TopAbs_WIRE: @@ -192,7 +194,7 @@ static bool isAcceptableBase(const TopoDS_Shape& theBase) case TopAbs_COMPSOLID: return false; case TopAbs_COMPOUND: { - TopExp_Explorer exp( theBase, TopAbs_SOLID); + TopExp_Explorer exp(theBase, TopAbs_SOLID); return !exp.More(); } default: @@ -203,87 +205,89 @@ static bool isAcceptableBase(const TopoDS_Shape& theBase) //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection as changed or other case +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void GenerationGUI_RevolDlg::SelectionIntoArgument() { erasePreview(); myEditCurrentArgument->setText(""); - - if(IObjectCount() != 1) { - if(myEditCurrentArgument == GroupPoints->LineEdit1) - myOkBase = false; - else if(myEditCurrentArgument == GroupPoints->LineEdit2) - myOkAxis = false; + if (myEditCurrentArgument == GroupPoints->LineEdit1) myOkBase = false; + else if (myEditCurrentArgument == GroupPoints->LineEdit2) myOkAxis = false; + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) return; - } - + // nbSel == 1 Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_ptr aSelectedObject = GEOMBase::ConvertIOinGEOMObject( firstIObject(), testResult ); - QString aName = GEOMBase::GetName( aSelectedObject ); - - if (!testResult) + GEOM::GEOM_Object_ptr aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + + if (!testResult || aSelectedObject->_is_nil()) return; - if(myEditCurrentArgument == GroupPoints->LineEdit1) { - TopoDS_Shape S; - myOkBase = false; - - if ( !GEOMBase::GetShape(aSelectedObject, S) || !isAcceptableBase( S ) ) + TopoDS_Shape S; + if (!GEOMBase::GetShape(aSelectedObject, S) || S.IsNull()) + return; + + QString aName = GEOMBase::GetName(aSelectedObject); + + if (myEditCurrentArgument == GroupPoints->LineEdit1) { + if (!isAcceptableBase(S)) return; - + myBase = aSelectedObject; myOkBase = true; + myEditCurrentArgument->setText(aName); + if (!myOkAxis) + GroupPoints->PushButton2->click(); } - else if(myEditCurrentArgument == GroupPoints->LineEdit2) { - if ( testResult && !aSelectedObject->_is_nil() ) - { - TopoDS_Shape aShape; - - if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) - { - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); - TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes( firstIObject(), aMap ); - if ( aMap.Extent() == 1 ) - { + else if (myEditCurrentArgument == GroupPoints->LineEdit2) { + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) { + int anIndex = aMap(1); + aName.append(":edge_" + QString::number(anIndex)); - int anIndex = aMap( 1 ); - aName.append( ":edge_" + QString::number( anIndex ) ); + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); - //Find SubShape Object in Father - GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); - - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = - getGeomEngine()->GetIShapesOperations( getStudyId() ); - myAxis = aShapesOp->GetSubShape(aSelectedObject, anIndex); - myOkAxis = true; - } - else { - myAxis = aFindedObject; - myOkAxis = true; - } - } - else { - myOkAxis = true; - if (aShape.ShapeType() != TopAbs_EDGE) { - aSelectedObject = GEOM::GEOM_Object::_nil(); - aName = ""; - myOkAxis = false; - } - myAxis = aSelectedObject; - } - } + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = + getGeomEngine()->GetIShapesOperations(getStudyId()); + myAxis = aShapesOp->GetSubShape(aSelectedObject, anIndex); + myOkAxis = true; } + else { + myAxis = aFindedObject; + myOkAxis = true; + } + } + else { + myOkAxis = true; + if (S.ShapeType() != TopAbs_EDGE) { + aSelectedObject = GEOM::GEOM_Object::_nil(); + aName = ""; + myOkAxis = false; + } + myAxis = aSelectedObject; + } + myEditCurrentArgument->setText(aName); + if (myOkAxis && !myOkBase) + GroupPoints->PushButton1->click(); } - myEditCurrentArgument->setText( aName ); + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); displayPreview(); } - //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -291,37 +295,47 @@ void GenerationGUI_RevolDlg::SelectionIntoArgument() void GenerationGUI_RevolDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - globalSelection( GEOM_ALLSHAPES ); - if(send == GroupPoints->PushButton1) { - GroupPoints->LineEdit1->setFocus(); + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + globalSelection(GEOM_ALLSHAPES); + if (send == GroupPoints->PushButton1) { myEditCurrentArgument = GroupPoints->LineEdit1; + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit2->setEnabled(false); } - else if(send == GroupPoints->PushButton2) { - GroupPoints->LineEdit2->setFocus(); + else if (send == GroupPoints->PushButton2) { myEditCurrentArgument = GroupPoints->LineEdit2; + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); } - SelectionIntoArgument(); -} + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); +} //================================================================================= // function : LineEditReturnPressed() // purpose : //================================================================================= void GenerationGUI_RevolDlg::LineEditReturnPressed() -{ +{ QLineEdit* send = (QLineEdit*)sender(); - if(send == GroupPoints->LineEdit1 || - send == GroupPoints->LineEdit2) - { - myEditCurrentArgument = send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } + if (send == GroupPoints->LineEdit1 || + send == GroupPoints->LineEdit2) { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } } - //================================================================================= // function : ActivateThisDialog() // purpose : @@ -329,25 +343,22 @@ void GenerationGUI_RevolDlg::LineEditReturnPressed() void GenerationGUI_RevolDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - globalSelection( GEOM_ALLSHAPES ); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - GroupPoints->LineEdit1->setFocus(); - myEditCurrentArgument = GroupPoints->LineEdit1; + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + displayPreview(); } - //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void GenerationGUI_RevolDlg::enterEvent(QEvent* e) +void GenerationGUI_RevolDlg::enterEvent (QEvent*) { - if ( !GroupConstructors->isEnabled() ) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } - //================================================================================= // function : ValueChangedInSpinBox() // purpose : @@ -357,14 +368,13 @@ void GenerationGUI_RevolDlg::ValueChangedInSpinBox() displayPreview(); } - //================================================================================= // function : getAngle() // purpose : //================================================================================= double GenerationGUI_RevolDlg::getAngle() const { - return GroupPoints->SpinBox_DX->GetValue(); + return GroupPoints->SpinBox_DX->value(); } //================================================================================= @@ -373,48 +383,58 @@ double GenerationGUI_RevolDlg::getAngle() const //================================================================================= GEOM::GEOM_IOperations_ptr GenerationGUI_RevolDlg::createOperation() { - return getGeomEngine()->GetI3DPrimOperations( getStudyId() ); + return getGeomEngine()->GetI3DPrimOperations(getStudyId()); } //================================================================================= // function : isValid // purpose : //================================================================================= -bool GenerationGUI_RevolDlg::isValid( QString& ) +bool GenerationGUI_RevolDlg::isValid (QString& msg) { - return myOkBase && myOkAxis; + bool ok = GroupPoints->SpinBox_DX->isValid( msg, !IsPreview() ); + return myOkBase && myOkAxis && ok; } //================================================================================= // function : execute // purpose : //================================================================================= -bool GenerationGUI_RevolDlg::execute( ObjectList& objects ) +bool GenerationGUI_RevolDlg::execute (ObjectList& objects) { GEOM::GEOM_Object_var anObj; - if (!myBothway) - anObj = GEOM::GEOM_I3DPrimOperations::_narrow( - getOperation() )->MakeRevolutionAxisAngle( myBase, myAxis, getAngle() * PI180 ); - else - anObj = GEOM::GEOM_I3DPrimOperations::_narrow( - getOperation() )->MakeRevolutionAxisAngle2Ways( myBase, myAxis, getAngle() * PI180 ); + if (!myBothway) { + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakeRevolutionAxisAngle(myBase, myAxis, getAngle() * PI180); + } + else { + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakeRevolutionAxisAngle2Ways(myBase, myAxis, getAngle() * PI180); + } - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); + if (!anObj->_is_nil()) + { + if (!IsPreview()) + { + QStringList aParameters; + aParameters << GroupPoints->SpinBox_DX->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } + objects.push_back(anObj._retn()); + } return true; } - //================================================================================= // function : onReverse() // purpose : //================================================================================= void GenerationGUI_RevolDlg::onReverse() { - double anOldValue = GroupPoints->SpinBox_DX->GetValue(); - GroupPoints->SpinBox_DX->SetValue( -anOldValue ); + double anOldValue = GroupPoints->SpinBox_DX->value(); + GroupPoints->SpinBox_DX->setValue(-anOldValue); } //================================================================================= @@ -425,7 +445,7 @@ void GenerationGUI_RevolDlg::onBothway() { bool anOldValue = myBothway; myBothway = !anOldValue; - GroupPoints->CheckButton2->setEnabled(!myBothway); + GroupPoints->CheckButton2->setEnabled(!myBothway); displayPreview(); } @@ -439,5 +459,5 @@ void GenerationGUI_RevolDlg::addSubshapesToStudy() objMap[GroupPoints->LineEdit2->text()] = myAxis; - addSubshapesToFather( objMap ); + addSubshapesToFather(objMap); } diff --git a/src/GenerationGUI/GenerationGUI_RevolDlg.h b/src/GenerationGUI/GenerationGUI_RevolDlg.h index c7004e51d..89318effc 100644 --- a/src/GenerationGUI/GenerationGUI_RevolDlg.h +++ b/src/GenerationGUI/GenerationGUI_RevolDlg.h @@ -1,83 +1,79 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : GenerationGUI_RevolDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GenerationGUI_RevolDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef GENERATIONGUI_REVOLUTIONDLG_H +#define GENERATIONGUI_REVOLUTIONDLG_H -#ifndef DIALOGBOX_REVOLUTION_H -#define DIALOGBOX_REVOLUTION_H +#include -#include "GenerationGUI.h" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel1Spin2Check.h" - -#include +class DlgRef_2Sel1Spin2Check; //================================================================================= // class : GenerationGUI_RevolDlg // purpose : //================================================================================= -class GENERATIONGUI_EXPORT GenerationGUI_RevolDlg : public GEOMBase_Skeleton +class GenerationGUI_RevolDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - GenerationGUI_RevolDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~GenerationGUI_RevolDlg(); + GenerationGUI_RevolDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~GenerationGUI_RevolDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& msg ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); - -private : - void Init(); - void enterEvent(QEvent* e); - double getAngle() const; - - GEOM::GEOM_Object_var myBase; /* Base shape */ - GEOM::GEOM_Object_var myAxis; /* Axis of the revolution */ - bool myOkBase; - bool myOkAxis; - bool myBothway; - - DlgRef_2Sel1Spin2Check* GroupPoints; + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); +private: + void Init(); + void enterEvent( QEvent* ); + double getAngle() const; + +private: + GEOM::GEOM_Object_var myBase; /* Base shape */ + GEOM::GEOM_Object_var myAxis; /* Axis of the revolution */ + bool myOkBase; + bool myOkAxis; + bool myBothway; + + DlgRef_2Sel1Spin2Check* GroupPoints; + private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ValueChangedInSpinBox(); - void onReverse(); - void onBothway(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ValueChangedInSpinBox(); + void SetDoubleSpinBoxStep( double ); + void onReverse(); + void onBothway(); }; -#endif // DIALOGBOX_REVOLUTION_H +#endif // GENERATIONGUI_REVOLUTIONDLG_H diff --git a/src/GenerationGUI/Makefile.am b/src/GenerationGUI/Makefile.am index d7885317f..8fd63002e 100644 --- a/src/GenerationGUI/Makefile.am +++ b/src/GenerationGUI/Makefile.am @@ -1,83 +1,88 @@ -# GEOM GENERATIONGUI : +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# GEOM GENERATIONGUI : +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : GenerationGUI # -# File : Makefile.in -# Author : Damien COQUERET (OCC) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header: - include $(top_srcdir)/adm_local/unix/make_common_starter.am # Libraries targets lib_LTLIBRARIES = libGenerationGUI.la # header files -salomeinclude_HEADERS = +salomeinclude_HEADERS = \ + GenerationGUI.h \ + GenerationGUI_PrismDlg.h \ + GenerationGUI_RevolDlg.h \ + GenerationGUI_FillingDlg.h \ + GenerationGUI_PipeDlg.h -dist_libGenerationGUI_la_SOURCES = \ - GenerationGUI.cxx \ - GenerationGUI_PrismDlg.cxx \ - GenerationGUI_RevolDlg.cxx \ - GenerationGUI_FillingDlg.cxx \ +dist_libGenerationGUI_la_SOURCES = \ + GenerationGUI.h \ + GenerationGUI_PrismDlg.h \ + GenerationGUI_RevolDlg.h \ + GenerationGUI_FillingDlg.h \ + GenerationGUI_PipeDlg.h \ + \ + GenerationGUI.cxx \ + GenerationGUI_PrismDlg.cxx \ + GenerationGUI_RevolDlg.cxx \ + GenerationGUI_FillingDlg.cxx \ GenerationGUI_PipeDlg.cxx -MOC_FILES = \ - GenerationGUI_PrismDlg_moc.cxx \ - GenerationGUI_RevolDlg_moc.cxx \ - GenerationGUI_FillingDlg_moc.cxx \ +MOC_FILES = \ + GenerationGUI_PrismDlg_moc.cxx \ + GenerationGUI_RevolDlg_moc.cxx \ + GenerationGUI_FillingDlg_moc.cxx \ GenerationGUI_PipeDlg_moc.cxx -nodist_libGenerationGUI_la_SOURCES= \ +nodist_libGenerationGUI_la_SOURCES = \ $(MOC_FILES) -#LIB_CLIENT_IDL = SALOME_GenericObj.idl SALOME_Component.idl SALOME_Exception.idl +# additional information to compile and link file -#LIB_SERVER_IDL = - -# additionnal information to compil and link file - -libGenerationGUI_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(VTK_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(PYTHON_INCLUDES) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../GEOMGUI \ - -I$(srcdir)/../DlgRef \ - -I$(srcdir)/../GEOMBase \ - -I$(srcdir)/../OBJECT \ - -I$(srcdir)/../GEOMClient \ - -I$(srcdir)/../GEOMImpl \ - -I$(srcdir)/../GEOMFiltersSelection \ - -I$(top_builddir)/idl \ +libGenerationGUI_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(VTK_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(PYTHON_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../GEOMGUI \ + -I$(srcdir)/../DlgRef \ + -I$(srcdir)/../GEOMBase \ + -I$(srcdir)/../OBJECT \ + -I$(srcdir)/../GEOMClient \ + -I$(srcdir)/../GEOMImpl \ + -I$(srcdir)/../GEOMFiltersSelection \ + -I$(top_builddir)/src/DlgRef \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libGenerationGUI_la_LDFLAGS = \ - ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ - ../GEOMBase/libGEOMBase.la \ +libGenerationGUI_la_LDFLAGS = \ + ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ + ../GEOMBase/libGEOMBase.la \ $(CAS_LDPATH) -lTKOffset diff --git a/src/GroupGUI/GroupGUI.cxx b/src/GroupGUI/GroupGUI.cxx index e335605c6..89d84ebf2 100644 --- a/src/GroupGUI/GroupGUI.cxx +++ b/src/GroupGUI/GroupGUI.cxx @@ -1,49 +1,48 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GroupGUI.cxx +// Author : Sergey ANIKIN, Open CASCADE S.A.S. (sergey.anikin@opencascade.com) // -// -// File : GroupGUI.cxx -// Author : Sergey ANIKIN -// Module : GEOM -// $Header$ - #include "GroupGUI.h" #include "GroupGUI_GroupDlg.h" -#include "GEOMImpl_Types.hxx" +#include +#include +#include -#include "SUIT_Session.h" -#include "SUIT_Desktop.h" -#include "SUIT_MessageBox.h" -#include "SalomeApp_Application.h" -#include "SalomeApp_Study.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include +#include +#include //======================================================================= // function : GroupGUI() // purpose : Constructor //======================================================================= -GroupGUI::GroupGUI(GeometryGUI* parent) -: GEOMGUI(parent) +GroupGUI::GroupGUI( GeometryGUI* parent ) + : GEOMGUI( parent ) { } @@ -67,24 +66,23 @@ bool GroupGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) getGeometryGUI()->EmitSignalDeactivateDialog(); - QDialog* aDlg = NULL; + QDialog* aDlg = 0; - SalomeApp_Study* appStudy = dynamic_cast(app->activeStudy()); + SalomeApp_Study* appStudy = dynamic_cast( app->activeStudy() ); if ( !appStudy ) return false; _PTR(Study) aStudy = appStudy->studyDS(); if ( aStudy->GetProperties()->IsLocked() ) { - SUIT_MessageBox::warn1 ( parent, - QObject::tr("WRN_WARNING"), - QObject::tr("WRN_STUDY_LOCKED"), - QObject::tr("BUT_OK") ); + SUIT_MessageBox::warning( parent, + tr( "WRN_WARNING" ), + tr( "WRN_STUDY_LOCKED" ) ); return false; } switch ( theCommandID ) { case 800: case 8001: // CREATE GROUP - aDlg = new GroupGUI_GroupDlg (GroupGUI_GroupDlg::CreateGroup, getGeometryGUI(), parent); + aDlg = new GroupGUI_GroupDlg( GroupGUI_GroupDlg::CreateGroup, getGeometryGUI(), parent ); break; case 801: // EDIT GROUP { @@ -92,29 +90,32 @@ bool GroupGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) aList.Clear(); LightApp_SelectionMgr* aSelMgr = app->selectionMgr(); - if (aSelMgr) - aSelMgr->selectedObjects(aList); + if ( aSelMgr ) + aSelMgr->selectedObjects( aList ); - if (aList.Extent() == 1) { + if ( aList.Extent() == 1 ) { Standard_Boolean aResult = Standard_False; GEOM::GEOM_Object_var anObj = GEOMBase::ConvertIOinGEOMObject( aList.First(), aResult ); - if (aResult && !CORBA::is_nil(anObj) && anObj->GetType() == GEOM_GROUP) { - aDlg = new GroupGUI_GroupDlg (GroupGUI_GroupDlg::EditGroup, getGeometryGUI(), parent); + if ( aResult && !CORBA::is_nil( anObj ) && anObj->GetType() == GEOM_GROUP ) { + aDlg = new GroupGUI_GroupDlg( GroupGUI_GroupDlg::EditGroup, getGeometryGUI(), parent ); break; } } - SUIT_MessageBox::warn1(parent, tr("WRN_WARNING"), tr("NO_GROUP"), tr("BUT_OK") ); + SUIT_MessageBox::warning( parent, tr( "WRN_WARNING" ), tr( "NO_GROUP" ) ); break; } default: - app->putInfo(tr("GEOM_PRP_COMMAND").arg(theCommandID)); + app->putInfo( tr( "GEOM_PRP_COMMAND" ).arg( theCommandID ) ); break; } - if (aDlg != NULL) + if ( aDlg ) { + aDlg->updateGeometry(); + aDlg->resize( aDlg->minimumSizeHint() ); aDlg->show(); + } return true; } @@ -124,11 +125,11 @@ bool GroupGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) //===================================================================================== extern "C" { -#ifdef WNT - __declspec( dllexport ) +#ifdef WIN32 + __declspec( dllexport ) #endif - GEOMGUI* GetLibGUI(GeometryGUI* p) + GEOMGUI* GetLibGUI( GeometryGUI* p ) { - return new GroupGUI(p); + return new GroupGUI( p ); } } diff --git a/src/GroupGUI/GroupGUI.h b/src/GroupGUI/GroupGUI.h index 71bac9677..a0e97d948 100644 --- a/src/GroupGUI/GroupGUI.h +++ b/src/GroupGUI/GroupGUI.h @@ -1,34 +1,32 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2004 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GroupGUI.h +// Author : Sergey ANIKIN, Open CASCADE S.A.S. (sergey.anikin@opencascade.com) // -// -// File : GroupGUI.h -// Author : Sergey ANIKIN -// Module : GEOM - #ifndef GROUPGUI_H #define GROUPGUI_H -#include "GEOMGUI.h" +#include //================================================================================= // class : GroupGUI @@ -39,10 +37,10 @@ class GroupGUI : public GEOMGUI Q_OBJECT public: - GroupGUI(GeometryGUI* parent); + GroupGUI( GeometryGUI* ); ~GroupGUI(); - bool OnGUIEvent( int theCommandID, SUIT_Desktop* parent ); + bool OnGUIEvent( int, SUIT_Desktop* ); }; -#endif +#endif // GROUPGUI_H diff --git a/src/GroupGUI/GroupGUI_GroupDlg.cxx b/src/GroupGUI/GroupGUI_GroupDlg.cxx index 5aafaee7c..e17b859aa 100644 --- a/src/GroupGUI/GroupGUI_GroupDlg.cxx +++ b/src/GroupGUI/GroupGUI_GroupDlg.cxx @@ -1,117 +1,151 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2004 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : GroupGUI_GroupDlg.cxx +// Author : Sergey ANIKIN, Open CASCADE S.A.S. (sergey.anikin@opencascade.com) // -// -// File : GroupGUI_GroupDlg.cxx -// Author : Sergey ANIKIN -// Module : GEOM -// $Header$ - #include "GroupGUI_GroupDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "SalomeApp_Study.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include +#include +#include +#include -#include "GEOMBase.h" +#include +#include +#include +#include +#include -#include "GEOMImpl_Types.hxx" - -#include -#include -#include -#include +#include +#include +#include +#include #include #include +#include +enum { ALL_SUBSHAPES = 0, GET_IN_PLACE, SUBSHAPES_OF_SHAPE2, SUBSHAPES_OF_INVISIBLE_SHAPE2 }; -GroupGUI_GroupDlg::GroupGUI_GroupDlg(Mode mode, GeometryGUI* theGeometryGUI, QWidget* parent) - :GEOMBase_Skeleton( theGeometryGUI, parent, "GroupGUI_GroupDlg", false, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu), - myMode( mode ), - myBusy( false ) +GroupGUI_GroupDlg::GroupGUI_GroupDlg( Mode mode, GeometryGUI* theGeometryGUI, QWidget* parent ) + : GEOMBase_Skeleton( theGeometryGUI, parent, false ), + myMode( mode ), + myBusy( false ) { SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - QPixmap image0 (resMgr->loadPixmap("GEOM", tr("ICON_OBJBROWSER_VERTEX"))); - QPixmap image1 (resMgr->loadPixmap("GEOM", tr("ICON_OBJBROWSER_EDGE"))); - QPixmap image2 (resMgr->loadPixmap("GEOM", tr("ICON_OBJBROWSER_FACE"))); - QPixmap image3 (resMgr->loadPixmap("GEOM", tr("ICON_OBJBROWSER_SOLID"))); - QPixmap iconSelect (resMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); + QPixmap image0 ( resMgr->loadPixmap( "GEOM", tr( "ICON_OBJBROWSER_VERTEX" ) ) ); + QPixmap image1 ( resMgr->loadPixmap( "GEOM", tr( "ICON_OBJBROWSER_EDGE" ) ) ); + QPixmap image2 ( resMgr->loadPixmap( "GEOM", tr( "ICON_OBJBROWSER_FACE" ) ) ); + QPixmap image3 ( resMgr->loadPixmap( "GEOM", tr( "ICON_OBJBROWSER_SOLID" ) ) ); + QPixmap iconSelect ( resMgr->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption( myMode == CreateGroup ? tr( "CREATE_GROUP_TITLE" ) : tr( "EDIT_GROUP_TITLE" ) ); + setWindowTitle( myMode == CreateGroup ? tr( "CREATE_GROUP_TITLE" ) : tr( "EDIT_GROUP_TITLE" ) ); // Shape type button group - GroupConstructors->setEnabled( myMode == CreateGroup ); - GroupConstructors->setTitle( tr( "SHAPE_TYPE" ) ); - RadioButton1->setPixmap( image0 ); - RadioButton2->setPixmap( image1 ); - RadioButton3->setPixmap( image2 ); - RadioButton4->setPixmap( image3 ); - RadioButton4->show(); + mainFrame()->GroupConstructors->setEnabled( myMode == CreateGroup ); + mainFrame()->GroupConstructors->setTitle( tr( "SHAPE_TYPE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setIcon( image1 ); + mainFrame()->RadioButton3->setIcon( image2 ); + mainFrame()->RadioButton4->setIcon( image3 ); + mainFrame()->RadioButton4->show(); // Group name - GroupBoxName->setTitle( tr( "GROUP_NAME" ) ); + mainFrame()->GroupBoxName->setTitle( tr( "GROUP_NAME" ) ); // Main shape and sub-shapes - GroupMedium = new QGroupBox( 1, Qt::Vertical, tr( "MAIN_SUB_SHAPES" ), this ); - GroupMedium->setInsideMargin( 10 ); - Layout1->addWidget( GroupMedium, 2, 0 ); + QGroupBox* GroupMedium = new QGroupBox( tr( "MAIN_SUB_SHAPES" ), centralWidget() ); + QGridLayout* aMedLayout = new QGridLayout( GroupMedium ); + aMedLayout->setMargin( 9 ); + aMedLayout->setSpacing( 6 ); + + QLabel* aMainLabel = new QLabel( tr( "MAIN_SHAPE" ), GroupMedium ); - QWidget* aFrame = new QWidget( GroupMedium ); - QGridLayout* aMedLayout = new QGridLayout( aFrame, 4, 4, 0, 6 ); - - QLabel* aMainLabel = new QLabel( tr( "MAIN_SHAPE" ), aFrame ); - - mySelBtn = new QPushButton( aFrame ); - mySelBtn->setPixmap( iconSelect ); + mySelBtn = new QPushButton( GroupMedium ); + mySelBtn->setIcon( iconSelect ); mySelBtn->setEnabled( myMode == CreateGroup ); - myMainName = new QLineEdit( aFrame ); + myMainName = new QLineEdit( GroupMedium ); myMainName->setReadOnly( true ); myMainName->setEnabled( myMode == CreateGroup ); - mySelSubBtn = new QRadioButton (tr( "SELECT_SUB_SHAPES" ), aFrame ); - mySelAllBtn = new QPushButton( tr( "SELECT_ALL" ), aFrame ); - myAddBtn = new QPushButton( tr( "ADD" ), aFrame ); - myRemBtn = new QPushButton( tr( "REMOVE" ), aFrame ); - myIdList = new QListBox( aFrame ); + QLabel* aSecondLabel = new QLabel( tr( "SECOND_SHAPE" ), GroupMedium ); - myIdList->setSelectionMode( QListBox::Extended ); - myIdList->setRowMode( QListBox::FitToWidth ); + mySelBtn2 = new QPushButton( GroupMedium ); + mySelBtn2->setIcon( iconSelect ); + mySelBtn2->setEnabled( false ); - aMedLayout->addWidget( aMainLabel, 0, 0 ); - aMedLayout->addWidget( mySelBtn, 0, 1 ); - aMedLayout->addMultiCellWidget( myMainName, 0, 0, 2, 3 ); - aMedLayout->addMultiCellWidget( mySelSubBtn, 1, 1, 0, 2 ); - aMedLayout->addWidget( mySelAllBtn, 1, 3 ); - aMedLayout->addMultiCellWidget( myIdList, 2, 3, 0, 2 ); - aMedLayout->addWidget( myAddBtn, 2, 3 ); - aMedLayout->addWidget( myRemBtn, 3, 3 ); + myShape2Name = new QLineEdit( GroupMedium ); + myShape2Name->setReadOnly( true ); + myShape2Name->setEnabled( false ); - setHelpFileName("work_with_groups_page.html"); + mySelectionWayGroupBox = new QGroupBox( tr("SHAPE_SEL_RESTR"), GroupMedium ); + mySelectionWayGroup = new QButtonGroup( mySelectionWayGroupBox ); + QRadioButton* allSubs = new QRadioButton( tr( "NO_RESTR" ) , mySelectionWayGroupBox ); + QRadioButton* inPlaceSubs = new QRadioButton( tr( "GEOM_PARTS_OF_SHAPE2" ), mySelectionWayGroupBox ); + QRadioButton* shape2Subs = new QRadioButton( tr( "SUBSHAPES_OF_SHAPE2" ) , mySelectionWayGroupBox ); + QVBoxLayout* mySelWayLayout = new QVBoxLayout( mySelectionWayGroupBox ); + mySelWayLayout->setMargin( 9 ); + mySelWayLayout->setSpacing( 6 ); + mySelWayLayout->addWidget( allSubs ); + mySelWayLayout->addWidget( inPlaceSubs ); + mySelWayLayout->addWidget( shape2Subs ); + mySelectionWayGroup->addButton( allSubs, ALL_SUBSHAPES ); + mySelectionWayGroup->addButton( inPlaceSubs, GET_IN_PLACE ); + mySelectionWayGroup->addButton( shape2Subs, SUBSHAPES_OF_SHAPE2 ); + allSubs->setChecked( true ); + + mySelAllBtn = new QPushButton( tr( "SELECT_ALL" ), GroupMedium ); + myAddBtn = new QPushButton( tr( "ADD" ), GroupMedium ); + myRemBtn = new QPushButton( tr( "REMOVE" ), GroupMedium ); + myIdList = new QListWidget( GroupMedium ); + + myIdList->setSelectionMode( QAbstractItemView::ExtendedSelection ); + myIdList->setFlow( QListView::TopToBottom ); + myIdList->setWrapping( true ); + + aMedLayout->addWidget( aMainLabel, 0, 0 ); + aMedLayout->addWidget( mySelBtn, 0, 1 ); + aMedLayout->addWidget( myMainName, 0, 2, 1, 2 ); + aMedLayout->addWidget( aSecondLabel, 1, 0 ); + aMedLayout->addWidget( mySelBtn2, 1, 1 ); + aMedLayout->addWidget( myShape2Name, 1, 2, 1, 2 ); + aMedLayout->addWidget( mySelectionWayGroupBox, 2, 0, 3, 3 ); + aMedLayout->addWidget( mySelAllBtn, 2, 3 ); + aMedLayout->addWidget( myAddBtn, 3, 3 ); + aMedLayout->addWidget( myRemBtn, 4, 3 ); + aMedLayout->addWidget( myIdList, 5, 0, 1, 4 ); + aMedLayout->setRowStretch( 5, 1 ); + + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupMedium ); + + setHelpFileName( "work_with_groups_page.html" ); Init(); } @@ -120,7 +154,6 @@ GroupGUI_GroupDlg::~GroupGUI_GroupDlg() { } - //================================================================================= // function : Init() // purpose : @@ -128,65 +161,66 @@ GroupGUI_GroupDlg::~GroupGUI_GroupDlg() void GroupGUI_GroupDlg::Init() { // san -- TODO: clear selected sub-shapes... - mySelSubBtn->setChecked( true ); + //mySelSubBtn->setChecked( true ); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + if ( myMode == CreateGroup ) { initName( tr( "GROUP_PREFIX" ) ); // Get ready for main shape selection myEditCurrentArgument = myMainName; - connect( GroupConstructors, SIGNAL( clicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); + connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); connect( mySelBtn, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( mySelBtn2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); } - else if ( myMode == EditGroup && IObjectCount() ) { - Standard_Boolean aResult = Standard_False; - GEOM::GEOM_Object_var anObj = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), aResult ); + else if (myMode == EditGroup) { + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); - if ( aResult && !CORBA::is_nil( anObj ) && anObj->GetType() == GEOM_GROUP ) { - myGroup = anObj; + if (aSelList.Extent()) { + Standard_Boolean aResult = Standard_False; + GEOM::GEOM_Object_var anObj = + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aResult); - ResultName->setText( GEOMBase::GetName( myGroup ) ); + if ( aResult && !CORBA::is_nil( anObj ) && anObj->GetType() == GEOM_GROUP ) { + myGroup = anObj; - GEOM::GEOM_IGroupOperations_var anOp = GEOM::GEOM_IGroupOperations::_narrow( getOperation() ); - myMainObj = anOp->GetMainShape( myGroup ); - if ( !CORBA::is_nil( myMainObj ) ) - myMainName->setText( GEOMBase::GetName( myMainObj ) ); + mainFrame()->ResultName->setText( GEOMBase::GetName( myGroup ) ); - setShapeType( (TopAbs_ShapeEnum)anOp->GetType( myGroup ) ); + GEOM::GEOM_IGroupOperations_var anOp = GEOM::GEOM_IGroupOperations::_narrow( getOperation() ); + myMainObj = anOp->GetMainShape( myGroup ); + if ( !CORBA::is_nil( myMainObj ) ) + myMainName->setText( GEOMBase::GetName( myMainObj ) ); - GEOM::ListOfLong_var aCurrList = anOp->GetObjects( myGroup ); - QListBoxItem* anItem; - for ( int i = 0, n = aCurrList->length(); i < n; i++ ) { - anItem = new QListBoxText( QString( "%1" ).arg(aCurrList[i] ) ); - myIdList->insertItem( anItem ); + setShapeType( (TopAbs_ShapeEnum)anOp->GetType( myGroup ) ); + + GEOM::ListOfLong_var aCurrList = anOp->GetObjects( myGroup ); + for ( int i = 0, n = aCurrList->length(); i < n; i++ ) + myIdList->addItem( new QListWidgetItem( QString( "%1" ).arg( aCurrList[i] ) ) ); + + myEditCurrentArgument = 0; } - - myEditCurrentArgument = 0; + connect( mySelBtn2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); } } - LightApp_SelectionMgr* aSelMgr = - ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(); + connect( aSelMgr, SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument()) ); - connect( aSelMgr, SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect( buttonOk , SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); - connect( buttonApply, SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + connect( mySelectionWayGroup, SIGNAL( buttonClicked( int ) ), this, SLOT( SetEditCurrentArgument() ) ); + connect( mySelAllBtn, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( myAddBtn, SIGNAL( clicked() ), this, SLOT( add() ) ); + connect( myRemBtn, SIGNAL( clicked() ), this, SLOT( remove() ) ); + connect( myIdList, SIGNAL( selectionChanged() ), this, SLOT( selectionChanged() ) ); - connect( mySelSubBtn, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect( mySelAllBtn, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect( myAddBtn, SIGNAL( clicked() ), this, SLOT( add() ) ); - connect( myRemBtn, SIGNAL( clicked() ), this, SLOT( remove() ) ); - connect( myIdList, SIGNAL( selectionChanged() ), this, SLOT( selectionChanged() ) ); + setInPlaceObj(GEOM::GEOM_Object::_nil()); + myBusy = true; // just activate but do not select in the list activateSelection(); - // activate subshapes selection if Main Shape is Selected - if ( !CORBA::is_nil( myMainObj ) ) { - myEditCurrentArgument = 0; - activateSelection(); - updateState(); - } + myBusy = false; } //================================================================================= @@ -195,8 +229,20 @@ void GroupGUI_GroupDlg::Init() //================================================================================= void GroupGUI_GroupDlg::enterEvent( QEvent* e ) { - if ( !buttonCancel->isEnabled() ) - this->ActivateThisDialog(); + if ( !buttonCancel()->isEnabled() ) + ActivateThisDialog(); +} + +//======================================================================= +//function : closeEvent +//purpose : remove temporary geom object +//======================================================================= + +void GroupGUI_GroupDlg::closeEvent( QCloseEvent* e ) +{ + setInPlaceObj( GEOM::GEOM_Object::_nil() ); + + GEOMBase_Skeleton::closeEvent( e ); } //================================================================================= @@ -222,13 +268,13 @@ bool GroupGUI_GroupDlg::ClickOnApply() { initName(); myIdList->clear(); + ConstructorsClicked( getConstructorId() ); } else activateSelection(); return true; } - //================================================================================= // function : ActivateThisDialog() // purpose : @@ -261,7 +307,6 @@ void GroupGUI_GroupDlg::LineEditReturnPressed() updateState(); } - //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -270,19 +315,137 @@ void GroupGUI_GroupDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if ( send == mySelBtn ) + if ( send == mySelBtn ) { myEditCurrentArgument = myMainName; - else if ( (QRadioButton*)sender() == mySelSubBtn || send == mySelAllBtn ) + myShape2Name->setText( "" ); + } + else if ( /*(QRadioButton*)sender() == mySelSubBtn ||*/ send == mySelAllBtn ) myEditCurrentArgument = 0; + else if ( send == mySelBtn2 || sender() == mySelectionWayGroup ) { + setInPlaceObj( GEOM::GEOM_Object::_nil() ); + //if ( myPlaceCheckBox->isChecked() ) + myShape2Name->setText( "" ); + if ( subSelectionWay() != ALL_SUBSHAPES ) + { + myEditCurrentArgument = myShape2Name; + } + else { + //myEditCurrentArgument = myMainName; + myEditCurrentArgument = 0; + } + } activateSelection(); - if ( send == mySelAllBtn ) + if ( send == mySelAllBtn ) { +// myShape2Name->setText( "" ); +// myPlaceCheckBox->setChecked( false ); +// mySelBtn2->setEnabled( false ); +// myShape2Name->setEnabled( false ); selectAllSubShapes(); + } else updateState(); } +//================================================================================= +// function : onGetInPlace() +// purpose : +//================================================================================= +void GroupGUI_GroupDlg::onGetInPlace() +{ + setInPlaceObj( GEOM::GEOM_Object::_nil() ); + myEditCurrentArgument->setText( "" ); + + bool isBlocked = myIdList->signalsBlocked(); + myIdList->blockSignals( true ); + myIdList->clearSelection(); + myIdList->blockSignals( isBlocked ); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) + return; + + Standard_Boolean aResult = Standard_False; + GEOM::GEOM_Object_var anObj = + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aResult); + if (aResult && !anObj->_is_nil() && GEOMBase::IsShape(anObj)) { + if (!anObj->_is_equivalent(myMainObj) && !anObj->_is_equivalent(myGroup)) { + SUIT_OverrideCursor wc; + myEditCurrentArgument->setText(GEOMBase::GetName(anObj)); + GEOM::GEOM_IShapesOperations_var aShapesOp = + getGeomEngine()->GetIShapesOperations(getStudyId()); + if ( subSelectionWay() == GET_IN_PLACE ) { + GEOM::GEOM_Object_var aGetInPlaceObj = aShapesOp->GetInPlace(myMainObj, anObj); + setInPlaceObj( aGetInPlaceObj ); + } + else { + bool isVisible = true; + if ( SALOME_View* view = GEOM_Displayer::GetActiveView() ) + isVisible = view->isVisible( aSelList.First() ); + setInPlaceObj( anObj, isVisible ); + } + myEditCurrentArgument = 0; + //myBusy = true; // just activate but do not select in the list + activateSelection(); + //myBusy = false; + } + } +} + +//======================================================================= +//function : setInPlaceObj +//purpose : temporarily add an object to study and remove old InPlaceObj +//======================================================================= + +void GroupGUI_GroupDlg::setInPlaceObj( GEOM::GEOM_Object_var theObj, const bool isVisible ) +{ + if ( ! myInPlaceObj->_is_equivalent( theObj ) ) + { + const char* tmpName = "__InPlaceObj__"; + // remove old InPlaceObj + if ( !myInPlaceObj->_is_nil() ) { + if ( myInPlaceObjSelectState == GET_IN_PLACE || + myInPlaceObjSelectState == SUBSHAPES_OF_INVISIBLE_SHAPE2 ) { + // hide temporary object or initially invisible shape 2 (issue 0014047) + GEOM_Displayer aDisplayer(getStudy()); + aDisplayer.Erase( myInPlaceObj, true ); + } + if (_PTR(SObject) SO = getStudy()->studyDS()->FindObject( tmpName )) { + getStudy()->studyDS()->NewBuilder()->RemoveObjectWithChildren( SO ); + getGeomEngine()->RemoveObject(myInPlaceObj); + } + } + // publish InPlaceObj to enable localSelection(InPlaceObj) + if ( !theObj->_is_nil() && subSelectionWay() == GET_IN_PLACE ) { + SALOMEDS::Study_var aStudyDS = GeometryGUI::ClientStudyToStudy(getStudy()->studyDS()); + SALOMEDS::SObject_var aSO = + getGeomEngine()->AddInStudy(aStudyDS, theObj, tmpName, myMainObj); + } + myInPlaceObj = theObj; + } + // build map of indices + myMain2InPlaceIndices.Clear(); + if ( !myInPlaceObj->_is_nil() ) { + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); + GEOM::GEOM_ILocalOperations_var aLocOp = getGeomEngine()->GetILocalOperations( getStudyId() ); + + GEOM::ListOfGO_var aSubObjects = aShapesOp->MakeExplode( myInPlaceObj, getShapeType(), false); + for (int i = 0; i < aSubObjects->length(); i++) + { + CORBA::Long aMainIndex = aLocOp->GetSubShapeIndex( myMainObj, aSubObjects[i] ); + CORBA::Long aPlaceIndex = aLocOp->GetSubShapeIndex( myInPlaceObj, aSubObjects[i] ); + if ( aMainIndex >= 0 && aPlaceIndex > 0) + myMain2InPlaceIndices.Bind( aMainIndex, aPlaceIndex ); + } + } + myInPlaceObjSelectState = subSelectionWay(); + if ( myInPlaceObjSelectState == SUBSHAPES_OF_SHAPE2 && !isVisible ) + myInPlaceObjSelectState = SUBSHAPES_OF_INVISIBLE_SHAPE2; +} //================================================================================= // function : SelectionIntoArgument() @@ -290,31 +453,42 @@ void GroupGUI_GroupDlg::SetEditCurrentArgument() //================================================================================= void GroupGUI_GroupDlg::SelectionIntoArgument() { - if ( myEditCurrentArgument ) { // Selection of a main shape is active - myEditCurrentArgument->setText( "" ); +// if (myPlaceCheckBox->isChecked() && myEditCurrentArgument == myShape2Name ) + if (subSelectionWay() != ALL_SUBSHAPES && myEditCurrentArgument == myShape2Name) { + onGetInPlace(); + return; + } + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (myEditCurrentArgument == myMainName) { // Selection of a main shape is active + myEditCurrentArgument->setText(""); myIdList->clear(); - if ( IObjectCount() == 1 ) { + if (aSelList.Extent() == 1) { Standard_Boolean aResult = Standard_False; GEOM::GEOM_Object_var anObj = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), aResult ); + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aResult); if ( aResult && !anObj->_is_nil() && GEOMBase::IsShape( anObj ) ) { - myMainObj = anObj; - myEditCurrentArgument->setText( GEOMBase::GetName( anObj ) ); + myMainObj = anObj; + myEditCurrentArgument->setText( GEOMBase::GetName( anObj ) ); // activate subshapes selection by default myEditCurrentArgument = 0; activateSelection(); updateState(); - return; + return; } } myMainObj = GEOM::GEOM_Object::_nil(); } else { // an attempt to synchronize list box selection with 3d viewer - if ( myBusy ) + if ( myBusy ) { return; + } bool isBlocked = myIdList->signalsBlocked(); myIdList->blockSignals( true ); @@ -322,24 +496,34 @@ void GroupGUI_GroupDlg::SelectionIntoArgument() TColStd_IndexedMapOfInteger aMapIndex; - SALOME_ListIO aSelIOs; - SalomeApp_Application* app = myGeomGUI->getApp(); - if (app) { - LightApp_SelectionMgr* aSelMgr = app->selectionMgr(); - if (aSelMgr) { - QMap aMap; - aSelMgr->selectedSubOwners(aMap); - if (aMap.size() == 1) - aMapIndex = aMap.begin().data(); + LightApp_SelectionMgr::MapEntryOfMapOfInteger aMap; + aSelMgr->selectedSubOwners( aMap ); + if ( aMap.Size() == 1 ) + aMapIndex = LightApp_SelectionMgr::MapEntryOfMapOfInteger::Iterator( aMap ).Value(); + bool subselected = aMapIndex.Extent(); + + // convert inPlace indices to main indices + //if ( subselected && myPlaceCheckBox->isChecked() ) + if ( subselected && subSelectionWay() != ALL_SUBSHAPES ) + { + TColStd_IndexedMapOfInteger aMapIndex2; + + TColStd_DataMapIteratorOfDataMapOfIntegerInteger m2ip( myMain2InPlaceIndices ); + for ( ; m2ip.More(); m2ip.Next() ) { + int inPlaceId = m2ip.Value(); + if ( aMapIndex.Contains( inPlaceId )) { + aMapIndex2.Add( m2ip.Key() ); + } } + aMapIndex = aMapIndex2; } // try to find out and process the object browser selection - if ( !aMapIndex.Extent() ) { + if ( !subselected ) { globalSelection( GEOM_ALLSHAPES ); GEOM::ListOfGO anObjects; - GEOMBase::ConvertListOfIOInListOfGO(selectedIO(), anObjects); + GEOMBase::ConvertListOfIOInListOfGO(aSelList, anObjects); GEOM::GEOM_ILocalOperations_var aLocOp = getGeomEngine()->GetILocalOperations( getStudyId() ); GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); @@ -364,15 +548,23 @@ void GroupGUI_GroupDlg::SelectionIntoArgument() TopoDS_Shape aShape; if ( GEOMBase::GetShape(aSubObjects[i], aShape, getShapeType()) ) { - CORBA::Long anIndex = aLocOp->GetSubShapeIndex( myMainObj, aSubObjects[i] ); - if ( anIndex >= 0 ) + CORBA::Long anIndex; + anIndex = aLocOp->GetSubShapeIndex( myMainObj, aSubObjects[i] ); + if ( anIndex >= 0 ) { + //if ( myPlaceCheckBox->isChecked() && ! myMain2InPlaceIndices.IsBound( anIndex )) + if ( subSelectionWay() != ALL_SUBSHAPES && + ! myMain2InPlaceIndices.IsBound( anIndex )) + continue; aMapIndex.Add( anIndex ); + } } } } - - if ( !myMainObj->_is_nil() ) - localSelection( myMainObj, getShapeType() ); + if ( !myMainObj->_is_nil() /*&& mySelSubBtn->isChecked()*/) + if ( subSelectionWay() == ALL_SUBSHAPES ) + localSelection( myMainObj, getShapeType() ); + else if ( !myInPlaceObj->_is_nil() ) + localSelection( myInPlaceObj, getShapeType() ); } if (aMapIndex.Extent() >= 1) { @@ -382,7 +574,7 @@ void GroupGUI_GroupDlg::SelectionIntoArgument() for ( int ii = 1, nn = aMapIndex.Extent(); ii <= nn; ii++ ) { if ( aMap.contains( aMapIndex( ii ) ) ) - myIdList->setSelected( aMap[aMapIndex( ii )], true ); + myIdList->item( aMap[aMapIndex( ii )])->setSelected( true ); } } myIdList->blockSignals( isBlocked ); @@ -400,6 +592,7 @@ void GroupGUI_GroupDlg::ConstructorsClicked( int constructorId ) myIdList->clear(); activateSelection(); updateState(); + setInPlaceObj( myInPlaceObj ); // to rebuild myMain2InPlaceIndices } //================================================================================= @@ -411,30 +604,48 @@ void GroupGUI_GroupDlg::selectAllSubShapes() if ( CORBA::is_nil( myMainObj ) ) return; - GEOM::GEOM_IShapesOperations_var aShOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); - - GEOM::ListOfLong_var aSubShapes = aShOp->SubShapeAllIDs(myMainObj, getShapeType(), false); - if ( !aShOp->IsDone() ) - return; + GEOM::ListOfLong_var aSubShapes; +// if ( !myPlaceCheckBox->isChecked() ) + if ( subSelectionWay() == ALL_SUBSHAPES ) + { + myIdList->clear(); + GEOM::GEOM_IShapesOperations_var aShOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); + aSubShapes = aShOp->SubShapeAllIDs(myMainObj, getShapeType(), false); + if ( !aShOp->IsDone() ) + return; + } + else + { + aSubShapes = new GEOM::ListOfLong(); + aSubShapes->length( myMain2InPlaceIndices.Extent() ); + TColStd_DataMapIteratorOfDataMapOfIntegerInteger m2ip( myMain2InPlaceIndices ); + for ( int i = 0; m2ip.More(); i++, m2ip.Next() ) + aSubShapes[ i ] = m2ip.Key(); + } bool isBlocked = myIdList->signalsBlocked(); myIdList->blockSignals( true ); - myIdList->clear(); - QListBoxItem* anItem; for ( int i = 0, n = aSubShapes->length(); i < n; i++ ) { CORBA::Long anIndex = aSubShapes[i]; if ( anIndex < 0 ) continue; - anItem = new QListBoxText( QString( "%1" ).arg( anIndex ) ); - myIdList->insertItem( anItem ); - myIdList->setSelected( anItem, true ); + QListWidgetItem* anItem = 0; + QString text = QString( "%1" ).arg( anIndex ); + if ( !myInPlaceObj->_is_nil() ) { + QList found = myIdList->findItems( text, Qt::MatchExactly ); + if ( found.count() ) anItem = found[0]; + } + if ( !anItem ) { + anItem = new QListWidgetItem( text ); + myIdList->addItem( anItem ); + } + anItem->setSelected( true ); } myIdList->blockSignals( isBlocked ); highlightSubShapes(); - //updateState(); // already done in highlightSubShapes() } //================================================================================= @@ -451,20 +662,33 @@ void GroupGUI_GroupDlg::add() SALOME_ListIO aSelIOs; SalomeApp_Application* app = myGeomGUI->getApp(); - if (app) { + if ( app ) { LightApp_SelectionMgr* aSelMgr = app->selectionMgr(); - if (aSelMgr) { - QMap aMap; - aSelMgr->selectedSubOwners(aMap); - if (aMap.size() == 1) - aMapIndex = aMap.begin().data(); + if ( aSelMgr ) { + LightApp_SelectionMgr::MapEntryOfMapOfInteger aMap; + aSelMgr->selectedSubOwners( aMap ); + if ( aMap.Size() == 1 ) + aMapIndex = LightApp_SelectionMgr::MapEntryOfMapOfInteger::Iterator( aMap ).Value(); } } + GEOM::ListOfGO anObjects; + // get selected sub-shapes of myInPlaceObj + if ( aMapIndex.Extent() > 0 && !myInPlaceObj->_is_nil() ) + { + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); - // try to find out and process the object browser selection - if ( !aMapIndex.Extent() ) { - GEOM::ListOfGO anObjects; - GEOMBase::ConvertListOfIOInListOfGO(selectedIO(), anObjects); + anObjects.length( aMapIndex.Extent() ); + for ( int i = 1; i <= aMapIndex.Extent(); i++ ) + anObjects[ i-1 ] = aShapesOp->GetSubShape( myInPlaceObj, aMapIndex( i )); + + aMapIndex.Clear(); + } + + // try to find out and process the object browser selection or InPlace sub-shapes + if ( !aMapIndex.Extent() ) + { + if ( anObjects.length() == 0 ) + GEOMBase::ConvertListOfIOInListOfGO(aSelIOs, anObjects); GEOM::GEOM_ILocalOperations_var aLocOp = getGeomEngine()->GetILocalOperations( getStudyId() ); GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); @@ -489,7 +713,8 @@ void GroupGUI_GroupDlg::add() TopoDS_Shape aShape; if ( GEOMBase::GetShape(aSubObjects[i], aShape, getShapeType()) ) { - CORBA::Long anIndex = aLocOp->GetSubShapeIndex( myMainObj, aSubObjects[i] ); + CORBA::Long anIndex; + anIndex = aLocOp->GetSubShapeIndex( myMainObj, aSubObjects[i] ); if ( anIndex >= 0 ) aMapIndex.Add( anIndex ); } @@ -498,7 +723,6 @@ void GroupGUI_GroupDlg::add() } if ( aMapIndex.Extent() >= 1 ) { - QListBoxItem* anItem; bool isBlocked = myIdList->signalsBlocked(); myIdList->blockSignals( true ); @@ -506,9 +730,9 @@ void GroupGUI_GroupDlg::add() if ( aMap.Contains( aMapIndex( i ) ) ) continue; - anItem = new QListBoxText( QString( "%1" ).arg( aMapIndex( i ) ) ); - myIdList->insertItem( anItem ); - myIdList->setSelected( anItem, true ); + QListWidgetItem* anItem = new QListWidgetItem( QString( "%1" ).arg( aMapIndex( i ) ) ); + myIdList->addItem( anItem ); + anItem->setSelected( true ); } myIdList->blockSignals( isBlocked ); @@ -526,24 +750,23 @@ void GroupGUI_GroupDlg::remove() bool isBlocked = myIdList->signalsBlocked(); myIdList->blockSignals( true ); - for ( int i = myIdList->count() - 1; i >= 0; i-- ) { - if ( myIdList->isSelected( i ) ) - myIdList->removeItem( i ); - } + QListIterator it( myIdList->selectedItems() ); + while ( it.hasNext() ) + delete it.next(); myIdList->blockSignals( isBlocked ); highlightSubShapes(); } +//======================================================================= +//function : subSelectionWay +//purpose : +//======================================================================= -//================================================================================= -// function : getConstructorId() -// purpose : -//================================================================================= -int GroupGUI_GroupDlg::getConstructorId() const +int GroupGUI_GroupDlg::subSelectionWay() const { - return GroupConstructors->id( GroupConstructors->selected() ); + return mySelectionWayGroup->checkedId(); } //================================================================================= @@ -574,7 +797,7 @@ void GroupGUI_GroupDlg::setShapeType( const TopAbs_ShapeEnum theType ) case TopAbs_FACE: anId = 2; break; case TopAbs_SOLID: anId = 3; break; } - GroupConstructors->setButton( anId ); + setConstructorId( anId ); } @@ -586,8 +809,13 @@ void GroupGUI_GroupDlg::activateSelection() { globalSelection( GEOM_ALLSHAPES ); - if ( !myMainObj->_is_nil() && !myEditCurrentArgument ) { - localSelection( myMainObj, getShapeType() ); + // local selection + if ( !myMainObj->_is_nil() && !myEditCurrentArgument/* && mySelSubBtn->isChecked()*/) { +// if ( !myPlaceCheckBox->isChecked() ) + if ( subSelectionWay() == ALL_SUBSHAPES ) + localSelection( myMainObj, getShapeType() ); + else if ( !myInPlaceObj->_is_nil() ) + localSelection( myInPlaceObj, getShapeType() ); } SelectionIntoArgument(); @@ -605,13 +833,13 @@ void GroupGUI_GroupDlg::updateState() SALOME_ListIO aSelIOs; SalomeApp_Application* app = myGeomGUI->getApp(); - if (app) { + if ( app ) { LightApp_SelectionMgr* aSelMgr = app->selectionMgr(); - if (aSelMgr) { - QMap aMap; - aSelMgr->selectedSubOwners(aMap); - if (aMap.size() == 1) - aMapIndex = aMap.begin().data(); + if ( aSelMgr ) { + LightApp_SelectionMgr::MapEntryOfMapOfInteger aMap; + aSelMgr->selectedSubOwners( aMap ); + if ( aMap.Size() == 1 ) + aMapIndex = LightApp_SelectionMgr::MapEntryOfMapOfInteger::Iterator( aMap ).Value(); } } @@ -649,7 +877,8 @@ void GroupGUI_GroupDlg::updateState() aSubObjects[i]; if ( GEOMBase::GetShape(aSubObjects[i], aShape, getShapeType()) ) { - CORBA::Long anIndex = aLocOp->GetSubShapeIndex( myMainObj, aSubObjects[i] ); + CORBA::Long anIndex; + anIndex = aLocOp->GetSubShapeIndex( myMainObj, aSubObjects[i] ); if ( anIndex >= 0 ) aMapIndex.Add( anIndex ); else @@ -673,12 +902,19 @@ void GroupGUI_GroupDlg::updateState() isAdd = aMapIndex.Extent() > 0; myAddBtn->setEnabled( !myEditCurrentArgument && !CORBA::is_nil( myMainObj ) && isAdd ); - bool hasSel = false; - for ( int ii = 0, nn = myIdList->count(); !hasSel && ii < nn; ii++ ) - hasSel = myIdList->isSelected( ii ); + bool hasSel = myIdList->selectedItems().count() > 0; myRemBtn->setEnabled( hasSel ); - mySelSubBtn->setEnabled( !CORBA::is_nil( myMainObj ) ); + //mySelSubBtn->setEnabled( !CORBA::is_nil( myMainObj ) ); + //myPlaceCheckBox->setEnabled( !CORBA::is_nil( myMainObj ) ); + mySelectionWayGroupBox->setEnabled( !CORBA::is_nil( myMainObj ) ); mySelAllBtn->setEnabled( !CORBA::is_nil( myMainObj ) ); +// mySelBtn2->setEnabled( myPlaceCheckBox->isChecked() ); +// myShape2Name->setEnabled( myPlaceCheckBox->isChecked() ); + mySelBtn2->setEnabled( subSelectionWay() != ALL_SUBSHAPES ); + myShape2Name->setEnabled( subSelectionWay() != ALL_SUBSHAPES ); +// if ( !myPlaceCheckBox->isChecked() ) + if ( subSelectionWay() == ALL_SUBSHAPES ) + setInPlaceObj( GEOM::GEOM_Object::_nil() ); } //================================================================================= @@ -700,7 +936,13 @@ void GroupGUI_GroupDlg::highlightSubShapes() return; Standard_Boolean isOk; - char* objIOR = GEOMBase::GetIORFromObject( myMainObj ); + char* objIOR; + + if ( myInPlaceObj->_is_nil() ) + objIOR = GEOMBase::GetIORFromObject( myMainObj ); + else + objIOR = GEOMBase::GetIORFromObject( myInPlaceObj ); + Handle(GEOM_AISShape) aSh = GEOMBase::ConvertIORinGEOMAISShape( objIOR, isOk, true ); free( objIOR ); if ( !isOk || aSh.IsNull() ) @@ -712,21 +954,32 @@ void GroupGUI_GroupDlg::highlightSubShapes() int ii = 0, nn = myIdList->count(); for ( ; ii < nn; ii++ ) - if ( myIdList->isSelected( ii ) ) - anIds.Add( myIdList->item( ii )->text().toInt() ); - + { + if ( myIdList->item( ii )->isSelected() ) { + int id = myIdList->item( ii )->text().toInt(); + // if ( myPlaceCheckBox->isChecked() ) + if ( subSelectionWay() != ALL_SUBSHAPES ) + { + if ( myMain2InPlaceIndices.IsBound( id ) ) + id = myMain2InPlaceIndices( id ); + else { + myIdList->item( ii )->setSelected( false ); + continue; + } + } + anIds.Add( id ); + } + } SalomeApp_Application* app = myGeomGUI->getApp(); LightApp_SelectionMgr* aSelMgr = app->selectionMgr(); aSelMgr->clearSelected(); - //if (nn < 3000) aSelMgr->AddOrRemoveIndex(aSh->getIO(), anIds, false); + aSelMgr->AddOrRemoveIndex(aSh->getIO(), anIds, false); myBusy = false; - //updateState(); - if (nn < 3000) { + if (nn < 3000) updateState(); - } else { myAddBtn->setEnabled( true ); myRemBtn->setEnabled( true ); @@ -766,7 +1019,7 @@ bool GroupGUI_GroupDlg::isValid( QString& theMessage ) } QString aName (getNewObjectName()); - RETURN_WITH_MSG ( !aName.stripWhiteSpace().isEmpty(), tr( "EMPTY_NAME" ) ) + RETURN_WITH_MSG ( !aName.trimmed().isEmpty(), tr( "EMPTY_NAME" ) ) RETURN_WITH_MSG ( myIdList->count(), tr( "EMPTY_LIST" ) ) return true; @@ -778,6 +1031,8 @@ bool GroupGUI_GroupDlg::isValid( QString& theMessage ) //================================================================================= bool GroupGUI_GroupDlg::execute( ObjectList& objects ) { + setInPlaceObj( GEOM::GEOM_Object::_nil() ); + GEOM::GEOM_IGroupOperations_var anOp = GEOM::GEOM_IGroupOperations::_narrow(getOperation()); GEOM::GEOM_Object_var aGroup; @@ -816,13 +1071,13 @@ bool GroupGUI_GroupDlg::execute( ObjectList& objects ) SalomeApp_Study* study = getStudy(); if ( study ) { char* objIOR = GEOMBase::GetIORFromObject( aGroup ); - string IOR( objIOR ); + std::string IOR( objIOR ); free( objIOR ); if ( IOR != "" ) { _PTR(SObject) SO ( study->studyDS()->FindObjectIOR( IOR ) ); if ( SO ) { _PTR(StudyBuilder) aBuilder (study->studyDS()->NewBuilder()); - aBuilder->SetName( SO, getNewObjectName() ); + aBuilder->SetName( SO, getNewObjectName().toLatin1().constData() ); } } } diff --git a/src/GroupGUI/GroupGUI_GroupDlg.h b/src/GroupGUI/GroupGUI_GroupDlg.h index 98c1e604d..5edccedcd 100644 --- a/src/GroupGUI/GroupGUI_GroupDlg.h +++ b/src/GroupGUI/GroupGUI_GroupDlg.h @@ -1,41 +1,40 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2004 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : GroupGUI_GroupDlg.h +// Author : Sergey ANIKIN, Open CASCADE S.A.S. (sergey.anikin@opencascade.com) // -// File : GroupGUI_GroupDlg.h -// Author : Sergey ANIKIN -// Module : GEOM - #ifndef GROUPGUI_GROUPDLG_H #define GROUPGUI_GROUPDLG_H -#include "GEOMBase_Skeleton.h" +#include #include +#include class QGroupBox; class QLineEdit; -class QListBox; -class QRadioButton; +class QListWidget; +class QButtonGroup; //================================================================================= // class : GroupGUI_GroupDlg @@ -43,62 +42,71 @@ class QRadioButton; //================================================================================= class GroupGUI_GroupDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - typedef enum { - CreateGroup, - EditGroup - } Mode; + typedef enum { + CreateGroup, + EditGroup + } Mode; - GroupGUI_GroupDlg(Mode mode, GeometryGUI*, QWidget* parent = 0); - ~GroupGUI_GroupDlg(); + GroupGUI_GroupDlg( Mode mode, GeometryGUI*, QWidget* parent = 0 ); + ~GroupGUI_GroupDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& msg ); - virtual bool execute( ObjectList& objects ); - virtual GEOM::GEOM_Object_ptr getFather( GEOM::GEOM_Object_ptr theObj ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual GEOM::GEOM_Object_ptr getFather( GEOM::GEOM_Object_ptr ); + + void closeEvent( QCloseEvent* ); private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ConstructorsClicked( int constructorId ); - - void selectAllSubShapes(); - void add(); - void remove(); - void selectionChanged(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ConstructorsClicked( int ); + + void selectAllSubShapes(); + void add(); + void remove(); + void selectionChanged(); + +private: + void Init(); + void enterEvent( QEvent* ); + int subSelectionWay() const; + TopAbs_ShapeEnum getShapeType() const; + void setShapeType( const TopAbs_ShapeEnum ); + void activateSelection(); + void updateState(); + void highlightSubShapes(); + void onGetInPlace(); + void setInPlaceObj( GEOM::GEOM_Object_var, const bool isVisible=1); private: - void Init(); - void enterEvent( QEvent* e ); - int getConstructorId() const; - TopAbs_ShapeEnum getShapeType() const; - void setShapeType( const TopAbs_ShapeEnum ); - void activateSelection(); - void updateState(); - void highlightSubShapes(); + Mode myMode; + bool myBusy; + GEOM::GEOM_Object_var myMainObj; + GEOM::GEOM_Object_var myGroup; + GEOM::GEOM_Object_var myInPlaceObj; + int myInPlaceObjSelectState; + TColStd_DataMapOfIntegerInteger myMain2InPlaceIndices; -private: - Mode myMode; - bool myBusy; - GEOM::GEOM_Object_var myMainObj; - GEOM::GEOM_Object_var myGroup; - - QGroupBox* GroupMedium; - QPushButton* mySelBtn; - QLineEdit* myMainName; - QRadioButton* mySelSubBtn; - QPushButton* mySelAllBtn; - QPushButton* myAddBtn; - QPushButton* myRemBtn; - QListBox* myIdList; + QPushButton* mySelBtn; + QLineEdit* myMainName; + QPushButton* mySelBtn2; + QLineEdit* myShape2Name; + QGroupBox* mySelectionWayGroupBox; + QButtonGroup* mySelectionWayGroup; + QPushButton* mySelAllBtn; + QPushButton* myAddBtn; + QPushButton* myRemBtn; + QListWidget* myIdList; }; #endif diff --git a/src/GroupGUI/Makefile.am b/src/GroupGUI/Makefile.am index 101b660f7..0a93e2c4d 100755 --- a/src/GroupGUI/Makefile.am +++ b/src/GroupGUI/Makefile.am @@ -1,77 +1,75 @@ -# GEOM BUILDGUI : +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# GEOM GROUPGUI : +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : GroupGUI # -# File : Makefile.in -# Author : Sergey ANIKIN (OCC) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header: - include $(top_srcdir)/adm_local/unix/make_common_starter.am # Libraries targets lib_LTLIBRARIES = libGroupGUI.la # header files -salomeinclude_HEADERS = +salomeinclude_HEADERS = \ + GroupGUI.h \ + GroupGUI_GroupDlg.h -dist_libGroupGUI_la_SOURCES = \ - GroupGUI.cxx \ - GroupGUI_GroupDlg.cxx +dist_libGroupGUI_la_SOURCES = \ + GroupGUI.h \ + GroupGUI_GroupDlg.h \ + GroupGUI.cxx \ + GroupGUI_GroupDlg.cxx -MOC_FILES = \ - GroupGUI_moc.cxx \ +MOC_FILES = \ + GroupGUI_moc.cxx \ GroupGUI_GroupDlg_moc.cxx -nodist_libGroupGUI_la_SOURCES= \ +nodist_libGroupGUI_la_SOURCES = \ $(MOC_FILES) -# LIB_CLIENT_IDL = SALOME_GenericObj.idl SALOME_Component.idl SALOME_Exception.idl +# additional information to compile and link file -# LIB_SERVER_IDL = - -# additionnal information to compil and link file - -libGroupGUI_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(VTK_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(PYTHON_INCLUDES) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../GEOMGUI \ - -I$(srcdir)/../DlgRef \ - -I$(srcdir)/../GEOMBase \ - -I$(srcdir)/../OBJECT \ - -I$(srcdir)/../GEOMClient \ - -I$(srcdir)/../GEOMImpl \ - -I$(srcdir)/../GEOMFiltersSelection \ - -I$(top_builddir)/idl \ +libGroupGUI_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(VTK_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(PYTHON_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../GEOMGUI \ + -I$(srcdir)/../DlgRef \ + -I$(srcdir)/../GEOMBase \ + -I$(srcdir)/../OBJECT \ + -I$(srcdir)/../GEOMClient \ + -I$(srcdir)/../GEOMImpl \ + -I$(srcdir)/../GEOMFiltersSelection \ + -I$(top_builddir)/src/DlgRef \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libGroupGUI_la_LDFLAGS = \ - ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ +libGroupGUI_la_LDFLAGS = \ + ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ ../GEOMBase/libGEOMBase.la diff --git a/src/IGESExport/IGESExport.cxx b/src/IGESExport/IGESExport.cxx index e4a031650..475b41db2 100644 --- a/src/IGESExport/IGESExport.cxx +++ b/src/IGESExport/IGESExport.cxx @@ -1,27 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: IGESExport.cxx // Created: Wed May 19 14:49:45 2004 // Author: Pavel TELKOV // - +// #include "utilities.h" #include diff --git a/src/IGESExport/IGESExport.pro b/src/IGESExport/IGESExport.pro new file mode 100644 index 000000000..9e0e6b303 --- /dev/null +++ b/src/IGESExport/IGESExport.pro @@ -0,0 +1,49 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = IGESExport +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +STDLIB = -lstdc++ + +CAS_LDPATH = -L$$(CASROOT)/Linux/lib + +INCLUDEPATH += $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} + +LIBS += $${STDLIB} $${CAS_LDPATH} -lTKIGES $${KERNEL_LDFLAGS} -lSALOMELocalTrace + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += IGESEXPORT_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS + +SOURCES = IGESExport.cxx diff --git a/src/IGESExport/Makefile.am b/src/IGESExport/Makefile.am index 8eb7a855d..317442f8a 100644 --- a/src/IGESExport/Makefile.am +++ b/src/IGESExport/Makefile.am @@ -1,43 +1,45 @@ -# Copyright (C) 2003 CEA -# -# 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-2008 CEA/DEN, EDF R&D, OPEN CASCADE # +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# 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 : Pavel TELKOV # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header$ - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # Libraries targets lib_LTLIBRARIES = libIGESExport.la -dist_libIGESExport_la_SOURCES = \ +dist_libIGESExport_la_SOURCES = \ IGESExport.cxx -# additionnal information to compil and link file -libIGESExport_la_CPPFLAGS = \ - $(CAS_CPPFLAGS) \ +# additional information to compile and link file + +libIGESExport_la_CPPFLAGS = \ + $(CAS_CPPFLAGS) \ $(KERNEL_CXXFLAGS) -libIGESExport_la_LDFLAGS = \ - $(STDLIB) \ - $(CAS_LDPATH) -lTKIGES \ +libIGESExport_la_LDFLAGS = \ + $(STDLIB) \ + $(CAS_LDPATH) -lTKIGES \ $(KERNEL_LDFLAGS) -lSALOMELocalTrace diff --git a/src/IGESImport/IGESImport.cxx b/src/IGESImport/IGESImport.cxx index c5fe987ca..4830e7743 100644 --- a/src/IGESImport/IGESImport.cxx +++ b/src/IGESImport/IGESImport.cxx @@ -1,27 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: IGESImport.cxx // Created: Wed May 19 14:36:35 2004 // Author: Pavel TELKOV // - +// #include "utilities.h" #include diff --git a/src/IGESImport/IGESImport.pro b/src/IGESImport/IGESImport.pro new file mode 100644 index 000000000..33db63680 --- /dev/null +++ b/src/IGESImport/IGESImport.pro @@ -0,0 +1,49 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = IGESImport +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +STDLIB = -lstdc++ + +CAS_LDPATH = -L$$(CASROOT)/Linux/lib + +INCLUDEPATH += $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} + +LIBS += $${STDLIB} $${CAS_LDPATH} -lTKIGES $${KERNEL_LDFLAGS} -lSALOMELocalTrace + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += IGESIMPORT_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS + +SOURCES = IGESImport.cxx diff --git a/src/IGESImport/Makefile.am b/src/IGESImport/Makefile.am index 9675012eb..0252162d6 100644 --- a/src/IGESImport/Makefile.am +++ b/src/IGESImport/Makefile.am @@ -1,43 +1,45 @@ -# Copyright (C) 2003 CEA -# -# 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-2008 CEA/DEN, EDF R&D, OPEN CASCADE # +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# 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 : Pavel TELKOV # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header$ - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # Libraries targets lib_LTLIBRARIES = libIGESImport.la -dist_libIGESImport_la_SOURCES = \ +dist_libIGESImport_la_SOURCES = \ IGESImport.cxx -# additionnal information to compil and link file -libIGESImport_la_CPPFLAGS = \ - $(CAS_CPPFLAGS) \ +# additional information to compile and link file + +libIGESImport_la_CPPFLAGS = \ + $(CAS_CPPFLAGS) \ $(KERNEL_CXXFLAGS) -libIGESImport_la_LDFLAGS = \ - $(STDLIB) \ - $(CAS_LDPATH) -lTKIGES \ +libIGESImport_la_LDFLAGS = \ + $(STDLIB) \ + $(CAS_LDPATH) -lTKIGES \ $(KERNEL_LDFLAGS) -lSALOMELocalTrace diff --git a/src/Makefile.am b/src/Makefile.am index 5a9503b94..88531e27c 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1,32 +1,49 @@ -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# 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. # -# File : Makefile.am -# Author : Patrick GOLDBRONN (CEA) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header$ - -SUBDIRS = ARCHIMEDE NMTDS NMTTools GEOMAlgo SKETCHER GEOM BREPExport BREPImport IGESExport IGESImport STEPExport STEPImport STLExport ShHealOper GEOMImpl GEOM_I GEOMClient GEOM_I_Superv GEOM_SWIG +# 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.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : src (source files directory) +# +SUBDIRS = ARCHIMEDE NMTDS NMTTools GEOMAlgo SKETCHER GEOM BREPExport \ + BREPImport IGESExport IGESImport STEPExport STEPImport \ + STLExport ShHealOper GEOMImpl GEOM_I GEOMClient GEOM_I_Superv \ + GEOM_SWIG if GEOM_ENABLE_GUI - SUBDIRS+= OBJECT DlgRef GEOMFiltersSelection GEOMGUI GEOMBase GEOMToolsGUI DisplayGUI BasicGUI PrimitiveGUI GenerationGUI EntityGUI BuildGUI BooleanGUI TransformationGUI OperationGUI RepairGUI MeasureGUI GroupGUI BlocksGUI GEOM_SWIG_WITHIHM + SUBDIRS += OBJECT DlgRef GEOMFiltersSelection GEOMGUI GEOMBase GEOMToolsGUI \ + DisplayGUI BasicGUI PrimitiveGUI GenerationGUI EntityGUI BuildGUI \ + BooleanGUI TransformationGUI OperationGUI RepairGUI MeasureGUI \ + GroupGUI BlocksGUI GEOM_SWIG_WITHIHM endif + +DIST_SUBDIRS = ARCHIMEDE NMTDS NMTTools GEOMAlgo SKETCHER GEOM BREPExport \ + BREPImport IGESExport IGESImport STEPExport STEPImport STLExport \ + ShHealOper GEOMImpl GEOM_I GEOMClient GEOM_I_Superv GEOM_SWIG \ + OBJECT DlgRef GEOMFiltersSelection GEOMGUI GEOMBase GEOMToolsGUI \ + DisplayGUI BasicGUI PrimitiveGUI GenerationGUI EntityGUI \ + BuildGUI BooleanGUI TransformationGUI OperationGUI RepairGUI \ + MeasureGUI GroupGUI BlocksGUI GEOM_SWIG_WITHIHM + +####################################### +# Not used packages are listed below +####################################### +# GEOMDS NMTAlgo PARTITION diff --git a/src/MeasureGUI/GEOM_MeasureGUI.hxx b/src/MeasureGUI/GEOM_MeasureGUI.hxx deleted file mode 100755 index fd447a276..000000000 --- a/src/MeasureGUI/GEOM_MeasureGUI.hxx +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org -// -// -// -// File : GEOM_MeasureGUI.hxx -// Author : Alexander A. BORODIN -// Module : GEOM - -#ifndef _GEOM_MeasureGUI_HXX_ -#define _GEOM_MeasureGUI_HXX_ - -#ifdef WNT - #if defined MEASUREGUI_EXPORTS - #if defined WIN32 - #define GEOM_MEASUREGUI_EXPORT __declspec( dllexport ) - #else - #define GEOM_MEASUREGUI_EXPORT - #endif - #else - #if defined WIN32 - #define GEOM_MEASUREGUI_EXPORT __declspec( dllimport ) - #else - #define GEOM_MEASUREGUI_EXPORT - #endif - #endif -#else - #define GEOM_MEASUREGUI_EXPORT -#endif - -#endif diff --git a/src/MeasureGUI/Makefile.am b/src/MeasureGUI/Makefile.am index e2462292f..3e5229249 100644 --- a/src/MeasureGUI/Makefile.am +++ b/src/MeasureGUI/Makefile.am @@ -1,113 +1,124 @@ -# GEOM MEASUREGUI : +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# GEOM MEASUREGUI : +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : MeasureGUI # -# File : Makefile.in -# Author : Damien COQUERET (OCC) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header: - include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files -salomeinclude_HEADERS = +salomeinclude_HEADERS = \ + MeasureGUI.h \ + MeasureGUI_Widgets.h \ + MeasureGUI_Skeleton.h \ + MeasureGUI_PropertiesDlg.h \ + MeasureGUI_CenterMassDlg.h \ + MeasureGUI_NormaleDlg.h \ + MeasureGUI_InertiaDlg.h \ + MeasureGUI_BndBoxDlg.h \ + MeasureGUI_DistanceDlg.h \ + MeasureGUI_AngleDlg.h \ + MeasureGUI_MaxToleranceDlg.h \ + MeasureGUI_WhatisDlg.h \ + MeasureGUI_CheckShapeDlg.h \ + MeasureGUI_CheckCompoundOfBlocksDlg.h \ + MeasureGUI_PointDlg.h # Libraries targets lib_LTLIBRARIES = libMeasureGUI.la -dist_libMeasureGUI_la_SOURCES = \ - MeasureGUI.cxx \ - MeasureGUI_Skeleton_QTD.cxx \ - MeasureGUI_1Sel3LineEdit_QTD.cxx \ - MeasureGUI_1Sel6LineEdit_QTD.cxx \ - MeasureGUI_1Sel12LineEdit_QTD.cxx \ - MeasureGUI_1Sel1TextView_QTD.cxx \ - MeasureGUI_2Sel1LineEdit_QTD.cxx \ - MeasureGUI_2Sel4LineEdit_QTD.cxx \ - MeasureGUI_Skeleton.cxx \ - MeasureGUI_PropertiesDlg.cxx \ - MeasureGUI_CenterMassDlg.cxx \ - MeasureGUI_NormaleDlg.cxx \ - MeasureGUI_InertiaDlg.cxx \ - MeasureGUI_BndBoxDlg.cxx \ - MeasureGUI_DistanceDlg.cxx \ - MeasureGUI_AngleDlg.cxx \ - MeasureGUI_MaxToleranceDlg.cxx \ - MeasureGUI_WhatisDlg.cxx \ - MeasureGUI_CheckShapeDlg.cxx \ +dist_libMeasureGUI_la_SOURCES = \ + MeasureGUI.cxx \ + MeasureGUI_Widgets.cxx \ + MeasureGUI_Skeleton.cxx \ + MeasureGUI_PropertiesDlg.cxx \ + MeasureGUI_CenterMassDlg.cxx \ + MeasureGUI_NormaleDlg.cxx \ + MeasureGUI_InertiaDlg.cxx \ + MeasureGUI_BndBoxDlg.cxx \ + MeasureGUI_DistanceDlg.cxx \ + MeasureGUI_AngleDlg.cxx \ + MeasureGUI_MaxToleranceDlg.cxx \ + MeasureGUI_WhatisDlg.cxx \ + MeasureGUI_CheckShapeDlg.cxx \ MeasureGUI_CheckCompoundOfBlocksDlg.cxx \ MeasureGUI_PointDlg.cxx -MOC_FILES = \ - MeasureGUI_Skeleton_QTD_moc.cxx \ - MeasureGUI_1Sel3LineEdit_QTD_moc.cxx \ - MeasureGUI_1Sel6LineEdit_QTD_moc.cxx \ - MeasureGUI_1Sel12LineEdit_QTD_moc.cxx \ - MeasureGUI_1Sel1TextView_QTD_moc.cxx \ - MeasureGUI_2Sel1LineEdit_QTD_moc.cxx \ - MeasureGUI_2Sel4LineEdit_QTD_moc.cxx \ - MeasureGUI_Skeleton_moc.cxx \ - MeasureGUI_PropertiesDlg_moc.cxx \ - MeasureGUI_CenterMassDlg_moc.cxx \ - MeasureGUI_NormaleDlg_moc.cxx \ - MeasureGUI_InertiaDlg_moc.cxx \ - MeasureGUI_BndBoxDlg_moc.cxx \ - MeasureGUI_DistanceDlg_moc.cxx \ - MeasureGUI_AngleDlg_moc.cxx \ - MeasureGUI_MaxToleranceDlg_moc.cxx \ - MeasureGUI_WhatisDlg_moc.cxx \ - MeasureGUI_CheckShapeDlg_moc.cxx \ - MeasureGUI_CheckCompoundOfBlocksDlg_moc.cxx \ - MeasureGUI_PointDlg_moc.cxx +MOC_FILES = \ + MeasureGUI_Widgets_moc.cxx \ + MeasureGUI_Skeleton_moc.cxx \ + MeasureGUI_PropertiesDlg_moc.cxx \ + MeasureGUI_CenterMassDlg_moc.cxx \ + MeasureGUI_NormaleDlg_moc.cxx \ + MeasureGUI_InertiaDlg_moc.cxx \ + MeasureGUI_BndBoxDlg_moc.cxx \ + MeasureGUI_DistanceDlg_moc.cxx \ + MeasureGUI_AngleDlg_moc.cxx \ + MeasureGUI_MaxToleranceDlg_moc.cxx \ + MeasureGUI_WhatisDlg_moc.cxx \ + MeasureGUI_CheckShapeDlg_moc.cxx \ + MeasureGUI_CheckCompoundOfBlocksDlg_moc.cxx \ + MeasureGUI_PointDlg_moc.cxx -nodist_libMeasureGUI_la_SOURCES= \ +nodist_libMeasureGUI_la_SOURCES = \ $(MOC_FILES) -#LIB_CLIENT_IDL = SALOME_Exception.idl SALOME_GenericObj.idl SALOME_Component.idl +UIC_FILES = \ + ui_MeasureGUI_1Sel12LineEdit_QTD.h \ + ui_MeasureGUI_1Sel1TextView1Check_QTD.h \ + ui_MeasureGUI_1Sel1TextView2ListBox_QTD.h \ + ui_MeasureGUI_1Sel1TextView_QTD.h \ + ui_MeasureGUI_1Sel3LineEdit_QTD.h \ + ui_MeasureGUI_1Sel6LineEdit_QTD.h \ + ui_MeasureGUI_2Sel1LineEdit_QTD.h \ + ui_MeasureGUI_2Sel4LineEdit_QTD.h \ + ui_MeasureGUI_SkeletonBox_QTD.h -#LIB_SERVER_IDL = +BUILT_SOURCES = $(UIC_FILES) -# additionnal information to compil and link file +# additional information to compile and link file -libMeasureGUI_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(VTK_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(PYTHON_INCLUDES) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../GEOMGUI \ - -I$(srcdir)/../DlgRef \ - -I$(srcdir)/../GEOMBase \ - -I$(srcdir)/../OBJECT \ - -I$(srcdir)/../GEOMClient \ - -I$(srcdir)/../GEOMImpl \ - -I$(top_builddir)/idl \ +libMeasureGUI_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(VTK_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(PYTHON_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../GEOMGUI \ + -I$(srcdir)/../DlgRef \ + -I$(srcdir)/../GEOMBase \ + -I$(srcdir)/../OBJECT \ + -I$(srcdir)/../GEOMClient \ + -I$(srcdir)/../GEOMImpl \ + -I$(srcdir)/../GEOM \ + -I$(top_builddir)/src/DlgRef \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libMeasureGUI_la_LDFLAGS = \ +libMeasureGUI_la_LDFLAGS = \ ../GEOMBase/libGEOMBase.la diff --git a/src/MeasureGUI/MeasureGUI.cxx b/src/MeasureGUI/MeasureGUI.cxx index 84571cf76..a240d7562 100644 --- a/src/MeasureGUI/MeasureGUI.cxx +++ b/src/MeasureGUI/MeasureGUI.cxx @@ -1,37 +1,33 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : MeasureGUI.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "MeasureGUI.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Tools.h" -#include "SalomeApp_Application.h" +#include +#include +#include #include "MeasureGUI_PropertiesDlg.h" // Method PROPERTIES #include "MeasureGUI_CenterMassDlg.h" // Method CENTER MASS @@ -46,6 +42,8 @@ #include "MeasureGUI_CheckCompoundOfBlocksDlg.h" // Method CHECKCOMPOUND #include "MeasureGUI_PointDlg.h" // Method POINTCOORDINATES +#include + //======================================================================= // function : MeasureGUI() // purpose : Constructor @@ -74,24 +72,52 @@ bool MeasureGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) getGeometryGUI()->EmitSignalDeactivateDialog(); - switch ( theCommandID ) - { - case 701 : new MeasureGUI_PropertiesDlg (getGeometryGUI(), parent); break; // LENGTH, AREA AND VOLUME - case 702 : new MeasureGUI_CenterMassDlg (getGeometryGUI(), parent); break; // CENTER MASS - case 703 : new MeasureGUI_InertiaDlg (getGeometryGUI(), parent); break; // INERTIA - case 704 : new MeasureGUI_NormaleDlg (getGeometryGUI(), parent); break; // NORMALE - case 7041: new MeasureGUI_BndBoxDlg (getGeometryGUI(), parent); break; // BOUNDING BOX - case 7042: new MeasureGUI_DistanceDlg (getGeometryGUI(), parent); break; // MIN DISTANCE - case 7043: new MeasureGUI_AngleDlg (getGeometryGUI(), parent); break; // ANGLE - case 705 : new MeasureGUI_MaxToleranceDlg(getGeometryGUI(), parent); break; // MAXTOLERANCE - case 706 : new MeasureGUI_WhatisDlg (getGeometryGUI(), parent); break; // WHATIS - case 707 : new MeasureGUI_CheckShapeDlg (getGeometryGUI(), parent); break; // CHECKSHAPE - case 7072: new MeasureGUI_CheckCompoundOfBlocksDlg (getGeometryGUI(), parent); break; // CHECKCOMPOUND - case 708 : new MeasureGUI_PointDlg (getGeometryGUI(), parent); break; // POINT COORDINATES - - default: - app->putInfo( tr( "GEOM_PRP_COMMAND" ).arg( theCommandID ) ); - break; + QDialog* dlg = 0; + switch ( theCommandID ) { + case 701: + dlg = new MeasureGUI_PropertiesDlg( getGeometryGUI(), parent ); + break; // LENGTH, AREA AND VOLUME + case 702: + dlg = new MeasureGUI_CenterMassDlg( getGeometryGUI(), parent ); + break; // CENTER MASS + case 703: + dlg = new MeasureGUI_InertiaDlg( getGeometryGUI(), parent ); + break; // INERTIA + case 704 : + dlg = new MeasureGUI_NormaleDlg( getGeometryGUI(), parent ); + break; // NORMALE + case 7041: + dlg = new MeasureGUI_BndBoxDlg( getGeometryGUI(), parent ); + break; // BOUNDING BOX + case 7042: + dlg = new MeasureGUI_DistanceDlg( getGeometryGUI(), parent ); + break; // MIN DISTANCE + case 7043: + dlg = new MeasureGUI_AngleDlg( getGeometryGUI(), parent ); + break; // ANGLE + case 705: + dlg = new MeasureGUI_MaxToleranceDlg( getGeometryGUI(), parent ); + break; // MAXTOLERANCE + case 706: + dlg = new MeasureGUI_WhatisDlg( getGeometryGUI(), parent ); + break; // WHATIS + case 707: + dlg = new MeasureGUI_CheckShapeDlg( getGeometryGUI(), parent ); + break; // CHECKSHAPE + case 7072: + dlg = new MeasureGUI_CheckCompoundOfBlocksDlg( getGeometryGUI(), parent ); + break; // CHECKCOMPOUND + case 708: + dlg = new MeasureGUI_PointDlg( getGeometryGUI(), parent ); + break; // POINT COORDINATES + default: + app->putInfo( tr( "GEOM_PRP_COMMAND" ).arg( theCommandID ) ); + break; + } + if ( dlg ) { + dlg->updateGeometry(); + dlg->resize( dlg->minimumSizeHint() ); + dlg->show(); } return true; } @@ -102,7 +128,9 @@ bool MeasureGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) //===================================================================================== extern "C" { -GEOM_MEASUREGUI_EXPORT +#ifdef WIN32 + __declspec( dllexport ) +#endif GEOMGUI* GetLibGUI( GeometryGUI* parent ) { return new MeasureGUI( parent ); diff --git a/src/MeasureGUI/MeasureGUI.h b/src/MeasureGUI/MeasureGUI.h index 295c3a742..71d34a71b 100644 --- a/src/MeasureGUI/MeasureGUI.h +++ b/src/MeasureGUI/MeasureGUI.h @@ -1,48 +1,44 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI.h +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : MeasureGUI.h -// Author : Damien COQUERET -// Module : GEOM - #ifndef MEASUREGUI_H #define MEASUREGUI_H -#include "GEOM_MeasureGUI.hxx" - -#include "GEOMGUI.h" +#include //================================================================================= // class : MeasureGUI // purpose : //================================================================================= -class GEOM_MEASUREGUI_EXPORT MeasureGUI : public GEOMGUI +class MeasureGUI : public GEOMGUI { public: - MeasureGUI( GeometryGUI* parent ); + MeasureGUI( GeometryGUI* ); ~MeasureGUI(); - bool OnGUIEvent( int , SUIT_Desktop* ); + bool OnGUIEvent( int, SUIT_Desktop* ); }; -#endif +#endif // MEASUREGUI_H diff --git a/src/MeasureGUI/MeasureGUI_1Sel12LineEdit_QTD.cxx b/src/MeasureGUI/MeasureGUI_1Sel12LineEdit_QTD.cxx deleted file mode 100644 index a8c11caf8..000000000 --- a/src/MeasureGUI/MeasureGUI_1Sel12LineEdit_QTD.cxx +++ /dev/null @@ -1,169 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'MeasureGUI_1Sel12LineEdit_QTD.ui' -** -** Created: mar oct 28 16:11:14 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "MeasureGUI_1Sel12LineEdit_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a MeasureGUI_1Sel12LineEdit_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -MeasureGUI_1Sel12LineEdit_QTD::MeasureGUI_1Sel12LineEdit_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "MeasureGUI_1Sel12LineEdit_QTD" ); - resize( 131, 171 ); - setCaption( trUtf8( "MeasureGUI_1Sel12LineEdit_QTD" ) ); - MeasureGUI_1Sel12LineEdit_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "MeasureGUI_1Sel12LineEdit_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)7, 0, 0, GroupBox1->sizePolicy().hasHeightForWidth() ) ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - LineEdit12 = new QLineEdit( GroupBox1, "LineEdit12" ); - - Layout2->addWidget( LineEdit12, 0, 2 ); - - LineEdit11 = new QLineEdit( GroupBox1, "LineEdit11" ); - - Layout2->addWidget( LineEdit11, 0, 1 ); - - LineEdit42 = new QLineEdit( GroupBox1, "LineEdit42" ); - - Layout2->addWidget( LineEdit42, 3, 2 ); - - TextLabel5 = new QLabel( GroupBox1, "TextLabel5" ); - TextLabel5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel5->sizePolicy().hasHeightForWidth() ) ); - TextLabel5->setText( trUtf8( "TL5" ) ); - - Layout2->addWidget( TextLabel5, 3, 0 ); - - LineEdit31 = new QLineEdit( GroupBox1, "LineEdit31" ); - - Layout2->addWidget( LineEdit31, 2, 1 ); - - LineEdit41 = new QLineEdit( GroupBox1, "LineEdit41" ); - - Layout2->addWidget( LineEdit41, 3, 1 ); - - LineEdit23 = new QLineEdit( GroupBox1, "LineEdit23" ); - - Layout2->addWidget( LineEdit23, 1, 3 ); - - LineEdit33 = new QLineEdit( GroupBox1, "LineEdit33" ); - - Layout2->addWidget( LineEdit33, 2, 3 ); - - LineEdit43 = new QLineEdit( GroupBox1, "LineEdit43" ); - - Layout2->addWidget( LineEdit43, 3, 3 ); - - LineEdit22 = new QLineEdit( GroupBox1, "LineEdit22" ); - - Layout2->addWidget( LineEdit22, 1, 2 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout2->addWidget( TextLabel2, 0, 0 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - TextLabel4->setText( trUtf8( "TL4" ) ); - - Layout2->addWidget( TextLabel4, 2, 0 ); - - LineEdit13 = new QLineEdit( GroupBox1, "LineEdit13" ); - - Layout2->addWidget( LineEdit13, 0, 3 ); - - LineEdit32 = new QLineEdit( GroupBox1, "LineEdit32" ); - - Layout2->addWidget( LineEdit32, 2, 2 ); - - LineEdit21 = new QLineEdit( GroupBox1, "LineEdit21" ); - - Layout2->addWidget( LineEdit21, 1, 1 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout2->addWidget( TextLabel3, 1, 0 ); - - Layout1->addMultiCellLayout( Layout2, 1, 1, 0, 2 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - QSpacerItem* spacer = new QSpacerItem( 0, 40, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 2, 2 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - MeasureGUI_1Sel12LineEdit_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -MeasureGUI_1Sel12LineEdit_QTD::~MeasureGUI_1Sel12LineEdit_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/MeasureGUI/MeasureGUI_1Sel12LineEdit_QTD.h b/src/MeasureGUI/MeasureGUI_1Sel12LineEdit_QTD.h deleted file mode 100644 index 92462c9bb..000000000 --- a/src/MeasureGUI/MeasureGUI_1Sel12LineEdit_QTD.h +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'MeasureGUI_1Sel12LineEdit_QTD.ui' -** -** Created: mar oct 28 16:11:14 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef MEASUREGUI_1SEL12LINEEDIT_QTD_H -#define MEASUREGUI_1SEL12LINEEDIT_QTD_H - -#include "GEOM_MeasureGUI.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; - -class GEOM_MEASUREGUI_EXPORT MeasureGUI_1Sel12LineEdit_QTD : public QWidget -{ - Q_OBJECT - -public: - MeasureGUI_1Sel12LineEdit_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~MeasureGUI_1Sel12LineEdit_QTD(); - - QGroupBox* GroupBox1; - QLineEdit* LineEdit12; - QLineEdit* LineEdit11; - QLineEdit* LineEdit42; - QLabel* TextLabel5; - QLineEdit* LineEdit31; - QLineEdit* LineEdit41; - QLineEdit* LineEdit23; - QLineEdit* LineEdit33; - QLineEdit* LineEdit43; - QLineEdit* LineEdit22; - QLabel* TextLabel2; - QLabel* TextLabel4; - QLineEdit* LineEdit13; - QLineEdit* LineEdit32; - QLineEdit* LineEdit21; - QLabel* TextLabel3; - QLineEdit* LineEdit1; - QPushButton* PushButton1; - QLabel* TextLabel1; - - -protected: - QGridLayout* MeasureGUI_1Sel12LineEdit_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; - QGridLayout* Layout2; -}; - -#endif // MEASUREGUI_1SEL12LINEEDIT_QTD_H diff --git a/src/MeasureGUI/MeasureGUI_1Sel12LineEdit_QTD.ui b/src/MeasureGUI/MeasureGUI_1Sel12LineEdit_QTD.ui new file mode 100644 index 000000000..7ad9f5cda --- /dev/null +++ b/src/MeasureGUI/MeasureGUI_1Sel12LineEdit_QTD.ui @@ -0,0 +1,197 @@ + + MeasureGUI_1Sel12LineEdit_QTD + + + + 0 + 0 + 196 + 162 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + 250 + 0 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + + + + + + TL2 + + + + + + + + + + TL4 + + + + + + + + + + + + + + + + + + + + + + + + + TL5 + + + + + + + + + + + + + + + + TL3 + + + + + + + + + TL1 + + + + + + + + 0 + 0 + + + + + + + + + + + + + + PushButton1 + LineEdit1 + LineEdit11 + LineEdit12 + LineEdit13 + LineEdit21 + LineEdit22 + LineEdit23 + LineEdit31 + LineEdit32 + LineEdit33 + LineEdit41 + LineEdit42 + LineEdit43 + + + + diff --git a/src/MeasureGUI/MeasureGUI_1Sel1TextView1Check_QTD.ui b/src/MeasureGUI/MeasureGUI_1Sel1TextView1Check_QTD.ui new file mode 100644 index 000000000..3070500a8 --- /dev/null +++ b/src/MeasureGUI/MeasureGUI_1Sel1TextView1Check_QTD.ui @@ -0,0 +1,92 @@ + + MeasureGUI_1Sel1TextView1Check_QTD + + + + 0 + 0 + 322 + 253 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + + + + + + TL1 + + + + + + + + 0 + 0 + + + + + + + + + + + + + + + 300 + 0 + + + + + + + + Check also geometry + + + + + + + + + + PushButton1 + LineEdit1 + TextView1 + + + + diff --git a/src/MeasureGUI/MeasureGUI_1Sel1TextView2ListBox_QTD.ui b/src/MeasureGUI/MeasureGUI_1Sel1TextView2ListBox_QTD.ui new file mode 100644 index 000000000..eb01d0230 --- /dev/null +++ b/src/MeasureGUI/MeasureGUI_1Sel1TextView2ListBox_QTD.ui @@ -0,0 +1,123 @@ + + MeasureGUI_1Sel1TextView2ListBox_QTD + + + + 0 + 0 + 235 + 274 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + + + + + + + 100 + 0 + + + + + + + + + + + TL2 + + + + + + + TL3 + + + + + + + TL1 + + + + + + + + 0 + 0 + + + + + + + + + + + + + + PushButton1 + LineEdit1 + TextView1 + + + + diff --git a/src/MeasureGUI/MeasureGUI_1Sel1TextView_QTD.cxx b/src/MeasureGUI/MeasureGUI_1Sel1TextView_QTD.cxx deleted file mode 100644 index c812dad43..000000000 --- a/src/MeasureGUI/MeasureGUI_1Sel1TextView_QTD.cxx +++ /dev/null @@ -1,96 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'MeasureGUI_1Sel1TextView_QTD.ui' -** -** Created: mar oct 28 14:01:15 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "MeasureGUI_1Sel1TextView_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a MeasureGUI_1Sel1TextView_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -MeasureGUI_1Sel1TextView_QTD::MeasureGUI_1Sel1TextView_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "MeasureGUI_1Sel1TextView_QTD" ); - resize( 130, 160 ); - setCaption( trUtf8( "MeasureGUI_1Sel1TextView_QTD" ) ); - MeasureGUI_1Sel1TextView_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "MeasureGUI_1Sel1TextView_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)7, 0, 0, GroupBox1->sizePolicy().hasHeightForWidth() ) ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - TextEdit1 = new QTextEdit( GroupBox1, "TextEdit1" ); - - Layout1->addMultiCellWidget( TextEdit1, 1, 1, 0, 2 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - MeasureGUI_1Sel1TextView_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -MeasureGUI_1Sel1TextView_QTD::~MeasureGUI_1Sel1TextView_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/MeasureGUI/MeasureGUI_1Sel1TextView_QTD.h b/src/MeasureGUI/MeasureGUI_1Sel1TextView_QTD.h deleted file mode 100644 index 749da70fb..000000000 --- a/src/MeasureGUI/MeasureGUI_1Sel1TextView_QTD.h +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'MeasureGUI_1Sel1TextView_QTD.ui' -** -** Created: mar oct 28 14:01:14 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef MEASUREGUI_1SEL1TEXTVIEW_QTD_H -#define MEASUREGUI_1SEL1TEXTVIEW_QTD_H - -#include "GEOM_MeasureGUI.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; -class QTextEdit; - -class GEOM_MEASUREGUI_EXPORT MeasureGUI_1Sel1TextView_QTD : public QWidget -{ - Q_OBJECT - -public: - MeasureGUI_1Sel1TextView_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~MeasureGUI_1Sel1TextView_QTD(); - - QGroupBox* GroupBox1; - QLabel* TextLabel1; - QTextEdit* TextEdit1; - QLineEdit* LineEdit1; - QPushButton* PushButton1; - - -protected: - QGridLayout* MeasureGUI_1Sel1TextView_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; -}; - -#endif // MEASUREGUI_1SEL1TEXTVIEW_QTD_H diff --git a/src/MeasureGUI/MeasureGUI_1Sel1TextView_QTD.ui b/src/MeasureGUI/MeasureGUI_1Sel1TextView_QTD.ui new file mode 100644 index 000000000..a5849b6ce --- /dev/null +++ b/src/MeasureGUI/MeasureGUI_1Sel1TextView_QTD.ui @@ -0,0 +1,103 @@ + + MeasureGUI_1Sel1TextView_QTD + + + + 0 + 0 + 196 + 148 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + 100 + 0 + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + TL1 + + + + + + + + + + PushButton1 + LineEdit1 + TextView1 + + + + diff --git a/src/MeasureGUI/MeasureGUI_1Sel3LineEdit_QTD.cxx b/src/MeasureGUI/MeasureGUI_1Sel3LineEdit_QTD.cxx deleted file mode 100644 index fe73bf13e..000000000 --- a/src/MeasureGUI/MeasureGUI_1Sel3LineEdit_QTD.cxx +++ /dev/null @@ -1,123 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'MeasureGUI_1Sel3LineEdit_QTD.ui' -** -** Created: mar oct 28 16:11:13 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "MeasureGUI_1Sel3LineEdit_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a MeasureGUI_1Sel3LineEdit_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -MeasureGUI_1Sel3LineEdit_QTD::MeasureGUI_1Sel3LineEdit_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "MeasureGUI_1Sel3LineEdit_QTD" ); - resize( 129, 141 ); - setCaption( trUtf8( "MeasureGUI_1Sel3LineEdit_QTD" ) ); - MeasureGUI_1Sel3LineEdit_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "MeasureGUI_1Sel3LineEdit_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)7, 0, 0, GroupBox1->sizePolicy().hasHeightForWidth() ) ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout2->addWidget( TextLabel1, 0, 0 ); - - LineEdit4 = new QLineEdit( GroupBox1, "LineEdit4" ); - - Layout2->addMultiCellWidget( LineEdit4, 3, 3, 1, 2 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout2->addWidget( TextLabel3, 2, 0 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout2->addMultiCellWidget( LineEdit2, 1, 1, 1, 2 ); - QSpacerItem* spacer = new QSpacerItem( 0, 80, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout2->addItem( spacer, 4, 2 ); - - LineEdit3 = new QLineEdit( GroupBox1, "LineEdit3" ); - - Layout2->addMultiCellWidget( LineEdit3, 2, 2, 1, 2 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout2->addWidget( LineEdit1, 0, 2 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - TextLabel4->setText( trUtf8( "TL4" ) ); - - Layout2->addWidget( TextLabel4, 3, 0 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout2->addWidget( TextLabel2, 1, 0 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout2->addWidget( PushButton1, 0, 1 ); - - GroupBox1Layout->addLayout( Layout2, 0, 0 ); - - MeasureGUI_1Sel3LineEdit_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -MeasureGUI_1Sel3LineEdit_QTD::~MeasureGUI_1Sel3LineEdit_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/MeasureGUI/MeasureGUI_1Sel3LineEdit_QTD.h b/src/MeasureGUI/MeasureGUI_1Sel3LineEdit_QTD.h deleted file mode 100644 index 5bd97c8f9..000000000 --- a/src/MeasureGUI/MeasureGUI_1Sel3LineEdit_QTD.h +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'MeasureGUI_1Sel3LineEdit_QTD.ui' -** -** Created: mar oct 28 16:11:13 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef MEASUREGUI_1SEL3LINEEDIT_QTD_H -#define MEASUREGUI_1SEL3LINEEDIT_QTD_H - -#include "GEOM_MeasureGUI.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; - -class GEOM_MEASUREGUI_EXPORT MeasureGUI_1Sel3LineEdit_QTD : public QWidget -{ - Q_OBJECT - -public: - MeasureGUI_1Sel3LineEdit_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~MeasureGUI_1Sel3LineEdit_QTD(); - - QGroupBox* GroupBox1; - QLabel* TextLabel1; - QLineEdit* LineEdit4; - QLabel* TextLabel3; - QLineEdit* LineEdit2; - QLineEdit* LineEdit3; - QLineEdit* LineEdit1; - QLabel* TextLabel4; - QLabel* TextLabel2; - QPushButton* PushButton1; - - -protected: - QGridLayout* MeasureGUI_1Sel3LineEdit_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout2; -}; - -#endif // MEASUREGUI_1SEL3LINEEDIT_QTD_H diff --git a/src/MeasureGUI/MeasureGUI_1Sel3LineEdit_QTD.ui b/src/MeasureGUI/MeasureGUI_1Sel3LineEdit_QTD.ui new file mode 100644 index 000000000..020dc0ae5 --- /dev/null +++ b/src/MeasureGUI/MeasureGUI_1Sel3LineEdit_QTD.ui @@ -0,0 +1,132 @@ + + MeasureGUI_1Sel3LineEdit_QTD + + + + 0 + 0 + 196 + 132 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + + + + + + + + + TL3 + + + + + + + TL4 + + + + + + + TL2 + + + + + + + + 0 + 0 + + + + + + + + + + + TL1 + + + + + + + + 100 + 0 + + + + + + + + + + + PushButton1 + LineEdit1 + LineEdit2 + LineEdit3 + LineEdit4 + + + + diff --git a/src/MeasureGUI/MeasureGUI_1Sel6LineEdit_QTD.cxx b/src/MeasureGUI/MeasureGUI_1Sel6LineEdit_QTD.cxx deleted file mode 100644 index 88629b699..000000000 --- a/src/MeasureGUI/MeasureGUI_1Sel6LineEdit_QTD.cxx +++ /dev/null @@ -1,151 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'MeasureGUI_1Sel6LineEdit_QTD.ui' -** -** Created: mar oct 28 16:11:14 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#include "MeasureGUI_1Sel6LineEdit_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a MeasureGUI_1Sel6LineEdit_QTD which is a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -MeasureGUI_1Sel6LineEdit_QTD::MeasureGUI_1Sel6LineEdit_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "MeasureGUI_1Sel6LineEdit_QTD" ); - resize( 129, 163 ); - setCaption( trUtf8( "MeasureGUI_1Sel6LineEdit_QTD" ) ); - MeasureGUI_1Sel6LineEdit_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "MeasureGUI_1Sel6LineEdit_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)7, 0, 0, GroupBox1->sizePolicy().hasHeightForWidth() ) ); - GroupBox1->setTitle( trUtf8( "" ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - QSpacerItem* spacer = new QSpacerItem( 0, 50, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( spacer, 2, 2 ); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - TextLabel1->setText( trUtf8( "TL1" ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - - LineEdit22 = new QLineEdit( GroupBox1, "LineEdit22" ); - - Layout2->addWidget( LineEdit22, 2, 2 ); - - LineEdit32 = new QLineEdit( GroupBox1, "LineEdit32" ); - - Layout2->addWidget( LineEdit32, 3, 2 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - TextLabel4->setText( trUtf8( "TL4" ) ); - - Layout2->addWidget( TextLabel4, 1, 0 ); - - LineEdit31 = new QLineEdit( GroupBox1, "LineEdit31" ); - - Layout2->addWidget( LineEdit31, 3, 1 ); - - TextLabel5 = new QLabel( GroupBox1, "TextLabel5" ); - TextLabel5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel5->sizePolicy().hasHeightForWidth() ) ); - TextLabel5->setText( trUtf8( "TL5" ) ); - - Layout2->addWidget( TextLabel5, 2, 0 ); - - LineEdit11 = new QLineEdit( GroupBox1, "LineEdit11" ); - - Layout2->addWidget( LineEdit11, 1, 1 ); - - TextLabel6 = new QLabel( GroupBox1, "TextLabel6" ); - TextLabel6->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel6->sizePolicy().hasHeightForWidth() ) ); - TextLabel6->setText( trUtf8( "TL6" ) ); - - Layout2->addWidget( TextLabel6, 3, 0 ); - - LineEdit12 = new QLineEdit( GroupBox1, "LineEdit12" ); - - Layout2->addWidget( LineEdit12, 1, 2 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - TextLabel2->setText( trUtf8( "TL2" ) ); - - Layout2->addWidget( TextLabel2, 0, 1 ); - - LineEdit21 = new QLineEdit( GroupBox1, "LineEdit21" ); - - Layout2->addWidget( LineEdit21, 2, 1 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - TextLabel3->setText( trUtf8( "TL3" ) ); - - Layout2->addWidget( TextLabel3, 0, 2 ); - - Layout1->addMultiCellLayout( Layout2, 1, 1, 0, 2 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - PushButton1->setText( trUtf8( "" ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - MeasureGUI_1Sel6LineEdit_QTDLayout->addWidget( GroupBox1, 0, 0 ); -} - -/* - * Destroys the object and frees any allocated resources - */ -MeasureGUI_1Sel6LineEdit_QTD::~MeasureGUI_1Sel6LineEdit_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - diff --git a/src/MeasureGUI/MeasureGUI_1Sel6LineEdit_QTD.h b/src/MeasureGUI/MeasureGUI_1Sel6LineEdit_QTD.h deleted file mode 100644 index 6805664ea..000000000 --- a/src/MeasureGUI/MeasureGUI_1Sel6LineEdit_QTD.h +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'MeasureGUI_1Sel6LineEdit_QTD.ui' -** -** Created: mar oct 28 16:11:13 2003 -** by: The User Interface Compiler (uic) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ -#ifndef MEASUREGUI_1SEL6LINEEDIT_QTD_H -#define MEASUREGUI_1SEL6LINEEDIT_QTD_H - -#include "GEOM_MeasureGUI.hxx" - -#include -#include -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QGroupBox; -class QLabel; -class QLineEdit; -class QPushButton; - -class GEOM_MEASUREGUI_EXPORT MeasureGUI_1Sel6LineEdit_QTD : public QWidget -{ - Q_OBJECT - -public: - MeasureGUI_1Sel6LineEdit_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~MeasureGUI_1Sel6LineEdit_QTD(); - - QGroupBox* GroupBox1; - QLabel* TextLabel1; - QLineEdit* LineEdit22; - QLineEdit* LineEdit32; - QLabel* TextLabel4; - QLineEdit* LineEdit31; - QLabel* TextLabel5; - QLineEdit* LineEdit11; - QLabel* TextLabel6; - QLineEdit* LineEdit12; - QLabel* TextLabel2; - QLineEdit* LineEdit21; - QLabel* TextLabel3; - QPushButton* PushButton1; - QLineEdit* LineEdit1; - - -protected: - QGridLayout* MeasureGUI_1Sel6LineEdit_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; - QGridLayout* Layout2; -}; - -#endif // MEASUREGUI_1SEL6LINEEDIT_QTD_H diff --git a/src/MeasureGUI/MeasureGUI_1Sel6LineEdit_QTD.ui b/src/MeasureGUI/MeasureGUI_1Sel6LineEdit_QTD.ui new file mode 100644 index 000000000..8b05a517d --- /dev/null +++ b/src/MeasureGUI/MeasureGUI_1Sel6LineEdit_QTD.ui @@ -0,0 +1,180 @@ + + MeasureGUI_1Sel6LineEdit_QTD + + + + 0 + 0 + 196 + 160 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + + + + + + TL2 + + + + + + + + + + + + + + + + TL4 + + + + + + + TL3 + + + + + + + TL6 + + + + + + + TL5 + + + + + + + + + + + + + 0 + 0 + + + + + + + + + + + TL1 + + + + + + + + 100 + 0 + + + + + + + + + + + PushButton1 + LineEdit1 + LineEdit11 + LineEdit12 + LineEdit21 + LineEdit22 + LineEdit31 + LineEdit32 + + + + diff --git a/src/MeasureGUI/MeasureGUI_2Sel1LineEdit_QTD.cxx b/src/MeasureGUI/MeasureGUI_2Sel1LineEdit_QTD.cxx deleted file mode 100644 index ad4fba90b..000000000 --- a/src/MeasureGUI/MeasureGUI_2Sel1LineEdit_QTD.cxx +++ /dev/null @@ -1,104 +0,0 @@ -/**************************************************************************** -** Form implementation generated from reading ui file 'MeasureGUI_2Sel1LineEdit_QTD.ui' -** -** Created: Tue Oct 9 14:45:59 2007 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#include "MeasureGUI_2Sel1LineEdit_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a MeasureGUI_2Sel1LineEdit_QTD as a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -MeasureGUI_2Sel1LineEdit_QTD::MeasureGUI_2Sel1LineEdit_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "MeasureGUI_2Sel1LineEdit_QTD" ); - MeasureGUI_2Sel1LineEdit_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "MeasureGUI_2Sel1LineEdit_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)7, 0, 0, GroupBox1->sizePolicy().hasHeightForWidth() ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addWidget( LineEdit2, 1, 2 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel3, 2, 0 ); - - LineEdit3 = new QLineEdit( GroupBox1, "LineEdit3" ); - - Layout1->addMultiCellWidget( LineEdit3, 2, 2, 1, 2 ); - Spacer8 = new QSpacerItem( 0, 60, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( Spacer8, 3, 2 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - MeasureGUI_2Sel1LineEdit_QTDLayout->addWidget( GroupBox1, 0, 0 ); - languageChange(); - resize( QSize(129, 115).expandedTo(minimumSizeHint()) ); - clearWState( WState_Polished ); -} - -/* - * Destroys the object and frees any allocated resources - */ -MeasureGUI_2Sel1LineEdit_QTD::~MeasureGUI_2Sel1LineEdit_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - -/* - * Sets the strings of the subwidgets using the current - * language. - */ -void MeasureGUI_2Sel1LineEdit_QTD::languageChange() -{ -} - diff --git a/src/MeasureGUI/MeasureGUI_2Sel1LineEdit_QTD.h b/src/MeasureGUI/MeasureGUI_2Sel1LineEdit_QTD.h deleted file mode 100644 index d0adf8e7b..000000000 --- a/src/MeasureGUI/MeasureGUI_2Sel1LineEdit_QTD.h +++ /dev/null @@ -1,56 +0,0 @@ -/**************************************************************************** -** Form interface generated from reading ui file 'MeasureGUI_2Sel1LineEdit_QTD.ui' -** -** Created: Tue Oct 9 14:45:55 2007 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#ifndef MEASUREGUI_2SEL1LINEEDIT_QTD_H -#define MEASUREGUI_2SEL1LINEEDIT_QTD_H - -#include "GEOM_MeasureGUI.hxx" - -#include -#include - -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QSpacerItem; -class QGroupBox; -class QLabel; -class QPushButton; -class QLineEdit; - -class GEOM_MEASUREGUI_EXPORT MeasureGUI_2Sel1LineEdit_QTD : public QWidget -{ - Q_OBJECT - -public: - MeasureGUI_2Sel1LineEdit_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~MeasureGUI_2Sel1LineEdit_QTD(); - - QGroupBox* GroupBox1; - QLabel* TextLabel1; - QPushButton* PushButton1; - QLineEdit* LineEdit1; - QLabel* TextLabel2; - QPushButton* PushButton2; - QLineEdit* LineEdit2; - QLabel* TextLabel3; - QLineEdit* LineEdit3; - -protected: - QGridLayout* MeasureGUI_2Sel1LineEdit_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; - QSpacerItem* Spacer8; - -protected slots: - virtual void languageChange(); - -}; - -#endif // MEASUREGUI_2SEL1LINEEDIT_QTD_H diff --git a/src/MeasureGUI/MeasureGUI_2Sel1LineEdit_QTD.ui b/src/MeasureGUI/MeasureGUI_2Sel1LineEdit_QTD.ui new file mode 100644 index 000000000..b6187162d --- /dev/null +++ b/src/MeasureGUI/MeasureGUI_2Sel1LineEdit_QTD.ui @@ -0,0 +1,142 @@ + + MeasureGUI_2Sel1LineEdit_QTD + + + + 0 + 0 + 196 + 108 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + 6 + + + 6 + + + + + + + + + 9 + + + 9 + + + 9 + + + 9 + + + 6 + + + 6 + + + + + + + + + 100 + 0 + + + + + + + + + 0 + 0 + + + + + + + + + + + TL2 + + + + + + + TL3 + + + + + + + + 100 + 0 + + + + + + + + + 0 + 0 + + + + + + + + + + + TL1 + + + + + + + + + + PushButton1 + LineEdit1 + PushButton2 + LineEdit2 + LineEdit3 + + + + diff --git a/src/MeasureGUI/MeasureGUI_2Sel4LineEdit_QTD.cxx b/src/MeasureGUI/MeasureGUI_2Sel4LineEdit_QTD.cxx deleted file mode 100644 index 3c5563c72..000000000 --- a/src/MeasureGUI/MeasureGUI_2Sel4LineEdit_QTD.cxx +++ /dev/null @@ -1,131 +0,0 @@ -/**************************************************************************** -** Form implementation generated from reading ui file 'MeasureGUI_2Sel4LineEdit_QTD.ui' -** -** Created: Tue Oct 9 14:32:18 2007 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#include "MeasureGUI_2Sel4LineEdit_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a MeasureGUI_2Sel4LineEdit_QTD as a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - */ -MeasureGUI_2Sel4LineEdit_QTD::MeasureGUI_2Sel4LineEdit_QTD( QWidget* parent, const char* name, WFlags fl ) - : QWidget( parent, name, fl ) -{ - if ( !name ) - setName( "MeasureGUI_2Sel4LineEdit_QTD" ); - MeasureGUI_2Sel4LineEdit_QTDLayout = new QGridLayout( this, 1, 1, 0, 6, "MeasureGUI_2Sel4LineEdit_QTDLayout"); - - GroupBox1 = new QGroupBox( this, "GroupBox1" ); - GroupBox1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)7, 0, 0, GroupBox1->sizePolicy().hasHeightForWidth() ) ); - GroupBox1->setColumnLayout(0, Qt::Vertical ); - GroupBox1->layout()->setSpacing( 6 ); - GroupBox1->layout()->setMargin( 11 ); - GroupBox1Layout = new QGridLayout( GroupBox1->layout() ); - GroupBox1Layout->setAlignment( Qt::AlignTop ); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - TextLabel1 = new QLabel( GroupBox1, "TextLabel1" ); - TextLabel1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel1, 0, 0 ); - - PushButton1 = new QPushButton( GroupBox1, "PushButton1" ); - PushButton1->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton1->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( PushButton1, 0, 1 ); - - LineEdit1 = new QLineEdit( GroupBox1, "LineEdit1" ); - - Layout1->addWidget( LineEdit1, 0, 2 ); - - TextLabel2 = new QLabel( GroupBox1, "TextLabel2" ); - TextLabel2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel2->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel2, 1, 0 ); - - PushButton2 = new QPushButton( GroupBox1, "PushButton2" ); - PushButton2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, PushButton2->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( PushButton2, 1, 1 ); - - LineEdit2 = new QLineEdit( GroupBox1, "LineEdit2" ); - - Layout1->addWidget( LineEdit2, 1, 2 ); - - TextLabel3 = new QLabel( GroupBox1, "TextLabel3" ); - TextLabel3->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel3->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel3, 2, 0 ); - - LineEdit3 = new QLineEdit( GroupBox1, "LineEdit3" ); - - Layout1->addMultiCellWidget( LineEdit3, 2, 2, 1, 2 ); - - TextLabel4 = new QLabel( GroupBox1, "TextLabel4" ); - TextLabel4->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel4->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel4, 3, 0 ); - - LineEdit4 = new QLineEdit( GroupBox1, "LineEdit4" ); - - Layout1->addMultiCellWidget( LineEdit4, 3, 3, 1, 2 ); - - TextLabel5 = new QLabel( GroupBox1, "TextLabel5" ); - TextLabel5->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel5->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel5, 4, 0 ); - - LineEdit5 = new QLineEdit( GroupBox1, "LineEdit5" ); - - Layout1->addMultiCellWidget( LineEdit5, 4, 4, 1, 2 ); - - TextLabel6 = new QLabel( GroupBox1, "TextLabel6" ); - TextLabel6->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, TextLabel6->sizePolicy().hasHeightForWidth() ) ); - - Layout1->addWidget( TextLabel6, 5, 0 ); - - LineEdit6 = new QLineEdit( GroupBox1, "LineEdit6" ); - - Layout1->addMultiCellWidget( LineEdit6, 5, 5, 1, 2 ); - Spacer8 = new QSpacerItem( 0, 60, QSizePolicy::Minimum, QSizePolicy::Expanding ); - Layout1->addItem( Spacer8, 6, 2 ); - - GroupBox1Layout->addLayout( Layout1, 0, 0 ); - - MeasureGUI_2Sel4LineEdit_QTDLayout->addWidget( GroupBox1, 0, 0 ); - languageChange(); - resize( QSize(129, 163).expandedTo(minimumSizeHint()) ); - clearWState( WState_Polished ); -} - -/* - * Destroys the object and frees any allocated resources - */ -MeasureGUI_2Sel4LineEdit_QTD::~MeasureGUI_2Sel4LineEdit_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - -/* - * Sets the strings of the subwidgets using the current - * language. - */ -void MeasureGUI_2Sel4LineEdit_QTD::languageChange() -{ -} - diff --git a/src/MeasureGUI/MeasureGUI_2Sel4LineEdit_QTD.h b/src/MeasureGUI/MeasureGUI_2Sel4LineEdit_QTD.h deleted file mode 100644 index 0378ca3ce..000000000 --- a/src/MeasureGUI/MeasureGUI_2Sel4LineEdit_QTD.h +++ /dev/null @@ -1,62 +0,0 @@ -/**************************************************************************** -** Form interface generated from reading ui file 'MeasureGUI_2Sel4LineEdit_QTD.ui' -** -** Created: Tue Oct 9 14:31:27 2007 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#ifndef MEASUREGUI_2SEL4LINEEDIT_QTD_H -#define MEASUREGUI_2SEL4LINEEDIT_QTD_H - -#include "GEOM_MeasureGUI.hxx" - -#include -#include - -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QSpacerItem; -class QGroupBox; -class QLabel; -class QPushButton; -class QLineEdit; - -class GEOM_MEASUREGUI_EXPORT MeasureGUI_2Sel4LineEdit_QTD : public QWidget -{ - Q_OBJECT - -public: - MeasureGUI_2Sel4LineEdit_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~MeasureGUI_2Sel4LineEdit_QTD(); - - QGroupBox* GroupBox1; - QLabel* TextLabel1; - QPushButton* PushButton1; - QLineEdit* LineEdit1; - QLabel* TextLabel2; - QPushButton* PushButton2; - QLineEdit* LineEdit2; - QLabel* TextLabel3; - QLineEdit* LineEdit3; - QLabel* TextLabel4; - QLineEdit* LineEdit4; - QLabel* TextLabel5; - QLineEdit* LineEdit5; - QLabel* TextLabel6; - QLineEdit* LineEdit6; - -protected: - QGridLayout* MeasureGUI_2Sel4LineEdit_QTDLayout; - QGridLayout* GroupBox1Layout; - QGridLayout* Layout1; - QSpacerItem* Spacer8; - -protected slots: - virtual void languageChange(); - -}; - -#endif // MEASUREGUI_2SEL4LINEEDIT_QTD_H diff --git a/src/MeasureGUI/MeasureGUI_2Sel4LineEdit_QTD.ui b/src/MeasureGUI/MeasureGUI_2Sel4LineEdit_QTD.ui new file mode 100644 index 000000000..d63fb5ab9 --- /dev/null +++ b/src/MeasureGUI/MeasureGUI_2Sel4LineEdit_QTD.ui @@ -0,0 +1,189 @@ + + MeasureGUI_2Sel4LineEdit_QTD + + + + 0 + 0 + 198 + 197 + + + + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + + + + + + + 0 + 0 + + + + TL1 + + + false + + + + + + + + 0 + 0 + + + + + + + + + 100 + 0 + + + + + + + + + 0 + 0 + + + + TL2 + + + false + + + + + + + + 0 + 0 + + + + + + + + + 100 + 0 + + + + + + + + + 0 + 0 + + + + TL3 + + + false + + + + + + + + + + + 0 + 0 + + + + TL4 + + + false + + + + + + + + + + + 0 + 0 + + + + TL5 + + + false + + + + + + + + + + + 0 + 0 + + + + TL6 + + + false + + + + + + + + + + + + + + diff --git a/src/MeasureGUI/MeasureGUI_AngleDlg.cxx b/src/MeasureGUI/MeasureGUI_AngleDlg.cxx index de13dd70b..6c6cff648 100644 --- a/src/MeasureGUI/MeasureGUI_AngleDlg.cxx +++ b/src/MeasureGUI/MeasureGUI_AngleDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -19,29 +19,28 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// -// +// GEOM GEOMGUI : GUI for Geometry component // File : MeasureGUI_AngleDlg.cxx -// Author : Julia DOROVSKIKH -// Module : GEOM -// $Header$ - +// Author : Julia DOROVSKIKH, Open CASCADE S.A.S. +// #include "MeasureGUI_AngleDlg.h" +#include "MeasureGUI_Widgets.h" -#include "MeasureGUI_2Sel1LineEdit_QTD.h" +#include +#include +#include -#include "GEOMBase.h" -#include "GEOM_Displayer.h" -#include "DlgRef_SpinBox.h" -#include "GeometryGUI.h" - -#include "SUIT_Session.h" -#include "SUIT_ViewWindow.h" -#include "SUIT_MessageBox.h" -#include "SOCC_Prs.h" -#include "SOCC_ViewModel.h" -#include "SalomeApp_Tools.h" -#include "SalomeApp_Application.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include // OCCT Includes #include @@ -55,6 +54,7 @@ #include #include #include +#include // QT Includes #include @@ -79,30 +79,33 @@ // TRUE to construct a modal dialog. //================================================================================= MeasureGUI_AngleDlg::MeasureGUI_AngleDlg (GeometryGUI* GUI, QWidget* parent) - : MeasureGUI_Skeleton(GUI, parent, "MeasureGUI_AngleDlg") + : MeasureGUI_Skeleton(GUI, parent) { - QPixmap image0 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_ANGLE"))); - QPixmap image1 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); + SUIT_ResourceMgr* aResMgr = SUIT_Session::session()->resourceMgr(); + QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_ANGLE"))); + QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_MEASURE_ANGLE_TITLE")); + setWindowTitle(tr("GEOM_MEASURE_ANGLE_TITLE")); - // Widgets + /***************************************************************/ + mainFrame()->GroupConstructors->setTitle(tr("GEOM_MEASURE_ANGLE_ANGLE")); + mainFrame()->RadioButton1->setIcon(image0); - GroupConstructors->setTitle(tr("GEOM_MEASURE_ANGLE_ANGLE")); - RadioButton1->setPixmap(image0); - - myGrp = new MeasureGUI_2Sel1LineEdit_QTD(this, "myGrp"); + myGrp = new MeasureGUI_2Sel1LineEdit(centralWidget()); myGrp->GroupBox1->setTitle(tr("GEOM_MEASURE_ANGLE_OBJ")); myGrp->TextLabel1->setText(tr("GEOM_OBJECT_I").arg("1")); myGrp->TextLabel2->setText(tr("GEOM_OBJECT_I").arg("2")); myGrp->TextLabel3->setText(tr("GEOM_MEASURE_ANGLE_IS")); - myGrp->LineEdit3->setReadOnly(TRUE); - myGrp->PushButton1->setPixmap(image1); - myGrp->PushButton2->setPixmap(image1); + myGrp->LineEdit3->setReadOnly(true); + myGrp->PushButton1->setIcon(image1); + myGrp->PushButton2->setIcon(image1); myGrp->LineEdit1->setReadOnly(true); myGrp->LineEdit2->setReadOnly(true); - Layout1->addWidget(myGrp, 1, 0); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(myGrp); + /***************************************************************/ // Help page reference myHelpFileName = "using_measurement_tools_page.html#angle_anchor"; @@ -125,6 +128,11 @@ MeasureGUI_AngleDlg::~MeasureGUI_AngleDlg() //================================================================================= void MeasureGUI_AngleDlg::Init() { + // init variables + myGrp->LineEdit1->setText(""); + myGrp->LineEdit2->setText(""); + myObj = myObj2 = GEOM::GEOM_Object::_nil(); + mySelBtn = myGrp->PushButton1; mySelEdit = myGrp->LineEdit1; mySelBtn2 = myGrp->PushButton2; @@ -132,31 +140,49 @@ void MeasureGUI_AngleDlg::Init() myEditCurrentArgument = mySelEdit; + // signals and slots connections connect(mySelEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(mySelBtn2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(mySelBtn2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); globalSelection(GEOM_LINE); MeasureGUI_Skeleton::Init(); } - //================================================================================= // function : SelectionIntoArgument() // purpose : Called when selection has changed //================================================================================= void MeasureGUI_AngleDlg::SelectionIntoArgument() { - Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = - GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); - if (!testResult) - aSelectedObject = GEOM::GEOM_Object::_nil(); + GEOM::GEOM_Object_var aSelectedObject = GEOM::GEOM_Object::_nil(); - if (myEditCurrentArgument == mySelEdit) + if (aSelList.Extent() > 0) { + Standard_Boolean testResult = Standard_False; + aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + if (!testResult) + aSelectedObject = GEOM::GEOM_Object::_nil(); + } + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + if (myEditCurrentArgument == mySelEdit) { myObj = aSelectedObject; - else + if (!myObj->_is_nil() && myObj2->_is_nil()) + myGrp->PushButton2->click(); + } + else { myObj2 = aSelectedObject; + if (!myObj2->_is_nil() && myObj->_is_nil()) + myGrp->PushButton1->click(); + } processObject(); } @@ -171,13 +197,11 @@ void MeasureGUI_AngleDlg::processObject() myGrp->LineEdit2->setText(!myObj2->_is_nil() ? GEOMBase::GetName(myObj2) : ""); double anAngle = 0.; - if (getParameters(anAngle)) - { - myGrp->LineEdit3->setText(DlgRef_SpinBox::PrintDoubleValue(anAngle)); + if (getParameters(anAngle)) { + myGrp->LineEdit3->setText(DlgRef::PrintDoubleValue(anAngle)); redisplayPreview(); } - else - { + else { myGrp->LineEdit3->setText(""); erasePreview(); } @@ -202,10 +226,9 @@ bool MeasureGUI_AngleDlg::getParameters (double& theAngle) bool isDone = getOperation()->IsDone(); if (!isDone) { CORBA::String_var aMsg = getOperation()->GetErrorCode(); - SUIT_MessageBox::warn1((QWidget*)myGeomGUI->getApp()->desktop(), - QObject::tr("WRN_WARNING"), - QObject::tr(aMsg.in()), - QObject::tr("BUT_OK")); + SUIT_MessageBox::warning(this, + QObject::tr("WRN_WARNING"), + QObject::tr(aMsg.in())); } return isDone; } @@ -221,17 +244,32 @@ void MeasureGUI_AngleDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if (send == mySelBtn) { - mySelEdit->setFocus(); - myEditCurrentArgument = mySelEdit; + if (send == myGrp->PushButton1) { + myEditCurrentArgument = myGrp->LineEdit1; + + myGrp->PushButton2->setDown(false); + myGrp->LineEdit2->setEnabled(false); } else { - mySelEdit2->setFocus(); - myEditCurrentArgument = mySelEdit2; + myEditCurrentArgument = myGrp->LineEdit2; + + myGrp->PushButton1->setDown(false); + myGrp->LineEdit1->setEnabled(false); } + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); globalSelection(GEOM_LINE); - SelectionIntoArgument(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + // seems we need it only to avoid preview disappearing, caused by selection mode change + redisplayPreview(); } //================================================================================= @@ -247,7 +285,11 @@ void MeasureGUI_AngleDlg::LineEditReturnPressed() else myEditCurrentArgument = mySelEdit2; - if (GEOMBase::SelectionByNameInDialogs(this, mySelEdit->text(), selectedIO())) + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (GEOMBase::SelectionByNameInDialogs(this, mySelEdit->text(), aSelList)) mySelEdit->setText(mySelEdit->text()); } @@ -262,20 +304,17 @@ SALOME_Prs* MeasureGUI_AngleDlg::buildPrs() SUIT_ViewWindow* vw = SUIT_Session::session()->activeApplication()->desktop()->activeWindow(); if (myObj->_is_nil() || myObj2->_is_nil() || !getParameters(anAngle) || - vw->getViewManager()->getType() != OCCViewer_Viewer::Type()) + vw->getViewManager()->getType() != OCCViewer_Viewer::Type()) return 0; - if (anAngle > Precision::Angular()) - { - try - { + if (anAngle > Precision::Angular()) { + try { #if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100 OCC_CATCH_SIGNALS; #endif TopoDS_Shape S1, S2; if (GEOMBase::GetShape(myObj , S1, TopAbs_EDGE) && - GEOMBase::GetShape(myObj2, S2, TopAbs_EDGE)) - { + GEOMBase::GetShape(myObj2, S2, TopAbs_EDGE)) { TopoDS_Edge anEdge1 = TopoDS::Edge(S1); TopoDS_Edge anEdge2 = TopoDS::Edge(S2); @@ -303,7 +342,7 @@ SALOME_Prs* MeasureGUI_AngleDlg::buildPrs() // *P21 gp_Pnt aP3 (aP22.XYZ() + aP11.XYZ() - aP21.XYZ()); - gce_MakePln gce_MP (aP11, aP12, aP3); + gce_MakePln gce_MP(aP11, aP12, aP3); Handle(Geom_Plane) aPlane = new Geom_Plane(gce_MP.Value()); // Build the angle dimension presentation @@ -312,7 +351,32 @@ SALOME_Prs* MeasureGUI_AngleDlg::buildPrs() Handle(AIS_AngleDimension) anIO = new AIS_AngleDimension (anEdge1, anEdge2, aPlane, anAngle * PI180, - TCollection_ExtendedString((Standard_CString)aLabel.latin1())); + TCollection_ExtendedString((Standard_CString)aLabel.toLatin1().data())); + Handle(Geom_Line) geom_lin1,geom_lin2; + gp_Pnt ptat11,ptat12,ptat21,ptat22; + Standard_Boolean isInfinite1,isInfinite2; + Handle(Geom_Curve) extCurv; + Standard_Integer extShape; + if (AIS::ComputeGeometry(anEdge1, + anEdge2, + extShape, + geom_lin1, + geom_lin2, + ptat11, + ptat12, + ptat21, + ptat22, + extCurv, + isInfinite1, + isInfinite2, + aPlane)) { + Standard_Real arrSize1 = anIO->ArrowSize(); + Standard_Real arrSize2 = anIO->ArrowSize(); + if (!isInfinite1) arrSize1 = ptat11.Distance(ptat12)/10.; + if (!isInfinite2) arrSize2 = ptat21.Distance(ptat22)/10.; + Standard_Real arrowSize = Max(arrSize1,arrSize2); + anIO->SetArrowSize(arrowSize); + } SOCC_Prs* aPrs = dynamic_cast(((SOCC_Viewer*)(vw->getViewManager()->getViewModel()))->CreatePrs(0)); @@ -323,8 +387,7 @@ SALOME_Prs* MeasureGUI_AngleDlg::buildPrs() return aPrs; } } - catch(Standard_Failure) - { + catch(Standard_Failure) { } } @@ -335,7 +398,7 @@ SALOME_Prs* MeasureGUI_AngleDlg::buildPrs() // function : isValid() // purpose : //================================================================================= -bool MeasureGUI_AngleDlg::isValid(QString& msg) +bool MeasureGUI_AngleDlg::isValid (QString& msg) { return MeasureGUI_Skeleton::isValid(msg) && !myObj2->_is_nil(); } diff --git a/src/MeasureGUI/MeasureGUI_AngleDlg.h b/src/MeasureGUI/MeasureGUI_AngleDlg.h index 0ef32abc4..ae9de088c 100644 --- a/src/MeasureGUI/MeasureGUI_AngleDlg.h +++ b/src/MeasureGUI/MeasureGUI_AngleDlg.h @@ -1,49 +1,45 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_AngleDlg.h +// Author : Julia DOROVSKIKH, Open CASCADE S.A.S. // -// -// File : MeasureGUI_AngleDlg.h -// Author : Julia DOROVSKIKH -// Module : GEOM - -#ifndef DIALOGBOX_ANGLE_H -#define DIALOGBOX_ANGLE_H - -#include "GEOM_MeasureGUI.hxx" +#ifndef MEASUREGUI_ANGLEDLG_H +#define MEASUREGUI_ANGLEDLG_H #include "MeasureGUI_Skeleton.h" -class MeasureGUI_2Sel1LineEdit_QTD; +class MeasureGUI_2Sel1LineEdit; //================================================================================= // class : MeasureGUI_AngleDlg // purpose : //================================================================================= -class GEOM_MEASUREGUI_EXPORT MeasureGUI_AngleDlg : public MeasureGUI_Skeleton +class MeasureGUI_AngleDlg : public MeasureGUI_Skeleton { Q_OBJECT public: - MeasureGUI_AngleDlg (GeometryGUI* GUI, QWidget* parent); + MeasureGUI_AngleDlg( GeometryGUI*, QWidget* ); ~MeasureGUI_AngleDlg(); protected: @@ -53,19 +49,19 @@ protected: virtual void SelectionIntoArgument(); virtual void LineEditReturnPressed(); virtual void SetEditCurrentArgument(); - virtual bool isValid (QString& msg); + virtual bool isValid( QString& ); private: void Init(); - bool getParameters (double& theAngle); + bool getParameters( double& ); private: QLineEdit* myEditCurrentArgument; QLineEdit* mySelEdit2; QPushButton* mySelBtn2; - MeasureGUI_2Sel1LineEdit_QTD* myGrp; + MeasureGUI_2Sel1LineEdit* myGrp; GEOM::GEOM_Object_var myObj2; }; -#endif // DIALOGBOX_ANGLE_H +#endif // MEASUREGUI_ANGLEDLG_H diff --git a/src/MeasureGUI/MeasureGUI_BndBoxDlg.cxx b/src/MeasureGUI/MeasureGUI_BndBoxDlg.cxx index 7023827cd..a3d718caf 100644 --- a/src/MeasureGUI/MeasureGUI_BndBoxDlg.cxx +++ b/src/MeasureGUI/MeasureGUI_BndBoxDlg.cxx @@ -1,73 +1,78 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_BndBoxDlg.cxx +// Author : Nicolas REJNERI, Open CASCADE S.A.S. // -// File : MeasureGUI_BndBoxDlg.cxx -// Author : Nicolas REJNERI -// Module : GEOM -// $Header$ - #include "MeasureGUI_BndBoxDlg.h" -#include "MeasureGUI_1Sel6LineEdit_QTD.h" +#include "MeasureGUI_Widgets.h" -#include "GEOMBase.h" -#include "GEOM_Displayer.h" +#include + +#include +#include #include +#include +#include +#include +#include +#include +#include -#include "utilities.h" -#include "SUIT_Session.h" -#include "SalomeApp_Tools.h" +#include +#include +#include -#include -#include -#include -#include -#include -#include +// #include +// #include +// #include +// #include +// #include +// #include //================================================================================= // class : MeasureGUI_BndBoxDlg() // purpose : Constructs a MeasureGUI_BndBoxDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to -// TRUE to construct a modal dialog. +// true to construct a modal dialog. //================================================================================= MeasureGUI_BndBoxDlg::MeasureGUI_BndBoxDlg( GeometryGUI* GUI, QWidget* parent ) -: MeasureGUI_Skeleton( GUI, parent, "MeasureGUI_PropertiesDlg" ) + : MeasureGUI_Skeleton( GUI, parent ) { QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( - "GEOM",tr( "ICON_DLG_BOUNDING_BOX" ) ) ); + "GEOM", tr( "ICON_DLG_BOUNDING_BOX" ) ) ); QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( - "GEOM",tr( "ICON_SELECT" ) ) ); + "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption( tr( "GEOM_BNDBOX_TITLE" ) ); + setWindowTitle( tr( "GEOM_BNDBOX_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle( tr( "GEOM_BNDBOX" ) ); - RadioButton1->setPixmap( image0 ); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_BNDBOX" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); - myGrp = new MeasureGUI_1Sel6LineEdit_QTD( this, "myGrp" ); + myGrp = new MeasureGUI_1Sel6LineEdit( centralWidget() ); myGrp->GroupBox1->setTitle( tr( "GEOM_BNDBOX_OBJDIM" ) ); myGrp->TextLabel1->setText( tr( "GEOM_OBJECT" ) ); myGrp->TextLabel2->setText( tr( "GEOM_MIN" ) ); @@ -75,16 +80,18 @@ MeasureGUI_BndBoxDlg::MeasureGUI_BndBoxDlg( GeometryGUI* GUI, QWidget* parent ) myGrp->TextLabel4->setText( tr( "GEOM_X" ) ); myGrp->TextLabel5->setText( tr( "GEOM_Y" ) ); myGrp->TextLabel6->setText( tr( "GEOM_Z" ) ); - myGrp->LineEdit11->setReadOnly( TRUE ); - myGrp->LineEdit12->setReadOnly( TRUE ); - myGrp->LineEdit21->setReadOnly( TRUE ); - myGrp->LineEdit22->setReadOnly( TRUE ); - myGrp->LineEdit31->setReadOnly( TRUE ); - myGrp->LineEdit32->setReadOnly( TRUE ); - myGrp->PushButton1->setPixmap( image1 ); + myGrp->LineEdit11->setReadOnly( true ); + myGrp->LineEdit12->setReadOnly( true ); + myGrp->LineEdit21->setReadOnly( true ); + myGrp->LineEdit22->setReadOnly( true ); + myGrp->LineEdit31->setReadOnly( true ); + myGrp->LineEdit32->setReadOnly( true ); + myGrp->PushButton1->setIcon( image1 ); myGrp->LineEdit1->setReadOnly( true ); - Layout1->addWidget( myGrp, 1, 0 ); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( myGrp ); /***************************************************************/ @@ -123,8 +130,7 @@ void MeasureGUI_BndBoxDlg::processObject() { double aXMin, aXMax, aYMin, aYMax, aZMin, aZMax; - if ( !getParameters( aXMin, aXMax, aYMin, aYMax, aZMin, aZMax ) ) - { + if ( !getParameters( aXMin, aXMax, aYMin, aYMax, aZMin, aZMax ) ) { mySelEdit->setText( "" ); myGrp->LineEdit11->setText( "" ); myGrp->LineEdit12->setText( "" ); @@ -133,9 +139,7 @@ void MeasureGUI_BndBoxDlg::processObject() myGrp->LineEdit31->setText( "" ); myGrp->LineEdit32->setText( "" ); } - else - { - + else { myGrp->LineEdit11->setText( tr( "%1" ).arg( aXMin, 12, 'f', 6 ) ); myGrp->LineEdit12->setText( tr( "%1" ).arg( aXMax, 12, 'f', 6 ) ); @@ -157,15 +161,68 @@ bool MeasureGUI_BndBoxDlg::getParameters( double& theXmin, double& theXmax, { if ( myObj->_is_nil() ) return false; - else - { - try - { + else { + try { + Handle(Poly_Triangulation) Trtn = 0; + + Handle(GEOM_Object) anObject = GEOM_Engine::GetEngine()->GetObject(myObj->GetStudyID(), myObj->GetEntry()); + if (!anObject.IsNull()) + { + Handle(GEOM_Function) aRefShape = anObject->GetLastFunction(); + if (!aRefShape.IsNull()) + { + TopoDS_Shape aShape = aRefShape->GetValue(); + if (!aShape.IsNull()) + { + TopLoc_Location l; + Handle(Poly_Triangulation) T; + TopExp_Explorer ex; + for (ex.Init(aShape,TopAbs_FACE); ex.More(); ex.Next()) { + const TopoDS_Face& F = TopoDS::Face(ex.Current()); + + BRepAdaptor_Surface surf(F); + if (surf.GetType() == GeomAbs_Sphere) + { + T = BRep_Tool::Triangulation(F, l); + if (!T.IsNull()) { + Handle(Poly_Triangulation) NullTrtn = 0; + (*((Handle(BRep_TFace)*)&F.TShape()))->Triangulation(NullTrtn); + Trtn = T; + break; + } + } + else + break; + } + } + } + } + GEOM::GEOM_IMeasureOperations::_narrow( getOperation() )->GetBoundingBox( myObj, theXmin, theXmax, theYmin, theYmax, theZmin, theZmax ); + + if (!Trtn.IsNull()) + { + Handle(GEOM_Function) aRefShape = anObject->GetLastFunction(); + if (!aRefShape.IsNull()) + { + TopoDS_Shape aShape = aRefShape->GetValue(); + if (!aShape.IsNull()) + { + TopLoc_Location l; + Handle(Poly_Triangulation) T; + TopExp_Explorer ex; + for (ex.Init(aShape,TopAbs_FACE); ex.More(); ex.Next()) { + const TopoDS_Face& F = TopoDS::Face(ex.Current()); + (*((Handle(BRep_TFace)*)&F.TShape()))->Triangulation(Trtn); + break; + } + } + } + } + } - catch( const SALOME::SALOME_Exception& e ) - { + catch( const SALOME::SALOME_Exception& e ) { SalomeApp_Tools::QtCatchCorbaException( e ); return false; } diff --git a/src/MeasureGUI/MeasureGUI_BndBoxDlg.h b/src/MeasureGUI/MeasureGUI_BndBoxDlg.h index cd563a115..9d12e3de6 100644 --- a/src/MeasureGUI/MeasureGUI_BndBoxDlg.h +++ b/src/MeasureGUI/MeasureGUI_BndBoxDlg.h @@ -1,65 +1,60 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : MeasureGUI_BndBoxDlg.h -// Author : Nicolas REJNERI -// Module : GEOM - -#ifndef DIALOGBOX_BNDBOX_H -#define DIALOGBOX_BNDBOX_H - -#include "GEOM_MeasureGUI.hxx" +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_BndBoxDlg.h +// Author : Nicolas REJNERI, Open CASCADE S.A.S. +// +#ifndef MEASUREGUI_BNDBOXDLG_H +#define MEASUREGUI_BNDBOXDLG_H #include "MeasureGUI_Skeleton.h" -class MeasureGUI_1Sel6LineEdit_QTD; +class MeasureGUI_1Sel6LineEdit; //================================================================================= // class : DialogBox_PROPERTIES // purpose : //================================================================================= -class GEOM_MEASUREGUI_EXPORT MeasureGUI_BndBoxDlg : public MeasureGUI_Skeleton +class MeasureGUI_BndBoxDlg : public MeasureGUI_Skeleton { - Q_OBJECT + Q_OBJECT public: - MeasureGUI_BndBoxDlg(GeometryGUI* GUI, - QWidget* parent); - ~MeasureGUI_BndBoxDlg(); + MeasureGUI_BndBoxDlg( GeometryGUI*, QWidget* ); + ~MeasureGUI_BndBoxDlg(); protected: - // redefined from GEOMBase_Helper and MeasureGUI_Skeleton - virtual void processObject(); - virtual SALOME_Prs* buildPrs(); + // redefined from GEOMBase_Helper and MeasureGUI_Skeleton + virtual void processObject(); + virtual SALOME_Prs* buildPrs(); private: - void Init(); - bool getParameters( double& Xmin, double& Xmax, - double& Ymin, double& Ymax, - double& Zmin, double& Zmax ); + void Init(); + bool getParameters( double&, double&, + double&, double&, + double&, double& ); private: - MeasureGUI_1Sel6LineEdit_QTD* myGrp; + MeasureGUI_1Sel6LineEdit* myGrp; }; -#endif // DIALOGBOX_BNDBOX_H +#endif // MEASUREGUI_BNDBOXDLG_H diff --git a/src/MeasureGUI/MeasureGUI_CenterMassDlg.cxx b/src/MeasureGUI/MeasureGUI_CenterMassDlg.cxx index 77fa1e872..fe3a2c06f 100644 --- a/src/MeasureGUI/MeasureGUI_CenterMassDlg.cxx +++ b/src/MeasureGUI/MeasureGUI_CenterMassDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -19,66 +19,68 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_CenterMassDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : MeasureGUI_CenterMassDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "MeasureGUI_CenterMassDlg.h" -#include "MeasureGUI_1Sel3LineEdit_QTD.h" +#include "MeasureGUI_Widgets.h" -#include "DlgRef_SpinBox.h" +#include +#include -#include "utilities.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "SalomeApp_Tools.h" +#include + +#include +#include +#include +#include +#include #include #include #include #include -#include - //================================================================================= // class : MeasureGUI_CenterMassDlg() // purpose : Constructs a MeasureGUI_CenterMassDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to -// TRUE to construct a modal dialog. +// true to construct a modal dialog. //================================================================================= MeasureGUI_CenterMassDlg::MeasureGUI_CenterMassDlg( GeometryGUI* theGeometryGUI, QWidget* parent ) - : GEOMBase_Skeleton(theGeometryGUI, parent, "MeasureGUI_CenterMassDlg", false, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) + : GEOMBase_Skeleton( theGeometryGUI, parent, false ) { - QPixmap image0 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_CENTERMASS"))); - QPixmap image1 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_CENTERMASS" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption( tr( "GEOM_CMASS_TITLE" ) ); + setWindowTitle( tr( "GEOM_CMASS_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle( tr( "GEOM_CMASS" ) ); - RadioButton1->setPixmap( image0 ); - RadioButton2->close( TRUE ); - RadioButton3->close( TRUE ); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_CMASS" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - myGrp = new MeasureGUI_1Sel3LineEdit_QTD( this, "myGrp" ); + myGrp = new MeasureGUI_1Sel3LineEdit( centralWidget() ); myGrp->GroupBox1->setTitle( tr( "GEOM_CENTER" ) ); myGrp->TextLabel1->setText( tr( "GEOM_OBJECT" ) ); myGrp->TextLabel2->setText( tr( "GEOM_X" ) ); myGrp->TextLabel3->setText( tr( "GEOM_Y" ) ); myGrp->TextLabel4->setText( tr( "GEOM_Z" ) ); - myGrp->LineEdit2->setReadOnly( TRUE ); - myGrp->LineEdit3->setReadOnly( TRUE ); - myGrp->LineEdit4->setReadOnly( TRUE ); - myGrp->PushButton1->setPixmap( image1 ); + myGrp->LineEdit2->setReadOnly( true ); + myGrp->LineEdit3->setReadOnly( true ); + myGrp->LineEdit4->setReadOnly( true ); + myGrp->PushButton1->setIcon( image1 ); myGrp->LineEdit1->setReadOnly( true ); - Layout1->addWidget( myGrp, 2, 0 ); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( myGrp ); + /***************************************************************/ myHelpFileName = "using_measurement_tools_page.html#center_mass_anchor"; @@ -107,22 +109,18 @@ void MeasureGUI_CenterMassDlg::Init() myEditCurrentArgument = myGrp->LineEdit1; /* signals and slots connections */ - connect( buttonOk, SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); - connect( buttonApply, SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect( myGrp->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect( myGrp->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( myGrp->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( myGrp->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); initName( tr( "GEOM_POINT") ); globalSelection(); SelectionIntoArgument(); - - /* displays Dialog */ - myGrp->show(); - this->show(); } @@ -162,18 +160,20 @@ void MeasureGUI_CenterMassDlg::SelectionIntoArgument() erasePreview(); myObj = GEOM::GEOM_Object::_nil(); - if ( IObjectCount() != 1 ) - { + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) { processObject(); return; } Standard_Boolean testResult = Standard_False; GEOM::GEOM_Object_var aSelectedObject = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), testResult ); + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); - if ( !testResult || aSelectedObject->_is_nil() ) - { + if (!testResult || aSelectedObject->_is_nil()) { processObject(); return; } @@ -183,7 +183,6 @@ void MeasureGUI_CenterMassDlg::SelectionIntoArgument() displayPreview(); } - //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -203,8 +202,7 @@ void MeasureGUI_CenterMassDlg::SetEditCurrentArgument() void MeasureGUI_CenterMassDlg::LineEditReturnPressed() { QLineEdit* send = ( QLineEdit* )sender(); - if ( send == myGrp->LineEdit1 ) - { + if ( send == myGrp->LineEdit1 ) { myEditCurrentArgument = myGrp->LineEdit1; GEOMBase_Skeleton::LineEditReturnPressed(); } @@ -219,8 +217,8 @@ void MeasureGUI_CenterMassDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL(currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); globalSelection(); displayPreview(); @@ -232,24 +230,22 @@ void MeasureGUI_CenterMassDlg::ActivateThisDialog() //================================================================================= void MeasureGUI_CenterMassDlg::processObject() { - if ( myObj->_is_nil() ) - { + if ( myObj->_is_nil() ) { myGrp->LineEdit1->setText( "" ); myGrp->LineEdit2->setText( "" ); myGrp->LineEdit3->setText( "" ); myGrp->LineEdit4->setText( "" ); erasePreview(); } - else - { + else { double x = 0, y = 0, z = 0; getParameters( x, y, z ); myGrp->LineEdit1->setText( GEOMBase::GetName( myObj ) ); - myGrp->LineEdit2->setText( DlgRef_SpinBox::PrintDoubleValue( x ) ); - myGrp->LineEdit3->setText( DlgRef_SpinBox::PrintDoubleValue( y ) ); - myGrp->LineEdit4->setText( DlgRef_SpinBox::PrintDoubleValue( z ) ); + myGrp->LineEdit2->setText( DlgRef::PrintDoubleValue( x ) ); + myGrp->LineEdit3->setText( DlgRef::PrintDoubleValue( y ) ); + myGrp->LineEdit4->setText( DlgRef::PrintDoubleValue( z ) ); displayPreview(); } @@ -260,9 +256,9 @@ void MeasureGUI_CenterMassDlg::processObject() // function : enterEvent() // purpose : //================================================================================= -void MeasureGUI_CenterMassDlg::enterEvent( QEvent* e ) +void MeasureGUI_CenterMassDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } @@ -292,10 +288,8 @@ bool MeasureGUI_CenterMassDlg::getParameters( double& theX, double& theY, double { if ( myObj->_is_nil() ) return false; - else - { - try - { + else { + try { GEOM::GEOM_Object_var anObj; anObj = GEOM::GEOM_IMeasureOperations::_narrow( getOperation() )->GetCentreOfMass( myObj ); if ( !getOperation()->IsDone() ) @@ -317,8 +311,7 @@ bool MeasureGUI_CenterMassDlg::getParameters( double& theX, double& theY, double return true; } - catch( const SALOME::SALOME_Exception& e ) - { + catch( const SALOME::SALOME_Exception& e ) { SalomeApp_Tools::QtCatchCorbaException( e ); return false; } diff --git a/src/MeasureGUI/MeasureGUI_CenterMassDlg.h b/src/MeasureGUI/MeasureGUI_CenterMassDlg.h index 943aee4c3..4de61e99a 100644 --- a/src/MeasureGUI/MeasureGUI_CenterMassDlg.h +++ b/src/MeasureGUI/MeasureGUI_CenterMassDlg.h @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,59 +17,54 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_CenterMassDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : MeasureGUI_CenterMassDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +#ifndef MEASUREGUI_CENTERMASSDLG_H +#define MEASUREGUI_CENTERMASSDLG_H -#ifndef DIALOGBOX_CMASS_H -#define DIALOGBOX_CMASS_H +#include -#include "GEOM_MeasureGUI.hxx" - -#include "GEOMBase_Skeleton.h" - -class MeasureGUI_1Sel3LineEdit_QTD; +class MeasureGUI_1Sel3LineEdit; //================================================================================= // class : MeasureGUI_CenterMassDlg // purpose : //================================================================================= -class GEOM_MEASUREGUI_EXPORT MeasureGUI_CenterMassDlg : public GEOMBase_Skeleton +class MeasureGUI_CenterMassDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - MeasureGUI_CenterMassDlg( GeometryGUI* GUI, - QWidget* parent ); - ~MeasureGUI_CenterMassDlg(); + MeasureGUI_CenterMassDlg( GeometryGUI*, QWidget* ); + ~MeasureGUI_CenterMassDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& msg ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + private: - void Init( ); - void enterEvent( QEvent* e ); - void processObject(); - bool getParameters( double&, double&, double& ); - + void Init(); + void enterEvent( QEvent* ); + void processObject(); + bool getParameters( double&, double&, double& ); + private: - GEOM::GEOM_Object_var myObj; - MeasureGUI_1Sel3LineEdit_QTD* myGrp; + GEOM::GEOM_Object_var myObj; + MeasureGUI_1Sel3LineEdit* myGrp; }; -#endif // DIALOGBOX_CMASS_H +#endif // MEASUREGUI_CENTERMASSDLG_H diff --git a/src/MeasureGUI/MeasureGUI_CheckCompoundOfBlocksDlg.cxx b/src/MeasureGUI/MeasureGUI_CheckCompoundOfBlocksDlg.cxx index 4244affb1..90c6adf71 100644 --- a/src/MeasureGUI/MeasureGUI_CheckCompoundOfBlocksDlg.cxx +++ b/src/MeasureGUI/MeasureGUI_CheckCompoundOfBlocksDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,46 +17,29 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_CheckCompoundOfBlocksDlg.cxx +// Author : Vladimir KLYACHIN, Open CASCADE S.A.S. (vladimir.klyachin@opencascade.com) // -// -// File : MeasureGUI_CheckCompoundOfBlocksDlg.cxx -// Author : VKN -// Module : GEOM -// $Header$ - #include "MeasureGUI_CheckCompoundOfBlocksDlg.h" -#include "MeasureGUI_1Sel1TextView_QTD.h" +#include "MeasureGUI_Widgets.h" -#include "utilities.h" -#include "SUIT_Session.h" -#include "LightApp_SelectionMgr.h" -#include "SalomeApp_Tools.h" -#include "SalomeApp_Application.h" +#include +#include +#include +#include +#include #include #include #include -#include "GEOMBase.h" -#include "GEOMImpl_Types.hxx" -#include -#include -#include -#include -#include -#include -// QT Includes -#include -#include -#include - -//VRV: porting on Qt 3.0.5 -#if QT_VERSION >= 0x030005 -#include -#endif -//VRV: porting on Qt 3.0.5 +#include +#include +#include +#include #define TEXTEDIT_FONT_FAMILY "Courier" #define TEXTEDIT_FONT_SIZE 11 @@ -66,61 +49,49 @@ // purpose : Constructs a MeasureGUI_CheckCompoundOfBlocksDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to -// TRUE to construct a modal dialog. +// true to construct a modal dialog. //================================================================================= MeasureGUI_CheckCompoundOfBlocksDlg::MeasureGUI_CheckCompoundOfBlocksDlg( GeometryGUI* GUI, QWidget* parent ) - : GEOMBase_Skeleton(GUI, parent, "MeasureGUI_CheckCompoundOfBlocksDlg", false, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu | WDestructiveClose) + : GEOMBase_Skeleton( GUI, parent, false ) { SUIT_ResourceMgr* aResMgr = SUIT_Session::session()->resourceMgr(); - QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_CHECK_COMPOUND_OF_BLOCKS"))); - QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); + QPixmap image0( aResMgr->loadPixmap( "GEOM", tr( "ICON_DLG_CHECK_COMPOUND_OF_BLOCKS" ) ) ); + QPixmap image1( aResMgr->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption( tr( "GEOM_CHECK_BLOCKS_COMPOUND" ) ); + setWindowTitle( tr( "GEOM_CHECK_BLOCKS_COMPOUND" ) ); /***************************************************************/ - GroupConstructors->setTitle( tr( "GEOM_CHECK_BLOCKS_COMPOUND" ) ); - RadioButton1->setPixmap( image0 ); - RadioButton2->close( TRUE ); - RadioButton3->close( TRUE ); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_CHECK_BLOCKS_COMPOUND" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - myGrp = new MeasureGUI_1Sel1TextView_QTD( this, "myGrp" ); + myGrp = new MeasureGUI_1Sel1TextView2ListBox( centralWidget() ); myGrp->GroupBox1->setTitle( tr( "GEOM_CHECK_INFOS" ) ); myGrp->TextLabel1->setText( tr( "GEOM_OBJECT" ) ); - myGrp->TextEdit1->setReadOnly( TRUE ); + myGrp->TextView1->setReadOnly( true ); QFont aFont( TEXTEDIT_FONT_FAMILY, TEXTEDIT_FONT_SIZE ); aFont.setStyleHint( QFont::TypeWriter, QFont::PreferAntialias ); - myGrp->TextEdit1->setFont( aFont ); + myGrp->TextView1->setFont( aFont ); - myGrp->PushButton1->setPixmap( image1 ); + myGrp->PushButton1->setIcon( image1 ); myGrp->LineEdit1->setReadOnly( true ); - /***************************************************************/ - QGridLayout* aGBLayout = new QGridLayout( myGrp->GroupBox1->layout() ); - aGBLayout->setAlignment( Qt::AlignTop ); - QGridLayout* Layout2 = new QGridLayout( 0, 1, 1, 0, 6, "Layout2"); - myErrorsLbl = new QLabel( tr( "GEOM_CHECK_BLOCKS_COMPOUND_ERRORS" ), myGrp, "Errors" ); - Layout2->addWidget( myErrorsLbl, 0, 0 ); + myGrp->TextLabel2->setText( tr( "GEOM_CHECK_BLOCKS_COMPOUND_ERRORS" ) ); + myGrp->TextLabel3->setText( tr( "GEOM_CHECK_BLOCKS_COMPOUND_SUBSHAPES" ) ); - myErrorsLBox = new QListBox( myGrp, "ListBlockCompoundErrors" ); - myErrorsLBox->setMinimumSize( 100, 100 ); - Layout2->addWidget( myErrorsLBox, 1, 0 ); + myGrp->ListBox2->setSelectionMode( QAbstractItemView::ExtendedSelection ); - mySubShapesLbl = new QLabel( tr( "GEOM_CHECK_BLOCKS_COMPOUND_SUBSHAPES" ), - myGrp, "BlockCompoundSubShapes" ); - Layout2->addWidget( mySubShapesLbl, 0, 1 ); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( myGrp ); - mySubShapesLBox = new QListBox( myGrp, "ListSubShapes" ); - mySubShapesLBox->setMinimumSize( 100, 100 ); - mySubShapesLBox->setSelectionMode(QListBox::Extended); - Layout2->addWidget( mySubShapesLBox, 1, 1 ); - aGBLayout->addLayout( Layout2, 1, 0 ); + connect( myGrp->ListBox1, SIGNAL( itemSelectionChanged() ), SLOT( onErrorsListSelectionChanged() ) ); + connect( myGrp->ListBox2, SIGNAL( itemSelectionChanged() ), SLOT( onSubShapesListSelectionChanged() ) ); - Layout1->addWidget( myGrp, 2, 0 ); - - connect( myErrorsLBox, SIGNAL( selectionChanged() ), SLOT( onErrorsListSelectionChanged() ) ); - connect( mySubShapesLBox, SIGNAL( selectionChanged() ), SLOT( onSubShapesListSelectionChanged() ) ); /***************************************************************/ myHelpFileName = "using_measurement_tools_page.html#check_compound_anchor"; @@ -146,23 +117,20 @@ void MeasureGUI_CheckCompoundOfBlocksDlg::Init() myEditCurrentArgument = myGrp->LineEdit1; // signals and slots connections - connect( buttonOk, SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); - connect( buttonApply, SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect( myGrp->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect( myGrp->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( myGrp->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( myGrp->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); initName( tr( "GEOM_BLOCKS_COMPOUND") ); - buttonOk->setEnabled(false); - buttonApply->setEnabled(false); + buttonOk()->setEnabled( false ); + buttonApply()->setEnabled( false ); activateSelection(); SelectionIntoArgument(); - - // displays Dialog - this->show(); } //================================================================================= @@ -171,7 +139,7 @@ void MeasureGUI_CheckCompoundOfBlocksDlg::Init() //================================================================================= void MeasureGUI_CheckCompoundOfBlocksDlg::ClickOnOk() { - if (ClickOnApply()) + if ( ClickOnApply() ) ClickOnCancel(); } @@ -197,24 +165,28 @@ void MeasureGUI_CheckCompoundOfBlocksDlg::SelectionIntoArgument() erasePreview(); myObj = GEOM::GEOM_Object::_nil(); - if (IObjectCount() != 1) { - myGrp->LineEdit1->setText(""); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) { + myGrp->LineEdit1->setText( "" ); processObject(); return; } Standard_Boolean testResult = Standard_False; GEOM::GEOM_Object_var aSelectedObject = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), testResult ); + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); - if (!testResult || aSelectedObject->_is_nil()) { - myGrp->LineEdit1->setText(""); + if ( !testResult || aSelectedObject->_is_nil() ) { + myGrp->LineEdit1->setText( "" ); processObject(); return; } myObj = aSelectedObject; - myGrp->LineEdit1->setText(GEOMBase::GetName(myObj)); + myGrp->LineEdit1->setText( GEOMBase::GetName( myObj ) ); processObject(); displayPreview(); } @@ -237,7 +209,7 @@ void MeasureGUI_CheckCompoundOfBlocksDlg::SetEditCurrentArgument() void MeasureGUI_CheckCompoundOfBlocksDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if (send == myGrp->LineEdit1) { + if ( send == myGrp->LineEdit1 ) { myEditCurrentArgument = myGrp->LineEdit1; GEOMBase_Skeleton::LineEditReturnPressed(); } @@ -252,8 +224,8 @@ void MeasureGUI_CheckCompoundOfBlocksDlg::ActivateThisDialog() GEOMBase_Skeleton::ActivateThisDialog(); LightApp_SelectionMgr* aSel = myGeomGUI->getApp()->selectionMgr(); - if (aSel) - connect(aSel, SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + if ( aSel ) + connect( aSel, SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); activateSelection(); displayPreview(); @@ -268,17 +240,14 @@ bool MeasureGUI_CheckCompoundOfBlocksDlg::getBCErrors( bool& theIsCompoundOfBloc { if ( myObj->_is_nil() ) return false; - else - { - try - { + else { + try { GEOM::GEOM_IBlocksOperations::BCErrors_var aErrs; theIsCompoundOfBlocks = GEOM::GEOM_IBlocksOperations::_narrow( getOperation() )->CheckCompoundOfBlocks( myObj, aErrs ); theErrors = aErrs; } - catch( const SALOME::SALOME_Exception& e ) - { + catch ( const SALOME::SALOME_Exception& e ) { SalomeApp_Tools::QtCatchCorbaException( e ); return false; } @@ -293,28 +262,28 @@ bool MeasureGUI_CheckCompoundOfBlocksDlg::getBCErrors( bool& theIsCompoundOfBloc //================================================================================= void MeasureGUI_CheckCompoundOfBlocksDlg::processObject() { - QString aMsg (""); + QString aMsg ( "" ); bool isCompoundOfBlocks; GEOM::GEOM_IBlocksOperations::BCErrors aErrs; - if ( !getBCErrors( isCompoundOfBlocks, aErrs ) ) - { - myGrp->TextEdit1->setText( aMsg ); - myErrorsLBox->clear(); - mySubShapesLBox->clear(); + if ( !getBCErrors( isCompoundOfBlocks, aErrs ) ) { + myGrp->TextView1->setText( aMsg ); + myGrp->ListBox1->clear(); + myGrp->ListBox2->clear(); erasePreview(); return; } - if (isCompoundOfBlocks) { + if ( isCompoundOfBlocks ) { aMsg += tr( "GEOM_CHECK_BLOCKS_COMPOUND_HAS_NO_ERRORS" ); - buttonOk->setEnabled(false); - buttonApply->setEnabled(false); - } else { + buttonOk()->setEnabled( false ); + buttonApply()->setEnabled( false ); + } + else { aMsg += tr( "GEOM_CHECK_BLOCKS_COMPOUND_HAS_ERRORS" ); - buttonOk->setEnabled(true); - buttonApply->setEnabled(true); + buttonOk()->setEnabled( true ); + buttonApply()->setEnabled( true ); } - myGrp->TextEdit1->setText(aMsg); + myGrp->TextView1->setText( aMsg ); QStringList aErrList; QString aErrStr( "" ); @@ -322,11 +291,9 @@ void MeasureGUI_CheckCompoundOfBlocksDlg::processObject() QString aGluedSfx( " # " ); int aConNum = 1; int aGluedNum = 1; - for ( int i = 0, n = aErrs.length(); i < n; i++ ) - { + for ( int i = 0, n = aErrs.length(); i < n; i++ ) { aErrStr = ""; - switch ( aErrs[i].error ) - { + switch ( aErrs[i].error ) { case GEOM::GEOM_IBlocksOperations::NOT_BLOCK : aErrStr = "Not a Block"; break; @@ -336,7 +303,7 @@ void MeasureGUI_CheckCompoundOfBlocksDlg::processObject() case GEOM::GEOM_IBlocksOperations::INVALID_CONNECTION : aErrStr = "Invalid Connection"; aErrStr += aConSfx; - aErrStr += QString::number(aConNum); + aErrStr += QString::number( aConNum ); aConNum++; break; case GEOM::GEOM_IBlocksOperations::NOT_CONNECTED : @@ -345,7 +312,7 @@ void MeasureGUI_CheckCompoundOfBlocksDlg::processObject() case GEOM::GEOM_IBlocksOperations::NOT_GLUED : aErrStr = "Not Glued"; aErrStr += aGluedSfx; - aErrStr += QString::number(aGluedNum); + aErrStr += QString::number( aGluedNum ); aGluedNum++; break; default : @@ -353,12 +320,12 @@ void MeasureGUI_CheckCompoundOfBlocksDlg::processObject() break; } if ( !aErrStr.isEmpty() ) - aErrList.append(aErrStr); + aErrList.append( aErrStr ); } - myErrorsLBox->clear(); - mySubShapesLBox->clear(); - myErrorsLBox->insertStringList(aErrList); + myGrp->ListBox1->clear(); + myGrp->ListBox2->clear(); + myGrp->ListBox1->addItems( aErrList ); } //================================================================================= @@ -367,7 +334,7 @@ void MeasureGUI_CheckCompoundOfBlocksDlg::processObject() //================================================================================= GEOM::GEOM_IOperations_ptr MeasureGUI_CheckCompoundOfBlocksDlg::createOperation() { - return getGeomEngine()->GetIBlocksOperations(getStudyId()); + return getGeomEngine()->GetIBlocksOperations( getStudyId() ); } //================================================================================= @@ -377,16 +344,15 @@ GEOM::GEOM_IOperations_ptr MeasureGUI_CheckCompoundOfBlocksDlg::createOperation( void MeasureGUI_CheckCompoundOfBlocksDlg::onErrorsListSelectionChanged() { erasePreview(); - int aCurItem = myErrorsLBox->currentItem(); + int aCurItem = myGrp->ListBox1->currentRow(); if ( aCurItem < 0 ) return; bool isCompoundOfBlocks; GEOM::GEOM_IBlocksOperations::BCErrors aErrs; - if ( !getBCErrors( isCompoundOfBlocks, aErrs ) ) - { - myGrp->TextEdit1->setText( "" ); - myErrorsLBox->clear(); - mySubShapesLBox->clear(); + if ( !getBCErrors( isCompoundOfBlocks, aErrs ) ) { + myGrp->TextView1->setText( "" ); + myGrp->ListBox1->clear(); + myGrp->ListBox2->clear(); return; } @@ -396,23 +362,21 @@ void MeasureGUI_CheckCompoundOfBlocksDlg::onErrorsListSelectionChanged() TopoDS_Shape aSubShape; TopTools_IndexedMapOfShape anIndices; QStringList aSubShapeList; - QString aSubShapeName(""); + QString aSubShapeName( "" ); Standard_CString aTypeString; - if ( !myObj->_is_nil() && GEOMBase::GetShape( myObj, aSelShape ) ) - { + if ( !myObj->_is_nil() && GEOMBase::GetShape( myObj, aSelShape ) ) { TopExp::MapShapes( aSelShape, anIndices); - for ( int i = 0, n = aObjLst.length(); i < n; i++ ) - { + for ( int i = 0, n = aObjLst.length(); i < n; i++ ) { aSubShapeName = ""; aSubShape = anIndices.FindKey(aObjLst[i]); if ( GEOMBase::GetShapeTypeString( aSubShape, aTypeString ) ) - aSubShapeName = QString(aTypeString) + QString("_") + QString::number(aObjLst[i]); + aSubShapeName = QString( aTypeString ) + QString( "_" ) + QString::number( aObjLst[i] ); if ( !aSubShapeName.isEmpty() ) - aSubShapeList.append(aSubShapeName); + aSubShapeList.append( aSubShapeName ); } } - mySubShapesLBox->clear(); - mySubShapesLBox->insertStringList(aSubShapeList); + myGrp->ListBox2->clear(); + myGrp->ListBox2->addItems( aSubShapeList ); } //================================================================================= @@ -422,24 +386,22 @@ void MeasureGUI_CheckCompoundOfBlocksDlg::onErrorsListSelectionChanged() void MeasureGUI_CheckCompoundOfBlocksDlg::onSubShapesListSelectionChanged() { erasePreview(); - int aErrCurItem = myErrorsLBox->currentItem(); + int aErrCurItem = myGrp->ListBox1->currentRow(); if ( aErrCurItem < 0 ) return; - QValueList aIds; - for ( int i = 0, n = mySubShapesLBox->count(); i < n; i++ ) - { - if ( mySubShapesLBox->isSelected( i ) ) + QList aIds; + for ( int i = 0, n = myGrp->ListBox2->count(); i < n; i++ ) { + if ( myGrp->ListBox2->item( i )->isSelected() ) aIds.append( i ); } if ( aIds.count() < 1 ) return; bool isCompoundOfBlocks; GEOM::GEOM_IBlocksOperations::BCErrors aErrs; - if ( !getBCErrors( isCompoundOfBlocks, aErrs ) ) - { - myGrp->TextEdit1->setText( "" ); - myErrorsLBox->clear(); - mySubShapesLBox->clear(); + if ( !getBCErrors( isCompoundOfBlocks, aErrs ) ) { + myGrp->TextView1->setText( "" ); + myGrp->ListBox1->clear(); + myGrp->ListBox2->clear(); return; } @@ -448,21 +410,17 @@ void MeasureGUI_CheckCompoundOfBlocksDlg::onSubShapesListSelectionChanged() TopoDS_Shape aSelShape; TopoDS_Shape aSubShape; TopTools_IndexedMapOfShape anIndices; - if ( !myObj->_is_nil() && GEOMBase::GetShape( myObj, aSelShape ) ) - { + if ( !myObj->_is_nil() && GEOMBase::GetShape( myObj, aSelShape ) ) { QString aMess; - if ( !isValid( aMess ) ) - { + if ( !isValid( aMess ) ) { return; } SALOME_Prs* aPrs = 0; TopExp::MapShapes( aSelShape, anIndices); - QValueList::iterator it; - for ( it = aIds.begin(); it != aIds.end(); ++it ) - { + QList::iterator it; + for ( it = aIds.begin(); it != aIds.end(); ++it ) { aSubShape = anIndices.FindKey(aObjLst[(*it)]); - try - { + try { getDisplayer()->SetColor( Quantity_NOC_RED ); getDisplayer()->SetWidth( 3 ); getDisplayer()->SetToActivate( false ); @@ -470,8 +428,7 @@ void MeasureGUI_CheckCompoundOfBlocksDlg::onSubShapesListSelectionChanged() if ( aPrs ) displayPreview( aPrs, true ); } - catch( const SALOME::SALOME_Exception& e ) - { + catch ( const SALOME::SALOME_Exception& e ) { SalomeApp_Tools::QtCatchCorbaException( e ); } } @@ -494,9 +451,9 @@ void MeasureGUI_CheckCompoundOfBlocksDlg::activateSelection() // function : enterEvent() // purpose : //================================================================================= -void MeasureGUI_CheckCompoundOfBlocksDlg::enterEvent(QEvent* e) +void MeasureGUI_CheckCompoundOfBlocksDlg::enterEvent( QEvent* ) { - if (!GroupConstructors->isEnabled()) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } @@ -517,10 +474,10 @@ bool MeasureGUI_CheckCompoundOfBlocksDlg::execute( ObjectList& objects ) { GEOM::GEOM_Object_var anObj; - anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())->CheckAndImprove(myObj); + anObj = GEOM::GEOM_IBlocksOperations::_narrow( getOperation() )->CheckAndImprove( myObj ); - if (!anObj->_is_nil()) - objects.push_back(anObj._retn()); + if ( !anObj->_is_nil() ) + objects.push_back( anObj._retn() ); return true; } diff --git a/src/MeasureGUI/MeasureGUI_CheckCompoundOfBlocksDlg.h b/src/MeasureGUI/MeasureGUI_CheckCompoundOfBlocksDlg.h index 58c1b2749..4de051f6e 100644 --- a/src/MeasureGUI/MeasureGUI_CheckCompoundOfBlocksDlg.h +++ b/src/MeasureGUI/MeasureGUI_CheckCompoundOfBlocksDlg.h @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,70 +17,60 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_CheckCompoundOfBlocksDlg.h +// Author : Vladimir KLYACHIN, Open CASCADE S.A.S. (vladimir.klyachin@opencascade.com) // -// -// File : MeasureGUI_CheckCompoundOfBlocksDlg.h -// Author : VKN -// Module : GEOM +#ifndef MEASUREGUI_CHECKCOMPOUNDOFBLOCKSDLG_H +#define MEASUREGUI_CHECKCOMPOUNDOFBLOCKSDLG_H -#ifndef DIALOGBOX_CHECKCOMPOUNDOFBLOCKSDLG_H -#define DIALOGBOX_CHECKCOMPOUNDOFBLOCKSDLG_H +#include -#include "GEOM_MeasureGUI.hxx" - -#include "GEOMBase_Skeleton.h" - -class MeasureGUI_1Sel1TextView_QTD; -class QListBox; -class QLabel; +class MeasureGUI_1Sel1TextView2ListBox; //================================================================================= // class : MeasureGUI_CheckCompoundOfBlocksDlg // purpose : //================================================================================= -class GEOM_MEASUREGUI_EXPORT MeasureGUI_CheckCompoundOfBlocksDlg : public GEOMBase_Skeleton + +class MeasureGUI_CheckCompoundOfBlocksDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - MeasureGUI_CheckCompoundOfBlocksDlg(GeometryGUI* GUI, QWidget* theParent); - ~MeasureGUI_CheckCompoundOfBlocksDlg(); - + MeasureGUI_CheckCompoundOfBlocksDlg( GeometryGUI*, QWidget* ); + ~MeasureGUI_CheckCompoundOfBlocksDlg(); + protected: - // redefined from GEOMBase_Helper and GEOMBase_Skeleton - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& msg ); - virtual bool execute( ObjectList& objects ); - virtual void processObject(); + // redefined from GEOMBase_Helper and GEOMBase_Skeleton + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void processObject(); private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - - void onErrorsListSelectionChanged(); - void onSubShapesListSelectionChanged(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + + void onErrorsListSelectionChanged(); + void onSubShapesListSelectionChanged(); + +private: + void Init(); + void enterEvent( QEvent* ); + bool getBCErrors( bool&, + GEOM::GEOM_IBlocksOperations::BCErrors& ); + void activateSelection(); private: - void Init(); - void enterEvent( QEvent* e ); - bool getBCErrors( bool& theIsCompoundOfBlocks, - GEOM::GEOM_IBlocksOperations::BCErrors& theErrors); - void activateSelection(); - -private: - GEOM::GEOM_Object_var myObj; - MeasureGUI_1Sel1TextView_QTD* myGrp; - - QLabel* myErrorsLbl; - QListBox* myErrorsLBox; - QLabel* mySubShapesLbl; - QListBox* mySubShapesLBox; + GEOM::GEOM_Object_var myObj; + MeasureGUI_1Sel1TextView2ListBox* myGrp; }; -#endif // DIALOGBOX_CHECKCOMPOUNDOFBLOCKSDLG_H +#endif // MEASUREGUI_CHECKCOMPOUNDOFBLOCKSDLG_H diff --git a/src/MeasureGUI/MeasureGUI_CheckShapeDlg.cxx b/src/MeasureGUI/MeasureGUI_CheckShapeDlg.cxx index 8d78176f4..9fd3c2228 100644 --- a/src/MeasureGUI/MeasureGUI_CheckShapeDlg.cxx +++ b/src/MeasureGUI/MeasureGUI_CheckShapeDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -19,81 +19,56 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_CheckShapeDlg.cxx +// Author : Nicolas REJNERI, Open CASCADE S.A.S. // -// -// File : MeasureGUI_CheckShapeDlg.cxx -// Author : Nicolas REJNERI -// Module : GEOM -// $Header$ - #include "MeasureGUI_CheckShapeDlg.h" +#include "MeasureGUI_Widgets.h" -#include "utilities.h" -#include "SUIT_Session.h" -#include "SalomeApp_Tools.h" - -#include -#include -#include -#include -#include -#include -#include -#include +#include +#include +#include #define TEXTEDIT_FONT_FAMILY "Courier" #define TEXTEDIT_FONT_SIZE 11 -MeasureGUI_1Sel1TextView1Check_QTD::MeasureGUI_1Sel1TextView1Check_QTD(QWidget* parent, - const char* name, WFlags fl) - : MeasureGUI_1Sel1TextView_QTD(parent, name, fl) -{ - CheckBoxGeom = new QCheckBox(GroupBox1, "CheckBoxGeom"); - CheckBoxGeom->setText(tr("CHECK_SHAPE_GEOMETRY")); - Layout1->addMultiCellWidget(CheckBoxGeom, 2, 2, 0, 2); - - CheckBoxGeom->setChecked(false); -} - -MeasureGUI_1Sel1TextView1Check_QTD::~MeasureGUI_1Sel1TextView1Check_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - //================================================================================= // class : MeasureGUI_CheckShapeDlg() // purpose : Constructs a MeasureGUI_CheckShapeDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to -// TRUE to construct a modal dialog. +// true to construct a modal dialog. //================================================================================= MeasureGUI_CheckShapeDlg::MeasureGUI_CheckShapeDlg( GeometryGUI* GUI, QWidget* parent ) -: MeasureGUI_Skeleton( GUI, parent, "MeasureGUI_CheckShapeDlg" ) + : MeasureGUI_Skeleton( GUI, parent ) { QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( - "GEOM",tr( "ICON_DLG_CHECKSHAPE" ) ) ); + "GEOM", tr( "ICON_DLG_CHECKSHAPE" ) ) ); QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( - "GEOM",tr( "ICON_SELECT" ) ) ); + "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption( tr( "GEOM_CHECK_TITLE" ) ); + setWindowTitle( tr( "GEOM_CHECK_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle( tr( "GEOM_CHECK_SHAPE" ) ); - RadioButton1->setPixmap( image0 ); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_CHECK_SHAPE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); - myGrp = new MeasureGUI_1Sel1TextView1Check_QTD( this, "myGrp" ); + myGrp = new MeasureGUI_1Sel1TextView1Check( centralWidget() ); myGrp->GroupBox1->setTitle( tr( "GEOM_CHECK_INFOS" ) ); myGrp->TextLabel1->setText( tr( "GEOM_OBJECT" ) ); - myGrp->TextEdit1->setReadOnly( TRUE ); + myGrp->TextView1->setReadOnly( true ); QFont aFont( TEXTEDIT_FONT_FAMILY, TEXTEDIT_FONT_SIZE ); aFont.setStyleHint( QFont::TypeWriter, QFont::PreferAntialias ); - myGrp->TextEdit1->setFont( aFont ); - myGrp->PushButton1->setPixmap( image1 ); + myGrp->TextView1->setFont( aFont ); + myGrp->PushButton1->setIcon( image1 ); myGrp->LineEdit1->setReadOnly( true ); - Layout1->addWidget( myGrp, 1, 0 ); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( myGrp ); /***************************************************************/ @@ -122,8 +97,8 @@ void MeasureGUI_CheckShapeDlg::Init() mySelEdit = myGrp->LineEdit1; MeasureGUI_Skeleton::Init(); - connect(myGrp->CheckBoxGeom, SIGNAL(toggled(bool)), - this, SLOT(SelectionIntoArgument())); + connect( myGrp->CheckBox1, SIGNAL( toggled( bool) ), + this, SLOT( SelectionIntoArgument() ) ); } //================================================================================= @@ -134,22 +109,19 @@ bool MeasureGUI_CheckShapeDlg::getParameters ( bool& theIsValid, QString& theMsg { if ( myObj->_is_nil() ) return false; - else - { - try - { + else { + try { char* aMsg; - bool isCheckGeometry = myGrp->CheckBoxGeom->isChecked(); + bool isCheckGeometry = myGrp->CheckBox1->isChecked(); GEOM::GEOM_IMeasureOperations_ptr aMeasureOp = GEOM::GEOM_IMeasureOperations::_narrow( getOperation() ); - if (isCheckGeometry) - theIsValid = aMeasureOp->CheckShapeWithGeometry(myObj, aMsg); + if ( isCheckGeometry ) + theIsValid = aMeasureOp->CheckShapeWithGeometry( myObj, aMsg ); else - theIsValid = aMeasureOp->CheckShape(myObj, aMsg); + theIsValid = aMeasureOp->CheckShape( myObj, aMsg ); theMsg = aMsg; } - catch( const SALOME::SALOME_Exception& e ) - { + catch( const SALOME::SALOME_Exception& e ) { SalomeApp_Tools::QtCatchCorbaException( e ); return false; } @@ -167,18 +139,18 @@ void MeasureGUI_CheckShapeDlg::processObject() { bool isShapeValid; QString aMsg; - if ( !getParameters( isShapeValid, aMsg ) ) - { - myGrp->TextEdit1->setText( "" ); + if ( !getParameters( isShapeValid, aMsg ) ) { + myGrp->TextView1->setText( "" ); return; } - if (isShapeValid) { - myGrp->TextEdit1->setText("This Shape seems to be valid."); - } else { - QString aDescr ("This Shape is not valid.\n"); + if ( isShapeValid ) { + myGrp->TextView1->setText( "This Shape seems to be valid." ); + } + else { + QString aDescr ( "This Shape is not valid.\n" ); aDescr += aMsg; - myGrp->TextEdit1->setText(aDescr); -// myGrp->TextEdit1->setText("This Shape is not valid."); + myGrp->TextView1->setText( aDescr ); +// myGrp->TextView1->setText("This Shape is not valid."); } } diff --git a/src/MeasureGUI/MeasureGUI_CheckShapeDlg.h b/src/MeasureGUI/MeasureGUI_CheckShapeDlg.h index ba89aff2b..5a1619bd2 100644 --- a/src/MeasureGUI/MeasureGUI_CheckShapeDlg.h +++ b/src/MeasureGUI/MeasureGUI_CheckShapeDlg.h @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -19,59 +19,39 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_CheckShapeDlg.h +// Author : Nicolas REJNERI, Open CASCADE S.A.S. // -// -// File : MeasureGUI_CheckShapeDlg.h -// Author : Nicolas REJNERI -// Module : GEOM - -#ifndef DIALOGBOX_CHECKSHAPEDLG_H -#define DIALOGBOX_CHECKSHAPEDLG_H - -#include "GEOM_MeasureGUI.hxx" +#ifndef MEASUREGUI_CHECKSHAPEDLG_H +#define MEASUREGUI_CHECKSHAPEDLG_H #include "MeasureGUI_Skeleton.h" -#include "MeasureGUI_1Sel1TextView_QTD.h" -class QCheckBox; - -//================================================================================= -// class : MeasureGUI_1Sel1TextView1Check_QTD -// purpose : -//================================================================================= -class MeasureGUI_1Sel1TextView1Check_QTD : public MeasureGUI_1Sel1TextView_QTD -{ - Q_OBJECT - -public: - MeasureGUI_1Sel1TextView1Check_QTD( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); - ~MeasureGUI_1Sel1TextView1Check_QTD(); - - QCheckBox* CheckBoxGeom; -}; +class MeasureGUI_1Sel1TextView1Check; //================================================================================= // class : MeasureGUI_CheckShapeDlg // purpose : //================================================================================= -class GEOM_MEASUREGUI_EXPORT MeasureGUI_CheckShapeDlg : public MeasureGUI_Skeleton +class MeasureGUI_CheckShapeDlg : public MeasureGUI_Skeleton { - Q_OBJECT + Q_OBJECT public: - MeasureGUI_CheckShapeDlg(GeometryGUI* GUI, QWidget* parent); - ~MeasureGUI_CheckShapeDlg(); + MeasureGUI_CheckShapeDlg( GeometryGUI*, QWidget* ); + ~MeasureGUI_CheckShapeDlg(); protected: - // redefined from GEOMBase_Helper and MeasureGUI_Skeleton - virtual void processObject(); + // redefined from GEOMBase_Helper and MeasureGUI_Skeleton + virtual void processObject(); private: - void Init(); - bool getParameters(bool& theIsValid, QString& theMsg); + void Init(); + bool getParameters( bool&, QString& ); private: - MeasureGUI_1Sel1TextView1Check_QTD* myGrp; + MeasureGUI_1Sel1TextView1Check* myGrp; }; -#endif // DIALOGBOX_CHECKSHAPEDLG_H +#endif // MEASUREGUI_CHECKSHAPEDLG_H diff --git a/src/MeasureGUI/MeasureGUI_DistanceDlg.cxx b/src/MeasureGUI/MeasureGUI_DistanceDlg.cxx index 2591b6981..a684ce804 100644 --- a/src/MeasureGUI/MeasureGUI_DistanceDlg.cxx +++ b/src/MeasureGUI/MeasureGUI_DistanceDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -19,93 +19,84 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_DistanceDlg.cxx +// Author : Nicolas REJNERI, Open CASCADE S.A.S. // -// -// File : MeasureGUI_DistanceDlg.cxx -// Author : Nicolas REJNERI -// Module : GEOM -// $Header$ - #include "MeasureGUI_DistanceDlg.h" -#include "MeasureGUI_2Sel4LineEdit_QTD.h" -#include "GEOMBase.h" -#include "GEOM_Displayer.h" -#include "DlgRef_SpinBox.h" +#include "MeasureGUI_Widgets.h" -#include "SUIT_Session.h" -#include "SUIT_ViewWindow.h" -#include "SOCC_Prs.h" -#include "SOCC_ViewModel.h" -#include "SalomeApp_Tools.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +// OCCT Includes #include -#include #include #include #include -#include #include #include -#include "utilities.h" - -#include -#include -#include -#include -#include -#include - //================================================================================= // class : MeasureGUI_DistanceDlg() // purpose : Constructs a MeasureGUI_DistanceDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to -// TRUE to construct a modal dialog. +// true to construct a modal dialog. //================================================================================= -MeasureGUI_DistanceDlg::MeasureGUI_DistanceDlg( GeometryGUI* GUI, QWidget* parent ) -: MeasureGUI_Skeleton( GUI, parent, "MeasureGUI_DistanceDlg" ) +MeasureGUI_DistanceDlg::MeasureGUI_DistanceDlg (GeometryGUI* GUI, QWidget* parent) + : MeasureGUI_Skeleton(GUI, parent) { - QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( - "GEOM",tr( "ICON_DLG_MINDIST" ) ) ); - QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( - "GEOM",tr( "ICON_SELECT" ) ) ); + SUIT_ResourceMgr* aResMgr = SUIT_Session::session()->resourceMgr(); + QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_MINDIST"))); + QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption( tr( "GEOM_MINDIST_TITLE" ) ); + setWindowTitle(tr("GEOM_MINDIST_TITLE")); /***************************************************************/ - - GroupConstructors->setTitle( tr( "GEOM_DISTANCE" ) ); - RadioButton1->setPixmap( image0 ); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_DISTANCE")); + mainFrame()->RadioButton1->setIcon(image0); - myGrp = new MeasureGUI_2Sel4LineEdit_QTD( this, "myGrp" ); - myGrp->GroupBox1->setTitle( tr( "GEOM_MINDIST_OBJ" ) ); - myGrp->TextLabel1->setText( tr( "GEOM_OBJECT_I" ).arg( "1" ) ); - myGrp->TextLabel2->setText( tr( "GEOM_OBJECT_I" ).arg( "2" ) ); - myGrp->TextLabel3->setText( tr( "GEOM_LENGTH" ) ); - myGrp->TextLabel4->setText( tr( "GEOM_DX" ) ); - myGrp->TextLabel5->setText( tr( "GEOM_DY" ) ); - myGrp->TextLabel6->setText( tr( "GEOM_DZ" ) ); - myGrp->LineEdit3->setReadOnly( TRUE ); - myGrp->LineEdit4->setReadOnly( TRUE ); - myGrp->LineEdit5->setReadOnly( TRUE ); - myGrp->LineEdit6->setReadOnly( TRUE ); - myGrp->PushButton1->setPixmap( image1 ); - myGrp->PushButton2->setPixmap( image1 ); - myGrp->LineEdit1->setReadOnly( true ); - myGrp->LineEdit2->setReadOnly( true ); - - Layout1->addWidget( myGrp, 1, 0 ); + myGrp = new MeasureGUI_2Sel4LineEdit(centralWidget()); + myGrp->GroupBox1->setTitle(tr("GEOM_MINDIST_OBJ")); + myGrp->TextLabel1->setText(tr("GEOM_OBJECT_I").arg("1")); + myGrp->TextLabel2->setText(tr("GEOM_OBJECT_I").arg("2")); + myGrp->TextLabel3->setText(tr("GEOM_LENGTH")); + myGrp->TextLabel4->setText(tr("GEOM_DX")); + myGrp->TextLabel5->setText(tr("GEOM_DY")); + myGrp->TextLabel6->setText(tr("GEOM_DZ")); + myGrp->LineEdit3->setReadOnly(true); + myGrp->PushButton1->setIcon(image1); + myGrp->PushButton2->setIcon(image1); + myGrp->LineEdit1->setReadOnly(true); + myGrp->LineEdit2->setReadOnly(true); + myGrp->LineEdit4->setReadOnly(true); + myGrp->LineEdit5->setReadOnly(true); + myGrp->LineEdit6->setReadOnly(true); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(myGrp); /***************************************************************/ myHelpFileName = "using_measurement_tools_page.html#min_distance_anchor"; - /* Initialisation */ + // Initialisation Init(); } - //================================================================================= // function : ~MeasureGUI_DistanceDlg() // purpose : Destroys the object and frees any allocated resources @@ -114,44 +105,64 @@ MeasureGUI_DistanceDlg::~MeasureGUI_DistanceDlg() { } - //================================================================================= // function : Init() // purpose : //================================================================================= void MeasureGUI_DistanceDlg::Init() { + // init variables + myGrp->LineEdit1->setText(""); + myGrp->LineEdit2->setText(""); + myObj = myObj2 = GEOM::GEOM_Object::_nil(); + mySelBtn = myGrp->PushButton1; mySelEdit = myGrp->LineEdit1; - mySelBtn2 = myGrp->PushButton2; - mySelEdit2 = myGrp->LineEdit2; - myEditCurrentArgument = mySelEdit; + myEditCurrentArgument = myGrp->LineEdit1; - connect( mySelEdit2, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect( mySelBtn2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + // signals and slots connections + connect(myGrp->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(myGrp->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); MeasureGUI_Skeleton::Init(); } - //================================================================================= // function : SelectionIntoArgument() // purpose : Called when selection has changed //================================================================================= void MeasureGUI_DistanceDlg::SelectionIntoArgument() { - Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), testResult ); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); - if ( !testResult ) - aSelectedObject = GEOM::GEOM_Object::_nil(); + GEOM::GEOM_Object_var aSelectedObject = GEOM::GEOM_Object::_nil(); - if ( myEditCurrentArgument == mySelEdit ) - myObj = aSelectedObject; - else - myObj2 = aSelectedObject; + if (aSelList.Extent() > 0) { + Standard_Boolean testResult = Standard_False; + aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + if (!testResult) + aSelectedObject = GEOM::GEOM_Object::_nil(); + } + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + if (myEditCurrentArgument == myGrp->LineEdit1) { + myObj = aSelectedObject; + if (!myObj->_is_nil() && myObj2->_is_nil()) + myGrp->PushButton2->click(); + } + else { + myObj2 = aSelectedObject; + if (!myObj2->_is_nil() && myObj->_is_nil()) + myGrp->PushButton1->click(); + } processObject(); } @@ -162,28 +173,26 @@ void MeasureGUI_DistanceDlg::SelectionIntoArgument() //================================================================================= void MeasureGUI_DistanceDlg::processObject() { - myGrp->LineEdit1->setText( !myObj->_is_nil() ? GEOMBase::GetName( myObj ) : "" ); - myGrp->LineEdit2->setText( !myObj2->_is_nil() ? GEOMBase::GetName( myObj2 ) : "" ); + myGrp->LineEdit1->setText(!myObj->_is_nil() ? GEOMBase::GetName(myObj ) : ""); + myGrp->LineEdit2->setText(!myObj2->_is_nil() ? GEOMBase::GetName(myObj2) : ""); gp_Pnt aPnt1, aPnt2; double aDist = 0.; - if (getParameters(aDist, aPnt1, aPnt2)) - { - myGrp->LineEdit3->setText( DlgRef_SpinBox::PrintDoubleValue( aDist ) ); + if (getParameters(aDist, aPnt1, aPnt2)) { + myGrp->LineEdit3->setText(DlgRef::PrintDoubleValue(aDist)); gp_XYZ aVec = aPnt2.XYZ() - aPnt1.XYZ(); - myGrp->LineEdit4->setText( DlgRef_SpinBox::PrintDoubleValue( aVec.X() ) ); - myGrp->LineEdit5->setText( DlgRef_SpinBox::PrintDoubleValue( aVec.Y() ) ); - myGrp->LineEdit6->setText( DlgRef_SpinBox::PrintDoubleValue( aVec.Z() ) ); + myGrp->LineEdit4->setText(DlgRef::PrintDoubleValue(aVec.X())); + myGrp->LineEdit5->setText(DlgRef::PrintDoubleValue(aVec.Y())); + myGrp->LineEdit6->setText(DlgRef::PrintDoubleValue(aVec.Z())); redisplayPreview(); } - else - { - myGrp->LineEdit3->setText( "" ); - myGrp->LineEdit4->setText( "" ); - myGrp->LineEdit5->setText( "" ); - myGrp->LineEdit6->setText( "" ); + else { + myGrp->LineEdit3->setText(""); + myGrp->LineEdit4->setText(""); + myGrp->LineEdit5->setText(""); + myGrp->LineEdit6->setText(""); erasePreview(); } } @@ -192,34 +201,30 @@ void MeasureGUI_DistanceDlg::processObject() // function : getParameters() // purpose : Get distance between objects //================================================================================= -bool MeasureGUI_DistanceDlg::getParameters( double& theDistance, +bool MeasureGUI_DistanceDlg::getParameters (double& theDistance, gp_Pnt& thePnt1, - gp_Pnt& thePnt2 ) + gp_Pnt& thePnt2) { QString msg; - if ( !isValid( msg ) ) - return false; - else - { - try - { + if (isValid(msg)) { + try { double x1, y1, z1, x2, y2, z2; - theDistance = GEOM::GEOM_IMeasureOperations::_narrow( getOperation() )->GetMinDistance( - myObj, myObj2, x1, y1, z1, x2, y2, z2 ); + theDistance = GEOM::GEOM_IMeasureOperations::_narrow(getOperation())-> + GetMinDistance(myObj, myObj2, x1, y1, z1, x2, y2, z2); - thePnt1.SetCoord( x1, y1, z1 ); - thePnt2.SetCoord( x2, y2, z2 ); + thePnt1.SetCoord(x1, y1, z1); + thePnt2.SetCoord(x2, y2, z2); } - catch( const SALOME::SALOME_Exception& e ) - { - SalomeApp_Tools::QtCatchCorbaException( e ); + catch(const SALOME::SALOME_Exception& e) { + SalomeApp_Tools::QtCatchCorbaException(e); return false; } return getOperation()->IsDone(); } -} + return false; +} //================================================================================= // function : SetEditCurrentArgument() @@ -227,41 +232,51 @@ bool MeasureGUI_DistanceDlg::getParameters( double& theDistance, //================================================================================= void MeasureGUI_DistanceDlg::SetEditCurrentArgument() { - QPushButton* send = ( QPushButton* )sender(); + QPushButton* send = (QPushButton*)sender(); - if( send == mySelBtn ) - { - mySelEdit->setFocus(); - myEditCurrentArgument = mySelEdit; + if (send == myGrp->PushButton1) { + myEditCurrentArgument = myGrp->LineEdit1; + + myGrp->PushButton2->setDown(false); + myGrp->LineEdit2->setEnabled(false); } - else - { - mySelEdit2->setFocus(); - myEditCurrentArgument = mySelEdit2; + else { + myEditCurrentArgument = myGrp->LineEdit2; + + myGrp->PushButton1->setDown(false); + myGrp->LineEdit1->setEnabled(false); } - SelectionIntoArgument(); + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + // seems we need it only to avoid preview disappearing, caused by selection mode change + redisplayPreview(); } - //================================================================================= // function : LineEditReturnPressed() // purpose : //================================================================================= void MeasureGUI_DistanceDlg::LineEditReturnPressed() { - QLineEdit* send = ( QLineEdit* )sender(); + QLineEdit* send = (QLineEdit*)sender(); - if( send == mySelEdit ) - myEditCurrentArgument = mySelEdit; - else - myEditCurrentArgument = mySelEdit2; + if (send == myGrp->LineEdit1 || send == myGrp->LineEdit2) { + myEditCurrentArgument = send; - if ( GEOMBase::SelectionByNameInDialogs( this, mySelEdit->text(), selectedIO() ) ) - mySelEdit->setText( mySelEdit->text() ); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (GEOMBase::SelectionByNameInDialogs(this, myGrp->LineEdit1->text(), aSelList)) + myGrp->LineEdit1->setText(myGrp->LineEdit1->text()); + } } - //================================================================================= // function : buildPrs() // purpose : @@ -269,61 +284,57 @@ void MeasureGUI_DistanceDlg::LineEditReturnPressed() SALOME_Prs* MeasureGUI_DistanceDlg::buildPrs() { double aDist = 0.; - gp_Pnt aPnt1( 0, 0, 0 ), aPnt2( 0, 0, 0 ); + gp_Pnt aPnt1(0, 0, 0), aPnt2(0, 0, 0); SUIT_ViewWindow* vw = SUIT_Session::session()->activeApplication()->desktop()->activeWindow(); - if ( myObj->_is_nil() || myObj2->_is_nil() || - !getParameters( aDist, aPnt1, aPnt2 ) || - vw->getViewManager()->getType() != OCCViewer_Viewer::Type() ) + if (myObj->_is_nil() || myObj2->_is_nil() || + !getParameters(aDist, aPnt1, aPnt2) || + vw->getViewManager()->getType() != OCCViewer_Viewer::Type()) return 0; try { - if( aDist <= 1.e-9 ) - { - BRepBuilderAPI_MakeVertex aMaker( aPnt1 ); - return getDisplayer()->BuildPrs( aMaker.Vertex() ); + if (aDist <= 1.e-9) { + BRepBuilderAPI_MakeVertex aMaker(aPnt1); + return getDisplayer()->BuildPrs(aMaker.Vertex()); } - else - { - BRepBuilderAPI_MakeEdge MakeEdge( aPnt1, aPnt2 ); - TopoDS_Vertex aVert1 = BRepBuilderAPI_MakeVertex( aPnt1 ); - TopoDS_Vertex aVert2 = BRepBuilderAPI_MakeVertex( aPnt2 ); + else { + BRepBuilderAPI_MakeEdge MakeEdge(aPnt1, aPnt2); + TopoDS_Vertex aVert1 = BRepBuilderAPI_MakeVertex(aPnt1); + TopoDS_Vertex aVert2 = BRepBuilderAPI_MakeVertex(aPnt2); QString aLabel; - aLabel.sprintf( "%.1f", aDist ); + aLabel.sprintf("%.1f", aDist); - gp_Pnt aPnt3( ( aPnt1.X() + aPnt2.X() ) / 2, - ( aPnt1.Y() + aPnt2.Y() ) / 2, - ( aPnt1.Z() + aPnt2.Z() ) / 2 + 100 ); + gp_Pnt aPnt3((aPnt1.X() + aPnt2.X()) / 2, + (aPnt1.Y() + aPnt2.Y()) / 2, + (aPnt1.Z() + aPnt2.Z()) / 2); - gp_Vec va( aPnt3, aPnt1 ); - gp_Vec vb( aPnt3, aPnt2 ); + gp_Vec va(aPnt3, aPnt1); + gp_Vec vb(aPnt3, aPnt2); - if ( va.IsParallel( vb, Precision::Angular() ) ) - { - aPnt3.SetY( ( aPnt1.Y() + aPnt2.Y() ) / 2 + 100 ); - aPnt3.SetZ( ( aPnt1.Z() + aPnt2.Z() ) / 2 ); + if (va.IsParallel(vb, Precision::Angular())) { + aPnt3.SetY((aPnt1.Y() + aPnt2.Y()) / 2 + 100); + aPnt3.SetZ((aPnt1.Z() + aPnt2.Z()) / 2); } - gce_MakePln gce_MP( aPnt1, aPnt2, aPnt3 ); - Handle( Geom_Plane ) P = new Geom_Plane( gce_MP.Value() ); + gce_MakePln gce_MP(aPnt1, aPnt2, aPnt3); + Handle(Geom_Plane) P = new Geom_Plane(gce_MP.Value()); - Handle( AIS_LengthDimension ) anIO = new AIS_LengthDimension - (aVert1, aVert2, P, aDist, TCollection_ExtendedString((Standard_CString)aLabel.latin1())); + Handle(AIS_LengthDimension) anIO = new AIS_LengthDimension( + aVert1, aVert2, P, aDist, TCollection_ExtendedString((Standard_CString)aLabel.toLatin1().constData())); + anIO->SetArrowSize(aDist/20); - SOCC_Prs* aPrs = - dynamic_cast( ((SOCC_Viewer*)(vw->getViewManager()->getViewModel()))->CreatePrs( 0 ) ); + SOCC_Prs* aPrs = dynamic_cast(((SOCC_Viewer*)(vw->getViewManager()->getViewModel()))->CreatePrs(0)); - if ( aPrs ) - aPrs->AddObject( anIO ); + if (aPrs) + aPrs->AddObject(anIO); return aPrs; } } - catch( Standard_Failure ) - { + catch(Standard_Failure) { return 0; } } @@ -332,7 +343,7 @@ SALOME_Prs* MeasureGUI_DistanceDlg::buildPrs() // function : isValid() // purpose : //================================================================================= -bool MeasureGUI_DistanceDlg::isValid( QString& msg ) +bool MeasureGUI_DistanceDlg::isValid (QString& msg) { - return MeasureGUI_Skeleton::isValid( msg ) && !myObj2->_is_nil(); + return MeasureGUI_Skeleton::isValid(msg) && !myObj2->_is_nil(); } diff --git a/src/MeasureGUI/MeasureGUI_DistanceDlg.h b/src/MeasureGUI/MeasureGUI_DistanceDlg.h index 43202a187..08f00cdbc 100644 --- a/src/MeasureGUI/MeasureGUI_DistanceDlg.h +++ b/src/MeasureGUI/MeasureGUI_DistanceDlg.h @@ -1,78 +1,70 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_DistanceDlg.h +// Author : Nicolas REJNERI, Open CASCADE S.A.S. // -// -// File : MeasureGUI_DistanceDlg.h -// Author : Nicolas REJNERI -// Module : GEOM -// $Header$ - -#ifndef DIALOGBOX_DISTANCE_H -#define DIALOGBOX_DISTANCE_H - -#include "GEOM_MeasureGUI.hxx" +#ifndef MEASUREGUI_DISTANCEDLG_H +#define MEASUREGUI_DISTANCEDLG_H #include "MeasureGUI_Skeleton.h" -class MeasureGUI_2Sel4LineEdit_QTD; +class MeasureGUI_2Sel4LineEdit; class gp_Pnt; //================================================================================= // class : MeasureGUI_DistanceDlg // purpose : //================================================================================= -class GEOM_MEASUREGUI_EXPORT MeasureGUI_DistanceDlg : public MeasureGUI_Skeleton + +class MeasureGUI_DistanceDlg : public MeasureGUI_Skeleton { - Q_OBJECT - + Q_OBJECT + public: - MeasureGUI_DistanceDlg( GeometryGUI* GUI, - QWidget* parent ); - ~MeasureGUI_DistanceDlg(); + MeasureGUI_DistanceDlg( GeometryGUI*, QWidget* ); + ~MeasureGUI_DistanceDlg(); + protected: - - // redefined from GEOMBase_Helper and MeasureGUI_Skeleton - virtual void processObject(); - virtual SALOME_Prs* buildPrs(); - virtual void SelectionIntoArgument(); - virtual void LineEditReturnPressed(); - virtual void SetEditCurrentArgument(); - virtual bool isValid( QString& msg ); + // redefined from GEOMBase_Helper and MeasureGUI_Skeleton + virtual void processObject(); + virtual SALOME_Prs* buildPrs(); + virtual void SelectionIntoArgument(); + virtual void LineEditReturnPressed(); + virtual void SetEditCurrentArgument(); + virtual bool isValid( QString& ); private: - - void Init(); - bool getParameters( double& theDistance, - gp_Pnt& thePnt1, - gp_Pnt& thePnt2 ); + void Init(); + bool getParameters( double&, + gp_Pnt&, + gp_Pnt& ); private: - - QLineEdit* myEditCurrentArgument; - QLineEdit* mySelEdit2; - QPushButton* mySelBtn2; - - MeasureGUI_2Sel4LineEdit_QTD* myGrp; - GEOM::GEOM_Object_var myObj2; - + QLineEdit* myEditCurrentArgument; + QLineEdit* mySelEdit2; + QPushButton* mySelBtn2; + + MeasureGUI_2Sel4LineEdit* myGrp; + GEOM::GEOM_Object_var myObj2; }; -#endif // DIALOGBOX_DISTANCE_H +#endif // MEASUREGUI_DISTANCEDLG_H diff --git a/src/MeasureGUI/MeasureGUI_InertiaDlg.cxx b/src/MeasureGUI/MeasureGUI_InertiaDlg.cxx index 8caa6f25a..2ff5495be 100644 --- a/src/MeasureGUI/MeasureGUI_InertiaDlg.cxx +++ b/src/MeasureGUI/MeasureGUI_InertiaDlg.cxx @@ -1,98 +1,87 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_InertiaDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : MeasureGUI_InertiaDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM - #include "MeasureGUI_InertiaDlg.h" -#include "MeasureGUI_1Sel12LineEdit_QTD.h" +#include "MeasureGUI_Widgets.h" -#include "GEOMBase.h" +#include -#include -#include -#include #include -#include -#include "utilities.h" -#include "SUIT_Session.h" -#include "SalomeApp_Tools.h" - -#include -#include -#include -#include -#include -#include +#include +#include +#include //================================================================================= // class : MeasureGUI_InertiaDlg() // purpose : Constructs a MeasureGUI_InertiaDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to -// TRUE to construct a modal dialog. +// true to construct a modal dialog. //================================================================================= MeasureGUI_InertiaDlg::MeasureGUI_InertiaDlg( GeometryGUI* GUI, QWidget* parent ) -: MeasureGUI_Skeleton( GUI, parent, "MeasureGUI_InertiaDlg" ) + : MeasureGUI_Skeleton( GUI, parent ) { QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM",tr( "ICON_DLG_INERTIA" ) ) ); QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM",tr( "ICON_SELECT" ) ) ); - setCaption( tr( "GEOM_INERTIA_TITLE" ) ); + setWindowTitle( tr( "GEOM_INERTIA_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle( tr( "GEOM_INERTIA_CONSTR" ) ); - RadioButton1->setPixmap( image0 ); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_INERTIA_CONSTR" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); - myGrp = new MeasureGUI_1Sel12LineEdit_QTD( this, "myGrp" ); + myGrp = new MeasureGUI_1Sel12LineEdit( centralWidget() ); myGrp->GroupBox1->setTitle( tr( "GEOM_MATRIX" ) ); myGrp->TextLabel1->setText( tr( "GEOM_OBJECT" ) ); myGrp->TextLabel2->setText( tr( "GEOM_INERTIA_I" ).arg( "1" ) ); myGrp->TextLabel3->setText( tr( "GEOM_INERTIA_I" ).arg( "2" ) ); myGrp->TextLabel4->setText( tr( "GEOM_INERTIA_I" ).arg( "3" ) ); myGrp->TextLabel5->setText( tr( "GEOM_INERTIA_IXYZ" ) ); - myGrp->LineEdit11->setReadOnly( TRUE ); - myGrp->LineEdit12->setReadOnly( TRUE ); - myGrp->LineEdit13->setReadOnly( TRUE ); - myGrp->LineEdit21->setReadOnly( TRUE ); - myGrp->LineEdit22->setReadOnly( TRUE ); - myGrp->LineEdit23->setReadOnly( TRUE ); - myGrp->LineEdit31->setReadOnly( TRUE ); - myGrp->LineEdit32->setReadOnly( TRUE ); - myGrp->LineEdit33->setReadOnly( TRUE ); - myGrp->LineEdit41->setReadOnly( TRUE ); - myGrp->LineEdit42->setReadOnly( TRUE ); - myGrp->LineEdit43->setReadOnly( TRUE ); - myGrp->PushButton1->setPixmap( image1 ); + myGrp->LineEdit11->setReadOnly( true ); + myGrp->LineEdit12->setReadOnly( true ); + myGrp->LineEdit13->setReadOnly( true ); + myGrp->LineEdit21->setReadOnly( true ); + myGrp->LineEdit22->setReadOnly( true ); + myGrp->LineEdit23->setReadOnly( true ); + myGrp->LineEdit31->setReadOnly( true ); + myGrp->LineEdit32->setReadOnly( true ); + myGrp->LineEdit33->setReadOnly( true ); + myGrp->LineEdit41->setReadOnly( true ); + myGrp->LineEdit42->setReadOnly( true ); + myGrp->LineEdit43->setReadOnly( true ); + myGrp->PushButton1->setIcon( image1 ); myGrp->LineEdit1->setReadOnly( true ); - Layout1->addWidget( myGrp, 1, 0 ); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( myGrp ); /***************************************************************/ @@ -132,8 +121,7 @@ void MeasureGUI_InertiaDlg::processObject() gp_XYZ anIXYZ; gp_Mat aMat; - if ( !getParameters( aMat, anIXYZ ) ) - { + if ( !getParameters( aMat, anIXYZ ) ) { mySelEdit->setText( "" ); myGrp->LineEdit11->setText( "" ); @@ -152,8 +140,7 @@ void MeasureGUI_InertiaDlg::processObject() myGrp->LineEdit42->setText( "" ); myGrp->LineEdit43->setText( "" ); } - else - { + else { myGrp->LineEdit11->setText( QString( "%1" ).arg( aMat( 1, 1 ), 12, 'e', 4 ) ); myGrp->LineEdit12->setText( QString( "%1" ).arg( aMat( 1, 2 ), 12, 'e', 4 ) ); myGrp->LineEdit13->setText( QString( "%1" ).arg( aMat( 1, 3 ), 12, 'e', 4 ) ); @@ -181,10 +168,8 @@ bool MeasureGUI_InertiaDlg::getParameters( gp_Mat& I, { if ( myObj->_is_nil() ) return false; - else - { - try - { + else { + try { double x, y, z; GEOM::GEOM_IMeasureOperations::_narrow( getOperation() )->GetInertia( myObj, I( 1, 1 ), I( 1, 2 ), I( 1, 3 ), @@ -194,8 +179,7 @@ bool MeasureGUI_InertiaDlg::getParameters( gp_Mat& I, theIXYZ.SetCoord( x, y, z ); } - catch( const SALOME::SALOME_Exception& e ) - { + catch ( const SALOME::SALOME_Exception& e ) { SalomeApp_Tools::QtCatchCorbaException( e ); return false; } diff --git a/src/MeasureGUI/MeasureGUI_InertiaDlg.h b/src/MeasureGUI/MeasureGUI_InertiaDlg.h index 0905d5219..1187fa569 100644 --- a/src/MeasureGUI/MeasureGUI_InertiaDlg.h +++ b/src/MeasureGUI/MeasureGUI_InertiaDlg.h @@ -1,39 +1,34 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : MeasureGUI_InertiaDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - -#ifndef DIALOGBOX_INERTIA_H -#define DIALOGBOX_INERTIA_H - -#include "GEOM_MeasureGUI.hxx" +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_InertiaDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef MEASUREGUI_INERTIADLG_H +#define MEASUREGUI_INERTIADLG_H #include "MeasureGUI_Skeleton.h" -class MeasureGUI_1Sel12LineEdit_QTD; +class MeasureGUI_1Sel12LineEdit; class gp_XYZ; class gp_Mat; @@ -42,28 +37,24 @@ class gp_Mat; // purpose : Dialog for displaying moment of inertia //================================================================================= -class GEOM_MEASUREGUI_EXPORT MeasureGUI_InertiaDlg : public MeasureGUI_Skeleton +class MeasureGUI_InertiaDlg : public MeasureGUI_Skeleton { - Q_OBJECT - -public: - MeasureGUI_InertiaDlg( GeometryGUI* GUI, - QWidget* parent ); - ~MeasureGUI_InertiaDlg(); -protected: - - // redefined from GEOMBase_Helper and MeasureGUI_Skeleton - virtual void processObject(); - -private: - - void Init(); - bool getParameters( gp_Mat& theMatrix, - gp_XYZ& theMoment ); - -private: + Q_OBJECT - MeasureGUI_1Sel12LineEdit_QTD* myGrp; +public: + MeasureGUI_InertiaDlg( GeometryGUI*, QWidget* ); + ~MeasureGUI_InertiaDlg(); + +protected: + // redefined from GEOMBase_Helper and MeasureGUI_Skeleton + virtual void processObject(); + +private: + void Init(); + bool getParameters( gp_Mat&, gp_XYZ& ); + +private: + MeasureGUI_1Sel12LineEdit* myGrp; }; -#endif // DIALOGBOX_INERTIA_H +#endif // MEASUREGUI_INERTIADLG_H diff --git a/src/MeasureGUI/MeasureGUI_MaxToleranceDlg.cxx b/src/MeasureGUI/MeasureGUI_MaxToleranceDlg.cxx index 5d364c386..59630ab7d 100644 --- a/src/MeasureGUI/MeasureGUI_MaxToleranceDlg.cxx +++ b/src/MeasureGUI/MeasureGUI_MaxToleranceDlg.cxx @@ -1,68 +1,58 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_MaxToleranceDlg.cxx +// Author : Nicolas REJNERI, Open CASCADE S.A.S. // -// -// File : MeasureGUI_MaxToleranceDlg.cxx -// Author : Nicolas REJNERI -// Module : GEOM -// $Header$ - #include "MeasureGUI_MaxToleranceDlg.h" -#include "MeasureGUI_1Sel6LineEdit_QTD.h" +#include "MeasureGUI_Widgets.h" -#include "utilities.h" -#include "SUIT_Session.h" -#include "SalomeApp_Tools.h" - -#include -#include -#include -#include -#include -#include +#include +#include +#include //================================================================================= // class : MeasureGUI_MaxToleranceDlg() // purpose : Constructs a MeasureGUI_MaxToleranceDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to -// TRUE to construct a modal dialog. +// true to construct a modal dialog. //================================================================================= MeasureGUI_MaxToleranceDlg::MeasureGUI_MaxToleranceDlg( GeometryGUI* GUI, QWidget* parent ) -: MeasureGUI_Skeleton( GUI, parent, "MeasureGUI_MaxToleranceDlg" ) + : MeasureGUI_Skeleton( GUI, parent ) { QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( - "GEOM",tr( "ICON_DLG_TOLERANCE" ) ) ); + "GEOM", tr( "ICON_DLG_TOLERANCE" ) ) ); QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( - "GEOM",tr( "ICON_SELECT" ) ) ); + "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption( tr( "GEOM_TOLERANCE_TITLE" ) ); + setWindowTitle( tr( "GEOM_TOLERANCE_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle( tr( "GEOM_TOLERANCE" ) ); - RadioButton1->setPixmap( image0 ); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_TOLERANCE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); - myGrp = new MeasureGUI_1Sel6LineEdit_QTD( this, "myGrp" ); + myGrp = new MeasureGUI_1Sel6LineEdit( centralWidget() ); myGrp->GroupBox1->setTitle( tr( "GEOM_TOLERANCE_CONSTR" ) ); myGrp->TextLabel1->setText( tr( "GEOM_OBJECT" ) ); myGrp->TextLabel2->setText( tr( "GEOM_MIN" ) ); @@ -70,16 +60,18 @@ MeasureGUI_MaxToleranceDlg::MeasureGUI_MaxToleranceDlg( GeometryGUI* GUI, QWidge myGrp->TextLabel4->setText( tr( "GEOM_TOLERANCE_FACE" ) ); myGrp->TextLabel5->setText( tr( "GEOM_TOLERANCE_EDGE" ) ); myGrp->TextLabel6->setText( tr( "GEOM_TOLERANCE_VERTEX" ) ); - myGrp->LineEdit11->setReadOnly( TRUE ); - myGrp->LineEdit12->setReadOnly( TRUE ); - myGrp->LineEdit21->setReadOnly( TRUE ); - myGrp->LineEdit22->setReadOnly( TRUE ); - myGrp->LineEdit31->setReadOnly( TRUE ); - myGrp->LineEdit32->setReadOnly( TRUE ); - myGrp->PushButton1->setPixmap( image1 ); + myGrp->LineEdit11->setReadOnly( true ); + myGrp->LineEdit12->setReadOnly( true ); + myGrp->LineEdit21->setReadOnly( true ); + myGrp->LineEdit22->setReadOnly( true ); + myGrp->LineEdit31->setReadOnly( true ); + myGrp->LineEdit32->setReadOnly( true ); + myGrp->PushButton1->setIcon( image1 ); myGrp->LineEdit1->setReadOnly( true ); - Layout1->addWidget( myGrp, 1, 0 ); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( myGrp ); /***************************************************************/ @@ -122,8 +114,7 @@ void MeasureGUI_MaxToleranceDlg::processObject() if ( !getParameters( aMinFaceToler, aMaxFaceToler, aMinEdgeToler, aMaxEdgeToler, - aMinVertexToler, aMaxVertexToler ) ) - { + aMinVertexToler, aMaxVertexToler ) ) { myGrp->LineEdit11->setText( "" ); myGrp->LineEdit12->setText( "" ); @@ -164,16 +155,13 @@ bool MeasureGUI_MaxToleranceDlg::getParameters( double& theMinFaceToler, { if ( myObj->_is_nil() ) return false; - else - { - try - { + else { + try { GEOM::GEOM_IMeasureOperations::_narrow( getOperation() )->GetTolerance( myObj, - theMinFaceToler, theMaxFaceToler, theMinEdgeToler, - theMaxEdgeToler, theMinVertexToler, theMaxVertexToler ); + theMinFaceToler, theMaxFaceToler, theMinEdgeToler, + theMaxEdgeToler, theMinVertexToler, theMaxVertexToler ); } - catch( const SALOME::SALOME_Exception& e ) - { + catch( const SALOME::SALOME_Exception& e ) { SalomeApp_Tools::QtCatchCorbaException( e ); return false; } diff --git a/src/MeasureGUI/MeasureGUI_MaxToleranceDlg.h b/src/MeasureGUI/MeasureGUI_MaxToleranceDlg.h index 1b36bca03..65ed53617 100644 --- a/src/MeasureGUI/MeasureGUI_MaxToleranceDlg.h +++ b/src/MeasureGUI/MeasureGUI_MaxToleranceDlg.h @@ -1,76 +1,61 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : MeasureGUI_MaxToleranceDlg.h -// Author : Nicolas REJNERI -// Module : GEOM -// $Header$ - -#ifndef DIALOGBOX_MAXTOLERANCE_H -#define DIALOGBOX_MAXTOLERANCE_H - -#include "GEOM_MeasureGUI.hxx" +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_MaxToleranceDlg.h +// Author : Nicolas REJNERI, Open CASCADE S.A.S. +// +#ifndef MEASUREGUI_MAXTOLERANCEDLG_H +#define MEASUREGUI_MAXTOLERANCEDLG_H #include "MeasureGUI_Skeleton.h" -class MeasureGUI_1Sel6LineEdit_QTD; +class MeasureGUI_1Sel6LineEdit; //================================================================================= // class : DialogBox_PROPERTIES // purpose : //================================================================================= -class GEOM_MEASUREGUI_EXPORT MeasureGUI_MaxToleranceDlg : public MeasureGUI_Skeleton +class MeasureGUI_MaxToleranceDlg : public MeasureGUI_Skeleton { - Q_OBJECT + Q_OBJECT public: - MeasureGUI_MaxToleranceDlg( GeometryGUI* GUI, - QWidget* parent ); - ~MeasureGUI_MaxToleranceDlg(); + MeasureGUI_MaxToleranceDlg( GeometryGUI*, QWidget* ); + ~MeasureGUI_MaxToleranceDlg(); protected: - - // redefined from GEOMBase_Helper and MeasureGUI_Skeleton - virtual void processObject(); + // redefined from GEOMBase_Helper and MeasureGUI_Skeleton + virtual void processObject(); private: - - void Init(); - bool getParameters( double& theMinFaceToler, - double& theMaxFaceToler, - double& theMinEdgeToler, - double& theMaxEdgeToler, - double& theMinVertexToler, - double& theMaxVertexToler ); - - - + void Init(); + bool getParameters( double&, double&, double&, + double&, double&, double& ); + private: - - MeasureGUI_1Sel6LineEdit_QTD* myGrp; + MeasureGUI_1Sel6LineEdit* myGrp; }; -#endif // DIALOGBOX_MAXTOLERANCE_H +#endif // MEASUREGUI_MAXTOLERANCEDLG_H diff --git a/src/MeasureGUI/MeasureGUI_NormaleDlg.cxx b/src/MeasureGUI/MeasureGUI_NormaleDlg.cxx index 6714e4fb1..b5207d790 100644 --- a/src/MeasureGUI/MeasureGUI_NormaleDlg.cxx +++ b/src/MeasureGUI/MeasureGUI_NormaleDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -19,24 +19,29 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_NormaleDlg.cxx +// Author : Julia DOROVSKIKH, Open CASCADE S.A.S. // -// -// File : MeasureGUI_NormaleDlg.cxx -// Author : Julia DOROVSKIKH -// Module : GEOM -// $Header$ - #include "MeasureGUI_NormaleDlg.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include -#include +#include +#include +#include +#include -#include "GEOMImpl_Types.hxx" +// OCCT Includes +#include +#include +#include +#include +#include -#include "utilities.h" +#include //================================================================================= // class : MeasureGUI_NormaleDlg() @@ -45,33 +50,35 @@ // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -MeasureGUI_NormaleDlg::MeasureGUI_NormaleDlg (GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +MeasureGUI_NormaleDlg::MeasureGUI_NormaleDlg (GeometryGUI* theGeometryGUI, QWidget* parent) + : GEOMBase_Skeleton(theGeometryGUI, parent, false) { SUIT_ResourceMgr* aResMgr = SUIT_Session::session()->resourceMgr(); QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_NORMALE"))); QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_NORMALE_TITLE")); + setWindowTitle(tr("GEOM_NORMALE_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_NORMALE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_NORMALE")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); - GroupArgs = new DlgRef_2Sel_QTD (this, "GroupArgs"); + GroupArgs = new DlgRef_2Sel (centralWidget()); GroupArgs->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); GroupArgs->TextLabel1->setText(tr("GEOM_FACE")); GroupArgs->TextLabel2->setText(tr("GEOM_POINT")); - GroupArgs->PushButton1->setPixmap(image1); - GroupArgs->PushButton2->setPixmap(image1); + GroupArgs->PushButton1->setIcon(image1); + GroupArgs->PushButton2->setIcon(image1); - Layout1->addWidget(GroupArgs, 2, 0); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupArgs); /***************************************************************/ setHelpFileName("using_measurement_tools_page.html#normale_anchor"); @@ -85,7 +92,6 @@ MeasureGUI_NormaleDlg::MeasureGUI_NormaleDlg (GeometryGUI* theGeometryGUI, QWidg //================================================================================= MeasureGUI_NormaleDlg::~MeasureGUI_NormaleDlg() { - // no need to delete child widgets, Qt does it all for us } //================================================================================= @@ -94,37 +100,28 @@ MeasureGUI_NormaleDlg::~MeasureGUI_NormaleDlg() //================================================================================= void MeasureGUI_NormaleDlg::Init() { - /* init variables */ + // init variables GroupArgs->LineEdit1->setReadOnly(true); GroupArgs->LineEdit2->setReadOnly(true); - myFace = GEOM::GEOM_Object::_nil(); - myPoint = GEOM::GEOM_Object::_nil(); + GroupArgs->LineEdit1->setText(""); + GroupArgs->LineEdit2->setText(""); + myFace = myPoint = GEOM::GEOM_Object::_nil(); - myEditCurrentArgument = GroupArgs->LineEdit1; - globalSelection(GEOM_FACE); - - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); connect(GroupArgs->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(GroupArgs->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupArgs->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupArgs->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect(GroupArgs->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupArgs->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); initName(tr("GEOM_VECTOR_NORMALE")); - //ConstructorsClicked(0); + GroupArgs->PushButton1->click(); SelectionIntoArgument(); - - /* displays Dialog */ - GroupArgs->show(); - this->show(); } //================================================================================= @@ -147,12 +144,14 @@ bool MeasureGUI_NormaleDlg::ClickOnApply() return false; initName(); + // activate first line edit + GroupArgs->PushButton1->click(); return true; } //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection as changed or other case +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void MeasureGUI_NormaleDlg::SelectionIntoArgument() { @@ -166,26 +165,130 @@ void MeasureGUI_NormaleDlg::SelectionIntoArgument() myPoint = GEOM::GEOM_Object::_nil(); } - if (IObjectCount() != 1) + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) return; // nbSel == 1 Standard_Boolean testResult = Standard_False; GEOM::GEOM_Object_var aSelectedObject = - GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult); + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); - if (!testResult) + if (!testResult || CORBA::is_nil(aSelectedObject)) return; + QString aName = GEOMBase::GetName(aSelectedObject); + if (myEditCurrentArgument == GroupArgs->LineEdit1) { + TopoDS_Shape aShape; + if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) + { + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) // Local Selection + { + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId()); + int anIndex = aMap(1); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + aName += QString(":face_%1").arg(anIndex); + } + else // Global Selection + { + if (aShape.ShapeType() != TopAbs_FACE) { + aSelectedObject = GEOM::GEOM_Object::_nil(); + aName = ""; + } + } + } myFace = aSelectedObject; + myEditCurrentArgument->setText(aName); + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + if (!myFace->_is_nil() && myPoint->_is_nil()) + GroupArgs->PushButton2->click(); } else if (myEditCurrentArgument == GroupArgs->LineEdit2) { + TopoDS_Shape aShape; + if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) + { + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) // Local Selection + { + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId()); + int anIndex = aMap(1); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + aName += QString(":vertex_%1").arg(anIndex); + } + else // Global Selection + { + if (aShape.ShapeType() != TopAbs_VERTEX) { + aSelectedObject = GEOM::GEOM_Object::_nil(); + aName = ""; + } + } + } myPoint = aSelectedObject; + myEditCurrentArgument->setText(aName); + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + if (!myPoint->_is_nil() && myFace->_is_nil()) + GroupArgs->PushButton1->click(); } - myEditCurrentArgument->setText(GEOMBase::GetName(aSelectedObject)); + displayPreview(); +} +//================================================================================= +// function : SetEditCurrentArgument() +// purpose : +//================================================================================= +void MeasureGUI_NormaleDlg::SetEditCurrentArgument() +{ + QPushButton* send = (QPushButton*)sender(); + + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + globalSelection(GEOM_FACE); + + if (send == GroupArgs->PushButton1) { + myEditCurrentArgument = GroupArgs->LineEdit1; + + GroupArgs->PushButton2->setDown(false); + GroupArgs->LineEdit2->setEnabled(false); + + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_FACE); + } + else if (send == GroupArgs->PushButton2) { + myEditCurrentArgument = GroupArgs->LineEdit2; + + GroupArgs->PushButton1->setDown(false); + GroupArgs->LineEdit1->setEnabled(false); + + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + } + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + // seems we need it only to avoid preview disappearing, caused by selection mode change displayPreview(); } @@ -197,34 +300,12 @@ void MeasureGUI_NormaleDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); if (send == GroupArgs->LineEdit1 || - send == GroupArgs->LineEdit2) - { + send == GroupArgs->LineEdit2) { myEditCurrentArgument = send; GEOMBase_Skeleton::LineEditReturnPressed(); } } -//================================================================================= -// function : SetEditCurrentArgument() -// purpose : -//================================================================================= -void MeasureGUI_NormaleDlg::SetEditCurrentArgument() -{ - QPushButton* send = (QPushButton*)sender(); - - if (send == GroupArgs->PushButton1) { - myEditCurrentArgument = GroupArgs->LineEdit1; - globalSelection(GEOM_FACE); - } - else if (send == GroupArgs->PushButton2) { - myEditCurrentArgument = GroupArgs->LineEdit2; - globalSelection(GEOM_POINT); - } - - myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); -} - //================================================================================= // function : ActivateThisDialog() // purpose : @@ -232,17 +313,19 @@ void MeasureGUI_NormaleDlg::SetEditCurrentArgument() void MeasureGUI_NormaleDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); - SelectionIntoArgument(); + displayPreview(); } //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void MeasureGUI_NormaleDlg::enterEvent (QEvent* e) +void MeasureGUI_NormaleDlg::enterEvent (QEvent*) { - if (!GroupConstructors->isEnabled()) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } diff --git a/src/MeasureGUI/MeasureGUI_NormaleDlg.h b/src/MeasureGUI/MeasureGUI_NormaleDlg.h index 757c755d9..60eef7b17 100644 --- a/src/MeasureGUI/MeasureGUI_NormaleDlg.h +++ b/src/MeasureGUI/MeasureGUI_NormaleDlg.h @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -19,56 +19,53 @@ // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_NormaleDlg.h +// Author : Julia DOROVSKIKH, Open CASCADE S.A.S. // -// -// File : MeasureGUI_NormaleDlg.h -// Author : Julia DOROVSKIKH -// Module : GEOM +#ifndef MEASUREGUI_NORMALEDLG_H +#define MEASUREGUI_NORMALEDLG_H -#ifndef DIALOGBOX_NORMALE_H -#define DIALOGBOX_NORMALE_H +#include -#include "GEOM_MeasureGUI.hxx" - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel_QTD.h" +class DlgRef_2Sel; //================================================================================= // class : MeasureGUI_NormaleDlg // purpose : //================================================================================= -class GEOM_MEASUREGUI_EXPORT MeasureGUI_NormaleDlg : public GEOMBase_Skeleton +class MeasureGUI_NormaleDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - MeasureGUI_NormaleDlg (GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~MeasureGUI_NormaleDlg(); + MeasureGUI_NormaleDlg( GeometryGUI*, QWidget* ); + ~MeasureGUI_NormaleDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid (QString& msg); - virtual bool execute (ObjectList& objects); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); private: - void Init(); - void enterEvent (QEvent* e); + void Init(); + void enterEvent( QEvent* ); - GEOM::GEOM_Object_var myFace; - GEOM::GEOM_Object_var myPoint; +private: + GEOM::GEOM_Object_var myFace; + GEOM::GEOM_Object_var myPoint; - DlgRef_2Sel_QTD* GroupArgs; + DlgRef_2Sel* GroupArgs; private slots: - void ClickOnOk(); - bool ClickOnApply(); + void ClickOnOk(); + bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); }; -#endif // DIALOGBOX_NORMALE_H +#endif // MEASUREGUI_NORMALEDLG_H diff --git a/src/MeasureGUI/MeasureGUI_PointDlg.cxx b/src/MeasureGUI/MeasureGUI_PointDlg.cxx index 415aca74d..bba75ea59 100644 --- a/src/MeasureGUI/MeasureGUI_PointDlg.cxx +++ b/src/MeasureGUI/MeasureGUI_PointDlg.cxx @@ -1,105 +1,83 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_PointDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : MeasureGUI_PointDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "MeasureGUI_PointDlg.h" -#include "GEOMBase.h" +#include "MeasureGUI_Widgets.h" -#include "DlgRef_SpinBox.h" +#include +#include -#include "utilities.h" +#include -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include -#include -#include #include #include #include #include #include -#include #include #include #include -#include -#include -#include -#include -#include -#include -#include -#include - //================================================================================= // class : MeasureGUI_PointDlg() // purpose : Constructs a MeasureGUI_PointDlg which is a child of 'parent' +// //================================================================================= MeasureGUI_PointDlg::MeasureGUI_PointDlg( GeometryGUI* GUI, QWidget* parent ) -: MeasureGUI_Skeleton( GUI, parent, "MeasureGUI_PointDlg" ) + : MeasureGUI_Skeleton( GUI, parent ) { QPixmap iconPnt( SUIT_Session::session()->resourceMgr()->loadPixmap( - "GEOM",tr( "ICON_DLG_POINT" ) ) ); - + "GEOM", tr( "ICON_DLG_POINT" ) ) ); + QPixmap iconSelect( SUIT_Session::session()->resourceMgr()->loadPixmap( - "GEOM",tr( "ICON_SELECT" ) ) ); + "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption( tr( "CAPTION" ) ); + setWindowTitle( tr( "CAPTION" ) ); - GroupConstructors->setTitle( tr( "CAPTION" ) ); - RadioButton1->setPixmap( iconPnt ); + mainFrame()->GroupConstructors->setTitle( tr( "CAPTION" ) ); + mainFrame()->RadioButton1->setIcon( iconPnt ); - QGroupBox* aGrp = new QGroupBox( 2, Qt::Horizontal, tr( "COORDINATES" ), this ); + myGrp = new MeasureGUI_1Sel3LineEdit( centralWidget() ); + myGrp->TextLabel1->setText( tr( "POINT" ) ); + myGrp->PushButton1->setIcon( iconSelect ); + myGrp->LineEdit1->setReadOnly( true ); + myGrp->TextLabel2->setText( tr( "X" ) ); + myGrp->TextLabel3->setText( tr( "Y" ) ); + myGrp->TextLabel4->setText( tr( "Z" ) ); + myGrp->LineEdit2->setReadOnly( true ); + myGrp->LineEdit3->setReadOnly( true ); + myGrp->LineEdit4->setReadOnly( true ); - new QLabel( tr( "POINT" ), aGrp ); - QFrame* aFrame = new QFrame( aGrp ); - mySelBtn = new QPushButton( aFrame ); - mySelBtn->setPixmap( iconSelect ); - mySelEdit = new QLineEdit( aFrame ); - QHBoxLayout* aLay = new QHBoxLayout( aFrame, 0, 10 ); - aLay->addWidget( mySelBtn ); - aLay->addWidget( mySelEdit ); - - new QLabel( tr( "X" ), aGrp ); - myX = new QLineEdit( aGrp ); - new QLabel( tr( "Y" ), aGrp ); - myY = new QLineEdit( aGrp ); - new QLabel( tr( "Z" ), aGrp ); - myZ = new QLineEdit( aGrp ); - - mySelEdit->setReadOnly( true ); - myX->setReadOnly( true ); - myY->setReadOnly( true ); - myZ->setReadOnly( true ); - - Layout1->addWidget( aGrp, 1, 0 ); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( myGrp ); myHelpFileName = "using_measurement_tools_page.html#point_coord_anchor"; @@ -110,7 +88,7 @@ MeasureGUI_PointDlg::MeasureGUI_PointDlg( GeometryGUI* GUI, QWidget* parent ) //================================================================================= // function : ~MeasureGUI_PointDlg() // purpose : Destroys the object and frees any allocated resources -//================================================================================= +//======================myGrp->LineEdit2->setReadOnly( true );=========================================================== MeasureGUI_PointDlg::~MeasureGUI_PointDlg() { } @@ -142,26 +120,31 @@ void MeasureGUI_PointDlg::activateSelection() //================================================================================= void MeasureGUI_PointDlg::SelectionIntoArgument() { - try - { + try { myObj = GEOM::GEOM_Object::_nil(); - mySelEdit->setText( "" ); - myX->setText( "" ); - myY->setText( "" ); - myZ->setText( "" ); + myGrp->LineEdit1->setText( "" ); + myGrp->LineEdit2->setText( "" ); + myGrp->LineEdit3->setText( "" ); + myGrp->LineEdit4->setText( "" ); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() < 1) + return; Standard_Boolean testResult = Standard_False; GEOM::GEOM_Object_var aSelectedObject = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), testResult ); + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); - if( !testResult || aSelectedObject->_is_nil() ) + if (!testResult || aSelectedObject->_is_nil()) return; myObj = aSelectedObject; TColStd_IndexedMapOfInteger anIndexes; - ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))-> - selectionMgr()->GetIndexes( firstIObject(), anIndexes ); + aSelMgr->GetIndexes(aSelList.First(), anIndexes); TopoDS_Shape aShape; if ( anIndexes.Extent() > 1 || !GEOMBase::GetShape( myObj, aShape ) || aShape.IsNull() ) @@ -169,39 +152,36 @@ void MeasureGUI_PointDlg::SelectionIntoArgument() TopoDS_Vertex aPoint; QString aName = GEOMBase::GetName( myObj ); - if ( anIndexes.Extent() == 0 ) - { + if ( anIndexes.Extent() == 0 ) { if ( aShape.ShapeType() == TopAbs_VERTEX ) aPoint = TopoDS::Vertex( aShape ); } - else - { + else { int i = anIndexes( 1 ); TopTools_IndexedMapOfShape aShapes; TopExp::MapShapes( aShape, aShapes ); - + if ( aShape != aShapes( i ) ) aName += QString( ":%1" ).arg( i ); aPoint = TopoDS::Vertex( aShapes( i ) ); } - if ( !aPoint.IsNull() ) - { + if ( !aPoint.IsNull() ) { gp_Pnt aPnt = BRep_Tool::Pnt( aPoint ); - mySelEdit->setText( aName ); - myX->setText(DlgRef_SpinBox::PrintDoubleValue(aPnt.X())); - myY->setText(DlgRef_SpinBox::PrintDoubleValue(aPnt.Y())); - myZ->setText(DlgRef_SpinBox::PrintDoubleValue(aPnt.Z())); + myGrp->LineEdit1->setText( aName ); + myGrp->LineEdit2->setText( DlgRef::PrintDoubleValue( aPnt.X() ) ); + myGrp->LineEdit3->setText( DlgRef::PrintDoubleValue( aPnt.Y() ) ); + myGrp->LineEdit4->setText( DlgRef::PrintDoubleValue( aPnt.Z() ) ); } } catch( ... ) { myObj = GEOM::GEOM_Object::_nil(); - mySelEdit->setText( "" ); - myX->setText( "" ); - myY->setText( "" ); - myZ->setText( "" ); + myGrp->LineEdit1->setText( "" ); + myGrp->LineEdit2->setText( "" ); + myGrp->LineEdit3->setText( "" ); + myGrp->LineEdit4->setText( "" ); } } diff --git a/src/MeasureGUI/MeasureGUI_PointDlg.h b/src/MeasureGUI/MeasureGUI_PointDlg.h index ca2789816..09989c456 100644 --- a/src/MeasureGUI/MeasureGUI_PointDlg.h +++ b/src/MeasureGUI/MeasureGUI_PointDlg.h @@ -1,81 +1,58 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_PointDlg.h +// Author : Sergey LITONIN, Open CASCADE S.A.S. (sergey.litonin@opencascade.com) // -// File : MeasureGUI_PointDlg.h -// Author : Sergey LITONIN -// Module : GEOM - #ifndef MEASUREGUI_POINTDLG_H #define MEASUREGUI_POINTDLG_H -#include "GEOM_MeasureGUI.hxx" - #include "MeasureGUI_Skeleton.h" -class QLineEdit; +class MeasureGUI_1Sel3LineEdit; //================================================================================= // class : MeasureGUI_PointDlg // purpose : Dialog for displaying point coordinates //================================================================================= -class GEOM_MEASUREGUI_EXPORT MeasureGUI_PointDlg : public MeasureGUI_Skeleton +class MeasureGUI_PointDlg : public MeasureGUI_Skeleton { Q_OBJECT public: - MeasureGUI_PointDlg( GeometryGUI* GUI, - QWidget* parent ); - ~MeasureGUI_PointDlg(); + MeasureGUI_PointDlg( GeometryGUI*, QWidget* ); + ~MeasureGUI_PointDlg(); protected: - // redefined from GEOMBase_Helper and MeasureGUI_Skeleton virtual void activateSelection(); virtual void SelectionIntoArgument(); - + private: - void Init(); -private: - QLineEdit* myX; - QLineEdit* myY; - QLineEdit* myZ; +private: + MeasureGUI_1Sel3LineEdit* myGrp; }; -#endif // DIALOGBOX_PROPERTIES_H - - - - - - - - - - - - - - +#endif // MEASUREGUI_POINTDLG_H diff --git a/src/MeasureGUI/MeasureGUI_PropertiesDlg.cxx b/src/MeasureGUI/MeasureGUI_PropertiesDlg.cxx index 80aed8c5d..7f45b5a80 100644 --- a/src/MeasureGUI/MeasureGUI_PropertiesDlg.cxx +++ b/src/MeasureGUI/MeasureGUI_PropertiesDlg.cxx @@ -1,86 +1,78 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_PropertiesDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : MeasureGUI_PropertiesDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "MeasureGUI_PropertiesDlg.h" -#include "MeasureGUI_1Sel3LineEdit_QTD.h" -#include "GEOM_Displayer.h" -#include "GEOMImpl_Types.hxx" -#include "GEOMBase.h" -#include "DlgRef_SpinBox.h" +#include "MeasureGUI_Widgets.h" -#include "SalomeApp_Tools.h" -#include "utilities.h" -#include "SUIT_Session.h" +#include +#include +#include + +#include +#include +#include #include -#include -#include -#include -#include -#include -#include - //================================================================================= // class : MeasureGUI_PropertiesDlg() // purpose : Constructs a MeasureGUI_PropertiesDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to -// TRUE to construct a modal dialog. +// true to construct a modal dialog. //================================================================================= MeasureGUI_PropertiesDlg::MeasureGUI_PropertiesDlg( GeometryGUI* GUI, QWidget* parent ) -: MeasureGUI_Skeleton( GUI, parent, "MeasureGUI_PropertiesDlg" ) + : MeasureGUI_Skeleton( GUI, parent ) { QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( - "GEOM",tr( "ICON_DLG_BASICPROPERTIES" ) ) ); + "GEOM", tr( "ICON_DLG_BASICPROPERTIES" ) ) ); QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( - "GEOM",tr( "ICON_SELECT" ) ) ); + "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption( tr( "GEOM_PROPERTIES_TITLE" ) ); + setWindowTitle( tr( "GEOM_PROPERTIES_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle( tr( "GEOM_PROPERTIES" ) ); - RadioButton1->setPixmap( image0 ); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_PROPERTIES" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); - myGrp = new MeasureGUI_1Sel3LineEdit_QTD( this, "myGrp" ); + myGrp = new MeasureGUI_1Sel3LineEdit( centralWidget() ); myGrp->GroupBox1->setTitle( tr( "GEOM_PROPERTIES_CONSTR" ) ); myGrp->TextLabel1->setText( tr( "GEOM_OBJECT" ) ); myGrp->TextLabel2->setText( tr( "GEOM_LENGTH" ) ); myGrp->TextLabel3->setText( tr( "GEOM_PROPERTIES_SURFACE" ) ); myGrp->TextLabel4->setText( tr( "GEOM_PROPERTIES_VOLUME" ) ); - myGrp->LineEdit2->setReadOnly( TRUE ); - myGrp->LineEdit3->setReadOnly( TRUE ); - myGrp->LineEdit4->setReadOnly( TRUE ); - myGrp->PushButton1->setPixmap( image1 ); myGrp->LineEdit1->setReadOnly( true ); + myGrp->PushButton1->setIcon( image1 ); + myGrp->LineEdit2->setReadOnly( true ); + myGrp->LineEdit3->setReadOnly( true ); + myGrp->LineEdit4->setReadOnly( true ); - Layout1->addWidget( myGrp, 1, 0 ); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( myGrp ); /***************************************************************/ @@ -118,10 +110,9 @@ void MeasureGUI_PropertiesDlg::Init() void MeasureGUI_PropertiesDlg::activateSelection() { static TColStd_MapOfInteger aTypes; - if ( aTypes.IsEmpty() ) - { + if ( aTypes.IsEmpty() ) { aTypes.Add( GEOM_COMPOUND ); -// aTypes.Add( TopAbs_COMPSOLID ); + // aTypes.Add( TopAbs_COMPSOLID ); aTypes.Add( GEOM_SOLID ); aTypes.Add( GEOM_SHELL ); aTypes.Add( GEOM_FACE ); @@ -140,18 +131,16 @@ void MeasureGUI_PropertiesDlg::processObject() { double aLength, anArea, aVolume; - if ( !getParameters( aLength, anArea, aVolume ) ) - { + if ( !getParameters( aLength, anArea, aVolume ) ) { mySelEdit->setText( "" ); myGrp->LineEdit2->setText( "" ); myGrp->LineEdit3->setText( "" ); myGrp->LineEdit4->setText( "" ); } - else - { - myGrp->LineEdit2->setText( DlgRef_SpinBox::PrintDoubleValue( aLength ) ); - myGrp->LineEdit3->setText( DlgRef_SpinBox::PrintDoubleValue( anArea ) ); - myGrp->LineEdit4->setText( DlgRef_SpinBox::PrintDoubleValue( aVolume ) ); + else { + myGrp->LineEdit2->setText( DlgRef::PrintDoubleValue( aLength ) ); + myGrp->LineEdit3->setText( DlgRef::PrintDoubleValue( anArea ) ); + myGrp->LineEdit4->setText( DlgRef::PrintDoubleValue( aVolume ) ); } } @@ -165,15 +154,12 @@ bool MeasureGUI_PropertiesDlg::getParameters( double& theLength, { if ( myObj->_is_nil() ) return false; - else - { - try - { + else { + try { GEOM::GEOM_IMeasureOperations::_narrow( getOperation() )->GetBasicProperties( myObj, theLength, theArea, theVolume ); } - catch( const SALOME::SALOME_Exception& e ) - { + catch( const SALOME::SALOME_Exception& e ) { SalomeApp_Tools::QtCatchCorbaException( e ); return false; } @@ -191,7 +177,7 @@ SALOME_Prs* MeasureGUI_PropertiesDlg::buildPrs() TopoDS_Shape aShape, aResult; if ( myObj->_is_nil() || - !GEOMBase::GetShape( myObj, aShape )|| + !GEOMBase::GetShape( myObj, aShape ) || aShape.IsNull() || aShape.ShapeType() != TopAbs_EDGE || !GEOMBase::CreateArrowForLinearEdge( aShape, aResult ) || diff --git a/src/MeasureGUI/MeasureGUI_PropertiesDlg.h b/src/MeasureGUI/MeasureGUI_PropertiesDlg.h index 0689c5806..20eaac748 100644 --- a/src/MeasureGUI/MeasureGUI_PropertiesDlg.h +++ b/src/MeasureGUI/MeasureGUI_PropertiesDlg.h @@ -1,83 +1,62 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : MeasureGUI_PropertiesDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM - -#ifndef DIALOGBOX_PROPERTIES_H -#define DIALOGBOX_PROPERTIES_H - -#include "GEOM_MeasureGUI.hxx" +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_PropertiesDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef MEASUREGUI_PROPERTIESDLG_H +#define MEASUREGUI_PROPERTIESDLG_H #include "MeasureGUI_Skeleton.h" -class MeasureGUI_1Sel3LineEdit_QTD; + +class MeasureGUI_1Sel3LineEdit; //================================================================================= // class : MeasureGUI_PropertiesDlg // purpose : Dialog for displaying length, area and volume //================================================================================= -class GEOM_MEASUREGUI_EXPORT MeasureGUI_PropertiesDlg : public MeasureGUI_Skeleton +class MeasureGUI_PropertiesDlg : public MeasureGUI_Skeleton { - Q_OBJECT + Q_OBJECT public: - MeasureGUI_PropertiesDlg( GeometryGUI* GUI, - QWidget* parent ); - ~MeasureGUI_PropertiesDlg(); - + MeasureGUI_PropertiesDlg( GeometryGUI*, QWidget* ); + ~MeasureGUI_PropertiesDlg(); + protected: - - // redefined from GEOMBase_Helper and MeasureGUI_Skeleton - virtual void processObject(); - virtual void activateSelection(); - virtual SALOME_Prs* buildPrs(); + // redefined from GEOMBase_Helper and MeasureGUI_Skeleton + virtual void processObject(); + virtual void activateSelection(); + virtual SALOME_Prs* buildPrs(); private: - - void Init(); - bool getParameters( double& theLength, - double& theArea, - double& theVolume ); + void Init(); + bool getParameters( double&, + double&, + double& ); private: - - MeasureGUI_1Sel3LineEdit_QTD* myGrp; + MeasureGUI_1Sel3LineEdit* myGrp; }; -#endif // DIALOGBOX_PROPERTIES_H - - - - - - - - - - - - - - +#endif // MEASUREGUI_PROPERTIESDLG_H diff --git a/src/MeasureGUI/MeasureGUI_Skeleton.cxx b/src/MeasureGUI/MeasureGUI_Skeleton.cxx index def236c38..96cb3b82a 100644 --- a/src/MeasureGUI/MeasureGUI_Skeleton.cxx +++ b/src/MeasureGUI/MeasureGUI_Skeleton.cxx @@ -1,50 +1,45 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_Skeleton.cxx +// Author : Damine COQUERET, Open CASCADE S.A.S. // -// File : MeasureGUI_Skeleton.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "MeasureGUI_Skeleton.h" -#include "GEOMBase.h" -#include "GEOM_Displayer.h" -#include "GeometryGUI.h" +#include "MeasureGUI_Widgets.h" -#include "LightApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "SalomeApp_Application.h" -#include "SalomeApp_Tools.h" -#include "SUIT_MessageBox.h" -#include "SUIT_Session.h" -#include "SUIT_OverrideCursor.h" +#include +#include +#include -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include //================================================================================= // class : MeasureGUI_Skeleton() @@ -53,28 +48,26 @@ // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -MeasureGUI_Skeleton::MeasureGUI_Skeleton( GeometryGUI* GUI, - QWidget* parent, - const char* name ) -: MeasureGUI_Skeleton_QTD( parent, name, false, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu | WDestructiveClose ), - GEOMBase_Helper( dynamic_cast( parent ) ), - myGeomGUI( GUI ) +MeasureGUI_Skeleton::MeasureGUI_Skeleton( GeometryGUI* GUI, QWidget* parent, + bool modal, Qt::WindowFlags f ) + : QDialog( parent, f ), + GEOMBase_Helper( dynamic_cast( parent ) ), + myGeomGUI( GUI ) { + myMainFrame = new MeasureGUI_SkeletonBox( this ); + QVBoxLayout* topLayout = new QVBoxLayout( this ); + topLayout->setMargin( 9 ); topLayout->setSpacing( 0 ); + topLayout->addWidget( myMainFrame ); + + setAttribute( Qt::WA_DeleteOnClose ); + setModal( modal ); mySelBtn = 0; mySelEdit = 0; myDisplayer = 0; myHelpFileName = ""; - - if ( !name ) - setName( "MeasureGUI_Skeleton" ); - - buttonClose->setText( tr( "GEOM_BUT_CLOSE" ) ); - buttonHelp->setText(tr("GEOM_BUT_HELP")); - - buttonClose->setAutoDefault( false ); - - resize( 350, 0 ); + + buttonClose()->setText( tr( "GEOM_BUT_CLOSE" ) ); + buttonHelp()->setText( tr( "GEOM_BUT_HELP" ) ); } @@ -84,7 +77,8 @@ MeasureGUI_Skeleton::MeasureGUI_Skeleton( GeometryGUI* GUI, //================================================================================= MeasureGUI_Skeleton::~MeasureGUI_Skeleton() { - myGeomGUI->SetActiveDialogBox( 0 ); + if ( myGeomGUI ) + myGeomGUI->SetActiveDialogBox( 0 ); delete myDisplayer; } @@ -96,39 +90,46 @@ MeasureGUI_Skeleton::~MeasureGUI_Skeleton() void MeasureGUI_Skeleton::Init() { /* init variables */ - myGeomGUI->SetActiveDialogBox((QDialog*)this); + if ( myGeomGUI ) + myGeomGUI->SetActiveDialogBox( (QDialog*)this ); /* signals and slots connections */ - connect( buttonClose, SIGNAL( clicked() ), - this, SLOT( ClickOnCancel() ) ); + connect( buttonClose(), SIGNAL( clicked() ), + this, SLOT( ClickOnCancel() ) ); - connect( buttonHelp, SIGNAL( clicked() ), - this, SLOT( ClickOnHelp() ) ); + connect( buttonHelp(), SIGNAL( clicked() ), + this, SLOT( ClickOnHelp() ) ); - connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), - this, SLOT ( DeactivateActiveDialog() ) ); - - connect( myGeomGUI, SIGNAL( SignalCloseAllDialogs() ), - this, SLOT ( ClickOnCancel() ) ); + if ( myGeomGUI ) { + connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), + this, SLOT ( DeactivateActiveDialog() ) ); + + connect( myGeomGUI, SIGNAL( SignalCloseAllDialogs() ), + this, SLOT ( ClickOnCancel() ) ); + } + + if ( mySelEdit ) { + connect( mySelEdit, SIGNAL( returnPressed() ), + this, SLOT( LineEditReturnPressed() ) ); + } + + if ( mySelBtn ) { + connect( mySelBtn, SIGNAL( clicked() ), + this, SLOT ( SetEditCurrentArgument() ) ); + } - connect( mySelEdit, SIGNAL( returnPressed() ), - this, SLOT( LineEditReturnPressed() ) ); - - connect( mySelBtn, SIGNAL( clicked() ), - this, SLOT ( SetEditCurrentArgument() ) ); - - LightApp_SelectionMgr* aSel = ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(); - if ( aSel ) + LightApp_SelectionMgr* aSel = ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(); + if ( aSel ) { connect( aSel, SIGNAL( currentSelectionChanged() ), this, SLOT ( SelectionIntoArgument() ) ) ; + } /* displays Dialog */ - RadioButton1->setChecked( TRUE ); + mainFrame()->RadioButton1->setChecked( true ); activateSelection(); SelectionIntoArgument(); - show(); } @@ -147,20 +148,20 @@ void MeasureGUI_Skeleton::ClickOnCancel() //================================================================================= void MeasureGUI_Skeleton::ClickOnHelp() { - LightApp_Application* app = (LightApp_Application*)(SUIT_Session::session()->activeApplication()); - if (app) - app->onHelpContextModule(myGeomGUI ? app->moduleName(myGeomGUI->moduleName()) : QString(""), myHelpFileName); + LightApp_Application* app = (LightApp_Application*)( SUIT_Session::session()->activeApplication() ); + if ( app ) { + app->onHelpContextModule( myGeomGUI ? app->moduleName( myGeomGUI->moduleName() ) : QString( "" ), myHelpFileName ); + } else { - QString platform; + QString platform; #ifdef WIN32 - platform = "winapplication"; + platform = "winapplication"; #else - platform = "application"; + platform = "application"; #endif - SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"), - QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE"). - arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(myHelpFileName), - QObject::tr("BUT_OK")); + SUIT_MessageBox::warning( this, tr( "WRN_WARNING" ), + tr( "EXTERNAL_BROWSER_CANNOT_SHOW_PAGE" ). + arg( app->resourceMgr()->stringValue( "ExternalBrowser", platform ) ).arg( myHelpFileName ) ); } } @@ -174,11 +175,17 @@ void MeasureGUI_Skeleton::LineEditReturnPressed() /* If successfull the selection is changed and signal emitted... */ /* so SelectionIntoArgument() is automatically called. */ - const QString objectUserName = mySelEdit->text(); - QWidget* thisWidget = ( QWidget* )this; - - if ( GEOMBase::SelectionByNameInDialogs( thisWidget, objectUserName, selectedIO() ) ) - mySelEdit->setText( objectUserName ); + if ( mySelEdit ) { + const QString objectUserName = mySelEdit->text(); + QWidget* thisWidget = ( QWidget* )this; + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (GEOMBase::SelectionByNameInDialogs(thisWidget, objectUserName, aSelList)) + mySelEdit->setText(objectUserName); + } } @@ -190,7 +197,7 @@ void MeasureGUI_Skeleton::DeactivateActiveDialog() { setEnabled( false ); - LightApp_SelectionMgr* aSel = ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(); + LightApp_SelectionMgr* aSel = ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(); if ( aSel ) disconnect( aSel, 0, this, 0 ); @@ -212,7 +219,7 @@ void MeasureGUI_Skeleton::ActivateThisDialog() myGeomGUI->SetActiveDialogBox( ( QDialog* )this ); - LightApp_SelectionMgr* aSel = ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(); + LightApp_SelectionMgr* aSel = ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(); if ( aSel ) connect( aSel, SIGNAL( currentSelectionChanged() ), this, SLOT ( SelectionIntoArgument() ) ) ; @@ -238,21 +245,29 @@ void MeasureGUI_Skeleton::SetEditCurrentArgument() void MeasureGUI_Skeleton::SelectionIntoArgument() { myObj = GEOM::GEOM_Object::_nil(); - - Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), testResult ); - - if( !testResult || aSelectedObject->_is_nil() ) - { - mySelEdit->setText( "" ); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + GEOM::GEOM_Object_var aSelectedObject = GEOM::GEOM_Object::_nil(); + + if (aSelList.Extent() > 0) { + Standard_Boolean testResult = Standard_False; + aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + if (!testResult) + aSelectedObject = GEOM::GEOM_Object::_nil(); + } + + if (aSelectedObject->_is_nil()) { + mySelEdit->setText(""); processObject(); erasePreview(); return; } myObj = aSelectedObject; - mySelEdit->setText( GEOMBase::GetName( myObj ) ); + mySelEdit->setText(GEOMBase::GetName(myObj)); processObject(); redisplayPreview(); } @@ -272,7 +287,7 @@ void MeasureGUI_Skeleton::processObject() //================================================================================= void MeasureGUI_Skeleton::closeEvent( QCloseEvent* e ) { - LightApp_SelectionMgr* aSel = ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(); + LightApp_SelectionMgr* aSel = ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(); if ( aSel ) disconnect( aSel, 0, this, 0 ); QDialog::closeEvent( e ); @@ -282,9 +297,9 @@ void MeasureGUI_Skeleton::closeEvent( QCloseEvent* e ) // function : enterEvent() // purpose : //================================================================================= -void MeasureGUI_Skeleton::enterEvent(QEvent* e) +void MeasureGUI_Skeleton::enterEvent( QEvent* ) { - if ( GroupConstructors->isEnabled() ) + if ( mainFrame()->GroupConstructors->isEnabled() ) return; ActivateThisDialog(); @@ -306,16 +321,14 @@ SALOME_Prs* MeasureGUI_Skeleton::buildPrs() void MeasureGUI_Skeleton::redisplayPreview() { QString aMess; - if ( !isValid( aMess ) ) - { + if ( !isValid( aMess ) ) { erasePreview( true ); return; } erasePreview( false ); - try - { + try { SUIT_OverrideCursor(); getDisplayer()->SetColor( Quantity_NOC_VIOLET ); @@ -324,8 +337,7 @@ void MeasureGUI_Skeleton::redisplayPreview() if ( SALOME_Prs* aPrs = buildPrs() ) displayPreview( aPrs ); } - catch( const SALOME::SALOME_Exception& e ) - { + catch ( const SALOME::SALOME_Exception& e ) { SalomeApp_Tools::QtCatchCorbaException( e ); } @@ -379,9 +391,28 @@ void MeasureGUI_Skeleton::keyPressEvent( QKeyEvent* e ) if ( e->isAccepted() ) return; - if ( e->key() == Key_F1 ) - { - e->accept(); - ClickOnHelp(); - } + if ( e->key() == Qt::Key_F1 ) { + e->accept(); + ClickOnHelp(); + } +} + +MeasureGUI_SkeletonBox* MeasureGUI_Skeleton::mainFrame() const +{ + return myMainFrame; +} + +QWidget* MeasureGUI_Skeleton::centralWidget() const +{ + return mainFrame()->GroupMedium; +} + +QPushButton* MeasureGUI_Skeleton::buttonClose() const +{ + return mainFrame()->buttonClose; +} + +QPushButton* MeasureGUI_Skeleton::buttonHelp() const +{ + return mainFrame()->buttonHelp; } diff --git a/src/MeasureGUI/MeasureGUI_Skeleton.h b/src/MeasureGUI/MeasureGUI_Skeleton.h index 79d5ade21..01633884f 100644 --- a/src/MeasureGUI/MeasureGUI_Skeleton.h +++ b/src/MeasureGUI/MeasureGUI_Skeleton.h @@ -1,105 +1,88 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_Skeleton.h +// Author : Damine COQUERET, Open CASCADE S.A.S. // -// File : MeasureGUI_Skeleton.h -// Author : Damine COQUERET -// Module : GEOM -// $Header: - #ifndef MEASUREGUI_SKELETON_H #define MEASUREGUI_SKELETON_H -#include "GEOM_MeasureGUI.hxx" - -#include "MeasureGUI_Skeleton_QTD.h" -#include "GEOMBase_Helper.h" +#include +#include class GeometryGUI; -class QWidget; +class MeasureGUI_SkeletonBox; class QLineEdit; class QPushButton; class GEOM_Displayer; -class GEOM_MEASUREGUI_EXPORT - MeasureGUI_Skeleton : public MeasureGUI_Skeleton_QTD, - public GEOMBase_Helper +class MeasureGUI_Skeleton : public QDialog, public GEOMBase_Helper { - Q_OBJECT + Q_OBJECT public: - MeasureGUI_Skeleton( GeometryGUI* GUI, - QWidget* parent, - const char* name ); - ~MeasureGUI_Skeleton(); - + MeasureGUI_Skeleton( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~MeasureGUI_Skeleton(); + protected slots: - - virtual void ClickOnCancel(); - virtual void ClickOnHelp(); - virtual void DeactivateActiveDialog(); - virtual void ActivateThisDialog(); - virtual void SelectionIntoArgument(); - virtual void LineEditReturnPressed(); - virtual void SetEditCurrentArgument(); + virtual void ClickOnCancel(); + virtual void ClickOnHelp(); + virtual void DeactivateActiveDialog(); + virtual void ActivateThisDialog(); + virtual void SelectionIntoArgument(); + virtual void LineEditReturnPressed(); + virtual void SetEditCurrentArgument(); protected: + void Init(); + + void enterEvent( QEvent* ); + void closeEvent( QCloseEvent* ); + void keyPressEvent( QKeyEvent* ); + void redisplayPreview(); + GEOM_Displayer* getDisplayer(); + + virtual bool isValid( QString& ); + virtual SALOME_Prs* buildPrs(); + virtual void processObject(); + virtual void activateSelection(); + + virtual GEOM::GEOM_IOperations_ptr createOperation(); - void Init(); - - void enterEvent( QEvent* e ); - void closeEvent( QCloseEvent* e ); - void keyPressEvent( QKeyEvent* e ); - void redisplayPreview(); - GEOM_Displayer* getDisplayer(); - - virtual bool isValid( QString& msg ); - virtual SALOME_Prs* buildPrs(); - virtual void processObject(); - virtual void activateSelection(); - - virtual GEOM::GEOM_IOperations_ptr createOperation(); + MeasureGUI_SkeletonBox* mainFrame() const; + QWidget* centralWidget() const; + QPushButton* buttonClose() const; + QPushButton* buttonHelp() const; protected: - - QPushButton* mySelBtn; - QLineEdit* mySelEdit; - GEOM::GEOM_Object_var myObj; - - GeometryGUI* myGeomGUI; - GEOM_Displayer* myDisplayer; - - QString myHelpFileName; + QPushButton* mySelBtn; + QLineEdit* mySelEdit; + GEOM::GEOM_Object_var myObj; + + GeometryGUI* myGeomGUI; + GEOM_Displayer* myDisplayer; + + QString myHelpFileName; + MeasureGUI_SkeletonBox* myMainFrame; }; - + #endif // MEASUREGUI_SKELETON_H - - - - - - - - - - - diff --git a/src/MeasureGUI/MeasureGUI_SkeletonBox_QTD.ui b/src/MeasureGUI/MeasureGUI_SkeletonBox_QTD.ui new file mode 100644 index 000000000..f723ac838 --- /dev/null +++ b/src/MeasureGUI/MeasureGUI_SkeletonBox_QTD.ui @@ -0,0 +1,93 @@ + + MeasureGUI_SkeletonBox_QTD + + + + 0 + 0 + 200 + 92 + + + + + + + + 0 + + + 6 + + + + + + + + + 9 + + + 6 + + + + + &Close + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + &Help + + + + + + + + + + + + + + + + + 9 + + + 6 + + + + + + + + + + + + + + + + diff --git a/src/MeasureGUI/MeasureGUI_Skeleton_QTD.cxx b/src/MeasureGUI/MeasureGUI_Skeleton_QTD.cxx deleted file mode 100644 index 5a01f5818..000000000 --- a/src/MeasureGUI/MeasureGUI_Skeleton_QTD.cxx +++ /dev/null @@ -1,120 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form implementation generated from reading ui file 'MeasureGUI_Skeleton_QTD.ui' -** -** Created: Tue Mar 13 14:20:24 2007 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#include "MeasureGUI_Skeleton_QTD.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -/* - * Constructs a MeasureGUI_Skeleton_QTD as a child of 'parent', with the - * name 'name' and widget flags set to 'f'. - * - * The dialog will by default be modeless, unless you set 'modal' to - * TRUE to construct a modal dialog. - */ -MeasureGUI_Skeleton_QTD::MeasureGUI_Skeleton_QTD( QWidget* parent, const char* name, bool modal, WFlags fl ) - : QDialog( parent, name, modal, fl ) -{ - if ( !name ) - setName( "MeasureGUI_Skeleton_QTD" ); - setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)7, 0, 0, sizePolicy().hasHeightForWidth() ) ); - setSizeGripEnabled( TRUE ); - MeasureGUI_Skeleton_QTDLayout = new QGridLayout( this, 1, 1, 11, 6, "MeasureGUI_Skeleton_QTDLayout"); - - Layout1 = new QGridLayout( 0, 1, 1, 0, 6, "Layout1"); - - GroupButtons = new QGroupBox( this, "GroupButtons" ); - GroupButtons->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)7, (QSizePolicy::SizeType)0, 0, 0, GroupButtons->sizePolicy().hasHeightForWidth() ) ); - GroupButtons->setColumnLayout(0, Qt::Vertical ); - GroupButtons->layout()->setSpacing( 6 ); - GroupButtons->layout()->setMargin( 11 ); - GroupButtonsLayout = new QGridLayout( GroupButtons->layout() ); - GroupButtonsLayout->setAlignment( Qt::AlignTop ); - - Layout3 = new QGridLayout( 0, 1, 1, 0, 6, "Layout3"); - Spacer1 = new QSpacerItem( 120, 0, QSizePolicy::Expanding, QSizePolicy::Minimum ); - Layout3->addItem( Spacer1, 0, 1 ); - - buttonClose = new QPushButton( GroupButtons, "buttonClose" ); - - Layout3->addWidget( buttonClose, 0, 0 ); - - buttonHelp = new QPushButton( GroupButtons, "buttonHelp" ); - - Layout3->addWidget( buttonHelp, 0, 2 ); - - GroupButtonsLayout->addLayout( Layout3, 0, 0 ); - - Layout1->addWidget( GroupButtons, 2, 0 ); - - GroupConstructors = new QButtonGroup( this, "GroupConstructors" ); - GroupConstructors->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)5, (QSizePolicy::SizeType)0, 0, 0, GroupConstructors->sizePolicy().hasHeightForWidth() ) ); - GroupConstructors->setColumnLayout(0, Qt::Vertical ); - GroupConstructors->layout()->setSpacing( 6 ); - GroupConstructors->layout()->setMargin( 11 ); - GroupConstructorsLayout = new QGridLayout( GroupConstructors->layout() ); - GroupConstructorsLayout->setAlignment( Qt::AlignTop ); - - Layout2 = new QHBoxLayout( 0, 0, 6, "Layout2"); - - RadioButton1 = new QRadioButton( GroupConstructors, "RadioButton1" ); - Layout2->addWidget( RadioButton1 ); - - GroupConstructorsLayout->addLayout( Layout2, 0, 0 ); - - Layout1->addWidget( GroupConstructors, 0, 0 ); - - MeasureGUI_Skeleton_QTDLayout->addLayout( Layout1, 0, 0 ); - languageChange(); - resize( QSize(228, 266).expandedTo(minimumSizeHint()) ); - clearWState( WState_Polished ); -} - -/* - * Destroys the object and frees any allocated resources - */ -MeasureGUI_Skeleton_QTD::~MeasureGUI_Skeleton_QTD() -{ - // no need to delete child widgets, Qt does it all for us -} - -/* - * Sets the strings of the subwidgets using the current - * language. - */ -void MeasureGUI_Skeleton_QTD::languageChange() -{ -} - diff --git a/src/MeasureGUI/MeasureGUI_Skeleton_QTD.h b/src/MeasureGUI/MeasureGUI_Skeleton_QTD.h deleted file mode 100644 index 990f0a63e..000000000 --- a/src/MeasureGUI/MeasureGUI_Skeleton_QTD.h +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -/**************************************************************************** -** Form interface generated from reading ui file 'MeasureGUI_Skeleton_QTD.ui' -** -** Created: Tue Mar 13 14:20:20 2007 -** by: The User Interface Compiler ($Id$) -** -** WARNING! All changes made in this file will be lost! -****************************************************************************/ - -#ifndef MEASUREGUI_SKELETON_QTD_H -#define MEASUREGUI_SKELETON_QTD_H - -#include "GEOM_MeasureGUI.hxx" - -#include -#include - -class QVBoxLayout; -class QHBoxLayout; -class QGridLayout; -class QSpacerItem; -class QGroupBox; -class QPushButton; -class QButtonGroup; -class QRadioButton; - -class GEOM_MEASUREGUI_EXPORT MeasureGUI_Skeleton_QTD : public QDialog -{ - Q_OBJECT - -public: - MeasureGUI_Skeleton_QTD( QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 ); - ~MeasureGUI_Skeleton_QTD(); - - QGroupBox* GroupButtons; - QPushButton* buttonClose; - QPushButton* buttonHelp; - QButtonGroup* GroupConstructors; - QRadioButton* RadioButton1; - -protected: - QGridLayout* MeasureGUI_Skeleton_QTDLayout; - QGridLayout* Layout1; - QGridLayout* GroupButtonsLayout; - QGridLayout* Layout3; - QSpacerItem* Spacer1; - QGridLayout* GroupConstructorsLayout; - QHBoxLayout* Layout2; - -protected slots: - virtual void languageChange(); - -}; - -#endif // MEASUREGUI_SKELETON_QTD_H diff --git a/src/MeasureGUI/MeasureGUI_WhatisDlg.cxx b/src/MeasureGUI/MeasureGUI_WhatisDlg.cxx index 8820931dd..202b3faf3 100644 --- a/src/MeasureGUI/MeasureGUI_WhatisDlg.cxx +++ b/src/MeasureGUI/MeasureGUI_WhatisDlg.cxx @@ -1,95 +1,146 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_WhatisDlg.cxx +// Author : Nicolas REJNERI, Open CASCADE S.A.S. // -// -// File : MeasureGUI_WhatisDlg.cxx -// Author : Nicolas REJNERI -// Module : GEOM -// $Header$ - #include "MeasureGUI_WhatisDlg.h" -#include "MeasureGUI_1Sel1TextView_QTD.h" -#include "GEOMBase.h" +#include "MeasureGUI_Widgets.h" -#include -#include -#include -#include -#include -#include +#include +#include -#include +#include +#include +#include -#include "utilities.h" -#include "SUIT_Session.h" -#include "SalomeApp_Tools.h" +#include +#include +#include -#include -#include -#include -#include -#include -#include -#include +class MeasureGUI_WhatisDlg::Whatis : public QGroupBox +{ +public: + Whatis( QWidget* parent ); + ~Whatis(); + + QLabel* TextLabel1; + QPushButton* PushButton1; + QLineEdit* LineEdit1; + + QTextEdit* TextEdit1; + + QLabel* TextLabel2; + QLineEdit* LineEdit2; + QPushButton* PushButton2; +}; + +//================================================================================= +// Constructs a MeasureGUI_Whatis_QTD which is a child of 'parent', with the +// name 'name' and widget flags set to 'f' +//================================================================================= +MeasureGUI_WhatisDlg::Whatis::Whatis( QWidget* parent ) + : QGroupBox( parent ) +{ + QGridLayout* topLayout = new QGridLayout( this ); + topLayout->setMargin( 11 ); + topLayout->setSpacing( 6 ); + + TextLabel1 = new QLabel( this ); + PushButton1 = new QPushButton( this ); + LineEdit1 = new QLineEdit( this ); + TextEdit1 = new QTextEdit( this ); + TextLabel2 = new QLabel( this ); + LineEdit2 = new QLineEdit( this); + PushButton2 = new QPushButton( this ); + + topLayout->addWidget( TextLabel1, 0, 0 ); + topLayout->addWidget( PushButton1, 0, 1 ); + topLayout->addWidget( LineEdit1, 0, 2, 1, 2 ); + topLayout->addWidget( TextEdit1, 1, 0, 1, 4 ); + topLayout->addWidget( TextLabel2 , 2, 0 ); + topLayout->addWidget( LineEdit2 , 2, 1, 1, 2 ); + topLayout->addWidget( PushButton2, 2, 3 ); +} + +//================================================================================= +// Destroys the object and frees any allocated resources +//================================================================================= +MeasureGUI_WhatisDlg::Whatis::~Whatis() +{ +} //================================================================================= // class : MeasureGUI_WhatisDlg( ) // purpose : Constructs a MeasureGUI_WhatisDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to -// TRUE to construct a modal dialog. +// true to construct a modal dialog. //================================================================================= -MeasureGUI_WhatisDlg::MeasureGUI_WhatisDlg (GeometryGUI* GUI, QWidget* parent) - : MeasureGUI_Skeleton(GUI, parent, "MeasureGUI_WhatisDlg") +MeasureGUI_WhatisDlg::MeasureGUI_WhatisDlg( GeometryGUI* GUI, QWidget* parent ) + : MeasureGUI_Skeleton( GUI, parent ) { - QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( - "GEOM",tr( "ICON_DLG_WHATIS" ) ) ); - QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( - "GEOM",tr( "ICON_SELECT" ) ) ); + SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); + QPixmap image0( resMgr->loadPixmap( "GEOM", tr( "ICON_DLG_WHATIS" ) ) ); + QPixmap image1( resMgr->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption( tr( "GEOM_WHATIS_TITLE" ) ); + setWindowTitle( tr( "GEOM_WHATIS_TITLE" ) ); /***************************************************************/ + + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_WHATIS" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); - GroupConstructors->setTitle( tr( "GEOM_WHATIS" ) ); - RadioButton1->setPixmap( image0 ); + myGrp = new Whatis( this ); + + myGrp->setTitle( tr( "GEOM_WHATIS_OBJECT" ) ); - myGrp = new MeasureGUI_1Sel1TextView_QTD( this, "myGrp" ); - myGrp->GroupBox1->setTitle( tr( "GEOM_WHATIS_OBJECT" ) ); myGrp->TextLabel1->setText( tr( "GEOM_OBJECT" ) ); - - myGrp->TextEdit1->setReadOnly( TRUE ); - // fix height to fit all text - myGrp->TextEdit1->setWordWrap(QTextEdit::NoWrap); - myGrp->TextEdit1->setTextFormat(Qt::PlainText); - QString allLines ("\n\n\n\n\n\n\n\n\n"); // 10 lines - myGrp->TextEdit1->setText(allLines); - int sbHeight = myGrp->TextEdit1->horizontalScrollBar()->height(); - myGrp->TextEdit1->setFixedHeight(myGrp->TextEdit1->contentsHeight() + sbHeight); - - myGrp->PushButton1->setPixmap( image1 ); + myGrp->PushButton1->setIcon( image1 ); + myGrp->PushButton1->setSizePolicy( QSizePolicy( QSizePolicy::Fixed, QSizePolicy::Fixed ) ); myGrp->LineEdit1->setReadOnly( true ); - Layout1->addWidget( myGrp, 1, 0 ); + myGrp->TextEdit1->setReadOnly( true ); + // fix height to fit all text + myGrp->TextEdit1->setLineWrapMode( QTextEdit::NoWrap ); + // myGrp->TextEdit1->setTextFormat( Qt::PlainText ); // VSR : TODO + QString allLines ("\n\n\n\n\n\n\n\n\n"); // 10 lines + myGrp->TextEdit1->setText( allLines ); + int sbHeight = myGrp->TextEdit1->horizontalScrollBar()->height(); + myGrp->TextEdit1->setFixedHeight( myGrp->TextEdit1->document()->size().height() + sbHeight ); + + myGrp->TextLabel2->setText( tr( "GEOM_KIND_OF_SHAPE" ) ); + myGrp->LineEdit2->setReadOnly( true ); + myGrp->LineEdit2->setMinimumWidth( 150 ); + myGrp->PushButton2->setText( tr( "GEOM_PROPERTIES" ) ); + myGrp->PushButton2->setSizePolicy( QSizePolicy( QSizePolicy::Fixed, QSizePolicy::Fixed ) ); + + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( myGrp ); + + // Properties dialog + myParamsDlg = new QMessageBox(QMessageBox::Information, "", "", QMessageBox::Ok, this); + myParamsDlg->setModal( false ); /***************************************************************/ @@ -99,7 +150,6 @@ MeasureGUI_WhatisDlg::MeasureGUI_WhatisDlg (GeometryGUI* GUI, QWidget* parent) Init(); } - //================================================================================= // function : ~MeasureGUI_WhatisDlg() // purpose : Destroys the object and frees any allocated resources @@ -108,7 +158,6 @@ MeasureGUI_WhatisDlg::~MeasureGUI_WhatisDlg() { } - //================================================================================= // function : Init() // purpose : @@ -117,10 +166,12 @@ void MeasureGUI_WhatisDlg::Init() { mySelBtn = myGrp->PushButton1; mySelEdit = myGrp->LineEdit1; + + connect( myGrp->PushButton2, SIGNAL( clicked() ), this, SLOT( ClickOnProperties() ) ); + MeasureGUI_Skeleton::Init(); } - //================================================================================= // function : processObject // purpose : @@ -128,9 +179,25 @@ void MeasureGUI_WhatisDlg::Init() void MeasureGUI_WhatisDlg::processObject() { QString aText; - myGrp->TextEdit1->setText( getParameters( aText ) ? aText : QString("") ); + myGrp->TextEdit1->setText( getParameters( aText ) ? aText : QString( "" ) ); + + QString aParameters; + QString aKind = getKindOfShape( aParameters ); + myGrp->LineEdit2->setText( aKind ); + myGrp->PushButton2->setEnabled( !aParameters.isEmpty()); + myParamsDlg->setWindowTitle(aKind + " " + tr("GEOM_PROPERTIES")); + myParamsDlg->setText(aParameters); + myParamsDlg->adjustSize(); } +//================================================================================= +// function : ClickOnProperties() +// purpose : +//================================================================================= +void MeasureGUI_WhatisDlg::ClickOnProperties() +{ + myParamsDlg->show(); +} //================================================================================= // function : getParameters @@ -140,18 +207,388 @@ bool MeasureGUI_WhatisDlg::getParameters( QString& theText ) { if ( myObj->_is_nil() ) return false; - else - { - try - { - theText = GEOM::GEOM_IMeasureOperations::_narrow( getOperation() )->WhatIs( myObj ); - } - catch( const SALOME::SALOME_Exception& e ) - { - SalomeApp_Tools::QtCatchCorbaException( e ); - return false; - } - return getOperation()->IsDone(); + try + { + theText = GEOM::GEOM_IMeasureOperations::_narrow( getOperation() )->WhatIs( myObj ); } + catch( const SALOME::SALOME_Exception& e ) + { + SalomeApp_Tools::QtCatchCorbaException( e ); + return false; + } + + return getOperation()->IsDone(); +} + +//================================================================================= +// function : getKindOfShape +// purpose : +//================================================================================= +QString MeasureGUI_WhatisDlg::getKindOfShape( QString& theParameters ) +{ + QString aKindStr(""); + theParameters = ""; + + if ( myObj->_is_nil() ) + return aKindStr; + + GEOM::GEOM_IKindOfShape::shape_kind aKind; + GEOM::ListOfLong_var anInts; + GEOM::ListOfDouble_var aDbls; + + GEOM::GEOM_IMeasureOperations_var anOp = GEOM::GEOM_IMeasureOperations::_narrow( getOperation() ); + + try + { + aKind = anOp->KindOfShape( myObj, anInts, aDbls ); + } + catch( const SALOME::SALOME_Exception& e ) { + SalomeApp_Tools::QtCatchCorbaException( e ); + return aKindStr; + } + + if ( !anOp->IsDone() ) + return aKindStr; + +#define PRINT_DOUBLE(val) QString(" %1").arg( DlgRef::PrintDoubleValue( val ) ) + switch ( aKind ) + { + case GEOM::GEOM_IKindOfShape::COMPOUND: + aKindStr = tr( "GEOM_COMPOUND" ); + break; + case GEOM::GEOM_IKindOfShape::COMPSOLID: + aKindStr = tr( "GEOM_COMPOUNDSOLID" ); + break; + case GEOM::GEOM_IKindOfShape::SHELL: + aKindStr = tr( "GEOM_SHELL" ); + if ( anInts[0] == 1 ) + theParameters = tr( "GEOM_CLOSED" ); + else if ( anInts[0] == 2 ) + theParameters = tr( "GEOM_UNCLOSED" ); + else + theParameters = tr( "GEOM_CLOSEDUNCLOSED" ); + break; + case GEOM::GEOM_IKindOfShape::WIRE: + aKindStr = tr( "GEOM_WIRE" ); + if ( anInts[0] == 1 ) + theParameters = tr( "GEOM_CLOSED" ); + else if ( anInts[0] == 2 ) + theParameters = tr( "GEOM_UNCLOSED" ); + else + theParameters = tr( "GEOM_CLOSEDUNCLOSED" ); + break; + // SOLIDs + case GEOM::GEOM_IKindOfShape::SPHERE: + aKindStr = tr( "GEOM_SPHERE" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_DIMENSIONS" ) + + "\n" + tr( "GEOM_RADIUS" ) + PRINT_DOUBLE( aDbls[3] ); + break; + case GEOM::GEOM_IKindOfShape::CYLINDER: + aKindStr = tr( "GEOM_CYLINDER" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_AXIS" ) + + "\n" + tr( "GEOM_DX" ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_DY" ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_DZ" ) + PRINT_DOUBLE( aDbls[5] ) + + "\n" + tr( "GEOM_DIMENSIONS" ) + + "\n" + tr( "GEOM_RADIUS" ) + PRINT_DOUBLE( aDbls[6] ) + + "\n" + tr( "GEOM_HEIGHT" ) + PRINT_DOUBLE( aDbls[7] ); + break; + case GEOM::GEOM_IKindOfShape::BOX: + aKindStr = tr( "GEOM_BOX" ); + theParameters = tr( "GEOM_CENTER") + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_DIMENSIONS" ) + + "\n" + "Ax :" + PRINT_DOUBLE( aDbls[3] ) + + "\n" + "Ay :" + PRINT_DOUBLE( aDbls[4] ) + + "\n" + "Az :" + PRINT_DOUBLE( aDbls[5] ); + break; + case GEOM::GEOM_IKindOfShape::ROTATED_BOX: + aKindStr = tr( "GEOM_BOX" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\nZ Axis:" + + "\n" + "Zx :" + PRINT_DOUBLE( aDbls[3] ) + + "\n" + "Zy :" + PRINT_DOUBLE( aDbls[4] ) + + "\n" + "Zz :" + PRINT_DOUBLE( aDbls[5] ) + + "\nX Axis:" + + "\n" + tr( "GEOM_X_I" ).arg( "x" ) + PRINT_DOUBLE( aDbls[6] ) + + "\n" + tr( "GEOM_X_I" ).arg( "y" ) + PRINT_DOUBLE( aDbls[7] ) + + "\n" + tr( "GEOM_X_I" ).arg( "z" ) + PRINT_DOUBLE( aDbls[8] ) + + "\nDimensions along local axes:" + + "\n" + "Ax :" + PRINT_DOUBLE( aDbls[9] ) + + "\n" + "Ay :" + PRINT_DOUBLE( aDbls[10] ) + + "\n" + "Az :" + PRINT_DOUBLE( aDbls[11] ); + break; + case GEOM::GEOM_IKindOfShape::TORUS: + aKindStr = tr( "GEOM_TORUS" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_AXIS" ) + + "\n" + tr( "GEOM_DX" ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_DY" ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_DZ" ) + PRINT_DOUBLE( aDbls[5] ) + + "\n" + tr( "GEOM_DIMENSIONS" ) + + "\n" + tr( "GEOM_RADIUS_I" ).arg( 1 ) + PRINT_DOUBLE( aDbls[6] ) + + "\n" + tr( "GEOM_RADIUS_I" ).arg( 2 ) + PRINT_DOUBLE( aDbls[7] ); + break; + case GEOM::GEOM_IKindOfShape::CONE: + aKindStr = tr( "GEOM_CONE" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_AXIS" ) + + "\n" + tr( "GEOM_DX" ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_DY" ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_DZ" ) + PRINT_DOUBLE( aDbls[5] ) + + "\n" + tr( "GEOM_DIMENSIONS" ) + + "\n" + tr( "GEOM_RADIUS_I" ).arg( 1 ) + PRINT_DOUBLE( aDbls[6] ) + + "\n" + tr( "GEOM_RADIUS_I" ).arg( 2 ) + PRINT_DOUBLE( aDbls[7] ) + + "\n" + tr( "GEOM_HEIGHT" ) + PRINT_DOUBLE( aDbls[8] ); + break; + case GEOM::GEOM_IKindOfShape::POLYHEDRON: + aKindStr = tr( "GEOM_POLYHEDRON" ); + break; + case GEOM::GEOM_IKindOfShape::SOLID: + aKindStr = tr( "GEOM_SOLID" ); + break; + // FACEs + case GEOM::GEOM_IKindOfShape::SPHERE2D: + aKindStr = tr( "GEOM_SURFSPHERE" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_DIMENSIONS" ) + + "\n" + tr( "GEOM_RADIUS" ) + PRINT_DOUBLE( aDbls[3] ); + break; + case GEOM::GEOM_IKindOfShape::CYLINDER2D: + aKindStr = tr( "GEOM_SURFCYLINDER" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_AXIS" ) + + "\n" + tr( "GEOM_DX" ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_DY" ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_DZ" ) + PRINT_DOUBLE( aDbls[5] ) + + "\n" + tr( "GEOM_DIMENSIONS" ) + + "\n" + tr( "GEOM_RADIUS" ) + PRINT_DOUBLE( aDbls[6] ) + + "\n" + tr( "GEOM_HEIGHT" ) + PRINT_DOUBLE( aDbls[7] ); + break; + case GEOM::GEOM_IKindOfShape::TORUS2D: + aKindStr = tr( "GEOM_SURFTORUS" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_AXIS" ) + + "\n" + tr( "GEOM_DX" ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_DY" ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_DZ" ) + PRINT_DOUBLE( aDbls[5] ) + + "\n" + tr( "GEOM_DIMENSIONS" ) + + "\n" + tr( "GEOM_RADIUS_I" ).arg( 1 ) + PRINT_DOUBLE( aDbls[6] ) + + "\n" + tr( "GEOM_RADIUS_I" ).arg( 2 ) + PRINT_DOUBLE( aDbls[7] ); + break; + case GEOM::GEOM_IKindOfShape::CONE2D: + aKindStr = tr( "GEOM_SURFCONE" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_AXIS" ) + + "\n" + tr( "GEOM_DX" ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_DY" ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_DZ" ) + PRINT_DOUBLE( aDbls[5] ) + + "\n" + tr( "GEOM_DIMENSIONS" ) + + "\n" + tr( "GEOM_RADIUS_I" ).arg( 1 ) + PRINT_DOUBLE( aDbls[6] ) + + "\n" + tr( "GEOM_RADIUS_I" ).arg( 2 ) + PRINT_DOUBLE( aDbls[7] ) + + "\n" + tr( "GEOM_HEIGHT" ) + PRINT_DOUBLE( aDbls[8] ); + break; + case GEOM::GEOM_IKindOfShape::DISK_CIRCLE: + aKindStr = tr( "GEOM_DISK_CIRCLE" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_NORMAL" ) + + "\n" + tr( "GEOM_DX" ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_DY" ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_DZ" ) + PRINT_DOUBLE( aDbls[5] ) + + "\n" + tr( "GEOM_DIMENSIONS" ) + + "\n" + tr( "GEOM_RADIUS" ) + PRINT_DOUBLE( aDbls[6] ); + break; + case GEOM::GEOM_IKindOfShape::DISK_ELLIPSE: + aKindStr = tr( "GEOM_DISK_ELLIPSE" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_NORMAL" ) + + "\n" + tr( "GEOM_DX" ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_DY" ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_DZ" ) + PRINT_DOUBLE( aDbls[5] ) + + "\n" + tr( "GEOM_DIMENSIONS" ) + + "\n" + tr( "GEOM_RADIUS_MAJOR" ) + PRINT_DOUBLE( aDbls[6] ) + + "\n" + tr( "GEOM_RADIUS_MINOR" ) + PRINT_DOUBLE( aDbls[7] ); + break; + case GEOM::GEOM_IKindOfShape::POLYGON: + aKindStr = tr( "GEOM_POLYGON" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_NORMAL" ) + + "\n" + tr( "GEOM_DX" ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_DY" ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_DZ" ) + PRINT_DOUBLE( aDbls[5] ); + break; + case GEOM::GEOM_IKindOfShape::PLANE: + aKindStr = tr( "GEOM_PLANE" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_NORMAL" ) + + "\n" + tr( "GEOM_DX" ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_DY" ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_DZ" ) + PRINT_DOUBLE( aDbls[5] ); + break; + case GEOM::GEOM_IKindOfShape::PLANAR: + aKindStr = tr( "GEOM_PLANAR_FACE" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_NORMAL" ) + + "\n" + tr( "GEOM_DX" ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_DY" ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_DZ" ) + PRINT_DOUBLE( aDbls[5] ); + break; + case GEOM::GEOM_IKindOfShape::FACE: + aKindStr = tr( "GEOM_FACE" ); + break; + // EDGEs + case GEOM::GEOM_IKindOfShape::CIRCLE: + aKindStr = tr( "GEOM_CIRCLE" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_NORMAL" ) + + "\n" + tr( "GEOM_DX" ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_DY" ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_DZ" ) + PRINT_DOUBLE( aDbls[5] ) + + "\n" + tr( "GEOM_DIMENSIONS" ) + + "\n" + tr( "GEOM_RADIUS" ) + PRINT_DOUBLE( aDbls[6] ); + break; + case GEOM::GEOM_IKindOfShape::ARC_CIRCLE: + aKindStr = tr( "GEOM_ARC" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_NORMAL" ) + + "\n" + tr( "GEOM_DX" ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_DY" ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_DZ" ) + PRINT_DOUBLE( aDbls[5] ) + + "\n" + tr( "GEOM_DIMENSIONS" ) + + "\n" + tr( "GEOM_RADIUS" ) + PRINT_DOUBLE( aDbls[6] ) + + "\n" + tr( "GEOM_POINT_I" ).arg( 1 ) + + "\n" + tr( "GEOM_X_I" ).arg( 1 ) + PRINT_DOUBLE( aDbls[7] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 1 ) + PRINT_DOUBLE( aDbls[8] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 1 ) + PRINT_DOUBLE( aDbls[9] ) + + "\n" + tr( "GEOM_POINT_I" ).arg( 2 ) + + "\n" + tr( "GEOM_X_I" ).arg( 2 ) + PRINT_DOUBLE( aDbls[10] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 2 ) + PRINT_DOUBLE( aDbls[11] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 2 ) + PRINT_DOUBLE( aDbls[12] ); + break; + case GEOM::GEOM_IKindOfShape::ELLIPSE: + aKindStr = tr( "GEOM_ELLIPSE" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_NORMAL" ) + + "\n" + tr( "GEOM_DX" ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_DY" ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_DZ" ) + PRINT_DOUBLE( aDbls[5] ) + + "\n" + tr( "GEOM_DIMENSIONS" ) + + "\n" + tr( "GEOM_RADIUS_MAJOR" ) + PRINT_DOUBLE( aDbls[6] ) + + "\n" + tr( "GEOM_RADIUS_MINOR" ) + PRINT_DOUBLE( aDbls[7] ); + break; + case GEOM::GEOM_IKindOfShape::ARC_ELLIPSE: + aKindStr = tr( "GEOM_ARC_ELLIPSE" ); + theParameters = tr( "GEOM_CENTER" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_NORMAL" ) + + "\n" + tr( "GEOM_DX" ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_DY" ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_DZ" ) + PRINT_DOUBLE( aDbls[5] ) + + "\n" + tr( "GEOM_DIMENSIONS" ) + + "\n" + tr( "GEOM_RADIUS_MAJOR" ) + PRINT_DOUBLE( aDbls[6] ) + + "\n" + tr( "GEOM_RADIUS_MINOR" ) + PRINT_DOUBLE( aDbls[7] ) + + "\n" + tr( "GEOM_POINT_I" ).arg( 1 ) + + "\n" + tr( "GEOM_X_I" ).arg( 1 ) + PRINT_DOUBLE( aDbls[8] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 1 ) + PRINT_DOUBLE( aDbls[9] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 1 ) + PRINT_DOUBLE( aDbls[10] ) + + "\n" + tr( "GEOM_POINT_I" ).arg( 2 ) + + "\n" + tr( "GEOM_X_I" ).arg( 2 ) + PRINT_DOUBLE( aDbls[11] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 2 ) + PRINT_DOUBLE( aDbls[12] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 2 ) + PRINT_DOUBLE( aDbls[13] ); + break; + case GEOM::GEOM_IKindOfShape::LINE: + aKindStr = tr( "GEOM_LINE" ); + theParameters = tr( "GEOM_POSITION" ) + + "\n" + tr( "GEOM_X_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 0 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_DIRECTION" ) + + "\n" + tr( "GEOM_DX" ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_DY" ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_DZ" ) + PRINT_DOUBLE( aDbls[5] ); + break; + case GEOM::GEOM_IKindOfShape::SEGMENT: + aKindStr = tr( "GEOM_SEGMENT" ); + theParameters = tr( "GEOM_POINT_I" ).arg( 1 ) + + "\n" + tr( "GEOM_X_I" ).arg( 1 ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 1 ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 1 ) + PRINT_DOUBLE( aDbls[2] ) + + "\n" + tr( "GEOM_POINT_I" ).arg( 2 ) + + "\n" + tr( "GEOM_X_I" ).arg( 2 ) + PRINT_DOUBLE( aDbls[3] ) + + "\n" + tr( "GEOM_Y_I" ).arg( 2 ) + PRINT_DOUBLE( aDbls[4] ) + + "\n" + tr( "GEOM_Z_I" ).arg( 2 ) + PRINT_DOUBLE( aDbls[5] ); + break; + case GEOM::GEOM_IKindOfShape::EDGE: + aKindStr = tr( "GEOM_EDGE" ); + break; + case GEOM::GEOM_IKindOfShape::VERTEX: + aKindStr = tr( "GEOM_VERTEX" ); + theParameters = tr( "GEOM_COORDINATES" ) + + "\n" + tr( "GEOM_X" ) + PRINT_DOUBLE( aDbls[0] ) + + "\n" + tr( "GEOM_Y" ) + PRINT_DOUBLE( aDbls[1] ) + + "\n" + tr( "GEOM_Z" ) + PRINT_DOUBLE( aDbls[2] ); + break; + default: + break; + } + + return aKindStr; } diff --git a/src/MeasureGUI/MeasureGUI_WhatisDlg.h b/src/MeasureGUI/MeasureGUI_WhatisDlg.h index 10f3ccf71..432cdd82d 100644 --- a/src/MeasureGUI/MeasureGUI_WhatisDlg.h +++ b/src/MeasureGUI/MeasureGUI_WhatisDlg.h @@ -1,67 +1,64 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : MeasureGUI_WhatisDlg.h -// Author : Nicolas REJNERI -// Module : GEOM -// $Header$ - -#ifndef DIALOGBOX_WHATIS_H -#define DIALOGBOX_WHATIS_H - -#include "GEOM_MeasureGUI.hxx" +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : MeasureGUI_WhatisDlg.h +// Author : Nicolas REJNERI, Open CASCADE S.A.S. +// +#ifndef MEASUREGUI_WHATISDLG_H +#define MEASUREGUI_WHATISDLG_H #include "MeasureGUI_Skeleton.h" -class MeasureGUI_1Sel1TextView_QTD; +class QMessageBox; //================================================================================= -// class : DialogBox_PROPERTIES +// class : MeasureGUI_WhatisDlg // purpose : //================================================================================= -class GEOM_MEASUREGUI_EXPORT MeasureGUI_WhatisDlg : public MeasureGUI_Skeleton +class MeasureGUI_WhatisDlg : public MeasureGUI_Skeleton { - Q_OBJECT + Q_OBJECT + class Whatis; + public: - MeasureGUI_WhatisDlg( GeometryGUI* GUI, - QWidget* parent ); - ~MeasureGUI_WhatisDlg(); + MeasureGUI_WhatisDlg( GeometryGUI*, QWidget* ); + ~MeasureGUI_WhatisDlg(); protected: - - // redefined from GEOMBase_Helper and MeasureGUI_Skeleton - virtual void processObject(); + // redefined from GEOMBase_Helper and MeasureGUI_Skeleton + virtual void processObject(); + +protected slots: + virtual void ClickOnProperties(); private: - - void Init(); - bool getParameters( QString& ); - + void Init(); + bool getParameters( QString& ); + QString getKindOfShape( QString& ); + private: - - MeasureGUI_1Sel1TextView_QTD* myGrp; - + Whatis* myGrp; + QMessageBox* myParamsDlg; }; -#endif // DIALOGBOX_WHATIS_H +#endif // MEASUREGUI_WHATISDLG_H diff --git a/src/MeasureGUI/MeasureGUI_Widgets.cxx b/src/MeasureGUI/MeasureGUI_Widgets.cxx new file mode 100644 index 000000000..bac7f4a28 --- /dev/null +++ b/src/MeasureGUI/MeasureGUI_Widgets.cxx @@ -0,0 +1,152 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 : MeasureGUI_Widgets.cxx +// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com) +// +#include "MeasureGUI_Widgets.h" + +////////////////////////////////////////// +// MeasureGUI_1Sel12LineEdit +////////////////////////////////////////// + +MeasureGUI_1Sel12LineEdit::MeasureGUI_1Sel12LineEdit( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} +MeasureGUI_1Sel12LineEdit::~MeasureGUI_1Sel12LineEdit() +{ +} + +////////////////////////////////////////// +// MeasureGUI_1Sel1TextView1Check +////////////////////////////////////////// + +MeasureGUI_1Sel1TextView1Check::MeasureGUI_1Sel1TextView1Check( QWidget* parent, + Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +MeasureGUI_1Sel1TextView1Check::~MeasureGUI_1Sel1TextView1Check() +{ +} + +////////////////////////////////////////// +// MeasureGUI_1Sel1TextView2ListBox +////////////////////////////////////////// + +MeasureGUI_1Sel1TextView2ListBox::MeasureGUI_1Sel1TextView2ListBox( QWidget* parent, + Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +MeasureGUI_1Sel1TextView2ListBox::~MeasureGUI_1Sel1TextView2ListBox() +{ +} + +////////////////////////////////////////// +// MeasureGUI_1Sel1TextView +////////////////////////////////////////// + +MeasureGUI_1Sel1TextView::MeasureGUI_1Sel1TextView( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +MeasureGUI_1Sel1TextView::~MeasureGUI_1Sel1TextView() +{ +} + +////////////////////////////////////////// +// MeasureGUI_1Sel3LineEdit +////////////////////////////////////////// + +MeasureGUI_1Sel3LineEdit::MeasureGUI_1Sel3LineEdit( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +MeasureGUI_1Sel3LineEdit::~MeasureGUI_1Sel3LineEdit() +{ +} + +////////////////////////////////////////// +// MeasureGUI_1Sel6LineEdit +////////////////////////////////////////// + +MeasureGUI_1Sel6LineEdit::MeasureGUI_1Sel6LineEdit( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +MeasureGUI_1Sel6LineEdit::~MeasureGUI_1Sel6LineEdit() +{ +} + +////////////////////////////////////////// +// MeasureGUI_2Sel1LineEdit +////////////////////////////////////////// + +MeasureGUI_2Sel1LineEdit::MeasureGUI_2Sel1LineEdit( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +MeasureGUI_2Sel1LineEdit::~MeasureGUI_2Sel1LineEdit() +{ +} + +////////////////////////////////////////// +// MeasureGUI_2Sel4LineEdit +////////////////////////////////////////// + +MeasureGUI_2Sel4LineEdit::MeasureGUI_2Sel4LineEdit( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +MeasureGUI_2Sel4LineEdit::~MeasureGUI_2Sel4LineEdit() +{ +} + +////////////////////////////////////////// +// MeasureGUI_SkeletonBox +////////////////////////////////////////// + +MeasureGUI_SkeletonBox::MeasureGUI_SkeletonBox( QWidget* parent, Qt::WindowFlags f ) +: QWidget( parent, f ) +{ + setupUi( this ); +} + +MeasureGUI_SkeletonBox::~MeasureGUI_SkeletonBox() +{ +} diff --git a/src/MeasureGUI/MeasureGUI_Widgets.h b/src/MeasureGUI/MeasureGUI_Widgets.h new file mode 100644 index 000000000..8ef4837a2 --- /dev/null +++ b/src/MeasureGUI/MeasureGUI_Widgets.h @@ -0,0 +1,172 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 : MeasureGUI_Widgets.h +// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com) +// +#ifndef MEASUREGUI_WIDGETS_H +#define MEASUREGUI_WIDGETS_H + +////////////////////////////////////////// +// MeasureGUI_1Sel12LineEdit +////////////////////////////////////////// + +#include "ui_MeasureGUI_1Sel12LineEdit_QTD.h" + +class MeasureGUI_1Sel12LineEdit : public QWidget, + public Ui::MeasureGUI_1Sel12LineEdit_QTD +{ + Q_OBJECT + +public: + MeasureGUI_1Sel12LineEdit( QWidget* = 0, Qt::WindowFlags = 0 ); + ~MeasureGUI_1Sel12LineEdit(); +}; + +////////////////////////////////////////// +// MeasureGUI_1Sel1TextView1Check +////////////////////////////////////////// + +#include "ui_MeasureGUI_1Sel1TextView1Check_QTD.h" + +class MeasureGUI_1Sel1TextView1Check : public QWidget, + public Ui::MeasureGUI_1Sel1TextView1Check_QTD +{ + Q_OBJECT + +public: + MeasureGUI_1Sel1TextView1Check( QWidget* = 0, Qt::WindowFlags = 0 ); + ~MeasureGUI_1Sel1TextView1Check(); +}; + +////////////////////////////////////////// +// MeasureGUI_1Sel1TextView2ListBox +////////////////////////////////////////// + +#include "ui_MeasureGUI_1Sel1TextView2ListBox_QTD.h" + +class MeasureGUI_1Sel1TextView2ListBox : public QWidget, + public Ui::MeasureGUI_1Sel1TextView2ListBox_QTD +{ + Q_OBJECT + +public: + MeasureGUI_1Sel1TextView2ListBox( QWidget* = 0, Qt::WindowFlags = 0 ); + ~MeasureGUI_1Sel1TextView2ListBox(); +}; + +////////////////////////////////////////// +// MeasureGUI_1Sel1TextView +////////////////////////////////////////// + +#include "ui_MeasureGUI_1Sel1TextView_QTD.h" + +class MeasureGUI_1Sel1TextView : public QWidget, + public Ui::MeasureGUI_1Sel1TextView_QTD +{ + Q_OBJECT + +public: + MeasureGUI_1Sel1TextView( QWidget* = 0, Qt::WindowFlags = 0 ); + ~MeasureGUI_1Sel1TextView(); +}; + +////////////////////////////////////////// +// MeasureGUI_1Sel3LineEdit +////////////////////////////////////////// + +#include "ui_MeasureGUI_1Sel3LineEdit_QTD.h" + +class MeasureGUI_1Sel3LineEdit : public QWidget, + public Ui::MeasureGUI_1Sel3LineEdit_QTD +{ + Q_OBJECT + +public: + MeasureGUI_1Sel3LineEdit( QWidget* = 0, Qt::WindowFlags = 0 ); + ~MeasureGUI_1Sel3LineEdit(); +}; + +////////////////////////////////////////// +// MeasureGUI_1Sel6LineEdit +////////////////////////////////////////// + +#include "ui_MeasureGUI_1Sel6LineEdit_QTD.h" + +class MeasureGUI_1Sel6LineEdit : public QWidget, + public Ui::MeasureGUI_1Sel6LineEdit_QTD +{ + Q_OBJECT + +public: + MeasureGUI_1Sel6LineEdit( QWidget* = 0, Qt::WindowFlags = 0 ); + ~MeasureGUI_1Sel6LineEdit(); +}; + +////////////////////////////////////////// +// MeasureGUI_2Sel1LineEdit +////////////////////////////////////////// + +#include "ui_MeasureGUI_2Sel1LineEdit_QTD.h" + +class MeasureGUI_2Sel1LineEdit : public QWidget, + public Ui::MeasureGUI_2Sel1LineEdit_QTD +{ + Q_OBJECT + +public: + MeasureGUI_2Sel1LineEdit( QWidget* = 0, Qt::WindowFlags = 0 ); + ~MeasureGUI_2Sel1LineEdit(); +}; + +////////////////////////////////////////// +// MeasureGUI_2Sel4LineEdit +////////////////////////////////////////// + +#include "ui_MeasureGUI_2Sel4LineEdit_QTD.h" + +class MeasureGUI_2Sel4LineEdit : public QWidget, + public Ui::MeasureGUI_2Sel4LineEdit_QTD +{ + Q_OBJECT + +public: + MeasureGUI_2Sel4LineEdit( QWidget* = 0, Qt::WindowFlags = 0 ); + ~MeasureGUI_2Sel4LineEdit(); +}; + +////////////////////////////////////////// +// MeasureGUI_SkeletonBox +////////////////////////////////////////// + +#include "ui_MeasureGUI_SkeletonBox_QTD.h" + +class MeasureGUI_SkeletonBox : public QWidget, + public Ui::MeasureGUI_SkeletonBox_QTD +{ + Q_OBJECT + +public: + MeasureGUI_SkeletonBox( QWidget* = 0, Qt::WindowFlags = 0 ); + ~MeasureGUI_SkeletonBox(); +}; + +#endif // MEASUREGUI_WIDGETS_H diff --git a/src/MeasureGUI/UIFiles/MeasureGUI_1Sel12LineEdit_QTD.ui b/src/MeasureGUI/UIFiles/MeasureGUI_1Sel12LineEdit_QTD.ui deleted file mode 100644 index 505b87b68..000000000 --- a/src/MeasureGUI/UIFiles/MeasureGUI_1Sel12LineEdit_QTD.ui +++ /dev/null @@ -1,268 +0,0 @@ - -MeasureGUI_1Sel12LineEdit_QTD - - - MeasureGUI_1Sel12LineEdit_QTD - - - - 0 - 0 - 131 - 171 - - - - MeasureGUI_1Sel12LineEdit_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - 7 - 7 - 0 - 0 - - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - LineEdit12 - - - - - LineEdit11 - - - - - LineEdit42 - - - - - TextLabel5 - - - - 0 - 0 - 0 - 0 - - - - TL5 - - - - - LineEdit31 - - - - - LineEdit41 - - - - - LineEdit23 - - - - - LineEdit33 - - - - - LineEdit43 - - - - - LineEdit22 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - LineEdit13 - - - - - LineEdit32 - - - - - LineEdit21 - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - - - LineEdit1 - - - - - Spacer8 - - - Vertical - - - Expanding - - - - 0 - 40 - - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - - - - - - diff --git a/src/MeasureGUI/UIFiles/MeasureGUI_1Sel1TextView_QTD.ui b/src/MeasureGUI/UIFiles/MeasureGUI_1Sel1TextView_QTD.ui deleted file mode 100644 index d8e24583e..000000000 --- a/src/MeasureGUI/UIFiles/MeasureGUI_1Sel1TextView_QTD.ui +++ /dev/null @@ -1,116 +0,0 @@ - -MeasureGUI_1Sel1TextView_QTD - - - MeasureGUI_1Sel1TextView_QTD - - - - 0 - 0 - 130 - 160 - - - - MeasureGUI_1Sel1TextView_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - 7 - 7 - 0 - 0 - - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - TextEdit1 - - - - - LineEdit1 - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - - - - - - diff --git a/src/MeasureGUI/UIFiles/MeasureGUI_1Sel3LineEdit_QTD.ui b/src/MeasureGUI/UIFiles/MeasureGUI_1Sel3LineEdit_QTD.ui deleted file mode 100644 index 07db7bfb0..000000000 --- a/src/MeasureGUI/UIFiles/MeasureGUI_1Sel3LineEdit_QTD.ui +++ /dev/null @@ -1,191 +0,0 @@ - -MeasureGUI_1Sel3LineEdit_QTD - - - MeasureGUI_1Sel3LineEdit_QTD - - - - 0 - 0 - 129 - 141 - - - - MeasureGUI_1Sel3LineEdit_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - 7 - 7 - 0 - 0 - - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - LineEdit4 - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - LineEdit2 - - - - - Spacer8 - - - Vertical - - - Expanding - - - - 0 - 80 - - - - - - LineEdit3 - - - - - LineEdit1 - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - - - - - - diff --git a/src/MeasureGUI/UIFiles/MeasureGUI_1Sel6LineEdit_QTD.ui b/src/MeasureGUI/UIFiles/MeasureGUI_1Sel6LineEdit_QTD.ui deleted file mode 100644 index b439a76de..000000000 --- a/src/MeasureGUI/UIFiles/MeasureGUI_1Sel6LineEdit_QTD.ui +++ /dev/null @@ -1,254 +0,0 @@ - -MeasureGUI_1Sel6LineEdit_QTD - - - MeasureGUI_1Sel6LineEdit_QTD - - - - 0 - 0 - 129 - 163 - - - - MeasureGUI_1Sel6LineEdit_QTD - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - 7 - 7 - 0 - 0 - - - - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - Spacer8 - - - Vertical - - - Expanding - - - - 0 - 50 - - - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - TL1 - - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - LineEdit22 - - - - - LineEdit32 - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - TL4 - - - - - LineEdit31 - - - - - TextLabel5 - - - - 0 - 0 - 0 - 0 - - - - TL5 - - - - - LineEdit11 - - - - - TextLabel6 - - - - 0 - 0 - 0 - 0 - - - - TL6 - - - - - LineEdit12 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - TL2 - - - - - LineEdit21 - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - TL3 - - - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - - - - LineEdit1 - - - - - - - - - - diff --git a/src/MeasureGUI/UIFiles/MeasureGUI_2Sel1LineEdit_QTD.ui b/src/MeasureGUI/UIFiles/MeasureGUI_2Sel1LineEdit_QTD.ui deleted file mode 100644 index 0cb627406..000000000 --- a/src/MeasureGUI/UIFiles/MeasureGUI_2Sel1LineEdit_QTD.ui +++ /dev/null @@ -1,165 +0,0 @@ - -MeasureGUI_2Sel1LineEdit_QTD - - - MeasureGUI_2Sel1LineEdit_QTD - - - - 0 - 0 - 129 - 115 - - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - 7 - 7 - 0 - 0 - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - LineEdit1 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - LineEdit2 - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - - - LineEdit3 - - - - - Spacer8 - - - Vertical - - - Expanding - - - - 0 - 60 - - - - - - - - - - - diff --git a/src/MeasureGUI/UIFiles/MeasureGUI_2Sel4LineEdit_QTD.ui b/src/MeasureGUI/UIFiles/MeasureGUI_2Sel4LineEdit_QTD.ui deleted file mode 100644 index 8fb9b3184..000000000 --- a/src/MeasureGUI/UIFiles/MeasureGUI_2Sel4LineEdit_QTD.ui +++ /dev/null @@ -1,219 +0,0 @@ - -MeasureGUI_2Sel4LineEdit_QTD - - - MeasureGUI_2Sel4LineEdit_QTD - - - - 0 - 0 - 129 - 163 - - - - - unnamed - - - 0 - - - 6 - - - - GroupBox1 - - - - 7 - 7 - 0 - 0 - - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - TextLabel1 - - - - 0 - 0 - 0 - 0 - - - - - - PushButton1 - - - - 0 - 0 - 0 - 0 - - - - - - LineEdit1 - - - - - TextLabel2 - - - - 0 - 0 - 0 - 0 - - - - - - PushButton2 - - - - 0 - 0 - 0 - 0 - - - - - - LineEdit2 - - - - - TextLabel3 - - - - 0 - 0 - 0 - 0 - - - - - - LineEdit3 - - - - - TextLabel4 - - - - 0 - 0 - 0 - 0 - - - - - - LineEdit4 - - - - - TextLabel5 - - - - 0 - 0 - 0 - 0 - - - - - - LineEdit5 - - - - - TextLabel6 - - - - 0 - 0 - 0 - 0 - - - - - - LineEdit6 - - - - - Spacer8 - - - Vertical - - - Expanding - - - - 0 - 60 - - - - - - - - - - - diff --git a/src/MeasureGUI/UIFiles/MeasureGUI_Skeleton_QTD.ui b/src/MeasureGUI/UIFiles/MeasureGUI_Skeleton_QTD.ui deleted file mode 100644 index fa012c203..000000000 --- a/src/MeasureGUI/UIFiles/MeasureGUI_Skeleton_QTD.ui +++ /dev/null @@ -1,167 +0,0 @@ - -MeasureGUI_Skeleton_QTD - - - MeasureGUI_Skeleton_QTD - - - - 0 - 0 - 228 - 266 - - - - - 5 - 7 - 0 - 0 - - - - true - - - - unnamed - - - 11 - - - 6 - - - - Layout1 - - - - unnamed - - - 0 - - - 6 - - - - GroupButtons - - - - 7 - 0 - 0 - 0 - - - - - unnamed - - - 11 - - - 6 - - - - Layout3 - - - - unnamed - - - 0 - - - 6 - - - - Spacer1 - - - Horizontal - - - Expanding - - - - 120 - 0 - - - - - - buttonClose - - - - - buttonHelp - - - - - - - - - GroupConstructors - - - - 5 - 0 - 0 - 0 - - - - - unnamed - - - 11 - - - 6 - - - - Layout2 - - - - unnamed - - - 0 - - - 6 - - - - RadioButton1 - - - - - - - - - - - - diff --git a/src/MeasureGUI/UIFiles/ui_to_cxx b/src/MeasureGUI/UIFiles/ui_to_cxx deleted file mode 100755 index eea9301e5..000000000 --- a/src/MeasureGUI/UIFiles/ui_to_cxx +++ /dev/null @@ -1,41 +0,0 @@ -# Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -#!/bin/sh - -#uic -o MeasureGUI_Skeleton_QTD.h MeasureGUI_Skeleton_QTD.ui -#uic -o MeasureGUI_Skeleton_QTD.cxx -impl MeasureGUI_Skeleton_QTD.h MeasureGUI_Skeleton_QTD.ui - -uic -o MeasureGUI_1Sel3LineEdit_QTD.h MeasureGUI_1Sel3LineEdit_QTD.ui -uic -o MeasureGUI_1Sel3LineEdit_QTD.cxx -impl MeasureGUI_1Sel3LineEdit_QTD.h MeasureGUI_1Sel3LineEdit_QTD.ui - -uic -o MeasureGUI_1Sel6LineEdit_QTD.h MeasureGUI_1Sel6LineEdit_QTD.ui -uic -o MeasureGUI_1Sel6LineEdit_QTD.cxx -impl MeasureGUI_1Sel6LineEdit_QTD.h MeasureGUI_1Sel6LineEdit_QTD.ui - -uic -o MeasureGUI_1Sel12LineEdit_QTD.h MeasureGUI_1Sel12LineEdit_QTD.ui -uic -o MeasureGUI_1Sel12LineEdit_QTD.cxx -impl MeasureGUI_1Sel12LineEdit_QTD.h MeasureGUI_1Sel12LineEdit_QTD.ui - -uic -o MeasureGUI_2Sel1LineEdit_QTD.h MeasureGUI_2Sel1LineEdit_QTD.ui -uic -o MeasureGUI_2Sel1LineEdit_QTD.cxx -impl MeasureGUI_2Sel1LineEdit_QTD.h MeasureGUI_2Sel1LineEdit_QTD.ui - -uic -o MeasureGUI_2Sel4LineEdit_QTD.h MeasureGUI_2Sel4LineEdit_QTD.ui -uic -o MeasureGUI_2Sel4LineEdit_QTD.cxx -impl MeasureGUI_2Sel4LineEdit_QTD.h MeasureGUI_2Sel4LineEdit_QTD.ui - -#uic -o MeasureGUI_1Sel1TextView_QTD.h MeasureGUI_1Sel1TextView_QTD.ui -#uic -o MeasureGUI_1Sel1TextView_QTD.cxx -impl MeasureGUI_1Sel1TextView_QTD.h MeasureGUI_1Sel1TextView_QTD.ui diff --git a/src/NMTAlgo/Makefile.am b/src/NMTAlgo/Makefile.am index 9968f3522..407b7510b 100644 --- a/src/NMTAlgo/Makefile.am +++ b/src/NMTAlgo/Makefile.am @@ -1,63 +1,77 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM NMTAlgo : partition algorithm -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : Makefile.in # Author : Julia DOROVSKIKH # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header$ - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files -salomeinclude_HEADERS = \ - NMTAlgo_Splitter1.hxx \ - NMTAlgo_Splitter.hxx \ - NMTAlgo_Builder.hxx \ - NMTAlgo_Algo.hxx +salomeinclude_HEADERS = \ + NMTAlgo_Splitter1.hxx \ + NMTAlgo_Splitter1.ixx \ + NMTAlgo_Splitter1.jxx \ + NMTAlgo_Splitter.hxx \ + NMTAlgo_Splitter.ixx \ + NMTAlgo_Splitter.jxx \ + NMTAlgo_Builder.hxx \ + NMTAlgo_Builder.ixx \ + NMTAlgo_Builder.jxx \ + NMTAlgo_Algo.hxx \ + NMTAlgo_Algo.ixx \ + NMTAlgo_Algo.jxx \ + NMTAlgo_Loop3d.hxx \ + NMTAlgo_Loop3d.ixx \ + NMTAlgo_Loop3d.jxx \ + NMTAlgo_Tools.hxx \ + NMTAlgo_Tools.ixx \ + NMTAlgo_Tools.jxx # Libraries targets lib_LTLIBRARIES = libNMTAlgo.la -dist_libNMTAlgo_la_SOURCES = \ - NMTAlgo_Algo.cxx \ - NMTAlgo_Builder.cxx \ - NMTAlgo_Loop3d.cxx \ - NMTAlgo_Splitter.cxx \ - NMTAlgo_Splitter1.cxx \ - NMTAlgo_Splitter_1.cxx \ - NMTAlgo_Splitter_2.cxx \ +dist_libNMTAlgo_la_SOURCES = \ + NMTAlgo_Algo.cxx \ + NMTAlgo_Builder.cxx \ + NMTAlgo_Loop3d.cxx \ + NMTAlgo_Splitter.cxx \ + NMTAlgo_Splitter1.cxx \ + NMTAlgo_Splitter_1.cxx \ + NMTAlgo_Splitter_2.cxx \ NMTAlgo_Tools.cxx -# additionnal information to compil and link file -libNMTAlgo_la_CPPFLAGS = \ - $(CAS_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - -I$(srcdir)/../NMTDS \ +# additional information to compile and link file + +libNMTAlgo_la_CPPFLAGS = \ + $(CAS_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + -I$(srcdir)/../NMTDS \ -I$(srcdir)/../NMTTools -libNMTAlgo_la_LDFLAGS = \ - $(STDLIB) \ - $(CAS_LDPATH) -lTKBool -lTKBO \ - $(KERNEL_LDFLAGS) \ +libNMTAlgo_la_LDFLAGS = \ + $(STDLIB) \ + $(CAS_LDPATH) -lTKBool -lTKBO \ + $(KERNEL_LDFLAGS) \ ../NMTTools/libNMTTools.la diff --git a/src/NMTAlgo/NMTAlgo.cdl b/src/NMTAlgo/NMTAlgo.cdl index 46ae4c50b..1af7ea7e2 100644 --- a/src/NMTAlgo/NMTAlgo.cdl +++ b/src/NMTAlgo/NMTAlgo.cdl @@ -1,27 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- File: NMTAlgo.cdl --- Created: Tue Jan 27 14:39:05 2004 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2004 +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +-- +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- 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: NMTAlgo.cdl +-- Created: Tue Jan 27 14:39:05 2004 +-- Author: Peter KURNEV package NMTAlgo diff --git a/src/NMTAlgo/NMTAlgo.pro b/src/NMTAlgo/NMTAlgo.pro new file mode 100644 index 000000000..213e5be2b --- /dev/null +++ b/src/NMTAlgo/NMTAlgo.pro @@ -0,0 +1,66 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = NMTAlgo +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +STDLIB = -lstdc++ + +CAS_LDPATH = -L$$(CASROOT)/Linux/lib + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +INCLUDEPATH += $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} ../NMTDS ../NMTTools + +LIBS += $${STDLIB} $${CAS_LDPATH} -lTKBool -lTKBO $${KERNEL_LDFLAGS} -L$$(GEOM_ROOT_DIR)/lib -lNMTTools + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS + +HEADERS = NMTAlgo_Splitter1.hxx +HEADERS += NMTAlgo_Splitter.hxx +HEADERS += NMTAlgo_Builder.hxx +HEADERS += NMTAlgo_Algo.hxx + +SOURCES = NMTAlgo_Algo.cxx +SOURCES += NMTAlgo_Builder.cxx +SOURCES += NMTAlgo_Loop3d.cxx +SOURCES += NMTAlgo_Splitter.cxx +SOURCES += NMTAlgo_Splitter1.cxx +SOURCES += NMTAlgo_Splitter_1.cxx +SOURCES += NMTAlgo_Splitter_2.cxx +SOURCES += NMTAlgo_Tools.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/NMTAlgo/NMTAlgo_Algo.cdl b/src/NMTAlgo/NMTAlgo_Algo.cdl index e7d031398..546ab20e8 100644 --- a/src/NMTAlgo/NMTAlgo_Algo.cdl +++ b/src/NMTAlgo/NMTAlgo_Algo.cdl @@ -1,27 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- File: NMTAlgo_Algo.cdl --- Created: Tue Jan 27 14:41:04 2004 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2004 +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +-- +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- 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: NMTAlgo_Algo.cdl +-- Created: Tue Jan 27 14:41:04 2004 +-- Author: Peter KURNEV deferred class Algo from NMTAlgo diff --git a/src/NMTAlgo/NMTAlgo_Algo.cxx b/src/NMTAlgo/NMTAlgo_Algo.cxx index 7e21d48c9..3beffd3db 100644 --- a/src/NMTAlgo/NMTAlgo_Algo.cxx +++ b/src/NMTAlgo/NMTAlgo_Algo.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTAlgo_Algo.cxx // Created: Tue Jan 27 14:58:21 2004 // Author: Peter KURNEV // - - +// #include #include //======================================================================= diff --git a/src/NMTAlgo/NMTAlgo_Algo.hxx b/src/NMTAlgo/NMTAlgo_Algo.hxx index b7012d17a..dc73c1088 100644 --- a/src/NMTAlgo/NMTAlgo_Algo.hxx +++ b/src/NMTAlgo/NMTAlgo_Algo.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTAlgo_Algo_HeaderFile #define _NMTAlgo_Algo_HeaderFile diff --git a/src/NMTAlgo/NMTAlgo_Algo.ixx b/src/NMTAlgo/NMTAlgo_Algo.ixx index d27ea6328..cb4c135df 100644 --- a/src/NMTAlgo/NMTAlgo_Algo.ixx +++ b/src/NMTAlgo/NMTAlgo_Algo.ixx @@ -1,20 +1,22 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTAlgo/NMTAlgo_Algo.jxx b/src/NMTAlgo/NMTAlgo_Algo.jxx index 9704d760e..fc8787025 100644 --- a/src/NMTAlgo/NMTAlgo_Algo.jxx +++ b/src/NMTAlgo/NMTAlgo_Algo.jxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef _NMTTools_DSFiller_HeaderFile #include diff --git a/src/NMTAlgo/NMTAlgo_Builder.cdl b/src/NMTAlgo/NMTAlgo_Builder.cdl index 8a0982428..9527e0a21 100644 --- a/src/NMTAlgo/NMTAlgo_Builder.cdl +++ b/src/NMTAlgo/NMTAlgo_Builder.cdl @@ -1,27 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- File: NMTAlgo_Builder.cdl --- Created: Tue Jan 27 15:09:45 2004 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2004 +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +-- +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- 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: NMTAlgo_Builder.cdl +-- Created: Tue Jan 27 15:09:45 2004 +-- Author: Peter KURNEV class Builder from NMTAlgo diff --git a/src/NMTAlgo/NMTAlgo_Builder.cxx b/src/NMTAlgo/NMTAlgo_Builder.cxx index cd422a419..b5a1fceb9 100644 --- a/src/NMTAlgo/NMTAlgo_Builder.cxx +++ b/src/NMTAlgo/NMTAlgo_Builder.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTAlgo_Inter3d.cxx // Created: Tue Jan 27 15:14:13 2004 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/NMTAlgo/NMTAlgo_Builder.hxx b/src/NMTAlgo/NMTAlgo_Builder.hxx index e4ac3fc35..a5df73c8e 100644 --- a/src/NMTAlgo/NMTAlgo_Builder.hxx +++ b/src/NMTAlgo/NMTAlgo_Builder.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTAlgo_Builder_HeaderFile #define _NMTAlgo_Builder_HeaderFile diff --git a/src/NMTAlgo/NMTAlgo_Builder.ixx b/src/NMTAlgo/NMTAlgo_Builder.ixx index 8b48a26b7..283ec7648 100644 --- a/src/NMTAlgo/NMTAlgo_Builder.ixx +++ b/src/NMTAlgo/NMTAlgo_Builder.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTAlgo/NMTAlgo_Builder.jxx b/src/NMTAlgo/NMTAlgo_Builder.jxx index 874fa7fc2..f3e4dbe5a 100644 --- a/src/NMTAlgo/NMTAlgo_Builder.jxx +++ b/src/NMTAlgo/NMTAlgo_Builder.jxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef _NMTTools_DSFiller_HeaderFile #include diff --git a/src/NMTAlgo/NMTAlgo_Loop3d.cdl b/src/NMTAlgo/NMTAlgo_Loop3d.cdl index 0ed4be963..190825523 100644 --- a/src/NMTAlgo/NMTAlgo_Loop3d.cdl +++ b/src/NMTAlgo/NMTAlgo_Loop3d.cdl @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +-- +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- 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 +-- class Loop3d from NMTAlgo diff --git a/src/NMTAlgo/NMTAlgo_Loop3d.cxx b/src/NMTAlgo/NMTAlgo_Loop3d.cxx index bdf053b2a..5517e95c7 100644 --- a/src/NMTAlgo/NMTAlgo_Loop3d.cxx +++ b/src/NMTAlgo/NMTAlgo_Loop3d.cxx @@ -1,25 +1,26 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // - //using namespace std; - +// #include #include diff --git a/src/NMTAlgo/NMTAlgo_Loop3d.hxx b/src/NMTAlgo/NMTAlgo_Loop3d.hxx index 8285773d1..b0dfb5adb 100644 --- a/src/NMTAlgo/NMTAlgo_Loop3d.hxx +++ b/src/NMTAlgo/NMTAlgo_Loop3d.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTAlgo_Loop3d_HeaderFile #define _NMTAlgo_Loop3d_HeaderFile diff --git a/src/NMTAlgo/NMTAlgo_Loop3d.ixx b/src/NMTAlgo/NMTAlgo_Loop3d.ixx index 98aaa0570..97c229d65 100644 --- a/src/NMTAlgo/NMTAlgo_Loop3d.ixx +++ b/src/NMTAlgo/NMTAlgo_Loop3d.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTAlgo/NMTAlgo_Loop3d.jxx b/src/NMTAlgo/NMTAlgo_Loop3d.jxx index 0c62ad933..02c10b8dd 100644 --- a/src/NMTAlgo/NMTAlgo_Loop3d.jxx +++ b/src/NMTAlgo/NMTAlgo_Loop3d.jxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef _TopoDS_Shape_HeaderFile #include diff --git a/src/NMTAlgo/NMTAlgo_Splitter.cdl b/src/NMTAlgo/NMTAlgo_Splitter.cdl index 7d0f5ac85..48f5dbd6e 100644 --- a/src/NMTAlgo/NMTAlgo_Splitter.cdl +++ b/src/NMTAlgo/NMTAlgo_Splitter.cdl @@ -1,27 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +-- +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- 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: NMTAlgo_Splitter.cdl -- Created: Tue Jan 27 15:09:45 2004 -- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2004 class Splitter from NMTAlgo diff --git a/src/NMTAlgo/NMTAlgo_Splitter.cxx b/src/NMTAlgo/NMTAlgo_Splitter.cxx index a92245346..56a5de310 100644 --- a/src/NMTAlgo/NMTAlgo_Splitter.cxx +++ b/src/NMTAlgo/NMTAlgo_Splitter.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTAlgo_Splitter.cxx // Created: Thu Jan 29 17:13:03 2004 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/NMTAlgo/NMTAlgo_Splitter.hxx b/src/NMTAlgo/NMTAlgo_Splitter.hxx index cad4113f6..64aa244e4 100644 --- a/src/NMTAlgo/NMTAlgo_Splitter.hxx +++ b/src/NMTAlgo/NMTAlgo_Splitter.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTAlgo_Splitter_HeaderFile #define _NMTAlgo_Splitter_HeaderFile diff --git a/src/NMTAlgo/NMTAlgo_Splitter.ixx b/src/NMTAlgo/NMTAlgo_Splitter.ixx index 7631ad17c..53377eb6e 100644 --- a/src/NMTAlgo/NMTAlgo_Splitter.ixx +++ b/src/NMTAlgo/NMTAlgo_Splitter.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTAlgo/NMTAlgo_Splitter.jxx b/src/NMTAlgo/NMTAlgo_Splitter.jxx index ec30120cd..f76213b04 100644 --- a/src/NMTAlgo/NMTAlgo_Splitter.jxx +++ b/src/NMTAlgo/NMTAlgo_Splitter.jxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef _TopoDS_Shape_HeaderFile #include diff --git a/src/NMTAlgo/NMTAlgo_Splitter1.cdl b/src/NMTAlgo/NMTAlgo_Splitter1.cdl index 0bbdc6484..8449ca340 100644 --- a/src/NMTAlgo/NMTAlgo_Splitter1.cdl +++ b/src/NMTAlgo/NMTAlgo_Splitter1.cdl @@ -1,27 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- File: NMTAlgo_Splitter1.cdl --- Created: Wed Feb 11 14:23:25 2004 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2004 +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +-- +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- 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: NMTAlgo_Splitter1.cdl +-- Created: Wed Feb 11 14:23:25 2004 +-- Author: Peter KURNEV class Splitter1 from NMTAlgo diff --git a/src/NMTAlgo/NMTAlgo_Splitter1.cxx b/src/NMTAlgo/NMTAlgo_Splitter1.cxx index b4f21b09d..911e7a8f9 100644 --- a/src/NMTAlgo/NMTAlgo_Splitter1.cxx +++ b/src/NMTAlgo/NMTAlgo_Splitter1.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTAlgo_Splitter1.cxx // Created: Wed Feb 11 14:26:27 2004 // Author: Peter KURNEV // - - +// #include #include #include diff --git a/src/NMTAlgo/NMTAlgo_Splitter1.hxx b/src/NMTAlgo/NMTAlgo_Splitter1.hxx index d0c25b76d..c9e733d3e 100644 --- a/src/NMTAlgo/NMTAlgo_Splitter1.hxx +++ b/src/NMTAlgo/NMTAlgo_Splitter1.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTAlgo_Splitter1_HeaderFile #define _NMTAlgo_Splitter1_HeaderFile diff --git a/src/NMTAlgo/NMTAlgo_Splitter1.ixx b/src/NMTAlgo/NMTAlgo_Splitter1.ixx index 99a4b81d3..479cf4180 100644 --- a/src/NMTAlgo/NMTAlgo_Splitter1.ixx +++ b/src/NMTAlgo/NMTAlgo_Splitter1.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTAlgo/NMTAlgo_Splitter1.jxx b/src/NMTAlgo/NMTAlgo_Splitter1.jxx index 4505b535f..c804ba376 100644 --- a/src/NMTAlgo/NMTAlgo_Splitter1.jxx +++ b/src/NMTAlgo/NMTAlgo_Splitter1.jxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef _TopoDS_Shape_HeaderFile #include diff --git a/src/NMTAlgo/NMTAlgo_Splitter_1.cxx b/src/NMTAlgo/NMTAlgo_Splitter_1.cxx index 4b0c771db..b2135883f 100644 --- a/src/NMTAlgo/NMTAlgo_Splitter_1.cxx +++ b/src/NMTAlgo/NMTAlgo_Splitter_1.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTAlgo_Splitter_1.cxx // Created: Mon Feb 2 14:58:54 2004 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/NMTAlgo/NMTAlgo_Splitter_2.cxx b/src/NMTAlgo/NMTAlgo_Splitter_2.cxx index 0748d0d91..3262ee8ba 100644 --- a/src/NMTAlgo/NMTAlgo_Splitter_2.cxx +++ b/src/NMTAlgo/NMTAlgo_Splitter_2.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTAlgo_Splitter_2.cxx // Created: Mon Feb 9 15:07:51 2004 // Author: Igor FEOKTISTOV // - - +// #include #include diff --git a/src/NMTAlgo/NMTAlgo_Tools.cdl b/src/NMTAlgo/NMTAlgo_Tools.cdl index 3ce389525..b27b601a1 100644 --- a/src/NMTAlgo/NMTAlgo_Tools.cdl +++ b/src/NMTAlgo/NMTAlgo_Tools.cdl @@ -1,27 +1,27 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- File: NMTAlgo_Tools.cdl --- Created: Fri Jan 30 16:29:14 2004 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2004 +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +-- +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- 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: NMTAlgo_Tools.cdl +-- Created: Fri Jan 30 16:29:14 2004 +-- Author: Peter KURNEV class Tools from NMTAlgo diff --git a/src/NMTAlgo/NMTAlgo_Tools.cxx b/src/NMTAlgo/NMTAlgo_Tools.cxx index 290f5e0b1..35ea5e2f5 100644 --- a/src/NMTAlgo/NMTAlgo_Tools.cxx +++ b/src/NMTAlgo/NMTAlgo_Tools.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTAlgo_Tools.cxx // Created: Fri Jan 30 16:30:45 2004 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/NMTAlgo/NMTAlgo_Tools.hxx b/src/NMTAlgo/NMTAlgo_Tools.hxx index f4c836906..d804a886e 100644 --- a/src/NMTAlgo/NMTAlgo_Tools.hxx +++ b/src/NMTAlgo/NMTAlgo_Tools.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTAlgo_Tools_HeaderFile #define _NMTAlgo_Tools_HeaderFile diff --git a/src/NMTAlgo/NMTAlgo_Tools.ixx b/src/NMTAlgo/NMTAlgo_Tools.ixx index 849811e1f..90f39ea0d 100644 --- a/src/NMTAlgo/NMTAlgo_Tools.ixx +++ b/src/NMTAlgo/NMTAlgo_Tools.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTAlgo/NMTAlgo_Tools.jxx b/src/NMTAlgo/NMTAlgo_Tools.jxx index fc418d607..080737905 100644 --- a/src/NMTAlgo/NMTAlgo_Tools.jxx +++ b/src/NMTAlgo/NMTAlgo_Tools.jxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // #ifndef _TopoDS_Shell_HeaderFile #include diff --git a/src/NMTDS/Handle_NMTDS_DataMapNodeOfDataMapOfIntegerMapOfInteger.hxx b/src/NMTDS/Handle_NMTDS_DataMapNodeOfDataMapOfIntegerMapOfInteger.hxx index a48a632d0..f3b700b7c 100644 --- a/src/NMTDS/Handle_NMTDS_DataMapNodeOfDataMapOfIntegerMapOfInteger.hxx +++ b/src/NMTDS/Handle_NMTDS_DataMapNodeOfDataMapOfIntegerMapOfInteger.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTDS_DataMapNodeOfDataMapOfIntegerMapOfInteger_HeaderFile #define _Handle_NMTDS_DataMapNodeOfDataMapOfIntegerMapOfInteger_HeaderFile diff --git a/src/NMTDS/Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx b/src/NMTDS/Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx index 3499864cc..ae1c3f807 100644 --- a/src/NMTDS/Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx +++ b/src/NMTDS/Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_HeaderFile #define _Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_HeaderFile diff --git a/src/NMTDS/Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx b/src/NMTDS/Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx index 50dd456cb..947e3c130 100644 --- a/src/NMTDS/Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx +++ b/src/NMTDS/Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_HeaderFile #define _Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_HeaderFile diff --git a/src/NMTDS/Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx b/src/NMTDS/Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx index a1bb5bc11..de064dc6f 100644 --- a/src/NMTDS/Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx +++ b/src/NMTDS/Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_HeaderFile #define _Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_HeaderFile diff --git a/src/NMTDS/Handle_NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx b/src/NMTDS/Handle_NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx index 48ce73f8a..0e68f8ec1 100644 --- a/src/NMTDS/Handle_NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx +++ b/src/NMTDS/Handle_NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors_HeaderFile #define _Handle_NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors_HeaderFile diff --git a/src/NMTDS/Handle_NMTDS_ListNodeOfListOfPassKey.hxx b/src/NMTDS/Handle_NMTDS_ListNodeOfListOfPassKey.hxx index eca4f179e..6a3d44c1b 100644 --- a/src/NMTDS/Handle_NMTDS_ListNodeOfListOfPassKey.hxx +++ b/src/NMTDS/Handle_NMTDS_ListNodeOfListOfPassKey.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTDS_ListNodeOfListOfPassKey_HeaderFile #define _Handle_NMTDS_ListNodeOfListOfPassKey_HeaderFile diff --git a/src/NMTDS/Handle_NMTDS_ListNodeOfListOfPassKeyBoolean.hxx b/src/NMTDS/Handle_NMTDS_ListNodeOfListOfPassKeyBoolean.hxx index 202965e9d..39679e002 100644 --- a/src/NMTDS/Handle_NMTDS_ListNodeOfListOfPassKeyBoolean.hxx +++ b/src/NMTDS/Handle_NMTDS_ListNodeOfListOfPassKeyBoolean.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTDS_ListNodeOfListOfPassKeyBoolean_HeaderFile #define _Handle_NMTDS_ListNodeOfListOfPassKeyBoolean_HeaderFile diff --git a/src/NMTDS/Handle_NMTDS_StdMapNodeOfMapOfPassKey.hxx b/src/NMTDS/Handle_NMTDS_StdMapNodeOfMapOfPassKey.hxx index fbea2a6fe..0aa36f7e2 100644 --- a/src/NMTDS/Handle_NMTDS_StdMapNodeOfMapOfPassKey.hxx +++ b/src/NMTDS/Handle_NMTDS_StdMapNodeOfMapOfPassKey.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTDS_StdMapNodeOfMapOfPassKey_HeaderFile #define _Handle_NMTDS_StdMapNodeOfMapOfPassKey_HeaderFile diff --git a/src/NMTDS/Handle_NMTDS_StdMapNodeOfMapOfPassKeyBoolean.hxx b/src/NMTDS/Handle_NMTDS_StdMapNodeOfMapOfPassKeyBoolean.hxx index 4cf323559..05e4c0912 100644 --- a/src/NMTDS/Handle_NMTDS_StdMapNodeOfMapOfPassKeyBoolean.hxx +++ b/src/NMTDS/Handle_NMTDS_StdMapNodeOfMapOfPassKeyBoolean.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTDS_StdMapNodeOfMapOfPassKeyBoolean_HeaderFile #define _Handle_NMTDS_StdMapNodeOfMapOfPassKeyBoolean_HeaderFile diff --git a/src/NMTDS/Makefile.am b/src/NMTDS/Makefile.am index edc19fc65..f2dcd7560 100644 --- a/src/NMTDS/Makefile.am +++ b/src/NMTDS/Makefile.am @@ -1,32 +1,31 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM NMTAlgo : partition algorithm -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : Makefile.in # Author : Julia DOROVSKIKH # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header$ - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files @@ -51,10 +50,18 @@ salomeinclude_HEADERS = \ NMTDS_IndexedDataMapOfIntegerShape.hxx \ NMTDS_IndexedDataMapOfShapeBox.hxx \ NMTDS_IndexRange.hxx \ + NMTDS_IndexRange.ixx \ + NMTDS_IndexRange.jxx \ NMTDS_InterfPool.hxx \ + NMTDS_InterfPool.ixx \ + NMTDS_InterfPool.jxx \ NMTDS_InterfType.hxx \ NMTDS_Iterator.hxx \ + NMTDS_Iterator.ixx \ + NMTDS_Iterator.jxx \ NMTDS_IteratorCheckerSI.hxx \ + NMTDS_IteratorCheckerSI.ixx \ + NMTDS_IteratorCheckerSI.jxx \ NMTDS_ListIteratorOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx \ NMTDS_ListIteratorOfListOfPassKeyBoolean.hxx \ NMTDS_ListIteratorOfListOfPassKey.hxx \ @@ -69,17 +76,31 @@ salomeinclude_HEADERS = \ NMTDS_MapOfPassKeyBoolean.hxx \ NMTDS_MapOfPassKey.hxx \ NMTDS_PassKeyBoolean.hxx \ + NMTDS_PassKeyBoolean.ixx \ + NMTDS_PassKeyBoolean.jxx \ NMTDS_PInterfPool.hxx \ NMTDS_PIterator.hxx \ NMTDS_PassKey.hxx \ + NMTDS_PassKey.ixx \ + NMTDS_PassKey.jxx \ NMTDS_PassKeyMapHasher.hxx \ + NMTDS_PassKeyMapHasher.ixx \ + NMTDS_PassKeyMapHasher.jxx \ NMTDS_PassKeyShape.hxx \ + NMTDS_PassKeyShape.ixx \ + NMTDS_PassKeyShape.jxx \ NMTDS_PassKeyShapeMapHasher.hxx \ + NMTDS_PassKeyShapeMapHasher.ixx \ + NMTDS_PassKeyShapeMapHasher.jxx \ NMTDS_PShapesDataStructure.hxx \ NMTDS_ShapesDataStructure.hxx \ + NMTDS_ShapesDataStructure.ixx \ + NMTDS_ShapesDataStructure.jxx \ NMTDS_StdMapNodeOfMapOfPassKeyBoolean.hxx \ NMTDS_StdMapNodeOfMapOfPassKey.hxx \ NMTDS_Tools.hxx \ + NMTDS_Tools.ixx \ + NMTDS_Tools.jxx \ NMTDS_BoxBndTree.hxx # Libraries targets @@ -124,12 +145,29 @@ dist_libNMTDS_la_SOURCES = \ NMTDS_Tools.cxx \ NMTDS_BoxBndTree.cxx -# additionnal information to compil and link file +# additional information to compile and link file -libNMTDS_la_CPPFLAGS = \ - $(CAS_CPPFLAGS) \ +libNMTDS_la_CPPFLAGS = \ + $(CAS_CPPFLAGS) \ $(KERNEL_CXXFLAGS) -libNMTDS_la_LDFLAGS = \ - $(STDLIB) \ +libNMTDS_la_LDFLAGS = \ + $(STDLIB) \ $(CAS_LDPATH) -lTKBool -lTKBO + +# extra dist files +CDL_FILES = \ + NMTDS.cdl \ + NMTDS_IndexRange.cdl \ + NMTDS_InterfPool.cdl \ + NMTDS_Iterator.cdl \ + NMTDS_IteratorCheckerSI.cdl \ + NMTDS_PassKey.cdl \ + NMTDS_PassKeyBoolean.cdl \ + NMTDS_PassKeyMapHasher.cdl \ + NMTDS_PassKeyShape.cdl \ + NMTDS_PassKeyShapeMapHasher.cdl \ + NMTDS_ShapesDataStructure.cdl \ + NMTDS_Tools.cdl + +EXTRA_DIST += $(CDL_FILES) diff --git a/src/NMTDS/NMTDS.cdl b/src/NMTDS/NMTDS.cdl index cabb10f4b..bcee78278 100644 --- a/src/NMTDS/NMTDS.cdl +++ b/src/NMTDS/NMTDS.cdl @@ -1,28 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- +-- File: NMTDS.cdl +-- Created: Fri Nov 28 10:13:19 2003 +-- Author: Peter KURNEV -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- --- File: NMTDS.cdl --- Created: Fri Nov 28 10:13:19 2003 --- Author: Peter KURNEV --- - - package NMTDS ---Purpose: diff --git a/src/NMTDS/NMTDS.pro b/src/NMTDS/NMTDS.pro new file mode 100644 index 000000000..7b489ee01 --- /dev/null +++ b/src/NMTDS/NMTDS.pro @@ -0,0 +1,119 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = NMTDS +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +STDLIB = -lstdc++ + +CAS_LDPATH = -L$$(CASROOT)/Linux/lib + +INCLUDEPATH += $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} + +LIBS += $${STDLIB} $${CAS_LDPATH} -lTKBool -lTKBO + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS + +HEADERS = Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx +HEADERS += Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx +HEADERS += Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx +HEADERS += Handle_NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx +HEADERS += Handle_NMTDS_ListNodeOfListOfPassKeyBoolean.hxx +HEADERS += Handle_NMTDS_ListNodeOfListOfPassKey.hxx +HEADERS += Handle_NMTDS_StdMapNodeOfMapOfPassKeyBoolean.hxx +HEADERS += Handle_NMTDS_StdMapNodeOfMapOfPassKey.hxx +HEADERS += NMTDS_CArray1OfIndexRange.hxx +HEADERS += NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx +HEADERS += NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx +HEADERS += NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx +HEADERS += NMTDS_IndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx +HEADERS += NMTDS_IndexedDataMapOfIntegerShape.hxx +HEADERS += NMTDS_IndexedDataMapOfShapeBox.hxx +HEADERS += NMTDS_IndexRange.hxx +HEADERS += NMTDS_Iterator.hxx +HEADERS += NMTDS_ListIteratorOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx +HEADERS += NMTDS_ListIteratorOfListOfPassKeyBoolean.hxx +HEADERS += NMTDS_ListIteratorOfListOfPassKey.hxx +HEADERS += NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx +HEADERS += NMTDS_ListNodeOfListOfPassKeyBoolean.hxx +HEADERS += NMTDS_ListNodeOfListOfPassKey.hxx +HEADERS += NMTDS_ListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx +HEADERS += NMTDS_ListOfPassKeyBoolean.hxx +HEADERS += NMTDS_ListOfPassKey.hxx +HEADERS += NMTDS_MapIteratorOfMapOfPassKeyBoolean.hxx +HEADERS += NMTDS_MapIteratorOfMapOfPassKey.hxx +HEADERS += NMTDS_MapOfPassKeyBoolean.hxx +HEADERS += NMTDS_MapOfPassKey.hxx +HEADERS += NMTDS_PassKeyBoolean.hxx +HEADERS += NMTDS_PassKey.hxx +HEADERS += NMTDS_PassKeyMapHasher.hxx +HEADERS += NMTDS_PShapesDataStructure.hxx +HEADERS += NMTDS_ShapesDataStructure.hxx +HEADERS += NMTDS_StdMapNodeOfMapOfPassKeyBoolean.hxx +HEADERS += NMTDS_StdMapNodeOfMapOfPassKey.hxx +HEADERS += NMTDS_BoxBndTree.hxx + +SOURCES = NMTDS_CArray1OfIndexRange_0.cxx +SOURCES += NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_0.cxx +SOURCES += NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_0.cxx +SOURCES += NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_0.cxx +SOURCES += NMTDS_IndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_0.cxx +SOURCES += NMTDS_IndexedDataMapOfIntegerShape_0.cxx +SOURCES += NMTDS_IndexedDataMapOfShapeBox_0.cxx +SOURCES += NMTDS_IndexRange.cxx +SOURCES += NMTDS_Iterator.cxx +SOURCES += NMTDS_ListIteratorOfListOfIndexedDataMapOfShapeAncestorsSuccessors_0.cxx +SOURCES += NMTDS_ListIteratorOfListOfPassKey_0.cxx +SOURCES += NMTDS_ListIteratorOfListOfPassKeyBoolean_0.cxx +SOURCES += NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors_0.cxx +SOURCES += NMTDS_ListNodeOfListOfPassKey_0.cxx +SOURCES += NMTDS_ListNodeOfListOfPassKeyBoolean_0.cxx +SOURCES += NMTDS_ListOfIndexedDataMapOfShapeAncestorsSuccessors_0.cxx +SOURCES += NMTDS_ListOfPassKey_0.cxx +SOURCES += NMTDS_ListOfPassKeyBoolean_0.cxx +SOURCES += NMTDS_MapIteratorOfMapOfPassKey_0.cxx +SOURCES += NMTDS_MapIteratorOfMapOfPassKeyBoolean_0.cxx +SOURCES += NMTDS_MapOfPassKey_0.cxx +SOURCES += NMTDS_MapOfPassKeyBoolean_0.cxx +SOURCES += NMTDS_PassKeyBoolean.cxx +SOURCES += NMTDS_PassKey.cxx +SOURCES += NMTDS_PassKeyMapHasher.cxx +SOURCES += NMTDS_ShapesDataStructure.cxx +SOURCES += NMTDS_StdMapNodeOfMapOfPassKey_0.cxx +SOURCES += NMTDS_StdMapNodeOfMapOfPassKeyBoolean_0.cxx +SOURCES += NMTDS_BoxBndTree.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/NMTDS/NMTDS_BoxBndTree.cxx b/src/NMTDS/NMTDS_BoxBndTree.cxx index 79bc0b5e1..88c4e31eb 100644 --- a/src/NMTDS/NMTDS_BoxBndTree.cxx +++ b/src/NMTDS/NMTDS_BoxBndTree.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTDS_BoxBndTree.cxx // Created: Tue Oct 17 13:04:11 2006 // Author: Peter KURNEV // - - +// #include //======================================================================= //function : diff --git a/src/NMTDS/NMTDS_BoxBndTree.hxx b/src/NMTDS/NMTDS_BoxBndTree.hxx index 9aeb58d41..5ff1fe74e 100755 --- a/src/NMTDS/NMTDS_BoxBndTree.hxx +++ b/src/NMTDS/NMTDS_BoxBndTree.hxx @@ -1,26 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // // File: NMTDS_BoxBndTree.hxx // Created: Tue Oct 17 12:50:31 2006 // Author: Peter KURNEV // - - +// #ifndef NMTDS_BoxBndTree_HeaderFile #define NMTDS_BoxBndTree_HeaderFile diff --git a/src/NMTDS/NMTDS_CArray1OfIndexRange.hxx b/src/NMTDS/NMTDS_CArray1OfIndexRange.hxx index 120e3030c..27d922022 100644 --- a/src/NMTDS/NMTDS_CArray1OfIndexRange.hxx +++ b/src/NMTDS/NMTDS_CArray1OfIndexRange.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_CArray1OfIndexRange_HeaderFile #define _NMTDS_CArray1OfIndexRange_HeaderFile diff --git a/src/NMTDS/NMTDS_CArray1OfIndexRange_0.cxx b/src/NMTDS/NMTDS_CArray1OfIndexRange_0.cxx index 6bd7e3df2..ec98e7475 100644 --- a/src/NMTDS/NMTDS_CArray1OfIndexRange_0.cxx +++ b/src/NMTDS/NMTDS_CArray1OfIndexRange_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_OutOfRange_HeaderFile diff --git a/src/NMTDS/NMTDS_DataMapIteratorOfDataMapOfIntegerMapOfInteger.hxx b/src/NMTDS/NMTDS_DataMapIteratorOfDataMapOfIntegerMapOfInteger.hxx index 5c782f2d4..7456aa64c 100644 --- a/src/NMTDS/NMTDS_DataMapIteratorOfDataMapOfIntegerMapOfInteger.hxx +++ b/src/NMTDS/NMTDS_DataMapIteratorOfDataMapOfIntegerMapOfInteger.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_DataMapIteratorOfDataMapOfIntegerMapOfInteger_HeaderFile #define _NMTDS_DataMapIteratorOfDataMapOfIntegerMapOfInteger_HeaderFile diff --git a/src/NMTDS/NMTDS_DataMapIteratorOfDataMapOfIntegerMapOfInteger_0.cxx b/src/NMTDS/NMTDS_DataMapIteratorOfDataMapOfIntegerMapOfInteger_0.cxx index 52c8d5334..b6d62d957 100644 --- a/src/NMTDS/NMTDS_DataMapIteratorOfDataMapOfIntegerMapOfInteger_0.cxx +++ b/src/NMTDS/NMTDS_DataMapIteratorOfDataMapOfIntegerMapOfInteger_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/NMTDS/NMTDS_DataMapNodeOfDataMapOfIntegerMapOfInteger.hxx b/src/NMTDS/NMTDS_DataMapNodeOfDataMapOfIntegerMapOfInteger.hxx index 89989c7a3..0bfd4cdf3 100644 --- a/src/NMTDS/NMTDS_DataMapNodeOfDataMapOfIntegerMapOfInteger.hxx +++ b/src/NMTDS/NMTDS_DataMapNodeOfDataMapOfIntegerMapOfInteger.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_DataMapNodeOfDataMapOfIntegerMapOfInteger_HeaderFile #define _NMTDS_DataMapNodeOfDataMapOfIntegerMapOfInteger_HeaderFile diff --git a/src/NMTDS/NMTDS_DataMapNodeOfDataMapOfIntegerMapOfInteger_0.cxx b/src/NMTDS/NMTDS_DataMapNodeOfDataMapOfIntegerMapOfInteger_0.cxx index 81d4ca5ad..8c8b273b7 100644 --- a/src/NMTDS/NMTDS_DataMapNodeOfDataMapOfIntegerMapOfInteger_0.cxx +++ b/src/NMTDS/NMTDS_DataMapNodeOfDataMapOfIntegerMapOfInteger_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/NMTDS/NMTDS_DataMapOfIntegerMapOfInteger.hxx b/src/NMTDS/NMTDS_DataMapOfIntegerMapOfInteger.hxx index 2e7c5b402..09e17e834 100644 --- a/src/NMTDS/NMTDS_DataMapOfIntegerMapOfInteger.hxx +++ b/src/NMTDS/NMTDS_DataMapOfIntegerMapOfInteger.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_DataMapOfIntegerMapOfInteger_HeaderFile #define _NMTDS_DataMapOfIntegerMapOfInteger_HeaderFile diff --git a/src/NMTDS/NMTDS_DataMapOfIntegerMapOfInteger_0.cxx b/src/NMTDS/NMTDS_DataMapOfIntegerMapOfInteger_0.cxx index ca6e0ffea..f2bfe7c1c 100644 --- a/src/NMTDS/NMTDS_DataMapOfIntegerMapOfInteger_0.cxx +++ b/src/NMTDS/NMTDS_DataMapOfIntegerMapOfInteger_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/NMTDS/NMTDS_IndexRange.cdl b/src/NMTDS/NMTDS_IndexRange.cdl index 70458ed5d..7591eb00f 100644 --- a/src/NMTDS/NMTDS_IndexRange.cdl +++ b/src/NMTDS/NMTDS_IndexRange.cdl @@ -1,27 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- +-- File: NMTDS_IndexRange.cdl +-- Created: Fri Nov 28 10:31:05 2003 +-- Author: Peter KURNEV -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- --- File: NMTDS_IndexRange.cdl --- Created: Fri Nov 28 10:31:05 2003 --- Author: Peter KURNEV --- - class IndexRange from NMTDS ---Purpose: diff --git a/src/NMTDS/NMTDS_IndexRange.cxx b/src/NMTDS/NMTDS_IndexRange.cxx index 138d77f8f..55c488ae4 100644 --- a/src/NMTDS/NMTDS_IndexRange.cxx +++ b/src/NMTDS/NMTDS_IndexRange.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTDS_IndexRange.cxx // Created: Fri Nov 28 10:34:59 2003 // Author: Peter KURNEV // - - +// #include //======================================================================= //function :NMTDS_IndexRange::NMTDS_IndexRange diff --git a/src/NMTDS/NMTDS_IndexRange.hxx b/src/NMTDS/NMTDS_IndexRange.hxx index 1e9f76065..4dad2f6ae 100644 --- a/src/NMTDS/NMTDS_IndexRange.hxx +++ b/src/NMTDS/NMTDS_IndexRange.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_IndexRange_HeaderFile #define _NMTDS_IndexRange_HeaderFile diff --git a/src/NMTDS/NMTDS_IndexRange.ixx b/src/NMTDS/NMTDS_IndexRange.ixx index 44ea38a5a..5c9a8d46f 100644 --- a/src/NMTDS/NMTDS_IndexRange.ixx +++ b/src/NMTDS/NMTDS_IndexRange.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTDS/NMTDS_IndexRange.jxx b/src/NMTDS/NMTDS_IndexRange.jxx index 936832bdc..a93688411 100644 --- a/src/NMTDS/NMTDS_IndexRange.jxx +++ b/src/NMTDS/NMTDS_IndexRange.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_IndexRange_HeaderFile #include #endif diff --git a/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx b/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx index 179895110..189c2495d 100644 --- a/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx +++ b/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_HeaderFile #define _NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_HeaderFile diff --git a/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_0.cxx b/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_0.cxx index 4467ed2db..14ba8e595 100644 --- a/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_0.cxx +++ b/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx b/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx index 6cc5bacc1..4b10b9e87 100644 --- a/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx +++ b/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_HeaderFile #define _NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_HeaderFile diff --git a/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_0.cxx b/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_0.cxx index 3293ddec1..15a8485f4 100644 --- a/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_0.cxx +++ b/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx b/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx index 698204818..04ee903da 100644 --- a/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx +++ b/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_HeaderFile #define _NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_HeaderFile diff --git a/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_0.cxx b/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_0.cxx index 75117613b..a63d890cf 100644 --- a/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_0.cxx +++ b/src/NMTDS/NMTDS_IndexedDataMapNodeOfIndexedDataMapOfShapeBox_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/NMTDS/NMTDS_IndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx b/src/NMTDS/NMTDS_IndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx index 0b1fef8e9..7bfc49cca 100644 --- a/src/NMTDS/NMTDS_IndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx +++ b/src/NMTDS/NMTDS_IndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_IndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_HeaderFile #define _NMTDS_IndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_HeaderFile diff --git a/src/NMTDS/NMTDS_IndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_0.cxx b/src/NMTDS/NMTDS_IndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_0.cxx index 95760dc49..887e0a2f2 100644 --- a/src/NMTDS/NMTDS_IndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_0.cxx +++ b/src/NMTDS/NMTDS_IndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/NMTDS/NMTDS_IndexedDataMapOfIntegerShape.hxx b/src/NMTDS/NMTDS_IndexedDataMapOfIntegerShape.hxx index e9b04d0e5..a97123c77 100644 --- a/src/NMTDS/NMTDS_IndexedDataMapOfIntegerShape.hxx +++ b/src/NMTDS/NMTDS_IndexedDataMapOfIntegerShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_IndexedDataMapOfIntegerShape_HeaderFile #define _NMTDS_IndexedDataMapOfIntegerShape_HeaderFile diff --git a/src/NMTDS/NMTDS_IndexedDataMapOfIntegerShape_0.cxx b/src/NMTDS/NMTDS_IndexedDataMapOfIntegerShape_0.cxx index 144b6a844..a1bf5c5be 100644 --- a/src/NMTDS/NMTDS_IndexedDataMapOfIntegerShape_0.cxx +++ b/src/NMTDS/NMTDS_IndexedDataMapOfIntegerShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/NMTDS/NMTDS_IndexedDataMapOfShapeBox.hxx b/src/NMTDS/NMTDS_IndexedDataMapOfShapeBox.hxx index 98752296f..1be992921 100644 --- a/src/NMTDS/NMTDS_IndexedDataMapOfShapeBox.hxx +++ b/src/NMTDS/NMTDS_IndexedDataMapOfShapeBox.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_IndexedDataMapOfShapeBox_HeaderFile #define _NMTDS_IndexedDataMapOfShapeBox_HeaderFile diff --git a/src/NMTDS/NMTDS_IndexedDataMapOfShapeBox_0.cxx b/src/NMTDS/NMTDS_IndexedDataMapOfShapeBox_0.cxx index 53b8ed306..1d753c44d 100644 --- a/src/NMTDS/NMTDS_IndexedDataMapOfShapeBox_0.cxx +++ b/src/NMTDS/NMTDS_IndexedDataMapOfShapeBox_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/NMTDS/NMTDS_InterfPool.cdl b/src/NMTDS/NMTDS_InterfPool.cdl index 8b74d08c4..9b763286a 100644 --- a/src/NMTDS/NMTDS_InterfPool.cdl +++ b/src/NMTDS/NMTDS_InterfPool.cdl @@ -1,29 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- +-- File: NMTDS_InterfPool.cdl +-- Created: Wed Feb 21 10:10:58 2007 +-- Author: Peter KURNEV -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- --- File: NMTDS_InterfPool.cdl --- Created: Wed Feb 21 10:10:58 2007 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2007 - - class InterfPool from NMTDS ---Purpose: diff --git a/src/NMTDS/NMTDS_InterfPool.cxx b/src/NMTDS/NMTDS_InterfPool.cxx index 95774e9f7..d601d5cd8 100644 --- a/src/NMTDS/NMTDS_InterfPool.cxx +++ b/src/NMTDS/NMTDS_InterfPool.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTDS_.InterfPoolcxx // Created: Wed Feb 21 10:35:35 2007 // Author: Peter KURNEV // - - +// #include #include #include diff --git a/src/NMTDS/NMTDS_InterfPool.hxx b/src/NMTDS/NMTDS_InterfPool.hxx index f0bfd2111..3722c0046 100644 --- a/src/NMTDS/NMTDS_InterfPool.hxx +++ b/src/NMTDS/NMTDS_InterfPool.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_InterfPool_HeaderFile #define _NMTDS_InterfPool_HeaderFile diff --git a/src/NMTDS/NMTDS_InterfPool.ixx b/src/NMTDS/NMTDS_InterfPool.ixx index c608b6885..a26acd90d 100644 --- a/src/NMTDS/NMTDS_InterfPool.ixx +++ b/src/NMTDS/NMTDS_InterfPool.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTDS/NMTDS_InterfPool.jxx b/src/NMTDS/NMTDS_InterfPool.jxx index f12d52951..5ec012a71 100644 --- a/src/NMTDS/NMTDS_InterfPool.jxx +++ b/src/NMTDS/NMTDS_InterfPool.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_PassKeyBoolean_HeaderFile #include #endif diff --git a/src/NMTDS/NMTDS_InterfType.hxx b/src/NMTDS/NMTDS_InterfType.hxx index d32f9835b..166313341 100644 --- a/src/NMTDS/NMTDS_InterfType.hxx +++ b/src/NMTDS/NMTDS_InterfType.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_InterfType_HeaderFile #define _NMTDS_InterfType_HeaderFile diff --git a/src/NMTDS/NMTDS_Iterator.cdl b/src/NMTDS/NMTDS_Iterator.cdl index d73a1d5d3..0bb5a13a1 100755 --- a/src/NMTDS/NMTDS_Iterator.cdl +++ b/src/NMTDS/NMTDS_Iterator.cdl @@ -1,28 +1,28 @@ --- Copyright (C) 2006 SAMTECH --- --- 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. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- +-- File: NMTDS_Iterator.cdl +-- Created: Sun May 07 14:58:16 2006 +-- Author: Peter KURNEV -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- --- File: NMTDS_Iterator.cdl --- Created: Sun May 07 14:58:16 2006 --- Author: Peter KURNEV --- - - - class Iterator from NMTDS ---Purpose: diff --git a/src/NMTDS/NMTDS_Iterator.cxx b/src/NMTDS/NMTDS_Iterator.cxx index 8e894d6d4..a4069a595 100755 --- a/src/NMTDS/NMTDS_Iterator.cxx +++ b/src/NMTDS/NMTDS_Iterator.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2006 SAMTECH -// -// 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. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTDS_Iterator.cxx // Created: Sun May 07 15:04:41 2006 // Author: Peter KURNEV -// - - +// #include // #include diff --git a/src/NMTDS/NMTDS_Iterator.hxx b/src/NMTDS/NMTDS_Iterator.hxx index 25ae15ec0..095eb283c 100644 --- a/src/NMTDS/NMTDS_Iterator.hxx +++ b/src/NMTDS/NMTDS_Iterator.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_Iterator_HeaderFile #define _NMTDS_Iterator_HeaderFile diff --git a/src/NMTDS/NMTDS_Iterator.ixx b/src/NMTDS/NMTDS_Iterator.ixx index adb6c909f..641e32522 100644 --- a/src/NMTDS/NMTDS_Iterator.ixx +++ b/src/NMTDS/NMTDS_Iterator.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTDS/NMTDS_Iterator.jxx b/src/NMTDS/NMTDS_Iterator.jxx index 4a0e4fb7c..ead7afaf6 100644 --- a/src/NMTDS/NMTDS_Iterator.jxx +++ b/src/NMTDS/NMTDS_Iterator.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_ShapesDataStructure_HeaderFile #include #endif diff --git a/src/NMTDS/NMTDS_IteratorCheckerSI.cdl b/src/NMTDS/NMTDS_IteratorCheckerSI.cdl index c7f765003..1c15c39c6 100644 --- a/src/NMTDS/NMTDS_IteratorCheckerSI.cdl +++ b/src/NMTDS/NMTDS_IteratorCheckerSI.cdl @@ -1,26 +1,28 @@ --- Copyright (C) 2007 SAMTECH --- --- 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. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- +-- File: NMTDS_IteratorCheckerSI.cdl +-- Created: Tue Feb 6 10:18:27 2007 +-- Author: Peter KURNEV -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- --- File: NMTDS_IteratorCheckerSI.cdl --- Created: Tue Feb 6 10:18:27 2007 --- Author: Peter KURNEV - - class IteratorCheckerSI from NMTDS inherits Iterator from NMTDS diff --git a/src/NMTDS/NMTDS_IteratorCheckerSI.cxx b/src/NMTDS/NMTDS_IteratorCheckerSI.cxx index da2290b93..310827edd 100644 --- a/src/NMTDS/NMTDS_IteratorCheckerSI.cxx +++ b/src/NMTDS/NMTDS_IteratorCheckerSI.cxx @@ -1,26 +1,28 @@ -// Copyright (C) 2007 SAMTECH -// -// 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. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTDS_IteratorChecker.cxx // Created: Tue Feb 6 10:37:59 2007 // Author: Peter KURNEV - - +// #include #include diff --git a/src/NMTDS/NMTDS_IteratorCheckerSI.hxx b/src/NMTDS/NMTDS_IteratorCheckerSI.hxx index f11a9c1c2..e083f88e4 100644 --- a/src/NMTDS/NMTDS_IteratorCheckerSI.hxx +++ b/src/NMTDS/NMTDS_IteratorCheckerSI.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_IteratorCheckerSI_HeaderFile #define _NMTDS_IteratorCheckerSI_HeaderFile diff --git a/src/NMTDS/NMTDS_IteratorCheckerSI.ixx b/src/NMTDS/NMTDS_IteratorCheckerSI.ixx index 6346ab519..b9fc4a7d9 100644 --- a/src/NMTDS/NMTDS_IteratorCheckerSI.ixx +++ b/src/NMTDS/NMTDS_IteratorCheckerSI.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTDS/NMTDS_IteratorCheckerSI.jxx b/src/NMTDS/NMTDS_IteratorCheckerSI.jxx index dc6afc1b7..569dce04a 100644 --- a/src/NMTDS/NMTDS_IteratorCheckerSI.jxx +++ b/src/NMTDS/NMTDS_IteratorCheckerSI.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_IteratorCheckerSI_HeaderFile #include #endif diff --git a/src/NMTDS/NMTDS_ListIteratorOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx b/src/NMTDS/NMTDS_ListIteratorOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx index 3316ee82c..dd32df2ab 100644 --- a/src/NMTDS/NMTDS_ListIteratorOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx +++ b/src/NMTDS/NMTDS_ListIteratorOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_ListIteratorOfListOfIndexedDataMapOfShapeAncestorsSuccessors_HeaderFile #define _NMTDS_ListIteratorOfListOfIndexedDataMapOfShapeAncestorsSuccessors_HeaderFile diff --git a/src/NMTDS/NMTDS_ListIteratorOfListOfIndexedDataMapOfShapeAncestorsSuccessors_0.cxx b/src/NMTDS/NMTDS_ListIteratorOfListOfIndexedDataMapOfShapeAncestorsSuccessors_0.cxx index e3884deaa..b2866f1e1 100644 --- a/src/NMTDS/NMTDS_ListIteratorOfListOfIndexedDataMapOfShapeAncestorsSuccessors_0.cxx +++ b/src/NMTDS/NMTDS_ListIteratorOfListOfIndexedDataMapOfShapeAncestorsSuccessors_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoMoreObject_HeaderFile diff --git a/src/NMTDS/NMTDS_ListIteratorOfListOfPassKey.hxx b/src/NMTDS/NMTDS_ListIteratorOfListOfPassKey.hxx index bf3646a40..ae3b3990e 100644 --- a/src/NMTDS/NMTDS_ListIteratorOfListOfPassKey.hxx +++ b/src/NMTDS/NMTDS_ListIteratorOfListOfPassKey.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_ListIteratorOfListOfPassKey_HeaderFile #define _NMTDS_ListIteratorOfListOfPassKey_HeaderFile diff --git a/src/NMTDS/NMTDS_ListIteratorOfListOfPassKeyBoolean.hxx b/src/NMTDS/NMTDS_ListIteratorOfListOfPassKeyBoolean.hxx index bd2e0e03b..efb4d8be9 100644 --- a/src/NMTDS/NMTDS_ListIteratorOfListOfPassKeyBoolean.hxx +++ b/src/NMTDS/NMTDS_ListIteratorOfListOfPassKeyBoolean.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_ListIteratorOfListOfPassKeyBoolean_HeaderFile #define _NMTDS_ListIteratorOfListOfPassKeyBoolean_HeaderFile diff --git a/src/NMTDS/NMTDS_ListIteratorOfListOfPassKeyBoolean_0.cxx b/src/NMTDS/NMTDS_ListIteratorOfListOfPassKeyBoolean_0.cxx index a0daa155d..161054c20 100644 --- a/src/NMTDS/NMTDS_ListIteratorOfListOfPassKeyBoolean_0.cxx +++ b/src/NMTDS/NMTDS_ListIteratorOfListOfPassKeyBoolean_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoMoreObject_HeaderFile diff --git a/src/NMTDS/NMTDS_ListIteratorOfListOfPassKey_0.cxx b/src/NMTDS/NMTDS_ListIteratorOfListOfPassKey_0.cxx index de084cc19..017140d0f 100644 --- a/src/NMTDS/NMTDS_ListIteratorOfListOfPassKey_0.cxx +++ b/src/NMTDS/NMTDS_ListIteratorOfListOfPassKey_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoMoreObject_HeaderFile diff --git a/src/NMTDS/NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx b/src/NMTDS/NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx index 05fe687bb..24a28af7e 100644 --- a/src/NMTDS/NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx +++ b/src/NMTDS/NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors_HeaderFile #define _NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors_HeaderFile diff --git a/src/NMTDS/NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors_0.cxx b/src/NMTDS/NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors_0.cxx index f354af531..875b786e4 100644 --- a/src/NMTDS/NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors_0.cxx +++ b/src/NMTDS/NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/NMTDS/NMTDS_ListNodeOfListOfPassKey.hxx b/src/NMTDS/NMTDS_ListNodeOfListOfPassKey.hxx index 160d2fbd3..c67b7845d 100644 --- a/src/NMTDS/NMTDS_ListNodeOfListOfPassKey.hxx +++ b/src/NMTDS/NMTDS_ListNodeOfListOfPassKey.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_ListNodeOfListOfPassKey_HeaderFile #define _NMTDS_ListNodeOfListOfPassKey_HeaderFile diff --git a/src/NMTDS/NMTDS_ListNodeOfListOfPassKeyBoolean.hxx b/src/NMTDS/NMTDS_ListNodeOfListOfPassKeyBoolean.hxx index a6e96e655..c2f743118 100644 --- a/src/NMTDS/NMTDS_ListNodeOfListOfPassKeyBoolean.hxx +++ b/src/NMTDS/NMTDS_ListNodeOfListOfPassKeyBoolean.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_ListNodeOfListOfPassKeyBoolean_HeaderFile #define _NMTDS_ListNodeOfListOfPassKeyBoolean_HeaderFile diff --git a/src/NMTDS/NMTDS_ListNodeOfListOfPassKeyBoolean_0.cxx b/src/NMTDS/NMTDS_ListNodeOfListOfPassKeyBoolean_0.cxx index e84d51f5b..7145c1532 100644 --- a/src/NMTDS/NMTDS_ListNodeOfListOfPassKeyBoolean_0.cxx +++ b/src/NMTDS/NMTDS_ListNodeOfListOfPassKeyBoolean_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/NMTDS/NMTDS_ListNodeOfListOfPassKey_0.cxx b/src/NMTDS/NMTDS_ListNodeOfListOfPassKey_0.cxx index a85b03bc1..dcca753f7 100644 --- a/src/NMTDS/NMTDS_ListNodeOfListOfPassKey_0.cxx +++ b/src/NMTDS/NMTDS_ListNodeOfListOfPassKey_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/NMTDS/NMTDS_ListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx b/src/NMTDS/NMTDS_ListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx index 7664fc4ea..bc3715363 100644 --- a/src/NMTDS/NMTDS_ListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx +++ b/src/NMTDS/NMTDS_ListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_ListOfIndexedDataMapOfShapeAncestorsSuccessors_HeaderFile #define _NMTDS_ListOfIndexedDataMapOfShapeAncestorsSuccessors_HeaderFile diff --git a/src/NMTDS/NMTDS_ListOfIndexedDataMapOfShapeAncestorsSuccessors_0.cxx b/src/NMTDS/NMTDS_ListOfIndexedDataMapOfShapeAncestorsSuccessors_0.cxx index f85f6d9d5..66eede0c1 100644 --- a/src/NMTDS/NMTDS_ListOfIndexedDataMapOfShapeAncestorsSuccessors_0.cxx +++ b/src/NMTDS/NMTDS_ListOfIndexedDataMapOfShapeAncestorsSuccessors_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/NMTDS/NMTDS_ListOfPassKey.hxx b/src/NMTDS/NMTDS_ListOfPassKey.hxx index 207251094..390a3a5d1 100644 --- a/src/NMTDS/NMTDS_ListOfPassKey.hxx +++ b/src/NMTDS/NMTDS_ListOfPassKey.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_ListOfPassKey_HeaderFile #define _NMTDS_ListOfPassKey_HeaderFile diff --git a/src/NMTDS/NMTDS_ListOfPassKeyBoolean.hxx b/src/NMTDS/NMTDS_ListOfPassKeyBoolean.hxx index 3ca9a39ab..d4dec7ded 100644 --- a/src/NMTDS/NMTDS_ListOfPassKeyBoolean.hxx +++ b/src/NMTDS/NMTDS_ListOfPassKeyBoolean.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_ListOfPassKeyBoolean_HeaderFile #define _NMTDS_ListOfPassKeyBoolean_HeaderFile diff --git a/src/NMTDS/NMTDS_ListOfPassKeyBoolean_0.cxx b/src/NMTDS/NMTDS_ListOfPassKeyBoolean_0.cxx index 846661e5f..5b289b553 100644 --- a/src/NMTDS/NMTDS_ListOfPassKeyBoolean_0.cxx +++ b/src/NMTDS/NMTDS_ListOfPassKeyBoolean_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/NMTDS/NMTDS_ListOfPassKey_0.cxx b/src/NMTDS/NMTDS_ListOfPassKey_0.cxx index f87d96c3b..a68d4c892 100644 --- a/src/NMTDS/NMTDS_ListOfPassKey_0.cxx +++ b/src/NMTDS/NMTDS_ListOfPassKey_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/NMTDS/NMTDS_MapIteratorOfMapOfPassKey.hxx b/src/NMTDS/NMTDS_MapIteratorOfMapOfPassKey.hxx index 71b372604..bdb843bfe 100644 --- a/src/NMTDS/NMTDS_MapIteratorOfMapOfPassKey.hxx +++ b/src/NMTDS/NMTDS_MapIteratorOfMapOfPassKey.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_MapIteratorOfMapOfPassKey_HeaderFile #define _NMTDS_MapIteratorOfMapOfPassKey_HeaderFile diff --git a/src/NMTDS/NMTDS_MapIteratorOfMapOfPassKeyBoolean.hxx b/src/NMTDS/NMTDS_MapIteratorOfMapOfPassKeyBoolean.hxx index dbff06524..52f2bc1df 100644 --- a/src/NMTDS/NMTDS_MapIteratorOfMapOfPassKeyBoolean.hxx +++ b/src/NMTDS/NMTDS_MapIteratorOfMapOfPassKeyBoolean.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_MapIteratorOfMapOfPassKeyBoolean_HeaderFile #define _NMTDS_MapIteratorOfMapOfPassKeyBoolean_HeaderFile diff --git a/src/NMTDS/NMTDS_MapIteratorOfMapOfPassKeyBoolean_0.cxx b/src/NMTDS/NMTDS_MapIteratorOfMapOfPassKeyBoolean_0.cxx index 68c88970e..e601bd0a3 100644 --- a/src/NMTDS/NMTDS_MapIteratorOfMapOfPassKeyBoolean_0.cxx +++ b/src/NMTDS/NMTDS_MapIteratorOfMapOfPassKeyBoolean_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/NMTDS/NMTDS_MapIteratorOfMapOfPassKey_0.cxx b/src/NMTDS/NMTDS_MapIteratorOfMapOfPassKey_0.cxx index c96965f87..611ca7092 100644 --- a/src/NMTDS/NMTDS_MapIteratorOfMapOfPassKey_0.cxx +++ b/src/NMTDS/NMTDS_MapIteratorOfMapOfPassKey_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/NMTDS/NMTDS_MapOfPassKey.hxx b/src/NMTDS/NMTDS_MapOfPassKey.hxx index b9360dd20..e20be33a2 100644 --- a/src/NMTDS/NMTDS_MapOfPassKey.hxx +++ b/src/NMTDS/NMTDS_MapOfPassKey.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_MapOfPassKey_HeaderFile #define _NMTDS_MapOfPassKey_HeaderFile diff --git a/src/NMTDS/NMTDS_MapOfPassKeyBoolean.hxx b/src/NMTDS/NMTDS_MapOfPassKeyBoolean.hxx index 8f0312b63..d3fcfd8ed 100644 --- a/src/NMTDS/NMTDS_MapOfPassKeyBoolean.hxx +++ b/src/NMTDS/NMTDS_MapOfPassKeyBoolean.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_MapOfPassKeyBoolean_HeaderFile #define _NMTDS_MapOfPassKeyBoolean_HeaderFile diff --git a/src/NMTDS/NMTDS_MapOfPassKeyBoolean_0.cxx b/src/NMTDS/NMTDS_MapOfPassKeyBoolean_0.cxx index 4c9ac2a3f..4eb82501e 100644 --- a/src/NMTDS/NMTDS_MapOfPassKeyBoolean_0.cxx +++ b/src/NMTDS/NMTDS_MapOfPassKeyBoolean_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/NMTDS/NMTDS_MapOfPassKey_0.cxx b/src/NMTDS/NMTDS_MapOfPassKey_0.cxx index 12f3a2289..2a2a23e96 100644 --- a/src/NMTDS/NMTDS_MapOfPassKey_0.cxx +++ b/src/NMTDS/NMTDS_MapOfPassKey_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/NMTDS/NMTDS_PInterfPool.hxx b/src/NMTDS/NMTDS_PInterfPool.hxx index 7084ba333..0e7f04d8f 100644 --- a/src/NMTDS/NMTDS_PInterfPool.hxx +++ b/src/NMTDS/NMTDS_PInterfPool.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_PInterfPool_HeaderFile #define _NMTDS_PInterfPool_HeaderFile diff --git a/src/NMTDS/NMTDS_PIterator.hxx b/src/NMTDS/NMTDS_PIterator.hxx index 8cefa5bb5..0cc2973f4 100644 --- a/src/NMTDS/NMTDS_PIterator.hxx +++ b/src/NMTDS/NMTDS_PIterator.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_PIterator_HeaderFile #define _NMTDS_PIterator_HeaderFile diff --git a/src/NMTDS/NMTDS_PShapesDataStructure.hxx b/src/NMTDS/NMTDS_PShapesDataStructure.hxx index 128b45862..0bebcb823 100644 --- a/src/NMTDS/NMTDS_PShapesDataStructure.hxx +++ b/src/NMTDS/NMTDS_PShapesDataStructure.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_PShapesDataStructure_HeaderFile #define _NMTDS_PShapesDataStructure_HeaderFile diff --git a/src/NMTDS/NMTDS_PassKey.cdl b/src/NMTDS/NMTDS_PassKey.cdl index 905a8d62a..62284b520 100755 --- a/src/NMTDS/NMTDS_PassKey.cdl +++ b/src/NMTDS/NMTDS_PassKey.cdl @@ -1,28 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- +-- File: NMTDS_PassKey.cdl +-- Created: Mon Nov 20 12:16:13 2006 +-- Author: Peter KURNEV -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- --- File: NMTDS_PassKey.cdl --- Created: Mon Nov 20 12:16:13 2006 --- Author: Peter KURNEV --- - - class PassKey from NMTDS ---Purpose: diff --git a/src/NMTDS/NMTDS_PassKey.cxx b/src/NMTDS/NMTDS_PassKey.cxx index 2d2d52ea0..91e1da956 100755 --- a/src/NMTDS/NMTDS_PassKey.cxx +++ b/src/NMTDS/NMTDS_PassKey.cxx @@ -1,29 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTDS_Algo.cxx // Created: Sat Dec 04 12:39:47 2004 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/NMTDS/NMTDS_PassKey.hxx b/src/NMTDS/NMTDS_PassKey.hxx index 379b72f79..b75f63029 100644 --- a/src/NMTDS/NMTDS_PassKey.hxx +++ b/src/NMTDS/NMTDS_PassKey.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_PassKey_HeaderFile #define _NMTDS_PassKey_HeaderFile diff --git a/src/NMTDS/NMTDS_PassKey.ixx b/src/NMTDS/NMTDS_PassKey.ixx index 906d159d0..fee442621 100644 --- a/src/NMTDS/NMTDS_PassKey.ixx +++ b/src/NMTDS/NMTDS_PassKey.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTDS/NMTDS_PassKey.jxx b/src/NMTDS/NMTDS_PassKey.jxx index ba0d04dd1..65bb207de 100644 --- a/src/NMTDS/NMTDS_PassKey.jxx +++ b/src/NMTDS/NMTDS_PassKey.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TColStd_ListOfInteger_HeaderFile #include #endif diff --git a/src/NMTDS/NMTDS_PassKeyBoolean.cdl b/src/NMTDS/NMTDS_PassKeyBoolean.cdl index c34a3244a..73b93b234 100755 --- a/src/NMTDS/NMTDS_PassKeyBoolean.cdl +++ b/src/NMTDS/NMTDS_PassKeyBoolean.cdl @@ -1,27 +1,28 @@ --- Copyright (C) 2006 SAMTECH --- --- 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. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- +-- File: NMTDS_PassKeyBoolean.cdl +-- Created: +-- Author: Peter KURNEV -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- --- File: NMTDS_PassKeyBoolean.cdl --- Created: --- Author: Peter KURNEV --- - - class PassKeyBoolean from NMTDS inherits PassKey from NMTDS diff --git a/src/NMTDS/NMTDS_PassKeyBoolean.cxx b/src/NMTDS/NMTDS_PassKeyBoolean.cxx index 059751fe2..d2636052c 100755 --- a/src/NMTDS/NMTDS_PassKeyBoolean.cxx +++ b/src/NMTDS/NMTDS_PassKeyBoolean.cxx @@ -1,27 +1,29 @@ -// Copyright (C) 2006 SAMTECH -// -// 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. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTDS_PassKeyBoolean.cxx // Created: Mon May 15 14:31:05 2006 // Author: Peter KURNEV // - - +// #include //======================================================================= diff --git a/src/NMTDS/NMTDS_PassKeyBoolean.hxx b/src/NMTDS/NMTDS_PassKeyBoolean.hxx index 604cfa30b..aa0cc5b50 100644 --- a/src/NMTDS/NMTDS_PassKeyBoolean.hxx +++ b/src/NMTDS/NMTDS_PassKeyBoolean.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_PassKeyBoolean_HeaderFile #define _NMTDS_PassKeyBoolean_HeaderFile diff --git a/src/NMTDS/NMTDS_PassKeyBoolean.ixx b/src/NMTDS/NMTDS_PassKeyBoolean.ixx index 88cae8df2..f879f4ff7 100644 --- a/src/NMTDS/NMTDS_PassKeyBoolean.ixx +++ b/src/NMTDS/NMTDS_PassKeyBoolean.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTDS/NMTDS_PassKeyBoolean.jxx b/src/NMTDS/NMTDS_PassKeyBoolean.jxx index 4291273e9..b4559ce9b 100644 --- a/src/NMTDS/NMTDS_PassKeyBoolean.jxx +++ b/src/NMTDS/NMTDS_PassKeyBoolean.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_PassKeyBoolean_HeaderFile #include #endif diff --git a/src/NMTDS/NMTDS_PassKeyMapHasher.cdl b/src/NMTDS/NMTDS_PassKeyMapHasher.cdl index de75ce8f9..052e9aa97 100755 --- a/src/NMTDS/NMTDS_PassKeyMapHasher.cdl +++ b/src/NMTDS/NMTDS_PassKeyMapHasher.cdl @@ -1,28 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: NMTDS_PassKeyMapHasher.cdl +-- Created: +-- Author: Peter KURNEV -- --- File: NMTDS_PassKeyMapHasher.cdl --- Created: --- Author: Peter KURNEV --- - - class PassKeyMapHasher from NMTDS ---Purpose: diff --git a/src/NMTDS/NMTDS_PassKeyMapHasher.cxx b/src/NMTDS/NMTDS_PassKeyMapHasher.cxx index ac7910947..2afd292d0 100755 --- a/src/NMTDS/NMTDS_PassKeyMapHasher.cxx +++ b/src/NMTDS/NMTDS_PassKeyMapHasher.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTDS_PassKeyMapHasher.cxx // Created: // Author: Peter KURNEV // - - +// #include //======================================================================= diff --git a/src/NMTDS/NMTDS_PassKeyMapHasher.hxx b/src/NMTDS/NMTDS_PassKeyMapHasher.hxx index b22d6e8f7..372e21411 100644 --- a/src/NMTDS/NMTDS_PassKeyMapHasher.hxx +++ b/src/NMTDS/NMTDS_PassKeyMapHasher.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_PassKeyMapHasher_HeaderFile #define _NMTDS_PassKeyMapHasher_HeaderFile diff --git a/src/NMTDS/NMTDS_PassKeyMapHasher.ixx b/src/NMTDS/NMTDS_PassKeyMapHasher.ixx index 177c4e352..8c37b4e0c 100644 --- a/src/NMTDS/NMTDS_PassKeyMapHasher.ixx +++ b/src/NMTDS/NMTDS_PassKeyMapHasher.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTDS/NMTDS_PassKeyMapHasher.jxx b/src/NMTDS/NMTDS_PassKeyMapHasher.jxx index ab0e61052..7487e5b18 100644 --- a/src/NMTDS/NMTDS_PassKeyMapHasher.jxx +++ b/src/NMTDS/NMTDS_PassKeyMapHasher.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_PassKey_HeaderFile #include #endif diff --git a/src/NMTDS/NMTDS_PassKeyShape.cdl b/src/NMTDS/NMTDS_PassKeyShape.cdl index 081226594..8721823be 100644 --- a/src/NMTDS/NMTDS_PassKeyShape.cdl +++ b/src/NMTDS/NMTDS_PassKeyShape.cdl @@ -1,28 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: NMTDS_PassKeyShape.cdl +-- Created: +-- Author: Peter KURNEV -- --- File: NMTDS_PassKeyShape.cdl --- Created: --- Author: Peter KURNEV --- - - class PassKeyShape from NMTDS ---Purpose: diff --git a/src/NMTDS/NMTDS_PassKeyShape.cxx b/src/NMTDS/NMTDS_PassKeyShape.cxx index c4af3a480..804acd5c5 100644 --- a/src/NMTDS/NMTDS_PassKeyShape.cxx +++ b/src/NMTDS/NMTDS_PassKeyShape.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTDS_PassKeyShape.cxx // Created: // Author: Peter KURNEV // - - +// #include #include diff --git a/src/NMTDS/NMTDS_PassKeyShape.hxx b/src/NMTDS/NMTDS_PassKeyShape.hxx index 81eaa8096..4f9583ecf 100644 --- a/src/NMTDS/NMTDS_PassKeyShape.hxx +++ b/src/NMTDS/NMTDS_PassKeyShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_PassKeyShape_HeaderFile #define _NMTDS_PassKeyShape_HeaderFile diff --git a/src/NMTDS/NMTDS_PassKeyShape.ixx b/src/NMTDS/NMTDS_PassKeyShape.ixx index 90c37bd34..c98d33542 100644 --- a/src/NMTDS/NMTDS_PassKeyShape.ixx +++ b/src/NMTDS/NMTDS_PassKeyShape.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTDS/NMTDS_PassKeyShape.jxx b/src/NMTDS/NMTDS_PassKeyShape.jxx index 9d79955e4..7b7553bcf 100644 --- a/src/NMTDS/NMTDS_PassKeyShape.jxx +++ b/src/NMTDS/NMTDS_PassKeyShape.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/NMTDS/NMTDS_PassKeyShapeMapHasher.cdl b/src/NMTDS/NMTDS_PassKeyShapeMapHasher.cdl index 77c066755..6fc92b1e5 100644 --- a/src/NMTDS/NMTDS_PassKeyShapeMapHasher.cdl +++ b/src/NMTDS/NMTDS_PassKeyShapeMapHasher.cdl @@ -1,28 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http:--www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: NMTDS_PassKeyMapHasher.cdl +-- Created: +-- Author: Peter KURNEV -- --- File: NMTDS_PassKeyMapHasher.cdl --- Created: --- Author: Peter KURNEV --- - - class PassKeyShapeMapHasher from NMTDS ---Purpose: diff --git a/src/NMTDS/NMTDS_PassKeyShapeMapHasher.cxx b/src/NMTDS/NMTDS_PassKeyShapeMapHasher.cxx index e637e3380..b8fa38230 100644 --- a/src/NMTDS/NMTDS_PassKeyShapeMapHasher.cxx +++ b/src/NMTDS/NMTDS_PassKeyShapeMapHasher.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTDS_PassKeyMapHasher.cxx // Created: // Author: Peter KURNEV // - - +// #include //======================================================================= diff --git a/src/NMTDS/NMTDS_PassKeyShapeMapHasher.hxx b/src/NMTDS/NMTDS_PassKeyShapeMapHasher.hxx index e48436737..909ebb5cd 100644 --- a/src/NMTDS/NMTDS_PassKeyShapeMapHasher.hxx +++ b/src/NMTDS/NMTDS_PassKeyShapeMapHasher.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_PassKeyShapeMapHasher_HeaderFile #define _NMTDS_PassKeyShapeMapHasher_HeaderFile diff --git a/src/NMTDS/NMTDS_PassKeyShapeMapHasher.ixx b/src/NMTDS/NMTDS_PassKeyShapeMapHasher.ixx index c7148fd5d..32be52eaf 100644 --- a/src/NMTDS/NMTDS_PassKeyShapeMapHasher.ixx +++ b/src/NMTDS/NMTDS_PassKeyShapeMapHasher.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTDS/NMTDS_PassKeyShapeMapHasher.jxx b/src/NMTDS/NMTDS_PassKeyShapeMapHasher.jxx index f0e81fc33..34fa8cc5e 100644 --- a/src/NMTDS/NMTDS_PassKeyShapeMapHasher.jxx +++ b/src/NMTDS/NMTDS_PassKeyShapeMapHasher.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_PassKeyShape_HeaderFile #include #endif diff --git a/src/NMTDS/NMTDS_ShapesDataStructure.cdl b/src/NMTDS/NMTDS_ShapesDataStructure.cdl index 5a2f93f72..ba1f59f48 100644 --- a/src/NMTDS/NMTDS_ShapesDataStructure.cdl +++ b/src/NMTDS/NMTDS_ShapesDataStructure.cdl @@ -1,27 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- +-- File: NMTDS_ShapesDataStructure.cdl +-- Created: Mon Dec 1 10:17:05 2003 +-- Author: Peter KURNEV -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- --- File: NMTDS_ShapesDataStructure.cdl --- Created: Mon Dec 1 10:17:05 2003 --- Author: Peter KURNEV --- - class ShapesDataStructure from NMTDS inherits ShapesDataStructure from BooleanOperations diff --git a/src/NMTDS/NMTDS_ShapesDataStructure.cxx b/src/NMTDS/NMTDS_ShapesDataStructure.cxx index a9a0e7370..c10daf236 100644 --- a/src/NMTDS/NMTDS_ShapesDataStructure.cxx +++ b/src/NMTDS/NMTDS_ShapesDataStructure.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTDS_ShapesDataStructure.cxx // Created: Mon Dec 1 10:21:04 2003 // Author: Peter KURNEV // - - +// #include #include #include diff --git a/src/NMTDS/NMTDS_ShapesDataStructure.hxx b/src/NMTDS/NMTDS_ShapesDataStructure.hxx index 9d149f5a7..2dede1f65 100644 --- a/src/NMTDS/NMTDS_ShapesDataStructure.hxx +++ b/src/NMTDS/NMTDS_ShapesDataStructure.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_ShapesDataStructure_HeaderFile #define _NMTDS_ShapesDataStructure_HeaderFile diff --git a/src/NMTDS/NMTDS_ShapesDataStructure.ixx b/src/NMTDS/NMTDS_ShapesDataStructure.ixx index 587761e25..2eb57d133 100644 --- a/src/NMTDS/NMTDS_ShapesDataStructure.ixx +++ b/src/NMTDS/NMTDS_ShapesDataStructure.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTDS/NMTDS_ShapesDataStructure.jxx b/src/NMTDS/NMTDS_ShapesDataStructure.jxx index 41897c615..f14232fd4 100644 --- a/src/NMTDS/NMTDS_ShapesDataStructure.jxx +++ b/src/NMTDS/NMTDS_ShapesDataStructure.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/NMTDS/NMTDS_StdMapNodeOfMapOfPassKey.hxx b/src/NMTDS/NMTDS_StdMapNodeOfMapOfPassKey.hxx index 002862385..196074ff4 100644 --- a/src/NMTDS/NMTDS_StdMapNodeOfMapOfPassKey.hxx +++ b/src/NMTDS/NMTDS_StdMapNodeOfMapOfPassKey.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_StdMapNodeOfMapOfPassKey_HeaderFile #define _NMTDS_StdMapNodeOfMapOfPassKey_HeaderFile diff --git a/src/NMTDS/NMTDS_StdMapNodeOfMapOfPassKeyBoolean.hxx b/src/NMTDS/NMTDS_StdMapNodeOfMapOfPassKeyBoolean.hxx index 0392838d1..61cba228b 100644 --- a/src/NMTDS/NMTDS_StdMapNodeOfMapOfPassKeyBoolean.hxx +++ b/src/NMTDS/NMTDS_StdMapNodeOfMapOfPassKeyBoolean.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_StdMapNodeOfMapOfPassKeyBoolean_HeaderFile #define _NMTDS_StdMapNodeOfMapOfPassKeyBoolean_HeaderFile diff --git a/src/NMTDS/NMTDS_StdMapNodeOfMapOfPassKeyBoolean_0.cxx b/src/NMTDS/NMTDS_StdMapNodeOfMapOfPassKeyBoolean_0.cxx index 9728d1014..154519c8e 100644 --- a/src/NMTDS/NMTDS_StdMapNodeOfMapOfPassKeyBoolean_0.cxx +++ b/src/NMTDS/NMTDS_StdMapNodeOfMapOfPassKeyBoolean_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/NMTDS/NMTDS_StdMapNodeOfMapOfPassKey_0.cxx b/src/NMTDS/NMTDS_StdMapNodeOfMapOfPassKey_0.cxx index 08659bb9b..27fa652b3 100644 --- a/src/NMTDS/NMTDS_StdMapNodeOfMapOfPassKey_0.cxx +++ b/src/NMTDS/NMTDS_StdMapNodeOfMapOfPassKey_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/NMTDS/NMTDS_Tools.cdl b/src/NMTDS/NMTDS_Tools.cdl index 1465d4d16..1506fa7b6 100644 --- a/src/NMTDS/NMTDS_Tools.cdl +++ b/src/NMTDS/NMTDS_Tools.cdl @@ -1,29 +1,28 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- +-- File: NMTDS_Tools.cdl +-- Created: Tue Feb 20 14:56:14 2007 +-- Author: Peter KURNEV -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- --- File: NMTDS_Tools.cdl --- Created: Tue Feb 20 14:56:14 2007 --- Author: Peter KURNEV --- ----Copyright: Matra Datavision 2007 - - class Tools from NMTDS ---Purpose: diff --git a/src/NMTDS/NMTDS_Tools.cxx b/src/NMTDS/NMTDS_Tools.cxx index 8944fe501..b49af9da3 100644 --- a/src/NMTDS/NMTDS_Tools.cxx +++ b/src/NMTDS/NMTDS_Tools.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTDS_Tools.cxx // Created: Tue Feb 20 14:57:28 2007 // Author: Peter KURNEV // - - +// #include #include #include diff --git a/src/NMTDS/NMTDS_Tools.hxx b/src/NMTDS/NMTDS_Tools.hxx index c7eb8fdc9..ca5f8984f 100644 --- a/src/NMTDS/NMTDS_Tools.hxx +++ b/src/NMTDS/NMTDS_Tools.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTDS_Tools_HeaderFile #define _NMTDS_Tools_HeaderFile diff --git a/src/NMTDS/NMTDS_Tools.ixx b/src/NMTDS/NMTDS_Tools.ixx index 8e5877b34..da643aa19 100644 --- a/src/NMTDS/NMTDS_Tools.ixx +++ b/src/NMTDS/NMTDS_Tools.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTDS/NMTDS_Tools.jxx b/src/NMTDS/NMTDS_Tools.jxx index 4359a18a7..5fdfd4c5d 100644 --- a/src/NMTDS/NMTDS_Tools.jxx +++ b/src/NMTDS/NMTDS_Tools.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Vertex_HeaderFile #include #endif diff --git a/src/NMTTools/Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx b/src/NMTTools/Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx index 3499864cc..ae1c3f807 100644 --- a/src/NMTTools/Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx +++ b/src/NMTTools/Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_HeaderFile #define _Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger_HeaderFile diff --git a/src/NMTTools/Handle_NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx b/src/NMTTools/Handle_NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx index 48ce73f8a..0e68f8ec1 100644 --- a/src/NMTTools/Handle_NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx +++ b/src/NMTTools/Handle_NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors_HeaderFile #define _Handle_NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors_HeaderFile diff --git a/src/NMTTools/Handle_NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock.hxx b/src/NMTTools/Handle_NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock.hxx index a1d7b3076..37052ceed 100644 --- a/src/NMTTools/Handle_NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock.hxx +++ b/src/NMTTools/Handle_NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock_HeaderFile #define _Handle_NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock_HeaderFile diff --git a/src/NMTTools/Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger.hxx b/src/NMTTools/Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger.hxx index ddf434f3f..9be2a7b53 100644 --- a/src/NMTTools/Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger.hxx +++ b/src/NMTTools/Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger_HeaderFile #define _Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger_HeaderFile diff --git a/src/NMTTools/Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape.hxx b/src/NMTTools/Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape.hxx index 2ae11665b..4bde10714 100644 --- a/src/NMTTools/Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape.hxx +++ b/src/NMTTools/Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape_HeaderFile #define _Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape_HeaderFile diff --git a/src/NMTTools/Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock.hxx b/src/NMTTools/Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock.hxx index bd78cab85..26f899d6a 100644 --- a/src/NMTTools/Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock.hxx +++ b/src/NMTTools/Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock_HeaderFile #define _Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock_HeaderFile diff --git a/src/NMTTools/Handle_NMTTools_ListNodeOfListOfCommonBlock.hxx b/src/NMTTools/Handle_NMTTools_ListNodeOfListOfCommonBlock.hxx index 68c12bec0..fb7fd9bbc 100644 --- a/src/NMTTools/Handle_NMTTools_ListNodeOfListOfCommonBlock.hxx +++ b/src/NMTTools/Handle_NMTTools_ListNodeOfListOfCommonBlock.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTTools_ListNodeOfListOfCommonBlock_HeaderFile #define _Handle_NMTTools_ListNodeOfListOfCommonBlock_HeaderFile diff --git a/src/NMTTools/Handle_NMTTools_ListNodeOfListOfCoupleOfShape.hxx b/src/NMTTools/Handle_NMTTools_ListNodeOfListOfCoupleOfShape.hxx index 10c82d040..646478105 100644 --- a/src/NMTTools/Handle_NMTTools_ListNodeOfListOfCoupleOfShape.hxx +++ b/src/NMTTools/Handle_NMTTools_ListNodeOfListOfCoupleOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTTools_ListNodeOfListOfCoupleOfShape_HeaderFile #define _Handle_NMTTools_ListNodeOfListOfCoupleOfShape_HeaderFile diff --git a/src/NMTTools/Handle_NMTTools_StdMapNodeOfMapOfPaveBlock.hxx b/src/NMTTools/Handle_NMTTools_StdMapNodeOfMapOfPaveBlock.hxx index 93a4a7634..47559616e 100644 --- a/src/NMTTools/Handle_NMTTools_StdMapNodeOfMapOfPaveBlock.hxx +++ b/src/NMTTools/Handle_NMTTools_StdMapNodeOfMapOfPaveBlock.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Handle_NMTTools_StdMapNodeOfMapOfPaveBlock_HeaderFile #define _Handle_NMTTools_StdMapNodeOfMapOfPaveBlock_HeaderFile diff --git a/src/NMTTools/Makefile.am b/src/NMTTools/Makefile.am index ecd125530..59c6b1f8d 100644 --- a/src/NMTTools/Makefile.am +++ b/src/NMTTools/Makefile.am @@ -1,32 +1,31 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM NMTTools : partition algorithm -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : Makefile.in # Author : Julia DOROVSKIKH # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header$ - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files @@ -39,11 +38,21 @@ salomeinclude_HEADERS = \ Handle_NMTTools_ListNodeOfListOfCommonBlock.hxx \ Handle_NMTTools_ListNodeOfListOfCoupleOfShape.hxx \ NMTTools_CheckerSI.hxx \ + NMTTools_CheckerSI.ixx \ + NMTTools_CheckerSI.jxx \ NMTTools_CommonBlockAPI.hxx \ + NMTTools_CommonBlockAPI.ixx \ + NMTTools_CommonBlockAPI.jxx \ NMTTools_CommonBlock.hxx \ + NMTTools_CommonBlock.ixx \ + NMTTools_CommonBlock.jxx \ NMTTools_CommonBlockPool.hxx \ NMTTools_CoupleOfShape.hxx \ + NMTTools_CoupleOfShape.ixx \ + NMTTools_CoupleOfShape.jxx \ NMTTools_DEProcessor.hxx \ + NMTTools_DEProcessor.ixx \ + NMTTools_DEProcessor.jxx \ NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger.hxx \ NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape.hxx \ NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock.hxx \ @@ -51,6 +60,8 @@ salomeinclude_HEADERS = \ NMTTools_IndexedDataMapOfShapeIndexedMapOfShape.hxx \ NMTTools_IndexedDataMapOfShapePaveBlock.hxx \ NMTTools_IteratorOfCoupleOfShape.hxx \ + NMTTools_IteratorOfCoupleOfShape.ixx \ + NMTTools_IteratorOfCoupleOfShape.jxx \ NMTTools_ListIteratorOfListOfCommonBlock.hxx \ NMTTools_ListIteratorOfListOfCoupleOfShape.hxx \ NMTTools_ListNodeOfListOfCommonBlock.hxx \ @@ -58,8 +69,12 @@ salomeinclude_HEADERS = \ NMTTools_ListOfCommonBlock.hxx \ NMTTools_ListOfCoupleOfShape.hxx \ NMTTools_PaveFiller.hxx \ + NMTTools_PaveFiller.ixx \ + NMTTools_PaveFiller.jxx \ NMTTools_PPaveFiller.hxx \ NMTTools_Tools.hxx \ + NMTTools_Tools.ixx \ + NMTTools_Tools.jxx \ Handle_NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock.hxx \ Handle_NMTTools_StdMapNodeOfMapOfPaveBlock.hxx \ NMTTools_DataMapIteratorOfDataMapOfIntegerListOfPaveBlock.hxx \ @@ -112,15 +127,43 @@ dist_libNMTTools_la_SOURCES = \ NMTTools_MapOfPaveBlock_0.cxx \ NMTTools_StdMapNodeOfMapOfPaveBlock_0.cxx -# additionnal information to compil and link file +# additional information to compile and link file -libNMTTools_la_CPPFLAGS = \ - $(CAS_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ +libNMTTools_la_CPPFLAGS = \ + $(CAS_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ -I$(srcdir)/../NMTDS -libNMTTools_la_LDFLAGS = \ - ../NMTDS/libNMTDS.la \ - $(STDLIB) \ - $(CAS_LDPATH) -lTKBool -lTKBO \ +libNMTTools_la_LDFLAGS = \ + ../NMTDS/libNMTDS.la \ + $(STDLIB) \ + $(CAS_LDPATH) -lTKBool -lTKBO \ $(KERNEL_LDFLAGS) + +CDL_FILES = \ + NMTTools.cdl \ + NMTTools_CheckerSI.cdl \ + NMTTools_CommonBlock.cdl \ + NMTTools_CommonBlockAPI.cdl \ + NMTTools_CoupleOfShape.cdl \ + NMTTools_DEProcessor.cdl \ + NMTTools_IteratorOfCoupleOfShape.cdl \ + NMTTools_PaveFiller.cdl \ + NMTTools_Tools.cdl + +EXTRA_DIST += $(CDL_FILES) + +######################################## +# Non-used (obsolete?) files +######################################## +# NMTTools_PCurveMaker.cdl +# NMTTools_PCurveMaker.cxx +# NMTTools_PCurveMaker.hxx +# NMTTools_PCurveMaker.ixx +# NMTTools_PCurveMaker.jxx +# NMTTools_PDSFiller.hxx +# NMTTools_DSFiller.cdl +# NMTTools_DSFiller.cxx +# NMTTools_DSFiller.hxx +# NMTTools_DSFiller.ixx +# NMTTools_DSFiller.jxx diff --git a/src/NMTTools/NMTTools.cdl b/src/NMTTools/NMTTools.cdl index 14ce83e18..727b8331e 100644 --- a/src/NMTTools/NMTTools.cdl +++ b/src/NMTTools/NMTTools.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: NMTTools.cdl -- Created: Thu Dec 4 16:55:49 2003 -- Author: Peter KURNEV -- - - +-- package NMTTools ---Purpose: diff --git a/src/NMTTools/NMTTools.pro b/src/NMTTools/NMTTools.pro new file mode 100644 index 000000000..109a94959 --- /dev/null +++ b/src/NMTTools/NMTTools.pro @@ -0,0 +1,131 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = NMTTools +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +STDLIB = -lstdc++ + +CAS_LDPATH = -L$$(CASROOT)/Linux/lib + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +INCLUDEPATH += $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} ../NMTDS + +LIBS += -L$$(GEOM_ROOT_DIR)/lib -lNMTDS $${STDLIB} $${CAS_LDPATH} -lTKBool -lTKBO $${KERNEL_LDFLAGS} + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS + +HEADERS = Handle_NMTDS_IndexedDataMapNodeOfIndexedDataMapOfIntegerIndexedDataMapOfShapeInteger.hxx +HEADERS += Handle_NMTDS_ListNodeOfListOfIndexedDataMapOfShapeAncestorsSuccessors.hxx +HEADERS += Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger.hxx +HEADERS += Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape.hxx +HEADERS += Handle_NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock.hxx +HEADERS += Handle_NMTTools_ListNodeOfListOfCommonBlock.hxx +HEADERS += Handle_NMTTools_ListNodeOfListOfCoupleOfShape.hxx +HEADERS += NMTTools_CommonBlockAPI.hxx +HEADERS += NMTTools_CommonBlock.hxx +HEADERS += NMTTools_CommonBlockPool.hxx +HEADERS += NMTTools_CoupleOfShape.hxx +HEADERS += NMTTools_DEProcessor.hxx +HEADERS += NMTTools_DSFiller.hxx +HEADERS += NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger.hxx +HEADERS += NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape.hxx +HEADERS += NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock.hxx +HEADERS += NMTTools_IndexedDataMapOfIndexedMapOfInteger.hxx +HEADERS += NMTTools_IndexedDataMapOfShapeIndexedMapOfShape.hxx +HEADERS += NMTTools_IndexedDataMapOfShapePaveBlock.hxx +HEADERS += NMTTools_IteratorOfCoupleOfShape.hxx +HEADERS += NMTTools_ListIteratorOfListOfCommonBlock.hxx +HEADERS += NMTTools_ListIteratorOfListOfCoupleOfShape.hxx +HEADERS += NMTTools_ListNodeOfListOfCommonBlock.hxx +HEADERS += NMTTools_ListNodeOfListOfCoupleOfShape.hxx +HEADERS += NMTTools_ListOfCommonBlock.hxx +HEADERS += NMTTools_ListOfCoupleOfShape.hxx +HEADERS += NMTTools_PaveFiller.hxx +HEADERS += NMTTools_PCurveMaker.hxx +HEADERS += NMTTools_PDSFiller.hxx +HEADERS += NMTTools_PPaveFiller.hxx +HEADERS += NMTTools_Tools.hxx +HEADERS += Handle_NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock.hxx +HEADERS += Handle_NMTTools_StdMapNodeOfMapOfPaveBlock.hxx +HEADERS += NMTTools_DataMapIteratorOfDataMapOfIntegerListOfPaveBlock.hxx +HEADERS += NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock.hxx +HEADERS += NMTTools_DataMapOfIntegerListOfPaveBlock.hxx +HEADERS += NMTTools_MapIteratorOfMapOfPaveBlock.hxx +HEADERS += NMTTools_MapOfPaveBlock.hxx +HEADERS += NMTTools_StdMapNodeOfMapOfPaveBlock.hxx + +SOURCES = NMTTools_CommonBlockAPI.cxx +SOURCES += NMTTools_CommonBlock.cxx +SOURCES += NMTTools_CommonBlockPool_0.cxx +SOURCES += NMTTools_CoupleOfShape.cxx +SOURCES += NMTTools_DEProcessor.cxx +SOURCES += NMTTools_DSFiller.cxx +SOURCES += NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger_0.cxx +SOURCES += NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape_0.cxx +SOURCES += NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock_0.cxx +SOURCES += NMTTools_IndexedDataMapOfIndexedMapOfInteger_0.cxx +SOURCES += NMTTools_IndexedDataMapOfShapeIndexedMapOfShape_0.cxx +SOURCES += NMTTools_IndexedDataMapOfShapePaveBlock_0.cxx +SOURCES += NMTTools_IteratorOfCoupleOfShape.cxx +SOURCES += NMTTools_ListIteratorOfListOfCommonBlock_0.cxx +SOURCES += NMTTools_ListIteratorOfListOfCoupleOfShape_0.cxx +SOURCES += NMTTools_ListNodeOfListOfCommonBlock_0.cxx +SOURCES += NMTTools_ListNodeOfListOfCoupleOfShape_0.cxx +SOURCES += NMTTools_ListOfCommonBlock_0.cxx +SOURCES += NMTTools_ListOfCoupleOfShape_0.cxx +SOURCES += NMTTools_PaveFiller_0.cxx +SOURCES += NMTTools_PaveFiller_1.cxx +SOURCES += NMTTools_PaveFiller_2.cxx +SOURCES += NMTTools_PaveFiller_3.cxx +SOURCES += NMTTools_PaveFiller_4.cxx +SOURCES += NMTTools_PaveFiller_5.cxx +SOURCES += NMTTools_PaveFiller_6.cxx +SOURCES += NMTTools_PaveFiller_7.cxx +SOURCES += NMTTools_PaveFiller_8.cxx +SOURCES += NMTTools_PaveFiller_9.cxx +SOURCES += NMTTools_PaveFiller.cxx +SOURCES += NMTTools_PCurveMaker.cxx +SOURCES += NMTTools_Tools.cxx +SOURCES += NMTTools_DataMapIteratorOfDataMapOfIntegerListOfPaveBlock_0.cxx +SOURCES += NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock_0.cxx +SOURCES += NMTTools_DataMapOfIntegerListOfPaveBlock_0.cxx +SOURCES += NMTTools_MapIteratorOfMapOfPaveBlock_0.cxx +SOURCES += NMTTools_MapOfPaveBlock_0.cxx +SOURCES += NMTTools_StdMapNodeOfMapOfPaveBlock_0.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/NMTTools/NMTTools_CheckerSI.cdl b/src/NMTTools/NMTTools_CheckerSI.cdl index 50518ecd0..9267d8272 100644 --- a/src/NMTTools/NMTTools_CheckerSI.cdl +++ b/src/NMTTools/NMTTools_CheckerSI.cdl @@ -1,26 +1,28 @@ --- Copyright (C) 2006 SAMTECH --- --- 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. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- +-- File: NMTTools_CheckerSI.cdl +-- Created: Mon Feb 19 11:23:55 2007 +-- Author: Peter KURNEV -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- --- File: NMTTools_CheckerSI.cdl --- Created: Mon Feb 19 11:23:55 2007 --- Author: Peter KURNEV - - class CheckerSI from NMTTools inherits PaveFiller from NMTTools ---Purpose: diff --git a/src/NMTTools/NMTTools_CheckerSI.cxx b/src/NMTTools/NMTTools_CheckerSI.cxx index f3158795f..fd7cd2c2b 100644 --- a/src/NMTTools/NMTTools_CheckerSI.cxx +++ b/src/NMTTools/NMTTools_CheckerSI.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2006 SAMTECH -// -// 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. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_CheckerSI.cxx +// Created: Mon Feb 19 11:32:08 2007 +// Author: Peter KURNEV // -// File: NMTTools_CheckerSI.cxx -// Created: Mon Feb 19 11:32:08 2007 -// Author: Peter KURNEV -// - - #include #include diff --git a/src/NMTTools/NMTTools_CheckerSI.hxx b/src/NMTTools/NMTTools_CheckerSI.hxx index 4aacb49d2..2bd804de4 100644 --- a/src/NMTTools/NMTTools_CheckerSI.hxx +++ b/src/NMTTools/NMTTools_CheckerSI.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_CheckerSI_HeaderFile #define _NMTTools_CheckerSI_HeaderFile diff --git a/src/NMTTools/NMTTools_CheckerSI.ixx b/src/NMTTools/NMTTools_CheckerSI.ixx index 5d3e0201d..ebd56f247 100644 --- a/src/NMTTools/NMTTools_CheckerSI.ixx +++ b/src/NMTTools/NMTTools_CheckerSI.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTTools/NMTTools_CheckerSI.jxx b/src/NMTTools/NMTTools_CheckerSI.jxx index 68bdc3096..774127cac 100644 --- a/src/NMTTools/NMTTools_CheckerSI.jxx +++ b/src/NMTTools/NMTTools_CheckerSI.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_CheckerSI_HeaderFile #include #endif diff --git a/src/NMTTools/NMTTools_CheckerSI_1.cxx b/src/NMTTools/NMTTools_CheckerSI_1.cxx index 36ab867df..a0c9f978b 100755 --- a/src/NMTTools/NMTTools_CheckerSI_1.cxx +++ b/src/NMTTools/NMTTools_CheckerSI_1.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2006 SAMTECH -// -// 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. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_CheckerSI.cxx // Created: Mon Feb 19 11:32:08 2007 // Author: Peter KURNEV -// - - +// #include #include #include diff --git a/src/NMTTools/NMTTools_CommonBlock.cdl b/src/NMTTools/NMTTools_CommonBlock.cdl index 7c4fd7409..406208a05 100644 --- a/src/NMTTools/NMTTools_CommonBlock.cdl +++ b/src/NMTTools/NMTTools_CommonBlock.cdl @@ -1,29 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: NMTTools_CommonBlock.cdl -- Created: Tue Dec 9 12:11:48 2003 -- Author: Peter KURNEV -- - - - +-- class CommonBlock from NMTTools ---Purpose: diff --git a/src/NMTTools/NMTTools_CommonBlock.cxx b/src/NMTTools/NMTTools_CommonBlock.cxx index 5924d0e16..94ff2e98c 100644 --- a/src/NMTTools/NMTTools_CommonBlock.cxx +++ b/src/NMTTools/NMTTools_CommonBlock.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_CommonBlock.cxx // Created: Tue Dec 9 12:23:29 2003 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/NMTTools/NMTTools_CommonBlock.hxx b/src/NMTTools/NMTTools_CommonBlock.hxx index 38d036f8d..d13b2c496 100644 --- a/src/NMTTools/NMTTools_CommonBlock.hxx +++ b/src/NMTTools/NMTTools_CommonBlock.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_CommonBlock_HeaderFile #define _NMTTools_CommonBlock_HeaderFile diff --git a/src/NMTTools/NMTTools_CommonBlock.ixx b/src/NMTTools/NMTTools_CommonBlock.ixx index 91d08c8c8..f335f8981 100644 --- a/src/NMTTools/NMTTools_CommonBlock.ixx +++ b/src/NMTTools/NMTTools_CommonBlock.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTTools/NMTTools_CommonBlock.jxx b/src/NMTTools/NMTTools_CommonBlock.jxx index 1373207f3..be3140a9c 100644 --- a/src/NMTTools/NMTTools_CommonBlock.jxx +++ b/src/NMTTools/NMTTools_CommonBlock.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _BOPTools_PaveBlock_HeaderFile #include #endif diff --git a/src/NMTTools/NMTTools_CommonBlockAPI.cdl b/src/NMTTools/NMTTools_CommonBlockAPI.cdl index 8743ee8ee..601f6535f 100644 --- a/src/NMTTools/NMTTools_CommonBlockAPI.cdl +++ b/src/NMTTools/NMTTools_CommonBlockAPI.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: NMTTools_CommonBlockAPI.cdl -- Created: Mon Dec 15 11:35:46 2003 -- Author: Peter KURNEV -- - - +-- class CommonBlockAPI from NMTTools ---Purpose: diff --git a/src/NMTTools/NMTTools_CommonBlockAPI.cxx b/src/NMTTools/NMTTools_CommonBlockAPI.cxx index b92e98307..817f328cb 100644 --- a/src/NMTTools/NMTTools_CommonBlockAPI.cxx +++ b/src/NMTTools/NMTTools_CommonBlockAPI.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_CommonBlockAPI.cxx // Created: Mon Dec 15 11:38:04 2003 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/NMTTools/NMTTools_CommonBlockAPI.hxx b/src/NMTTools/NMTTools_CommonBlockAPI.hxx index a3c437330..7b717d706 100644 --- a/src/NMTTools/NMTTools_CommonBlockAPI.hxx +++ b/src/NMTTools/NMTTools_CommonBlockAPI.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_CommonBlockAPI_HeaderFile #define _NMTTools_CommonBlockAPI_HeaderFile diff --git a/src/NMTTools/NMTTools_CommonBlockAPI.ixx b/src/NMTTools/NMTTools_CommonBlockAPI.ixx index 49edac894..fdca4ca4a 100644 --- a/src/NMTTools/NMTTools_CommonBlockAPI.ixx +++ b/src/NMTTools/NMTTools_CommonBlockAPI.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTTools/NMTTools_CommonBlockAPI.jxx b/src/NMTTools/NMTTools_CommonBlockAPI.jxx index f6599af59..68ffe0ae9 100644 --- a/src/NMTTools/NMTTools_CommonBlockAPI.jxx +++ b/src/NMTTools/NMTTools_CommonBlockAPI.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_ListOfCommonBlock_HeaderFile #include #endif diff --git a/src/NMTTools/NMTTools_CommonBlockPool.hxx b/src/NMTTools/NMTTools_CommonBlockPool.hxx index 92f849c57..4c131de93 100644 --- a/src/NMTTools/NMTTools_CommonBlockPool.hxx +++ b/src/NMTTools/NMTTools_CommonBlockPool.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_CommonBlockPool_HeaderFile #define _NMTTools_CommonBlockPool_HeaderFile diff --git a/src/NMTTools/NMTTools_CommonBlockPool_0.cxx b/src/NMTTools/NMTTools_CommonBlockPool_0.cxx index 09fe06543..72b005821 100644 --- a/src/NMTTools/NMTTools_CommonBlockPool_0.cxx +++ b/src/NMTTools/NMTTools_CommonBlockPool_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_OutOfRange_HeaderFile diff --git a/src/NMTTools/NMTTools_CoupleOfShape.cdl b/src/NMTTools/NMTTools_CoupleOfShape.cdl index 7e8d2ed63..e9cc2d30e 100644 --- a/src/NMTTools/NMTTools_CoupleOfShape.cdl +++ b/src/NMTTools/NMTTools_CoupleOfShape.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: NMTTools_CoupleOfShape.cdl -- Created: Wed Jan 28 15:03:39 2004 -- Author: Peter KURNEV -- - - +-- class CoupleOfShape from NMTTools ---Purpose: diff --git a/src/NMTTools/NMTTools_CoupleOfShape.cxx b/src/NMTTools/NMTTools_CoupleOfShape.cxx index cbb721df1..5736b977c 100644 --- a/src/NMTTools/NMTTools_CoupleOfShape.cxx +++ b/src/NMTTools/NMTTools_CoupleOfShape.cxx @@ -1,27 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_CoupleOfShape.cxx // Created: Wed Jan 28 15:06:11 2004 // Author: Peter KURNEV // - +// #include //======================================================================= diff --git a/src/NMTTools/NMTTools_CoupleOfShape.hxx b/src/NMTTools/NMTTools_CoupleOfShape.hxx index 17ccbd0af..870b5261d 100644 --- a/src/NMTTools/NMTTools_CoupleOfShape.hxx +++ b/src/NMTTools/NMTTools_CoupleOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_CoupleOfShape_HeaderFile #define _NMTTools_CoupleOfShape_HeaderFile diff --git a/src/NMTTools/NMTTools_CoupleOfShape.ixx b/src/NMTTools/NMTTools_CoupleOfShape.ixx index 9711b73ad..65ba2898a 100644 --- a/src/NMTTools/NMTTools_CoupleOfShape.ixx +++ b/src/NMTTools/NMTTools_CoupleOfShape.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTTools/NMTTools_CoupleOfShape.jxx b/src/NMTTools/NMTTools_CoupleOfShape.jxx index fe94c8849..64230757c 100644 --- a/src/NMTTools/NMTTools_CoupleOfShape.jxx +++ b/src/NMTTools/NMTTools_CoupleOfShape.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/NMTTools/NMTTools_DEProcessor.cdl b/src/NMTTools/NMTTools_DEProcessor.cdl index d58f06dbf..d4e279c42 100644 --- a/src/NMTTools/NMTTools_DEProcessor.cdl +++ b/src/NMTTools/NMTTools_DEProcessor.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- 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: NMTTools_DEProcessor.cdl -- Created: Wed Sep 12 12:08:37 2001 -- Author: Peter KURNEV -- - - +-- class DEProcessor from NMTTools ---Purpose: diff --git a/src/NMTTools/NMTTools_DEProcessor.cxx b/src/NMTTools/NMTTools_DEProcessor.cxx index 0933b0104..538c998b4 100644 --- a/src/NMTTools/NMTTools_DEProcessor.cxx +++ b/src/NMTTools/NMTTools_DEProcessor.cxx @@ -1,27 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_DEProcessor.cxx // Created: Wed Sep 12 12:10:52 2001 // Author: Peter KURNEV // - +// #include #include @@ -31,10 +33,13 @@ #include #include -#include +#include + +#include #include #include +#include #include #include @@ -74,26 +79,18 @@ #include #include #include - +#include +#include #include #include #include - -#include -// -#include -#include -// -#include - -#include -#include - #include +#include + //======================================================================= -// function: NMTTools_DEProcessor::NMTTools_DEProcessor +// function: // purpose: //======================================================================= NMTTools_DEProcessor::NMTTools_DEProcessor(NMTTools_PaveFiller& aPaveFiller) @@ -118,15 +115,17 @@ void NMTTools_DEProcessor::Do() { Standard_Integer aNbE; + // myIsDone=Standard_False; - + // FindDegeneratedEdges(); + // aNbE=myDEMap.Extent(); - if (!aNbE) { - myIsDone=Standard_True; + myIsDone=!myIsDone; return; } + // DoPaves(); } //======================================================================= @@ -136,27 +135,25 @@ void NMTTools_DEProcessor::FindDegeneratedEdges() { Standard_Integer i, aNb, nV, nF, nVx, ip, iRankE; + TopoDS_Vertex aV; TopTools_IndexedDataMapOfShapeListOfShape aMEF; // aNb=myDS->NumberOfShapesOfTheObject(); - // - for (i=1; i<=aNb; i++) { - const TopoDS_Shape aF=myDS->Shape(i);//mpv + for (i=1; i<=aNb; ++i) { + const TopoDS_Shape aF=myDS->Shape(i); if (aF.ShapeType()==TopAbs_FACE) { TopExp::MapShapesAndAncestors (aF, TopAbs_EDGE, TopAbs_FACE, aMEF); } } // - for (i=1; i<=aNb; i++) { - const TopoDS_Shape aS=myDS->Shape(i);//mpv + for (i=1; i<=aNb; ++i) { + const TopoDS_Shape aS=myDS->Shape(i); if (aS.ShapeType()==TopAbs_EDGE) { const TopoDS_Edge& aE=TopoDS::Edge(aS); if (BRep_Tool::Degenerated(aE)) { iRankE=myDS->Rank(i); - - TopoDS_Vertex aV=TopExp::FirstVertex(aE); - + aV=TopExp::FirstVertex(aE); nVx=myDS->ShapeIndex(aV, iRankE); // nV=nVx; @@ -193,11 +190,12 @@ // nFD=0; aNbE=myDEMap.Extent(); - for (i=1; i<=aNbE; i++) { + for (i=1; i<=aNbE; ++i) { nED=myDEMap.FindKey(i); - + // const BOPTools_DEInfo& aDEInfo=myDEMap(i); nVD=aDEInfo.Vertex(); + // // Fill PaveSet for the edge nED const TColStd_ListOfInteger& nLF=aDEInfo.Faces(); TColStd_ListIteratorOfListOfInteger anIt(nLF); @@ -206,12 +204,12 @@ BOPTools_ListOfPaveBlock aLPB; FindPaveBlocks(nED, nVD, nFD, aLPB); - // xxf + // aNbLPB=aLPB.Extent(); if (!aNbLPB) { continue; } - //xxt + // FillPaveSet (nED, nVD, nFD, aLPB); } // @@ -235,7 +233,6 @@ BOPTools_ListIteratorOfListOfPaveBlock anIt; Standard_Integer i, aNb, nF2, nV; // - //BOPTools_CArray1OfSSInterference& aFFs=(myFiller->InterfPool())->SSInterferences(); BOPTools_CArray1OfSSInterference& aFFs=(myFiller->IP())->SSInterferences(); // aNb=aFFs.Extent(); @@ -270,24 +267,24 @@ // // Section Parts Standard_Integer j, aNbCurves; + // BOPTools_SequenceOfCurves& aSC=aFF.Curves(); aNbCurves=aSC.Length(); - - for (j=1; j<=aNbCurves; j++) { + for (j=1; j<=aNbCurves; ++j) { const BOPTools_Curve& aBC=aSC(j); const BOPTools_ListOfPaveBlock& aLPBSe=aBC.NewPaveBlocks(); - + // anIt.Initialize(aLPBSe); for (; anIt.More(); anIt.Next()) { const BOPTools_PaveBlock& aPBSe=anIt.Value(); - + // const BOPTools_Pave& aPv1=aPBSe.Pave1(); nV=aPv1.Index(); if (nV==nVD) { aLPBOut.Append(aPBSe); continue; } - + // const BOPTools_Pave& aPv2=aPBSe.Pave2(); nV=aPv2.Index(); if (nV==nVD) { @@ -309,28 +306,26 @@ { Standard_Boolean bIsDone, bXDir, bRejectFlag; Standard_Integer nE, aNbPoints, j; - Standard_Real aTD1, aTD2, aT1, aT2, aTolInter, aX, aDT; + Standard_Real aTD1, aTD2, aT1, aT2, aTolInter, aX, aDT, aXx; + gp_Pnt2d aP2d1, aP2d2, aP2D; + gp_Lin2d aLDE; // aDT=Precision::PConfusion(); // - BOPTools_PaveSet& aPaveSet= (myFiller->ChangePavePool()).ChangeValue(myDS->RefEdge(nED)); + BOPTools_PaveSet& aPaveSet= + (myFiller->ChangePavePool()).ChangeValue(myDS->RefEdge(nED)); // // Clear aPaveSet, aSplitEdges aPaveSet.ChangeSet().Clear(); // - const TopoDS_Edge aDE=TopoDS::Edge(myDS->Shape(nED));//mpv - const TopoDS_Face aDF=TopoDS::Face(myDS->Shape(nFD));//mpv + const TopoDS_Edge aDE=TopoDS::Edge(myDS->Shape(nED)); + const TopoDS_Face aDF=TopoDS::Face(myDS->Shape(nFD)); // // 2D Curve of degenerated edge on the face aDF - // Modified Thu Sep 14 14:35:18 2006 - // Contribution of Samtech www.samcef.com BEGIN - //Handle(Geom2d_Curve) aC2DDE=BRep_Tool::CurveOnSurface(aDE, aDF, aTD1, aTD2); Handle(Geom2d_Curve) aC2DDE1=BRep_Tool::CurveOnSurface(aDE, aDF, aTD1, aTD2); Handle(Geom2d_TrimmedCurve)aC2DDE=new Geom2d_TrimmedCurve(aC2DDE1, aTD1, aTD2); - // Contribution of Samtech www.samcef.com END // - // Choose direction for Degenerated Edge - gp_Pnt2d aP2d1, aP2d2; + // Choose direction for degenerated edge aC2DDE->D0(aTD1, aP2d1); aC2DDE->D0(aTD2, aP2d2); @@ -350,15 +345,13 @@ for (; anIt.More(); anIt.Next()) { const BOPTools_PaveBlock& aPB=anIt.Value(); nE=aPB.Edge(); - const TopoDS_Edge aE=TopoDS::Edge(myDS->Shape(nE));//mpv + const TopoDS_Edge aE=TopoDS::Edge(myDS->Shape(nE)); Handle(Geom2d_Curve) aC2D=BRep_Tool::CurveOnSurface(aE, aDF, aT1, aT2); // // Intersection - aTolInter=0.001; - Geom2dAdaptor_Curve aGAC1, aGAC2; - + // aGAC1.Load(aC2DDE, aTD1, aTD2); Handle(Geom2d_Line) aL2D= Handle(Geom2d_Line)::DownCast(aC2D); if (!aL2D.IsNull()) { @@ -367,28 +360,37 @@ else { aGAC2.Load(aC2D, aT1, aT2); } - + // + aTolInter=0.001; Geom2dInt_GInter aGInter(aGAC1, aGAC2, aTolInter, aTolInter); - bIsDone=aGInter.IsDone(); if(bIsDone) { aNbPoints=aGInter.NbPoints(); if (aNbPoints) { for (j=1; j<=aNbPoints; ++j) { - gp_Pnt2d aP2D=aGInter.Point(j).Value(); + aP2D=aGInter.Point(j).Value(); + Handle(Geom2d_Line) aCLDE; // - // Modified to obtain exact parameter Thu Sep 14 14:35:18 2006 - // Contribution of Samtech www.samcef.com BEGIN - Handle(Geom2d_Line) aCLDE=Handle(Geom2d_Line)::DownCast(aC2DDE1); + //modified by NIZNHY-PKV Thu Mar 20 17:37:32 2008f + Handle(Geom2d_TrimmedCurve) aCLDET1= + Handle(Geom2d_TrimmedCurve)::DownCast(aC2DDE1); + if (aCLDET1.IsNull()) { + aCLDE=Handle(Geom2d_Line)::DownCast(aC2DDE1); + } + else { + Handle(Geom2d_Curve) aBasisCurve=aCLDET1->BasisCurve(); + aCLDE=Handle(Geom2d_Line)::DownCast(aBasisCurve); + } + //aCLDE=Handle(Geom2d_Line)::DownCast(aC2DDE1); + //modified by NIZNHY-PKV Thu Mar 20 17:37:37 2008t + if (aCLDE.IsNull()) { continue; } - gp_Lin2d aLDE=aCLDE->Lin2d(); + + aLDE=aCLDE->Lin2d(); aX=ElCLib::Parameter(aLDE, aP2D); // - //aX=(bXDir) ? aP2D.X(): aP2D.Y(); - // Contribution of Samtech www.samcef.com END - // if (fabs (aX-aTD1) < aDT || fabs (aX-aTD2) < aDT) { continue; } @@ -401,7 +403,7 @@ BOPTools_ListIteratorOfListOfPave aPaveIt(aListOfPave); for (; aPaveIt.More(); aPaveIt.Next()) { const BOPTools_Pave& aPavex=aPaveIt.Value(); - Standard_Real aXx=aPavex.Param(); + aXx=aPavex.Param(); if (fabs (aX-aXx) < aDT) { bRejectFlag=Standard_True; break; @@ -424,8 +426,10 @@ //======================================================================= void NMTTools_DEProcessor::FillSplitEdgesPool (const Standard_Integer nED) { - BOPTools_SplitShapesPool& aSplitShapesPool=myFiller->ChangeSplitShapesPool(); - BOPTools_ListOfPaveBlock& aSplitEdges=aSplitShapesPool.ChangeValue(myDS->RefEdge(nED)); + BOPTools_SplitShapesPool& aSplitShapesPool= + myFiller->ChangeSplitShapesPool(); + BOPTools_ListOfPaveBlock& aSplitEdges= + aSplitShapesPool.ChangeValue(myDS->RefEdge(nED)); // aSplitEdges.Clear(); // @@ -454,8 +458,8 @@ TopoDS_Edge aE, aESplit; TopoDS_Vertex aV1, aV2; - const TopoDS_Edge aDE=TopoDS::Edge(myDS->Shape(nED));//mpv - const TopoDS_Face aDF=TopoDS::Face(myDS->Shape(nFD));//mpv + const TopoDS_Edge aDE=TopoDS::Edge(myDS->Shape(nED)); + const TopoDS_Face aDF=TopoDS::Face(myDS->Shape(nFD)); BOPTools_ListIteratorOfListOfPaveBlock aPBIt(aSplitEdges); @@ -522,17 +526,4 @@ BB.UpdateEdge(E, aTol); aNewEdge=E; } -/* -//======================================================================= -// function: NMTTools_DEProcessor::NMTTools_DEProcessor -// purpose: -//======================================================================= - NMTTools_DEProcessor::NMTTools_DEProcessor(NMTTools_PDSFiller& pDSFiller) -: - myIsDone(Standard_False) -{ - myDSFiller=pDSFiller; - myFiller=(NMTTools_PaveFiller*) &(myDSFiller->PaveFiller()); - myDS=myFiller->DS(); -} -*/ + diff --git a/src/NMTTools/NMTTools_DEProcessor.hxx b/src/NMTTools/NMTTools_DEProcessor.hxx index dfd149335..c3587312f 100644 --- a/src/NMTTools/NMTTools_DEProcessor.hxx +++ b/src/NMTTools/NMTTools_DEProcessor.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_DEProcessor_HeaderFile #define _NMTTools_DEProcessor_HeaderFile diff --git a/src/NMTTools/NMTTools_DEProcessor.ixx b/src/NMTTools/NMTTools_DEProcessor.ixx index 941caff8c..e7f2e54f8 100644 --- a/src/NMTTools/NMTTools_DEProcessor.ixx +++ b/src/NMTTools/NMTTools_DEProcessor.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTTools/NMTTools_DEProcessor.jxx b/src/NMTTools/NMTTools_DEProcessor.jxx index b039537bc..9b5931f0e 100644 --- a/src/NMTTools/NMTTools_DEProcessor.jxx +++ b/src/NMTTools/NMTTools_DEProcessor.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_PaveFiller_HeaderFile #include #endif diff --git a/src/NMTTools/NMTTools_DSFiller.cdl b/src/NMTTools/NMTTools_DSFiller.cdl index 1876b25fe..bf9522076 100644 --- a/src/NMTTools/NMTTools_DSFiller.cdl +++ b/src/NMTTools/NMTTools_DSFiller.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: NMTTools_DSFiller.cdl -- Created: Fri Dec 5 13:57:03 2003 -- Author: Peter KURNEV -- - - +-- class DSFiller from NMTTools ---Purpose: diff --git a/src/NMTTools/NMTTools_DSFiller.cxx b/src/NMTTools/NMTTools_DSFiller.cxx index b46b41c9c..861a72c82 100644 --- a/src/NMTTools/NMTTools_DSFiller.cxx +++ b/src/NMTTools/NMTTools_DSFiller.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_DSFiller.cxx // Created: Fri Dec 5 14:06:34 2003 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/NMTTools/NMTTools_DSFiller.hxx b/src/NMTTools/NMTTools_DSFiller.hxx index 82c9b40c4..2f0064412 100644 --- a/src/NMTTools/NMTTools_DSFiller.hxx +++ b/src/NMTTools/NMTTools_DSFiller.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_DSFiller_HeaderFile #define _NMTTools_DSFiller_HeaderFile diff --git a/src/NMTTools/NMTTools_DSFiller.ixx b/src/NMTTools/NMTTools_DSFiller.ixx index c9b80740a..798cc4a14 100644 --- a/src/NMTTools/NMTTools_DSFiller.ixx +++ b/src/NMTTools/NMTTools_DSFiller.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTTools/NMTTools_DSFiller.jxx b/src/NMTTools/NMTTools_DSFiller.jxx index 3ff0ae84f..b9e272ee0 100644 --- a/src/NMTTools/NMTTools_DSFiller.jxx +++ b/src/NMTTools/NMTTools_DSFiller.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/NMTTools/NMTTools_DataMapIteratorOfDataMapOfIntegerListOfPaveBlock.hxx b/src/NMTTools/NMTTools_DataMapIteratorOfDataMapOfIntegerListOfPaveBlock.hxx index df15c1128..cafca05ea 100644 --- a/src/NMTTools/NMTTools_DataMapIteratorOfDataMapOfIntegerListOfPaveBlock.hxx +++ b/src/NMTTools/NMTTools_DataMapIteratorOfDataMapOfIntegerListOfPaveBlock.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_DataMapIteratorOfDataMapOfIntegerListOfPaveBlock_HeaderFile #define _NMTTools_DataMapIteratorOfDataMapOfIntegerListOfPaveBlock_HeaderFile diff --git a/src/NMTTools/NMTTools_DataMapIteratorOfDataMapOfIntegerListOfPaveBlock_0.cxx b/src/NMTTools/NMTTools_DataMapIteratorOfDataMapOfIntegerListOfPaveBlock_0.cxx index 58c33e1b7..dddb91544 100644 --- a/src/NMTTools/NMTTools_DataMapIteratorOfDataMapOfIntegerListOfPaveBlock_0.cxx +++ b/src/NMTTools/NMTTools_DataMapIteratorOfDataMapOfIntegerListOfPaveBlock_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/NMTTools/NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock.hxx b/src/NMTTools/NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock.hxx index 4c4104183..bd3a90005 100644 --- a/src/NMTTools/NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock.hxx +++ b/src/NMTTools/NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock_HeaderFile #define _NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock_HeaderFile diff --git a/src/NMTTools/NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock_0.cxx b/src/NMTTools/NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock_0.cxx index c863a91b7..3b091cdfc 100644 --- a/src/NMTTools/NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock_0.cxx +++ b/src/NMTTools/NMTTools_DataMapNodeOfDataMapOfIntegerListOfPaveBlock_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/NMTTools/NMTTools_DataMapOfIntegerListOfPaveBlock.hxx b/src/NMTTools/NMTTools_DataMapOfIntegerListOfPaveBlock.hxx index 39dddc5be..4ee635d04 100644 --- a/src/NMTTools/NMTTools_DataMapOfIntegerListOfPaveBlock.hxx +++ b/src/NMTTools/NMTTools_DataMapOfIntegerListOfPaveBlock.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_DataMapOfIntegerListOfPaveBlock_HeaderFile #define _NMTTools_DataMapOfIntegerListOfPaveBlock_HeaderFile diff --git a/src/NMTTools/NMTTools_DataMapOfIntegerListOfPaveBlock_0.cxx b/src/NMTTools/NMTTools_DataMapOfIntegerListOfPaveBlock_0.cxx index a785ad2ee..ba1f46649 100644 --- a/src/NMTTools/NMTTools_DataMapOfIntegerListOfPaveBlock_0.cxx +++ b/src/NMTTools/NMTTools_DataMapOfIntegerListOfPaveBlock_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger.hxx b/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger.hxx index 3823f0edf..3774d3411 100644 --- a/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger.hxx +++ b/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger_HeaderFile #define _NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger_HeaderFile diff --git a/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger_0.cxx b/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger_0.cxx index bddc64d48..7989209e2 100644 --- a/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger_0.cxx +++ b/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfIndexedMapOfInteger_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape.hxx b/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape.hxx index 0caba086b..9b24aa885 100644 --- a/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape.hxx +++ b/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape_HeaderFile #define _NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape_HeaderFile diff --git a/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape_0.cxx b/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape_0.cxx index 40833f09d..628f0b740 100644 --- a/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape_0.cxx +++ b/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapeIndexedMapOfShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock.hxx b/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock.hxx index 7a0a361ee..b89241660 100644 --- a/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock.hxx +++ b/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock_HeaderFile #define _NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock_HeaderFile diff --git a/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock_0.cxx b/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock_0.cxx index f16382ff4..311306e41 100644 --- a/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock_0.cxx +++ b/src/NMTTools/NMTTools_IndexedDataMapNodeOfIndexedDataMapOfShapePaveBlock_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/NMTTools/NMTTools_IndexedDataMapOfIndexedMapOfInteger.hxx b/src/NMTTools/NMTTools_IndexedDataMapOfIndexedMapOfInteger.hxx index b9f696fe2..98cf95b4a 100644 --- a/src/NMTTools/NMTTools_IndexedDataMapOfIndexedMapOfInteger.hxx +++ b/src/NMTTools/NMTTools_IndexedDataMapOfIndexedMapOfInteger.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_IndexedDataMapOfIndexedMapOfInteger_HeaderFile #define _NMTTools_IndexedDataMapOfIndexedMapOfInteger_HeaderFile diff --git a/src/NMTTools/NMTTools_IndexedDataMapOfIndexedMapOfInteger_0.cxx b/src/NMTTools/NMTTools_IndexedDataMapOfIndexedMapOfInteger_0.cxx index 38e7ef10b..4b7aaac90 100644 --- a/src/NMTTools/NMTTools_IndexedDataMapOfIndexedMapOfInteger_0.cxx +++ b/src/NMTTools/NMTTools_IndexedDataMapOfIndexedMapOfInteger_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/NMTTools/NMTTools_IndexedDataMapOfShapeIndexedMapOfShape.hxx b/src/NMTTools/NMTTools_IndexedDataMapOfShapeIndexedMapOfShape.hxx index 2c55162c3..02fbc923c 100644 --- a/src/NMTTools/NMTTools_IndexedDataMapOfShapeIndexedMapOfShape.hxx +++ b/src/NMTTools/NMTTools_IndexedDataMapOfShapeIndexedMapOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_IndexedDataMapOfShapeIndexedMapOfShape_HeaderFile #define _NMTTools_IndexedDataMapOfShapeIndexedMapOfShape_HeaderFile diff --git a/src/NMTTools/NMTTools_IndexedDataMapOfShapeIndexedMapOfShape_0.cxx b/src/NMTTools/NMTTools_IndexedDataMapOfShapeIndexedMapOfShape_0.cxx index c41bc1e2a..f349c91a7 100644 --- a/src/NMTTools/NMTTools_IndexedDataMapOfShapeIndexedMapOfShape_0.cxx +++ b/src/NMTTools/NMTTools_IndexedDataMapOfShapeIndexedMapOfShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/NMTTools/NMTTools_IndexedDataMapOfShapePaveBlock.hxx b/src/NMTTools/NMTTools_IndexedDataMapOfShapePaveBlock.hxx index a13f75903..78ad92772 100644 --- a/src/NMTTools/NMTTools_IndexedDataMapOfShapePaveBlock.hxx +++ b/src/NMTTools/NMTTools_IndexedDataMapOfShapePaveBlock.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_IndexedDataMapOfShapePaveBlock_HeaderFile #define _NMTTools_IndexedDataMapOfShapePaveBlock_HeaderFile diff --git a/src/NMTTools/NMTTools_IndexedDataMapOfShapePaveBlock_0.cxx b/src/NMTTools/NMTTools_IndexedDataMapOfShapePaveBlock_0.cxx index 8e25be569..7266c017e 100644 --- a/src/NMTTools/NMTTools_IndexedDataMapOfShapePaveBlock_0.cxx +++ b/src/NMTTools/NMTTools_IndexedDataMapOfShapePaveBlock_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.cdl b/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.cdl index cc8e02bfe..9be78d98b 100644 --- a/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.cdl +++ b/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: NMTTools_IteratorOfCoupleOfShape.cdl -- Created: Thu Dec 4 16:57:48 2003 -- Author: Peter KURNEV -- - - +-- class IteratorOfCoupleOfShape from NMTTools inherits IteratorOfCoupleOfShape from BOPTools diff --git a/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.cxx b/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.cxx index 181703608..8cf489a9b 100644 --- a/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.cxx +++ b/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_IteratorOfCoupleOfShape.cxx // Created: Thu Dec 4 17:00:03 2003 // Author: Peter KURNEV // - - +// #include #include #include diff --git a/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.hxx b/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.hxx index 81dabc054..67128fb0c 100644 --- a/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.hxx +++ b/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_IteratorOfCoupleOfShape_HeaderFile #define _NMTTools_IteratorOfCoupleOfShape_HeaderFile diff --git a/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.ixx b/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.ixx index 5a5cd42bd..35f563b13 100644 --- a/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.ixx +++ b/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.jxx b/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.jxx index e09e5e92e..b2c3333a3 100644 --- a/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.jxx +++ b/src/NMTTools/NMTTools_IteratorOfCoupleOfShape.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _Standard_NoSuchObject_HeaderFile #include #endif diff --git a/src/NMTTools/NMTTools_ListIteratorOfListOfCommonBlock.hxx b/src/NMTTools/NMTTools_ListIteratorOfListOfCommonBlock.hxx index 25a3784c0..e4d4eb1fd 100644 --- a/src/NMTTools/NMTTools_ListIteratorOfListOfCommonBlock.hxx +++ b/src/NMTTools/NMTTools_ListIteratorOfListOfCommonBlock.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_ListIteratorOfListOfCommonBlock_HeaderFile #define _NMTTools_ListIteratorOfListOfCommonBlock_HeaderFile diff --git a/src/NMTTools/NMTTools_ListIteratorOfListOfCommonBlock_0.cxx b/src/NMTTools/NMTTools_ListIteratorOfListOfCommonBlock_0.cxx index 82d54ddd8..8c92815c1 100644 --- a/src/NMTTools/NMTTools_ListIteratorOfListOfCommonBlock_0.cxx +++ b/src/NMTTools/NMTTools_ListIteratorOfListOfCommonBlock_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoMoreObject_HeaderFile diff --git a/src/NMTTools/NMTTools_ListIteratorOfListOfCoupleOfShape.hxx b/src/NMTTools/NMTTools_ListIteratorOfListOfCoupleOfShape.hxx index 7e6224c4f..dad1e219b 100644 --- a/src/NMTTools/NMTTools_ListIteratorOfListOfCoupleOfShape.hxx +++ b/src/NMTTools/NMTTools_ListIteratorOfListOfCoupleOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_ListIteratorOfListOfCoupleOfShape_HeaderFile #define _NMTTools_ListIteratorOfListOfCoupleOfShape_HeaderFile diff --git a/src/NMTTools/NMTTools_ListIteratorOfListOfCoupleOfShape_0.cxx b/src/NMTTools/NMTTools_ListIteratorOfListOfCoupleOfShape_0.cxx index 6e5da2628..246c8f0e1 100644 --- a/src/NMTTools/NMTTools_ListIteratorOfListOfCoupleOfShape_0.cxx +++ b/src/NMTTools/NMTTools_ListIteratorOfListOfCoupleOfShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoMoreObject_HeaderFile diff --git a/src/NMTTools/NMTTools_ListNodeOfListOfCommonBlock.hxx b/src/NMTTools/NMTTools_ListNodeOfListOfCommonBlock.hxx index 8dbc0e685..ce0b0608e 100644 --- a/src/NMTTools/NMTTools_ListNodeOfListOfCommonBlock.hxx +++ b/src/NMTTools/NMTTools_ListNodeOfListOfCommonBlock.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_ListNodeOfListOfCommonBlock_HeaderFile #define _NMTTools_ListNodeOfListOfCommonBlock_HeaderFile diff --git a/src/NMTTools/NMTTools_ListNodeOfListOfCommonBlock_0.cxx b/src/NMTTools/NMTTools_ListNodeOfListOfCommonBlock_0.cxx index ab8a57f3b..793bcf9ed 100644 --- a/src/NMTTools/NMTTools_ListNodeOfListOfCommonBlock_0.cxx +++ b/src/NMTTools/NMTTools_ListNodeOfListOfCommonBlock_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/NMTTools/NMTTools_ListNodeOfListOfCoupleOfShape.hxx b/src/NMTTools/NMTTools_ListNodeOfListOfCoupleOfShape.hxx index 9aa25f86d..6b54795d2 100644 --- a/src/NMTTools/NMTTools_ListNodeOfListOfCoupleOfShape.hxx +++ b/src/NMTTools/NMTTools_ListNodeOfListOfCoupleOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_ListNodeOfListOfCoupleOfShape_HeaderFile #define _NMTTools_ListNodeOfListOfCoupleOfShape_HeaderFile diff --git a/src/NMTTools/NMTTools_ListNodeOfListOfCoupleOfShape_0.cxx b/src/NMTTools/NMTTools_ListNodeOfListOfCoupleOfShape_0.cxx index 430f82c5f..912f0a39c 100644 --- a/src/NMTTools/NMTTools_ListNodeOfListOfCoupleOfShape_0.cxx +++ b/src/NMTTools/NMTTools_ListNodeOfListOfCoupleOfShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/NMTTools/NMTTools_ListOfCommonBlock.hxx b/src/NMTTools/NMTTools_ListOfCommonBlock.hxx index a3c33aaaa..7e664fd9a 100644 --- a/src/NMTTools/NMTTools_ListOfCommonBlock.hxx +++ b/src/NMTTools/NMTTools_ListOfCommonBlock.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_ListOfCommonBlock_HeaderFile #define _NMTTools_ListOfCommonBlock_HeaderFile diff --git a/src/NMTTools/NMTTools_ListOfCommonBlock_0.cxx b/src/NMTTools/NMTTools_ListOfCommonBlock_0.cxx index 68839bedd..160550ecb 100644 --- a/src/NMTTools/NMTTools_ListOfCommonBlock_0.cxx +++ b/src/NMTTools/NMTTools_ListOfCommonBlock_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/NMTTools/NMTTools_ListOfCoupleOfShape.hxx b/src/NMTTools/NMTTools_ListOfCoupleOfShape.hxx index 2ba0b324c..27a971107 100644 --- a/src/NMTTools/NMTTools_ListOfCoupleOfShape.hxx +++ b/src/NMTTools/NMTTools_ListOfCoupleOfShape.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_ListOfCoupleOfShape_HeaderFile #define _NMTTools_ListOfCoupleOfShape_HeaderFile diff --git a/src/NMTTools/NMTTools_ListOfCoupleOfShape_0.cxx b/src/NMTTools/NMTTools_ListOfCoupleOfShape_0.cxx index 3251491ef..3861f4069 100644 --- a/src/NMTTools/NMTTools_ListOfCoupleOfShape_0.cxx +++ b/src/NMTTools/NMTTools_ListOfCoupleOfShape_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/NMTTools/NMTTools_MapIteratorOfMapOfPaveBlock.hxx b/src/NMTTools/NMTTools_MapIteratorOfMapOfPaveBlock.hxx index d53253da9..c00274562 100644 --- a/src/NMTTools/NMTTools_MapIteratorOfMapOfPaveBlock.hxx +++ b/src/NMTTools/NMTTools_MapIteratorOfMapOfPaveBlock.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_MapIteratorOfMapOfPaveBlock_HeaderFile #define _NMTTools_MapIteratorOfMapOfPaveBlock_HeaderFile diff --git a/src/NMTTools/NMTTools_MapIteratorOfMapOfPaveBlock_0.cxx b/src/NMTTools/NMTTools_MapIteratorOfMapOfPaveBlock_0.cxx index c3dd9b330..d22f3ace7 100644 --- a/src/NMTTools/NMTTools_MapIteratorOfMapOfPaveBlock_0.cxx +++ b/src/NMTTools/NMTTools_MapIteratorOfMapOfPaveBlock_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/NMTTools/NMTTools_MapOfPaveBlock.hxx b/src/NMTTools/NMTTools_MapOfPaveBlock.hxx index f7db910f2..6dc17138f 100644 --- a/src/NMTTools/NMTTools_MapOfPaveBlock.hxx +++ b/src/NMTTools/NMTTools_MapOfPaveBlock.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_MapOfPaveBlock_HeaderFile #define _NMTTools_MapOfPaveBlock_HeaderFile diff --git a/src/NMTTools/NMTTools_MapOfPaveBlock_0.cxx b/src/NMTTools/NMTTools_MapOfPaveBlock_0.cxx index 5b8574f39..c2efd4b3b 100644 --- a/src/NMTTools/NMTTools_MapOfPaveBlock_0.cxx +++ b/src/NMTTools/NMTTools_MapOfPaveBlock_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_DomainError_HeaderFile diff --git a/src/NMTTools/NMTTools_PCurveMaker.cdl b/src/NMTTools/NMTTools_PCurveMaker.cdl index b4babb82f..a32211778 100644 --- a/src/NMTTools/NMTTools_PCurveMaker.cdl +++ b/src/NMTTools/NMTTools_PCurveMaker.cdl @@ -1,27 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: NMTTools_PCurveMaker.cdl -- Created: -- Author: Peter KURNEV -- - +-- class PCurveMaker from NMTTools ---Purpose: diff --git a/src/NMTTools/NMTTools_PCurveMaker.cxx b/src/NMTTools/NMTTools_PCurveMaker.cxx index e39b05bf6..91a8bc14c 100644 --- a/src/NMTTools/NMTTools_PCurveMaker.cxx +++ b/src/NMTTools/NMTTools_PCurveMaker.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_PCurveMaker.cxx // Created: // Author: Peter KURNEV // - - +// #include #include diff --git a/src/NMTTools/NMTTools_PCurveMaker.hxx b/src/NMTTools/NMTTools_PCurveMaker.hxx index ca0b3f248..25e94667a 100644 --- a/src/NMTTools/NMTTools_PCurveMaker.hxx +++ b/src/NMTTools/NMTTools_PCurveMaker.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_PCurveMaker_HeaderFile #define _NMTTools_PCurveMaker_HeaderFile diff --git a/src/NMTTools/NMTTools_PCurveMaker.ixx b/src/NMTTools/NMTTools_PCurveMaker.ixx index 3a2ac54d6..2b0b74625 100644 --- a/src/NMTTools/NMTTools_PCurveMaker.ixx +++ b/src/NMTTools/NMTTools_PCurveMaker.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTTools/NMTTools_PCurveMaker.jxx b/src/NMTTools/NMTTools_PCurveMaker.jxx index 46c9c270f..edf46c82d 100644 --- a/src/NMTTools/NMTTools_PCurveMaker.jxx +++ b/src/NMTTools/NMTTools_PCurveMaker.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_PCurveMaker_HeaderFile #include #endif diff --git a/src/NMTTools/NMTTools_PDSFiller.hxx b/src/NMTTools/NMTTools_PDSFiller.hxx index cfc95a0fa..abffc2acd 100644 --- a/src/NMTTools/NMTTools_PDSFiller.hxx +++ b/src/NMTTools/NMTTools_PDSFiller.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_PDSFiller_HeaderFile #define _NMTTools_PDSFiller_HeaderFile diff --git a/src/NMTTools/NMTTools_PPaveFiller.hxx b/src/NMTTools/NMTTools_PPaveFiller.hxx index 116c108ef..0d373a0a4 100644 --- a/src/NMTTools/NMTTools_PPaveFiller.hxx +++ b/src/NMTTools/NMTTools_PPaveFiller.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_PPaveFiller_HeaderFile #define _NMTTools_PPaveFiller_HeaderFile diff --git a/src/NMTTools/NMTTools_PaveFiller.cdl b/src/NMTTools/NMTTools_PaveFiller.cdl index ca5202204..0a79bf1df 100644 --- a/src/NMTTools/NMTTools_PaveFiller.cdl +++ b/src/NMTTools/NMTTools_PaveFiller.cdl @@ -1,28 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- -- File: NMTTools_PaveFiller.cdl -- Created: Fri Dec 5 14:35:00 2003 -- Author: Peter KURNEV -- - - +-- class PaveFiller from NMTTools ---Purpose: diff --git a/src/NMTTools/NMTTools_PaveFiller.cxx b/src/NMTTools/NMTTools_PaveFiller.cxx index 236a077dc..cbac88266 100644 --- a/src/NMTTools/NMTTools_PaveFiller.cxx +++ b/src/NMTTools/NMTTools_PaveFiller.cxx @@ -1,21 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_PaveFiller.cxx // Created: Fri Dec 5 14:58:54 2003 diff --git a/src/NMTTools/NMTTools_PaveFiller.hxx b/src/NMTTools/NMTTools_PaveFiller.hxx index 35b23a61d..6269aa77d 100644 --- a/src/NMTTools/NMTTools_PaveFiller.hxx +++ b/src/NMTTools/NMTTools_PaveFiller.hxx @@ -1,24 +1,24 @@ -// File generated by CPPExt (Value) +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 1991 - 2000 by -// Matra Datavision SA. All rights reserved. -// -// Copyright (C) 2001 - 2004 by -// Open CASCADE SA. All rights reserved. -// -// This file is part of the Open CASCADE Technology software. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// This software may be distributed and/or modified under the terms and -// conditions of the Open CASCADE Public License as defined by Open CASCADE SA -// and appearing in the file LICENSE included in the packaging of this file. -// -// This software is distributed on an "AS IS" basis, without warranty of any -// kind, and Open CASCADE SA hereby disclaims all such warranties, -// including without limitation, any warranties of merchantability, fitness -// for a particular purpose or non-infringement. Please see the License for -// the specific terms and conditions governing rights and limitations under the -// License. - #ifndef _NMTTools_PaveFiller_HeaderFile #define _NMTTools_PaveFiller_HeaderFile diff --git a/src/NMTTools/NMTTools_PaveFiller.ixx b/src/NMTTools/NMTTools_PaveFiller.ixx index a07e7b69a..210065e01 100644 --- a/src/NMTTools/NMTTools_PaveFiller.ixx +++ b/src/NMTTools/NMTTools_PaveFiller.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTTools/NMTTools_PaveFiller.jxx b/src/NMTTools/NMTTools_PaveFiller.jxx index 1c7e98a59..ec28fecac 100644 --- a/src/NMTTools/NMTTools_PaveFiller.jxx +++ b/src/NMTTools/NMTTools_PaveFiller.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/NMTTools/NMTTools_PaveFiller_0.cxx b/src/NMTTools/NMTTools_PaveFiller_0.cxx index 6a355d3df..7a787ebac 100644 --- a/src/NMTTools/NMTTools_PaveFiller_0.cxx +++ b/src/NMTTools/NMTTools_PaveFiller_0.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_PaveFiller_0.cxx // Created: Mon Dec 8 11:45:51 2003 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/NMTTools/NMTTools_PaveFiller_1.cxx b/src/NMTTools/NMTTools_PaveFiller_1.cxx index d4cca964a..8685855c0 100644 --- a/src/NMTTools/NMTTools_PaveFiller_1.cxx +++ b/src/NMTTools/NMTTools_PaveFiller_1.cxx @@ -1,27 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_PaveFiller_1.cxx // Created: Mon Dec 8 11:47:55 2003 // Author: Peter KURNEV // - +// #include #include diff --git a/src/NMTTools/NMTTools_PaveFiller_2.cxx b/src/NMTTools/NMTTools_PaveFiller_2.cxx index 4c3c9ed33..e400245ca 100644 --- a/src/NMTTools/NMTTools_PaveFiller_2.cxx +++ b/src/NMTTools/NMTTools_PaveFiller_2.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_PaveFiller_2.cxx // Created: Mon Dec 8 12:02:56 2003 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/NMTTools/NMTTools_PaveFiller_3.cxx b/src/NMTTools/NMTTools_PaveFiller_3.cxx index ca458c329..039cbbc1b 100644 --- a/src/NMTTools/NMTTools_PaveFiller_3.cxx +++ b/src/NMTTools/NMTTools_PaveFiller_3.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_PaveFiller_3.cxx // Created: Mon Dec 8 16:06:56 2003 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/NMTTools/NMTTools_PaveFiller_4.cxx b/src/NMTTools/NMTTools_PaveFiller_4.cxx index 2c1d50e26..f16ced3ab 100644 --- a/src/NMTTools/NMTTools_PaveFiller_4.cxx +++ b/src/NMTTools/NMTTools_PaveFiller_4.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_PaveFiller_4.cxx // Created: Mon Dec 8 17:08:58 2003 // Author: Peter KURNEV // - - +// #include // #include diff --git a/src/NMTTools/NMTTools_PaveFiller_5.cxx b/src/NMTTools/NMTTools_PaveFiller_5.cxx index 01ec5e0bb..abcace893 100644 --- a/src/NMTTools/NMTTools_PaveFiller_5.cxx +++ b/src/NMTTools/NMTTools_PaveFiller_5.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_PaveFiller_5.cxx // Created: Mon Dec 15 11:28:33 2003 // Author: Peter KURNEV // - - +// #include #include @@ -98,16 +99,18 @@ static //======================================================================= void NMTTools_PaveFiller::PerformEF() { - myIsDone=Standard_False; - - Standard_Integer n1, n2, anIndexIn=0, nE, nF, aNbEFs, aBlockLength; Standard_Boolean bJustAdd; - Standard_Real aTolE, aTolF, aDeflection=0.01; - Standard_Integer aDiscretize=35; + Standard_Integer n1, n2, anIndexIn, nE, nF, aNbEFs, aBlockLength; + Standard_Integer aDiscretize; + Standard_Real aTolE, aTolF, aDeflection; BooleanOperations_IndexedDataMapOfShapeInteger aMapVI; BOPTools_IDMapOfPaveBlockIMapOfInteger aMapCB; BOPTools_IMapOfPaveBlock aIMPBx; // + myIsDone=Standard_False; + aDeflection=0.01; + aDiscretize=35; + // BOPTools_CArray1OfESInterference& aEFs=myIP->ESInterferences(); // myDSIt->Initialize(TopAbs_EDGE, TopAbs_FACE); @@ -121,11 +124,12 @@ static // for (; myDSIt->More(); myDSIt->Next()) { myDSIt->Current(n1, n2, bJustAdd); - anIndexIn = 0; // - //if (myIntrPool->IsComputed(n1, n2)) { - // continue; - //} + if(bJustAdd) { + continue; + } + // + anIndexIn = 0; // nE=n1; nF=n2; @@ -133,44 +137,29 @@ static nE=n2; nF=n1; } - //SortTypes(nE, nF); // // all Common Blocks for face nF - //XXX NMTTools_ListOfCommonBlock aLCBF; CommonBlocksFace(nF, aLCBF); NMTTools_CommonBlockAPI aCBAPIF(aLCBF); - //XXX - if(bJustAdd) { - //myIntrPool->AddInterference (nE, nF, BooleanOperations_EdgeSurface, anIndexIn); - continue; - } + // // Edge - const TopoDS_Edge aE=TopoDS::Edge(myDS->GetShape(nE));//mpv + const TopoDS_Edge aE=TopoDS::Edge(myDS->Shape(nE)); if (BRep_Tool::Degenerated(aE)){ continue; } + // // Face - const TopoDS_Face aF=TopoDS::Face(myDS->GetShape(nF));//mpv + const TopoDS_Face aF=TopoDS::Face(myDS->Shape(nF)); // - // Modified - // to avoid intersection between face and edge from that face - // Thu Sep 14 14:35:18 2006 - // Contribution of Samtech www.samcef.com BEGIN TopTools_IndexedMapOfShape aME; - // TopExp::MapShapes(aF, TopAbs_EDGE, aME); if (aME.Contains(aE)) { continue; } - // Contribution of Samtech www.samcef.com END // aTolF=BRep_Tool::Tolerance(aF); - - // Modified Thu Sep 14 14:35:18 2006 - // Contribution of Samtech www.samcef.com BEGIN aTolE=BRep_Tool::Tolerance(aE); - // Contribution of Samtech www.samcef.com END const Bnd_Box& aBBF=myDS->GetBoundingBox(nF); // @@ -180,14 +169,13 @@ static BOPTools_ListIteratorOfListOfPaveBlock anIt(aLPB); for (; anIt.More(); anIt.Next()) { BOPTools_PaveBlock& aPB=anIt.Value(); - //XXX if (aCBAPIF.IsCommonBlock(aPB)) { continue; } - //XXX + // const IntTools_ShrunkRange& aShrunkRange=aPB.ShrunkRange(); const IntTools_Range& aSR =aShrunkRange.ShrunkRange(); - const Bnd_Box& aBBE=aShrunkRange.BndBox(); + const Bnd_Box& aBBE=aShrunkRange.BndBox(); // if (aBBF.IsOut (aBBE)) { continue; @@ -213,17 +201,21 @@ static aEF.Perform(); // if (aEF.IsDone()) { - const IntTools_SequenceOfCommonPrts& aCPrts=aEF.CommonParts(); + Standard_Boolean bCoinsideFlag; Standard_Integer i, aNbCPrts; + TopAbs_ShapeEnum aType; + // + const IntTools_SequenceOfCommonPrts& aCPrts=aEF.CommonParts(); + // aNbCPrts=aCPrts.Length(); - for (i=1; i<=aNbCPrts; i++) { - // + for (i=1; i<=aNbCPrts; ++i) { anIndexIn=0; // const IntTools_CommonPrt& aCPart=aCPrts(i); - TopAbs_ShapeEnum aType=aCPart.Type(); + aType=aCPart.Type(); + // switch (aType) { - + // case TopAbs_VERTEX: { Standard_Boolean bIsOnPave1, bIsOnPave2; Standard_Integer nVF; @@ -238,7 +230,6 @@ static // //decide to add pave or not aTolToDecide=5.e-8; - // bIsOnPave1=IsOnPave(anewSR.First(), aR, aTolToDecide); bIsOnPave2=IsOnPave(anewSR.Last() , aR, aTolToDecide); // @@ -253,24 +244,27 @@ static // aMapVI.Add(aNewVertex, anIndexIn); aIMPBx.Add(aPB); - // qqf - { - myIP->Add(nE, nF, Standard_True, NMTDS_TI_EF); - } - // qqt + // + myIP->Add(nE, nF, Standard_True, NMTDS_TI_EF); // }// if (!nVF) }// if (!bIsOnPave1 && !bIsOnPave2) - //myIntrPool->AddInterference (nE, nF, BooleanOperations_EdgeSurface, anIndexIn); + // + //modified by NIZNHY-PKV Fri Apr 18 10:55:38 2008f + else { + const BOPTools_Pave& aPave=(bIsOnPave1)? aPB.Pave1() : aPB.Pave2(); + nVF=aPave.Index(); + const TopoDS_Vertex& aVF=TopoDS::Vertex(myDS->Shape(nVF)); + BOPTools_Tools::UpdateVertex (aVF, aNewVertex); + } + //modified by NIZNHY-PKV Fri Apr 18 10:55:40 2008t + // }// case TopAbs_VERTEX: break; // case TopAbs_EDGE: { - Standard_Boolean aCoinsideFlag; - // - aCoinsideFlag=BOPTools_Tools::IsBlockInOnFace(aPB, aF, myContext); - if (!aCoinsideFlag) { - //myIntrPool->AddInterference (nE, nF, BooleanOperations_EdgeSurface, anIndexIn); + bCoinsideFlag=BOPTools_Tools::IsBlockInOnFace(aPB, aF, myContext); + if (!bCoinsideFlag) { break; } // @@ -284,12 +278,9 @@ static aMapF.Add(nF); aMapCB.Add(aPB, aMapF); } + // aIMPBx.Add(aPB); - // qqf - { - myIP->Add(nE, nF, Standard_True, NMTDS_TI_EF); - } - // qqt + myIP->Add(nE, nF, Standard_True, NMTDS_TI_EF); }// case TopAbs_EDGE: break; @@ -343,12 +334,12 @@ static // function:EFCommonBlocks // purpose: //======================================================================= - void NMTTools_PaveFiller::EFCommonBlocks(const BOPTools_IDMapOfPaveBlockIMapOfInteger& aMapCB) + void NMTTools_PaveFiller::EFCommonBlocks + (const BOPTools_IDMapOfPaveBlockIMapOfInteger& aMapCB) { Standard_Integer i, aNbPB, nE, j, aNbF, nF; // aNbPB=aMapCB.Extent(); - // for (i=1; i<=aNbPB; ++i) { const BOPTools_PaveBlock& aPB=aMapCB.FindKey(i); const TColStd_IndexedMapOfInteger& aMapF=aMapCB.FindFromIndex(i); @@ -382,7 +373,8 @@ static // function:EFNewVertices // purpose: //======================================================================= - void NMTTools_PaveFiller::EFNewVertices (const BooleanOperations_IndexedDataMapOfShapeInteger& aMapVI) + void NMTTools_PaveFiller::EFNewVertices + (const BooleanOperations_IndexedDataMapOfShapeInteger& aMapVI) { Standard_Integer i, j, aNb, aNewShape, aFlag, iX, aNbVV, aNbSimple; Standard_Integer aWhat, aWith, nE, nF, nV, aNbIEF, aNbEdges, iTmp; @@ -395,14 +387,13 @@ static BooleanOperations_AncestorsSeqAndSuccessorsSeq anASSeq; TopTools_IndexedMapOfShape aMNVComplex, aMNVSimple; // - BOPTools_CArray1OfESInterference& aEFs=myIP->ESInterferences(); - // aNb=aMapVI.Extent(); - // if (!aNb) { // no new vertices, no new problems return; } // + BOPTools_CArray1OfESInterference& aEFs=myIP->ESInterferences(); + // // 0. if (aNb==1) { aNewVertex=TopoDS::Vertex(aMapVI.FindKey(1)); @@ -425,12 +416,9 @@ static // tPF.Init(); tPF.PerformVV(); - //tPF.PerformNewVertices(); qq // NMTDS_ShapesDataStructure& tDS=*(tPF.DS()); - //const BOPTools_InterferencePool& tInterfPool=*(tPF.InterfPool()); NMTDS_InterfPool& tInterfPool=*(tPF.IP()); - //const BOPTools_CArray1OfVVInterference& aVVInterfs=tInterfPool.VVInterfs(); BOPTools_CArray1OfVVInterference& aVVInterfs=tInterfPool.VVInterferences(); // // 3. Separate Comlex and Simple new vertices @@ -486,7 +474,7 @@ static iX=aMapVI.FindFromKey(aV1); const BOPTools_ESInterference& aEF1=aEFs(iX); aEF1.Indices(nE, nF); - //SortTypes(nE, nF); + // if (myDS->GetShapeType(nF)==TopAbs_EDGE) { iTmp=nE; nE=nF; @@ -499,7 +487,7 @@ static iX=aMapVI.FindFromKey(aV2); const BOPTools_ESInterference& aEF2=aEFs(iX); aEF2.Indices(nE, nF); - //SortTypes(nE, nF); + // if (myDS->GetShapeType(nF)==TopAbs_EDGE) { iTmp=nE; nE=nF; @@ -507,7 +495,8 @@ static } aME.Add(nE); aMIEF.Add(iX); - } + }// for (i=1; i<=aNb; ++i) { + // // 4. Process new vertices aNb=aMNVE.Extent(); for (i=1; i<=aNb; ++i) { // xx @@ -555,8 +544,9 @@ static // function:EFNewVertices // purpose: //======================================================================= - void NMTTools_PaveFiller::EFNewVertices (const TopoDS_Vertex& aNewVertex, - const BooleanOperations_IndexedDataMapOfShapeInteger& aMapVI) + void NMTTools_PaveFiller::EFNewVertices + (const TopoDS_Vertex& aNewVertex, + const BooleanOperations_IndexedDataMapOfShapeInteger& aMapVI) { Standard_Integer i, aNewShape, nE, nF; Standard_Real aT; @@ -569,13 +559,13 @@ static myDS->InsertShapeAndAncestorsSuccessors(aNewVertex, anASSeq); aNewShape=myDS->NumberOfInsertedShapes(); myDS->SetState (aNewShape, BooleanOperations_ON); + // // Insert New Vertex in EFInterference i=aMapVI.FindFromKey(aNewVertex); BOPTools_ESInterference& aEFInterf= aEFs(i); aEFInterf.SetNewShape(aNewShape); // Extract interference info aEFInterf.Indices(nE, nF); - //SortTypes(nE, nF); if (myDS->GetShapeType(nF)==TopAbs_EDGE) { nE=nF; } @@ -596,15 +586,17 @@ static // function: CheckFacePaves // purpose: //======================================================================= - Standard_Integer NMTTools_PaveFiller::CheckFacePaves (const TopoDS_Vertex& aNewVertex, - const Standard_Integer nF) + Standard_Integer NMTTools_PaveFiller::CheckFacePaves + (const TopoDS_Vertex& aNewVertex, + const Standard_Integer nF) { - Standard_Integer nEF, nVF, iFlag, i, aNbV; + Standard_Integer nEF, nVF, iFlag, i, aNbV, iRet; BOPTools_ListIteratorOfListOfPave anIt; TColStd_IndexedMapOfInteger aMVF; - // - BooleanOperations_OnceExplorer aExp(*myDS); // + iRet=0; + // + BooleanOperations_OnceExplorer aExp(*myDS); aExp.Init(nF, TopAbs_EDGE); for (; aExp.More(); aExp.Next()) { nEF=aExp.Current(); @@ -621,15 +613,14 @@ static aNbV=aMVF.Extent(); for (i=1; i<=aNbV; ++i) { nVF=aMVF(i); - const TopoDS_Vertex aVF=TopoDS::Vertex(myDS->Shape(nVF));//mpv + const TopoDS_Vertex aVF=TopoDS::Vertex(myDS->Shape(nVF)); iFlag=IntTools_Tools::ComputeVV(aNewVertex, aVF); if (!iFlag) { return nVF; } } - return 0; + return iRet; } - // //======================================================================= // function: VertexParameter @@ -640,7 +631,6 @@ void VertexParameter(const IntTools_CommonPrt& aCPart, { const IntTools_Range& aR=aCPart.Range1(); aT=0.5*(aR.First()+aR.Last()); - // if((aCPart.VertexParameter1() >= aR.First()) && (aCPart.VertexParameter1() <= aR.Last())) { aT = aCPart.VertexParameter1(); @@ -663,6 +653,7 @@ Standard_Boolean IsOnPave(const Standard_Real& aTR, if (bIsOnPave) { return bIsOnPave; } + // dT1=Abs(aTR-aT1); dT2=Abs(aTR-aT2); bIsOnPave=(dT1<=aTolerance || dT2<=aTolerance); diff --git a/src/NMTTools/NMTTools_PaveFiller_6.cxx b/src/NMTTools/NMTTools_PaveFiller_6.cxx index 90b631205..e55e4dff4 100644 --- a/src/NMTTools/NMTTools_PaveFiller_6.cxx +++ b/src/NMTTools/NMTTools_PaveFiller_6.cxx @@ -1,30 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // // IMPROVED by NIZNHY-PKV Thu Oct 12 16:03:33 2006 -// -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// // File: NMTTools_PaveFiller_6.cxx // Created: Fri Dec 19 10:27:31 2003 // Author: Peter KURNEV // - +// #include #include @@ -77,11 +77,6 @@ #include #include -//#include -//#include -//#include -//#include -//#include #include #include @@ -105,19 +100,13 @@ #include #include -// Modified Thu Sep 14 14:35:18 2006 -// Contribution of Samtech www.samcef.com BEGIN static void SharedEdges1(const TopoDS_Face& aF1, const TopoDS_Face& aF2, TopTools_ListOfShape& aLS); -// Contribution of Samtech www.samcef.com END - -//modified by NIZNHY-PKV Mon Dec 4 12:56:04 2006f static Standard_Boolean IsMicroEdge(const TopoDS_Edge& aE, IntTools_Context& aCtx); -//modified by NIZNHY-PKV Mon Dec 4 12:56:08 2006t //======================================================================= // function: PerformFF @@ -152,11 +141,6 @@ static for (; myDSIt->More(); myDSIt->Next()) { myDSIt->Current(n1, n2, bJustAdd); // - //bIsComputed=myIntrPool->IsComputed(n1, n2); - //if (bIsComputed) { - // continue; - //} - // nF1 = n2; nF2 = n1; if(n1 < n2) { @@ -167,21 +151,6 @@ static aPnts.Clear(); aCvs.Clear(); // - /* - bIsFound=IsPairFound(nF1, nF2, myIntrPool, aMapWhat, aMapWith); - if (bJustAdd) { - if (!bIsFound) { - myIntrPool->AddInterference (nF1, nF2, aTypeFF, anIndexIn); - } - else{ - BOPTools_SSInterference anInterf (nF1, nF2, 1.e-07, 1.e-07, aCvs, aPnts); - anIndexIn=aFFs.Append(anInterf); - myIntrPool->AddInterference (nF1, nF2, aTypeFF, anIndexIn); - } - continue; - } - */ - // const TopoDS_Face aF1=TopoDS::Face(myDS->Shape(nF1));//mpv const TopoDS_Face aF2=TopoDS::Face(myDS->Shape(nF2));//mpv // @@ -233,14 +202,12 @@ static if (!aNbCurves && !aNbPoints) { BOPTools_SSInterference anInterf (nF1, nF2, 1.e-07, 1.e-07, aCvs, aPnts); anIndexIn=aFFs.Append(anInterf); - //myIntrPool->AddInterference (nF1, nF2, aTypeFF, anIndexIn); continue; } // { BOPTools_SSInterference anInterf (nF1, nF2, aTolR3D, aTolR2D, aCvsX, aPntsX); anIndexIn=aFFs.Append(anInterf); - //myIntrPool->AddInterference (nF1, nF2, aTypeFF, anIndexIn); } // }// for (; myDSIt.More(); myDSIt.Next()) @@ -255,11 +222,7 @@ static { myIsDone=Standard_False; // - // Modified Thu Sep 14 14:35:18 2006 - // Contribution of Samtech www.samcef.com BEGIN Standard_Boolean bIsExistingPaveBlock, bIsValidIn2D, bIsCoincided; - // Contribution of Samtech www.samcef.com END - // Standard_Boolean bIsMicroEdge, bHasES; Standard_Integer i, aNbFFs, nF1, nF2, aBid=0; Standard_Integer nV1, nV2, j, aNbCurves; @@ -826,8 +789,6 @@ static BOPTools_Tools2D::BuildPCurveForEdgeOnFace(aE, aF2FWD); } } - // - //modified by NIZNHY-PKV Fri Mar 23 10:35:02 2007f // Check common blocks between edges and faces // Build P-Curves if they were not built in previos block. // @@ -878,7 +839,6 @@ static } // for (; aItCB.More(); aItCB.Next()) { }//if (aS.ShapeType()==TopAbs_EDGE) { } - //modified by NIZNHY-PKV Fri Mar 23 10:35:13 2007t } //======================================================================= // function: IsExistingPaveBlock @@ -921,6 +881,7 @@ static { Standard_Boolean bFlag; Standard_Integer aNbSE, iC; + Standard_Real aTolE, aTol; TopTools_ListIteratorOfListOfShape anIt; // bFlag=Standard_False; @@ -933,7 +894,15 @@ static anIt.Initialize(aLSE); for (; anIt.More(); anIt.Next()) { const TopoDS_Edge& aE=TopoDS::Edge(anIt.Value()); - iC=CheckIntermediatePoint(aPBNew, aE, aTolR3D); + //modified by NIZNHY-PKV Mon Nov 17 09:54:43 2008f //0019974 + aTolE=BRep_Tool::Tolerance(aE); + aTol=aTolR3D; + if (aTolE>aTol) { + aTol=aTolE; + } + iC=CheckIntermediatePoint(aPBNew, aE, aTol); + //iC=CheckIntermediatePoint(aPBNew, aE, aTolR3D); + //modified by NIZNHY-PKV Mon Nov 17 09:54:45 2008t if (!iC) { return !bFlag; } @@ -1189,8 +1158,6 @@ static ///////////// -// Modified Thu Sep 14 14:35:18 2006 -// Contribution of Samtech www.samcef.com BEGIN //======================================================================= //function : SharedEdges1 //purpose : @@ -1334,10 +1301,7 @@ void SharedEdges1(const TopoDS_Face& aF1, bRet=(Standard_Boolean)(iCount>iCountExt); return bRet; } -// -// Contribution of Samtech www.samcef.com END -//modified by NIZNHY-PKV Mon Dec 4 12:30:38 2006f use_01 //======================================================================= //function : IsMicroEdge //purpose : @@ -1376,139 +1340,3 @@ Standard_Boolean IsMicroEdge(const TopoDS_Edge& aE, // return bRet; } -//modified by NIZNHY-PKV Mon Dec 4 12:55:50 2006t -/* -static - Standard_Boolean IsPairFound(const Standard_Integer nF1, - const Standard_Integer nF2, - BOPTools_InterferencePool* myIntrPool, - BOPTColStd_IndexedDataMapOfIntegerIndexedMapOfInteger& aMapWhat, - BOPTColStd_IndexedDataMapOfIntegerIndexedMapOfInteger& aMapWith); - -static - void FMapWhat(const Standard_Integer nF, - BOPTools_InterferencePool* myIntrPool, - TColStd_IndexedMapOfInteger& aMapWhat); -static - void FMapWith(const Standard_Integer nF, - BOPTools_InterferencePool* myIntrPool, - TColStd_IndexedMapOfInteger& aMapWith); -static - Standard_Boolean IsFound(const TColStd_IndexedMapOfInteger& aMapWhat, - const TColStd_IndexedMapOfInteger& aMapWith); - -//======================================================================= -// function: IsPairFound -// purpose: -//======================================================================= -Standard_Boolean IsPairFound(const Standard_Integer nF1, - const Standard_Integer nF2, - BOPTools_InterferencePool* myIntrPool, - BOPTColStd_IndexedDataMapOfIntegerIndexedMapOfInteger& aMapWhat, - BOPTColStd_IndexedDataMapOfIntegerIndexedMapOfInteger& aMapWith) -{ - Standard_Boolean bIsFound; - // - if (!aMapWhat.Contains(nF1)) { - TColStd_IndexedMapOfInteger aMWhat; - FMapWhat(nF1, myIntrPool, aMWhat); - aMapWhat.Add(nF1, aMWhat); - } - // - if (!aMapWith.Contains(nF2)) { - TColStd_IndexedMapOfInteger aMWith; - FMapWith(nF2, myIntrPool, aMWith); - aMapWith.Add(nF2, aMWith); - } - // - const TColStd_IndexedMapOfInteger& aMWht=aMapWhat.FindFromKey(nF1); - const TColStd_IndexedMapOfInteger& aMWit=aMapWith.FindFromKey(nF2); - // - bIsFound=IsFound(aMWht, aMWit); - // - return bIsFound; -} -//======================================================================= -// function: FMapWhat -// purpose: -//======================================================================= -void FMapWhat(const Standard_Integer nF, - BOPTools_InterferencePool* myIntrPool, - TColStd_IndexedMapOfInteger& aMapWhat) - -{ - Standard_Integer nE, nV; - // - BooleanOperations_ShapesDataStructure* myDS=myIntrPool->DS(); - BooleanOperations_OnceExplorer aExp(*myDS); - // - // What - aMapWhat.Add(nF); - aExp.Init(nF, TopAbs_VERTEX); - for (; aExp.More(); aExp.Next()) { - nV=aExp.Current(); - aMapWhat.Add(nV); - } - // - aExp.Init(nF, TopAbs_EDGE); - for (; aExp.More(); aExp.Next()) { - nE=aExp.Current(); - aMapWhat.Add(nE); - } -} -//======================================================================= -// function: FMapWith -// purpose: -//======================================================================= -void FMapWith(const Standard_Integer nF, - BOPTools_InterferencePool* myIntrPool, - TColStd_IndexedMapOfInteger& aMapWith) -{ - TColStd_IndexedMapOfInteger aMapWhat; - - FMapWhat(nF, myIntrPool, aMapWhat); - // - // With - Standard_Integer i, aNb, anIndex, aWhat, aWith; - BOPTools_ListIteratorOfListOfInterference anIt; - - const BOPTools_CArray1OfInterferenceLine& anArrIL= myIntrPool->InterferenceTable(); - - aNb=aMapWhat.Extent(); - for (i=1; i<=aNb; i++) { - aWhat=aMapWhat(i); - - const BOPTools_InterferenceLine& aWithLine=anArrIL(aWhat); - - const BOPTools_ListOfInterference& aLI=aWithLine.List(); - anIt.Initialize(aLI); - for (; anIt.More(); anIt.Next()) { - const BOPTools_Interference& anIntf=anIt.Value(); - anIndex=anIntf.Index(); - if (anIndex) { - aWith=anIntf.With(); - aMapWith.Add(aWith); - } - } - } -} -//======================================================================= -// function: IsFound -// purpose: -//======================================================================= -Standard_Boolean IsFound(const TColStd_IndexedMapOfInteger& aMapWhat, - const TColStd_IndexedMapOfInteger& aMapWith) -{ - Standard_Boolean bFlag=Standard_False; - Standard_Integer i, aNb, aWhat; - - aNb=aMapWhat.Extent(); - for (i=1; i<=aNb; i++) { - aWhat=aMapWhat(i); - if (aMapWith.Contains(aWhat)) { - return !bFlag; - } - } - return bFlag; -} -*/ diff --git a/src/NMTTools/NMTTools_PaveFiller_7.cxx b/src/NMTTools/NMTTools_PaveFiller_7.cxx index ef23a7e29..86f232ad3 100644 --- a/src/NMTTools/NMTTools_PaveFiller_7.cxx +++ b/src/NMTTools/NMTTools_PaveFiller_7.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_PaveFiller_7.cxx // Created: Thu Dec 18 15:14:55 2003 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/NMTTools/NMTTools_PaveFiller_8.cxx b/src/NMTTools/NMTTools_PaveFiller_8.cxx index 6d7a77c1b..734d415e5 100644 --- a/src/NMTTools/NMTTools_PaveFiller_8.cxx +++ b/src/NMTTools/NMTTools_PaveFiller_8.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_PaveFiller_8.cxx // Created: Fri Dec 19 11:15:53 2003 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/NMTTools/NMTTools_PaveFiller_9.cxx b/src/NMTTools/NMTTools_PaveFiller_9.cxx index 090e6f2da..e0b2a3fc7 100644 --- a/src/NMTTools/NMTTools_PaveFiller_9.cxx +++ b/src/NMTTools/NMTTools_PaveFiller_9.cxx @@ -1,27 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_PaveFiller_9.cxx // Created: Fri Dec 19 11:15:53 2003 // Author: Peter KURNEV // - +// #include #include diff --git a/src/NMTTools/NMTTools_StdMapNodeOfMapOfPaveBlock.hxx b/src/NMTTools/NMTTools_StdMapNodeOfMapOfPaveBlock.hxx index 12bf8f2f5..af49cafff 100644 --- a/src/NMTTools/NMTTools_StdMapNodeOfMapOfPaveBlock.hxx +++ b/src/NMTTools/NMTTools_StdMapNodeOfMapOfPaveBlock.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_StdMapNodeOfMapOfPaveBlock_HeaderFile #define _NMTTools_StdMapNodeOfMapOfPaveBlock_HeaderFile diff --git a/src/NMTTools/NMTTools_StdMapNodeOfMapOfPaveBlock_0.cxx b/src/NMTTools/NMTTools_StdMapNodeOfMapOfPaveBlock_0.cxx index 0b6dba8f4..6d479e813 100644 --- a/src/NMTTools/NMTTools_StdMapNodeOfMapOfPaveBlock_0.cxx +++ b/src/NMTTools/NMTTools_StdMapNodeOfMapOfPaveBlock_0.cxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/NMTTools/NMTTools_Tools.cdl b/src/NMTTools/NMTTools_Tools.cdl index cab93959a..9341d837b 100644 --- a/src/NMTTools/NMTTools_Tools.cdl +++ b/src/NMTTools/NMTTools_Tools.cdl @@ -1,29 +1,29 @@ --- Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- 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 +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +-- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. +-- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com --- - -- File: NMTTools_Tools.cdl -- Created: Mon Dec 8 10:32:34 2003 -- Author: Peter KURNEV -- - - +-- class Tools from NMTTools ---Purpose: diff --git a/src/NMTTools/NMTTools_Tools.cxx b/src/NMTTools/NMTTools_Tools.cxx index 3f986765e..da3da38a5 100644 --- a/src/NMTTools/NMTTools_Tools.cxx +++ b/src/NMTTools/NMTTools_Tools.cxx @@ -1,28 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: NMTTools_Tools.cxx // Created: Mon Dec 8 10:35:15 2003 // Author: Peter KURNEV // - - +// #include #include diff --git a/src/NMTTools/NMTTools_Tools.hxx b/src/NMTTools/NMTTools_Tools.hxx index 96913473b..89b91404e 100644 --- a/src/NMTTools/NMTTools_Tools.hxx +++ b/src/NMTTools/NMTTools_Tools.hxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _NMTTools_Tools_HeaderFile #define _NMTTools_Tools_HeaderFile diff --git a/src/NMTTools/NMTTools_Tools.ixx b/src/NMTTools/NMTTools_Tools.ixx index 78e114729..5b825b3fc 100644 --- a/src/NMTTools/NMTTools_Tools.ixx +++ b/src/NMTTools/NMTTools_Tools.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include diff --git a/src/NMTTools/NMTTools_Tools.jxx b/src/NMTTools/NMTTools_Tools.jxx index 8f3817efa..7b6f648a2 100644 --- a/src/NMTTools/NMTTools_Tools.jxx +++ b/src/NMTTools/NMTTools_Tools.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// Copyright (C) 2007-2008 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. +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// 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. +// 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. // -// 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 +// 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 // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopTools_ListOfShape_HeaderFile #include #endif diff --git a/src/OBJECT/GEOM_AISShape.cxx b/src/OBJECT/GEOM_AISShape.cxx index 4a3f6e0e9..a40b492e4 100644 --- a/src/OBJECT/GEOM_AISShape.cxx +++ b/src/OBJECT/GEOM_AISShape.cxx @@ -1,31 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_AISShape.cxx // Author : Nicolas REJNERI // Module : GEOM // $Header$ - +// /*! \class GEOM_AISShape GEOM_AISShape.hxx \brief .... @@ -34,15 +33,10 @@ #include "GEOM_AISShape.ixx" #include "SALOME_InteractiveObject.hxx" -#include "utilities.h" - // Open CASCADE Includes #include #include #include -#include -#include -#include #include #include #include @@ -51,7 +45,6 @@ #include #include #include -#include #include #include #include diff --git a/src/OBJECT/GEOM_AISShape.hxx b/src/OBJECT/GEOM_AISShape.hxx index a90919622..643d51019 100644 --- a/src/OBJECT/GEOM_AISShape.hxx +++ b/src/OBJECT/GEOM_AISShape.hxx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_AISShape.hxx // Module : GEOM - +// #ifndef _GEOM_AISShape_HeaderFile #define _GEOM_AISShape_HeaderFile diff --git a/src/OBJECT/GEOM_AISShape.ixx b/src/OBJECT/GEOM_AISShape.ixx index d50ba8db5..b72aa5a84 100644 --- a/src/OBJECT/GEOM_AISShape.ixx +++ b/src/OBJECT/GEOM_AISShape.ixx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_AISShape.ixx // Module : GEOM - +// #include "GEOM_AISShape.jxx" #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/OBJECT/GEOM_AISShape.jxx b/src/OBJECT/GEOM_AISShape.jxx index 9575226d7..b02bfe1e3 100644 --- a/src/OBJECT/GEOM_AISShape.jxx +++ b/src/OBJECT/GEOM_AISShape.jxx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_AISShape.jxx // Module : GEOM - +// #ifndef _GEOM_InteractiveObject_HeaderFile #include "GEOM_InteractiveObject.hxx" #endif diff --git a/src/OBJECT/GEOM_AISTrihedron.cxx b/src/OBJECT/GEOM_AISTrihedron.cxx index acf93656d..661a1a84a 100755 --- a/src/OBJECT/GEOM_AISTrihedron.cxx +++ b/src/OBJECT/GEOM_AISTrihedron.cxx @@ -1,6 +1,6 @@ -// GEOM_AISTrihedron : Filter for VTK viewer +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,14 +17,13 @@ // 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 -// -// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM_AISTrihedron : Filter for VTK viewer // File : GEOM_AISTrihedron.cxx // Author : Sergey LITONIN // Module : SALOME - +// #include "GEOM_AISTrihedron.hxx" #include diff --git a/src/OBJECT/GEOM_AISTrihedron.hxx b/src/OBJECT/GEOM_AISTrihedron.hxx index 60071c842..b70bea8b4 100755 --- a/src/OBJECT/GEOM_AISTrihedron.hxx +++ b/src/OBJECT/GEOM_AISTrihedron.hxx @@ -1,6 +1,6 @@ -// GEOM_AISTrihedron : Filter for VTK viewer +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,14 +17,13 @@ // 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 -// -// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM_AISTrihedron : Filter for VTK viewer // File : GEOM_AISTrihedron.hxx // Author : Sergey LITONIN // Module : SALOME - +// #ifndef GEOM_AISTrihedron_HeaderFile #define GEOM_AISTrihedron_HeaderFile diff --git a/src/OBJECT/GEOM_AISVector.cxx b/src/OBJECT/GEOM_AISVector.cxx index 66e968da8..44262f149 100644 --- a/src/OBJECT/GEOM_AISVector.cxx +++ b/src/OBJECT/GEOM_AISVector.cxx @@ -1,31 +1,29 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_AISVector.cxx // Author : Julia DOROVSKIKH // $Header$ - - +// #include // OCCT Includes diff --git a/src/OBJECT/GEOM_AISVector.hxx b/src/OBJECT/GEOM_AISVector.hxx index 993e17c33..2ffbf3a4f 100644 --- a/src/OBJECT/GEOM_AISVector.hxx +++ b/src/OBJECT/GEOM_AISVector.hxx @@ -1,30 +1,29 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_AISVector.hxx // Author : Julia DOROVSKIKH // Module : GEOM - +// #ifndef GEOM_AISVector_HeaderFile #define GEOM_AISVector_HeaderFile diff --git a/src/OBJECT/GEOM_Actor.cxx b/src/OBJECT/GEOM_Actor.cxx index 6771efaa9..e9e047146 100644 --- a/src/OBJECT/GEOM_Actor.cxx +++ b/src/OBJECT/GEOM_Actor.cxx @@ -1,31 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_Actor.cxx // Author : Christophe ATTANASIO // Module : GEOM // $Header$ - +// /*! \class GEOM_Actor GEOM_Actor.h \brief This class allows to display an OpenCASCADE CAD model in a VTK viewer. @@ -67,6 +66,8 @@ #include #include +#include "utilities.h" + //vtkStandardNewMacro(GEOM_Actor); #ifndef MYDEBUG @@ -105,7 +106,7 @@ GEOM_Actor::GEOM_Actor(): { #ifdef MYDEBUG - cout <SetInput(myAppendFilter->GetOutput()); @@ -180,7 +181,7 @@ GEOM_Actor::GEOM_Actor(): GEOM_Actor::~GEOM_Actor() { #ifdef MYDEBUG - cout <Delete(); myPreHighlightProp->Delete(); @@ -199,7 +200,7 @@ New() void Write(vtkPolyData* theDataSet, const char* theFileName){ vtkPolyDataWriter* aWriter = vtkPolyDataWriter::New(); - cout<<"Write - "<GetNumberOfPoints()<<"; "<GetNumberOfCells()<GetNumberOfPoints()<<"; "<GetNumberOfCells()); aWriter->SetInput(theDataSet); aWriter->SetFileName(theFileName); //aWriter->Write(); @@ -275,7 +276,7 @@ GEOM_Actor:: setDisplayMode(int theMode) { #ifdef MYDEBUG - cout << "GEOM_Actor::SetDisplayMode = "<myHighlightActor->GetProperty()->DeepCopy(Prop); @@ -488,7 +488,7 @@ void GEOM_Actor::SetHighlightProperty(vtkProperty* Prop) void GEOM_Actor::SetWireframeProperty(vtkProperty* Prop) { #ifdef MYDEBUG - cout << this << " GEOM_Actor::SetWireframeProperty"<SetProperty(Prop); @@ -497,7 +497,7 @@ void GEOM_Actor::SetWireframeProperty(vtkProperty* Prop) void GEOM_Actor::SetShadingProperty(vtkProperty* Prop) { #ifdef MYDEBUG - cout << "GEOM_Actor::SetShadingProperty"<DeepCopy(Prop); } @@ -506,7 +506,7 @@ void GEOM_Actor::SetShadingProperty(vtkProperty* Prop) void GEOM_Actor::Render(vtkRenderer *ren, vtkMapper *theMapper) { #ifdef MYDEBUG - cout << "GEOM_Actor::Render"<Delete(); } else this->Device->Render(ren, theMapper); - } void GEOM_Actor::ReleaseGraphicsResources(vtkWindow *) { #ifdef MYDEBUG - cout << "GEOM_Actor::ReleaseGraphicsResources"< #include - -#include "GEOM_SmartPtr.h" #include +class vtkCamera; + class GEOM_VertexSource; typedef GEOM_SmartPtr PVertexSource; @@ -124,7 +124,7 @@ public: void SetColor(vtkFloatingPointType r,vtkFloatingPointType g,vtkFloatingPointType b); void GetColor(vtkFloatingPointType& r,vtkFloatingPointType& g,vtkFloatingPointType& b); - virtual bool IsInfinite(); + virtual bool IsInfinitive(); // overloaded functions //! To map current selection to VTK representation diff --git a/src/OBJECT/GEOM_AssemblyBuilder.cxx b/src/OBJECT/GEOM_AssemblyBuilder.cxx index 5a0fa17a3..69d7fa9f5 100644 --- a/src/OBJECT/GEOM_AssemblyBuilder.cxx +++ b/src/OBJECT/GEOM_AssemblyBuilder.cxx @@ -1,31 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_AssemblyBuilder.cxx // Author : Christophe ATTANASIO // Module : GEOM // $Header$ - +// /*! \class GEOM_AssemblyBuilder GEOM_AssemblyBuilder.h \brief .... @@ -35,8 +34,11 @@ #include "GEOM_Actor.h" #include +#include #include +#include +#include // Open CASCADE Includes #include @@ -50,6 +52,9 @@ #include #include +// Qt includes +#include + #include "utilities.h" using namespace std; diff --git a/src/OBJECT/GEOM_AssemblyBuilder.h b/src/OBJECT/GEOM_AssemblyBuilder.h index c74cc11d5..da50e5e92 100644 --- a/src/OBJECT/GEOM_AssemblyBuilder.h +++ b/src/OBJECT/GEOM_AssemblyBuilder.h @@ -1,36 +1,35 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_AssemblyBuilder.h // Author : Christophe ATTANASIO // Module : GEOM // $Header$ - +// #include "GEOM_OBJECT_defs.hxx" -#include -#include -#include +class vtkProperty; +class vtkAssembly; +class vtkActorCollection; // Open CASCADE Inlcudes #include diff --git a/src/OBJECT/GEOM_DeviceActor.cxx b/src/OBJECT/GEOM_DeviceActor.cxx index 167010b91..445ab1470 100755 --- a/src/OBJECT/GEOM_DeviceActor.cxx +++ b/src/OBJECT/GEOM_DeviceActor.cxx @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #include "GEOM_DeviceActor.h" #include @@ -80,4 +101,4 @@ GEOM_DeviceActor:: RemoveFromRender(vtkRenderer* theRenderer) { theRenderer->RemoveActor(myActor.GetPointer()); -} \ No newline at end of file +} diff --git a/src/OBJECT/GEOM_DeviceActor.h b/src/OBJECT/GEOM_DeviceActor.h index 85809daf5..84bbbe912 100755 --- a/src/OBJECT/GEOM_DeviceActor.h +++ b/src/OBJECT/GEOM_DeviceActor.h @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #ifndef GEOM_DEVICEACTOR_H #define GEOM_DEVICEACTOR_H diff --git a/src/OBJECT/GEOM_EdgeSource.cxx b/src/OBJECT/GEOM_EdgeSource.cxx index 23cb30dfa..12b467de9 100755 --- a/src/OBJECT/GEOM_EdgeSource.cxx +++ b/src/OBJECT/GEOM_EdgeSource.cxx @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #include "GEOM_EdgeSource.h" #include diff --git a/src/OBJECT/GEOM_EdgeSource.h b/src/OBJECT/GEOM_EdgeSource.h index 56813e0fb..8cb2e514d 100755 --- a/src/OBJECT/GEOM_EdgeSource.h +++ b/src/OBJECT/GEOM_EdgeSource.h @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #ifndef GEOM_EDGESOURCE_H #define GEOM_EDGESOURCE_H diff --git a/src/OBJECT/GEOM_FaceSource.cxx b/src/OBJECT/GEOM_FaceSource.cxx index 4f0d9145e..0600ee1d9 100755 --- a/src/OBJECT/GEOM_FaceSource.cxx +++ b/src/OBJECT/GEOM_FaceSource.cxx @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #include "GEOM_FaceSource.h" #include diff --git a/src/OBJECT/GEOM_FaceSource.h b/src/OBJECT/GEOM_FaceSource.h index 8c03167af..6378a8eda 100755 --- a/src/OBJECT/GEOM_FaceSource.h +++ b/src/OBJECT/GEOM_FaceSource.h @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #ifndef GEOM_FACESOURCE_H #define GEOM_FACESOURCE_H diff --git a/src/OBJECT/GEOM_InteractiveObject.cxx b/src/OBJECT/GEOM_InteractiveObject.cxx index 628df2d24..1f82d31bf 100644 --- a/src/OBJECT/GEOM_InteractiveObject.cxx +++ b/src/OBJECT/GEOM_InteractiveObject.cxx @@ -1,31 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_InteractiveObject.cxx // Author : Christophe ATTANASIO // Module : GEOM // $Header$ - +// /*! \class GEOM_InteractiveObject GEOM_InteractiveObject.hxx \brief .... diff --git a/src/OBJECT/GEOM_InteractiveObject.hxx b/src/OBJECT/GEOM_InteractiveObject.hxx index cc405f407..1acd05421 100644 --- a/src/OBJECT/GEOM_InteractiveObject.hxx +++ b/src/OBJECT/GEOM_InteractiveObject.hxx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_InteractiveObject.hxx // Module : GEOM - +// #ifndef _GEOM_InteractiveObject_HeaderFile #define _GEOM_InteractiveObject_HeaderFile @@ -46,8 +45,6 @@ #ifndef _Handle_SALOME_InteractiveObject_HeaderFile #include "Handle_SALOME_InteractiveObject.hxx" #endif -class SALOME_InteractiveObject; - class GEOM_InteractiveObject : public SALOME_InteractiveObject { diff --git a/src/OBJECT/GEOM_InteractiveObject.ixx b/src/OBJECT/GEOM_InteractiveObject.ixx index 20d58cbb2..56d8f268d 100644 --- a/src/OBJECT/GEOM_InteractiveObject.ixx +++ b/src/OBJECT/GEOM_InteractiveObject.ixx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_InteractiveObject.ixx // Module : GEOM - +// #include "GEOM_InteractiveObject.jxx" #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/OBJECT/GEOM_InteractiveObject.jxx b/src/OBJECT/GEOM_InteractiveObject.jxx index 94666cbf4..7455669f9 100644 --- a/src/OBJECT/GEOM_InteractiveObject.jxx +++ b/src/OBJECT/GEOM_InteractiveObject.jxx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_InteractiveObject.jxx // Module : GEOM - +// #ifndef _SALOME_InteractiveObject_HeaderFile #include "SALOME_InteractiveObject.hxx" #endif diff --git a/src/OBJECT/GEOM_OBJECT_defs.hxx b/src/OBJECT/GEOM_OBJECT_defs.hxx index 3377ce908..c7d239347 100755 --- a/src/OBJECT/GEOM_OBJECT_defs.hxx +++ b/src/OBJECT/GEOM_OBJECT_defs.hxx @@ -1,47 +1,39 @@ -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// 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 : GEOM_OBJECT_defs.hxx // Author : Alexander A. BORODIN // Module : GEOM - +// #ifndef _GEOM_OBJECT_defs_HXX_ #define _GEOM_OBJECT_defs_HXX_ -#ifdef WNT - #if defined OBJECT_EXPORTS - #if defined WIN32 - #define GEOM_OBJECT_EXPORT __declspec( dllexport ) - #else - #define GEOM_OBJECT_EXPORT - #endif - #else - #if defined WIN32 - #define GEOM_OBJECT_EXPORT __declspec( dllimport ) - #else - #define GEOM_OBJECT_EXPORT - #endif - #endif +#ifdef WIN32 +# if defined GEOM_OBJECT_EXPORTS +# define GEOM_OBJECT_EXPORT __declspec( dllexport ) +# else +# define GEOM_OBJECT_EXPORT __declspec( dllimport ) +# endif #else - #define GEOM_OBJECT_EXPORT +# define GEOM_OBJECT_EXPORT #endif #endif diff --git a/src/OBJECT/GEOM_OCCReader.cxx b/src/OBJECT/GEOM_OCCReader.cxx index 01400b67f..95a4c33b7 100644 --- a/src/OBJECT/GEOM_OCCReader.cxx +++ b/src/OBJECT/GEOM_OCCReader.cxx @@ -1,31 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_OCCReader.h // Author : Christophe ATTANASIO // Module : GEOM // $Header$ - +// #include "GEOM_OCCReader.h" // VTK Includes @@ -34,24 +33,14 @@ #include #include -#include -#include - -#include -#include // OpenCASCADE Includes -#include #include -#include #include #include -#include +#include #include #include -#include -#include -#include #include #include #include @@ -63,12 +52,7 @@ #include #include #include -#include -#include #include -#include -#include -#include #include #include #include @@ -485,7 +469,7 @@ void GEOM_OCCReader::DrawTo(gp_Pnt P, coord[0] = P.X(); coord[1] = P.Y(); coord[2] = P.Z(); Standard_Integer NewVTKpoint = Pts->InsertNextPoint(coord); - int pts[2]; + vtkIdType pts[2]; pts[0] = lastVTKpoint; pts[1] = NewVTKpoint; @@ -751,7 +735,7 @@ void GEOM_OCCReader::TransferEdgeWData(const TopoDS_Edge& aEdge, aP2 = theNodesP(nbnodes); float coord[3]; - int pts[2]; + vtkIdType pts[2]; for(int j=1;jNodes(); float coord[3]; - int pts[2]; + vtkIdType pts[2]; // PUSH NODES @@ -925,7 +909,7 @@ void GEOM_OCCReader::TransferEdgeWData(const TopoDS_Edge& aEdge, Standard_Integer id1 = Nodesidx(i); Standard_Integer id2 = Nodesidx(i+1); - int pts[2]; + vtkIdType pts[2]; pts[0] = id1-1; pts[1] = id2-1; // insert line (pt1,pt2) @@ -947,7 +931,7 @@ void GEOM_OCCReader::TransferVertexWData(const TopoDS_Vertex& aVertex, gp_Pnt P = BRep_Tool::Pnt( aVertex ); float delta = 1, coord[3]; - int pts[2]; + vtkIdType pts[2]; // insert pt ZERO_COORD; coord[0] = +delta; pts[0] = Pts->InsertNextPoint(coord); @@ -1026,7 +1010,7 @@ void GEOM_OCCReader::TransferFaceSData(const TopoDS_Face& aFace, Standard_Integer N1,N2,N3; Triangles(i).Get(N1,N2,N3); - int pts[3]; + vtkIdType pts[3]; pts[0] = N1-1; pts[1] = N2-1; pts[2] = N3-1; Cells->InsertNextCell(3,pts); diff --git a/src/OBJECT/GEOM_OCCReader.h b/src/OBJECT/GEOM_OCCReader.h index 5c0288a75..869ec4f29 100644 --- a/src/OBJECT/GEOM_OCCReader.h +++ b/src/OBJECT/GEOM_OCCReader.h @@ -1,31 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_OCCReader.h // Author : Christophe ATTANASIO // Module : GEOM // $Header$ - +// /*! \class GEOM_OCCReader GEOM_OCCReader.h \brief This class allow to display a OpenCASCADE CAD model in a VTK viewer. @@ -44,8 +43,6 @@ class vtkCellArray; // OpenCASCADE #include #include -#include -#include #include #include diff --git a/src/OBJECT/GEOM_ShadingFace.cxx b/src/OBJECT/GEOM_ShadingFace.cxx index 1795bf0c2..755b32925 100755 --- a/src/OBJECT/GEOM_ShadingFace.cxx +++ b/src/OBJECT/GEOM_ShadingFace.cxx @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #include "GEOM_ShadingFace.h" #include @@ -81,4 +102,4 @@ OCC2VTK(const TopoDS_Face& theFace, thePolyData->InsertNextCell(VTK_TRIANGLE,3,anIds); } } -} \ No newline at end of file +} diff --git a/src/OBJECT/GEOM_ShadingFace.h b/src/OBJECT/GEOM_ShadingFace.h index 4414f9f29..097c1340c 100755 --- a/src/OBJECT/GEOM_ShadingFace.h +++ b/src/OBJECT/GEOM_ShadingFace.h @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #ifndef GEOM_SHADINGFACE_H #define GEOM_SHADINGFACE_H diff --git a/src/OBJECT/GEOM_SmartPtr.h b/src/OBJECT/GEOM_SmartPtr.h index 886a085b8..eedaf8200 100755 --- a/src/OBJECT/GEOM_SmartPtr.h +++ b/src/OBJECT/GEOM_SmartPtr.h @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #ifndef GEOM_SMARTPTR_H #define GEOM_SMARTPTR_H diff --git a/src/OBJECT/GEOM_VTKTrihedron.cxx b/src/OBJECT/GEOM_VTKTrihedron.cxx index 847077d55..113d7a931 100644 --- a/src/OBJECT/GEOM_VTKTrihedron.cxx +++ b/src/OBJECT/GEOM_VTKTrihedron.cxx @@ -1,56 +1,44 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // SALOME GEOM : -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_VTKTrihedron.cxx // Author : Sergey LITONIN // Module : SALOME // $Header: - +// #include "GEOM_VTKTrihedron.hxx" -#include "utilities.h" -#include "GEOM_OCCReader.h" #include #include #include #include -#include -#include -#include -#include -#include #include -#include #include -#include -#include #include -#include #include +#include #include #include -#include #include #include #include diff --git a/src/OBJECT/GEOM_VTKTrihedron.hxx b/src/OBJECT/GEOM_VTKTrihedron.hxx index 1d9e85347..9dde2edd4 100644 --- a/src/OBJECT/GEOM_VTKTrihedron.hxx +++ b/src/OBJECT/GEOM_VTKTrihedron.hxx @@ -1,31 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // SALOME GEOM : -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : GEOM_VTKTrihedron.h // Author : Sergey LITONIN // Module : SALOME // $Header: - +// #ifndef GEOM_VTKTrihedron_H #define GEOM_VTKTrihedron_H @@ -35,7 +34,6 @@ #include "SALOME_Actor.h" #include "VTKViewer_Trihedron.h" -class vtkActorCollection; class vtkRenderer; class vtkPolyDataMapper; diff --git a/src/OBJECT/GEOM_VertexSource.cxx b/src/OBJECT/GEOM_VertexSource.cxx index 50277626b..4fdf79092 100755 --- a/src/OBJECT/GEOM_VertexSource.cxx +++ b/src/OBJECT/GEOM_VertexSource.cxx @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #include "GEOM_VertexSource.h" #include diff --git a/src/OBJECT/GEOM_VertexSource.h b/src/OBJECT/GEOM_VertexSource.h index 46a64f0de..00ac63f85 100755 --- a/src/OBJECT/GEOM_VertexSource.h +++ b/src/OBJECT/GEOM_VertexSource.h @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #ifndef GEOM_VERTEXSOURCE_H #define GEOM_VERTEXSOURCE_H diff --git a/src/OBJECT/GEOM_WireframeFace.cxx b/src/OBJECT/GEOM_WireframeFace.cxx index 8d49a177c..08430275f 100755 --- a/src/OBJECT/GEOM_WireframeFace.cxx +++ b/src/OBJECT/GEOM_WireframeFace.cxx @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #include "GEOM_WireframeFace.h" #include @@ -32,9 +53,10 @@ vtkStandardNewMacro(GEOM_WireframeFace); GEOM_WireframeFace::GEOM_WireframeFace(): - NbIso(1), - Discret(15) + Discret(15) { + NbIso[0] = 1; + NbIso[1] = 1; } GEOM_WireframeFace::~GEOM_WireframeFace() @@ -58,12 +80,29 @@ Execute() } } +void GEOM_WireframeFace::SetNbIso(const int theNb[2]) +{ + if ( theNb[0] == NbIso[0] && theNb[1] == NbIso[1]) + return; + + NbIso[0] = theNb[0]; + NbIso[1] = theNb[1]; + + Modified(); +} + +void GEOM_WireframeFace::GetNbIso(int &theNbU,int &theNbV) +{ + theNbU = NbIso[0]; + theNbV = NbIso[1]; +} + void GEOM_WireframeFace:: OCC2VTK(const TopoDS_Face& theFace, vtkPolyData* thePolyData, vtkPoints* thePts, - const int theNbIso, + const int theNbIso[2], const int theDiscret) { TopoDS_Face aFace = theFace; @@ -74,7 +113,7 @@ OCC2VTK(const TopoDS_Face& theFace, void GEOM_WireframeFace:: CreateIso(const TopoDS_Face& theFace, - const int theNbIso, + const int theNbIso[2], const int theDiscret, vtkPolyData* thePolyData, vtkPoints* thePts) @@ -95,8 +134,8 @@ CreateIso(const TopoDS_Face& theFace, Standard_False); Standard_Real anUMin, anUMax, aVMin, aVMax; - TColStd_Array1OfReal anUPrm(1, theNbIso), aVPrm(1, theNbIso); - TColStd_Array1OfInteger anUInd(1, theNbIso), aVInd(1, theNbIso); + TColStd_Array1OfReal anUPrm(1, theNbIso[0]), aVPrm(1, theNbIso[1]); + TColStd_Array1OfInteger anUInd(1, theNbIso[0]), aVInd(1, theNbIso[1]); anUInd.Init(0); aVInd.Init(0); @@ -185,11 +224,11 @@ CreateIso(const TopoDS_Face& theFace, Standard_Real confusion = Min(DeltaU, DeltaV) * HATHCER_CONFUSION_3D ; aHatcher.Confusion3d (confusion) ; - Standard_Real StepU = DeltaU / (Standard_Real)theNbIso; + Standard_Real StepU = DeltaU / (Standard_Real)theNbIso[0]; if(StepU > confusion){ Standard_Real UPrm = anUMin + StepU / 2.; gp_Dir2d Dir(0., 1.) ; - for(IIso = 1 ; IIso <= theNbIso ; IIso++) { + for(IIso = 1 ; IIso <= theNbIso[0] ; IIso++) { anUPrm(IIso) = UPrm ; gp_Pnt2d Ori (UPrm, 0.) ; Geom2dAdaptor_Curve HCur (new Geom2d_Line (Ori, Dir)) ; @@ -198,11 +237,11 @@ CreateIso(const TopoDS_Face& theFace, } } - Standard_Real StepV = DeltaV / (Standard_Real) theNbIso ; + Standard_Real StepV = DeltaV / (Standard_Real) theNbIso[1] ; if(StepV > confusion){ Standard_Real VPrm = aVMin + StepV / 2.; gp_Dir2d Dir(1., 0.); - for(IIso = 1 ; IIso <= theNbIso ; IIso++){ + for(IIso = 1 ; IIso <= theNbIso[1] ; IIso++){ aVPrm(IIso) = VPrm; gp_Pnt2d Ori (0., VPrm); Geom2dAdaptor_Curve HCur(new Geom2d_Line (Ori, Dir)); @@ -217,9 +256,9 @@ CreateIso(const TopoDS_Face& theFace, aHatcher.Trim() ; Standard_Integer aNbDom = 0 ; // for debug purpose - for(IIso = 1 ; IIso <= theNbIso ; IIso++){ - Standard_Integer Index ; + Standard_Integer Index ; + for(IIso = 1 ; IIso <= theNbIso[0] ; IIso++){ Index = anUInd(IIso) ; if(Index != 0){ if(aHatcher.TrimDone(Index) && !aHatcher.TrimFailed(Index)){ @@ -228,7 +267,9 @@ CreateIso(const TopoDS_Face& theFace, aNbDom = aHatcher.NbDomains (Index); } } + } + for(IIso = 1 ; IIso <= theNbIso[1] ; IIso++){ Index = aVInd(IIso); if(Index != 0){ if(aHatcher.TrimDone (Index) && !aHatcher.TrimFailed(Index)){ @@ -463,4 +504,4 @@ CreateIso__(const BRepAdaptor_Surface& theSurface, CreateIso__(theSurface, theIsoType, aLocalU , theV, theStep/2, thePolyData, thePts); } } -} \ No newline at end of file +} diff --git a/src/OBJECT/GEOM_WireframeFace.h b/src/OBJECT/GEOM_WireframeFace.h index cdbe122b3..2958694df 100755 --- a/src/OBJECT/GEOM_WireframeFace.h +++ b/src/OBJECT/GEOM_WireframeFace.h @@ -1,3 +1,24 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// #ifndef GEOM_WIREFRAME_FACE_H #define GEOM_WIREFRAME_FACE_H @@ -15,8 +36,8 @@ public: vtkTypeMacro(GEOM_WireframeFace,GEOM_FaceSource); static GEOM_WireframeFace* New(); - vtkSetMacro(NbIso,int); - vtkGetMacro(NbIso,int); + /* vtkSetMacro(NbIso,int); + vtkGetMacro(NbIso,int);*/ vtkSetMacro(Discret,int); vtkGetMacro(Discret,int); @@ -25,16 +46,22 @@ public: void OCC2VTK(const TopoDS_Face& theFace, vtkPolyData* thePolyData, vtkPoints* thePts, - int theNbIso = 1, - int theDiscret = 15); - + const int theNbIso[2], + const int theDiscret = 15); + + //! IsoLines management + // theNb[0] - number of U lines + // theNb[1] - number of V lines + virtual void SetNbIso(const int theNb[2]); + virtual void GetNbIso(int &theNbU,int &theNbV); + protected: - int NbIso, Discret; + int NbIso[2], Discret; static void CreateIso(const TopoDS_Face& theFace, - const int theNbIso, + const int theNbIso[2], const int theDiscret, vtkPolyData* thePolyData, vtkPoints* thePts); diff --git a/src/OBJECT/Handle_GEOM_AISShape.hxx b/src/OBJECT/Handle_GEOM_AISShape.hxx index 4c7d4c7d1..4556c2712 100644 --- a/src/OBJECT/Handle_GEOM_AISShape.hxx +++ b/src/OBJECT/Handle_GEOM_AISShape.hxx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Handle_GEOM_AISShape.hxx // Module : GEOM - +// #ifndef _Handle_GEOM_AISShape_HeaderFile #define _Handle_GEOM_AISShape_HeaderFile diff --git a/src/OBJECT/Handle_GEOM_InteractiveObject.hxx b/src/OBJECT/Handle_GEOM_InteractiveObject.hxx index 70c1c92c0..822359cb7 100644 --- a/src/OBJECT/Handle_GEOM_InteractiveObject.hxx +++ b/src/OBJECT/Handle_GEOM_InteractiveObject.hxx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM OBJECT : interactive object for Geometry entities visualization -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Handle_GEOM_InteractiveObject.hxx // Module : GEOM - +// #ifndef _Handle_GEOM_InteractiveObject_HeaderFile #define _Handle_GEOM_InteractiveObject_HeaderFile diff --git a/src/OBJECT/Makefile.am b/src/OBJECT/Makefile.am index 638ff6ac4..671ab5c4c 100644 --- a/src/OBJECT/Makefile.am +++ b/src/OBJECT/Makefile.am @@ -1,86 +1,89 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM OBJECT : interactive object for Geometry entities visualization -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : Makefile.in # Author : Damien COQUERET (OCC) # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files -salomeinclude_HEADERS = \ - GEOM_Actor.h \ - GEOM_AssemblyBuilder.h \ - GEOM_AISShape.hxx \ - Handle_GEOM_AISShape.hxx \ - GEOM_InteractiveObject.hxx \ - Handle_GEOM_InteractiveObject.hxx \ - GEOM_AISTrihedron.hxx \ - GEOM_VTKTrihedron.hxx \ - GEOM_AISVector.hxx \ - GEOM_OBJECT_defs.hxx \ - GEOM_SmartPtr.h \ - GEOM_DeviceActor.h \ - GEOM_EdgeSource.h \ - GEOM_FaceSource.h \ - GEOM_ShadingFace.h \ - GEOM_VertexSource.h \ +salomeinclude_HEADERS = \ + GEOM_Actor.h \ + GEOM_AssemblyBuilder.h \ + GEOM_AISShape.hxx \ + GEOM_AISShape.ixx \ + GEOM_AISShape.jxx \ + Handle_GEOM_AISShape.hxx \ + GEOM_InteractiveObject.hxx \ + GEOM_InteractiveObject.ixx \ + GEOM_InteractiveObject.jxx \ + Handle_GEOM_InteractiveObject.hxx \ + GEOM_AISTrihedron.hxx \ + GEOM_VTKTrihedron.hxx \ + GEOM_AISVector.hxx \ + GEOM_OBJECT_defs.hxx \ + GEOM_OCCReader.h \ + GEOM_SmartPtr.h \ + GEOM_DeviceActor.h \ + GEOM_EdgeSource.h \ + GEOM_FaceSource.h \ + GEOM_ShadingFace.h \ + GEOM_VertexSource.h \ GEOM_WireframeFace.h # Libraries targets lib_LTLIBRARIES = libGEOMObject.la -dist_libGEOMObject_la_SOURCES = \ - GEOM_Actor.cxx \ - GEOM_OCCReader.cxx \ - GEOM_AssemblyBuilder.cxx \ - GEOM_AISShape.cxx \ - GEOM_InteractiveObject.cxx \ - GEOM_AISTrihedron.cxx \ - GEOM_VTKTrihedron.cxx \ - GEOM_AISVector.cxx \ - GEOM_DeviceActor.cxx \ - GEOM_EdgeSource.cxx \ - GEOM_FaceSource.cxx \ - GEOM_ShadingFace.cxx \ - GEOM_VertexSource.cxx \ +dist_libGEOMObject_la_SOURCES = \ + GEOM_Actor.cxx \ + GEOM_OCCReader.cxx \ + GEOM_AssemblyBuilder.cxx \ + GEOM_AISShape.cxx \ + GEOM_InteractiveObject.cxx \ + GEOM_AISTrihedron.cxx \ + GEOM_VTKTrihedron.cxx \ + GEOM_AISVector.cxx \ + GEOM_DeviceActor.cxx \ + GEOM_EdgeSource.cxx \ + GEOM_FaceSource.cxx \ + GEOM_ShadingFace.cxx \ + GEOM_VertexSource.cxx \ GEOM_WireframeFace.cxx -libGEOMObject_la_CPPFLAGS = \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - $(QT_INCLUDES) \ - $(PYTHON_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(VTK_INCLUDES) \ - $(OGL_INCLUDES) \ - $(KERNEL_CXXFLAGS) \ +libGEOMObject_la_CPPFLAGS = \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + $(QT_INCLUDES) \ + $(PYTHON_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(VTK_INCLUDES) \ + $(KERNEL_CXXFLAGS) \ $(GUI_CXXFLAGS) -libGEOMObject_la_LDFLAGS = \ - $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ +libGEOMObject_la_LDFLAGS = \ + $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ $(GUI_LDFLAGS) -lqtx -lVTKViewer -lSVTK -lSalomeObject # $(CORBA_LIBS) \ # $(STDLIB) \ diff --git a/src/OBJECT/OBJECT.pro b/src/OBJECT/OBJECT.pro new file mode 100644 index 000000000..0c8330f26 --- /dev/null +++ b/src/OBJECT/OBJECT.pro @@ -0,0 +1,80 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = GEOMObject +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CORBA_INCLUDES = $$(OMNIORBDIR)/include $$(OMNIORBDIR)/include/omniORB4 $$(OMNIORBDIR)/include/COS + +QT_INCLUDES = $$(QTDIR)/include $$(QTDIR)/include/QtCore $$(QTDIR)/include/QtGui $$(QTDIR)/include/QtOpenGL $$(QTDIR)/include/QtXml + +PYTHON_INCLUDES = $$(PYTHONHOME)/include/python2.4 + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +VTK_INCLUDES = $$(VTKHOME)/include/vtk + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +GUI_CXXFLAGS = $$(GUI_ROOT_DIR)/include/salome + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +GUI_LDFLAGS = -L$$(GUI_ROOT_DIR)/lib/salome + +INCLUDEPATH += $${CORBA_INCLUDES} $${QT_INCLUDES} $${PYTHON_INCLUDES} $${CAS_CPPFLAGS} $${VTK_INCLUDES} $${KERNEL_CXXFLAGS} $${GUI_CXXFLAGS} + +LIBS += $${KERNEL_LDFLAGS} -lSALOMELocalTrace $${GUI_LDFLAGS} -lqtx -lVTKViewer -lSVTK -lSalomeObject + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += OBJECT_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS OMNIORB_VERSION=4 __x86__ __linux__ COMP_CORBA_DOUBLE COMP_CORBA_LONG + +HEADERS = GEOM_Actor.h +HEADERS += GEOM_AssemblyBuilder.h +HEADERS += GEOM_AISShape.hxx +HEADERS += Handle_GEOM_AISShape.hxx +HEADERS += GEOM_InteractiveObject.hxx +HEADERS += Handle_GEOM_InteractiveObject.hxx +HEADERS += GEOM_AISTrihedron.hxx +HEADERS += GEOM_VTKTrihedron.hxx +HEADERS += GEOM_AISVector.hxx +HEADERS += GEOM_OBJECT_defs.hxx + +SOURCES = GEOM_Actor.cxx +SOURCES += GEOM_OCCReader.cxx +SOURCES += GEOM_AssemblyBuilder.cxx +SOURCES += GEOM_AISShape.cxx +SOURCES += GEOM_InteractiveObject.cxx +SOURCES += GEOM_AISTrihedron.cxx +SOURCES += GEOM_VTKTrihedron.cxx +SOURCES += GEOM_AISVector.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/OperationGUI/Makefile.am b/src/OperationGUI/Makefile.am index e25d13348..3afc05013 100644 --- a/src/OperationGUI/Makefile.am +++ b/src/OperationGUI/Makefile.am @@ -1,83 +1,96 @@ -# GEOM OPERATIONGUI : +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# GEOM OPERATIONGUI : +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : OperationGUI # -# File : Makefile.in -# Author : Damien COQUERET (OCC) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header: - include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files -salomeinclude_HEADERS = +salomeinclude_HEADERS = \ + OperationGUI.h \ + OperationGUI_ArchimedeDlg.h \ + OperationGUI_PartitionDlg.h \ + OperationGUI_FilletDlg.h \ + OperationGUI_Fillet2dDlg.h \ + OperationGUI_ChamferDlg.h \ + OperationGUI_GetShapesOnShapeDlg.h \ + OperationGUI_ClippingDlg.h # Libraries targets lib_LTLIBRARIES = libOperationGUI.la -dist_libOperationGUI_la_SOURCES = \ - OperationGUI.cxx \ - OperationGUI_ArchimedeDlg.cxx \ - OperationGUI_PartitionDlg.cxx \ - OperationGUI_FilletDlg.cxx \ - OperationGUI_ChamferDlg.cxx \ +dist_libOperationGUI_la_SOURCES = \ + OperationGUI.cxx \ + OperationGUI_ArchimedeDlg.cxx \ + OperationGUI_PartitionDlg.cxx \ + OperationGUI_GetShapesOnShapeDlg.cxx \ + OperationGUI_FilletDlg.cxx \ + OperationGUI_Fillet2dDlg.cxx \ + OperationGUI_ChamferDlg.cxx \ OperationGUI_ClippingDlg.cxx -MOC_FILES = \ - OperationGUI_ArchimedeDlg_moc.cxx \ - OperationGUI_PartitionDlg_moc.cxx \ - OperationGUI_FilletDlg_moc.cxx \ - OperationGUI_ChamferDlg_moc.cxx \ +MOC_FILES = \ + OperationGUI_ArchimedeDlg_moc.cxx \ + OperationGUI_PartitionDlg_moc.cxx \ + OperationGUI_GetShapesOnShapeDlg_moc.cxx\ + OperationGUI_FilletDlg_moc.cxx \ + OperationGUI_Fillet2dDlg_moc.cxx \ + OperationGUI_ChamferDlg_moc.cxx \ OperationGUI_ClippingDlg_moc.cxx -nodist_libOperationGUI_la_SOURCES= \ +nodist_libOperationGUI_la_SOURCES = \ $(MOC_FILES) -#LIB_CLIENT_IDL = SALOME_GenericObj.idl SALOME_Component.idl SALOME_Exception.idl +# additional information to compile and link file -#LIB_SERVER_IDL = - -# additionnal information to compil and link file - -libOperationGUI_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(VTK_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(PYTHON_INCLUDES) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../GEOMGUI \ - -I$(srcdir)/../DlgRef \ - -I$(srcdir)/../GEOMBase \ - -I$(srcdir)/../OBJECT \ - -I$(srcdir)/../GEOMClient \ - -I$(srcdir)/../GEOMImpl \ - -I$(top_builddir)/idl \ +libOperationGUI_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(VTK_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(PYTHON_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../GEOMGUI \ + -I$(srcdir)/../DlgRef \ + -I$(srcdir)/../GEOMBase \ + -I$(srcdir)/../OBJECT \ + -I$(srcdir)/../GEOMClient \ + -I$(srcdir)/../GEOMImpl \ + -I$(srcdir)/../GEOMAlgo \ + -I$(top_builddir)/src/DlgRef \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libOperationGUI_la_LDFLAGS = \ - ../GEOMBase/libGEOMBase.la \ +libOperationGUI_la_LDFLAGS = \ + ../GEOMBase/libGEOMBase.la \ $(CAS_LDPATH) -lTKFillet + +############################### +# Obsolete files ? +############################### +# OperationGUI_MaterialDlg.h +# OperationGUI_MaterialDlg.cxx diff --git a/src/OperationGUI/OperationGUI.cxx b/src/OperationGUI/OperationGUI.cxx index 1372e926d..ebc81748d 100644 --- a/src/OperationGUI/OperationGUI.cxx +++ b/src/OperationGUI/OperationGUI.cxx @@ -1,36 +1,35 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : OperationGUI.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : OperationGUI.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "OperationGUI.h" -#include "SUIT_Session.h" -#include "SUIT_Desktop.h" -#include "SalomeApp_Application.h" +#include + +#include +#include +#include #include #include @@ -39,17 +38,17 @@ #include "OperationGUI_PartitionDlg.h" // Method PARTITION #include "OperationGUI_ArchimedeDlg.h" // Method ARCHIMEDE #include "OperationGUI_FilletDlg.h" // Method FILLET +#include "OperationGUI_Fillet2dDlg.h" // Method FILLET 2D #include "OperationGUI_ChamferDlg.h" // Method CHAMFER - -#include "OperationGUI_ClippingDlg.h" - -using namespace std; +#include "OperationGUI_ClippingDlg.h" // Clipping dialog box +#include "OperationGUI_GetShapesOnShapeDlg.h" //======================================================================= // function : OperationGUI() // purpose : Constructor //======================================================================= -OperationGUI::OperationGUI(GeometryGUI* parent) : GEOMGUI(parent) +OperationGUI::OperationGUI( GeometryGUI* parent ) : + GEOMGUI( parent ) { } @@ -69,19 +68,20 @@ OperationGUI::~OperationGUI() bool OperationGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) { SalomeApp_Application* app = getGeometryGUI()->getApp(); - if (!app) return false; + if ( !app ) return false; getGeometryGUI()->EmitSignalDeactivateDialog(); - switch (theCommandID) - { - case 503: (new OperationGUI_PartitionDlg(getGeometryGUI(), parent))->show(); break; - case 504: (new OperationGUI_ArchimedeDlg(getGeometryGUI(), parent))->show(); break; - case 505: (new OperationGUI_FilletDlg (getGeometryGUI(), parent))->show(); break; - case 506: (new OperationGUI_ChamferDlg (getGeometryGUI(), parent))->show(); break; - case 507: (new OperationGUI_ClippingDlg (getGeometryGUI(), parent))->show(); break; + switch ( theCommandID ) { + case 503: ( new OperationGUI_PartitionDlg ( getGeometryGUI(), parent ) )->show(); break; + case 504: ( new OperationGUI_ArchimedeDlg ( getGeometryGUI(), parent ) )->show(); break; + case 505: ( new OperationGUI_FilletDlg ( getGeometryGUI(), parent ) )->show(); break; + case 506: ( new OperationGUI_ChamferDlg ( getGeometryGUI(), parent ) )->show(); break; + case 507: ( new OperationGUI_ClippingDlg ( getGeometryGUI(), parent ) )->show(); break; + case 508: ( new OperationGUI_GetShapesOnShapeDlg( getGeometryGUI(), parent ) )->show(); break; + case 509: ( new OperationGUI_Fillet2dDlg ( getGeometryGUI(), parent ) )->show(); break; default: - app->putInfo(tr("GEOM_PRP_COMMAND").arg(theCommandID)); + app->putInfo( tr( "GEOM_PRP_COMMAND" ).arg( theCommandID ) ); } return true; @@ -93,10 +93,10 @@ bool OperationGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) extern "C" { #ifdef WNT - __declspec( dllexport ) + __declspec( dllexport ) #endif - GEOMGUI* GetLibGUI(GeometryGUI* parent) + GEOMGUI* GetLibGUI( GeometryGUI* parent ) { - return new OperationGUI(parent); + return new OperationGUI( parent ); } } diff --git a/src/OperationGUI/OperationGUI.h b/src/OperationGUI/OperationGUI.h index d2bd5662b..760150bac 100644 --- a/src/OperationGUI/OperationGUI.h +++ b/src/OperationGUI/OperationGUI.h @@ -1,35 +1,32 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : OperationGUI.h +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : OperationGUI.h -// Author : Damien COQUERET -// Module : GEOM - #ifndef OPERATIONGUI_H #define OPERATIONGUI_H -#include "GEOMGUI.h" -#include "GEOMBase.h" +#include //================================================================================= // class : OperationGUI @@ -38,10 +35,10 @@ class OperationGUI : public GEOMGUI { public : - OperationGUI( GeometryGUI* parent ); + OperationGUI( GeometryGUI* ); ~OperationGUI(); - bool OnGUIEvent(int theCommandID, SUIT_Desktop* parent); + bool OnGUIEvent( int, SUIT_Desktop* ); }; -#endif +#endif // OPERATIONGUI_H diff --git a/src/OperationGUI/OperationGUI_ArchimedeDlg.cxx b/src/OperationGUI/OperationGUI_ArchimedeDlg.cxx index 9102c5273..fdf1778e3 100644 --- a/src/OperationGUI/OperationGUI_ArchimedeDlg.cxx +++ b/src/OperationGUI/OperationGUI_ArchimedeDlg.cxx @@ -1,40 +1,39 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : OperationGUI_ArchimedeDlg.cxx +// Author : Nicolas REJNERI, Open CASCADE S.A.S. // -// File : OperationGUI_ArchimedeDlg.cxx -// Author : Nicolas REJNERI -// Module : GEOM -// $Header$ - #include "OperationGUI_ArchimedeDlg.h" -#include "DlgRef_1Sel3Spin.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include -#include +#include +#include +#include +#include +#include //================================================================================= // class : OperationGUI_ArchimedeDlg() @@ -44,33 +43,37 @@ // TRUE to construct a modal dialog. //================================================================================= OperationGUI_ArchimedeDlg::OperationGUI_ArchimedeDlg( GeometryGUI* theGeometryGUI, QWidget* parent ) - : GEOMBase_Skeleton(theGeometryGUI, parent, "ArchimedeDlg", false, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) + : GEOMBase_Skeleton( theGeometryGUI, parent, false ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_ARCHIMEDE"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_ARCHIMEDE" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_ARCHIMEDE_TITLE")); + setWindowTitle( tr( "GEOM_ARCHIMEDE_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_ARCHIMEDE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_ARCHIMEDE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_1Sel3Spin(this, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); - GroupPoints->TextLabel1->setText(tr("GEOM_OBJECTS")); - GroupPoints->TextLabel2->setText(tr("GEOM_WEIGHT")); - GroupPoints->TextLabel3->setText(tr("GEOM_WATER_DENSITY")); - GroupPoints->TextLabel4->setText(tr("GEOM_MESHING_DEFLECTION")); - GroupPoints->PushButton1->setPixmap(image1); + GroupPoints = new DlgRef_1Sel3Spin( centralWidget() ); + GroupPoints->GroupBox1->setTitle( tr( "GEOM_ARGUMENTS" ) ); + GroupPoints->TextLabel1->setText( tr( "GEOM_OBJECTS" ) ); + GroupPoints->TextLabel2->setText( tr( "GEOM_WEIGHT" ) ); + GroupPoints->TextLabel3->setText( tr( "GEOM_WATER_DENSITY" ) ); + GroupPoints->TextLabel4->setText( tr( "GEOM_MESHING_DEFLECTION" ) ); + GroupPoints->PushButton1->setIcon( image1 ); GroupPoints->LineEdit1->setReadOnly( true ); - Layout1->addWidget(GroupPoints, 2, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); + /***************************************************************/ - setHelpFileName("archimede_page.html"); + setHelpFileName( "archimede_page.html" ); /* Initialisations */ Init(); @@ -98,31 +101,29 @@ void OperationGUI_ArchimedeDlg::Init() /* Get setting of myStep value from file configuration */ SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - double myStep = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100); + double myStep = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100 ); double SpecificStep1 = 0.1; double SpecificStep2 = 0.01; /* min, max, myStep and decimals for spin boxes & initial values */ - GroupPoints->SpinBox_DX->RangeStepAndValidator(0.001, COORD_MAX, myStep, DBL_DIGITS_DISPLAY); - GroupPoints->SpinBox_DY->RangeStepAndValidator(0.001, COORD_MAX, SpecificStep1, DBL_DIGITS_DISPLAY); - GroupPoints->SpinBox_DZ->RangeStepAndValidator(0.001, COORD_MAX, SpecificStep2, DBL_DIGITS_DISPLAY); + initSpinBox( GroupPoints->SpinBox_DX, 0.001, COORD_MAX, myStep, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupPoints->SpinBox_DY, 0.001, COORD_MAX, SpecificStep1, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupPoints->SpinBox_DZ, 0.001, COORD_MAX, SpecificStep2, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY - GroupPoints->SpinBox_DX->SetValue( 100.0 ); - GroupPoints->SpinBox_DY->SetValue( 1.0 ); - GroupPoints->SpinBox_DZ->SetValue( 0.01 ); + GroupPoints->SpinBox_DX->setValue( 100.0 ); + GroupPoints->SpinBox_DY->setValue( 1.0 ); + GroupPoints->SpinBox_DZ->setValue( 0.01 ); /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( GroupPoints->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_DY, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_DZ, SLOT(SetStep(double))); + connect( myGeomGUI, SIGNAL( SignalDefaultStepValueChanged( double ) ), this, SLOT( SetDoubleSpinBoxStep( double ) ) ); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); initName( tr( "GEOM_ARCHIMEDE" ) ); @@ -132,6 +133,17 @@ void OperationGUI_ArchimedeDlg::Init() } +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void OperationGUI_ArchimedeDlg::SetDoubleSpinBoxStep( double step ) +{ + GroupPoints->SpinBox_DX->setSingleStep(step); + GroupPoints->SpinBox_DY->setSingleStep(step); + GroupPoints->SpinBox_DZ->setSingleStep(step); +} + //================================================================================= // function : ClickOnOk() // purpose : @@ -156,32 +168,33 @@ bool OperationGUI_ArchimedeDlg::ClickOnApply() return true; } - //================================================================================= // function : SelectionIntoArgument() // purpose : Called when selection as changed or other case //================================================================================= void OperationGUI_ArchimedeDlg::SelectionIntoArgument() { - myEditCurrentArgument->setText( "" ); + myEditCurrentArgument->setText(""); myShape = GEOM::GEOM_Object::_nil(); - - if ( IObjectCount() != 1 ) + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) return; Standard_Boolean testResult = Standard_False; - myShape = GEOMBase::ConvertIOinGEOMObject( firstIObject(), testResult ); + myShape = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); - if ( !testResult || myShape->_is_nil() || !GEOMBase::IsShape( myShape ) ) - { + if (!testResult || myShape->_is_nil() || !GEOMBase::IsShape(myShape)) { myShape = GEOM::GEOM_Object::_nil(); return; } - myEditCurrentArgument->setText( GEOMBase::GetName( myShape ) ); + myEditCurrentArgument->setText(GEOMBase::GetName(myShape)); } - //================================================================================= // function : LineEditReturnPressed() // purpose : @@ -189,13 +202,12 @@ void OperationGUI_ArchimedeDlg::SelectionIntoArgument() void OperationGUI_ArchimedeDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if(send == GroupPoints->LineEdit1) + if ( send == GroupPoints->LineEdit1 ) myEditCurrentArgument = GroupPoints->LineEdit1; else return; GEOMBase_Skeleton::LineEditReturnPressed(); - return; } //================================================================================= @@ -206,9 +218,8 @@ void OperationGUI_ArchimedeDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); globalSelection( GEOM_ALLSHAPES ); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - return; + connect( myGeomGUI->getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); } @@ -216,12 +227,11 @@ void OperationGUI_ArchimedeDlg::ActivateThisDialog() // function : enterEvent() // purpose : //================================================================================= -void OperationGUI_ArchimedeDlg::enterEvent(QEvent* e) +void OperationGUI_ArchimedeDlg::enterEvent( QEvent* ) { - if(GroupConstructors->isEnabled()) + if ( mainFrame()->GroupConstructors->isEnabled() ) return; this->ActivateThisDialog(); - return; } @@ -238,9 +248,13 @@ GEOM::GEOM_IOperations_ptr OperationGUI_ArchimedeDlg::createOperation() // function : isValid // purpose : //================================================================================= -bool OperationGUI_ArchimedeDlg::isValid( QString& ) +bool OperationGUI_ArchimedeDlg::isValid( QString& msg ) { - return !myShape->_is_nil(); + bool ok = true; + ok = GroupPoints->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupPoints->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + ok = GroupPoints->SpinBox_DZ->isValid( msg, !IsPreview() ) && ok; + return !myShape->_is_nil() && ok; } //================================================================================= @@ -251,15 +265,25 @@ bool OperationGUI_ArchimedeDlg::execute( ObjectList& objects ) { GEOM::GEOM_Object_var anObj; - double aWeight = GroupPoints->SpinBox_DX->GetValue(); - double aWaterDensity = GroupPoints->SpinBox_DY->GetValue(); - double aMeshDeflection = GroupPoints->SpinBox_DZ->GetValue(); + double aWeight = GroupPoints->SpinBox_DX->value(); + double aWaterDensity = GroupPoints->SpinBox_DY->value(); + double aMeshDeflection = GroupPoints->SpinBox_DZ->value(); anObj = GEOM::GEOM_ILocalOperations::_narrow( getOperation() )->MakeArchimede( myShape, aWeight, aWaterDensity, aMeshDeflection ); if ( !anObj->_is_nil() ) + { + if ( !IsPreview() ) + { + QStringList aParameters; + aParameters << GroupPoints->SpinBox_DX->text(); + aParameters << GroupPoints->SpinBox_DY->text(); + aParameters << GroupPoints->SpinBox_DZ->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } objects.push_back( anObj._retn() ); + } return true; } diff --git a/src/OperationGUI/OperationGUI_ArchimedeDlg.h b/src/OperationGUI/OperationGUI_ArchimedeDlg.h index f848d5e26..640e06f77 100644 --- a/src/OperationGUI/OperationGUI_ArchimedeDlg.h +++ b/src/OperationGUI/OperationGUI_ArchimedeDlg.h @@ -1,34 +1,32 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : OperationGUI_ArchimedeDlg.h -// Author : Nicolas REJNERI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : OperationGUI_ArchimedeDlg.h +// Author : Nicolas REJNERI, Open CASCADE S.A.S. +// +#ifndef OPERATIONGUI_ARCHIMEDEDLG_H +#define OPERATIONGUI_ARCHIMEDEDLG_H -#ifndef DIALOGBOX_ARCHIMEDE_H -#define DIALOGBOX_ARCHIMEDE_H - -#include "GEOMBase_Skeleton.h" +#include class DlgRef_1Sel3Spin; @@ -38,33 +36,34 @@ class DlgRef_1Sel3Spin; //================================================================================= class OperationGUI_ArchimedeDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - OperationGUI_ArchimedeDlg(GeometryGUI* theGeometryGUI, QWidget* parent); - ~OperationGUI_ArchimedeDlg(); - + OperationGUI_ArchimedeDlg( GeometryGUI* , QWidget* ); + ~OperationGUI_ArchimedeDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& msg ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); private: - void Init(); - void enterEvent(QEvent* e); + void Init(); + void enterEvent( QEvent* ); private: - GEOM::GEOM_Object_var myShape; - DlgRef_1Sel3Spin* GroupPoints; - double myStep; + GEOM::GEOM_Object_var myShape; + DlgRef_1Sel3Spin* GroupPoints; + double myStep; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetDoubleSpinBoxStep( double ); }; -#endif // DIALOGBOX_ARCHIMEDE_H +#endif // OPERATIONGUI_ARCHIMEDEDLG_H diff --git a/src/OperationGUI/OperationGUI_ChamferDlg.cxx b/src/OperationGUI/OperationGUI_ChamferDlg.cxx index e5914d23d..af89feddd 100644 --- a/src/OperationGUI/OperationGUI_ChamferDlg.cxx +++ b/src/OperationGUI/OperationGUI_ChamferDlg.cxx @@ -1,8 +1,8 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// +// // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either @@ -17,31 +17,32 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : OperationGUI_ChamferDlg.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : OperationGUI_ChamferDlg.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "OperationGUI_ChamferDlg.h" -#include "DlgRef_SpinBox.h" +#include -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "OCCViewer_ViewModel.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +// OCCT Includes #include -#include -#include "qpixmap.h" -#include - -#include "GEOMImpl_Types.hxx" +#include //================================================================================= // class : OperationGUI_ChamferDlg() @@ -50,189 +51,116 @@ // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -OperationGUI_ChamferDlg::OperationGUI_ChamferDlg(GeometryGUI* theGeometryGUI, QWidget* parent) - : GEOMBase_Skeleton(theGeometryGUI, parent, "ChamferDlg", false, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +OperationGUI_ChamferDlg::OperationGUI_ChamferDlg (GeometryGUI* theGeometryGUI, QWidget* parent) + : GEOMBase_Skeleton(theGeometryGUI, parent, false), + myInitial(true) { - myConstructorId = -1; + SUIT_ResourceMgr* aResMgr = SUIT_Session::session()->resourceMgr(); + QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_CHAMFER_ALL"))); + QPixmap image2 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_CHAMFER_EDGE_FROM_FACE"))); + QPixmap image3 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_CHAMFER_FACE"))); + QPixmap image4 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_CHAMFER_EDGE"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_CHAMFER_ALL"))); - QPixmap image2(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_CHAMFER_EDGE_FROM_FACE"))); - QPixmap image3(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_CHAMFER_FACE"))); - QPixmap image4(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_CHAMFER_EDGE"))); - QPixmap iconSelect(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap iconSelect (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption( tr( "GEOM_CHAMFER_TITLE" ) ); + setWindowTitle(tr("GEOM_CHAMFER_TITLE")); - GroupConstructors->setTitle( tr( "GEOM_CHAMFER" ) ); + /***************************************************************/ + mainFrame()->GroupConstructors->setTitle(tr("GEOM_CHAMFER")); - RadioButton1->setPixmap( image1 ); - RadioButton2->setPixmap( image2 ); - RadioButton3->setPixmap( image3 ); - RadioButton4->show(); - RadioButton4->setPixmap( image4 ); + mainFrame()->RadioButton1->setIcon(image1); + mainFrame()->RadioButton2->setIcon(image2); + mainFrame()->RadioButton3->setIcon(image3); + mainFrame()->RadioButton4->show(); + mainFrame()->RadioButton4->setIcon(image4); // Create first group - myGrp1 = new QGroupBox( 1, Qt::Horizontal, tr( "GEOM_CHAMFER_ALL" ), this ); + myGrp1 = new QGroupBox(tr("GEOM_CHAMFER_ALL"), centralWidget()); - QGroupBox* aSelGrp1 = new QGroupBox( 3, Qt::Horizontal, myGrp1 ); - aSelGrp1->setFrameStyle( QFrame::NoFrame ); - aSelGrp1->setInsideMargin( 0 ); + QGridLayout* aLayout = new QGridLayout(myGrp1); + aLayout->setMargin(9); aLayout->setSpacing(6); - createSelWg( tr( "GEOM_MAIN_OBJECT" ), iconSelect, aSelGrp1, MainObj1 ); + createSelWg(tr("GEOM_MAIN_OBJECT"), iconSelect, myGrp1, aLayout, MainObj1); - QGroupBox* aSpinGrp = new QGroupBox( 1, Qt::Vertical, myGrp1 ); - aSpinGrp->setFrameStyle( QFrame::NoFrame ); - aSpinGrp->setInsideMargin( 0 ); - - new QLabel( tr( "D" ), aSpinGrp ); - mySpinBox[ SpinBox1 ] = new DlgRef_SpinBox( aSpinGrp ); - - ( new QFrame( myGrp1 ) )->setSizePolicy( - QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding ) ); + int row = aLayout->rowCount(); + aLayout->addWidget(new QLabel(tr("D"), myGrp1), row, 0); + aLayout->addWidget((mySpinBox[ SpinBox1 ] = new SalomeApp_DoubleSpinBox(myGrp1)), row++, 2); + aLayout->setRowStretch(row, 10); // Create second group - myGrp2 = new QGroupBox( 1, Qt::Horizontal, tr( "GEOM_CHAMFER_EDGES" ), this ); + myGrp2 = new QGroupBox(tr("GEOM_CHAMFER_EDGES"), centralWidget()); - QGroupBox* aSelGrp2 = new QGroupBox( 3, Qt::Horizontal, myGrp2 ); - aSelGrp2->setFrameStyle( QFrame::NoFrame ); - aSelGrp2->setInsideMargin( 0 ); + aLayout = new QGridLayout(myGrp2); + aLayout->setMargin(9); aLayout->setSpacing(6); - createSelWg( tr( "GEOM_MAIN_OBJECT" ), iconSelect, aSelGrp2, MainObj2 ); - createSelWg( tr( "FACE_1" ), iconSelect, aSelGrp2, Face1 ); - createSelWg( tr( "FACE_2" ), iconSelect, aSelGrp2, Face2 ); + createSelWg(tr("GEOM_MAIN_OBJECT"), iconSelect, myGrp2, aLayout, MainObj2); + createSelWg(tr("FACE_1"), iconSelect, myGrp2, aLayout, Face1); + createSelWg(tr("FACE_2"), iconSelect, myGrp2, aLayout, Face2); - QGroupBox* aSpinGrp1 = new QGroupBox( 1, Qt::Vertical, myGrp2 ); - aSpinGrp1->setFrameStyle( QFrame::NoFrame ); - aSpinGrp1->setInsideMargin( 0 ); - - myRadioButton[ RadioButton21] = new QRadioButton( aSpinGrp1 ); + createRadioWg(tr("GEOM_D1"), tr("GEOM_D2"), myGrp2, aLayout, RadioButton21, SpinBox21, SpinBox22); + createRadioWg(tr("GEOM_D"), tr("GEOM_ANGLE"), myGrp2, aLayout, RadioButton22, SpinBox23, SpinBox24); - new QLabel( tr( "GEOM_D1" ), aSpinGrp1 ); - mySpinBox[ SpinBox21 ] = new DlgRef_SpinBox( aSpinGrp1 ); - - new QLabel( tr( "GEOM_D2" ), aSpinGrp1 ); - mySpinBox[ SpinBox22 ] = new DlgRef_SpinBox( aSpinGrp1 ); - - QGroupBox* aSpinGrp2 = new QGroupBox( 1, Qt::Vertical, myGrp2 ); - aSpinGrp2->setFrameStyle( QFrame::NoFrame ); - aSpinGrp2->setInsideMargin( 0 ); - - myRadioButton[ RadioButton22] = new QRadioButton( aSpinGrp2 ); - - new QLabel( tr( "GEOM_D" ), aSpinGrp2 ); - mySpinBox[ SpinBox23 ] = new DlgRef_SpinBox( aSpinGrp2 ); - - new QLabel( tr( "GEOM_ANGLE" ), aSpinGrp2 ); - mySpinBox[ SpinBox24 ] = new DlgRef_SpinBox( aSpinGrp2 ); - - ( new QLabel( myGrp2 ) )->setSizePolicy( - QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding ) ); + aLayout->setRowStretch(aLayout->rowCount(), 10); // Create third group - myGrp3 = new QGroupBox( 1, Qt::Horizontal, tr( "GEOM_CHAMFER_FACES" ), this ); + myGrp3 = new QGroupBox(tr("GEOM_CHAMFER_FACES"), centralWidget()); - QGroupBox* aSelGrp3 = new QGroupBox( 3, Qt::Horizontal, myGrp3 ); - aSelGrp3->setFrameStyle( QFrame::NoFrame ); - aSelGrp3->setInsideMargin( 0 ); + aLayout = new QGridLayout(myGrp3); + aLayout->setMargin(9); aLayout->setSpacing(6); - createSelWg( tr( "GEOM_MAIN_OBJECT" ), iconSelect, aSelGrp3, MainObj3 ); - createSelWg( tr( "SELECTED_FACES" ), iconSelect, aSelGrp3, Faces ); + createSelWg(tr("GEOM_MAIN_OBJECT"), iconSelect, myGrp3, aLayout, MainObj3); + createSelWg(tr("SELECTED_FACES"), iconSelect, myGrp3, aLayout, Faces); - aSpinGrp1 = new QGroupBox( 1, Qt::Vertical, myGrp3 ); - aSpinGrp1->setFrameStyle( QFrame::NoFrame ); - aSpinGrp1->setInsideMargin( 0 ); + createRadioWg(tr("GEOM_D1"), tr("GEOM_D2"), myGrp3, aLayout, RadioButton31, SpinBox31, SpinBox32); + createRadioWg(tr("GEOM_D"), tr("GEOM_ANGLE"), myGrp3, aLayout, RadioButton32, SpinBox33, SpinBox34); - myRadioButton[ RadioButton31] = new QRadioButton( aSpinGrp1 ); - - new QLabel( tr( "GEOM_D1" ), aSpinGrp1 ); - mySpinBox[ SpinBox31 ] = new DlgRef_SpinBox( aSpinGrp1 ); - - new QLabel( tr( "GEOM_D2" ), aSpinGrp1 ); - mySpinBox[ SpinBox32 ] = new DlgRef_SpinBox( aSpinGrp1 ); - - aSpinGrp2 = new QGroupBox( 1, Qt::Vertical, myGrp3 ); - aSpinGrp2->setFrameStyle( QFrame::NoFrame ); - aSpinGrp2->setInsideMargin( 0 ); - - myRadioButton[ RadioButton32] = new QRadioButton( aSpinGrp2 ); - - new QLabel( tr( "GEOM_D" ), aSpinGrp2 ); - mySpinBox[ SpinBox33 ] = new DlgRef_SpinBox( aSpinGrp2 ); - - new QLabel( tr( "GEOM_ANGLE" ), aSpinGrp2 ); - mySpinBox[ SpinBox34 ] = new DlgRef_SpinBox( aSpinGrp2 ); - - ( new QLabel( myGrp3 ) )->setSizePolicy( - QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding ) ); + aLayout->setRowStretch(aLayout->rowCount(), 10); // Create fourth group - myGrp4 = new QGroupBox( 1, Qt::Horizontal, tr( "GEOM_CHAMFER_EDGE" ), this ); + myGrp4 = new QGroupBox(tr("GEOM_CHAMFER_EDGE"), centralWidget()); - QGroupBox* aSelGrp4 = new QGroupBox( 3, Qt::Horizontal, myGrp4 ); - aSelGrp4->setFrameStyle( QFrame::NoFrame ); - aSelGrp4->setInsideMargin( 0 ); + aLayout = new QGridLayout(myGrp4); + aLayout->setMargin(9); aLayout->setSpacing(6); - createSelWg( tr( "GEOM_MAIN_OBJECT" ), iconSelect, aSelGrp4, MainObj4 ); - createSelWg( tr( "SELECTED_EDGE" ), iconSelect, aSelGrp4, Edges ); + createSelWg(tr("GEOM_MAIN_OBJECT"), iconSelect, myGrp4, aLayout, MainObj4); + createSelWg(tr("SELECTED_EDGE"), iconSelect, myGrp4, aLayout, Edges); - aSpinGrp1 = new QGroupBox( 1, Qt::Vertical, myGrp4 ); - aSpinGrp1->setFrameStyle( QFrame::NoFrame ); - aSpinGrp1->setInsideMargin( 0 ); + createRadioWg(tr("GEOM_D1"), tr("GEOM_D2"), myGrp4, aLayout, RadioButton41, SpinBox41, SpinBox42); + createRadioWg(tr("GEOM_D"), tr("GEOM_ANGLE"), myGrp4, aLayout, RadioButton42, SpinBox43, SpinBox44); - myRadioButton[ RadioButton41] = new QRadioButton( aSpinGrp1 ); - - new QLabel( tr( "GEOM_D1" ), aSpinGrp1 ); - mySpinBox[ SpinBox41 ] = new DlgRef_SpinBox( aSpinGrp1 ); - - new QLabel( tr( "GEOM_D2" ), aSpinGrp1 ); - mySpinBox[ SpinBox42 ] = new DlgRef_SpinBox( aSpinGrp1 ); - - aSpinGrp2 = new QGroupBox( 1, Qt::Vertical, myGrp4 ); - aSpinGrp2->setFrameStyle( QFrame::NoFrame ); - aSpinGrp2->setInsideMargin( 0 ); - - myRadioButton[ RadioButton42] = new QRadioButton( aSpinGrp2 ); - - new QLabel( tr( "GEOM_D" ), aSpinGrp2 ); - mySpinBox[ SpinBox43 ] = new DlgRef_SpinBox( aSpinGrp2 ); - - new QLabel( tr( "GEOM_ANGLE" ), aSpinGrp2 ); - mySpinBox[ SpinBox44 ] = new DlgRef_SpinBox( aSpinGrp2 ); - - ( new QLabel( myGrp4 ) )->setSizePolicy( - QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding ) ); + aLayout->setRowStretch(aLayout->rowCount(), 10); // Add groups to layout - Layout1->addWidget( myGrp1, 2, 0 ); - Layout1->addWidget( myGrp2, 2, 0 ); - Layout1->addWidget( myGrp3, 2, 0 ); - Layout1->addWidget( myGrp4, 2, 0 ); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(myGrp1); + layout->addWidget(myGrp2); + layout->addWidget(myGrp3); + layout->addWidget(myGrp4); + /***************************************************************/ // Set range of spinboxes - double SpecificStep = 10.0; - QMap< int, DlgRef_SpinBox* >::iterator anIter; - for ( anIter = mySpinBox.begin(); anIter != mySpinBox.end(); ++anIter ) - { - anIter.data()->RangeStepAndValidator( 0.001, COORD_MAX, SpecificStep, 3 ); - if ( anIter.key() == SpinBox44 || anIter.key() == SpinBox34 || anIter.key() == SpinBox24 ) - anIter.data()->RangeStepAndValidator( 0.001, 89.999, 5, 0 ); - } + QMap< int, SalomeApp_DoubleSpinBox* >::iterator anIter; + for (anIter = mySpinBox.begin(); anIter != mySpinBox.end(); ++anIter) { + if (anIter.key() == SpinBox44 || anIter.key() == SpinBox34 || anIter.key() == SpinBox24) + initSpinBox(anIter.value(), 0.001, 89.999, 5, 0); + else + initSpinBox(anIter.value(), 0.001, COORD_MAX, SpecificStep, 3); + } setHelpFileName("chamfer_operation_page.html"); - /* Initialisations */ - RadioButtonPressed(); + // Initialisation Init(); + myRadioButton[ RadioButton21 ]->click(); } - //================================================================================= // function : ~OperationGUI_ChamferDlg() // purpose : Destroys the object and frees any allocated resources @@ -241,180 +169,205 @@ OperationGUI_ChamferDlg::~OperationGUI_ChamferDlg() { } - //================================================================================= // function : Init() // purpose : //================================================================================= void OperationGUI_ChamferDlg::Init() { - myConstructorId = -1; - reset(); - RadioButton1->setChecked( true ); - myEditCurrentArgument = mySelName[ MainObj1 ]; + // Set Initial values of spinboxes + QMap< int, SalomeApp_DoubleSpinBox* >::iterator anIter; + for (anIter = mySpinBox.begin(); anIter != mySpinBox.end(); ++anIter) + anIter.value()->setValue(5); - /* signals and slots connections */ + // Clear line edits + QMap< int, QLineEdit* >::iterator anIterLE; + for (anIterLE = mySelName.begin(); anIterLE != mySelName.end(); ++anIterLE) + anIterLE.value()->setText(""); + + myShape = GEOM::GEOM_Object::_nil(); + + myFaces.Clear(); + myEdges.Clear(); + myFace[ Face1 ] = -1; + myFace[ Face2 ] = -1; + + // signals and slots connections // main buttons - connect( buttonOk , SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); - connect( buttonApply, SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk() )); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); // group box - connect( GroupConstructors, SIGNAL( clicked( int ) ), - this, SLOT( ConstructorsClicked( int ) ) ); + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); // push buttons QMap< int, QPushButton* >::iterator anIterBtn; - for ( anIterBtn = mySelBtn.begin(); anIterBtn != mySelBtn.end(); ++anIterBtn ) - connect( anIterBtn.data(), SIGNAL( clicked() ), - this, SLOT( SetEditCurrentArgument() ) ); + for (anIterBtn = mySelBtn.begin(); anIterBtn != mySelBtn.end(); ++anIterBtn) + connect(anIterBtn.value(), SIGNAL(clicked()), + this, SLOT(SetEditCurrentArgument())); // line edits QMap< int, QLineEdit* >::iterator anIterLE2; - for ( anIterLE2 = mySelName.begin(); anIterLE2 != mySelName.end(); ++anIterLE2 ) - connect( anIterLE2.data(), SIGNAL( returnPressed() ), - this, SLOT( LineEditReturnPressed() ) ); + for (anIterLE2 = mySelName.begin(); anIterLE2 != mySelName.end(); ++anIterLE2) + connect(anIterLE2.value(), SIGNAL(returnPressed()), + this, SLOT(LineEditReturnPressed())); // spin boxes - QMap< int, DlgRef_SpinBox* >::iterator anIterSpin; - for ( anIterSpin = mySpinBox.begin(); anIterSpin != mySpinBox.end(); ++anIterSpin ) - connect( anIterSpin.data(), SIGNAL( valueChanged( double ) ), - this, SLOT( ValueChangedInSpinBox( double ) ) ); + QMap< int, SalomeApp_DoubleSpinBox* >::iterator anIterSpin; + for (anIterSpin = mySpinBox.begin(); anIterSpin != mySpinBox.end(); ++anIterSpin) + connect(anIterSpin.value(), SIGNAL(valueChanged(double)), + this, SLOT(ValueChangedInSpinBox(double))); // radio buttons QMap< int, QRadioButton* >::iterator anIterRadio; - for ( anIterRadio = myRadioButton.begin(); anIterRadio != myRadioButton.end(); ++anIterRadio ) - connect( anIterRadio.data(), SIGNAL( clicked() ), - this, SLOT( RadioButtonPressed() ) ); + for (anIterRadio = myRadioButton.begin(); anIterRadio != myRadioButton.end(); ++anIterRadio) + connect(anIterRadio.value(), SIGNAL(clicked()), + this, SLOT(RadioButtonPressed())); - // selection - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + initName(tr("GEOM_CHAMFER")); - initName( tr( "GEOM_CHAMFER" ) ); - - myGrp4->hide(); - myGrp3->hide(); - myGrp2->hide(); - myGrp1->show(); + myConstructorId = -1; + ConstructorsClicked(0); } - //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void OperationGUI_ChamferDlg::ConstructorsClicked( int constructorId ) +void OperationGUI_ChamferDlg::ConstructorsClicked (int constructorId) { // Activate next widget - if (myGeomGUI->getApp()->desktop()->activeWindow()->getViewManager()->getType() - != OCCViewer_Viewer::Type()) - { - RadioButton1->setChecked( true ); + if (myGeomGUI->getApp()->desktop()->activeWindow()->getViewManager()->getType() + != OCCViewer_Viewer::Type()) { + mainFrame()->RadioButton1->setChecked(true); return; } if (myConstructorId == constructorId) return; + //disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + // Get values from previous widget - double D1 = 5, D2 = 5, D = 5, Angle = 5; - if ( myConstructorId == 0 ) - D1 = D2 = mySpinBox[ SpinBox1 ]->GetValue(); - else if ( myConstructorId == 1 ) - { - D1 = mySpinBox[ SpinBox21 ]->GetValue(); - D2 = mySpinBox[ SpinBox22 ]->GetValue(); - D = mySpinBox[ SpinBox23 ]->GetValue(); - Angle = mySpinBox[ SpinBox24 ]->GetValue(); + QString D1 = "5", D2 = "5", D = "5", Angle = "5"; + if (myConstructorId == 0) + D1 = D2 = mySpinBox[ SpinBox1 ]->text(); + else if (myConstructorId == 1) { + D1 = mySpinBox[ SpinBox21 ]->text(); + D2 = mySpinBox[ SpinBox22 ]->text(); + D = mySpinBox[ SpinBox23 ]->text(); + Angle = mySpinBox[ SpinBox24 ]->text(); } - else if ( myConstructorId == 2 ) - { - D1 = mySpinBox[ SpinBox31 ]->GetValue(); - D2 = mySpinBox[ SpinBox32 ]->GetValue(); - D = mySpinBox[ SpinBox33 ]->GetValue(); - Angle = mySpinBox[ SpinBox34 ]->GetValue(); + else if (myConstructorId == 2) { + D1 = mySpinBox[ SpinBox31 ]->text(); + D2 = mySpinBox[ SpinBox32 ]->text(); + D = mySpinBox[ SpinBox33 ]->text(); + Angle = mySpinBox[ SpinBox34 ]->text(); } - else if ( myConstructorId == 3 ) - { - D1 = mySpinBox[ SpinBox41 ]->GetValue(); - D2 = mySpinBox[ SpinBox42 ]->GetValue(); - D = mySpinBox[ SpinBox43 ]->GetValue(); - Angle = mySpinBox[ SpinBox44 ]->GetValue(); + else if (myConstructorId == 3) { + D1 = mySpinBox[ SpinBox41 ]->text(); + D2 = mySpinBox[ SpinBox42 ]->text(); + D = mySpinBox[ SpinBox43 ]->text(); + Angle = mySpinBox[ SpinBox44 ]->text(); } myConstructorId = constructorId; - switch ( constructorId ) - { - case 0: - myGrp1->show(); - myGrp2->hide(); - myGrp3->hide(); - myGrp4->hide(); - mySpinBox[ SpinBox1 ]->SetValue( D1 ); + switch (constructorId) { + case 0: + myGrp2->hide(); + myGrp3->hide(); + myGrp4->hide(); + myGrp1->show(); + mySpinBox[ SpinBox1 ]->setText(D1); break; - case 1: - myGrp1->hide(); - myGrp2->show(); - myGrp3->hide(); - myGrp4->hide(); - mySpinBox[ SpinBox21 ]->SetValue( D1 ); - mySpinBox[ SpinBox22 ]->SetValue( D2 ); - mySpinBox[ SpinBox23 ]->SetValue( D ); - mySpinBox[ SpinBox24 ]->SetValue( Angle ); + case 1: + myGrp1->hide(); + myGrp3->hide(); + myGrp4->hide(); + myGrp2->show(); + mySpinBox[ SpinBox21 ]->setText(D1); + mySpinBox[ SpinBox22 ]->setText(D2); + mySpinBox[ SpinBox23 ]->setText(D); + mySpinBox[ SpinBox24 ]->setText(Angle); break; - case 2: - myGrp1->hide(); - myGrp2->hide(); - myGrp3->show(); - myGrp4->hide(); - mySpinBox[ SpinBox31 ]->SetValue( D1 ); - mySpinBox[ SpinBox32 ]->SetValue( D2 ); - mySpinBox[ SpinBox33 ]->SetValue( D ); - mySpinBox[ SpinBox34 ]->SetValue( Angle ); + case 2: + myGrp1->hide(); + myGrp2->hide(); + myGrp4->hide(); + myGrp3->show(); + mySpinBox[ SpinBox31 ]->setText(D1); + mySpinBox[ SpinBox32 ]->setText(D2); + mySpinBox[ SpinBox32 ]->setText(D2); + mySpinBox[ SpinBox33 ]->setText(D); + mySpinBox[ SpinBox34 ]->setText(Angle); break; - case 3: - myGrp1->hide(); - myGrp2->hide(); - myGrp3->hide(); - myGrp4->show(); - mySpinBox[ SpinBox41 ]->SetValue( D1 ); - mySpinBox[ SpinBox42 ]->SetValue( D2 ); - mySpinBox[ SpinBox43 ]->SetValue( D ); - mySpinBox[ SpinBox44 ]->SetValue( Angle ); + case 3: + myGrp1->hide(); + myGrp2->hide(); + myGrp3->hide(); + myGrp4->show(); + mySpinBox[ SpinBox41 ]->setText(D1); + mySpinBox[ SpinBox42 ]->setText(D2); + mySpinBox[ SpinBox43 ]->setText(D); + mySpinBox[ SpinBox44 ]->setText(Angle); break; - default: + default: break; } - if ( constructorId == 0 ) myEditCurrentArgument = mySelName[ MainObj1 ]; - else if ( constructorId == 1 ) myEditCurrentArgument = mySelName[ MainObj2 ]; - else if ( constructorId == 2 ) myEditCurrentArgument = mySelName[ MainObj3 ]; - else myEditCurrentArgument = mySelName[ MainObj4 ]; + if (constructorId == 0) mySelBtn[ MainObj1 ]->click(); + else if (constructorId == 1) mySelBtn[ MainObj2 ]->click(); + else if (constructorId == 2) mySelBtn[ MainObj3 ]->click(); + else mySelBtn[ MainObj4 ]->click(); - activateSelection(); enableWidgets(); - - if ( !myShape->_is_nil() ) - { - myEditCurrentArgument->setText( GEOMBase::GetName( myShape ) ); - GEOMBase_Skeleton::LineEditReturnPressed(); + + if (myInitial) { + myInitial = false; + SelectionIntoArgument(); } - else - myEditCurrentArgument->setText( "" ); + else { + if (!myShape->_is_nil()) { + myEditCurrentArgument->setText(GEOMBase::GetName(myShape)); + GEOMBase_Skeleton::LineEditReturnPressed(); + switch (getConstructorId()) { + case 1: + if (myFace[ Face1 ] == -1) + mySelBtn[ Face1 ]->click(); + break; + case 2: + if (myFaces.Extent() == 0) + mySelBtn[ Faces ]->click(); + break; + case 3: + if (myEdges.Extent() == 0) + mySelBtn[ Edges ]->click(); + break; + default: + break; + } + } + else { + myEditCurrentArgument->setText(""); + } - displayPreview(); + displayPreview(); + } + + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); } - //================================================================================= // function : ClickOnOk() // purpose : //================================================================================= void OperationGUI_ChamferDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } @@ -424,194 +377,203 @@ void OperationGUI_ChamferDlg::ClickOnOk() //================================================================================= bool OperationGUI_ChamferDlg::ClickOnApply() { - if ( !onAccept() ) + if (!onAccept()) return false; initName(); + // activate selection and connect selection manager + ConstructorsClicked(getConstructorId()); return true; } //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection has changed +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void OperationGUI_ChamferDlg::SelectionIntoArgument() { erasePreview(); - myEditCurrentArgument->setText( "" ); + myEditCurrentArgument->setText(""); // Get index of current selection focus int aCurrFocus = -1; QMap< int, QLineEdit* >::iterator anIter; - for ( anIter = mySelName.begin(); anIter != mySelName.end(); ++anIter ) - if ( myEditCurrentArgument == anIter.data() ) - { + for (anIter = mySelName.begin(); anIter != mySelName.end(); ++anIter) { + if (myEditCurrentArgument == anIter.value()) { aCurrFocus = anIter.key(); break; } + } + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); // If selection of main object is activated - if ( aCurrFocus == MainObj1 || aCurrFocus == MainObj2 || aCurrFocus == MainObj3 || aCurrFocus == MainObj4) + if (aCurrFocus == MainObj1 || aCurrFocus == MainObj2 || aCurrFocus == MainObj3 || aCurrFocus == MainObj4) { - if ( IObjectCount() == 1 ) - { + myShape = GEOM::GEOM_Object::_nil(); + if (aSelList.Extent() == 1) { Standard_Boolean aResult = Standard_False; GEOM::GEOM_Object_var anObj = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), aResult ); + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aResult); - if ( aResult && !anObj->_is_nil() ) - { + if (aResult && !anObj->_is_nil()) { myShape = anObj; - mySelName[ aCurrFocus ]->setText( GEOMBase::GetName( anObj ) ); + myEditCurrentArgument->setText(GEOMBase::GetName(anObj)); displayPreview(); - enableWidgets(); - return; } } - myShape = GEOM::GEOM_Object::_nil(); enableWidgets(); } // If face selection of second tab is activated - else if ( aCurrFocus == Face1 || aCurrFocus == Face2 ) + else if (aCurrFocus == Face1 || aCurrFocus == Face2) { - if ( IObjectCount() == 1 ) - { + myFace[ aCurrFocus ] = -1; + if (aSelList.Extent() == 1) { Standard_Boolean aResult = Standard_False; GEOM::GEOM_Object_var anObj = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), aResult ); + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aResult); - if ( aResult && !anObj->_is_nil() ) - { + if (aResult && !anObj->_is_nil()) { TColStd_IndexedMapOfInteger anIndexes; - ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr()->GetIndexes( firstIObject(), anIndexes ); + aSelMgr->GetIndexes(aSelList.First(), anIndexes); - if ( anIndexes.Extent() == 1 ) - { - int anIndex = anIndexes( 1 ); - QString aFaceName = QString( GEOMBase::GetName( anObj ) ) + ":%1"; - myEditCurrentArgument->setText( aFaceName.arg( anIndex ) ); + if (anIndexes.Extent() == 1) { + int anIndex = anIndexes(1); + QString aFaceName = QString(GEOMBase::GetName(anObj)) + ":%1"; + myEditCurrentArgument->setText(aFaceName.arg(anIndex)); myFace[ aCurrFocus ] = anIndex; - displayPreview(); - return; + displayPreview(); } } } - - myFace[ aCurrFocus ] = -1; } // If face selection of third or fourth tab is activated - else if ( aCurrFocus == Faces || aCurrFocus == Edges ) - { - if ( IObjectCount() == 1 ) - { + else if (aCurrFocus == Faces || aCurrFocus == Edges) { + if (aCurrFocus == Faces) myFaces.Clear(); + else myEdges.Clear(); + if (aSelList.Extent() == 1) { Standard_Boolean aResult = Standard_False; GEOM::GEOM_Object_var anObj = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), aResult ); + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aResult); - if ( aResult && !anObj->_is_nil() ) - { - TColStd_IndexedMapOfInteger anIndexes; - ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr()->GetIndexes( firstIObject(), anIndexes ); + if (aResult && !anObj->_is_nil()) { + TColStd_IndexedMapOfInteger anIndexes; + aSelMgr->GetIndexes(aSelList.First(), anIndexes); - if ( anIndexes.Extent() > 0 ) - { - QString aName; - if ( anIndexes.Extent() == 1 ) - { - int anIndex = anIndexes( 1 ); + if (anIndexes.Extent() > 0) { + QString aName; + if (anIndexes.Extent() == 1) { + int anIndex = anIndexes(1); - aName = QString( GEOMBase::GetName( anObj ) ) + QString( ":%1" ).arg( anIndex ); - } - else - aName = tr( "GEOM_MEN_POPUP_NAME" ).arg( anIndexes.Extent() ); + aName = QString(GEOMBase::GetName(anObj)) + QString(":%1").arg(anIndex); + } + else { + aName = tr("GEOM_MEN_POPUP_NAME").arg(anIndexes.Extent()); + } - myEditCurrentArgument->setText( aName ); - int aConstructorId = getConstructorId(); - if ( aConstructorId == 2) - myFaces = anIndexes; - else if (aConstructorId == 3) - myEdges = anIndexes; - - displayPreview(); - return; - } + myEditCurrentArgument->setText(aName); + int aConstructorId = getConstructorId(); + if (aConstructorId == 2) + myFaces = anIndexes; + else if (aConstructorId == 3) + myEdges = anIndexes; + + displayPreview(); + } } } - myFaces.Clear(); - myEdges.Clear(); + } + + // clear selection + if (aCurrFocus != Faces && aCurrFocus != Edges) { + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + } + + switch (getConstructorId()) { + case 1: + if (aCurrFocus == MainObj2) { + if (!myShape->_is_nil() && myFace[ Face1 ] == -1) + mySelBtn[ Face1 ]->click(); + } + else if (aCurrFocus == Face1) { + if (myFace[ Face1 ] != -1 && myFace[ Face2 ] == -1) + mySelBtn[ Face2 ]->click(); + } + else if (aCurrFocus == Face2) { + if (myFace[ Face2 ] != -1 && myShape->_is_nil()) + mySelBtn[ MainObj2 ]->click(); + } + break; + case 2: + if (aCurrFocus == MainObj3) { + if (!myShape->_is_nil() && myFaces.Extent() == 0) + mySelBtn[ Faces ]->click(); + } + break; + case 3: + if (aCurrFocus == MainObj4) { + if (!myShape->_is_nil() && myEdges.Extent() == 0) + mySelBtn[ Edges ]->click(); + } + break; + default: + break; } } - -//================================================================================= -// function : LineEditReturnPressed() -// purpose : -//================================================================================= -void OperationGUI_ChamferDlg::LineEditReturnPressed() -{ - QLineEdit* aSender = ( QLineEdit* )sender(); - - QMap< int, QLineEdit* >::iterator anIterLE; - for ( anIterLE = mySelName.begin(); anIterLE != mySelName.end(); ++anIterLE ) - if ( anIterLE.data() == aSender ) - myEditCurrentArgument = anIterLE.data(); - - GEOMBase_Skeleton::LineEditReturnPressed(); -} - -//================================================================================= -// function : RadioButtonPressed() -// purpose : -//================================================================================= -void OperationGUI_ChamferDlg::RadioButtonPressed() -{ - bool flag; - flag = ( myRadioButton[ RadioButton21 ]->isChecked() && - myRadioButton[ RadioButton31 ]->isChecked() && - myRadioButton[ RadioButton41 ]->isChecked() ); - - myRadioButton[ RadioButton21 ]->setChecked(!flag); - myRadioButton[ RadioButton31 ]->setChecked(!flag); - myRadioButton[ RadioButton41 ]->setChecked(!flag); - myRadioButton[ RadioButton22 ]->setChecked(flag); - myRadioButton[ RadioButton32 ]->setChecked(flag); - myRadioButton[ RadioButton42 ]->setChecked(flag); - mySpinBox[ SpinBox21 ]->setDisabled(flag); - mySpinBox[ SpinBox22 ]->setDisabled(flag); - mySpinBox[ SpinBox31 ]->setDisabled(flag); - mySpinBox[ SpinBox32 ]->setDisabled(flag); - mySpinBox[ SpinBox41 ]->setDisabled(flag); - mySpinBox[ SpinBox42 ]->setDisabled(flag); - mySpinBox[ SpinBox23 ]->setDisabled(!flag); - mySpinBox[ SpinBox24 ]->setDisabled(!flag); - mySpinBox[ SpinBox33 ]->setDisabled(!flag); - mySpinBox[ SpinBox34 ]->setDisabled(!flag); - mySpinBox[ SpinBox43 ]->setDisabled(!flag); - mySpinBox[ SpinBox44 ]->setDisabled(!flag); - displayPreview(); -} - - //================================================================================= // function : SetEditCurrentArgument() // purpose : //================================================================================= void OperationGUI_ChamferDlg::SetEditCurrentArgument() { - QPushButton* aSender = ( QPushButton* )sender(); + QPushButton* send = (QPushButton*)sender(); QMap< int, QPushButton* >::iterator anIter; - for ( anIter = mySelBtn.begin(); anIter != mySelBtn.end(); ++anIter ) - if ( anIter.data() == aSender ) - { + for (anIter = mySelBtn.begin(); anIter != mySelBtn.end(); ++anIter) { + if (anIter.value() == send) { mySelName[ anIter.key() ]->setFocus(); myEditCurrentArgument = mySelName[ anIter.key() ]; } + else { + anIter.value()->setDown(false); + mySelName[ anIter.key() ]->setEnabled(false); + } + } + + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); activateSelection(); + + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); } +//================================================================================= +// function : LineEditReturnPressed() +// purpose : +//================================================================================= +void OperationGUI_ChamferDlg::LineEditReturnPressed() +{ + QLineEdit* send = (QLineEdit*)sender(); + + QMap< int, QLineEdit* >::iterator anIterLE; + for (anIterLE = mySelName.begin(); anIterLE != mySelName.end(); ++anIterLE) + if (anIterLE.value() == send) + myEditCurrentArgument = anIterLE.value(); + + GEOMBase_Skeleton::LineEditReturnPressed(); +} //================================================================================= // function : ActivateThisDialog() @@ -620,97 +582,75 @@ void OperationGUI_ChamferDlg::SetEditCurrentArgument() void OperationGUI_ChamferDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); - connect( ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT( SelectionIntoArgument() ) ); - - activateSelection(); - displayPreview(); + ConstructorsClicked( getConstructorId() ); } - //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void OperationGUI_ChamferDlg::enterEvent(QEvent* e) +void OperationGUI_ChamferDlg::enterEvent (QEvent*) { - if ( !GroupConstructors->isEnabled() ) + if (!mainFrame()->GroupConstructors->isEnabled()) this->ActivateThisDialog(); } - //================================================================================= // function : ValueChangedInSpinBox() // purpose : //================================================================================= -void OperationGUI_ChamferDlg::ValueChangedInSpinBox( double newValue ) +void OperationGUI_ChamferDlg::ValueChangedInSpinBox (double) { displayPreview(); } - //================================================================================= // function : createSelWg() // purpose : //================================================================================= -void OperationGUI_ChamferDlg::createSelWg( const QString& theLbl, +void OperationGUI_ChamferDlg::createSelWg (const QString& theLbl, QPixmap& thePix, QWidget* theParent, - const int theId ) + QGridLayout* theLayout, + const int theId) { - new QLabel( theLbl, theParent ); - mySelBtn[ theId ] = new QPushButton( theParent ); - mySelBtn[ theId ]->setPixmap( thePix ); - mySelName[ theId ] = new QLineEdit( theParent ); - mySelName[ theId ]->setReadOnly( true ); + QLabel* lab = new QLabel(theLbl, theParent); + mySelBtn[ theId ] = new QPushButton(theParent); + mySelBtn[ theId ]->setIcon(thePix); + mySelName[ theId ] = new QLineEdit(theParent); + mySelName[ theId ]->setReadOnly(true); + int row = theLayout->rowCount(); + theLayout->addWidget(lab, row, 0); + theLayout->addWidget(mySelBtn[ theId ], row, 1); + theLayout->addWidget(mySelName[ theId ], row, 2, 1, 4); // take into account createRadioWg() } //================================================================================= -// function : reset() +// function : createRadioWg() // purpose : //================================================================================= -void OperationGUI_ChamferDlg::reset() +void OperationGUI_ChamferDlg::createRadioWg(const QString& theLbl1, + const QString& theLbl2, + QWidget* theParent, + QGridLayout* theLayout, + const int theRbId, + const int theSpin1Id, + const int theSpin2Id) { - // Set Initial values of spinboxes - QMap< int, DlgRef_SpinBox* >::iterator anIter; - for ( anIter = mySpinBox.begin(); anIter != mySpinBox.end(); ++anIter ) - anIter.data()->SetValue( 5 ); - - // clear line edits - QMap< int, QLineEdit* >::iterator anIterLE; - for ( anIterLE = mySelName.begin(); anIterLE != mySelName.end(); ++anIterLE ) - anIterLE.data()->setText( "" ); - - // constructor id - int aConstructorId = getConstructorId(); - - if ( aConstructorId == 0 ) myEditCurrentArgument = mySelName[ MainObj1 ]; - else if ( aConstructorId == 1 ) myEditCurrentArgument = mySelName[ MainObj2 ]; - else if ( aConstructorId == 2 ) myEditCurrentArgument = mySelName[ MainObj3 ]; - else myEditCurrentArgument = mySelName[ MainObj4 ]; - - myShape = GEOM::GEOM_Object::_nil(); - - myFaces.Clear(); - myEdges.Clear(); - myFace[ Face1 ] = -1; - myFace[ Face2 ] = -1; - - erasePreview( true ); - - activateSelection(); - - enableWidgets(); -} - -//================================================================================= -// function : getConstructorId() -// purpose : -//================================================================================= -int OperationGUI_ChamferDlg::getConstructorId() const -{ - return GroupConstructors->id( GroupConstructors->selected() ); + myRadioButton[ theRbId ] = new QRadioButton(theParent); + QLabel* lab1 = new QLabel(theLbl1, theParent); + QLabel* lab2 = new QLabel(theLbl2, theParent); + mySpinBox[ theSpin1Id ] = new SalomeApp_DoubleSpinBox(theParent); + mySpinBox[ theSpin2Id ] = new SalomeApp_DoubleSpinBox(theParent); + int row = theLayout->rowCount(); + theLayout->addWidget(myRadioButton[ theRbId ], row, 0); + theLayout->addWidget(lab1, row, 2); + theLayout->addWidget(mySpinBox[ theSpin1Id ], row, 3); + theLayout->addWidget(lab2, row, 4); + theLayout->addWidget(mySpinBox[ theSpin2Id ], row, 5); } //================================================================================= @@ -719,23 +659,27 @@ int OperationGUI_ChamferDlg::getConstructorId() const //================================================================================= void OperationGUI_ChamferDlg::activateSelection() { - if ( !myShape->_is_nil() && - ( myEditCurrentArgument == mySelName[ Face1 ] || - myEditCurrentArgument == mySelName[ Face2 ] || - myEditCurrentArgument == mySelName[ Faces ] ) ) - localSelection( myShape, TopAbs_FACE ); - else if (!myShape->_is_nil() && myEditCurrentArgument == mySelName[ Edges ] ) - localSelection( myShape, TopAbs_EDGE ); - else - { + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + + if (!myShape->_is_nil() && + (myEditCurrentArgument == mySelName[ Face1 ] || + myEditCurrentArgument == mySelName[ Face2 ] || + myEditCurrentArgument == mySelName[ Faces ])) { + localSelection(myShape, TopAbs_FACE); + } + else if (!myShape->_is_nil() && myEditCurrentArgument == mySelName[ Edges ]) { + localSelection(myShape, TopAbs_EDGE); + } + else { TColStd_MapOfInteger aMap; - aMap.Add( GEOM_SHELL ); - aMap.Add( GEOM_SOLID ); - aMap.Add( GEOM_COMPOUND ); - globalSelection( aMap ); + aMap.Add(GEOM_SHELL); + aMap.Add(GEOM_SOLID); + aMap.Add(GEOM_COMPOUND); + globalSelection(aMap); } - SelectionIntoArgument(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); } //================================================================================= @@ -747,40 +691,39 @@ void OperationGUI_ChamferDlg::enableWidgets() int anId = getConstructorId(); bool toEnable = !myShape->_is_nil(); - - if ( anId == 1 ) - { - mySelName[ Face1 ]->setEnabled( toEnable ); - mySelName[ Face2 ]->setEnabled( toEnable ); - mySelBtn[ Face1 ]->setEnabled( toEnable ); - mySelBtn[ Face2 ]->setEnabled( toEnable ); - if ( !toEnable ) + if (anId == 1) + { + //mySelName[ Face1 ]->setEnabled(toEnable); + //mySelName[ Face2 ]->setEnabled(toEnable); + mySelBtn[ Face1 ]->setEnabled(toEnable); + mySelBtn[ Face2 ]->setEnabled(toEnable); + + if (!toEnable) { - mySelName[ Face1 ]->setText( "" ); - mySelName[ Face2 ]->setText( "" ); + mySelName[ Face1 ]->setText(""); + mySelName[ Face2 ]->setText(""); myFace[ Face1 ] = -1; myFace[ Face2 ] = -1; } } - else if ( anId == 2 ) + else if (anId == 2) { - mySelName[ Faces ]->setEnabled( toEnable ); - if ( !toEnable ) - { - mySelName[ Faces ]->setText( "" ); - myFaces = -1; - } + //mySelName[ Faces ]->setEnabled(toEnable); + mySelBtn[ Faces ]->setEnabled(toEnable); + if (!toEnable) { + mySelName[ Faces ]->setText(""); + myFaces.Clear(); + } } - else if ( anId == 3 ) - { - mySelName[ Edges ]->setEnabled( toEnable ); + else if (anId == 3) { + //mySelName[ Edges ]->setEnabled(toEnable); + mySelBtn[ Edges ]->setEnabled(toEnable); - if ( !toEnable ) - { - mySelName[ Edges ]->setText( "" ); - myEdges = -1; - } + if (!toEnable) { + mySelName[ Edges ]->setText(""); + myEdges.Clear(); + } } } @@ -790,20 +733,57 @@ void OperationGUI_ChamferDlg::enableWidgets() //================================================================================= GEOM::GEOM_IOperations_ptr OperationGUI_ChamferDlg::createOperation() { - return getGeomEngine()->GetILocalOperations( getStudyId() ); + return getGeomEngine()->GetILocalOperations(getStudyId()); } + //================================================================================= -// function : ClickOnApply() +// function : isValid() // purpose : Verify validity of input data //================================================================================= -bool OperationGUI_ChamferDlg::isValid( QString& ) +bool OperationGUI_ChamferDlg::isValid (QString& msg) { - switch ( getConstructorId() ) + bool ok = true; + switch (getConstructorId()) { - case 0: return !myShape->_is_nil(); - case 1: return !myShape->_is_nil() && myFace[ Face1 ] > 0 && myFace[ Face2 ] > 0; - case 2: return !myShape->_is_nil() && myFaces.Extent() > 0; - case 3: return !myShape->_is_nil() && myEdges.Extent() > 0; + case 0: + ok = mySpinBox[ SpinBox1 ]->isValid( msg, !IsPreview() ); + return !myShape->_is_nil() && ok; + case 1: + if (myRadioButton[ RadioButton21 ]->isChecked()) + { + ok = mySpinBox[ SpinBox21 ]->isValid( msg, !IsPreview() ) && ok; + ok = mySpinBox[ SpinBox22 ]->isValid( msg, !IsPreview() ) && ok; + } + else + { + ok = mySpinBox[ SpinBox23 ]->isValid( msg, !IsPreview() ) && ok; + ok = mySpinBox[ SpinBox24 ]->isValid( msg, !IsPreview() ) && ok; + } + return !myShape->_is_nil() && myFace[ Face1 ] > 0 && myFace[ Face2 ] > 0 && ok; + case 2: + if (myRadioButton[ RadioButton31 ]->isChecked()) + { + ok = mySpinBox[ SpinBox31 ]->isValid( msg, !IsPreview() ) && ok; + ok = mySpinBox[ SpinBox32 ]->isValid( msg, !IsPreview() ) && ok; + } + else + { + ok = mySpinBox[ SpinBox33 ]->isValid( msg, !IsPreview() ) && ok; + ok = mySpinBox[ SpinBox34 ]->isValid( msg, !IsPreview() ) && ok; + } + return !myShape->_is_nil() && myFaces.Extent() > 0 && ok; + case 3: + if (myRadioButton[ RadioButton41 ]->isChecked()) + { + ok = mySpinBox[ SpinBox41 ]->isValid( msg, !IsPreview() ) && ok; + ok = mySpinBox[ SpinBox42 ]->isValid( msg, !IsPreview() ) && ok; + } + else + { + ok = mySpinBox[ SpinBox43 ]->isValid( msg, !IsPreview() ) && ok; + ok = mySpinBox[ SpinBox44 ]->isValid( msg, !IsPreview() ) && ok; + } + return !myShape->_is_nil() && myEdges.Extent() > 0 && ok; default: return false; } } @@ -812,72 +792,166 @@ bool OperationGUI_ChamferDlg::isValid( QString& ) // function : execute // purpose : //================================================================================= -bool OperationGUI_ChamferDlg::execute( ObjectList& objects ) +bool OperationGUI_ChamferDlg::execute (ObjectList& objects) { + QStringList aParameters; GEOM::GEOM_Object_var anObj; - bool flag = ( myRadioButton[ RadioButton21 ]->isChecked() && - myRadioButton[ RadioButton31 ]->isChecked() && - myRadioButton[ RadioButton41 ]->isChecked() ); + bool flag = (myRadioButton[ RadioButton21 ]->isChecked() && + myRadioButton[ RadioButton31 ]->isChecked() && + myRadioButton[ RadioButton41 ]->isChecked()); int anId = getConstructorId(); - if ( anId == 0 ) - anObj = GEOM::GEOM_ILocalOperations::_narrow( - getOperation() )->MakeChamferAll( myShape, - mySpinBox[ SpinBox1 ]->GetValue() ); - else if ( anId == 1 ) - { - if ( flag ) - anObj = GEOM::GEOM_ILocalOperations::_narrow( - getOperation() )->MakeChamferEdge( myShape, - mySpinBox[ SpinBox21 ]->GetValue(), - mySpinBox[ SpinBox22 ]->GetValue(), - myFace[ Face1 ], - myFace[ Face2 ] ); - else - anObj = GEOM::GEOM_ILocalOperations::_narrow( - getOperation() )->MakeChamferEdgeAD( myShape, - mySpinBox[ SpinBox23 ]->GetValue(), - mySpinBox[ SpinBox24 ]->GetValue() * PI180, - myFace[ Face1 ], - myFace[ Face2 ]); - } - else if ( anId == 2 ) - { - GEOM::ListOfLong_var anArray = new GEOM::ListOfLong; - anArray->length( myFaces.Extent() ); - for ( int i = 1, n = myFaces.Extent(); i <= n; i++ ) - anArray[ i - 1 ] = myFaces( i ); - if ( flag ) - anObj = GEOM::GEOM_ILocalOperations::_narrow( - getOperation() )->MakeChamferFaces( myShape, - mySpinBox[ SpinBox31 ]->GetValue(), - mySpinBox[ SpinBox32 ]->GetValue(), - anArray ); - else - anObj = GEOM::GEOM_ILocalOperations::_narrow( - getOperation() )->MakeChamferFacesAD( myShape, - mySpinBox[ SpinBox33 ]->GetValue(), - mySpinBox[ SpinBox34 ]->GetValue() * PI180, - anArray ); + if (anId == 0) { + anObj = GEOM::GEOM_ILocalOperations::_narrow(getOperation())-> + MakeChamferAll(myShape, mySpinBox[ SpinBox1 ]->value()); + if (!anObj->_is_nil()) + aParameters << mySpinBox[ SpinBox1 ]->text(); } - else if ( anId == 3 ) + else if (anId == 1) { + if (flag) { + anObj = GEOM::GEOM_ILocalOperations::_narrow(getOperation())-> + MakeChamferEdge(myShape, + mySpinBox[ SpinBox21 ]->value(), + mySpinBox[ SpinBox22 ]->value(), + myFace[ Face1 ], + myFace[ Face2 ]); + if (!anObj->_is_nil()) + { + aParameters << mySpinBox[ SpinBox21 ]->text(); + aParameters << mySpinBox[ SpinBox22 ]->text(); + } + } + else { + anObj = GEOM::GEOM_ILocalOperations::_narrow(getOperation())-> + MakeChamferEdgeAD(myShape, + mySpinBox[ SpinBox23 ]->value(), + mySpinBox[ SpinBox24 ]->value() * PI180, + myFace[ Face1 ], + myFace[ Face2 ]); + if (!anObj->_is_nil()) + { + aParameters << mySpinBox[ SpinBox23 ]->text(); + aParameters << mySpinBox[ SpinBox24 ]->text(); + } + } + } + else if (anId == 2) { GEOM::ListOfLong_var anArray = new GEOM::ListOfLong; - anArray->length( myEdges.Extent() ); - for ( int i = 1, n = myEdges.Extent(); i <= n; i++ ) - anArray[ i - 1 ] = myEdges( i ); - if ( flag ) - anObj = GEOM::GEOM_ILocalOperations::_narrow( - getOperation() )->MakeChamferEdges( myShape, mySpinBox[ SpinBox41 ]->GetValue(), - mySpinBox[ SpinBox42 ]->GetValue(), anArray ); - else - anObj = GEOM::GEOM_ILocalOperations::_narrow( - getOperation() )->MakeChamferEdgesAD( myShape, mySpinBox[ SpinBox43 ]->GetValue(), - mySpinBox[ SpinBox44 ]->GetValue() * PI180, anArray ); + anArray->length(myFaces.Extent()); + + for (int i = 1, n = myFaces.Extent(); i <= n; i++) + anArray[ i - 1 ] = myFaces(i); + + if (flag) { + anObj = GEOM::GEOM_ILocalOperations::_narrow(getOperation())-> + MakeChamferFaces(myShape, + mySpinBox[ SpinBox31 ]->value(), + mySpinBox[ SpinBox32 ]->value(), + anArray); + if (!anObj->_is_nil()) + { + aParameters << mySpinBox[ SpinBox31 ]->text(); + aParameters << mySpinBox[ SpinBox32 ]->text(); + } + } + else { + anObj = GEOM::GEOM_ILocalOperations::_narrow(getOperation())-> + MakeChamferFacesAD(myShape, + mySpinBox[ SpinBox33 ]->value(), + mySpinBox[ SpinBox34 ]->value() * PI180, + anArray); + if (!anObj->_is_nil()) + { + aParameters << mySpinBox[ SpinBox33 ]->text(); + aParameters << mySpinBox[ SpinBox34 ]->text(); + } + } + } + else if (anId == 3) { + GEOM::ListOfLong_var anArray = new GEOM::ListOfLong; + anArray->length(myEdges.Extent()); + for (int i = 1, n = myEdges.Extent(); i <= n; i++) + anArray[ i - 1 ] = myEdges(i); + if (flag) { + anObj = GEOM::GEOM_ILocalOperations::_narrow(getOperation())-> + MakeChamferEdges(myShape, + mySpinBox[ SpinBox41 ]->value(), + mySpinBox[ SpinBox42 ]->value(), + anArray); + if (!anObj->_is_nil()) + { + aParameters << mySpinBox[ SpinBox41 ]->text(); + aParameters << mySpinBox[ SpinBox42 ]->text(); + } + } + else { + anObj = GEOM::GEOM_ILocalOperations::_narrow(getOperation())-> + MakeChamferEdgesAD(myShape, + mySpinBox[ SpinBox43 ]->value(), + mySpinBox[ SpinBox44 ]->value() * PI180, + anArray); + if (!anObj->_is_nil()) + { + aParameters << mySpinBox[ SpinBox43 ]->text(); + aParameters << mySpinBox[ SpinBox44 ]->text(); + } + } } - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); + if (!anObj->_is_nil()) + { + if (!IsPreview()) + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + objects.push_back(anObj._retn()); + } return true; } + +//================================================================================= +// function : RadioButtonPressed() +// purpose : +//================================================================================= +void OperationGUI_ChamferDlg::RadioButtonPressed() +{ + const QObject* s = sender(); + bool flag = s == myRadioButton[ RadioButton21 ] || + s == myRadioButton[ RadioButton31 ] || + s == myRadioButton[ RadioButton41 ]; + + myRadioButton[ RadioButton21 ]->blockSignals(true); + myRadioButton[ RadioButton22 ]->blockSignals(true); + myRadioButton[ RadioButton31 ]->blockSignals(true); + myRadioButton[ RadioButton32 ]->blockSignals(true); + myRadioButton[ RadioButton41 ]->blockSignals(true); + myRadioButton[ RadioButton42 ]->blockSignals(true); + + myRadioButton[ RadioButton21 ]->setChecked(flag); + myRadioButton[ RadioButton31 ]->setChecked(flag); + myRadioButton[ RadioButton41 ]->setChecked(flag); + myRadioButton[ RadioButton22 ]->setChecked(!flag); + myRadioButton[ RadioButton32 ]->setChecked(!flag); + myRadioButton[ RadioButton42 ]->setChecked(!flag); + mySpinBox[ SpinBox21 ]->setEnabled(flag); + mySpinBox[ SpinBox22 ]->setEnabled(flag); + mySpinBox[ SpinBox31 ]->setEnabled(flag); + mySpinBox[ SpinBox32 ]->setEnabled(flag); + mySpinBox[ SpinBox41 ]->setEnabled(flag); + mySpinBox[ SpinBox42 ]->setEnabled(flag); + mySpinBox[ SpinBox23 ]->setEnabled(!flag); + mySpinBox[ SpinBox24 ]->setEnabled(!flag); + mySpinBox[ SpinBox33 ]->setEnabled(!flag); + mySpinBox[ SpinBox34 ]->setEnabled(!flag); + mySpinBox[ SpinBox43 ]->setEnabled(!flag); + mySpinBox[ SpinBox44 ]->setEnabled(!flag); + + myRadioButton[ RadioButton21 ]->blockSignals(false); + myRadioButton[ RadioButton22 ]->blockSignals(false); + myRadioButton[ RadioButton31 ]->blockSignals(false); + myRadioButton[ RadioButton32 ]->blockSignals(false); + myRadioButton[ RadioButton41 ]->blockSignals(false); + myRadioButton[ RadioButton42 ]->blockSignals(false); + + displayPreview(); +} diff --git a/src/OperationGUI/OperationGUI_ChamferDlg.h b/src/OperationGUI/OperationGUI_ChamferDlg.h index 41669752a..dfbe25d92 100644 --- a/src/OperationGUI/OperationGUI_ChamferDlg.h +++ b/src/OperationGUI/OperationGUI_ChamferDlg.h @@ -1,37 +1,43 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : OperationGUI_ChamferDlg.h -// Author : Damien COQUERET -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : OperationGUI_ChamferDlg.h +// Author : Damien COQUERET, Open CASCADE S.A.S. +// +#ifndef OPERATIONGUI_CHAMFERDLG_H +#define OPERATIONGUI_CHAMFERDLG_H -#ifndef DIALOGBOX_CHAMFER_H -#define DIALOGBOX_CHAMFER_H +#include -#include "GEOMBase_Skeleton.h" #include -class DlgRef_SpinBox; +#include + +class SalomeApp_DoubleSpinBox; +class QGroupBox; +class QPushButton; +class QLineEdit; +class QGridLayout; +class QRadioButton; //================================================================================= // class : OperationGUI_ChamferDlg @@ -39,7 +45,7 @@ class DlgRef_SpinBox; //================================================================================= class OperationGUI_ChamferDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT enum { MainObj1, MainObj2, Face1, Face2, MainObj3, Faces, MainObj4, Edges}; enum { SpinBox1, @@ -49,53 +55,58 @@ class OperationGUI_ChamferDlg : public GEOMBase_Skeleton enum { RadioButton21, RadioButton22, RadioButton31, RadioButton32, RadioButton41, RadioButton42 }; + public: - OperationGUI_ChamferDlg(GeometryGUI* theGeometryGUI, QWidget* parent); + OperationGUI_ChamferDlg( GeometryGUI*, QWidget* ); virtual ~OperationGUI_ChamferDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& msg ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void RadioButtonPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ValueChangedInSpinBox( double newValue ); - void ConstructorsClicked( int constructorId ); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void RadioButtonPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ValueChangedInSpinBox( double ); + void ConstructorsClicked( int ); private: - void Init(); - void enterEvent( QEvent* e ); - void reset(); - void createSelWg( const QString&, QPixmap&, QWidget*, const int ); - int getConstructorId() const; - void activateSelection(); - void enableWidgets(); - + void Init(); + void enterEvent( QEvent* ); + void createSelWg( const QString&, QPixmap&, QWidget*, + QGridLayout*, const int ); + void createRadioWg( const QString&, const QString&, QWidget*, + QGridLayout*, const int, const int, const int ); + void activateSelection(); + void enableWidgets(); + private: - int myConstructorId; + int myConstructorId; + + GEOM::GEOM_Object_var myShape; + QMap< int, int > myFace; // indexes of faces from second tab ( Face1,2 ) + TColStd_IndexedMapOfInteger myFaces; // indexes of faces from first tab ( Faces ) + TColStd_IndexedMapOfInteger myEdges; // indexes of edges from fourth tab (Edges) - GEOM::GEOM_Object_var myShape; - QMap< int, int > myFace; // indexes of faces from second tab ( Face1,2 ) - TColStd_IndexedMapOfInteger myFaces; // indexes of faces from first tab ( Faces ) - TColStd_IndexedMapOfInteger myEdges; // indexes of edges from fourth tab (Edges) - - QFrame* myGrp1; - QFrame* myGrp2; - QFrame* myGrp3; - QFrame* myGrp4; - - QMap< int, QPushButton* > mySelBtn; - QMap< int, QLineEdit* > mySelName; - QMap< int, DlgRef_SpinBox* > mySpinBox; - QMap< int, QRadioButton* > myRadioButton; + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; + + QGroupBox* myGrp1; + QGroupBox* myGrp2; + QGroupBox* myGrp3; + QGroupBox* myGrp4; + + QMap< int, QPushButton* > mySelBtn; + QMap< int, QLineEdit* > mySelName; + QMap< int, SalomeApp_DoubleSpinBox* > mySpinBox; + QMap< int, QRadioButton* > myRadioButton; }; -#endif // DIALOGBOX_CHAMFER_H +#endif // OPERATIONGUI_CHAMFERDLG_H diff --git a/src/OperationGUI/OperationGUI_ClippingDlg.cxx b/src/OperationGUI/OperationGUI_ClippingDlg.cxx index 7f4d49762..b24298447 100644 --- a/src/OperationGUI/OperationGUI_ClippingDlg.cxx +++ b/src/OperationGUI/OperationGUI_ClippingDlg.cxx @@ -1,122 +1,109 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : OperationGUI_ClippingDlg.cxx +// Author : Michael Zorin, Open CASCADE S.A.S. (mikhail.zorin@opencascade.com) // -// File : OperationGUI_ClippingDlg.cxx -// Author : Michael Zorin -// Module : GEOM -// $Header$ - #include "OperationGUI_ClippingDlg.h" -#include "DlgRef_SpinBox.h" -#include "SUIT_Session.h" -#include "SUIT_ViewWindow.h" -#include "SVTK_ViewWindow.h" -#include "SVTK_ViewModel.h" +#include +#include +#include +#include -#include "OCCViewer_ViewWindow.h" -#include "OCCViewer_ViewPort3d.h" +#include +#include +#include +#include +#include -#include "utilities.h" +#include +#include +#include + +#include + +// OCC Includes #include #include -// QT Includes -#include -#include -#include -#include -#include - // VTK Includes -#include "VTKViewer.h" #include #include //================================================================================= // class : OperationGUI_ClippingDlg() -// purpose : +// purpose : //================================================================================= -OperationGUI_ClippingDlg::OperationGUI_ClippingDlg(GeometryGUI* theGeometryGUI, QWidget* parent) - : GEOMBase_Skeleton(theGeometryGUI, parent, "OperationGUI_ClippingDlg", false, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +OperationGUI_ClippingDlg::OperationGUI_ClippingDlg( GeometryGUI* theGeometryGUI, QWidget* parent ) + : GEOMBase_Skeleton( theGeometryGUI, parent, false ) { - setCaption( tr( "Change clipping range" ) ); + setWindowTitle( tr( "Change clipping range" ) ); - GroupConstructors->close(); - GroupBoxName->close(); + mainFrame()->GroupConstructors->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->GroupConstructors->close(); + mainFrame()->GroupBoxName->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->GroupBoxName->close(); /***************************************************************/ - GroupArguments = new QGroupBox( this, "GroupArguments" ); - GroupArguments->setColumnLayout(0, Qt::Vertical ); - GroupArguments->layout()->setSpacing( 0 ); - GroupArguments->layout()->setMargin( 0 ); - QGridLayout* GroupArgumentsLayout = new QGridLayout( GroupArguments->layout() ); - GroupArgumentsLayout->setAlignment( Qt::AlignTop ); + GroupArguments = new QGroupBox( centralWidget() ); + QGridLayout* GroupArgumentsLayout = new QGridLayout( GroupArguments ); GroupArgumentsLayout->setSpacing( 6 ); - GroupArgumentsLayout->setMargin( 11 ); + GroupArgumentsLayout->setMargin( 9 ); // Controls - TextLabelNear = new QLabel( GroupArguments, "TextLabelNear" ); - TextLabelNear->setText( tr( "Near" ) ); - TextLabelNear->setFixedWidth(74); + TextLabelNear = new QLabel( tr( "Near" ), GroupArguments ); GroupArgumentsLayout->addWidget( TextLabelNear, 0, 0 ); - SpinBox_Near = new DlgRef_SpinBox( GroupArguments, "SpinBox_Near"); + SpinBox_Near = new SalomeApp_DoubleSpinBox( COORD_MIN, COORD_MAX, 10.0, 3, 10, GroupArguments ); GroupArgumentsLayout->addWidget( SpinBox_Near, 0, 1 ); - TextLabelFar = new QLabel( GroupArguments, "TextLabelFar" ); - TextLabelFar->setText( tr( "Far" ) ); - TextLabelFar->setFixedWidth(74); + TextLabelFar = new QLabel( tr( "Far" ), GroupArguments ); GroupArgumentsLayout->addWidget( TextLabelFar, 0, 2 ); - SpinBox_Far = new DlgRef_SpinBox( GroupArguments, "SpinBox_Far"); + SpinBox_Far = new SalomeApp_DoubleSpinBox( COORD_MIN, COORD_MAX, 10.0, 3, 10, GroupArguments ); GroupArgumentsLayout->addWidget( SpinBox_Far, 0, 3 ); - resetButton = new QPushButton( GroupArguments, "resetButton" ); - resetButton->setText( tr( "Reset" ) ); + resetButton = new QPushButton( tr( "Reset" ), GroupArguments ); GroupArgumentsLayout->addWidget( resetButton, 0, 4 ); - TypeCB = new QComboBox( GroupArguments, "TypeCB" ); - TypeCB->insertItem(tr("OFF")); - TypeCB->insertItem(tr("BACK")); - TypeCB->insertItem(tr("FRONT")); - TypeCB->insertItem(tr("SLICE")); - GroupArgumentsLayout->addMultiCellWidget( TypeCB, 1, 1, 0, 4 ); + TypeCB = new QComboBox( GroupArguments ); + TypeCB->addItem( tr( "OFF" ) ); + TypeCB->addItem( tr( "BACK" ) ); + TypeCB->addItem( tr( "FRONT" ) ); + TypeCB->addItem( tr( "SLICE" ) ); + GroupArgumentsLayout->addWidget( TypeCB, 1, 0, 1, 5 ); - Layout1->addWidget( GroupArguments, 2, 0 ); - - /* Initialisations */ - SpinBox_Near->RangeStepAndValidator( COORD_MIN, COORD_MAX, 10.0, DBL_DIGITS_DISPLAY ); - SpinBox_Far->RangeStepAndValidator( COORD_MIN, COORD_MAX, 10.0, DBL_DIGITS_DISPLAY ); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupArguments ); /* signals and slots connections */ - connect( buttonOk , SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); - connect( buttonApply, SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect( resetButton, SIGNAL (clicked() ), this, SLOT( onReset() ) ) ; + connect( resetButton, SIGNAL( clicked() ), this, SLOT( onReset() ) ) ; - setHelpFileName("none.htm"); + setHelpFileName( "none.htm" ); Init(); } @@ -136,77 +123,74 @@ OperationGUI_ClippingDlg::~ OperationGUI_ClippingDlg() //================================================================================= void OperationGUI_ClippingDlg::Init() { - SUIT_ViewWindow* anActiveWindow = SUIT_Session::session()->activeApplication()->desktop()->activeWindow(); - if (!anActiveWindow) + SUIT_ViewWindow* anActiveWindow = SUIT_Session::session()->activeApplication()->desktop()->activeWindow(); + if ( !anActiveWindow ) return; - if ( anActiveWindow->getViewManager()->getType() == SVTK_Viewer::Type() ) - { - SVTK_ViewWindow* aVTKFrame = dynamic_cast( anActiveWindow ); - if( !aVTKFrame ) - return; + if ( anActiveWindow->getViewManager()->getType() == SVTK_Viewer::Type() ) { + SVTK_ViewWindow* aVTKFrame = dynamic_cast( anActiveWindow ); + if ( !aVTKFrame ) + return; - TextLabelNear->setText( tr( "Near" ) ); - TextLabelFar->setText( tr( "Far" ) ); + TextLabelNear->setText( tr( "Near" ) ); + TextLabelFar->setText( tr( "Far" ) ); - TypeCB->hide(); + TypeCB->hide(); - vtkRenderer* aRenderer = aVTKFrame->getRenderer(); - if(!aRenderer) return; - - vtkCamera* anActiveCamera = aRenderer->GetActiveCamera(); - if( anActiveCamera == NULL ){ - MESSAGE("Trying to reset clipping range of non-existant camera"); - return; - } - - // Find the plane equation for the camera view plane - double vn[3]; - anActiveCamera->GetViewPlaneNormal(vn); - double position[3]; - anActiveCamera->GetPosition(position); - - vtkFloatingPointType bounds[6]; - aRenderer->ComputeVisiblePropBounds(bounds); - - double center[3]; - center[0] = (bounds[0] + bounds[1])/2.0; - center[1] = (bounds[2] + bounds[3])/2.0; - center[2] = (bounds[4] + bounds[5])/2.0; - - double width = sqrt((bounds[1]-bounds[0])*(bounds[1]-bounds[0]) + - (bounds[3]-bounds[2])*(bounds[3]-bounds[2]) + - (bounds[5]-bounds[4])*(bounds[5]-bounds[4])); - - double distance = sqrt((position[0]-center[0])*(position[0]-center[0]) + - (position[1]-center[1])*(position[1]-center[1]) + - (position[2]-center[2])*(position[2]-center[2])); - - vtkFloatingPointType range[2] = {distance - width/2.0, distance + width/2.0}; - - SpinBox_Near->SetValue(range[0]); - SpinBox_Far->SetValue(range[1]); + vtkRenderer* aRenderer = aVTKFrame->getRenderer(); + if ( !aRenderer ) return; + vtkCamera* anActiveCamera = aRenderer->GetActiveCamera(); + if ( anActiveCamera == NULL ) { return; } - else if ( anActiveWindow->getViewManager()->getType() == OCCViewer_Viewer::Type() ) - { - OCCViewer_ViewWindow* aOCCFrame = dynamic_cast( anActiveWindow ); - TextLabelNear->setText( tr( "Depth" ) ); - TextLabelFar->setText( tr( "Thickness" ) ); + // Find the plane equation for the camera view plane + double vn[3]; + anActiveCamera->GetViewPlaneNormal( vn ); + double position[3]; + anActiveCamera->GetPosition( position ); - Handle(V3d_View) view3d = ((OCCViewer_ViewPort3d*)aOCCFrame->getViewPort())->getView(); + vtkFloatingPointType bounds[6]; + aRenderer->ComputeVisiblePropBounds( bounds ); - double depth, thickness; - int ztype= view3d->ZClipping(depth, thickness); - SpinBox_Near->SetValue(depth); - SpinBox_Far->SetValue(thickness); - TypeCB->setCurrentItem(ztype); + double center[3]; + center[0] = ( bounds[0] + bounds[1] ) / 2.0; + center[1] = ( bounds[2] + bounds[3] ) / 2.0; + center[2] = ( bounds[4] + bounds[5] ) / 2.0; - //Handle(V3d_Plane) aPlane = new V3d_Plane( aOCCFrame->getViewer()->getViewer3d() ,0, 0, 1, -100); - //aPlane->Display(view3d); - } + double width = sqrt( ( bounds[1]-bounds[0] ) * ( bounds[1]-bounds[0] ) + + ( bounds[3]-bounds[2] ) * ( bounds[3]-bounds[2] ) + + ( bounds[5]-bounds[4] ) * ( bounds[5]-bounds[4] ) ); + + double distance = sqrt( ( position[0]-center[0] ) * ( position[0]-center[0] ) + + ( position[1]-center[1] ) * ( position[1]-center[1] ) + + ( position[2]-center[2] ) * ( position[2]-center[2] ) ); + + vtkFloatingPointType range[2] = { distance - width/2.0, distance + width/2.0 }; + + SpinBox_Near->setValue( range[0] ); + SpinBox_Far->setValue( range[1] ); + + return; + } + else if ( anActiveWindow->getViewManager()->getType() == OCCViewer_Viewer::Type() ) { + OCCViewer_ViewWindow* aOCCFrame = dynamic_cast( anActiveWindow ); + + TextLabelNear->setText( tr( "Depth" ) ); + TextLabelFar->setText( tr( "Thickness" ) ); + + Handle(V3d_View) view3d = ( (OCCViewer_ViewPort3d*)aOCCFrame->getViewPort() )->getView(); + + double depth, thickness; + int ztype = view3d->ZClipping( depth, thickness ); + SpinBox_Near->setValue( depth ); + SpinBox_Far->setValue( thickness ); + TypeCB->setCurrentIndex( ztype ); + + //Handle(V3d_Plane) aPlane = new V3d_Plane( aOCCFrame->getViewer()->getViewer3d() ,0, 0, 1, -100); + //aPlane->Display(view3d); + } } @@ -216,45 +200,42 @@ void OperationGUI_ClippingDlg::Init() //================================================================================= bool OperationGUI_ClippingDlg::ClickOnApply() { - SUIT_ViewWindow* anActiveWindow = SUIT_Session::session()->activeApplication()->desktop()->activeWindow(); - if (!anActiveWindow) + SUIT_ViewWindow* anActiveWindow = SUIT_Session::session()->activeApplication()->desktop()->activeWindow(); + if ( !anActiveWindow ) return false; - if ( anActiveWindow->getViewManager()->getType() == SVTK_Viewer::Type() ) - { - SVTK_ViewWindow* aVTKFrame = dynamic_cast( anActiveWindow ); - if( !aVTKFrame ) - return false; + if ( anActiveWindow->getViewManager()->getType() == SVTK_Viewer::Type() ) { + SVTK_ViewWindow* aVTKFrame = dynamic_cast( anActiveWindow ); + if ( !aVTKFrame ) + return false; - vtkRenderer* aRenderer = aVTKFrame->getRenderer(); - if(!aRenderer) return false; + vtkRenderer* aRenderer = aVTKFrame->getRenderer(); + if ( !aRenderer ) return false; - vtkCamera* anActiveCamera = aRenderer->GetActiveCamera(); - if( anActiveCamera == NULL ){ - MESSAGE("Trying to reset clipping range of non-existant camera"); - return false; - } - - vtkFloatingPointType range[2] = { SpinBox_Near->GetValue(), SpinBox_Far->GetValue() }; - if (range[0] < 0.0) range[0] = 0.0; - anActiveCamera->SetClippingRange( range ); - - return true; + vtkCamera* anActiveCamera = aRenderer->GetActiveCamera(); + if ( anActiveCamera == NULL ) { + return false; } - else if ( anActiveWindow->getViewManager()->getType() == OCCViewer_Viewer::Type() ) - { - OCCViewer_ViewWindow* aOCCFrame = dynamic_cast( anActiveWindow ); - Handle(V3d_View) view3d = ((OCCViewer_ViewPort3d*)aOCCFrame->getViewPort())->getView(); + vtkFloatingPointType range[2] = { SpinBox_Near->value(), SpinBox_Far->value() }; + if ( range[0] < 0.0 ) range[0] = 0.0; + anActiveCamera->SetClippingRange( range ); - double depth = SpinBox_Near->GetValue(); - double thickness = SpinBox_Far->GetValue(); - int aType = TypeCB->currentItem(); + return true; + } + else if ( anActiveWindow->getViewManager()->getType() == OCCViewer_Viewer::Type() ) { + OCCViewer_ViewWindow* aOCCFrame = dynamic_cast( anActiveWindow ); - view3d->SetZClippingType(V3d_TypeOfZclipping(aType)); - view3d->SetZClippingDepth(depth); - view3d->SetZClippingWidth(thickness); - } + Handle(V3d_View) view3d = ( (OCCViewer_ViewPort3d*)aOCCFrame->getViewPort() )->getView(); + + double depth = SpinBox_Near->value(); + double thickness = SpinBox_Far->value(); + int aType = TypeCB->currentIndex(); + + view3d->SetZClippingType( V3d_TypeOfZclipping( aType ) ); + view3d->SetZClippingDepth( depth ); + view3d->SetZClippingWidth( thickness ); + } return true; } @@ -265,8 +246,8 @@ bool OperationGUI_ClippingDlg::ClickOnApply() //================================================================================= void OperationGUI_ClippingDlg::ClickOnOk() { - ClickOnApply(); - ClickOnCancel(); + if ( ClickOnApply() ) + ClickOnCancel(); } //================================================================================= @@ -282,19 +263,9 @@ void OperationGUI_ClippingDlg::onActivate() // function : enterEvent() // purpose : //================================================================================= -void OperationGUI_ClippingDlg::enterEvent(QEvent*) +void OperationGUI_ClippingDlg::enterEvent( QEvent* ) { - this->setEnabled(true); - return; -} - -//================================================================================= -// function : closeEvent -// purpose : -//================================================================================= -void OperationGUI_ClippingDlg::closeEvent( QCloseEvent* e ) -{ - QDialog::closeEvent( e ); + this->setEnabled( true ); } //================================================================================= @@ -305,70 +276,65 @@ void OperationGUI_ClippingDlg::onReset() { SUIT_ViewWindow* anActiveWindow = SUIT_Session::session()->activeApplication()->desktop()->activeWindow(); - if (!anActiveWindow) + if ( !anActiveWindow ) return; - if ( anActiveWindow->getViewManager()->getType() == SVTK_Viewer::Type() ) - { - SVTK_ViewWindow* aVTKFrame = dynamic_cast( anActiveWindow ); - if( !aVTKFrame ) - return; + if ( anActiveWindow->getViewManager()->getType() == SVTK_Viewer::Type() ) { + SVTK_ViewWindow* aVTKFrame = dynamic_cast( anActiveWindow ); + if ( !aVTKFrame ) + return; - vtkRenderer* aRenderer = aVTKFrame->getRenderer(); - if(!aRenderer) return; - - vtkCamera* anActiveCamera = aRenderer->GetActiveCamera(); - if( anActiveCamera == NULL ){ - MESSAGE("Trying to reset clipping range of non-existant camera"); - return; - } - - // Find the plane equation for the camera view plane - double vn[3]; - anActiveCamera->GetViewPlaneNormal(vn); - double position[3]; - anActiveCamera->GetPosition(position); - - vtkFloatingPointType bounds[6]; - aRenderer->ComputeVisiblePropBounds(bounds); - - double center[3]; - center[0] = (bounds[0] + bounds[1])/2.0; - center[1] = (bounds[2] + bounds[3])/2.0; - center[2] = (bounds[4] + bounds[5])/2.0; - - double width = sqrt((bounds[1]-bounds[0])*(bounds[1]-bounds[0]) + - (bounds[3]-bounds[2])*(bounds[3]-bounds[2]) + - (bounds[5]-bounds[4])*(bounds[5]-bounds[4])); - - double distance = sqrt((position[0]-center[0])*(position[0]-center[0]) + - (position[1]-center[1])*(position[1]-center[1]) + - (position[2]-center[2])*(position[2]-center[2])); - - vtkFloatingPointType range[2] = {distance - width/2.0, distance + width/2.0}; - - SpinBox_Near->SetValue(range[0]); - SpinBox_Far->SetValue(range[1]); + vtkRenderer* aRenderer = aVTKFrame->getRenderer(); + if ( !aRenderer ) return; + vtkCamera* anActiveCamera = aRenderer->GetActiveCamera(); + if ( anActiveCamera == NULL ) { return; } - else if ( anActiveWindow->getViewManager()->getType() == OCCViewer_Viewer::Type() ) - { - OCCViewer_ViewWindow* aOCCFrame = dynamic_cast( anActiveWindow ); - TextLabelNear->setText( tr( "Depth" ) ); - TextLabelFar->setText( tr( "Thickness" ) ); + // Find the plane equation for the camera view plane + double vn[3]; + anActiveCamera->GetViewPlaneNormal( vn ); + double position[3]; + anActiveCamera->GetPosition( position ); - Handle(V3d_View) view3d = ((OCCViewer_ViewPort3d*)aOCCFrame->getViewPort())->getView(); + vtkFloatingPointType bounds[6]; + aRenderer->ComputeVisiblePropBounds( bounds ); - view3d->SetZClippingType(V3d_TypeOfZclipping(0)); - view3d->ZFitAll(); - double depth, thickness; - int ztype= view3d->ZClipping(depth, thickness); - SpinBox_Near->SetValue(0); - SpinBox_Far->SetValue(1000); - TypeCB->setCurrentItem(ztype); - } + double center[3]; + center[0] = ( bounds[0] + bounds[1] ) / 2.0; + center[1] = ( bounds[2] + bounds[3] ) / 2.0; + center[2] = ( bounds[4] + bounds[5] ) / 2.0; - return; + double width = sqrt( ( bounds[1]-bounds[0] ) * ( bounds[1]-bounds[0] ) + + ( bounds[3]-bounds[2] ) * ( bounds[3]-bounds[2] ) + + ( bounds[5]-bounds[4] ) * ( bounds[5]-bounds[4] ) ); + + double distance = sqrt( ( position[0]-center[0] ) * ( position[0]-center[0] ) + + ( position[1]-center[1] ) * ( position[1]-center[1] ) + + ( position[2]-center[2] ) * ( position[2]-center[2] ) ); + + vtkFloatingPointType range[2] = { distance - width/2.0, distance + width/2.0 }; + + SpinBox_Near->setValue( range[0] ); + SpinBox_Far->setValue( range[1] ); + + return; + } + else if ( anActiveWindow->getViewManager()->getType() == OCCViewer_Viewer::Type() ) { + OCCViewer_ViewWindow* aOCCFrame = dynamic_cast( anActiveWindow ); + + TextLabelNear->setText( tr( "Depth" ) ); + TextLabelFar->setText( tr( "Thickness" ) ); + + Handle(V3d_View) view3d = ( (OCCViewer_ViewPort3d*)aOCCFrame->getViewPort() )->getView(); + + view3d->SetZClippingType( V3d_TypeOfZclipping( 0 ) ); + view3d->ZFitAll(); + double depth, thickness; + int ztype= view3d->ZClipping( depth, thickness ); + SpinBox_Near->setValue( 0 ); + SpinBox_Far->setValue( 1000 ); + TypeCB->setCurrentIndex( ztype ); + } } diff --git a/src/OperationGUI/OperationGUI_ClippingDlg.h b/src/OperationGUI/OperationGUI_ClippingDlg.h index 31215cfa6..1e6cba6c6 100644 --- a/src/OperationGUI/OperationGUI_ClippingDlg.h +++ b/src/OperationGUI/OperationGUI_ClippingDlg.h @@ -1,40 +1,38 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : OperationGUI_ClippingDlg.h -// Author : Michael Zorin -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : OperationGUI_ClippingDlg.h +// Author : Michael Zorin, Open CASCADE S.A.S. (mikhail.zorin@opencascade.com) +// +#ifndef OPERATIONGUI_CLIPPINGDLG_H +#define OPERATIONGUI_CLIPPINGDLG_H -#ifndef DIALOGBOX_CLIPPINGRANGE_H -#define DIALOGBOX_CLIPPING_H - -#include "GEOMBase_Skeleton.h" +#include class QGroupBox; class QLabel; class QPushButton; class QComboBox; -class DlgRef_SpinBox; +class SalomeApp_DoubleSpinBox; enum ViewerTypes { VTK, OCC, OTHER }; @@ -44,33 +42,33 @@ enum ViewerTypes { VTK, OCC, OTHER }; //================================================================================= class OperationGUI_ClippingDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - OperationGUI_ClippingDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0); - ~OperationGUI_ClippingDlg(); - + OperationGUI_ClippingDlg( GeometryGUI*, QWidget* = 0 ); + ~OperationGUI_ClippingDlg(); + private: - void Init(); - - ViewerTypes myViewerType; - - virtual void closeEvent( QCloseEvent* e ); - void enterEvent(QEvent* e); - - QGroupBox* GroupArguments; - QLabel* TextLabelNear; - DlgRef_SpinBox* SpinBox_Near; - QLabel* TextLabelFar; - DlgRef_SpinBox* SpinBox_Far; - QPushButton* resetButton; - QComboBox* TypeCB; + void Init(); + + void enterEvent( QEvent* ); + +private: + ViewerTypes myViewerType; + + QGroupBox* GroupArguments; + QLabel* TextLabelNear; + SalomeApp_DoubleSpinBox* SpinBox_Near; + QLabel* TextLabelFar; + SalomeApp_DoubleSpinBox* SpinBox_Far; + QPushButton* resetButton; + QComboBox* TypeCB; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void onActivate(); - void onReset(); + void ClickOnOk(); + bool ClickOnApply(); + void onActivate(); + void onReset(); }; -#endif // DIALOGBOX_CLIPPINGRANGE_H +#endif // OPERATIONGUI_CLIPPINGDLG_H diff --git a/src/OperationGUI/OperationGUI_Fillet2dDlg.cxx b/src/OperationGUI/OperationGUI_Fillet2dDlg.cxx new file mode 100755 index 000000000..b33cfc3ee --- /dev/null +++ b/src/OperationGUI/OperationGUI_Fillet2dDlg.cxx @@ -0,0 +1,400 @@ +// GEOM GEOMGUI : GUI for Geometry component +// +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// File : OperationGUI_Fillet2dDlg.cxx +// Author : DMV, OCN. +// + +#include "OperationGUI_Fillet2dDlg.h" + +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include + +// OCCT Includes +#include +#include + +#include + +//================================================================================= +// class : OperationGUI_Fillet2dDlg() +// purpose : Constructs a OperationGUI_Fillet2dDlg which is a child of 'parent', with the +// name 'name' and widget flags set to 'f'. +// The dialog will by default be modeless, unless you set 'modal' to +// TRUE to construct a modal dialog. +//================================================================================= +OperationGUI_Fillet2dDlg::OperationGUI_Fillet2dDlg (GeometryGUI* theGeometryGUI, QWidget* parent) + : GEOMBase_Skeleton(theGeometryGUI, parent, false) +{ + SUIT_ResourceMgr* aResMgr = myGeomGUI->getApp()->resourceMgr(); + QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_FILLET_2D"))); + QPixmap iconSelect (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); + + setWindowTitle(tr("GEOM_FILLET_2D_TITLE")); + + /***************************************************************/ + mainFrame()->GroupConstructors->setTitle(tr("GEOM_FILLET_2D")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->close(); + + GroupVertexes = new DlgRef_2Sel1Spin(centralWidget()); + GroupVertexes->GroupBox1->setTitle(tr("GEOM_FILLET_2D")); + GroupVertexes->TextLabel1->setText(tr("GEOM_PLANAR_FACE")); + GroupVertexes->TextLabel2->setText(tr("GEOM_VERTEXES")); + GroupVertexes->TextLabel3->setText(tr("GEOM_RADIUS")); + GroupVertexes->PushButton1->setIcon(iconSelect); + GroupVertexes->PushButton2->setIcon(iconSelect); + GroupVertexes->LineEdit1->setReadOnly(true); + GroupVertexes->LineEdit2->setReadOnly(true); + + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupVertexes); + + /***************************************************************/ + + // Set range of spinboxes + double SpecificStep = 10.0; + initSpinBox(GroupVertexes->SpinBox_DX, 0.00001, COORD_MAX, SpecificStep, 5); // VSR: TODO: DBL_DIGITS_DISPLAY + + setHelpFileName("fillet2d_operation_page.html"); + + // Initialisation + Init(); + resize(0,0); +} + +//================================================================================= +// function : ~OperationGUI_Fillet2dDlg() +// purpose : Destroys the object and frees any allocated resources +//================================================================================= +OperationGUI_Fillet2dDlg::~OperationGUI_Fillet2dDlg() +{ +} + +//================================================================================= +// function : Init() +// purpose : +//================================================================================= +void OperationGUI_Fillet2dDlg::Init() +{ + // Set Initial values of spinboxes + GroupVertexes->SpinBox_DX->setValue(5); + + // Clear line edits + GroupVertexes->LineEdit1->setText(""); + GroupVertexes->LineEdit2->setText(""); + + myShape = GEOM::GEOM_Object::_nil(); + + myVertexes.Clear(); + + // signals and slots connections + + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk() )); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); + + // connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); + + connect(GroupVertexes->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupVertexes->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + + connect(GroupVertexes->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupVertexes->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + + connect(GroupVertexes->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); + + initName(tr("GEOM_FILLET_2D")); + GroupVertexes->PushButton1->click(); +} + +//================================================================================= +// function : ClickOnOk() +// purpose : +//================================================================================= +void OperationGUI_Fillet2dDlg::ClickOnOk() +{ + if (ClickOnApply()) + ClickOnCancel(); +} + +//================================================================================= +// function : ClickOnApply() +// purpose : +//================================================================================= +bool OperationGUI_Fillet2dDlg::ClickOnApply() +{ + if (!onAccept()) + return false; + + initName(); + // Reset dialog state + GroupVertexes->LineEdit1->setText(""); + GroupVertexes->LineEdit2->setText(""); + myShape = GEOM::GEOM_Object::_nil(); + myVertexes.Clear(); + GroupVertexes->PushButton1->click(); + + return true; +} + +//================================================================================= +// function : SelectionIntoArgument() +// purpose : Called when selection is changed or on dialog initialization or activation +//================================================================================= +void OperationGUI_Fillet2dDlg::SelectionIntoArgument() +{ + erasePreview(); + myEditCurrentArgument->setText(""); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + // If selection of main object is activated + if (myEditCurrentArgument == GroupVertexes->LineEdit1) { + myShape = GEOM::GEOM_Object::_nil(); + if (aSelList.Extent() == 1) { + Standard_Boolean aResult = Standard_False; + GEOM::GEOM_Object_var anObj = + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aResult); + + if (aResult && !anObj->_is_nil()) { + QString aName = GEOMBase::GetName( anObj ); + TopoDS_Shape aShape; + if ( GEOMBase::GetShape( anObj, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) { + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + if ( aMap.Extent() == 1 ) { // Local Selection + int anIndex = aMap( 1 ); + aName += QString( ":face_%1" ).arg( anIndex ); + + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather( anObj, aName ); + + if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); + anObj = aShapesOp->GetSubShape( anObj, anIndex ); + } + else + anObj = aFindedObject; // get Object from study + } + else { // Global Selection + if ( aShape.ShapeType() != TopAbs_FACE ) { + anObj = GEOM::GEOM_Object::_nil(); + aName = ""; + } + } + } + myShape = anObj; + myEditCurrentArgument->setText(aName +); + displayPreview(); + } + } + } else if (myEditCurrentArgument == GroupVertexes->LineEdit2) { + myVertexes.Clear(); + if (aSelList.Extent() == 1) { + Standard_Boolean aResult = Standard_False; + GEOM::GEOM_Object_var anObj = + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aResult); + + if (aResult && !anObj->_is_nil()) { + TColStd_IndexedMapOfInteger anIndexes; + aSelMgr->GetIndexes(aSelList.First(), anIndexes); + + if (anIndexes.Extent() > 0) { + QString aName; + if (anIndexes.Extent() == 1) { + int anIndex = anIndexes(1); + aName = QString(GEOMBase::GetName(anObj)) + QString(":vertex_%1").arg(anIndex); + } + else + aName = tr("GEOM_MEN_POPUP_NAME").arg(anIndexes.Extent()); + + myEditCurrentArgument->setText(aName); + myVertexes = anIndexes; + displayPreview(); + } + } + } + } + + if (myEditCurrentArgument == GroupVertexes->LineEdit1) { + if (!myShape->_is_nil() && myVertexes.Extent() == 0) + GroupVertexes->PushButton2->click(); + } +} + +//================================================================================= +// function : SetEditCurrentArgument() +// purpose : +//================================================================================= +void OperationGUI_Fillet2dDlg::SetEditCurrentArgument() +{ + QPushButton* send = (QPushButton*)sender(); + + if (send == GroupVertexes->PushButton1) { + myEditCurrentArgument = GroupVertexes->LineEdit1; + GroupVertexes->PushButton2->setDown(false); + GroupVertexes->LineEdit2->setEnabled(false); + } + else if (send == GroupVertexes->PushButton2) { + myEditCurrentArgument = GroupVertexes->LineEdit2; + GroupVertexes->PushButton1->setDown(false); + GroupVertexes->LineEdit1->setEnabled(false); + } + + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + activateSelection(); + + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); +} + +//================================================================================= +// function : LineEditReturnPressed() +// purpose : +//================================================================================= +void OperationGUI_Fillet2dDlg::LineEditReturnPressed() +{ + QLineEdit* send = (QLineEdit*)sender(); + + if (send == GroupVertexes->LineEdit1) + myEditCurrentArgument = GroupVertexes->LineEdit1; + else if (send == GroupVertexes->LineEdit2) + myEditCurrentArgument = GroupVertexes->LineEdit2; + else + return; + + GEOMBase_Skeleton::LineEditReturnPressed(); +} + +//================================================================================= +// function : ActivateThisDialog() +// purpose : +//================================================================================= +void OperationGUI_Fillet2dDlg::ActivateThisDialog() +{ + GEOMBase_Skeleton::ActivateThisDialog(); +} + +//================================================================================= +// function : enterEvent() +// purpose : +//================================================================================= +void OperationGUI_Fillet2dDlg::enterEvent (QEvent*) +{ + if (!mainFrame()->GroupConstructors->isEnabled()) + this->ActivateThisDialog(); +} + +//================================================================================= +// function : ValueChangedInSpinBox() +// purpose : +//================================================================================= +void OperationGUI_Fillet2dDlg::ValueChangedInSpinBox (double) +{ + displayPreview(); +} + +//================================================================================= +// function : activateSelection +// purpose : Activate selection in accordance with myEditCurrentArgument +//================================================================================= +void OperationGUI_Fillet2dDlg::activateSelection() +{ + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + globalSelection(); + if (myEditCurrentArgument == GroupVertexes->LineEdit1) + globalSelection( GEOM_FACE ); // localSelection(myShape, TopAbs_FACE); + else if (!myShape->_is_nil() && myEditCurrentArgument == GroupVertexes->LineEdit2) + localSelection(myShape, TopAbs_VERTEX); + + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); +} + +//================================================================================= +// function : createOperation +// purpose : +//================================================================================= +GEOM::GEOM_IOperations_ptr OperationGUI_Fillet2dDlg::createOperation() +{ + return getGeomEngine()->GetILocalOperations(getStudyId()); +} + +//================================================================================= +// function : isValid() +// purpose : Verify validity of input data +//================================================================================= +bool OperationGUI_Fillet2dDlg::isValid (QString&) +{ + return !myShape->_is_nil() && myVertexes.Extent() > 0; +} + +//================================================================================= +// function : execute +// purpose : +//================================================================================= +bool OperationGUI_Fillet2dDlg::execute (ObjectList& objects) +{ + GEOM::GEOM_Object_var anObj; + + GEOM::ListOfLong_var aListOfIndexes = new GEOM::ListOfLong; + aListOfIndexes->length(myVertexes.Extent()); + + for (int i = 1, n = myVertexes.Extent(); i <= n; i++) + aListOfIndexes[ i - 1 ] = myVertexes(i); + + anObj = GEOM::GEOM_ILocalOperations::_narrow(getOperation())-> + MakeFillet2D(myShape, getRadius(), aListOfIndexes); + + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + + return true; +} + +//================================================================================= +// function : getRadius +// purpose : Get radius +//================================================================================= +double OperationGUI_Fillet2dDlg::getRadius() const +{ + return GroupVertexes ->SpinBox_DX->value(); +} diff --git a/src/OperationGUI/OperationGUI_Fillet2dDlg.h b/src/OperationGUI/OperationGUI_Fillet2dDlg.h new file mode 100755 index 000000000..523dbad04 --- /dev/null +++ b/src/OperationGUI/OperationGUI_Fillet2dDlg.h @@ -0,0 +1,75 @@ +// GEOM GEOMGUI : GUI for Geometry component +// +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// File : OperationGUI_Fillet2dDlg.h +// Author : DMV, OCN +// + +#ifndef OPERATIONGUI_FILLET2DDLG_H +#define OPERATIONGUI_FILLET2DDLG_H + +#include + +#include + +class DlgRef_2Sel1Spin; + +//================================================================================= +// class : OperationGUI_Fillet2dDlg +// purpose : +//================================================================================= +class OperationGUI_Fillet2dDlg : public GEOMBase_Skeleton +{ + Q_OBJECT + +public: + OperationGUI_Fillet2dDlg( GeometryGUI*, QWidget* ); + ~OperationGUI_Fillet2dDlg(); + +protected: + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + +private slots: + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ValueChangedInSpinBox( double ); + +private: + void Init(); + void enterEvent( QEvent* ); + void activateSelection(); + double getRadius() const; + +private: + GEOM::GEOM_Object_var myShape; + TColStd_IndexedMapOfInteger myVertexes; + + DlgRef_2Sel1Spin* GroupVertexes; +}; + +#endif // OPERATIONGUI_FILLET2DDLG_H diff --git a/src/OperationGUI/OperationGUI_FilletDlg.cxx b/src/OperationGUI/OperationGUI_FilletDlg.cxx index 87fbbfd76..84a2f3134 100644 --- a/src/OperationGUI/OperationGUI_FilletDlg.cxx +++ b/src/OperationGUI/OperationGUI_FilletDlg.cxx @@ -1,155 +1,172 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : OperationGUI_FilletDlg.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// File : OperationGUI_FilletDlg.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "OperationGUI_FilletDlg.h" -#include "DlgRef_1Sel1Spin.h" -#include "DlgRef_2Sel3Spin2Rb.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "OCCViewer_ViewModel.h" +#include +#include +#include -#include "qlabel.h" -#include "qpixmap.h" +#include +#include +#include +#include +#include +#include +#include +#include + +// OCCT Includes #include #include -#include -#include "GEOMImpl_Types.hxx" +#include //================================================================================= // class : OperationGUI_FilletDlg() -// purpose : Constructs a OperationGUI_FilletDlg which is a child of 'parent', with the +// purpose : Constructs a OperationGUI_FilletDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -OperationGUI_FilletDlg::OperationGUI_FilletDlg(GeometryGUI* theGeometryGUI, QWidget* parent) - :GEOMBase_Skeleton(theGeometryGUI, parent, "OperationGUI_FilletDlg", false, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +OperationGUI_FilletDlg::OperationGUI_FilletDlg (GeometryGUI* theGeometryGUI, QWidget* parent) + : GEOMBase_Skeleton(theGeometryGUI, parent, false), + myInitial(true) { - myConstructorId = -1; - SUIT_ResourceMgr* aResMgr = myGeomGUI->getApp()->resourceMgr(); QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_FILLET_ALL"))); QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_FILLET_EDGE"))); QPixmap image2 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_FILLET_FACE"))); - QPixmap iconSelect(aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); + QPixmap iconSelect (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_FILLET_TITLE")); + setWindowTitle(tr("GEOM_FILLET_TITLE")); /***************************************************************/ - GroupConstructors->setTitle( tr( "GEOM_FILLET" ) ); - RadioButton1->setPixmap( image0 ); - RadioButton2->setPixmap( image1 ); - RadioButton3->setPixmap( image2 ); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_FILLET")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setIcon(image1); + mainFrame()->RadioButton3->setIcon(image2); - Group1 = new DlgRef_1Sel1Spin( this, "Group1" ); - Group1->GroupBox1->setTitle( tr( "GEOM_FILLET_ALL" ) ); - Group1->TextLabel1->setText( tr( "GEOM_MAIN_OBJECT" ) ); - Group1->TextLabel2->setText( tr( "GEOM_RADIUS" ) ); - Group1->PushButton1->setPixmap( iconSelect ); - Group1->LineEdit1->setReadOnly( true ); + Group1 = new DlgRef_1Sel1Spin(centralWidget()); + Group1->GroupBox1->setTitle(tr("GEOM_FILLET_ALL")); + Group1->TextLabel1->setText(tr("GEOM_MAIN_OBJECT")); + Group1->TextLabel2->setText(tr("GEOM_RADIUS")); + Group1->PushButton1->setIcon(iconSelect); + Group1->LineEdit1->setReadOnly(true); - Group2 = new DlgRef_2Sel3Spin2Rb( this, "Group2" ); - Group2->GroupBox1->setTitle( tr( "GEOM_FILLET_EDGES" ) ); - Group2->TextLabel1->setText( tr( "GEOM_MAIN_OBJECT" ) ); - Group2->TextLabel2->setText( tr( "SELECTED_EDGES" ) ); - Group2->TextLabel3->setText( tr( "GEOM_RADIUS" ) ); - Group2->TextLabel4->setText( tr( "GEOM_R1" ) ); - Group2->TextLabel5->setText( tr( "GEOM_R2" ) ); - Group2->PushButton1->setPixmap( iconSelect ); - Group2->PushButton2->setPixmap( iconSelect ); - Group2->LineEdit1->setReadOnly( true ); - Group2->LineEdit2->setReadOnly( true ); + Group2 = new DlgRef_2Sel3Spin2Rb(centralWidget()); + Group2->GroupBox1->setTitle(tr("GEOM_FILLET_EDGES")); + Group2->TextLabel1->setText(tr("GEOM_MAIN_OBJECT")); + Group2->TextLabel2->setText(tr("SELECTED_EDGES")); + Group2->TextLabel3->setText(tr("GEOM_RADIUS")); + Group2->TextLabel4->setText(tr("GEOM_R1")); + Group2->TextLabel5->setText(tr("GEOM_R2")); + Group2->PushButton1->setIcon(iconSelect); + Group2->PushButton2->setIcon(iconSelect); + Group2->LineEdit1->setReadOnly(true); + Group2->LineEdit2->setReadOnly(true); - Group3 = new DlgRef_2Sel3Spin2Rb( this, "Group3" ); - Group3->GroupBox1->setTitle(tr( "GEOM_FILLET_FACES" ) ); - Group3->TextLabel1->setText(tr( "GEOM_MAIN_OBJECT" ) ); - Group3->TextLabel2->setText(tr( "SELECTED_FACES" ) ); - Group3->TextLabel3->setText(tr( "GEOM_RADIUS" ) ); - Group3->TextLabel4->setText(tr( "GEOM_R1" ) ); - Group3->TextLabel5->setText(tr( "GEOM_R2" ) ); - Group3->PushButton1->setPixmap( iconSelect ); - Group3->PushButton2->setPixmap( iconSelect ); - Group3->LineEdit1->setReadOnly( true ); - Group3->LineEdit2->setReadOnly( true ); + Group3 = new DlgRef_2Sel3Spin2Rb(centralWidget()); + Group3->GroupBox1->setTitle(tr("GEOM_FILLET_FACES")); + Group3->TextLabel1->setText(tr("GEOM_MAIN_OBJECT")); + Group3->TextLabel2->setText(tr("SELECTED_FACES")); + Group3->TextLabel3->setText(tr("GEOM_RADIUS")); + Group3->TextLabel4->setText(tr("GEOM_R1")); + Group3->TextLabel5->setText(tr("GEOM_R2")); + Group3->PushButton1->setIcon(iconSelect); + Group3->PushButton2->setIcon(iconSelect); + Group3->LineEdit1->setReadOnly(true); + Group3->LineEdit2->setReadOnly(true); - Layout1->addWidget( Group1, 2, 0 ); - Layout1->addWidget( Group2, 2, 0 ); - Layout1->addWidget( Group3, 2, 0 ); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(Group1); + layout->addWidget(Group2); + layout->addWidget(Group3); /***************************************************************/ + // Set range of spinboxes double SpecificStep = 10.0; - Group1->SpinBox_DX->RangeStepAndValidator(0.001, COORD_MAX, SpecificStep, DBL_DIGITS_DISPLAY); - Group2->SpinBox_DX->RangeStepAndValidator(0.001, COORD_MAX, SpecificStep, DBL_DIGITS_DISPLAY); - Group2->SpinBox_DY->RangeStepAndValidator(0.001, COORD_MAX, SpecificStep, DBL_DIGITS_DISPLAY); - Group2->SpinBox_DZ->RangeStepAndValidator(0.001, COORD_MAX, SpecificStep, DBL_DIGITS_DISPLAY); - Group3->SpinBox_DX->RangeStepAndValidator(0.001, COORD_MAX, SpecificStep, DBL_DIGITS_DISPLAY); - Group3->SpinBox_DY->RangeStepAndValidator(0.001, COORD_MAX, SpecificStep, DBL_DIGITS_DISPLAY); - Group3->SpinBox_DZ->RangeStepAndValidator(0.001, COORD_MAX, SpecificStep, DBL_DIGITS_DISPLAY); + initSpinBox(Group1->SpinBox_DX, 0.001, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(Group2->SpinBox_DX, 0.001, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(Group2->SpinBox_DY, 0.001, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(Group2->SpinBox_DZ, 0.001, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(Group3->SpinBox_DX, 0.001, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(Group3->SpinBox_DY, 0.001, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(Group3->SpinBox_DZ, 0.001, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY setHelpFileName("fillet_operation_page.html"); - /* Initialisations */ + // Initialisation Init(); } - //================================================================================= // function : ~OperationGUI_FilletDlg() // purpose : Destroys the object and frees any allocated resources //================================================================================= OperationGUI_FilletDlg::~OperationGUI_FilletDlg() -{ +{ } - //================================================================================= // function : Init() // purpose : //================================================================================= void OperationGUI_FilletDlg::Init() { - myConstructorId = -1; - reset(); - RadioButton1->setChecked( true ); - myEditCurrentArgument = Group1->LineEdit1; + // Set Initial values of spinboxes + Group1->SpinBox_DX->setValue(5); + Group2->SpinBox_DX->setValue(5); + Group2->SpinBox_DY->setValue(5); + Group2->SpinBox_DZ->setValue(5); + Group3->SpinBox_DX->setValue(5); + Group3->SpinBox_DY->setValue(5); + Group3->SpinBox_DZ->setValue(5); + + // Clear line edits + Group1->LineEdit1->setText(""); + Group2->LineEdit1->setText(""); + Group2->LineEdit2->setText(""); + Group3->LineEdit1->setText(""); + Group3->LineEdit2->setText(""); + + myShape = GEOM::GEOM_Object::_nil(); + + myFaces.Clear(); + myEdges.Clear(); + + // signals and slots connections // main buttons - connect( buttonOk , SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); - connect( buttonApply, SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk() )); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); // group box - connect( GroupConstructors, SIGNAL( clicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); // push buttons connect(Group1->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); @@ -163,7 +180,7 @@ void OperationGUI_FilletDlg::Init() connect(Group2->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); connect(Group3->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - // spin boxes + // spin boxes connect(Group1->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); connect(Group2->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); connect(Group2->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); @@ -172,226 +189,240 @@ void OperationGUI_FilletDlg::Init() connect(Group3->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); connect(Group3->SpinBox_DZ, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - //RadioButtons - connect( Group2->RadioButton1, SIGNAL( clicked() ), this, SLOT( RadioButton_Clicked() ) ); - connect( Group2->RadioButton2, SIGNAL( clicked() ), this, SLOT( RadioButton_Clicked() ) ); - connect( Group3->RadioButton1, SIGNAL( clicked() ), this, SLOT( RadioButton_Clicked() ) ); - connect( Group3->RadioButton2, SIGNAL( clicked() ), this, SLOT( RadioButton_Clicked() ) ); + // radio buttons + connect(Group2->RadioButton1, SIGNAL(clicked()), this, SLOT(RadioButtonClicked())); + connect(Group2->RadioButton2, SIGNAL(clicked()), this, SLOT(RadioButtonClicked())); + connect(Group3->RadioButton1, SIGNAL(clicked()), this, SLOT(RadioButtonClicked())); + connect(Group3->RadioButton2, SIGNAL(clicked()), this, SLOT(RadioButtonClicked())); - // selection - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + initName(tr("GEOM_FILLET")); - initName( tr( "GEOM_FILLET" ) ); - - Group2->hide(); - Group3->hide(); - Group1->show(); + myConstructorId = -1; + ConstructorsClicked(0); } - //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void OperationGUI_FilletDlg::ConstructorsClicked( int constructorId ) +void OperationGUI_FilletDlg::ConstructorsClicked (int constructorId) { - if ( SUIT_Session::session()->activeApplication()->desktop()->activeWindow()->getViewManager()->getType() - != OCCViewer_Viewer::Type() ) - { - RadioButton1->setChecked( true ); + if (myGeomGUI->getApp()->desktop()->activeWindow()->getViewManager()->getType() + != OCCViewer_Viewer::Type()) { + mainFrame()->RadioButton1->setChecked(true); return; } - if ( myConstructorId == constructorId ) + if (myConstructorId == constructorId) return; // Get radius from previous widget - double R = 5, R1 = 5, R2 = 5; - if ( myConstructorId == 0 ) R = Group1->SpinBox_DX->GetValue(); - else if ( myConstructorId == 1 ) { - R = Group2->SpinBox_DX->GetValue(); - R1 = Group2->SpinBox_DY->GetValue(); - R2 = Group2->SpinBox_DZ->GetValue(); + QString R = "5", R1 = "5", R2 = "5"; + if (myConstructorId == 0) { + R = Group1->SpinBox_DX->text(); + } + else if (myConstructorId == 1) { + R = Group2->SpinBox_DX->text(); + R1 = Group2->SpinBox_DY->text(); + R2 = Group2->SpinBox_DZ->text(); } else { - R = Group3->SpinBox_DX->GetValue(); - R1 = Group3->SpinBox_DY->GetValue(); - R2 = Group3->SpinBox_DZ->GetValue(); + R = Group3->SpinBox_DX->text(); + R1 = Group3->SpinBox_DY->text(); + R2 = Group3->SpinBox_DZ->text(); } myConstructorId = constructorId; - switch ( constructorId ) - { - case 0: - Group1->show(); - Group2->hide(); - Group3->hide(); - Group1->SpinBox_DX->SetValue( R ); + switch (constructorId) { + case 0: + Group2->hide(); + Group3->hide(); + Group1->show(); + Group1->SpinBox_DX->setText(R); break; - case 1: - Group1->hide(); - Group2->show(); - Group3->hide(); - Group2->SpinBox_DX->SetValue( R ); - Group2->SpinBox_DY->SetValue( R1 ); - Group2->SpinBox_DZ->SetValue( R2 ); + case 1: + Group1->hide(); + Group3->hide(); + Group2->show(); + Group2->SpinBox_DX->setText(R); + Group2->SpinBox_DY->setText(R1); + Group2->SpinBox_DZ->setText(R2); break; - case 2: - Group1->hide(); - Group2->hide(); - Group3->show(); - Group3->SpinBox_DX->SetValue( R ); - Group3->SpinBox_DY->SetValue( R1 ); - Group3->SpinBox_DZ->SetValue( R2 ); + case 2: + Group1->hide(); + Group2->hide(); + Group3->show(); + Group3->SpinBox_DX->setText(R); + Group3->SpinBox_DY->setText(R1); + Group3->SpinBox_DZ->setText(R2); break; - default: + default: break; } - if ( constructorId == 0 ) myEditCurrentArgument = Group1->LineEdit1; - else if ( constructorId == 1 ) myEditCurrentArgument = Group2->LineEdit1; - else myEditCurrentArgument = Group3->LineEdit1; + if (constructorId == 0) Group1->PushButton1->click(); + else if (constructorId == 1) Group2->PushButton1->click(); + else Group3->PushButton1->click(); - activateSelection(); enableWidgets(); - if ( !myShape->_is_nil() ) - { - myEditCurrentArgument->setText( GEOMBase::GetName( myShape ) ); - GEOMBase_Skeleton::LineEditReturnPressed(); + if (myInitial) { + myInitial = false; + SelectionIntoArgument(); } - else - myEditCurrentArgument->setText( "" ); + else { + if (!myShape->_is_nil()) { + myEditCurrentArgument->setText(GEOMBase::GetName(myShape)); + GEOMBase_Skeleton::LineEditReturnPressed(); + switch (getConstructorId()) { + case 1: + if (myEdges.Extent() == 0) + Group2->PushButton2->click(); + break; + case 2: + if (myFaces.Extent() == 0) + Group3->PushButton2->click(); + break; + default: + break; + } + } + else + myEditCurrentArgument->setText(""); - displayPreview(); + displayPreview(); + } + + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); } - //================================================================================= // function : ClickOnOk() // purpose : //================================================================================= void OperationGUI_FilletDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool OperationGUI_FilletDlg::ClickOnApply() { - if ( !onAccept() ) + if (!onAccept()) return false; initName(); + // activate selection and connect selection manager + ConstructorsClicked(getConstructorId()); return true; } //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection has changed +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void OperationGUI_FilletDlg::SelectionIntoArgument() { erasePreview(); - myEditCurrentArgument->setText( "" ); + myEditCurrentArgument->setText(""); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); // If selection of main object is activated - if ( myEditCurrentArgument == Group1->LineEdit1 || - myEditCurrentArgument == Group2->LineEdit1 || - myEditCurrentArgument == Group3->LineEdit1 ) + if (myEditCurrentArgument == Group1->LineEdit1 || + myEditCurrentArgument == Group2->LineEdit1 || + myEditCurrentArgument == Group3->LineEdit1) { - if ( IObjectCount() == 1 ) - { + myShape = GEOM::GEOM_Object::_nil(); + if (aSelList.Extent() == 1) { Standard_Boolean aResult = Standard_False; GEOM::GEOM_Object_var anObj = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), aResult ); + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aResult); - if ( aResult && !anObj->_is_nil() ) - { + if (aResult && !anObj->_is_nil()) { myShape = anObj; - myEditCurrentArgument->setText( GEOMBase::GetName( anObj ) ); + myEditCurrentArgument->setText(GEOMBase::GetName(anObj)); displayPreview(); - enableWidgets(); - return; } } - myShape = GEOM::GEOM_Object::_nil(); enableWidgets(); } // If face or edge selection is activated - else if ( myEditCurrentArgument == Group2->LineEdit2 || - myEditCurrentArgument == Group3->LineEdit2 ) + else if (myEditCurrentArgument == Group2->LineEdit2 || + myEditCurrentArgument == Group3->LineEdit2) { - if ( IObjectCount() == 1 ) - { + if (myEditCurrentArgument == Group2->LineEdit2) myEdges.Clear(); + else myFaces.Clear(); + if (aSelList.Extent() == 1) { Standard_Boolean aResult = Standard_False; GEOM::GEOM_Object_var anObj = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), aResult ); + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aResult); - if ( aResult && !anObj->_is_nil() ) - { + if (aResult && !anObj->_is_nil()) { TColStd_IndexedMapOfInteger anIndexes; - myGeomGUI->getApp()->selectionMgr()->GetIndexes( firstIObject(), anIndexes ); + aSelMgr->GetIndexes(aSelList.First(), anIndexes); - if ( anIndexes.Extent() > 0 ) - { + if (anIndexes.Extent() > 0) { QString aName; - if ( anIndexes.Extent() == 1 ) - { - int anIndex = anIndexes( 1 ); + if (anIndexes.Extent() == 1) { + int anIndex = anIndexes(1); - aName = QString( GEOMBase::GetName( anObj ) ) + QString( ":%1" ).arg( anIndex ); + aName = QString(GEOMBase::GetName(anObj)) + QString(":%1").arg(anIndex); + } + else { + aName = tr("GEOM_MEN_POPUP_NAME").arg(anIndexes.Extent()); } - else - aName = tr( "GEOM_MEN_POPUP_NAME" ).arg( anIndexes.Extent() ); - myEditCurrentArgument->setText( aName ); + myEditCurrentArgument->setText(aName); - if ( myConstructorId == 1 ) + if (myConstructorId == 1) myEdges = anIndexes; else myFaces = anIndexes; displayPreview(); - return; } } } - myFaces.Clear(); + } + + // clear selection + if (!(myEditCurrentArgument == Group2->LineEdit2 || + myEditCurrentArgument == Group3->LineEdit2)) { + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + } + + switch (getConstructorId()) { + case 1: + if (myEditCurrentArgument == Group2->LineEdit1) { + if (!myShape->_is_nil() && myEdges.Extent() == 0) + Group2->PushButton2->click(); + } + break; + case 2: + if (myEditCurrentArgument == Group3->LineEdit1) { + if (!myShape->_is_nil() && myFaces.Extent() == 0) + Group3->PushButton2->click(); + } + break; + default: + break; } } - -//================================================================================= -// function : LineEditReturnPressed() -// purpose : -//================================================================================= -void OperationGUI_FilletDlg::LineEditReturnPressed() -{ - QLineEdit* send = ( QLineEdit* )sender(); - - if ( send == Group1->LineEdit1 ) - myEditCurrentArgument = Group1->LineEdit1; - else if ( send == Group2->LineEdit1 ) - myEditCurrentArgument = Group2->LineEdit1; - else if ( send == Group3->LineEdit1 ) - myEditCurrentArgument = Group3->LineEdit1; - else - return; - - GEOMBase_Skeleton::LineEditReturnPressed(); - return; -} - - //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -400,35 +431,61 @@ void OperationGUI_FilletDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if ( send == Group1->PushButton1 ) - { - Group1->LineEdit1->setFocus(); + if (send == Group1->PushButton1) { myEditCurrentArgument = Group1->LineEdit1; } - else if( send == Group2->PushButton1 ) - { - Group2->LineEdit1->setFocus(); + else if (send == Group2->PushButton1) { myEditCurrentArgument = Group2->LineEdit1; + Group2->PushButton2->setDown(false); + Group2->LineEdit2->setEnabled(false); } - else if( send == Group2->PushButton2 ) - { - Group2->LineEdit2->setFocus(); + else if (send == Group2->PushButton2) { myEditCurrentArgument = Group2->LineEdit2; + Group2->PushButton1->setDown(false); + Group2->LineEdit1->setEnabled(false); } - else if ( send == Group3->PushButton1 ) - { - Group3->LineEdit1->setFocus(); + else if (send == Group3->PushButton1) { myEditCurrentArgument = Group3->LineEdit1; + Group3->PushButton2->setDown(false); + Group3->LineEdit2->setEnabled(false); } - else if( send == Group3->PushButton2 ) - { - Group3->LineEdit1->setFocus(); + else if (send == Group3->PushButton2) { myEditCurrentArgument = Group3->LineEdit2; + Group3->PushButton1->setDown(false); + Group3->LineEdit1->setEnabled(false); } + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + activateSelection(); + + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); } +//================================================================================= +// function : LineEditReturnPressed() +// purpose : +//================================================================================= +void OperationGUI_FilletDlg::LineEditReturnPressed() +{ + QLineEdit* send = (QLineEdit*)sender(); + + if (send == Group1->LineEdit1) + myEditCurrentArgument = Group1->LineEdit1; + else if (send == Group2->LineEdit1) + myEditCurrentArgument = Group2->LineEdit1; + else if (send == Group3->LineEdit1) + myEditCurrentArgument = Group3->LineEdit1; + else + return; + + GEOMBase_Skeleton::LineEditReturnPressed(); +} //================================================================================= // function : ActivateThisDialog() @@ -437,22 +494,19 @@ void OperationGUI_FilletDlg::SetEditCurrentArgument() void OperationGUI_FilletDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - - activateSelection(); - displayPreview(); + ConstructorsClicked( getConstructorId() ); } - //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void OperationGUI_FilletDlg::enterEvent( QEvent* e ) +void OperationGUI_FilletDlg::enterEvent (QEvent*) { - if ( !GroupConstructors->isEnabled() ) + if (!mainFrame()->GroupConstructors->isEnabled()) this->ActivateThisDialog(); } @@ -460,81 +514,33 @@ void OperationGUI_FilletDlg::enterEvent( QEvent* e ) // function : ValueChangedInSpinBox() // purpose : //================================================================================= -void OperationGUI_FilletDlg::ValueChangedInSpinBox( double newValue ) +void OperationGUI_FilletDlg::ValueChangedInSpinBox (double) { displayPreview(); } -//================================================================================= -// function : reset() -// purpose : -//================================================================================= -void OperationGUI_FilletDlg::reset() -{ - // Set Initial values of spinboxes - Group1->SpinBox_DX->SetValue( 5 ); - Group2->SpinBox_DX->SetValue( 5 ); - Group2->SpinBox_DY->SetValue( 5 ); - Group2->SpinBox_DZ->SetValue( 5 ); - Group3->SpinBox_DX->SetValue( 5 ); - Group3->SpinBox_DY->SetValue( 5 ); - Group3->SpinBox_DZ->SetValue( 5 ); - - Group1->LineEdit1->setText( "" ); - Group2->LineEdit1->setText( "" ); - Group2->LineEdit2->setText( "" ); - Group3->LineEdit1->setText( "" ); - Group3->LineEdit2->setText( "" ); - - // constructor id - int aConstructorId = getConstructorId(); - - if ( aConstructorId == 0 ) myEditCurrentArgument = Group1->LineEdit1; - else if ( aConstructorId == 1 ) myEditCurrentArgument = Group2->LineEdit1; - else myEditCurrentArgument = Group3->LineEdit1; - - myShape = GEOM::GEOM_Object::_nil(); - - myFaces.Clear(); - myEdges.Clear(); - - erasePreview( true ); - - activateSelection(); - - enableWidgets(); -} - -//================================================================================= -// function : getConstructorId() -// purpose : -//================================================================================= -int OperationGUI_FilletDlg::getConstructorId() const -{ - return GroupConstructors->id( GroupConstructors->selected() ); -} - //================================================================================= // function : activateSelection // purpose : Activate selection in accordance with myEditCurrentArgument //================================================================================= void OperationGUI_FilletDlg::activateSelection() { + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); - if ( !myShape->_is_nil() && myEditCurrentArgument == Group2->LineEdit2 ) - localSelection( myShape, TopAbs_EDGE ); - else if ( !myShape->_is_nil() && myEditCurrentArgument == Group3->LineEdit2 ) - localSelection( myShape, TopAbs_FACE ); - else - { + if (!myShape->_is_nil() && myEditCurrentArgument == Group2->LineEdit2) + localSelection(myShape, TopAbs_EDGE); + else if (!myShape->_is_nil() && myEditCurrentArgument == Group3->LineEdit2) + localSelection(myShape, TopAbs_FACE); + else { TColStd_MapOfInteger aMap; - aMap.Add( GEOM_SHELL ); - aMap.Add( GEOM_SOLID ); - aMap.Add( GEOM_COMPOUND ); - globalSelection( aMap ); + aMap.Add(GEOM_SHELL); + aMap.Add(GEOM_SOLID); + aMap.Add(GEOM_COMPOUND); + globalSelection(aMap); } - SelectionIntoArgument(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); } //================================================================================= @@ -547,25 +553,21 @@ void OperationGUI_FilletDlg::enableWidgets() bool toEnable = !myShape->_is_nil(); - if ( anId == 1 ) - { - Group2->LineEdit2->setEnabled( toEnable ); - Group2->PushButton2->setEnabled( toEnable ); - - if ( !toEnable ) - { - Group2->LineEdit2->setText( "" ); + if (anId == 1) { + //Group2->LineEdit2->setEnabled(toEnable); + Group2->PushButton2->setEnabled(toEnable); + + if (!toEnable) { + Group2->LineEdit2->setText(""); myEdges.Clear(); } } - else if ( anId == 2 ) - { - Group3->LineEdit2->setEnabled( toEnable ); - Group3->PushButton2->setEnabled( toEnable ); + else if (anId == 2) { + //Group3->LineEdit2->setEnabled(toEnable); + Group3->PushButton2->setEnabled(toEnable); - if ( !toEnable ) - { - Group3->LineEdit2->setText( "" ); + if (!toEnable) { + Group3->LineEdit2->setText(""); myFaces.Clear(); } } @@ -577,20 +579,39 @@ void OperationGUI_FilletDlg::enableWidgets() //================================================================================= GEOM::GEOM_IOperations_ptr OperationGUI_FilletDlg::createOperation() { - return getGeomEngine()->GetILocalOperations( getStudyId() ); + return getGeomEngine()->GetILocalOperations(getStudyId()); } //================================================================================= -// function : ClickOnApply() +// function : isValid() // purpose : Verify validity of input data //================================================================================= -bool OperationGUI_FilletDlg::isValid( QString& ) +bool OperationGUI_FilletDlg::isValid (QString& msg) { - switch ( getConstructorId() ) + bool ok = true; + switch (getConstructorId()) { - case 0: return !myShape->_is_nil(); - case 1: return !myShape->_is_nil() && myEdges.Extent() > 0; - case 2: return !myShape->_is_nil() && myFaces.Extent() > 0; + case 0: + ok = Group1->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + return !myShape->_is_nil() && ok; + case 1: + if (Group2->RadioButton1->isChecked()) + ok = Group2->SpinBox_DX->isValid( msg, !IsPreview() ); + else + { + ok = Group2->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + ok = Group2->SpinBox_DZ->isValid( msg, !IsPreview() ) && ok; + } + return !myShape->_is_nil() && myEdges.Extent() > 0 && ok; + case 2: + if (Group3->RadioButton1->isChecked()) + ok = Group3->SpinBox_DX->isValid( msg, !IsPreview() ); + else + { + ok = Group3->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + ok = Group3->SpinBox_DZ->isValid( msg, !IsPreview() ) && ok; + } + return !myShape->_is_nil() && myFaces.Extent() > 0 && ok; default: return false; } } @@ -599,84 +620,124 @@ bool OperationGUI_FilletDlg::isValid( QString& ) // function : execute // purpose : //================================================================================= -bool OperationGUI_FilletDlg::execute( ObjectList& objects ) +bool OperationGUI_FilletDlg::execute (ObjectList& objects) { + QStringList aParameters; GEOM::GEOM_Object_var anObj; int anId = getConstructorId(); - if ( anId == 0 ) - anObj = GEOM::GEOM_ILocalOperations::_narrow( - getOperation() )->MakeFilletAll( myShape, getRadius() ); - else if ( anId == 1 ) - { - GEOM::ListOfLong_var aList = new GEOM::ListOfLong; - aList->length( myEdges.Extent() ); - - for ( int i = 1, n = myEdges.Extent(); i <= n; i++ ) - aList[ i - 1 ] = myEdges( i ); - if ( Group2->RadioButton1->isChecked() ) - anObj = GEOM::GEOM_ILocalOperations::_narrow( - getOperation() )->MakeFilletEdges( myShape, getRadius(), aList ); - else - anObj = GEOM::GEOM_ILocalOperations::_narrow( getOperation() )->MakeFilletEdgesR1R2( myShape, - (Group2->SpinBox_DY->GetValue()), - (Group2->SpinBox_DZ->GetValue()), - aList ); + if (anId == 0) { + anObj = GEOM::GEOM_ILocalOperations::_narrow(getOperation())-> + MakeFilletAll(myShape, getRadius()); + if (!anObj->_is_nil()) + aParameters << Group1->SpinBox_DX->text(); } - else if ( anId == 2 ) - { - int i = 0; + else if (anId == 1) { GEOM::ListOfLong_var aList = new GEOM::ListOfLong; - aList->length( myFaces.Extent() ); + aList->length(myEdges.Extent()); - for ( int i = 1, n = myFaces.Extent(); i <= n; i++ ) - aList[ i - 1 ] = myFaces( i ); - if ( Group3->RadioButton1->isChecked() ) - anObj = GEOM::GEOM_ILocalOperations::_narrow( - getOperation() )->MakeFilletFaces( myShape, getRadius(), aList ); + for (int i = 1, n = myEdges.Extent(); i <= n; i++) + aList[ i - 1 ] = myEdges(i); + + if (Group2->RadioButton1->isChecked()) + { + anObj = GEOM::GEOM_ILocalOperations::_narrow(getOperation())-> + MakeFilletEdges(myShape, getRadius(), aList); + if (!anObj->_is_nil()) + aParameters << Group2->SpinBox_DX->text(); + } else - anObj = GEOM::GEOM_ILocalOperations::_narrow( - getOperation() )->MakeFilletFacesR1R2( myShape, (Group3->SpinBox_DY->GetValue()), - (Group3->SpinBox_DZ->GetValue()), aList ); + { + anObj = GEOM::GEOM_ILocalOperations::_narrow(getOperation())-> + MakeFilletEdgesR1R2(myShape, + Group2->SpinBox_DY->value(), + Group2->SpinBox_DZ->value(), + aList); + if (!anObj->_is_nil()) + { + aParameters << Group2->SpinBox_DY->text(); + aParameters << Group2->SpinBox_DZ->text(); + } + } + } + else if (anId == 2) { + GEOM::ListOfLong_var aList = new GEOM::ListOfLong; + aList->length(myFaces.Extent()); + + for (int i = 1, n = myFaces.Extent(); i <= n; i++) + aList[ i - 1 ] = myFaces(i); + + if (Group3->RadioButton1->isChecked()) { + anObj = GEOM::GEOM_ILocalOperations::_narrow(getOperation())-> + MakeFilletFaces(myShape, getRadius(), aList); + if (!anObj->_is_nil()) + aParameters << Group3->SpinBox_DX->text(); + } + else { + anObj = GEOM::GEOM_ILocalOperations::_narrow(getOperation())-> + MakeFilletFacesR1R2(myShape, + Group3->SpinBox_DY->value(), + Group3->SpinBox_DZ->value(), aList); + if (!anObj->_is_nil()) + { + aParameters << Group3->SpinBox_DY->text(); + aParameters << Group3->SpinBox_DZ->text(); + } + } } - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); + if (!anObj->_is_nil()) + { + if (!IsPreview()) + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + objects.push_back(anObj._retn()); + } return true; } //================================================================================= // function : getRadius -// purpose : Get radius +// purpose : Get radius //================================================================================= double OperationGUI_FilletDlg::getRadius() const { int anId = getConstructorId(); - if ( anId == 0 ) return Group1->SpinBox_DX->GetValue(); - else if ( anId == 1 ) return Group2->SpinBox_DX->GetValue(); - else return Group3->SpinBox_DX->GetValue(); + if (anId == 0) return Group1->SpinBox_DX->value(); + else if (anId == 1) return Group2->SpinBox_DX->value(); + else return Group3->SpinBox_DX->value(); } //================================================================================= // function : RadiobuttonClicked // purpose : //================================================================================= - -void OperationGUI_FilletDlg::RadioButton_Clicked() +void OperationGUI_FilletDlg::RadioButtonClicked() { - bool flag = ( (Group2->RadioButton1->isChecked()) && (Group3->RadioButton1->isChecked()) ); - flag = !flag; + const QObject* s = sender(); - Group2->SpinBox_DX->setEnabled(flag); - Group2->SpinBox_DY->setEnabled(!flag); - Group2->SpinBox_DZ->setEnabled(!flag); - Group2->RadioButton1->setChecked(flag); - Group2->RadioButton2->setChecked(!flag); - Group3->SpinBox_DX->setEnabled(flag); - Group3->SpinBox_DY->setEnabled(!flag); - Group3->SpinBox_DZ->setEnabled(!flag); - Group3->RadioButton1->setChecked(flag); - Group3->RadioButton2->setChecked(!flag); - displayPreview(); + bool flag = s == Group2->RadioButton1 || s == Group3->RadioButton1; + + Group2->RadioButton1->blockSignals(true); + Group2->RadioButton2->blockSignals(true); + Group3->RadioButton1->blockSignals(true); + Group3->RadioButton2->blockSignals(true); + + Group2->SpinBox_DX->setEnabled(flag); + Group2->SpinBox_DY->setEnabled(!flag); + Group2->SpinBox_DZ->setEnabled(!flag); + Group2->RadioButton1->setChecked(flag); + Group2->RadioButton2->setChecked(!flag); + Group3->SpinBox_DX->setEnabled(flag); + Group3->SpinBox_DY->setEnabled(!flag); + Group3->SpinBox_DZ->setEnabled(!flag); + Group3->RadioButton1->setChecked(flag); + Group3->RadioButton2->setChecked(!flag); + + Group2->RadioButton1->blockSignals(false); + Group2->RadioButton2->blockSignals(false); + Group3->RadioButton1->blockSignals(false); + Group3->RadioButton2->blockSignals(false); + + displayPreview(); } diff --git a/src/OperationGUI/OperationGUI_FilletDlg.h b/src/OperationGUI/OperationGUI_FilletDlg.h index c89491baf..5a5a71a33 100644 --- a/src/OperationGUI/OperationGUI_FilletDlg.h +++ b/src/OperationGUI/OperationGUI_FilletDlg.h @@ -1,34 +1,32 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : OperationGUI_FilletDlg.h -// Author : Damien COQUERET -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : OperationGUI_FilletDlg.h +// Author : Damien COQUERET, Open CASCADE S.A.S. +// +#ifndef OPERATIONGUI_FILLETDLG_H +#define OPERATIONGUI_FILLETDLG_H -#ifndef DIALOGBOX_FILLET_H -#define DIALOGBOX_FILLET_H - -#include "GEOMBase_Skeleton.h" +#include #include @@ -41,48 +39,49 @@ class DlgRef_2Sel3Spin2Rb; //================================================================================= class OperationGUI_FilletDlg : public GEOMBase_Skeleton { - Q_OBJECT - + Q_OBJECT + public: - OperationGUI_FilletDlg(GeometryGUI* theGeometryGUI, QWidget* parent); - ~OperationGUI_FilletDlg(); - + OperationGUI_FilletDlg( GeometryGUI*, QWidget* ); + ~OperationGUI_FilletDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& msg ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ValueChangedInSpinBox( double newValue ); - void ConstructorsClicked( int constructorId ); - void RadioButton_Clicked(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ValueChangedInSpinBox( double ); + void ConstructorsClicked( int ); + void RadioButtonClicked(); + +private: + void Init(); + void enterEvent( QEvent* ); + void activateSelection(); + void enableWidgets(); + double getRadius() const; private: - void Init(); - void enterEvent( QEvent* e ); - void reset(); - int getConstructorId() const; - void activateSelection(); - void enableWidgets(); - double getRadius() const; + int myConstructorId; + + GEOM::GEOM_Object_var myShape; + TColStd_IndexedMapOfInteger myEdges; + TColStd_IndexedMapOfInteger myFaces; -private: - int myConstructorId; - - GEOM::GEOM_Object_var myShape; - TColStd_IndexedMapOfInteger myEdges; - TColStd_IndexedMapOfInteger myFaces; - - DlgRef_1Sel1Spin* Group1; - DlgRef_2Sel3Spin2Rb* Group2; - DlgRef_2Sel3Spin2Rb* Group3; + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; + + DlgRef_1Sel1Spin* Group1; + DlgRef_2Sel3Spin2Rb* Group2; + DlgRef_2Sel3Spin2Rb* Group3; }; -#endif // DIALOGBOX_FILLET_H +#endif // OPERATIONGUI_FILLETDLG_H diff --git a/src/OperationGUI/OperationGUI_GetShapesOnShapeDlg.cxx b/src/OperationGUI/OperationGUI_GetShapesOnShapeDlg.cxx new file mode 100644 index 000000000..778af7b67 --- /dev/null +++ b/src/OperationGUI/OperationGUI_GetShapesOnShapeDlg.cxx @@ -0,0 +1,353 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : OperationGUI_GetShapesOnShapeDlg.cxx +// Author : Sergey KUUL, Open CASCADE S.A.S. (sergey.kuul@opencascade.com) +// +#include "OperationGUI_GetShapesOnShapeDlg.h" + +#include +#include +#include + +#include +#include +#include +#include + +//============================================================================== +// class : OperationGUI_GetShapesOnShapeDlg() +// purpose : Constructs a OperationGUI_GetShapesOnShapeDlg which is a child of +// 'parent', with the name 'name' and widget flags set to 'f'. +// The dialog will by default be modeless, unless you set 'modal' to +// TRUE to construct a modal dialog. +//================================================================================= +OperationGUI_GetShapesOnShapeDlg::OperationGUI_GetShapesOnShapeDlg (GeometryGUI* theGeometryGUI, + QWidget* parent) + : GEOMBase_Skeleton(theGeometryGUI, parent, false) +{ + SUIT_ResourceMgr* aResMgr = myGeomGUI->getApp()->resourceMgr(); + QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_SHAPES_ON_SHAPE"))); + QPixmap image2 (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); + + setWindowTitle(tr("GEOM_SHAPES_ON_SHAPE_TITLE")); + + /***************************************************************/ + mainFrame()->GroupConstructors->setTitle(tr("GEOM_SHAPES_ON_SHAPE")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); + + GroupPoints = new DlgRef_2Sel2List(centralWidget()); + //GroupPoints->GroupBox1->setTitle(tr("GEOM_PARTITION")); + GroupPoints->GroupBox1->setTitle("Input data"); + GroupPoints->TextLabel1->setText(tr("GEOM_SHAPES_ON_SHAPE_ESHAPE")); + GroupPoints->TextLabel2->setText(tr("GEOM_SHAPES_ON_SHAPE_CSHAPE")); + GroupPoints->TextLabel3->setText(tr("GEOM_RECONSTRUCTION_LIMIT")); + GroupPoints->TextLabel4->setText(tr("GEOM_SHAPES_ON_SHAPE_STATE")); + GroupPoints->PushButton1->setIcon(image2); + GroupPoints->PushButton2->setIcon(image2); + GroupPoints->LineEdit1->setReadOnly(true); + GroupPoints->LineEdit2->setReadOnly(true); + + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); + /***************************************************************/ + + setHelpFileName("shapesonshape_page.html"); + + Init(); +} + +//================================================================================= +// function : ~OperationGUI_GetShapesOnShapeDlg +// purpose : Destroys the object and frees any allocated resources +//================================================================================= +OperationGUI_GetShapesOnShapeDlg::~OperationGUI_GetShapesOnShapeDlg() +{ +} + +//================================================================================= +// function : Init() +// purpose : +//================================================================================= +void OperationGUI_GetShapesOnShapeDlg::Init() +{ + // type for sub shape selection + GroupPoints->ComboBox1->addItem(tr("GEOM_RECONSTRUCTION_LIMIT_SOLID")); + // commented by skl for IPAL19949 - finder isn't allowed such type + //GroupPoints->ComboBox1->addItem(tr("GEOM_RECONSTRUCTION_LIMIT_SHELL")); + GroupPoints->ComboBox1->addItem(tr("GEOM_RECONSTRUCTION_LIMIT_FACE")); + // commented by skl for IPAL19949 - finder isn't allowed such type + //GroupPoints->ComboBox1->addItem(tr("GEOM_RECONSTRUCTION_LIMIT_WIRE")); + GroupPoints->ComboBox1->addItem(tr("GEOM_RECONSTRUCTION_LIMIT_EDGE")); + GroupPoints->ComboBox1->addItem(tr("GEOM_RECONSTRUCTION_LIMIT_VERTEX")); + + // type for state selection + GroupPoints->ComboBox2->addItem(tr("GEOM_STATE_IN")); + GroupPoints->ComboBox2->addItem(tr("GEOM_STATE_OUT")); + GroupPoints->ComboBox2->addItem(tr("GEOM_STATE_ON")); + GroupPoints->ComboBox2->addItem(tr("GEOM_STATE_ONIN")); + GroupPoints->ComboBox2->addItem(tr("GEOM_STATE_ONOUT")); + + GroupPoints->LineEdit1->clear(); + GroupPoints->LineEdit2->clear(); + myObject1 = myObject2 = GEOM::GEOM_Object::_nil(); + + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); + + connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + + connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + + connect(GroupPoints->ComboBox1, SIGNAL(activated(int)), this, SLOT(ComboTextChanged())); + connect(GroupPoints->ComboBox2, SIGNAL(activated(int)), this, SLOT(ComboTextChanged())); + + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + initName(mainFrame()->GroupConstructors->title()); + + GroupPoints->TextLabel3->show(); + GroupPoints->ComboBox1->show(); + GroupPoints->ComboBox1->setCurrentIndex(0); + GroupPoints->ComboBox2->show(); + GroupPoints->ComboBox2->setCurrentIndex(0); + + globalSelection(GEOM_ALLSHAPES); + + GroupPoints->PushButton1->click(); + SelectionIntoArgument(); +} + +//================================================================================= +// function : ClickOnOk() +// purpose : +//================================================================================= +void OperationGUI_GetShapesOnShapeDlg::ClickOnOk() +{ + if (ClickOnApply()) + ClickOnCancel(); +} + +//================================================================================= +// function : ClickOnApply() +// purpose : +//================================================================================= +bool OperationGUI_GetShapesOnShapeDlg::ClickOnApply() +{ + if (!onAccept()) + return false; + + initName(); + // activate first line edit + GroupPoints->PushButton1->click(); + return true; +} + +//================================================================================= +// function : SelectionIntoArgument() +// purpose : Called when selection is changed or on dialog initialization or activation +//================================================================================= +void OperationGUI_GetShapesOnShapeDlg::SelectionIntoArgument() +{ + myEditCurrentArgument->setText(""); + + if (myEditCurrentArgument == GroupPoints->LineEdit1) myObject1 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupPoints->LineEdit2) myObject2 = GEOM::GEOM_Object::_nil(); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + QString aName = ""; + int nbSel = GEOMBase::GetNameOfSelectedIObjects(aSelList, aName, true); + + if (nbSel > 0) { + Standard_Boolean aRes = Standard_False; + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), aRes); + if (!CORBA::is_nil(aSelectedObject) && aRes && GEOMBase::IsShape(aSelectedObject)) { + myEditCurrentArgument->setText(aName); + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + if (myEditCurrentArgument == GroupPoints->LineEdit1) { + myObject1 = aSelectedObject; + if (myObject2->_is_nil()) + GroupPoints->PushButton2->click(); + } + else if (myEditCurrentArgument == GroupPoints->LineEdit2) { + myObject2 = aSelectedObject; + if (myObject1->_is_nil()) + GroupPoints->PushButton1->click(); + } + } + } +} + +//================================================================================= +// function : SetEditCurrentArgument() +// purpose : +//================================================================================= +void OperationGUI_GetShapesOnShapeDlg::SetEditCurrentArgument() +{ + QPushButton* send = (QPushButton*)sender(); + + if (send == GroupPoints->PushButton1) { + myEditCurrentArgument = GroupPoints->LineEdit1; + + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit2->setEnabled(false); + } + else if (send == GroupPoints->PushButton2) { + myEditCurrentArgument = GroupPoints->LineEdit2; + + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + } + + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); +} + +//================================================================================= +// function : LineEditReturnPressed() +// purpose : +//================================================================================= +void OperationGUI_GetShapesOnShapeDlg::LineEditReturnPressed() +{ + QLineEdit* send = (QLineEdit*)sender(); + if (send == GroupPoints->LineEdit1 || send == GroupPoints->LineEdit2) + { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } +} + +//================================================================================= +// function : ActivateThisDialog() +// purpose : +//================================================================================= +void OperationGUI_GetShapesOnShapeDlg::ActivateThisDialog() +{ + GEOMBase_Skeleton::ActivateThisDialog(); + globalSelection(GEOM_ALLSHAPES); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); +} + +//================================================================================= +// function : enterEvent() +// purpose : when mouse enter onto the QWidget +//================================================================================= +void OperationGUI_GetShapesOnShapeDlg::enterEvent (QEvent*) +{ + if (!mainFrame()->GroupConstructors->isEnabled()) + ActivateThisDialog(); +} + +//================================================================================= +// function : createOperation +// purpose : +//================================================================================= +GEOM::GEOM_IOperations_ptr OperationGUI_GetShapesOnShapeDlg::createOperation() +{ + return getGeomEngine()->GetIShapesOperations(getStudyId()); +} + +//================================================================================= +// function : isValid +// purpose : +//================================================================================= +bool OperationGUI_GetShapesOnShapeDlg::isValid(QString&) +{ + //Handle(SALOME_InteractiveObject) IO = firstIObject(); + //Standard_Boolean testResult; + //GEOM::GEOM_Object_var anObject = GEOMBase::ConvertIOinGEOMObject(IO, testResult); + //if (!testResult || anObject->_is_nil()) + // return false; + + return !CORBA::is_nil(myObject1) && !CORBA::is_nil(myObject2); +} + +//================================================================================= +// function : execute +// purpose : +//================================================================================= +bool OperationGUI_GetShapesOnShapeDlg::execute (ObjectList& objects) +{ + int aLimit = GroupPoints->ComboBox1->currentIndex(); + switch (aLimit) + { + case 0: aLimit = GEOM::SOLID ; break; + case 1: aLimit = GEOM::FACE ; break; + case 2: aLimit = GEOM::EDGE ; break; + case 3: aLimit = GEOM::VERTEX; break; + default: aLimit = GEOM::SHAPE ; break; + } + + GEOM::shape_state aState; + switch (GroupPoints->ComboBox2->currentIndex()) + { + case 0: aState = GEOM::ST_IN; break; + case 1: aState = GEOM::ST_OUT; break; + case 2: aState = GEOM::ST_ON; break; + case 3: aState = GEOM::ST_ONIN; break; + case 4: aState = GEOM::ST_ONOUT; break; + default: break; + } + + GEOM::GEOM_Object_var anObj = + GEOM::GEOM_IShapesOperations::_narrow(getOperation())-> + GetShapesOnShapeAsCompound(myObject2, myObject1, + (CORBA::Short) aLimit, + aState); + + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + + return objects.size(); +} + +//======================================================================= +//function : ComboTextChanged +//purpose : +//======================================================================= +void OperationGUI_GetShapesOnShapeDlg::ComboTextChanged() +{ + // VRS ???? What is it for ??? commented for a while... + //bool IsEnabled = GroupPoints->ComboBox1->currentIndex() < 3; +} diff --git a/src/OperationGUI/OperationGUI_GetShapesOnShapeDlg.h b/src/OperationGUI/OperationGUI_GetShapesOnShapeDlg.h new file mode 100644 index 000000000..1b819641c --- /dev/null +++ b/src/OperationGUI/OperationGUI_GetShapesOnShapeDlg.h @@ -0,0 +1,74 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : OperationGUI_GetShapesOnShapeDlg.h +// Author : Sergey KUUL, Open CASCADE S.A.S. (sergey.kuul@opencascade.com) +// +#ifndef OPERATIONGUI_GETSHAPESONSHAPEDLG_H +#define OPERATIONGUI_GETSHAPESONSHAPEDLG_H + +#include +#include + +class DlgRef_2Sel2List; + +//================================================================================= +// class : OperationGUI_GetShapesOnShapeDlg +// purpose : +//================================================================================= +class OperationGUI_GetShapesOnShapeDlg : public GEOMBase_Skeleton +{ + Q_OBJECT + +public: + OperationGUI_GetShapesOnShapeDlg( GeometryGUI* theGeometryGUI, QWidget* parent = 0 ); + ~OperationGUI_GetShapesOnShapeDlg(); + +protected: + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + +private: + void Init(); + void enterEvent( QEvent* ); + +private: + GEOM::GEOM_Object_var myObject1; + GEOM::GEOM_Object_var myObject2; + int myShapeType; + GEOMAlgo_State myState; + + DlgRef_2Sel2List* GroupPoints; + +private slots: + void ClickOnOk(); + bool ClickOnApply(); + void SetEditCurrentArgument(); + void SelectionIntoArgument(); + void LineEditReturnPressed(); + void ActivateThisDialog(); + void ComboTextChanged(); +}; + +#endif // OPERATIONGUI_GETSHAPESONSHAPEDLG_H diff --git a/src/OperationGUI/OperationGUI_MaterialDlg.cxx b/src/OperationGUI/OperationGUI_MaterialDlg.cxx index 4fff3b2fb..7474b761e 100644 --- a/src/OperationGUI/OperationGUI_MaterialDlg.cxx +++ b/src/OperationGUI/OperationGUI_MaterialDlg.cxx @@ -1,44 +1,39 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 CEA -// -// 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) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : OperationGUI_MaterialDlg.cxx +// Author : Julia DOROVSKIKH, Open CASCADE S.A.S. (julia.dorovskikh@opencascade.com) // -// File : OperationGUI_MaterialDlg.cxx -// Author : Julia DOROVSKIKH -// Module : GEOM -// $Header$ - #include "OperationGUI_MaterialDlg.h" #include "OperationGUI_PartitionDlg.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include -#include "utilities.h" - -#include -#include -#include - -using namespace std; +#include +#include +#include +#include //================================================================================= // class : OperationGUI_MaterialDlg() @@ -47,37 +42,39 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -OperationGUI_MaterialDlg::OperationGUI_MaterialDlg (GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, GEOM::ListOfGO ListShapes, - bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +OperationGUI_MaterialDlg::OperationGUI_MaterialDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + GEOM::ListOfGO ListShapes, bool modal ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal ) { myListShapes = ListShapes; - myParentDlg = parent; + + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_PARTITION" ) ) ); - QPixmap image0 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_PARTITION"))); - - setCaption(tr("GEOM_MATERIAL_TITLE")); + setWindowTitle( tr( "GEOM_MATERIAL_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_PARTITION")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_PARTITION" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_1List1Spin1Btn_QTD(this, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("GEOM_PARTITION")); + GroupPoints = new DlgRef_1List1Spin1Btn( centralWidget() ); + GroupPoints->GroupBox1->setTitle( tr( "GEOM_PARTITION" ) ); - myShapeCol = GroupPoints->ListView1->addColumn(tr("GEOM_MATERIAL_SHAPE")); - myMaterCol = GroupPoints->ListView1->addColumn(tr("GEOM_MATERIAL_MATERIAL")); - GroupPoints->ListView1->setSelectionMode(QListView::Extended); - GroupPoints->ListView1->setSorting(-1); + QStringList columns; + columns << tr( "GEOM_MATERIAL_SHAPE" ) << tr( "GEOM_MATERIAL_MATERIAL" ); + GroupPoints->ListView1->setHeaderLabels( columns ); + GroupPoints->ListView1->setSelectionMode( QAbstractItemView::ExtendedSelection ); + GroupPoints->ListView1->setSortingEnabled( false ); - GroupPoints->TextLabel1->setText(tr("GEOM_MATERIAL_ID")); - GroupPoints->PushButton1->setText(tr("GEOM_MATERIAL_SET")); + GroupPoints->TextLabel1->setText( tr( "GEOM_MATERIAL_ID" ) ); + GroupPoints->PushButton1->setText( tr( "GEOM_MATERIAL_SET" ) ); - Layout1->addWidget(GroupPoints, 1, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); /***************************************************************/ setHelpFileName("partition_page.html"); @@ -102,43 +99,32 @@ void OperationGUI_MaterialDlg::Init() { // get materials list from the parent dialog OperationGUI_PartitionDlg* aParentDlg = - dynamic_cast(myParentDlg); - if (aParentDlg) + qobject_cast( parentWidget() ); + if ( aParentDlg ) myListMaterials = aParentDlg->GetListMaterials(); /* list filling */ - MESSAGE("Filling list with " << myListShapes.length() << " objects"); - QString aMaterialId; - QListViewItem *anItem = NULL; - for (int ind = 0; ind < myListShapes.length(); ind++) { + for ( int ind = 0; ind < myListShapes.length(); ind++ ) { GEOM::GEOM_Object_var anObject = myListShapes[ind]; - if (!anObject->_is_nil()) { - MESSAGE("Insert " << GEOMBase::GetName( anObject )); - if (ind < myListMaterials.length()) - aMaterialId = QString::number(myListMaterials[ind]); - else - aMaterialId = "0"; - if (anItem) - // insert after aPrevItem - anItem = new QListViewItem(GroupPoints->ListView1, anItem, - GEOMBase::GetName( anObject ), aMaterialId); - else - // the first item creation - anItem = new QListViewItem(GroupPoints->ListView1, - GEOMBase::GetName( anObject ), aMaterialId); + if ( !anObject->_is_nil() ) { + QStringList labels; + labels << GEOMBase::GetName( anObject ); + labels << ( ind < myListMaterials.length() ? + QString::number( myListMaterials[ind] ) : QString( "0" ) ); + GroupPoints->ListView1->addTopLevelItem( new QTreeWidgetItem( labels ) ); } } - MESSAGE("Filled"); /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - buttonApply->close(TRUE); - buttonCancel->setText(tr("GEOM_BUT_CANCEL")); - - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetMaterial())); - - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + buttonApply()->setAttribute( Qt::WA_DeleteOnClose ); + buttonApply()->close(); + buttonCancel()->setText( tr( "GEOM_BUT_CANCEL" ) ); + + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetMaterial() ) ); + + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); } @@ -148,28 +134,22 @@ void OperationGUI_MaterialDlg::Init() //================================================================================= void OperationGUI_MaterialDlg::ClickOnOk() { - SUIT_Session::session()->activeApplication()->putInfo(tr("")); + SUIT_Session::session()->activeApplication()->putInfo( "" ); int nbSh = myListShapes.length(); - myListMaterials.length(nbSh); + myListMaterials.length( nbSh ); - QListViewItemIterator it (GroupPoints->ListView1); - for (int i = 0; it.current() != 0; it++, i++) { - QString aMatIdStr = it.current()->text(myMaterCol); - myListMaterials[i] = aMatIdStr.toInt(); - MESSAGE("For shape # " << i << " material ID = " << myListMaterials[i]); - } + QTreeWidgetItemIterator it( GroupPoints->ListView1 ); + for ( int i = 0; *it; it++, i++ ) + myListMaterials[i] = (*it)->text( 1 ).toInt(); // set materials list to the parent dialog OperationGUI_PartitionDlg* aParentDlg = - dynamic_cast(myParentDlg); - if (aParentDlg) - { - aParentDlg->SetListMaterials(myListMaterials); - } + qobject_cast( parentWidget() ); + if ( aParentDlg ) + aParentDlg->SetListMaterials( myListMaterials ); ClickOnCancel(); - return; } @@ -199,15 +179,13 @@ void OperationGUI_MaterialDlg::SelectionIntoArgument() //================================================================================= void OperationGUI_MaterialDlg::SetMaterial() { - int aMatId = GroupPoints->SpinBox1->value(); - QString aMatIdStr; - aMatIdStr.setNum(aMatId); - QListViewItemIterator it (GroupPoints->ListView1); - for (; it.current() != 0; it++) { - if (it.current()->isSelected()) - it.current()->setText(myMaterCol, aMatIdStr); + QString aMatIdStr = QString::number( GroupPoints->SpinBox1->value() ); + QList selectedItems = GroupPoints->ListView1->selectedItems(); + + QListIterator it( selectedItems ); + while ( it.hasNext() ) { + it.next()->setText( 1, aMatIdStr ); } - return; } @@ -218,8 +196,8 @@ void OperationGUI_MaterialDlg::SetMaterial() void OperationGUI_MaterialDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); return; } @@ -228,8 +206,8 @@ void OperationGUI_MaterialDlg::ActivateThisDialog() // function : enterEvent() // purpose : //================================================================================= -void OperationGUI_MaterialDlg::enterEvent(QEvent* e) +void OperationGUI_MaterialDlg::enterEvent( QEvent* ) { - if (!GroupConstructors->isEnabled()) + if ( !mainFrame()->GroupConstructors->isEnabled() ) this->ActivateThisDialog(); } diff --git a/src/OperationGUI/OperationGUI_MaterialDlg.h b/src/OperationGUI/OperationGUI_MaterialDlg.h index 39111f553..a4ed8d65e 100644 --- a/src/OperationGUI/OperationGUI_MaterialDlg.h +++ b/src/OperationGUI/OperationGUI_MaterialDlg.h @@ -1,35 +1,34 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 CEA -// -// 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) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : OperationGUI_MaterialDlg.h -// Author : Julia DOROVSKIKH -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : OperationGUI_MaterialDlg.h +// Author : Julia DOROVSKIKH, Open CASCADE S.A.S. (julia.dorovskikh@opencascade.com) +// +#ifndef OPERATIONGUI_MATERIALDLG_H +#define OPERATIONGUI_MATERIALDLG_H -#ifndef DIALOGBOX_MATERIAL_H -#define DIALOGBOX_MATERIAL_H - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1List1Spin1Btn_QTD.h" +#include +class DlgRef_1List1Spin1Btn; //================================================================================= // class : OperationGUI_MaterialDlg @@ -37,33 +36,28 @@ //================================================================================= class OperationGUI_MaterialDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - OperationGUI_MaterialDlg (GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, GEOM::ListOfGO ListShapes, - bool modal = FALSE, WFlags fl = 0); - ~OperationGUI_MaterialDlg(); - + OperationGUI_MaterialDlg( GeometryGUI*, QWidget*, GEOM::ListOfGO, + bool = false ); + ~OperationGUI_MaterialDlg(); + private: - void Init(); - void enterEvent(QEvent* e); - - QWidget* myParentDlg; - - GEOM::ListOfGO myListShapes; - GEOM::ListOfLong myListMaterials; - - DlgRef_1List1Spin1Btn_QTD* GroupPoints; - - int myShapeCol; - int myMaterCol; - + void Init(); + void enterEvent( QEvent* ); + +private: + GEOM::ListOfGO myListShapes; + GEOM::ListOfLong myListMaterials; + + DlgRef_1List1Spin1Btn* GroupPoints; + private slots: - void ClickOnOk(); - void ActivateThisDialog(); - void SelectionIntoArgument(); - void SetMaterial(); + void ClickOnOk(); + void ActivateThisDialog(); + void SelectionIntoArgument(); + void SetMaterial(); }; -#endif // DIALOGBOX_MATERIAL_H +#endif // OPERATIONGUI_MATERIALDLG_H diff --git a/src/OperationGUI/OperationGUI_PartitionDlg.cxx b/src/OperationGUI/OperationGUI_PartitionDlg.cxx index 2c736f5b7..e52df271c 100644 --- a/src/OperationGUI/OperationGUI_PartitionDlg.cxx +++ b/src/OperationGUI/OperationGUI_PartitionDlg.cxx @@ -1,45 +1,41 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : OperationGUI_PartitionDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : OperationGUI_PartitionDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "OperationGUI_PartitionDlg.h" -#include "GEOMImpl_Types.hxx" +#include +#include +#include -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include -#include -#include -#include - -#include "utilities.h" +#include +#include +#include +#include +#include //================================================================================= // class : OperationGUI_PartitionDlg() @@ -48,40 +44,45 @@ // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -OperationGUI_PartitionDlg::OperationGUI_PartitionDlg(GeometryGUI* theGeometryGUI, QWidget* parent) - :GEOMBase_Skeleton(theGeometryGUI, parent, "OperationGUI_PartitionDlg", false, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +OperationGUI_PartitionDlg::OperationGUI_PartitionDlg( GeometryGUI* theGeometryGUI, QWidget* parent ) + : GEOMBase_Skeleton( theGeometryGUI, parent, false ) { SUIT_ResourceMgr* aResMgr = myGeomGUI->getApp()->resourceMgr(); - QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_PARTITION"))); - QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_PARTITION_PLANE"))); - QPixmap image2 (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); + QPixmap image0( aResMgr->loadPixmap( "GEOM", tr( "ICON_DLG_PARTITION" ) ) ); + QPixmap image1( aResMgr->loadPixmap( "GEOM", tr( "ICON_DLG_PARTITION_PLANE" ) ) ); + QPixmap image2( aResMgr->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_PARTITION_TITLE")); + setWindowTitle( tr( "GEOM_PARTITION_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_PARTITION")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image1); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_PARTITION" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setIcon( image1 ); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); // Full partition (contains half-space partition) - GroupPoints = new DlgRef_2Sel1List1Check_QTD(this, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("GEOM_PARTITION")); - GroupPoints->TextLabel1->setText(tr("GEOM_OBJECTS")); - GroupPoints->TextLabel2->setText(tr("GEOM_TOOL_OBJECT")); - GroupPoints->TextLabel3->setText(tr("GEOM_RECONSTRUCTION_LIMIT")); - GroupPoints->PushButton1->setPixmap(image2); - GroupPoints->PushButton2->setPixmap(image2); + GroupPoints = new DlgRef_2Sel1List1Check( centralWidget() ); + GroupPoints->GroupBox1->setTitle( tr( "GEOM_PARTITION" ) ); + GroupPoints->TextLabel1->setText( tr( "GEOM_OBJECTS" ) ); + GroupPoints->TextLabel2->setText( tr( "GEOM_TOOL_OBJECT" ) ); + GroupPoints->TextLabel3->setText( tr( "GEOM_RECONSTRUCTION_LIMIT" ) ); + GroupPoints->PushButton1->setIcon( image2 ); + GroupPoints->PushButton2->setIcon( image2 ); GroupPoints->LineEdit1->setReadOnly( true ); GroupPoints->LineEdit2->setReadOnly( true ); - GroupPoints->radioButton4->setText(tr("GEOM_KEEP_NONLIMIT_SHAPES")); + GroupPoints->LineEdit1->setEnabled(true); + GroupPoints->LineEdit2->setEnabled(false); + GroupPoints->CheckButton1->setText( tr( "GEOM_KEEP_NONLIMIT_SHAPES" ) ); + + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); - Layout1->addWidget(GroupPoints, 2, 0); /***************************************************************/ - setHelpFileName("partition_page.html"); - + setHelpFileName( "partition_page.html" ); + Init(); } @@ -95,6 +96,15 @@ OperationGUI_PartitionDlg::~OperationGUI_PartitionDlg() // no need to delete child widgets, Qt does it all for us } +void OperationGUI_PartitionDlg::SetListMaterials( GEOM::ListOfLong ListMaterials ) +{ + myListMaterials = ListMaterials; +} + +GEOM::ListOfLong OperationGUI_PartitionDlg::GetListMaterials() +{ + return myListMaterials; +} //================================================================================= // function : Init() @@ -103,34 +113,37 @@ OperationGUI_PartitionDlg::~OperationGUI_PartitionDlg() void OperationGUI_PartitionDlg::Init() { /* type for sub shape selection */ - GroupPoints->ComboBox1->insertItem(tr("GEOM_RECONSTRUCTION_LIMIT_SOLID")); - GroupPoints->ComboBox1->insertItem(tr("GEOM_RECONSTRUCTION_LIMIT_SHELL")); - GroupPoints->ComboBox1->insertItem(tr("GEOM_RECONSTRUCTION_LIMIT_FACE")); - GroupPoints->ComboBox1->insertItem(tr("GEOM_RECONSTRUCTION_LIMIT_WIRE")); - GroupPoints->ComboBox1->insertItem(tr("GEOM_RECONSTRUCTION_LIMIT_EDGE")); - GroupPoints->ComboBox1->insertItem(tr("GEOM_RECONSTRUCTION_LIMIT_VERTEX")); - GroupPoints->radioButton4->setChecked(FALSE); + GroupPoints->ComboBox1->addItem( tr( "GEOM_RECONSTRUCTION_LIMIT_SOLID" ) ); + GroupPoints->ComboBox1->addItem( tr( "GEOM_RECONSTRUCTION_LIMIT_SHELL" ) ); + GroupPoints->ComboBox1->addItem( tr( "GEOM_RECONSTRUCTION_LIMIT_FACE" ) ); + GroupPoints->ComboBox1->addItem( tr( "GEOM_RECONSTRUCTION_LIMIT_WIRE" ) ); + GroupPoints->ComboBox1->addItem( tr( "GEOM_RECONSTRUCTION_LIMIT_EDGE" ) ); + GroupPoints->ComboBox1->addItem( tr( "GEOM_RECONSTRUCTION_LIMIT_VERTEX" ) ); + GroupPoints->CheckButton1->setChecked( false ); + + mainFrame()->GroupBoxPublish->show(); /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); - - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - - connect(GroupPoints->ComboBox1, SIGNAL(activated(int)), this, SLOT(ComboTextChanged())); - - connect(GroupPoints->radioButton4, SIGNAL(stateChanged(int)), this, SLOT(ReverseSense(int))); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); + + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPoints->PushButton2, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + + connect( GroupPoints->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( GroupPoints->LineEdit2, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + + connect( GroupPoints->ComboBox1, SIGNAL( activated( int ) ), this, SLOT( ComboTextChanged() ) ); + + connect( myGeomGUI->getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); initName( tr( "GEOM_PARTITION" ) ); + ConstructorsClicked( 0 ); + GroupPoints->PushButton1->click(); } @@ -138,51 +151,52 @@ void OperationGUI_PartitionDlg::Init() // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void OperationGUI_PartitionDlg::ConstructorsClicked(int constructorId) +void OperationGUI_PartitionDlg::ConstructorsClicked( int constructorId ) { - disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + disconnect( myGeomGUI->getApp()->selectionMgr(), 0, this, 0 ); globalSelection(); - myListShapes.length(0); - myListTools.length(0); - myListKeepInside.length(0); - myListRemoveInside.length(0); - myListMaterials.length(0); - - switch (constructorId) - { - case 0: /*Full partition */ - { - GroupPoints->GroupBox1->setTitle(tr("GEOM_PARTITION")); - GroupPoints->TextLabel2->setText(tr("GEOM_TOOL_OBJECT")); - resize(0, 0); - GroupPoints->TextLabel3->show(); - GroupPoints->ComboBox1->show(); - GroupPoints->ComboBox1->setCurrentItem(0); - GroupPoints->radioButton4->show(); - break; - } - case 1: /*Half-space partition */ - { - - GroupPoints->GroupBox1->setTitle(tr("GEOM_PARTITION_HALFSPACE")); - GroupPoints->TextLabel3->hide(); - GroupPoints->ComboBox1->hide(); - GroupPoints->TextLabel2->setText(tr("GEOM_PLANE")); - GroupPoints->radioButton4->hide(); - resize(0, 0); - break; - } - } + myListShapes.length( 0 ); + myListTools.length( 0 ); + myListKeepInside.length( 0 ); + myListRemoveInside.length( 0 ); + myListMaterials.length( 0 ); + + switch ( constructorId ) { + case 0: /*Full partition */ + GroupPoints->GroupBox1->setTitle( tr( "GEOM_PARTITION" ) ); + GroupPoints->TextLabel2->setText( tr( "GEOM_TOOL_OBJECT" ) ); + GroupPoints->TextLabel3->show(); + GroupPoints->ComboBox1->show(); + GroupPoints->ComboBox1->setCurrentIndex( 0 ); + GroupPoints->CheckButton1->show(); + GroupPoints->PushButton1->setDown( true ); + GroupPoints->PushButton2->setDown( false ); + GroupPoints->LineEdit1->setEnabled(true); + GroupPoints->LineEdit2->setEnabled(false); + break; + case 1: /*Half-space partition */ + GroupPoints->GroupBox1->setTitle( tr( "GEOM_PARTITION_HALFSPACE" ) ); + GroupPoints->TextLabel3->hide(); + GroupPoints->ComboBox1->hide(); + GroupPoints->TextLabel2->setText( tr( "GEOM_PLANE" ) ); + GroupPoints->CheckButton1->hide(); + GroupPoints->PushButton1->setDown( true ); + GroupPoints->LineEdit1->setEnabled(true); + break; + } myEditCurrentArgument = GroupPoints->LineEdit1; GroupPoints->LineEdit1->clear(); GroupPoints->LineEdit2->clear(); + qApp->processEvents(); + updateGeometry(); + resize( minimumSizeHint() ); + myEditCurrentArgument->setFocus(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - MESSAGE(width()<<" "<getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); } @@ -221,12 +235,14 @@ void OperationGUI_PartitionDlg::SelectionIntoArgument() myEditCurrentArgument->setText( "" ); QString aString = ""; - int nbSel = GEOMBase::GetNameOfSelectedIObjects( selectedIO(), aString, true ); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); - if ( nbSel < 1 ) - { - if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) - { + int nbSel = GEOMBase::GetNameOfSelectedIObjects(aSelList, aString, true); + + if ( nbSel < 1 ) { + if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) { myListShapes.length( 0 ); myListMaterials.length( 0 ); } @@ -236,22 +252,21 @@ void OperationGUI_PartitionDlg::SelectionIntoArgument() // One and only one plane can be selected - if ( getConstructorId() == 1 && myEditCurrentArgument == GroupPoints->LineEdit2 && nbSel != 1 ) - { + if ( getConstructorId() == 1 && + myEditCurrentArgument == GroupPoints->LineEdit2 && + nbSel != 1 ) { myListTools.length( 0 ); return; } - if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) - { - GEOMBase::ConvertListOfIOInListOfGO( selectedIO(), myListShapes, true ); + if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) { + GEOMBase::ConvertListOfIOInListOfGO(aSelList, myListShapes, true); myListMaterials.length( 0 ); if ( !myListShapes.length() ) return; } - else if ( myEditCurrentArgument == GroupPoints->LineEdit2 ) - { - GEOMBase::ConvertListOfIOInListOfGO( selectedIO(), myListTools, true ); + else if ( myEditCurrentArgument == GroupPoints->LineEdit2 ) { + GEOMBase::ConvertListOfIOInListOfGO(aSelList, myListTools, true); if ( !myListTools.length() ) return; } @@ -268,19 +283,27 @@ void OperationGUI_PartitionDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if(send == GroupPoints->PushButton1) + if ( send == GroupPoints->PushButton1 ) { myEditCurrentArgument = GroupPoints->LineEdit1; - else if(send == GroupPoints->PushButton2) - { + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit1->setEnabled(true); + GroupPoints->LineEdit2->setEnabled(false); + } + else if ( send == GroupPoints->PushButton2 ) { + myGeomGUI->getApp()->selectionMgr()->clearSelected(); //clear prewious selection myEditCurrentArgument = GroupPoints->LineEdit2; - if( getConstructorId()==1 ) + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + GroupPoints->LineEdit2->setEnabled(true); + if ( getConstructorId() == 1 ) globalSelection( GEOM_PLANE ); } globalSelection( GEOM_ALLSHAPES ); - + myEditCurrentArgument->setFocus(); SelectionIntoArgument(); + send->setDown(true); } @@ -292,12 +315,11 @@ void OperationGUI_PartitionDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if(send == GroupPoints->LineEdit1 || - send == GroupPoints->LineEdit2 ) - { + if ( send == GroupPoints->LineEdit1 || + send == GroupPoints->LineEdit2 ) { myEditCurrentArgument = send; GEOMBase_Skeleton::LineEditReturnPressed(); - } + } } @@ -308,10 +330,10 @@ void OperationGUI_PartitionDlg::LineEditReturnPressed() void OperationGUI_PartitionDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); - ConstructorsClicked( getConstructorId() ); + ConstructorsClicked( getConstructorId() ); } @@ -319,9 +341,9 @@ void OperationGUI_PartitionDlg::ActivateThisDialog() // function : enterEvent() // purpose : //================================================================================= -void OperationGUI_PartitionDlg::enterEvent(QEvent* e) +void OperationGUI_PartitionDlg::enterEvent( QEvent* ) { - if (!GroupConstructors->isEnabled()) + if ( !mainFrame()->GroupConstructors->isEnabled() ) this->ActivateThisDialog(); } @@ -340,10 +362,10 @@ GEOM::GEOM_IOperations_ptr OperationGUI_PartitionDlg::createOperation() // function : isValid // purpose : //================================================================================= -bool OperationGUI_PartitionDlg::isValid( QString& msg ) +bool OperationGUI_PartitionDlg::isValid( QString& ) { - return (myListShapes.length() || myListTools.length() || - myListKeepInside.length() || myListRemoveInside.length()); + return ( myListShapes.length() || myListTools.length() || + myListKeepInside.length() || myListRemoveInside.length() ); } @@ -360,13 +382,13 @@ bool OperationGUI_PartitionDlg::execute( ObjectList& objects ) int aLimit = GetLimit(); int aConstructorId = getConstructorId(); - int aKeepNonlimitShapes = 0; - if (aConstructorId == 1) { + + if ( aConstructorId == 1 ) { aLimit = GEOM::SHAPE; } else { - if(GroupPoints->radioButton4->isChecked()) { + if ( GroupPoints->CheckButton1->isChecked() ) { aKeepNonlimitShapes = 1; } else { @@ -374,39 +396,42 @@ bool OperationGUI_PartitionDlg::execute( ObjectList& objects ) } } - if (isValid( msg )) { - - anObj = GEOM::GEOM_IBooleanOperations::_narrow(getOperation())-> - MakePartition(myListShapes, myListTools, - myListKeepInside, myListRemoveInside, - aLimit, false, myListMaterials, aKeepNonlimitShapes); + if ( isValid( msg ) ) { + anObj = GEOM::GEOM_IBooleanOperations::_narrow( getOperation() )-> + MakePartition( myListShapes, myListTools, + myListKeepInside, myListRemoveInside, + aLimit, false, myListMaterials, aKeepNonlimitShapes ); res = true; } - if (!anObj->_is_nil()) + if ( !anObj->_is_nil() ) objects.push_back( anObj._retn() ); return res; } - //================================================================================= -// function : closeEvent +// function : restoreSubShapes // purpose : //================================================================================= -void OperationGUI_PartitionDlg::closeEvent( QCloseEvent* e ) +void OperationGUI_PartitionDlg::restoreSubShapes( SALOMEDS::Study_ptr theStudy, + SALOMEDS::SObject_ptr theSObject ) { - GEOMBase_Skeleton::closeEvent( e ); + if ( mainFrame()->CheckBoxRestoreSS->isChecked() ) { + // empty list of arguments means that all arguments should be restored + getGeomEngine()->RestoreSubShapesSO( theStudy, theSObject, GEOM::ListOfGO(), + /*theFindMethod=*/GEOM::FSM_GetInPlaceByHistory, + /*theInheritFirstArg=*/myListShapes.length() == 1 ); // ? false + } } - //======================================================================= //function : ComboTextChanged //purpose : //======================================================================= void OperationGUI_PartitionDlg::ComboTextChanged() { - bool IsEnabled = GroupPoints->ComboBox1->currentItem() < 3; + //bool IsEnabled = GroupPoints->ComboBox1->currentItem() < 3; //GroupPoints->LineEdit3->setEnabled(IsEnabled); //GroupPoints->LineEdit4->setEnabled(IsEnabled); //GroupPoints->TextLabel4->setEnabled(IsEnabled); @@ -415,17 +440,15 @@ void OperationGUI_PartitionDlg::ComboTextChanged() //GroupPoints->PushButton4->setEnabled(IsEnabled); } - //================================================================================= // function : GetLimit() // purpose : //================================================================================= int OperationGUI_PartitionDlg::GetLimit() const { - int aLimit = GroupPoints->ComboBox1->currentItem(); + int aLimit = GroupPoints->ComboBox1->currentIndex(); - switch (aLimit) - { + switch ( aLimit ) { case 0: aLimit = GEOM::SOLID ; break; case 1: aLimit = GEOM::SHELL ; break; case 2: aLimit = GEOM::FACE ; break; diff --git a/src/OperationGUI/OperationGUI_PartitionDlg.h b/src/OperationGUI/OperationGUI_PartitionDlg.h index ba321be37..a540a05eb 100644 --- a/src/OperationGUI/OperationGUI_PartitionDlg.h +++ b/src/OperationGUI/OperationGUI_PartitionDlg.h @@ -1,35 +1,34 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : OperationGUI_PartitionDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : OperationGUI_PartitionDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef OPERATIONGUI_PARTITIONDLG_H +#define OPERATIONGUI_PARTITIONDLG_H -#ifndef DIALOGBOX_PARTITION_H -#define DIALOGBOX_PARTITION_H +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel1List1Check_QTD.h" +class DlgRef_2Sel1List1Check; //================================================================================= // class : OperationGUI_PartitionDlg @@ -37,48 +36,45 @@ //================================================================================= class OperationGUI_PartitionDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - OperationGUI_PartitionDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0); - ~OperationGUI_PartitionDlg(); - - void SetListMaterials(GEOM::ListOfLong ListMaterials) - { myListMaterials = ListMaterials; } - - GEOM::ListOfLong GetListMaterials() - { return myListMaterials; } + OperationGUI_PartitionDlg( GeometryGUI*, QWidget* = 0 ); + ~OperationGUI_PartitionDlg(); + + void SetListMaterials( GEOM::ListOfLong ); + GEOM::ListOfLong GetListMaterials(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - - virtual void closeEvent( QCloseEvent* e ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void restoreSubShapes( SALOMEDS::Study_ptr, SALOMEDS::SObject_ptr ); private: - void Init(); - void enterEvent(QEvent* e); - int GetLimit() const; + void Init(); + void enterEvent( QEvent* ); + int GetLimit() const; - GEOM::ListOfGO myListShapes; - GEOM::ListOfLong myListMaterials; - GEOM::ListOfGO myListTools; - GEOM::ListOfGO myListRemoveInside; - GEOM::ListOfGO myListKeepInside; +private: + GEOM::ListOfGO myListShapes; + GEOM::ListOfLong myListMaterials; + GEOM::ListOfGO myListTools; + GEOM::ListOfGO myListRemoveInside; + GEOM::ListOfGO myListKeepInside; - DlgRef_2Sel1List1Check_QTD* GroupPoints; + DlgRef_2Sel1List1Check* GroupPoints; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ComboTextChanged(); - void ConstructorsClicked(int constructorId); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ComboTextChanged(); + void ConstructorsClicked( int ); }; -#endif // DIALOGBOX_PARTITION_H +#endif // OPERATIONGUI_PARTITIONDLG_H diff --git a/src/PARTITION/Makefile.in b/src/PARTITION/Makefile.in index 74a06a7fd..eee795478 100644 --- a/src/PARTITION/Makefile.in +++ b/src/PARTITION/Makefile.in @@ -1,31 +1,30 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM PARTITION : partition algorithm -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : Makefile.in # Author : Marc Tajchman (CEA) # Module : GEOM # $Header$ - +# top_srcdir=@top_srcdir@ top_builddir=../.. srcdir=@srcdir@ diff --git a/src/PARTITION/Partition.cdl b/src/PARTITION/Partition.cdl index 0c1c5179c..1f4c8ed30 100644 --- a/src/PARTITION/Partition.cdl +++ b/src/PARTITION/Partition.cdl @@ -1,44 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- GEOM PARTITION : partition algorithm +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful, --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. --- --- You should have received a copy of the GNU Lesser General Public --- License along with this library; if not, write to the Free Software --- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA --- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. -- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- -- File : Partition.cdl -- Author : Benedicte MARTIN diff --git a/src/PARTITION/Partition_Inter2d.cdl b/src/PARTITION/Partition_Inter2d.cdl index 371186e58..31ed37847 100644 --- a/src/PARTITION/Partition_Inter2d.cdl +++ b/src/PARTITION/Partition_Inter2d.cdl @@ -1,44 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- GEOM PARTITION : partition algorithm +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful, --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. --- --- You should have received a copy of the GNU Lesser General Public --- License along with this library; if not, write to the Free Software --- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA --- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. -- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- -- File : Partition_Inter2d.cdl -- Author : Benedicte MARTIN diff --git a/src/PARTITION/Partition_Inter2d.cxx b/src/PARTITION/Partition_Inter2d.cxx index 2760b23e6..4469bb5b8 100644 --- a/src/PARTITION/Partition_Inter2d.cxx +++ b/src/PARTITION/Partition_Inter2d.cxx @@ -1,7 +1,7 @@ -// GEOM PARTITION : partition algorithm +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R& D, LEG, PRINCIPIA R& D, BUREAU VERITAS +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -17,15 +17,14 @@ // 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 -// -// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM PARTITION : partition algorithm // File : Partition_Inter2d.cxx // Author : Benedicte MARTIN // Module : GEOM // $Header$ - +// #include "Partition_Inter2d.ixx" #include "utilities.h" diff --git a/src/PARTITION/Partition_Inter2d.hxx b/src/PARTITION/Partition_Inter2d.hxx index da882ca07..5942fcf14 100644 --- a/src/PARTITION/Partition_Inter2d.hxx +++ b/src/PARTITION/Partition_Inter2d.hxx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM PARTITION : partition algorithm -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Partition_Inter2d.hxx // Module : GEOM - +// #ifndef _Partition_Inter2d_HeaderFile #define _Partition_Inter2d_HeaderFile diff --git a/src/PARTITION/Partition_Inter2d.ixx b/src/PARTITION/Partition_Inter2d.ixx index 3725060ed..954e70da9 100644 --- a/src/PARTITION/Partition_Inter2d.ixx +++ b/src/PARTITION/Partition_Inter2d.ixx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM PARTITION : partition algorithm -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Partition_Inter2d.ixx // Module : GEOM - +// #include "Partition_Inter2d.jxx" diff --git a/src/PARTITION/Partition_Inter2d.jxx b/src/PARTITION/Partition_Inter2d.jxx index 944b3a55c..30cc24a04 100644 --- a/src/PARTITION/Partition_Inter2d.jxx +++ b/src/PARTITION/Partition_Inter2d.jxx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM PARTITION : partition algorithm -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Partition_Inter2d.jxx // Module : GEOM - +// #ifndef _BRepAlgo_AsDes_HeaderFile #include #endif diff --git a/src/PARTITION/Partition_Inter3d.cdl b/src/PARTITION/Partition_Inter3d.cdl index fbbfd63fb..f37cbbb9a 100644 --- a/src/PARTITION/Partition_Inter3d.cdl +++ b/src/PARTITION/Partition_Inter3d.cdl @@ -1,44 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- GEOM PARTITION : partition algorithm +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful, --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. --- --- You should have received a copy of the GNU Lesser General Public --- License along with this library; if not, write to the Free Software --- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA --- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. -- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- -- File : Partition_Inter3d.cdl -- Author : Benedicte MARTIN diff --git a/src/PARTITION/Partition_Inter3d.cxx b/src/PARTITION/Partition_Inter3d.cxx index 771fc19d1..87de80135 100644 --- a/src/PARTITION/Partition_Inter3d.cxx +++ b/src/PARTITION/Partition_Inter3d.cxx @@ -1,31 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM PARTITION : partition algorithm -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Partition_Inter3d.cxx // Author : Benedicte MARTIN // Module : GEOM // $Header$ - +// #include "Partition_Inter2d.hxx" #include "Partition_Inter3d.ixx" #include "utilities.h" diff --git a/src/PARTITION/Partition_Inter3d.hxx b/src/PARTITION/Partition_Inter3d.hxx index bb2b43106..1573cc5f1 100644 --- a/src/PARTITION/Partition_Inter3d.hxx +++ b/src/PARTITION/Partition_Inter3d.hxx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM PARTITION : partition algorithm -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Partition_Inter3d.hxx // Module : GEOM - +// #ifndef _Partition_Inter3d_HeaderFile #define _Partition_Inter3d_HeaderFile diff --git a/src/PARTITION/Partition_Inter3d.ixx b/src/PARTITION/Partition_Inter3d.ixx index 438ff8665..a760097d0 100644 --- a/src/PARTITION/Partition_Inter3d.ixx +++ b/src/PARTITION/Partition_Inter3d.ixx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM PARTITION : partition algorithm -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Partition_Inter3d.ixx // Module : GEOM - +// #include "Partition_Inter3d.jxx" diff --git a/src/PARTITION/Partition_Inter3d.jxx b/src/PARTITION/Partition_Inter3d.jxx index 90453e547..54e7732e3 100644 --- a/src/PARTITION/Partition_Inter3d.jxx +++ b/src/PARTITION/Partition_Inter3d.jxx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM PARTITION : partition algorithm -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Partition_Inter3d.jxx // Module : GEOM - +// #ifndef _BRepAlgo_AsDes_HeaderFile #include #endif diff --git a/src/PARTITION/Partition_Loop.cdl b/src/PARTITION/Partition_Loop.cdl index c474632b3..05bbf3e8b 100644 --- a/src/PARTITION/Partition_Loop.cdl +++ b/src/PARTITION/Partition_Loop.cdl @@ -1,44 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- GEOM PARTITION : partition algorithm +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful, --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. --- --- You should have received a copy of the GNU Lesser General Public --- License along with this library; if not, write to the Free Software --- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA --- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. -- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- -- File : Partition_Loop.cdl -- Author : Benedicte MARTIN diff --git a/src/PARTITION/Partition_Loop.cxx b/src/PARTITION/Partition_Loop.cxx index f118f857d..807bc74af 100644 --- a/src/PARTITION/Partition_Loop.cxx +++ b/src/PARTITION/Partition_Loop.cxx @@ -1,31 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM PARTITION : partition algorithm -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Partition_Loop.cxx // Author : Benedicte MARTIN // Module : GEOM // $Header$ - +// #include #include "Partition_Loop.ixx" diff --git a/src/PARTITION/Partition_Loop.hxx b/src/PARTITION/Partition_Loop.hxx index 52f2629ca..6d8113716 100644 --- a/src/PARTITION/Partition_Loop.hxx +++ b/src/PARTITION/Partition_Loop.hxx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM PARTITION : partition algorithm -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Partition_Loop.hxx // Module : GEOM - +// #ifndef _Partition_Loop_HeaderFile #define _Partition_Loop_HeaderFile diff --git a/src/PARTITION/Partition_Loop.ixx b/src/PARTITION/Partition_Loop.ixx index 64eb2d66b..3b69d33db 100644 --- a/src/PARTITION/Partition_Loop.ixx +++ b/src/PARTITION/Partition_Loop.ixx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM PARTITION : partition algorithm -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Partition_Loop.ixx // Module : GEOM - +// #include "Partition_Loop.jxx" diff --git a/src/PARTITION/Partition_Loop.jxx b/src/PARTITION/Partition_Loop.jxx index c23bd5206..a9384fe3a 100644 --- a/src/PARTITION/Partition_Loop.jxx +++ b/src/PARTITION/Partition_Loop.jxx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM PARTITION : partition algorithm -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Partition_Loop.jxx // Module : GEOM - +// #ifndef _TopoDS_Face_HeaderFile #include #endif diff --git a/src/PARTITION/Partition_Loop2d.cdl b/src/PARTITION/Partition_Loop2d.cdl index dfdf62504..ee7ac3404 100644 --- a/src/PARTITION/Partition_Loop2d.cdl +++ b/src/PARTITION/Partition_Loop2d.cdl @@ -1,27 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- GEOM PARTITION : partition algorithm +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- Copyright (C) 2003 CEA/DEN, EDF R&D +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. -- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- -- File : Partition_Loop2d.cdl -- Author : Benedicte MARTIN diff --git a/src/PARTITION/Partition_Loop2d.cxx b/src/PARTITION/Partition_Loop2d.cxx index 731728778..534e76a41 100644 --- a/src/PARTITION/Partition_Loop2d.cxx +++ b/src/PARTITION/Partition_Loop2d.cxx @@ -1,29 +1,30 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // // GEOM PARTITION : partition algorithm -// // File : Partition_Loop2d.cxx // Author : Benedicte MARTIN // Module : GEOM // $Header$ - +// #include "Partition_Loop2d.ixx" #include "utilities.h" diff --git a/src/PARTITION/Partition_Loop2d.hxx b/src/PARTITION/Partition_Loop2d.hxx index eaba040f3..e60b515a1 100644 --- a/src/PARTITION/Partition_Loop2d.hxx +++ b/src/PARTITION/Partition_Loop2d.hxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // // GEOM PARTITION : partition algorithm -// // File : Partition_Loop2d.hxx // Module : GEOM - +// #ifndef _Partition_Loop2d_HeaderFile #define _Partition_Loop2d_HeaderFile diff --git a/src/PARTITION/Partition_Loop2d.ixx b/src/PARTITION/Partition_Loop2d.ixx index 1868d7d4b..18b728c33 100644 --- a/src/PARTITION/Partition_Loop2d.ixx +++ b/src/PARTITION/Partition_Loop2d.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include "Partition_Loop2d.jxx" diff --git a/src/PARTITION/Partition_Loop2d.jxx b/src/PARTITION/Partition_Loop2d.jxx index b4127d344..0118ee22e 100644 --- a/src/PARTITION/Partition_Loop2d.jxx +++ b/src/PARTITION/Partition_Loop2d.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Face_HeaderFile #include #endif diff --git a/src/PARTITION/Partition_Loop3d.cdl b/src/PARTITION/Partition_Loop3d.cdl index 7b2262256..33e90df74 100644 --- a/src/PARTITION/Partition_Loop3d.cdl +++ b/src/PARTITION/Partition_Loop3d.cdl @@ -1,27 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- GEOM PARTITION : partition algorithm +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- Copyright (C) 2003 CEA/DEN, EDF R&D +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. -- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- -- File : Partition_Loop3d.cdl -- Module : GEOM diff --git a/src/PARTITION/Partition_Loop3d.cxx b/src/PARTITION/Partition_Loop3d.cxx index 4d83a4616..ccca4a36b 100644 --- a/src/PARTITION/Partition_Loop3d.cxx +++ b/src/PARTITION/Partition_Loop3d.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // // GEOM PARTITION : partition algorithm -// // File : Partition_Loop3d.cxx // Module : GEOM - +// #include "Partition_Loop3d.ixx" #include diff --git a/src/PARTITION/Partition_Loop3d.hxx b/src/PARTITION/Partition_Loop3d.hxx index 38be1c3ee..cf7a2f209 100644 --- a/src/PARTITION/Partition_Loop3d.hxx +++ b/src/PARTITION/Partition_Loop3d.hxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // // GEOM PARTITION : partition algorithm -// // File : Partition_Loop3d.hxx // Module : GEOM - +// #ifndef _Partition_Loop3d_HeaderFile #define _Partition_Loop3d_HeaderFile diff --git a/src/PARTITION/Partition_Loop3d.ixx b/src/PARTITION/Partition_Loop3d.ixx index 75c6f942a..83205eb5e 100644 --- a/src/PARTITION/Partition_Loop3d.ixx +++ b/src/PARTITION/Partition_Loop3d.ixx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #include "Partition_Loop3d.jxx" diff --git a/src/PARTITION/Partition_Loop3d.jxx b/src/PARTITION/Partition_Loop3d.jxx index 9a6f3efaa..7b8e1f45f 100644 --- a/src/PARTITION/Partition_Loop3d.jxx +++ b/src/PARTITION/Partition_Loop3d.jxx @@ -1,22 +1,24 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com - #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/PARTITION/Partition_Spliter.cdl b/src/PARTITION/Partition_Spliter.cdl index 4d742be40..1954b9748 100644 --- a/src/PARTITION/Partition_Spliter.cdl +++ b/src/PARTITION/Partition_Spliter.cdl @@ -1,44 +1,23 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// --- GEOM PARTITION : partition algorithm +-- Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE -- --- Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, --- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS --- --- This library is free software; you can redistribute it and/or --- modify it under the terms of the GNU Lesser General Public --- License as published by the Free Software Foundation; either --- version 2.1 of the License. --- --- This library is distributed in the hope that it will be useful, --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --- Lesser General Public License for more details. --- --- You should have received a copy of the GNU Lesser General Public --- License along with this library; if not, write to the Free Software --- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA --- --- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +-- Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +-- CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -- +-- This library is free software; you can redistribute it and/or +-- modify it under the terms of the GNU Lesser General Public +-- License as published by the Free Software Foundation; either +-- version 2.1 of the License. -- +-- This library is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +-- Lesser General Public License for more details. +-- +-- You should have received a copy of the GNU Lesser General Public +-- License along with this library; if not, write to the Free Software +-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +-- +-- See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -- -- File : Partition_Spliter.cdl -- Author : Benedicte MARTIN diff --git a/src/PARTITION/Partition_Spliter.cxx b/src/PARTITION/Partition_Spliter.cxx index 1bb919fe5..b9f437e42 100644 --- a/src/PARTITION/Partition_Spliter.cxx +++ b/src/PARTITION/Partition_Spliter.cxx @@ -1,31 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM PARTITION : partition algorithm -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Partition_Spliter.cxx // Author : Benedicte MARTIN // Module : GEOM // $Header$ - +// #include "Partition_Inter2d.hxx" #include "Partition_Inter3d.hxx" #include "Partition_Loop2d.hxx" diff --git a/src/PARTITION/Partition_Spliter.hxx b/src/PARTITION/Partition_Spliter.hxx index 04b60c0de..1b71e20b1 100644 --- a/src/PARTITION/Partition_Spliter.hxx +++ b/src/PARTITION/Partition_Spliter.hxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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 // // GEOM PARTITION : partition algorithm -// // File : Partition_Spliter.hxx // Module : GEOM - +// #ifndef _Partition_Spliter_HeaderFile #define _Partition_Spliter_HeaderFile diff --git a/src/PARTITION/Partition_Spliter.ixx b/src/PARTITION/Partition_Spliter.ixx index cd1c199c5..3443f3150 100644 --- a/src/PARTITION/Partition_Spliter.ixx +++ b/src/PARTITION/Partition_Spliter.ixx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM PARTITION : partition algorithm -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Partition_Spliter.ixx // Module : GEOM - +// #include "Partition_Spliter.jxx" diff --git a/src/PARTITION/Partition_Spliter.jxx b/src/PARTITION/Partition_Spliter.jxx index f89faca05..79d17ddb4 100644 --- a/src/PARTITION/Partition_Spliter.jxx +++ b/src/PARTITION/Partition_Spliter.jxx @@ -1,29 +1,28 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM PARTITION : partition algorithm -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Partition_Spliter.jxx // Module : GEOM - +// #ifndef _BRepAlgo_AsDes_HeaderFile #include #endif diff --git a/src/PrimitiveGUI/Makefile.am b/src/PrimitiveGUI/Makefile.am index 4ca0d8793..4825e3f47 100644 --- a/src/PrimitiveGUI/Makefile.am +++ b/src/PrimitiveGUI/Makefile.am @@ -1,83 +1,96 @@ -# GEOM PRIMITIVEGUI : +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : PrimitiveGUI # -# File : Makefile.in -# Author : Damien COQUERET (OCC) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header: include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files -salomeinclude_HEADERS = +salomeinclude_HEADERS = \ + PrimitiveGUI.h \ + PrimitiveGUI_BoxDlg.h \ + PrimitiveGUI_CylinderDlg.h \ + PrimitiveGUI_SphereDlg.h \ + PrimitiveGUI_TorusDlg.h \ + PrimitiveGUI_ConeDlg.h # Libraries targets lib_LTLIBRARIES = libPrimitiveGUI.la -dist_libPrimitiveGUI_la_SOURCES = \ - PrimitiveGUI.cxx \ - PrimitiveGUI_BoxDlg.cxx \ - PrimitiveGUI_CylinderDlg.cxx \ - PrimitiveGUI_SphereDlg.cxx \ - PrimitiveGUI_TorusDlg.cxx \ - PrimitiveGUI_ConeDlg.cxx +dist_libPrimitiveGUI_la_SOURCES = \ + PrimitiveGUI.h \ + PrimitiveGUI_BoxDlg.h \ + PrimitiveGUI_ConeDlg.h \ + PrimitiveGUI_CylinderDlg.h \ + PrimitiveGUI_SphereDlg.h \ + PrimitiveGUI_TorusDlg.h \ + PrimitiveGUI_FaceDlg.h \ + PrimitiveGUI_DiskDlg.h \ + \ + PrimitiveGUI.cxx \ + PrimitiveGUI_BoxDlg.cxx \ + PrimitiveGUI_CylinderDlg.cxx \ + PrimitiveGUI_SphereDlg.cxx \ + PrimitiveGUI_TorusDlg.cxx \ + PrimitiveGUI_ConeDlg.cxx \ + PrimitiveGUI_FaceDlg.cxx \ + PrimitiveGUI_DiskDlg.cxx -MOC_FILES = \ - PrimitiveGUI_BoxDlg_moc.cxx \ - PrimitiveGUI_CylinderDlg_moc.cxx \ - PrimitiveGUI_SphereDlg_moc.cxx \ - PrimitiveGUI_TorusDlg_moc.cxx \ - PrimitiveGUI_ConeDlg_moc.cxx +MOC_FILES = \ + PrimitiveGUI_BoxDlg_moc.cxx \ + PrimitiveGUI_CylinderDlg_moc.cxx \ + PrimitiveGUI_SphereDlg_moc.cxx \ + PrimitiveGUI_TorusDlg_moc.cxx \ + PrimitiveGUI_ConeDlg_moc.cxx \ + PrimitiveGUI_FaceDlg_moc.cxx \ + PrimitiveGUI_DiskDlg_moc.cxx -nodist_libPrimitiveGUI_la_SOURCES= \ +nodist_libPrimitiveGUI_la_SOURCES = \ $(MOC_FILES) -#LIB_CLIENT_IDL = SALOME_GenericObj.idl SALOME_Component.idl SALOME_Exception.idl +# additional information to compile and link file -#LIB_SERVER_IDL = - -# additionnal information to compil and link file - -libPrimitiveGUI_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(VTK_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(PYTHON_INCLUDES) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../GEOMGUI \ - -I$(srcdir)/../DlgRef \ - -I$(srcdir)/../GEOMBase \ - -I$(srcdir)/../OBJECT \ - -I$(srcdir)/../GEOMClient \ - -I$(srcdir)/../GEOMImpl \ - -I$(srcdir)/../GEOMFiltersSelection \ - -I$(top_builddir)/idl \ +libPrimitiveGUI_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(VTK_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(PYTHON_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../GEOMGUI \ + -I$(srcdir)/../DlgRef \ + -I$(srcdir)/../GEOMBase \ + -I$(srcdir)/../OBJECT \ + -I$(srcdir)/../GEOMClient \ + -I$(srcdir)/../GEOMImpl \ + -I$(srcdir)/../GEOMFiltersSelection \ + -I$(top_builddir)/src/DlgRef \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libPrimitiveGUI_la_LDFLAGS = \ - ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ +libPrimitiveGUI_la_LDFLAGS = \ + ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ ../GEOMBase/libGEOMBase.la diff --git a/src/PrimitiveGUI/PrimitiveGUI.cxx b/src/PrimitiveGUI/PrimitiveGUI.cxx index 45ca54db0..b6c831aba 100644 --- a/src/PrimitiveGUI/PrimitiveGUI.cxx +++ b/src/PrimitiveGUI/PrimitiveGUI.cxx @@ -1,53 +1,48 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : PrimitiveGUI.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : PrimitiveGUI.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - - #include "PrimitiveGUI.h" -#include "GeometryGUI.h" -#include "SUIT_Session.h" -#include "SUIT_Desktop.h" +#include -#include "SalomeApp_Application.h" +#include +#include #include "PrimitiveGUI_BoxDlg.h" // Method BOX #include "PrimitiveGUI_CylinderDlg.h" // Method CYLINDER #include "PrimitiveGUI_SphereDlg.h" // Method SPHERE #include "PrimitiveGUI_TorusDlg.h" // Method TORUS #include "PrimitiveGUI_ConeDlg.h" // Method CONE - -using namespace std; +#include "PrimitiveGUI_FaceDlg.h" // Method FACE +#include "PrimitiveGUI_DiskDlg.h" // Method DISK //======================================================================= // function : PrimitiveGUI() // purpose : Constructor //======================================================================= -PrimitiveGUI::PrimitiveGUI(GeometryGUI* parent) : GEOMGUI(parent) +PrimitiveGUI::PrimitiveGUI( GeometryGUI* parent ) : GEOMGUI( parent ) { } @@ -59,56 +54,59 @@ PrimitiveGUI::~PrimitiveGUI() { } - //======================================================================= // function : OnGUIEvent() // purpose : //======================================================================= -bool PrimitiveGUI::OnGUIEvent(int theCommandID, SUIT_Desktop* parent) +bool PrimitiveGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) { SalomeApp_Application* app = getGeometryGUI()->getApp(); - if (!app) return false; + if ( !app ) return false; getGeometryGUI()->EmitSignalDeactivateDialog(); QDialog* aDlg = NULL; - switch (theCommandID) - { - case 4021: // BOX - aDlg = new PrimitiveGUI_BoxDlg(getGeometryGUI(), parent, ""); - break; - case 4022: // CYLINDER - aDlg = new PrimitiveGUI_CylinderDlg(getGeometryGUI(), parent, ""); - break; - case 4023: // SPHERE - aDlg = new PrimitiveGUI_SphereDlg(getGeometryGUI(), parent, ""); - break; - case 4024: // TORUS - aDlg = new PrimitiveGUI_TorusDlg(getGeometryGUI(), parent, ""); - break; - case 4025: // CONE - aDlg = new PrimitiveGUI_ConeDlg(getGeometryGUI(), parent, ""); - break; - default: - app->putInfo(tr("GEOM_PRP_COMMAND").arg(theCommandID)); - break; - } + switch ( theCommandID ) { + case 4021: // BOX + aDlg = new PrimitiveGUI_BoxDlg( getGeometryGUI(), parent ); + break; + case 4022: // CYLINDER + aDlg = new PrimitiveGUI_CylinderDlg( getGeometryGUI(), parent ); + break; + case 4023: // SPHERE + aDlg = new PrimitiveGUI_SphereDlg( getGeometryGUI(), parent ); + break; + case 4024: // TORUS + aDlg = new PrimitiveGUI_TorusDlg( getGeometryGUI(), parent ); + break; + case 4025: // CONE + aDlg = new PrimitiveGUI_ConeDlg( getGeometryGUI(), parent); + break; + case 4026: // FACE + aDlg = new PrimitiveGUI_FaceDlg( getGeometryGUI(), parent); + break; + case 4027: // DISK + aDlg = new PrimitiveGUI_DiskDlg( getGeometryGUI(), parent); + break; + default: + app->putInfo( tr( "GEOM_PRP_COMMAND" ).arg( theCommandID ) ); + break; + } - if (aDlg != NULL) + if ( aDlg != NULL ) aDlg->show(); return true; } - //===================================================================================== // EXPORTED METHODS //===================================================================================== extern "C" { -#ifdef WNT - __declspec( dllexport ) +#ifdef WIN32 + __declspec( dllexport ) #endif GEOMGUI* GetLibGUI( GeometryGUI* parent ) { diff --git a/src/PrimitiveGUI/PrimitiveGUI.h b/src/PrimitiveGUI/PrimitiveGUI.h index ff2267323..df97571df 100644 --- a/src/PrimitiveGUI/PrimitiveGUI.h +++ b/src/PrimitiveGUI/PrimitiveGUI.h @@ -1,35 +1,32 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : PrimitiveGUI.h +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : PrimitiveGUI.h -// Author : Damien COQUERET -// Module : GEOM - #ifndef PRIMITIVEGUI_H #define PRIMITIVEGUI_H -#include "GEOMGUI.h" - +#include //================================================================================= // class : PrimitiveGUI @@ -38,10 +35,10 @@ class PrimitiveGUI : public GEOMGUI { public: - PrimitiveGUI(GeometryGUI* parent); + PrimitiveGUI( GeometryGUI* ); ~PrimitiveGUI(); - bool OnGUIEvent(int theCommandID, SUIT_Desktop* parent); + bool OnGUIEvent( int, SUIT_Desktop* ); }; #endif diff --git a/src/PrimitiveGUI/PrimitiveGUI.pro b/src/PrimitiveGUI/PrimitiveGUI.pro new file mode 100644 index 000000000..ed65cfc48 --- /dev/null +++ b/src/PrimitiveGUI/PrimitiveGUI.pro @@ -0,0 +1,65 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = PrimitiveGUI +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +QT_INCLUDES = $$(QTDIR)/include $$(QTDIR)/include/QtCore $$(QTDIR)/include/QtGui $$(QTDIR)/include/QtOpenGL $$(QTDIR)/include/QtXml + +VTK_INCLUDES = $$(VTKHOME)/include/vtk + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +PYTHON_INCLUDES = $$(PYTHONHOME)/include/python2.4 + +BOOST_CPPFLAGS = $$(BOOSTDIR)/include + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +GUI_CXXFLAGS = $$(GUI_ROOT_DIR)/include/salome + +CORBA_INCLUDES = $$(OMNIORBDIR)/include $$(OMNIORBDIR)/include/omniORB4 $$(OMNIORBDIR)/include/COS + +INCLUDEPATH += $${QT_INCLUDES} $${VTK_INCLUDES} $${CAS_CPPFLAGS} $${PYTHON_INCLUDES} $${BOOST_CPPFLAGS} $${KERNEL_CXXFLAGS} $${GUI_CXXFLAGS} $${CORBA_INCLUDES} ../GEOMGUI ../DlgRef ../GEOMBase ../OBJECT ../GEOMClient ../GEOMImpl ../GEOMFiltersSelection $$(GEOM_ROOT_DIR)/idl $$(GEOM_ROOT_DIR)/salome_adm/unix + +LIBS += -L$$(GEOM_ROOT_DIR)/lib -lGEOMFiltersSelection -lGEOMBase + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS OMNIORB_VERSION=4 __x86__ __linux__ COMP_CORBA_DOUBLE COMP_CORBA_LONG + +SOURCES = PrimitiveGUI.cxx +SOURCES += PrimitiveGUI_BoxDlg.cxx +SOURCES += PrimitiveGUI_CylinderDlg.cxx +SOURCES += PrimitiveGUI_SphereDlg.cxx +SOURCES += PrimitiveGUI_TorusDlg.cxx +SOURCES += PrimitiveGUI_ConeDlg.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/PrimitiveGUI/PrimitiveGUI_BoxDlg.cxx b/src/PrimitiveGUI/PrimitiveGUI_BoxDlg.cxx index 4ff84badb..ab47b76d3 100644 --- a/src/PrimitiveGUI/PrimitiveGUI_BoxDlg.cxx +++ b/src/PrimitiveGUI/PrimitiveGUI_BoxDlg.cxx @@ -1,100 +1,98 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : PrimitiveGUI_BoxDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : PrimitiveGUI_BoxDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "PrimitiveGUI_BoxDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include +#include +#include +#include + +// OCCT Includes #include #include #include #include #include -#include - -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" - -using namespace std; - +#include +//#include //================================================================================= // class : PrimitiveGUI_BoxDlg() -// purpose : Constructs a PrimitiveGUI_BoxDlg which is a child of 'parent', with the +// purpose : Constructs a PrimitiveGUI_BoxDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -PrimitiveGUI_BoxDlg::PrimitiveGUI_BoxDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +PrimitiveGUI_BoxDlg::PrimitiveGUI_BoxDlg (GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl), + myInitial(true) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_BOX_2P"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_BOX_DXYZ"))); - QPixmap image2(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); + QPixmap image0 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_BOX_2P"))); + QPixmap image1 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_BOX_DXYZ"))); + QPixmap image2 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_BOX_TITLE")); + setWindowTitle(tr("GEOM_BOX_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_BOX")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image1); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_BOX")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setIcon(image1); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_2Sel_QTD(this, "GroupPoints"); + GroupPoints = new DlgRef_2Sel(centralWidget()); GroupPoints->GroupBox1->setTitle(tr("GEOM_DIAGONAL_POINTS")); - GroupPoints->TextLabel1->setText(tr("GEOM_POINT_I").arg("1")); - GroupPoints->TextLabel2->setText(tr("GEOM_POINT_I").arg("2")); - GroupPoints->PushButton1->setPixmap(image2); - GroupPoints->PushButton2->setPixmap(image2); + GroupPoints->TextLabel1->setText(tr("GEOM_POINT_I").arg(1)); + GroupPoints->TextLabel2->setText(tr("GEOM_POINT_I").arg(2)); + GroupPoints->PushButton1->setIcon(image2); + GroupPoints->PushButton2->setIcon(image2); - GroupDimensions = new DlgRef_3Spin(this, "GroupDimensions"); + GroupDimensions = new DlgRef_3Spin(centralWidget()); GroupDimensions->GroupBox1->setTitle(tr("GEOM_BOX_OBJ")); GroupDimensions->TextLabel1->setText(tr("GEOM_DX")); GroupDimensions->TextLabel2->setText(tr("GEOM_DY")); GroupDimensions->TextLabel3->setText(tr("GEOM_DZ")); - Layout1->addWidget(GroupPoints, 2, 0); - Layout1->addWidget(GroupDimensions, 2, 0); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); + layout->addWidget(GroupDimensions); /***************************************************************/ setHelpFileName("create_box_page.html"); - + Init(); } - //================================================================================= // function : ~DialogBox_Box() // purpose : Destroys the object and frees any allocated resources @@ -104,39 +102,39 @@ PrimitiveGUI_BoxDlg::~PrimitiveGUI_BoxDlg() // no need to delete child widgets, Qt does it all for us } - //================================================================================= // function : Init() // purpose : //================================================================================= void PrimitiveGUI_BoxDlg::Init() { - /* init variables */ - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit1->setReadOnly( true ); - GroupPoints->LineEdit2->setReadOnly( true ); - - myPoint1 = myPoint2 = GEOM::GEOM_Object::_nil(); - - /* Get setting of step value from file configuration */ + // Get setting of step value from file configuration SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100); - - /* min, max, step and decimals for spin boxes */ - GroupDimensions->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupDimensions->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupDimensions->SpinBox_DZ->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); + double step = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100); + + // min, max, step and decimals for spin boxes + initSpinBox(GroupDimensions->SpinBox_DX, 0.000001, COORD_MAX, step, 6); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DY, 0.000001, COORD_MAX, step, 6); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DZ, 0.000001, COORD_MAX, step, 6); // VSR: TODO: DBL_DIGITS_DISPLAY + + // init variables + GroupPoints->LineEdit1->setReadOnly(true); + GroupPoints->LineEdit2->setReadOnly(true); + + GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit2->setText(""); + myPoint1 = myPoint2 = GEOM::GEOM_Object::_nil(); double initValue = 200.0; - GroupDimensions->SpinBox_DX->SetValue(initValue); - GroupDimensions->SpinBox_DY->SetValue(initValue); - GroupDimensions->SpinBox_DZ->SetValue(initValue); + GroupDimensions->SpinBox_DX->setValue(initValue); + GroupDimensions->SpinBox_DY->setValue(initValue); + GroupDimensions->SpinBox_DZ->setValue(initValue); - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); @@ -147,58 +145,65 @@ void PrimitiveGUI_BoxDlg::Init() connect(GroupDimensions->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); connect(GroupDimensions->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); connect(GroupDimensions->SpinBox_DZ, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); - - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DY, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DZ, SLOT(SetStep(double))); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), this, SLOT(SetDoubleSpinBoxStep(double))); - initName( tr( "GEOM_BOX" ) ); - ConstructorsClicked(0); + initName(tr("GEOM_BOX")); + + setConstructorId(1); // simplest constructor + ConstructorsClicked(1); +} + +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void PrimitiveGUI_BoxDlg::SetDoubleSpinBoxStep (double step) +{ + GroupDimensions->SpinBox_DX->setSingleStep(step); + GroupDimensions->SpinBox_DY->setSingleStep(step); + GroupDimensions->SpinBox_DZ->setSingleStep(step); } //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void PrimitiveGUI_BoxDlg::ConstructorsClicked(int constructorId) +void PrimitiveGUI_BoxDlg::ConstructorsClicked (int constructorId) { - disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); - - switch (constructorId) + switch (constructorId) { + case 0: { - case 0: - { - // globalSelection( GEOM_POINT ); - globalSelection(); // close local contexts, if any - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + GroupDimensions->hide(); + GroupPoints->show(); - GroupDimensions->hide(); - resize(0, 0); - GroupPoints->show(); - - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit1->setText(""); - GroupPoints->LineEdit2->setText(""); - myPoint1 = myPoint2 = GEOM::GEOM_Object::_nil(); - - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - break; - } - case 1: - { - GroupPoints->hide(); - globalSelection(); // close local contexts, if any - resize(0, 0); - GroupDimensions->show(); - - break; - } + GroupPoints->PushButton1->click(); + break; } - displayPreview(); + case 1: + { + GroupPoints->hide(); + GroupDimensions->show(); + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + globalSelection(); // close local contexts, if any + + displayPreview(); + break; + } + } + + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); + + if (myInitial) { + // on dialog initialization we init the first field with a selected object (if any) + SelectionIntoArgument(); + myInitial = false; + } + else { + displayPreview(); + } } //================================================================================= @@ -207,7 +212,7 @@ void PrimitiveGUI_BoxDlg::ConstructorsClicked(int constructorId) //================================================================================= void PrimitiveGUI_BoxDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } @@ -217,63 +222,68 @@ void PrimitiveGUI_BoxDlg::ClickOnOk() //================================================================================= bool PrimitiveGUI_BoxDlg::ClickOnApply() { - if ( !onAccept() ) + if (!onAccept()) return false; - + initName(); - ConstructorsClicked( getConstructorId() ); + // activate selection and connect selection manager + ConstructorsClicked(getConstructorId()); return true; } //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection as changed +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void PrimitiveGUI_BoxDlg::SelectionIntoArgument() { if (getConstructorId() != 0) return; + erasePreview(); myEditCurrentArgument->setText(""); - if (IObjectCount() != 1) - { - if (myEditCurrentArgument == GroupPoints->LineEdit1) - myPoint1 = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == GroupPoints->LineEdit2) - myPoint2 = GEOM::GEOM_Object::_nil(); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) { + if (myEditCurrentArgument == GroupPoints->LineEdit1) myPoint1 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupPoints->LineEdit2) myPoint2 = GEOM::GEOM_Object::_nil(); return; } // nbSel == 1 Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult); + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); if (!testResult || CORBA::is_nil(aSelectedObject)) return; - TopoDS_Shape aShape; QString aName = GEOMBase::GetName(aSelectedObject); + + // Get Selected object if selected subshape + TopoDS_Shape aShape; if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) { - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes(firstIObject(), aMap); + aSelMgr->GetIndexes(aSelList.First(), aMap); if (aMap.Extent() == 1) // Local Selection { - int anIndex = aMap( 1 ); - aName.append( ":vertex_" + QString::number( anIndex ) ); + int anIndex = aMap(1); + aName.append(":vertex_" + QString::number(anIndex)); //Find SubShape Object in Father GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); - - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = - getGeomEngine()->GetIShapesOperations( getStudyId() ); - aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = + getGeomEngine()->GetIShapesOperations(getStudyId()); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + } + else { + aSelectedObject = aFindedObject; // get Object from study } - else - aSelectedObject = aFindedObject; // get Object from study } else // Global Selection { @@ -286,10 +296,22 @@ void PrimitiveGUI_BoxDlg::SelectionIntoArgument() myEditCurrentArgument->setText(aName); - if (myEditCurrentArgument == GroupPoints->LineEdit1) + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + if (myEditCurrentArgument == GroupPoints->LineEdit1) { myPoint1 = aSelectedObject; - else if (myEditCurrentArgument == GroupPoints->LineEdit2) + if (!myPoint1->_is_nil() && myPoint2->_is_nil()) + GroupPoints->PushButton2->click(); + } + else if (myEditCurrentArgument == GroupPoints->LineEdit2) { myPoint2 = aSelectedObject; + if (!myPoint2->_is_nil() && myPoint1->_is_nil()) + GroupPoints->PushButton1->click(); + } displayPreview(); } @@ -302,17 +324,42 @@ void PrimitiveGUI_BoxDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if(send == GroupPoints->PushButton1) + // ?? Commented, because we need this flag in ConstructorsClicked, because + // SelectionIntoArgument must be called only on dialog creation, and must not be called on + // simple switch between constructors (as we need to keep old values in fields in this case) + + // clear selection + //disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + //if (myInitial) + // myInitial = false; + //else + // myGeomGUI->getApp()->selectionMgr()->clearSelected(); + + if (send == GroupPoints->PushButton1) { myEditCurrentArgument = GroupPoints->LineEdit1; - else if(send == GroupPoints->PushButton2) + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit2->setEnabled(false); + } + else if (send == GroupPoints->PushButton2) { myEditCurrentArgument = GroupPoints->LineEdit2; + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + } - // globalSelection( GEOM_POINT ); - globalSelection(); // close local contexts, if any - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); - + // enable line edit + myEditCurrentArgument->setEnabled(true); myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + globalSelection(); // close local contexts, if any + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); } //================================================================================= @@ -322,14 +369,12 @@ void PrimitiveGUI_BoxDlg::SetEditCurrentArgument() void PrimitiveGUI_BoxDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if(send == GroupPoints->LineEdit1 || send == GroupPoints->LineEdit2) - { - myEditCurrentArgument = send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } + if (send == GroupPoints->LineEdit1 || send == GroupPoints->LineEdit2) { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } } - //================================================================================= // function : ActivateThisDialog() // purpose : @@ -337,24 +382,24 @@ void PrimitiveGUI_BoxDlg::LineEditReturnPressed() void PrimitiveGUI_BoxDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); - - ConstructorsClicked( getConstructorId() ); + if (getConstructorId() == 0) { + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + } + displayPreview(); } - //================================================================================= // function : enterEvent [REDEFINED] // purpose : //================================================================================= -void PrimitiveGUI_BoxDlg::enterEvent(QEvent* e) +void PrimitiveGUI_BoxDlg::enterEvent (QEvent*) { - if ( !GroupConstructors->isEnabled() ) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } - //================================================================================= // function : ValueChangedInSpinBox() // purpose : @@ -364,86 +409,90 @@ void PrimitiveGUI_BoxDlg::ValueChangedInSpinBox() displayPreview(); } - //================================================================================= // function : createOperation // purpose : //================================================================================= GEOM::GEOM_IOperations_ptr PrimitiveGUI_BoxDlg::createOperation() { - return getGeomEngine()->GetI3DPrimOperations( getStudyId() ); + return getGeomEngine()->GetI3DPrimOperations(getStudyId()); } - //================================================================================= // function : isValid // purpose : //================================================================================= -bool PrimitiveGUI_BoxDlg::isValid( QString& msg ) +bool PrimitiveGUI_BoxDlg::isValid (QString& msg) { - return getConstructorId() == 0 ? !(myPoint1->_is_nil() || myPoint2->_is_nil()) : true; -} + bool ok = true; + if( getConstructorId() == 1 ) + { + ok = GroupDimensions->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupDimensions->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + ok = GroupDimensions->SpinBox_DZ->isValid( msg, !IsPreview() ) && ok; + ok = fabs( GroupDimensions->SpinBox_DX->value() ) > Precision::Confusion() && ok; + ok = fabs( GroupDimensions->SpinBox_DY->value() ) > Precision::Confusion() && ok; + ok = fabs( GroupDimensions->SpinBox_DZ->value() ) > Precision::Confusion() && ok; + } + return getConstructorId() == 0 ? !(myPoint1->_is_nil() || myPoint2->_is_nil()) : ok; +} //================================================================================= // function : execute // purpose : //================================================================================= -bool PrimitiveGUI_BoxDlg::execute( ObjectList& objects ) +bool PrimitiveGUI_BoxDlg::execute (ObjectList& objects) { bool res = false; - + GEOM::GEOM_Object_var anObj; - - switch ( getConstructorId() ) - { - case 0 : - { - if ( !CORBA::is_nil( myPoint1 ) && !CORBA::is_nil( myPoint2 ) ) { - anObj = GEOM::GEOM_I3DPrimOperations::_narrow( getOperation() )->MakeBoxTwoPnt( myPoint1, myPoint2 ); - res = true; - } - - break; - } - case 1 : + + switch (getConstructorId()) { + case 0: { - double x = GroupDimensions->SpinBox_DX->GetValue(); - double y = GroupDimensions->SpinBox_DY->GetValue(); - double z = GroupDimensions->SpinBox_DZ->GetValue(); - - anObj = GEOM::GEOM_I3DPrimOperations::_narrow( getOperation() )->MakeBoxDXDYDZ( x, y, z ); - res = true; - break; + if (!CORBA::is_nil(myPoint1) && !CORBA::is_nil(myPoint2)) { + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())->MakeBoxTwoPnt(myPoint1, myPoint2); + res = true; + } } + break; + case 1: + { + double x = GroupDimensions->SpinBox_DX->value(); + double y = GroupDimensions->SpinBox_DY->value(); + double z = GroupDimensions->SpinBox_DZ->value(); + + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())->MakeBoxDXDYDZ(x, y, z); + if (!anObj->_is_nil() && !IsPreview()) + { + QStringList aParameters; + aParameters << GroupDimensions->SpinBox_DX->text(); + aParameters << GroupDimensions->SpinBox_DY->text(); + aParameters << GroupDimensions->SpinBox_DZ->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } + res = true; + } + break; } - - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - + + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + return res; } //================================================================================= -// function : closeEvent -// purpose : -//================================================================================= -void PrimitiveGUI_BoxDlg::closeEvent( QCloseEvent* e ) -{ - GEOMBase_Skeleton::closeEvent( e ); -} - -//================================================================================= -// function : addSubshapeToStudy +// function : addSubshapesToStudy // purpose : virtual method to add new SubObjects if local selection //================================================================================= void PrimitiveGUI_BoxDlg::addSubshapesToStudy() { - QMap objMap; - if ( getConstructorId() == 0 ) - { + if (getConstructorId() == 0) { + QMap objMap; objMap[GroupPoints->LineEdit1->text()] = myPoint1; objMap[GroupPoints->LineEdit2->text()] = myPoint2; - addSubshapesToFather( objMap ); + addSubshapesToFather(objMap); } } diff --git a/src/PrimitiveGUI/PrimitiveGUI_BoxDlg.h b/src/PrimitiveGUI/PrimitiveGUI_BoxDlg.h index 5ff6bf50c..8cb75c19b 100644 --- a/src/PrimitiveGUI/PrimitiveGUI_BoxDlg.h +++ b/src/PrimitiveGUI/PrimitiveGUI_BoxDlg.h @@ -1,38 +1,35 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : PrimitiveGUI_BoxDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : PrimitiveGUI_BoxDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef PRIMITIVEGUI_BOXDLG_H +#define PRIMITIVEGUI_BOXDLG_H -#ifndef DIALOGBOX_BOX_H -#define DIALOGBOX_BOX_H +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel_QTD.h" -#include "DlgRef_3Spin.h" - -using namespace std; +class DlgRef_2Sel; +class DlgRef_3Spin; //================================================================================= // class : PrimitiveGUI_BoxDlg @@ -40,39 +37,42 @@ using namespace std; //================================================================================= class PrimitiveGUI_BoxDlg : public GEOMBase_Skeleton { - Q_OBJECT - + Q_OBJECT + public: - PrimitiveGUI_BoxDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~PrimitiveGUI_BoxDlg(); - + PrimitiveGUI_BoxDlg( GeometryGUI*, QWidget* = 0, bool modal = false, Qt::WindowFlags = 0 ); + ~PrimitiveGUI_BoxDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); - virtual void closeEvent( QCloseEvent* e ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); -private : - void Init(); - void enterEvent(QEvent* e); +private: + void Init(); + void enterEvent( QEvent* ); - GEOM::GEOM_Object_var myPoint1, myPoint2; /* Points containing the vector */ - - DlgRef_2Sel_QTD* GroupPoints; - DlgRef_3Spin* GroupDimensions; +private: + GEOM::GEOM_Object_var myPoint1, myPoint2; /* Points containing the vector */ + + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; + + DlgRef_2Sel* GroupPoints; + DlgRef_3Spin* GroupDimensions; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ConstructorsClicked(int); - void ValueChangedInSpinBox(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ConstructorsClicked( int ); + void ValueChangedInSpinBox(); + void SetDoubleSpinBoxStep( double ); }; -#endif // DIALOGBOX_BOX_H +#endif // PRIMITIVEGUI_BOXDLG_H diff --git a/src/PrimitiveGUI/PrimitiveGUI_ConeDlg.cxx b/src/PrimitiveGUI/PrimitiveGUI_ConeDlg.cxx index e2ad901fe..5bbe43478 100644 --- a/src/PrimitiveGUI/PrimitiveGUI_ConeDlg.cxx +++ b/src/PrimitiveGUI/PrimitiveGUI_ConeDlg.cxx @@ -1,38 +1,40 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : PrimitiveGUI_ConeDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : PrimitiveGUI_ConeDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "PrimitiveGUI_ConeDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include +#include +#include +#include + +// OCCT Includes #include #include #include @@ -40,111 +42,108 @@ #include #include -#include - -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" - -using namespace std; +#include //================================================================================= // class : PrimitiveGUI_ConeDlg() -// purpose : Constructs a PrimitiveGUI_ConeDlg which is a child of 'parent', with the +// purpose : Constructs a PrimitiveGUI_ConeDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -PrimitiveGUI_ConeDlg::PrimitiveGUI_ConeDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +PrimitiveGUI_ConeDlg::PrimitiveGUI_ConeDlg (GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl), + myInitial(true) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_CONE_PV"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_CONE_DXYZ"))); - QPixmap image2(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_CONE_PV"))); + QPixmap image1 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_CONE_DXYZ"))); + QPixmap image2 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_CONE_TITLE")); + setWindowTitle(tr("GEOM_CONE_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_CONE")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image1); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_CONE")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setIcon(image1); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_2Sel3Spin(this, "GroupPoints"); + GroupPoints = new DlgRef_2Sel3Spin(centralWidget()); GroupPoints->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); GroupPoints->TextLabel1->setText(tr("GEOM_BASE_POINT")); GroupPoints->TextLabel2->setText(tr("GEOM_VECTOR")); - GroupPoints->TextLabel3->setText(tr("GEOM_RADIUS_I").arg("1")); - GroupPoints->TextLabel4->setText(tr("GEOM_RADIUS_I").arg("2")); + GroupPoints->TextLabel3->setText(tr("GEOM_RADIUS_I").arg(1)); + GroupPoints->TextLabel4->setText(tr("GEOM_RADIUS_I").arg(2)); GroupPoints->TextLabel5->setText(tr("GEOM_HEIGHT")); - GroupPoints->PushButton1->setPixmap(image2); - GroupPoints->PushButton2->setPixmap(image2); + GroupPoints->PushButton1->setIcon(image2); + GroupPoints->PushButton2->setIcon(image2); - GroupDimensions = new DlgRef_3Spin(this, "GroupDimensions"); + GroupDimensions = new DlgRef_3Spin(centralWidget()); GroupDimensions->GroupBox1->setTitle(tr("GEOM_BOX_OBJ")); - GroupDimensions->TextLabel1->setText(tr("GEOM_RADIUS_I").arg("1")); - GroupDimensions->TextLabel2->setText(tr("GEOM_RADIUS_I").arg("2")); + GroupDimensions->TextLabel1->setText(tr("GEOM_RADIUS_I").arg(1)); + GroupDimensions->TextLabel2->setText(tr("GEOM_RADIUS_I").arg(2)); GroupDimensions->TextLabel3->setText(tr("GEOM_HEIGHT")); - Layout1->addWidget(GroupPoints, 2, 0); - Layout1->addWidget(GroupDimensions, 2, 0); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); + layout->addWidget(GroupDimensions); /***************************************************************/ - setHelpFileName( "create_cone_page.html" ); - + setHelpFileName("create_cone_page.html"); + Init(); } - //================================================================================= // function : ~PrimitiveGUI_ConeDlg() // purpose : Destroys the object and frees any allocated resources //================================================================================= PrimitiveGUI_ConeDlg::~PrimitiveGUI_ConeDlg() { - // no need to delete child widgets, Qt does it all for us + // no need to delete child widgets, Qt does it all for us } - //================================================================================= // function : Init() // purpose : //================================================================================= void PrimitiveGUI_ConeDlg::Init() { - /* init variables */ - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit1->setReadOnly( true ); - GroupPoints->LineEdit2->setReadOnly( true ); - - myPoint = myDir = GEOM::GEOM_Object::_nil(); - - /* Get setting of step value from file configuration */ + // Get setting of step value from file configuration SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100); - - /* min, max, step and decimals for spin boxes & initial values */ - GroupPoints->SpinBox_DX->RangeStepAndValidator(0.000, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupPoints->SpinBox_DY->RangeStepAndValidator(0.000, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupPoints->SpinBox_DZ->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupDimensions->SpinBox_DX->RangeStepAndValidator(0.000, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupDimensions->SpinBox_DY->RangeStepAndValidator(0.000, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupDimensions->SpinBox_DZ->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); + double step = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100); - double aRadius1(100.0), aRadius2(0.0), aHeight(300.0); - GroupPoints->SpinBox_DX->SetValue(aRadius1); - GroupPoints->SpinBox_DY->SetValue(aRadius2); - GroupPoints->SpinBox_DZ->SetValue(aHeight); - GroupDimensions->SpinBox_DX->SetValue(aRadius1); - GroupDimensions->SpinBox_DY->SetValue(aRadius2); - GroupDimensions->SpinBox_DZ->SetValue(aHeight); + // min, max, step and decimals for spin boxes & initial values + initSpinBox(GroupPoints->SpinBox_DX, 0.0, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints->SpinBox_DY, 0.0, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints->SpinBox_DZ, 0.00001, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DX, 0.0, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DY, 0.0, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DZ, 0.00001, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + // init variables + GroupPoints->LineEdit1->setReadOnly(true); + GroupPoints->LineEdit2->setReadOnly(true); + + GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit2->setText(""); + myPoint = myDir = GEOM::GEOM_Object::_nil(); + + double aRadius1(100.0), aRadius2(0.0), aHeight(300.0); + GroupPoints->SpinBox_DX->setValue(aRadius1); + GroupPoints->SpinBox_DY->setValue(aRadius2); + GroupPoints->SpinBox_DZ->setValue(aHeight); + GroupDimensions->SpinBox_DX->setValue(aRadius1); + GroupDimensions->SpinBox_DY->setValue(aRadius2); + GroupDimensions->SpinBox_DZ->setValue(aHeight); + + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); + + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); @@ -152,69 +151,75 @@ void PrimitiveGUI_ConeDlg::Init() connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); - connect(GroupPoints->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); - connect(GroupPoints->SpinBox_DZ, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + connect(GroupPoints->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + connect(GroupPoints->SpinBox_DZ, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); connect(GroupDimensions->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); connect(GroupDimensions->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); connect(GroupDimensions->SpinBox_DZ, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_DY, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_DZ, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DY, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DZ, SLOT(SetStep(double))); - - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; - - initName( tr( "GEOM_CONE" ) ); - ConstructorsClicked(0); + connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), this, SLOT(SetDoubleSpinBoxStep(double))); + + initName(tr("GEOM_CONE")); + + setConstructorId(1); // simplest constructor + ConstructorsClicked(1); } +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void PrimitiveGUI_ConeDlg::SetDoubleSpinBoxStep (double step) +{ + GroupPoints->SpinBox_DX->setSingleStep(step); + GroupPoints->SpinBox_DY->setSingleStep(step); + GroupPoints->SpinBox_DZ->setSingleStep(step); + GroupDimensions->SpinBox_DX->setSingleStep(step); + GroupDimensions->SpinBox_DY->setSingleStep(step); + GroupDimensions->SpinBox_DZ->setSingleStep(step); +} //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void PrimitiveGUI_ConeDlg::ConstructorsClicked(int constructorId) +void PrimitiveGUI_ConeDlg::ConstructorsClicked (int constructorId) { - disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); - - switch(constructorId) - { - case 0 : - { - // globalSelection( GEOM_POINT ); - globalSelection(); // to break prvious local selection - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); - GroupDimensions->hide(); - resize(0, 0); - GroupPoints->show(); - - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit1->setText(tr("")); - GroupPoints->LineEdit2->setText(tr("")); - myPoint = myDir = GEOM::GEOM_Object::_nil(); - - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - break; - } - case 1 : - { - GroupPoints->hide(); - globalSelection(); // close local contexts, if any - resize( 0, 0 ); - GroupDimensions->show(); + switch (constructorId) { + case 0: + { + GroupDimensions->hide(); + GroupPoints->show(); - break; - } + GroupPoints->PushButton1->click(); + break; } - displayPreview(); -} + case 1: + { + GroupPoints->hide(); + GroupDimensions->show(); + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + globalSelection(); // close local contexts, if any + displayPreview(); + break; + } + } + + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); + + if (myInitial) { + // on dialog initialization we init the first field with a selected object (if any) + SelectionIntoArgument(); + myInitial = false; + } + else { + displayPreview(); + } +} //================================================================================= // function : ClickOnOk() @@ -222,74 +227,67 @@ void PrimitiveGUI_ConeDlg::ConstructorsClicked(int constructorId) //================================================================================= void PrimitiveGUI_ConeDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool PrimitiveGUI_ConeDlg::ClickOnApply() { - if ( !onAccept() ) + if (!onAccept()) return false; initName(); - ConstructorsClicked( getConstructorId() ); + // activate selection and connect selection manager + ConstructorsClicked(getConstructorId()); return true; } - -//======================================================================= -// function : ClickOnCancel() -// purpose : -//======================================================================= -void PrimitiveGUI_ConeDlg::ClickOnCancel() -{ - GEOMBase_Skeleton::ClickOnCancel(); -} - - //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection as changed or other case +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void PrimitiveGUI_ConeDlg::SelectionIntoArgument() { if (getConstructorId() != 0) return; - if (IObjectCount() != 1) - { - if (myEditCurrentArgument == GroupPoints->LineEdit1) - myPoint = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == GroupPoints->LineEdit2) - myDir = GEOM::GEOM_Object::_nil(); + erasePreview(); + myEditCurrentArgument->setText(""); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) { + if (myEditCurrentArgument == GroupPoints->LineEdit1) myPoint = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupPoints->LineEdit2) myDir = GEOM::GEOM_Object::_nil(); return; } - /* nbSel == 1 */ + // nbSel == 1 Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject( firstIObject(), testResult ); - - if(!testResult || CORBA::is_nil( aSelectedObject )) + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + + if (!testResult || CORBA::is_nil(aSelectedObject)) return; - TopoDS_Shape aShape; - QString aName = GEOMBase::GetName( aSelectedObject ); + QString aName = GEOMBase::GetName(aSelectedObject); + // Get Selected object if selected subshape + TopoDS_Shape aShape; if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) { TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; if (myEditCurrentArgument == GroupPoints->LineEdit2) aNeedType = TopAbs_EDGE; - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes( firstIObject(), aMap ); - if (aMap.Extent() == 1) + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) // Local Selection { int anIndex = aMap(1); if (aNeedType == TopAbs_EDGE) @@ -300,15 +298,16 @@ void PrimitiveGUI_ConeDlg::SelectionIntoArgument() //Find SubShape Object in Father GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = - getGeomEngine()->GetIShapesOperations(getStudyId()); - aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = + getGeomEngine()->GetIShapesOperations(getStudyId()); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + } + else { + aSelectedObject = aFindedObject; // get Object from study } - else - aSelectedObject = aFindedObject; // get Object from study } - else + else // Global Selection { if (aShape.ShapeType() != aNeedType) { aSelectedObject = GEOM::GEOM_Object::_nil(); @@ -319,10 +318,22 @@ void PrimitiveGUI_ConeDlg::SelectionIntoArgument() myEditCurrentArgument->setText(aName); - if (myEditCurrentArgument == GroupPoints->LineEdit1) + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + if (myEditCurrentArgument == GroupPoints->LineEdit1) { myPoint = aSelectedObject; - else if (myEditCurrentArgument == GroupPoints->LineEdit2) + if (!myPoint->_is_nil() && myDir->_is_nil()) + GroupPoints->PushButton2->click(); + } + else if (myEditCurrentArgument == GroupPoints->LineEdit2) { myDir = aSelectedObject; + if (!myDir->_is_nil() && myPoint->_is_nil()) + GroupPoints->PushButton1->click(); + } displayPreview(); } @@ -334,22 +345,38 @@ void PrimitiveGUI_ConeDlg::SelectionIntoArgument() void PrimitiveGUI_ConeDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - - if(send == GroupPoints->PushButton1) { - myEditCurrentArgument = GroupPoints->LineEdit1; - globalSelection( GEOM_POINT ); // to break prvious local selection - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); - } - else if(send == GroupPoints->PushButton2) { - myEditCurrentArgument = GroupPoints->LineEdit2; - globalSelection( GEOM_LINE );// to break prvious local selection - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); - } - - myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); -} + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + if (send == GroupPoints->PushButton1) { + myEditCurrentArgument = GroupPoints->LineEdit1; + + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit2->setEnabled(false); + + globalSelection(GEOM_POINT); // to break previous local selection + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + } + else if (send == GroupPoints->PushButton2) { + myEditCurrentArgument = GroupPoints->LineEdit2; + + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + + globalSelection(GEOM_LINE);// to break previous local selection + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); + } + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); +} //================================================================================= // function : LineEditReturnPressed() @@ -358,12 +385,11 @@ void PrimitiveGUI_ConeDlg::SetEditCurrentArgument() void PrimitiveGUI_ConeDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if(send == GroupPoints->LineEdit1 || - send == GroupPoints->LineEdit2) - { - myEditCurrentArgument = send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } + if (send == GroupPoints->LineEdit1 || + send == GroupPoints->LineEdit2) { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } } //================================================================================= @@ -373,33 +399,23 @@ void PrimitiveGUI_ConeDlg::LineEditReturnPressed() void PrimitiveGUI_ConeDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); - ConstructorsClicked(getConstructorId()); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + + ConstructorsClicked( getConstructorId() ); } -//================================================================================= -// function : DeactivateActiveDialog() -// purpose : public slot to deactivate if active -//================================================================================= -void PrimitiveGUI_ConeDlg::DeactivateActiveDialog() -{ - GEOMBase_Skeleton::DeactivateActiveDialog(); -} - - //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void PrimitiveGUI_ConeDlg::enterEvent(QEvent* e) +void PrimitiveGUI_ConeDlg::enterEvent (QEvent*) { - if ( !GroupConstructors->isEnabled() ) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } - //================================================================================= // function : ValueChangedInSpinBox() // purpose : @@ -409,76 +425,88 @@ void PrimitiveGUI_ConeDlg::ValueChangedInSpinBox() displayPreview(); } - //================================================================================= // function : createOperation // purpose : //================================================================================= GEOM::GEOM_IOperations_ptr PrimitiveGUI_ConeDlg::createOperation() { - return getGeomEngine()->GetI3DPrimOperations( getStudyId() ); + return getGeomEngine()->GetI3DPrimOperations(getStudyId()); } //================================================================================= // function : isValid // purpose : //================================================================================= -bool PrimitiveGUI_ConeDlg::isValid( QString& msg ) +bool PrimitiveGUI_ConeDlg::isValid (QString& msg) { - return getConstructorId() == 0 ? !(myPoint->_is_nil() || myDir->_is_nil()) : true; + if (!getRadius1() && !getRadius2()) + return false; + + bool ok = true; + if( getConstructorId() == 0 ) + { + ok = GroupPoints->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupPoints->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + ok = GroupPoints->SpinBox_DZ->isValid( msg, !IsPreview() ) && ok; + } + else if( getConstructorId() == 1 ) + { + ok = GroupDimensions->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupDimensions->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + ok = GroupDimensions->SpinBox_DZ->isValid( msg, !IsPreview() ) && ok; + } + ok = fabs( getHeight() ) > Precision::Confusion() && ok; + return getConstructorId() == 0 ? !(myPoint->_is_nil() || myDir->_is_nil()) && ok : ok; } //================================================================================= // function : execute // purpose : //================================================================================= -bool PrimitiveGUI_ConeDlg::execute( ObjectList& objects ) +bool PrimitiveGUI_ConeDlg::execute (ObjectList& objects) { bool res = false; - + GEOM::GEOM_Object_var anObj; - switch ( getConstructorId() ) - { - case 0 : - { - if ( !CORBA::is_nil( myPoint ) && !CORBA::is_nil( myDir ) ){ - anObj = GEOM::GEOM_I3DPrimOperations::_narrow( getOperation() )->MakeConePntVecR1R2H( myPoint, - myDir, - getRadius1(), - getRadius2(), - getHeight()); + switch (getConstructorId()) { + case 0: + if (!CORBA::is_nil(myPoint) && !CORBA::is_nil(myDir)) { + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakeConePntVecR1R2H(myPoint, myDir, getRadius1(), getRadius2(), getHeight()); + if (!anObj->_is_nil() && !IsPreview()) + { + QStringList aParameters; + aParameters << GroupPoints->SpinBox_DX->text(); + aParameters << GroupPoints->SpinBox_DY->text(); + aParameters << GroupPoints->SpinBox_DZ->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } res = true; } break; - } - case 1 : + case 1: + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakeConeR1R2H(getRadius1(), getRadius2(), getHeight()); + if (!anObj->_is_nil() && !IsPreview()) { - anObj = GEOM::GEOM_I3DPrimOperations::_narrow( getOperation() )->MakeConeR1R2H( getRadius1(), - getRadius2(), - getHeight()); - res = true; - break; + QStringList aParameters; + aParameters << GroupDimensions->SpinBox_DX->text(); + aParameters << GroupDimensions->SpinBox_DY->text(); + aParameters << GroupDimensions->SpinBox_DZ->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); } + res = true; + break; } - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); return res; } -//================================================================================= -// function : closeEvent -// purpose : -//================================================================================= -void PrimitiveGUI_ConeDlg::closeEvent( QCloseEvent* e ) -{ - // myGeomGUI->SetState( -1 ); - GEOMBase_Skeleton::closeEvent( e ); -} - - //================================================================================= // function : getRadius1() // purpose : @@ -487,13 +515,12 @@ double PrimitiveGUI_ConeDlg::getRadius1() const { int aConstructorId = getConstructorId(); if (aConstructorId == 0) - return GroupPoints->SpinBox_DX->GetValue(); + return GroupPoints->SpinBox_DX->value(); else if (aConstructorId == 1) - return GroupDimensions->SpinBox_DX->GetValue(); + return GroupDimensions->SpinBox_DX->value(); return 0; } - //================================================================================= // function : getRadius2() // purpose : @@ -502,24 +529,23 @@ double PrimitiveGUI_ConeDlg::getRadius2() const { int aConstructorId = getConstructorId(); if (aConstructorId == 0) - return GroupPoints->SpinBox_DY->GetValue(); + return GroupPoints->SpinBox_DY->value(); else if (aConstructorId == 1) - return GroupDimensions->SpinBox_DY->GetValue(); + return GroupDimensions->SpinBox_DY->value(); return 0; } - //================================================================================= -// function : getRadius2() +// function : getHeight() // purpose : //================================================================================= double PrimitiveGUI_ConeDlg::getHeight() const { int aConstructorId = getConstructorId(); if (aConstructorId == 0) - return GroupPoints->SpinBox_DZ->GetValue(); + return GroupPoints->SpinBox_DZ->value(); else if (aConstructorId == 1) - return GroupDimensions->SpinBox_DZ->GetValue(); + return GroupDimensions->SpinBox_DZ->value(); return 0; } @@ -531,8 +557,7 @@ void PrimitiveGUI_ConeDlg::addSubshapesToStudy() { QMap objMap; -switch (getConstructorId()) - { + switch (getConstructorId()) { case 0: objMap[GroupPoints->LineEdit1->text()] = myPoint; objMap[GroupPoints->LineEdit2->text()] = myDir; @@ -540,5 +565,5 @@ switch (getConstructorId()) case 1: return; } - addSubshapesToFather( objMap ); + addSubshapesToFather(objMap); } diff --git a/src/PrimitiveGUI/PrimitiveGUI_ConeDlg.h b/src/PrimitiveGUI/PrimitiveGUI_ConeDlg.h index f6b3f94cf..2d1d6dc83 100644 --- a/src/PrimitiveGUI/PrimitiveGUI_ConeDlg.h +++ b/src/PrimitiveGUI/PrimitiveGUI_ConeDlg.h @@ -1,36 +1,35 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : PrimitiveGUI_ConeDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : PrimitiveGUI_ConeDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef PRIMITIVEGUI_CONEDLG_H +#define PRIMITIVEGUI_CONEDLG_H -#ifndef DIALOGBOX_CONE_H -#define DIALOGBOX_CONE_H +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel3Spin.h" -#include "DlgRef_3Spin.h" +class DlgRef_2Sel3Spin; +class DlgRef_3Spin; //================================================================================= // class : PrimitiveGUI_ConeDlg @@ -38,44 +37,45 @@ //================================================================================= class PrimitiveGUI_ConeDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - PrimitiveGUI_ConeDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~PrimitiveGUI_ConeDlg(); - + PrimitiveGUI_ConeDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~PrimitiveGUI_ConeDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); - virtual void closeEvent( QCloseEvent* e ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); private: - void Init(); - void enterEvent(QEvent* e); - double getRadius1() const; - double getRadius2() const; - double getHeight() const; + void Init(); + void enterEvent( QEvent* ); + double getRadius1() const; + double getRadius2() const; + double getHeight() const; - GEOM::GEOM_Object_var myPoint, myDir; - - DlgRef_2Sel3Spin* GroupPoints; - DlgRef_3Spin* GroupDimensions; +private: + GEOM::GEOM_Object_var myPoint, myDir; + + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; + + DlgRef_2Sel3Spin* GroupPoints; + DlgRef_3Spin* GroupDimensions; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ClickOnCancel(); - void ActivateThisDialog(); - void DeactivateActiveDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ConstructorsClicked(int); - void ValueChangedInSpinBox(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ConstructorsClicked( int ); + void ValueChangedInSpinBox(); + void SetDoubleSpinBoxStep( double ); }; -#endif // DIALOGBOX_CONE_H +#endif // PRIMITIVEGUI_CONEDLG_H diff --git a/src/PrimitiveGUI/PrimitiveGUI_CylinderDlg.cxx b/src/PrimitiveGUI/PrimitiveGUI_CylinderDlg.cxx index 82de95d33..b77bd11a3 100644 --- a/src/PrimitiveGUI/PrimitiveGUI_CylinderDlg.cxx +++ b/src/PrimitiveGUI/PrimitiveGUI_CylinderDlg.cxx @@ -1,38 +1,40 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : PrimitiveGUI_CylinderDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : PrimitiveGUI_CylinderDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "PrimitiveGUI_CylinderDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include +#include +#include +#include + +// OCCT Includes #include #include #include @@ -40,54 +42,51 @@ #include #include -#include - -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" - -using namespace std; +#include //================================================================================= // class : PrimitiveGUI_CylinderDlg() -// purpose : Constructs a PrimitiveGUI_CylinderDlg which is a child of 'parent', with the +// purpose : Constructs a PrimitiveGUI_CylinderDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -PrimitiveGUI_CylinderDlg::PrimitiveGUI_CylinderDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +PrimitiveGUI_CylinderDlg::PrimitiveGUI_CylinderDlg (GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl), + myInitial(true) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_CYLINDER_PV"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_CYLINDER_DXYZ"))); - QPixmap image2(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_CYLINDER_PV"))); + QPixmap image1 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_CYLINDER_DXYZ"))); + QPixmap image2 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_CYLINDER_TITLE")); + setWindowTitle(tr("GEOM_CYLINDER_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_CYLINDER")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image1); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_CYLINDER")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setIcon(image1); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_2Sel2Spin(this, "GroupPoints"); + GroupPoints = new DlgRef_2Sel2Spin(centralWidget()); GroupPoints->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); GroupPoints->TextLabel1->setText(tr("GEOM_BASE_POINT")); GroupPoints->TextLabel2->setText(tr("GEOM_VECTOR")); GroupPoints->TextLabel3->setText(tr("GEOM_RADIUS")); GroupPoints->TextLabel4->setText(tr("GEOM_HEIGHT")); - GroupPoints->PushButton1->setPixmap(image2); - GroupPoints->PushButton2->setPixmap(image2); + GroupPoints->PushButton1->setIcon(image2); + GroupPoints->PushButton2->setIcon(image2); - GroupDimensions = new DlgRef_2Spin(this, "GroupDimensions"); + GroupDimensions = new DlgRef_2Spin(centralWidget()); GroupDimensions->GroupBox1->setTitle(tr("GEOM_BOX_OBJ")); GroupDimensions->TextLabel1->setText(tr("GEOM_RADIUS")); GroupDimensions->TextLabel2->setText(tr("GEOM_HEIGHT")); - Layout1->addWidget(GroupPoints, 2, 0); - Layout1->addWidget(GroupDimensions, 2, 0); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); + layout->addWidget(GroupDimensions); /***************************************************************/ setHelpFileName("create_cylinder_page.html"); @@ -95,53 +94,51 @@ PrimitiveGUI_CylinderDlg::PrimitiveGUI_CylinderDlg(GeometryGUI* theGeometryGUI, Init(); } - //================================================================================= // function : ~PrimitiveGUI_CylinderDlg() // purpose : Destroys the object and frees any allocated resources //================================================================================= PrimitiveGUI_CylinderDlg::~PrimitiveGUI_CylinderDlg() { - // no need to delete child widgets, Qt does it all for us + // no need to delete child widgets, Qt does it all for us } - //================================================================================= // function : Init() // purpose : //================================================================================= void PrimitiveGUI_CylinderDlg::Init() { - /* init variables */ - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit1->setReadOnly( true ); - GroupPoints->LineEdit2->setReadOnly( true ); - - myPoint = myDir = GEOM::GEOM_Object::_nil(); - - /* Get setting of step value from file configuration */ + // Get setting of step value from file configuration SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100); + double step = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100); - /* min, max, step and decimals for spin boxes & initial values */ - /* First constructor : radius */ - GroupPoints->SpinBox_DX->RangeStepAndValidator(0.001, COORD_MAX, step, DBL_DIGITS_DISPLAY); - /* First constructor : algebric height */ - GroupPoints->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - /* Second constructor : radius */ - GroupDimensions->SpinBox_DX->RangeStepAndValidator(0.001, COORD_MAX, step, DBL_DIGITS_DISPLAY); - /* Second constructor : algebric height */ - GroupDimensions->SpinBox_DY->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); + // min, max, step and decimals for spin boxes & initial values + initSpinBox(GroupPoints->SpinBox_DX, 0.00001, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints->SpinBox_DY, 0.00001, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DX, 0.00001, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DY, 0.00001, COORD_MAX, step, 5); // VSR: TODO: DBL_DIGITS_DISPLAY - GroupPoints->SpinBox_DX->SetValue(100.0); - GroupPoints->SpinBox_DY->SetValue(300.0); - GroupDimensions->SpinBox_DX->SetValue(100.0); - GroupDimensions->SpinBox_DY->SetValue(300.0); + // init variables + myEditCurrentArgument = GroupPoints->LineEdit1; + GroupPoints->LineEdit1->setReadOnly(true); + GroupPoints->LineEdit2->setReadOnly(true); - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit2->setText(""); + myPoint = myDir = GEOM::GEOM_Object::_nil(); + + double aRadius(100.0), aHeight(300.0); + GroupPoints->SpinBox_DX->setValue(aRadius); + GroupPoints->SpinBox_DY->setValue(aHeight); + GroupDimensions->SpinBox_DX->setValue(aRadius); + GroupDimensions->SpinBox_DY->setValue(aHeight); + + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); + + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); @@ -149,65 +146,76 @@ void PrimitiveGUI_CylinderDlg::Init() connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); - connect(GroupPoints->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + connect(GroupPoints->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); connect(GroupDimensions->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); connect(GroupDimensions->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_DY, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DY, SLOT(SetStep(double))); - - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; - - initName( tr( "GEOM_CYLINDER" ) ); - ConstructorsClicked(0); + connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), this, SLOT(SetDoubleSpinBoxStep(double))); + + initName(tr("GEOM_CYLINDER")); + + setConstructorId(1); // simplest constructor + ConstructorsClicked(1); } +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void PrimitiveGUI_CylinderDlg::SetDoubleSpinBoxStep (double step) +{ + GroupPoints->SpinBox_DX->setSingleStep(step); + GroupPoints->SpinBox_DY->setSingleStep(step); + GroupDimensions->SpinBox_DX->setSingleStep(step); + GroupDimensions->SpinBox_DY->setSingleStep(step); +} //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void PrimitiveGUI_CylinderDlg::ConstructorsClicked(int constructorId) +void PrimitiveGUI_CylinderDlg::ConstructorsClicked (int constructorId) { disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); - - switch (constructorId) - { - case 0 : - { - globalSelection( GEOM_POINT ); // to break previous local selection - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); - GroupDimensions->hide(); - resize(0, 0); - GroupPoints->show(); - - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit1->setText(tr("")); - GroupPoints->LineEdit2->setText(tr("")); - myPoint = myDir = GEOM::GEOM_Object::_nil(); + switch (constructorId) { + case 0: + { + GroupDimensions->hide(); + GroupPoints->show(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - break; - } - case 1 : - { - GroupPoints->hide(); - globalSelection(); // close local contexts, if any - resize( 0, 0 ); - GroupDimensions->show(); - - break; - } + GroupPoints->PushButton1->click(); + break; } - displayPreview(); -} + case 1: + { + GroupPoints->hide(); + GroupDimensions->show(); + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + globalSelection(); // close local contexts, if any + break; + } + } + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); + + if (myInitial) { + myInitial = false; + if (constructorId == 0) { + // on dialog initialization we init the first field with a selected object (if any) + SelectionIntoArgument(); + } + else { + displayPreview(); + } + } + else { + displayPreview(); + } +} //================================================================================= // function : ClickOnOk() @@ -215,49 +223,42 @@ void PrimitiveGUI_CylinderDlg::ConstructorsClicked(int constructorId) //================================================================================= void PrimitiveGUI_CylinderDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool PrimitiveGUI_CylinderDlg::ClickOnApply() { - if ( !onAccept() ) + if (!onAccept()) return false; initName(); - ConstructorsClicked( getConstructorId() ); + // activate selection and connect selection manager + ConstructorsClicked(getConstructorId()); return true; } - -//======================================================================= -// function : ClickOnCancel() -// purpose : -//======================================================================= -void PrimitiveGUI_CylinderDlg::ClickOnCancel() -{ - GEOMBase_Skeleton::ClickOnCancel(); -} - - //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection as changed or other case +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void PrimitiveGUI_CylinderDlg::SelectionIntoArgument() { if (getConstructorId() != 0) return; + erasePreview(); myEditCurrentArgument->setText(""); - if (IObjectCount() != 1) - { + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) { if (myEditCurrentArgument == GroupPoints->LineEdit1) myPoint = GEOM::GEOM_Object::_nil(); else if (myEditCurrentArgument == GroupPoints->LineEdit2) @@ -265,14 +266,16 @@ void PrimitiveGUI_CylinderDlg::SelectionIntoArgument() return; } - /* nbSel == 1 */ + // nbSel == 1 Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult); + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); if (!testResult || CORBA::is_nil(aSelectedObject)) return; QString aName = GEOMBase::GetName(aSelectedObject); + + // Get Selected object if selected subshape TopoDS_Shape aShape; if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) { @@ -280,11 +283,9 @@ void PrimitiveGUI_CylinderDlg::SelectionIntoArgument() if (myEditCurrentArgument == GroupPoints->LineEdit2) aNeedType = TopAbs_EDGE; - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes(firstIObject(), aMap); - if (aMap.Extent() == 1) // Local Selection - { + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) { // Local Selection int anIndex = aMap(1); if (aNeedType == TopAbs_EDGE) aName.append(":edge_" + QString::number(anIndex)); @@ -294,16 +295,16 @@ void PrimitiveGUI_CylinderDlg::SelectionIntoArgument() //Find SubShape Object in Father GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = - getGeomEngine()->GetIShapesOperations(getStudyId()); - aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = + getGeomEngine()->GetIShapesOperations(getStudyId()); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + } + else { + aSelectedObject = aFindedObject; // get Object from study } - else - aSelectedObject = aFindedObject; // get Object from study } - else // Global Selection - { + else { // Global Selection if (aShape.ShapeType() != aNeedType) { aSelectedObject = GEOM::GEOM_Object::_nil(); aName = ""; @@ -313,10 +314,23 @@ void PrimitiveGUI_CylinderDlg::SelectionIntoArgument() myEditCurrentArgument->setText(aName); - if (myEditCurrentArgument == GroupPoints->LineEdit1) + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + if (myEditCurrentArgument == GroupPoints->LineEdit1) { myPoint = aSelectedObject; - else if (myEditCurrentArgument == GroupPoints->LineEdit2) + if (!myPoint->_is_nil() && myDir->_is_nil()) + GroupPoints->PushButton2->click(); + } + else if (myEditCurrentArgument == GroupPoints->LineEdit2) { myDir = aSelectedObject; + if (!myDir->_is_nil() && myPoint->_is_nil()) + GroupPoints->PushButton1->click(); + } + displayPreview(); } @@ -327,36 +341,51 @@ void PrimitiveGUI_CylinderDlg::SelectionIntoArgument() void PrimitiveGUI_CylinderDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - + + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); if (send == GroupPoints->PushButton1) { myEditCurrentArgument = GroupPoints->LineEdit1; - globalSelection( GEOM_POINT ); // to break previous local selection - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit2->setEnabled(false); + + globalSelection(GEOM_POINT); // to break previous local selection + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); } else if (send == GroupPoints->PushButton2) { myEditCurrentArgument = GroupPoints->LineEdit2; - globalSelection( GEOM_LINE ); // to break previous local selection - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); - } - - myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); -} + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + + globalSelection(GEOM_LINE); // to break previous local selection + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); + } + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); +} //================================================================================= // function : LineEditReturnPressed() // purpose : //================================================================================= void PrimitiveGUI_CylinderDlg::LineEditReturnPressed() -{ +{ QLineEdit* send = (QLineEdit*)sender(); - if(send == GroupPoints->LineEdit1 || - send == GroupPoints->LineEdit2) - { - myEditCurrentArgument = send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } + if (send == GroupPoints->LineEdit1 || + send == GroupPoints->LineEdit2) { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } } //================================================================================= @@ -366,107 +395,107 @@ void PrimitiveGUI_CylinderDlg::LineEditReturnPressed() void PrimitiveGUI_CylinderDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); - ConstructorsClicked(getConstructorId()); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + + ConstructorsClicked( getConstructorId() ); } //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void PrimitiveGUI_CylinderDlg::enterEvent(QEvent* e) +void PrimitiveGUI_CylinderDlg::enterEvent (QEvent*) { - if ( !GroupConstructors->isEnabled() ) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } - //================================================================================= -// function : DeactivateActiveDialog() -// purpose : public slot to deactivate if active -//================================================================================= -void PrimitiveGUI_CylinderDlg::DeactivateActiveDialog() -{ - GEOMBase_Skeleton::DeactivateActiveDialog(); -} - - -//================================================================================= -// function : ValueChangedInSpinBox +// function : ValueChangedInSpinBox() // purpose : //================================================================================= -void PrimitiveGUI_CylinderDlg::ValueChangedInSpinBox( ) -{ +void PrimitiveGUI_CylinderDlg::ValueChangedInSpinBox() +{ displayPreview(); } - //================================================================================= // function : createOperation // purpose : //================================================================================= GEOM::GEOM_IOperations_ptr PrimitiveGUI_CylinderDlg::createOperation() { - return getGeomEngine()->GetI3DPrimOperations( getStudyId() ); + return getGeomEngine()->GetI3DPrimOperations(getStudyId()); } - //================================================================================= // function : isValid // purpose : //================================================================================= -bool PrimitiveGUI_CylinderDlg::isValid( QString& msg ) +bool PrimitiveGUI_CylinderDlg::isValid (QString& msg) { - return getConstructorId() == 0 ? !(myPoint->_is_nil() || myDir->_is_nil() ) : true; + bool ok = true; + if( getConstructorId() == 0 ) + { + ok = GroupPoints->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupPoints->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + } + else if( getConstructorId() == 1 ) + { + ok = GroupDimensions->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupDimensions->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + } + ok = fabs( getHeight() ) > Precision::Confusion() && ok; + return getConstructorId() == 0 ? !(myPoint->_is_nil() || myDir->_is_nil()) && ok : ok; } //================================================================================= // function : execute // purpose : //================================================================================= -bool PrimitiveGUI_CylinderDlg::execute( ObjectList& objects ) +bool PrimitiveGUI_CylinderDlg::execute (ObjectList& objects) { bool res = false; - - GEOM::GEOM_Object_var anObj; - - switch ( getConstructorId() ) - { - case 0 : - { - if ( !CORBA::is_nil( myPoint ) && !CORBA::is_nil( myDir )) { - anObj = GEOM::GEOM_I3DPrimOperations::_narrow( getOperation() )->MakeCylinderPntVecRH(myPoint, myDir, getRadius(), getHeight()); - res = true; - } - break; - } - case 1 : - { - anObj = GEOM::GEOM_I3DPrimOperations::_narrow( getOperation() )->MakeCylinderRH(getRadius(), getHeight()); - res = true; - break; + GEOM::GEOM_Object_var anObj; + + switch (getConstructorId()) { + case 0: + if (!CORBA::is_nil(myPoint) && !CORBA::is_nil(myDir)) { + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakeCylinderPntVecRH(myPoint, myDir, getRadius(), getHeight()); + if (!anObj->_is_nil() && !IsPreview()) + { + QStringList aParameters; + aParameters << GroupPoints->SpinBox_DX->text(); + aParameters << GroupPoints->SpinBox_DY->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); } + res = true; } - - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - + break; + case 1: + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakeCylinderRH(getRadius(), getHeight()); + if (!anObj->_is_nil() && !IsPreview()) + { + QStringList aParameters; + aParameters << GroupDimensions->SpinBox_DX->text(); + aParameters << GroupDimensions->SpinBox_DY->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } + res = true; + break; + } + + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + return res; } -//================================================================================= -// function : closeEvent -// purpose : -//================================================================================= -void PrimitiveGUI_CylinderDlg::closeEvent( QCloseEvent* e ) -{ - GEOMBase_Skeleton::closeEvent( e ); -} - - //================================================================================= // function : getRadius() // purpose : @@ -475,9 +504,9 @@ double PrimitiveGUI_CylinderDlg::getRadius() const { int aConstructorId = getConstructorId(); if (aConstructorId == 0) - return GroupPoints->SpinBox_DX->GetValue(); + return GroupPoints->SpinBox_DX->value(); else if (aConstructorId == 1) - return GroupDimensions->SpinBox_DX->GetValue(); + return GroupDimensions->SpinBox_DX->value(); return 0; } @@ -489,9 +518,9 @@ double PrimitiveGUI_CylinderDlg::getHeight() const { int aConstructorId = getConstructorId(); if (aConstructorId == 0) - return GroupPoints->SpinBox_DY->GetValue(); + return GroupPoints->SpinBox_DY->value(); else if (aConstructorId == 1) - return GroupDimensions->SpinBox_DY->GetValue(); + return GroupDimensions->SpinBox_DY->value(); return 0; } @@ -503,8 +532,7 @@ void PrimitiveGUI_CylinderDlg::addSubshapesToStudy() { QMap objMap; -switch (getConstructorId()) - { + switch (getConstructorId()) { case 0: objMap[GroupPoints->LineEdit1->text()] = myPoint; objMap[GroupPoints->LineEdit2->text()] = myDir; @@ -512,5 +540,5 @@ switch (getConstructorId()) case 1: return; } - addSubshapesToFather( objMap ); + addSubshapesToFather(objMap); } diff --git a/src/PrimitiveGUI/PrimitiveGUI_CylinderDlg.h b/src/PrimitiveGUI/PrimitiveGUI_CylinderDlg.h index 1980db249..0e6fc18fd 100644 --- a/src/PrimitiveGUI/PrimitiveGUI_CylinderDlg.h +++ b/src/PrimitiveGUI/PrimitiveGUI_CylinderDlg.h @@ -1,37 +1,35 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : PrimitiveGUI_CylinderDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : PrimitiveGUI_CylinderDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef PRIMITIVEGUI_CYLINDERDLG_H +#define PRIMITIVEGUI_CYLINDERDLG_H -#ifndef DIALOGBOX_CYLINDER_H -#define DIALOGBOX_CYLINDER_H - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel2Spin.h" -#include "DlgRef_2Spin.h" +#include +class DlgRef_2Sel2Spin; +class DlgRef_2Spin; //================================================================================= // class : PrimitiveGUI_CylinderDlg @@ -39,43 +37,44 @@ //================================================================================= class PrimitiveGUI_CylinderDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - PrimitiveGUI_CylinderDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~PrimitiveGUI_CylinderDlg(); + PrimitiveGUI_CylinderDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~PrimitiveGUI_CylinderDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); - virtual void closeEvent( QCloseEvent* e ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); private: - void Init(); - void enterEvent(QEvent* e); - double getRadius() const; - double getHeight() const; + void Init(); + void enterEvent( QEvent* ); + double getRadius() const; + double getHeight() const; + +private: + GEOM::GEOM_Object_var myPoint, myDir; - GEOM::GEOM_Object_var myPoint, myDir; - - DlgRef_2Sel2Spin* GroupPoints; - DlgRef_2Spin* GroupDimensions; + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; + + DlgRef_2Sel2Spin* GroupPoints; + DlgRef_2Spin* GroupDimensions; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ClickOnCancel(); - void ActivateThisDialog(); - void DeactivateActiveDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ConstructorsClicked(int); - void ValueChangedInSpinBox(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ConstructorsClicked( int ); + void ValueChangedInSpinBox(); + void SetDoubleSpinBoxStep( double ); }; -#endif // DIALOGBOX_CYLINDER_H +#endif // PRIMITIVEGUI_CYLINDERDLG_H diff --git a/src/PrimitiveGUI/PrimitiveGUI_DiskDlg.cxx b/src/PrimitiveGUI/PrimitiveGUI_DiskDlg.cxx new file mode 100755 index 000000000..9344092c8 --- /dev/null +++ b/src/PrimitiveGUI/PrimitiveGUI_DiskDlg.cxx @@ -0,0 +1,645 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : PrimitiveGUI_DiskDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#include "PrimitiveGUI_DiskDlg.h" + +#include +#include +#include + +#include +#include +#include +#include + +// OCCT Includes +#include +#include +#include +#include +#include +#include + +//================================================================================= +// class : PrimitiveGUI_DiskDlg() +// purpose : Constructs a PrimitiveGUI_DiskDlg which is a child of 'parent', with the +// name 'name' and widget flags set to 'f'. +// The dialog will by default be modeless, unless you set 'modal' to +// TRUE to construct a modal dialog. +//================================================================================= +PrimitiveGUI_DiskDlg::PrimitiveGUI_DiskDlg (GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl), + myInitial(true) +{ + SUIT_ResourceMgr* aResMgr = SUIT_Session::session()->resourceMgr(); + QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_DISK_PNT_VEC_R"))); + QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); + QPixmap image2 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_DISK_THREE_POINTS"))); + QPixmap image3 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_DISK_R"))); + + setWindowTitle(tr("GEOM_DISK_TITLE")); + + /***************************************************************/ + mainFrame()->GroupConstructors->setTitle(tr("GEOM_DISK")); + mainFrame()->RadioButton1->setIcon(image3); + mainFrame()->RadioButton2->setIcon(image0); + mainFrame()->RadioButton3->setIcon(image2); + + GroupPntVecR = new DlgRef_2Sel1Spin(centralWidget()); + GroupPntVecR->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); + GroupPntVecR->TextLabel1->setText(tr("GEOM_CENTER_POINT")); + GroupPntVecR->TextLabel2->setText(tr("GEOM_VECTOR")); + GroupPntVecR->TextLabel3->setText(tr("GEOM_RADIUS")); + GroupPntVecR->PushButton1->setIcon(image1); + GroupPntVecR->PushButton2->setIcon(image1); + GroupPntVecR->LineEdit1->setReadOnly(true); + GroupPntVecR->LineEdit2->setReadOnly(true); + + Group3Pnts = new DlgRef_3Sel(centralWidget()); + Group3Pnts->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); + Group3Pnts->TextLabel1->setText(tr("GEOM_POINT1")); + Group3Pnts->TextLabel2->setText(tr("GEOM_POINT2")); + Group3Pnts->TextLabel3->setText(tr("GEOM_POINT3")); + Group3Pnts->PushButton1->setIcon(image1); + Group3Pnts->PushButton2->setIcon(image1); + Group3Pnts->PushButton3->setIcon(image1); + Group3Pnts->LineEdit1->setReadOnly(true); + Group3Pnts->LineEdit2->setReadOnly(true); + Group3Pnts->LineEdit3->setReadOnly(true); + + GroupDimensions = new DlgRef_1Spin(centralWidget()); + GroupDimensions->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); + GroupDimensions->TextLabel1->setText(tr("GEOM_RADIUS")); + + GroupOrientation = new DlgRef_3Radio(centralWidget()); + GroupOrientation->GroupBox1->setTitle(tr("GEOM_ORIENTATION")); + GroupOrientation->RadioButton1->setText(tr("GEOM_WPLANE_OXY")); + GroupOrientation->RadioButton2->setText(tr("GEOM_WPLANE_OYZ")); + GroupOrientation->RadioButton3->setText(tr("GEOM_WPLANE_OZX")); + + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPntVecR); + layout->addWidget(Group3Pnts); + layout->addWidget(GroupDimensions); + layout->addWidget(GroupOrientation); + /***************************************************************/ + + setHelpFileName("create_disk_page.html"); + + Init(); +} + +//================================================================================= +// function : ~PrimitiveGUI_DiskDlg() +// purpose : Destroys the object and frees any allocated resources +//================================================================================= +PrimitiveGUI_DiskDlg::~PrimitiveGUI_DiskDlg() +{ +} + +//================================================================================= +// function : Init() +// purpose : +//================================================================================= +void PrimitiveGUI_DiskDlg::Init() +{ + // Get setting of step value from file configuration + SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); + double aStep = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100); + + // min, max, step and decimals for spin boxes & initial values + initSpinBox(GroupPntVecR->SpinBox_DX, 0.00001, COORD_MAX, aStep, 5); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DX, 0.00001, COORD_MAX, aStep, 5); // VSR: TODO: DBL_DIGITS_DISPLAY + + // init variables + myEditCurrentArgument = GroupPntVecR->LineEdit1; + myOrientationType = 1; + GroupOrientation->RadioButton1->setChecked(true); + + GroupPntVecR->LineEdit1->setText(""); + GroupPntVecR->LineEdit2->setText(""); + Group3Pnts->LineEdit1->setText(""); + Group3Pnts->LineEdit2->setText(""); + Group3Pnts->LineEdit3->setText(""); + myPoint = myDir = myPoint1 = myPoint2 = myPoint3 = GEOM::GEOM_Object::_nil(); + + GroupPntVecR->SpinBox_DX->setValue(100); + GroupDimensions->SpinBox_DX->setValue(100); + + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); + + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); + + connect(GroupPntVecR->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupPntVecR->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + + connect(GroupPntVecR->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPntVecR->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + + connect(Group3Pnts->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(Group3Pnts->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(Group3Pnts->PushButton3, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + + connect(Group3Pnts->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(Group3Pnts->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(Group3Pnts->LineEdit3, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + + connect(GroupPntVecR->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + connect(GroupDimensions->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + + connect(GroupOrientation->RadioButton1, SIGNAL(clicked()), this, SLOT(RadioButtonClicked())); + connect(GroupOrientation->RadioButton2, SIGNAL(clicked()), this, SLOT(RadioButtonClicked())); + connect(GroupOrientation->RadioButton3, SIGNAL(clicked()), this, SLOT(RadioButtonClicked())); + + connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), this, SLOT(SetDoubleSpinBoxStep(double))); + connect(myGeomGUI, SIGNAL(SignalCloseAllDialogs()), this, SLOT(ClickOnCancel())); + + initName(tr("GEOM_DISK")); + + ConstructorsClicked(0); +} + +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void PrimitiveGUI_DiskDlg::SetDoubleSpinBoxStep (double step) +{ + GroupDimensions->SpinBox_DX->setSingleStep(step); + GroupPntVecR->SpinBox_DX->setSingleStep(step); +} + +//================================================================================= +// function : RadioBittonClicked() +// purpose : Radio button management +//================================================================================= +void PrimitiveGUI_DiskDlg::RadioButtonClicked() +{ + if (GroupOrientation->RadioButton1->isChecked()) + myOrientationType = 1; + else if (GroupOrientation->RadioButton2->isChecked()) + myOrientationType = 2; + else if (GroupOrientation->RadioButton3->isChecked()) + myOrientationType = 3; + displayPreview(); +} + +//================================================================================= +// function : ConstructorsClicked() +// purpose : Radio button management +//================================================================================= +void PrimitiveGUI_DiskDlg::ConstructorsClicked (int constructorId) +{ + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + + switch (constructorId) { + case 0: + { + GroupPntVecR->hide(); + Group3Pnts->hide(); + GroupDimensions->show(); + GroupOrientation->show(); + + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + globalSelection(); // close local contexts, if any + break; + } + case 1: + { + GroupDimensions->hide(); + GroupOrientation->hide(); + GroupPntVecR->show(); + Group3Pnts->hide(); + + GroupPntVecR->PushButton1->click(); + break; + } + case 2: + { + GroupDimensions->hide(); + GroupOrientation->hide(); + GroupPntVecR->hide(); + Group3Pnts->show(); + + Group3Pnts->PushButton1->click(); + break; + } + } + + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); + + if (myInitial) { + myInitial = false; + if (constructorId == 1 || constructorId == 2) { + // on dialog initialization we init the first field with a selected object (if any) + SelectionIntoArgument(); + } + else { + displayPreview(); + } + } + else { + displayPreview(); + } +} + +//================================================================================= +// function : ClickOnOk() +// purpose : +//================================================================================= +void PrimitiveGUI_DiskDlg::ClickOnOk() +{ + if (ClickOnApply()) + ClickOnCancel(); +} + +//================================================================================= +// function : ClickOnApply() +// purpose : +//================================================================================= +bool PrimitiveGUI_DiskDlg::ClickOnApply() +{ + if (!onAccept()) + return false; + + initName(); + // activate selection and connect selection manager + ConstructorsClicked(getConstructorId()); + return true; +} + +//================================================================================= +// function : SelectionIntoArgument() +// purpose : Called when selection is changed or on dialog initialization or activation +//================================================================================= +void PrimitiveGUI_DiskDlg::SelectionIntoArgument() +{ + if (getConstructorId() == 0) + return; + + erasePreview(); + myEditCurrentArgument->setText(""); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) { + if (myEditCurrentArgument == GroupPntVecR->LineEdit1) myPoint = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupPntVecR->LineEdit2) myDir = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == Group3Pnts->LineEdit1) myPoint1 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == Group3Pnts->LineEdit2) myPoint2 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == Group3Pnts->LineEdit3) myPoint3 = GEOM::GEOM_Object::_nil(); + return; + } + + // nbSel == 1 + Handle(SALOME_InteractiveObject) anIO = aSelList.First(); + Standard_Boolean testResult = Standard_False; + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(anIO, testResult); + + if (!testResult || CORBA::is_nil(aSelectedObject)) + return; + + QString aName = GEOMBase::GetName(aSelectedObject); + + // If selected Vertex or Edge on the some Shape Get selection Subshape + TopoDS_Shape aShape; + if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) + { + TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; + if (myEditCurrentArgument == GroupPntVecR->LineEdit2) + aNeedType = TopAbs_EDGE; + + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(anIO, aMap); + if (aMap.Extent() == 1) { // Local Selection + int anIndex = aMap(1); + if (aNeedType == TopAbs_EDGE) + aName += QString(":edge_%1").arg(anIndex); + else + aName += QString(":vertex_%1").arg(anIndex); + + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); + + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations(getStudyId()); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + } + else { + aSelectedObject = aFindedObject; // get Object from study + } + } + else { // Global Selection + if (aShape.ShapeType() != aNeedType) { + aSelectedObject = GEOM::GEOM_Object::_nil(); + aName = ""; + } + } + } + + myEditCurrentArgument->setText(aName); + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + if (myEditCurrentArgument == GroupPntVecR->LineEdit1) { + myPoint = aSelectedObject; + if (!myPoint->_is_nil() && myDir->_is_nil()) + GroupPntVecR->PushButton2->click(); + } + else if (myEditCurrentArgument == GroupPntVecR->LineEdit2) { + myDir = aSelectedObject; + if (!myDir->_is_nil() && myPoint->_is_nil()) + GroupPntVecR->PushButton1->click(); + } + else if (myEditCurrentArgument == Group3Pnts->LineEdit1) { + myPoint1 = aSelectedObject; + if (!myPoint1->_is_nil() && myPoint2->_is_nil()) + Group3Pnts->PushButton2->click(); + } + else if (myEditCurrentArgument == Group3Pnts->LineEdit2) { + myPoint2 = aSelectedObject; + if (!myPoint2->_is_nil() && myPoint3->_is_nil()) + Group3Pnts->PushButton3->click(); + } + else if (myEditCurrentArgument == Group3Pnts->LineEdit3) { + myPoint3 = aSelectedObject; + if (!myPoint3->_is_nil() && myPoint1->_is_nil()) + Group3Pnts->PushButton1->click(); + } + + displayPreview(); +} + +//================================================================================= +// function : SetEditCurrentArgument() +// purpose : +//================================================================================= +void PrimitiveGUI_DiskDlg::SetEditCurrentArgument() +{ + QPushButton* send = (QPushButton*)sender(); + + if (send == GroupPntVecR->PushButton1) { + myEditCurrentArgument = GroupPntVecR->LineEdit1; + + GroupPntVecR->PushButton2->setDown(false); + GroupPntVecR->LineEdit2->setEnabled(false); + } + else if (send == GroupPntVecR->PushButton2) { + myEditCurrentArgument = GroupPntVecR->LineEdit2; + + GroupPntVecR->PushButton1->setDown(false); + GroupPntVecR->LineEdit1->setEnabled(false); + } + else if (send == Group3Pnts->PushButton1) { + myEditCurrentArgument = Group3Pnts->LineEdit1; + + Group3Pnts->PushButton2->setDown(false); + Group3Pnts->PushButton3->setDown(false); + Group3Pnts->LineEdit2->setEnabled(false); + Group3Pnts->LineEdit3->setEnabled(false); + } + else if (send == Group3Pnts->PushButton2) { + myEditCurrentArgument = Group3Pnts->LineEdit2; + + Group3Pnts->PushButton1->setDown(false); + Group3Pnts->PushButton3->setDown(false); + Group3Pnts->LineEdit1->setEnabled(false); + Group3Pnts->LineEdit3->setEnabled(false); + } + else if (send == Group3Pnts->PushButton3) { + myEditCurrentArgument = Group3Pnts->LineEdit3; + + Group3Pnts->PushButton1->setDown(false); + Group3Pnts->PushButton2->setDown(false); + Group3Pnts->LineEdit1->setEnabled(false); + Group3Pnts->LineEdit2->setEnabled(false); + } + + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + if (myEditCurrentArgument == GroupPntVecR->LineEdit2) { + globalSelection(); // close local contexts, if any + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); + } + else { + globalSelection(); // close local contexts, if any + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + } + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); +} + +//================================================================================= +// function : LineEditReturnPressed() +// purpose : +//================================================================================= +void PrimitiveGUI_DiskDlg::LineEditReturnPressed() +{ +QLineEdit* send = (QLineEdit*)sender(); + if (send == GroupPntVecR->LineEdit1 || + send == GroupPntVecR->LineEdit2 || + send == Group3Pnts->LineEdit1 || + send == Group3Pnts->LineEdit2 || + send == Group3Pnts->LineEdit3) { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } +} + +//================================================================================= +// function : ActivateThisDialog() +// purpose : +//================================================================================= +void PrimitiveGUI_DiskDlg::ActivateThisDialog() +{ + GEOMBase_Skeleton::ActivateThisDialog(); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + + ConstructorsClicked( getConstructorId() ); +} + +//================================================================================= +// function : enterEvent() +// purpose : +//================================================================================= +void PrimitiveGUI_DiskDlg::enterEvent (QEvent*) +{ + if (!mainFrame()->GroupConstructors->isEnabled()) + ActivateThisDialog(); +} + +//================================================================================= +// function : ValueChangedInSpinBox() +// purpose : +//================================================================================= +void PrimitiveGUI_DiskDlg::ValueChangedInSpinBox() +{ + displayPreview(); +} + +//================================================================================= +// function : createOperation +// purpose : +//================================================================================= +GEOM::GEOM_IOperations_ptr PrimitiveGUI_DiskDlg::createOperation() +{ + return getGeomEngine()->GetI3DPrimOperations(getStudyId()); +} + +//================================================================================= +// function : isEqual +// purpose : it may also be needed to check for min distance between gp_Pnt-s... +//================================================================================= +static bool isEqual (const GEOM::GEOM_Object_var& thePnt1, const GEOM::GEOM_Object_var& thePnt2) +{ + return thePnt1->_is_equivalent(thePnt2); +} + +//================================================================================= +// function : isValid +// purpose : +//================================================================================= +bool PrimitiveGUI_DiskDlg::isValid (QString& msg) +{ + bool ok = true; + if( getConstructorId() == 0 ) + ok = GroupDimensions->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + else if( getConstructorId() == 1 ) + ok = GroupPntVecR->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + + const int id = getConstructorId(); + if (id == 0) + return ok; + else if (id == 1) + return !myPoint->_is_nil() && !myDir->_is_nil() && getRadius() > 0 && ok; + else if (id == 2) + return !myPoint1->_is_nil() && !myPoint2->_is_nil() && !myPoint3->_is_nil() && + !isEqual(myPoint1, myPoint2) && !isEqual(myPoint1, myPoint3) && !isEqual(myPoint2, myPoint3); + return false; +} + +//================================================================================= +// function : execute +// purpose : +//================================================================================= +bool PrimitiveGUI_DiskDlg::execute (ObjectList& objects) +{ + bool res = false; + QStringList aParameters; + + GEOM::GEOM_Object_var anObj; + + switch (getConstructorId()) { + case 0: + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakeDiskR(getRadius(), myOrientationType); + if (!anObj->_is_nil() && !IsPreview()) + { + aParameters << GroupDimensions->SpinBox_DX->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } + res = true; + break; + case 1: + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakeDiskPntVecR(myPoint, myDir, getRadius()); + if (!anObj->_is_nil() && !IsPreview()) + { + aParameters << GroupPntVecR->SpinBox_DX->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } + res = true; + break; + case 2: + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakeDiskThreePnt(myPoint1, myPoint2, myPoint3); + res = true; + break; + } + + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + + return res; +} + +//================================================================================= +// function : getRadius() +// purpose : +//================================================================================= +double PrimitiveGUI_DiskDlg::getRadius() const +{ + double r = 0.; + switch (getConstructorId()) { + case 0: + r = GroupDimensions->SpinBox_DX->value(); break; + case 1: + r = GroupPntVecR->SpinBox_DX->value(); break; + } + return r; +} + +//================================================================================= +// function : addSubshapeToStudy +// purpose : virtual method to add new SubObjects if local selection +//================================================================================= +void PrimitiveGUI_DiskDlg::addSubshapesToStudy() +{ + QMap objMap; + + switch (getConstructorId()) { + case 1: + objMap[GroupPntVecR->LineEdit1->text()] = myPoint; + objMap[GroupPntVecR->LineEdit2->text()] = myDir; + break; + case 2: + objMap[Group3Pnts->LineEdit1->text()] = myPoint1; + objMap[Group3Pnts->LineEdit2->text()] = myPoint2; + objMap[Group3Pnts->LineEdit3->text()] = myPoint3; + break; + } + addSubshapesToFather(objMap); +} diff --git a/src/PrimitiveGUI/PrimitiveGUI_DiskDlg.h b/src/PrimitiveGUI/PrimitiveGUI_DiskDlg.h new file mode 100755 index 000000000..83ddb2df0 --- /dev/null +++ b/src/PrimitiveGUI/PrimitiveGUI_DiskDlg.h @@ -0,0 +1,89 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : PrimitiveGUI_DiskDlg.h +// Author : Dmitry Matveitchev, OCN +// +#ifndef BASICGUI_DISKDLG_H +#define BASICGUI_DISKDLG_H + +#include + +class DlgRef_3Sel; +class DlgRef_2Sel1Spin; +class DlgRef_1Spin; +class DlgRef_3Radio; + +//================================================================================= +// class : PrimitiveGUI_DiskDlg +// purpose : +//================================================================================= +class PrimitiveGUI_DiskDlg : public GEOMBase_Skeleton +{ + Q_OBJECT + +public: + PrimitiveGUI_DiskDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~PrimitiveGUI_DiskDlg(); + +protected: + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + + virtual void addSubshapesToStudy(); + +private: + void Init(); + void enterEvent( QEvent* ); + double getRadius() const; + int myOrientationType; + +private: + GEOM::GEOM_Object_var myPoint, myDir, myPoint1, myPoint2, myPoint3; + + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; + + DlgRef_2Sel1Spin* GroupPntVecR; + DlgRef_3Sel* Group3Pnts; + DlgRef_1Spin* GroupDimensions; + DlgRef_3Radio* GroupOrientation; + +private slots: + void ClickOnOk(); + bool ClickOnApply(); + + void ActivateThisDialog(); + + void SelectionIntoArgument(); + + void ConstructorsClicked( int ); + void LineEditReturnPressed(); + void SetEditCurrentArgument(); + void ValueChangedInSpinBox(); + void SetDoubleSpinBoxStep( double ); + void RadioButtonClicked(); +}; + +#endif // BASICGUI_DISKDLG_H diff --git a/src/PrimitiveGUI/PrimitiveGUI_FaceDlg.cxx b/src/PrimitiveGUI/PrimitiveGUI_FaceDlg.cxx new file mode 100755 index 000000000..3f6d5fe6a --- /dev/null +++ b/src/PrimitiveGUI/PrimitiveGUI_FaceDlg.cxx @@ -0,0 +1,547 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : PrimitiveGUI_FaceDlg.cxx +// Author : Dmitry Matveitchev, OCN. +// +#include "PrimitiveGUI_FaceDlg.h" + +#include +#include +#include + +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#include + +//================================================================================= +// class : PrimitiveGUI_FaceDlg() +// purpose : Constructs a PrimitiveGUI_FaceDlg which is a child of 'parent', with the +// name 'name' and widget flags set to 'f'. +// The dialog will by default be modeless, unless you set 'modal' to +// TRUE to construct a modal dialog. +//================================================================================= +PrimitiveGUI_FaceDlg::PrimitiveGUI_FaceDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ) +{ + QPixmap image0 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_FACE_OBJ_HW"))); + QPixmap image1 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); + QPixmap image2 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_FACE_HW"))); + + setWindowTitle( tr( "GEOM_FACE_TITLE" ) ); + + /***************************************************************/ + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_FACE" ) ); + mainFrame()->RadioButton1->setIcon( image2 ); + mainFrame()->RadioButton2->setIcon( image0 ); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); + + GroupPlane = new DlgRef_1Sel2Spin( centralWidget() ); + GroupPlane->GroupBox1->setTitle( tr( "GEOM_ARGUMENTS" ) ); + GroupPlane->TextLabel1->setText( tr( "GEOM_EDGE" ) ); + GroupPlane->TextLabel2->setText( tr( "GEOM_HEIGHT" ) ); + GroupPlane->TextLabel3->setText( tr( "GEOM_WIDTH" ) ); + GroupPlane->PushButton1->setIcon( image1 ); + GroupPlane->LineEdit1->setReadOnly( true ); + + GroupType = new DlgRef_3Radio( centralWidget() ); + GroupType->GroupBox1->setTitle( tr( "GEOM_OBJECT_TYPE" ) ); + GroupType->RadioButton1->setText( tr( "GEOM_EDGE" ) ); + GroupType->RadioButton2->setText( tr( "GEOM_FACE" ) ); + GroupType->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + GroupType->RadioButton3->close(); + + GroupDimensions = new DlgRef_2Spin( centralWidget() ); + GroupDimensions->GroupBox1->setTitle( tr( "GEOM_BOX_OBJ" ) ); + GroupDimensions->TextLabel1->setText( tr( "GEOM_HEIGHT" ) ); + GroupDimensions->TextLabel2->setText( tr( "GEOM_WIDTH" ) ); + + GroupOrientation = new DlgRef_3Radio( centralWidget() ); + + GroupOrientation->GroupBox1->setTitle( tr( "GEOM_ORIENTATION" ) ); + GroupOrientation->RadioButton1->setText( tr( "GEOM_WPLANE_OXY" ) ); + GroupOrientation->RadioButton2->setText( tr( "GEOM_WPLANE_OYZ" ) ); + GroupOrientation->RadioButton3->setText( tr( "GEOM_WPLANE_OZX" ) ); + + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupType ); + layout->addWidget( GroupPlane ); + layout->addWidget( GroupDimensions ); + layout->addWidget( GroupOrientation ); + + /***************************************************************/ + + setHelpFileName( "create_squareface_page.html" ); + + Init(); +} + + +//================================================================================= +// function : ~PrimitiveGUI_FaceDlg() +// purpose : Destroys the object and frees any allocated resources +//================================================================================= +PrimitiveGUI_FaceDlg::~PrimitiveGUI_FaceDlg() +{ +} + + +//================================================================================= +// function : Init() +// purpose : +//================================================================================= +void PrimitiveGUI_FaceDlg::Init() +{ + /* init variables */ + myEditCurrentArgument = GroupPlane->LineEdit1; + GroupType->RadioButton1->setChecked(true); + myEdge = GEOM::GEOM_Object::_nil(); + myFace = GEOM::GEOM_Object::_nil(); + globalSelection(); // close local contexts, if any + // localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + + myOrientationType = 1; + + /* Get setting of step value from file configuration */ + SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); + double aStep = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100 ); + + double aDefaultSize = 100.0; + /* min, max, step and decimals for spin boxes */ + initSpinBox( GroupPlane->SpinBox_DX, 0.00001, COORD_MAX, aStep, 5 ); // VSR: TODO: DBL_DIGITS_DISPLAY + GroupPlane->SpinBox_DX->setValue( aDefaultSize ); + initSpinBox( GroupPlane->SpinBox_DY, 0.00001, COORD_MAX, aStep, 5 ); // VSR: TODO: DBL_DIGITS_DISPLAY + GroupPlane->SpinBox_DY->setValue( aDefaultSize ); + + initSpinBox( GroupDimensions->SpinBox_DX, 0.00001, COORD_MAX, aStep, 5 ); // VSR: TODO: DBL_DIGITS_DISPLAY + GroupDimensions->SpinBox_DX->setValue( aDefaultSize ); + initSpinBox( GroupDimensions->SpinBox_DY, 0.00001, COORD_MAX, aStep, 5 ); // VSR: TODO: DBL_DIGITS_DISPLAY + GroupDimensions->SpinBox_DY->setValue( aDefaultSize ); + + + /* signals and slots connections */ + connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), this, SLOT( DeactivateActiveDialog() ) ); + connect( myGeomGUI, SIGNAL( SignalCloseAllDialogs() ), this, SLOT( ClickOnCancel() ) ); + connect( myGeomGUI, SIGNAL( SignalDefaultStepValueChanged( double ) ), this, SLOT( SetDoubleSpinBoxStep( double ) ) ); + + connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); + + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + + connect( GroupPlane->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPlane->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + connect( GroupPlane->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupPlane->SpinBox_DY, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + + connect( GroupDimensions->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + connect( GroupDimensions->SpinBox_DY, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox( double ) ) ); + + connect( GroupOrientation->RadioButton1, SIGNAL( clicked() ), this, SLOT( RadioButtonClicked() ) ); + connect( GroupOrientation->RadioButton2, SIGNAL( clicked() ), this, SLOT( RadioButtonClicked() ) ); + connect( GroupOrientation->RadioButton3, SIGNAL( clicked() ), this, SLOT( RadioButtonClicked() ) ); + + connect( GroupType->RadioButton1, SIGNAL( clicked() ), this, SLOT( TypeButtonClicked() ) ); + connect( GroupType->RadioButton2, SIGNAL( clicked() ), this, SLOT( TypeButtonClicked() ) ); + + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + + initName( tr( "GEOM_FACE" ) ); + + ConstructorsClicked( 0 ); +} + +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void PrimitiveGUI_FaceDlg::SetDoubleSpinBoxStep( double step ) +{ + GroupPlane->SpinBox_DX->setSingleStep(step); + GroupPlane->SpinBox_DY->setSingleStep(step); +} + +//================================================================================= +// function : ValueChangedInSpinBox() +// purpose : +//================================================================================= +void PrimitiveGUI_FaceDlg::ValueChangedInSpinBox( double newValue ) +{ + displayPreview(); +} + +//================================================================================= +// function : RadioBittonClicked() +// purpose : Radio button management +//================================================================================= +void PrimitiveGUI_FaceDlg::RadioButtonClicked() +{ + if ( GroupOrientation->RadioButton1->isChecked() ) + myOrientationType = 1; + else if ( GroupOrientation->RadioButton2->isChecked() ) + myOrientationType = 2; + else if ( GroupOrientation->RadioButton3->isChecked() ) + myOrientationType = 3; + displayPreview(); +} + +//================================================================================= +// function : TypeBittonClicked() +// purpose : Radio button management +//================================================================================= +void PrimitiveGUI_FaceDlg::TypeButtonClicked() +{ + if ( GroupType->RadioButton1->isChecked() ) { + globalSelection(); // close local contexts, if any + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + GroupPlane->TextLabel1->setText( tr( "GEOM_EDGE" ) ); + } + else if ( GroupType->RadioButton2->isChecked() ) { + globalSelection(); // close local contexts, if any + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_FACE ); + GroupPlane->TextLabel1->setText( tr( "GEOM_FACE" ) ); + } +} + +//================================================================================= +// function : ClickOnOk() +// purpose : +//================================================================================= +void PrimitiveGUI_FaceDlg::ClickOnOk() +{ + if ( ClickOnApply() ) + ClickOnCancel(); +} + +//================================================================================= +// function : ClickOnApply() +// purpose : +//================================================================================= +bool PrimitiveGUI_FaceDlg::ClickOnApply() +{ + if ( !onAccept() ) + return false; + + initName(); + + myEditCurrentArgument->setText( "" ); + ConstructorsClicked( getConstructorId() ); + + return true; +} + +//================================================================================= +// function : ConstructorsClicked() +// purpose : Radio button management +//================================================================================= +void PrimitiveGUI_FaceDlg::ConstructorsClicked( int constructorId ) +{ + erasePreview(); + switch ( constructorId ) { + case 0: + { + globalSelection(); // close local contexts, if any + GroupPlane->hide(); + GroupDimensions->show(); + GroupOrientation->show(); + GroupType->hide(); + GroupOrientation->RadioButton1->setChecked( true ); + myOrientationType = 1; + break; + } + case 1: + { + globalSelection(); // close local contexts, if any + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + myEditCurrentArgument = GroupPlane->LineEdit1; + myEditCurrentArgument->setText(""); + myEdge = GEOM::GEOM_Object::_nil(); + myFace = GEOM::GEOM_Object::_nil(); + GroupType->RadioButton1->setChecked( true ); + TypeButtonClicked(); + GroupDimensions->hide(); + GroupOrientation->hide(); + GroupType->show(); + GroupPlane->show(); + break; + } + } + + qApp->processEvents(); + updateGeometry(); + resize( minimumSizeHint() ); + SelectionIntoArgument(); + //displayPreview(); +} + +//================================================================================= +// function : SelectionIntoArgument() +// purpose : Called when selection as changed or other case +//================================================================================= +void PrimitiveGUI_FaceDlg::SelectionIntoArgument() +{ + if (getConstructorId() == 0) { + displayPreview(); + return; + } + + myEditCurrentArgument->setText( "" ); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if ( aSelList.Extent() != 1 ) { + if ( myEditCurrentArgument == GroupPlane->LineEdit1 ) myEdge = GEOM::GEOM_Object::_nil(); + return; + } + + // nbSel == 1 + Standard_Boolean aRes = Standard_False; + TopAbs_ShapeEnum aNeedType = TopAbs_EDGE; + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject( aSelList.First(), aRes ); + if ( !CORBA::is_nil( aSelectedObject ) && aRes ) { + QString aName = GEOMBase::GetName( aSelectedObject ); + + TopoDS_Shape aShape; + if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) { + if (GroupType->RadioButton2->isChecked()) + aNeedType = TopAbs_FACE; + + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes( aSelList.First(), aMap ); + if ( aMap.Extent() == 1 ) { // Local Selection + int anIndex = aMap( 1 ); + if ( aNeedType == TopAbs_EDGE ) + aName += QString( ":edge_%1" ).arg( anIndex ); + else + aName += QString( ":face_%1" ).arg( anIndex ); + + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather( aSelectedObject, aName ); + + if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); + aSelectedObject = aShapesOp->GetSubShape( aSelectedObject, anIndex ); + } + else + aSelectedObject = aFindedObject; // get Object from study + } + else { // Global Selection + if ( aShape.ShapeType() != aNeedType ) { + aSelectedObject = GEOM::GEOM_Object::_nil(); + aName = ""; + } + } + } + + myEditCurrentArgument->setText( aName ); + if ( myEditCurrentArgument == GroupPlane->LineEdit1 && aNeedType == TopAbs_EDGE ) + myEdge = aSelectedObject; + else if ( myEditCurrentArgument == GroupPlane->LineEdit1 && aNeedType == TopAbs_FACE ) + myFace = aSelectedObject; + } + displayPreview(); +} + + +//================================================================================= +// function : SetEditCurrentArgument() +// purpose : +//================================================================================= +void PrimitiveGUI_FaceDlg::SetEditCurrentArgument() +{ + QPushButton* send = (QPushButton*)sender(); + + globalSelection(); // close previous local contexts + if ( send == GroupPlane->PushButton1 ) { + myEditCurrentArgument = GroupPlane->LineEdit1; + if (GroupType->RadioButton1->isChecked()) + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + else if (GroupType->RadioButton1->isChecked()) + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_FACE ); + } + + myEditCurrentArgument->setFocus(); + SelectionIntoArgument(); +} + + +//================================================================================= +// function : LineEditReturnPressed() +// purpose : +//================================================================================= +void PrimitiveGUI_FaceDlg::LineEditReturnPressed() +{ + QLineEdit* send = (QLineEdit*)sender(); + if ( send == GroupPlane->LineEdit1 ) myEditCurrentArgument = GroupPlane->LineEdit1; + else return; + GEOMBase_Skeleton::LineEditReturnPressed(); +} + + +//================================================================================= +// function : ActivateThisDialog() +// purpose : +//================================================================================= +void PrimitiveGUI_FaceDlg::ActivateThisDialog() +{ + GEOMBase_Skeleton::ActivateThisDialog(); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + + ConstructorsClicked( getConstructorId() ); +} + +//================================================================================= +// function : DeactivateActiveDialog() +// purpose : public slot to deactivate if active +//================================================================================= +void PrimitiveGUI_FaceDlg::DeactivateActiveDialog() +{ + GEOMBase_Skeleton::DeactivateActiveDialog(); +} + +//================================================================================= +// function : enterEvent() +// purpose : +//================================================================================= +void PrimitiveGUI_FaceDlg::enterEvent( QEvent* ) +{ + if ( !mainFrame()->GroupConstructors->isEnabled() ) + ActivateThisDialog(); +} + +//================================================================================= +// function : createOperation +// purpose : +//================================================================================= +GEOM::GEOM_IOperations_ptr PrimitiveGUI_FaceDlg::createOperation() +{ + return myGeomGUI->GetGeomGen()->GetI3DPrimOperations( getStudyId() ); +} + +//================================================================================= +// function : isValid +// purpose : +//================================================================================= +bool PrimitiveGUI_FaceDlg::isValid( QString& msg ) +{ + bool ok = true; + if( getConstructorId() == 0 ) + { + ok = GroupDimensions->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupDimensions->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + } + else if( getConstructorId() == 1 ) + { + ok = GroupPlane->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupPlane->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + } + + const int id = getConstructorId(); + if ( id == 0 ) + return ok; + else if ( id == 1 ) { + if (GroupType->RadioButton1->isChecked()) + return !myEdge->_is_nil() && ok; + else if (GroupType->RadioButton2->isChecked()) + return !myFace->_is_nil() && ok; + } + return false; +} + +//================================================================================= +// function : execute +// purpose : +//================================================================================= +bool PrimitiveGUI_FaceDlg::execute (ObjectList& objects) +{ + bool res = false; + QStringList aParameters; + GEOM::GEOM_Object_var anObj; + switch (getConstructorId()) { + case 0: + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakeFaceHW(GroupDimensions->SpinBox_DX->value(), + GroupDimensions->SpinBox_DY->value(), myOrientationType); + if (!anObj->_is_nil() && !IsPreview()) + { + aParameters << GroupDimensions->SpinBox_DX->text(); + aParameters << GroupDimensions->SpinBox_DY->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } + res = true; + break; + case 1: + if (GroupType->RadioButton1->isChecked()) + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakeFaceObjHW(myEdge, GroupPlane->SpinBox_DX->value(), GroupPlane->SpinBox_DY->value()); + else if (GroupType->RadioButton2->isChecked()) + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakeFaceObjHW(myFace, GroupPlane->SpinBox_DX->value(), GroupPlane->SpinBox_DY->value()); + if (!anObj->_is_nil() && !IsPreview()) + { + aParameters << GroupPlane->SpinBox_DX->text(); + aParameters << GroupPlane->SpinBox_DY->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } + res = true; + break; + } + + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + + return res; +} + +//================================================================================= +// function : addSubshapeToStudy +// purpose : virtual method to add new SubObjects if local selection +//================================================================================= +void PrimitiveGUI_FaceDlg::addSubshapesToStudy() +{ + QMap objMap; + switch ( getConstructorId() ) { + case 1 : + if ( GroupType->RadioButton1->isChecked() ) + objMap[GroupPlane->LineEdit1->text()] = myEdge; + if ( GroupType->RadioButton2->isChecked() ) + objMap[GroupPlane->LineEdit1->text()] = myFace; + break; + } + addSubshapesToFather( objMap ); +} diff --git a/src/PrimitiveGUI/PrimitiveGUI_FaceDlg.h b/src/PrimitiveGUI/PrimitiveGUI_FaceDlg.h new file mode 100755 index 000000000..90d034e8b --- /dev/null +++ b/src/PrimitiveGUI/PrimitiveGUI_FaceDlg.h @@ -0,0 +1,86 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : BasicGUI_FaceDlg.h +// Author : Dmitry Matveithev, OCN. +// +#ifndef BASICGUI_FACEDLG_H +#define BASICGUI_FACEDLG_H + +#include + +class DlgRef_2Spin; +class DlgRef_1Sel2Spin; +class DlgRef_3Radio; + +//================================================================================= +// class : PrimitiveGUI_FaceDlg +// purpose : +//================================================================================= +class PrimitiveGUI_FaceDlg : public GEOMBase_Skeleton +{ + Q_OBJECT + +public: + PrimitiveGUI_FaceDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~PrimitiveGUI_FaceDlg(); + +protected: + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); + +private: + void Init(); + void enterEvent( QEvent* ); + +private: + GEOM::GEOM_Object_var myEdge; + GEOM::GEOM_Object_var myFace; + + int myOrientationType; + + DlgRef_2Spin* GroupDimensions; + DlgRef_1Sel2Spin* GroupPlane; + DlgRef_3Radio* GroupOrientation; + DlgRef_3Radio* GroupType; + +private slots: + void ClickOnOk(); + bool ClickOnApply(); + + void ActivateThisDialog(); + void DeactivateActiveDialog(); + void ConstructorsClicked( int ); + + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ValueChangedInSpinBox( double ); + void SetDoubleSpinBoxStep( double ); + void RadioButtonClicked(); + void TypeButtonClicked(); +}; + +#endif // BASICGUI_FACEDLG_H diff --git a/src/PrimitiveGUI/PrimitiveGUI_SphereDlg.cxx b/src/PrimitiveGUI/PrimitiveGUI_SphereDlg.cxx index 8b0dbb107..6fc293005 100644 --- a/src/PrimitiveGUI/PrimitiveGUI_SphereDlg.cxx +++ b/src/PrimitiveGUI/PrimitiveGUI_SphereDlg.cxx @@ -1,37 +1,38 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : PrimitiveGUI_SphereDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : PrimitiveGUI_SphereDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "PrimitiveGUI_SphereDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include + +#include +#include +#include +#include #include #include @@ -39,13 +40,7 @@ #include #include -#include - -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" - -using namespace std; +#include //================================================================================= // class : PrimitiveGUI_SphereDlg() @@ -54,42 +49,45 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -PrimitiveGUI_SphereDlg::PrimitiveGUI_SphereDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +PrimitiveGUI_SphereDlg::PrimitiveGUI_SphereDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl ) + :GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_SPHERE_P"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_SPHERE_DXYZ"))); - QPixmap image2(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_SPHERE_P" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_SPHERE_DXYZ" ) ) ); + QPixmap image2( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_SPHERE_TITLE")); + setWindowTitle( tr( "GEOM_SPHERE_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_SPHERE")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image1); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_SPHERE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setIcon( image1 ); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_1Sel1Spin(this, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("GEOM_SPHERE_CR")); - GroupPoints->TextLabel1->setText(tr("GEOM_CENTER")); - GroupPoints->TextLabel2->setText(tr("GEOM_RADIUS")); - GroupPoints->PushButton1->setPixmap(image2); + GroupPoints = new DlgRef_1Sel1Spin( centralWidget() ); + GroupPoints->GroupBox1->setTitle( tr( "GEOM_SPHERE_CR" ) ); + GroupPoints->TextLabel1->setText( tr( "GEOM_CENTER" ) ); + GroupPoints->TextLabel2->setText( tr( "GEOM_RADIUS" ) ); + GroupPoints->PushButton1->setIcon( image2 ); - GroupDimensions = new DlgRef_1Spin(this, "GroupDimensions"); - GroupDimensions->GroupBox1->setTitle(tr("GEOM_SPHERE_RO")); - GroupDimensions->TextLabel1->setText(tr("GEOM_RADIUS")); + GroupDimensions = new DlgRef_1Spin( centralWidget() ); + GroupDimensions->GroupBox1->setTitle( tr( "GEOM_SPHERE_RO" ) ); + GroupDimensions->TextLabel1->setText( tr( "GEOM_RADIUS" ) ); - Layout1->addWidget(GroupPoints, 2, 0); - Layout1->addWidget(GroupDimensions, 2, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); + layout->addWidget( GroupDimensions ); /***************************************************************/ - setHelpFileName("create_sphere_page.html"); + setHelpFileName( "create_sphere_page.html" ); Init(); } + //================================================================================= // function : ~PrimitiveGUI_SphereDlg() // purpose : Destroys the object and frees any allocated resources @@ -99,6 +97,7 @@ PrimitiveGUI_SphereDlg::~PrimitiveGUI_SphereDlg() /* no need to delete child widgets, Qt does it all for us */ } + //================================================================================= // function : Init() // purpose : @@ -113,76 +112,91 @@ void PrimitiveGUI_SphereDlg::Init() /* Get setting of step value from file configuration */ SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100); + double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100 ); /* min, max, step and decimals for spin boxes */ - GroupPoints->SpinBox_DX->RangeStepAndValidator(0.001, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupDimensions->SpinBox_DX->RangeStepAndValidator(0.001, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupPoints->SpinBox_DX->SetValue(100.0); - GroupDimensions->SpinBox_DX->SetValue(100.0); + initSpinBox( GroupPoints->SpinBox_DX, 0.000001, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox( GroupDimensions->SpinBox_DX, 0.000001, COORD_MAX, step, 6 ); // VSR: TODO: DBL_DIGITS_DISPLAY + GroupPoints->SpinBox_DX->setValue( 100.0 ); + GroupDimensions->SpinBox_DX->setValue( 100.0 ); /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); - connect(GroupDimensions->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); - connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPoints->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupPoints->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupDimensions->SpinBox_DX, SLOT(SetStep(double))); + connect( GroupDimensions->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox() ) ); + connect( GroupPoints->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox() ) ); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI, SIGNAL( SignalDefaultStepValueChanged( double ) ), this, SLOT( SetDoubleSpinBoxStep( double ) ) ); - initName(tr("GEOM_SPHERE")); - ConstructorsClicked(0); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + + initName( tr( "GEOM_SPHERE" ) ); + + setConstructorId( 1 ); // simplest constructor + ConstructorsClicked( 1 ); +} + +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void PrimitiveGUI_SphereDlg::SetDoubleSpinBoxStep( double step ) +{ + GroupPoints->SpinBox_DX->setSingleStep(step); + GroupDimensions->SpinBox_DX->setSingleStep(step); } //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void PrimitiveGUI_SphereDlg::ConstructorsClicked (int constructorId) +void PrimitiveGUI_SphereDlg::ConstructorsClicked( int constructorId ) { - disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); - - switch (constructorId) + disconnect( myGeomGUI->getApp()->selectionMgr(), 0, this, 0 ); + + switch ( constructorId ) { + case 0: { - case 0: - { - globalSelection(); // close local contexts, if any - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); - GroupDimensions->hide(); - resize(0, 0); - GroupPoints->show(); + globalSelection(); // close local contexts, if any + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit1->setText(""); - myPoint = GEOM::GEOM_Object::_nil(); - - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - break; - } - case 1: - { - GroupPoints->hide(); - globalSelection(); // close local contexts, if any - resize(0, 0); - GroupDimensions->show(); - - break; - } + GroupDimensions->hide(); + GroupPoints->show(); + + myEditCurrentArgument = GroupPoints->LineEdit1; + GroupPoints->LineEdit1->setText( "" ); + myPoint = GEOM::GEOM_Object::_nil(); + + connect( myGeomGUI->getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); + break; } + case 1: + { + globalSelection(); // close local contexts, if any + + GroupPoints->hide(); + GroupDimensions->show(); + + break; + } + } + + qApp->processEvents(); + updateGeometry(); + resize( minimumSizeHint() ); + displayPreview(); } + //================================================================================= // function : ClickOnOk() // purpose : @@ -193,6 +207,7 @@ void PrimitiveGUI_SphereDlg::ClickOnOk() ClickOnCancel(); } + //================================================================================= // function : ClickOnApply() // purpose : @@ -207,14 +222,6 @@ bool PrimitiveGUI_SphereDlg::ClickOnApply() return true; } -//================================================================================= -// function : ClickOnCancel() -// purpose : -//================================================================================= -void PrimitiveGUI_SphereDlg::ClickOnCancel() -{ - GEOMBase_Skeleton::ClickOnCancel(); -} //================================================================================= // function : SelectionIntoArgument() @@ -222,49 +229,49 @@ void PrimitiveGUI_SphereDlg::ClickOnCancel() //================================================================================= void PrimitiveGUI_SphereDlg::SelectionIntoArgument() { - if (getConstructorId() != 0) + if ( getConstructorId() != 0 ) return; - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); - if (IObjectCount() != 1) - { + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) { myPoint = GEOM::GEOM_Object::_nil(); return; } /* nbSel == 1 ! */ Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_ptr aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult); + GEOM::GEOM_Object_ptr aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); - if (!testResult || CORBA::is_nil(aSelectedObject)) + if ( !testResult || CORBA::is_nil( aSelectedObject ) ) return; - - QString aName = GEOMBase::GetName(aSelectedObject); + + QString aName = GEOMBase::GetName( aSelectedObject ); TopoDS_Shape aShape; - if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) - { - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull() ) { TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes(firstIObject(), aMap); - if (aMap.Extent() == 1) // Local Selection - { + aSelMgr->GetIndexes(aSelList.First(), aMap); + if ( aMap.Extent() == 1 ) { // Local Selection int anIndex = aMap( 1 ); aName.append( ":vertex_" + QString::number( anIndex ) ); //Find SubShape Object in Father - GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aSelectedObject, aName); + GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aSelectedObject, aName ); if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); - aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + aSelectedObject = aShapesOp->GetSubShape( aSelectedObject, anIndex ); } - else + else { aSelectedObject = aFindedObject; // get Object from study + } } - else // Global Selection - { + else { // Global Selection if (aShape.ShapeType() != TopAbs_VERTEX) { aSelectedObject = GEOM::GEOM_Object::_nil(); aName = ""; @@ -272,7 +279,7 @@ void PrimitiveGUI_SphereDlg::SelectionIntoArgument() } } - myEditCurrentArgument->setText(aName); + myEditCurrentArgument->setText( aName ); myPoint = aSelectedObject; displayPreview(); @@ -285,13 +292,13 @@ void PrimitiveGUI_SphereDlg::SelectionIntoArgument() void PrimitiveGUI_SphereDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if(send == GroupPoints->LineEdit1) - { - myEditCurrentArgument = send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } + if ( send == GroupPoints->LineEdit1 ) { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } } + //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -300,7 +307,7 @@ void PrimitiveGUI_SphereDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if (send == GroupPoints->PushButton1) { + if ( send == GroupPoints->PushButton1 ) { GroupPoints->LineEdit1->setFocus(); myEditCurrentArgument = GroupPoints->LineEdit1; globalSelection(); // close local contexts, if any @@ -309,6 +316,7 @@ void PrimitiveGUI_SphereDlg::SetEditCurrentArgument() } } + //================================================================================= // function : ActivateThisDialog() // purpose : @@ -316,12 +324,13 @@ void PrimitiveGUI_SphereDlg::SetEditCurrentArgument() void PrimitiveGUI_SphereDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); - - ConstructorsClicked(getConstructorId()); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + + ConstructorsClicked( getConstructorId() ); } + //================================================================================= // function : DeactivateActiveDialog() // purpose : public slot to deactivate if active @@ -331,16 +340,18 @@ void PrimitiveGUI_SphereDlg::DeactivateActiveDialog() GEOMBase_Skeleton::DeactivateActiveDialog(); } + //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void PrimitiveGUI_SphereDlg::enterEvent(QEvent* e) +void PrimitiveGUI_SphereDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } + //================================================================================= // function : ValueChangedInSpinBox() // purpose : @@ -350,6 +361,7 @@ void PrimitiveGUI_SphereDlg::ValueChangedInSpinBox() displayPreview(); } + //================================================================================= // function : createOperation // purpose : @@ -359,59 +371,66 @@ GEOM::GEOM_IOperations_ptr PrimitiveGUI_SphereDlg::createOperation() return getGeomEngine()->GetI3DPrimOperations( getStudyId() ); } + //================================================================================= // function : isValid // purpose : //================================================================================= bool PrimitiveGUI_SphereDlg::isValid( QString& msg ) { - return getConstructorId() == 0 ? !myPoint->_is_nil() : true; + bool ok = true; + if( getConstructorId() == 0 ) + ok = GroupPoints->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + else if( getConstructorId() == 1 ) + ok = GroupDimensions->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + return getConstructorId() == 0 ? !myPoint->_is_nil() && ok : ok; } //================================================================================= // function : execute // purpose : //================================================================================= -bool PrimitiveGUI_SphereDlg::execute (ObjectList& objects) +bool PrimitiveGUI_SphereDlg::execute( ObjectList& objects ) { bool res = false; - + GEOM::GEOM_Object_var anObj; - switch (getConstructorId()) - { - case 0: + switch ( getConstructorId() ) { + case 0 : { - if (!CORBA::is_nil(myPoint)) { - anObj = GEOM::GEOM_I3DPrimOperations::_narrow( getOperation() )-> - MakeSpherePntR(myPoint, getRadius()); + if ( !CORBA::is_nil( myPoint ) ) { + anObj = GEOM::GEOM_I3DPrimOperations::_narrow( getOperation() )->MakeSpherePntR( myPoint, getRadius() ); + if (!anObj->_is_nil() && !IsPreview()) + { + QStringList aParameters; + aParameters << GroupPoints->SpinBox_DX->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } res = true; } break; } - case 1: + case 1 : { - anObj = GEOM::GEOM_I3DPrimOperations::_narrow( getOperation() )-> - MakeSphereR(getRadius()); + anObj = GEOM::GEOM_I3DPrimOperations::_narrow( getOperation() )->MakeSphereR( getRadius() ); + if (!anObj->_is_nil() && !IsPreview()) + { + QStringList aParameters; + aParameters << GroupDimensions->SpinBox_DX->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } res = true; break; } } - - if (!anObj->_is_nil()) - objects.push_back(anObj._retn()); - + + if ( !anObj->_is_nil() ) + objects.push_back( anObj._retn() ); + return res; } -//================================================================================= -// function : closeEvent -// purpose : -//================================================================================= -void PrimitiveGUI_SphereDlg::closeEvent( QCloseEvent* e ) -{ - GEOMBase_Skeleton::closeEvent( e ); -} //================================================================================= // function : getRadius() @@ -420,10 +439,10 @@ void PrimitiveGUI_SphereDlg::closeEvent( QCloseEvent* e ) double PrimitiveGUI_SphereDlg::getRadius() const { int aConstructorId = getConstructorId(); - if (aConstructorId == 0) - return GroupPoints->SpinBox_DX->GetValue(); - else if (aConstructorId == 1) - return GroupDimensions->SpinBox_DX->GetValue(); + if ( aConstructorId == 0 ) + return GroupPoints->SpinBox_DX->value(); + else if ( aConstructorId == 1 ) + return GroupDimensions->SpinBox_DX->value(); return 0; } @@ -435,13 +454,12 @@ void PrimitiveGUI_SphereDlg::addSubshapesToStudy() { QMap objMap; -switch (getConstructorId()) - { + switch ( getConstructorId() ) { case 0: objMap[GroupPoints->LineEdit1->text()] = myPoint; break; case 1: return; } - addSubshapesToFather( objMap ); + addSubshapesToFather( objMap ); } diff --git a/src/PrimitiveGUI/PrimitiveGUI_SphereDlg.h b/src/PrimitiveGUI/PrimitiveGUI_SphereDlg.h index 8e1297ffa..80ffe3f27 100644 --- a/src/PrimitiveGUI/PrimitiveGUI_SphereDlg.h +++ b/src/PrimitiveGUI/PrimitiveGUI_SphereDlg.h @@ -1,37 +1,35 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : PrimitiveGUI_SphereDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : PrimitiveGUI_SphereDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef PRIMITIVEGUI_SPHEREDLG_H +#define PRIMITIVEGUI_SPHEREDLG_H -#ifndef DIALOGBOX_SPHERE_H -#define DIALOGBOX_SPHERE_H - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel1Spin.h" -#include "DlgRef_1Spin.h" +#include +class DlgRef_1Sel1Spin; +class DlgRef_1Spin; //================================================================================= // class : PrimitiveGUI_SphereDlg @@ -39,42 +37,41 @@ //================================================================================= class PrimitiveGUI_SphereDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - PrimitiveGUI_SphereDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~PrimitiveGUI_SphereDlg(); + PrimitiveGUI_SphereDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~PrimitiveGUI_SphereDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); - virtual void closeEvent( QCloseEvent* e ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); private: - void Init(); - void enterEvent(QEvent* e); - double getRadius() const; - - GEOM::GEOM_Object_var myPoint; /* Center point */ - - DlgRef_1Sel1Spin* GroupPoints; - DlgRef_1Spin* GroupDimensions; + void Init(); + void enterEvent( QEvent* ); + double getRadius() const; + +private: + GEOM::GEOM_Object_var myPoint; /* Center point */ + + DlgRef_1Sel1Spin* GroupPoints; + DlgRef_1Spin* GroupDimensions; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ClickOnCancel(); - void ActivateThisDialog(); - void DeactivateActiveDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ConstructorsClicked(int); - void ValueChangedInSpinBox(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void DeactivateActiveDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ConstructorsClicked( int ); + void ValueChangedInSpinBox(); + void SetDoubleSpinBoxStep( double ); }; #endif // DIALOGBOX_SPHERE_H diff --git a/src/PrimitiveGUI/PrimitiveGUI_TorusDlg.cxx b/src/PrimitiveGUI/PrimitiveGUI_TorusDlg.cxx index 00fc1c109..a756fdf62 100644 --- a/src/PrimitiveGUI/PrimitiveGUI_TorusDlg.cxx +++ b/src/PrimitiveGUI/PrimitiveGUI_TorusDlg.cxx @@ -1,38 +1,40 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : PrimitiveGUI_TorusDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : PrimitiveGUI_TorusDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "PrimitiveGUI_TorusDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include +#include +#include +#include + +// OCCT Includes #include #include #include @@ -40,11 +42,7 @@ #include #include -#include - -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" +#include //================================================================================= // class : PrimitiveGUI_TorusDlg() @@ -53,40 +51,43 @@ // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -PrimitiveGUI_TorusDlg::PrimitiveGUI_TorusDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - : GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +PrimitiveGUI_TorusDlg::PrimitiveGUI_TorusDlg (GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl), + myInitial(true) { SUIT_ResourceMgr* aResMgr = SUIT_Session::session()->resourceMgr(); - QPixmap image0(aResMgr->loadPixmap("GEOM", tr("ICON_DLG_TORUS_PV"))); - QPixmap image1(aResMgr->loadPixmap("GEOM", tr("ICON_DLG_TORUS_DXYZ"))); - QPixmap image2(aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); + QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_TORUS_PV"))); + QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_TORUS_DXYZ"))); + QPixmap image2 (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_TORUS_TITLE")); + setWindowTitle(tr("GEOM_TORUS_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_TORUS")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image1); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_TORUS")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setIcon(image1); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_2Sel2Spin(this, "GroupPoints"); + GroupPoints = new DlgRef_2Sel2Spin(centralWidget()); GroupPoints->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); GroupPoints->TextLabel1->setText(tr("GEOM_BASE_POINT")); GroupPoints->TextLabel2->setText(tr("GEOM_VECTOR")); - GroupPoints->TextLabel3->setText(tr("GEOM_RADIUS_I").arg("1")); - GroupPoints->TextLabel4->setText(tr("GEOM_RADIUS_I").arg("2")); - GroupPoints->PushButton1->setPixmap(image2); - GroupPoints->PushButton2->setPixmap(image2); + GroupPoints->TextLabel3->setText(tr("GEOM_RADIUS_I").arg(1)); + GroupPoints->TextLabel4->setText(tr("GEOM_RADIUS_I").arg(2)); + GroupPoints->PushButton1->setIcon(image2); + GroupPoints->PushButton2->setIcon(image2); - GroupDimensions = new DlgRef_2Spin(this, "GroupDimensions"); + GroupDimensions = new DlgRef_2Spin(centralWidget()); GroupDimensions->GroupBox1->setTitle(tr("GEOM_BOX_OBJ")); - GroupDimensions->TextLabel1->setText(tr("GEOM_RADIUS_I").arg("1")); - GroupDimensions->TextLabel2->setText(tr("GEOM_RADIUS_I").arg("2")); + GroupDimensions->TextLabel1->setText(tr("GEOM_RADIUS_I").arg(1)); + GroupDimensions->TextLabel2->setText(tr("GEOM_RADIUS_I").arg(2)); - Layout1->addWidget(GroupPoints, 2, 0); - Layout1->addWidget(GroupDimensions, 2, 0); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); + layout->addWidget(GroupDimensions); /***************************************************************/ setHelpFileName("create_torus_page.html"); @@ -94,50 +95,49 @@ PrimitiveGUI_TorusDlg::PrimitiveGUI_TorusDlg(GeometryGUI* theGeometryGUI, QWidge Init(); } - //================================================================================= // function : ~PrimitiveGUI_TorusDlg() // purpose : Destroys the object and frees any allocated resources //================================================================================= PrimitiveGUI_TorusDlg::~PrimitiveGUI_TorusDlg() { - // no need to delete child widgets, Qt does it all for us + // no need to delete child widgets, Qt does it all for us } - //================================================================================= // function : Init() // purpose : //================================================================================= void PrimitiveGUI_TorusDlg::Init() { - /* init variables */ - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit1->setReadOnly( true ); - GroupPoints->LineEdit2->setReadOnly( true ); + // Get setting of step value from file configuration + SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); + double step = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100); + // min, max, step and decimals for spin boxes & initial values + initSpinBox(GroupPoints->SpinBox_DX, 0.000001, COORD_MAX, step, 6); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints->SpinBox_DY, 0.000001, COORD_MAX, step, 6); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DX, 0.000001, COORD_MAX, step, 6); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DY, 0.000001, COORD_MAX, step, 6); // VSR: TODO: DBL_DIGITS_DISPLAY + + // init variables + GroupPoints->LineEdit1->setReadOnly(true); + GroupPoints->LineEdit2->setReadOnly(true); + + GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit2->setText(""); myPoint = myDir = GEOM::GEOM_Object::_nil(); - /* Get setting of step value from file configuration */ - SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100); + GroupPoints->SpinBox_DX->setValue(300.0); + GroupPoints->SpinBox_DY->setValue(100.0); + GroupDimensions->SpinBox_DX->setValue(300.0); + GroupDimensions->SpinBox_DY->setValue(100.0); - /* min, max, step and decimals for spin boxes & initial values */ - GroupPoints->SpinBox_DX->RangeStepAndValidator(0.001, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupPoints->SpinBox_DY->RangeStepAndValidator(0.001, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupDimensions->SpinBox_DX->RangeStepAndValidator(0.001, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupDimensions->SpinBox_DY->RangeStepAndValidator(0.001, COORD_MAX, step, DBL_DIGITS_DISPLAY); + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); - GroupPoints->SpinBox_DX->SetValue(300.0); - GroupPoints->SpinBox_DY->SetValue(100.0); - GroupDimensions->SpinBox_DX->SetValue(300.0); - GroupDimensions->SpinBox_DY->SetValue(100.0); - - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); @@ -145,25 +145,29 @@ void PrimitiveGUI_TorusDlg::Init() connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); - connect(GroupPoints->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + connect(GroupPoints->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); connect(GroupDimensions->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); connect(GroupDimensions->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupPoints->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupPoints->SpinBox_DY, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupDimensions->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), - GroupDimensions->SpinBox_DY, SLOT(SetStep(double))); + connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), this, SLOT(SetDoubleSpinBoxStep(double))); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); + initName(tr("GEOM_TORUS")); - initName( tr( "GEOM_TORUS" ) ); - ConstructorsClicked(0); + setConstructorId(1); // simplest constructor + ConstructorsClicked(1); +} + +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void PrimitiveGUI_TorusDlg::SetDoubleSpinBoxStep (double step) +{ + GroupPoints->SpinBox_DX->setSingleStep(step); + GroupPoints->SpinBox_DY->setSingleStep(step); + GroupDimensions->SpinBox_DX->setSingleStep(step); + GroupDimensions->SpinBox_DY->setSingleStep(step); } //================================================================================= @@ -174,42 +178,43 @@ void PrimitiveGUI_TorusDlg::ConstructorsClicked (int constructorId) { disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); - switch (constructorId) - { + switch (constructorId) { case 0: { - globalSelection(); // close local contexts, if any - localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); - GroupDimensions->hide(); - resize(0, 0); GroupPoints->show(); - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit1->setText(tr("")); - GroupPoints->LineEdit2->setText(tr("")); - myPoint = myDir = GEOM::GEOM_Object::_nil(); - - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - SelectionIntoArgument(); - + GroupPoints->PushButton1->click(); break; } case 1: { GroupPoints->hide(); - globalSelection(); // close local contexts, if any - resize(0, 0); GroupDimensions->show(); - + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + globalSelection(); // close local contexts, if any break; } } - displayPreview(); -} + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); + if (myInitial) { + myInitial = false; + if (constructorId == 0) { + // on dialog initialization we init the first field with a selected object (if any) + SelectionIntoArgument(); + } + else { + displayPreview(); + } + } + else { + displayPreview(); + } +} //================================================================================= // function : ClickOnOk() @@ -221,7 +226,6 @@ void PrimitiveGUI_TorusDlg::ClickOnOk() ClickOnCancel(); } - //================================================================================= // function : ClickOnApply() // purpose : @@ -232,38 +236,43 @@ bool PrimitiveGUI_TorusDlg::ClickOnApply() return false; initName(); + // activate selection and connect selection manager + ConstructorsClicked(getConstructorId()); return true; } - //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection as changed or other case +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void PrimitiveGUI_TorusDlg::SelectionIntoArgument() { if (getConstructorId() != 0) return; + erasePreview(); myEditCurrentArgument->setText(""); - if (IObjectCount() != 1) - { - if (myEditCurrentArgument == GroupPoints->LineEdit1) - myPoint = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == GroupPoints->LineEdit2) - myDir = GEOM::GEOM_Object::_nil(); - return; - } + if (myEditCurrentArgument == GroupPoints->LineEdit1) myPoint = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupPoints->LineEdit2) myDir = GEOM::GEOM_Object::_nil(); - /* nbSel == 1 */ + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) + return; + + // nbSel == 1 Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult); + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); if (!testResult || CORBA::is_nil(aSelectedObject)) return; QString aName = GEOMBase::GetName(aSelectedObject); + + // Get Selected object if selected subshape TopoDS_Shape aShape; if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) { @@ -271,11 +280,9 @@ void PrimitiveGUI_TorusDlg::SelectionIntoArgument() if (myEditCurrentArgument == GroupPoints->LineEdit2) aNeedType = TopAbs_EDGE; - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes(firstIObject(), aMap); - if (aMap.Extent() == 1) // Local Selection - { + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) { // Local Selection int anIndex = aMap(1); if (aNeedType == TopAbs_EDGE) aName.append(":edge_" + QString::number(anIndex)); @@ -285,16 +292,16 @@ void PrimitiveGUI_TorusDlg::SelectionIntoArgument() //Find SubShape Object in Father GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = - getGeomEngine()->GetIShapesOperations( getStudyId() ); - aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = + getGeomEngine()->GetIShapesOperations(getStudyId()); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + } + else { + aSelectedObject = aFindedObject; // get Object from study } - else - aSelectedObject = aFindedObject; // get Object from study } - else // Global Selection - { + else { // Global Selection if (aShape.ShapeType() != aNeedType) { aSelectedObject = GEOM::GEOM_Object::_nil(); aName = ""; @@ -304,11 +311,63 @@ void PrimitiveGUI_TorusDlg::SelectionIntoArgument() myEditCurrentArgument->setText(aName); - if (myEditCurrentArgument == GroupPoints->LineEdit1) - myPoint = aSelectedObject; - else if (myEditCurrentArgument == GroupPoints->LineEdit2) - myDir = aSelectedObject; + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + if (myEditCurrentArgument == GroupPoints->LineEdit1) { + myPoint = aSelectedObject; + if (!myPoint->_is_nil() && myDir->_is_nil()) + GroupPoints->PushButton2->click(); + } + else if (myEditCurrentArgument == GroupPoints->LineEdit2) { + myDir = aSelectedObject; + if (!myDir->_is_nil() && myPoint->_is_nil()) + GroupPoints->PushButton1->click(); + } + + displayPreview(); +} + +//================================================================================= +// function : SetEditCurrentArgument() +// purpose : +//================================================================================= +void PrimitiveGUI_TorusDlg::SetEditCurrentArgument() +{ + QPushButton* send = (QPushButton*)sender(); + + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + if (send == GroupPoints->PushButton1) { + myEditCurrentArgument = GroupPoints->LineEdit1; + + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit2->setEnabled(false); + + globalSelection(GEOM_POINT); // to break previous local selection + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + } + else if (send == GroupPoints->PushButton2) { + myEditCurrentArgument = GroupPoints->LineEdit2; + + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + + globalSelection(GEOM_LINE); // to break previous local selection + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); + } + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + // seems we need it only to avoid preview disappearing, caused by selection mode change displayPreview(); } @@ -320,38 +379,12 @@ void PrimitiveGUI_TorusDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); if (send == GroupPoints->LineEdit1 || - send == GroupPoints->LineEdit2) - { + send == GroupPoints->LineEdit2) { myEditCurrentArgument = send; GEOMBase_Skeleton::LineEditReturnPressed(); } } - -//================================================================================= -// function : SetEditCurrentArgument() -// purpose : -//================================================================================= -void PrimitiveGUI_TorusDlg::SetEditCurrentArgument() -{ - QPushButton* send = (QPushButton*)sender(); - globalSelection( GEOM_POINT ); // to break previous local selection - - if (send == GroupPoints->PushButton1) { - myEditCurrentArgument = GroupPoints->LineEdit1; - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); - } - else if (send == GroupPoints->PushButton2) { - myEditCurrentArgument = GroupPoints->LineEdit2; - GEOM::GEOM_Object_var anObj; - localSelection( anObj, TopAbs_EDGE ); - } - - myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); -} - - //================================================================================= // function : ActivateThisDialog() // purpose : @@ -360,26 +393,24 @@ void PrimitiveGUI_TorusDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + ConstructorsClicked( getConstructorId() ); } - //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void PrimitiveGUI_TorusDlg::enterEvent(QEvent* e) +void PrimitiveGUI_TorusDlg::enterEvent (QEvent*) { - if ( !GroupConstructors->isEnabled() ) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } - //================================================================================= -// function : ValueChangedInSpinBox +// function : ValueChangedInSpinBox() // purpose : //================================================================================= void PrimitiveGUI_TorusDlg::ValueChangedInSpinBox() @@ -387,58 +418,76 @@ void PrimitiveGUI_TorusDlg::ValueChangedInSpinBox() displayPreview(); } - //================================================================================= // function : createOperation // purpose : //================================================================================= GEOM::GEOM_IOperations_ptr PrimitiveGUI_TorusDlg::createOperation() { - return getGeomEngine()->GetI3DPrimOperations( getStudyId() ); + return getGeomEngine()->GetI3DPrimOperations(getStudyId()); } //================================================================================= // function : isValid // purpose : //================================================================================= -bool PrimitiveGUI_TorusDlg::isValid( QString& msg ) +bool PrimitiveGUI_TorusDlg::isValid (QString& msg) { - return getConstructorId() == 0 ? !(myPoint->_is_nil() || myDir->_is_nil()) : true; + bool ok = true; + if( getConstructorId() == 0 ) + { + ok = GroupPoints->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupPoints->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + } + else if( getConstructorId() == 1 ) + { + ok = GroupDimensions->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupDimensions->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + } + return getConstructorId() == 0 ? !(myPoint->_is_nil() || myDir->_is_nil()) && ok : ok; } //================================================================================= // function : execute // purpose : //================================================================================= -bool PrimitiveGUI_TorusDlg::execute( ObjectList& objects ) +bool PrimitiveGUI_TorusDlg::execute (ObjectList& objects) { bool res = false; GEOM::GEOM_Object_var anObj; - switch ( getConstructorId() ) - { + switch (getConstructorId()) { case 0: - { - if (!CORBA::is_nil( myPoint ) && !CORBA::is_nil( myDir )) + if (!CORBA::is_nil(myPoint) && !CORBA::is_nil(myDir)) { + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakeTorusPntVecRR(myPoint, myDir, getRadius1(), getRadius2()); + if (!anObj->_is_nil() && !IsPreview()) { - anObj = GEOM::GEOM_I3DPrimOperations::_narrow( getOperation() )-> - MakeTorusPntVecRR(myPoint, myDir, getRadius1(), getRadius2()); - res = true; + QStringList aParameters; + aParameters << GroupPoints->SpinBox_DX->text(); + aParameters << GroupPoints->SpinBox_DY->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); } - break; - } - case 1: - { - anObj = GEOM::GEOM_I3DPrimOperations::_narrow( getOperation() )-> - MakeTorusRR(getRadius1(), getRadius2()); res = true; - break; } + break; + case 1: + anObj = GEOM::GEOM_I3DPrimOperations::_narrow(getOperation())-> + MakeTorusRR(getRadius1(), getRadius2()); + if (!anObj->_is_nil() && !IsPreview()) + { + QStringList aParameters; + aParameters << GroupDimensions->SpinBox_DX->text(); + aParameters << GroupDimensions->SpinBox_DY->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } + res = true; + break; } - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); return res; } @@ -451,9 +500,9 @@ double PrimitiveGUI_TorusDlg::getRadius1() const { int aConstructorId = getConstructorId(); if (aConstructorId == 0) - return GroupPoints->SpinBox_DX->GetValue(); + return GroupPoints->SpinBox_DX->value(); else if (aConstructorId == 1) - return GroupDimensions->SpinBox_DX->GetValue(); + return GroupDimensions->SpinBox_DX->value(); return 0; } @@ -465,9 +514,9 @@ double PrimitiveGUI_TorusDlg::getRadius2() const { int aConstructorId = getConstructorId(); if (aConstructorId == 0) - return GroupPoints->SpinBox_DY->GetValue(); + return GroupPoints->SpinBox_DY->value(); else if (aConstructorId == 1) - return GroupDimensions->SpinBox_DY->GetValue(); + return GroupDimensions->SpinBox_DY->value(); return 0; } @@ -479,8 +528,7 @@ void PrimitiveGUI_TorusDlg::addSubshapesToStudy() { QMap objMap; -switch (getConstructorId()) - { + switch (getConstructorId()) { case 0: objMap[GroupPoints->LineEdit1->text()] = myPoint; objMap[GroupPoints->LineEdit2->text()] = myDir; @@ -488,5 +536,5 @@ switch (getConstructorId()) case 1: return; } - addSubshapesToFather( objMap ); + addSubshapesToFather(objMap); } diff --git a/src/PrimitiveGUI/PrimitiveGUI_TorusDlg.h b/src/PrimitiveGUI/PrimitiveGUI_TorusDlg.h index 1703b6a43..c173b0edf 100644 --- a/src/PrimitiveGUI/PrimitiveGUI_TorusDlg.h +++ b/src/PrimitiveGUI/PrimitiveGUI_TorusDlg.h @@ -1,37 +1,35 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : PrimitiveGUI_TorusDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : PrimitiveGUI_TorusDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +#ifndef PRIMITIVEGUI_TORUSDLG_H +#define PRIMITIVEGUI_TORUSDLG_H -#ifndef DIALOGBOX_TORUS_H -#define DIALOGBOX_TORUS_H - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel2Spin.h" -#include "DlgRef_2Spin.h" +#include +class DlgRef_2Sel2Spin; +class DlgRef_2Spin; //================================================================================= // class : PrimitiveGUI_TorusDlg @@ -39,42 +37,44 @@ //================================================================================= class PrimitiveGUI_TorusDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - PrimitiveGUI_TorusDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~PrimitiveGUI_TorusDlg(); - + PrimitiveGUI_TorusDlg( GeometryGUI*, QWidget* = 0, bool = false, Qt::WindowFlags = 0 ); + ~PrimitiveGUI_TorusDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); private: - void Init(); - void enterEvent(QEvent* e); - - double getRadius1() const; - double getRadius2() const; - - GEOM::GEOM_Object_var myPoint, myDir; - - DlgRef_2Sel2Spin* GroupPoints; - DlgRef_2Spin* GroupDimensions; + void Init(); + void enterEvent( QEvent* ); + double getRadius1() const; + double getRadius2() const; + +private: + GEOM::GEOM_Object_var myPoint, myDir; + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; + + DlgRef_2Sel2Spin* GroupPoints; + DlgRef_2Spin* GroupDimensions; + private slots: - void ClickOnOk(); - bool ClickOnApply(); - - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ConstructorsClicked(int); - void ValueChangedInSpinBox(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ConstructorsClicked( int ); + void ValueChangedInSpinBox(); + void SetDoubleSpinBoxStep( double ); }; -#endif // DIALOGBOX_TORUS_H +#endif // PRIMITIVEGUI_TORUSDLG_H diff --git a/src/RepairGUI/Makefile.am b/src/RepairGUI/Makefile.am index 8dfb76e6c..51e90f1bb 100644 --- a/src/RepairGUI/Makefile.am +++ b/src/RepairGUI/Makefile.am @@ -1,96 +1,117 @@ -# GEOM REPAIRGUI : +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# GEOM REPAIRGUI : +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : RepairGUI # -# File : Makefile.in -# Author : Damien COQUERET (OCC) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header: - include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files -salomeinclude_HEADERS = +salomeinclude_HEADERS = \ + RepairGUI.h \ + RepairGUI_SewingDlg.h \ + RepairGUI_SuppressFacesDlg.h \ + RepairGUI_ShapeProcessDlg.h \ + RepairGUI_CloseContourDlg.h \ + RepairGUI_RemoveIntWiresDlg.h \ + RepairGUI_RemoveHolesDlg.h \ + RepairGUI_DivideEdgeDlg.h \ + RepairGUI_FreeBoundDlg.h \ + RepairGUI_FreeFacesDlg.h \ + RepairGUI_ChangeOrientationDlg.h \ + RepairGUI_GlueDlg.h \ + RepairGUI_RemoveExtraEdgesDlg.h # Libraries targets lib_LTLIBRARIES = libRepairGUI.la -dist_libRepairGUI_la_SOURCES = \ - RepairGUI.cxx \ - RepairGUI_SewingDlg.cxx \ - RepairGUI_SuppressFacesDlg.cxx \ - RepairGUI_ShapeProcessDlg.cxx \ - RepairGUI_CloseContourDlg.cxx \ - RepairGUI_RemoveIntWiresDlg.cxx \ - RepairGUI_RemoveHolesDlg.cxx \ - RepairGUI_DivideEdgeDlg.cxx \ - RepairGUI_FreeBoundDlg.cxx \ - RepairGUI_FreeFacesDlg.cxx \ - RepairGUI_ChangeOrientationDlg.cxx \ - RepairGUI_GlueDlg.cxx \ +dist_libRepairGUI_la_SOURCES = \ + RepairGUI.h \ + RepairGUI_SewingDlg.h \ + RepairGUI_SuppressFacesDlg.h \ + RepairGUI_ShapeProcessDlg.h \ + RepairGUI_CloseContourDlg.h \ + RepairGUI_RemoveIntWiresDlg.h \ + RepairGUI_RemoveHolesDlg.h \ + RepairGUI_DivideEdgeDlg.h \ + RepairGUI_FreeBoundDlg.h \ + RepairGUI_FreeFacesDlg.h \ + RepairGUI_ChangeOrientationDlg.h \ + RepairGUI_GlueDlg.h \ + RepairGUI_RemoveExtraEdgesDlg.h \ + \ + RepairGUI.cxx \ + RepairGUI_SewingDlg.cxx \ + RepairGUI_SuppressFacesDlg.cxx \ + RepairGUI_ShapeProcessDlg.cxx \ + RepairGUI_CloseContourDlg.cxx \ + RepairGUI_RemoveIntWiresDlg.cxx \ + RepairGUI_RemoveHolesDlg.cxx \ + RepairGUI_DivideEdgeDlg.cxx \ + RepairGUI_FreeBoundDlg.cxx \ + RepairGUI_FreeFacesDlg.cxx \ + RepairGUI_ChangeOrientationDlg.cxx \ + RepairGUI_GlueDlg.cxx \ RepairGUI_RemoveExtraEdgesDlg.cxx -MOC_FILES = \ - RepairGUI_SewingDlg_moc.cxx \ - RepairGUI_SuppressFacesDlg_moc.cxx \ - RepairGUI_ShapeProcessDlg_moc.cxx \ - RepairGUI_CloseContourDlg_moc.cxx \ - RepairGUI_RemoveIntWiresDlg_moc.cxx \ - RepairGUI_RemoveHolesDlg_moc.cxx \ - RepairGUI_DivideEdgeDlg_moc.cxx \ - RepairGUI_FreeBoundDlg_moc.cxx \ - RepairGUI_FreeFacesDlg_moc.cxx \ - RepairGUI_ChangeOrientationDlg_moc.cxx \ - RepairGUI_GlueDlg_moc.cxx \ +MOC_FILES = \ + RepairGUI_SewingDlg_moc.cxx \ + RepairGUI_SuppressFacesDlg_moc.cxx \ + RepairGUI_ShapeProcessDlg_moc.cxx \ + RepairGUI_CloseContourDlg_moc.cxx \ + RepairGUI_RemoveIntWiresDlg_moc.cxx \ + RepairGUI_RemoveHolesDlg_moc.cxx \ + RepairGUI_DivideEdgeDlg_moc.cxx \ + RepairGUI_FreeBoundDlg_moc.cxx \ + RepairGUI_FreeFacesDlg_moc.cxx \ + RepairGUI_ChangeOrientationDlg_moc.cxx \ + RepairGUI_GlueDlg_moc.cxx \ RepairGUI_RemoveExtraEdgesDlg_moc.cxx -nodist_libRepairGUI_la_SOURCES= \ +nodist_libRepairGUI_la_SOURCES = \ $(MOC_FILES) -#LIB_CLIENT_IDL = SALOME_Exception.idl SALOME_GenericObj.idl SALOME_Component.idl +# additional information to compile and link file -#LIB_SERVER_IDL = - -# additionnal information to compil and link file - -libRepairGUI_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(VTK_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(PYTHON_INCLUDES) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../GEOMGUI \ - -I$(srcdir)/../DlgRef \ - -I$(srcdir)/../GEOMBase \ - -I$(srcdir)/../OBJECT \ - -I$(srcdir)/../GEOMClient \ - -I$(srcdir)/../GEOMImpl \ - -I$(top_builddir)/idl \ +libRepairGUI_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(VTK_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(PYTHON_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../GEOMGUI \ + -I$(srcdir)/../DlgRef \ + -I$(srcdir)/../GEOMBase \ + -I$(srcdir)/../OBJECT \ + -I$(srcdir)/../GEOMClient \ + -I$(srcdir)/../GEOMImpl \ + -I$(top_builddir)/src/DlgRef \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libRepairGUI_la_LDFLAGS = \ +libRepairGUI_la_LDFLAGS = \ ../GEOMBase/libGEOMBase.la diff --git a/src/RepairGUI/RepairGUI.cxx b/src/RepairGUI/RepairGUI.cxx index 9ab000be2..ff1045d49 100644 --- a/src/RepairGUI/RepairGUI.cxx +++ b/src/RepairGUI/RepairGUI.cxx @@ -1,37 +1,35 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : RepairGUI.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "RepairGUI.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" +#include -#include "SalomeApp_Application.h" +#include +#include +#include #include "RepairGUI_SewingDlg.h" // Method SEWING #include "RepairGUI_SuppressFacesDlg.h" // Method SUPPRESS FACES @@ -46,15 +44,12 @@ #include "RepairGUI_ChangeOrientationDlg.h" // Method CHANGE ORIENTATION #include "RepairGUI_RemoveExtraEdgesDlg.h" // Method REMOVE EXTRA EDGES -#include "utilities.h" - -using namespace std; - //======================================================================= // function : RepairGUI() // purpose : Constructor //======================================================================= -RepairGUI::RepairGUI( GeometryGUI* parent ) : GEOMGUI( parent ) +RepairGUI::RepairGUI( GeometryGUI* parent ) + : GEOMGUI( parent ) { } @@ -71,29 +66,29 @@ RepairGUI::~RepairGUI() // function : OnGUIEvent() // purpose : //======================================================================= -bool RepairGUI::OnGUIEvent(int theCommandID, SUIT_Desktop* parent) +bool RepairGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) { SalomeApp_Application* app = getGeometryGUI()->getApp(); - if (!app) return false; + if ( !app ) return false; getGeometryGUI()->EmitSignalDeactivateDialog(); QDialog* aDlg = NULL; - switch (theCommandID) { - case 601: aDlg = new RepairGUI_SewingDlg (getGeometryGUI(), parent, ""); break; - case 602: aDlg = new RepairGUI_GlueDlg (getGeometryGUI(), parent, ""); break; - case 603: aDlg = new RepairGUI_SuppressFacesDlg (getGeometryGUI(), parent, ""); break; - case 604: aDlg = new RepairGUI_RemoveHolesDlg (getGeometryGUI(), parent, ""); break; - case 605: aDlg = new RepairGUI_ShapeProcessDlg (getGeometryGUI(), parent, ""); break; - case 606: aDlg = new RepairGUI_CloseContourDlg (getGeometryGUI(), parent, ""); break; - case 607: aDlg = new RepairGUI_RemoveIntWiresDlg(getGeometryGUI(), parent, ""); break; - case 608: aDlg = new RepairGUI_DivideEdgeDlg (getGeometryGUI(), parent, ""); break; - case 609: aDlg = new RepairGUI_FreeBoundDlg (getGeometryGUI(), parent, ""); break; - case 610: aDlg = new RepairGUI_FreeFacesDlg (getGeometryGUI(), parent, ""); break; - case 611: aDlg = new RepairGUI_ChangeOrientationDlg (getGeometryGUI(), parent, ""); break; - case 612: aDlg = new RepairGUI_RemoveExtraEdgesDlg (getGeometryGUI(), parent, ""); break; + switch ( theCommandID ) { + case 601: aDlg = new RepairGUI_SewingDlg ( getGeometryGUI(), parent ); break; + case 602: aDlg = new RepairGUI_GlueDlg ( getGeometryGUI(), parent ); break; + case 603: aDlg = new RepairGUI_SuppressFacesDlg ( getGeometryGUI(), parent ); break; + case 604: aDlg = new RepairGUI_RemoveHolesDlg ( getGeometryGUI(), parent ); break; + case 605: aDlg = new RepairGUI_ShapeProcessDlg ( getGeometryGUI(), parent ); break; + case 606: aDlg = new RepairGUI_CloseContourDlg ( getGeometryGUI(), parent ); break; + case 607: aDlg = new RepairGUI_RemoveIntWiresDlg ( getGeometryGUI(), parent ); break; + case 608: aDlg = new RepairGUI_DivideEdgeDlg ( getGeometryGUI(), parent ); break; + case 609: aDlg = new RepairGUI_FreeBoundDlg ( getGeometryGUI(), parent ); break; + case 610: aDlg = new RepairGUI_FreeFacesDlg ( getGeometryGUI(), parent ); break; + case 611: aDlg = new RepairGUI_ChangeOrientationDlg ( getGeometryGUI(), parent ); break; + case 612: aDlg = new RepairGUI_RemoveExtraEdgesDlg ( getGeometryGUI(), parent ); break; default: - app->putInfo(tr("GEOM_PRP_COMMAND").arg(theCommandID)); + app->putInfo( tr( "GEOM_PRP_COMMAND" ).arg( theCommandID ) ); break; } @@ -110,7 +105,7 @@ bool RepairGUI::OnGUIEvent(int theCommandID, SUIT_Desktop* parent) extern "C" { #ifdef WNT - __declspec( dllexport ) + __declspec( dllexport ) #endif GEOMGUI* GetLibGUI( GeometryGUI* parent ) { diff --git a/src/RepairGUI/RepairGUI.h b/src/RepairGUI/RepairGUI.h index a99916239..c829b3b80 100644 --- a/src/RepairGUI/RepairGUI.h +++ b/src/RepairGUI/RepairGUI.h @@ -1,35 +1,32 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI.h +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : RepairGUI.h -// Author : Damien COQUERET -// Module : GEOM - #ifndef REPAIRGUI_H #define REPAIRGUI_H -#include "GEOMGUI.h" -#include "GEOMBase.h" +#include //================================================================================= // class : RepairGUI @@ -38,10 +35,10 @@ class RepairGUI : public GEOMGUI { public: - RepairGUI( GeometryGUI* parent ); + RepairGUI( GeometryGUI* ); ~RepairGUI(); - bool OnGUIEvent(int theCommandID, SUIT_Desktop* parent); + bool OnGUIEvent( int, SUIT_Desktop* ); }; -#endif +#endif // REPAIRGUI_H diff --git a/src/RepairGUI/RepairGUI_ChangeOrientationDlg.cxx b/src/RepairGUI/RepairGUI_ChangeOrientationDlg.cxx index 72f84baeb..485127b1f 100644 --- a/src/RepairGUI/RepairGUI_ChangeOrientationDlg.cxx +++ b/src/RepairGUI/RepairGUI_ChangeOrientationDlg.cxx @@ -1,45 +1,43 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_ChangeOrientationDlg.cxx +// Author : Sergey KUUL, Open CASCADE S.A.S. (sergey.kuul@opencascade.com) // -// File : RepairGUI_ChangeOrientationDlg.cxx -// Author : Sergey KUUL -// Module : GEOM - #include "RepairGUI_ChangeOrientationDlg.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "SUIT_Session.h" -#include "SALOME_ListIteratorOfListIO.hxx" +#include +#include +#include -#include "GEOMImpl_Types.hxx" +#include +#include +#include +#include + +#include #include -#include - -using namespace std; - //================================================================================= // class : RepairGUI_ChangeOrientationDlg() // purpose : Constructs a RepairGUI_ChangeOrientationDlg which is a child of 'parent', @@ -47,34 +45,37 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -RepairGUI_ChangeOrientationDlg::RepairGUI_ChangeOrientationDlg(GeometryGUI* theGeometryGUI, - QWidget* parent, const char* name, - bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +RepairGUI_ChangeOrientationDlg::RepairGUI_ChangeOrientationDlg( GeometryGUI* theGeometryGUI, + QWidget* parent, + bool modal ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal ) { //QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_SUPRESS_FACE"))); - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_CHANGE_ORIENTATION"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_CHANGE_ORIENTATION" ) )); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_CHANGE_ORIENTATION_TITLE")); + setWindowTitle( tr( "GEOM_CHANGE_ORIENTATION_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_CHANGE_ORIENTATION_TITLE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_CHANGE_ORIENTATION_TITLE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_1Sel1Check_QTD(this, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("GEOM_CHANGE_ORIENTATION")); - GroupPoints->TextLabel1->setText(tr("GEOM_SELECTED_SHAPE")); - GroupPoints->CheckButton1->setText(tr("GEOM_CREATE_COPY")); - GroupPoints->PushButton1->setPixmap(image1); + GroupPoints = new DlgRef_1Sel1Check( centralWidget() ); + GroupPoints->GroupBox1->setTitle( tr( "GEOM_CHANGE_ORIENTATION" ) ); + GroupPoints->TextLabel1->setText( tr( "GEOM_SELECTED_SHAPE" ) ); + GroupPoints->CheckButton1->setText( tr( "GEOM_CREATE_COPY" ) ); + GroupPoints->PushButton1->setIcon( image1 ); // GroupPoints->LineEdit1->setReadOnly( true ); + + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); - Layout1->addWidget(GroupPoints, 2, 0); - - setHelpFileName("change_orientation_operation_page.html"); + setHelpFileName( "change_orientation_operation_page.html" ); Init(); } @@ -98,21 +99,21 @@ void RepairGUI_ChangeOrientationDlg::Init() /* init variables */ myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->CheckButton1->setChecked(true); + GroupPoints->CheckButton1->setChecked( true ); myOkObject = false; /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPoints->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect(GroupPoints->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(CreateCopyModeChanged(bool))); + connect( GroupPoints->CheckButton1, SIGNAL( toggled( bool ) ), this, SLOT( CreateCopyModeChanged( bool ) ) ); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); initName( tr( "CHANGE_ORIENTATION_NEW_OBJ_NAME" ) ); } @@ -136,12 +137,12 @@ void RepairGUI_ChangeOrientationDlg::ClickOnOk() bool RepairGUI_ChangeOrientationDlg::ClickOnApply() { // if ( !onAccept() ) - if ( !onAccept(GroupPoints->CheckButton1->isChecked()) ) + if ( !onAccept( GroupPoints->CheckButton1->isChecked() ) ) return false; initName(); - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); return true; } @@ -153,12 +154,16 @@ bool RepairGUI_ChangeOrientationDlg::ClickOnApply() //================================================================================= void RepairGUI_ChangeOrientationDlg::SelectionIntoArgument() { - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); QString aName; - if(myEditCurrentArgument == GroupPoints->LineEdit1) { - if (IObjectCount() != 1) { - if (myEditCurrentArgument == GroupPoints->LineEdit1) + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) { + if ( aSelList.Extent() != 1 ) { + if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) myOkObject = false; return; } @@ -167,18 +172,17 @@ void RepairGUI_ChangeOrientationDlg::SelectionIntoArgument() // nbSel == 1 Standard_Boolean testResult = Standard_False; GEOM::GEOM_Object_ptr aSelectedObject = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), testResult ); - - if (!testResult) + GEOMBase::ConvertIOinGEOMObject( aSelList.First(), testResult ); + + if ( !testResult ) return; - if (myEditCurrentArgument == GroupPoints->LineEdit1) { + if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) { myObject = aSelectedObject; myOkObject = true; } myEditCurrentArgument->setText( GEOMBase::GetName( aSelectedObject ) ); - } @@ -190,8 +194,7 @@ void RepairGUI_ChangeOrientationDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - if( send == GroupPoints->PushButton1 ) - { + if ( send == GroupPoints->PushButton1 ) { GroupPoints->LineEdit1->setFocus(); myEditCurrentArgument = GroupPoints->LineEdit1; } @@ -206,7 +209,7 @@ void RepairGUI_ChangeOrientationDlg::SetEditCurrentArgument() void RepairGUI_ChangeOrientationDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if( send == GroupPoints->LineEdit1 ) { + if ( send == GroupPoints->LineEdit1 ) { myEditCurrentArgument = GroupPoints->LineEdit1; GEOMBase_Skeleton::LineEditReturnPressed(); } @@ -220,9 +223,8 @@ void RepairGUI_ChangeOrientationDlg::LineEditReturnPressed() void RepairGUI_ChangeOrientationDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); } @@ -230,24 +232,13 @@ void RepairGUI_ChangeOrientationDlg::ActivateThisDialog() // function : enterEvent() // purpose : Mouse enter onto the dialog to activate it //================================================================================= -void RepairGUI_ChangeOrientationDlg::enterEvent(QEvent* e) +void RepairGUI_ChangeOrientationDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } -//================================================================================= -// function : closeEvent() -// purpose : -//================================================================================= -void RepairGUI_ChangeOrientationDlg::closeEvent(QCloseEvent* e) -{ - //myGeomGUI->SetState( -1 ); - GEOMBase_Skeleton::closeEvent( e ); -} - - //================================================================================= // function : createOperation // purpose : @@ -262,7 +253,7 @@ GEOM::GEOM_IOperations_ptr RepairGUI_ChangeOrientationDlg::createOperation() // function : isValid // purpose : //================================================================================= -bool RepairGUI_ChangeOrientationDlg::isValid( QString& msg ) +bool RepairGUI_ChangeOrientationDlg::isValid( QString& ) { return myOkObject; } @@ -277,11 +268,11 @@ bool RepairGUI_ChangeOrientationDlg::execute( ObjectList& objects ) bool toCreateCopy = GroupPoints->CheckButton1->isChecked(); GEOM::GEOM_Object_var anObj; - if(toCreateCopy) { - anObj = GEOM::GEOM_IHealingOperations::_narrow(getOperation())->ChangeOrientationCopy(myObject); + if ( toCreateCopy ) { + anObj = GEOM::GEOM_IHealingOperations::_narrow( getOperation() )->ChangeOrientationCopy( myObject ); } else { - anObj = GEOM::GEOM_IHealingOperations::_narrow(getOperation())->ChangeOrientation(myObject); + anObj = GEOM::GEOM_IHealingOperations::_narrow( getOperation() )->ChangeOrientation( myObject ); } if ( !anObj->_is_nil() ) @@ -295,7 +286,7 @@ bool RepairGUI_ChangeOrientationDlg::execute( ObjectList& objects ) // function : CreateCopyModeChanged() // purpose : //================================================================================= -void RepairGUI_ChangeOrientationDlg::CreateCopyModeChanged(bool isCreateCopy) +void RepairGUI_ChangeOrientationDlg::CreateCopyModeChanged( bool isCreateCopy ) { - GroupBoxName->setEnabled(isCreateCopy); + mainFrame()->GroupBoxName->setEnabled( isCreateCopy ); } diff --git a/src/RepairGUI/RepairGUI_ChangeOrientationDlg.h b/src/RepairGUI/RepairGUI_ChangeOrientationDlg.h index 19f5be34c..e248bc7f7 100644 --- a/src/RepairGUI/RepairGUI_ChangeOrientationDlg.h +++ b/src/RepairGUI/RepairGUI_ChangeOrientationDlg.h @@ -1,38 +1,34 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : RepairGUI_ChangeOrientationDlg.h -// Author : Sergey KUUL -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_ChangeOrientationDlg.h +// Author : Sergey KUUL, Open CASCADE S.A.S. (sergey.kuul@opencascade.com) +// +#ifndef REPAIRGUI_CHANGEORIENTATIONDLG_H +#define REPAIRGUI_CHANGEORIENTATIONDLG_H -#ifndef DIALOGBOX_CHANGEORIENTATION_H -#define DIALOGBOX_CHANGEORIENTATION_H +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel1Check_QTD.h" -#include - -//#include +class DlgRef_1Sel1Check; //================================================================================= // class : RepairGUI_ChangeOrientationDlg @@ -40,38 +36,36 @@ //================================================================================= class RepairGUI_ChangeOrientationDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - RepairGUI_ChangeOrientationDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~RepairGUI_ChangeOrientationDlg(); + RepairGUI_ChangeOrientationDlg( GeometryGUI*, QWidget* = 0, bool = false ); + ~RepairGUI_ChangeOrientationDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - -private : - void Init(); - void enterEvent(QEvent* e); - void closeEvent(QCloseEvent* e); - - GEOM::GEOM_Object_var myObject; - bool myOkObject; - - DlgRef_1Sel1Check_QTD* GroupPoints; - - + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + +private: + void Init(); + void enterEvent( QEvent* ); + +private: + GEOM::GEOM_Object_var myObject; + bool myOkObject; + + DlgRef_1Sel1Check* GroupPoints; + private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void CreateCopyModeChanged(bool isCreateCopy); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void CreateCopyModeChanged( bool ); }; -#endif // DIALOGBOX_SUPPRESSFACES_H +#endif // REPAIRGUI_CHANGEORIENTATIONDLG_H diff --git a/src/RepairGUI/RepairGUI_CloseContourDlg.cxx b/src/RepairGUI/RepairGUI_CloseContourDlg.cxx index fc93a6154..85705502f 100644 --- a/src/RepairGUI/RepairGUI_CloseContourDlg.cxx +++ b/src/RepairGUI/RepairGUI_CloseContourDlg.cxx @@ -1,47 +1,45 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_CloseContourDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : RepairGUI_CloseContourDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "RepairGUI_CloseContourDlg.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "SUIT_Session.h" -#include "SALOME_ListIteratorOfListIO.hxx" +#include +#include +#include -#include "GEOMImpl_Types.hxx" +#include +#include +#include +#include +// OCCT Includes #include -#include #include +#include -#include - -using namespace std; +#include //================================================================================= // class : RepairGUI_CloseContourDlg() @@ -50,57 +48,49 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -RepairGUI_CloseContourDlg::RepairGUI_CloseContourDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +RepairGUI_CloseContourDlg::RepairGUI_CloseContourDlg (GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_CLOSECONTOUR"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_CLOSECONTOUR"))); + QPixmap image1 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_CLOSECONTOUR_TITLE")); + setWindowTitle(tr("GEOM_CLOSECONTOUR_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_CLOSECONTOUR_TITLE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_CLOSECONTOUR_TITLE")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_1Sel_Ext(this, "GroupPoints"); + GroupPoints = new DlgRef_2SelExt(centralWidget()); GroupPoints->GroupBox1->setTitle(tr("Contour to close")); GroupPoints->TextLabel1->setText(tr("GEOM_SELECTED_SHAPE")); - GroupPoints->PushButton1->setPixmap(image1); - GroupPoints->LineEdit1->setReadOnly( true ); + GroupPoints->PushButton1->setIcon(image1); + GroupPoints->LineEdit1->setReadOnly(true); - QGridLayout* aSelectWiresLay = new QGridLayout( 0, 1, 1, 0, 6, "aSelectWiresLay"); + GroupPoints->TextLabel2->setText(tr("Contour to close")); + GroupPoints->PushButton2->setIcon(image1); + GroupPoints->LineEdit2->setReadOnly(true); - mySelectWiresBtn = new QPushButton( GroupPoints->GroupBox1, "mySelectWiresBtn" ); - mySelectWiresBtn->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, mySelectWiresBtn->sizePolicy().hasHeightForWidth() ) ); - mySelectWiresBtn->setText( trUtf8( "" ) ); - mySelectWiresBtn->setPixmap(image1); + QRadioButton* rb1 = new QRadioButton(tr("Close by common vertex"), GroupPoints->Box); + QRadioButton* rb2 = new QRadioButton(tr("Close by new edge"), GroupPoints->Box); - mySelectWiresEdt = new QLineEdit( GroupPoints->GroupBox1, "mySelectWiresEdt" ); - mySelectWiresEdt->setReadOnly( true ); + myIsVertexGr = new QButtonGroup(GroupPoints->Box); + myIsVertexGr->addButton(rb1, 0); + myIsVertexGr->addButton(rb2, 1); + rb1->setChecked(true); - mySelectWiresLbl = new QLabel( tr( "Contour to close" ), GroupPoints->GroupBox1, "ContourLbl" ); - mySelectWiresLbl->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, mySelectWiresLbl->sizePolicy().hasHeightForWidth() ) ); + QVBoxLayout* l = new QVBoxLayout(GroupPoints->Box); + l->setMargin(0); l->setSpacing(6); + l->addWidget(rb1); + l->addWidget(rb2); - aSelectWiresLay->addWidget( mySelectWiresLbl, 0, 0 ); - aSelectWiresLay->addWidget( mySelectWiresBtn, 0, 1 ); - aSelectWiresLay->addWidget( mySelectWiresEdt, 0, 2 ); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - aSelectWiresLay->addItem( spacer, 1, 2 ); - - myIsVertexGr = new QButtonGroup( 2, Qt::Vertical, GroupPoints ); - myIsVertexGr->setFrameStyle( QFrame::NoFrame ); - myIsVertexGr->setRadioButtonExclusive( true ); - myIsVertexGr->insert( new QRadioButton( tr( "Close by common vertex" ), myIsVertexGr ), 0 ); - myIsVertexGr->insert( new QRadioButton( tr( "Close by new edge" ), myIsVertexGr ), 1 ); - myIsVertexGr->find( 0 )->toggle(); - - Layout1->addWidget(GroupPoints, 2, 0); - GroupPoints->getGroupBoxLayout()->addLayout( aSelectWiresLay, 1, 0 ); - GroupPoints->getGroupBoxLayout()->addMultiCellWidget(myIsVertexGr, 2, 2, 0, 2); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); /***************************************************************/ setHelpFileName("close_contour_operation_page.html"); @@ -108,7 +98,6 @@ RepairGUI_CloseContourDlg::RepairGUI_CloseContourDlg(GeometryGUI* theGeometryGUI Init(); } - //================================================================================= // function : ~RepairGUI_CloseContourDlg() // purpose : Destroys the object and frees any allocated resources @@ -117,116 +106,110 @@ RepairGUI_CloseContourDlg::~RepairGUI_CloseContourDlg() { } - //================================================================================= // function : Init() // purpose : //================================================================================= void RepairGUI_CloseContourDlg::Init() { - /* init variables */ - myEditCurrentArgument = GroupPoints->LineEdit1; - + // init variables + GroupPoints->LineEdit1->clear(); + GroupPoints->LineEdit2->clear(); myObject = GEOM::GEOM_Object::_nil(); myWiresInd = new GEOM::short_array(); - myWiresInd->length( 0 ); - - //myGeomGUI->SetState( 0 ); - initSelection(); + myWiresInd->length(0); - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(mySelectWiresBtn, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(mySelectWiresEdt, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - initName( tr( "CLOSE_CONTOUR_NEW_OBJ_NAME" ) ); + initName(tr("CLOSE_CONTOUR_NEW_OBJ_NAME")); + + GroupPoints->PushButton1->click(); + SelectionIntoArgument(); } - //================================================================================= // function : ClickOnOk() // purpose : Same than click on apply but close this dialog. //================================================================================= void RepairGUI_CloseContourDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } - - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool RepairGUI_CloseContourDlg::ClickOnApply() { - if ( !onAccept() ) + if (!onAccept()) return false; initName(); - - myEditCurrentArgument = GroupPoints->LineEdit1; - myEditCurrentArgument->setText(""); - myObject = GEOM::GEOM_Object::_nil(); - myWiresInd->length( 0 ); - - initSelection(); - + // activate first line edit + GroupPoints->PushButton1->click(); return true; } //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection as changed or other case -// : used only by SelectButtonC1A1 (LineEditC1A1) +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void RepairGUI_CloseContourDlg::SelectionIntoArgument() { - erasePreview(); - myEditCurrentArgument->setText( "" ); - mySelectWiresEdt->setText( "" ); - - if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) + myEditCurrentArgument->setText(""); + // the second argument depends on the first one + GroupPoints->LineEdit2->setText(""); + myWiresInd->length(0); + + if (myEditCurrentArgument == GroupPoints->LineEdit1) myObject = GEOM::GEOM_Object::_nil(); - else if ( myEditCurrentArgument == mySelectWiresEdt ) - myWiresInd->length( 0 ); - if ( IObjectCount() == 1 ) - { - Handle(SALOME_InteractiveObject) anIO = firstIObject(); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); - if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) // face selection - { + if (aSelList.Extent() == 1) { + Handle(SALOME_InteractiveObject) anIO = aSelList.First(); + + if (myEditCurrentArgument == GroupPoints->LineEdit1) { // face selection Standard_Boolean aRes; - myObject = GEOMBase::ConvertIOinGEOMObject( anIO, aRes ); - if ( aRes && GEOMBase::IsShape( myObject ) ) - { - myEditCurrentArgument->setText( GEOMBase::GetName( myObject ) ); + myObject = GEOMBase::ConvertIOinGEOMObject(anIO, aRes); + if (aRes && GEOMBase::IsShape(myObject)) { + myEditCurrentArgument->setText(GEOMBase::GetName(myObject)); TopoDS_Shape aShape; - if ( GEOMBase::GetShape( myObject, aShape, TopAbs_WIRE ) ) - mySelectWiresEdt->setText( myEditCurrentArgument->text() ); + if (GEOMBase::GetShape(myObject, aShape, TopAbs_WIRE)) + GroupPoints->LineEdit2->setText(myEditCurrentArgument->text()); + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + GroupPoints->PushButton2->click(); } else myObject = GEOM::GEOM_Object::_nil(); } - else if ( myEditCurrentArgument == mySelectWiresEdt ) - { + else if (myEditCurrentArgument == GroupPoints->LineEdit2) { TColStd_IndexedMapOfInteger aMap; - myGeomGUI->getApp()->selectionMgr()->GetIndexes( anIO, aMap ); + aSelMgr->GetIndexes(anIO, aMap); const int n = aMap.Extent(); - myWiresInd->length( n ); - for ( int i = 1; i <= n; i++ ) - myWiresInd[ i-1 ] = aMap( i ); - if ( n ) - myEditCurrentArgument->setText( QString::number( n ) + "_" + tr( "GEOM_WIRE" ) + tr( "_S_" ) ); + myWiresInd->length(n); + for (int i = 1; i <= n; i++) + myWiresInd[i-1] = aMap(i); + if (n) + myEditCurrentArgument->setText(QString::number(n) + "_" + tr("GEOM_WIRE") + tr("_S_")); } } } @@ -237,20 +220,36 @@ void RepairGUI_CloseContourDlg::SelectionIntoArgument() //================================================================================= void RepairGUI_CloseContourDlg::SetEditCurrentArgument() { - const QObject* send = sender(); - if ( send == GroupPoints->PushButton1 ) - myEditCurrentArgument = GroupPoints->LineEdit1; - else if ( send == mySelectWiresBtn && !myObject->_is_nil() ) - myEditCurrentArgument = mySelectWiresEdt; - if ( myEditCurrentArgument ) - { + QPushButton* send = (QPushButton*)sender(); + + bool isEffective = false; + + if (send == GroupPoints->PushButton1) { + isEffective = true; + myEditCurrentArgument = GroupPoints->LineEdit1; + + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit2->setEnabled(false); + } + else if (send == GroupPoints->PushButton2 && !myObject->_is_nil()) { + isEffective = true; + myEditCurrentArgument = GroupPoints->LineEdit2; + + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + } + + if (isEffective) { initSelection(); + + // enable line edit + myEditCurrentArgument->setEnabled(true); myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); } } - //================================================================================= // function : LineEditReturnPressed() // purpose : @@ -258,14 +257,12 @@ void RepairGUI_CloseContourDlg::SetEditCurrentArgument() void RepairGUI_CloseContourDlg::LineEditReturnPressed() { const QObject* send = sender(); - if( send == GroupPoints->LineEdit1 || send == mySelectWiresEdt ) - { + if (send == GroupPoints->LineEdit1 || send == GroupPoints->LineEdit2) { myEditCurrentArgument = (QLineEdit*)send; GEOMBase_Skeleton::LineEditReturnPressed(); } } - //================================================================================= // function : ActivateThisDialog() // purpose : @@ -273,71 +270,61 @@ void RepairGUI_CloseContourDlg::LineEditReturnPressed() void RepairGUI_CloseContourDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); myEditCurrentArgument = GroupPoints->LineEdit1; - myEditCurrentArgument->setText(""); - mySelectWiresEdt->setText(""); + myEditCurrentArgument->setText( "" ); + GroupPoints->LineEdit2->setText( "" ); myObject = GEOM::GEOM_Object::_nil(); myWiresInd->length( 0 ); - //myGeomGUI->SetState( 0 ); initSelection(); } - //================================================================================= // function : enterEvent() // purpose : Mouse enter onto the dialog to activate it //================================================================================= -void RepairGUI_CloseContourDlg::enterEvent(QEvent* e) +void RepairGUI_CloseContourDlg::enterEvent (QEvent*) { - if ( !GroupConstructors->isEnabled() ) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } - -//================================================================================= -// function : closeEvent() -// purpose : -//================================================================================= -void RepairGUI_CloseContourDlg::closeEvent(QCloseEvent* e) -{ - //myGeomGUI->SetState( -1 ); - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : createOperation // purpose : //================================================================================= GEOM::GEOM_IOperations_ptr RepairGUI_CloseContourDlg::createOperation() { - return getGeomEngine()->GetIHealingOperations( getStudyId() ); + return getGeomEngine()->GetIHealingOperations(getStudyId()); } //================================================================================= // function : isValid // purpose : //================================================================================= -bool RepairGUI_CloseContourDlg::isValid( QString& msg ) +bool RepairGUI_CloseContourDlg::isValid (QString&) { TopoDS_Shape aTmpShape; - return !myObject->_is_nil() && ( myWiresInd->length() || GEOMBase::GetShape( myObject, aTmpShape, TopAbs_WIRE ) ); + return !myObject->_is_nil() && (myWiresInd->length() || + GEOMBase::GetShape(myObject, aTmpShape, TopAbs_WIRE)); } //================================================================================= // function : execute // purpose : //================================================================================= -bool RepairGUI_CloseContourDlg::execute( ObjectList& objects ) +bool RepairGUI_CloseContourDlg::execute (ObjectList& objects) { - GEOM::GEOM_Object_var anObj = GEOM::GEOM_IHealingOperations::_narrow( getOperation() )->CloseContour( myObject, myWiresInd, getIsByVertex() ); + GEOM::GEOM_Object_var anObj = GEOM::GEOM_IHealingOperations::_narrow(getOperation())-> + CloseContour(myObject, myWiresInd, getIsByVertex()); + bool aResult = !anObj->_is_nil(); - if ( aResult ) - objects.push_back( anObj._retn() ); - + if (aResult) + objects.push_back(anObj._retn()); + return aResult; } @@ -347,7 +334,7 @@ bool RepairGUI_CloseContourDlg::execute( ObjectList& objects ) //================================================================================= bool RepairGUI_CloseContourDlg::getIsByVertex() const { - return myIsVertexGr->find( 0 )->isOn(); + return myIsVertexGr->button(0)->isChecked(); } //================================================================================= @@ -356,20 +343,23 @@ bool RepairGUI_CloseContourDlg::getIsByVertex() const //================================================================================= void RepairGUI_CloseContourDlg::initSelection() { - if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) - { + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + + if (myEditCurrentArgument == GroupPoints->LineEdit1) { TColStd_MapOfInteger aTypes; - aTypes.Add( GEOM_COMPOUND ); - aTypes.Add( GEOM_SOLID ); - aTypes.Add( GEOM_SHELL ); - aTypes.Add( GEOM_FACE ); - aTypes.Add( GEOM_WIRE ); - - globalSelection( aTypes ); + aTypes.Add(GEOM_COMPOUND); + aTypes.Add(GEOM_SOLID); + aTypes.Add(GEOM_SHELL); + aTypes.Add(GEOM_FACE); + aTypes.Add(GEOM_WIRE); + + globalSelection(aTypes); } - else if ( myEditCurrentArgument == mySelectWiresEdt ) - { - localSelection( myObject, TopAbs_EDGE ); - localSelection( myObject, TopAbs_WIRE ); + else if (myEditCurrentArgument == GroupPoints->LineEdit2) { + localSelection(myObject, TopAbs_EDGE); + localSelection(myObject, TopAbs_WIRE); } + + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); } diff --git a/src/RepairGUI/RepairGUI_CloseContourDlg.h b/src/RepairGUI/RepairGUI_CloseContourDlg.h index 81e4233d2..71d1a3b7e 100644 --- a/src/RepairGUI/RepairGUI_CloseContourDlg.h +++ b/src/RepairGUI/RepairGUI_CloseContourDlg.h @@ -1,40 +1,35 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : RepairGUI_CloseContourDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_CloseContourDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef REPAIRGUI_CLOSECONTOURDLG_H +#define REPAIRGUI_CLOSECONTOURDLG_H -#ifndef DIALOGBOX_CloseContour_H -#define DIALOGBOX_CloseContour_H +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel_Ext.h" - -#include - -#include -#include +class DlgRef_2SelExt; +class QButtonGroup; //================================================================================= // class : RepairGUI_CloseContourDlg @@ -42,45 +37,41 @@ //================================================================================= class RepairGUI_CloseContourDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - RepairGUI_CloseContourDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~RepairGUI_CloseContourDlg(); - + RepairGUI_CloseContourDlg( GeometryGUI*, QWidget* = 0, bool = false ); + ~RepairGUI_CloseContourDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + +private: + void Init(); + void enterEvent( QEvent* ); + void initSelection(); + + bool getIsByVertex() const; private: - void Init(); - void enterEvent(QEvent* e); - void closeEvent(QCloseEvent* e); - void initSelection(); - - bool getIsByVertex() const; - - GEOM::GEOM_Object_var myObject; - GEOM::short_array_var myWiresInd; - - DlgRef_1Sel_Ext* GroupPoints; - QButtonGroup* myIsVertexGr; - QLabel* mySelectWiresLbl; - QPushButton* mySelectWiresBtn; - QLineEdit* mySelectWiresEdt; - + GEOM::GEOM_Object_var myObject; + GEOM::short_array_var myWiresInd; + + DlgRef_2SelExt* GroupPoints; + QButtonGroup* myIsVertexGr; + private slots: - void ClickOnOk(); - bool ClickOnApply(); - - void ActivateThisDialog(); - - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void ClickOnOk(); + bool ClickOnApply(); + + void ActivateThisDialog(); + + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); }; -#endif // DIALOGBOX_CloseContour_H +#endif // REPAIRGUI_CLOSECONTOURDLG_H diff --git a/src/RepairGUI/RepairGUI_DivideEdgeDlg.cxx b/src/RepairGUI/RepairGUI_DivideEdgeDlg.cxx index dcd1f68c8..e70168621 100644 --- a/src/RepairGUI/RepairGUI_DivideEdgeDlg.cxx +++ b/src/RepairGUI/RepairGUI_DivideEdgeDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,29 +17,34 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_DivideEdgeDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : RepairGUI_DivideEdgeDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "RepairGUI_DivideEdgeDlg.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "SUIT_Session.h" -#include "SALOME_ListIteratorOfListIO.hxx" +#include +#include +#include +#include -#include "GEOMImpl_Types.hxx" +#include +#include +#include +#include + +#include #include - -#include - -using namespace std; +#include +#include +#include +#include +#include +#include +#include //================================================================================= // class : RepairGUI_DivideEdgeDlg() @@ -48,49 +53,55 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -RepairGUI_DivideEdgeDlg::RepairGUI_DivideEdgeDlg (GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - : GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +RepairGUI_DivideEdgeDlg::RepairGUI_DivideEdgeDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_DIVIDE_EDGE"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_DIVIDE_EDGE" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_DIVIDE_EDGE_TITLE")); + setWindowTitle( tr( "GEOM_DIVIDE_EDGE_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_DIVIDE_EDGE_TITLE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_DIVIDE_EDGE_TITLE")); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_1Sel_Ext(this, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("GEOM_ADD_POINT")); - GroupPoints->TextLabel1->setText(tr("GEOM_EDGE")); - GroupPoints->PushButton1->setPixmap(image1); + GroupPoints = new DlgRef_1SelExt( centralWidget() ); + GroupPoints->GroupBox1->setTitle( tr( "GEOM_ADD_POINT" ) ); + GroupPoints->TextLabel1->setText( tr( "GEOM_EDGE" ) ); + GroupPoints->PushButton1->setIcon( image1 ); GroupPoints->LineEdit1->setReadOnly( true ); - myIsParameterGr = new QButtonGroup( 2, Qt::Vertical, GroupPoints ); - myIsParameterGr->setFrameStyle( QFrame::NoFrame ); - myIsParameterGr->setRadioButtonExclusive( true ); - myIsParameterGr->insert( new QRadioButton( tr( "GEOM_BY_PARAMETER" ), myIsParameterGr ), 0 ); - myIsParameterGr->insert( new QRadioButton( tr( "GEOM_BY_LENGTH" ), myIsParameterGr ), 1 ); - myIsParameterGr->find( 0 )->toggle(); + QRadioButton* rb1 = new QRadioButton( tr( "GEOM_BY_PARAMETER" ), GroupPoints->Box ); + QRadioButton* rb2 = new QRadioButton( tr( "GEOM_BY_LENGTH" ), GroupPoints->Box ); - QGridLayout* aLay = new QGridLayout( 0, 1, 2, 0, 6, "aLay" ); - myValEdt = new QtxDblSpinBox(0., 1., 0.1, GroupPoints->GroupBox1); - myValEdt->setPrecision( 3 ); + myIsParameterGr = new QButtonGroup( GroupPoints->Box ); + myIsParameterGr->addButton( rb1, 0 ); + myIsParameterGr->addButton( rb2, 1 ); + rb1->setChecked( true ); + + myValEdt = new SalomeApp_DoubleSpinBox( 0., 1., 0.1, 3, 32, GroupPoints->Box ); myValEdt->setValue( 0.5 ); - QLabel* aLbl1 = new QLabel( tr( "GEOM_VALUE" ), GroupPoints->GroupBox1 ); - aLay->addWidget( aLbl1, 0, 0 ); - aLay->addWidget( myValEdt, 0, 1 ); + QLabel* aLbl1 = new QLabel( tr( "GEOM_VALUE" ), GroupPoints->Box ); + + QGridLayout* l = new QGridLayout( GroupPoints->Box ); + l->setMargin( 0 ); l->setSpacing( 6 ); + l->addWidget( rb1, 0, 0, 1, 2 ); + l->addWidget( rb2, 1, 0, 1, 2 ); + l->addWidget( aLbl1, 2, 0 ); + l->addWidget( myValEdt, 2, 1 ); + + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); - Layout1->addWidget(GroupPoints, 2, 0); - GroupPoints->getGroupBoxLayout()->addMultiCellWidget(myIsParameterGr, 1, 1, 0, 2); - GroupPoints->getGroupBoxLayout()->addLayout( aLay, 2, 0 ); /***************************************************************/ - setHelpFileName("add_point_on_edge_operation_page.html"); + setHelpFileName( "add_point_on_edge_operation_page.html" ); Init(); } @@ -113,24 +124,60 @@ void RepairGUI_DivideEdgeDlg::Init() myEditCurrentArgument = GroupPoints->LineEdit1; myObject = GEOM::GEOM_Object::_nil(); - myIndex = -1; //myGeomGUI->SetState( 0 ); initSelection(); /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( myValEdt, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox() ) ); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPoints->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); initName( tr( "DEVIDE_EDGE_NEW_OBJECT_NAME" ) ); } +//================================================================================= +// function : ValueChangedInSpinBox() +// purpose : On change value in spin box +//================================================================================= +void RepairGUI_DivideEdgeDlg::ValueChangedInSpinBox() +{ + displayPreview(); +} + +//================================================================================= +// function : displayPreview() +// purpose : On display Preview +//================================================================================= +void RepairGUI_DivideEdgeDlg::displayPreview() +{ + if ( myObject->_is_nil() ) + return; + + TopoDS_Shape aShape; + gp_Pnt aPnt; + if ( GEOMBase::GetShape( myObject, aShape, TopAbs_SHAPE ) ) { + if (aShape.ShapeType() == TopAbs_EDGE) { + Standard_Real aFP, aLP, aP; + Handle(Geom_Curve) aCurve = BRep_Tool::Curve(TopoDS::Edge(aShape), aFP, aLP); + aP = aFP + (aLP - aFP) * myValEdt->value(); + aPnt = aCurve->Value(aP); + BRepBuilderAPI_MakeVertex mkVertex (aPnt); + aShape = mkVertex.Shape(); + // Build prs + SALOME_Prs* aPrs = getDisplayer()->BuildPrs( aShape ); + if ( aPrs != 0 && !aPrs->IsNull() ) + GEOMBase_Helper::displayPreview( aPrs, false, true ); + } + } +} //================================================================================= // function : ClickOnOk() @@ -154,9 +201,8 @@ bool RepairGUI_DivideEdgeDlg::ClickOnApply() initName(); - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); myObject = GEOM::GEOM_Object::_nil(); - myIndex = -1; initSelection(); @@ -171,52 +217,58 @@ bool RepairGUI_DivideEdgeDlg::ClickOnApply() //================================================================================= void RepairGUI_DivideEdgeDlg::SelectionIntoArgument() { - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); myObject = GEOM::GEOM_Object::_nil(); - myIndex = -1; - if ( IObjectCount() == 1 ) - { - Handle(SALOME_InteractiveObject) anIO = firstIObject(); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if ( aSelList.Extent() == 1 ) { + Handle(SALOME_InteractiveObject) anIO = aSelList.First(); Standard_Boolean aRes; - GEOM::GEOM_Object_var aSelectedObj = GEOMBase::ConvertIOinGEOMObject( anIO, aRes ); - if ( !CORBA::is_nil( aSelectedObj ) && aRes ) - { + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject( anIO, aRes ); + if ( !CORBA::is_nil( aSelectedObject ) && aRes ) { + QString aName = GEOMBase::GetName( aSelectedObject ); TopoDS_Shape aShape; - if ( GEOMBase::GetShape( aSelectedObj, aShape, TopAbs_SHAPE ) ) - { + if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) ) { const int aType = aShape.ShapeType(); - if ( aType <= TopAbs_EDGE ) // edge, wire, face, shell, solid, compound - { + if ( aType <= TopAbs_EDGE ) { + // edge, wire, face, shell, solid, compound GEOM::short_array anIndexes; TColStd_IndexedMapOfInteger aMap; - SalomeApp_Application* anApp = - (SalomeApp_Application*)(SUIT_Session::session()->activeApplication()); - anApp->selectionMgr()->GetIndexes( anIO, aMap ); + aSelMgr->GetIndexes( anIO, aMap ); - if ( !aMap.IsEmpty() ) // subshape selection - { - myIndex = aMap( 1 ); - myObject = aSelectedObj; - myEditCurrentArgument->setText( tr( "GEOM_EDGE" ) + "_1" ); + if ( aMap.Extent() == 1 ) { // local selection + int anIndex = aMap( 1 ); + myEditCurrentArgument->setText( aName += QString( ":edge_%1" ).arg( anIndex ) ); + + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather( aSelectedObject, aName ); + if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = getGeomEngine()->GetIShapesOperations( getStudyId() ); + myObject = aShapesOp->GetSubShape( aSelectedObject, anIndex ); + } + else { + myObject = aFindedObject; // get Object from study + } } - else if ( aType == TopAbs_EDGE ) // single shape selection - { - myIndex = -1; - myObject = aSelectedObj; + else if ( aType == TopAbs_EDGE ) { + // single shape selection + myObject = aSelectedObject; myEditCurrentArgument->setText( GEOMBase::GetName( myObject ) ); } - else // face, shell, solid or compound was selected, and NOT its subshape. - { - myIndex = -1; + else { + // face, shell, solid or compound was selected, and NOT its subshape. myObject = GEOM::GEOM_Object::_nil(); } } } } } + displayPreview(); } //================================================================================= @@ -225,8 +277,7 @@ void RepairGUI_DivideEdgeDlg::SelectionIntoArgument() //================================================================================= void RepairGUI_DivideEdgeDlg::SetEditCurrentArgument() { - if( sender() == GroupPoints->PushButton1 ) - { + if ( sender() == GroupPoints->PushButton1 ) { GroupPoints->LineEdit1->setFocus(); myEditCurrentArgument = GroupPoints->LineEdit1; } @@ -240,8 +291,7 @@ void RepairGUI_DivideEdgeDlg::SetEditCurrentArgument() //================================================================================= void RepairGUI_DivideEdgeDlg::LineEditReturnPressed() { - if( sender() == GroupPoints->LineEdit1 ) - { + if ( sender() == GroupPoints->LineEdit1 ) { myEditCurrentArgument = GroupPoints->LineEdit1; GEOMBase_Skeleton::LineEditReturnPressed(); } @@ -255,11 +305,10 @@ void RepairGUI_DivideEdgeDlg::LineEditReturnPressed() void RepairGUI_DivideEdgeDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); - myObject = GEOM::GEOM_Object::_nil(); - myIndex = -1; +// myObject = GEOM::GEOM_Object::_nil(); //myGeomGUI->SetState( 0 ); initSelection(); @@ -269,22 +318,12 @@ void RepairGUI_DivideEdgeDlg::ActivateThisDialog() // function : enterEvent() // purpose : Mouse enter onto the dialog to activate it //================================================================================= -void RepairGUI_DivideEdgeDlg::enterEvent(QEvent* e) +void RepairGUI_DivideEdgeDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } -//================================================================================= -// function : closeEvent() -// purpose : -//================================================================================= -void RepairGUI_DivideEdgeDlg::closeEvent(QCloseEvent* e) -{ - //myGeomGUI->SetState( -1 ); - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : createOperation @@ -301,7 +340,8 @@ GEOM::GEOM_IOperations_ptr RepairGUI_DivideEdgeDlg::createOperation() //================================================================================= bool RepairGUI_DivideEdgeDlg::isValid( QString& msg ) { - return !myObject->_is_nil(); + bool ok = myValEdt->isValid( msg, !IsPreview() ); + return !myObject->_is_nil() && ok; } //================================================================================= @@ -311,10 +351,20 @@ bool RepairGUI_DivideEdgeDlg::isValid( QString& msg ) bool RepairGUI_DivideEdgeDlg::execute( ObjectList& objects ) { GEOM::GEOM_Object_var anObj = GEOM::GEOM_IHealingOperations::_narrow( getOperation() )->DivideEdge - ( myObject, myIndex, myValEdt->value(), getIsByParameter() ); + ( myObject, -1, myValEdt->value(), getIsByParameter() ); bool aResult = !anObj->_is_nil(); if ( aResult ) + { + if ( !IsPreview() ) + { + QStringList aParameters; + aParameters << ""; + aParameters << myValEdt->text(); + aParameters << ""; + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } objects.push_back( anObj._retn() ); + } return aResult; } @@ -325,7 +375,7 @@ bool RepairGUI_DivideEdgeDlg::execute( ObjectList& objects ) //================================================================================= bool RepairGUI_DivideEdgeDlg::getIsByParameter() const { - return myIsParameterGr->find( 0 )->isOn(); + return myIsParameterGr->button( 0 )->isChecked(); } //================================================================================= @@ -337,3 +387,15 @@ void RepairGUI_DivideEdgeDlg::initSelection() GEOM::GEOM_Object_var aNullGeomObject; localSelection( aNullGeomObject, TopAbs_EDGE ); // load local selection on ALL objects } + +//================================================================================= +// function : addSubshapeToStudy +// purpose : virtual method to add new SubObjects if local selection +//================================================================================= +void RepairGUI_DivideEdgeDlg::addSubshapesToStudy() +{ + QMap objMap; + objMap[GroupPoints->LineEdit1->text()] = myObject; + + addSubshapesToFather( objMap ); +} diff --git a/src/RepairGUI/RepairGUI_DivideEdgeDlg.h b/src/RepairGUI/RepairGUI_DivideEdgeDlg.h index d2099375b..d7ceed40e 100644 --- a/src/RepairGUI/RepairGUI_DivideEdgeDlg.h +++ b/src/RepairGUI/RepairGUI_DivideEdgeDlg.h @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,25 +17,20 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_DivideEdgeDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : RepairGUI_DivideEdgeDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +#ifndef REPAIRGUI_DIVIDEEDGEDLG_H +#define REPAIRGUI_DIVIDEEDGEDLG_H -#ifndef DIALOGBOX_DivideEdge_H -#define DIALOGBOX_DivideEdge_H +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel_Ext.h" -#include "QtxDblSpinBox.h" - -#include - -#include -#include +class DlgRef_1SelExt; +class SalomeApp_DoubleSpinBox; +class QButtonGroup; //================================================================================= // class : RepairGUI_DivideEdgeDlg @@ -43,43 +38,43 @@ //================================================================================= class RepairGUI_DivideEdgeDlg : public GEOMBase_Skeleton { - Q_OBJECT - + Q_OBJECT + public: - RepairGUI_DivideEdgeDlg (GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~RepairGUI_DivideEdgeDlg(); - + RepairGUI_DivideEdgeDlg( GeometryGUI*, QWidget* = 0, bool = false ); + ~RepairGUI_DivideEdgeDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); + private: - void Init(); - void enterEvent(QEvent* e); - void closeEvent(QCloseEvent* e); - void initSelection(); - - bool getIsByParameter() const; - - GEOM::GEOM_Object_var myObject; - int myIndex; - - DlgRef_1Sel_Ext* GroupPoints; - QButtonGroup* myIsParameterGr; - QtxDblSpinBox* myValEdt; + void Init(); + void enterEvent( QEvent* ); + void initSelection(); + + bool getIsByParameter() const; + +private: + GEOM::GEOM_Object_var myObject; + + DlgRef_1SelExt* GroupPoints; + QButtonGroup* myIsParameterGr; + SalomeApp_DoubleSpinBox* myValEdt; protected slots: - void ClickOnOk(); - bool ClickOnApply(); + void ClickOnOk(); + bool ClickOnApply(); - void ActivateThisDialog(); - - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void displayPreview(); + void ValueChangedInSpinBox(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); }; -#endif // DIALOGBOX_DivideEdge_H +#endif // REPAIRGUI_DIVIDEEDGEDLG_H diff --git a/src/RepairGUI/RepairGUI_FreeBoundDlg.cxx b/src/RepairGUI/RepairGUI_FreeBoundDlg.cxx index 2231ad6b3..f20e04130 100644 --- a/src/RepairGUI/RepairGUI_FreeBoundDlg.cxx +++ b/src/RepairGUI/RepairGUI_FreeBoundDlg.cxx @@ -1,53 +1,56 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_FreeBoundDlg.cxx +// Author : Sergey LITONIN, Open CASCADE S.A.S. (sergey.litonin@opencascade.com) // -// File : RepairGUI_FreeBoundDlg.cxx -// Author : Sergey LITONIN -// Module : GEOM -// $Header$ - #include "RepairGUI_FreeBoundDlg.h" -#include "GEOMBase.h" -#include "GeometryGUI.h" -#include "GEOM_Displayer.h" -#include "GEOMImpl_Types.hxx" -#include "SalomeApp_Application.h" -#include "LightApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "SUIT_MessageBox.h" -#include "SUIT_Session.h" +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include #include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include +#include -#define SPACING 5 -#define MARGIN 10 +#define SPACING 6 +#define MARGIN 9 /*! Class : RepairGUI_FreeBoundDlg @@ -58,37 +61,47 @@ // function : RepairGUI_FreeBoundDlg // purpose : Constructor //================================================================================= -RepairGUI_FreeBoundDlg::RepairGUI_FreeBoundDlg(GeometryGUI* theGUI, QWidget* theParent, const char*) -: QDialog( theParent, "RepairGUI_FreeBoundDlg", false, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu | WDestructiveClose ), - GEOMBase_Helper( dynamic_cast( theParent ) ), - myGeomGUI( theGUI ) +RepairGUI_FreeBoundDlg::RepairGUI_FreeBoundDlg( GeometryGUI* theGUI, QWidget* theParent ) + : QDialog( theParent, false ), + GEOMBase_Helper( dynamic_cast( theParent ) ), + myGeomGUI( theGUI ) { - setCaption( tr( "CAPTION" ) ); + setAttribute( Qt::WA_DeleteOnClose ); - QPixmap iconSelect( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM",tr( "ICON_SELECT" ) ) ); + setWindowTitle( tr( "CAPTION" ) ); + + QPixmap iconSelect( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - QGroupBox* aMainGrp = new QGroupBox( 1, Qt::Horizontal, tr( "FREE_BOUND" ), this ); + QGroupBox* aMainGrp = new QGroupBox( tr( "FREE_BOUND" ), this ); - QGroupBox* aSelGrp = new QGroupBox( 1, Qt::Vertical, aMainGrp ); - aSelGrp->setInsideMargin( 0 ); - aSelGrp->setFrameStyle( QFrame::NoFrame ); - new QLabel( tr( "GEOM_OBJECT" ), aSelGrp ); - ( new QPushButton( aSelGrp ) )->setPixmap( iconSelect ); - myEdit = new QLineEdit( aSelGrp ); + QLabel* lab = new QLabel( tr( "GEOM_OBJECT" ), aMainGrp ); + QPushButton* btn = new QPushButton( aMainGrp ); + btn->setIcon( iconSelect ); + myEdit = new QLineEdit( aMainGrp ); myEdit->setReadOnly( true ); myEdit->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) ); myClosedLbl = new QLabel( tr( "NUMBER_CLOSED" ), aMainGrp ); - myOpenLbl = new QLabel( tr( "NUMBER_OPEN" ), aMainGrp ); + myOpenLbl = new QLabel( tr( "NUMBER_OPEN" ), aMainGrp ); + myClosedLbl->setMinimumWidth( 150 ); + myOpenLbl->setMinimumWidth( 150 ); + + QGridLayout* aMainGrpLayout = new QGridLayout( aMainGrp ); + aMainGrpLayout->setMargin( MARGIN ); aMainGrpLayout->setSpacing( SPACING ); + aMainGrpLayout->addWidget( lab, 0, 0 ); + aMainGrpLayout->addWidget( btn, 0, 1 ); + aMainGrpLayout->addWidget( myEdit, 0, 2 ); + aMainGrpLayout->addWidget( myClosedLbl, 1, 0, 1, 3 ); + aMainGrpLayout->addWidget( myOpenLbl, 2, 0, 1, 3 ); QFrame* aFrame = new QFrame( this ); aFrame->setFrameStyle( QFrame::Box | QFrame::Sunken ); QPushButton* aCloseBtn = new QPushButton( tr( "GEOM_BUT_CLOSE" ), aFrame ); QPushButton* aHelpBtn = new QPushButton( tr( "GEOM_BUT_HELP" ), aFrame ); - QHBoxLayout* aBtnLay = new QHBoxLayout( aFrame, MARGIN, SPACING ); + QHBoxLayout* aBtnLay = new QHBoxLayout( aFrame ); + aBtnLay->setMargin( MARGIN ); aBtnLay->setSpacing( SPACING ); aBtnLay->addWidget( aCloseBtn ); - aBtnLay->addItem( new QSpacerItem( 0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum ) ); + aBtnLay->addSpacing( SPACING ); aBtnLay->addStretch(); aBtnLay->addWidget( aHelpBtn ); QVBoxLayout* aLay = new QVBoxLayout( this ); @@ -97,11 +110,10 @@ RepairGUI_FreeBoundDlg::RepairGUI_FreeBoundDlg(GeometryGUI* theGUI, QWidget* the aLay->addWidget( aMainGrp ); aLay->addWidget( aFrame ); - //myHelpFileName = "files/salome2_sp3_measuregui_functions.htm#free_boundaries"; myHelpFileName = "using_measurement_tools_page.html#boundaries_anchor"; connect( aCloseBtn, SIGNAL( clicked() ), SLOT( onClose() ) ); - connect( aHelpBtn, SIGNAL( clicked() ), SLOT( onHelp() ) ); + connect( aHelpBtn, SIGNAL( clicked() ), SLOT( onHelp() ) ); Init(); } @@ -121,7 +133,7 @@ RepairGUI_FreeBoundDlg::~RepairGUI_FreeBoundDlg() void RepairGUI_FreeBoundDlg::onClose() { globalSelection(); - disconnect( ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), 0, this, 0 ); + disconnect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), 0, this, 0 ); myGeomGUI->SetActiveDialogBox( 0 ); reject(); erasePreview(); @@ -133,20 +145,21 @@ void RepairGUI_FreeBoundDlg::onClose() //================================================================================= void RepairGUI_FreeBoundDlg::onHelp() { - LightApp_Application* app = (LightApp_Application*)(SUIT_Session::session()->activeApplication()); - if (app) - app->onHelpContextModule(myGeomGUI ? app->moduleName(myGeomGUI->moduleName()) : QString(""), myHelpFileName); + LightApp_Application* app = (LightApp_Application*)( SUIT_Session::session()->activeApplication() ); + if ( app ) + app->onHelpContextModule( myGeomGUI ? app->moduleName( myGeomGUI->moduleName() ) : QString(""), myHelpFileName ); else { - QString platform; + QString platform; #ifdef WIN32 - platform = "winapplication"; + platform = "winapplication"; #else - platform = "application"; + platform = "application"; #endif - SUIT_MessageBox::warn1 - (0, tr("WRN_WARNING"), tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE"). - arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(myHelpFileName), - tr("BUT_OK")); + SUIT_MessageBox::warning( this, + tr( "WRN_WARNING" ), + tr( "EXTERNAL_BROWSER_CANNOT_SHOW_PAGE"). + arg( app->resourceMgr()->stringValue( "ExternalBrowser", + platform ) ).arg( myHelpFileName ) ); } } @@ -156,9 +169,9 @@ void RepairGUI_FreeBoundDlg::onHelp() //================================================================================= void RepairGUI_FreeBoundDlg::onDeactivate() { - setEnabled(false); + setEnabled( false ); globalSelection(); - disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + disconnect( myGeomGUI->getApp()->selectionMgr(), 0, this, 0 ); myGeomGUI->SetActiveDialogBox( 0 ); } @@ -171,7 +184,7 @@ void RepairGUI_FreeBoundDlg::onActivate() myGeomGUI->EmitSignalDeactivateDialog(); setEnabled( true ); myGeomGUI->SetActiveDialogBox( this ); - connect( ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), SIGNAL( currentSelectionChanged() ), SLOT( onSelectionDone() ) ); activateSelection(); onSelectionDone(); @@ -183,17 +196,20 @@ void RepairGUI_FreeBoundDlg::onActivate() //================================================================================= void RepairGUI_FreeBoundDlg::onSelectionDone() { - if( IObjectCount() != 1 ) + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if ( aSelList.Extent() != 1 ) return; Standard_Boolean isOk = Standard_False; GEOM::GEOM_Object_var anObj = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), isOk ); + GEOMBase::ConvertIOinGEOMObject( aSelList.First(), isOk ); if ( !isOk || anObj->_is_nil() || !GEOMBase::IsShape( anObj ) ) return; - else - { + else { myObj = anObj; displayPreview( false, true, true, 3 ); } @@ -209,7 +225,7 @@ void RepairGUI_FreeBoundDlg::Init() myObj = GEOM::GEOM_Object::_nil(); connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), SLOT ( onDeactivate() ) ); - connect( ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), SIGNAL( currentSelectionChanged() ), SLOT( onSelectionDone() ) ); activateSelection(); @@ -220,7 +236,7 @@ void RepairGUI_FreeBoundDlg::Init() // function : enterEvent // purpose : Activate dialog //================================================================================= -void RepairGUI_FreeBoundDlg::enterEvent( QEvent* e ) +void RepairGUI_FreeBoundDlg::enterEvent( QEvent* ) { onActivate(); } @@ -229,7 +245,7 @@ void RepairGUI_FreeBoundDlg::enterEvent( QEvent* e ) // function : closeEvent // purpose : Close dialog //================================================================================= -void RepairGUI_FreeBoundDlg::closeEvent( QCloseEvent* e ) +void RepairGUI_FreeBoundDlg::closeEvent( QCloseEvent* ) { onClose(); } @@ -261,7 +277,7 @@ GEOM::GEOM_IOperations_ptr RepairGUI_FreeBoundDlg::createOperation() // function : isValid // purpose : //================================================================================= -bool RepairGUI_FreeBoundDlg::isValid( QString& msg ) +bool RepairGUI_FreeBoundDlg::isValid( QString& ) { return !myObj->_is_nil(); } @@ -280,8 +296,7 @@ bool RepairGUI_FreeBoundDlg::execute( ObjectList& objects ) bool result = GEOM::GEOM_IHealingOperations::_narrow( getOperation() )->GetFreeBoundary( myObj, aClosed, anOpen ); - if ( result ) - { + if ( result ) { myNbClosed = aClosed->length(); myNbOpen = anOpen->length(); int i; @@ -296,8 +311,7 @@ bool RepairGUI_FreeBoundDlg::execute( ObjectList& objects ) aLabelText = tr( "NUMBER_OPEN" ) + QString( "%1" ).arg( myNbOpen ); myOpenLbl->setText( aLabelText ); } - else - { + else { myEdit->setText( GEOMBase::GetName( myObj ) ); myClosedLbl->setText( tr( "NUMBER_CLOSED" ) ); myOpenLbl->setText( tr( "NUMBER_OPEN" ) ); @@ -316,9 +330,8 @@ void RepairGUI_FreeBoundDlg::keyPressEvent( QKeyEvent* e ) if ( e->isAccepted() ) return; - if ( e->key() == Key_F1 ) - { - e->accept(); - onHelp(); - } + if ( e->key() == Qt::Key_F1 ) { + e->accept(); + onHelp(); + } } diff --git a/src/RepairGUI/RepairGUI_FreeBoundDlg.h b/src/RepairGUI/RepairGUI_FreeBoundDlg.h index 0594fe2d6..afca4ef79 100644 --- a/src/RepairGUI/RepairGUI_FreeBoundDlg.h +++ b/src/RepairGUI/RepairGUI_FreeBoundDlg.h @@ -1,39 +1,36 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : RepairGUI_FreeBoundDlg.h -// Author : Sergey LITONIN -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_FreeBoundDlg.h +// Author : Sergey LITONIN, Open CASCADE S.A.S. (sergey.litonin@opencascade.com) +// +#ifndef REPAIRGUI_FREEBOUNDDLG_H +#define REPAIRGUI_FREEBOUNDDLG_H -#ifndef DIALOGBOX_WHATIS_H -#define DIALOGBOX_WHATIS_H - -#include -#include "GEOMBase_Helper.h" +#include +#include class QLineEdit; class QLabel; -class GEOM_Displayer; class GeometryGUI; //================================================================================= @@ -43,11 +40,11 @@ class GeometryGUI; class RepairGUI_FreeBoundDlg : public QDialog, public GEOMBase_Helper { - Q_OBJECT + Q_OBJECT public: - RepairGUI_FreeBoundDlg(GeometryGUI*, QWidget*, const char* name = 0); - ~RepairGUI_FreeBoundDlg(); + RepairGUI_FreeBoundDlg( GeometryGUI*, QWidget* ); + ~RepairGUI_FreeBoundDlg(); private slots: void onClose(); @@ -58,13 +55,13 @@ private slots: private: void Init(); - void enterEvent( QEvent* e ); - void closeEvent( QCloseEvent* e ); - void keyPressEvent( QKeyEvent* e ); + void enterEvent( QEvent* ); + void closeEvent( QCloseEvent* ); + void keyPressEvent( QKeyEvent* ); void activateSelection(); virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool execute( ObjectList& objects ); + virtual bool execute( ObjectList& ); virtual bool isValid( QString& ); private: @@ -78,4 +75,4 @@ private: QString myHelpFileName; }; -#endif // DIALOGBOX_WHATIS_H +#endif // REPAIRGUI_FREEBOUNDDLG_H diff --git a/src/RepairGUI/RepairGUI_FreeFacesDlg.cxx b/src/RepairGUI/RepairGUI_FreeFacesDlg.cxx index e64a5f898..a4319e05a 100644 --- a/src/RepairGUI/RepairGUI_FreeFacesDlg.cxx +++ b/src/RepairGUI/RepairGUI_FreeFacesDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,48 +17,47 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_FreeFacesDlg.cxx +// Author : Vladimir KLYACHIN, Open CASCADE S.A.S. (vladimir.klyachin@opencascade.com) // -// -// File : RepairGUI_FreeFacesDlg.cxx -// Author : VKN -// Module : GEOM -// $Header$ - #include "RepairGUI_FreeFacesDlg.h" -#include "LightApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "SalomeApp_Application.h" -#include "SalomeApp_Tools.h" +#include +#include +#include +#include -#include "SUIT_MessageBox.h" -#include "SUIT_Session.h" -#include "SUIT_OverrideCursor.h" +#include +#include +#include +#include +#include -#include "SALOME_ListIteratorOfListIO.hxx" +#include -#include "GEOMImpl_Types.hxx" #include #include #include -#include "GEOMBase.h" -#include "GeometryGUI.h" -#include "GEOM_Displayer.h" -#include -#include -#include -#include -#include -#include -#define SPACING 5 -#define MARGIN 10 +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include + +#define SPACING 6 +#define MARGIN 9 #define MIN_WIDTH 200 -using namespace std; - //================================================================================= // class : RepairGUI_FreeFacesDlg() // purpose : Constructs a RepairGUI_FreeFacesDlg which is a child of 'parent', with the @@ -66,60 +65,66 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -RepairGUI_FreeFacesDlg::RepairGUI_FreeFacesDlg(GeometryGUI* GUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :QDialog(parent, "RepairGUI_FreeBoundDlg", false, - WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu | WDestructiveClose), - GEOMBase_Helper(dynamic_cast(parent)), - myGeomGUI(GUI) +RepairGUI_FreeFacesDlg::RepairGUI_FreeFacesDlg( GeometryGUI* GUI, QWidget* parent, + bool modal ) + : QDialog( parent, false ), + GEOMBase_Helper( dynamic_cast( parent ) ), + myGeomGUI( GUI ), + myDisplayer( 0 ) { - myDisplayer = 0; + setAttribute( Qt::WA_DeleteOnClose ); - setSizeGripEnabled( TRUE ); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + setSizeGripEnabled( true ); - setCaption(tr("GEOM_FREE_FACES_TITLE")); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); + + setWindowTitle( tr( "GEOM_FREE_FACES_TITLE" ) ); /***************************************************************/ - QGroupBox* aMainGrp = new QGroupBox( 1, Qt::Horizontal, tr( "GEOM_SELECTED_SHAPE" ), this ); + QGroupBox* aMainGrp = new QGroupBox( tr( "GEOM_SELECTED_SHAPE" ), this ); - - QGroupBox* aSelGrp = new QGroupBox( 1, Qt::Vertical, aMainGrp ); - - aSelGrp->setInsideMargin( 0 ); - aSelGrp->setFrameStyle( QFrame::NoFrame ); - new QLabel( tr( "GEOM_OBJECT" ), aSelGrp ); - mySelBtn = new QPushButton( aSelGrp ); - mySelBtn->setPixmap( image1 ); - myEdit = new QLineEdit( aSelGrp ); + QLabel* lab = new QLabel( tr( "GEOM_OBJECT" ), aMainGrp ); + mySelBtn = new QPushButton( aMainGrp ); + mySelBtn->setIcon( image1 ); + myEdit = new QLineEdit( aMainGrp ); myEdit->setReadOnly( true ); myEdit->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) ); myEdit->setMinimumWidth( MIN_WIDTH ); + QHBoxLayout* aMainLay = new QHBoxLayout( aMainGrp ); + aMainLay->setSpacing( SPACING ); + aMainLay->setMargin( MARGIN ); + aMainLay->addWidget( lab ); + aMainLay->addWidget( mySelBtn ); + aMainLay->addWidget( myEdit ); + QFrame* aFrame = new QFrame( this ); aFrame->setFrameStyle( QFrame::Box | QFrame::Sunken ); QPushButton* aCloseBtn = new QPushButton( tr( "GEOM_BUT_CLOSE" ), aFrame ); QPushButton* aHelpBtn = new QPushButton( tr( "GEOM_BUT_HELP" ), aFrame ); - QHBoxLayout* aBtnLay = new QHBoxLayout( aFrame, MARGIN, SPACING ); + + QHBoxLayout* aBtnLay = new QHBoxLayout( aFrame ); + aBtnLay->setSpacing( SPACING ); + aBtnLay->setMargin( MARGIN ); aBtnLay->addWidget( aCloseBtn ); - aBtnLay->addItem( new QSpacerItem( 0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum ) ); + aBtnLay->addSpacing( SPACING ); + aBtnLay->addStretch(); aBtnLay->addWidget( aHelpBtn ); QVBoxLayout* aLay = new QVBoxLayout( this ); aLay->setSpacing( SPACING ); aLay->setMargin( MARGIN ); aLay->addWidget( aMainGrp ); - aLay->addItem( new QSpacerItem( 0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum ) ); + aLay->addStretch(); aLay->addWidget( aFrame ); - //myHelpFileName = "files/salome2_sp3_measuregui_functions.htm#free_faces"; myHelpFileName = "using_measurement_tools_page.html#faces_anchor"; connect( aCloseBtn, SIGNAL( clicked() ), SLOT( onClose() ) ); - connect( aHelpBtn, SIGNAL( clicked() ), SLOT( onHelp() ) ); - connect( mySelBtn, SIGNAL( clicked() ), - this, SLOT ( onSetEditCurrentArgument() ) ); + connect( aHelpBtn, SIGNAL( clicked() ), SLOT( onHelp() ) ); + connect( mySelBtn, SIGNAL( clicked() ), + this, SLOT ( onSetEditCurrentArgument() ) ); /***************************************************************/ Init(); @@ -142,7 +147,7 @@ RepairGUI_FreeFacesDlg::~RepairGUI_FreeFacesDlg() void RepairGUI_FreeFacesDlg::onClose() { globalSelection(); - disconnect( ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), 0, this, 0 ); + disconnect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), 0, this, 0 ); myGeomGUI->SetActiveDialogBox( 0 ); reject(); erasePreview(); @@ -154,20 +159,22 @@ void RepairGUI_FreeFacesDlg::onClose() //================================================================================= void RepairGUI_FreeFacesDlg::onHelp() { - LightApp_Application* app = (LightApp_Application*)(SUIT_Session::session()->activeApplication()); - if (app) - app->onHelpContextModule(myGeomGUI ? app->moduleName(myGeomGUI->moduleName()) : QString(""), myHelpFileName); + LightApp_Application* app = (LightApp_Application*)( SUIT_Session::session()->activeApplication() ); + if ( app ) + app->onHelpContextModule( myGeomGUI ? app->moduleName( myGeomGUI->moduleName() ) : QString(""), myHelpFileName ); else { - QString platform; + QString platform; #ifdef WIN32 - platform = "winapplication"; + platform = "winapplication"; #else - platform = "application"; + platform = "application"; #endif - SUIT_MessageBox::warn1(0, QObject::tr("WRN_WARNING"), - QObject::tr("EXTERNAL_BROWSER_CANNOT_SHOW_PAGE"). - arg(app->resourceMgr()->stringValue("ExternalBrowser", platform)).arg(myHelpFileName), - QObject::tr("BUT_OK")); + SUIT_MessageBox::warning( this, + tr( "WRN_WARNING" ), + tr( "EXTERNAL_BROWSER_CANNOT_SHOW_PAGE" ). + arg( app->resourceMgr()->stringValue( "ExternalBrowser", + platform ) ). + arg( myHelpFileName ) ); } } @@ -177,9 +184,9 @@ void RepairGUI_FreeFacesDlg::onHelp() //================================================================================= void RepairGUI_FreeFacesDlg::onDeactivate() { - setEnabled(false); + setEnabled( false ); globalSelection(); - disconnect( ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), 0, this, 0 ); + disconnect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), 0, this, 0 ); myGeomGUI->SetActiveDialogBox( 0 ); } @@ -192,8 +199,8 @@ void RepairGUI_FreeFacesDlg::onActivate() myGeomGUI->EmitSignalDeactivateDialog(); setEnabled( true ); myGeomGUI->SetActiveDialogBox( this ); - connect( ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL( currentSelectionChanged() ), SLOT ( onSelectionDone() ) ); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), SLOT( onSelectionDone() ) ); activateSelection(); } @@ -207,7 +214,7 @@ void RepairGUI_FreeFacesDlg::Init() /* signals and slots connections */ connect( myGeomGUI, SIGNAL( SignalDeactivateActiveDialog() ), SLOT ( onDeactivate() ) ); - connect( ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), SIGNAL( currentSelectionChanged() ), SLOT ( onSelectionDone() ) ); activateSelection(); @@ -221,23 +228,25 @@ void RepairGUI_FreeFacesDlg::Init() void RepairGUI_FreeFacesDlg::onSelectionDone() { erasePreview(); - if( IObjectCount() != 1 ) - { + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if ( aSelList.Extent() != 1 ) { myEdit->setText( "" ); return; } Standard_Boolean isOk = Standard_False; GEOM::GEOM_Object_var anObj = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), isOk ); + GEOMBase::ConvertIOinGEOMObject( aSelList.First(), isOk ); - if ( !isOk || anObj->_is_nil() || !GEOMBase::IsShape( anObj ) ) - { + if ( !isOk || anObj->_is_nil() || !GEOMBase::IsShape( anObj ) ) { myEdit->setText( "" ); return; } - else - { + else { myObj = anObj; displayPreview( false, true, true, 3 ); } @@ -247,7 +256,7 @@ void RepairGUI_FreeFacesDlg::onSelectionDone() // function : enterEvent() // purpose : Mouse enter onto the dialog to activate it //================================================================================= -void RepairGUI_FreeFacesDlg::enterEvent(QEvent* e) +void RepairGUI_FreeFacesDlg::enterEvent( QEvent* ) { onActivate(); } @@ -268,7 +277,7 @@ void RepairGUI_FreeFacesDlg::activateSelection() // function : closeEvent() // purpose : //================================================================================= -void RepairGUI_FreeFacesDlg::closeEvent(QCloseEvent* e) +void RepairGUI_FreeFacesDlg::closeEvent( QCloseEvent* ) { onClose(); } @@ -286,7 +295,7 @@ GEOM::GEOM_IOperations_ptr RepairGUI_FreeFacesDlg::createOperation() // function : isValid // purpose : //================================================================================= -bool RepairGUI_FreeFacesDlg::isValid( QString& msg ) +bool RepairGUI_FreeFacesDlg::isValid( QString& ) { return !myObj->_is_nil() ; } @@ -303,12 +312,10 @@ bool RepairGUI_FreeFacesDlg::execute( ObjectList& objects ) TopoDS_Shape aSelShape; TopoDS_Shape aFace; TopTools_IndexedMapOfShape anIndices; - if ( !myObj->_is_nil() && GEOMBase::GetShape( myObj, aSelShape ) ) - { + if ( !myObj->_is_nil() && GEOMBase::GetShape( myObj, aSelShape ) ) { myEdit->setText( GEOMBase::GetName( myObj ) ); QString aMess; - if ( !isValid( aMess ) ) - { + if ( !isValid( aMess ) ) { erasePreview( true ); return false; } @@ -318,11 +325,9 @@ bool RepairGUI_FreeFacesDlg::execute( ObjectList& objects ) TopExp::MapShapes( aSelShape, anIndices); SALOME_Prs* aPrs = 0; - for ( int i = 0, n = aFaceLst->length(); i < n; i++ ) - { + for ( int i = 0, n = aFaceLst->length(); i < n; i++ ) { aFace = anIndices.FindKey( aFaceLst[i] ); - try - { + try { getDisplayer()->SetColor( Quantity_NOC_RED ); getDisplayer()->SetToActivate( false ); aPrs = !aFace.IsNull() ? getDisplayer()->BuildPrs( aFace ) : 0; @@ -369,9 +374,8 @@ void RepairGUI_FreeFacesDlg::keyPressEvent( QKeyEvent* e ) if ( e->isAccepted() ) return; - if ( e->key() == Key_F1 ) - { - e->accept(); - onHelp(); - } + if ( e->key() == Qt::Key_F1 ) { + e->accept(); + onHelp(); + } } diff --git a/src/RepairGUI/RepairGUI_FreeFacesDlg.h b/src/RepairGUI/RepairGUI_FreeFacesDlg.h index 582179b4d..8cd360721 100644 --- a/src/RepairGUI/RepairGUI_FreeFacesDlg.h +++ b/src/RepairGUI/RepairGUI_FreeFacesDlg.h @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,19 +17,17 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_FreeFacesDlg.h +// Author : Vladimir KLYACHIN, Open CASCADE S.A.S. (vladimir.klyachin@opencascade.com) // -// -// File : RepairGUI_FreeFacesDlg.h -// Author : VKN -// Module : GEOM +#ifndef REPAIRGUI_FREEFACESDLG_H +#define REPAIRGUI_FREEFACESDLG_H -#ifndef DIALOGBOX_FreeFaces_H -#define DIALOGBOX_FreeFaces_H - -#include -#include "GEOMBase_Helper.h" +#include +#include class GEOM_Displayer; class QPushButton; @@ -43,42 +41,41 @@ class GeometryGUI; class RepairGUI_FreeFacesDlg : public QDialog, public GEOMBase_Helper { - Q_OBJECT + Q_OBJECT public: - RepairGUI_FreeFacesDlg(GeometryGUI* GUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~RepairGUI_FreeFacesDlg(); - + RepairGUI_FreeFacesDlg( GeometryGUI*, QWidget* = 0, bool = false ); + ~RepairGUI_FreeFacesDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + private: - void Init(); - void enterEvent(QEvent* e); - void closeEvent(QCloseEvent* e); - void keyPressEvent(QKeyEvent* e); - void activateSelection(); - GEOM_Displayer* getDisplayer(); + void Init(); + void enterEvent( QEvent* ); + void closeEvent( QCloseEvent* ); + void keyPressEvent( QKeyEvent* ); + void activateSelection(); + GEOM_Displayer* getDisplayer(); private slots: - void onClose(); - void onHelp(); - void onDeactivate(); - void onActivate(); - void onSelectionDone(); - void onSetEditCurrentArgument(); + void onClose(); + void onHelp(); + void onDeactivate(); + void onActivate(); + void onSelectionDone(); + void onSetEditCurrentArgument(); private: - GEOM_Displayer* myDisplayer; - GEOM::GEOM_Object_var myObj; - QPushButton* mySelBtn; - QLineEdit* myEdit; - GeometryGUI* myGeomGUI; - QString myHelpFileName; + GEOM_Displayer* myDisplayer; + GEOM::GEOM_Object_var myObj; + QPushButton* mySelBtn; + QLineEdit* myEdit; + GeometryGUI* myGeomGUI; + QString myHelpFileName; }; -#endif // DIALOGBOX_FreeFaces_H +#endif // REPAIRGUI_FREEFACESDLG_H diff --git a/src/RepairGUI/RepairGUI_GlueDlg.cxx b/src/RepairGUI/RepairGUI_GlueDlg.cxx index d723e1e80..3425fc433 100644 --- a/src/RepairGUI/RepairGUI_GlueDlg.cxx +++ b/src/RepairGUI/RepairGUI_GlueDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,43 +17,37 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM RepairGUI : GUI for Geometry component +// File : RepairGUI_GlueDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : RepairGUI_GlueDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - -#include "OCCViewer_ViewModel.h" - #include "RepairGUI_GlueDlg.h" -#include "DlgRef_1Sel_Ext.h" -#include "GEOMImpl_Types.hxx" -#include "QtxDblSpinBox.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "SalomeApp_Study.h" -#include "SalomeApp_Tools.h" +#include +#include +#include +#include -#include "SUIT_Session.h" -#include "SUIT_MessageBox.h" -#include "SUIT_OverrideCursor.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include -#include "SALOME_ListIteratorOfListIO.hxx" +#include #include -#include -#include -#include -#include -#include - -using namespace std; - #define DEFAULT_TOLERANCE_VALUE 1e-07 //================================================================================= @@ -63,75 +57,75 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -RepairGUI_GlueDlg::RepairGUI_GlueDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) -: GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu), - myCurrConstrId( -1 ) +RepairGUI_GlueDlg::RepairGUI_GlueDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal ), + myCurrConstrId( -1 ) { - QPixmap image0 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_GLUE_FACES"))); - QPixmap image2 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_GLUE_FACES2"))); - QPixmap image1 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_GLUE_FACES" ) ) ); + QPixmap image2( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_GLUE_FACES2" ) )); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_GLUE_TITLE")); + setWindowTitle( tr( "GEOM_GLUE_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_GLUE_TITLE")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image2); - //RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_GLUE_TITLE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setIcon( image2 ); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_1Sel_Ext(this, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("GEOM_GLUE")); - GroupPoints->TextLabel1->setText(tr("GEOM_SELECTED_SHAPE")); - GroupPoints->PushButton1->setPixmap(image1); + GroupPoints = new DlgRef_1SelExt( centralWidget() ); + GroupPoints->GroupBox1->setTitle( tr( "GEOM_GLUE" ) ); + GroupPoints->TextLabel1->setText( tr( "GEOM_SELECTED_SHAPE" ) ); + GroupPoints->PushButton1->setIcon( image1 ); GroupPoints->LineEdit1->setReadOnly( true ); - int aWidth = GroupPoints->TextLabel1->sizeHint().width() + - GroupPoints->PushButton1->sizeHint().width() + - GroupPoints->getGroupBoxLayout()->spacing(); - - Layout1->addWidget(GroupPoints, 2, 0); - - QHBox* aHBox = new QHBox( GroupPoints->GroupBox1 ); - aHBox->setSpacing( 5 ); - - (new QLabel( tr( "GEOM_TOLERANCE" ), aHBox ))->setFixedWidth( aWidth ); - myTolEdt = new QtxDblSpinBox( 0, 100, 1e-7, aHBox ); - myTolEdt->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) ); - myTolEdt->setPrecision( 10 ); + QLabel* aTolLab = new QLabel( tr( "GEOM_TOLERANCE" ), GroupPoints->Box ); + myTolEdt = new SalomeApp_DoubleSpinBox( 0.0, 100.0, DEFAULT_TOLERANCE_VALUE, 7, 7, GroupPoints->Box ); myTolEdt->setValue( DEFAULT_TOLERANCE_VALUE ); - GroupPoints->getGroupBoxLayout()->addWidget( aHBox, 3, 0 ); + + QGridLayout* boxLayout = new QGridLayout( GroupPoints->Box ); + boxLayout->setMargin( 0 ); boxLayout->setSpacing( 6 ); + boxLayout->addWidget( aTolLab, 0, 0 ); + boxLayout->addWidget( myTolEdt, 0, 2 ); /***************************************************************/ - GroupPoints2 = new DlgRef_1Sel_Ext(this, "GroupPoints2"); - GroupPoints2->GroupBox1->setTitle(tr("GEOM_GLUE")); - GroupPoints2->TextLabel1->setText(tr("GEOM_SELECTED_SHAPE")); - GroupPoints2->PushButton1->setPixmap(image1); + GroupPoints2 = new DlgRef_1SelExt( centralWidget() ); + GroupPoints2->GroupBox1->setTitle( tr( "GEOM_GLUE" ) ); + GroupPoints2->TextLabel1->setText( tr( "GEOM_SELECTED_SHAPE" ) ); + GroupPoints2->PushButton1->setIcon( image1 ); GroupPoints2->LineEdit1->setReadOnly( true ); - Layout1->addWidget(GroupPoints2, 2, 0); - QGrid* aGrid = new QGrid( 2, Qt::Horizontal, GroupPoints2->GroupBox1 ); - aGrid->setSpacing( 5 ); - (new QLabel( tr( "GEOM_TOLERANCE" ), aGrid ))->setFixedWidth( aWidth );; - myTolEdt2 = new QtxDblSpinBox( 0, 100, 1e-7, aGrid ); - myTolEdt2->setPrecision( 10 ); + QLabel* aTolLab2 = new QLabel( tr( "GEOM_TOLERANCE" ), GroupPoints2->Box ); + myTolEdt2 = new SalomeApp_DoubleSpinBox( GroupPoints2->Box ); + initSpinBox( myTolEdt2, 0, 100, 1e-7, 7 ); myTolEdt2->setValue( DEFAULT_TOLERANCE_VALUE ); - myTolEdt2->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) ); - (new QLabel( tr( "GLUE_FACES" ), aGrid ))->setFixedWidth( aWidth );; - myDetectBtn = new QPushButton( tr( "GEOM_DETECT" ), aGrid ); - myDetectBtn->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) ); - mySubShapesChk = new QCheckBox( tr( "SELECT_FACES" ), aGrid ); - GroupPoints2->getGroupBoxLayout()->addWidget( aGrid, 3, 0 ); + + myDetectBtn = new QPushButton( tr( "GEOM_DETECT" ) + QString( " [%1]" ).arg( tr( "GLUE_FACES" ) ), + GroupPoints2->Box ); + mySubShapesChk = new QCheckBox( tr( "SELECT_FACES" ), GroupPoints2->Box ); + + boxLayout = new QGridLayout( GroupPoints2->Box ); + boxLayout->setMargin( 0 ); boxLayout->setSpacing( 6 ); + boxLayout->addWidget( aTolLab2, 0, 0 ); + boxLayout->addWidget( myTolEdt2, 0, 2 ); + boxLayout->addWidget( myDetectBtn, 1, 0, 1, 3 ); + boxLayout->addWidget( mySubShapesChk, 2, 0, 1, 3 ); + + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); + layout->addWidget( GroupPoints2 ); + /***************************************************************/ - setHelpFileName("glue_faces_operation_page.html"); + setHelpFileName( "glue_faces_operation_page.html" ); // Disable second way of gluing if OCC viewer is not active one - if (SUIT_Session::session()->activeApplication()->desktop()->activeWindow()->getViewManager()->getType() - != OCCViewer_Viewer::Type()) - RadioButton2->setEnabled(false); + if ( myGeomGUI->getApp()->desktop()->activeWindow()->getViewManager()->getType() + != OCCViewer_Viewer::Type() ) + mainFrame()->RadioButton2->setEnabled( false ); Init(); } @@ -160,27 +154,30 @@ void RepairGUI_GlueDlg::Init() //myGeomGUI->SetState( 0 ); //globalSelection( GEOM_COMPOUND ); + mainFrame()->GroupBoxPublish->show(); + /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + connect( buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect( buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( this, SIGNAL( constructorsClicked( int ) ), this, SLOT( ConstructorsClicked( int ) ) ); - connect(GroupPoints2->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints2->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPoints->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); + + connect( GroupPoints2->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPoints2->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); connect( myTolEdt2, SIGNAL( valueChanged( double ) ), this, SLOT( onTolerChanged( double ) ) ); connect( mySubShapesChk, SIGNAL( stateChanged( int ) ), this, SLOT( onSubShapesChk() ) ); - connect( ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument()) ); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); - connect(myDetectBtn, SIGNAL(clicked()), this, SLOT(onDetect())); + connect( myDetectBtn, SIGNAL( clicked() ), this, SLOT( onDetect() ) ); initName( tr( "GLUE_NEW_OBJ_NAME" ) ); - ConstructorsClicked(0); + ConstructorsClicked( 0 ); activateSelection(); updateButtonState(); @@ -196,58 +193,48 @@ void RepairGUI_GlueDlg::ConstructorsClicked( int constructorId ) if ( myCurrConstrId == constructorId ) return; - disconnect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), 0, this, 0); + disconnect( myGeomGUI->getApp()->selectionMgr(), 0, this, 0 ); - switch ( constructorId ) - { - case 0: - { - GroupPoints2->hide(); - resize( 0, 0 ); - GroupPoints->show(); - GroupPoints->LineEdit1->setText( "" ); - myEditCurrentArgument = GroupPoints->LineEdit1; - - if ( myCurrConstrId >= 0 ) // i.e. it is not initialisation - { - // copy tolerance from previous tolerance field - myTolEdt->setValue( myTolEdt2->value() ); - } - - break; - } - case 1: - { - GroupPoints->hide(); - resize(0, 0); - GroupPoints2->show(); - GroupPoints->LineEdit1->setText(""); - myEditCurrentArgument = GroupPoints2->LineEdit1; - - if ( myCurrConstrId >= 0 ) // i.e. it is not initialisation - { - // copy tolerance from previous tolerance field - myTolEdt2->setValue( myTolEdt->value() ); - mySubShapesChk->setChecked( false ); - clearTemporary(); - } - - break; - } - } + switch ( constructorId ) { + case 0: + GroupPoints2->hide(); + GroupPoints->show(); + GroupPoints->LineEdit1->setText( "" ); + myEditCurrentArgument = GroupPoints->LineEdit1; - myCurrConstrId = constructorId; + if ( myCurrConstrId >= 0 ) { + // i.e. it is not initialisation + // copy tolerance from previous tolerance field + myTolEdt->setValue( myTolEdt2->value() ); + } + break; + case 1: + GroupPoints->hide(); + GroupPoints2->show(); + GroupPoints->LineEdit1->setText( "" ); + myEditCurrentArgument = GroupPoints2->LineEdit1; + + if ( myCurrConstrId >= 0 ) { + // i.e. it is not initialisation + // copy tolerance from previous tolerance field + myTolEdt2->setValue( myTolEdt->value() ); + mySubShapesChk->setChecked( false ); + clearTemporary(); + } + break; + } + + myCurrConstrId = constructorId; myEditCurrentArgument->setFocus(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); qApp->processEvents(); updateGeometry(); - QSize aSize = minimumSizeHint(); - resize( width(), aSize.height() ); - + resize( minimumSizeHint() ); + displayPreview(); updateButtonState(); activateSelection(); @@ -300,11 +287,15 @@ void RepairGUI_GlueDlg::SelectionIntoArgument() } erasePreview(); - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); myObject = GEOM::GEOM_Object::_nil(); - if ( IObjectCount() == 1 ) { - Handle(SALOME_InteractiveObject) anIO = firstIObject(); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if ( aSelList.Extent() == 1 ) { + Handle(SALOME_InteractiveObject) anIO = aSelList.First(); Standard_Boolean aRes; myObject = GEOMBase::ConvertIOinGEOMObject( anIO, aRes ); if ( aRes ) @@ -334,11 +325,11 @@ void RepairGUI_GlueDlg::SetEditCurrentArgument() void RepairGUI_GlueDlg::LineEditReturnPressed() { const QObject* send = sender(); - if( send == GroupPoints->LineEdit1 ) { + if ( send == GroupPoints->LineEdit1 ) { myEditCurrentArgument = GroupPoints->LineEdit1; GEOMBase_Skeleton::LineEditReturnPressed(); } - else if( send == GroupPoints2->LineEdit1 ) { + else if ( send == GroupPoints2->LineEdit1 ) { myEditCurrentArgument = GroupPoints2->LineEdit1; GEOMBase_Skeleton::LineEditReturnPressed(); } @@ -352,8 +343,8 @@ void RepairGUI_GlueDlg::LineEditReturnPressed() void RepairGUI_GlueDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); //GroupPoints->LineEdit1->setText(""); //GroupPoints2->LineEdit1->setText(""); @@ -369,22 +360,12 @@ void RepairGUI_GlueDlg::ActivateThisDialog() // function : enterEvent() // purpose : Mouse enter onto the dialog to activate it //================================================================================= -void RepairGUI_GlueDlg::enterEvent(QEvent* e) +void RepairGUI_GlueDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } -//================================================================================= -// function : closeEvent() -// purpose : -//================================================================================= -void RepairGUI_GlueDlg::closeEvent(QCloseEvent* e) -{ - //myGeomGUI->SetState( -1 ); - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : createOperation @@ -401,7 +382,20 @@ GEOM::GEOM_IOperations_ptr RepairGUI_GlueDlg::createOperation() //================================================================================= bool RepairGUI_GlueDlg::isValid( QString& msg ) { - return !myObject->_is_nil() && ( IsPreview() || myTolEdt->value() > 0. ); + bool ok = true; + double v = 0; + switch ( getConstructorId() ) + { + case 0: + v = myTolEdt->value(); + ok = myTolEdt->isValid( msg, !IsPreview() ); + break; + case 1: + v = myTolEdt2->value(); + ok = myTolEdt2->isValid( msg, !IsPreview() ); + break; + } + return !myObject->_is_nil() && ( IsPreview() || v > 0. ) && ok; } //================================================================================= @@ -413,24 +407,28 @@ bool RepairGUI_GlueDlg::execute( ObjectList& objects ) bool aResult = false; objects.clear(); - switch ( getConstructorId() ) - { + switch ( getConstructorId() ) { case 0: { GEOM::GEOM_Object_var anObj = GEOM::GEOM_IShapesOperations::_narrow - ( getOperation() )->MakeGlueFaces( myObject, myTolEdt2->value(), true ); + ( getOperation() )->MakeGlueFaces( myObject, myTolEdt->value(), true ); aResult = !anObj->_is_nil(); - if ( aResult ) + if ( aResult && !IsPreview() ) + { + QStringList aParameters; + aParameters << myTolEdt->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + objects.push_back( anObj._retn() ); + } break; } case 1: { - if ( IsPreview() ) - { + if ( IsPreview() ) { // if this method is used for displaying preview then we must detect glue faces only ObjectList::iterator anIter; - for (anIter = myTmpObjs.begin(); anIter != myTmpObjs.end(); ++anIter) + for ( anIter = myTmpObjs.begin(); anIter != myTmpObjs.end(); ++anIter ) objects.push_back( GEOM::GEOM_Object::_duplicate( *anIter ) ); return myTmpObjs.size() ? true : false; } // IsPreview @@ -440,20 +438,23 @@ bool RepairGUI_GlueDlg::execute( ObjectList& objects ) QMap selected; // Get names of selected objects - SALOME_ListIteratorOfListIO it ( selectedIO() ); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + SALOME_ListIteratorOfListIO it (aSelList); for (; it.More(); it.Next()) - selected.insert( it.Value()->getName(), 0 ); + selected.insert(it.Value()->getName(), 0); // Iterate through result and select objects with names from selection // ObjectList toRemoveFromEnggine; ObjectList toGlue; ObjectList::iterator anIter; - for (anIter = myTmpObjs.begin(); anIter != myTmpObjs.end(); ++anIter) - { + for ( anIter = myTmpObjs.begin(); anIter != myTmpObjs.end(); ++anIter ) { if ( selected.contains( myGeomGUI->getApp()->orb()->object_to_string(*anIter) ) ) - toGlue.push_back(*anIter); + toGlue.push_back( *anIter ); } - + // make glue faces GEOM::ListOfGO_var aListForGlue = new GEOM::ListOfGO(); aListForGlue->length( toGlue.size() ); @@ -466,7 +467,15 @@ bool RepairGUI_GlueDlg::execute( ObjectList& objects ) aResult = !anObj->_is_nil(); if ( aResult ) + { + if ( !IsPreview() ) + { + QStringList aParameters; + aParameters << myTolEdt2->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } objects.push_back( anObj._retn() ); + } // Remove from engine useless objects clearTemporary(); @@ -480,6 +489,23 @@ bool RepairGUI_GlueDlg::execute( ObjectList& objects ) return aResult; } +//================================================================================= +// function : restoreSubShapes +// purpose : +//================================================================================= +void RepairGUI_GlueDlg::restoreSubShapes( SALOMEDS::Study_ptr theStudy, + SALOMEDS::SObject_ptr theSObject ) +{ + if ( mainFrame()->CheckBoxRestoreSS->isChecked() ) { + GEOM::find_shape_method aFindMethod = GEOM::FSM_GetInPlace; + if ( getConstructorId() == 0 ) // MakeGlueFaces + aFindMethod = GEOM::FSM_GetInPlaceByHistory; + + // empty list of arguments means that all arguments should be restored + getGeomEngine()->RestoreSubShapesSO( theStudy, theSObject, GEOM::ListOfGO(), + aFindMethod, /*theInheritFirstArg=*/true ); + } +} //================================================================ // Function : clearShapeBufferLocal @@ -498,7 +524,7 @@ void RepairGUI_GlueDlg::clearShapeBufferLocal( GEOM::GEOM_Object_ptr theObj ) return; _PTR(Study) aStudy = getStudy()->studyDS(); - _PTR(SObject) aSObj ( aStudy->FindObjectIOR( string( IOR.in() ) ) ); + _PTR(SObject) aSObj ( aStudy->FindObjectIOR( std::string( IOR.in() ) ) ); if ( !aSObj ) return; @@ -527,91 +553,72 @@ bool RepairGUI_GlueDlg::onAcceptLocal() _PTR(Study) aStudy = getStudy()->studyDS(); bool aLocked = aStudy->GetProperties()->IsLocked(); - if ( aLocked ) - { + if ( aLocked ) { MESSAGE("GEOMBase_Helper::onAccept - ActiveStudy is locked"); - SUIT_MessageBox::warn1 ( (QWidget*)(SUIT_Session::session()->activeApplication()->desktop()), - QObject::tr("WRN_WARNING"), QObject::tr("WRN_STUDY_LOCKED"), QObject::tr("BUT_OK") ); + SUIT_MessageBox::warning( this, tr( "WRN_WARNING" ), tr( "WRN_STUDY_LOCKED" ), tr( "BUT_OK" ) ); return false; } QString msg; - if ( !isValid( msg ) ) - { + if ( !isValid( msg ) ) { showError( msg ); return false; } erasePreview( false ); - try - { - if ( openCommand() ) - { + try { + if ( openCommand() ) { SUIT_OverrideCursor wc; - - SUIT_Session::session()->activeApplication()->putInfo( "" ); + + myGeomGUI->getApp()->putInfo( "" ); ObjectList objects; - if ( !execute( objects ) ) - { + if ( !execute( objects ) ) { wc.suspend(); abortCommand(); showError(); } - else - { + else { const int nbObjs = objects.size(); - bool withChildren = false; - for ( ObjectList::iterator it = objects.begin(); it != objects.end(); ++it ) - { - QString aName(""); - if ( nbObjs > 1 ) - { - aName = strlen( getNewObjectName() ) ? GEOMBase::GetDefaultName( getNewObjectName() ) : GEOMBase::GetDefaultName( getPrefix( *it ) ); + for ( ObjectList::iterator it = objects.begin(); it != objects.end(); ++it ) { + QString aName = getNewObjectName(); + if ( nbObjs > 1 ) { + if ( aName.isEmpty() ) + aName = getPrefix( *it ); + aName = GEOMBase::GetDefaultName( aName ); } - else - { - aName = getNewObjectName(); + else { // PAL6521: use a prefix, if some dialog box doesn't reimplement getNewObjectName() if ( aName.isEmpty() ) aName = GEOMBase::GetDefaultName( getPrefix( *it ) ); } - addInStudy( *it, aName.latin1() ); - withChildren = false; + addInStudy( *it, aName.toLatin1().data() ); display( *it, false ); } - - if ( nbObjs ) - { + + if ( nbObjs ) { commitCommand(); updateObjBrowser(); - SUIT_Session::session()->activeApplication()->putInfo( QObject::tr("GEOM_PRP_DONE") ); + myGeomGUI->getApp()->putInfo( QObject::tr("GEOM_PRP_DONE") ); } - else - { + else { abortCommand(); } // JFA 28.12.2004 BEGIN // To enable warnings - if ( !getOperation()->_is_nil() ) - { - if ( !getOperation()->IsDone() ) - { + if ( !getOperation()->_is_nil() ) { + if ( !getOperation()->IsDone() ) { wc.suspend(); QString msgw = QObject::tr( getOperation()->GetErrorCode() ); - SUIT_MessageBox::warn1((QWidget*)(SUIT_Session::session()->activeApplication()->desktop()), - QObject::tr( "WRN_WARNING" ), - msgw, - QObject::tr( "BUT_OK" )); + SUIT_MessageBox::warning( this, tr( "WRN_WARNING" ), msgw, tr( "BUT_OK" ) ); } } // JFA 28.12.2004 END } } } - catch( const SALOME::SALOME_Exception& e ) - { + catch( const SALOME::SALOME_Exception& e ) { SalomeApp_Tools::QtCatchCorbaException( e ); abortCommand(); } @@ -637,25 +644,27 @@ void RepairGUI_GlueDlg::onDetect() return; } + buttonOk()->setEnabled( false ); + buttonApply()->setEnabled( false ); + globalSelection( GEOM_ALLSHAPES ); + GEOM::ListOfGO_var aList = GEOM::GEOM_IShapesOperations::_narrow ( getOperation() )->GetGlueFaces( myObject, myTolEdt2->value() ); - for (int i = 0, n = aList->length(); i < n; i++) + for ( int i = 0, n = aList->length(); i < n; i++ ) myTmpObjs.push_back(GEOM::GEOM_Object::_duplicate(aList[i])); - if ( myTmpObjs.size() > 0 ) - { + if ( myTmpObjs.size() > 0 ) { msg = tr( "FACES_FOR_GLUING_ARE_DETECTED" ).arg( myTmpObjs.size() ); mySubShapesChk->setChecked( true ); } - else - { + else { msg = tr( "THERE_ARE_NO_FACES_FOR_GLUING" ); } - connect( ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument()) ) ; - SUIT_MessageBox::info1( this, tr( "GEOM_FREE_BOUNDS_TLT" ), msg, "Close" ); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ) ; + SUIT_MessageBox::information( this, tr( "GEOM_FREE_BOUNDS_TLT" ), msg, tr( "Close" ) ); updateButtonState(); activateSelection(); } @@ -666,33 +675,32 @@ void RepairGUI_GlueDlg::onDetect() //================================================================================= void RepairGUI_GlueDlg::activateSelection() { - erasePreview(false); + erasePreview( false ); int anId = getConstructorId(); - if ( anId == 0 ) // Case of whole gluing - { - disconnect( ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument()) ) ; + if ( anId == 0 ) { + // Case of whole gluing + disconnect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); globalSelection( GEOM_ALLSHAPES ); - if (myObject->_is_nil()) + if ( myObject->_is_nil()) SelectionIntoArgument(); - connect( ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument()) ) ; + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); } - else // Second case of gluing - { + else { + // Second case of gluing if ( !mySubShapesChk->isChecked() ) globalSelection( GEOM_ALLSHAPES ); - else - { + else { displayPreview( true, false, false, 2/*line width*/, 1/*display mode*/, Quantity_NOC_RED ); - disconnect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument()) ) ; + disconnect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ) ; globalSelection( GEOM_PREVIEW ); - connect( ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument()) ) ; + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ) ; } } updateViewer(); @@ -706,20 +714,23 @@ void RepairGUI_GlueDlg::updateButtonState() { int anId = getConstructorId(); bool hasMainObj = !myObject->_is_nil(); - if ( anId == 0 ) - { - buttonOk->setEnabled( hasMainObj ); - buttonApply->setEnabled( hasMainObj ); + if ( anId == 0 ) { + buttonOk()->setEnabled( hasMainObj ); + buttonApply()->setEnabled( hasMainObj ); } else { + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + bool wasSelected = false; - SALOME_ListIteratorOfListIO it ( selectedIO() ); + SALOME_ListIteratorOfListIO it (aSelList); if (it.More() > 0) wasSelected = true; bool wasDetected = myTmpObjs.size() ? true : false; - buttonOk->setEnabled( hasMainObj && wasDetected && wasSelected); - buttonApply->setEnabled( hasMainObj && wasDetected && wasSelected); + buttonOk()->setEnabled( hasMainObj && wasDetected && wasSelected ); + buttonApply()->setEnabled( hasMainObj && wasDetected && wasSelected ); mySubShapesChk->setEnabled( hasMainObj && wasDetected ); myDetectBtn->setEnabled( hasMainObj ); if ( !hasMainObj || !wasDetected ) @@ -734,7 +745,7 @@ void RepairGUI_GlueDlg::updateButtonState() void RepairGUI_GlueDlg::clearTemporary() { ObjectList::iterator anIter; - for (anIter = myTmpObjs.begin(); anIter != myTmpObjs.end(); ++anIter) + for ( anIter = myTmpObjs.begin(); anIter != myTmpObjs.end(); ++anIter ) getGeomEngine()->RemoveObject(*anIter); myTmpObjs.clear(); @@ -772,42 +783,3 @@ void RepairGUI_GlueDlg::ClickOnCancel() clearTemporary(); GEOMBase_Skeleton::ClickOnCancel(); } - -//================================================================ -// Function : getEntry -// Purpose : -//================================================================ -static string getEntry( GEOM::GEOM_Object_ptr object ) -{ - SUIT_Session* session = SUIT_Session::session(); - SalomeApp_Application* app = dynamic_cast( session->activeApplication() ); - if ( app ) - { - string IOR = app->orb()->object_to_string( object ); - if ( IOR != "" ) - { - SalomeApp_Study* study = ( SalomeApp_Study* )app->activeStudy(); - _PTR(SObject) SO ( study->studyDS()->FindObjectIOR( IOR ) ); - if ( SO ) - return SO->GetID(); - } - } - return ""; -} - - - - - - - - - - - - - - - - - diff --git a/src/RepairGUI/RepairGUI_GlueDlg.h b/src/RepairGUI/RepairGUI_GlueDlg.h index eef24c2ca..8d838ab85 100644 --- a/src/RepairGUI/RepairGUI_GlueDlg.h +++ b/src/RepairGUI/RepairGUI_GlueDlg.h @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,21 +17,20 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_GlueDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : RepairGUI_GlueDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +#ifndef REPAIRGUI_GLUEDLG_H +#define REPAIRGUI_GLUEDLG_H -#ifndef DIALOGBOX_Glue_H -#define DIALOGBOX_Glue_H +#include -#include "GEOMBase_Skeleton.h" - -class QtxDblSpinBox; -class DlgRef_1Sel_Ext; +class DlgRef_1SelExt; +class SalomeApp_DoubleSpinBox; +class QPushButton; class QCheckBox; //================================================================================= @@ -40,68 +39,66 @@ class QCheckBox; //================================================================================= class RepairGUI_GlueDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - RepairGUI_GlueDlg( GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0 ); - ~RepairGUI_GlueDlg(); + RepairGUI_GlueDlg( GeometryGUI*, QWidget* = 0, bool = false ); + ~RepairGUI_GlueDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void restoreSubShapes( SALOMEDS::Study_ptr, SALOMEDS::SObject_ptr ); private: - void Init(); - void enterEvent(QEvent* e); - void closeEvent(QCloseEvent* e); - void initSelection(); - - void clearTemporary(); - - bool onAcceptLocal(); - void clearShapeBufferLocal( GEOM::GEOM_Object_ptr ); - // Reimplementation of onAccept for local case of this class. - - void activateSelection(); - void updateButtonState(); - void selectTmpInViewer(); + void Init(); + void enterEvent( QEvent* ); + void initSelection(); + + void clearTemporary(); + + bool onAcceptLocal(); + void clearShapeBufferLocal( GEOM::GEOM_Object_ptr ); + // Reimplementation of onAccept for local case of this class. + + void activateSelection(); + void updateButtonState(); + void selectTmpInViewer(); private: - - GEOM::GEOM_Object_var myObject; - ObjectList myTmpObjs; + GEOM::GEOM_Object_var myObject; + ObjectList myTmpObjs; - DlgRef_1Sel_Ext* GroupPoints; - DlgRef_1Sel_Ext* GroupPoints2; - QtxDblSpinBox* myTolEdt; - QtxDblSpinBox* myTolEdt2; - QPushButton* myDetectBtn; - QCheckBox* mySubShapesChk; - - int myCurrConstrId; + DlgRef_1SelExt* GroupPoints; + DlgRef_1SelExt* GroupPoints2; + SalomeApp_DoubleSpinBox* myTolEdt; + SalomeApp_DoubleSpinBox* myTolEdt2; + QPushButton* myDetectBtn; + QCheckBox* mySubShapesChk; + + int myCurrConstrId; protected slots: - virtual void ClickOnCancel(); + virtual void ClickOnCancel(); private slots: - void ClickOnOk(); - bool ClickOnApply(); + void ClickOnOk(); + bool ClickOnApply(); - void ActivateThisDialog(); + void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); - void ConstructorsClicked(int); - //void ValueChangedInSpinBox(); - - void onDetect(); - void onTolerChanged( double ); - void onSubShapesChk(); + void ConstructorsClicked( int ); + //void ValueChangedInSpinBox(); + + void onDetect(); + void onTolerChanged( double ); + void onSubShapesChk(); }; -#endif // DIALOGBOX_Glue_H +#endif // REPAIRGUI_GLUEDLG_H diff --git a/src/RepairGUI/RepairGUI_RemoveExtraEdgesDlg.cxx b/src/RepairGUI/RepairGUI_RemoveExtraEdgesDlg.cxx index 930fb95c4..850926fe6 100644 --- a/src/RepairGUI/RepairGUI_RemoveExtraEdgesDlg.cxx +++ b/src/RepairGUI/RepairGUI_RemoveExtraEdgesDlg.cxx @@ -1,36 +1,43 @@ -// -// 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-2008 CEA/DEN, EDF R&D, OPEN CASCADE // +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// 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 +// +// GEOM RepairGUI : GUI for Geometry component // File : RepairGUI_RemoveExtraEdgesDlg.cxx -// Author : Michael Zorin -// Module : GEOM -// $Header: - +// Author : Michael Zorin, Open CASCADE S.A.S. +// #include "RepairGUI_RemoveExtraEdgesDlg.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "SUIT_Session.h" +#include +#include +#include -#include "GEOMImpl_Types.hxx" +#include +#include +#include +#include + +#include #include -#include - -using namespace std; - //================================================================================= // class : RepairGUI_RemoveExtraEdgesDlg() // purpose : Constructs a RepairGUI_RemoveExtraEdgesDlg which is a child of 'parent', with the @@ -38,32 +45,37 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -RepairGUI_RemoveExtraEdgesDlg::RepairGUI_RemoveExtraEdgesDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +RepairGUI_RemoveExtraEdgesDlg::RepairGUI_RemoveExtraEdgesDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_REMOVE_EXTRA_EDGES"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + SUIT_ResourceMgr* aResMgr = SUIT_Session::session()->resourceMgr(); + QPixmap image0( aResMgr->loadPixmap( "GEOM", tr( "ICON_DLG_REMOVE_EXTRA_EDGES" ) ) ); + QPixmap image1( aResMgr->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_REMOVE_EXTRA_EDGES_TITLE")); + setWindowTitle( tr( "GEOM_REMOVE_EXTRA_EDGES_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_REMOVE_EXTRA_EDGES_TITLE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_REMOVE_EXTRA_EDGES_TITLE")); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_1Sel_QTD(this, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("GEOM_REMOVE_EXTRA_EDGES")); - GroupPoints->TextLabel1->setText(tr("GEOM_SELECTED_SHAPE")); - GroupPoints->PushButton1->setPixmap(image1); + GroupPoints = new DlgRef_1Sel( centralWidget() ); + GroupPoints->GroupBox1->setTitle( tr( "GEOM_REMOVE_EXTRA_EDGES" ) ); + GroupPoints->TextLabel1->setText( tr( "GEOM_SELECTED_SHAPE" ) ); + GroupPoints->PushButton1->setIcon( image1 ); GroupPoints->LineEdit1->setReadOnly( true ); - Layout1->addWidget(GroupPoints, 2, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); + /***************************************************************/ - setHelpFileName("remove_extra_edges_operation_page.html"); + setHelpFileName( "remove_extra_edges_operation_page.html" ); Init(); } @@ -91,15 +103,17 @@ void RepairGUI_RemoveExtraEdgesDlg::Init() activateSelection(); + mainFrame()->GroupBoxPublish->show(); + /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPoints->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); initName( tr( "REMOVE_EXTRA_EDGES_NEW_OBJ_NAME" ) ); } @@ -126,9 +140,11 @@ bool RepairGUI_RemoveExtraEdgesDlg::ClickOnApply() initName(); - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); myObject = GEOM::GEOM_Object::_nil(); + myOkObject = false; + activateSelection(); return true; @@ -142,12 +158,16 @@ bool RepairGUI_RemoveExtraEdgesDlg::ClickOnApply() //================================================================================= void RepairGUI_RemoveExtraEdgesDlg::SelectionIntoArgument() { - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); QString aName; - if(myEditCurrentArgument == GroupPoints->LineEdit1) { - if (IObjectCount() != 1) { - if (myEditCurrentArgument == GroupPoints->LineEdit1) + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) { + if ( aSelList.Extent() != 1 ) { + if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) myOkObject = false; return; } @@ -156,12 +176,12 @@ void RepairGUI_RemoveExtraEdgesDlg::SelectionIntoArgument() // nbSel == 1 Standard_Boolean testResult = Standard_False; GEOM::GEOM_Object_ptr aSelectedObject = - GEOMBase::ConvertIOinGEOMObject( firstIObject(), testResult ); + GEOMBase::ConvertIOinGEOMObject( aSelList.First(), testResult ); - if (!testResult) + if ( !testResult ) return; - if (myEditCurrentArgument == GroupPoints->LineEdit1) { + if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) { myObject = aSelectedObject; myOkObject = true; } @@ -175,8 +195,7 @@ void RepairGUI_RemoveExtraEdgesDlg::SelectionIntoArgument() //================================================================================= void RepairGUI_RemoveExtraEdgesDlg::SetEditCurrentArgument() { - if( sender() == GroupPoints->PushButton1 ) - { + if( sender() == GroupPoints->PushButton1 ) { GroupPoints->LineEdit1->setFocus(); myEditCurrentArgument = GroupPoints->LineEdit1; } @@ -190,8 +209,7 @@ void RepairGUI_RemoveExtraEdgesDlg::SetEditCurrentArgument() //================================================================================= void RepairGUI_RemoveExtraEdgesDlg::LineEditReturnPressed() { - if( sender() == GroupPoints->LineEdit1 ) - { + if ( sender() == GroupPoints->LineEdit1 ) { myEditCurrentArgument = GroupPoints->LineEdit1; GEOMBase_Skeleton::LineEditReturnPressed(); } @@ -205,8 +223,8 @@ void RepairGUI_RemoveExtraEdgesDlg::LineEditReturnPressed() void RepairGUI_RemoveExtraEdgesDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); activateSelection(); } @@ -218,20 +236,11 @@ void RepairGUI_RemoveExtraEdgesDlg::ActivateThisDialog() //================================================================================= void RepairGUI_RemoveExtraEdgesDlg::enterEvent(QEvent* e) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } -//================================================================================= -// function : closeEvent() -// purpose : -//================================================================================= -void RepairGUI_RemoveExtraEdgesDlg::closeEvent(QCloseEvent* e) -{ - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : activateSelection // purpose : activate selection of solids and compounds @@ -270,10 +279,25 @@ bool RepairGUI_RemoveExtraEdgesDlg::execute( ObjectList& objects ) { GEOM::GEOM_Object_var anObj; - anObj = GEOM::GEOM_IBlocksOperations::_narrow(getOperation())->RemoveExtraEdges(myObject); + anObj = GEOM::GEOM_IBlocksOperations::_narrow( getOperation() )->RemoveExtraEdges( myObject ); if ( !anObj->_is_nil() ) objects.push_back( anObj._retn() ); return true; } + +//================================================================================= +// function : restoreSubShapes +// purpose : +//================================================================================= +void RepairGUI_RemoveExtraEdgesDlg::restoreSubShapes( SALOMEDS::Study_ptr theStudy, + SALOMEDS::SObject_ptr theSObject ) +{ + if ( mainFrame()->CheckBoxRestoreSS->isChecked() ) { + // empty list of arguments means that all arguments should be restored + getGeomEngine()->RestoreSubShapesSO( theStudy, theSObject, GEOM::ListOfGO(), + /*theFindMethod=*/GEOM::FSM_GetInPlace, // ? GetInPlaceByHistory + /*theInheritFirstArg=*/true ); + } +} diff --git a/src/RepairGUI/RepairGUI_RemoveExtraEdgesDlg.h b/src/RepairGUI/RepairGUI_RemoveExtraEdgesDlg.h index 41c881eec..ffc49ce26 100644 --- a/src/RepairGUI/RepairGUI_RemoveExtraEdgesDlg.h +++ b/src/RepairGUI/RepairGUI_RemoveExtraEdgesDlg.h @@ -1,35 +1,34 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component // File : RepairGUI_RemoveExtraEdgesDlg.h -// Author : Michael ZORIN -// Module : GEOM +// Author : Michael ZORIN, Open CASCADE S.A.S. +// +#ifndef REPAIRGUI_REMOVEEXTRAEDGESDLG_H +#define REPAIRGUI_REMOVEEXTRAEDGESDLG_H -#ifndef DIALOGBOX_REMOVEEXTRAEDGES_H -#define DIALOGBOX_REMOVEEXTRAEDGES_H +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel_QTD.h" +class DlgRef_1Sel; //================================================================================= // class : RepairGUI_RemoveExtraEdgesDlg @@ -37,41 +36,39 @@ //================================================================================= class RepairGUI_RemoveExtraEdgesDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - RepairGUI_RemoveExtraEdgesDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~RepairGUI_RemoveExtraEdgesDlg(); + RepairGUI_RemoveExtraEdgesDlg( GeometryGUI*, QWidget* = 0, bool = false ); + ~RepairGUI_RemoveExtraEdgesDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void restoreSubShapes( SALOMEDS::Study_ptr, SALOMEDS::SObject_ptr ); -private : - void Init(); - void enterEvent(QEvent* e); - void closeEvent(QCloseEvent* e); +private: + void Init(); + void enterEvent( QEvent* ); + void activateSelection(); - void activateSelection(); - - GEOM::GEOM_Object_var myObject; - bool myOkObject; - - DlgRef_1Sel_QTD* GroupPoints; +private: + GEOM::GEOM_Object_var myObject; + bool myOkObject; + DlgRef_1Sel* GroupPoints; private slots: - void ClickOnOk(); - bool ClickOnApply(); + void ClickOnOk(); + bool ClickOnApply(); - void ActivateThisDialog(); + void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); }; -#endif // DIALOGBOX_REMOVEEXTRAEDGES_H +#endif // REPAIRGUI_REMOVEEXTRAEDGESDLG_H diff --git a/src/RepairGUI/RepairGUI_RemoveHolesDlg.cxx b/src/RepairGUI/RepairGUI_RemoveHolesDlg.cxx index 44b22b5ef..3ef74ca4a 100644 --- a/src/RepairGUI/RepairGUI_RemoveHolesDlg.cxx +++ b/src/RepairGUI/RepairGUI_RemoveHolesDlg.cxx @@ -1,46 +1,46 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_RemoveHolesDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : RepairGUI_RemoveHolesDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "RepairGUI_RemoveHolesDlg.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "SUIT_MessageBox.h" -#include "SUIT_Session.h" +#include +#include +#include -#include "SALOME_ListIteratorOfListIO.hxx" - -#include "GEOMImpl_Types.hxx" +#include +#include +#include +#include +#include +// OCCT Includes #include #include +#include -using namespace std; +#include //================================================================================= // class : RepairGUI_RemoveHolesDlg() @@ -49,60 +49,42 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -RepairGUI_RemoveHolesDlg::RepairGUI_RemoveHolesDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +RepairGUI_RemoveHolesDlg::RepairGUI_RemoveHolesDlg (GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_SUPPRESS_HOLES"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_SUPPRESS_HOLES"))); + QPixmap image1 (SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_REMOVE_HOLES_TITLE")); + setWindowTitle(tr("GEOM_REMOVE_HOLES_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_REMOVE_HOLES_TITLE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_REMOVE_HOLES_TITLE")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_1Sel_Ext(this, "GroupPoints"); + GroupPoints = new DlgRef_1Sel1Check1Sel(centralWidget()); GroupPoints->GroupBox1->setTitle(tr("GEOM_HOLES")); GroupPoints->TextLabel1->setText(tr("GEOM_SELECTED_SHAPE")); - GroupPoints->PushButton1->setPixmap(image1); - GroupPoints->LineEdit1->setReadOnly( true ); + GroupPoints->PushButton1->setIcon(image1); + GroupPoints->LineEdit1->setReadOnly(true); + GroupPoints->CheckButton1->setText(tr("GEOM_REMOVE_ALL_HOLES")); + GroupPoints->TextLabel2->setText(tr("GEOM_WIRES_TO_REMOVE")); + GroupPoints->PushButton2->setIcon(image1); + GroupPoints->LineEdit2->setReadOnly(true); - Layout1->addWidget(GroupPoints, 2, 0); + myFreeBoundBtn = new QPushButton(tr("GEOM_DETECT") + QString(" [%1]").arg(tr("GEOM_FREE_BOUNDARIES")), + GroupPoints->Box); + QVBoxLayout* l = new QVBoxLayout(GroupPoints->Box); + l->setMargin(0); l->setSpacing(0); + l->addWidget(myFreeBoundBtn); - myAllChk = new QCheckBox( tr( "GEOM_REMOVE_ALL_HOLES" ), GroupPoints->GroupBox1 ); - - QGridLayout* aSelectWiresLay = new QGridLayout( 0, 1, 1, 0, 6, "aSelectWiresLay"); - - mySelectWiresBtn = new QPushButton( GroupPoints->GroupBox1, "mySelectWiresBtn" ); - mySelectWiresBtn->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, mySelectWiresBtn->sizePolicy().hasHeightForWidth() ) ); - mySelectWiresBtn->setText( trUtf8( "" ) ); - mySelectWiresBtn->setPixmap(image1); - - mySelectWiresEdt = new QLineEdit( GroupPoints->GroupBox1, "mySelectWiresEdt" ); - mySelectWiresEdt->setReadOnly( true ); - - mySelectWiresLbl = new QLabel( tr( "GEOM_WIRES_TO_REMOVE" ), GroupPoints->GroupBox1, "TextLabel1" ); - mySelectWiresLbl->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, mySelectWiresLbl->sizePolicy().hasHeightForWidth() ) ); - - aSelectWiresLay->addWidget( mySelectWiresLbl, 0, 0 ); - aSelectWiresLay->addWidget( mySelectWiresBtn, 0, 1 ); - aSelectWiresLay->addWidget( mySelectWiresEdt, 0, 2 ); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - aSelectWiresLay->addItem( spacer, 1, 2 ); - - QGridLayout* aDetectLay = new QGridLayout( 0, 1, 1, 0, 6, "aDetectLay" ); - myFreeBoundBtn = new QPushButton( tr( "GEOM_DETECT" ), GroupPoints->GroupBox1 ); - QLabel* aLbl = new QLabel( tr( "GEOM_FREE_BOUNDARIES" ), GroupPoints->GroupBox1 ); - aDetectLay->addWidget( aLbl, 0, 0 ); - aDetectLay->addWidget( myFreeBoundBtn, 0, 1 ); - - GroupPoints->getGroupBoxLayout()->addMultiCellWidget( myAllChk, 1, 1, 0, 2 ); - GroupPoints->getGroupBoxLayout()->addLayout( aSelectWiresLay, 2, 0 ); - GroupPoints->getGroupBoxLayout()->addLayout( aDetectLay, 3, 0 ); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); /***************************************************************/ setHelpFileName("suppress_holes_operation_page.html"); @@ -110,7 +92,6 @@ RepairGUI_RemoveHolesDlg::RepairGUI_RemoveHolesDlg(GeometryGUI* theGeometryGUI, Init(); } - //================================================================================= // function : ~RepairGUI_RemoveHolesDlg() // purpose : Destroys the object and frees any allocated resources @@ -119,52 +100,49 @@ RepairGUI_RemoveHolesDlg::~RepairGUI_RemoveHolesDlg() { } - //================================================================================= // function : Init() // purpose : //================================================================================= void RepairGUI_RemoveHolesDlg::Init() { - /* init variables */ - myEditCurrentArgument = GroupPoints->LineEdit1; - + // init variables + GroupPoints->LineEdit1->clear(); + GroupPoints->LineEdit2->clear(); myObject = GEOM::GEOM_Object::_nil(); myWiresInd = new GEOM::short_array(); - myWiresInd->length( 0 ); - - //myGeomGUI->SetState( 0 ); - initSelection(); + myWiresInd->length(0); myClosed = -1; myOpen = -1; - - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(mySelectWiresBtn, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(mySelectWiresEdt, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect( myAllChk, SIGNAL( clicked() ), this, SLOT( onRemoveAllClicked() ) ); - connect( myFreeBoundBtn, SIGNAL(clicked()), this, SLOT(onDetect()) ); + connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - initName( tr( "REMOVE_HOLES_NEW_OBJ_NAME" ) ); + connect(GroupPoints->CheckButton1, SIGNAL(clicked()), this, SLOT(onRemoveAllClicked())); + + connect(myFreeBoundBtn, SIGNAL(clicked()), this, SLOT(onDetect())); + + initName(tr("REMOVE_HOLES_NEW_OBJ_NAME")); + + GroupPoints->PushButton1->click(); + SelectionIntoArgument(); } - //================================================================================= // function : ClickOnOk() // purpose : Same than click on apply but close this dialog. //================================================================================= void RepairGUI_RemoveHolesDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } @@ -174,57 +152,65 @@ void RepairGUI_RemoveHolesDlg::ClickOnOk() //================================================================================= bool RepairGUI_RemoveHolesDlg::ClickOnApply() { - if ( !onAccept() ) + if (!onAccept()) return false; initName(); - - myEditCurrentArgument = GroupPoints->LineEdit1; - myEditCurrentArgument->setText(""); - mySelectWiresEdt->setText(""); - myObject = GEOM::GEOM_Object::_nil(); - myWiresInd->length( 0 ); - - initSelection(); - + // activate first line edit + GroupPoints->PushButton1->click(); return true; } - //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void RepairGUI_RemoveHolesDlg::SelectionIntoArgument() { erasePreview(); myEditCurrentArgument->setText(""); - if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) myObject = GEOM::GEOM_Object::_nil(); - else if ( myEditCurrentArgument == mySelectWiresEdt ) myWiresInd->length( 0 ); + // the second argument depends on the first one + GroupPoints->LineEdit2->setText(""); + myWiresInd->length(0); - if ( IObjectCount() == 1 ) - { - Handle(SALOME_InteractiveObject) anIO = firstIObject(); + if (myEditCurrentArgument == GroupPoints->LineEdit1) + myObject = GEOM::GEOM_Object::_nil(); - if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) // face selection - { + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() == 1) { + Handle(SALOME_InteractiveObject) anIO = aSelList.First(); + + if (myEditCurrentArgument == GroupPoints->LineEdit1) { // face selection Standard_Boolean aRes; - myObject = GEOMBase::ConvertIOinGEOMObject( anIO, aRes ); - if ( aRes && GEOMBase::IsShape( myObject ) ) - myEditCurrentArgument->setText( GEOMBase::GetName( myObject ) ); + myObject = GEOMBase::ConvertIOinGEOMObject(anIO, aRes); + if (aRes && GEOMBase::IsShape(myObject)) { + myEditCurrentArgument->setText(GEOMBase::GetName(myObject)); + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + if (!GroupPoints->CheckButton1->isChecked()) + GroupPoints->PushButton2->click(); + } else myObject = GEOM::GEOM_Object::_nil(); } - else if ( myEditCurrentArgument == mySelectWiresEdt && !myAllChk->isChecked() ) - { + else if (myEditCurrentArgument == GroupPoints->LineEdit2 && + !GroupPoints->CheckButton1->isChecked()) { TColStd_IndexedMapOfInteger aMap; - ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr()->GetIndexes( anIO, aMap ); + aSelMgr->GetIndexes(anIO, aMap); const int n = aMap.Extent(); - myWiresInd->length( n ); - for ( int i = 1; i <= n; i++ ) - myWiresInd[i-1] = aMap( i ); - if ( n ) - myEditCurrentArgument->setText( QString::number( n ) + "_" + tr( "GEOM_WIRE" ) + tr( "_S_" ) ); + myWiresInd->length(n); + for (int i = 1; i <= n; i++) + myWiresInd[i-1] = aMap(i); + if (n) + myEditCurrentArgument->setText(QString::number(n) + "_" + tr("GEOM_WIRE") + tr("_S_")); } } } @@ -235,20 +221,36 @@ void RepairGUI_RemoveHolesDlg::SelectionIntoArgument() //================================================================================= void RepairGUI_RemoveHolesDlg::SetEditCurrentArgument() { - const QObject* send = sender(); - if ( send == GroupPoints->PushButton1 ) - myEditCurrentArgument = GroupPoints->LineEdit1; - else if ( send == mySelectWiresBtn && !myObject->_is_nil() ) - myEditCurrentArgument = mySelectWiresEdt; - if ( myEditCurrentArgument ) - { + QPushButton* send = (QPushButton*)sender(); + + bool isEffective = false; + + if (send == GroupPoints->PushButton1) { + isEffective = true; + myEditCurrentArgument = GroupPoints->LineEdit1; + + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit2->setEnabled(false); + } + else if (send == GroupPoints->PushButton2 && !myObject->_is_nil()) { + isEffective = true; + myEditCurrentArgument = GroupPoints->LineEdit2; + + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + } + + if (isEffective) { initSelection(); + + // enable line edit + myEditCurrentArgument->setEnabled(true); myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); } } - //================================================================================= // function : LineEditReturnPressed() // purpose : @@ -256,14 +258,12 @@ void RepairGUI_RemoveHolesDlg::SetEditCurrentArgument() void RepairGUI_RemoveHolesDlg::LineEditReturnPressed() { const QObject* send = sender(); - if( send == GroupPoints->LineEdit1 || send == mySelectWiresEdt ) - { + if (send == GroupPoints->LineEdit1 || send == GroupPoints->LineEdit2) { myEditCurrentArgument = (QLineEdit*)send; GEOMBase_Skeleton::LineEditReturnPressed(); } } - //================================================================================= // function : ActivateThisDialog() // purpose : @@ -271,97 +271,86 @@ void RepairGUI_RemoveHolesDlg::LineEditReturnPressed() void RepairGUI_RemoveHolesDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); myEditCurrentArgument = GroupPoints->LineEdit1; - myEditCurrentArgument->setText(""); - mySelectWiresEdt->setText(""); + myEditCurrentArgument->setText( "" ); + GroupPoints->LineEdit2->setText( "" ); myObject = GEOM::GEOM_Object::_nil(); myWiresInd->length( 0 ); myClosed = -1; myOpen = -1; - //myGeomGUI->SetState( 0 ); initSelection(); } - //================================================================================= // function : enterEvent() // purpose : Mouse enter onto the dialog to activate it //================================================================================= -void RepairGUI_RemoveHolesDlg::enterEvent(QEvent* e) +void RepairGUI_RemoveHolesDlg::enterEvent (QEvent*) { - if ( !GroupConstructors->isEnabled() ) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } - -//================================================================================= -// function : closeEvent() -// purpose : -//================================================================================= -void RepairGUI_RemoveHolesDlg::closeEvent(QCloseEvent* e) -{ - //myGeomGUI->SetState( -1 ); - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : createOperation // purpose : //================================================================================= GEOM::GEOM_IOperations_ptr RepairGUI_RemoveHolesDlg::createOperation() { - return getGeomEngine()->GetIHealingOperations( getStudyId() ); + return getGeomEngine()->GetIHealingOperations(getStudyId()); } //================================================================================= // function : isValid // purpose : //================================================================================= -bool RepairGUI_RemoveHolesDlg::isValid( QString& msg ) +bool RepairGUI_RemoveHolesDlg::isValid (QString&) { myClosed = -1; - return !myObject->_is_nil() && ( IsPreview() || myAllChk->isChecked() || myWiresInd->length() ); + return !myObject->_is_nil() && (IsPreview() || GroupPoints->CheckButton1->isChecked() || myWiresInd->length()); } //================================================================================= // function : execute // purpose : //================================================================================= -bool RepairGUI_RemoveHolesDlg::execute( ObjectList& objects ) +bool RepairGUI_RemoveHolesDlg::execute (ObjectList& objects) { bool aResult = false; - if ( IsPreview() ) // called from onDetect(): detect free boundary edges, highlight them (add to objects), display message dialog - { + + if (IsPreview()) { + // called from onDetect(): detect free boundary edges, + // highlight them (add to objects), display message dialog GEOM::ListOfGO_var aClosed, anOpen; - aResult = GEOM::GEOM_IHealingOperations::_narrow( getOperation() )->GetFreeBoundary( myObject, aClosed, anOpen ); + aResult = GEOM::GEOM_IHealingOperations::_narrow(getOperation())-> + GetFreeBoundary(myObject, aClosed, anOpen); - if ( aResult ) - { + if (aResult) { myClosed = aClosed->length(); myOpen = anOpen->length(); int i; - for ( i = 0; i < myClosed; i++ ) - objects.push_back( aClosed[i]._retn() ); - for ( i = 0; i < myOpen; i++ ) - objects.push_back( anOpen[i]._retn() ); + for (i = 0; i < myClosed; i++) + objects.push_back(aClosed[i]._retn()); + for (i = 0; i < myOpen; i++) + objects.push_back(anOpen[i]._retn()); } else myClosed = -1; } - else - { - GEOM::GEOM_Object_var anObj = GEOM::GEOM_IHealingOperations::_narrow( getOperation() )->FillHoles( myObject, myWiresInd ); + else { + GEOM::GEOM_Object_var anObj = GEOM::GEOM_IHealingOperations::_narrow(getOperation())-> + FillHoles(myObject, myWiresInd); aResult = !anObj->_is_nil(); - if ( aResult ) - objects.push_back( anObj._retn() ); + if (aResult) + objects.push_back(anObj._retn()); } - + return aResult; } @@ -371,14 +360,13 @@ bool RepairGUI_RemoveHolesDlg::execute( ObjectList& objects ) //================================================================================= void RepairGUI_RemoveHolesDlg::onRemoveAllClicked() { - bool b = myAllChk->isOn(); - mySelectWiresLbl->setEnabled( !b ); - mySelectWiresBtn->setEnabled( !b ); - mySelectWiresEdt->setEnabled( !b ); - if ( b ) - { - mySelectWiresEdt->setText( "" ); - myWiresInd->length( 0 ); + bool b = GroupPoints->CheckButton1->isChecked(); + GroupPoints->TextLabel2->setEnabled(!b); + GroupPoints->PushButton2->setEnabled(!b); + GroupPoints->LineEdit2->setEnabled(!b); + if (b) { + GroupPoints->LineEdit2->setText(""); + myWiresInd->length(0); } } @@ -388,23 +376,25 @@ void RepairGUI_RemoveHolesDlg::onRemoveAllClicked() //================================================================================= void RepairGUI_RemoveHolesDlg::initSelection() { - if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) - { - TColStd_MapOfInteger aTypes; - aTypes.Add( GEOM_COMPOUND ); - aTypes.Add( GEOM_SOLID ); - aTypes.Add( GEOM_SHELL ); - aTypes.Add( GEOM_FACE ); - - globalSelection( aTypes ); - } - else if ( myEditCurrentArgument == mySelectWiresEdt ) - { - localSelection( myObject, TopAbs_EDGE ); - localSelection( myObject, TopAbs_WIRE ); - } -} + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + if (myEditCurrentArgument == GroupPoints->LineEdit1) { + TColStd_MapOfInteger aTypes; + aTypes.Add(GEOM_COMPOUND); + aTypes.Add(GEOM_SOLID); + aTypes.Add(GEOM_SHELL); + aTypes.Add(GEOM_FACE); + + globalSelection(aTypes); + } + else if (myEditCurrentArgument == GroupPoints->LineEdit2) { + localSelection(myObject, TopAbs_EDGE); + localSelection(myObject, TopAbs_WIRE); + } + + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); +} //================================================================================= // function : onDetect @@ -412,14 +402,13 @@ void RepairGUI_RemoveHolesDlg::initSelection() //================================================================================= void RepairGUI_RemoveHolesDlg::onDetect() { - displayPreview( false, true, true, 3 ); + displayPreview(false, true, true, 3); // field myClosed,myOpen is initialized in execute() method, called by displayPreview(). QString msg; - if ( myClosed != -1 ) - msg = tr( "GEOM_FREE_BOUNDS_MSG" ).arg( myClosed + myOpen ).arg( myClosed ).arg( myOpen ); + if (myClosed != -1) + msg = tr("GEOM_FREE_BOUNDS_MSG").arg(myClosed + myOpen).arg(myClosed).arg(myOpen); else - msg = tr( "GEOM_FREE_BOUNDS_ERROR" ); - SUIT_MessageBox::info1( this, tr( "GEOM_FREE_BOUNDS_TLT" ), msg, "Close" ); + msg = tr("GEOM_FREE_BOUNDS_ERROR"); + SUIT_MessageBox::information(this, tr("GEOM_FREE_BOUNDS_TLT"), msg); } - diff --git a/src/RepairGUI/RepairGUI_RemoveHolesDlg.h b/src/RepairGUI/RepairGUI_RemoveHolesDlg.h index 88a853d41..efe07f6a1 100644 --- a/src/RepairGUI/RepairGUI_RemoveHolesDlg.h +++ b/src/RepairGUI/RepairGUI_RemoveHolesDlg.h @@ -1,42 +1,35 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : RepairGUI_RemoveHolesDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_RemoveHolesDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef REPAIRGUI_REMOVEHOLESDLG_H +#define REPAIRGUI_REMOVEHOLESDLG_H -#ifndef DIALOGBOX_RemoveHoles_H -#define DIALOGBOX_RemoveHoles_H +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel_Ext.h" - -#include - -#include -#include -#include -#include +class DlgRef_1Sel1Check1Sel; +class QPushButton; //================================================================================= // class : RepairGUI_RemoveHolesDlg @@ -44,50 +37,45 @@ //================================================================================= class RepairGUI_RemoveHolesDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - RepairGUI_RemoveHolesDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~RepairGUI_RemoveHolesDlg(); + RepairGUI_RemoveHolesDlg( GeometryGUI*, QWidget* = 0, bool = false ); + ~RepairGUI_RemoveHolesDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); private: - void Init(); - void enterEvent(QEvent* e); - void closeEvent(QCloseEvent* e); - void initSelection(); - - GEOM::GEOM_Object_var myObject; - GEOM::short_array_var myWiresInd; - - DlgRef_1Sel_Ext* GroupPoints; - QCheckBox* myAllChk; - QLabel* mySelectWiresLbl; - QPushButton* mySelectWiresBtn; - QLineEdit* mySelectWiresEdt; - QPushButton* myFreeBoundBtn; - - int myClosed; // Number of free closed boundaries detected. Calculated in execute(), used in onDetect(). - int myOpen; // Number of free open boundaries detected. Calculated in execute(), used in onDetect(). + void Init(); + void enterEvent( QEvent* ); + void initSelection(); + +private: + GEOM::GEOM_Object_var myObject; + GEOM::short_array_var myWiresInd; + + DlgRef_1Sel1Check1Sel* GroupPoints; + QPushButton* myFreeBoundBtn; + + int myClosed; // Number of free closed boundaries detected. Calculated in execute(), used in onDetect(). + int myOpen; // Number of free open boundaries detected. Calculated in execute(), used in onDetect(). private slots: - void ClickOnOk(); - bool ClickOnApply(); + void ClickOnOk(); + bool ClickOnApply(); - void ActivateThisDialog(); + void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); - void onRemoveAllClicked(); - void onDetect(); + void onRemoveAllClicked(); + void onDetect(); }; -#endif // DIALOGBOX_RemoveHoles_H +#endif // REPAIRGUI_REMOVEHOLESDLG_H diff --git a/src/RepairGUI/RepairGUI_RemoveIntWiresDlg.cxx b/src/RepairGUI/RepairGUI_RemoveIntWiresDlg.cxx index 483d2a16d..8079b166d 100644 --- a/src/RepairGUI/RepairGUI_RemoveIntWiresDlg.cxx +++ b/src/RepairGUI/RepairGUI_RemoveIntWiresDlg.cxx @@ -1,44 +1,45 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_RemoveIntWiresDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : RepairGUI_RemoveIntWiresDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "RepairGUI_RemoveIntWiresDlg.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "SUIT_Session.h" -#include "SALOME_ListIteratorOfListIO.hxx" +#include +#include +#include -#include "GEOMImpl_Types.hxx" +#include +#include +#include +#include +// OCCT Includes #include #include +#include -using namespace std; +#include //================================================================================= // class : RepairGUI_RemoveIntWiresDlg() @@ -47,53 +48,36 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -RepairGUI_RemoveIntWiresDlg::RepairGUI_RemoveIntWiresDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +RepairGUI_RemoveIntWiresDlg::RepairGUI_RemoveIntWiresDlg (GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal) { - QPixmap image0 (myGeomGUI->getApp()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_SUPPRESS_INT_WIRES"))); - QPixmap image1 (myGeomGUI->getApp()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0 (myGeomGUI->getApp()->resourceMgr()->loadPixmap("GEOM", tr("ICON_DLG_SUPPRESS_INT_WIRES"))); + QPixmap image1 (myGeomGUI->getApp()->resourceMgr()->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_REMOVE_INTERNAL_WIRES_TITLE")); + setWindowTitle(tr("GEOM_REMOVE_INTERNAL_WIRES_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_REMOVE_INTERNAL_WIRES_TITLE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_REMOVE_INTERNAL_WIRES_TITLE")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_1Sel_Ext(this, "GroupPoints"); + GroupPoints = new DlgRef_1Sel1Check1Sel(centralWidget()); GroupPoints->GroupBox1->setTitle(tr("GEOM_INTERNAL_WIRES")); GroupPoints->TextLabel1->setText(tr("GEOM_SELECTED_FACE")); - GroupPoints->PushButton1->setPixmap(image1); - GroupPoints->LineEdit1->setReadOnly( true ); + GroupPoints->PushButton1->setIcon(image1); + GroupPoints->LineEdit1->setReadOnly(true); + GroupPoints->CheckButton1->setText(tr("GEOM_REMOVE_ALL_INT_WIRES")); + GroupPoints->TextLabel2->setText(tr("GEOM_WIRES_TO_REMOVE")); + GroupPoints->PushButton2->setIcon(image1); + GroupPoints->LineEdit2->setReadOnly(true); - Layout1->addWidget(GroupPoints, 2, 0); - - myAllChk = new QCheckBox( tr( "GEOM_REMOVE_ALL_INT_WIRES" ), GroupPoints->GroupBox1 ); - - QGridLayout* aSelectWiresLay = new QGridLayout( 0, 1, 1, 0, 6, "aSelectWiresLay"); - - mySelectWiresBtn = new QPushButton( GroupPoints->GroupBox1, "mySelectWiresBtn" ); - mySelectWiresBtn->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, mySelectWiresBtn->sizePolicy().hasHeightForWidth() ) ); - mySelectWiresBtn->setText( trUtf8( "" ) ); - mySelectWiresBtn->setPixmap(image1); - - mySelectWiresEdt = new QLineEdit( GroupPoints->GroupBox1, "mySelectWiresEdt" ); - mySelectWiresEdt->setReadOnly( true ); - - mySelectWiresLbl = new QLabel( tr( "GEOM_WIRES_TO_REMOVE" ), GroupPoints->GroupBox1, "TextLabel1" ); - mySelectWiresLbl->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, 0, 0, mySelectWiresLbl->sizePolicy().hasHeightForWidth() ) ); - - aSelectWiresLay->addWidget( mySelectWiresLbl, 0, 0 ); - aSelectWiresLay->addWidget( mySelectWiresBtn, 0, 1 ); - aSelectWiresLay->addWidget( mySelectWiresEdt, 0, 2 ); - QSpacerItem* spacer = new QSpacerItem( 0, 16, QSizePolicy::Minimum, QSizePolicy::Expanding ); - aSelectWiresLay->addItem( spacer, 1, 2 ); - - GroupPoints->getGroupBoxLayout()->addMultiCellWidget( myAllChk, 1, 1, 0, 2 ); - GroupPoints->getGroupBoxLayout()->addLayout( aSelectWiresLay, 2, 0 ); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); /***************************************************************/ setHelpFileName("suppress_internal_wires_operation_page.html"); @@ -101,7 +85,6 @@ RepairGUI_RemoveIntWiresDlg::RepairGUI_RemoveIntWiresDlg(GeometryGUI* theGeometr Init(); } - //================================================================================= // function : ~RepairGUI_RemoveIntWiresDlg() // purpose : Destroys the object and frees any allocated resources @@ -110,48 +93,44 @@ RepairGUI_RemoveIntWiresDlg::~RepairGUI_RemoveIntWiresDlg() { } - //================================================================================= // function : Init() // purpose : //================================================================================= void RepairGUI_RemoveIntWiresDlg::Init() { - /* init variables */ - myEditCurrentArgument = GroupPoints->LineEdit1; - + // init variables + GroupPoints->LineEdit1->clear(); + GroupPoints->LineEdit2->clear(); myObject = GEOM::GEOM_Object::_nil(); - myWiresInd = new GEOM::short_array(); - myWiresInd->length( 0 ); + myWiresInd = new GEOM::short_array(); + myWiresInd->length(0); - //myGeomGUI->SetState( 0 ); - initSelection(); + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(mySelectWiresBtn, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(mySelectWiresEdt, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect(GroupPoints->CheckButton1, SIGNAL(clicked()), this, SLOT(onRemoveAllClicked())); - connect( myAllChk, SIGNAL( clicked() ), this, SLOT( onRemoveAllClicked() ) ); + initName(tr("REMOVE_INT_WIRES_NEW_OBJ_NAME")); - initName( tr( "REMOVE_INT_WIRES_NEW_OBJ_NAME" ) ); + GroupPoints->PushButton1->click(); + SelectionIntoArgument(); } - //================================================================================= // function : ClickOnOk() // purpose : Same than click on apply but close this dialog. //================================================================================= void RepairGUI_RemoveIntWiresDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } @@ -161,58 +140,66 @@ void RepairGUI_RemoveIntWiresDlg::ClickOnOk() //================================================================================= bool RepairGUI_RemoveIntWiresDlg::ClickOnApply() { - if ( !onAccept() ) - return false; + if (!onAccept()) + return false; initName(); - - myEditCurrentArgument = GroupPoints->LineEdit1; - myEditCurrentArgument->setText(""); - mySelectWiresEdt->setText(""); - myObject = GEOM::GEOM_Object::_nil(); - myWiresInd->length( 0 ); - - initSelection(); - + // activate first line edit + GroupPoints->PushButton1->click(); return true; } - //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void RepairGUI_RemoveIntWiresDlg::SelectionIntoArgument() { myEditCurrentArgument->setText(""); - if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) myObject = GEOM::GEOM_Object::_nil(); - else if ( myEditCurrentArgument == mySelectWiresEdt ) myWiresInd->length( 0 ); + // the second argument depends on the first one + GroupPoints->LineEdit2->setText(""); + myWiresInd->length(0); - if ( IObjectCount() == 1 ) - { - Handle(SALOME_InteractiveObject) anIO = firstIObject(); - - if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) // face selection - { - Standard_Boolean aRes; - myObject = GEOMBase::ConvertIOinGEOMObject( anIO, aRes ); - if ( aRes && GEOMBase::IsShape( myObject ) ) - myEditCurrentArgument->setText( GEOMBase::GetName( myObject ) ); - else - myObject = GEOM::GEOM_Object::_nil(); - } - else if ( myEditCurrentArgument == mySelectWiresEdt && !myAllChk->isChecked() ) - { - TColStd_IndexedMapOfInteger aMap; - ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr()->GetIndexes( anIO, aMap ); - const int n = aMap.Extent(); - myWiresInd->length( n ); - for ( int i = 1; i <= n; i++ ) - myWiresInd[i-1] = aMap( i ); - if ( n ) - myEditCurrentArgument->setText( QString::number( n ) + "_" + tr( "GEOM_WIRE" ) + tr( "_S_" ) ); - } + if (myEditCurrentArgument == GroupPoints->LineEdit1) + myObject = GEOM::GEOM_Object::_nil(); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() == 1) { + Handle(SALOME_InteractiveObject) anIO = aSelList.First(); + + if (myEditCurrentArgument == GroupPoints->LineEdit1) { // face selection + Standard_Boolean aRes; + myObject = GEOMBase::ConvertIOinGEOMObject(anIO, aRes); + if (aRes && GEOMBase::IsShape(myObject)) { + myEditCurrentArgument->setText(GEOMBase::GetName(myObject)); + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + if (!GroupPoints->CheckButton1->isChecked()) + GroupPoints->PushButton2->click(); + } + else + myObject = GEOM::GEOM_Object::_nil(); } + else if (myEditCurrentArgument == GroupPoints->LineEdit2 && + !GroupPoints->CheckButton1->isChecked()) { + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(anIO, aMap); + const int n = aMap.Extent(); + myWiresInd->length(n); + for (int i = 1; i <= n; i++) + myWiresInd[i-1] = aMap(i); + if (n) + myEditCurrentArgument->setText(QString::number(n) + "_" + tr("GEOM_WIRE") + tr("_S_")); + } + } } //================================================================================= @@ -221,36 +208,49 @@ void RepairGUI_RemoveIntWiresDlg::SelectionIntoArgument() //================================================================================= void RepairGUI_RemoveIntWiresDlg::SetEditCurrentArgument() { - const QObject* send = sender(); - if ( send == GroupPoints->PushButton1 ) - myEditCurrentArgument = GroupPoints->LineEdit1; - else if ( send == mySelectWiresBtn && !myObject->_is_nil() ) - myEditCurrentArgument = mySelectWiresEdt; + QPushButton* send = (QPushButton*)sender(); - if ( myEditCurrentArgument ) - { - initSelection(); - myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); + bool isEffective = false; + + if (send == GroupPoints->PushButton1) { + isEffective = true; + myEditCurrentArgument = GroupPoints->LineEdit1; + + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit2->setEnabled(false); + } + else if (send == GroupPoints->PushButton2 && !myObject->_is_nil()) { + isEffective = true; + myEditCurrentArgument = GroupPoints->LineEdit2; + + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + } + + if (isEffective) { + initSelection(); + + // enable line edit + myEditCurrentArgument->setEnabled(true); + myEditCurrentArgument->setFocus(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); } } - //================================================================================= // function : LineEditReturnPressed() // purpose : //================================================================================= void RepairGUI_RemoveIntWiresDlg::LineEditReturnPressed() { - const QObject* send = sender(); - if( send == GroupPoints->LineEdit1 || send == mySelectWiresEdt ) - { + const QObject* send = sender(); + if (send == GroupPoints->LineEdit1 || send == GroupPoints->LineEdit2) { myEditCurrentArgument = (QLineEdit*)send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } + GEOMBase_Skeleton::LineEditReturnPressed(); + } } - //================================================================================= // function : ActivateThisDialog() // purpose : @@ -258,12 +258,12 @@ void RepairGUI_RemoveIntWiresDlg::LineEditReturnPressed() void RepairGUI_RemoveIntWiresDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); myEditCurrentArgument = GroupPoints->LineEdit1; - myEditCurrentArgument->setText(""); - mySelectWiresEdt->setText(""); + myEditCurrentArgument->setText( "" ); + GroupPoints->LineEdit2->setText( "" ); myObject = GEOM::GEOM_Object::_nil(); myWiresInd->length( 0 ); @@ -275,51 +275,42 @@ void RepairGUI_RemoveIntWiresDlg::ActivateThisDialog() // function : enterEvent() // purpose : Mouse enter onto the dialog to activate it //================================================================================= -void RepairGUI_RemoveIntWiresDlg::enterEvent(QEvent* e) +void RepairGUI_RemoveIntWiresDlg::enterEvent (QEvent*) { - if ( !GroupConstructors->isEnabled() ) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } -//================================================================================= -// function : closeEvent() -// purpose : -//================================================================================= -void RepairGUI_RemoveIntWiresDlg::closeEvent(QCloseEvent* e) -{ - //myGeomGUI->SetState( -1 ); - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : createOperation // purpose : //================================================================================= GEOM::GEOM_IOperations_ptr RepairGUI_RemoveIntWiresDlg::createOperation() { - return getGeomEngine()->GetIHealingOperations( getStudyId() ); + return getGeomEngine()->GetIHealingOperations(getStudyId()); } //================================================================================= // function : isValid // purpose : //================================================================================= -bool RepairGUI_RemoveIntWiresDlg::isValid( QString& msg ) +bool RepairGUI_RemoveIntWiresDlg::isValid (QString&) { - return !myObject->_is_nil() && ( myAllChk->isChecked() || myWiresInd->length() ); + return !myObject->_is_nil() && (GroupPoints->CheckButton1->isChecked() || myWiresInd->length()); } //================================================================================= // function : execute // purpose : //================================================================================= -bool RepairGUI_RemoveIntWiresDlg::execute( ObjectList& objects ) +bool RepairGUI_RemoveIntWiresDlg::execute (ObjectList& objects) { - GEOM::GEOM_Object_var anObj = GEOM::GEOM_IHealingOperations::_narrow( getOperation() )-> - RemoveIntWires( myObject, myWiresInd ); + GEOM::GEOM_Object_var anObj = GEOM::GEOM_IHealingOperations::_narrow(getOperation())-> + RemoveIntWires(myObject, myWiresInd); + bool aResult = !anObj->_is_nil(); - if ( aResult ) - objects.push_back( anObj._retn() ); + if (aResult) + objects.push_back(anObj._retn()); return aResult; } @@ -330,14 +321,13 @@ bool RepairGUI_RemoveIntWiresDlg::execute( ObjectList& objects ) //================================================================================= void RepairGUI_RemoveIntWiresDlg::onRemoveAllClicked() { - bool b = myAllChk->isOn(); - mySelectWiresLbl->setEnabled( !b ); - mySelectWiresBtn->setEnabled( !b ); - mySelectWiresEdt->setEnabled( !b ); - if ( b ) - { - mySelectWiresEdt->setText( "" ); - myWiresInd->length( 0 ); + bool b = GroupPoints->CheckButton1->isChecked(); + GroupPoints->TextLabel2->setEnabled(!b); + GroupPoints->PushButton2->setEnabled(!b); + GroupPoints->LineEdit2->setEnabled(!b); + if (b) { + GroupPoints->LineEdit2->setText(""); + myWiresInd->length(0); } } @@ -347,19 +337,22 @@ void RepairGUI_RemoveIntWiresDlg::onRemoveAllClicked() //================================================================================= void RepairGUI_RemoveIntWiresDlg::initSelection() { - if ( myEditCurrentArgument == GroupPoints->LineEdit1 ) - { - TColStd_MapOfInteger aTypes; - aTypes.Add( GEOM_COMPOUND ); - aTypes.Add( GEOM_SOLID ); - aTypes.Add( GEOM_SHELL ); - aTypes.Add( GEOM_FACE ); - - globalSelection( aTypes ); + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + + if (myEditCurrentArgument == GroupPoints->LineEdit1) { + TColStd_MapOfInteger aTypes; + aTypes.Add(GEOM_COMPOUND); + aTypes.Add(GEOM_SOLID); + aTypes.Add(GEOM_SHELL); + aTypes.Add(GEOM_FACE); + + globalSelection(aTypes); } - else if ( myEditCurrentArgument == mySelectWiresEdt ) - { - //localSelection( myObject, TopAbs_EDGE ); - localSelection( myObject, TopAbs_WIRE ); + else if (myEditCurrentArgument == GroupPoints->LineEdit2) { + //localSelection(myObject, TopAbs_EDGE); + localSelection(myObject, TopAbs_WIRE); } + + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); } diff --git a/src/RepairGUI/RepairGUI_RemoveIntWiresDlg.h b/src/RepairGUI/RepairGUI_RemoveIntWiresDlg.h index 17cf0f364..838a6ecde 100644 --- a/src/RepairGUI/RepairGUI_RemoveIntWiresDlg.h +++ b/src/RepairGUI/RepairGUI_RemoveIntWiresDlg.h @@ -1,42 +1,34 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : RepairGUI_RemoveIntWiresDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_RemoveIntWiresDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef REPAIRGUI_REMOVEINTWIRESDLG_H +#define REPAIRGUI_REMOVEINTWIRESDLG_H -#ifndef DIALOGBOX_RemoveIntWires_H -#define DIALOGBOX_RemoveIntWires_H +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel_Ext.h" - -#include - -#include -#include -#include -#include +class DlgRef_1Sel1Check1Sel; //================================================================================= // class : RepairGUI_RemoveIntWiresDlg @@ -44,45 +36,40 @@ //================================================================================= class RepairGUI_RemoveIntWiresDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - RepairGUI_RemoveIntWiresDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~RepairGUI_RemoveIntWiresDlg(); - + RepairGUI_RemoveIntWiresDlg( GeometryGUI*, QWidget* = 0, bool = false ); + ~RepairGUI_RemoveIntWiresDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + private: - void Init(); - void enterEvent(QEvent* e); - void closeEvent(QCloseEvent* e); - void initSelection(); - - GEOM::GEOM_Object_var myObject; - GEOM::short_array_var myWiresInd; - - DlgRef_1Sel_Ext* GroupPoints; - QCheckBox* myAllChk; - QLabel* mySelectWiresLbl; - QPushButton* mySelectWiresBtn; - QLineEdit* mySelectWiresEdt; + void Init(); + void enterEvent( QEvent* ); + void initSelection(); + +private: + GEOM::GEOM_Object_var myObject; + GEOM::short_array_var myWiresInd; + + DlgRef_1Sel1Check1Sel* GroupPoints; private slots: - void ClickOnOk(); - bool ClickOnApply(); - - void ActivateThisDialog(); - - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - - void onRemoveAllClicked(); + void ClickOnOk(); + bool ClickOnApply(); + + void ActivateThisDialog(); + + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + + void onRemoveAllClicked(); }; -#endif // DIALOGBOX_RemoveIntWires_H +#endif // REPAIRGUI_REMOVEINTWIRESDLG_H diff --git a/src/RepairGUI/RepairGUI_SewingDlg.cxx b/src/RepairGUI/RepairGUI_SewingDlg.cxx index 78a12bbfb..a5d6465d9 100644 --- a/src/RepairGUI/RepairGUI_SewingDlg.cxx +++ b/src/RepairGUI/RepairGUI_SewingDlg.cxx @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,32 +17,32 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_SewingDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : RepairGUI_SewingDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "RepairGUI_SewingDlg.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "SUIT_Session.h" -#include "SUIT_MessageBox.h" -#include "SALOME_ListIteratorOfListIO.hxx" +#include +#include +#include +#include -#include "GEOMImpl_Types.hxx" +#include +#include +#include +#include +#include + +#include #include #include #define DEFAULT_TOLERANCE_VALUE 1e-07 -using namespace std; - //================================================================================= // class : RepairGUI_SewingDlg() // purpose : Constructs a RepairGUI_SewingDlg which is a child of 'parent', with the @@ -50,46 +50,46 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -RepairGUI_SewingDlg::RepairGUI_SewingDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +RepairGUI_SewingDlg::RepairGUI_SewingDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_SEWING"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_SEWING" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_SEWING_TITLE")); + setWindowTitle( tr( "GEOM_SEWING_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_SEWING_TITLE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_SEWING_TITLE" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_1Sel_Ext(this, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("GEOM_SEWING")); - GroupPoints->TextLabel1->setText(tr("GEOM_SELECTED_SHAPE")); - GroupPoints->PushButton1->setPixmap(image1); + GroupPoints = new DlgRef_1SelExt( centralWidget() ); + GroupPoints->GroupBox1->setTitle( tr( "GEOM_SEWING" ) ); + GroupPoints->TextLabel1->setText( tr( "GEOM_SELECTED_SHAPE" ) ); + GroupPoints->PushButton1->setIcon( image1 ); GroupPoints->LineEdit1->setReadOnly( true ); - Layout1->addWidget(GroupPoints, 2, 0); - - QGridLayout* aLay = new QGridLayout( 0, 2, 2, 0, 6, "aLay" ); - myTolEdt = new QtxDblSpinBox( 0, 100, 1e-7, GroupPoints->GroupBox1 );//QAD_SpinBoxDbl( GroupPoints->GroupBox1, 0, 100, 1e-7, 10, 1e-10 ); - myTolEdt->setPrecision( 10 ); + QGridLayout* aLay = new QGridLayout( GroupPoints->Box ); + aLay->setMargin( 0 ); aLay->setSpacing( 6 ); + myTolEdt = new SalomeApp_DoubleSpinBox( 0.0, 100.0, DEFAULT_TOLERANCE_VALUE, 7, 10, GroupPoints->Box ); myTolEdt->setValue( DEFAULT_TOLERANCE_VALUE ); - QLabel* aLbl1 = new QLabel( tr( "GEOM_TOLERANCE" ), GroupPoints->GroupBox1 ); - myFreeBoundBtn = new QPushButton( tr( "GEOM_DETECT" ), GroupPoints->GroupBox1 ); - QLabel* aLbl2 = new QLabel( tr( "GEOM_FREE_BOUNDARIES" ), GroupPoints->GroupBox1 ); - aLay->addWidget( aLbl1, 0, 0 ); - aLay->addWidget( myTolEdt, 0, 1 ); - aLay->addWidget( aLbl2, 1, 0 ); - aLay->addWidget( myFreeBoundBtn, 1, 1 ); + QLabel* aLbl1 = new QLabel( tr( "GEOM_TOLERANCE" ), GroupPoints->Box ); + myFreeBoundBtn = new QPushButton( tr( "GEOM_DETECT" ) + QString( " [%1]" ).arg( tr( "GEOM_FREE_BOUNDARIES" ) ), + GroupPoints->Box ); + aLay->addWidget( aLbl1, 0, 0 ); + aLay->addWidget( myTolEdt, 0, 1 ); + aLay->addWidget( myFreeBoundBtn, 1, 0, 1, 2 ); - GroupPoints->getGroupBoxLayout()->addLayout( aLay, 3, 0 ); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); /***************************************************************/ - setHelpFileName("sewing_operation_page.html"); + setHelpFileName( "sewing_operation_page.html" ); Init(); } @@ -122,16 +122,16 @@ void RepairGUI_SewingDlg::Init() myOpen = -1; /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPoints->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); - connect(myFreeBoundBtn, SIGNAL(clicked()), this, SLOT(onDetect())); + connect( myFreeBoundBtn, SIGNAL( clicked() ), this, SLOT( onDetect() ) ); initName( tr( "SEWING_NEW_OBJ_NAME" ) ); } @@ -158,7 +158,7 @@ bool RepairGUI_SewingDlg::ClickOnApply() initName(); - GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit1->setText( "" ); myObject = GEOM::GEOM_Object::_nil(); initSelection(); @@ -174,12 +174,15 @@ bool RepairGUI_SewingDlg::ClickOnApply() void RepairGUI_SewingDlg::SelectionIntoArgument() { erasePreview(); - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); myObject = GEOM::GEOM_Object::_nil(); - if ( IObjectCount() == 1 ) - { - Handle(SALOME_InteractiveObject) anIO = firstIObject(); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if ( aSelList.Extent() == 1 ) { + Handle(SALOME_InteractiveObject) anIO = aSelList.First(); Standard_Boolean aRes; myObject = GEOMBase::ConvertIOinGEOMObject( anIO, aRes ); if ( aRes ) @@ -194,8 +197,7 @@ void RepairGUI_SewingDlg::SelectionIntoArgument() void RepairGUI_SewingDlg::SetEditCurrentArgument() { const QObject* send = sender(); - if ( send == GroupPoints->PushButton1 ) - { + if ( send == GroupPoints->PushButton1 ) { myEditCurrentArgument->setFocus(); SelectionIntoArgument(); } @@ -209,8 +211,7 @@ void RepairGUI_SewingDlg::SetEditCurrentArgument() void RepairGUI_SewingDlg::LineEditReturnPressed() { const QObject* send = sender(); - if( send == GroupPoints->LineEdit1 ) - { + if( send == GroupPoints->LineEdit1 ) { myEditCurrentArgument = GroupPoints->LineEdit1; GEOMBase_Skeleton::LineEditReturnPressed(); } @@ -224,10 +225,10 @@ void RepairGUI_SewingDlg::LineEditReturnPressed() void RepairGUI_SewingDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); - GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit1->setText( "" ); myObject = GEOM::GEOM_Object::_nil(); myClosed = -1; @@ -242,23 +243,13 @@ void RepairGUI_SewingDlg::ActivateThisDialog() // function : enterEvent() // purpose : Mouse enter onto the dialog to activate it //================================================================================= -void RepairGUI_SewingDlg::enterEvent(QEvent* e) +void RepairGUI_SewingDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } -//================================================================================= -// function : closeEvent() -// purpose : -//================================================================================= -void RepairGUI_SewingDlg::closeEvent(QCloseEvent* e) -{ - //myGeomGUI->SetState( -1 ); - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : createOperation // purpose : @@ -275,7 +266,8 @@ GEOM::GEOM_IOperations_ptr RepairGUI_SewingDlg::createOperation() bool RepairGUI_SewingDlg::isValid( QString& msg ) { myClosed = -1; - return !myObject->_is_nil() && ( IsPreview() || myTolEdt->value() > 0. ); + bool ok = myTolEdt->isValid( msg, !IsPreview() ); + return !myObject->_is_nil() && ( IsPreview() || myTolEdt->value() > 0. ) && ok; } //================================================================================= @@ -285,14 +277,12 @@ bool RepairGUI_SewingDlg::isValid( QString& msg ) bool RepairGUI_SewingDlg::execute( ObjectList& objects ) { bool aResult = false; - if ( IsPreview() ) // called from onDetect(): detect free boundary edges, highlight them (add to objects), display message dialog - { + if ( IsPreview() ) { // called from onDetect(): detect free boundary edges, highlight them (add to objects), display message dialog GEOM::ListOfGO_var aClosed, anOpen; aResult = GEOM::GEOM_IHealingOperations::_narrow( getOperation() )->GetFreeBoundary( myObject, aClosed, anOpen ); - if ( aResult ) - { + if ( aResult ) { myClosed = aClosed->length(); myOpen = anOpen->length(); int i; @@ -304,12 +294,19 @@ bool RepairGUI_SewingDlg::execute( ObjectList& objects ) else myClosed = -1; } - else - { + else { GEOM::GEOM_Object_var anObj = GEOM::GEOM_IHealingOperations::_narrow( getOperation() )->Sew( myObject, myTolEdt->value() ); aResult = !anObj->_is_nil(); if ( aResult ) + { + if ( !IsPreview() ) + { + QStringList aParameters; + aParameters << myTolEdt->text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } objects.push_back( anObj._retn() ); + } } return aResult; @@ -342,5 +339,5 @@ void RepairGUI_SewingDlg::onDetect() msg = tr( "GEOM_FREE_BOUNDS_MSG" ).arg( myClosed + myOpen ).arg( myClosed ).arg( myOpen ); else msg = tr( "GEOM_FREE_BOUNDS_ERROR" ); - SUIT_MessageBox::info1( this, tr( "GEOM_FREE_BOUNDS_TLT" ), msg, "Close" ); + SUIT_MessageBox::information( this, tr( "GEOM_FREE_BOUNDS_TLT" ), msg ); } diff --git a/src/RepairGUI/RepairGUI_SewingDlg.h b/src/RepairGUI/RepairGUI_SewingDlg.h index 54483c317..3bd6dfb7e 100644 --- a/src/RepairGUI/RepairGUI_SewingDlg.h +++ b/src/RepairGUI/RepairGUI_SewingDlg.h @@ -1,6 +1,6 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,27 +17,20 @@ // 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 +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_SewingDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// -// File : RepairGUI_SewingDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +#ifndef REPAIRGUI_SEWINGDLG_H +#define REPAIRGUI_SEWINGDLG_H -#ifndef DIALOGBOX_Sewing_H -#define DIALOGBOX_Sewing_H +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel_Ext.h" -#include "QtxDblSpinBox.h" - -#include - -#include -#include -#include -#include +class DlgRef_1SelExt; +class SalomeApp_DoubleSpinBox; +class QPushButton; //================================================================================= // class : RepairGUI_SewingDlg @@ -45,45 +38,44 @@ //================================================================================= class RepairGUI_SewingDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - RepairGUI_SewingDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~RepairGUI_SewingDlg(); + RepairGUI_SewingDlg( GeometryGUI*, QWidget* = 0, bool = false ); + ~RepairGUI_SewingDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + +private: + void Init(); + void enterEvent( QEvent* ); + void initSelection(); private: - void Init(); - void enterEvent(QEvent* e); - void closeEvent(QCloseEvent* e); - void initSelection(); - - GEOM::GEOM_Object_var myObject; - - DlgRef_1Sel_Ext* GroupPoints; - QtxDblSpinBox* myTolEdt; - QPushButton* myFreeBoundBtn; - - int myClosed; // Number of free closed boundaries detected. Calculated in execute(), used in onDetect(). - int myOpen; // Number of free open boundaries detected. Calculated in execute(), used in onDetect(). + GEOM::GEOM_Object_var myObject; + DlgRef_1SelExt* GroupPoints; + SalomeApp_DoubleSpinBox* myTolEdt; + QPushButton* myFreeBoundBtn; + + int myClosed; // Number of free closed boundaries detected. Calculated in execute(), used in onDetect(). + int myOpen; // Number of free open boundaries detected. Calculated in execute(), used in onDetect(). + private slots: - void ClickOnOk(); - bool ClickOnApply(); - - void ActivateThisDialog(); - - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - - void onDetect(); + void ClickOnOk(); + bool ClickOnApply(); + + void ActivateThisDialog(); + + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + + void onDetect(); }; -#endif // DIALOGBOX_Sewing_H +#endif // REPAIRGUI_SEWINGDLG_H diff --git a/src/RepairGUI/RepairGUI_ShapeProcessDlg.cxx b/src/RepairGUI/RepairGUI_ShapeProcessDlg.cxx index f0533536b..1c4761341 100755 --- a/src/RepairGUI/RepairGUI_ShapeProcessDlg.cxx +++ b/src/RepairGUI/RepairGUI_ShapeProcessDlg.cxx @@ -1,49 +1,51 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_ShapeProcessDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : RepairGUI_ShapeProcessDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "RepairGUI_ShapeProcessDlg.h" -#include "GEOMImpl_Types.hxx" +#include +#include +#include +#include +#include -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "SUIT_Session.h" -#include "SALOME_ListIteratorOfListIO.hxx" -#include "SALOME_ListIO.hxx" +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include -#include -#include -#include - -using namespace std; +#include +#include //================================================================================= // class : RepairGUI_ShapeProcessDlg() @@ -52,12 +54,11 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -RepairGUI_ShapeProcessDlg::RepairGUI_ShapeProcessDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +RepairGUI_ShapeProcessDlg::RepairGUI_ShapeProcessDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal ) { - setHelpFileName("shape_processing_operation_page.html"); + setHelpFileName( "shape_processing_operation_page.html" ); init(); } @@ -80,265 +81,245 @@ void RepairGUI_ShapeProcessDlg::init() initParamsValues(); initSelection(); - setCaption(tr("GEOM_SHAPEPROCESS_TITLE")); + setWindowTitle( tr( "GEOM_SHAPEPROCESS_TITLE" ) ); - GroupConstructors->hide(); + mainFrame()->GroupConstructors->hide(); // select widget on the top - mySelectWdgt = new DlgRef_1Sel_QTD( this, "SelectedObjects" ); - mySelectWdgt->GroupBox1->setTitle( tr("GEOM_SHAPE") ); - mySelectWdgt->TextLabel1->setText( tr("GEOM_SELECTED_OBJECTS") ); - mySelectWdgt->PushButton1->setPixmap( SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT")) ); + mySelectWdgt = new DlgRef_1Sel( centralWidget() ); + mySelectWdgt->GroupBox1->setTitle( tr( "GEOM_SHAPE" ) ); + mySelectWdgt->TextLabel1->setText( tr( "GEOM_SELECTED_OBJECTS" ) ); + mySelectWdgt->PushButton1->setIcon( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); mySelectWdgt->LineEdit1->setReadOnly( true ); - Layout1->addWidget( mySelectWdgt, 0, 0 ); - // layout the two group boxes in the middle, add a list of operations - QFrame* aMidFrame = new QFrame( this ); - QGridLayout* aMidLay = new QGridLayout( aMidFrame, 1, 3, 0, 5 ); - QGroupBox* anOperGr = new QGroupBox( tr("GEOM_OPERATIONS"), aMidFrame ); - QVBoxLayout* aOperLay = new QVBoxLayout( anOperGr, 0, 0 ); + QGroupBox* anOperGr = new QGroupBox( tr( "GEOM_OPERATIONS" ), centralWidget() ); - myOpList = new QListView( anOperGr ); - myOpList->setSorting( -1 ); - myOpList->addColumn( "Operations" ); - myOpList->header()->hide(); + // operations list widget + myOpList = new QListWidget( anOperGr ); + myOpList->setSortingEnabled( false ); + myOpList->setSizePolicy( QSizePolicy( QSizePolicy::Minimum, QSizePolicy::Expanding ) ); + + QVBoxLayout* aOperLay = new QVBoxLayout( anOperGr ); + aOperLay->setMargin( 9 ); aOperLay->addWidget( myOpList ); - QStringList::ConstIterator it = myOpLst.end(); - do // iterating from end to begin so to keep the order of items in the listview. - new QCheckListItem ( myOpList, *(--it), QCheckListItem::CheckBox ); - while ( it != myOpLst.begin() ); - QGroupBox* aParamsGr = new QGroupBox( tr("GEOM_PARAMETERS"), aMidFrame ); - aMidLay->addWidget( anOperGr, 0, 0 ); - aMidLay->addMultiCellWidget( aParamsGr, 0, 0, 1, 3 ); - aMidLay->setColStretch( 0, 1 ); - aMidLay->setColStretch( 1, 2 ); - - Layout1->addWidget( aMidFrame, 2, 0 ); - Layout1->setRowStretch( 0, 0 ); - Layout1->setRowStretch( 1, 1 ); + QGroupBox* aParamsGr = new QGroupBox( tr( "GEOM_PARAMETERS" ), centralWidget() ); // add a widget stack to the parameters group box - myStack = new QWidgetStack( aParamsGr ); - QVBoxLayout* aVParamsLay = new QVBoxLayout( aParamsGr ); - aVParamsLay->addWidget( myStack ); + QStackedLayout* aStack = new QStackedLayout( aParamsGr ); // continueties values.. - QStringList aContinueties = QStringList::split( ",", "C0,G1,C1,G2,C2,C3,CN" ); + QStringList aContinueties = QString( "C0,G1,C1,G2,C2,C3,CN" ).split( "," ); - // FixShape - QFrame* aFrame = new QFrame( myStack ); - QGridLayout* aLay = new QGridLayout( aFrame, 10, 2, 0, 5 ); + // fill in the widgets + for ( int i = 0; i < myOpLst.count(); i++ ) { + QListWidgetItem* item = new QListWidgetItem( myOpLst[i] ); + item->setFlags( Qt::ItemIsSelectable | Qt::ItemIsEnabled | Qt::ItemIsUserCheckable ); + item->setCheckState( Qt::Unchecked ); + myOpList->addItem( item ); - myFixShapeTol3D = new QtxDblSpinBox( 0, 100, 1e-7, aFrame );//QAD_SpinBoxDbl( aFrame, 0, 100, 1e-7, 10, 1e-10 ); - myFixShapeTol3D->setPrecision( 10 ); - myFixShapeMaxTol3D = new QtxDblSpinBox( 0, 100, 1e-7, aFrame );//QAD_SpinBoxDbl( aFrame, 0, 100, 1e-7, 10, 1e-10 ); - myFixShapeMaxTol3D->setPrecision( 10 ); - - aLay->addWidget( new QLabel( tr("GEOM_3D_TOLERANCE"), aFrame ), 0, 0 ); - aLay->addWidget( myFixShapeTol3D, 0, 1 ); - aLay->addWidget( new QLabel( tr("GEOM_MAX_3D_TOLERANCE"), aFrame ), 1, 0 ); - aLay->addWidget( myFixShapeMaxTol3D, 1, 1 ); - aLay->setRowStretch( 9, 2 ); - - myStack->addWidget( aFrame, myOpLst.findIndex( "FixShape" ) ); - - // FixFaceSize - aFrame = new QFrame( myStack ); - aLay = new QGridLayout( aFrame, 10, 2, 0, 5 ); - - myFixFaceSizeTol = new QtxDblSpinBox( 0, 100, 1e-7, aFrame );//QAD_SpinBoxDbl( aFrame, 0, 100, 1e-7, 10, 1e-10 ); - myFixFaceSizeTol->setPrecision( 10 ); - - aLay->addWidget( new QLabel( tr("GEOM_TOLERANCE"), aFrame ), 0, 0 ); - aLay->addWidget( myFixFaceSizeTol, 0, 1 ); - aLay->setRowStretch( 9, 2 ); - - myStack->addWidget( aFrame, myOpLst.findIndex( "FixFaceSize" ) ); - - // DropSmallEdges - aFrame = new QFrame( myStack ); - aLay = new QGridLayout( aFrame, 10, 2, 0, 5 ); - - myDropSmallEdgesTol3D = new QtxDblSpinBox( 0, 100, 1e-7, aFrame );//QAD_SpinBoxDbl( aFrame, 0, 100, 1e-7, 10, 1e-10 ); - myDropSmallEdgesTol3D->setPrecision( 10 ); + QWidget* w; + if ( myOpLst[i] == "FixShape" ) { + // FixShape + w = new QWidget( aParamsGr ); + QGridLayout* aLay = new QGridLayout( w ); + aLay->setMargin( 9 ); aLay->setSpacing( 6 ); + + myFixShapeTol3D = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); + myFixShapeMaxTol3D = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); + + aLay->addWidget( new QLabel( tr( "GEOM_3D_TOLERANCE" ), w ), 0, 0 ); + aLay->addWidget( myFixShapeTol3D, 0, 1 ); + aLay->addWidget( new QLabel( tr( "GEOM_MAX_3D_TOLERANCE" ), w ), 1, 0 ); + aLay->addWidget( myFixShapeMaxTol3D, 1, 1 ); + aLay->setRowStretch( aLay->rowCount(), 5 ); + } + else if ( myOpLst[i] == "FixFaceSize" ) { + // FixFaceSize + w = new QWidget( aParamsGr ); + QGridLayout* aLay = new QGridLayout( w ); + aLay->setMargin( 9 ); aLay->setSpacing( 6 ); + + myFixFaceSizeTol = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); + + aLay->addWidget( new QLabel( tr( "GEOM_TOLERANCE" ), w ), 0, 0 ); + aLay->addWidget( myFixFaceSizeTol, 0, 1 ); + aLay->setRowStretch( aLay->rowCount(), 5 ); + } + else if ( myOpLst[i] == "DropSmallEdges" ) { + // DropSmallEdges + w = new QWidget( aParamsGr ); + QGridLayout* aLay = new QGridLayout( w ); + aLay->setMargin( 9 ); aLay->setSpacing( 6 ); + + myDropSmallEdgesTol3D = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); - aLay->addWidget( new QLabel( tr("GEOM_3D_TOLERANCE"), aFrame ), 0, 0 ); - aLay->addWidget( myDropSmallEdgesTol3D, 0, 1 ); - aLay->setRowStretch( 9, 2 ); - - myStack->addWidget( aFrame, myOpLst.findIndex( "DropSmallEdges" ) ); - - // SplitAngle - aFrame = new QFrame( myStack ); - aLay = new QGridLayout( aFrame, 10, 2, 0, 5 ); - - mySplitAngleAngle = new QtxDblSpinBox( 0, 360, 1, aFrame );//QAD_SpinBoxDbl( aFrame, 0, 360, 1 ); - mySplitAngleMaxTol = new QtxDblSpinBox( 0, 100, 1e-7, aFrame );//QAD_SpinBoxDbl( aFrame, 0, 100, 1e-7, 10, 1e-10 ); - mySplitAngleMaxTol->setPrecision( 10 ); - - aLay->addWidget( new QLabel( tr("GEOM_ANGLE_1"), aFrame ), 0, 0 ); - aLay->addWidget( mySplitAngleAngle, 0, 1 ); - aLay->addWidget( new QLabel( tr("GEOM_MAX_TOLERANCE"), aFrame ), 1, 0 ); - aLay->addWidget( mySplitAngleMaxTol, 1, 1 ); - aLay->setRowStretch( 9, 2 ); - - myStack->addWidget( aFrame, myOpLst.findIndex( "SplitAngle" ) ); - - // SplitClosedFaces - aFrame = new QFrame( myStack ); - aLay = new QGridLayout( aFrame, 10, 2, 0, 5 ); - - mySplitClosedFacesNum = new QSpinBox( aFrame ); + aLay->addWidget( new QLabel( tr( "GEOM_3D_TOLERANCE" ), w ), 0, 0 ); + aLay->addWidget( myDropSmallEdgesTol3D, 0, 1 ); + aLay->setRowStretch( aLay->rowCount(), 5 ); + } + else if ( myOpLst[i] == "SplitAngle" ) { + // SplitAngle + w = new QWidget( aParamsGr ); + QGridLayout* aLay = new QGridLayout( w ); + aLay->setMargin( 9 ); aLay->setSpacing( 6 ); + + mySplitAngleAngle = new SalomeApp_DoubleSpinBox( 0, 360, 1, 10, 10, w ); + mySplitAngleMaxTol = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); + + aLay->addWidget( new QLabel( tr( "GEOM_ANGLE_1" ), w ), 0, 0 ); + aLay->addWidget( mySplitAngleAngle, 0, 1 ); + aLay->addWidget( new QLabel( tr( "GEOM_MAX_TOLERANCE" ), w ), 1, 0 ); + aLay->addWidget( mySplitAngleMaxTol, 1, 1 ); + aLay->setRowStretch( aLay->rowCount(), 5 ); + } + else if ( myOpLst[i] == "SplitClosedFaces" ) { + // SplitClosedFaces + w = new QWidget( aParamsGr ); + QGridLayout* aLay = new QGridLayout( w ); + aLay->setMargin( 9 ); aLay->setSpacing( 6 ); + + mySplitClosedFacesNum = new SalomeApp_IntSpinBox( w ); - aLay->addWidget( new QLabel( tr("GEOM_NUM_SPLIT_POINTS"), aFrame ), 0, 0 ); - aLay->addWidget( mySplitClosedFacesNum, 0, 1 ); - aLay->setRowStretch( 9, 2 ); + aLay->addWidget( new QLabel( tr( "GEOM_NUM_SPLIT_POINTS" ), w ), 0, 0 ); + aLay->addWidget( mySplitClosedFacesNum, 0, 1 ); + aLay->setRowStretch( aLay->rowCount(), 5 ); + } + else if ( myOpLst[i] == "SplitContinuity" ) { + // SplitContinuity + w = new QWidget( aParamsGr ); + QGridLayout* aLay = new QGridLayout( w ); + aLay->setMargin( 9 ); aLay->setSpacing( 6 ); - myStack->addWidget( aFrame, myOpLst.findIndex( "SplitClosedFaces" ) ); + mySplitContTol3D = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); + mySplitContSurfCont = new QComboBox( w ); + mySplitContSurfCont->addItems( aContinueties ); + mySplitContCurvCont = new QComboBox( w ); + mySplitContCurvCont->addItems( aContinueties ); + + aLay->addWidget( new QLabel( tr( "GEOM_3D_TOLERANCE" ), w ), 0, 0 ); + aLay->addWidget( mySplitContTol3D, 0, 1 ); + aLay->addWidget( new QLabel( tr( "GEOM_SURFACE_CONTINUTY" ), w ), 1, 0 ); + aLay->addWidget( mySplitContSurfCont, 1, 1 ); + aLay->addWidget( new QLabel( tr( "GEOM_CURVE_CONTINUTY" ), w ), 2, 0 ); + aLay->addWidget( mySplitContCurvCont, 2, 1 ); + aLay->setRowStretch( aLay->rowCount(), 5 ); + } + else if ( myOpLst[i] == "BSplineRestriction" ) { + // BSplineRestriction + w = new QWidget( aParamsGr ); + QGridLayout* aLay = new QGridLayout( w ); + aLay->setMargin( 9 ); aLay->setSpacing( 6 ); - // SplitContinuity - aFrame = new QFrame( myStack ); - aLay = new QGridLayout( aFrame, 10, 2, 0, 5 ); + myBSplineSurfModeChk = new QCheckBox( tr("GEOM_SURFACE_MODE"), w ); + myBSpline3DCurveChk = new QCheckBox( tr("GEOM_3D_CURVE_MODE"), w ); + myBSpline2DCurveChk = new QCheckBox( tr("GEOM_2D_CURVE_MODE"), w ); - mySplitContTol3D = new QtxDblSpinBox( 0, 100, 1e-7, aFrame );//QAD_SpinBoxDbl( aFrame, 0, 100, 1e-7, 10, 1e-10 ); - mySplitContTol3D->setPrecision( 10 ); - mySplitContSurfCont = new QComboBox( aFrame ); - mySplitContSurfCont->insertStringList( aContinueties ); - mySplitContCurvCont = new QComboBox( aFrame ); - mySplitContCurvCont->insertStringList( aContinueties ); + myBSplineTol3D = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); + + myBSplineTol2D = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); - aLay->addWidget( new QLabel( tr("GEOM_3D_TOLERANCE"), aFrame ), 0, 0 ); - aLay->addWidget( mySplitContTol3D, 0, 1 ); - aLay->addWidget( new QLabel( tr("GEOM_SURFACE_CONTINUTY"), aFrame ), 1, 0 ); - aLay->addWidget( mySplitContSurfCont, 1, 1 ); - aLay->addWidget( new QLabel( tr("GEOM_CURVE_CONTINUTY"), aFrame ), 2, 0 ); - aLay->addWidget( mySplitContCurvCont, 2, 1 ); - aLay->setRowStretch( 9, 2 ); + myBSplineDegree = new SalomeApp_IntSpinBox( w ); + myBSplineSegments = new SalomeApp_IntSpinBox( w ); + myBSpline2DCont = new QComboBox( w ); + myBSpline2DCont->addItems( aContinueties ); + myBSpline3DCont = new QComboBox( w ); + myBSpline3DCont->addItems( aContinueties ); + + myBSplineSurfModeChk->setChecked( true ); + myBSpline3DCurveChk->setChecked( true ); + myBSpline2DCurveChk->setChecked( true ); + + aLay->addWidget( myBSplineSurfModeChk, 0, 0 ); + aLay->addWidget( myBSpline3DCurveChk, 1, 0 ); + aLay->addWidget( myBSpline2DCurveChk, 2, 0 ); + aLay->addWidget( new QLabel( tr( "GEOM_3D_TOLERANCE" ), w ), 3, 0 ); + aLay->addWidget( myBSplineTol3D, 3, 1 ); + aLay->addWidget( new QLabel( tr( "GEOM_2D_TOLERANCE" ), w ), 4, 0 ); + aLay->addWidget( myBSplineTol2D, 4, 1 ); + aLay->addWidget( new QLabel( tr( "GEOM_REQUIRED_DEGREE" ), w ), 5, 0 ); + aLay->addWidget( myBSplineDegree, 5, 1 ); + aLay->addWidget( new QLabel( tr( "GEOM_REQUIRED_NUM_SEGMENTS" ), w ), 6, 0 ); + aLay->addWidget( myBSplineSegments, 6, 1 ); + aLay->addWidget( new QLabel( tr( "GEOM_3D_CONTINUTY" ), w ), 7, 0 ); + aLay->addWidget( myBSpline3DCont, 7, 1 ); + aLay->addWidget( new QLabel( tr( "GEOM_2D_CONTINUTY" ), w ), 8, 0 ); + aLay->addWidget( myBSpline2DCont, 8, 1 ); + aLay->setRowStretch( aLay->rowCount(), 5 ); + } + else if ( myOpLst[i] == "ToBezier" ) { + // ToBezier + w = new QWidget( aParamsGr ); + QGridLayout* aLay = new QGridLayout( w ); + aLay->setMargin( 9 ); aLay->setSpacing( 6 ); + + myToBezierSurfModeChk = new QCheckBox( tr("GEOM_SURFACE_MODE"), w ); + myToBezier3DCurveChk = new QCheckBox( tr("GEOM_3D_CURVE_MODE"), w ); + myToBezier2DCurveChk = new QCheckBox( tr("GEOM_2D_CURVE_MODE"), w ); - myStack->addWidget( aFrame, myOpLst.findIndex( "SplitContinuity" ) ); + myToBezierMaxTol = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); - // BSplineRestriction - aFrame = new QFrame( myStack ); - aLay = new QGridLayout( aFrame, 10, 2, 0, 5 ); + aLay->addWidget( myToBezierSurfModeChk, 0, 0 ); + aLay->addWidget( myToBezier3DCurveChk, 1, 0 ); + aLay->addWidget( myToBezier2DCurveChk, 2, 0 ); + aLay->addWidget( new QLabel( tr( "GEOM_MAX_TOLERANCE" ), w ), 3, 0 ); + aLay->addWidget( myToBezierMaxTol, 3, 1 ); + aLay->setRowStretch( aLay->rowCount(), 5 ); + } + else if ( myOpLst[i] == "SameParameter" ) { + // SameParameter + w = new QWidget( aParamsGr ); + QGridLayout* aLay = new QGridLayout( w ); + aLay->setMargin( 9 ); aLay->setSpacing( 6 ); - myBSplineSurfModeChk = new QCheckBox( tr("GEOM_SURFACE_MODE"), aFrame ); - myBSpline3DCurveChk = new QCheckBox( tr("GEOM_3D_CURVE_MODE"), aFrame ); - myBSpline2DCurveChk = new QCheckBox( tr("GEOM_2D_CURVE_MODE"), aFrame ); + mySameParameterTol3D = new SalomeApp_DoubleSpinBox( 0., 100., 1e-7, 10, 10, w ); + + aLay->addWidget( new QLabel( tr( "GEOM_3D_TOLERANCE" ), w ), 0, 0 ); + aLay->addWidget( mySameParameterTol3D, 0, 1 ); + aLay->setRowStretch( aLay->rowCount(), 5 ); + } + else { + w = new QWidget( aParamsGr ); // dumb widget + } + aStack->insertWidget( i, w ); + } - myBSplineTol3D = new QtxDblSpinBox( 0, 100, 1e-7, aFrame );//QAD_SpinBoxDbl( aFrame, 0, 100, 1e-7, 10, 1e-10 ); - myBSplineTol3D->setPrecision( 10 ); - - myBSplineTol2D = new QtxDblSpinBox( 0, 100, 1e-7, aFrame );//QAD_SpinBoxDbl( aFrame, 0, 100, 1e-7, 10, 1e-10 ); - myBSplineTol2D->setPrecision( 10 ); - - myBSplineDegree = new QSpinBox( aFrame ); - myBSplineSegments = new QSpinBox( aFrame ); - myBSpline2DCont = new QComboBox( aFrame ); - myBSpline2DCont->insertStringList( aContinueties ); - myBSpline3DCont = new QComboBox( aFrame ); - myBSpline3DCont->insertStringList( aContinueties ); - - myBSplineSurfModeChk->setChecked( true ); - myBSpline3DCurveChk->setChecked( true ); - myBSpline2DCurveChk->setChecked( true ); - - aLay->addWidget( myBSplineSurfModeChk, 0, 0 ); - aLay->addWidget( myBSpline3DCurveChk, 1, 0 ); - aLay->addWidget( myBSpline2DCurveChk, 2, 0 ); - aLay->addWidget( new QLabel( tr("GEOM_3D_TOLERANCE"), aFrame), 3, 0 ); - aLay->addWidget( myBSplineTol3D, 3, 1 ); - aLay->addWidget( new QLabel( tr("GEOM_2D_TOLERANCE"), aFrame), 4, 0 ); - aLay->addWidget( myBSplineTol2D, 4, 1 ); - aLay->addWidget( new QLabel( tr("GEOM_REQUIRED_DEGREE"), aFrame), 5, 0 ); - aLay->addWidget( myBSplineDegree, 5, 1 ); - aLay->addWidget( new QLabel( tr("GEOM_REQUIRED_NUM_SEGMENTS"), aFrame), 6, 0 ); - aLay->addWidget( myBSplineSegments, 6, 1 ); - aLay->addWidget( new QLabel( tr("GEOM_3D_CONTINUTY"), aFrame), 7, 0 ); - aLay->addWidget( myBSpline3DCont, 7, 1 ); - aLay->addWidget( new QLabel( tr("GEOM_2D_CONTINUTY"), aFrame), 8, 0 ); - aLay->addWidget( myBSpline2DCont, 8, 1 ); - aLay->setRowStretch( 9, 2 ); - - myStack->addWidget( aFrame, myOpLst.findIndex( "BSplineRestriction" ) ); - - // ToBezier - aFrame = new QFrame( myStack ); - aLay = new QGridLayout( aFrame, 10, 2, 0, 5 ); - - myToBezierSurfModeChk = new QCheckBox( tr("GEOM_SURFACE_MODE"), aFrame ); - myToBezier3DCurveChk = new QCheckBox( tr("GEOM_3D_CURVE_MODE"), aFrame ); - myToBezier2DCurveChk = new QCheckBox( tr("GEOM_2D_CURVE_MODE"), aFrame ); - - myToBezierMaxTol = new QtxDblSpinBox( 0, 100, 1e-7, aFrame );//QAD_SpinBoxDbl( aFrame, 0, 100, 1e-7, 10, 1e-10 ); - myToBezierMaxTol->setPrecision( 10 ); - - aLay->addWidget( myToBezierSurfModeChk, 0, 0 ); - aLay->addWidget( myToBezier3DCurveChk, 1, 0 ); - aLay->addWidget( myToBezier2DCurveChk, 2, 0 ); - aLay->addWidget( new QLabel( tr("GEOM_MAX_TOLERANCE"), aFrame), 3, 0 ); - aLay->addWidget( myToBezierMaxTol, 3, 1 ); - aLay->setRowStretch( 9, 2 ); - - myStack->addWidget( aFrame, myOpLst.findIndex( "ToBezier" ) ); - - // SameParameter - aFrame = new QFrame( myStack ); - aLay = new QGridLayout( aFrame, 10, 2, 0, 5 ); - - mySameParameterTol3D = new QtxDblSpinBox( 0, 100, 1e-7, aFrame );//QAD_SpinBoxDbl( aFrame, 0, 100, 1e-7, 10, 1e-10 ); - mySameParameterTol3D->setPrecision( 10 ); - - aLay->addWidget( new QLabel( tr("GEOM_3D_TOLERANCE"), aFrame ), 0, 0 ); - aLay->addWidget( mySameParameterTol3D, 0, 1 ); - aLay->setRowStretch( 9, 2 ); - - myStack->addWidget( aFrame, myOpLst.findIndex( "SameParameter" ) ); + QGridLayout* layout = new QGridLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( mySelectWdgt, 0, 0, 1, 2 ); + layout->addWidget( anOperGr, 1, 0 ); + layout->addWidget( aParamsGr, 1, 1 ); // signals and slots connections - connect( buttonOk, SIGNAL(clicked()), this, SLOT(onOk()) ); - connect( buttonApply, SIGNAL(clicked()), this, SLOT(onApply()) ); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( onOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( onApply() ) ); - connect( ((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(selectionChanged()) ); - connect( myOpList, SIGNAL(selectionChanged()), this, SLOT(operationChanged()) ); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( selectionChanged() ) ); - connect( mySelectWdgt->PushButton1, SIGNAL(clicked()), this, SLOT(selectClicked()) ); - connect( mySelectWdgt->LineEdit1, SIGNAL(returnPressed()), this, SLOT(lineEditReturnPressed()) ); + connect( mySelectWdgt->PushButton1, SIGNAL( clicked() ), this, SLOT( selectClicked() ) ); + connect( mySelectWdgt->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( lineEditReturnPressed() ) ); - connect( myToBezierSurfModeChk, SIGNAL(toggled(bool)), SLOT(advOptionToggled(bool)) ); + connect( myToBezierSurfModeChk, SIGNAL( toggled( bool ) ), this, SLOT( advOptionToggled( bool ) ) ); + + connect( myOpList, SIGNAL( currentRowChanged( int ) ), aStack, SLOT( setCurrentIndex( int ) ) ); adjustSize(); loadDefaults(); // init dialog fields with values from resource file - myOpList->setSelected( myOpList->findItem( "FixShape", 0 ), true ); + //myOpList->setCurrentRow( myOpList->findItem( 0 ); reset(); initName( tr( "PROCESS_SHAPE_NEW_OBJ_NAME" ) ); } -//================================================================================= -// function : operationChanged() -// purpose : -//================================================================================= -void RepairGUI_ShapeProcessDlg::operationChanged() -{ - QListViewItem* anItem = myOpList->selectedItem(); - if ( anItem ) - { - int id = myOpLst.findIndex( anItem->text(0) ); - if ( id > -1 ) - myStack->raiseWidget( id ); - } -} - //================================================================================= // function : onOk() // purpose : Same than click on apply but close this dialog. //================================================================================= void RepairGUI_ShapeProcessDlg::onOk() { - if (onApply()) + if ( onApply() ) ClickOnCancel(); } @@ -367,13 +348,16 @@ bool RepairGUI_ShapeProcessDlg::onApply() //================================================================================= void RepairGUI_ShapeProcessDlg::selectionChanged() { - reset(); + reset(); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + Standard_Boolean aRes = Standard_False; int i = 0; - myObjects->length( IObjectCount() ); - for ( SALOME_ListIteratorOfListIO anIt( selectedIO() ); anIt.More(); anIt.Next() ) - { + myObjects->length(aSelList.Extent()); + for (SALOME_ListIteratorOfListIO anIt (aSelList); anIt.More(); anIt.Next()) { GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject( anIt.Value(), aRes ); if ( !CORBA::is_nil( aSelectedObject ) && aRes ) myObjects[i++] = aSelectedObject; @@ -415,8 +399,8 @@ void RepairGUI_ShapeProcessDlg::lineEditReturnPressed() void RepairGUI_ShapeProcessDlg::activate() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(selectionChanged())); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication( ) ))->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( selectionChanged() ) ); reset(); //myGeomGUI->SetState( 0 ); @@ -428,24 +412,13 @@ void RepairGUI_ShapeProcessDlg::activate() // function : enterEvent() // purpose : Mouse enter onto the dialog to activate it //================================================================================= -void RepairGUI_ShapeProcessDlg::enterEvent(QEvent* e) +void RepairGUI_ShapeProcessDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupBoxName->isEnabled() ) activate(); } -//================================================================================= -// function : closeEvent() -// purpose : same than click on cancel button -//================================================================================= -void RepairGUI_ShapeProcessDlg::closeEvent(QCloseEvent* e) -{ - //myGeomGUI->SetState( -1 ); - GEOMBase_Skeleton::closeEvent( e ); -} - - //================================================================================= // function : reset() // purpose : Completely reset the state of method including local context @@ -454,7 +427,7 @@ void RepairGUI_ShapeProcessDlg::reset() { myObjects = new GEOM::ListOfGO(); myObjects->length( 0 ); - mySelectWdgt->LineEdit1->setText(""); + mySelectWdgt->LineEdit1->setText( "" ); } @@ -462,15 +435,13 @@ void RepairGUI_ShapeProcessDlg::reset() // function : get_convert // purpose : conversion of angle values to radians (non-angle values are not converted) //================================================================================= -const char* get_convert( const char* theParam, const char* theValue ) +const char* get_convert( const char* theParam, const QString& theValue ) { - if ( !strcmp( theParam, "SplitAngle.Angle" ) ) - { - double doubleValue = atof( theValue ) * PI / 180; - TCollection_AsciiString str( doubleValue ); - return CORBA::string_dup( str.ToCString() ); + if ( !strcmp( theParam, "SplitAngle.Angle" ) ) { + double doubleValue = theValue.toDouble() * PI / 180; + return CORBA::string_dup( QString::number( doubleValue ).toLatin1().constData() ); } - return CORBA::string_dup( theValue ); + return CORBA::string_dup( theValue.toLatin1().constData() ); } //================================================================================= @@ -479,8 +450,7 @@ const char* get_convert( const char* theParam, const char* theValue ) //================================================================================= const char* set_convert( const char* theParam, const char* theValue ) { - if ( !strcmp( theParam, "SplitAngle.Angle" ) ) - { + if ( !strcmp( theParam, "SplitAngle.Angle" ) ) { double doubleValue = atof( theValue ) * 180 / PI; TCollection_AsciiString str( doubleValue ); return CORBA::string_dup( str.ToCString() ); @@ -499,26 +469,25 @@ void RepairGUI_ShapeProcessDlg::loadDefaults() anOp->GetShapeProcessParameters( anOperators, aParams, aValues ); // check the default items-operators - int i; - for ( i = 0; i < anOperators->length(); i++ ) - { + for ( int i = 0; i < anOperators->length(); i++ ) { //MESSAGE("-->"<<(const char*)anOperators[i]); - QListViewItem* anItem = myOpList->findItem( (const char*)anOperators[i], 0 ); - if ( anItem /*&& anItem->inherits( "QCheckListItem" )*/ ) - ((QCheckListItem*) anItem)->setOn( true ); + QList items = myOpList->findItems ( (const char*)anOperators[i], Qt::MatchFixedString ); + if ( items.count() ) + ( items[0] )->setCheckState( Qt::Checked ); } // Retrieve default parameters for ALL operators - for ( QListViewItemIterator it(myOpList); it.current(); ++it ) { - CORBA::String_var anOperator = CORBA::string_dup( it.current()->text( 0 ).latin1() ); + for ( int i = 0; i < myOpList->count(); i++ ) { + CORBA::String_var anOperator = CORBA::string_dup( myOpList->item( i )->text().toLatin1().constData() ); anOp->GetOperatorParameters( anOperator.in(), aParams, aValues ); // set default values of parameters if ( aParams->length() != aValues->length() ) continue; - for ( i = 0; i < aParams->length(); i++ ) { - QWidget* aCtrl = getControl( (const char*)aParams[i] ); - const char* aValue = set_convert( (const char*)aParams[i], aValues[i] ); + + for ( int j = 0; j < aParams->length(); j++ ) { + QWidget* aCtrl = getControl( (const char*)aParams[j] ); + const char* aValue = set_convert( (const char*)aParams[j], aValues[j] ); setValue( aCtrl, aValue ); } } @@ -528,40 +497,52 @@ void RepairGUI_ShapeProcessDlg::loadDefaults() // function : setValue() // purpose : set value in the proper way //================================================================================= -void RepairGUI_ShapeProcessDlg::setValue( QWidget* theControl, const char* theValue ) +void RepairGUI_ShapeProcessDlg::setValue( QWidget* theControl, const QString& theValue ) { - if ( theControl == NULL || theValue == NULL ) - return; - - if ( theControl->isA( "QtxDblSpinBox" ) ) - ((QtxDblSpinBox*)theControl)->setValue( QString( theValue ).toDouble() ); - else if ( theControl->isA( "QSpinBox" ) ) - ((QSpinBox*)theControl)->setValue( QString( theValue ).toInt() ); - else if ( theControl->isA( "QComboBox" ) ) - ((QComboBox*)theControl)->setCurrentText( QString( theValue ) ); - else if ( theControl->isA( "QCheckBox" ) ) - ((QCheckBox*)theControl)->setChecked( QString( theValue ).toInt() != 0 ); + if ( theControl && !theValue.isNull() ) { + if ( qobject_cast( theControl ) ) + qobject_cast( theControl )->setValue( theValue.toDouble() ); + else if ( qobject_cast( theControl ) ) + qobject_cast( theControl )->setValue( theValue.toInt() ); + else if ( qobject_cast( theControl ) ) + qobject_cast( theControl )->setEditText( theValue ); + else if ( qobject_cast( theControl ) ) + qobject_cast( theControl )->setChecked( theValue.toInt() != 0 ); + } } //================================================================================= // function : getValue() // purpose : get value in the proper way //================================================================================= -const char* RepairGUI_ShapeProcessDlg::getValue( QWidget* theControl ) const +QString RepairGUI_ShapeProcessDlg::getValue( QWidget* theControl ) const { - if ( theControl == NULL ) - return ""; + if ( theControl ) { + if ( qobject_cast( theControl ) ) + return QString::number( qobject_cast( theControl )->value() ); + else if ( qobject_cast( theControl ) ) + return QString::number( qobject_cast( theControl )->value() ); + else if ( qobject_cast( theControl ) ) + return qobject_cast( theControl )->currentText(); + else if ( qobject_cast( theControl ) ) + return qobject_cast( theControl )->isChecked() ? "1" : "0"; + } + return 0; +} - if ( theControl->isA( "QtxDblSpinBox" ) ) - return ((QtxDblSpinBox*)theControl)->text().latin1(); - else if ( theControl->isA( "QSpinBox" ) ) - return ((QSpinBox*)theControl)->text().latin1(); - else if ( theControl->isA( "QComboBox" ) ) - return ((QComboBox*)theControl)->currentText().latin1(); - else if ( theControl->isA( "QCheckBox" ) ) - return ((QCheckBox*)theControl)->isChecked() ? "1" : "0"; - - return ""; +//================================================================================= +// function : getText() +// purpose : get text in the proper way +//================================================================================= +QString RepairGUI_ShapeProcessDlg::getText( QWidget* theControl ) const +{ + if ( theControl ) { + if ( qobject_cast( theControl ) ) + return qobject_cast( theControl )->text(); + else if ( qobject_cast( theControl ) ) + return qobject_cast( theControl )->text(); + } + return QString::null; } //================================================================================= @@ -579,21 +560,35 @@ GEOM::GEOM_IOperations_ptr RepairGUI_ShapeProcessDlg::createOperation() //================================================================================= bool RepairGUI_ShapeProcessDlg::isValid( QString& msg ) { + bool ok = true; + QMapIterator aMapIter( myValMap ); + while( aMapIter.hasNext() ) { + aMapIter.next(); + const QStringList& aList = aMapIter.value(); + QListIterator aListIter( aList ); + while( aListIter.hasNext() ) { + const QString& aParam = aListIter.next(); + QWidget* aControl = getControl( aParam ); + if ( qobject_cast( aControl ) ) + ok = qobject_cast( aControl )->isValid( msg, !IsPreview() ) && ok; + else if ( qobject_cast( aControl ) ) + ok = qobject_cast( aControl )->isValid( msg, !IsPreview() ) && ok; + } + } + bool error = false; GEOM::string_array_var anOperators = getActiveOperators(); - if ( !myObjects->length() ) - { + if ( !myObjects->length() ) { msg += tr( "ERROR_NO_OBJECTS" ); error = true; } - if ( !anOperators->length() ) - { + if ( !anOperators->length() ) { if ( error ) msg += "\n"; msg += tr( "ERROR_NO_OPERATORS" ); error = true; } - return !error; + return !error && ok; } //================================================================================= @@ -624,19 +619,33 @@ bool RepairGUI_ShapeProcessDlg::execute( ObjectList& objects ) */// ----------- QStringList anErrorObjNames; - for ( int i = 0; i < myObjects->length(); i++ ) - { + for ( int i = 0; i < myObjects->length(); i++ ) { GEOM::GEOM_Object_var obj = myObjects[i]; - GEOM::GEOM_Object_var anObj = GEOM::GEOM_IHealingOperations::_narrow( getOperation() )->ProcessShape( - obj, anOperators, aParams, aValues ); + GEOM::GEOM_Object_var anObj = GEOM::GEOM_IHealingOperations::_narrow( getOperation() )-> + ProcessShape( obj, anOperators, aParams, aValues ); if ( anObj->_is_nil() ) anErrorObjNames << GEOMBase::GetName( obj ); else + { + if ( !IsPreview() ) + { + QStringList aParameters; + + for ( int i = 0; i < anOperators->length(); i++ ) + aParameters << QString( anOperators[i] ); + + for ( int i = 0; i < aParams->length(); i++ ) + aParameters << QString( aParams[i] ); + + aParameters << getTexts( aParams ); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } objects.push_back( anObj._retn() ); + } } if ( !anErrorObjNames.empty() ) - MESSAGE("ERRORS occured while processing the following objects: " << anErrorObjNames.join( " " )); + MESSAGE( "ERRORS occured while processing the following objects: " << anErrorObjNames.join( " " ).toLatin1().data() ); return anErrorObjNames.size() < myObjects->length(); // true if at least one object was OK, false if ALL objects were nil after Healing. } @@ -648,15 +657,17 @@ bool RepairGUI_ShapeProcessDlg::execute( ObjectList& objects ) GEOM::string_array* RepairGUI_ShapeProcessDlg::getActiveOperators() { GEOM::string_array_var anOperators = new GEOM::string_array(); - QStringList aCheckedList; - QStringList::Iterator it; - for ( it = myOpLst.begin(); it != myOpLst.end(); ++it ) - if ( ((QCheckListItem*)myOpList->findItem( *it, 0 ))->isOn() ) - aCheckedList << *it; - anOperators->length( aCheckedList.size() ); - int i = 0; - for ( it = aCheckedList.begin(); it != aCheckedList.end(); ++it ) - anOperators[i++] = CORBA::string_dup( (*it).latin1() ); + QStringList aCheckedList; + + for ( int i = 0; i < myOpList->count(); i++ ) { + if ( myOpList->item( i )->checkState() == Qt::Checked ) + aCheckedList << myOpList->item( i )->text(); + } + + anOperators->length( aCheckedList.count() ); + + for ( int i = 0; i < aCheckedList.count(); i++ ) + anOperators[i] = CORBA::string_dup( aCheckedList[i].toLatin1().constData() ); return anOperators._retn(); } @@ -665,34 +676,33 @@ GEOM::string_array* RepairGUI_ShapeProcessDlg::getActiveOperators() // function : getcontrol // purpose : //================================================================================= -QWidget* RepairGUI_ShapeProcessDlg::getControl( const char* theParam ) +QWidget* RepairGUI_ShapeProcessDlg::getControl( const QString& theParam ) { - string aParam = theParam; - if ( aParam == "SplitAngle.Angle" ) return mySplitAngleAngle; - else if ( aParam == "SplitAngle.MaxTolerance" ) return mySplitAngleMaxTol; - else if ( aParam == "SplitClosedFaces.NbSplitPoints" ) return mySplitClosedFacesNum; - else if ( aParam == "FixFaceSize.Tolerance" ) return myFixFaceSizeTol; - else if ( aParam == "DropSmallEdges.Tolerance3d" ) return myDropSmallEdgesTol3D; - else if ( aParam == "BSplineRestriction.SurfaceMode" ) return myBSplineSurfModeChk; - else if ( aParam == "BSplineRestriction.Curve3dMode" ) return myBSpline3DCurveChk; - else if ( aParam == "BSplineRestriction.Curve2dMode" ) return myBSpline2DCurveChk; - else if ( aParam == "BSplineRestriction.Tolerance3d" ) return myBSplineTol3D; - else if ( aParam == "BSplineRestriction.Tolerance2d" ) return myBSplineTol2D; - else if ( aParam == "BSplineRestriction.RequiredDegree" ) return myBSplineDegree; - else if ( aParam == "BSplineRestriction.RequiredNbSegments" ) return myBSplineSegments; - else if ( aParam == "BSplineRestriction.Continuity3d" ) return myBSpline3DCont; - else if ( aParam == "BSplineRestriction.Continuity2d" ) return myBSpline2DCont; - else if ( aParam == "SplitContinuity.Tolerance3d" ) return mySplitContTol3D; - else if ( aParam == "SplitContinuity.SurfaceContinuity" ) return mySplitContSurfCont; - else if ( aParam == "SplitContinuity.CurveContinuity" ) return mySplitContCurvCont; - else if ( aParam == "ToBezier.SurfaceMode" ) return myToBezierSurfModeChk; - else if ( aParam == "ToBezier.Curve3dMode" ) return myToBezier3DCurveChk; - else if ( aParam == "ToBezier.Curve2dMode" ) return myToBezier2DCurveChk; - else if ( aParam == "ToBezier.MaxTolerance" ) return myToBezierMaxTol; - else if ( aParam == "SameParameter.Tolerance3d" ) return mySameParameterTol3D; - else if ( aParam == "FixShape.Tolerance3d" ) return myFixShapeTol3D; - else if ( aParam == "FixShape.MaxTolerance3d" ) return myFixShapeMaxTol3D; - return NULL; + if ( theParam == "SplitAngle.Angle" ) return mySplitAngleAngle; + else if ( theParam == "SplitAngle.MaxTolerance" ) return mySplitAngleMaxTol; + else if ( theParam == "SplitClosedFaces.NbSplitPoints" ) return mySplitClosedFacesNum; + else if ( theParam == "FixFaceSize.Tolerance" ) return myFixFaceSizeTol; + else if ( theParam == "DropSmallEdges.Tolerance3d" ) return myDropSmallEdgesTol3D; + else if ( theParam == "BSplineRestriction.SurfaceMode" ) return myBSplineSurfModeChk; + else if ( theParam == "BSplineRestriction.Curve3dMode" ) return myBSpline3DCurveChk; + else if ( theParam == "BSplineRestriction.Curve2dMode" ) return myBSpline2DCurveChk; + else if ( theParam == "BSplineRestriction.Tolerance3d" ) return myBSplineTol3D; + else if ( theParam == "BSplineRestriction.Tolerance2d" ) return myBSplineTol2D; + else if ( theParam == "BSplineRestriction.RequiredDegree" ) return myBSplineDegree; + else if ( theParam == "BSplineRestriction.RequiredNbSegments" ) return myBSplineSegments; + else if ( theParam == "BSplineRestriction.Continuity3d" ) return myBSpline3DCont; + else if ( theParam == "BSplineRestriction.Continuity2d" ) return myBSpline2DCont; + else if ( theParam == "SplitContinuity.Tolerance3d" ) return mySplitContTol3D; + else if ( theParam == "SplitContinuity.SurfaceContinuity" ) return mySplitContSurfCont; + else if ( theParam == "SplitContinuity.CurveContinuity" ) return mySplitContCurvCont; + else if ( theParam == "ToBezier.SurfaceMode" ) return myToBezierSurfModeChk; + else if ( theParam == "ToBezier.Curve3dMode" ) return myToBezier3DCurveChk; + else if ( theParam == "ToBezier.Curve2dMode" ) return myToBezier2DCurveChk; + else if ( theParam == "ToBezier.MaxTolerance" ) return myToBezierMaxTol; + else if ( theParam == "SameParameter.Tolerance3d" ) return mySameParameterTol3D; + else if ( theParam == "FixShape.Tolerance3d" ) return myFixShapeTol3D; + else if ( theParam == "FixShape.MaxTolerance3d" ) return myFixShapeMaxTol3D; + return 0; } //================================================================================= @@ -701,6 +711,9 @@ QWidget* RepairGUI_ShapeProcessDlg::getControl( const char* theParam ) //================================================================================= void RepairGUI_ShapeProcessDlg::initParamsValues() { + if ( myOpLst.count() ) + return; // already filled + myOpLst << "FixShape"; myValMap["FixShape"] << "FixShape.Tolerance3d"; myValMap["FixShape"] << "FixShape.MaxTolerance3d"; @@ -750,25 +763,24 @@ void RepairGUI_ShapeProcessDlg::initParamsValues() //================================================================================= GEOM::string_array* RepairGUI_ShapeProcessDlg::getParameters( const GEOM::string_array& theOperators ) { - GEOM::string_array_var aParams = new GEOM::string_array(); - int i( 0 ), j( 0 ); + GEOM::string_array_var aParams = new GEOM::string_array(); + int i = 0, j = 0; - // calculate the length of parameters - for ( i = 0, j = 0; i < theOperators.length(); i++ ) - j+= myValMap[QString((const char*)theOperators[i])].size(); + // calculate the length of parameters + for ( i = 0, j = 0; i < theOperators.length(); i++ ) + j += myValMap[ QString( theOperators[i] ) ].size(); + + // set the new length of paremeters + aParams->length( j ); - // set the new length of paremeters - aParams->length( j ); + // fill the parameters + for ( i = 0, j = 0; i < theOperators.length(); i++ ) { + QStringList aValLst = myValMap[ QString( theOperators[i] ) ]; + for ( QStringList::Iterator it = aValLst.begin(); it != aValLst.end(); ++it ) + aParams[j++] = CORBA::string_dup( (*it).toLatin1().constData() ); + } - // fill the parameters - for ( i = 0, j = 0; i < theOperators.length(); i++ ) - { - QStringList aValLst = myValMap[QString( (const char*)theOperators[i] )]; - for ( QStringList::Iterator it = aValLst.begin(); it != aValLst.end(); ++it ) - aParams[j++] = CORBA::string_dup( (*it).latin1() ); - } - - return aParams._retn(); + return aParams._retn(); } @@ -781,8 +793,7 @@ GEOM::string_array* RepairGUI_ShapeProcessDlg::getValues( const GEOM::string_arr GEOM::string_array_var aValues = new GEOM::string_array(); aValues->length( theParams.length() ); - for ( int i = 0; i < theParams.length(); i++ ) - { + for ( int i = 0; i < theParams.length(); i++ ) { QWidget* aCtrl = getControl( (const char*)theParams[i] ); if ( aCtrl ) aValues[i] = get_convert( (const char*)theParams[i], getValue( aCtrl ) ); @@ -791,6 +802,27 @@ GEOM::string_array* RepairGUI_ShapeProcessDlg::getValues( const GEOM::string_arr return aValues._retn(); } +//================================================================================= +// function : getTexts +// purpose : +//================================================================================= +QStringList RepairGUI_ShapeProcessDlg::getTexts( const GEOM::string_array& theParams ) +{ + QStringList aTexts; + + for ( int i = 0; i < theParams.length(); i++ ) { + QWidget* aCtrl = getControl( (const char*)theParams[i] ); + if ( aCtrl ) + { + QString aText = getText( aCtrl ); + if( !aText.isNull() ) + aTexts.append( aText ); + } + } + + return aTexts; +} + //================================================================================= // function : initSelection // purpose : set selection of ALL shape types except vertexes @@ -814,10 +846,10 @@ void RepairGUI_ShapeProcessDlg::initSelection() //================================================================================= void RepairGUI_ShapeProcessDlg::advOptionToggled( bool on ) { - QButton* btn = (QButton*)sender(); - if ( on && btn->isToggleButton() && - QMessageBox::warning(myGeomGUI->getApp()->desktop(), - tr( "GEOM_WRN_WARNING" ), tr( "TIME_CONSUMING" ), - QMessageBox::Yes, QMessageBox::No ) == QMessageBox::No ) + QAbstractButton* btn = (QAbstractButton*)sender(); + if ( on && btn->isCheckable() && + SUIT_MessageBox::warning( this, + tr( "GEOM_WRN_WARNING" ), tr( "TIME_CONSUMING" ), + SUIT_MessageBox::Yes | SUIT_MessageBox::No ) == SUIT_MessageBox::No ) btn->toggle(); } diff --git a/src/RepairGUI/RepairGUI_ShapeProcessDlg.h b/src/RepairGUI/RepairGUI_ShapeProcessDlg.h index 3d833fda1..e5fd0e902 100755 --- a/src/RepairGUI/RepairGUI_ShapeProcessDlg.h +++ b/src/RepairGUI/RepairGUI_ShapeProcessDlg.h @@ -1,46 +1,41 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : RepairGUI_ShapeProcessDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_ShapeProcessDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef REPAIRGUI_SHAPEPROCESSDLG_H +#define REPAIRGUI_SHAPEPROCESSDLG_H -#ifndef DIALOGBOX_ShapeProcess_H -#define DIALOGBOX_ShapeProcess_H +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel_QTD.h" -#include "RepairGUI.h" -#include "QtxDblSpinBox.h" +#include -#include -#include -#include -#include -#include -#include -#include -#include +class DlgRef_1Sel; +class SalomeApp_IntSpinBox; +class SalomeApp_DoubleSpinBox; +class QComboBox; +class QCheckBox; +class QListWidget; //================================================================================= // class : RepairGUI_ShapeProcessDlg @@ -48,93 +43,93 @@ //================================================================================= class RepairGUI_ShapeProcessDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - RepairGUI_ShapeProcessDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~RepairGUI_ShapeProcessDlg(); - + RepairGUI_ShapeProcessDlg( GeometryGUI*, QWidget* = 0, bool = false ); + ~RepairGUI_ShapeProcessDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + +private: + void init(); + void reset(); + void loadDefaults(); // initialize all controls with default values (from resource file) + + GEOM::string_array* getActiveOperators(); + GEOM::string_array* getParameters( const GEOM::string_array& ); + GEOM::string_array* getValues( const GEOM::string_array& ); - virtual void closeEvent( QCloseEvent* e ); + QStringList getTexts( const GEOM::string_array& ); + + void enterEvent( QEvent* ); + + QWidget* getControl( const QString& ); + void setValue( QWidget*, const QString& ); // initialize the given control in the proper way + // (analize its class and convert the value string) + QString getValue( QWidget* ) const; // retrieve value of the control in the proper way + QString getText( QWidget* ) const; // retrieve text of the control (for spin-boxes only) + + //QDict myCtrlMap; // map of controls (values) of parameters + void initParamsValues(); // initialize the data structures + void initSelection(); private: - void init(); - void reset(); - void loadDefaults(); // initialize all controls with default values (from resource file) + QStringList myOpLst; // list of available Shape Healing Operators + QMap myValMap; // map of parameters of operators - GEOM::string_array* getActiveOperators(); - GEOM::string_array* getParameters( const GEOM::string_array& theOperators ); - GEOM::string_array* getValues( const GEOM::string_array& theParameters ); + GEOM::ListOfGO_var myObjects; // selected objects + + DlgRef_1Sel* mySelectWdgt; + QListWidget* myOpList; + + SalomeApp_DoubleSpinBox* myFixShapeTol3D; + SalomeApp_DoubleSpinBox* myFixShapeMaxTol3D; - void enterEvent(QEvent* e); + SalomeApp_DoubleSpinBox* myFixFaceSizeTol; + + SalomeApp_DoubleSpinBox* myDropSmallEdgesTol3D; - QWidget* getControl( const char* ); - void setValue( QWidget*, const char* ); // initialize the given control in the proper way - // (analize its class and convert the value string) - const char* getValue( QWidget* theControl ) const; // retrieve value of the control in the proper way - - QStringList myOpLst; // list of available Shape Healing Operators - QMap myValMap; // map of parameters of operators - //QDict myCtrlMap; // map of controls (values) of parameters - void initParamsValues(); // initialize the data structures - void initSelection(); - - GEOM::ListOfGO_var myObjects; // selected objects - - DlgRef_1Sel_QTD* mySelectWdgt; - QListView* myOpList; - QWidgetStack* myStack; - - QtxDblSpinBox* myFixShapeTol3D; - QtxDblSpinBox* myFixShapeMaxTol3D; - - QtxDblSpinBox* myFixFaceSizeTol; - - QtxDblSpinBox* myDropSmallEdgesTol3D; - - QtxDblSpinBox* mySplitAngleAngle; - QtxDblSpinBox* mySplitAngleMaxTol; - - QSpinBox* mySplitClosedFacesNum; - - QtxDblSpinBox* mySplitContTol3D; - QComboBox* mySplitContSurfCont; - QComboBox* mySplitContCurvCont; - - QCheckBox* myBSplineSurfModeChk; - QCheckBox* myBSpline3DCurveChk; - QCheckBox* myBSpline2DCurveChk; - QtxDblSpinBox* myBSplineTol3D; - QtxDblSpinBox* myBSplineTol2D; - QSpinBox* myBSplineDegree; - QSpinBox* myBSplineSegments; - QComboBox* myBSpline2DCont; - QComboBox* myBSpline3DCont; - - QCheckBox* myToBezierSurfModeChk; - QCheckBox* myToBezier3DCurveChk; - QCheckBox* myToBezier2DCurveChk; - QtxDblSpinBox* myToBezierMaxTol; - - QtxDblSpinBox* mySameParameterTol3D; - + SalomeApp_DoubleSpinBox* mySplitAngleAngle; + SalomeApp_DoubleSpinBox* mySplitAngleMaxTol; + + SalomeApp_IntSpinBox* mySplitClosedFacesNum; + + SalomeApp_DoubleSpinBox* mySplitContTol3D; + QComboBox* mySplitContSurfCont; + QComboBox* mySplitContCurvCont; + + QCheckBox* myBSplineSurfModeChk; + QCheckBox* myBSpline3DCurveChk; + QCheckBox* myBSpline2DCurveChk; + SalomeApp_DoubleSpinBox* myBSplineTol3D; + SalomeApp_DoubleSpinBox* myBSplineTol2D; + SalomeApp_IntSpinBox* myBSplineDegree; + SalomeApp_IntSpinBox* myBSplineSegments; + QComboBox* myBSpline2DCont; + QComboBox* myBSpline3DCont; + + QCheckBox* myToBezierSurfModeChk; + QCheckBox* myToBezier3DCurveChk; + QCheckBox* myToBezier2DCurveChk; + SalomeApp_DoubleSpinBox* myToBezierMaxTol; + + SalomeApp_DoubleSpinBox* mySameParameterTol3D; + private slots: - void onOk(); - bool onApply(); + void onOk(); + bool onApply(); - void activate(); - - void lineEditReturnPressed(); - void selectionChanged(); - void selectClicked(); - void operationChanged(); - void advOptionToggled(bool); + void activate(); + + void lineEditReturnPressed(); + void selectionChanged(); + void selectClicked(); + void advOptionToggled( bool ); }; -#endif // DIALOGBOX_ShapeProcess_H +#endif // REPAIRGUI_SHAPEPROCESSDLG_H diff --git a/src/RepairGUI/RepairGUI_SuppressFacesDlg.cxx b/src/RepairGUI/RepairGUI_SuppressFacesDlg.cxx index 1ed948d76..7daaab8e1 100644 --- a/src/RepairGUI/RepairGUI_SuppressFacesDlg.cxx +++ b/src/RepairGUI/RepairGUI_SuppressFacesDlg.cxx @@ -1,45 +1,46 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_SuppressFacesDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : RepairGUI_SuppressFacesDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "RepairGUI_SuppressFacesDlg.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" -#include "SUIT_Session.h" -#include "SALOME_ListIteratorOfListIO.hxx" +#include +#include +#include -#include "GEOMImpl_Types.hxx" +#include +#include +#include +#include +#include + +#include #include +#include -#include - -using namespace std; +#include //================================================================================= // class : RepairGUI_SuppressFacesDlg() @@ -48,32 +49,35 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -RepairGUI_SuppressFacesDlg::RepairGUI_SuppressFacesDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +RepairGUI_SuppressFacesDlg::RepairGUI_SuppressFacesDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_SUPRESS_FACE"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_SUPRESS_FACE" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_SUPRESSFACE_TITLE")); + setWindowTitle( tr("GEOM_SUPRESSFACE_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_SUPRESSFACE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_SUPRESSFACE")); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_1Sel_QTD(this, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("Faces to remove")); - GroupPoints->TextLabel1->setText(tr("Faces")); - GroupPoints->PushButton1->setPixmap(image1); + GroupPoints = new DlgRef_1Sel( centralWidget() ); + GroupPoints->GroupBox1->setTitle( tr( "Faces to remove" ) ); + GroupPoints->TextLabel1->setText( tr( "Faces" ) ); + GroupPoints->PushButton1->setIcon( image1 ); GroupPoints->LineEdit1->setReadOnly( true ); - Layout1->addWidget(GroupPoints, 2, 0); + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); /***************************************************************/ - setHelpFileName("suppress_faces_operation_page.html"); + setHelpFileName( "suppress_faces_operation_page.html" ); Init(); } @@ -104,14 +108,14 @@ void RepairGUI_SuppressFacesDlg::Init() initSelection(); /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( GroupPoints->LineEdit1, SIGNAL( returnPressed() ), this, SLOT( LineEditReturnPressed() ) ); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); initName( tr( "SUPRESS_FACE_NEW_OBJ_NAME" ) ); } @@ -138,7 +142,7 @@ bool RepairGUI_SuppressFacesDlg::ClickOnApply() initName(); - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); myObjects->length( 0 ); myFaces.clear(); @@ -155,31 +159,32 @@ bool RepairGUI_SuppressFacesDlg::ClickOnApply() //================================================================================= void RepairGUI_SuppressFacesDlg::SelectionIntoArgument() { - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); Standard_Boolean aRes = Standard_False; int i = 0; int numFaces = 0; - myObjects->length( IObjectCount() ); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + myObjects->length( aSelList.Extent() ); myFaces.clear(); - for ( SALOME_ListIteratorOfListIO anIt( selectedIO() ); anIt.More(); anIt.Next() ) - { + + for (SALOME_ListIteratorOfListIO anIt (aSelList); anIt.More(); anIt.Next()) { Handle(SALOME_InteractiveObject) anIO = anIt.Value(); GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject( anIO, aRes ); - if ( !CORBA::is_nil( aSelectedObject ) && aRes ) - { + if ( !CORBA::is_nil( aSelectedObject ) && aRes ) { TopoDS_Shape aShape; - if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) ) - { - if ( aShape.ShapeType() <= TopAbs_FACE ) // FACE, SHELL, SOLID, COMPOUND - { + if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) ) { + if ( aShape.ShapeType() <= TopAbs_FACE ) { // FACE, SHELL, SOLID, COMPOUND GEOM::short_array anIndexes; TColStd_IndexedMapOfInteger aMap; - myGeomGUI->getApp()->selectionMgr()->GetIndexes( anIO, aMap ); + aSelMgr->GetIndexes( anIO, aMap ); - if ( !aMap.IsEmpty() ) - { + if ( !aMap.IsEmpty() ) { Convert( aMap, anIndexes ); myObjects[i++] = aSelectedObject; // append the object myFaces.append( anIndexes ); // append faces' indexes @@ -212,8 +217,7 @@ void RepairGUI_SuppressFacesDlg::Convert( const TColStd_IndexedMapOfInteger& the //================================================================================= void RepairGUI_SuppressFacesDlg::SetEditCurrentArgument() { - if( sender() == GroupPoints->PushButton1 ) - { + if ( sender() == GroupPoints->PushButton1 ) { GroupPoints->LineEdit1->setFocus(); myEditCurrentArgument = GroupPoints->LineEdit1; } @@ -227,8 +231,7 @@ void RepairGUI_SuppressFacesDlg::SetEditCurrentArgument() //================================================================================= void RepairGUI_SuppressFacesDlg::LineEditReturnPressed() { - if( sender() == GroupPoints->LineEdit1 ) - { + if ( sender() == GroupPoints->LineEdit1 ) { myEditCurrentArgument = GroupPoints->LineEdit1; GEOMBase_Skeleton::LineEditReturnPressed(); } @@ -242,8 +245,8 @@ void RepairGUI_SuppressFacesDlg::LineEditReturnPressed() void RepairGUI_SuppressFacesDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(((SalomeApp_Application*)(SUIT_Session::session()->activeApplication()))->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( ( (SalomeApp_Application*)( SUIT_Session::session()->activeApplication() ) )->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); //myGeomGUI->SetState( 0 ); initSelection(); @@ -254,23 +257,13 @@ void RepairGUI_SuppressFacesDlg::ActivateThisDialog() // function : enterEvent() // purpose : Mouse enter onto the dialog to activate it //================================================================================= -void RepairGUI_SuppressFacesDlg::enterEvent(QEvent* e) +void RepairGUI_SuppressFacesDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } -//================================================================================= -// function : closeEvent() -// purpose : -//================================================================================= -void RepairGUI_SuppressFacesDlg::closeEvent(QCloseEvent* e) -{ - //myGeomGUI->SetState( -1 ); - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : createOperation // purpose : @@ -284,7 +277,7 @@ GEOM::GEOM_IOperations_ptr RepairGUI_SuppressFacesDlg::createOperation() // function : isValid // purpose : //================================================================================= -bool RepairGUI_SuppressFacesDlg::isValid( QString& msg ) +bool RepairGUI_SuppressFacesDlg::isValid( QString& ) { const int objL = myObjects->length(), facesL = myFaces.size(); return ( objL && objL == facesL ); @@ -297,8 +290,7 @@ bool RepairGUI_SuppressFacesDlg::isValid( QString& msg ) bool RepairGUI_SuppressFacesDlg::execute( ObjectList& objects ) { QStringList anErrorObjNames; - for ( int i = 0; i < myObjects->length(); i++ ) - { + for ( int i = 0; i < myObjects->length(); i++ ) { GEOM::GEOM_Object_var obj = myObjects[i]; GEOM::short_array faces = myFaces[i]; //MESSAGE(">>>> Dlg, passing faces.. len = " << faces.length()); @@ -310,7 +302,7 @@ bool RepairGUI_SuppressFacesDlg::execute( ObjectList& objects ) } if ( !anErrorObjNames.empty() ) - MESSAGE("ERRORS occured while processing the following objects: " << anErrorObjNames.join( " " )); + MESSAGE( "ERRORS occured while processing the following objects: " << anErrorObjNames.join( " " ).toLatin1().data() ); return anErrorObjNames.size() < myObjects->length(); // true if at least one object was OK, false if ALL objects were nil after Healing. } diff --git a/src/RepairGUI/RepairGUI_SuppressFacesDlg.h b/src/RepairGUI/RepairGUI_SuppressFacesDlg.h index cdf863913..66a36ca94 100644 --- a/src/RepairGUI/RepairGUI_SuppressFacesDlg.h +++ b/src/RepairGUI/RepairGUI_SuppressFacesDlg.h @@ -1,37 +1,37 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : RepairGUI_SuppressFacesDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : RepairGUI_SuppressFacesDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef REPAIRGUI_SUPPRESSFACESDLG_H +#define REPAIRGUI_SUPPRESSFACESDLG_H -#ifndef DIALOGBOX_SUPPRESSFACES_H -#define DIALOGBOX_SUPPRESSFACES_H +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel_QTD.h" +#include -#include +class DlgRef_1Sel; +class TColStd_IndexedMapOfInteger; //================================================================================= // class : RepairGUI_SuppressFacesDlg @@ -39,45 +39,45 @@ //================================================================================= class RepairGUI_SuppressFacesDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - RepairGUI_SuppressFacesDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~RepairGUI_SuppressFacesDlg(); + RepairGUI_SuppressFacesDlg( GeometryGUI*, QWidget* = 0, bool = false ); + ~RepairGUI_SuppressFacesDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); -private : - void Init(); - void enterEvent(QEvent* e); - void closeEvent(QCloseEvent* e); - - GEOM::ListOfGO_var myObjects; - QValueList myFaces; - // GEOM::short_array-s contain indexes of selected faces, - // index of a GEOM::short_array in myFaces list equals to index of - // GEOM::GEOM_Object in myObjects list to which the faces belong to. - - void Convert( const TColStd_IndexedMapOfInteger&, GEOM::short_array& ); - - void initSelection(); - - DlgRef_1Sel_QTD* GroupPoints; +private: + void Init(); + void enterEvent( QEvent* ); + void Convert( const TColStd_IndexedMapOfInteger&, + GEOM::short_array& ); + + void initSelection(); + +private: + GEOM::ListOfGO_var myObjects; + QList myFaces; + // GEOM::short_array-s contain indexes of selected faces, + // index of a GEOM::short_array in myFaces list equals to index of + // GEOM::GEOM_Object in myObjects list to which the faces belong to. + + DlgRef_1Sel* GroupPoints; + private slots: - void ClickOnOk(); - bool ClickOnApply(); - - void ActivateThisDialog(); - - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); + void ClickOnOk(); + bool ClickOnApply(); + + void ActivateThisDialog(); + + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); }; -#endif // DIALOGBOX_SUPPRESSFACES_H +#endif // REPAIRGUI_SUPPRESSFACESDLG_H diff --git a/src/SKETCHER/Makefile.am b/src/SKETCHER/Makefile.am index 92dde135b..1ff014005 100644 --- a/src/SKETCHER/Makefile.am +++ b/src/SKETCHER/Makefile.am @@ -1,52 +1,51 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM SKETCHER : basic sketcher -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : Makefile.in # Author : Patrick GOLDBRONN (CEA) # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header$ - - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files -salomeinclude_HEADERS = \ +salomeinclude_HEADERS = \ Sketcher_Profile.hxx # Libraries targets lib_LTLIBRARIES = libGEOMSketcher.la -dist_libGEOMSketcher_la_SOURCES = \ +dist_libGEOMSketcher_la_SOURCES = \ Sketcher_Profile.cxx -# additionnal information to compil and link file -libGEOMSketcher_la_CPPFLAGS = \ - $(CAS_CPPFLAGS) \ +# additional information to compile and link file + +libGEOMSketcher_la_CPPFLAGS = \ + $(CAS_CPPFLAGS) \ $(KERNEL_CXXFLAGS) -libGEOMSketcher_la_LDFLAGS = \ - $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ - $(STDLIB) \ - $(CAS_KERNEL) \ +libGEOMSketcher_la_LDFLAGS = \ + $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ + $(STDLIB) \ + $(CAS_KERNEL) \ $(CAS_MODELER) diff --git a/src/SKETCHER/SKETCHER.pro b/src/SKETCHER/SKETCHER.pro new file mode 100644 index 000000000..6dd1da34c --- /dev/null +++ b/src/SKETCHER/SKETCHER.pro @@ -0,0 +1,58 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = GEOMSketcher +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +STDLIB = -lstdc++ + +CAS_KERNEL = -L$${CASROOT}/Linux/lib -lTKernel + +CAS_MODELER = -L$${CASROOT}/Linux/lib -lTKG2d -lTKG3d -lTKGeomBase -lTKBRep -lTKGeomAlgo -lTKTopAlgo -lTKPrim -lTKBO -lTKBool -lTKHLR -lTKFillet -lTKOffset -lTKFeat + +INCLUDEPATH += $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} + +LIBS += $${KERNEL_LDFLAGS} -lSALOMELocalTrace $${STDLIB} $${CAS_KERNEL} $${CAS_MODELER} + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS + +HEADERS = Sketcher_Profile.hxx + +SOURCES = Sketcher_Profile.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/SKETCHER/Sketcher_Profile.cxx b/src/SKETCHER/Sketcher_Profile.cxx index d5b5a4b7b..eb8fd9f23 100644 --- a/src/SKETCHER/Sketcher_Profile.cxx +++ b/src/SKETCHER/Sketcher_Profile.cxx @@ -1,6 +1,6 @@ -// GEOM SKETCHER : basic sketcher +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // // This library is free software; you can redistribute it and/or @@ -17,15 +17,14 @@ // 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 -// -// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM SKETCHER : basic sketcher // File : Sketcher_Profile.cxx // Author : Damien COQUERET // Module : GEOM // $Header: - +// #include #include diff --git a/src/SKETCHER/Sketcher_Profile.hxx b/src/SKETCHER/Sketcher_Profile.hxx index c05f79735..7db4b4eaf 100644 --- a/src/SKETCHER/Sketcher_Profile.hxx +++ b/src/SKETCHER/Sketcher_Profile.hxx @@ -1,31 +1,30 @@ +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 +// // GEOM SKETCHER : basic sketcher -// -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// -// -// // File : Sketcher_Profile.h // Author : Damien COQUERET // Module : GEOM // $Header: - +// #include #include #include diff --git a/src/STEPExport/Makefile.am b/src/STEPExport/Makefile.am index 66467dfa7..3748333cb 100644 --- a/src/STEPExport/Makefile.am +++ b/src/STEPExport/Makefile.am @@ -1,29 +1,30 @@ -# Copyright (C) 2003 CEA -# -# 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-2008 CEA/DEN, EDF R&D, OPEN CASCADE # +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# 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 : Pavel TELKOV # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header$ - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files @@ -32,15 +33,16 @@ salomeinclude_HEADERS = # Libraries targets lib_LTLIBRARIES = libSTEPExport.la -dist_libSTEPExport_la_SOURCES = \ +dist_libSTEPExport_la_SOURCES = \ STEPExport.cxx -# additionnal information to compil and link file -libSTEPExport_la_CPPFLAGS = \ - $(CAS_CPPFLAGS) \ +# additional information to compile and link file + +libSTEPExport_la_CPPFLAGS = \ + $(CAS_CPPFLAGS) \ $(KERNEL_CXXFLAGS) -libSTEPExport_la_LDFLAGS = \ - $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ - $(STDLIB) \ +libSTEPExport_la_LDFLAGS = \ + $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ + $(STDLIB) \ $(CAS_LDPATH) -lTKSTEP diff --git a/src/STEPExport/STEPExport.cxx b/src/STEPExport/STEPExport.cxx index 290ab74b2..debe363a7 100644 --- a/src/STEPExport/STEPExport.cxx +++ b/src/STEPExport/STEPExport.cxx @@ -1,27 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: STEPExport.cxx // Created: Wed May 19 14:53:52 2004 // Author: Pavel TELKOV // - +// #include "utilities.h" #include diff --git a/src/STEPExport/STEPExport.pro b/src/STEPExport/STEPExport.pro new file mode 100644 index 000000000..8f5597513 --- /dev/null +++ b/src/STEPExport/STEPExport.pro @@ -0,0 +1,49 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = STEPExport +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +STDLIB = -lstdc++ + +CAS_LDPATH = -L$$(CASROOT)/Linux/lib + +INCLUDEPATH += $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} + +LIBS += $${STDLIB} $${CAS_LDPATH} -lTKSTEP $${KERNEL_LDFLAGS} -lSALOMELocalTrace + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += STEPEXPORT_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS + +SOURCES = STEPExport.cxx diff --git a/src/STEPImport/Makefile.am b/src/STEPImport/Makefile.am index 7fd6d51f3..f5e90dabd 100644 --- a/src/STEPImport/Makefile.am +++ b/src/STEPImport/Makefile.am @@ -1,29 +1,30 @@ -# Copyright (C) 2003 CEA -# -# 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-2008 CEA/DEN, EDF R&D, OPEN CASCADE # +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# 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 : Pavel TELKOV # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header$ - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files @@ -32,15 +33,16 @@ salomeinclude_HEADERS = # Libraries targets lib_LTLIBRARIES = libSTEPImport.la -dist_libSTEPImport_la_SOURCES = \ +dist_libSTEPImport_la_SOURCES = \ STEPImport.cxx -# additionnal information to compil and link file -libSTEPImport_la_CPPFLAGS = \ - $(CAS_CPPFLAGS) \ +# additional information to compile and link file + +libSTEPImport_la_CPPFLAGS = \ + $(CAS_CPPFLAGS) \ $(KERNEL_CXXFLAGS) -libSTEPImport_la_LDFLAGS = \ - $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ - $(STDLIB) \ +libSTEPImport_la_LDFLAGS = \ + $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ + $(STDLIB) \ $(CAS_LDPATH) -lTKSTEP diff --git a/src/STEPImport/STEPImport.cxx b/src/STEPImport/STEPImport.cxx index 05f5b480c..2ee8f1363 100644 --- a/src/STEPImport/STEPImport.cxx +++ b/src/STEPImport/STEPImport.cxx @@ -1,27 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: STEPImport.cxx // Created: Wed May 19 14:41:10 2004 // Author: Pavel TELKOV // - +// #include "utilities.h" #include diff --git a/src/STEPImport/STEPImport.pro b/src/STEPImport/STEPImport.pro new file mode 100644 index 000000000..a88596775 --- /dev/null +++ b/src/STEPImport/STEPImport.pro @@ -0,0 +1,49 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = STEPImport +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +STDLIB = -lstdc++ + +CAS_LDPATH = -L$$(CASROOT)/Linux/lib + +INCLUDEPATH += $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} + +LIBS += $${STDLIB} $${CAS_LDPATH} -lTKSTEP $${KERNEL_LDFLAGS} -lSALOMELocalTrace + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += STEPIMPORT_EXPORTS OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS + +SOURCES = STEPImport.cxx diff --git a/src/STLExport/Makefile.am b/src/STLExport/Makefile.am index 9b358c0a3..67cff44cc 100644 --- a/src/STLExport/Makefile.am +++ b/src/STLExport/Makefile.am @@ -1,24 +1,26 @@ -# Copyright (C) 2003 CEA -# -# 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 -# +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 # -# # $Header$ - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files @@ -27,15 +29,16 @@ salomeinclude_HEADERS = # Libraries targets lib_LTLIBRARIES = libSTLExport.la -dist_libSTLExport_la_SOURCES = \ +dist_libSTLExport_la_SOURCES = \ STLExport.cxx -# additionnal information to compil and link file -libSTLExport_la_CPPFLAGS = \ - $(CAS_CPPFLAGS) \ +# additional information to compile and link file + +libSTLExport_la_CPPFLAGS = \ + $(CAS_CPPFLAGS) \ $(KERNEL_CXXFLAGS) -libSTLExport_la_LDFLAGS = \ - $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ - $(STDLIB) \ +libSTLExport_la_LDFLAGS = \ + $(KERNEL_LDFLAGS) -lSALOMELocalTrace \ + $(STDLIB) \ $(CAS_LDPATH) -lTKSTL diff --git a/src/STLExport/STLExport.cxx b/src/STLExport/STLExport.cxx index eded4321d..d264d62a4 100644 --- a/src/STLExport/STLExport.cxx +++ b/src/STLExport/STLExport.cxx @@ -1,27 +1,29 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: STLExport.cxx // Created: Wed May 19 14:53:52 2004 // Author: Pavel TELKOV // - +// #include "utilities.h" #include @@ -29,10 +31,14 @@ #include #include -#ifdef WNT -#include +#ifdef WIN32 +# if defined STLEXPORT_EXPORTS +# define STLEXPORT_EXPORT __declspec( dllexport ) +# else +# define STLEXPORT_EXPORT __declspec( dllimport ) +# endif #else -#define SALOME_WNT_EXPORT +# define STLEXPORT_EXPORT #endif //============================================================================= @@ -43,7 +49,7 @@ extern "C" { - SALOME_WNT_EXPORT + STLEXPORT_EXPORT int Export(const TopoDS_Shape& theShape, const TCollection_AsciiString& theFileName, const TCollection_AsciiString& theFormatName) diff --git a/src/STLExport/STLExport.pro b/src/STLExport/STLExport.pro new file mode 100644 index 000000000..e161a9b08 --- /dev/null +++ b/src/STLExport/STLExport.pro @@ -0,0 +1,49 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = STLExport +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +KERNEL_LDFLAGS = -L$$(KERNEL_ROOT_DIR)/lib/salome + +STDLIB = -lstdc++ + +CAS_LDPATH = -L$$(CASROOT)/Linux/lib + +INCLUDEPATH += $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} + +LIBS += $${STDLIB} $${CAS_LDPATH} -lTKSTL $${KERNEL_LDFLAGS} -lSALOMELocalTrace + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS + +SOURCES = STLExport.cxx diff --git a/src/ShHealOper/Makefile.am b/src/ShHealOper/Makefile.am index bb8409246..45163e0c9 100644 --- a/src/ShHealOper/Makefile.am +++ b/src/ShHealOper/Makefile.am @@ -1,74 +1,73 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# # GEOM ShHealOper : Shape Healing -# -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -# -# -# # File : Makefile.in # Author : Alexander SLADKOV # Modified by : Alexander BORODIN (OCN) - autotools usage # Module : GEOM # $Header: - +# include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files -salomeinclude_HEADERS = \ - ShHealOper_CloseContour.hxx \ - ShHealOper_EdgeDivide.hxx \ - ShHealOper_FillHoles.hxx \ - ShHealOper_RemoveFace.hxx \ - ShHealOper_RemoveInternalWires.hxx \ - ShHealOper_Sewing.hxx \ - ShHealOper_ShapeProcess.hxx \ - ShHealOper_SpiltCurve2d.hxx \ - ShHealOper_SplitCurve2d.hxx \ - ShHealOper_SplitCurve3d.hxx \ - ShHealOper_ChangeOrientation.hxx \ +salomeinclude_HEADERS = \ + ShHealOper_CloseContour.hxx \ + ShHealOper_EdgeDivide.hxx \ + ShHealOper_FillHoles.hxx \ + ShHealOper_RemoveFace.hxx \ + ShHealOper_RemoveInternalWires.hxx \ + ShHealOper_Sewing.hxx \ + ShHealOper_ShapeProcess.hxx \ + ShHealOper_SpiltCurve2d.hxx \ + ShHealOper_SplitCurve2d.hxx \ + ShHealOper_SplitCurve3d.hxx \ + ShHealOper_ChangeOrientation.hxx \ ShHealOper_Tool.hxx # Libraries targets lib_LTLIBRARIES = libShHealOper.la -dist_libShHealOper_la_SOURCES = \ - ShHealOper_CloseContour.cxx \ - ShHealOper_EdgeDivide.cxx \ - ShHealOper_FillHoles.cxx \ - ShHealOper_RemoveFace.cxx \ - ShHealOper_RemoveInternalWires.cxx \ - ShHealOper_Sewing.cxx \ - ShHealOper_ShapeProcess.cxx \ - ShHealOper_SplitCurve2d.cxx \ - ShHealOper_SplitCurve3d.cxx \ - ShHealOper_ChangeOrientation.cxx \ +dist_libShHealOper_la_SOURCES = \ + ShHealOper_CloseContour.cxx \ + ShHealOper_EdgeDivide.cxx \ + ShHealOper_FillHoles.cxx \ + ShHealOper_RemoveFace.cxx \ + ShHealOper_RemoveInternalWires.cxx \ + ShHealOper_Sewing.cxx \ + ShHealOper_ShapeProcess.cxx \ + ShHealOper_SplitCurve2d.cxx \ + ShHealOper_SplitCurve3d.cxx \ + ShHealOper_ChangeOrientation.cxx \ ShHealOper_Tool.cxx -# additionnal information to compil and link file +# additional information to compile and link file -libShHealOper_la_CPPFLAGS = \ - $(CAS_CPPFLAGS) \ +libShHealOper_la_CPPFLAGS = \ + $(CAS_CPPFLAGS) \ $(KERNEL_CXXFLAGS) -libShHealOper_la_LDFLAGS = \ - $(STDLIB) \ - $(CAS_KERNEL) \ - $(CAS_MATH) \ - $(CAS_TKTopAlgo) \ +libShHealOper_la_LDFLAGS = \ + $(STDLIB) \ + $(CAS_KERNEL) \ + $(CAS_MATH) \ + $(CAS_TKTopAlgo) \ $(CAS_LDPATH) -lTKBool -lTKShHealing -lTKLCAF diff --git a/src/ShHealOper/ShHealOper.pro b/src/ShHealOper/ShHealOper.pro new file mode 100644 index 000000000..6bb2a537a --- /dev/null +++ b/src/ShHealOper/ShHealOper.pro @@ -0,0 +1,81 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = ShHealOper +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +STDLIB = -lstdc++ + +CAS_KERNEL = -L$${CASROOT}/Linux/lib -lTKernel + +CAS_MATH = -L$${CASROOT}/Linux/lib -lTKMath + +CAS_TKTopAlgo = -L$${CASROOT}/Linux/lib -lTKG2d -lTKG3d -lTKGeomBase -lTKBRep -lTKGeomAlgo -lTKTopAlgo + +CAS_LDPATH = -L$$(CASROOT)/Linux/lib + +INCLUDEPATH += $${CAS_CPPFLAGS} $${KERNEL_CXXFLAGS} + +LIBS += $${STDLIB} $${CAS_KERNEL} $${CAS_MATH} $${CAS_TKTopAlgo} $${CAS_LDPATH} -lTKBool -lTKShHealing -lTKLCAF + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS + +HEADERS = ShHealOper_CloseContour.hxx +HEADERS += ShHealOper_EdgeDivide.hxx +HEADERS += ShHealOper_FillHoles.hxx +HEADERS += ShHealOper_RemoveFace.hxx +HEADERS += ShHealOper_RemoveInternalWires.hxx +HEADERS += ShHealOper_Sewing.hxx +HEADERS += ShHealOper_ShapeProcess.hxx +HEADERS += ShHealOper_SpiltCurve2d.hxx +HEADERS += ShHealOper_SplitCurve2d.hxx +HEADERS += ShHealOper_SplitCurve3d.hxx +HEADERS += ShHealOper_ChangeOrientation.hxx +HEADERS += ShHealOper_Tool.hxx + +SOURCES = ShHealOper_CloseContour.cxx +SOURCES += ShHealOper_EdgeDivide.cxx +SOURCES += ShHealOper_FillHoles.cxx +SOURCES += ShHealOper_RemoveFace.cxx +SOURCES += ShHealOper_RemoveInternalWires.cxx +SOURCES += ShHealOper_Sewing.cxx +SOURCES += ShHealOper_ShapeProcess.cxx +SOURCES += ShHealOper_SplitCurve2d.cxx +SOURCES += ShHealOper_SplitCurve3d.cxx +SOURCES += ShHealOper_ChangeOrientation.cxx +SOURCES += ShHealOper_Tool.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/ShHealOper/ShHealOper_ChangeOrientation.cxx b/src/ShHealOper/ShHealOper_ChangeOrientation.cxx index 92912fa85..8be204945 100644 --- a/src/ShHealOper/ShHealOper_ChangeOrientation.cxx +++ b/src/ShHealOper/ShHealOper_ChangeOrientation.cxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_ChangeOrientation.cxx // Created: 11.07.06 11:46:45 // Author: Sergey KUUL - - +// #include #include diff --git a/src/ShHealOper/ShHealOper_ChangeOrientation.hxx b/src/ShHealOper/ShHealOper_ChangeOrientation.hxx index fe6ee94e2..80c82ebed 100644 --- a/src/ShHealOper/ShHealOper_ChangeOrientation.hxx +++ b/src/ShHealOper/ShHealOper_ChangeOrientation.hxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_ChangeOrientation.hxx // Created: 11.07.06 11:22:26 // Author: Sergey KUUL - - +// #ifndef ShHealOper_ChangeOrientation_HeaderFile #define ShHealOper_ChangeOrientation_HeaderFile diff --git a/src/ShHealOper/ShHealOper_CloseContour.cxx b/src/ShHealOper/ShHealOper_CloseContour.cxx index 0c9d360c2..683fec5f4 100644 --- a/src/ShHealOper/ShHealOper_CloseContour.cxx +++ b/src/ShHealOper/ShHealOper_CloseContour.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_CloseContour.cxx // Created: 20.04.04 11:36:01 // Author: Galina KULIKOVA - - +// #include #include #include diff --git a/src/ShHealOper/ShHealOper_CloseContour.hxx b/src/ShHealOper/ShHealOper_CloseContour.hxx index de664780a..4558bb1c9 100644 --- a/src/ShHealOper/ShHealOper_CloseContour.hxx +++ b/src/ShHealOper/ShHealOper_CloseContour.hxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_CloseContour.hxx // Created: 20.04.04 10:25:46 // Author: Galina KULIKOVA - - +// #ifndef ShHealOper_CloseContour_HeaderFile #define ShHealOper_CloseContour_HeaderFile diff --git a/src/ShHealOper/ShHealOper_EdgeDivide.cxx b/src/ShHealOper/ShHealOper_EdgeDivide.cxx index 0eb1563b2..52e061b6d 100644 --- a/src/ShHealOper/ShHealOper_EdgeDivide.cxx +++ b/src/ShHealOper/ShHealOper_EdgeDivide.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_EdgeDivide.cxx // Created: 30.04.04 16:44:47 // Author: Galina KULIKOVA - +// #include #include #include diff --git a/src/ShHealOper/ShHealOper_EdgeDivide.hxx b/src/ShHealOper/ShHealOper_EdgeDivide.hxx index 32cad6860..c09d779bd 100644 --- a/src/ShHealOper/ShHealOper_EdgeDivide.hxx +++ b/src/ShHealOper/ShHealOper_EdgeDivide.hxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_EdgeDivide.hxx // Created: 30.04.04 16:06:25 // Author: Galina KULIKOVA - - +// #ifndef ShHealOper_EdgeDivide_HeaderFile #define ShHealOper_EdgeDivide_HeaderFile diff --git a/src/ShHealOper/ShHealOper_FillHoles.cxx b/src/ShHealOper/ShHealOper_FillHoles.cxx index 2edfa6c68..3e8f0d4bd 100644 --- a/src/ShHealOper/ShHealOper_FillHoles.cxx +++ b/src/ShHealOper/ShHealOper_FillHoles.cxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_FillHoles.cxx // Created: 26.04.04 17:35:30 // Author: Galina KULIKOVA - - +// #include #include #include diff --git a/src/ShHealOper/ShHealOper_FillHoles.hxx b/src/ShHealOper/ShHealOper_FillHoles.hxx index 2ad1ff6e5..473244023 100644 --- a/src/ShHealOper/ShHealOper_FillHoles.hxx +++ b/src/ShHealOper/ShHealOper_FillHoles.hxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_FillHoles.hxx // Created: 26.04.04 17:15:10 // Author: Galina KULIKOVA - - +// #ifndef ShHealOper_FillHoles_HeaderFile #define ShHealOper_FillHoles_HeaderFile diff --git a/src/ShHealOper/ShHealOper_RemoveFace.cxx b/src/ShHealOper/ShHealOper_RemoveFace.cxx index 0bf3c17ae..839a41267 100644 --- a/src/ShHealOper/ShHealOper_RemoveFace.cxx +++ b/src/ShHealOper/ShHealOper_RemoveFace.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_RemoveFace.cxx // Created: 16.04.04 12:12:38 // Author: Galina KULIKOVA - +// #include #include #include diff --git a/src/ShHealOper/ShHealOper_RemoveFace.hxx b/src/ShHealOper/ShHealOper_RemoveFace.hxx index 3c6aa9cd2..a93a43dfa 100644 --- a/src/ShHealOper/ShHealOper_RemoveFace.hxx +++ b/src/ShHealOper/ShHealOper_RemoveFace.hxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_RemoveFace.hxx // Created: 15.04.04 18:10:16 // Author: Galina KULIKOVA - - +// #ifndef ShHealOper_RemoveFace_HeaderFile #define ShHealOper_RemoveFace_HeaderFile diff --git a/src/ShHealOper/ShHealOper_RemoveInternalWires.cxx b/src/ShHealOper/ShHealOper_RemoveInternalWires.cxx index 8865287f4..87a463bdd 100644 --- a/src/ShHealOper/ShHealOper_RemoveInternalWires.cxx +++ b/src/ShHealOper/ShHealOper_RemoveInternalWires.cxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_RemoveInternalWires.cxx // Created: 26.04.04 14:46:45 // Author: Galina KULIKOVA - - +// #include #include #include diff --git a/src/ShHealOper/ShHealOper_RemoveInternalWires.hxx b/src/ShHealOper/ShHealOper_RemoveInternalWires.hxx index 6cad8d361..fd684cc71 100644 --- a/src/ShHealOper/ShHealOper_RemoveInternalWires.hxx +++ b/src/ShHealOper/ShHealOper_RemoveInternalWires.hxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_RemoveInternalWires.hxx // Created: 26.04.04 11:22:26 // Author: Galina KULIKOVA - - +// #ifndef ShHealOper_RemoveInternalWires_HeaderFile #define ShHealOper_RemoveInternalWires_HeaderFile diff --git a/src/ShHealOper/ShHealOper_Sewing.cxx b/src/ShHealOper/ShHealOper_Sewing.cxx index be67bb569..c81ef5939 100644 --- a/src/ShHealOper/ShHealOper_Sewing.cxx +++ b/src/ShHealOper/ShHealOper_Sewing.cxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_Sewing.cxx // Created: 29.04.04 15:07:10 // Author: Galina KULIKOVA - - +// #include #include #include diff --git a/src/ShHealOper/ShHealOper_Sewing.hxx b/src/ShHealOper/ShHealOper_Sewing.hxx index c3209d246..466cd7a3b 100644 --- a/src/ShHealOper/ShHealOper_Sewing.hxx +++ b/src/ShHealOper/ShHealOper_Sewing.hxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_Sewing.hxx // Created: 29.04.04 13:29:10 // Author: Galina KULIKOVA - - +// #ifndef ShHealOper_Sewing_HeaderFile #define ShHealOper_Sewing_HeaderFile diff --git a/src/ShHealOper/ShHealOper_ShapeProcess.cxx b/src/ShHealOper/ShHealOper_ShapeProcess.cxx index 07c7291fe..8c8b1a324 100644 --- a/src/ShHealOper/ShHealOper_ShapeProcess.cxx +++ b/src/ShHealOper/ShHealOper_ShapeProcess.cxx @@ -1,27 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_ShapeProcess.cxx // Created: 14.04.04 10:58:04 // Author: Galina KULIKOVA - +// #include #include #include diff --git a/src/ShHealOper/ShHealOper_ShapeProcess.hxx b/src/ShHealOper/ShHealOper_ShapeProcess.hxx index e62fc56be..ad6e74917 100644 --- a/src/ShHealOper/ShHealOper_ShapeProcess.hxx +++ b/src/ShHealOper/ShHealOper_ShapeProcess.hxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_ShapeProcess.hxx // Created: 13.04.04 11:45:20 // Author: Galina KULIKOVA - - +// #ifndef ShHealOper_ShapeProcess_HeaderFile #define ShHealOper_ShapeProcess_HeaderFile diff --git a/src/ShHealOper/ShHealOper_SpiltCurve2d.hxx b/src/ShHealOper/ShHealOper_SpiltCurve2d.hxx index d69b411b6..9e4b5c07b 100644 --- a/src/ShHealOper/ShHealOper_SpiltCurve2d.hxx +++ b/src/ShHealOper/ShHealOper_SpiltCurve2d.hxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_SplitCurve2d.hxx // Created: 05.05.04 12:56:01 // Author: Galina KULIKOVA - - +// #ifndef ShHealOper_SplitCurve2d_HeaderFile #define ShHealOper_SplitCurve2d_HeaderFile diff --git a/src/ShHealOper/ShHealOper_SplitCurve2d.cxx b/src/ShHealOper/ShHealOper_SplitCurve2d.cxx index 79e4f08f7..4e495f9e1 100644 --- a/src/ShHealOper/ShHealOper_SplitCurve2d.cxx +++ b/src/ShHealOper/ShHealOper_SplitCurve2d.cxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_SplitCurve2d.cxx // Created: 05.05.04 13:03:10 // Author: Galina KULIKOVA - - +// #include #include #include diff --git a/src/ShHealOper/ShHealOper_SplitCurve2d.hxx b/src/ShHealOper/ShHealOper_SplitCurve2d.hxx index aa62b4a94..cd9d87c6c 100644 --- a/src/ShHealOper/ShHealOper_SplitCurve2d.hxx +++ b/src/ShHealOper/ShHealOper_SplitCurve2d.hxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_SplitCurve2d.hxx // Created: 05.05.04 12:56:01 // Author: Galina KULIKOVA - - +// #ifndef ShHealOper_SplitCurve2d_HeaderFile #define ShHealOper_SplitCurve2d_HeaderFile diff --git a/src/ShHealOper/ShHealOper_SplitCurve3d.cxx b/src/ShHealOper/ShHealOper_SplitCurve3d.cxx index 0b4142ac7..f7286e2e1 100644 --- a/src/ShHealOper/ShHealOper_SplitCurve3d.cxx +++ b/src/ShHealOper/ShHealOper_SplitCurve3d.cxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_SplitCurve3d.cxx // Created: 05.05.04 12:48:36 // Author: Galina KULIKOVA - - +// #include #include #include diff --git a/src/ShHealOper/ShHealOper_SplitCurve3d.hxx b/src/ShHealOper/ShHealOper_SplitCurve3d.hxx index 8818e6b16..743124513 100644 --- a/src/ShHealOper/ShHealOper_SplitCurve3d.hxx +++ b/src/ShHealOper/ShHealOper_SplitCurve3d.hxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_SplitCurve3d.hxx // Created: 05.05.04 12:28:13 // Author: Galina KULIKOVA - - +// #ifndef ShHealOper_SplitCurve3d_HeaderFile #define ShHealOper_SplitCurve3d_HeaderFile diff --git a/src/ShHealOper/ShHealOper_Tool.cxx b/src/ShHealOper/ShHealOper_Tool.cxx index 4827956ac..e0f394756 100644 --- a/src/ShHealOper/ShHealOper_Tool.cxx +++ b/src/ShHealOper/ShHealOper_Tool.cxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_Tool.cxx // Created: 26.04.04 12:11:33 // Author: Galina KULIKOVA - - +// #include //======================================================================= diff --git a/src/ShHealOper/ShHealOper_Tool.hxx b/src/ShHealOper/ShHealOper_Tool.hxx index 587c474e1..502a60f1a 100644 --- a/src/ShHealOper/ShHealOper_Tool.hxx +++ b/src/ShHealOper/ShHealOper_Tool.hxx @@ -1,28 +1,28 @@ -// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// 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 +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// 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: ShHealOper_Tool.hxx // Created: 26.04.04 11:36:04 // Author: Galina KULIKOVA - - +// #ifndef ShHealOper_Tool_HeaderFile #define ShHealOper_Tool_HeaderFile diff --git a/src/TransformationGUI/Makefile.am b/src/TransformationGUI/Makefile.am index b980ea75a..4a3725c81 100644 --- a/src/TransformationGUI/Makefile.am +++ b/src/TransformationGUI/Makefile.am @@ -1,90 +1,103 @@ -# GEOM TRANSFORMATIONGUI : +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE # -# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -# -# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS # +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. # +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# +# GEOM TRANSFORMATIONGUI : +# File : Makefile.am +# Author : Alexander BORODIN, Open CASCADE S.A.S. (alexander.borodin@opencascade.com) +# Package : TransformationGUI # -# File : Makefile.in -# Author : Damien COQUERET (OCC) -# Modified by : Alexander BORODIN (OCN) - autotools usage -# Module : GEOM -# $Header: - include $(top_srcdir)/adm_local/unix/make_common_starter.am # header files -salomeinclude_HEADERS = +salomeinclude_HEADERS = \ + TransformationGUI.h \ + TransformationGUI_MultiTranslationDlg.h \ + TransformationGUI_MultiRotationDlg.h \ + TransformationGUI_TranslationDlg.h \ + TransformationGUI_RotationDlg.h \ + TransformationGUI_MirrorDlg.h \ + TransformationGUI_ScaleDlg.h \ + TransformationGUI_OffsetDlg.h \ + TransformationGUI_PositionDlg.h # Libraries targets lib_LTLIBRARIES = libTransformationGUI.la -dist_libTransformationGUI_la_SOURCES = \ - TransformationGUI.cxx \ - TransformationGUI_MultiTranslationDlg.cxx \ - TransformationGUI_MultiRotationDlg.cxx \ - TransformationGUI_TranslationDlg.cxx \ - TransformationGUI_RotationDlg.cxx \ - TransformationGUI_MirrorDlg.cxx \ - TransformationGUI_ScaleDlg.cxx \ - TransformationGUI_OffsetDlg.cxx \ +dist_libTransformationGUI_la_SOURCES = \ + TransformationGUI.h \ + TransformationGUI_MultiTranslationDlg.h \ + TransformationGUI_MultiRotationDlg.h \ + TransformationGUI_TranslationDlg.h \ + TransformationGUI_RotationDlg.h \ + TransformationGUI_MirrorDlg.h \ + TransformationGUI_ScaleDlg.h \ + TransformationGUI_OffsetDlg.h \ + TransformationGUI_PositionDlg.h \ + \ + TransformationGUI.cxx \ + TransformationGUI_MultiTranslationDlg.cxx \ + TransformationGUI_MultiRotationDlg.cxx \ + TransformationGUI_TranslationDlg.cxx \ + TransformationGUI_RotationDlg.cxx \ + TransformationGUI_MirrorDlg.cxx \ + TransformationGUI_ScaleDlg.cxx \ + TransformationGUI_OffsetDlg.cxx \ TransformationGUI_PositionDlg.cxx -MOC_FILES = \ - TransformationGUI_MultiTranslationDlg_moc.cxx \ - TransformationGUI_MultiRotationDlg_moc.cxx \ - TransformationGUI_TranslationDlg_moc.cxx \ - TransformationGUI_RotationDlg_moc.cxx \ - TransformationGUI_MirrorDlg_moc.cxx \ - TransformationGUI_ScaleDlg_moc.cxx \ - TransformationGUI_OffsetDlg_moc.cxx \ +MOC_FILES = \ + TransformationGUI_MultiTranslationDlg_moc.cxx \ + TransformationGUI_MultiRotationDlg_moc.cxx \ + TransformationGUI_TranslationDlg_moc.cxx \ + TransformationGUI_RotationDlg_moc.cxx \ + TransformationGUI_MirrorDlg_moc.cxx \ + TransformationGUI_ScaleDlg_moc.cxx \ + TransformationGUI_OffsetDlg_moc.cxx \ TransformationGUI_PositionDlg_moc.cxx -nodist_libTransformationGUI_la_SOURCES= \ +nodist_libTransformationGUI_la_SOURCES = \ $(MOC_FILES) -#LIB_CLIENT_IDL = SALOME_GenericObj.idl SALOME_Component.idl SALOME_Exception.idl +# additional information to compile and link file -#LIB_SERVER_IDL = - -# additionnal information to compil and link file - -libTransformationGUI_la_CPPFLAGS = \ - $(QT_INCLUDES) \ - $(VTK_INCLUDES) \ - $(CAS_CPPFLAGS) \ - $(PYTHON_INCLUDES) \ - $(BOOST_CPPFLAGS) \ - $(KERNEL_CXXFLAGS) \ - $(GUI_CXXFLAGS) \ - $(CORBA_CXXFLAGS) \ - $(CORBA_INCLUDES) \ - -I$(srcdir)/../GEOMGUI \ - -I$(srcdir)/../DlgRef \ - -I$(srcdir)/../GEOMBase \ - -I$(srcdir)/../OBJECT \ - -I$(srcdir)/../GEOMClient \ - -I$(srcdir)/../GEOMImpl \ - -I$(srcdir)/../GEOMFiltersSelection \ - -I$(top_builddir)/idl \ +libTransformationGUI_la_CPPFLAGS = \ + $(QT_INCLUDES) \ + $(VTK_INCLUDES) \ + $(CAS_CPPFLAGS) \ + $(PYTHON_INCLUDES) \ + $(BOOST_CPPFLAGS) \ + $(KERNEL_CXXFLAGS) \ + $(GUI_CXXFLAGS) \ + $(CORBA_CXXFLAGS) \ + $(CORBA_INCLUDES) \ + -I$(srcdir)/../GEOMGUI \ + -I$(srcdir)/../DlgRef \ + -I$(srcdir)/../GEOMBase \ + -I$(srcdir)/../OBJECT \ + -I$(srcdir)/../GEOMClient \ + -I$(srcdir)/../GEOMImpl \ + -I$(srcdir)/../GEOMFiltersSelection \ + -I$(top_builddir)/src/DlgRef \ + -I$(top_builddir)/idl \ -I$(top_builddir)/salome_adm/unix -libTransformationGUI_la_LDFLAGS = \ - ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ +libTransformationGUI_la_LDFLAGS = \ + ../GEOMFiltersSelection/libGEOMFiltersSelection.la \ ../GEOMBase/libGEOMBase.la diff --git a/src/TransformationGUI/TransformationGUI.cxx b/src/TransformationGUI/TransformationGUI.cxx index eb69c9037..136102503 100644 --- a/src/TransformationGUI/TransformationGUI.cxx +++ b/src/TransformationGUI/TransformationGUI.cxx @@ -1,38 +1,41 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : TransformationGUI.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "TransformationGUI.h" -#include "GeometryGUI.h" -#include "SUIT_Session.h" -#include "SUIT_Desktop.h" +#include +#include -#include "SalomeApp_Application.h" +#include +#include +#include +#include +#include +#include +#include +#include #include "TransformationGUI_MultiTranslationDlg.h" // Method MULTI TRANSLATION #include "TransformationGUI_MultiRotationDlg.h" // Method MULTI ROTATION @@ -43,13 +46,12 @@ #include "TransformationGUI_OffsetDlg.h" // Method OFFSET #include "TransformationGUI_PositionDlg.h" // Method POSITION -using namespace std; - //======================================================================= // function : TransformationGUI() // purpose : Constructor //======================================================================= -TransformationGUI::TransformationGUI(GeometryGUI* parent) : GEOMGUI(parent) +TransformationGUI::TransformationGUI( GeometryGUI* parent ) + : GEOMGUI( parent ) { } @@ -66,46 +68,89 @@ TransformationGUI::~TransformationGUI() // function : OnGUIEvent() // purpose : //======================================================================= -bool TransformationGUI::OnGUIEvent(int theCommandID, SUIT_Desktop* parent) +bool TransformationGUI::OnGUIEvent( int theCommandID, SUIT_Desktop* parent ) { SalomeApp_Application* app = getGeometryGUI()->getApp(); - if (!app) return false; + if ( !app ) return false; getGeometryGUI()->EmitSignalDeactivateDialog(); QDialog* aDlg = NULL; - switch (theCommandID) - { + switch ( theCommandID ) { case 5021: // TRANSLATION - aDlg = new TransformationGUI_TranslationDlg( getGeometryGUI(), parent, "" ); + aDlg = new TransformationGUI_TranslationDlg( getGeometryGUI(), parent ); break; case 5022: // ROTATION - aDlg = new TransformationGUI_RotationDlg( getGeometryGUI(), parent, "" ); + aDlg = new TransformationGUI_RotationDlg( getGeometryGUI(), parent ); break; case 5023: // POSITION - aDlg = new TransformationGUI_PositionDlg( getGeometryGUI(), parent, "" ); + aDlg = new TransformationGUI_PositionDlg( getGeometryGUI(), parent ); break; case 5024: // MIRROR - aDlg = new TransformationGUI_MirrorDlg( getGeometryGUI(), parent, "" ); + aDlg = new TransformationGUI_MirrorDlg( getGeometryGUI(), parent ); break; case 5025: // SCALE - aDlg = new TransformationGUI_ScaleDlg( getGeometryGUI(), parent, "" ); + aDlg = new TransformationGUI_ScaleDlg( getGeometryGUI(), parent ); break; case 5026: // OFFSET - aDlg = new TransformationGUI_OffsetDlg( getGeometryGUI(), parent, "" ); + aDlg = new TransformationGUI_OffsetDlg( getGeometryGUI(), parent ); break; case 5027: // MULTI TRANSLATION - aDlg = new TransformationGUI_MultiTranslationDlg( getGeometryGUI(), parent, "" ); + aDlg = new TransformationGUI_MultiTranslationDlg( getGeometryGUI(), parent ); break; case 5028: // MULTI ROTATION - aDlg = new TransformationGUI_MultiRotationDlg( getGeometryGUI(), parent, "" ); + aDlg = new TransformationGUI_MultiRotationDlg( getGeometryGUI(), parent ); + break; + case 5029: // RELOAD IMPORTED SHAPE + { + SalomeApp_Study* anAppStudy = dynamic_cast(app->activeStudy()); + + GEOM::GEOM_ITransformOperations_var anOp = + GeometryGUI::GetGeomGen()->GetITransformOperations(anAppStudy->id()); + if (anOp->_is_nil()) return false; + + GEOM_Displayer aDisp (anAppStudy); + SUIT_Desktop* desk = app->desktop(); + QList wnds = desk->windows(); + + LightApp_SelectionMgr* aSelMgr = app->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + SALOME_ListIteratorOfListIO aSelIt (aSelList); + for (; aSelIt.More(); aSelIt.Next()) { + Handle(SALOME_InteractiveObject) io = aSelIt.Value(); + Standard_Boolean testResult = Standard_False; + GEOM::GEOM_Object_var aGeomObj = GEOMBase::ConvertIOinGEOMObject(io, testResult); + if (testResult) { + anOp->RecomputeObject(aGeomObj); + + SUIT_ViewWindow* wnd; + QListIterator it (wnds); + while (it.hasNext() && (wnd = it.next())) + { + if (SUIT_ViewManager* vman = wnd->getViewManager()) { + if (SUIT_ViewModel* vmodel = vman->getViewModel()) { + if (SALOME_View* view = dynamic_cast(vmodel)) { + if (view->isVisible(io)) { + aDisp.Erase(io, false, false, view); + aDisp.Display(io, true, view); + } + // ? Redisplay subshapes ? + } + } + } + } + } + } // for (; aSelIt.More(); aSelIt.Next()) + } break; default: - app->putInfo(tr("GEOM_PRP_COMMAND").arg(theCommandID)); + app->putInfo( tr( "GEOM_PRP_COMMAND" ).arg( theCommandID ) ); break; } - if (aDlg != NULL) + if ( aDlg != NULL ) aDlg->show(); return true; @@ -118,7 +163,7 @@ bool TransformationGUI::OnGUIEvent(int theCommandID, SUIT_Desktop* parent) extern "C" { #ifdef WNT - __declspec( dllexport ) + __declspec( dllexport ) #endif GEOMGUI* GetLibGUI( GeometryGUI* parent ) { diff --git a/src/TransformationGUI/TransformationGUI.h b/src/TransformationGUI/TransformationGUI.h index 87ba9b55d..41c1967ae 100644 --- a/src/TransformationGUI/TransformationGUI.h +++ b/src/TransformationGUI/TransformationGUI.h @@ -1,35 +1,32 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +// +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// 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 // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI.h +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// -// File : TransformationGUI.h -// Author : Damien COQUERET -// Module : GEOM - #ifndef TRANSFORMATIONGUI_H #define TRANSFORMATIONGUI_H -#include "GEOMGUI.h" - +#include //================================================================================= // class : TransformationGUI @@ -38,10 +35,10 @@ class TransformationGUI : public GEOMGUI { public: - TransformationGUI( GeometryGUI* parent ); + TransformationGUI( GeometryGUI* ); ~TransformationGUI(); - bool OnGUIEvent(int theCommandID, SUIT_Desktop* parent); + bool OnGUIEvent( int, SUIT_Desktop* ); }; -#endif +#endif // TRANSFORMATIONGUI_H diff --git a/src/TransformationGUI/TransformationGUI.pro b/src/TransformationGUI/TransformationGUI.pro new file mode 100644 index 000000000..6d04e6bf0 --- /dev/null +++ b/src/TransformationGUI/TransformationGUI.pro @@ -0,0 +1,68 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = lib +TARGET = TransformationGUI +DESTDIR = ../../lib +MOC_DIR = ../../moc +OBJECTS_DIR = ../../obj/$$TARGET + +QT_INCLUDES = $$(QTDIR)/include $$(QTDIR)/include/QtCore $$(QTDIR)/include/QtGui $$(QTDIR)/include/QtOpenGL $$(QTDIR)/include/QtXml + +VTK_INCLUDES = $$(VTKHOME)/include/vtk + +CASROOT = $$(CASROOT) +CAS_CPPFLAGS = $${CASROOT}/inc + +PYTHON_INCLUDES = $$(PYTHONHOME)/include/python2.4 + +BOOST_CPPFLAGS = $$(BOOSTDIR)/include + +KERNEL_CXXFLAGS = $$(KERNEL_ROOT_DIR)/include/salome + +GUI_CXXFLAGS = $$(GUI_ROOT_DIR)/include/salome + +CORBA_INCLUDES = $$(OMNIORBDIR)/include $$(OMNIORBDIR)/include/omniORB4 $$(OMNIORBDIR)/include/COS + +INCLUDEPATH += $${QT_INCLUDES} $${VTK_INCLUDES} $${CAS_CPPFLAGS} $${PYTHON_INCLUDES} $${BOOST_CPPFLAGS} $${KERNEL_CXXFLAGS} $${GUI_CXXFLAGS} $${CORBA_INCLUDES} ../GEOMGUI ../DlgRef ../GEOMBase ../OBJECT ../GEOMClient ../GEOMImpl ../GEOMFiltersSelection $$(GEOM_ROOT_DIR)/idl $$(GEOM_ROOT_DIR)/salome_adm/unix + +LIBS += -L$$(GEOM_ROOT_DIR)/lib -lGEOMFiltersSelection -lGEOMBase + +CONFIG -= debug release debug_and_release +CONFIG += qt thread debug dll shared + +win32:DEFINES += WIN32 +DEFINES += OCC_VERSION_MAJOR=6 OCC_VERSION_MINOR=1 OCC_VERSION_MAINTENANCE=1 LIN LINTEL CSFDB No_exception HAVE_CONFIG_H HAVE_LIMITS_H HAVE_WOK_CONFIG_H OCC_CONVERT_SIGNALS OMNIORB_VERSION=4 __x86__ __linux__ COMP_CORBA_DOUBLE COMP_CORBA_LONG + +SOURCES = TransformationGUI.cxx +SOURCES += TransformationGUI_MultiTranslationDlg.cxx +SOURCES += TransformationGUI_MultiRotationDlg.cxx +SOURCES += TransformationGUI_TranslationDlg.cxx +SOURCES += TransformationGUI_RotationDlg.cxx +SOURCES += TransformationGUI_MirrorDlg.cxx +SOURCES += TransformationGUI_ScaleDlg.cxx +SOURCES += TransformationGUI_OffsetDlg.cxx +SOURCES += TransformationGUI_PositionDlg.cxx + +includes.files = $$HEADERS +includes.path = ../../include + +INSTALLS += includes diff --git a/src/TransformationGUI/TransformationGUI_MirrorDlg.cxx b/src/TransformationGUI/TransformationGUI_MirrorDlg.cxx index 345ce98fe..4e3abf683 100644 --- a/src/TransformationGUI/TransformationGUI_MirrorDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_MirrorDlg.cxx @@ -1,38 +1,40 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI_MirrorDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : TransformationGUI_MirrorDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "TransformationGUI_MirrorDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include +#include +#include +#include + +// OCCT Includes #include #include #include @@ -40,41 +42,35 @@ #include #include -#include -#include - -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" - -using namespace std; +#include //================================================================================= // class : TransformationGUI_MirrorDlg() -// purpose : Constructs a TransformationGUI_MirrorDlg which is a child of 'parent', with the +// purpose : Constructs a TransformationGUI_MirrorDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -TransformationGUI_MirrorDlg::TransformationGUI_MirrorDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +TransformationGUI_MirrorDlg::TransformationGUI_MirrorDlg (GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl), + myInitial(true) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_MIRROR_POINT"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_MIRROR_AXE"))); - QPixmap image2(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_MIRROR_PLANE"))); - QPixmap image3(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + SUIT_ResourceMgr* aResMgr = myGeomGUI->getApp()->resourceMgr(); + QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_MIRROR_POINT"))); + QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_MIRROR_AXE"))); + QPixmap image2 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_MIRROR_PLANE"))); + QPixmap image3 (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_MIRROR_TITLE")); + setWindowTitle(tr("GEOM_MIRROR_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_MIRROR")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image1); - RadioButton3->setPixmap(image2); - - GroupPoints = new DlgRef_2Sel1Spin2Check(this, "GroupPoints"); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_MIRROR")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setIcon(image1); + mainFrame()->RadioButton3->setIcon(image2); + + GroupPoints = new DlgRef_2Sel1Spin2Check(centralWidget()); GroupPoints->SpinBox_DX->hide(); GroupPoints->TextLabel3->hide(); GroupPoints->CheckButton2->hide(); @@ -82,231 +78,224 @@ TransformationGUI_MirrorDlg::TransformationGUI_MirrorDlg(GeometryGUI* theGeometr GroupPoints->TextLabel1->setText(tr("GEOM_OBJECTS")); GroupPoints->TextLabel2->setText(tr("GEOM_POINT_MIRROR")); GroupPoints->TextLabel2->setFixedWidth(74); - GroupPoints->PushButton1->setPixmap(image3); - GroupPoints->PushButton2->setPixmap(image3); + GroupPoints->PushButton1->setIcon(image3); + GroupPoints->PushButton2->setIcon(image3); GroupPoints->CheckButton1->setText(tr("GEOM_CREATE_COPY")); - Layout1->addWidget(GroupPoints, 2, 0); + + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); /***************************************************************/ - setHelpFileName("mirror_operation_page.html"); - + setHelpFileName("mirror_operation_page.html"); + + // Activate Create a Copy mode + GroupPoints->CheckButton1->setChecked(true); + CreateCopyModeChanged(true); + Init(); } - //================================================================================= // function : ~TransformationGUI_MirrorDlg() // purpose : Destroys the object and frees any allocated resources //================================================================================= TransformationGUI_MirrorDlg::~TransformationGUI_MirrorDlg() -{ - /* no need to delete child widgets, Qt does it all for us */ +{ + // no need to delete child widgets, Qt does it all for us } - //================================================================================= // function : Init() // purpose : //================================================================================= void TransformationGUI_MirrorDlg::Init() -{ - /* init variables */ - myEditCurrentArgument = GroupPoints->LineEdit1; +{ + // init variables GroupPoints->LineEdit1->setReadOnly(true); GroupPoints->LineEdit2->setReadOnly(true); - - myArgument = GEOM::GEOM_Object::_nil(); - - // Activate Create a Copy mode - GroupPoints->CheckButton1->setChecked(true); - CreateCopyModeChanged(true); - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), SLOT(ConstructorsClicked(int))); + GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit2->setText(""); + + myArgument = GEOM::GEOM_Object::_nil(); + + mainFrame()->GroupBoxPublish->show(); + + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); + + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - + connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(CreateCopyModeChanged(bool))); - - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - initName( tr( "GEOM_MIRROR" ) ); - ConstructorsClicked( 0 ); + initName(tr("GEOM_MIRROR")); + + ConstructorsClicked(0); } - //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void TransformationGUI_MirrorDlg::ConstructorsClicked(int constructorId) +void TransformationGUI_MirrorDlg::ConstructorsClicked (int constructorId) { - disconnect( myGeomGUI->getApp()->selectionMgr(), 0, this, 0 ); - - globalSelection(); - myEditCurrentArgument = GroupPoints->LineEdit1; + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + GroupPoints->LineEdit2->clear(); myArgument = GEOM::GEOM_Object::_nil(); - - switch (constructorId) - { - case 0: /* mirror an object by point */ - { - GroupPoints->TextLabel2->setText(tr("GEOM_POINT_MIRROR")); - break; - } - case 1: /* mirror an object by axe */ - { - GroupPoints->TextLabel2->setText(tr("GEOM_AXE_MIRROR")); - break; - } - case 2: /* mirror an object by plane */ - { - GroupPoints->TextLabel2->setText(tr("GEOM_PLANE_MIRROR")); - break; - } - } - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + + switch (constructorId) { + case 0: // mirror an object by point + GroupPoints->TextLabel2->setText(tr("GEOM_POINT_MIRROR")); + break; + case 1: // mirror an object by axe + GroupPoints->TextLabel2->setText(tr("GEOM_AXE_MIRROR")); + break; + case 2: // mirror an object by plane + GroupPoints->TextLabel2->setText(tr("GEOM_PLANE_MIRROR")); + break; + } + + GroupPoints->PushButton1->click(); + + if (myInitial) { + myInitial = false; + SelectionIntoArgument(); + } + else { + displayPreview(); + } } - - //================================================================================= // function : ClickOnOk() // purpose : //================================================================================= void TransformationGUI_MirrorDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool TransformationGUI_MirrorDlg::ClickOnApply() { - if ( !onAccept(GroupPoints->CheckButton1->isChecked()) ) + if (!onAccept(GroupPoints->CheckButton1->isChecked())) return false; - + initName(); - ConstructorsClicked( getConstructorId() ); + // activate selection and connect selection manager + ConstructorsClicked(getConstructorId()); return true; } - //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection has changed +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void TransformationGUI_MirrorDlg::SelectionIntoArgument() { + erasePreview(); myEditCurrentArgument->setText(""); + + if (myEditCurrentArgument == GroupPoints->LineEdit1) + myObjects.length(0); + else if (myEditCurrentArgument == GroupPoints->LineEdit2) + myArgument = GEOM::GEOM_Object::_nil(); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + QString aName; - if(myEditCurrentArgument == GroupPoints->LineEdit1) - { - int aNbSel = GEOMBase::GetNameOfSelectedIObjects(selectedIO(), aName); - if(aNbSel < 1) - { - myObjects.length(0); - return; - } - GEOMBase::ConvertListOfIOInListOfGO(selectedIO(), myObjects); - if (!myObjects.length()) - return; - if(aNbSel != 1) - aName = tr("%1_objects").arg(aNbSel); - } - else if(myEditCurrentArgument == GroupPoints->LineEdit2) - { - if(IObjectCount() != 1) - { - myArgument = GEOM::GEOM_Object::_nil(); - return; - } - Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult ); - myArgument = aSelectedObject; - if(!testResult || CORBA::is_nil( myArgument )) - return; + if (myEditCurrentArgument == GroupPoints->LineEdit1) { + int aNbSel = GEOMBase::GetNameOfSelectedIObjects(aSelList, aName); + if (aNbSel < 1) + return; - aName = GEOMBase::GetName( aSelectedObject ); + GEOMBase::ConvertListOfIOInListOfGO(aSelList, myObjects); + if (!myObjects.length()) + return; + else + myEditCurrentArgument->setText(aName); + } + else if (myEditCurrentArgument == GroupPoints->LineEdit2) { + if (aSelList.Extent() != 1) + return; - if ( testResult && !aSelectedObject->_is_nil() ) - { - TopoDS_Shape aShape; - if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) - { - TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; - if (getConstructorId() == 1) - aNeedType = TopAbs_EDGE; - else if (getConstructorId() == 2) - aNeedType = TopAbs_FACE; - - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); - TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes( firstIObject(), aMap ); - if ( aMap.Extent() == 1 ) - { - int anIndex = aMap( 1 ); - if (aNeedType == TopAbs_VERTEX) - aName += QString(":vertex_%1").arg(anIndex); - else - aName += QString(":edge_%1").arg(anIndex); - - //Find SubShape Object in Father - GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aSelectedObject, aName); - - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = - getGeomEngine()->GetIShapesOperations( getStudyId() ); - myArgument = aShapesOp->GetSubShape(aSelectedObject, anIndex); - } - else - myArgument = aFindedObject; // get Object from study - } - else { - if (aShape.ShapeType() != aNeedType) { - myArgument = GEOM::GEOM_Object::_nil(); - aName = ""; - } - } - } - } + // nbSel == 1 + Standard_Boolean testResult = Standard_False; + myArgument = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + if (!testResult || CORBA::is_nil(myArgument)) + return; + + aName = GEOMBase::GetName(myArgument); + + if (testResult && !myArgument->_is_nil()) { + TopoDS_Shape aShape; + if (GEOMBase::GetShape(myArgument, aShape, TopAbs_SHAPE) && !aShape.IsNull()) { + TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; + if (getConstructorId() == 1) + aNeedType = TopAbs_EDGE; + else if (getConstructorId() == 2) + aNeedType = TopAbs_FACE; + + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) { + int anIndex = aMap(1); + if (aNeedType == TopAbs_VERTEX) + aName += QString(":vertex_%1").arg(anIndex); + else + aName += QString(":edge_%1").arg(anIndex); + + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = findObjectInFather(myArgument, aName); + + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = + getGeomEngine()->GetIShapesOperations(getStudyId()); + myArgument = aShapesOp->GetSubShape(myArgument, anIndex); + } + else { + myArgument = aFindedObject; // get Object from study + } + } + else { + if (aShape.ShapeType() != aNeedType) { + myArgument = GEOM::GEOM_Object::_nil(); + aName = ""; + } + } + } } - myEditCurrentArgument->setText( aName ); - - displayPreview(); + myEditCurrentArgument->setText(aName); + + if (!myArgument->_is_nil() && !myObjects.length()) + GroupPoints->PushButton1->click(); + } + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + displayPreview(); } - -//================================================================================= -// function : LineEditReturnPressed() -// purpose : -//================================================================================= -void TransformationGUI_MirrorDlg::LineEditReturnPressed() -{ - QLineEdit* send = (QLineEdit*)sender(); - if(send == GroupPoints->LineEdit1 || - send == GroupPoints->LineEdit2) - { - myEditCurrentArgument = send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } -} - - //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -314,37 +303,60 @@ void TransformationGUI_MirrorDlg::LineEditReturnPressed() void TransformationGUI_MirrorDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - globalSelection(); - - if(send == GroupPoints->PushButton1){ - myEditCurrentArgument = GroupPoints->LineEdit1; - } - else if(send == GroupPoints->PushButton2) { - myEditCurrentArgument = GroupPoints->LineEdit2; - switch(getConstructorId()) - { - case 0: - { - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); - break; - } - case 1: - { - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); - break; - } - case 2: - { - globalSelection( GEOM_PLANE ); - break; - } - } - } + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + globalSelection(); + + if (send == GroupPoints->PushButton1) { + myEditCurrentArgument = GroupPoints->LineEdit1; + + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit2->setEnabled(false); + } + else if (send == GroupPoints->PushButton2) { + myEditCurrentArgument = GroupPoints->LineEdit2; + + switch (getConstructorId()) { + case 0: + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + break; + case 1: + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); + break; + case 2: + globalSelection(GEOM_PLANE); + break; + } + + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + } + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + // enable line edit + myEditCurrentArgument->setEnabled(true); myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); } +//================================================================================= +// function : LineEditReturnPressed() +// purpose : +//================================================================================= +void TransformationGUI_MirrorDlg::LineEditReturnPressed() +{ + QLineEdit* send = (QLineEdit*)sender(); + if (send == GroupPoints->LineEdit1 || + send == GroupPoints->LineEdit2) { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } +} //================================================================================= // function : ActivateThisDialog() @@ -353,135 +365,142 @@ void TransformationGUI_MirrorDlg::SetEditCurrentArgument() void TransformationGUI_MirrorDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + ConstructorsClicked( getConstructorId() ); } - //================================================================================= // function : enterEvent() // purpose : when mouse enter onto the QWidget //================================================================================= -void TransformationGUI_MirrorDlg::enterEvent(QEvent * e) +void TransformationGUI_MirrorDlg::enterEvent (QEvent*) { - if(!GroupConstructors->isEnabled()) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } - //================================================================================= // function : createOperation // purpose : //================================================================================= GEOM::GEOM_IOperations_ptr TransformationGUI_MirrorDlg::createOperation() { - return getGeomEngine()->GetITransformOperations( getStudyId() ); + return getGeomEngine()->GetITransformOperations(getStudyId()); } - //================================================================================= // function : isValid // purpose : //================================================================================= -bool TransformationGUI_MirrorDlg::isValid( QString& msg ) +bool TransformationGUI_MirrorDlg::isValid (QString& /*msg*/) { return !(myObjects.length() == 0 || myArgument->_is_nil()); } - //================================================================================= // function : execute // purpose : //================================================================================= -bool TransformationGUI_MirrorDlg::execute( ObjectList& objects ) +bool TransformationGUI_MirrorDlg::execute (ObjectList& objects) { bool res = false; bool toCreateCopy = IsPreview() || GroupPoints->CheckButton1->isChecked(); - + GEOM::GEOM_Object_var anObj; - - switch ( getConstructorId() ) + + switch (getConstructorId()) { + case 0: { - case 0 : - { - if (toCreateCopy) - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )->MirrorPointCopy( myObjects[i], myArgument ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - else - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )->MirrorPoint( myObjects[i], myArgument ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - res = true; - break; + if (toCreateCopy) { + for (int i = 0; i < myObjects.length(); i++) { + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + MirrorPointCopy(myObjects[i], myArgument); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + } } - case 1 : - { - if (toCreateCopy) - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )->MirrorAxisCopy( myObjects[i], myArgument ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - else - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )->MirrorAxis( myObjects[i], myArgument ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - res = true; - break; - } - case 2: - { - if (toCreateCopy) - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )->MirrorPlaneCopy( myObjects[i], myArgument ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - else - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )->MirrorPlane( myObjects[i], myArgument ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - res = true; - break; + else { + for (int i = 0; i < myObjects.length(); i++) { + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + MirrorPoint(myObjects[i], myArgument); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + } } + res = true; + break; } - + case 1: + { + if (toCreateCopy) { + for (int i = 0; i < myObjects.length(); i++) { + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + MirrorAxisCopy(myObjects[i], myArgument); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + } + } + else { + for (int i = 0; i < myObjects.length(); i++) { + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + MirrorAxis(myObjects[i], myArgument); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + } + } + res = true; + break; + } + case 2: + { + if (toCreateCopy) { + for (int i = 0; i < myObjects.length(); i++) { + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + MirrorPlaneCopy(myObjects[i], myArgument); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + } + } + else { + for (int i = 0; i < myObjects.length(); i++) { + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + MirrorPlane(myObjects[i], myArgument); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + } + } + res = true; + break; + } + } + return res; } //================================================================================= -// function : closeEvent +// function : restoreSubShapes // purpose : //================================================================================= -void TransformationGUI_MirrorDlg::closeEvent( QCloseEvent* e ) +void TransformationGUI_MirrorDlg::restoreSubShapes (SALOMEDS::Study_ptr theStudy, + SALOMEDS::SObject_ptr theSObject) { - GEOMBase_Skeleton::closeEvent( e ); + if (mainFrame()->CheckBoxRestoreSS->isChecked()) { + // empty list of arguments means that all arguments should be restored + getGeomEngine()->RestoreSubShapesSO(theStudy, theSObject, GEOM::ListOfGO(), + /*theFindMethod=*/GEOM::FSM_Transformed, + /*theInheritFirstArg=*/true); + } } - //================================================================================= // function : CreateCopyModeChanged() // purpose : //================================================================================= -void TransformationGUI_MirrorDlg::CreateCopyModeChanged(bool isCreateCopy) +void TransformationGUI_MirrorDlg::CreateCopyModeChanged (bool isCreateCopy) { - this->GroupBoxName->setEnabled(isCreateCopy); + mainFrame()->GroupBoxName->setEnabled(isCreateCopy); } //================================================================================= @@ -494,17 +513,16 @@ void TransformationGUI_MirrorDlg::addSubshapesToStudy() if (toCreateCopy) { QMap objMap; - switch (getConstructorId()) - { - case 0: - objMap[GroupPoints->LineEdit2->text()] = myArgument; - break; - case 1: - objMap[GroupPoints->LineEdit2->text()] = myArgument; - break; - case 2: - return; - } - addSubshapesToFather( objMap ); + switch (getConstructorId()) { + case 0: + objMap[GroupPoints->LineEdit2->text()] = myArgument; + break; + case 1: + objMap[GroupPoints->LineEdit2->text()] = myArgument; + break; + case 2: + return; + } + addSubshapesToFather(objMap); } } diff --git a/src/TransformationGUI/TransformationGUI_MirrorDlg.h b/src/TransformationGUI/TransformationGUI_MirrorDlg.h index 25f576739..668254090 100644 --- a/src/TransformationGUI/TransformationGUI_MirrorDlg.h +++ b/src/TransformationGUI/TransformationGUI_MirrorDlg.h @@ -1,38 +1,34 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : TransformationGUI_MirrorDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI_MirrorDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef TRANSFORMATIONGUI_MIRRORDLG_H +#define TRANSFORMATIONGUI_MIRRORDLG_H -#ifndef DIALOGBOX_MIRROR_H -#define DIALOGBOX_MIRROR_H +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel1Spin2Check.h" - -#include "TransformationGUI.h" - +class DlgRef_2Sel1Spin2Check; //================================================================================= // class : TransformationGUI_MirrorDlg @@ -40,39 +36,43 @@ //================================================================================= class TransformationGUI_MirrorDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - TransformationGUI_MirrorDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~TransformationGUI_MirrorDlg(); + TransformationGUI_MirrorDlg( GeometryGUI*, QWidget* = 0, + bool = false, Qt::WindowFlags = 0 ); + ~TransformationGUI_MirrorDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); - virtual void closeEvent( QCloseEvent* e ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); + virtual void restoreSubShapes( SALOMEDS::Study_ptr, SALOMEDS::SObject_ptr ); private: - void Init(); - void enterEvent(QEvent* e); + void Init(); + void enterEvent( QEvent* ); - GEOM::GEOM_Object_var myArgument; - GEOM::ListOfGO myObjects; - - DlgRef_2Sel1Spin2Check* GroupPoints; +private: + GEOM::GEOM_Object_var myArgument; + GEOM::ListOfGO myObjects; + + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; + + DlgRef_2Sel1Spin2Check* GroupPoints; -private slots : - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ConstructorsClicked(int constructorId); - void CreateCopyModeChanged(bool isCreateCopy); +private slots: + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ConstructorsClicked( int ); + void CreateCopyModeChanged( bool ); }; -#endif // DIALOGBOX_MIRROR_H +#endif // TRANSFORMATIONGUI_MIRRORDLG_H diff --git a/src/TransformationGUI/TransformationGUI_MultiRotationDlg.cxx b/src/TransformationGUI/TransformationGUI_MultiRotationDlg.cxx index e71497d84..80d028e25 100644 --- a/src/TransformationGUI/TransformationGUI_MultiRotationDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_MultiRotationDlg.cxx @@ -1,38 +1,40 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI_MultiRotationDlg.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// File : TransformationGUI_MultiRotationDlg.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "TransformationGUI_MultiRotationDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include +#include +#include +#include + +// OCCT Includes #include #include #include @@ -40,14 +42,7 @@ #include #include -#include -#include - -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" - -using namespace std; +#include //================================================================================= // class : TransformationGUI_MultiRotationDlg() @@ -57,34 +52,35 @@ using namespace std; // TRUE to construct a modal dialog. //================================================================================= TransformationGUI_MultiRotationDlg::TransformationGUI_MultiRotationDlg - (GeometryGUI* theGeometryGUI, QWidget* parent, const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +(GeometryGUI* theGeometryGUI, QWidget* parent, bool modal, Qt::WindowFlags fl) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl), + myInitial(true) { SUIT_ResourceMgr* aResMgr = myGeomGUI->getApp()->resourceMgr(); - QPixmap image0(aResMgr->loadPixmap("GEOM",tr("ICON_DLG_MULTIROTATION_SIMPLE"))); - QPixmap image1(aResMgr->loadPixmap("GEOM",tr("ICON_DLG_MULTIROTATION_DOUBLE"))); - QPixmap image2(aResMgr->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_MULTIROTATION_SIMPLE"))); + QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_MULTIROTATION_DOUBLE"))); + QPixmap image2 (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_MULTIROTATION_TITLE")); + setWindowTitle(tr("GEOM_MULTIROTATION_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_MULTIROTATION")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image1); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_MULTIROTATION")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setIcon(image1); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_2Sel1Spin(this, "GroupPoints"); + GroupPoints = new DlgRef_2Sel1Spin(centralWidget()); GroupPoints->GroupBox1->setTitle(tr("GEOM_MULTIROTATION_SIMPLE")); GroupPoints->TextLabel1->setText(tr("GEOM_MAIN_OBJECT")); GroupPoints->TextLabel2->setText(tr("GEOM_VECTOR")); GroupPoints->TextLabel3->setText(tr("GEOM_NB_TIMES")); - GroupPoints->PushButton1->setPixmap(image2); - GroupPoints->PushButton2->setPixmap(image2); + GroupPoints->PushButton1->setIcon(image2); + GroupPoints->PushButton2->setIcon(image2); GroupPoints->LineEdit1->setReadOnly(true); GroupPoints->LineEdit2->setReadOnly(true); - GroupDimensions = new DlgRef_2Sel4Spin1Check(this, "GroupDimensions"); + GroupDimensions = new DlgRef_2Sel4Spin1Check(centralWidget()); GroupDimensions->GroupBox1->setTitle(tr("GEOM_MULTIROTATION_DOUBLE")); GroupDimensions->TextLabel1->setText(tr("GEOM_MAIN_OBJECT")); GroupDimensions->TextLabel2->setText(tr("GEOM_VECTOR")); @@ -93,13 +89,15 @@ TransformationGUI_MultiRotationDlg::TransformationGUI_MultiRotationDlg GroupDimensions->TextLabel5->setText(tr("GEOM_STEP")); GroupDimensions->TextLabel6->setText(tr("GEOM_NB_TIMES")); GroupDimensions->CheckButton1->setText(tr("GEOM_REVERSE")); - GroupDimensions->PushButton1->setPixmap(image2); - GroupDimensions->PushButton2->setPixmap(image2); + GroupDimensions->PushButton1->setIcon(image2); + GroupDimensions->PushButton2->setIcon(image2); GroupDimensions->LineEdit1->setReadOnly(true); GroupDimensions->LineEdit2->setReadOnly(true); - Layout1->addWidget(GroupPoints, 2, 0); - Layout1->addWidget(GroupDimensions, 2, 0); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); + layout->addWidget(GroupDimensions); /***************************************************************/ setHelpFileName("multi_rotation_operation_page.html"); @@ -107,7 +105,6 @@ TransformationGUI_MultiRotationDlg::TransformationGUI_MultiRotationDlg Init(); } - //================================================================================= // function : ~TransformationGUI_MultiRotationDlg() // purpose : Destroys the object and frees any allocated resources @@ -117,227 +114,270 @@ TransformationGUI_MultiRotationDlg::~TransformationGUI_MultiRotationDlg() // no need to delete child widgets, Qt does it all for us } - //================================================================================= // function : Init() // purpose : //================================================================================= void TransformationGUI_MultiRotationDlg::Init() { - /* Get setting of step value from file configuration */ + // Get setting of step value from file configuration SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100); + double step = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100); double SpecificStep1 = 5; double SpecificStep2 = 1; - /* min, max, step and decimals for spin boxes & initial values */ - GroupPoints->SpinBox_DX->RangeStepAndValidator(1.0, MAX_NUMBER, SpecificStep2, 10); - GroupPoints->SpinBox_DX->SetValue(myNbTimes1); + // min, max, step and decimals for spin boxes & initial values + initSpinBox(GroupPoints->SpinBox_DX, 1.0, 999, SpecificStep2, 10); + GroupPoints->SpinBox_DX->setValue(myNbTimes1); + GroupPoints->SpinBox_DX->setDecimals(0); - GroupDimensions->SpinBox_DX1->RangeStepAndValidator(COORD_MIN, COORD_MAX, SpecificStep1, DBL_DIGITS_DISPLAY); - GroupDimensions->SpinBox_DY1->RangeStepAndValidator(1.0, MAX_NUMBER, SpecificStep2, 10); - GroupDimensions->SpinBox_DX2->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupDimensions->SpinBox_DY2->RangeStepAndValidator(1.0, MAX_NUMBER, SpecificStep2, 10); - GroupDimensions->SpinBox_DX1->SetValue(myAng); - GroupDimensions->SpinBox_DY1->SetValue(myNbTimes1); - GroupDimensions->SpinBox_DX2->SetValue(myStep); - GroupDimensions->SpinBox_DY2->SetValue(myNbTimes2); + initSpinBox(GroupDimensions->SpinBox_DX1, COORD_MIN, COORD_MAX, SpecificStep1, 10); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DY1, 1.0, 999, SpecificStep2, 10); + initSpinBox(GroupDimensions->SpinBox_DX2, COORD_MIN, COORD_MAX, step, 10); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DY2, 1.0, 999, SpecificStep2, 10); + GroupDimensions->SpinBox_DX1->setValue(myAng); + GroupDimensions->SpinBox_DY1->setValue(myNbTimes1); + GroupDimensions->SpinBox_DX2->setValue(myStep); + GroupDimensions->SpinBox_DY2->setValue(myNbTimes2); + GroupDimensions->SpinBox_DY1->setDecimals(0); + GroupDimensions->SpinBox_DY2->setDecimals(0); - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + // init variables + myAng = 45.0; + myStep = 50.0; + myNbTimes1 = myNbTimes2 = 2; - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit2->setText(""); + + GroupDimensions->LineEdit1->setText(""); + GroupDimensions->LineEdit2->setText(""); + + myBase = myVector = GEOM::GEOM_Object::_nil(); + + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); + + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); + + connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(GroupDimensions->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(GroupDimensions->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); connect(GroupDimensions->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); connect(GroupDimensions->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); + connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); connect(GroupDimensions->SpinBox_DX1, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); connect(GroupDimensions->SpinBox_DY1, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); connect(GroupDimensions->SpinBox_DX2, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); connect(GroupDimensions->SpinBox_DY2, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DX1, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DY1, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DX2, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DY2, SLOT(SetStep(double))); + connect(GroupDimensions->SpinBox_DX1,SIGNAL(textChanged( const QString& )), + this, SLOT(TextValueChangedInSpinBox( const QString& ))); + + connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), this, SLOT(SetDoubleSpinBoxStep(double))); connect(GroupDimensions->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(ReverseAngle())); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + initName(tr("GEOM_MULTIROTATION")); - initName( tr( "GEOM_MULTIROTATION" ) ); - ConstructorsClicked( 0 ); + ConstructorsClicked(0); } +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void TransformationGUI_MultiRotationDlg::SetDoubleSpinBoxStep (double step) +{ + GroupPoints->SpinBox_DX->setSingleStep(step); + GroupDimensions->SpinBox_DX1->setSingleStep(step); + GroupDimensions->SpinBox_DY1->setSingleStep(step); + GroupDimensions->SpinBox_DX2->setSingleStep(step); + GroupDimensions->SpinBox_DY2->setSingleStep(step); +} //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void TransformationGUI_MultiRotationDlg::ConstructorsClicked(int constructorId) +void TransformationGUI_MultiRotationDlg::ConstructorsClicked (int constructorId) { disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); - myAng = 45.0; - myStep = 50.0; - myNbTimes1 = myNbTimes2 = 2; - - globalSelection( GEOM_ALLSHAPES ); - - switch (constructorId) + switch (constructorId) { + case 0: // Rotate simple { - case 0: /* Rotate simple */ - { - GroupDimensions->hide(); - resize(0, 0); - GroupPoints->show(); + GroupDimensions->hide(); + GroupPoints->show(); - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit1->setText(""); - GroupPoints->LineEdit2->setText(""); + GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit2->setText(""); + myBase = myVector = GEOM::GEOM_Object::_nil(); - GroupPoints->SpinBox_DX->SetValue(myNbTimes1); + GroupPoints->SpinBox_DX->setValue(myNbTimes1); - break; - } - case 1: /* Rotate double */ - { - GroupPoints->hide(); - resize(0, 0); - GroupDimensions->show(); - - myEditCurrentArgument = GroupDimensions->LineEdit1; - GroupDimensions->LineEdit1->setText(""); - GroupDimensions->LineEdit2->setText(""); - - GroupDimensions->SpinBox_DX1->SetValue(myAng); - GroupDimensions->SpinBox_DY1->SetValue(myNbTimes1); - GroupDimensions->SpinBox_DX2->SetValue(myStep); - GroupDimensions->SpinBox_DY2->SetValue(myNbTimes2); - - break; - } + GroupPoints->PushButton1->click(); } + break; + case 1: // Rotate double + { + GroupPoints->hide(); + GroupDimensions->show(); - myEditCurrentArgument->setFocus(); - myBase = myVector = GEOM::GEOM_Object::_nil(); - connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), - this, SLOT(SelectionIntoArgument())); + GroupDimensions->LineEdit1->setText(""); + GroupDimensions->LineEdit2->setText(""); + myBase = myVector = GEOM::GEOM_Object::_nil(); + + GroupDimensions->SpinBox_DX1->setValue(myAng); + GroupDimensions->SpinBox_DY1->setValue(myNbTimes1); + GroupDimensions->SpinBox_DX2->setValue(myStep); + GroupDimensions->SpinBox_DY2->setValue(myNbTimes2); + + GroupDimensions->PushButton1->click(); + } + break; + } + + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); + + if (myInitial) { + myInitial = false; + SelectionIntoArgument(); + } + else { + displayPreview(); + } } - //================================================================================= // function : ClickOnOk() // purpose : //================================================================================= void TransformationGUI_MultiRotationDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool TransformationGUI_MultiRotationDlg::ClickOnApply() { - if ( !onAccept() ) + if (!onAccept()) return false; initName(); - ConstructorsClicked( getConstructorId() ); + // activate selection and connect selection manager + ConstructorsClicked(getConstructorId()); return true; } - //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection as changed or other case +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void TransformationGUI_MultiRotationDlg::SelectionIntoArgument() { + erasePreview(); myEditCurrentArgument->setText(""); - if (IObjectCount() != 1) { - if (myEditCurrentArgument == GroupPoints->LineEdit1 || - myEditCurrentArgument == GroupDimensions->LineEdit1) - myBase = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == GroupPoints->LineEdit2 || - myEditCurrentArgument == GroupDimensions->LineEdit2) - myVector = GEOM::GEOM_Object::_nil(); + if (myEditCurrentArgument == GroupPoints->LineEdit1 || + myEditCurrentArgument == GroupDimensions->LineEdit1) + myBase = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupPoints->LineEdit2 || + myEditCurrentArgument == GroupDimensions->LineEdit2) + myVector = GEOM::GEOM_Object::_nil(); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) return; - } // nbSel == 1 Standard_Boolean testResult = Standard_False;; GEOM::GEOM_Object_var aSelectedObject = - GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult ); + GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); if (!testResult || CORBA::is_nil(aSelectedObject) || !GEOMBase::IsShape(aSelectedObject)) return; - QString aName = GEOMBase::GetName( aSelectedObject ); + QString aName = GEOMBase::GetName(aSelectedObject); if (myEditCurrentArgument == GroupPoints->LineEdit1 || myEditCurrentArgument == GroupDimensions->LineEdit1) myBase = aSelectedObject; else if (myEditCurrentArgument == GroupPoints->LineEdit2 || myEditCurrentArgument == GroupDimensions->LineEdit2) { - if ( testResult && !aSelectedObject->_is_nil() ) - { - TopoDS_Shape aShape; - - - if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) - { - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); - TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes( firstIObject(), aMap ); - if ( aMap.Extent() == 1 ) - { - int anIndex = aMap( 1 ); - aName += QString(":edge_%1").arg(anIndex); - - //Find SubShape Object in Father - GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aSelectedObject, aName); - - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = - getGeomEngine()->GetIShapesOperations( getStudyId() ); - myVector = aShapesOp->GetSubShape(aSelectedObject, anIndex); - } - else - myVector = aFindedObject; // get existing object - } - else { - if (aShape.ShapeType() != TopAbs_EDGE) { - aSelectedObject = GEOM::GEOM_Object::_nil(); - aName = ""; - } - myVector = aSelectedObject; - } - - } - } + TopoDS_Shape aShape; + + if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) { + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) { + int anIndex = aMap(1); + aName += QString(":edge_%1").arg(anIndex); + + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aSelectedObject, aName); + + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = + getGeomEngine()->GetIShapesOperations(getStudyId()); + myVector = aShapesOp->GetSubShape(aSelectedObject, anIndex); + } + else { + myVector = aFindedObject; // get existing object + } + } + else { + if (aShape.ShapeType() != TopAbs_EDGE) { + aSelectedObject = GEOM::GEOM_Object::_nil(); + aName = ""; + } + myVector = aSelectedObject; + } + } } - myEditCurrentArgument->setText( aName ); + myEditCurrentArgument->setText(aName); + + if (myEditCurrentArgument == GroupPoints->LineEdit1) { + if (!myBase->_is_nil() && myVector->_is_nil()) + GroupPoints->PushButton2->click(); + } + else if (myEditCurrentArgument == GroupPoints->LineEdit2) { + if (!myVector->_is_nil() && myBase->_is_nil()) + GroupPoints->PushButton1->click(); + } + else if (myEditCurrentArgument == GroupDimensions->LineEdit1) { + if (!myBase->_is_nil() && myVector->_is_nil()) + GroupDimensions->PushButton2->click(); + } + else if (myEditCurrentArgument == GroupDimensions->LineEdit2) { + if (!myVector->_is_nil() && myBase->_is_nil()) + GroupDimensions->PushButton1->click(); + } + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); displayPreview(); } - //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -345,27 +385,50 @@ void TransformationGUI_MultiRotationDlg::SelectionIntoArgument() void TransformationGUI_MultiRotationDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - globalSelection( GEOM_ALLSHAPES ); - if(send == GroupPoints->PushButton1) { + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + globalSelection(GEOM_ALLSHAPES); + + if (send == GroupPoints->PushButton1) { myEditCurrentArgument = GroupPoints->LineEdit1; + + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit2->setEnabled(false); } - else if(send == GroupPoints->PushButton2) { + else if (send == GroupPoints->PushButton2) { myEditCurrentArgument = GroupPoints->LineEdit2; - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); + + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); } - else if(send == GroupDimensions->PushButton1) { + else if (send == GroupDimensions->PushButton1) { myEditCurrentArgument = GroupDimensions->LineEdit1; + + GroupDimensions->PushButton2->setDown(false); + GroupDimensions->LineEdit2->setEnabled(false); } - else if(send == GroupDimensions->PushButton2) { + else if (send == GroupDimensions->PushButton2) { myEditCurrentArgument = GroupDimensions->LineEdit2; - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); + + GroupDimensions->PushButton1->setDown(false); + GroupDimensions->LineEdit1->setEnabled(false); } + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + // enable line edit + myEditCurrentArgument->setEnabled(true); myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); -} + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); +} //================================================================================= // function : LineEditReturnPressed() @@ -374,15 +437,13 @@ void TransformationGUI_MultiRotationDlg::SetEditCurrentArgument() void TransformationGUI_MultiRotationDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if(send == GroupPoints->LineEdit1 || send == GroupDimensions->LineEdit1 || - send == GroupPoints->LineEdit2 || send == GroupDimensions->LineEdit2) - { - myEditCurrentArgument = send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } + if (send == GroupPoints->LineEdit1 || send == GroupDimensions->LineEdit1 || + send == GroupPoints->LineEdit2 || send == GroupDimensions->LineEdit2) { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } } - //================================================================================= // function : ActivateThisDialog() // purpose : @@ -390,45 +451,53 @@ void TransformationGUI_MultiRotationDlg::LineEditReturnPressed() void TransformationGUI_MultiRotationDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); ConstructorsClicked( getConstructorId() ); } - //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void TransformationGUI_MultiRotationDlg::enterEvent(QEvent* e) +void TransformationGUI_MultiRotationDlg::enterEvent (QEvent*) { - if(!GroupConstructors->isEnabled()) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } - +//================================================================================= +// function : TextValueChangedInSpinBox() +// purpose : +//================================================================================= +void TransformationGUI_MultiRotationDlg::TextValueChangedInSpinBox(const QString& s){ + bool isDigit; + s.toDouble(&isDigit); + if(!isDigit) + GroupDimensions->CheckButton1->setChecked(false); + GroupDimensions->CheckButton1->setEnabled(isDigit); +} //================================================================================= // function : ValueChangedInSpinBox() // purpose : //================================================================================= -void TransformationGUI_MultiRotationDlg::ValueChangedInSpinBox(double newValue) +void TransformationGUI_MultiRotationDlg::ValueChangedInSpinBox (double newValue) { QObject* send = (QObject*)sender(); - if(send == GroupPoints->SpinBox_DX || send == GroupDimensions->SpinBox_DY1) + if (send == GroupPoints->SpinBox_DX || send == GroupDimensions->SpinBox_DY1) myNbTimes1 = (int)newValue; - else if(send == GroupDimensions->SpinBox_DX1) + else if (send == GroupDimensions->SpinBox_DX1) myAng = newValue; - else if(send == GroupDimensions->SpinBox_DX2) + else if (send == GroupDimensions->SpinBox_DX2) myStep = newValue; - else if(send == GroupDimensions->SpinBox_DY2) + else if (send == GroupDimensions->SpinBox_DY2) myNbTimes2 = (int)newValue; displayPreview(); } - //================================================================================= // function : ReverseAngle() // purpose : 'state' not used here @@ -439,84 +508,89 @@ void TransformationGUI_MultiRotationDlg::ReverseAngle() int aConstructorId = getConstructorId(); - if(aConstructorId == 0) - GroupPoints->SpinBox_DX->SetValue(myAng); - else if(aConstructorId == 1) - GroupDimensions->SpinBox_DX1->SetValue(myAng); + if (aConstructorId == 0) + GroupPoints->SpinBox_DX->setValue(myAng); + else if (aConstructorId == 1) + GroupDimensions->SpinBox_DX1->setValue(myAng); displayPreview(); } - //================================================================================= // function : createOperation // purpose : //================================================================================= GEOM::GEOM_IOperations_ptr TransformationGUI_MultiRotationDlg::createOperation() { - return myGeomGUI->GetGeomGen()->GetITransformOperations( getStudyId() ); + return getGeomEngine()->GetITransformOperations(getStudyId()); } - //================================================================================= // function : isValid // purpose : //================================================================================= -bool TransformationGUI_MultiRotationDlg::isValid( QString& msg ) +bool TransformationGUI_MultiRotationDlg::isValid (QString& msg) { - return !(myBase->_is_nil() || myVector->_is_nil()); + bool ok = true; + switch(getConstructorId()){ + case 0: + ok = GroupPoints->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + break; + case 1: + ok = GroupDimensions->SpinBox_DX1->isValid( msg, !IsPreview() ) && ok; + ok = GroupDimensions->SpinBox_DY1->isValid( msg, !IsPreview() ) && ok; + ok = GroupDimensions->SpinBox_DX2->isValid( msg, !IsPreview() ) && ok; + ok = GroupDimensions->SpinBox_DY2->isValid( msg, !IsPreview() ) && ok; + break; + } + return !(myBase->_is_nil() || myVector->_is_nil()) && ok; } //================================================================================= // function : execute // purpose : //================================================================================= -bool TransformationGUI_MultiRotationDlg::execute( ObjectList& objects ) +bool TransformationGUI_MultiRotationDlg::execute (ObjectList& objects) { bool res = false; GEOM::GEOM_Object_var anObj; + QStringList aParameters; - switch ( getConstructorId() ) - { - case 0 : - { - if ( !CORBA::is_nil( myBase ) && !CORBA::is_nil( myVector ) ) { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )-> - MultiRotate1D( myBase, myVector, myNbTimes1 ); - res = true; - } - break; - } - case 1 : - { - if ( !CORBA::is_nil( myBase ) && !CORBA::is_nil( myVector ) ) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )-> - MultiRotate2D( myBase, myVector, myAng, myNbTimes1, myStep, myNbTimes2 ); - res = true; - } - break; - } + switch (getConstructorId()) { + case 0: + if (!CORBA::is_nil(myBase) && !CORBA::is_nil(myVector)) { + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + MultiRotate1D(myBase, myVector, myNbTimes1); + if(!IsPreview()) + aParameters<SpinBox_DX->text(); + res = true; } + break; + case 1: + if (!CORBA::is_nil(myBase) && !CORBA::is_nil(myVector)) { + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + MultiRotate2D(myBase, myVector, myAng, myNbTimes1, myStep, myNbTimes2); + if(!IsPreview()) { + aParameters<SpinBox_DX1->text(); + aParameters<SpinBox_DY1->text(); + aParameters<SpinBox_DX2->text(); + aParameters<SpinBox_DY2->text(); + } + res = true; + } + break; + } - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); + if (!anObj->_is_nil()) { + if(!IsPreview()) + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + objects.push_back(anObj._retn()); + } return res; } - -//================================================================================= -// function : closeEvent -// purpose : -//================================================================================= -void TransformationGUI_MultiRotationDlg::closeEvent( QCloseEvent* e ) -{ - // myGeomGUI->SetState( -1 ); - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : addSubshapeToStudy // purpose : virtual method to add new SubObjects if local selection @@ -524,15 +598,14 @@ void TransformationGUI_MultiRotationDlg::closeEvent( QCloseEvent* e ) void TransformationGUI_MultiRotationDlg::addSubshapesToStudy() { QMap objMap; - - switch (getConstructorId()) - { - case 0: - objMap[GroupPoints->LineEdit2->text()] = myVector; - break; - case 1: - objMap[GroupDimensions->LineEdit2->text()] = myVector; - break; - } - addSubshapesToFather( objMap ); + + switch (getConstructorId()) { + case 0: + objMap[GroupPoints->LineEdit2->text()] = myVector; + break; + case 1: + objMap[GroupDimensions->LineEdit2->text()] = myVector; + break; + } + addSubshapesToFather(objMap); } diff --git a/src/TransformationGUI/TransformationGUI_MultiRotationDlg.h b/src/TransformationGUI/TransformationGUI_MultiRotationDlg.h index 44d7d5176..1134f7cfc 100644 --- a/src/TransformationGUI/TransformationGUI_MultiRotationDlg.h +++ b/src/TransformationGUI/TransformationGUI_MultiRotationDlg.h @@ -1,37 +1,35 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : TransformationGUI_MultiRotationDlg.h -// Author : Damien COQUERET -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI_MultiRotationDlg.h +// Author : Damien COQUERET, Open CASCADE S.A.S. +// +#ifndef TRANSFORMATIONGUI_MULTIROTATIONDLG_H +#define TRANSFORMATIONGUI_MULTIROTATIONDLG_H -#ifndef DIALOGBOX_MULTIROTATION_H -#define DIALOGBOX_MULTIROTATION_H - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel4Spin1Check.h" -#include "DlgRef_2Sel1Spin.h" +#include +class DlgRef_2Sel4Spin1Check; +class DlgRef_2Sel1Spin; //================================================================================= // class : TransformationGUI_MultiRotationDlg @@ -39,44 +37,49 @@ //================================================================================= class TransformationGUI_MultiRotationDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - TransformationGUI_MultiRotationDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~TransformationGUI_MultiRotationDlg(); - + TransformationGUI_MultiRotationDlg( GeometryGUI*, QWidget* = 0, + bool = false, Qt::WindowFlags = 0 ); + ~TransformationGUI_MultiRotationDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); - virtual void closeEvent( QCloseEvent* e ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); -private : - void Init(); - void enterEvent(QEvent* e); +private: + void Init(); + void enterEvent( QEvent* ); + +private: + GEOM::GEOM_Object_var myBase, myVector; + int myNbTimes1; + int myNbTimes2; + Standard_Real myAng; + Standard_Real myStep; - GEOM::GEOM_Object_var myBase, myVector; - int myNbTimes1; - int myNbTimes2; - Standard_Real myAng; - Standard_Real myStep; - - DlgRef_2Sel1Spin* GroupPoints; - DlgRef_2Sel4Spin1Check* GroupDimensions; + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; + + DlgRef_2Sel1Spin* GroupPoints; + DlgRef_2Sel4Spin1Check* GroupDimensions; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ReverseAngle(); - void ValueChangedInSpinBox(double newValue); - void ConstructorsClicked(int constructorId); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ReverseAngle(); + void ValueChangedInSpinBox( double ); + void TextValueChangedInSpinBox( const QString& ); + void ConstructorsClicked( int ); + void SetDoubleSpinBoxStep( double ); }; -#endif // DIALOGBOX_MULTIROTATION_H +#endif // TRANSFORMATIONGUI_MULTIROTATIONDLG_H diff --git a/src/TransformationGUI/TransformationGUI_MultiTranslationDlg.cxx b/src/TransformationGUI/TransformationGUI_MultiTranslationDlg.cxx index b9993d6cf..e4c81518b 100644 --- a/src/TransformationGUI/TransformationGUI_MultiTranslationDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_MultiTranslationDlg.cxx @@ -1,38 +1,40 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI_MultiTranslationDlg.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// File : TransformationGUI_MultiTranslationDlg.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "TransformationGUI_MultiTranslationDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include +#include +#include +#include + +// OCCT Includes #include #include #include @@ -40,15 +42,7 @@ #include #include -#include - -#include "GEOMImpl_Types.hxx" - -#include - -#include "utilities.h" - -using namespace std; +#include //================================================================================= // class : TransformationGUI_MultiTranslationDlg() @@ -58,36 +52,37 @@ using namespace std; // TRUE to construct a modal dialog. //================================================================================= TransformationGUI_MultiTranslationDlg::TransformationGUI_MultiTranslationDlg - (GeometryGUI* theGeometryGUI, QWidget* parent, const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +(GeometryGUI* theGeometryGUI, QWidget* parent, bool modal, Qt::WindowFlags fl) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl), + myInitial(true) { SUIT_ResourceMgr* aResMgr = myGeomGUI->getApp()->resourceMgr(); QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_MULTITRANSLATION_SIMPLE"))); QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_MULTITRANSLATION_DOUBLE"))); QPixmap image2 (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_MULTITRANSLATION_TITLE")); + setWindowTitle(tr("GEOM_MULTITRANSLATION_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_MULTITRANSLATION")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image1); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_MULTITRANSLATION")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setIcon(image1); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_2Sel2Spin1Check(this, "GroupPoints"); + GroupPoints = new DlgRef_2Sel2Spin1Check(centralWidget()); GroupPoints->GroupBox1->setTitle(tr("GEOM_MULTITRANSLATION_SIMPLE")); GroupPoints->TextLabel1->setText(tr("GEOM_MAIN_OBJECT")); GroupPoints->TextLabel2->setText(tr("GEOM_VECTOR_U")); GroupPoints->TextLabel3->setText(tr("GEOM_STEP_U")); GroupPoints->TextLabel4->setText(tr("GEOM_NB_TIMES_U")); GroupPoints->CheckButton1->setText(tr("GEOM_REVERSE_U")); - GroupPoints->PushButton1->setPixmap(image2); - GroupPoints->PushButton2->setPixmap(image2); + GroupPoints->PushButton1->setIcon(image2); + GroupPoints->PushButton2->setIcon(image2); GroupPoints->LineEdit1->setReadOnly(true); GroupPoints->LineEdit2->setReadOnly(true); - GroupDimensions = new DlgRef_3Sel4Spin2Check(this, "GroupDimensions"); + GroupDimensions = new DlgRef_3Sel4Spin2Check(centralWidget()); GroupDimensions->GroupBox1->setTitle(tr("GEOM_MULTITRANSLATION_DOUBLE")); GroupDimensions->TextLabel1->setText(tr("GEOM_MAIN_OBJECT")); GroupDimensions->TextLabel2->setText(tr("GEOM_VECTOR_U")); @@ -98,15 +93,17 @@ TransformationGUI_MultiTranslationDlg::TransformationGUI_MultiTranslationDlg GroupDimensions->TextLabel7->setText(tr("GEOM_NB_TIMES_V")); GroupDimensions->CheckButton1->setText(tr("GEOM_REVERSE_U")); GroupDimensions->CheckButton2->setText(tr("GEOM_REVERSE_V")); - GroupDimensions->PushButton1->setPixmap(image2); - GroupDimensions->PushButton2->setPixmap(image2); - GroupDimensions->PushButton3->setPixmap(image2); + GroupDimensions->PushButton1->setIcon(image2); + GroupDimensions->PushButton2->setIcon(image2); + GroupDimensions->PushButton3->setIcon(image2); GroupDimensions->LineEdit1->setReadOnly(true); GroupDimensions->LineEdit2->setReadOnly(true); GroupDimensions->LineEdit3->setReadOnly(true); - Layout1->addWidget(GroupPoints, 2, 0); - Layout1->addWidget(GroupDimensions, 2, 0); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); + layout->addWidget(GroupDimensions); /***************************************************************/ setHelpFileName("multi_translation_operation_page.html"); @@ -114,7 +111,6 @@ TransformationGUI_MultiTranslationDlg::TransformationGUI_MultiTranslationDlg Init(); } - //================================================================================= // function : ~TransformationGUI_MultiTranslationDlg() // purpose : Destroys the object and frees any allocated resources @@ -124,247 +120,298 @@ TransformationGUI_MultiTranslationDlg::~TransformationGUI_MultiTranslationDlg() // no need to delete child widgets, Qt does it all for us } - //================================================================================= // function : Init() // purpose : //================================================================================= void TransformationGUI_MultiTranslationDlg::Init() { - /* Get setting of step value from file configuration */ + // Get setting of step value from file configuration SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100); + double step = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100); double SpecificStep = 1; - /* min, max, step and decimals for spin boxes & initial values */ - GroupPoints->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupPoints->SpinBox_DY->RangeStepAndValidator(1.0, MAX_NUMBER, SpecificStep, 10); - GroupPoints->SpinBox_DX->SetValue(myStepU); - GroupPoints->SpinBox_DY->SetValue(myNbTimesU); + // min, max, step and decimals for spin boxes & initial values + initSpinBox(GroupPoints->SpinBox_DX, COORD_MIN, COORD_MAX, step, 10); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints->SpinBox_DY, 1, 999, SpecificStep, 10); + GroupPoints->SpinBox_DX->setValue(myStepU); + GroupPoints->SpinBox_DY->setValue(myNbTimesU); + GroupPoints->SpinBox_DY->setDecimals(0); - GroupDimensions->SpinBox_DX1->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupDimensions->SpinBox_DY1->RangeStepAndValidator(1.0, MAX_NUMBER, SpecificStep, 10); - GroupDimensions->SpinBox_DX2->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupDimensions->SpinBox_DY2->RangeStepAndValidator(1.0, MAX_NUMBER, SpecificStep, 10); - GroupDimensions->SpinBox_DX1->SetValue(myStepU); - GroupDimensions->SpinBox_DY1->SetValue(myNbTimesU); - GroupDimensions->SpinBox_DX2->SetValue(myStepV); - GroupDimensions->SpinBox_DY2->SetValue(myNbTimesV); + initSpinBox(GroupDimensions->SpinBox_DX1, COORD_MIN, COORD_MAX, step, 10); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DY1, 1, 999, SpecificStep, 10); + initSpinBox(GroupDimensions->SpinBox_DX2, COORD_MIN, COORD_MAX, step, 10); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupDimensions->SpinBox_DY2, 1, 999, SpecificStep, 10); + GroupDimensions->SpinBox_DX1->setValue(myStepU); + GroupDimensions->SpinBox_DY1->setValue(myNbTimesU); + GroupDimensions->SpinBox_DX2->setValue(myStepV); + GroupDimensions->SpinBox_DY2->setValue(myNbTimesV); + GroupDimensions->SpinBox_DY1->setDecimals(0); + GroupDimensions->SpinBox_DY2->setDecimals(0); - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), this, SLOT(ConstructorsClicked(int))); + // init variables + myStepU = myStepV = 50.0; + myNbTimesU = myNbTimesV = 2; - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit2->setText(""); + + GroupDimensions->LineEdit1->setText(""); + GroupDimensions->LineEdit2->setText(""); + GroupDimensions->LineEdit3->setText(""); + + myBase = myVectorU = myVectorV = GEOM::GEOM_Object::_nil(); + + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); + + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); + + connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(GroupDimensions->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(GroupDimensions->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(GroupDimensions->PushButton3, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); connect(GroupDimensions->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); connect(GroupDimensions->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); connect(GroupDimensions->LineEdit3, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(GroupPoints->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); + connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); + connect(GroupPoints->SpinBox_DY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); connect(GroupDimensions->SpinBox_DX1, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); connect(GroupDimensions->SpinBox_DY1, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); connect(GroupDimensions->SpinBox_DX2, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); connect(GroupDimensions->SpinBox_DY2, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_DX, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_DY, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DX1, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DY1, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DX2, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupDimensions->SpinBox_DY2, SLOT(SetStep(double))); + connect(GroupPoints->SpinBox_DX, SIGNAL(textChanged(const QString& )), + this, SLOT(TextValueChangedInSpinBox(const QString& ))); + connect(GroupDimensions->SpinBox_DX1, SIGNAL(textChanged(const QString& )), + this, SLOT(TextValueChangedInSpinBox(const QString& ))); + connect(GroupDimensions->SpinBox_DX2, SIGNAL(textChanged(const QString& )), + this, SLOT(TextValueChangedInSpinBox(const QString& ))); + + connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), this, SLOT(SetDoubleSpinBoxStep(double))); - connect(GroupPoints->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(ReverseStepU())); + connect(GroupPoints->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(ReverseStepU())); connect(GroupDimensions->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(ReverseStepU())); connect(GroupDimensions->CheckButton2, SIGNAL(toggled(bool)), this, SLOT(ReverseStepV())); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + initName(tr("GEOM_MULTITRANSLATION")); - initName( tr( "GEOM_MULTITRANSLATION" ) ); - ConstructorsClicked( 0 ); + ConstructorsClicked(0); } +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void TransformationGUI_MultiTranslationDlg::SetDoubleSpinBoxStep (double step) +{ + GroupPoints->SpinBox_DX->setSingleStep(step); + GroupPoints->SpinBox_DY->setSingleStep(step); + GroupDimensions->SpinBox_DX1->setSingleStep(step); + GroupDimensions->SpinBox_DY1->setSingleStep(step); + GroupDimensions->SpinBox_DX2->setSingleStep(step); + GroupDimensions->SpinBox_DY2->setSingleStep(step); +} //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void TransformationGUI_MultiTranslationDlg::ConstructorsClicked(int constructorId) +void TransformationGUI_MultiTranslationDlg::ConstructorsClicked (int constructorId) { disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); - myStepU = myStepV = 50.0; - myNbTimesU = myNbTimesV = 2; - - globalSelection( GEOM_ALLSHAPES ); - - switch (constructorId) + switch (constructorId) { + case 0: // Translate simple { - case 0: /* Translate simple */ - { - GroupDimensions->hide(); - resize(0, 0); - GroupPoints->show(); + GroupDimensions->hide(); + GroupPoints->show(); - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit1->setText(""); - GroupPoints->LineEdit2->setText(""); + GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit2->setText(""); + myBase = myVectorU = GEOM::GEOM_Object::_nil(); - GroupPoints->SpinBox_DX->SetValue(myStepU); - GroupPoints->SpinBox_DY->SetValue(myNbTimesU); - - break; - } - case 1: /* Translate double */ - { - GroupPoints->hide(); - resize(0, 0); - GroupDimensions->show(); + GroupPoints->SpinBox_DX->setValue(myStepU); + GroupPoints->SpinBox_DY->setValue(myNbTimesU); - myEditCurrentArgument = GroupDimensions->LineEdit1; - GroupDimensions->LineEdit1->setText(""); - GroupDimensions->LineEdit2->setText(""); - GroupDimensions->LineEdit3->setText(""); - - GroupDimensions->SpinBox_DX1->SetValue(myStepU); - GroupDimensions->SpinBox_DY1->SetValue(myNbTimesU); - GroupDimensions->SpinBox_DX2->SetValue(myStepV); - GroupDimensions->SpinBox_DY2->SetValue(myNbTimesV); - - myVectorV = GEOM::GEOM_Object::_nil(); - break; - } + GroupPoints->PushButton1->click(); + break; } + case 1: // Translate double + { + GroupPoints->hide(); + GroupDimensions->show(); - myEditCurrentArgument->setFocus(); - myBase = myVectorU = GEOM::GEOM_Object::_nil(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + GroupDimensions->LineEdit1->setText(""); + GroupDimensions->LineEdit2->setText(""); + GroupDimensions->LineEdit3->setText(""); + myBase = myVectorU = myVectorV = GEOM::GEOM_Object::_nil(); + + GroupDimensions->SpinBox_DX1->setValue(myStepU); + GroupDimensions->SpinBox_DY1->setValue(myNbTimesU); + GroupDimensions->SpinBox_DX2->setValue(myStepV); + GroupDimensions->SpinBox_DY2->setValue(myNbTimesV); + + GroupDimensions->PushButton1->click(); + break; + } + } + + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); + + if (myInitial) { + myInitial = false; + SelectionIntoArgument(); + } + else { + displayPreview(); + } } - //================================================================================= // function : ClickOnOk() // purpose : //================================================================================= void TransformationGUI_MultiTranslationDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool TransformationGUI_MultiTranslationDlg::ClickOnApply() { - if ( !onAccept() ) + if (!onAccept()) return false; initName(); - ConstructorsClicked( getConstructorId() ); + // activate selection and connect selection manager + ConstructorsClicked(getConstructorId()); return true; } - //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection as changed or other case +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void TransformationGUI_MultiTranslationDlg::SelectionIntoArgument() { + erasePreview(); myEditCurrentArgument->setText(""); - if (IObjectCount() != 1) { - if (myEditCurrentArgument == GroupPoints->LineEdit1 || - myEditCurrentArgument == GroupDimensions->LineEdit1) - myBase = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == GroupPoints->LineEdit2 || - myEditCurrentArgument == GroupDimensions->LineEdit2) - myVectorU = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == GroupDimensions->LineEdit3) - myVectorV = GEOM::GEOM_Object::_nil(); + if (myEditCurrentArgument == GroupPoints->LineEdit1 || + myEditCurrentArgument == GroupDimensions->LineEdit1) + myBase = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupPoints->LineEdit2 || + myEditCurrentArgument == GroupDimensions->LineEdit2) + myVectorU = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupDimensions->LineEdit3) + myVectorV = GEOM::GEOM_Object::_nil(); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + if (aSelList.Extent() != 1) return; - } // nbSel == 1 Standard_Boolean testResult = Standard_False;; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult ); + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); - if ( !testResult || CORBA::is_nil( aSelectedObject ) || !GEOMBase::IsShape( aSelectedObject ) ) + if (!testResult || CORBA::is_nil(aSelectedObject) || !GEOMBase::IsShape(aSelectedObject)) return; - QString aName = GEOMBase::GetName( aSelectedObject ); + QString aName = GEOMBase::GetName(aSelectedObject); if (myEditCurrentArgument == GroupPoints->LineEdit1 || myEditCurrentArgument == GroupDimensions->LineEdit1) myBase = aSelectedObject; else if (myEditCurrentArgument == GroupPoints->LineEdit2 || myEditCurrentArgument == GroupDimensions->LineEdit2 || - myEditCurrentArgument == GroupDimensions->LineEdit3 ) { - if ( testResult && !aSelectedObject->_is_nil() ) - { - TopoDS_Shape aShape; - - if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) - { - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); - TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes( firstIObject(), aMap ); - if ( aMap.Extent() == 1 ) - { - int anIndex = aMap( 1 ); - aName += QString(":edge_%1").arg(anIndex); + myEditCurrentArgument == GroupDimensions->LineEdit3) { + TopoDS_Shape aShape; - //Find SubShape Object in Father - GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aSelectedObject, aName); - - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = - getGeomEngine()->GetIShapesOperations( getStudyId() ); - if ( myEditCurrentArgument == GroupDimensions->LineEdit3 ) - myVectorV = aShapesOp->GetSubShape(aSelectedObject, anIndex); - else - myVectorU = aShapesOp->GetSubShape(aSelectedObject, anIndex); - } - else { - if ( myEditCurrentArgument == GroupDimensions->LineEdit3 ) - myVectorV = aFindedObject; - else - myVectorU = aFindedObject; - } - } - else { - if (aShape.ShapeType() != TopAbs_EDGE) { - aSelectedObject = GEOM::GEOM_Object::_nil(); - aName = ""; - } - if ( myEditCurrentArgument == GroupDimensions->LineEdit3 ) - myVectorV = aSelectedObject; - else - myVectorU = aSelectedObject; - } - } - } + if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) { + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) { + int anIndex = aMap(1); + aName += QString(":edge_%1").arg(anIndex); + + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aSelectedObject, aName); + + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = + getGeomEngine()->GetIShapesOperations(getStudyId()); + if (myEditCurrentArgument == GroupDimensions->LineEdit3) + myVectorV = aShapesOp->GetSubShape(aSelectedObject, anIndex); + else + myVectorU = aShapesOp->GetSubShape(aSelectedObject, anIndex); + } + else { + if (myEditCurrentArgument == GroupDimensions->LineEdit3) + myVectorV = aFindedObject; + else + myVectorU = aFindedObject; + } + } + else { + if (aShape.ShapeType() != TopAbs_EDGE) { + aSelectedObject = GEOM::GEOM_Object::_nil(); + aName = ""; + } + if (myEditCurrentArgument == GroupDimensions->LineEdit3) + myVectorV = aSelectedObject; + else + myVectorU = aSelectedObject; + } } + } + myEditCurrentArgument->setText(aName); - myEditCurrentArgument->setText( aName ); + if (myEditCurrentArgument == GroupPoints->LineEdit1) { + if (!myBase->_is_nil() && myVectorU->_is_nil()) + GroupPoints->PushButton2->click(); + } + else if (myEditCurrentArgument == GroupPoints->LineEdit2) { + if (!myVectorU->_is_nil() && myBase->_is_nil()) + GroupPoints->PushButton1->click(); + } + else if (myEditCurrentArgument == GroupDimensions->LineEdit1) { + if (!myBase->_is_nil() && myVectorU->_is_nil()) + GroupDimensions->PushButton2->click(); + } + else if (myEditCurrentArgument == GroupDimensions->LineEdit2) { + if (!myVectorU->_is_nil() && myVectorV->_is_nil()) + GroupDimensions->PushButton3->click(); + } + else if (myEditCurrentArgument == GroupDimensions->LineEdit3) { + if (!myVectorV->_is_nil() && myBase->_is_nil()) + GroupDimensions->PushButton1->click(); + } - displayPreview(); + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + displayPreview(); } - //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -372,31 +419,64 @@ void TransformationGUI_MultiTranslationDlg::SelectionIntoArgument() void TransformationGUI_MultiTranslationDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - globalSelection( GEOM_ALLSHAPES ); - if(send == GroupPoints->PushButton1) { + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + globalSelection(GEOM_ALLSHAPES); + + if (send == GroupPoints->PushButton1) { myEditCurrentArgument = GroupPoints->LineEdit1; + + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit2->setEnabled(false); } - else if(send == GroupPoints->PushButton2) { + else if (send == GroupPoints->PushButton2) { myEditCurrentArgument = GroupPoints->LineEdit2; - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); + + GroupPoints->PushButton1->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); } - else if(send == GroupDimensions->PushButton1) { + else if (send == GroupDimensions->PushButton1) { myEditCurrentArgument = GroupDimensions->LineEdit1; + + GroupDimensions->PushButton2->setDown(false); + GroupDimensions->PushButton3->setDown(false); + GroupDimensions->LineEdit2->setEnabled(false); + GroupDimensions->LineEdit3->setEnabled(false); } - else if(send == GroupDimensions->PushButton2) { + else if (send == GroupDimensions->PushButton2) { myEditCurrentArgument = GroupDimensions->LineEdit2; - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); + + GroupDimensions->PushButton1->setDown(false); + GroupDimensions->PushButton3->setDown(false); + GroupDimensions->LineEdit1->setEnabled(false); + GroupDimensions->LineEdit3->setEnabled(false); } - else if(send == GroupDimensions->PushButton3) { + else if (send == GroupDimensions->PushButton3) { myEditCurrentArgument = GroupDimensions->LineEdit3; - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); + + GroupDimensions->PushButton1->setDown(false); + GroupDimensions->PushButton2->setDown(false); + GroupDimensions->LineEdit1->setEnabled(false); + GroupDimensions->LineEdit2->setEnabled(false); } + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + // enable line edit + myEditCurrentArgument->setEnabled(true); myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); -} + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); +} //================================================================================= // function : LineEditReturnPressed() @@ -405,16 +485,14 @@ void TransformationGUI_MultiTranslationDlg::SetEditCurrentArgument() void TransformationGUI_MultiTranslationDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if(send == GroupPoints->LineEdit1 || send == GroupDimensions->LineEdit1 || - send == GroupPoints->LineEdit2 || send == GroupDimensions->LineEdit2 || - send == GroupDimensions->LineEdit3) - { - myEditCurrentArgument = send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } + if (send == GroupPoints->LineEdit1 || send == GroupDimensions->LineEdit1 || + send == GroupPoints->LineEdit2 || send == GroupDimensions->LineEdit2 || + send == GroupDimensions->LineEdit3) { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } } - //================================================================================= // function : ActivateThisDialog() // purpose : @@ -422,60 +500,85 @@ void TransformationGUI_MultiTranslationDlg::LineEditReturnPressed() void TransformationGUI_MultiTranslationDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); ConstructorsClicked( getConstructorId() ); } - //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void TransformationGUI_MultiTranslationDlg::enterEvent(QEvent* e) +void TransformationGUI_MultiTranslationDlg::enterEvent (QEvent*) { - if(!GroupConstructors->isEnabled()) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } +//================================================================================= +// function : TextValueChangedInSpinBox +// purpose : +//================================================================================= +void TransformationGUI_MultiTranslationDlg::TextValueChangedInSpinBox( const QString& s) +{ + QObject* send = (QObject*)sender(); + bool isDigit = true; + + switch (getConstructorId()) { + case 0: + GroupPoints->SpinBox_DX->text().toDouble(&isDigit); + if(!isDigit){ + GroupPoints->CheckButton1->setChecked(false); + } + GroupPoints->CheckButton1->setEnabled(isDigit); + break; + case 1: + if (send == GroupDimensions->SpinBox_DX1) { + GroupDimensions->SpinBox_DX1->text().toDouble(&isDigit); + if(!isDigit) + GroupDimensions->CheckButton1->setChecked(false); + GroupDimensions->CheckButton1->setEnabled(isDigit); + } + else if(send == GroupDimensions->SpinBox_DX2){ + GroupDimensions->SpinBox_DX2->text().toDouble(&isDigit); + if(!isDigit) + GroupDimensions->CheckButton2->setChecked(false); + GroupDimensions->CheckButton2->setEnabled(isDigit); + } + break; + } +} //================================================================================= // function : ValueChangedInSpinBox() // purpose : //================================================================================= -void TransformationGUI_MultiTranslationDlg::ValueChangedInSpinBox(double newValue) +void TransformationGUI_MultiTranslationDlg::ValueChangedInSpinBox (double newValue) { QObject* send = (QObject*)sender(); - - switch(getConstructorId()) - { - case 0 : - { - if(send == GroupPoints->SpinBox_DX) - myStepU = newValue; - else if(send == GroupPoints->SpinBox_DY) - myNbTimesU = (int)newValue; - break; - } - case 1 : - { - if(send == GroupDimensions->SpinBox_DX1) - myStepU = newValue; - else if(send == GroupDimensions->SpinBox_DY1) - myNbTimesU = (int)newValue; - else if(send == GroupDimensions->SpinBox_DX2) - myStepV = newValue; - else if(send == GroupDimensions->SpinBox_DY2) - myNbTimesV = (int)newValue; - break; - } - } + switch (getConstructorId()) { + case 0: + if (send == GroupPoints->SpinBox_DX) + myStepU = newValue; + else if (send == GroupPoints->SpinBox_DY) + myNbTimesU = (int)newValue; + break; + case 1: + if (send == GroupDimensions->SpinBox_DX1) + myStepU = newValue; + else if (send == GroupDimensions->SpinBox_DY1) + myNbTimesU = (int)newValue; + else if (send == GroupDimensions->SpinBox_DX2) + myStepV = newValue; + else if (send == GroupDimensions->SpinBox_DY2) + myNbTimesV = (int)newValue; + break; + } displayPreview(); } - //================================================================================= // function : ReverseStepU() // purpose : 'state' not used here @@ -486,15 +589,14 @@ void TransformationGUI_MultiTranslationDlg::ReverseStepU() int aConstructorId = getConstructorId(); - if(aConstructorId == 0) - GroupPoints->SpinBox_DX->SetValue(myStepU); - else if(aConstructorId == 1) - GroupDimensions->SpinBox_DX1->SetValue(myStepU); + if (aConstructorId == 0) + GroupPoints->SpinBox_DX->setValue(myStepU); + else if (aConstructorId == 1) + GroupDimensions->SpinBox_DX1->setValue(myStepU); displayPreview(); } - //================================================================================= // function : ReverseStepV // purpose : 'state' not used here @@ -503,34 +605,42 @@ void TransformationGUI_MultiTranslationDlg::ReverseStepV() { myStepV = -myStepV; - GroupDimensions->SpinBox_DX2->SetValue(myStepV); + GroupDimensions->SpinBox_DX2->setValue(myStepV); displayPreview(); } - //================================================================================= // function : createOperation // purpose : //================================================================================= GEOM::GEOM_IOperations_ptr TransformationGUI_MultiTranslationDlg::createOperation() { - return myGeomGUI->GetGeomGen()->GetITransformOperations( getStudyId() ); + return getGeomEngine()->GetITransformOperations(getStudyId()); } - //================================================================================= // function : isValid // purpose : //================================================================================= -bool TransformationGUI_MultiTranslationDlg::isValid( QString& msg ) +bool TransformationGUI_MultiTranslationDlg::isValid (QString& msg) { int aConstructorId = getConstructorId(); - - if(aConstructorId == 0) - return !(myBase->_is_nil() || myVectorU->_is_nil()); - else if(aConstructorId == 1) - return !(myBase->_is_nil() || myVectorU->_is_nil() || myVectorV->_is_nil()); + + if (aConstructorId == 0) { + bool ok = true; + ok = GroupPoints->SpinBox_DX->isValid( msg, !IsPreview() ) && ok; + ok = GroupPoints->SpinBox_DY->isValid( msg, !IsPreview() ) && ok; + return !(myBase->_is_nil() || myVectorU->_is_nil()) && ok; + } + else if (aConstructorId == 1) { + bool ok = true; + ok = GroupDimensions->SpinBox_DX1->isValid( msg, !IsPreview() ) && ok; + ok = GroupDimensions->SpinBox_DY1->isValid( msg, !IsPreview() ) && ok; + ok = GroupDimensions->SpinBox_DX2->isValid( msg, !IsPreview() ) && ok; + ok = GroupDimensions->SpinBox_DY2->isValid( msg, !IsPreview() ) && ok; + return !(myBase->_is_nil() || myVectorU->_is_nil() || myVectorV->_is_nil()) && ok; + } return 0; } @@ -538,51 +648,52 @@ bool TransformationGUI_MultiTranslationDlg::isValid( QString& msg ) // function : execute // purpose : //================================================================================= -bool TransformationGUI_MultiTranslationDlg::execute( ObjectList& objects ) +bool TransformationGUI_MultiTranslationDlg::execute (ObjectList& objects) { bool res = false; GEOM::GEOM_Object_var anObj; - switch ( getConstructorId() ) - { - case 0 : - { - if ( !CORBA::is_nil( myBase ) && !CORBA::is_nil( myVectorU ) ) { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )->MultiTranslate1D( myBase, myVectorU, myStepU, myNbTimesU ); - res = true; - } - break; - } - case 1 : - { - if ( !CORBA::is_nil( myBase ) && !CORBA::is_nil( myVectorU ) && !CORBA::is_nil( myVectorV ) ) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )->MultiTranslate2D( myBase, myVectorU, myStepU, myNbTimesU, - myVectorV, myStepV, myNbTimesV ); - res = true; - } - break; - } - } + QStringList aParameters; - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); + switch (getConstructorId()) { + case 0: + if (!CORBA::is_nil(myBase) && !CORBA::is_nil(myVectorU)) { + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + MultiTranslate1D(myBase, myVectorU, myStepU, myNbTimesU); + if(!IsPreview()) { + aParameters<SpinBox_DX->text(); + aParameters<SpinBox_DY->text(); + } + res = true; + } + break; + case 1: + if (!CORBA::is_nil(myBase) && !CORBA::is_nil(myVectorU) && + !CORBA::is_nil(myVectorV)) { + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + MultiTranslate2D(myBase, myVectorU, myStepU, myNbTimesU, + myVectorV, myStepV, myNbTimesV); + if(!IsPreview()) { + aParameters<SpinBox_DX1->text(); + aParameters<SpinBox_DY1->text(); + aParameters<SpinBox_DX2->text(); + aParameters<SpinBox_DY2->text(); + } + res = true; + } + break; + } + + if (!anObj->_is_nil()) { + if(!IsPreview()) + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + objects.push_back(anObj._retn()); + } return res; } - -//================================================================================= -// function : closeEvent -// purpose : -//================================================================================= -void TransformationGUI_MultiTranslationDlg::closeEvent( QCloseEvent* e ) -{ - // myGeomGUI->SetState( -1 ); - GEOMBase_Skeleton::closeEvent( e ); -} - //================================================================================= // function : addSubshapeToStudy // purpose : virtual method to add new SubObjects if local selection @@ -590,16 +701,15 @@ void TransformationGUI_MultiTranslationDlg::closeEvent( QCloseEvent* e ) void TransformationGUI_MultiTranslationDlg::addSubshapesToStudy() { QMap objMap; - - switch (getConstructorId()) - { - case 0: - objMap[GroupPoints->LineEdit2->text()] = myVectorU; - break; - case 1: - objMap[GroupDimensions->LineEdit2->text()] = myVectorU; - objMap[GroupDimensions->LineEdit3->text()] = myVectorV; - break; - } - addSubshapesToFather( objMap ); + + switch (getConstructorId()) { + case 0: + objMap[GroupPoints->LineEdit2->text()] = myVectorU; + break; + case 1: + objMap[GroupDimensions->LineEdit2->text()] = myVectorU; + objMap[GroupDimensions->LineEdit3->text()] = myVectorV; + break; + } + addSubshapesToFather(objMap); } diff --git a/src/TransformationGUI/TransformationGUI_MultiTranslationDlg.h b/src/TransformationGUI/TransformationGUI_MultiTranslationDlg.h index c5746db3e..ab7d67b6a 100644 --- a/src/TransformationGUI/TransformationGUI_MultiTranslationDlg.h +++ b/src/TransformationGUI/TransformationGUI_MultiTranslationDlg.h @@ -1,37 +1,35 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : TransformationGUI_MultiTranslationDlg.h -// Author : Damien COQUERET -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI_MultiTranslationDlg.h +// Author : Damien COQUERET, Open CASCADE S.A.S. +// +#ifndef TRANSFORMATIONGUI_MULTITRANSLATIONDLG_H +#define TRANSFORMATIONGUI_MULTITRANSLATIONDLG_H -#ifndef DIALOGBOX_MULTITRANSLATION_H -#define DIALOGBOX_MULTITRANSLATION_H - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel2Spin1Check.h" -#include "DlgRef_3Sel4Spin2Check.h" +#include +class DlgRef_2Sel2Spin1Check; +class DlgRef_3Sel4Spin2Check; //================================================================================= // class : TransformationGUI_MultiTranslationDlg @@ -39,45 +37,50 @@ //================================================================================= class TransformationGUI_MultiTranslationDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - TransformationGUI_MultiTranslationDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~TransformationGUI_MultiTranslationDlg(); + TransformationGUI_MultiTranslationDlg( GeometryGUI*, QWidget* = 0, + bool = false, Qt::WindowFlags = 0 ); + ~TransformationGUI_MultiTranslationDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); - virtual void closeEvent( QCloseEvent* e ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); -private : - void Init(); - void enterEvent(QEvent* e); - - GEOM::GEOM_Object_var myBase, myVectorU, myVectorV ; - int myNbTimesU; - int myNbTimesV; - Standard_Real myStepU; - Standard_Real myStepV; - - DlgRef_2Sel2Spin1Check* GroupPoints; - DlgRef_3Sel4Spin2Check* GroupDimensions; +private: + void Init(); + void enterEvent( QEvent* ); + +private: + GEOM::GEOM_Object_var myBase, myVectorU, myVectorV; + int myNbTimesU; + int myNbTimesV; + Standard_Real myStepU; + Standard_Real myStepV; + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; + + DlgRef_2Sel2Spin1Check* GroupPoints; + DlgRef_3Sel4Spin2Check* GroupDimensions; + private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ReverseStepU(); - void ReverseStepV(); - void ValueChangedInSpinBox(double newValue); - void ConstructorsClicked(int constructorId); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ReverseStepU(); + void ReverseStepV(); + void ValueChangedInSpinBox( double ); + void TextValueChangedInSpinBox( const QString& ); + void ConstructorsClicked( int ); + void SetDoubleSpinBoxStep( double ); }; -#endif // DIALOGBOX_MULTITRANSLATION_H +#endif // TRANSFORMATIONGUI_MULTITRANSLATIONDLG_H diff --git a/src/TransformationGUI/TransformationGUI_OffsetDlg.cxx b/src/TransformationGUI/TransformationGUI_OffsetDlg.cxx index 862faabe7..f548ca48e 100644 --- a/src/TransformationGUI/TransformationGUI_OffsetDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_OffsetDlg.cxx @@ -1,85 +1,82 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI_OffsetDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : TransformationGUI_OffsetDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "TransformationGUI_OffsetDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include -#include -#include - -#include "utilities.h" - -using namespace std; +#include +#include +#include +#include //================================================================================= // class : TransformationGUI_OffsetDlg() -// purpose : Constructs a TransformationGUI_OffsetDlg which is a child of 'parent', with the +// purpose : Constructs a TransformationGUI_OffsetDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -TransformationGUI_OffsetDlg::TransformationGUI_OffsetDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +TransformationGUI_OffsetDlg::TransformationGUI_OffsetDlg( GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl ) + : GEOMBase_Skeleton( theGeometryGUI, parent, modal, fl ) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_OFFSET"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_DLG_OFFSET" ) ) ); + QPixmap image1( SUIT_Session::session()->resourceMgr()->loadPixmap( "GEOM", tr( "ICON_SELECT" ) ) ); - setCaption(tr("GEOM_OFFSET_TITLE")); + setWindowTitle( tr( "GEOM_OFFSET_TITLE" ) ); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_OFFSET")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); - - GroupPoints = new DlgRef_1Sel1Spin1Check(this, "GroupPoints"); - GroupPoints->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); - GroupPoints->TextLabel1->setText(tr("GEOM_OBJECTS")); - GroupPoints->TextLabel2->setText(tr("GEOM_OFFSET")); - GroupPoints->CheckButton1->setText(tr("GEOM_CREATE_COPY")); + mainFrame()->GroupConstructors->setTitle( tr( "GEOM_OFFSET" ) ); + mainFrame()->RadioButton1->setIcon( image0 ); + mainFrame()->RadioButton2->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton2->close(); + mainFrame()->RadioButton3->setAttribute( Qt::WA_DeleteOnClose ); + mainFrame()->RadioButton3->close(); + + GroupPoints = new DlgRef_1Sel1Spin1Check( centralWidget() ); + GroupPoints->GroupBox1->setTitle( tr( "GEOM_ARGUMENTS" ) ); + GroupPoints->TextLabel1->setText( tr( "GEOM_OBJECTS" ) ); + GroupPoints->TextLabel2->setText( tr( "GEOM_OFFSET" ) ); + GroupPoints->CheckButton1->setText( tr( "GEOM_CREATE_COPY" ) ); // san -- modification of an exisitng object by offset is not allowed GroupPoints->CheckButton1->hide(); - GroupPoints->PushButton1->setPixmap(image1); - - Layout1->addWidget(GroupPoints, 2, 0); - + GroupPoints->PushButton1->setIcon( image1 ); + + QVBoxLayout* layout = new QVBoxLayout( centralWidget() ); + layout->setMargin( 0 ); layout->setSpacing( 6 ); + layout->addWidget( GroupPoints ); + /***************************************************************/ - setHelpFileName("offset_operation_page.html"); - + setHelpFileName( "offset_operation_page.html" ); + Init(); } @@ -89,7 +86,7 @@ TransformationGUI_OffsetDlg::TransformationGUI_OffsetDlg(GeometryGUI* theGeometr // purpose : Destroys the object and frees any allocated resources //================================================================================= TransformationGUI_OffsetDlg::~TransformationGUI_OffsetDlg() -{ +{ /* no need to delete child widgets, Qt does it all for us */ } @@ -99,33 +96,35 @@ TransformationGUI_OffsetDlg::~TransformationGUI_OffsetDlg() // purpose : //================================================================================= void TransformationGUI_OffsetDlg::Init() -{ +{ /* init variables */ myEditCurrentArgument = GroupPoints->LineEdit1; GroupPoints->LineEdit1->setReadOnly( true ); - + /* Get setting of step value from file configuration */ double step = 1; - + /* min, max, step and decimals for spin boxes & initial values */ - GroupPoints->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupPoints->SpinBox_DX->SetValue(1e-05); - + initSpinBox( GroupPoints->SpinBox_DX, COORD_MIN, COORD_MAX, step, 3 ); // VSR: TODO: DBL_DIGITS_DISPLAY + GroupPoints->SpinBox_DX->setValue( 1e-05 ); + // Activate Create a Copy mode - GroupPoints->CheckButton1->setChecked(true); - CreateCopyModeChanged(true); + GroupPoints->CheckButton1->setChecked( true ); + CreateCopyModeChanged( true ); + + mainFrame()->GroupBoxPublish->show(); /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - - connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); - connect(GroupPoints->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(CreateCopyModeChanged(bool))); + connect( buttonOk(), SIGNAL( clicked() ), this, SLOT( ClickOnOk() ) ); + connect( buttonApply(), SIGNAL( clicked() ), this, SLOT( ClickOnApply() ) ); + + connect( GroupPoints->PushButton1, SIGNAL( clicked() ), this, SLOT( SetEditCurrentArgument() ) ); + connect( myGeomGUI->getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); + connect( GroupPoints->SpinBox_DX, SIGNAL( valueChanged( double ) ), this, SLOT( ValueChangedInSpinBox() ) ); + connect( GroupPoints->CheckButton1, SIGNAL( toggled( bool ) ), this, SLOT( CreateCopyModeChanged( bool ) ) ); + initName( tr( "GEOM_OFFSET" ) ); globalSelection( GEOM_ALLSHAPES ); @@ -151,7 +150,7 @@ bool TransformationGUI_OffsetDlg::ClickOnApply() { if ( !onAccept( GroupPoints->CheckButton1->isChecked() ) ) return false; - + initName(); return true; } @@ -163,22 +162,25 @@ bool TransformationGUI_OffsetDlg::ClickOnApply() //================================================================================= void TransformationGUI_OffsetDlg::SelectionIntoArgument() { - myEditCurrentArgument->setText(""); + myEditCurrentArgument->setText( "" ); QString aName; - int aNbSel = GEOMBase::GetNameOfSelectedIObjects(selectedIO(), aName); - if(aNbSel < 1) - { - myObjects.length(0); - return; - } + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + int aNbSel = GEOMBase::GetNameOfSelectedIObjects(aSelList, aName); + if ( aNbSel < 1 ) { + myObjects.length( 0 ); + return; + } // nbSel > 0 - GEOMBase::ConvertListOfIOInListOfGO(selectedIO(), myObjects); + GEOMBase::ConvertListOfIOInListOfGO (aSelList, myObjects); if (!myObjects.length()) return; - myEditCurrentArgument->setText( aName ); + myEditCurrentArgument->setText(aName); displayPreview(); } @@ -191,8 +193,7 @@ void TransformationGUI_OffsetDlg::SelectionIntoArgument() void TransformationGUI_OffsetDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if ( send == GroupPoints->LineEdit1 ) - { + if ( send == GroupPoints->LineEdit1 ) { myEditCurrentArgument = GroupPoints->LineEdit1; GEOMBase_Skeleton::LineEditReturnPressed(); } @@ -206,13 +207,13 @@ void TransformationGUI_OffsetDlg::LineEditReturnPressed() void TransformationGUI_OffsetDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - - if(send == GroupPoints->PushButton1) - { - myEditCurrentArgument = GroupPoints->LineEdit1; - myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); - } + + if ( send == GroupPoints->PushButton1 ) { + GroupPoints->PushButton1->setDown(true); + myEditCurrentArgument = GroupPoints->LineEdit1; + myEditCurrentArgument->setFocus(); + SelectionIntoArgument(); + } } @@ -220,9 +221,9 @@ void TransformationGUI_OffsetDlg::SetEditCurrentArgument() // function : enterEvent() // purpose : when mouse enter onto the QWidget //================================================================================= -void TransformationGUI_OffsetDlg::enterEvent(QEvent * e) +void TransformationGUI_OffsetDlg::enterEvent( QEvent* ) { - if ( !GroupConstructors->isEnabled() ) + if ( !mainFrame()->GroupConstructors->isEnabled() ) ActivateThisDialog(); } @@ -234,8 +235,8 @@ void TransformationGUI_OffsetDlg::enterEvent(QEvent * e) void TransformationGUI_OffsetDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), + SIGNAL( currentSelectionChanged() ), this, SLOT( SelectionIntoArgument() ) ); globalSelection( GEOM_ALLSHAPES ); myEditCurrentArgument = GroupPoints->LineEdit1; myEditCurrentArgument->setFocus(); @@ -268,20 +269,18 @@ GEOM::GEOM_IOperations_ptr TransformationGUI_OffsetDlg::createOperation() bool TransformationGUI_OffsetDlg::isValid( QString& msg ) { //return !(myObjects.length() == 0); - if (myObjects.length() == 0) return false; + if ( myObjects.length() == 0 ) return false; - for (int i = 0; i < myObjects.length(); i++) - { + for ( int i = 0; i < myObjects.length(); i++ ) { GEOM::shape_type aType = myObjects[i]->GetShapeType(); - if( aType != GEOM::FACE && aType != GEOM::SHELL && aType != GEOM::SOLID ){ - msg = tr("ERROR_SHAPE_TYPE"); - return false; + if ( aType != GEOM::FACE && aType != GEOM::SHELL && aType != GEOM::SOLID ) { + msg = tr( "ERROR_SHAPE_TYPE" ); + return false; } } - return true; + return GroupPoints->SpinBox_DX->isValid( msg, !IsPreview() ); } - //================================================================================= // function : execute // purpose : @@ -289,57 +288,62 @@ bool TransformationGUI_OffsetDlg::isValid( QString& msg ) bool TransformationGUI_OffsetDlg::execute( ObjectList& objects ) { bool res = false; - + GEOM::GEOM_Object_var anObj; - - if (GroupPoints->CheckButton1->isChecked() || IsPreview()) - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )-> - OffsetShapeCopy( myObjects[i], GetOffset() ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); + + if ( GroupPoints->CheckButton1->isChecked() || IsPreview() ) { + for ( int i = 0; i < myObjects.length(); i++ ) { + + anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )->OffsetShapeCopy( myObjects[i], GetOffset() ); + if ( !anObj->_is_nil() ) { + if(!IsPreview()) { + anObj->SetParameters(GroupPoints->SpinBox_DX->text().toLatin1().constData()); + } + objects.push_back( anObj._retn() ); + } } - else - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )-> - OffsetShape( myObjects[i], GetOffset() ); + } + else { + for ( int i = 0; i < myObjects.length(); i++ ) { + anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )->OffsetShape( myObjects[i], GetOffset() ); if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); + objects.push_back( anObj._retn() ); } - + } res = true; - + return res; } //================================================================================= -// function : closeEvent +// function : restoreSubShapes // purpose : //================================================================================= -void TransformationGUI_OffsetDlg::closeEvent( QCloseEvent* e ) +void TransformationGUI_OffsetDlg::restoreSubShapes( SALOMEDS::Study_ptr theStudy, + SALOMEDS::SObject_ptr theSObject ) { - // myGeomGUI->SetState( -1 ); - GEOMBase_Skeleton::closeEvent( e ); + if ( mainFrame()->CheckBoxRestoreSS->isChecked() ) { + // empty list of arguments means that all arguments should be restored + getGeomEngine()->RestoreSubShapesSO( theStudy, theSObject, GEOM::ListOfGO(), + /*theFindMethod=*/GEOM::FSM_Transformed, + /*theInheritFirstArg=*/true ); + } } - //================================================================================= // function : GetOffset() // purpose : //================================================================================= double TransformationGUI_OffsetDlg::GetOffset() const { - return GroupPoints->SpinBox_DX->GetValue(); + return GroupPoints->SpinBox_DX->value(); } - //================================================================================= // function : CreateCopyModeChanged() // purpose : //================================================================================= -void TransformationGUI_OffsetDlg::CreateCopyModeChanged(bool isCreateCopy) +void TransformationGUI_OffsetDlg::CreateCopyModeChanged( bool isCreateCopy ) { - this->GroupBoxName->setEnabled(isCreateCopy); + mainFrame()->GroupBoxName->setEnabled( isCreateCopy ); } diff --git a/src/TransformationGUI/TransformationGUI_OffsetDlg.h b/src/TransformationGUI/TransformationGUI_OffsetDlg.h index a49cdd87f..c83ec5fed 100644 --- a/src/TransformationGUI/TransformationGUI_OffsetDlg.h +++ b/src/TransformationGUI/TransformationGUI_OffsetDlg.h @@ -1,36 +1,34 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : TransformationGUI_OffsetDlg.h -// Author : Michael Zorin -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI_OffsetDlg.h +// Author : Michael ZORIN, Open CASCADE S.A.S. (mikhail.zorin@opencascade.com) +// +#ifndef TRANSFORMATIONGUI_OFFSETDLG_H +#define TRANSFORMATIONGUI_OFFSETDLG_H -#ifndef DIALOGBOX_OFFSET_H -#define DIALOGBOX_OFFSET_H +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_1Sel1Spin1Check.h" - +class DlgRef_1Sel1Spin1Check; //================================================================================= // class : TransformationGUI_OffsetDlg @@ -38,39 +36,39 @@ //================================================================================= class TransformationGUI_OffsetDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - TransformationGUI_OffsetDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~TransformationGUI_OffsetDlg(); + TransformationGUI_OffsetDlg( GeometryGUI*, QWidget* = 0, + bool = false, Qt::WindowFlags = 0 ); + ~TransformationGUI_OffsetDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - - virtual void closeEvent( QCloseEvent* e ); - + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void restoreSubShapes( SALOMEDS::Study_ptr, SALOMEDS::SObject_ptr ); + private: - void Init(); - void enterEvent(QEvent* e); - double GetOffset() const; + void Init(); + void enterEvent( QEvent* ); + double GetOffset() const; - GEOM::ListOfGO myObjects; +private: + GEOM::ListOfGO myObjects; - DlgRef_1Sel1Spin1Check* GroupPoints; + DlgRef_1Sel1Spin1Check* GroupPoints; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void SelectionIntoArgument(); - void LineEditReturnPressed(); - void SetEditCurrentArgument(); - void ValueChangedInSpinBox(); - void CreateCopyModeChanged(bool isCreateCopy); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void SelectionIntoArgument(); + void LineEditReturnPressed(); + void SetEditCurrentArgument(); + void ValueChangedInSpinBox(); + void CreateCopyModeChanged( bool ); }; -#endif // DIALOGBOX_OFFSET_H +#endif // TRANSFORMATIONGUI_OFFSETDLG_H diff --git a/src/TransformationGUI/TransformationGUI_PositionDlg.cxx b/src/TransformationGUI/TransformationGUI_PositionDlg.cxx index 721f5b9d7..e6cd6c213 100644 --- a/src/TransformationGUI/TransformationGUI_PositionDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_PositionDlg.cxx @@ -1,189 +1,283 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI_PositionDlg.cxx +// Author : Damien COQUERET, Open CASCADE S.A.S. // -// File : TransformationGUI_PositionDlg.cxx -// Author : Damien COQUERET -// Module : GEOM -// $Header$ - #include "TransformationGUI_PositionDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include -#include -#include +#include +#include +#include +#include +#include -#include "TColStd_MapOfInteger.hxx" +// OCCT Includes +#include -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" - -using namespace std; +#include //================================================================================= // class : TransformationGUI_PositionDlg() -// purpose : Constructs a TransformationGUI_PositionDlg which is a child of 'parent', with the +// purpose : Constructs a TransformationGUI_PositionDlg which is a child of 'parent', with the // name 'name' and widget flags set to 'f'. // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= TransformationGUI_PositionDlg::TransformationGUI_PositionDlg - (GeometryGUI* theGeometryGUI, QWidget* parent, const char* name, bool modal, WFlags fl) - : GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +(GeometryGUI* theGeometryGUI, QWidget* parent, bool modal, Qt::WindowFlags fl) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl), + myInitial(true) { SUIT_ResourceMgr* aResMgr = myGeomGUI->getApp()->resourceMgr(); - QPixmap image0(aResMgr->loadPixmap("GEOM",tr("ICON_DLG_POSITION"))); - QPixmap image1(aResMgr->loadPixmap("GEOM",tr("ICON_DLG_POSITION2"))); - QPixmap imageselect(aResMgr->loadPixmap("GEOM",tr("ICON_SELECT"))); + QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_POSITION"))); + QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_POSITION2"))); + QPixmap image2 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_POSITION3"))); + QPixmap imageselect (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_POSITION_TITLE")); + setWindowTitle(tr("GEOM_POSITION_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_POSITION")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image1); - RadioButton3->close(TRUE); - - Group1 = new DlgRef_3Sel3Spin1Check(this, "Group1"); - Group1->SpinBox1->hide(); - Group1->SpinBox2->hide(); - Group1->SpinBox3->hide(); - Group1->TextLabel4->hide(); - Group1->TextLabel5->hide(); - Group1->TextLabel6->hide(); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_POSITION")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setIcon(image1); + mainFrame()->RadioButton3->setIcon(image2); + + Group1 = new DlgRef_4Sel1Spin3Check(centralWidget()); Group1->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); Group1->TextLabel1->setText(tr("GEOM_OBJECTS")); Group1->TextLabel2->setText(tr("GEOM_START_LCS")); - Group1->TextLabel3->setText(tr("GEOM_END_LCS")); - Group1->PushButton1->setPixmap(imageselect); - Group1->PushButton2->setPixmap(imageselect); - Group1->PushButton3->setPixmap(imageselect); - Group1->CheckBox1->setText(tr("GEOM_CREATE_COPY")); + Group1->TextLabel3->setText(tr("GEOM_DISTANCE")); + Group1->TextLabel4->setText(tr("GEOM_END_LCS")); + Group1->TextLabel5->setText(tr("GEOM_PATH_OBJECT")); + Group1->PushButton1->setIcon(imageselect); + Group1->PushButton2->setIcon(imageselect); + Group1->PushButton4->setIcon(imageselect); + Group1->PushButton5->setIcon(imageselect); + Group1->CheckButton1->setText(tr("GEOM_CREATE_COPY")); + Group1->CheckButton2->setText(tr("SELECT_UNPUBLISHED_EDGES")); + Group1->CheckButton3->setText(tr("GEOM_REVERSE_DIRECTION")); - Layout1->addWidget(Group1, 2, 0); - + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(Group1); /***************************************************************/ - setHelpFileName("modify_location_operation_page.html"); - + setHelpFileName("modify_location_operation_page.html"); + + // Activate Create a Copy mode + Group1->CheckButton1->setChecked(true); + Group1->CheckButton1->setChecked(false); + CreateCopyModeChanged(true); + Init(); } - //================================================================================= // function : ~TransformationGUI_PositionDlg() // purpose : Destroys the object and frees any allocated resources //================================================================================= TransformationGUI_PositionDlg::~TransformationGUI_PositionDlg() -{ - /* no need to delete child widgets, Qt does it all for us */ +{ + // no need to delete child widgets, Qt does it all for us } - //================================================================================= // function : Init() // purpose : //================================================================================= void TransformationGUI_PositionDlg::Init() -{ - /* init variables */ +{ + // init variables Group1->LineEdit1->setReadOnly(true); Group1->LineEdit2->setReadOnly(true); - Group1->LineEdit3->setReadOnly(true); - - myStartLCS = GEOM::GEOM_Object::_nil(); - myEndLCS = GEOM::GEOM_Object::_nil(); - - // Activate Create a Copy mode - Group1->CheckBox1->setChecked(true); - CreateCopyModeChanged(true); + Group1->LineEdit4->setReadOnly(true); + Group1->LineEdit5->setReadOnly(true); - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), SLOT(ConstructorsClicked(int))); + Group1->LineEdit1->setText(""); + Group1->LineEdit2->setText(""); + Group1->LineEdit4->setText(""); + Group1->LineEdit5->setText(""); - connect(Group1->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(Group1->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(Group1->PushButton3, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + initSpinBox(Group1->SpinBox_DX, 0, 1, 0.05, 6); // VSR:TODO : DBL_DIGITS_DISPLAY + Group1->SpinBox_DX->setValue(0); - connect(Group1->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(Group1->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(Group1->LineEdit3, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - - connect(Group1->CheckBox1, SIGNAL(toggled(bool)), this, SLOT(CreateCopyModeChanged(bool))); - - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + Group1->CheckButton2->setEnabled(false); - initName( tr( "GEOM_POSITION" ) ); - ConstructorsClicked( 0 ); + myStartLCS = myEndLCS = GEOM::GEOM_Object::_nil(); + + mainFrame()->GroupBoxPublish->show(); + + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); + + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); + + connect(Group1->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(Group1->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(Group1->PushButton4, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(Group1->PushButton5, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + + connect(Group1->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(Group1->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(Group1->LineEdit4, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(Group1->LineEdit5, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + + connect(Group1->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(CreateCopyModeChanged(bool))); + connect(Group1->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + + connect(Group1->CheckButton2, SIGNAL(toggled(bool)), this, SLOT(SelectionTypeButtonClicked())); + connect(Group1->CheckButton3, SIGNAL(toggled(bool)), this, SLOT(ValueChangedInSpinBox())); + + initName(tr("GEOM_POSITION")); + + ConstructorsClicked(0); } - - //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void TransformationGUI_PositionDlg::ConstructorsClicked(int constructorId) +void TransformationGUI_PositionDlg::ConstructorsClicked (int constructorId) { disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); - - globalSelection(); - myEditCurrentArgument = Group1->LineEdit1; + Group1->LineEdit2->clear(); - Group1->LineEdit3->clear(); + Group1->LineEdit4->clear(); + Group1->LineEdit5->clear(); myStartLCS = GEOM::GEOM_Object::_nil(); myEndLCS = GEOM::GEOM_Object::_nil(); - - switch (constructorId) + myPath = GEOM::GEOM_Object::_nil(); + + switch (constructorId) { + case 0: { - case 0: - { - Group1->LineEdit2->hide(); - Group1->TextLabel2->hide(); - Group1->PushButton2->hide(); - break; - } - case 1: - { - Group1->LineEdit2->show(); - Group1->TextLabel2->show(); - Group1->PushButton2->show(); - break; - } + Group1->LineEdit2->hide(); + Group1->TextLabel2->hide(); + Group1->PushButton2->hide(); + + Group1->LineEdit5->hide(); + Group1->TextLabel5->hide(); + Group1->PushButton5->hide(); + + Group1->SpinBox_DX->hide(); + Group1->TextLabel3->hide(); + + Group1->LineEdit4->show(); + Group1->TextLabel4->show(); + Group1->PushButton4->show(); + + Group1->PushButton1->click(); + + Group1->CheckButton2->hide(); + Group1->CheckButton3->hide(); } - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - SelectionIntoArgument(); + break; + case 1: + { + Group1->LineEdit2->show(); + Group1->TextLabel2->show(); + Group1->PushButton2->show(); + + Group1->LineEdit5->hide(); + Group1->TextLabel5->hide(); + Group1->PushButton5->hide(); + + Group1->SpinBox_DX->hide(); + Group1->TextLabel3->hide(); + + Group1->PushButton1->click(); + + Group1->CheckButton2->hide(); + Group1->CheckButton3->hide(); + } + break; + case 2: + { + Group1->LineEdit4->hide(); + Group1->TextLabel4->hide(); + Group1->PushButton4->hide(); + + Group1->LineEdit2->hide(); + Group1->TextLabel2->hide(); + Group1->PushButton2->hide(); + + Group1->LineEdit5->show(); + Group1->TextLabel5->show(); + Group1->PushButton5->show(); + + Group1->SpinBox_DX->show(); + Group1->TextLabel3->show(); + + Group1->PushButton1->click(); + + Group1->CheckButton2->show(); + Group1->CheckButton3->show(); + } + break; + } + + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); + + if (myInitial) { + myInitial = false; + SelectionIntoArgument(); + } + else { + displayPreview(); + } } +//================================================================================= +// function : SelectionBittonClicked() +// purpose : Selection type Radio button management +//================================================================================= +void TransformationGUI_PositionDlg::SelectionTypeButtonClicked() +{ + if ( Group1->CheckButton2->isChecked() ) { + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + } else { + TColStd_MapOfInteger aMap; + aMap.Add(GEOM_WIRE); + aMap.Add(GEOM_LINE); + globalSelection(aMap); + } +} + +//================================================================================= +// function : ValueChangedInSpinBox() +// purpose : +//================================================================================= +void TransformationGUI_PositionDlg::ValueChangedInSpinBox() +{ + displayPreview(); +} //================================================================================= // function : ClickOnOk() @@ -191,98 +285,154 @@ void TransformationGUI_PositionDlg::ConstructorsClicked(int constructorId) //================================================================================= void TransformationGUI_PositionDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool TransformationGUI_PositionDlg::ClickOnApply() { - if ( !onAccept(Group1->CheckBox1->isChecked()) ) + if (!onAccept(Group1->CheckButton1->isChecked())) return false; - + initName(); - ConstructorsClicked( getConstructorId() ); + // activate selection and connect selection manager + ConstructorsClicked(getConstructorId()); return true; } - //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection has changed +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void TransformationGUI_PositionDlg::SelectionIntoArgument() { + erasePreview(); myEditCurrentArgument->setText(""); + + if (myEditCurrentArgument == Group1->LineEdit1) + myObjects.length(0); + else if (myEditCurrentArgument == Group1->LineEdit2) + myStartLCS = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == Group1->LineEdit4) + myEndLCS = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == Group1->LineEdit5) + myPath = GEOM::GEOM_Object::_nil(); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + QString aName; - if(myEditCurrentArgument == Group1->LineEdit1) { - int aNbSel = GEOMBase::GetNameOfSelectedIObjects(selectedIO(), aName); - if(aNbSel < 1) { - myObjects.length(0); - displayPreview(); + if (myEditCurrentArgument == Group1->LineEdit1) { + int aNbSel = GEOMBase::GetNameOfSelectedIObjects(aSelList, aName); + if (aNbSel < 1) return; - } - GEOMBase::ConvertListOfIOInListOfGO(selectedIO(), myObjects); - if (!myObjects.length()) { - displayPreview(); + + GEOMBase::ConvertListOfIOInListOfGO(aSelList, myObjects); + if (!myObjects.length()) return; - } + else + myEditCurrentArgument->setText(aName); + + if (getConstructorId() == 2) + Group1->PushButton5->click(); } - else if(myEditCurrentArgument == Group1->LineEdit2) { - myStartLCS = GEOM::GEOM_Object::_nil(); - if(IObjectCount() != 1) { - displayPreview(); + else if (myEditCurrentArgument == Group1->LineEdit2) { + if (aSelList.Extent() != 1) + return; + + // nbSel == 1 + Standard_Boolean testResult = Standard_False; + myStartLCS = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + if (!testResult || CORBA::is_nil(myStartLCS)) + return; + + aName = GEOMBase::GetName(myStartLCS); + myEditCurrentArgument->setText(aName); + + if (!myStartLCS->_is_nil() && myEndLCS->_is_nil()) + Group1->PushButton4->click(); + } + else if (myEditCurrentArgument == Group1->LineEdit4) { + myEndLCS = GEOM::GEOM_Object::_nil(); + if (aSelList.Extent() != 1) return; - } Standard_Boolean testResult = Standard_False; - myStartLCS = GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult ); - if(!testResult || CORBA::is_nil( myStartLCS )) { - displayPreview(); + myEndLCS = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + if (!testResult || CORBA::is_nil(myEndLCS)) return; - } - aName = GEOMBase::GetName( myStartLCS ); + + aName = GEOMBase::GetName(myEndLCS); + myEditCurrentArgument->setText(aName); + + if (!myEndLCS->_is_nil() && !myObjects.length()) + Group1->PushButton1->click(); } - else if(myEditCurrentArgument == Group1->LineEdit3) { - myEndLCS = GEOM::GEOM_Object::_nil(); - if(IObjectCount() != 1) { - displayPreview(); + else if (myEditCurrentArgument == Group1->LineEdit5) { + myPath = GEOM::GEOM_Object::_nil(); + if (aSelList.Extent() != 1) return; + + Standard_Boolean testResult = Standard_False; + GEOM::GEOM_Object_ptr aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + if (!testResult || aSelectedObject->_is_nil()) + return; + + aName = GEOMBase::GetName(myPath); + // Local Selection + TopoDS_Shape S; + if (!GEOMBase::GetShape(aSelectedObject, S)) + return; + + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + aName = GEOMBase::GetName(aSelectedObject); + if (aMap.Extent() == 1) { + int anIndex = aMap(1); + aName.append(":edge_" + QString::number(anIndex)); + + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = GEOMBase_Helper::findObjectInFather(aSelectedObject, aName); + + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = + getGeomEngine()->GetIShapesOperations(getStudyId()); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + } + else { // get Object from study + aSelectedObject = aFindedObject; + } + } + else { + if (S.ShapeType() != TopAbs_EDGE && S.ShapeType() != TopAbs_WIRE) { + aSelectedObject = GEOM::GEOM_Object::_nil(); + aName = ""; + return; + } } - Standard_Boolean testResult = Standard_False; - myEndLCS = GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult ); - if(!testResult || CORBA::is_nil( myEndLCS )) { - displayPreview(); - return; - } - aName = GEOMBase::GetName( myEndLCS ); + myEditCurrentArgument->setText(aName); + myPath = aSelectedObject; + + if (!myPath->_is_nil() && !myObjects.length()) + Group1->PushButton1->click(); } - myEditCurrentArgument->setText( aName ); - displayPreview(); + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + displayPreview(); } - -//================================================================================= -// function : LineEditReturnPressed() -// purpose : -//================================================================================= -void TransformationGUI_PositionDlg::LineEditReturnPressed() -{ - QLineEdit* send = (QLineEdit*)sender(); - if(send == Group1->LineEdit1 || send == Group1->LineEdit2 || send == Group1->LineEdit3) { - myEditCurrentArgument = send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } -} - - //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -290,30 +440,110 @@ void TransformationGUI_PositionDlg::LineEditReturnPressed() void TransformationGUI_PositionDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); - - if(send == Group1->PushButton1){ - myEditCurrentArgument = Group1->LineEdit1; - globalSelection(); - } - else if(send == Group1->PushButton2) { - myEditCurrentArgument = Group1->LineEdit2; - TColStd_MapOfInteger aMap; - aMap.Add( GEOM_PLANE ); - aMap.Add( GEOM_MARKER ); - globalSelection( aMap ); - } - else if(send == Group1->PushButton3) { - myEditCurrentArgument = Group1->LineEdit3; - TColStd_MapOfInteger aMap; - aMap.Add( GEOM_PLANE ); - aMap.Add( GEOM_MARKER ); - globalSelection( aMap ); - } + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + if (send == Group1->PushButton1) { + myEditCurrentArgument = Group1->LineEdit1; + + globalSelection(); + + Group1->PushButton2->setDown(false); + Group1->PushButton4->setDown(false); + Group1->PushButton5->setDown(false); + Group1->LineEdit2->setEnabled(false); + Group1->LineEdit4->setEnabled(false); + Group1->LineEdit5->setEnabled(false); + + Group1->CheckButton2->setEnabled(false); + } + else if (send == Group1->PushButton2) { + myEditCurrentArgument = Group1->LineEdit2; + + TColStd_MapOfInteger aMap; + aMap.Add(GEOM_PLANE); + aMap.Add(GEOM_MARKER); + globalSelection(aMap); + + Group1->PushButton1->setDown(false); + Group1->PushButton4->setDown(false); + Group1->PushButton5->setDown(false); + Group1->LineEdit1->setEnabled(false); + Group1->LineEdit4->setEnabled(false); + Group1->LineEdit5->setEnabled(false); + + Group1->CheckButton2->setEnabled(false); + } + else if (send == Group1->PushButton4) { + myEditCurrentArgument = Group1->LineEdit4; + + TColStd_MapOfInteger aMap; + aMap.Add(GEOM_PLANE); + aMap.Add(GEOM_MARKER); + globalSelection(aMap); + + Group1->PushButton1->setDown(false); + Group1->PushButton2->setDown(false); + Group1->PushButton5->setDown(false); + Group1->LineEdit1->setEnabled(false); + Group1->LineEdit2->setEnabled(false); + Group1->LineEdit5->setEnabled(false); + + Group1->CheckButton2->setEnabled(false); + } + else if (send == Group1->PushButton5) { + myEditCurrentArgument = Group1->LineEdit5; + + Group1->CheckButton2->setEnabled(true); + + if ( Group1->CheckButton2->isChecked() ) { + localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + } else { + TColStd_MapOfInteger aMap; + aMap.Add(GEOM_WIRE); + aMap.Add(GEOM_LINE); + globalSelection(aMap); + } + + Group1->PushButton1->setDown(false); + Group1->PushButton2->setDown(false); + Group1->PushButton4->setDown(false); + Group1->LineEdit1->setEnabled(false); + Group1->LineEdit2->setEnabled(false); + Group1->LineEdit4->setEnabled(false); + } + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + // enable line edit + myEditCurrentArgument->setEnabled(true); myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); } +//================================================================================= +// function : LineEditReturnPressed() +// purpose : +//================================================================================= +void TransformationGUI_PositionDlg::LineEditReturnPressed() +{ + QLineEdit* send = (QLineEdit*)sender(); + if (send == Group1->LineEdit1 || + send == Group1->LineEdit2 || + send == Group1->LineEdit4 || + send == Group1->LineEdit5 ) { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } + + if (send == Group1->LineEdit5) + Group1->CheckButton2->setEnabled(true); + else + Group1->CheckButton2->setEnabled(false); +} //================================================================================= // function : ActivateThisDialog() @@ -322,108 +552,144 @@ void TransformationGUI_PositionDlg::SetEditCurrentArgument() void TransformationGUI_PositionDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + ConstructorsClicked( getConstructorId() ); } - //================================================================================= // function : enterEvent() // purpose : when mouse enter onto the QWidget //================================================================================= -void TransformationGUI_PositionDlg::enterEvent(QEvent * e) +void TransformationGUI_PositionDlg::enterEvent (QEvent*) { - if(!GroupConstructors->isEnabled()) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } - //================================================================================= // function : createOperation // purpose : //================================================================================= -GEOM::GEOM_IOperations_ptr TransformationGUI_PositionDlg::createOperation() +GEOM::GEOM_IOperations_ptr TransformationGUI_PositionDlg::createOperation() { - return getGeomEngine()->GetITransformOperations( getStudyId() ); + return getGeomEngine()->GetITransformOperations(getStudyId()); } - //================================================================================= // function : isValid // purpose : //================================================================================= -bool TransformationGUI_PositionDlg::isValid( QString& msg ) +bool TransformationGUI_PositionDlg::isValid (QString& /*msg*/) { bool res; if (getConstructorId() == 0) res = !(myObjects.length() == 0 || myEndLCS->_is_nil()); - else + else if ( getConstructorId() == 1 ) res = !(myObjects.length() == 0 || myStartLCS->_is_nil() || myEndLCS->_is_nil()); + else if ( getConstructorId() == 2 ) + res = !(myObjects.length() == 0 || myPath->_is_nil()); return res; } - //================================================================================= // function : execute // purpose : //================================================================================= -bool TransformationGUI_PositionDlg::execute( ObjectList& objects ) +bool TransformationGUI_PositionDlg::execute (ObjectList& objects) { bool res = false; - bool toCreateCopy = IsPreview() || Group1->CheckBox1->isChecked(); + bool toCreateCopy = IsPreview() || Group1->CheckButton1->isChecked(); GEOM::GEOM_Object_var anObj; - - switch ( getConstructorId() ) - { - case 0 : - { - for (int i = 0; i < myObjects.length(); i++) { - if (toCreateCopy) - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )->PositionShapeCopy( myObjects[i], myObjects[i], myEndLCS ); - else - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )->PositionShape( myObjects[i], myObjects[i], myEndLCS ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - res = true; - break; - } - case 1 : - { - for (int i = 0; i < myObjects.length(); i++) { - if (toCreateCopy) - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )->PositionShapeCopy( myObjects[i], myStartLCS, myEndLCS ); - else - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )->PositionShape( myObjects[i], myStartLCS, myEndLCS ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - res = true; - break; + switch (getConstructorId()) { + case 0: + { + for (int i = 0; i < myObjects.length(); i++) { + if (toCreateCopy) + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + PositionShapeCopy(myObjects[i], myObjects[i], myEndLCS); + else + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + PositionShape(myObjects[i], myObjects[i], myEndLCS); + + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); } + res = true; + break; } - + case 1: + { + for (int i = 0; i < myObjects.length(); i++) { + if (toCreateCopy) + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + PositionShapeCopy(myObjects[i], myStartLCS, myEndLCS); + else + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + PositionShape(myObjects[i], myStartLCS, myEndLCS); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + } + res = true; + break; + } + case 2: + { + double aDistance = Group1->SpinBox_DX->value(); + bool toReverse = Group1->CheckButton3->isChecked(); + for (int i = 0; i < myObjects.length(); i++) { + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + PositionAlongPath(myObjects[i], myPath, aDistance, toCreateCopy, toReverse); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + } + res = true; + break; + } + } + return res; } //================================================================================= -// function : closeEvent +// function : restoreSubShapes // purpose : //================================================================================= -void TransformationGUI_PositionDlg::closeEvent( QCloseEvent* e ) +void TransformationGUI_PositionDlg::restoreSubShapes (SALOMEDS::Study_ptr theStudy, + SALOMEDS::SObject_ptr theSObject) { - GEOMBase_Skeleton::closeEvent( e ); + if (mainFrame()->CheckBoxRestoreSS->isChecked()) { + // empty list of arguments means that all arguments should be restored + getGeomEngine()->RestoreSubShapesSO(theStudy, theSObject, GEOM::ListOfGO(), + /*theFindMethod=*/GEOM::FSM_Transformed, + /*theInheritFirstArg=*/true); + } } - //================================================================================= // function : CreateCopyModeChanged() // purpose : //================================================================================= -void TransformationGUI_PositionDlg::CreateCopyModeChanged(bool isCreateCopy) +void TransformationGUI_PositionDlg::CreateCopyModeChanged (bool isCreateCopy) { - this->GroupBoxName->setEnabled(isCreateCopy); + mainFrame()->GroupBoxName->setEnabled(isCreateCopy); +} + +//================================================================================= +// function : addSubshapeToStudy +// purpose : virtual method to add new SubObjects if local selection +//================================================================================= +void TransformationGUI_PositionDlg::addSubshapesToStudy() +{ + QMap objMap; + + objMap[Group1->LineEdit5->text()] = myPath; + + addSubshapesToFather(objMap); } diff --git a/src/TransformationGUI/TransformationGUI_PositionDlg.h b/src/TransformationGUI/TransformationGUI_PositionDlg.h index 9ecfb2809..a48959b92 100644 --- a/src/TransformationGUI/TransformationGUI_PositionDlg.h +++ b/src/TransformationGUI/TransformationGUI_PositionDlg.h @@ -1,38 +1,34 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : TransformationGUI_PositionDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI_PositionDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef TRANSFORMATIONGUI_POSITIONDLG_H +#define TRANSFORMATIONGUI_POSITIONDLG_H -#ifndef DIALOGBOX_POSITION_H -#define DIALOGBOX_POSITION_H +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_3Sel3Spin1Check.h" - -#include "TransformationGUI.h" - +class DlgRef_4Sel1Spin3Check; //================================================================================= // class : TransformationGUI_PositionDlg @@ -40,40 +36,47 @@ //================================================================================= class TransformationGUI_PositionDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - TransformationGUI_PositionDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~TransformationGUI_PositionDlg(); - + TransformationGUI_PositionDlg( GeometryGUI*, QWidget* = 0, + bool = false, Qt::WindowFlags = 0 ); + ~TransformationGUI_PositionDlg(); + protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - - virtual void closeEvent( QCloseEvent* e ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void restoreSubShapes( SALOMEDS::Study_ptr, SALOMEDS::SObject_ptr ); + virtual void addSubshapesToStudy(); private: - void Init(); - void enterEvent(QEvent* e); + void Init(); + void enterEvent( QEvent* ); - GEOM::GEOM_Object_var myStartLCS; - GEOM::GEOM_Object_var myEndLCS; - GEOM::ListOfGO myObjects; - - DlgRef_3Sel3Spin1Check* Group1; +private: + GEOM::GEOM_Object_var myStartLCS; + GEOM::GEOM_Object_var myEndLCS; + GEOM::ListOfGO myObjects; + GEOM::GEOM_Object_var myPath; + + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; + + DlgRef_4Sel1Spin3Check* Group1; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ConstructorsClicked(int constructorId); - void CreateCopyModeChanged(bool isCreateCopy); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ConstructorsClicked( int ); + void CreateCopyModeChanged( bool ); + void ValueChangedInSpinBox(); + void SelectionTypeButtonClicked(); }; -#endif // DIALOGBOX_MIRROR_H +#endif // TRANSFORMATIONGUI_POSITIONDLG_H diff --git a/src/TransformationGUI/TransformationGUI_RotationDlg.cxx b/src/TransformationGUI/TransformationGUI_RotationDlg.cxx index f0cca0130..c56fd9c9b 100644 --- a/src/TransformationGUI/TransformationGUI_RotationDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_RotationDlg.cxx @@ -1,38 +1,40 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI_RotationDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : TransformationGUI_RotationDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "TransformationGUI_RotationDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include +#include +#include +#include + +// OCCT Includes #include #include #include @@ -40,14 +42,7 @@ #include #include -#include -#include - -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" - -using namespace std; +#include //================================================================================= // class : TransformationGUI_RotationDlg() @@ -57,81 +52,57 @@ using namespace std; // TRUE to construct a modal dialog. //================================================================================= TransformationGUI_RotationDlg::TransformationGUI_RotationDlg - (GeometryGUI* theGeometryGUI, QWidget* parent, const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +(GeometryGUI* theGeometryGUI, QWidget* parent, bool modal, Qt::WindowFlags fl) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl), + myInitial(true) { SUIT_ResourceMgr* aResMgr = myGeomGUI->getApp()->resourceMgr(); - QPixmap image0 (aResMgr->loadPixmap("GEOM",tr("ICON_DLG_ROTATION"))); - QPixmap image1 (aResMgr->loadPixmap("GEOM",tr("ICON_SELECT"))); - QPixmap image2 (aResMgr->loadPixmap("GEOM",tr("ICON_DLG_ROTATION_THREE_POINTS"))); + QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_ROTATION"))); + QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); + QPixmap image2 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_ROTATION_THREE_POINTS"))); - setCaption(tr("GEOM_ROTATION_TITLE")); + setWindowTitle(tr("GEOM_ROTATION_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_ROTATION")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image2); - RadioButton3->close(TRUE); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_ROTATION")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setIcon(image2); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_4Sel1Spin2Check(this, "GroupPoints"); + GroupPoints = new DlgRef_4Sel1Spin2Check(centralWidget()); GroupPoints->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); GroupPoints->TextLabel1->setText(tr("GEOM_OBJECTS")); GroupPoints->TextLabel2->setText(tr("GEOM_AXIS")); GroupPoints->TextLabel3->setText(tr("GEOM_ANGLE")); - GroupPoints->TextLabel4->setText(tr("GEOM_POINT_I").arg("1")); - GroupPoints->TextLabel5->setText(tr("GEOM_POINT_I").arg("2")); + GroupPoints->TextLabel4->setText(tr("GEOM_POINT_I").arg(1)); + GroupPoints->TextLabel5->setText(tr("GEOM_POINT_I").arg(2)); GroupPoints->LineEdit1->setReadOnly(true); GroupPoints->LineEdit2->setReadOnly(true); GroupPoints->LineEdit4->setReadOnly(true); GroupPoints->LineEdit5->setReadOnly(true); - GroupPoints->PushButton1->setPixmap(image1); - GroupPoints->PushButton2->setPixmap(image1); - GroupPoints->PushButton4->setPixmap(image1); - GroupPoints->PushButton5->setPixmap(image1); + GroupPoints->PushButton1->setIcon(image1); + GroupPoints->PushButton2->setIcon(image1); + GroupPoints->PushButton4->setIcon(image1); + GroupPoints->PushButton5->setIcon(image1); GroupPoints->CheckButton1->setText(tr("GEOM_CREATE_COPY")); GroupPoints->CheckButton2->setText(tr("GEOM_REVERSE")); - Layout1->addWidget(GroupPoints, 2, 0); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); /***************************************************************/ - double anAngle = 0; - double SpecificStep = 5; - /* min, max, step and decimals for spin boxes & initial values */ - GroupPoints->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, SpecificStep, DBL_DIGITS_DISPLAY); - GroupPoints->SpinBox_DX->SetValue(anAngle); + setHelpFileName("rotation_operation_page.html"); // Activate Create a Copy mode GroupPoints->CheckButton1->setChecked(true); CreateCopyModeChanged(true); - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), SLOT(ConstructorsClicked(int))); - - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->PushButton4, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->PushButton5, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - - connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); - connect(GroupPoints->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(CreateCopyModeChanged(bool))); - connect(GroupPoints->CheckButton2, SIGNAL(toggled(bool)), this, SLOT(onReverse())); - - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; - - setHelpFileName("rotation_operation_page.html"); - Init(); } - //================================================================================= // function : ~TransformationGUI_RotationDlg() // purpose : Destroys the object and frees any allocated resources @@ -141,65 +112,107 @@ TransformationGUI_RotationDlg::~TransformationGUI_RotationDlg() // no need to delete child widgets, Qt does it all for us } - //================================================================================= // function : Init() // purpose : //================================================================================= void TransformationGUI_RotationDlg::Init() { - /* init variables */ - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit2->clear(); + double anAngle = 0; + double SpecificStep = 5; + + // min, max, step and decimals for spin boxes & initial values + initSpinBox(GroupPoints->SpinBox_DX, COORD_MIN, COORD_MAX, SpecificStep, 3); // VSR: TODO: DBL_DIGITS_DISPLAY + GroupPoints->SpinBox_DX->setValue(anAngle); + + // init variables + GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit2->setText(""); + GroupPoints->LineEdit4->setText(""); + GroupPoints->LineEdit5->setText(""); myAxis = myCentPoint = myPoint1 = myPoint2 = GEOM::GEOM_Object::_nil(); - initName( tr( "GEOM_ROTATION" ) ); - ConstructorsClicked( 0 ); + mainFrame()->GroupBoxPublish->show(); + + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); + + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); + + connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupPoints->PushButton4, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(GroupPoints->PushButton5, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + + connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + + connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + + connect(GroupPoints->SpinBox_DX, SIGNAL(textChanged( const QString& )), + this, SLOT(TextValueChangedInSpinBox( const QString&))); + + connect(GroupPoints->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(CreateCopyModeChanged(bool))); + connect(GroupPoints->CheckButton2, SIGNAL(toggled(bool)), this, SLOT(onReverse())); + + initName(tr("GEOM_ROTATION")); + + ConstructorsClicked(0); } //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void TransformationGUI_RotationDlg::ConstructorsClicked(int constructorId) +void TransformationGUI_RotationDlg::ConstructorsClicked (int constructorId) { disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); - myEditCurrentArgument = GroupPoints->LineEdit1; - globalSelection(); - - switch (constructorId) + switch (constructorId) { + case 0: // rotation an object angle and axis { - case 0: /* rotation an object angle and axis */ - { - GroupPoints->ShowRows(2,3,false); - resize(0,0); - GroupPoints->TextLabel2->setText(tr("GEOM_AXIS")); - GroupPoints->LineEdit2->clear(); - GroupPoints->ShowRows(4,4,true); - myAxis = GEOM::GEOM_Object::_nil(); - break; - } - case 1: /* rotation an object by 3 points */ - { - GroupPoints->ShowRows(4,4,false); - resize(0,0); - GroupPoints->ShowRows(2,3,true); - GroupPoints->TextLabel2->setText(tr("GEOM_CENTRAL_POINT")); - GroupPoints->TextLabel4->setText(tr("GEOM_POINT_I").arg("1")); - GroupPoints->TextLabel5->setText(tr("GEOM_POINT_I").arg("2")); - GroupPoints->LineEdit2->clear(); - GroupPoints->LineEdit4->clear(); - GroupPoints->LineEdit5->clear(); - myCentPoint = myPoint1 = myPoint2 = GEOM::GEOM_Object::_nil(); - break; - } - } + GroupPoints->ShowRows(2, 3, false); + GroupPoints->TextLabel2->setText(tr("GEOM_AXIS")); + GroupPoints->LineEdit2->clear(); + GroupPoints->ShowRows(4, 4, true); - myEditCurrentArgument->setFocus(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + myAxis = GEOM::GEOM_Object::_nil(); + + GroupPoints->PushButton1->click(); + } + break; + case 1: // rotation an object by 3 points + { + GroupPoints->ShowRows(4, 4, false); + GroupPoints->ShowRows(2, 3, true); + GroupPoints->TextLabel2->setText(tr("GEOM_CENTRAL_POINT")); + GroupPoints->TextLabel4->setText(tr("GEOM_POINT_I").arg(1)); + GroupPoints->TextLabel5->setText(tr("GEOM_POINT_I").arg(2)); + + GroupPoints->LineEdit2->clear(); + GroupPoints->LineEdit4->clear(); + GroupPoints->LineEdit5->clear(); + + myCentPoint = myPoint1 = myPoint2 = GEOM::GEOM_Object::_nil(); + + GroupPoints->PushButton1->click(); + } + break; + } + + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); + + if (myInitial) { + myInitial = false; + SelectionIntoArgument(); + } + else { + displayPreview(); + } } //================================================================================= @@ -208,121 +221,147 @@ void TransformationGUI_RotationDlg::ConstructorsClicked(int constructorId) //================================================================================= void TransformationGUI_RotationDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool TransformationGUI_RotationDlg::ClickOnApply() { - if ( !onAccept( GroupPoints->CheckButton1->isChecked()) ) + if (!onAccept(GroupPoints->CheckButton1->isChecked())) return false; initName(); - ConstructorsClicked( getConstructorId() ); + // activate selection and connect selection manager + ConstructorsClicked(getConstructorId()); return true; } - //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection as changed or other case +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void TransformationGUI_RotationDlg::SelectionIntoArgument() { + erasePreview(); myEditCurrentArgument->setText(""); + + if (myEditCurrentArgument == GroupPoints->LineEdit1) + myObjects.length(0); + else if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 0) + myAxis = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 1) + myCentPoint = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupPoints->LineEdit4) + myPoint1 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupPoints->LineEdit5) + myPoint2 = GEOM::GEOM_Object::_nil(); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + QString aName; - if(myEditCurrentArgument == GroupPoints->LineEdit1) + if (myEditCurrentArgument == GroupPoints->LineEdit1) { + int aNbSel = GEOMBase::GetNameOfSelectedIObjects(aSelList, aName); + if (aNbSel < 1) + return; + + GEOMBase::ConvertListOfIOInListOfGO(aSelList, myObjects); + if (!myObjects.length()) + return; + else + myEditCurrentArgument->setText(aName); + } + else { + if (aSelList.Extent() != 1) + return; + + // nbSel == 1 + Standard_Boolean testResult = Standard_False; + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + + if (!testResult || CORBA::is_nil(aSelectedObject)) + return; + + aName = GEOMBase::GetName(aSelectedObject); + + // Get Selected object if selected subshape + TopoDS_Shape aShape; + if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) { - int aNbSel = GEOMBase::GetNameOfSelectedIObjects(selectedIO(), aName); - if(aNbSel < 1) - { - myObjects.length(0); - return; - } - GEOMBase::ConvertListOfIOInListOfGO(selectedIO(), myObjects); - if (!myObjects.length()) - return; + TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; + if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 0) + aNeedType = TopAbs_EDGE; + + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) + { + int anIndex = aMap(1); + if (aNeedType == TopAbs_EDGE) + aName += QString(":edge_%1").arg(anIndex); + else + aName += QString(":vertex_%1").arg(anIndex); + + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aSelectedObject, aName); + + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = + getGeomEngine()->GetIShapesOperations(getStudyId()); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + } + else { + aSelectedObject = aFindedObject; // get Object from study + } + } + else // Global Selection + { + if (aShape.ShapeType() != aNeedType) { + aSelectedObject = GEOM::GEOM_Object::_nil(); + aName = ""; + } + } } - else - { - if(IObjectCount() != 1) - { - if(myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 0) - myAxis = GEOM::GEOM_Object::_nil(); - else if(myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 1) - myCentPoint = GEOM::GEOM_Object::_nil(); - else if(myEditCurrentArgument == GroupPoints->LineEdit4) - myPoint1 = GEOM::GEOM_Object::_nil(); - else if(myEditCurrentArgument == GroupPoints->LineEdit5) - myPoint2 = GEOM::GEOM_Object::_nil(); - return; - } - Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult ); - if(!testResult || CORBA::is_nil( aSelectedObject )) - return; - - aName = GEOMBase::GetName( aSelectedObject ); - TopoDS_Shape aShape; - if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) - { - TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; - if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 0) - aNeedType = TopAbs_EDGE; - - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); - TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes( firstIObject(), aMap ); - if ( aMap.Extent() == 1 ) - { - int anIndex = aMap( 1 ); - if (aNeedType == TopAbs_EDGE) - aName += QString(":edge_%1").arg(anIndex); - else - aName += QString(":vertex_%1").arg(anIndex); - - //Find SubShape Object in Father - GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aSelectedObject, aName); - - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = - getGeomEngine()->GetIShapesOperations( getStudyId() ); - aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); - } - else - aSelectedObject = aFindedObject; // get Object from study - } - else { - if (aShape.ShapeType() != aNeedType) { - aSelectedObject = GEOM::GEOM_Object::_nil(); - aName = ""; - } - } - } - - if(myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 0) - myAxis = aSelectedObject; - else if(myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 1) - myCentPoint = aSelectedObject; - else if(myEditCurrentArgument == GroupPoints->LineEdit4) - myPoint1 = aSelectedObject; - else if(myEditCurrentArgument == GroupPoints->LineEdit5) - myPoint2 = aSelectedObject; + myEditCurrentArgument->setText(aName); + if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 0) { + myAxis = aSelectedObject; + if (!myAxis->_is_nil() && !myObjects.length()) + GroupPoints->PushButton1->click(); } - myEditCurrentArgument->setText( aName ); + else if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 1) { + myCentPoint = aSelectedObject; + if (!myCentPoint->_is_nil() && myPoint1->_is_nil()) + GroupPoints->PushButton4->click(); + } + else if (myEditCurrentArgument == GroupPoints->LineEdit4) { + myPoint1 = aSelectedObject; + if (!myPoint1->_is_nil() && myPoint2->_is_nil()) + GroupPoints->PushButton5->click(); + } + else if (myEditCurrentArgument == GroupPoints->LineEdit5) { + myPoint2 = aSelectedObject; + if (!myPoint2->_is_nil() && !myObjects.length()) + GroupPoints->PushButton1->click(); + } + } + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); displayPreview(); } - //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -330,33 +369,67 @@ void TransformationGUI_RotationDlg::SelectionIntoArgument() void TransformationGUI_RotationDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); + + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); globalSelection(); - if(send == GroupPoints->PushButton1) { + if (send == GroupPoints->PushButton1) { myEditCurrentArgument = GroupPoints->LineEdit1; + + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit2->setEnabled(false); } - else if(send == GroupPoints->PushButton2) { + else if (send == GroupPoints->PushButton2) { myEditCurrentArgument = GroupPoints->LineEdit2; + + GroupPoints->PushButton1->setDown(false); + GroupPoints->PushButton4->setDown(false); + GroupPoints->PushButton5->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + GroupPoints->LineEdit4->setEnabled(false); + GroupPoints->LineEdit5->setEnabled(false); + if (getConstructorId() == 0) - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); else - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); } - else if (send == GroupPoints->PushButton4) - { - myEditCurrentArgument = GroupPoints->LineEdit4; - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); - } - else if (send == GroupPoints->PushButton5) - { - myEditCurrentArgument = GroupPoints->LineEdit5; - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); - } + else if (send == GroupPoints->PushButton4) { + myEditCurrentArgument = GroupPoints->LineEdit4; + GroupPoints->PushButton1->setDown(false); + GroupPoints->PushButton2->setDown(false); + GroupPoints->PushButton5->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + GroupPoints->LineEdit2->setEnabled(false); + GroupPoints->LineEdit5->setEnabled(false); + + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + } + else if (send == GroupPoints->PushButton5) { + myEditCurrentArgument = GroupPoints->LineEdit5; + + GroupPoints->PushButton1->setDown(false); + GroupPoints->PushButton2->setDown(false); + GroupPoints->PushButton4->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + GroupPoints->LineEdit2->setEnabled(false); + GroupPoints->LineEdit4->setEnabled(false); + + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + } + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + // enable line edit + myEditCurrentArgument->setEnabled(true); myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); -} + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); +} //================================================================================= // function : LineEditReturnPressed() @@ -365,15 +438,13 @@ void TransformationGUI_RotationDlg::SetEditCurrentArgument() void TransformationGUI_RotationDlg::LineEditReturnPressed() { QLineEdit* send = (QLineEdit*)sender(); - if(send == GroupPoints->LineEdit1 || - send == GroupPoints->LineEdit2) - { - myEditCurrentArgument = send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } + if (send == GroupPoints->LineEdit1 || + send == GroupPoints->LineEdit2) { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } } - //================================================================================= // function : ActivateThisDialog() // purpose : @@ -381,23 +452,31 @@ void TransformationGUI_RotationDlg::LineEditReturnPressed() void TransformationGUI_RotationDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); ConstructorsClicked( getConstructorId() ); } - //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void TransformationGUI_RotationDlg::enterEvent(QEvent* e) +void TransformationGUI_RotationDlg::enterEvent (QEvent*) { - if (!GroupConstructors->isEnabled()) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } +void TransformationGUI_RotationDlg::TextValueChangedInSpinBox( const QString& s) +{ + bool isDigit = true; + s.toDouble(&isDigit); + if(!isDigit) { + GroupPoints->CheckButton2->setChecked(false); + } + GroupPoints->CheckButton2->setEnabled(isDigit); +} //================================================================================= // function : ValueChangedInSpinBox() @@ -408,152 +487,168 @@ void TransformationGUI_RotationDlg::ValueChangedInSpinBox() displayPreview(); } - //================================================================================= // function : createOperation // purpose : //================================================================================= GEOM::GEOM_IOperations_ptr TransformationGUI_RotationDlg::createOperation() { - return getGeomEngine()->GetITransformOperations( getStudyId() ); + return getGeomEngine()->GetITransformOperations(getStudyId()); } - //================================================================================= // function : isValid // purpose : //================================================================================= -bool TransformationGUI_RotationDlg::isValid( QString& msg ) +bool TransformationGUI_RotationDlg::isValid (QString& msg) { - switch (getConstructorId()) - { - case 0: - { - return !(myObjects.length() == 0 || myAxis->_is_nil()); - break; - } - case 1: - { - return !(myObjects.length() == 0 || myCentPoint->_is_nil() || myPoint1->_is_nil() || myPoint2->_is_nil() ); - break; - } - default: return false; - } + switch (getConstructorId()) { + case 0: { + bool ok = GroupPoints->SpinBox_DX->isValid( msg, !IsPreview() ); + return myObjects.length() > 0 && !(myAxis->_is_nil()) && ok; + break; + } + case 1: + return myObjects.length() > 0 && !(myCentPoint->_is_nil() || myPoint1->_is_nil() || myPoint2->_is_nil()); + break; + default: + break; + } + return false; } - //================================================================================= // function : execute // purpose : //================================================================================= -bool TransformationGUI_RotationDlg::execute( ObjectList& objects ) +bool TransformationGUI_RotationDlg::execute (ObjectList& objects) { bool res = false; bool toCreateCopy = IsPreview() || GroupPoints->CheckButton1->isChecked(); GEOM::GEOM_Object_var anObj; - switch ( getConstructorId() ) + switch (getConstructorId()) { + case 0: { - case 0 : - { - if (toCreateCopy) - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )-> - RotateCopy( myObjects[i], myAxis, GetAngle() * PI180 ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - else - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )-> - Rotate( myObjects[i], myAxis, GetAngle() * PI180 ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - res = true; - break; + QStringList aParameters; + aParameters<SpinBox_DX->text(); + if (toCreateCopy) { + for (int i = 0; i < myObjects.length(); i++) { + myCurrObject = myObjects[i]; + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + RotateCopy(myObjects[i], myAxis, GetAngle() * PI180); + if (!anObj->_is_nil()) { + if(!IsPreview()) { + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } + objects.push_back(anObj._retn()); + } + } } - case 1 : - { - if (toCreateCopy) - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )-> - RotateThreePointsCopy( myObjects[i], myCentPoint, myPoint1, myPoint2 ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); + else { + for (int i = 0; i < myObjects.length(); i++) { + myCurrObject = myObjects[i]; + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + Rotate(myObjects[i], myAxis, GetAngle() * PI180); + if (!anObj->_is_nil()) { + if(!IsPreview()) { + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + updateAttributes(anObj, aParameters); } - else - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )-> - RotateThreePoints( myObjects[i], myCentPoint, myPoint1, myPoint2 ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - res = true; - break; + objects.push_back(anObj._retn()); + } + } } + res = true; + break; } + case 1: + { + if (toCreateCopy) { + for (int i = 0; i < myObjects.length(); i++) { + myCurrObject = myObjects[i]; + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + RotateThreePointsCopy(myObjects[i], myCentPoint, myPoint1, myPoint2); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + } + } + else { + for (int i = 0; i < myObjects.length(); i++) { + myCurrObject = myObjects[i]; + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + RotateThreePoints(myObjects[i], myCentPoint, myPoint1, myPoint2); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + } + } + res = true; + break; + } + } return res; } - //================================================================================= -// function : closeEvent +// function : restoreSubShapes // purpose : //================================================================================= -void TransformationGUI_RotationDlg::closeEvent( QCloseEvent* e ) +void TransformationGUI_RotationDlg::restoreSubShapes (SALOMEDS::Study_ptr theStudy, + SALOMEDS::SObject_ptr theSObject) { - GEOMBase_Skeleton::closeEvent( e ); + if (mainFrame()->CheckBoxRestoreSS->isChecked()) { + // we pass here the first operation argument (object) through the list of arguments + // because the rotation operation place its arguments in the data structure in another order, + // and we need to point the first argument directly + GEOM::ListOfGO_var anArgs = new GEOM::ListOfGO; + anArgs->length(1); + anArgs[0] = myCurrObject; + getGeomEngine()->RestoreSubShapesSO(theStudy, theSObject, anArgs, + /*theFindMethod=*/GEOM::FSM_Transformed, + /*theInheritFirstArg=*/true); + } } - //================================================================================= // function : GetAngle() // purpose : //================================================================================= double TransformationGUI_RotationDlg::GetAngle() const { - return GroupPoints->SpinBox_DX->GetValue(); + return GroupPoints->SpinBox_DX->value(); } - //================================================================================= // function : CreateCopyModeChanged() // purpose : //================================================================================= -void TransformationGUI_RotationDlg::CreateCopyModeChanged(bool isCreateCopy) +void TransformationGUI_RotationDlg::CreateCopyModeChanged (bool isCreateCopy) { - this->GroupBoxName->setEnabled(isCreateCopy); + mainFrame()->GroupBoxName->setEnabled(isCreateCopy); } - //================================================================================= // function : onReverse() // purpose : //================================================================================= void TransformationGUI_RotationDlg::onReverse() { - double anOldValue = GroupPoints->SpinBox_DX->GetValue(); - GroupPoints->SpinBox_DX->SetValue( -anOldValue ); + double anOldValue = GroupPoints->SpinBox_DX->value(); + GroupPoints->SpinBox_DX->setValue(-anOldValue); } //================================================================================= -// function : addSubshapeToStudy +// function : addSubshapesToStudy // purpose : virtual method to add new SubObjects if local selection //================================================================================= void TransformationGUI_RotationDlg::addSubshapesToStudy() { bool toCreateCopy = IsPreview() || GroupPoints->CheckButton1->isChecked(); if (toCreateCopy) { - QMap objMap; - switch (getConstructorId()) - { + QMap objMap; + switch (getConstructorId()) { case 0: objMap[GroupPoints->LineEdit2->text()] = myAxis; break; @@ -563,6 +658,6 @@ void TransformationGUI_RotationDlg::addSubshapesToStudy() objMap[GroupPoints->LineEdit5->text()] = myPoint2; break; } - addSubshapesToFather( objMap ); + addSubshapesToFather(objMap); } } diff --git a/src/TransformationGUI/TransformationGUI_RotationDlg.h b/src/TransformationGUI/TransformationGUI_RotationDlg.h index 4ea6ea9e5..9b774f704 100644 --- a/src/TransformationGUI/TransformationGUI_RotationDlg.h +++ b/src/TransformationGUI/TransformationGUI_RotationDlg.h @@ -1,35 +1,34 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : TransformationGUI_RotationDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI_RotationDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef TRANSFORMATIONGUI_ROTATIONDLG_H +#define TRANSFORMATIONGUI_ROTATIONDLG_H -#ifndef DIALOGBOX_ROTATION_H -#define DIALOGBOX_ROTATION_H +#include -#include "GEOMBase_Skeleton.h" -#include "DlgRef_4Sel1Spin2Check.h" +class DlgRef_4Sel1Spin2Check; //================================================================================= // class : TransformationGUI_RotationDlg @@ -37,42 +36,48 @@ //================================================================================= class TransformationGUI_RotationDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - TransformationGUI_RotationDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~TransformationGUI_RotationDlg(); + TransformationGUI_RotationDlg( GeometryGUI*, QWidget* = 0, + bool = false, Qt::WindowFlags = 0 ); + ~TransformationGUI_RotationDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); - virtual void closeEvent( QCloseEvent* e ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); + virtual void restoreSubShapes( SALOMEDS::Study_ptr, SALOMEDS::SObject_ptr ); private: - void Init(); - void enterEvent(QEvent* e); - double GetAngle() const; + void Init(); + void enterEvent( QEvent* ); + double GetAngle() const; + +private: + GEOM::ListOfGO myObjects; + GEOM::GEOM_Object_var myCurrObject; + GEOM::GEOM_Object_var myAxis, myCentPoint, myPoint1, myPoint2; + + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; - GEOM::ListOfGO myObjects; - GEOM::GEOM_Object_var myAxis, myCentPoint, myPoint1, myPoint2; - - DlgRef_4Sel1Spin2Check* GroupPoints; + DlgRef_4Sel1Spin2Check* GroupPoints; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ValueChangedInSpinBox(); - void CreateCopyModeChanged(bool isCreateCopy); - void ConstructorsClicked(int constructorId); - void onReverse(); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ValueChangedInSpinBox(); + void TextValueChangedInSpinBox( const QString& ); + void CreateCopyModeChanged( bool ); + void ConstructorsClicked( int ); + void onReverse(); }; -#endif // DIALOGBOX_ROTATION_H +#endif // TRANSFORMATIONGUI_ROTATIONDLG_H diff --git a/src/TransformationGUI/TransformationGUI_ScaleDlg.cxx b/src/TransformationGUI/TransformationGUI_ScaleDlg.cxx index 7a992b2ae..32daa0cb5 100644 --- a/src/TransformationGUI/TransformationGUI_ScaleDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_ScaleDlg.cxx @@ -1,52 +1,48 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI_ScaleDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : TransformationGUI_ScaleDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "TransformationGUI_ScaleDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include +#include +#include +#include +#include + +// OCCT Includes #include #include #include #include #include -#include -#include - -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" - -using namespace std; +#include //================================================================================= // class : TransformationGUI_ScaleDlg() @@ -55,96 +51,190 @@ using namespace std; // The dialog will by default be modeless, unless you set 'modal' to // TRUE to construct a modal dialog. //================================================================================= -TransformationGUI_ScaleDlg::TransformationGUI_ScaleDlg(GeometryGUI* theGeometryGUI, QWidget* parent, - const char* name, bool modal, WFlags fl) - :GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +TransformationGUI_ScaleDlg::TransformationGUI_ScaleDlg (GeometryGUI* theGeometryGUI, QWidget* parent, + bool modal, Qt::WindowFlags fl) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl), + myInitial(true) { - QPixmap image0(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_DLG_SCALE"))); - QPixmap image1(SUIT_Session::session()->resourceMgr()->loadPixmap("GEOM",tr("ICON_SELECT"))); + SUIT_ResourceMgr* aResMgr = myGeomGUI->getApp()->resourceMgr(); + QPixmap image1 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_SCALE"))); + QPixmap image2 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_SCALE_ALONG_AXES"))); + QPixmap image3 (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_SCALE_TITLE")); + setWindowTitle(tr("GEOM_SCALE_TITLE")); - /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_SCALE")); - RadioButton1->setPixmap(image0); - RadioButton2->close(TRUE); - RadioButton3->close(TRUE); + // Constructors + mainFrame()->GroupConstructors->setTitle(tr("GEOM_SCALE")); + mainFrame()->RadioButton1->setIcon(image1); + mainFrame()->RadioButton2->setIcon(image2); + mainFrame()->RadioButton3->setAttribute(Qt::WA_DeleteOnClose); + mainFrame()->RadioButton3->close(); - GroupPoints = new DlgRef_2Sel1Spin2Check(this, "GroupPoints"); - GroupPoints->CheckButton2->hide(); - GroupPoints->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); - GroupPoints->TextLabel1->setText(tr("GEOM_OBJECTS")); - GroupPoints->TextLabel2->setText(tr("GEOM_CENTRAL_POINT")); - GroupPoints->TextLabel3->setText(tr("GEOM_SCALE_FACTOR")); - GroupPoints->LineEdit1->setReadOnly( true ); - GroupPoints->LineEdit2->setReadOnly( true ); - GroupPoints->PushButton1->setPixmap(image1); - GroupPoints->PushButton2->setPixmap(image1); - GroupPoints->CheckButton1->setText(tr("GEOM_CREATE_COPY")); + // Own widgets + GroupBox1 = new QGroupBox(tr("GEOM_ARGUMENTS"), this); + QGridLayout* OwnLayout = new QGridLayout(GroupBox1); + OwnLayout->setSpacing(6); + OwnLayout->setMargin(11); - // san -- modification of an exisitng object by offset is not allowed - GroupPoints->CheckButton1->hide(); + TextLabel1 = new QLabel(tr("GEOM_OBJECTS"), GroupBox1); + PushButton1 = new QPushButton(GroupBox1); + PushButton1->setIcon(image3); + PushButton1->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed)); + LineEdit1 = new QLineEdit(GroupBox1); + LineEdit1->setReadOnly(true); + LineEdit1->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed)); - Layout1->addWidget(GroupPoints, 2, 0); - /***************************************************************/ - double aFactor = 2.0; - double SpecificStep = 0.5; - /* min, max, step and decimals for spin boxes & initial values */ - GroupPoints->SpinBox_DX->RangeStepAndValidator(COORD_MIN, COORD_MAX, SpecificStep, DBL_DIGITS_DISPLAY); - GroupPoints->SpinBox_DX->SetValue(aFactor); + TextLabel2 = new QLabel(tr("GEOM_CENTRAL_POINT"), GroupBox1); + PushButton2 = new QPushButton(GroupBox1); + PushButton2->setIcon(image3); + PushButton2->setSizePolicy(QSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed)); + LineEdit2 = new QLineEdit(GroupBox1); + LineEdit2->setReadOnly(true); + LineEdit2->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed)); - // Activate Create a Copy mode - GroupPoints->CheckButton1->setChecked(true); - CreateCopyModeChanged(true); + TextLabel3 = new QLabel(tr("GEOM_SCALE_FACTOR"), GroupBox1); + SpinBox_FX = new SalomeApp_DoubleSpinBox(GroupBox1); - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); + TextLabel4 = new QLabel(tr("GEOM_SCALE_FACTOR_Y"), GroupBox1); + SpinBox_FY = new SalomeApp_DoubleSpinBox(GroupBox1); - connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); - connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + TextLabel5 = new QLabel(tr("GEOM_SCALE_FACTOR_Z"), GroupBox1); + SpinBox_FZ = new SalomeApp_DoubleSpinBox(GroupBox1); - connect(GroupPoints->LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); - connect(GroupPoints->LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + CheckBoxCopy = new QCheckBox(tr("GEOM_CREATE_COPY"), GroupBox1); + CheckBoxCopy->setChecked(true); - connect(GroupPoints->SpinBox_DX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox_DX, SLOT(SetStep(double))); - connect(GroupPoints->CheckButton1, SIGNAL(toggled(bool)), this, SLOT(CreateCopyModeChanged(bool))); + // Layouting + OwnLayout->addWidget(TextLabel1, 0, 0); + OwnLayout->addWidget(PushButton1, 0, 1); + OwnLayout->addWidget(LineEdit1, 0, 2, 1, 2); + OwnLayout->addWidget(TextLabel2, 1, 0); + OwnLayout->addWidget(PushButton2, 1, 1); + OwnLayout->addWidget(LineEdit2, 1, 2, 1, 2); + OwnLayout->addWidget(TextLabel3, 2, 0); + OwnLayout->addWidget(SpinBox_FX, 2, 2); + OwnLayout->addWidget(TextLabel4, 3, 0); + OwnLayout->addWidget(SpinBox_FY, 3, 2); + OwnLayout->addWidget(TextLabel5, 4, 0); + OwnLayout->addWidget(SpinBox_FZ, 4, 2); + OwnLayout->addWidget(CheckBoxCopy, 5, 0, 1, 4); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())) ; + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupBox1); setHelpFileName("scale_operation_page.html"); + // Modification of an existing object by offset is not allowed + CheckBoxCopy->hide(); + + // Activate Create a Copy mode + CreateCopyModeChanged(true); + + // Allowed inheritance of children and visual properties by the scaling result + mainFrame()->GroupBoxPublish->show(); + Init(); } - //================================================================================= // function : ~TransformationGUI_ScaleDlg() // purpose : Destroys the object and frees any allocated resources //================================================================================= TransformationGUI_ScaleDlg::~TransformationGUI_ScaleDlg() { - /* no need to delete child widgets, Qt does it all for us */ } - //================================================================================= // function : Init() // purpose : //================================================================================= void TransformationGUI_ScaleDlg::Init() { - myEditCurrentArgument = GroupPoints->LineEdit1; - GroupPoints->LineEdit2->clear(); + // Min, max, step and decimals for spin boxes & initial values + double aFactor = 2.0; + double SpecificStep = 0.5; + + initSpinBox(SpinBox_FX, COORD_MIN, COORD_MAX, SpecificStep, DBL_DIGITS_DISPLAY); + initSpinBox(SpinBox_FY, COORD_MIN, COORD_MAX, SpecificStep, DBL_DIGITS_DISPLAY); + initSpinBox(SpinBox_FZ, COORD_MIN, COORD_MAX, SpecificStep, DBL_DIGITS_DISPLAY); + SpinBox_FX->setValue(aFactor); + SpinBox_FY->setValue(aFactor); + SpinBox_FZ->setValue(aFactor); + + // init variables + LineEdit1->setText(""); + LineEdit2->setText(""); myPoint = GEOM::GEOM_Object::_nil(); - initName( tr( "GEOM_SCALE" ) ); + // Signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); + + connect(PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + connect(PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); + + connect(LineEdit1, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + connect(LineEdit2, SIGNAL(returnPressed()), this, SLOT(LineEditReturnPressed())); + + connect(SpinBox_FX, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + connect(SpinBox_FY, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + connect(SpinBox_FZ, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); + + connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), this, SLOT(SetDoubleSpinBoxStep(double))); + + connect(CheckBoxCopy, SIGNAL(toggled(bool)), this, SLOT(CreateCopyModeChanged(bool))); + + initName(tr("GEOM_SCALE")); + + ConstructorsClicked(0); } +//================================================================================= +// function : ConstructorsClicked() +// purpose : Radio button management +//================================================================================= +void TransformationGUI_ScaleDlg::ConstructorsClicked (int constructorId) +{ + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + + switch (constructorId) { + case 0: // translation an object by dx, dy, dz + TextLabel3->setText(tr("GEOM_SCALE_FACTOR")); + TextLabel4->hide(); + TextLabel5->hide(); + SpinBox_FY->hide(); + SpinBox_FZ->hide(); + + PushButton1->click(); + break; + case 1: // translation an object by 2 points + TextLabel3->setText(tr("GEOM_SCALE_FACTOR_X")); + TextLabel4->show(); + TextLabel5->show(); + SpinBox_FY->show(); + SpinBox_FZ->show(); + + PushButton1->click(); + break; + default: + break; + } + + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); + + if (myInitial) { + myInitial = false; + SelectionIntoArgument(); + } + else { + displayPreview(); + } +} //================================================================================= // function : ClickOnOk() @@ -152,116 +242,116 @@ void TransformationGUI_ScaleDlg::Init() //================================================================================= void TransformationGUI_ScaleDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool TransformationGUI_ScaleDlg::ClickOnApply() { - if ( !onAccept(GroupPoints->CheckButton1->isChecked()) ) + if (!onAccept(CheckBoxCopy->isChecked())) return false; - Init(); + initName(tr("GEOM_SCALE")); + // activate selection and connect selection manager + ConstructorsClicked(getConstructorId()); return true; } - //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection as changed or other case +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void TransformationGUI_ScaleDlg::SelectionIntoArgument() { + erasePreview(); myEditCurrentArgument->setText(""); + + if (myEditCurrentArgument == LineEdit1) + myObjects.length(0); + else if (myEditCurrentArgument == LineEdit2) + myPoint = GEOM::GEOM_Object::_nil(); + + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + QString aName; - if(myEditCurrentArgument == GroupPoints->LineEdit1) + if (myEditCurrentArgument == LineEdit1) + { + int aNbSel = GEOMBase::GetNameOfSelectedIObjects(aSelList, aName); + if (aNbSel < 1) + return; + + GEOMBase::ConvertListOfIOInListOfGO(aSelList, myObjects); + if (!myObjects.length()) + return; + else + myEditCurrentArgument->setText(aName); + } + else if (myEditCurrentArgument == LineEdit2) + { + GEOM::GEOM_Object_var aSelectedObject = GEOM::GEOM_Object::_nil(); + if (aSelList.Extent() == 1) { - int aNbSel = GEOMBase::GetNameOfSelectedIObjects(selectedIO(), aName); - if(aNbSel < 1) - { - myObjects.length(0); - return; - } - GEOMBase::ConvertListOfIOInListOfGO(selectedIO(), myObjects); - if (!myObjects.length()) - return; - } - else if(myEditCurrentArgument == GroupPoints->LineEdit2) - { - if(IObjectCount() != 1) - { - myPoint = GEOM::GEOM_Object::_nil(); - return; - } Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult ); - aName = GEOMBase::GetName( aSelectedObject ); - - TopoDS_Shape aShape; - if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) - { - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); - TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes( firstIObject(), aMap ); - if ( aMap.Extent() == 1 ) - { - int anIndex = aMap( 1 ); - aName += QString(":vertex_%1").arg(anIndex); + aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + if (testResult) + { + aName = GEOMBase::GetName(aSelectedObject); - //Find SubShape Object in Father - GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aSelectedObject, aName); - - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = - getGeomEngine()->GetIShapesOperations( getStudyId() ); - aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); - aSelMgr->clearSelected(); - } - else - aSelectedObject = aFindedObject; // get Object from study - } - else { - if (aShape.ShapeType() != TopAbs_VERTEX) { - aSelectedObject = GEOM::GEOM_Object::_nil(); - aName = ""; - } - } - } + TopoDS_Shape aShape; + if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) + { + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) + { + int anIndex = aMap(1); + aName += QString(":vertex_%1").arg(anIndex); - myPoint = aSelectedObject; - - if(!testResult || CORBA::is_nil( myPoint )) - return; + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aSelectedObject, aName); + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = + getGeomEngine()->GetIShapesOperations(getStudyId()); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + } + else + aSelectedObject = aFindedObject; // get Object from study + } + else // Global Selection + { + if (aShape.ShapeType() != TopAbs_VERTEX) { + aSelectedObject = GEOM::GEOM_Object::_nil(); + aName = ""; + } + } + } + } } - myEditCurrentArgument->setText( aName ); + + myPoint = aSelectedObject; + myEditCurrentArgument->setText(aName); + + if (!myPoint->_is_nil() && !myObjects.length()) + PushButton1->click(); + } + + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); displayPreview(); } - -//================================================================================= -// function : LineEditReturnPressed() -// purpose : -//================================================================================= -void TransformationGUI_ScaleDlg::LineEditReturnPressed() -{ - QLineEdit* send = (QLineEdit*)sender(); - if(send == GroupPoints->LineEdit1 || - send == GroupPoints->LineEdit2) - { - myEditCurrentArgument = send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } -} - - //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -269,20 +359,50 @@ void TransformationGUI_ScaleDlg::LineEditReturnPressed() void TransformationGUI_ScaleDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); + + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); globalSelection(); - if(send == GroupPoints->PushButton1) { - myEditCurrentArgument = GroupPoints->LineEdit1; - } - else if(send == GroupPoints->PushButton2) { - myEditCurrentArgument = GroupPoints->LineEdit2; - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); - } + if (send == PushButton1) { + myEditCurrentArgument = LineEdit1; + PushButton2->setDown(false); + LineEdit2->setEnabled(false); + } + else if (send == PushButton2) { + myEditCurrentArgument = LineEdit2; + + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + + PushButton1->setDown(false); + LineEdit1->setEnabled(false); + } + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + // enable line edit + myEditCurrentArgument->setEnabled(true); myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); } +//================================================================================= +// function : LineEditReturnPressed() +// purpose : +//================================================================================= +void TransformationGUI_ScaleDlg::LineEditReturnPressed() +{ + QLineEdit* send = (QLineEdit*)sender(); + if (send == LineEdit1 || send == LineEdit2) + { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } +} //================================================================================= // function : ActivateThisDialog() @@ -291,25 +411,22 @@ void TransformationGUI_ScaleDlg::SetEditCurrentArgument() void TransformationGUI_ScaleDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); - globalSelection(); - GroupPoints->LineEdit1->setFocus(); - myEditCurrentArgument = GroupPoints->LineEdit1; -} + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); + ConstructorsClicked( getConstructorId() ); +} //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void TransformationGUI_ScaleDlg::enterEvent(QEvent* e) +void TransformationGUI_ScaleDlg::enterEvent (QEvent*) { - if( !GroupConstructors->isEnabled() ) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } - //================================================================================= // function : ValueChangedInSpinBox() // purpose : @@ -319,99 +436,165 @@ void TransformationGUI_ScaleDlg::ValueChangedInSpinBox() displayPreview(); } +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void TransformationGUI_ScaleDlg::SetDoubleSpinBoxStep(double step) +{ + SpinBox_FX->setSingleStep(step); + SpinBox_FY->setSingleStep(step); + SpinBox_FZ->setSingleStep(step); +} //================================================================================= // function : createOperation // purpose : //================================================================================= -GEOM::GEOM_IOperations_ptr TransformationGUI_ScaleDlg::createOperation() +GEOM::GEOM_IOperations_ptr TransformationGUI_ScaleDlg::createOperation() { - return myGeomGUI->GetGeomGen()->GetITransformOperations( getStudyId() ); + return getGeomEngine()->GetITransformOperations(getStudyId()); } //================================================================================= // function : isValid // purpose : //================================================================================= -bool TransformationGUI_ScaleDlg::isValid( QString& msg ) +bool TransformationGUI_ScaleDlg::isValid (QString& msg) { - return !(myObjects.length() == 0 || myPoint->_is_nil() || fabs(GetFactor()) <= 0.00001); -} + // && !myPoint->_is_nil() + if (getConstructorId() == 0) { + bool ok = SpinBox_FX->isValid( msg, !IsPreview() ); + return myObjects.length() > 0 && fabs(SpinBox_FX->value()) > 0.00001 && ok; + } + bool ok = true; + ok = SpinBox_FX->isValid( msg, !IsPreview() ) && ok; + ok = SpinBox_FY->isValid( msg, !IsPreview() ) && ok; + ok = SpinBox_FZ->isValid( msg, !IsPreview() ) && ok; + return myObjects.length() > 0 && + fabs(SpinBox_FX->value()) > 0.00001 && + fabs(SpinBox_FY->value()) > 0.00001 && + fabs(SpinBox_FZ->value()) > 0.00001 && ok; +} //================================================================================= // function : execute // purpose : //================================================================================= -bool TransformationGUI_ScaleDlg::execute( ObjectList& objects ) +bool TransformationGUI_ScaleDlg::execute (ObjectList& objects) { - bool res = false; + bool toCreateCopy = IsPreview() || CheckBoxCopy->isChecked(); GEOM::GEOM_Object_var anObj; - if (GroupPoints->CheckButton1->isChecked() || IsPreview()) - for (int i = 0; i < myObjects.length(); i++) + switch (getConstructorId()) + { + case 0: + { + if (toCreateCopy) { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )-> - ScaleShapeCopy( myObjects[i], myPoint, GetFactor() ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); + for (int i = 0; i < myObjects.length(); i++) + { + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + ScaleShapeCopy(myObjects[i], myPoint, SpinBox_FX->value()); + if (!anObj->_is_nil()) { + if(!IsPreview()) + anObj->SetParameters(SpinBox_FX->text().toLatin1().constData()); + objects.push_back(anObj._retn()); + } + } } - else - for (int i = 0; i < myObjects.length(); i++) + else { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )-> - ScaleShape( myObjects[i], myPoint, GetFactor() ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); + for (int i = 0; i < myObjects.length(); i++) + { + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + ScaleShape(myObjects[i], myPoint, SpinBox_FX->value()); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + } } - res = true; + } + break; + case 1: + { + if (toCreateCopy) + { + for (int i = 0; i < myObjects.length(); i++) + { + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + ScaleShapeAlongAxesCopy(myObjects[i], myPoint, SpinBox_FX->value(), + SpinBox_FY->value(), SpinBox_FZ->value()); + if (!anObj->_is_nil()) + if(!IsPreview()) { + QStringList aParameters; + aParameters<text(); + aParameters<text(); + aParameters<text(); + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + } + objects.push_back(anObj._retn()); + } + } + else + { + for (int i = 0; i < myObjects.length(); i++) + { + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + ScaleShapeAlongAxes(myObjects[i], myPoint, SpinBox_FX->value(), + SpinBox_FY->value(), SpinBox_FZ->value()); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + } + } + } + break; + default: + break; + } - return res; + return true; } - //================================================================================= -// function : closeEvent +// function : restoreSubShapes // purpose : //================================================================================= -void TransformationGUI_ScaleDlg::closeEvent( QCloseEvent* e ) +void TransformationGUI_ScaleDlg::restoreSubShapes (SALOMEDS::Study_ptr theStudy, + SALOMEDS::SObject_ptr theSObject) { - GEOMBase_Skeleton::closeEvent( e ); + if (mainFrame()->CheckBoxRestoreSS->isChecked()) { + // empty list of arguments means that all arguments should be restored + getGeomEngine()->RestoreSubShapesSO(theStudy, theSObject, GEOM::ListOfGO(), + /*theFindMethod=*/GEOM::FSM_Transformed, + /*theInheritFirstArg=*/true); + } } - -//================================================================================= -// function : GetFactor() -// purpose : -//================================================================================= -double TransformationGUI_ScaleDlg::GetFactor() const -{ - return GroupPoints->SpinBox_DX->GetValue(); -} - - //================================================================================= // function : CreateCopyModeChanged() // purpose : //================================================================================= -void TransformationGUI_ScaleDlg::CreateCopyModeChanged(bool isCreateCopy) +void TransformationGUI_ScaleDlg::CreateCopyModeChanged (bool isCreateCopy) { - this->GroupBoxName->setEnabled(isCreateCopy); + mainFrame()->GroupBoxName->setEnabled(isCreateCopy); } //================================================================================= -// function : addSubshapeToStudy +// function : addSubshapesToStudy // purpose : virtual method to add new SubObjects if local selection //================================================================================= void TransformationGUI_ScaleDlg::addSubshapesToStudy() { - bool toCreateCopy = IsPreview() || GroupPoints->CheckButton1->isChecked(); - if (toCreateCopy) { - QMap objMap; - - objMap[GroupPoints->LineEdit2->text()] = myPoint; - - addSubshapesToFather( objMap ); + bool toCreateCopy = IsPreview() || CheckBoxCopy->isChecked(); + if (toCreateCopy) + { + if (!myPoint->_is_nil()) + { + QMap objMap; + objMap[LineEdit2->text()] = myPoint; + addSubshapesToFather(objMap); + } } } diff --git a/src/TransformationGUI/TransformationGUI_ScaleDlg.h b/src/TransformationGUI/TransformationGUI_ScaleDlg.h index 7f77c6b42..0c22428d0 100644 --- a/src/TransformationGUI/TransformationGUI_ScaleDlg.h +++ b/src/TransformationGUI/TransformationGUI_ScaleDlg.h @@ -1,77 +1,98 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : TransformationGUI_ScaleDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI_ScaleDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef TRANSFORMATIONGUI_SCALEDLG_H +#define TRANSFORMATIONGUI_SCALEDLG_H -#ifndef DIALOGBOX_SCALE_H -#define DIALOGBOX_SCALE_H +#include + +class QCheckBox; +class QGroupBox; +class QLabel; +class QLineEdit; +class QPushButton; +class SalomeApp_DoubleSpinBox; -#include "GEOMBase_Skeleton.h" -#include "DlgRef_2Sel1Spin2Check.h" - - //================================================================================= // class : TransformationGUI_ScaleDlg // purpose : //================================================================================= class TransformationGUI_ScaleDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - TransformationGUI_ScaleDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~TransformationGUI_ScaleDlg(); + TransformationGUI_ScaleDlg( GeometryGUI*, QWidget* = 0, + bool = false, Qt::WindowFlags = 0 ); + ~TransformationGUI_ScaleDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); - virtual void closeEvent( QCloseEvent* e ); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); + virtual void restoreSubShapes( SALOMEDS::Study_ptr, SALOMEDS::SObject_ptr ); -private : - void Init(); - void enterEvent(QEvent* e); - double GetFactor() const; +private: + void Init(); + void enterEvent( QEvent* ); - GEOM::ListOfGO myObjects; - GEOM::GEOM_Object_var myPoint; /* Central Point */ +private: + GEOM::ListOfGO myObjects; + GEOM::GEOM_Object_var myPoint; /* Central Point */ + + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; - DlgRef_2Sel1Spin2Check* GroupPoints; + QGroupBox* GroupBox1; + QLabel* TextLabel1; + QLabel* TextLabel2; + QPushButton* PushButton1; + QPushButton* PushButton2; + QLineEdit* LineEdit1; + QLineEdit* LineEdit2; + QLabel* TextLabel3; + QLabel* TextLabel4; + QLabel* TextLabel5; + SalomeApp_DoubleSpinBox* SpinBox_FX; + SalomeApp_DoubleSpinBox* SpinBox_FY; + SalomeApp_DoubleSpinBox* SpinBox_FZ; + QCheckBox* CheckBoxCopy; private slots: - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ValueChangedInSpinBox(); - void CreateCopyModeChanged(bool isCreateCopy); + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ConstructorsClicked( int ); + void ValueChangedInSpinBox(); + void CreateCopyModeChanged( bool ); + void SetDoubleSpinBoxStep( double ); }; -#endif // DIALOGBOX_SCALE_H +#endif // TRANSFORMATIONGUI_SCALEDLG_H diff --git a/src/TransformationGUI/TransformationGUI_TranslationDlg.cxx b/src/TransformationGUI/TransformationGUI_TranslationDlg.cxx index e5f0f183a..bdbd96a7c 100644 --- a/src/TransformationGUI/TransformationGUI_TranslationDlg.cxx +++ b/src/TransformationGUI/TransformationGUI_TranslationDlg.cxx @@ -1,38 +1,40 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI_TranslationDlg.cxx +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. // -// File : TransformationGUI_TranslationDlg.cxx -// Author : Lucien PIGNOLONI -// Module : GEOM -// $Header$ - #include "TransformationGUI_TranslationDlg.h" -#include "SUIT_Desktop.h" -#include "SUIT_Session.h" -#include "SalomeApp_Application.h" -#include "LightApp_SelectionMgr.h" +#include +#include +#include +#include +#include +#include +#include + +// OCCT Includes #include #include #include @@ -40,14 +42,7 @@ #include #include -#include -#include - -#include "GEOMImpl_Types.hxx" - -#include "utilities.h" - -using namespace std; +#include //================================================================================= // class : TransformationGUI_TranslationDlg() @@ -57,9 +52,9 @@ using namespace std; // TRUE to construct a modal dialog. //================================================================================= TransformationGUI_TranslationDlg::TransformationGUI_TranslationDlg - (GeometryGUI* theGeometryGUI, QWidget* parent, const char* name, bool modal, WFlags fl) - : GEOMBase_Skeleton(theGeometryGUI, parent, name, modal, WStyle_Customize | - WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu) +(GeometryGUI* theGeometryGUI, QWidget* parent, bool modal, Qt::WindowFlags fl) + : GEOMBase_Skeleton(theGeometryGUI, parent, modal, fl), + myInitial(true) { SUIT_ResourceMgr* aResMgr = myGeomGUI->getApp()->resourceMgr(); QPixmap image0 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_TRANSLATION_DXYZ"))); @@ -67,37 +62,42 @@ TransformationGUI_TranslationDlg::TransformationGUI_TranslationDlg QPixmap image2 (aResMgr->loadPixmap("GEOM", tr("ICON_DLG_TRANSLATION_VECTOR"))); QPixmap image3 (aResMgr->loadPixmap("GEOM", tr("ICON_SELECT"))); - setCaption(tr("GEOM_TRANSLATION_TITLE")); + setWindowTitle(tr("GEOM_TRANSLATION_TITLE")); /***************************************************************/ - GroupConstructors->setTitle(tr("GEOM_TRANSLATION")); - RadioButton1->setPixmap(image0); - RadioButton2->setPixmap(image1); - RadioButton3->setPixmap(image2); + mainFrame()->GroupConstructors->setTitle(tr("GEOM_TRANSLATION")); + mainFrame()->RadioButton1->setIcon(image0); + mainFrame()->RadioButton2->setIcon(image1); + mainFrame()->RadioButton3->setIcon(image2); + mainFrame()->RadioButton1->setChecked(true); - RadioButton1->setChecked(true); - - GroupPoints = new DlgRef_3Sel3Spin1Check(this, "GroupPoints"); + GroupPoints = new DlgRef_3Sel3Spin2Check(centralWidget()); GroupPoints->GroupBox1->setTitle(tr("GEOM_ARGUMENTS")); GroupPoints->TextLabel1->setText(tr("GEOM_OBJECTS")); - GroupPoints->TextLabel3->setText(tr("GEOM_POINT_I").arg("2")); + GroupPoints->TextLabel3->setText(tr("GEOM_POINT_I").arg(2)); GroupPoints->TextLabel4->setText(tr("GEOM_DX")); GroupPoints->TextLabel5->setText(tr("GEOM_DY")); GroupPoints->TextLabel6->setText(tr("GEOM_DZ")); - GroupPoints->PushButton1->setPixmap(image3); - GroupPoints->PushButton2->setPixmap(image3); - GroupPoints->PushButton3->setPixmap(image3); - GroupPoints->CheckBox1->setText(tr("GEOM_CREATE_COPY")); + GroupPoints->PushButton1->setIcon(image3); + GroupPoints->PushButton2->setIcon(image3); + GroupPoints->PushButton3->setIcon(image3); + GroupPoints->CheckBox1->setText(tr("Activate Distance")); + GroupPoints->CheckBox2->setText(tr("GEOM_CREATE_COPY")); - Layout1->addWidget(GroupPoints, 2, 0); + QVBoxLayout* layout = new QVBoxLayout(centralWidget()); + layout->setMargin(0); layout->setSpacing(6); + layout->addWidget(GroupPoints); /***************************************************************/ setHelpFileName("translation_operation_page.html"); + // Activate Create a Copy mode + GroupPoints->CheckBox2->setChecked(true); + CreateCopyModeChanged(true); + Init(); } - //================================================================================= // function : ~TransformationGUI_TranslationDlg() // purpose : Destroys the object and frees any allocated resources @@ -107,42 +107,43 @@ TransformationGUI_TranslationDlg::~TransformationGUI_TranslationDlg() // no need to delete child widgets, Qt does it all for us } - //================================================================================= // function : Init() // purpose : //================================================================================= void TransformationGUI_TranslationDlg::Init() { - /* init variables */ - myEditCurrentArgument = GroupPoints->LineEdit1; + // Get setting of step value from file configuration + SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); + double step = resMgr->doubleValue("Geometry", "SettingsGeomStep", 100); + + // min, max, step and decimals for spin boxes & initial values + initSpinBox(GroupPoints->SpinBox1, COORD_MIN, COORD_MAX, step, 3); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints->SpinBox2, COORD_MIN, COORD_MAX, step, 3); // VSR: TODO: DBL_DIGITS_DISPLAY + initSpinBox(GroupPoints->SpinBox3, COORD_MIN, COORD_MAX, step, 3); // VSR: TODO: DBL_DIGITS_DISPLAY + + GroupPoints->SpinBox1->setValue(0.0); + GroupPoints->SpinBox2->setValue(0.0); + GroupPoints->SpinBox3->setValue(0.0); + + // init variables GroupPoints->LineEdit1->setReadOnly(true); GroupPoints->LineEdit2->setReadOnly(true); GroupPoints->LineEdit3->setReadOnly(true); + GroupPoints->LineEdit1->setText(""); + GroupPoints->LineEdit2->setText(""); + GroupPoints->LineEdit3->setText(""); + myVector = myPoint1 = myPoint2 = GEOM::GEOM_Object::_nil(); - // Activate Create a Copy mode - GroupPoints->CheckBox1->setChecked(true); - CreateCopyModeChanged(true); + mainFrame()->GroupBoxPublish->show(); - /* Get setting of step value from file configuration */ - SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr(); - double step = resMgr->doubleValue( "Geometry", "SettingsGeomStep", 100); + // signals and slots connections + connect(buttonOk(), SIGNAL(clicked()), this, SLOT(ClickOnOk())); + connect(buttonApply(), SIGNAL(clicked()), this, SLOT(ClickOnApply())); - /* min, max, step and decimals for spin boxes & initial values */ - GroupPoints->SpinBox1->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupPoints->SpinBox2->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - GroupPoints->SpinBox3->RangeStepAndValidator(COORD_MIN, COORD_MAX, step, DBL_DIGITS_DISPLAY); - - GroupPoints->SpinBox1->SetValue(0.0); - GroupPoints->SpinBox2->SetValue(0.0); - GroupPoints->SpinBox3->SetValue(0.0); - - /* signals and slots connections */ - connect(buttonOk, SIGNAL(clicked()), this, SLOT(ClickOnOk())); - connect(buttonApply, SIGNAL(clicked()), this, SLOT(ClickOnApply())); - connect(GroupConstructors, SIGNAL(clicked(int)), SLOT(ConstructorsClicked(int))); + connect(this, SIGNAL(constructorsClicked(int)), this, SLOT(ConstructorsClicked(int))); connect(GroupPoints->PushButton1, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); connect(GroupPoints->PushButton2, SIGNAL(clicked()), this, SLOT(SetEditCurrentArgument())); @@ -154,201 +155,255 @@ void TransformationGUI_TranslationDlg::Init() connect(GroupPoints->SpinBox2, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); connect(GroupPoints->SpinBox3, SIGNAL(valueChanged(double)), this, SLOT(ValueChangedInSpinBox())); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox1, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox2, SLOT(SetStep(double))); - connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), GroupPoints->SpinBox3, SLOT(SetStep(double))); + connect(myGeomGUI, SIGNAL(SignalDefaultStepValueChanged(double)), this, SLOT(SetDoubleSpinBoxStep(double))); - connect(GroupPoints->CheckBox1, SIGNAL(toggled(bool)), this, SLOT(CreateCopyModeChanged(bool))); + connect(GroupPoints->CheckBox1, SIGNAL(toggled(bool)), this, SLOT(ActivateDistanceChanged(bool))); + connect(GroupPoints->CheckBox2, SIGNAL(toggled(bool)), this, SLOT(CreateCopyModeChanged(bool))); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + initName(tr("GEOM_TRANSLATION")); - initName( tr( "GEOM_TRANSLATION" ) ); - ConstructorsClicked( 0 ); + ConstructorsClicked(0); } +//================================================================================= +// function : SetDoubleSpinBoxStep() +// purpose : Double spin box management +//================================================================================= +void TransformationGUI_TranslationDlg::SetDoubleSpinBoxStep (double step) +{ + GroupPoints->SpinBox1->setSingleStep(step); + GroupPoints->SpinBox2->setSingleStep(step); + GroupPoints->SpinBox3->setSingleStep(step); +} //================================================================================= // function : ConstructorsClicked() // purpose : Radio button management //================================================================================= -void TransformationGUI_TranslationDlg::ConstructorsClicked(int constructorId) +void TransformationGUI_TranslationDlg::ConstructorsClicked (int constructorId) { - erasePreview(); disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); - myEditCurrentArgument = GroupPoints->LineEdit1; - globalSelection(); - - switch (constructorId) + switch (constructorId) { + case 0: // translation an object by dx, dy, dz { - case 0: /* translation an object by dx, dy, dz */ - { - GroupPoints->ShowRows(1,2,false); - resize(0,0); - GroupPoints->ShowRows(3,5,true); - break; - } - case 1: /* translation an object by 2 points */ - { - GroupPoints->ShowRows(3,5,false); - resize(0,0); - GroupPoints->ShowRows(0,2,true); - GroupPoints->TextLabel2->setText(tr("GEOM_POINT_I").arg("1")); - GroupPoints->LineEdit2->clear(); - GroupPoints->LineEdit3->clear(); - myPoint1 = myPoint2 = GEOM::GEOM_Object::_nil(); - break; - } - case 2: /* translation an object by vector */ - { - GroupPoints->ShowRows(2,5,false); - resize(0,0); - GroupPoints->ShowRows(0,1,true); - GroupPoints->TextLabel2->setText(tr("GEOM_VECTOR")); - GroupPoints->LineEdit2->clear(); - myVector = GEOM::GEOM_Object::_nil(); - break; - } + GroupPoints->ShowRows(1, 2, false); + GroupPoints->ShowRows(3, 5, true); + + GroupPoints->TextLabel6->setText(tr("GEOM_DZ")); + GroupPoints->SpinBox3->setEnabled(true); + + GroupPoints->CheckBox1->hide(); + + GroupPoints->PushButton1->click(); } + break; + case 1: // translation an object by 2 points + { + GroupPoints->ShowRows(3, 5, false); + GroupPoints->ShowRows(0, 2, true); - myEditCurrentArgument->setFocus(); - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + GroupPoints->TextLabel6->setText(tr("GEOM_DZ")); + GroupPoints->TextLabel2->setText(tr("GEOM_POINT_I").arg(1)); + GroupPoints->LineEdit2->clear(); + GroupPoints->LineEdit3->clear(); + GroupPoints->SpinBox3->setEnabled(true); + + GroupPoints->CheckBox1->hide(); + + myPoint1 = myPoint2 = GEOM::GEOM_Object::_nil(); + + GroupPoints->PushButton1->click(); + } + break; + case 2: // translation an object by vector + { + GroupPoints->ShowRows(0, 1, true); + GroupPoints->ShowRows(2, 4, false); + GroupPoints->ShowRows(5, 5, true); + + GroupPoints->TextLabel6->setText(tr("GEOM_DISTANCE")); + GroupPoints->SpinBox3->setValue(0.0); + GroupPoints->SpinBox3->setEnabled(false); + GroupPoints->TextLabel2->setText(tr("GEOM_VECTOR")); + GroupPoints->LineEdit2->clear(); + + GroupPoints->CheckBox1->show(); + + myVector = GEOM::GEOM_Object::_nil(); + ActivateDistanceChanged(GroupPoints->CheckBox1->isChecked()); + + GroupPoints->PushButton1->click(); + } + break; + } + + qApp->processEvents(); + updateGeometry(); + resize(minimumSizeHint()); + + if (myInitial) { + myInitial = false; + SelectionIntoArgument(); + } + else { + displayPreview(); + } } - //================================================================================= // function : ClickOnOk() // purpose : //================================================================================= void TransformationGUI_TranslationDlg::ClickOnOk() { - if ( ClickOnApply() ) + if (ClickOnApply()) ClickOnCancel(); } - //================================================================================= // function : ClickOnApply() // purpose : //================================================================================= bool TransformationGUI_TranslationDlg::ClickOnApply() { - if ( !onAccept(GroupPoints->CheckBox1->isChecked()) ) + if (!onAccept(GroupPoints->CheckBox2->isChecked())) return false; initName(); + // activate selection and connect selection manager + ConstructorsClicked(getConstructorId()); return true; } - //================================================================================= // function : SelectionIntoArgument() -// purpose : Called when selection as changed or other case +// purpose : Called when selection is changed or on dialog initialization or activation //================================================================================= void TransformationGUI_TranslationDlg::SelectionIntoArgument() { + erasePreview(); myEditCurrentArgument->setText(""); - QString aName; if (myEditCurrentArgument == GroupPoints->LineEdit1) - { - int aNbSel = GEOMBase::GetNameOfSelectedIObjects(selectedIO(), aName); + myObjects.length(0); + else if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 1) + myPoint1 = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 2) + myVector = GEOM::GEOM_Object::_nil(); + else if (myEditCurrentArgument == GroupPoints->LineEdit3) + myPoint2 = GEOM::GEOM_Object::_nil(); + LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); + SALOME_ListIO aSelList; + aSelMgr->selectedObjects(aSelList); + + QString aName; + + if (myEditCurrentArgument == GroupPoints->LineEdit1) { + int aNbSel = GEOMBase::GetNameOfSelectedIObjects(aSelList, aName); if (aNbSel < 1) - { - myObjects.length(0); return; - } - GEOMBase::ConvertListOfIOInListOfGO(selectedIO(), myObjects); + + GEOMBase::ConvertListOfIOInListOfGO(aSelList, myObjects); if (!myObjects.length()) return; + else { + myEditCurrentArgument->setText(aName); + + // here we do not switch to the next field, because multiple objects can be selected + /* + if (getConstructorId() == 1) { + if (myPoint1->_is_nil()) + GroupPoints->PushButton2->click(); + } + else if (getConstructorId() == 2) { + if (myVector->_is_nil()) + GroupPoints->PushButton2->click(); + } + */ + } } - else - { - if (IObjectCount() != 1) { - if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 1) - myPoint1 = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 2) - myVector = GEOM::GEOM_Object::_nil(); - else if (myEditCurrentArgument == GroupPoints->LineEdit3) - myPoint2 = GEOM::GEOM_Object::_nil(); + else { + if (aSelList.Extent() != 1) return; + + // nbSel == 1 + Standard_Boolean testResult = Standard_False; + GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(aSelList.First(), testResult); + + if (!testResult || CORBA::is_nil(aSelectedObject)) + return; + + aName = GEOMBase::GetName(aSelectedObject); + + // Get Selected object if selected subshape + TopoDS_Shape aShape; + if (GEOMBase::GetShape(aSelectedObject, aShape, TopAbs_SHAPE) && !aShape.IsNull()) + { + TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; + if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 2) + aNeedType = TopAbs_EDGE; + + TColStd_IndexedMapOfInteger aMap; + aSelMgr->GetIndexes(aSelList.First(), aMap); + if (aMap.Extent() == 1) + { + int anIndex = aMap(1); + if (aNeedType == TopAbs_EDGE) + aName += QString(":edge_%1").arg(anIndex); + else + aName += QString(":vertex_%1").arg(anIndex); + + //Find SubShape Object in Father + GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aSelectedObject, aName); + + if (aFindedObject == GEOM::GEOM_Object::_nil()) { // Object not found in study + GEOM::GEOM_IShapesOperations_var aShapesOp = + getGeomEngine()->GetIShapesOperations(getStudyId()); + aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); + } + else { + aSelectedObject = aFindedObject; + } + } + else // Global Selection + { + if (aShape.ShapeType() != aNeedType) { + aSelectedObject = GEOM::GEOM_Object::_nil(); + aName = ""; + } + } } - Standard_Boolean testResult = Standard_False; - GEOM::GEOM_Object_var aSelectedObject = GEOMBase::ConvertIOinGEOMObject(firstIObject(), testResult); + myEditCurrentArgument->setText(aName); - if (!testResult || CORBA::is_nil( aSelectedObject )) - return; - - TopoDS_Shape aShape; - aName = GEOMBase::GetName( aSelectedObject ); - if ( GEOMBase::GetShape( aSelectedObject, aShape, TopAbs_SHAPE ) && !aShape.IsNull() ) - { - TopAbs_ShapeEnum aNeedType = TopAbs_VERTEX; - if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 2) - aNeedType = TopAbs_EDGE; - - LightApp_SelectionMgr* aSelMgr = myGeomGUI->getApp()->selectionMgr(); - TColStd_IndexedMapOfInteger aMap; - aSelMgr->GetIndexes( firstIObject(), aMap ); - if ( aMap.Extent() == 1 ) - { - int anIndex = aMap( 1 ); - if (aNeedType == TopAbs_EDGE) - aName += QString(":edge_%1").arg(anIndex); - else - aName += QString(":vertex_%1").arg(anIndex); - - //Find SubShape Object in Father - GEOM::GEOM_Object_var aFindedObject = findObjectInFather(aSelectedObject, aName); - - if ( aFindedObject == GEOM::GEOM_Object::_nil() ) { // Object not found in study - GEOM::GEOM_IShapesOperations_var aShapesOp = - getGeomEngine()->GetIShapesOperations( getStudyId() ); - aSelectedObject = aShapesOp->GetSubShape(aSelectedObject, anIndex); - } - else - aSelectedObject = aFindedObject; - } else // Global Selection - { - if (aShape.ShapeType() != aNeedType) { - aSelectedObject = GEOM::GEOM_Object::_nil(); - aName = ""; - } - } - } - - if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 1) + if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 1) { myPoint1 = aSelectedObject; - else if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 2) + if (!myPoint1->_is_nil() && myPoint2->_is_nil()) + GroupPoints->PushButton3->click(); + } + else if (myEditCurrentArgument == GroupPoints->LineEdit2 && getConstructorId() == 2) { myVector = aSelectedObject; - else if (myEditCurrentArgument == GroupPoints->LineEdit3) + if (!myVector->_is_nil() && !myObjects.length()) + GroupPoints->PushButton1->click(); + } + else if (myEditCurrentArgument == GroupPoints->LineEdit3) { myPoint2 = aSelectedObject; + if (!myPoint2->_is_nil() && !myObjects.length()) + GroupPoints->PushButton1->click(); + } } - myEditCurrentArgument->setText( aName ); + // clear selection + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); + myGeomGUI->getApp()->selectionMgr()->clearSelected(); + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + displayPreview(); } - -//================================================================================= -// function : LineEditReturnPressed() -// purpose : -//================================================================================= -void TransformationGUI_TranslationDlg::LineEditReturnPressed() -{ - QLineEdit* send = (QLineEdit*)sender(); - if (send == GroupPoints->LineEdit1) - { - myEditCurrentArgument = send; - GEOMBase_Skeleton::LineEditReturnPressed(); - } -} - - //================================================================================= // function : SetEditCurrentArgument() // purpose : @@ -356,27 +411,66 @@ void TransformationGUI_TranslationDlg::LineEditReturnPressed() void TransformationGUI_TranslationDlg::SetEditCurrentArgument() { QPushButton* send = (QPushButton*)sender(); + + disconnect(myGeomGUI->getApp()->selectionMgr(), 0, this, 0); globalSelection(); if (send == GroupPoints->PushButton1) { myEditCurrentArgument = GroupPoints->LineEdit1; + + GroupPoints->PushButton2->setDown(false); + GroupPoints->PushButton3->setDown(false); + GroupPoints->LineEdit2->setEnabled(false); + GroupPoints->LineEdit3->setEnabled(false); } else if (send == GroupPoints->PushButton2) { myEditCurrentArgument = GroupPoints->LineEdit2; + + GroupPoints->PushButton1->setDown(false); + GroupPoints->PushButton3->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + GroupPoints->LineEdit3->setEnabled(false); + if (getConstructorId() == 1) - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); - else - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_EDGE ); + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + else + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_EDGE); } else if (send == GroupPoints->PushButton3) { myEditCurrentArgument = GroupPoints->LineEdit3; - localSelection( GEOM::GEOM_Object::_nil(), TopAbs_VERTEX ); - } + GroupPoints->PushButton1->setDown(false); + GroupPoints->PushButton2->setDown(false); + GroupPoints->LineEdit1->setEnabled(false); + GroupPoints->LineEdit2->setEnabled(false); + + localSelection(GEOM::GEOM_Object::_nil(), TopAbs_VERTEX); + } + connect(myGeomGUI->getApp()->selectionMgr(), SIGNAL(currentSelectionChanged()), + this, SLOT(SelectionIntoArgument())); + + // enable line edit + myEditCurrentArgument->setEnabled(true); myEditCurrentArgument->setFocus(); - SelectionIntoArgument(); + // after setFocus(), because it will be setDown(false) when loses focus + send->setDown(true); + + // seems we need it only to avoid preview disappearing, caused by selection mode change + displayPreview(); } +//================================================================================= +// function : LineEditReturnPressed() +// purpose : +//================================================================================= +void TransformationGUI_TranslationDlg::LineEditReturnPressed() +{ + QLineEdit* send = (QLineEdit*)sender(); + if (send == GroupPoints->LineEdit1) { + myEditCurrentArgument = send; + GEOMBase_Skeleton::LineEditReturnPressed(); + } +} //================================================================================= // function : ActivateThisDialog() @@ -385,25 +479,22 @@ void TransformationGUI_TranslationDlg::SetEditCurrentArgument() void TransformationGUI_TranslationDlg::ActivateThisDialog() { GEOMBase_Skeleton::ActivateThisDialog(); - - connect(myGeomGUI->getApp()->selectionMgr(), - SIGNAL(currentSelectionChanged()), this, SLOT(SelectionIntoArgument())); + connect( myGeomGUI->getApp()->selectionMgr(), SIGNAL( currentSelectionChanged() ), + this, SLOT( SelectionIntoArgument() ) ); ConstructorsClicked( getConstructorId() ); } - //================================================================================= // function : enterEvent() // purpose : //================================================================================= -void TransformationGUI_TranslationDlg::enterEvent(QEvent* e) +void TransformationGUI_TranslationDlg::enterEvent (QEvent*) { - if (!GroupConstructors->isEnabled()) + if (!mainFrame()->GroupConstructors->isEnabled()) ActivateThisDialog(); } - //================================================================================= // function : ValueChangedInSpinBox() // purpose : @@ -413,139 +504,204 @@ void TransformationGUI_TranslationDlg::ValueChangedInSpinBox() displayPreview(); } - //================================================================================= // function : createOperation // purpose : //================================================================================= -GEOM::GEOM_IOperations_ptr TransformationGUI_TranslationDlg::createOperation() +GEOM::GEOM_IOperations_ptr TransformationGUI_TranslationDlg::createOperation() { - return getGeomEngine()->GetITransformOperations( getStudyId() ); + return getGeomEngine()->GetITransformOperations(getStudyId()); } - //================================================================================= // function : isValid // purpose : //================================================================================= -bool TransformationGUI_TranslationDlg::isValid( QString& msg ) +bool TransformationGUI_TranslationDlg::isValid (QString& msg) { int aConstructorId = getConstructorId(); - switch (aConstructorId) + switch (aConstructorId) { + case 0: { - case 0: - { - return !(myObjects.length() == 0 ); - break; - } - case 1: - { - return !(myObjects.length() == 0 || myPoint1->_is_nil() || myPoint2->_is_nil() ); - break; - } - case 2: - { - return !(myObjects.length() == 0 || myVector->_is_nil()); - break; - } - default: return false; + bool ok = true; + ok = GroupPoints->SpinBox1->isValid( msg, !IsPreview() ) && ok; + ok = GroupPoints->SpinBox2->isValid( msg, !IsPreview() ) && ok; + ok = GroupPoints->SpinBox3->isValid( msg, !IsPreview() ) && ok; + return myObjects.length() > 0 && ok; } + case 1: + return myObjects.length() > 0 && !(myPoint1->_is_nil() || myPoint2->_is_nil()); + case 2: + { + bool ok = GroupPoints->SpinBox3->isValid( msg, !IsPreview() ); + return myObjects.length() > 0 && !(myVector->_is_nil()) && ok; + } + default: + break; + } + return false; } //================================================================================= // function : execute // purpose : //================================================================================= -bool TransformationGUI_TranslationDlg::execute( ObjectList& objects ) +bool TransformationGUI_TranslationDlg::execute (ObjectList& objects) { bool res = false; - bool toCreateCopy = IsPreview() || GroupPoints->CheckBox1->isChecked(); + bool toCreateCopy = IsPreview() || GroupPoints->CheckBox2->isChecked(); GEOM::GEOM_Object_var anObj; - switch ( getConstructorId() ) + switch (getConstructorId()) { + case 0: { - case 0: - { - double dx = GroupPoints->SpinBox1->GetValue(); - double dy = GroupPoints->SpinBox2->GetValue(); - double dz = GroupPoints->SpinBox3->GetValue(); - - if (toCreateCopy) - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )-> - TranslateDXDYDZCopy( myObjects[i], dx, dy, dz ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - else - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )-> - TranslateDXDYDZ( myObjects[i], dx, dy, dz ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - res = true; - break; - } - case 1: - { - if (toCreateCopy) - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )-> - TranslateTwoPointsCopy( myObjects[i], myPoint1, myPoint2 ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - else - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )-> - TranslateTwoPoints( myObjects[i], myPoint1, myPoint2 ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - res = true; - break; - } - case 2: - { - if (toCreateCopy) - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )-> - TranslateVectorCopy( myObjects[i], myVector ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - else - for (int i = 0; i < myObjects.length(); i++) - { - anObj = GEOM::GEOM_ITransformOperations::_narrow( getOperation() )-> - TranslateVector( myObjects[i], myVector ); - if ( !anObj->_is_nil() ) - objects.push_back( anObj._retn() ); - } - res = true; - break; - } - } + double dx = GroupPoints->SpinBox1->value(); + double dy = GroupPoints->SpinBox2->value(); + double dz = GroupPoints->SpinBox3->value(); + QStringList aParameters; + aParameters<SpinBox1->text(); + aParameters<SpinBox2->text(); + aParameters<SpinBox3->text(); + + if (toCreateCopy) { + for (int i = 0; i < myObjects.length(); i++) { + myCurrObject = myObjects[i]; + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + TranslateDXDYDZCopy(myObjects[i], dx, dy, dz); + if (!anObj->_is_nil()) { + if(!IsPreview()) + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + objects.push_back(anObj._retn()); + } + } + } + else { + for (int i = 0; i < myObjects.length(); i++) { + myCurrObject = myObjects[i]; + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + TranslateDXDYDZ(myObjects[i], dx, dy, dz); + if (!anObj->_is_nil()) { + if(!IsPreview()) { + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + updateAttributes(anObj, aParameters); + } + objects.push_back(anObj._retn()); + } + } + } + res = true; + break; + } + case 1: + { + if (toCreateCopy) { + for (int i = 0; i < myObjects.length(); i++) { + myCurrObject = myObjects[i]; + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + TranslateTwoPointsCopy(myObjects[i], myPoint1, myPoint2); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + } + } + else { + for (int i = 0; i < myObjects.length(); i++) { + myCurrObject = myObjects[i]; + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + TranslateTwoPoints(myObjects[i], myPoint1, myPoint2); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + } + } + res = true; + break; + } + case 2: + { + QStringList aParameters; + aParameters<SpinBox3->text(); + bool byDistance = GroupPoints->CheckBox1->isChecked(); + if (byDistance) { + double aDistance = GroupPoints->SpinBox3->value(); + for (int i = 0; i < myObjects.length(); i++) { + myCurrObject = myObjects[i]; + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + TranslateVectorDistance(myObjects[i], myVector, aDistance, toCreateCopy); + if (!anObj->_is_nil()) { + if(!IsPreview()) { + anObj->SetParameters(GeometryGUI::JoinObjectParameters(aParameters)); + updateAttributes(anObj, aParameters); + } + objects.push_back(anObj._retn()); + } + } + } + else { + if (toCreateCopy) { + for (int i = 0; i < myObjects.length(); i++) { + myCurrObject = myObjects[i]; + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + TranslateVectorCopy(myObjects[i], myVector); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + } + } + else { + for (int i = 0; i < myObjects.length(); i++) { + myCurrObject = myObjects[i]; + anObj = GEOM::GEOM_ITransformOperations::_narrow(getOperation())-> + TranslateVector(myObjects[i], myVector); + if (!anObj->_is_nil()) + objects.push_back(anObj._retn()); + } + } + } + res = true; + break; + } + } return res; } +//================================================================================= +// function : restoreSubShapes +// purpose : +//================================================================================= +void TransformationGUI_TranslationDlg::restoreSubShapes (SALOMEDS::Study_ptr theStudy, + SALOMEDS::SObject_ptr theSObject) +{ + if (mainFrame()->CheckBoxRestoreSS->isChecked()) { + // we pass here the first operation argument (object) through the list of arguments + // because the rotation operation place its arguments in the data structure in another order, + // and we need to point the first argument directly + GEOM::ListOfGO_var anArgs = new GEOM::ListOfGO; + anArgs->length(1); + anArgs[0] = myCurrObject; + getGeomEngine()->RestoreSubShapesSO(theStudy, theSObject, anArgs, + /*theFindMethod=*/GEOM::FSM_Transformed, + /*theInheritFirstArg=*/true); + } +} //================================================================================= // function : CreateCopyModeChanged() // purpose : //================================================================================= -void TransformationGUI_TranslationDlg::CreateCopyModeChanged(bool isCreateCopy) +void TransformationGUI_TranslationDlg::CreateCopyModeChanged (bool isCreateCopy) { - GroupBoxName->setEnabled(isCreateCopy); + mainFrame()->GroupBoxName->setEnabled(isCreateCopy); +} + +//================================================================================= +// function : ActivateDistanceChanged() +// purpose : +//================================================================================= +void TransformationGUI_TranslationDlg::ActivateDistanceChanged (bool theEnable) +{ + GroupPoints->SpinBox3->setEnabled(theEnable); + displayPreview(); } //================================================================================= @@ -554,22 +710,21 @@ void TransformationGUI_TranslationDlg::CreateCopyModeChanged(bool isCreateCopy) //================================================================================= void TransformationGUI_TranslationDlg::addSubshapesToStudy() { - bool toCreateCopy = IsPreview() || GroupPoints->CheckBox1->isChecked(); + bool toCreateCopy = IsPreview() || GroupPoints->CheckBox2->isChecked(); if (toCreateCopy) { QMap objMap; - switch (getConstructorId()) - { - case 0: - return; - case 1: - objMap[GroupPoints->LineEdit2->text()] = myPoint1; - objMap[GroupPoints->LineEdit3->text()] = myPoint2; - break; - case 2: - objMap[GroupPoints->LineEdit2->text()] = myVector; - break; - } - addSubshapesToFather( objMap ); + switch (getConstructorId()) { + case 0: + return; + case 1: + objMap[GroupPoints->LineEdit2->text()] = myPoint1; + objMap[GroupPoints->LineEdit3->text()] = myPoint2; + break; + case 2: + objMap[GroupPoints->LineEdit2->text()] = myVector; + break; + } + addSubshapesToFather(objMap); } } diff --git a/src/TransformationGUI/TransformationGUI_TranslationDlg.h b/src/TransformationGUI/TransformationGUI_TranslationDlg.h index 11975c136..e08425b5a 100644 --- a/src/TransformationGUI/TransformationGUI_TranslationDlg.h +++ b/src/TransformationGUI/TransformationGUI_TranslationDlg.h @@ -1,36 +1,34 @@ -// GEOM GEOMGUI : GUI for Geometry component +// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // -// File : TransformationGUI_TranslationDlg.h -// Author : Lucien PIGNOLONI -// Module : GEOM +// 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 +// +// GEOM GEOMGUI : GUI for Geometry component +// File : TransformationGUI_TranslationDlg.h +// Author : Lucien PIGNOLONI, Open CASCADE S.A.S. +// +#ifndef TRANSFORMATIONGUI_TRANSLATIONDLG_H +#define TRANSFORMATIONGUI_TRANSLATIONDLG_H -#ifndef DIALOGBOX_TRANSLATION_H -#define DIALOGBOX_TRANSLATION_H - -#include "GEOMBase_Skeleton.h" -#include "DlgRef_3Sel3Spin1Check.h" +#include +class DlgRef_3Sel3Spin2Check; //================================================================================= // class : TransformationGUI_TranslationDlg @@ -38,39 +36,47 @@ //================================================================================= class TransformationGUI_TranslationDlg : public GEOMBase_Skeleton { - Q_OBJECT + Q_OBJECT public: - TransformationGUI_TranslationDlg(GeometryGUI* theGeometryGUI, QWidget* parent = 0, - const char* name = 0, bool modal = FALSE, WFlags fl = 0); - ~TransformationGUI_TranslationDlg(); + TransformationGUI_TranslationDlg( GeometryGUI*, QWidget* = 0, + bool = false, Qt::WindowFlags = 0 ); + ~TransformationGUI_TranslationDlg(); protected: - // redefined from GEOMBase_Helper - virtual GEOM::GEOM_IOperations_ptr createOperation(); - virtual bool isValid( QString& ); - virtual bool execute( ObjectList& objects ); - virtual void addSubshapesToStudy(); + // redefined from GEOMBase_Helper + virtual GEOM::GEOM_IOperations_ptr createOperation(); + virtual bool isValid( QString& ); + virtual bool execute( ObjectList& ); + virtual void addSubshapesToStudy(); + virtual void restoreSubShapes( SALOMEDS::Study_ptr, SALOMEDS::SObject_ptr ); private: - void Init(); - void enterEvent(QEvent* e); + void Init(); + void enterEvent( QEvent* ); - GEOM::GEOM_Object_var myVector, myPoint1, myPoint2; - GEOM::ListOfGO myObjects; +private: + GEOM::ListOfGO myObjects; + GEOM::GEOM_Object_var myCurrObject; + GEOM::GEOM_Object_var myVector, myPoint1, myPoint2; - DlgRef_3Sel3Spin1Check* GroupPoints; - -private slots : - void ClickOnOk(); - bool ClickOnApply(); - void ActivateThisDialog(); - void LineEditReturnPressed(); - void SelectionIntoArgument(); - void SetEditCurrentArgument(); - void ConstructorsClicked(int constructorId); - void ValueChangedInSpinBox(); - void CreateCopyModeChanged(bool isCreateCopy); + // to initialize the first selection field with a selected object on the dialog creation + bool myInitial; + + DlgRef_3Sel3Spin2Check* GroupPoints; + +private slots: + void ClickOnOk(); + bool ClickOnApply(); + void ActivateThisDialog(); + void LineEditReturnPressed(); + void SelectionIntoArgument(); + void SetEditCurrentArgument(); + void ConstructorsClicked( int ); + void ValueChangedInSpinBox(); + void CreateCopyModeChanged( bool ); + void SetDoubleSpinBoxStep( double ); + void ActivateDistanceChanged( bool ); }; -#endif // DIALOGBOX_TRANSLATION_H +#endif // TRANSFORMATIONGUI_TRANSLATIONDLG_H diff --git a/src/src.pro b/src/src.pro new file mode 100644 index 000000000..9246c4dfe --- /dev/null +++ b/src/src.pro @@ -0,0 +1,63 @@ +# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE +# +# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# 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 +# +TEMPLATE = subdirs +CONFIG += ordered + +SUBDIRS = OBJECT +SUBDIRS += ARCHIMEDE +SUBDIRS += NMTDS +SUBDIRS += NMTTools +SUBDIRS += NMTAlgo +SUBDIRS += GEOMAlgo +SUBDIRS += SKETCHER +SUBDIRS += GEOM +SUBDIRS += BREPExport +SUBDIRS += BREPImport +SUBDIRS += IGESExport +SUBDIRS += IGESImport +SUBDIRS += STEPExport +SUBDIRS += STEPImport +SUBDIRS += STLExport +SUBDIRS += ShHealOper +SUBDIRS += GEOMImpl +SUBDIRS += GEOM_I +SUBDIRS += GEOMClient +SUBDIRS += DlgRef +SUBDIRS += GEOMFiltersSelection +SUBDIRS += GEOMGUI +SUBDIRS += GEOMBase +SUBDIRS += GEOMToolsGUI +SUBDIRS += DisplayGUI +SUBDIRS += BasicGUI +SUBDIRS += PrimitiveGUI +SUBDIRS += GenerationGUI +SUBDIRS += EntityGUI +SUBDIRS += BuildGUI +SUBDIRS += BooleanGUI +SUBDIRS += TransformationGUI +#SUBDIRS += OperationGUI +#SUBDIRS += RepairGUI +#SUBDIRS += MeasureGUI +#SUBDIRS += GroupGUI +#SUBDIRS += BlocksGUI +#SUBDIRS += GEOM_I_Superv +#SUBDIRS += GEOM_SWIG