From 09b238af6f34ae3ab8847e127749c1ef8b7ff888 Mon Sep 17 00:00:00 2001 From: nri Date: Wed, 9 Jul 2003 09:21:59 +0000 Subject: [PATCH 1/4] sources v1.2 From 0f1369c27fd6a84ba1149c3c5f3ed181acc055f1 Mon Sep 17 00:00:00 2001 From: nri Date: Wed, 9 Jul 2003 09:33:50 +0000 Subject: [PATCH 2/4] sources v1.2 --- src/ARCHIMEDE/Archimede_VolumeSection.cxx | 37 +- src/ARCHIMEDE/Archimede_VolumeSection.hxx | 35 +- src/ARCHIMEDE/Makefile.in | 40 +- src/GEOM/GEOM_Gen_i.cc | 76 ++- src/GEOM/GEOM_Gen_i.hh | 50 +- src/GEOM/GEOM_Shape_i.cc | 35 +- src/GEOM/GEOM_Shape_i.hh | 34 +- src/GEOM/Makefile.in | 41 +- src/GEOM/geom.cxx | 36 +- src/GEOMClient/GEOM_Client.cxx | 34 +- src/GEOMClient/GEOM_Client.hxx | 32 +- src/GEOMClient/Makefile.in | 40 +- src/GEOMDS/GEOMDS.cdl | 32 +- src/GEOMDS/GEOMDS_Application.cdl | 34 +- src/GEOMDS/GEOMDS_Application.cxx | 35 +- src/GEOMDS/GEOMDS_Application.hxx | 37 +- src/GEOMDS/GEOMDS_Application.ixx | 38 +- src/GEOMDS/GEOMDS_Application.jxx | 26 ++ src/GEOMDS/GEOMDS_Commands.cdl | 32 +- src/GEOMDS/GEOMDS_Commands.cxx | 34 +- src/GEOMDS/GEOMDS_Commands.hxx | 33 +- src/GEOMDS/GEOMDS_Commands.ixx | 38 +- src/GEOMDS/GEOMDS_Commands.jxx | 26 ++ ...MapIteratorOfDataMapOfIntegerTransient.hxx | 38 +- ...pIteratorOfDataMapOfIntegerTransient_0.cxx | 40 +- ...DataMapNodeOfDataMapOfIntegerTransient.hxx | 37 +- ...taMapNodeOfDataMapOfIntegerTransient_0.cxx | 40 +- .../GEOMDS_DataMapOfIntegerTransient.hxx | 38 +- .../GEOMDS_DataMapOfIntegerTransient_0.cxx | 40 +- src/GEOMDS/GEOMDS_Explorer.cdl | 33 +- src/GEOMDS/GEOMDS_Explorer.cxx | 35 +- src/GEOMDS/GEOMDS_Explorer.hxx | 38 +- src/GEOMDS/GEOMDS_Explorer.ixx | 38 +- src/GEOMDS/GEOMDS_Explorer.jxx | 26 ++ src/GEOMDS/Handle_GEOMDS_Application.hxx | 37 +- ...DataMapNodeOfDataMapOfIntegerTransient.hxx | 37 +- src/GEOMDS/Makefile.in | 40 +- src/GEOMFiltersSelection/GEOM_EdgeFilter.cxx | 34 +- src/GEOMFiltersSelection/GEOM_EdgeFilter.hxx | 37 +- src/GEOMFiltersSelection/GEOM_EdgeFilter.ixx | 38 +- src/GEOMFiltersSelection/GEOM_EdgeFilter.jxx | 26 ++ src/GEOMFiltersSelection/GEOM_FaceFilter.cxx | 34 +- src/GEOMFiltersSelection/GEOM_FaceFilter.hxx | 37 +- src/GEOMFiltersSelection/GEOM_FaceFilter.ixx | 38 +- src/GEOMFiltersSelection/GEOM_FaceFilter.jxx | 26 ++ .../GEOM_ShapeTypeFilter.cxx | 34 +- .../GEOM_ShapeTypeFilter.hxx | 37 +- .../GEOM_ShapeTypeFilter.ixx | 38 +- .../GEOM_ShapeTypeFilter.jxx | 26 ++ .../Handle_GEOM_EdgeFilter.hxx | 37 +- .../Handle_GEOM_FaceFilter.hxx | 37 +- .../Handle_GEOM_ShapeTypeFilter.hxx | 37 +- src/GEOMFiltersSelection/Makefile.in | 34 +- src/GEOMGUI/GeometryGUI.cxx | 57 ++- src/GEOMGUI/GeometryGUI.h | 32 +- src/GEOMGUI/GeometryGUI_ArcDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_ArcDlg.h | 32 +- src/GEOMGUI/GeometryGUI_ArchimedeDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_ArchimedeDlg.h | 32 +- src/GEOMGUI/GeometryGUI_BndBoxDlg.cxx | 36 +- src/GEOMGUI/GeometryGUI_BndBoxDlg.h | 33 +- src/GEOMGUI/GeometryGUI_BoxDlg.cxx | 35 +- src/GEOMGUI/GeometryGUI_BoxDlg.h | 33 +- src/GEOMGUI/GeometryGUI_CenterMassDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_CenterMassDlg.h | 34 +- src/GEOMGUI/GeometryGUI_ChamferDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_ChamferDlg.h | 32 +- src/GEOMGUI/GeometryGUI_CheckShape.cxx | 35 +- src/GEOMGUI/GeometryGUI_CheckShape.h | 33 +- src/GEOMGUI/GeometryGUI_CircleDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_CircleDlg.h | 32 +- src/GEOMGUI/GeometryGUI_CommonDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_CommonDlg.h | 33 +- src/GEOMGUI/GeometryGUI_CompoundDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_CompoundDlg.h | 32 +- src/GEOMGUI/GeometryGUI_ConeDlg.cxx | 35 +- src/GEOMGUI/GeometryGUI_ConeDlg.h | 32 +- src/GEOMGUI/GeometryGUI_CutDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_CutDlg.h | 32 +- src/GEOMGUI/GeometryGUI_CylinderDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_CylinderDlg.h | 32 +- src/GEOMGUI/GeometryGUI_DistanceDlg.cxx | 35 +- src/GEOMGUI/GeometryGUI_DistanceDlg.h | 33 +- src/GEOMGUI/GeometryGUI_EdgeDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_EdgeDlg.h | 32 +- src/GEOMGUI/GeometryGUI_FaceDlg.cxx | 35 +- src/GEOMGUI/GeometryGUI_FaceDlg.h | 32 +- src/GEOMGUI/GeometryGUI_FilletDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_FilletDlg.h | 32 +- src/GEOMGUI/GeometryGUI_FillingDlg.cxx | 35 +- src/GEOMGUI/GeometryGUI_FillingDlg.h | 32 +- src/GEOMGUI/GeometryGUI_FillingHoleDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_FillingHoleDlg.h | 33 +- src/GEOMGUI/GeometryGUI_FuseDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_FuseDlg.h | 33 +- src/GEOMGUI/GeometryGUI_InertiaDlg.cxx | 35 +- src/GEOMGUI/GeometryGUI_InertiaDlg.h | 32 +- src/GEOMGUI/GeometryGUI_LineDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_LineDlg.h | 32 +- src/GEOMGUI/GeometryGUI_MaxToleranceDlg.cxx | 35 +- src/GEOMGUI/GeometryGUI_MaxToleranceDlg.h | 34 +- src/GEOMGUI/GeometryGUI_MirrorDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_MirrorDlg.h | 32 +- src/GEOMGUI/GeometryGUI_MultiRotationDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_MultiRotationDlg.h | 32 +- .../GeometryGUI_MultiTranslationDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_MultiTranslationDlg.h | 32 +- src/GEOMGUI/GeometryGUI_NbIsosDlg.cxx | 35 +- src/GEOMGUI/GeometryGUI_NbIsosDlg.h | 33 +- src/GEOMGUI/GeometryGUI_OrientationDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_OrientationDlg.h | 32 +- src/GEOMGUI/GeometryGUI_PartitionDlg.cxx | 50 +- src/GEOMGUI/GeometryGUI_PartitionDlg.h | 32 +- src/GEOMGUI/GeometryGUI_PipeDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_PipeDlg.h | 32 +- src/GEOMGUI/GeometryGUI_PlaneDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_PlaneDlg.h | 33 +- src/GEOMGUI/GeometryGUI_PointDlg.cxx | 35 +- src/GEOMGUI/GeometryGUI_PointDlg.h | 33 +- src/GEOMGUI/GeometryGUI_PrismDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_PrismDlg.h | 33 +- src/GEOMGUI/GeometryGUI_PropertiesDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_PropertiesDlg.h | 33 +- src/GEOMGUI/GeometryGUI_RevolDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_RevolDlg.h | 32 +- src/GEOMGUI/GeometryGUI_RotationDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_RotationDlg.h | 32 +- src/GEOMGUI/GeometryGUI_ScaleDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_ScaleDlg.h | 32 +- src/GEOMGUI/GeometryGUI_SectionDlg.cxx | 35 +- src/GEOMGUI/GeometryGUI_SectionDlg.h | 32 +- src/GEOMGUI/GeometryGUI_SewingDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_SewingDlg.h | 32 +- src/GEOMGUI/GeometryGUI_ShellDlg.cxx | 35 +- src/GEOMGUI/GeometryGUI_ShellDlg.h | 33 +- src/GEOMGUI/GeometryGUI_SphereDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_SphereDlg.h | 32 +- src/GEOMGUI/GeometryGUI_SpinBox.cxx | 34 +- src/GEOMGUI/GeometryGUI_SpinBox.h | 32 +- src/GEOMGUI/GeometryGUI_SubShapeDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_SubShapeDlg.h | 32 +- src/GEOMGUI/GeometryGUI_SuppressFacesDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_SuppressFacesDlg.h | 32 +- src/GEOMGUI/GeometryGUI_SuppressHoleDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_SuppressHoleDlg.h | 32 +- src/GEOMGUI/GeometryGUI_Swig.cxx | 52 ++- src/GEOMGUI/GeometryGUI_Swig.hxx | 32 +- src/GEOMGUI/GeometryGUI_Swig.i | 32 +- src/GEOMGUI/GeometryGUI_TorusDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_TorusDlg.h | 32 +- src/GEOMGUI/GeometryGUI_TranslationDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_TranslationDlg.h | 32 +- src/GEOMGUI/GeometryGUI_TransparencyDlg.cxx | 42 +- src/GEOMGUI/GeometryGUI_TransparencyDlg.h | 32 +- src/GEOMGUI/GeometryGUI_VectorDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_VectorDlg.h | 33 +- src/GEOMGUI/GeometryGUI_WhatisDlg.cxx | 88 +++- src/GEOMGUI/GeometryGUI_WhatisDlg.h | 33 +- src/GEOMGUI/GeometryGUI_WireDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_WireDlg.h | 32 +- src/GEOMGUI/GeometryGUI_WorkingPlaneDlg.cxx | 35 +- src/GEOMGUI/GeometryGUI_WorkingPlaneDlg.h | 33 +- src/GEOMGUI/GeometryGUI_aParameterDlg.cxx | 34 +- src/GEOMGUI/GeometryGUI_aParameterDlg.h | 32 +- src/GEOMGUI/GeometryGUI_icons.po | 30 +- src/GEOMGUI/GeometryGUI_msg_en.po | 30 +- src/GEOMGUI/GeometryGUI_msg_fr.po | 30 +- src/GEOMGUI/Makefile.in | 40 +- src/GEOM_SWIG/GEOM_Partition1.py | 9 + src/GEOM_SWIG/GEOM_Partition2.py | 9 + src/GEOM_SWIG/GEOM_Partition3.py | 9 + src/GEOM_SWIG/GEOM_Partition4.py | 9 + src/GEOM_SWIG/GEOM_Partition5.py | 9 + src/GEOM_SWIG/GEOM_example.py | 33 +- src/GEOM_SWIG/GEOM_example2.py | 33 +- src/GEOM_SWIG/GEOM_example3.py | 33 +- src/GEOM_SWIG/GEOM_example4.py | 26 ++ src/GEOM_SWIG/GEOM_moteur.py | 33 +- src/GEOM_SWIG/GEOM_usinggeom.py | 37 +- src/GEOM_SWIG/Makefile.in | 37 +- src/GEOM_SWIG/batchmode_geompy.py | 18 +- src/GEOM_SWIG/geompy.py | 33 +- src/GEOM_SWIG/libGeometry_Swig.i | 32 +- src/Makefile.in | 35 +- src/OBJECT/GEOM_AISShape.cxx | 34 +- src/OBJECT/GEOM_AISShape.hxx | 37 +- src/OBJECT/GEOM_AISShape.ixx | 38 +- src/OBJECT/GEOM_AISShape.jxx | 26 ++ src/OBJECT/GEOM_Actor.cxx | 40 +- src/OBJECT/GEOM_Actor.h | 41 +- src/OBJECT/GEOM_AssemblyBuilder.cxx | 49 +- src/OBJECT/GEOM_AssemblyBuilder.h | 33 +- src/OBJECT/GEOM_InteractiveObject.cxx | 34 +- src/OBJECT/GEOM_InteractiveObject.hxx | 37 +- src/OBJECT/GEOM_InteractiveObject.ixx | 38 +- src/OBJECT/GEOM_InteractiveObject.jxx | 26 ++ src/OBJECT/GEOM_OCCReader.cxx | 36 +- src/OBJECT/GEOM_OCCReader.h | 36 +- src/OBJECT/Handle_GEOM_AISShape.hxx | 37 +- src/OBJECT/Handle_GEOM_InteractiveObject.hxx | 37 +- src/OBJECT/Makefile.in | 36 +- src/PARTITION/Makefile.in | 40 +- src/PARTITION/Partition.cdl | 32 +- src/PARTITION/Partition_Inter2d.cdl | 31 +- src/PARTITION/Partition_Inter2d.cxx | 34 +- src/PARTITION/Partition_Inter2d.hxx | 38 +- src/PARTITION/Partition_Inter2d.ixx | 38 +- src/PARTITION/Partition_Inter2d.jxx | 26 ++ src/PARTITION/Partition_Inter3d.cdl | 36 +- src/PARTITION/Partition_Inter3d.cxx | 34 +- src/PARTITION/Partition_Inter3d.hxx | 38 +- src/PARTITION/Partition_Inter3d.ixx | 38 +- src/PARTITION/Partition_Inter3d.jxx | 26 ++ src/PARTITION/Partition_Loop.cdl | 32 +- src/PARTITION/Partition_Loop.cxx | 34 +- src/PARTITION/Partition_Loop.hxx | 38 +- src/PARTITION/Partition_Loop.ixx | 38 +- src/PARTITION/Partition_Loop.jxx | 26 ++ src/PARTITION/Partition_Loop2d.cdl | 15 +- src/PARTITION/Partition_Loop2d.cxx | 18 +- src/PARTITION/Partition_Loop2d.hxx | 21 +- src/PARTITION/Partition_Loop2d.ixx | 21 +- src/PARTITION/Partition_Loop2d.jxx | 9 + src/PARTITION/Partition_Loop3d.cdl | 11 +- src/PARTITION/Partition_Loop3d.cxx | 13 +- src/PARTITION/Partition_Loop3d.hxx | 21 +- src/PARTITION/Partition_Loop3d.ixx | 21 +- src/PARTITION/Partition_Loop3d.jxx | 9 + src/PARTITION/Partition_Spliter.cdl | 31 +- src/PARTITION/Partition_Spliter.cxx | 434 +++++++++++------- src/PARTITION/Partition_Spliter.hxx | 44 +- src/PARTITION/Partition_Spliter.ixx | 38 +- src/PARTITION/Partition_Spliter.jxx | 26 ++ src/SKETCHER/GEOM_Sketcher.cxx | 37 +- src/SKETCHER/GEOM_Sketcher.h | 35 +- src/SKETCHER/GEOM_SketcherStatus.h | 35 +- src/SKETCHER/Makefile.in | 41 +- 237 files changed, 6355 insertions(+), 1982 deletions(-) diff --git a/src/ARCHIMEDE/Archimede_VolumeSection.cxx b/src/ARCHIMEDE/Archimede_VolumeSection.cxx index fecd0f999..86d058af3 100644 --- a/src/ARCHIMEDE/Archimede_VolumeSection.cxx +++ b/src/ARCHIMEDE/Archimede_VolumeSection.cxx @@ -1,15 +1,32 @@ -using namespace std; -// File : Archimede_VolumeSection.cxx -// Created : Fri Feb 22 09:28:13 CET 2002 -// Author : PULV - -// Modified : Fri Feb 22 09:28:13 CET 2002 -// Author : Nicolas REJNERI -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : Archimede_VolumeSection.cxx +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ +using namespace std; #include "Archimede_VolumeSection.hxx" #include "utilities.h" diff --git a/src/ARCHIMEDE/Archimede_VolumeSection.hxx b/src/ARCHIMEDE/Archimede_VolumeSection.hxx index c8b96ba6c..757efa246 100644 --- a/src/ARCHIMEDE/Archimede_VolumeSection.hxx +++ b/src/ARCHIMEDE/Archimede_VolumeSection.hxx @@ -1,12 +1,29 @@ -// File : Archimede_VolumeSection.hxx -// Created : Fri Feb 22 09:28:13 CET 2002 -// Author : PULV - -// Modified : Fri Feb 22 09:28:13 CET 2002 -// Author : Nicolas REJNERI -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : Archimede_VolumeSection.hxx +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ #ifndef ARCHIMEDE_VOLUMESECTION_HXX diff --git a/src/ARCHIMEDE/Makefile.in b/src/ARCHIMEDE/Makefile.in index 465d4cb14..16847d759 100644 --- a/src/ARCHIMEDE/Makefile.in +++ b/src/ARCHIMEDE/Makefile.in @@ -1,15 +1,35 @@ -# -* Makefile *- +# GEOM ARCHIMEDE : algorithm implementation # -# Author : Nicolas REJNERI -# Date : Fri Feb 22 09:28:13 CET 2002 -# $Header$ +# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with 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 : Makefile.in +# Author : Nicolas REJNERI +# Module : GEOM +# $Header$ -# source path top_srcdir=@top_srcdir@ -top_builddir=../.. +top_builddir=../../.. srcdir=@srcdir@ -VPATH=.:$(srcdir):$(top_srcdir)/idl:$(top_builddir)/idl +VPATH=.:@srcdir@:@top_srcdir@/idl @COMMENCE@ @@ -24,9 +44,9 @@ LIB_CLIENT_IDL = EXPORT_HEADERS = Archimede_VolumeSection.hxx # additionnal information to compil and link file -CPPFLAGS += $(OCC_INCLUDES) $(QT_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome -CXXFLAGS += $(OCC_CXXFLAGS) -I${KERNEL_ROOT_DIR}/include/salome -LDFLAGS += $(OCC_LIBS) -L${KERNEL_ROOT_DIR}/lib/salome +CPPFLAGS += $(OCC_INCLUDES) $(QT_INCLUDES) +CXXFLAGS += $(OCC_CXXFLAGS) +LDFLAGS += $(OCC_LIBS) # additional file to be cleaned MOSTLYCLEAN = diff --git a/src/GEOM/GEOM_Gen_i.cc b/src/GEOM/GEOM_Gen_i.cc index 7b9ecff28..344dd05eb 100644 --- a/src/GEOM/GEOM_Gen_i.cc +++ b/src/GEOM/GEOM_Gen_i.cc @@ -1,11 +1,32 @@ -using namespace std; -// File : GEOM_GEN_i.cc file -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Copyright : OPEN CASCADE -// $Header$ +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_GEN_i.cc file +// Author : Lucien PIGNOLONI +// Module : GEOM +// $Header$ +using namespace std; #include "GEOM_Gen_i.hh" #include "Partition_Spliter.hxx" @@ -165,7 +186,8 @@ GEOM_Gen_i::~GEOM_Gen_i() { //============================================================================ char* GEOM_Gen_i::IORToLocalPersistentID(SALOMEDS::SObject_ptr theSObject, const char* IORString, - CORBA::Boolean isMultiFile) + 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)) { @@ -183,7 +205,8 @@ char* GEOM_Gen_i::IORToLocalPersistentID(SALOMEDS::SObject_ptr theSObject, //============================================================================ char* GEOM_Gen_i::LocalPersistentIDToIOR(SALOMEDS::SObject_ptr theSObject, const char* aLocalPersistentID, - CORBA::Boolean isMultiFile) + CORBA::Boolean isMultiFile, + CORBA::Boolean isASCII) { SALOMEDS::Study_var myStudy = theSObject->GetStudy(); GetCurrentStudy(myStudy->StudyId()); @@ -221,7 +244,7 @@ char* GEOM_Gen_i::LocalPersistentIDToIOR(SALOMEDS::SObject_ptr theSObject, CORBA::String_var ent = strdup(entry.ToCString()); /* Create the main object recursively */ - MainIOR = LocalPersistentIDToIOR(theSObject, ent, isMultiFile ) ; + MainIOR = LocalPersistentIDToIOR(theSObject, ent, isMultiFile, isASCII) ; } else { GC.ReturnNameIOR( mainLabel, MainIOR ); } @@ -427,21 +450,38 @@ SALOMEDS::TMPFile* GEOM_Gen_i::Save(SALOMEDS::SComponent_ptr theComponent, 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):SALOMEDS_Tool::GetTmpDir(); // 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(aSeq[0]); 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); @@ -451,6 +491,7 @@ CORBA::Boolean GEOM_Gen_i::Load(SALOMEDS::SComponent_ptr theComponent, 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() ) ; @@ -459,6 +500,13 @@ CORBA::Boolean GEOM_Gen_i::Load(SALOMEDS::SComponent_ptr theComponent, 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 @@ -4050,8 +4098,8 @@ GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeMirrorByPlane(GEOM::GEOM_Shape_ptr myShape, /* Insert arguments in ocaf */ GEOM::GEOM_Gen::ListOfIOR_var ListShapes = new GEOM::GEOM_Gen::ListOfIOR; ListShapes->length(2); - ListShapes[0] = GetStringFromIOR(myShape) ; - ListShapes[1] = GetStringFromIOR(shapePlane) ; + ListShapes[0] = GetStringFromIOR(GEOM::GEOM_Shape::_duplicate(myShape)) ; + ListShapes[1] = GetStringFromIOR(GEOM::GEOM_Shape::_duplicate(shapePlane)) ; InsertInLabelMoreArguments(tds, result, ListShapes, myCurrentOCAFDoc) ; return result ; } @@ -4318,8 +4366,8 @@ GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakePipe( GEOM::GEOM_Shape_ptr pathShape, /* Insert arguments in ocaf */ GEOM::GEOM_Gen::ListOfIOR_var ListShapes = new GEOM::GEOM_Gen::ListOfIOR; ListShapes->length(2); - ListShapes[0] = GetStringFromIOR(pathShape) ; - ListShapes[1] = GetStringFromIOR(baseShape) ; + ListShapes[0] = GetStringFromIOR(GEOM::GEOM_Shape::_duplicate(pathShape)) ; + ListShapes[1] = GetStringFromIOR(GEOM::GEOM_Shape::_duplicate(baseShape)) ; InsertInLabelMoreArguments(tds, result, ListShapes, myCurrentOCAFDoc) ; } return result ; diff --git a/src/GEOM/GEOM_Gen_i.hh b/src/GEOM/GEOM_Gen_i.hh index 6c3f1a4a4..4ac011bd4 100644 --- a/src/GEOM/GEOM_Gen_i.hh +++ b/src/GEOM/GEOM_Gen_i.hh @@ -1,10 +1,30 @@ -// File : GEOM_GEN_i.h file -// Created : April 2002 -// Author : Lucien PIGNOLONI -// Project : SALOME -// Copyright : OPEN CASCADE -// $Header$ - +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_GEN_i.h file +// Author : Lucien PIGNOLONI +// Module : GEOM +// $Header$ #ifndef __GEOM_GEN_I_H__ #define __GEOM_GEN_I_H__ @@ -108,20 +128,32 @@ class GEOM_Gen_i: public POA_GEOM::GEOM_Gen, const char* theURL, bool isMultiFile); + SALOMEDS::TMPFile* SaveASCII(SALOMEDS::SComponent_ptr theComponent, + const char* theURL, + bool isMultiFile); + CORBA::Boolean Load(SALOMEDS::SComponent_ptr theComponent, const SALOMEDS::TMPFile& theStream, const char* theURL, bool isMultiFile); + + CORBA::Boolean LoadASCII(SALOMEDS::SComponent_ptr theComponent, + const SALOMEDS::TMPFile& theStream, + const char* theURL, + bool isMultiFile); + void Close(SALOMEDS::SComponent_ptr theComponent); char* ComponentDataType(); char* IORToLocalPersistentID(SALOMEDS::SObject_ptr theSObject, const char* IORString, - CORBA::Boolean isMultiFile); + CORBA::Boolean isMultiFile, + CORBA::Boolean isASCII); char* LocalPersistentIDToIOR(SALOMEDS::SObject_ptr theSObject, const char* aLocalPersistentID, - CORBA::Boolean isMultiFile); + CORBA::Boolean isMultiFile, + CORBA::Boolean isASCII); bool CanPublishInStudy(CORBA::Object_ptr theIOR); SALOMEDS::SObject_ptr PublishInStudy(SALOMEDS::Study_ptr theStudy, diff --git a/src/GEOM/GEOM_Shape_i.cc b/src/GEOM/GEOM_Shape_i.cc index 11faabee2..bf7cdf062 100644 --- a/src/GEOM/GEOM_Shape_i.cc +++ b/src/GEOM/GEOM_Shape_i.cc @@ -1,11 +1,32 @@ -using namespace std; -// File : GEOM_Shape_i.cc -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Copyright : OPEN CASCADE -// $Header$ +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_Shape_i.cc +// Author : Lucien PIGNOLONI +// Module : GEOM +// $Header$ +using namespace std; #include #include "GEOM_Shape_i.hh" #include "SALOME_NamingService.hxx" diff --git a/src/GEOM/GEOM_Shape_i.hh b/src/GEOM/GEOM_Shape_i.hh index 10215a11b..a976b31c4 100644 --- a/src/GEOM/GEOM_Shape_i.hh +++ b/src/GEOM/GEOM_Shape_i.hh @@ -1,10 +1,30 @@ -// File : GEOM_Shape_i.hh -// Created : 29 november 2001 -// Author : Lucien PIGNOLONI -// Project : SALOME -// Copyright : OPEN CASCADE -// $Header$ - +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_Shape_i.hh +// Author : Lucien PIGNOLONI +// Module : GEOM +// $Header$ #ifndef __GEOM_SHAPE_I_H__ #define __GEOM_SHAPE_I_H__ diff --git a/src/GEOM/Makefile.in b/src/GEOM/Makefile.in index 05b43e463..e80abfe80 100644 --- a/src/GEOM/Makefile.in +++ b/src/GEOM/Makefile.in @@ -1,15 +1,36 @@ -# -* Makefile *- +# GEOM GEOM : implementaion of GEOM_Gen.idl and GEOM_Shape.idl # -# Author : Patrick GOLDBRONN (CEA) -# Date : 29/06/2001 -# $Header$ +# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with 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 : Makefile.in +# Author : Patrick GOLDBRONN (CEA) +# Module : GEOM +# $Header$ -# source path top_srcdir=@top_srcdir@ -top_builddir=../.. +top_builddir=../../.. srcdir=@srcdir@ -VPATH=.:$(srcdir):$(top_srcdir)/idl:$(top_builddir)/idl +VPATH=.:@srcdir@:@top_srcdir@/idl + @COMMENCE@ @@ -28,9 +49,9 @@ BIN_SERVER_IDL = EXPORT_HEADERS = # additionnal information to compil and link file -CPPFLAGS += $(OCC_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome -CXXFLAGS += $(OCC_CXXFLAGS) -I${KERNEL_ROOT_DIR}/include/salome -LDFLAGS += $(OCC_LIBS) -lGeometryDS -lSalomeDS -lSalomeNS -lSalomeContainer -lGeometryPartition -lGeometryArchimede -L${KERNEL_ROOT_DIR}/lib/salome +CPPFLAGS += $(OCC_INCLUDES) +CXXFLAGS += $(OCC_CXXFLAGS) +LDFLAGS += $(OCC_LIBS) -lGeometryDS -lTOOLSDS -lSalomeNS -lSalomeContainer -lGeometryPartition -lGeometryArchimede # additional file to be cleaned MOSTLYCLEAN = diff --git a/src/GEOM/geom.cxx b/src/GEOM/geom.cxx index b98678616..37707e720 100644 --- a/src/GEOM/geom.cxx +++ b/src/GEOM/geom.cxx @@ -1,11 +1,32 @@ -using namespace std; -// File : geom.cxx -// Created : 5 November 2001 -// Author : Lucien PIGNOLONI -// Project : SALOME -// Copyright : OPEN CASCADE -// $Header$ +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : geom.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM +// $Header$ +using namespace std; #include "GEOM_Gen_i.hh" #include "SALOME_NamingService.hxx" @@ -17,6 +38,7 @@ 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. diff --git a/src/GEOMClient/GEOM_Client.cxx b/src/GEOMClient/GEOM_Client.cxx index ac8d7acf8..e3fb21cb3 100644 --- a/src/GEOMClient/GEOM_Client.cxx +++ b/src/GEOMClient/GEOM_Client.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GEOM_Client.cxx -// Created : -// Author : Yves FRICAUD/Lucien PIGNOLONI -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_Client.cxx +// Author : Yves FRICAUD/Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GEOM_Client.hxx" #include #include "utilities.h" diff --git a/src/GEOMClient/GEOM_Client.hxx b/src/GEOMClient/GEOM_Client.hxx index 1f2df40f3..09d4351b7 100644 --- a/src/GEOMClient/GEOM_Client.hxx +++ b/src/GEOMClient/GEOM_Client.hxx @@ -1,9 +1,29 @@ -// File : GEOM_Client.hxx -// Created : -// Author : Yves FRICAUD -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_Client.hxx +// Author : Yves FRICAUD +// Module : GEOM // $Header$ #ifndef _GEOM_Client_HeaderFile diff --git a/src/GEOMClient/Makefile.in b/src/GEOMClient/Makefile.in index 47cd81639..b3fff1fc6 100644 --- a/src/GEOMClient/Makefile.in +++ b/src/GEOMClient/Makefile.in @@ -1,15 +1,35 @@ -# -* Makefile *- +# GEOM GEOMClient : tool to transfer BREP files from GEOM server to GEOM client # -# Author : Patrick GOLDBRONN (CEA) -# Date : 29/06/2001 -# $Header$ +# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with 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 : Makefile.in +# Author : Patrick GOLDBRONN (CEA) +# Module : GEOM +# $Header$ -# source path top_srcdir=@top_srcdir@ -top_builddir=../.. +top_builddir=../../.. srcdir=@srcdir@ -VPATH=.:$(srcdir):${KERNEL_ROOT_DIR}/idl/salome +VPATH=.:@srcdir@:@top_srcdir@/idl @COMMENCE@ @@ -31,9 +51,9 @@ BIN_CLIENT_IDL = BIN_SERVER_IDL = # additionnal information to compil and link file -CPPFLAGS += $(OCC_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome -CXXFLAGS += $(OCC_CXXFLAGS) -I${KERNEL_ROOT_DIR}/include/salome -LDFLAGS += $(OCC_LIBS) -L${KERNEL_ROOT_DIR}/lib/salome +CPPFLAGS += $(OCC_INCLUDES) +CXXFLAGS += $(OCC_CXXFLAGS) +LDFLAGS += $(OCC_LIBS) @CONCLUDE@ diff --git a/src/GEOMDS/GEOMDS.cdl b/src/GEOMDS/GEOMDS.cdl index 2a3862671..0e727a942 100644 --- a/src/GEOMDS/GEOMDS.cdl +++ b/src/GEOMDS/GEOMDS.cdl @@ -1,9 +1,29 @@ --- File: GEOMDS.cdl --- Created: Fri Mar 16 12:16:40 2001 --- Author: Yves FRICAUD --- ----Copyright: Matra Datavision 2001 - +-- 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +-- +-- +-- +-- File : GEOMDS.cdl +-- Author : Yves FRICAUD +-- Module : GEOM package GEOMDS diff --git a/src/GEOMDS/GEOMDS_Application.cdl b/src/GEOMDS/GEOMDS_Application.cdl index 2ab42672a..de1ec2bbc 100644 --- a/src/GEOMDS/GEOMDS_Application.cdl +++ b/src/GEOMDS/GEOMDS_Application.cdl @@ -1,11 +1,29 @@ -// File : GEOMDS_Application.cdl -// Created : -// Author : Yves FRICAUD -// Project : SALOME -// Module : GEOM -// Copyright : OPEN CASCADE -// $Header$ - +-- 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +-- +-- +-- +-- File : GEOMDS_Application.cdl +-- Author : Yves FRICAUD +-- Module : GEOM class Application from GEOMDS inherits Application from TDocStd diff --git a/src/GEOMDS/GEOMDS_Application.cxx b/src/GEOMDS/GEOMDS_Application.cxx index 3b50dcd2b..00a6b057f 100644 --- a/src/GEOMDS/GEOMDS_Application.cxx +++ b/src/GEOMDS/GEOMDS_Application.cxx @@ -1,13 +1,32 @@ -using namespace std; -// File : GEOMDS_Application.cxx -// Created : -// Author : Yves FRICAUD -// Project : SALOME -// Module : GEOM -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOMDS_Application.cxx +// Author : Yves FRICAUD +// Module : GEOM // $Header$ - +using namespace std; #include "GEOMDS_Application.ixx" //======================================================================= diff --git a/src/GEOMDS/GEOMDS_Application.hxx b/src/GEOMDS/GEOMDS_Application.hxx index 23bdf144e..bc5fa691c 100644 --- a/src/GEOMDS/GEOMDS_Application.hxx +++ b/src/GEOMDS/GEOMDS_Application.hxx @@ -1,18 +1,29 @@ -// File generated by CPPExt (Transient) +// GEOM GEOMDS : implementation of Geometry component data structure and Geometry documents management // -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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 : GEOMDS_Application.hxx +// Module : GEOM + #ifndef _GEOMDS_Application_HeaderFile #define _GEOMDS_Application_HeaderFile diff --git a/src/GEOMDS/GEOMDS_Application.ixx b/src/GEOMDS/GEOMDS_Application.ixx index 22e3c566a..c94573fb8 100644 --- a/src/GEOMDS/GEOMDS_Application.ixx +++ b/src/GEOMDS/GEOMDS_Application.ixx @@ -1,17 +1,29 @@ -// File generated by CPPExt (Transient) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOMDS_Application.ixx +// Module : GEOM + #include "GEOMDS_Application.jxx" #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMDS/GEOMDS_Application.jxx b/src/GEOMDS/GEOMDS_Application.jxx index 85cd58d00..936d0a158 100644 --- a/src/GEOMDS/GEOMDS_Application.jxx +++ b/src/GEOMDS/GEOMDS_Application.jxx @@ -1,3 +1,29 @@ +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOMDS_Application.jxx +// Module : GEOM + #ifndef _TColStd_SequenceOfExtendedString_HeaderFile #include #endif diff --git a/src/GEOMDS/GEOMDS_Commands.cdl b/src/GEOMDS/GEOMDS_Commands.cdl index d0b378e5f..a4a2f8f06 100644 --- a/src/GEOMDS/GEOMDS_Commands.cdl +++ b/src/GEOMDS/GEOMDS_Commands.cdl @@ -1,9 +1,29 @@ --- File: GEOMDS_Commands.cdl --- Created: Fri Mar 16 12:21:51 2001 --- Author: Yves FRICAUD --- ----Copyright: Matra Datavision 2001 - +-- 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +-- +-- +-- +-- File : GEOMDS_Commands.cdl +-- Author : Yves FRICAUD +-- Module : GEOM class Commands from GEOMDS diff --git a/src/GEOMDS/GEOMDS_Commands.cxx b/src/GEOMDS/GEOMDS_Commands.cxx index da7ed8f3e..17f7e5764 100644 --- a/src/GEOMDS/GEOMDS_Commands.cxx +++ b/src/GEOMDS/GEOMDS_Commands.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeomDS_Commands.cxx -// Created : -// Author : Yves FRICAUD/Lucien PIGNOLONI -// Project : SALOME -// Module : GEOM -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// 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.hxx b/src/GEOMDS/GEOMDS_Commands.hxx index 7f9195eea..0e2403920 100644 --- a/src/GEOMDS/GEOMDS_Commands.hxx +++ b/src/GEOMDS/GEOMDS_Commands.hxx @@ -1,12 +1,31 @@ -// File : GeomDS_Commands.hxx -// Created : -// Author : Yves FRICAUD/Lucien PIGNOLONI -// Project : SALOME -// Module : GEOM -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeomDS_Commands.hxx +// Author : Yves FRICAUD/Lucien PIGNOLONI +// Module : GEOM // $Header$ - #ifndef _GEOMDS_Commands_HeaderFile #define _GEOMDS_Commands_HeaderFile diff --git a/src/GEOMDS/GEOMDS_Commands.ixx b/src/GEOMDS/GEOMDS_Commands.ixx index ab6173817..09d333363 100644 --- a/src/GEOMDS/GEOMDS_Commands.ixx +++ b/src/GEOMDS/GEOMDS_Commands.ixx @@ -1,17 +1,29 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOMDS_Commands.ixx +// Module : GEOM + #include "GEOMDS_Commands.jxx" diff --git a/src/GEOMDS/GEOMDS_Commands.jxx b/src/GEOMDS/GEOMDS_Commands.jxx index 9dec188c7..017dcd329 100644 --- a/src/GEOMDS/GEOMDS_Commands.jxx +++ b/src/GEOMDS/GEOMDS_Commands.jxx @@ -1,3 +1,29 @@ +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOMDS_Commands.jxx +// Module : GEOM + #ifndef _TDF_Label_HeaderFile #include #endif diff --git a/src/GEOMDS/GEOMDS_DataMapIteratorOfDataMapOfIntegerTransient.hxx b/src/GEOMDS/GEOMDS_DataMapIteratorOfDataMapOfIntegerTransient.hxx index edda47899..b391e99fa 100644 --- a/src/GEOMDS/GEOMDS_DataMapIteratorOfDataMapOfIntegerTransient.hxx +++ b/src/GEOMDS/GEOMDS_DataMapIteratorOfDataMapOfIntegerTransient.hxx @@ -1,16 +1,28 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOMDS_DataMapIteratorOfDataMapOfIntegerTransient.hxx +// Module : GEOM #ifndef _GEOMDS_DataMapIteratorOfDataMapOfIntegerTransient_HeaderFile #define _GEOMDS_DataMapIteratorOfDataMapOfIntegerTransient_HeaderFile diff --git a/src/GEOMDS/GEOMDS_DataMapIteratorOfDataMapOfIntegerTransient_0.cxx b/src/GEOMDS/GEOMDS_DataMapIteratorOfDataMapOfIntegerTransient_0.cxx index 65172b2c9..24cb9de3d 100644 --- a/src/GEOMDS/GEOMDS_DataMapIteratorOfDataMapOfIntegerTransient_0.cxx +++ b/src/GEOMDS/GEOMDS_DataMapIteratorOfDataMapOfIntegerTransient_0.cxx @@ -1,18 +1,30 @@ -using namespace std; -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOMDS_DataMapIteratorOfDataMapOfIntegerTransient_0.cxx +// Module : GEOM + +using namespace std; #include "GEOMDS_DataMapIteratorOfDataMapOfIntegerTransient.hxx" #ifndef _Standard_NoSuchObject_HeaderFile diff --git a/src/GEOMDS/GEOMDS_DataMapNodeOfDataMapOfIntegerTransient.hxx b/src/GEOMDS/GEOMDS_DataMapNodeOfDataMapOfIntegerTransient.hxx index 0b385827b..437a40015 100644 --- a/src/GEOMDS/GEOMDS_DataMapNodeOfDataMapOfIntegerTransient.hxx +++ b/src/GEOMDS/GEOMDS_DataMapNodeOfDataMapOfIntegerTransient.hxx @@ -1,18 +1,29 @@ -// File generated by CPPExt (Transient) +// GEOM GEOMDS : implementation of Geometry component data structure and Geometry documents management // -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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 : GEOMDS_DataMapNodeOfDataMapOfIntegerTransient.hxx +// Module : GEOM + #ifndef _GEOMDS_DataMapNodeOfDataMapOfIntegerTransient_HeaderFile #define _GEOMDS_DataMapNodeOfDataMapOfIntegerTransient_HeaderFile diff --git a/src/GEOMDS/GEOMDS_DataMapNodeOfDataMapOfIntegerTransient_0.cxx b/src/GEOMDS/GEOMDS_DataMapNodeOfDataMapOfIntegerTransient_0.cxx index 75d4861a7..12f74127c 100644 --- a/src/GEOMDS/GEOMDS_DataMapNodeOfDataMapOfIntegerTransient_0.cxx +++ b/src/GEOMDS/GEOMDS_DataMapNodeOfDataMapOfIntegerTransient_0.cxx @@ -1,18 +1,30 @@ -using namespace std; -// File generated by CPPExt (Transient) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOMDS_DataMapNodeOfDataMapOfIntegerTransient_0.cxx +// Module : GEOM + +using namespace std; #include "GEOMDS_DataMapNodeOfDataMapOfIntegerTransient.hxx" #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMDS/GEOMDS_DataMapOfIntegerTransient.hxx b/src/GEOMDS/GEOMDS_DataMapOfIntegerTransient.hxx index 5c8acc5a9..52fb4b920 100644 --- a/src/GEOMDS/GEOMDS_DataMapOfIntegerTransient.hxx +++ b/src/GEOMDS/GEOMDS_DataMapOfIntegerTransient.hxx @@ -1,16 +1,28 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOMDS_DataMapOfIntegerTransient.hxx +// Module : GEOM #ifndef _GEOMDS_DataMapOfIntegerTransient_HeaderFile #define _GEOMDS_DataMapOfIntegerTransient_HeaderFile diff --git a/src/GEOMDS/GEOMDS_DataMapOfIntegerTransient_0.cxx b/src/GEOMDS/GEOMDS_DataMapOfIntegerTransient_0.cxx index acbe19cd0..da4ed5f16 100644 --- a/src/GEOMDS/GEOMDS_DataMapOfIntegerTransient_0.cxx +++ b/src/GEOMDS/GEOMDS_DataMapOfIntegerTransient_0.cxx @@ -1,18 +1,30 @@ -using namespace std; -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOMDS_DataMapOfIntegerTransient_0.cxx +// Module : GEOM + +using namespace std; #include "GEOMDS_DataMapOfIntegerTransient.hxx" #ifndef _Standard_DomainError_HeaderFile diff --git a/src/GEOMDS/GEOMDS_Explorer.cdl b/src/GEOMDS/GEOMDS_Explorer.cdl index 65a023727..eb737cf95 100644 --- a/src/GEOMDS/GEOMDS_Explorer.cdl +++ b/src/GEOMDS/GEOMDS_Explorer.cdl @@ -1,10 +1,29 @@ -// File : GEOMDS_Explorer.cdl -// Created : -// Author : Yves FRICAUD -// Project : SALOME -// Module : GEOM -// Copyright : OPEN CASCADE -// $Header$ +-- 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +-- +-- +-- +-- File : GEOMDS_Explorer.cdl +-- Author : Yves FRICAUD +-- Module : GEOM class Explorer from GEOMDS diff --git a/src/GEOMDS/GEOMDS_Explorer.cxx b/src/GEOMDS/GEOMDS_Explorer.cxx index 5e4b2bcf6..8a40ff226 100644 --- a/src/GEOMDS/GEOMDS_Explorer.cxx +++ b/src/GEOMDS/GEOMDS_Explorer.cxx @@ -1,13 +1,32 @@ -using namespace std; -// File : GEOMDS_Explorer.cxx -// Created : -// Author : Yves FRICAUD -// Project : SALOME -// Module : GEOM -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOMDS_Explorer.cxx +// Author : Yves FRICAUD +// Module : GEOM // $Header$ - +using namespace std; #include "GEOMDS_Explorer.ixx" #include diff --git a/src/GEOMDS/GEOMDS_Explorer.hxx b/src/GEOMDS/GEOMDS_Explorer.hxx index c8858f460..29ce10bc9 100644 --- a/src/GEOMDS/GEOMDS_Explorer.hxx +++ b/src/GEOMDS/GEOMDS_Explorer.hxx @@ -1,16 +1,28 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOMDS_Explorer.hxx +// Module : GEOM #ifndef _GEOMDS_Explorer_HeaderFile #define _GEOMDS_Explorer_HeaderFile diff --git a/src/GEOMDS/GEOMDS_Explorer.ixx b/src/GEOMDS/GEOMDS_Explorer.ixx index 795b49dbd..cd182b147 100644 --- a/src/GEOMDS/GEOMDS_Explorer.ixx +++ b/src/GEOMDS/GEOMDS_Explorer.ixx @@ -1,17 +1,29 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOMDS_Explorer.ixx +// Module : GEOM + #include "GEOMDS_Explorer.jxx" diff --git a/src/GEOMDS/GEOMDS_Explorer.jxx b/src/GEOMDS/GEOMDS_Explorer.jxx index 3e477e7b9..3a0770d28 100644 --- a/src/GEOMDS/GEOMDS_Explorer.jxx +++ b/src/GEOMDS/GEOMDS_Explorer.jxx @@ -1,3 +1,29 @@ +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOMDS_Explorer.jxx +// Module : GEOM + #ifndef _TDF_Label_HeaderFile #include #endif diff --git a/src/GEOMDS/Handle_GEOMDS_Application.hxx b/src/GEOMDS/Handle_GEOMDS_Application.hxx index ba3b1a272..418b10298 100644 --- a/src/GEOMDS/Handle_GEOMDS_Application.hxx +++ b/src/GEOMDS/Handle_GEOMDS_Application.hxx @@ -1,17 +1,28 @@ -// File generated by CPPExt (Transient) +// GEOM GEOMDS : implementation of Geometry component data structure and Geometry documents management // -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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 : Handle_GEOMDS_Application.hxx +// Module : GEOM #ifndef _Handle_GEOMDS_Application_HeaderFile #define _Handle_GEOMDS_Application_HeaderFile diff --git a/src/GEOMDS/Handle_GEOMDS_DataMapNodeOfDataMapOfIntegerTransient.hxx b/src/GEOMDS/Handle_GEOMDS_DataMapNodeOfDataMapOfIntegerTransient.hxx index 250fc7d28..911d6a490 100644 --- a/src/GEOMDS/Handle_GEOMDS_DataMapNodeOfDataMapOfIntegerTransient.hxx +++ b/src/GEOMDS/Handle_GEOMDS_DataMapNodeOfDataMapOfIntegerTransient.hxx @@ -1,17 +1,28 @@ -// File generated by CPPExt (Transient) +// GEOM GEOMDS : implementation of Geometry component data structure and Geometry documents management // -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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 : Handle_GEOMDS_DataMapNodeOfDataMapOfIntegerTransient.hxx +// Module : GEOM #ifndef _Handle_GEOMDS_DataMapNodeOfDataMapOfIntegerTransient_HeaderFile #define _Handle_GEOMDS_DataMapNodeOfDataMapOfIntegerTransient_HeaderFile diff --git a/src/GEOMDS/Makefile.in b/src/GEOMDS/Makefile.in index 095106538..7fbc42390 100644 --- a/src/GEOMDS/Makefile.in +++ b/src/GEOMDS/Makefile.in @@ -1,15 +1,35 @@ -# -* Makefile *- +# GEOM GEOMDS : implementation of Geometry component data structure and Geometry documents management # -# Author : Patrick GOLDBRONN (CEA) -# Date : 29/06/2001 -# $Header$ +# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with 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 : Makefile.in +# Author : Patrick GOLDBRONN (CEA) +# Module : GEOM +# $Header$ -# source path top_srcdir=@top_srcdir@ -top_builddir=../.. +top_builddir=../../.. srcdir=@srcdir@ -VPATH=.:$(srcdir):$(top_srcdir)/idl:$(top_builddir)/idl +VPATH=.:@srcdir@:@top_srcdir@/idl @COMMENCE@ @@ -41,9 +61,9 @@ EXPORT_HEADERS= GEOMDS_Application.hxx \ GEOMDS_Explorer.hxx # additionnal information to compil and link file -CPPFLAGS += $(OCC_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome -CXXFLAGS += $(OCC_CXXFLAGS) -I${KERNEL_ROOT_DIR}/include/salome -LDFLAGS += $(OCC_LIBS) -L${KERNEL_ROOT_DIR}/lib/salome +CPPFLAGS += $(OCC_INCLUDES) +CXXFLAGS += $(OCC_CXXFLAGS) +LDFLAGS += $(OCC_LIBS) # additional file to be cleaned MOSTLYCLEAN = diff --git a/src/GEOMFiltersSelection/GEOM_EdgeFilter.cxx b/src/GEOMFiltersSelection/GEOM_EdgeFilter.cxx index 5142a6db8..e61d3d30f 100644 --- a/src/GEOMFiltersSelection/GEOM_EdgeFilter.cxx +++ b/src/GEOMFiltersSelection/GEOM_EdgeFilter.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GEOM_EdgeFilter.cxx -// Created : Fri Dec 07 09:57:24 2001 -// Author : Nicolas REJNERI -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_EdgeFilter.cxx +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ +using namespace std; #include "GEOM_EdgeFilter.ixx" #include "GEOM_Client.hxx" diff --git a/src/GEOMFiltersSelection/GEOM_EdgeFilter.hxx b/src/GEOMFiltersSelection/GEOM_EdgeFilter.hxx index 153a6e58f..a464cdae9 100644 --- a/src/GEOMFiltersSelection/GEOM_EdgeFilter.hxx +++ b/src/GEOMFiltersSelection/GEOM_EdgeFilter.hxx @@ -1,18 +1,29 @@ -// File generated by CPPExt (Transient) +// GEOM GEOMFiltersSelection : filter selector for the viewer // -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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_EdgeFilter.hxx +// Module : GEOM + #ifndef _GEOM_EdgeFilter_HeaderFile #define _GEOM_EdgeFilter_HeaderFile diff --git a/src/GEOMFiltersSelection/GEOM_EdgeFilter.ixx b/src/GEOMFiltersSelection/GEOM_EdgeFilter.ixx index a36de41da..9e028014b 100644 --- a/src/GEOMFiltersSelection/GEOM_EdgeFilter.ixx +++ b/src/GEOMFiltersSelection/GEOM_EdgeFilter.ixx @@ -1,17 +1,29 @@ -// File generated by CPPExt (Transient) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_EdgeFilter.ixx +// Module : GEOM + #include "GEOM_EdgeFilter.jxx" #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMFiltersSelection/GEOM_EdgeFilter.jxx b/src/GEOMFiltersSelection/GEOM_EdgeFilter.jxx index d080c8e56..267be7964 100644 --- a/src/GEOMFiltersSelection/GEOM_EdgeFilter.jxx +++ b/src/GEOMFiltersSelection/GEOM_EdgeFilter.jxx @@ -1,3 +1,29 @@ +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// 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 aefda178f..aca4648e4 100644 --- a/src/GEOMFiltersSelection/GEOM_FaceFilter.cxx +++ b/src/GEOMFiltersSelection/GEOM_FaceFilter.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GEOM_FaceFilter.cxx -// Created : Fri Dec 07 09:57:24 2001 -// Author : Nicolas REJNERI -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_FaceFilter.cxx +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ +using namespace std; #include "GEOM_FaceFilter.ixx" #include "GEOM_Client.hxx" diff --git a/src/GEOMFiltersSelection/GEOM_FaceFilter.hxx b/src/GEOMFiltersSelection/GEOM_FaceFilter.hxx index 4f8a5ae49..d81e27413 100644 --- a/src/GEOMFiltersSelection/GEOM_FaceFilter.hxx +++ b/src/GEOMFiltersSelection/GEOM_FaceFilter.hxx @@ -1,18 +1,29 @@ -// File generated by CPPExt (Transient) +// GEOM GEOMFiltersSelection : filter selector for the viewer // -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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_FaceFilter.hxx +// Module : GEOM + #ifndef _GEOM_FaceFilter_HeaderFile #define _GEOM_FaceFilter_HeaderFile diff --git a/src/GEOMFiltersSelection/GEOM_FaceFilter.ixx b/src/GEOMFiltersSelection/GEOM_FaceFilter.ixx index 436a1b173..f6404a0d3 100644 --- a/src/GEOMFiltersSelection/GEOM_FaceFilter.ixx +++ b/src/GEOMFiltersSelection/GEOM_FaceFilter.ixx @@ -1,17 +1,29 @@ -// File generated by CPPExt (Transient) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_FaceFilter.ixx +// Module : GEOM + #include "GEOM_FaceFilter.jxx" #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMFiltersSelection/GEOM_FaceFilter.jxx b/src/GEOMFiltersSelection/GEOM_FaceFilter.jxx index 521f074c3..144d1a3f5 100644 --- a/src/GEOMFiltersSelection/GEOM_FaceFilter.jxx +++ b/src/GEOMFiltersSelection/GEOM_FaceFilter.jxx @@ -1,3 +1,29 @@ +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_FaceFilter.jxx +// Module : GEOM + #ifndef _GEOM_FaceFilter_HeaderFile #include "GEOM_FaceFilter.hxx" #endif diff --git a/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.cxx b/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.cxx index 519d1037f..6ca272b01 100644 --- a/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.cxx +++ b/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GEOM_ShapeTypeFilter.cxx -// Created : Fri Dec 07 09:57:24 2001 -// Author : Nicolas REJNERI -// Project : SALOME -// Module : SALOMEGUI -// Copyright : Open CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_ShapeTypeFilter.cxx +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ +using namespace std; #include "GEOM_ShapeTypeFilter.ixx" #include "GEOM_Client.hxx" diff --git a/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.hxx b/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.hxx index 4c62f026d..ffbc4e115 100644 --- a/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.hxx +++ b/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.hxx @@ -1,18 +1,29 @@ -// File generated by CPPExt (Transient) +// GEOM GEOMFiltersSelection : filter selector for the viewer // -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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_ShapeTypeFilter.hxx +// Module : GEOM + #ifndef _GEOM_ShapeTypeFilter_HeaderFile #define _GEOM_ShapeTypeFilter_HeaderFile diff --git a/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.ixx b/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.ixx index ee6e4a994..db4643d12 100644 --- a/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.ixx +++ b/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.ixx @@ -1,17 +1,29 @@ -// File generated by CPPExt (Transient) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_ShapeTypeFilter.ixx +// Module : GEOM + #include "GEOM_ShapeTypeFilter.jxx" #ifndef _Standard_TypeMismatch_HeaderFile diff --git a/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.jxx b/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.jxx index be7dac640..8a51985a1 100644 --- a/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.jxx +++ b/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.jxx @@ -1,3 +1,29 @@ +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_ShapeTypeFilter.jxx +// Module : GEOM + #ifndef _GEOM_ShapeTypeFilter_HeaderFile #include "GEOM_ShapeTypeFilter.hxx" #endif diff --git a/src/GEOMFiltersSelection/Handle_GEOM_EdgeFilter.hxx b/src/GEOMFiltersSelection/Handle_GEOM_EdgeFilter.hxx index 6cc45e9e2..6c8dd9c28 100644 --- a/src/GEOMFiltersSelection/Handle_GEOM_EdgeFilter.hxx +++ b/src/GEOMFiltersSelection/Handle_GEOM_EdgeFilter.hxx @@ -1,17 +1,28 @@ -// File generated by CPPExt (Transient) +// GEOM GEOMFiltersSelection : filter selector for the viewer // -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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 : Handle_GEOM_EdgeFilter.hxx +// Module : GEOM #ifndef _Handle_GEOM_EdgeFilter_HeaderFile #define _Handle_GEOM_EdgeFilter_HeaderFile diff --git a/src/GEOMFiltersSelection/Handle_GEOM_FaceFilter.hxx b/src/GEOMFiltersSelection/Handle_GEOM_FaceFilter.hxx index 9881e3e63..3acc213ac 100644 --- a/src/GEOMFiltersSelection/Handle_GEOM_FaceFilter.hxx +++ b/src/GEOMFiltersSelection/Handle_GEOM_FaceFilter.hxx @@ -1,17 +1,28 @@ -// File generated by CPPExt (Transient) +// GEOM GEOMFiltersSelection : filter selector for the viewer // -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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 : Handle_GEOM_FaceFilter.hxx +// Module : GEOM #ifndef _Handle_GEOM_FaceFilter_HeaderFile #define _Handle_GEOM_FaceFilter_HeaderFile diff --git a/src/GEOMFiltersSelection/Handle_GEOM_ShapeTypeFilter.hxx b/src/GEOMFiltersSelection/Handle_GEOM_ShapeTypeFilter.hxx index 8c7cf97b9..d20bf6d96 100644 --- a/src/GEOMFiltersSelection/Handle_GEOM_ShapeTypeFilter.hxx +++ b/src/GEOMFiltersSelection/Handle_GEOM_ShapeTypeFilter.hxx @@ -1,17 +1,28 @@ -// File generated by CPPExt (Transient) +// GEOM GEOMFiltersSelection : filter selector for the viewer // -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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 : Handle_GEOM_ShapeTypeFilter.hxx +// Module : GEOM #ifndef _Handle_GEOM_ShapeTypeFilter_HeaderFile #define _Handle_GEOM_ShapeTypeFilter_HeaderFile diff --git a/src/GEOMFiltersSelection/Makefile.in b/src/GEOMFiltersSelection/Makefile.in index e4b8b5ddf..61fc51808 100644 --- a/src/GEOMFiltersSelection/Makefile.in +++ b/src/GEOMFiltersSelection/Makefile.in @@ -1,15 +1,35 @@ -# -* Makefile *- +# GEOM GEOMFiltersSelection : filter selector for the viewer # -# Author : Patrick GOLDBRONN (CEA) -# Date : 29/06/2001 -# $Header$ +# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with 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 : Makefile.in +# Author : Patrick GOLDBRONN (CEA) +# Module : GEOM +# $Header$ -# source path top_srcdir=@top_srcdir@ -top_builddir=../.. +top_builddir=../../.. srcdir=@srcdir@ -VPATH=.:$(srcdir):$(top_srcdir)/idl:$(top_builddir)/idl +VPATH=.:@srcdir@:@top_srcdir@/idl @COMMENCE@ diff --git a/src/GEOMGUI/GeometryGUI.cxx b/src/GEOMGUI/GeometryGUI.cxx index c284b6f4f..0e86012f5 100644 --- a/src/GEOMGUI/GeometryGUI.cxx +++ b/src/GEOMGUI/GeometryGUI.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI.h" // SALOME Includes @@ -26,15 +46,6 @@ using namespace std; #include "OCCViewer_ViewPort3d.h" #include "OCCViewer_Viewer3d.h" -#include "VTKViewer_RenderWindowInteractor.h" -#include "VTKViewer_ViewFrame.h" - -#include "GEOM_Actor.h" -#include "GEOM_Client.hxx" -#include "GEOM_AISShape.hxx" -#include "GEOM_AssemblyBuilder.h" -#include "GEOM_InteractiveObject.hxx" - #include "SALOME_NamingService.hxx" #include "SALOME_ListIteratorOfListIO.hxx" #include "SALOME_InteractiveObject.hxx" @@ -141,6 +152,16 @@ using namespace std; #include #include #include + +#include "VTKViewer_RenderWindowInteractor.h" +#include "VTKViewer_ViewFrame.h" +#include "GEOM_Actor.h" +#include "GEOM_Client.hxx" +#include "GEOM_AISShape.hxx" +#include "GEOM_AssemblyBuilder.h" +#include "GEOM_InteractiveObject.hxx" + + #include "GeometryGUI_aParameterDlg.h" #include "GeometryGUI_PointDlg.h" // Method POINT @@ -2942,13 +2963,13 @@ bool GeometryGUI::OnGUIEvent(int theCommandID, QAD_Desktop* parent) AIS_ListIteratorOfListOfInteractive ite(List); ic->InitCurrent(); - if ( ic-> NbCurrents() ) + if ( ic->NbCurrents() ) while (ite.More()) { if (ite.Value()->IsInstance(STANDARD_TYPE(GEOM_AISShape))) { Handle(GEOM_AISShape) aSh = Handle(GEOM_AISShape)::DownCast(ite.Value()); Handle (AIS_Drawer) CurDrawer; - CurDrawer = ic->Current()->Attributes(); + CurDrawer = aSh->Attributes(); CurDrawer->UIsoAspect()->SetNumber( UIso ); CurDrawer->VIsoAspect()->SetNumber( VIso ); ic->SetLocalAttributes(aSh, CurDrawer); diff --git a/src/GEOMGUI/GeometryGUI.h b/src/GEOMGUI/GeometryGUI.h index 716f1acab..f2583f090 100644 --- a/src/GEOMGUI/GeometryGUI.h +++ b/src/GEOMGUI/GeometryGUI.h @@ -1,9 +1,29 @@ -// File : GeometryGUI.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef GeometryGUI_HeaderFile diff --git a/src/GEOMGUI/GeometryGUI_ArcDlg.cxx b/src/GEOMGUI/GeometryGUI_ArcDlg.cxx index e922c32cb..d9078f0c0 100644 --- a/src/GEOMGUI/GeometryGUI_ArcDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_ArcDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_ArcDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_ArcDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_ArcDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_ArcDlg.h b/src/GEOMGUI/GeometryGUI_ArcDlg.h index 0daf173e4..40384fee5 100644 --- a/src/GEOMGUI/GeometryGUI_ArcDlg.h +++ b/src/GEOMGUI/GeometryGUI_ArcDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_ArcDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_ArcDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_ARC_H diff --git a/src/GEOMGUI/GeometryGUI_ArchimedeDlg.cxx b/src/GEOMGUI/GeometryGUI_ArchimedeDlg.cxx index 50f1a4438..4353623c1 100644 --- a/src/GEOMGUI/GeometryGUI_ArchimedeDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_ArchimedeDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_ArchimedeDlg.cxx -// Created : Mon Feb 25 11:13:13 CET 2002 -// Author : Nicolas REJNERI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_ArchimedeDlg.cxx +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_ArchimedeDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_ArchimedeDlg.h b/src/GEOMGUI/GeometryGUI_ArchimedeDlg.h index 152cb49c7..f233b43c8 100644 --- a/src/GEOMGUI/GeometryGUI_ArchimedeDlg.h +++ b/src/GEOMGUI/GeometryGUI_ArchimedeDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_ArchimedeDlg.h -// Created : Mon Feb 25 11:13:13 CET 2002 -// Author : Nicolas REJNERI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_ArchimedeDlg.h +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_ARCHIMEDE_H diff --git a/src/GEOMGUI/GeometryGUI_BndBoxDlg.cxx b/src/GEOMGUI/GeometryGUI_BndBoxDlg.cxx index 7845b2947..4796a778c 100644 --- a/src/GEOMGUI/GeometryGUI_BndBoxDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_BndBoxDlg.cxx @@ -1,14 +1,32 @@ -using namespace std; -// File : GeometryGUI_BndBoxDlg.cxx -// Created : Mon Mar 04 13:16:16 2002 -// Author : Nicolas REJNERI - -// Project : SALOME -// Module : GEOMGUI -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_BndBoxDlg.cxx +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ - +using namespace std; #include "GeometryGUI_BndBoxDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_BndBoxDlg.h b/src/GEOMGUI/GeometryGUI_BndBoxDlg.h index 846220202..546dde539 100644 --- a/src/GEOMGUI/GeometryGUI_BndBoxDlg.h +++ b/src/GEOMGUI/GeometryGUI_BndBoxDlg.h @@ -1,10 +1,29 @@ -// File : GeometryGUI_BndBoxDlg.h -// Created : Mon Mar 04 13:12:22 2002 -// Author : Nicolas REJNERI - -// Project : SALOME -// Module : GEOMGUI -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_BndBoxDlg.h +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_BNDBOX_H diff --git a/src/GEOMGUI/GeometryGUI_BoxDlg.cxx b/src/GEOMGUI/GeometryGUI_BoxDlg.cxx index 0bb5c93fa..f7b4b6a74 100644 --- a/src/GEOMGUI/GeometryGUI_BoxDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_BoxDlg.cxx @@ -1,13 +1,32 @@ -using namespace std; -// File : GeometryGUI_BoxDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_BoxDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ - +using namespace std; #include "GeometryGUI_BoxDlg.h" #include "GeometryGUI_SpinBox.h" diff --git a/src/GEOMGUI/GeometryGUI_BoxDlg.h b/src/GEOMGUI/GeometryGUI_BoxDlg.h index fd7318ec6..062591582 100644 --- a/src/GEOMGUI/GeometryGUI_BoxDlg.h +++ b/src/GEOMGUI/GeometryGUI_BoxDlg.h @@ -1,12 +1,31 @@ -// File : GeometryGUI_BoxDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_BoxDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ - #ifndef DIALOGBOX_BOX_H #define DIALOGBOX_BOX_H diff --git a/src/GEOMGUI/GeometryGUI_CenterMassDlg.cxx b/src/GEOMGUI/GeometryGUI_CenterMassDlg.cxx index 69dd839f5..2e31ffd30 100644 --- a/src/GEOMGUI/GeometryGUI_CenterMassDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_CenterMassDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_CenterMassDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_CenterMassDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_CenterMassDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_CenterMassDlg.h b/src/GEOMGUI/GeometryGUI_CenterMassDlg.h index 18a4ed82f..c56720724 100644 --- a/src/GEOMGUI/GeometryGUI_CenterMassDlg.h +++ b/src/GEOMGUI/GeometryGUI_CenterMassDlg.h @@ -1,11 +1,29 @@ -// File : GeometryGUI_CenterMassDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE -// $Heade$ - +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_CenterMassDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM #ifndef DIALOGBOX_CMASS_H #define DIALOGBOX_CMASS_H diff --git a/src/GEOMGUI/GeometryGUI_ChamferDlg.cxx b/src/GEOMGUI/GeometryGUI_ChamferDlg.cxx index 14b8091a0..7029c86a8 100644 --- a/src/GEOMGUI/GeometryGUI_ChamferDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_ChamferDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_ChamferDlg.cxx -// Created : -// Author : Damien COQUERET -// Project : SALOME -// Module : GEOM -// Copyright : OPEN CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_ChamferDlg.cxx +// Author : Damien COQUERET +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_ChamferDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_ChamferDlg.h b/src/GEOMGUI/GeometryGUI_ChamferDlg.h index 2718e2351..22fe93ffa 100644 --- a/src/GEOMGUI/GeometryGUI_ChamferDlg.h +++ b/src/GEOMGUI/GeometryGUI_ChamferDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_ChamferDlg.h -// Created : -// Author : Damien COQUERET -// Project : SALOME -// Module : GEOM -// Copyright : OPEN CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_ChamferDlg.h +// Author : Damien COQUERET +// Module : GEOM // $Header$ #ifndef DIALOGBOX_CHAMFER_H diff --git a/src/GEOMGUI/GeometryGUI_CheckShape.cxx b/src/GEOMGUI/GeometryGUI_CheckShape.cxx index 94566b249..dcb21a4ee 100644 --- a/src/GEOMGUI/GeometryGUI_CheckShape.cxx +++ b/src/GEOMGUI/GeometryGUI_CheckShape.cxx @@ -1,13 +1,32 @@ -using namespace std; -// File : GeometryGUI_CheckShape.cxx -// Created : Tue Mar 12 17:23:51 2002 -// Author : Nicolas REJNERI -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_CheckShape.cxx +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ - +using namespace std; #include "GeometryGUI_CheckShape.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_CheckShape.h b/src/GEOMGUI/GeometryGUI_CheckShape.h index e85f6d665..ce9b51789 100644 --- a/src/GEOMGUI/GeometryGUI_CheckShape.h +++ b/src/GEOMGUI/GeometryGUI_CheckShape.h @@ -1,12 +1,31 @@ -// File : GeometryGUI_CheckShape.h -// Created : Tue Mar 12 17:25:52 2002 -// Author : Nicolas REJNERI -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_CheckShape.h +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ - #ifndef DIALOGBOX_CHECKSHAPE_H #define DIALOGBOX_CHECKSHAPE_H diff --git a/src/GEOMGUI/GeometryGUI_CircleDlg.cxx b/src/GEOMGUI/GeometryGUI_CircleDlg.cxx index c4a698e47..026a62ec6 100644 --- a/src/GEOMGUI/GeometryGUI_CircleDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_CircleDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_CircleDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_CircleDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_CircleDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_CircleDlg.h b/src/GEOMGUI/GeometryGUI_CircleDlg.h index b372f4a5d..8254f30b4 100644 --- a/src/GEOMGUI/GeometryGUI_CircleDlg.h +++ b/src/GEOMGUI/GeometryGUI_CircleDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_CircleDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_CircleDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_CIRCLE_H diff --git a/src/GEOMGUI/GeometryGUI_CommonDlg.cxx b/src/GEOMGUI/GeometryGUI_CommonDlg.cxx index c492ba107..8b4d3a12d 100644 --- a/src/GEOMGUI/GeometryGUI_CommonDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_CommonDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_CommonDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_CommonDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_CommonDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_CommonDlg.h b/src/GEOMGUI/GeometryGUI_CommonDlg.h index 661f81a4b..9e8844482 100644 --- a/src/GEOMGUI/GeometryGUI_CommonDlg.h +++ b/src/GEOMGUI/GeometryGUI_CommonDlg.h @@ -1,12 +1,31 @@ -// File : GeometryGUI_CommonDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_CommonDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ - #ifndef DIALOGBOX_COMMON_H #define DIALOGBOX_COMMON_H diff --git a/src/GEOMGUI/GeometryGUI_CompoundDlg.cxx b/src/GEOMGUI/GeometryGUI_CompoundDlg.cxx index 6414b74a3..1d061bf45 100644 --- a/src/GEOMGUI/GeometryGUI_CompoundDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_CompoundDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_CompoundDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_CompoundDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_CompoundDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_CompoundDlg.h b/src/GEOMGUI/GeometryGUI_CompoundDlg.h index 4493465d2..8bdbbc810 100644 --- a/src/GEOMGUI/GeometryGUI_CompoundDlg.h +++ b/src/GEOMGUI/GeometryGUI_CompoundDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_CompoundDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_CompoundDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_COMPOUND_H diff --git a/src/GEOMGUI/GeometryGUI_ConeDlg.cxx b/src/GEOMGUI/GeometryGUI_ConeDlg.cxx index 16244f461..50bb8cc81 100644 --- a/src/GEOMGUI/GeometryGUI_ConeDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_ConeDlg.cxx @@ -1,13 +1,32 @@ -using namespace std; -// File : GeometryGUI_ConeDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_ConeDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ - +using namespace std; #include "GeometryGUI_ConeDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_ConeDlg.h b/src/GEOMGUI/GeometryGUI_ConeDlg.h index aa210e933..7811f1b58 100644 --- a/src/GEOMGUI/GeometryGUI_ConeDlg.h +++ b/src/GEOMGUI/GeometryGUI_ConeDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_ConeDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_ConeDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_CONE_H diff --git a/src/GEOMGUI/GeometryGUI_CutDlg.cxx b/src/GEOMGUI/GeometryGUI_CutDlg.cxx index 377b4c713..103da4506 100644 --- a/src/GEOMGUI/GeometryGUI_CutDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_CutDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_CutDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_CutDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_CutDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_CutDlg.h b/src/GEOMGUI/GeometryGUI_CutDlg.h index bfda1729e..1e7c6ed2e 100644 --- a/src/GEOMGUI/GeometryGUI_CutDlg.h +++ b/src/GEOMGUI/GeometryGUI_CutDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_CutDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_CutDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_CUT_H diff --git a/src/GEOMGUI/GeometryGUI_CylinderDlg.cxx b/src/GEOMGUI/GeometryGUI_CylinderDlg.cxx index efbd6a96a..58e879861 100644 --- a/src/GEOMGUI/GeometryGUI_CylinderDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_CylinderDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_CylinderDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_CylinderDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_CylinderDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_CylinderDlg.h b/src/GEOMGUI/GeometryGUI_CylinderDlg.h index 77ea6a890..fafab604e 100644 --- a/src/GEOMGUI/GeometryGUI_CylinderDlg.h +++ b/src/GEOMGUI/GeometryGUI_CylinderDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_CylinderDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_CylinderDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_CYLINDER_H diff --git a/src/GEOMGUI/GeometryGUI_DistanceDlg.cxx b/src/GEOMGUI/GeometryGUI_DistanceDlg.cxx index f51ebd222..a87d68e0b 100644 --- a/src/GEOMGUI/GeometryGUI_DistanceDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_DistanceDlg.cxx @@ -1,13 +1,32 @@ -using namespace std; -// File : GeometryGUI_DistanceDlg.cxx -// Created : Mon Mar 04 22:32:20 2002 -// Author : Nicolas REJNERI -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_DistanceDlg.cxx +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ - +using namespace std; #include "GeometryGUI_DistanceDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_DistanceDlg.h b/src/GEOMGUI/GeometryGUI_DistanceDlg.h index 109b702f0..742fe38e2 100644 --- a/src/GEOMGUI/GeometryGUI_DistanceDlg.h +++ b/src/GEOMGUI/GeometryGUI_DistanceDlg.h @@ -1,12 +1,31 @@ -// File : GeometryGUI_DistanceDlg.h -// Created : Mon Mar 04 22:34:22 2002 -// Author : Nicolas REJNERI -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_DistanceDlg.h +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ - #ifndef DIALOGBOX_DISTANCE_H #define DIALOGBOX_DISTANCE_H diff --git a/src/GEOMGUI/GeometryGUI_EdgeDlg.cxx b/src/GEOMGUI/GeometryGUI_EdgeDlg.cxx index db05f6682..305895df0 100644 --- a/src/GEOMGUI/GeometryGUI_EdgeDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_EdgeDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_EdgeDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_EdgeDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_EdgeDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_EdgeDlg.h b/src/GEOMGUI/GeometryGUI_EdgeDlg.h index 2fa209b92..facdddc5f 100644 --- a/src/GEOMGUI/GeometryGUI_EdgeDlg.h +++ b/src/GEOMGUI/GeometryGUI_EdgeDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_EdgeDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_EdgeDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_EDGE_H diff --git a/src/GEOMGUI/GeometryGUI_FaceDlg.cxx b/src/GEOMGUI/GeometryGUI_FaceDlg.cxx index d9a75c62b..bcf6b900f 100644 --- a/src/GEOMGUI/GeometryGUI_FaceDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_FaceDlg.cxx @@ -1,13 +1,32 @@ -using namespace std; -// File : GeometryGUI_FaceDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_FaceDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ - +using namespace std; #include "GeometryGUI_FaceDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_FaceDlg.h b/src/GEOMGUI/GeometryGUI_FaceDlg.h index ac4a81d1d..2b33a5161 100644 --- a/src/GEOMGUI/GeometryGUI_FaceDlg.h +++ b/src/GEOMGUI/GeometryGUI_FaceDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_FaceDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_FaceDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_FACE_H diff --git a/src/GEOMGUI/GeometryGUI_FilletDlg.cxx b/src/GEOMGUI/GeometryGUI_FilletDlg.cxx index ae13260df..f1b313220 100644 --- a/src/GEOMGUI/GeometryGUI_FilletDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_FilletDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_FilletDlg.cxx -// Created : -// Author : Damien COQUERET -// Project : SALOME -// Module : GEOM -// Copyright : OPEN CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_FilletDlg.cxx +// Author : Damien COQUERET +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_FilletDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_FilletDlg.h b/src/GEOMGUI/GeometryGUI_FilletDlg.h index 36684b6d3..775bcc9f6 100644 --- a/src/GEOMGUI/GeometryGUI_FilletDlg.h +++ b/src/GEOMGUI/GeometryGUI_FilletDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_FilletDlg.h -// Created : -// Author : Damien COQUERET -// Project : SALOME -// Module : GEOM -// Copyright : OPEN CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_FilletDlg.h +// Author : Damien COQUERET +// Module : GEOM // $Header$ #ifndef DIALOGBOX_FILLET_H diff --git a/src/GEOMGUI/GeometryGUI_FillingDlg.cxx b/src/GEOMGUI/GeometryGUI_FillingDlg.cxx index be165f4cc..7d1e32a5b 100644 --- a/src/GEOMGUI/GeometryGUI_FillingDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_FillingDlg.cxx @@ -1,13 +1,32 @@ -using namespace std; -// File : GeometryGUI_FillingDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_FillingDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ - +using namespace std; #include "GeometryGUI_FillingDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_FillingDlg.h b/src/GEOMGUI/GeometryGUI_FillingDlg.h index 5b92ab057..b41726884 100644 --- a/src/GEOMGUI/GeometryGUI_FillingDlg.h +++ b/src/GEOMGUI/GeometryGUI_FillingDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_FillingDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_FillingDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_FILLING_H diff --git a/src/GEOMGUI/GeometryGUI_FillingHoleDlg.cxx b/src/GEOMGUI/GeometryGUI_FillingHoleDlg.cxx index 03288c3d0..2b81c4283 100644 --- a/src/GEOMGUI/GeometryGUI_FillingHoleDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_FillingHoleDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_FillingHoleDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_FillingHoleDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_FillingHoleDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_FillingHoleDlg.h b/src/GEOMGUI/GeometryGUI_FillingHoleDlg.h index 0a3401da6..8e0b758df 100644 --- a/src/GEOMGUI/GeometryGUI_FillingHoleDlg.h +++ b/src/GEOMGUI/GeometryGUI_FillingHoleDlg.h @@ -1,12 +1,31 @@ -// File : GeometryGUI_FillingHoleDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_FillingHoleDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ - #ifndef GEOMETRYGUI_FILLINGHOLE_H #define GEOMETRYGUI_FILLINGHOLE_H diff --git a/src/GEOMGUI/GeometryGUI_FuseDlg.cxx b/src/GEOMGUI/GeometryGUI_FuseDlg.cxx index 939111ae8..773cd5893 100644 --- a/src/GEOMGUI/GeometryGUI_FuseDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_FuseDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_FuseDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_FuseDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_FuseDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_FuseDlg.h b/src/GEOMGUI/GeometryGUI_FuseDlg.h index 7e951d6bd..67a2911b1 100644 --- a/src/GEOMGUI/GeometryGUI_FuseDlg.h +++ b/src/GEOMGUI/GeometryGUI_FuseDlg.h @@ -1,12 +1,31 @@ -// File : GeometryGUI_FuseDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_FuseDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ - #ifndef DIALOGBOX_FUSE_H #define DIALOGBOX_FUSE_H diff --git a/src/GEOMGUI/GeometryGUI_InertiaDlg.cxx b/src/GEOMGUI/GeometryGUI_InertiaDlg.cxx index 42542395a..9f55075a7 100644 --- a/src/GEOMGUI/GeometryGUI_InertiaDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_InertiaDlg.cxx @@ -1,12 +1,31 @@ -using namespace std; -// File : GeometryGUI_InertiaDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE -// $Headers: +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_InertiaDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM +using namespace std; #include "GeometryGUI_InertiaDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_InertiaDlg.h b/src/GEOMGUI/GeometryGUI_InertiaDlg.h index 4b3a28435..c64f81700 100644 --- a/src/GEOMGUI/GeometryGUI_InertiaDlg.h +++ b/src/GEOMGUI/GeometryGUI_InertiaDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_InertiaDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_InertiaDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_INERTIA_H diff --git a/src/GEOMGUI/GeometryGUI_LineDlg.cxx b/src/GEOMGUI/GeometryGUI_LineDlg.cxx index 95e24fecb..03fd750a0 100644 --- a/src/GEOMGUI/GeometryGUI_LineDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_LineDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_LineDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_LineDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_LineDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_LineDlg.h b/src/GEOMGUI/GeometryGUI_LineDlg.h index 76bed37f2..830ccdc28 100644 --- a/src/GEOMGUI/GeometryGUI_LineDlg.h +++ b/src/GEOMGUI/GeometryGUI_LineDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_LineDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_LineDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_LINE_H diff --git a/src/GEOMGUI/GeometryGUI_MaxToleranceDlg.cxx b/src/GEOMGUI/GeometryGUI_MaxToleranceDlg.cxx index 9079c764c..b703dcf49 100644 --- a/src/GEOMGUI/GeometryGUI_MaxToleranceDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_MaxToleranceDlg.cxx @@ -1,13 +1,32 @@ -using namespace std; -// File : GeometryGUI_MaxToleranceDlg.cxx -// Created : Mon Mar 04 14:08:28 2002 -// Author : Nicolas REJNERI - -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_MaxToleranceDlg.cxx +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_MaxToleranceDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_MaxToleranceDlg.h b/src/GEOMGUI/GeometryGUI_MaxToleranceDlg.h index 527857900..7da3e4111 100644 --- a/src/GEOMGUI/GeometryGUI_MaxToleranceDlg.h +++ b/src/GEOMGUI/GeometryGUI_MaxToleranceDlg.h @@ -1,13 +1,31 @@ -// File : GeometryGUI_MaxToleranceDlg.h -// Created : Mon Mar 04 14:10:03 2002 -// Author : Nicolas REJNERI - -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_MaxToleranceDlg.h +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ - #ifndef DIALOGBOX_MAXTOLERANCE_H #define DIALOGBOX_MAXTOLERANCE_H diff --git a/src/GEOMGUI/GeometryGUI_MirrorDlg.cxx b/src/GEOMGUI/GeometryGUI_MirrorDlg.cxx index dc2f2d51b..8095f6747 100644 --- a/src/GEOMGUI/GeometryGUI_MirrorDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_MirrorDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_MirrorDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_MirrorDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_MirrorDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_MirrorDlg.h b/src/GEOMGUI/GeometryGUI_MirrorDlg.h index 75d321091..adc4d7d33 100644 --- a/src/GEOMGUI/GeometryGUI_MirrorDlg.h +++ b/src/GEOMGUI/GeometryGUI_MirrorDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_MirrorDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_MirrorDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_MIRROR_H diff --git a/src/GEOMGUI/GeometryGUI_MultiRotationDlg.cxx b/src/GEOMGUI/GeometryGUI_MultiRotationDlg.cxx index 3bd4ac8a6..23498d30d 100644 --- a/src/GEOMGUI/GeometryGUI_MultiRotationDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_MultiRotationDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_MultiTranslationDlg.cxx -// Created : -// Author : Damien COQUERET -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_MultiTranslationDlg.cxx +// Author : Damien COQUERET +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_MultiRotationDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_MultiRotationDlg.h b/src/GEOMGUI/GeometryGUI_MultiRotationDlg.h index 7917ec1fa..13f6804ad 100644 --- a/src/GEOMGUI/GeometryGUI_MultiRotationDlg.h +++ b/src/GEOMGUI/GeometryGUI_MultiRotationDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_MultiRotationDlg.h -// Created : -// Author : Damien COQUERET -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_MultiRotationDlg.h +// Author : Damien COQUERET +// Module : GEOM // $Header$ #ifndef DIALOGBOX_MULTIROTATION_H diff --git a/src/GEOMGUI/GeometryGUI_MultiTranslationDlg.cxx b/src/GEOMGUI/GeometryGUI_MultiTranslationDlg.cxx index a13ab6dba..32e40e317 100644 --- a/src/GEOMGUI/GeometryGUI_MultiTranslationDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_MultiTranslationDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_MultiTranslationDlg.cxx -// Created : -// Author : Damien COQUERET -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_MultiTranslationDlg.cxx +// Author : Damien COQUERET +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_MultiTranslationDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_MultiTranslationDlg.h b/src/GEOMGUI/GeometryGUI_MultiTranslationDlg.h index b33eefc23..d0b366dc9 100644 --- a/src/GEOMGUI/GeometryGUI_MultiTranslationDlg.h +++ b/src/GEOMGUI/GeometryGUI_MultiTranslationDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_MultiTranslationDlg.h -// Created : -// Author : Damien COQUERET -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_MultiTranslationDlg.h +// Author : Damien COQUERET +// Module : GEOM // $Header$ #ifndef DIALOGBOX_MULTITRANSLATION_H diff --git a/src/GEOMGUI/GeometryGUI_NbIsosDlg.cxx b/src/GEOMGUI/GeometryGUI_NbIsosDlg.cxx index 6755abe57..849cb1a1d 100644 --- a/src/GEOMGUI/GeometryGUI_NbIsosDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_NbIsosDlg.cxx @@ -1,13 +1,32 @@ -using namespace std; -// File : GeometryGUI_NbIsosDlg.cxx -// Created : Wed Mar 13 12:27:28 2002 -// Author : -// Project : SALOME -// Module : GEOM -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_NbIsosDlg.cxx +// Author : +// Module : GEOM // $Header: - +using namespace std; #include "GeometryGUI_NbIsosDlg.h" #include "GeometryGUI.h" #include "QAD_Tools.h" diff --git a/src/GEOMGUI/GeometryGUI_NbIsosDlg.h b/src/GEOMGUI/GeometryGUI_NbIsosDlg.h index 1aa48a681..a5d3498cd 100644 --- a/src/GEOMGUI/GeometryGUI_NbIsosDlg.h +++ b/src/GEOMGUI/GeometryGUI_NbIsosDlg.h @@ -1,12 +1,31 @@ -// File : GeometryGUI_NbIsosDlg.h -// Created : Wed Mar 13 12:27:28 2002 -// Author : -// Project : SALOME -// Module : GEOM -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_NbIsosDlg.h +// Author : +// Module : GEOM // $Header: - #ifndef GEOMETRYGUI_NBISOSDLG_H #define GEOMETRYGUI_NBISOSDLG_H diff --git a/src/GEOMGUI/GeometryGUI_OrientationDlg.cxx b/src/GEOMGUI/GeometryGUI_OrientationDlg.cxx index 6491e64ef..ba04a75dc 100644 --- a/src/GEOMGUI/GeometryGUI_OrientationDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_OrientationDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_OrientationDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_OrientationDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_OrientationDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_OrientationDlg.h b/src/GEOMGUI/GeometryGUI_OrientationDlg.h index e919300a1..81b439e1a 100644 --- a/src/GEOMGUI/GeometryGUI_OrientationDlg.h +++ b/src/GEOMGUI/GeometryGUI_OrientationDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_OrientationDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_OrientationDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_ORIENTATION_H diff --git a/src/GEOMGUI/GeometryGUI_PartitionDlg.cxx b/src/GEOMGUI/GeometryGUI_PartitionDlg.cxx index a4ff5e285..db30aec01 100644 --- a/src/GEOMGUI/GeometryGUI_PartitionDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_PartitionDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_PartitionDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_PartitionDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_PartitionDlg.h" #include "GeometryGUI.h" @@ -212,8 +232,8 @@ void GeometryGUI_PartitionDlg::Init( SALOME_Selection* Sel ) myGeomGUI->SetActiveDialogBox( (QDialog*)this ) ; /* type for sub shape selection */ - ComboBox1->insertItem( tr( "RECONSTRUCTION_LIMIT_SHAPE" ) ); -// ComboBox1->insertItem( tr( "RECONSTRUCTION_LIMIT_SOLID" ) ); +// ComboBox1->insertItem( tr( "RECONSTRUCTION_LIMIT_SHAPE" ) ); + ComboBox1->insertItem( tr( "RECONSTRUCTION_LIMIT_SOLID" ) ); ComboBox1->insertItem( tr( "RECONSTRUCTION_LIMIT_SHELL" ) ); ComboBox1->insertItem( tr( "RECONSTRUCTION_LIMIT_FACE" ) ); ComboBox1->insertItem( tr( "RECONSTRUCTION_LIMIT_WIRE" ) ); @@ -284,13 +304,13 @@ void GeometryGUI_PartitionDlg::ClickOnApply() { GEOM::shape_type limit; switch (myLimit) { +// case 0: limit = GEOM::SOLID ; break; case 0: limit = GEOM::SHAPE ; break; - case 1: limit = GEOM::SOLID ; break; - case 2: limit = GEOM::SHELL ; break; - case 3: limit = GEOM::FACE ; break; - case 4: limit = GEOM::WIRE ; break; - case 5: limit = GEOM::EDGE ; break; - case 6: limit = GEOM::VERTEX; break; + case 1: limit = GEOM::SHELL ; break; + case 2: limit = GEOM::FACE ; break; + case 3: limit = GEOM::WIRE ; break; + case 4: limit = GEOM::EDGE ; break; + case 5: limit = GEOM::VERTEX; break; default:limit = GEOM::SHAPE; } myGeomGUI->MakePartitionAndDisplay (myListShapes, diff --git a/src/GEOMGUI/GeometryGUI_PartitionDlg.h b/src/GEOMGUI/GeometryGUI_PartitionDlg.h index a6f2a2bba..72725819b 100644 --- a/src/GEOMGUI/GeometryGUI_PartitionDlg.h +++ b/src/GEOMGUI/GeometryGUI_PartitionDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_PartitionDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_PartitionDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_PARTITION_H diff --git a/src/GEOMGUI/GeometryGUI_PipeDlg.cxx b/src/GEOMGUI/GeometryGUI_PipeDlg.cxx index ec26aa5c3..8f24507c0 100644 --- a/src/GEOMGUI/GeometryGUI_PipeDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_PipeDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_PipeDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_PipeDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_PipeDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_PipeDlg.h b/src/GEOMGUI/GeometryGUI_PipeDlg.h index 8abc720c3..bbae793a9 100644 --- a/src/GEOMGUI/GeometryGUI_PipeDlg.h +++ b/src/GEOMGUI/GeometryGUI_PipeDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_PipeDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_PipeDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_PIPE_H diff --git a/src/GEOMGUI/GeometryGUI_PlaneDlg.cxx b/src/GEOMGUI/GeometryGUI_PlaneDlg.cxx index eec07cc53..7816d7b06 100644 --- a/src/GEOMGUI/GeometryGUI_PlaneDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_PlaneDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_PlaneDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_PlaneDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_PlaneDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_PlaneDlg.h b/src/GEOMGUI/GeometryGUI_PlaneDlg.h index 4f4cbe53d..fb5c0f6ee 100644 --- a/src/GEOMGUI/GeometryGUI_PlaneDlg.h +++ b/src/GEOMGUI/GeometryGUI_PlaneDlg.h @@ -1,12 +1,31 @@ -// File : GeometryGUI_PlaneDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_PlaneDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ - #ifndef DIALOGBOX_PLANE_H #define DIALOGBOX_PLANE_H diff --git a/src/GEOMGUI/GeometryGUI_PointDlg.cxx b/src/GEOMGUI/GeometryGUI_PointDlg.cxx index a7167fab3..3c3d05ac7 100644 --- a/src/GEOMGUI/GeometryGUI_PointDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_PointDlg.cxx @@ -1,13 +1,32 @@ -using namespace std; -// File : GeometryGUI_PointDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_PointDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ - +using namespace std; #include "GeometryGUI_PointDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_PointDlg.h b/src/GEOMGUI/GeometryGUI_PointDlg.h index 1d086a7f9..2de8161ee 100644 --- a/src/GEOMGUI/GeometryGUI_PointDlg.h +++ b/src/GEOMGUI/GeometryGUI_PointDlg.h @@ -1,12 +1,31 @@ -// File : GeometryGUI_PointDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_PointDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ - #ifndef DIALOGBOX_POINT_H #define DIALOGBOX_POINT_H diff --git a/src/GEOMGUI/GeometryGUI_PrismDlg.cxx b/src/GEOMGUI/GeometryGUI_PrismDlg.cxx index 51108b041..05f58e48f 100644 --- a/src/GEOMGUI/GeometryGUI_PrismDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_PrismDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_PrismDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_PrismDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_PrismDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_PrismDlg.h b/src/GEOMGUI/GeometryGUI_PrismDlg.h index f33b527fb..8425fc152 100644 --- a/src/GEOMGUI/GeometryGUI_PrismDlg.h +++ b/src/GEOMGUI/GeometryGUI_PrismDlg.h @@ -1,12 +1,31 @@ -// File : GeometryGUI_PrismDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_PrismDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ - #ifndef DIALOGBOX_PRISM_H #define DIALOGBOX_PRISM_H diff --git a/src/GEOMGUI/GeometryGUI_PropertiesDlg.cxx b/src/GEOMGUI/GeometryGUI_PropertiesDlg.cxx index 4881826c0..87b172b2a 100644 --- a/src/GEOMGUI/GeometryGUI_PropertiesDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_PropertiesDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_PropertiesDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_PropertiesDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_PropertiesDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_PropertiesDlg.h b/src/GEOMGUI/GeometryGUI_PropertiesDlg.h index 214a479f8..2251e2882 100644 --- a/src/GEOMGUI/GeometryGUI_PropertiesDlg.h +++ b/src/GEOMGUI/GeometryGUI_PropertiesDlg.h @@ -1,10 +1,29 @@ -// File : GeometryGUI_PropertiesDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE -// $Headers: +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_PropertiesDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM #ifndef DIALOGBOX_PROPERTIES_H #define DIALOGBOX_PROPERTIES_H diff --git a/src/GEOMGUI/GeometryGUI_RevolDlg.cxx b/src/GEOMGUI/GeometryGUI_RevolDlg.cxx index ef153c0c9..a5a799bb2 100644 --- a/src/GEOMGUI/GeometryGUI_RevolDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_RevolDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_RevolDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_RevolDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_RevolDlg.h" #include diff --git a/src/GEOMGUI/GeometryGUI_RevolDlg.h b/src/GEOMGUI/GeometryGUI_RevolDlg.h index ba8879d23..5d4096c45 100644 --- a/src/GEOMGUI/GeometryGUI_RevolDlg.h +++ b/src/GEOMGUI/GeometryGUI_RevolDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_RevolDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_RevolDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_REVOLUTION_H diff --git a/src/GEOMGUI/GeometryGUI_RotationDlg.cxx b/src/GEOMGUI/GeometryGUI_RotationDlg.cxx index 596bba315..85ec8d835 100644 --- a/src/GEOMGUI/GeometryGUI_RotationDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_RotationDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_RotationDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_RotationDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_RotationDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_RotationDlg.h b/src/GEOMGUI/GeometryGUI_RotationDlg.h index ad021c4e0..36d6e3985 100644 --- a/src/GEOMGUI/GeometryGUI_RotationDlg.h +++ b/src/GEOMGUI/GeometryGUI_RotationDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_RotationDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_RotationDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_ROTATION_H diff --git a/src/GEOMGUI/GeometryGUI_ScaleDlg.cxx b/src/GEOMGUI/GeometryGUI_ScaleDlg.cxx index 1e2fde27b..4119f08e9 100644 --- a/src/GEOMGUI/GeometryGUI_ScaleDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_ScaleDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_ScaleDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_ScaleDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_ScaleDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_ScaleDlg.h b/src/GEOMGUI/GeometryGUI_ScaleDlg.h index b16cae0ea..e261ed585 100644 --- a/src/GEOMGUI/GeometryGUI_ScaleDlg.h +++ b/src/GEOMGUI/GeometryGUI_ScaleDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_ScaleDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_ScaleDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_SCALE_H diff --git a/src/GEOMGUI/GeometryGUI_SectionDlg.cxx b/src/GEOMGUI/GeometryGUI_SectionDlg.cxx index 5a1833610..e67438c92 100644 --- a/src/GEOMGUI/GeometryGUI_SectionDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_SectionDlg.cxx @@ -1,13 +1,32 @@ -using namespace std; -// File : GeometryGUI_SectionDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_SectionDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ - +using namespace std; #include "GeometryGUI_SectionDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_SectionDlg.h b/src/GEOMGUI/GeometryGUI_SectionDlg.h index 080009e8c..5ac5b2a8f 100644 --- a/src/GEOMGUI/GeometryGUI_SectionDlg.h +++ b/src/GEOMGUI/GeometryGUI_SectionDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_SectionDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_SectionDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header: #ifndef DIALOGBOX_SECTION_H diff --git a/src/GEOMGUI/GeometryGUI_SewingDlg.cxx b/src/GEOMGUI/GeometryGUI_SewingDlg.cxx index 7a19eafc5..a3cdbc8fe 100644 --- a/src/GEOMGUI/GeometryGUI_SewingDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_SewingDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_SewingDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_SewingDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_SewingDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_SewingDlg.h b/src/GEOMGUI/GeometryGUI_SewingDlg.h index f4fff34c3..8e2545bd6 100644 --- a/src/GEOMGUI/GeometryGUI_SewingDlg.h +++ b/src/GEOMGUI/GeometryGUI_SewingDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_SewingDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_SewingDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_SEWING_H diff --git a/src/GEOMGUI/GeometryGUI_ShellDlg.cxx b/src/GEOMGUI/GeometryGUI_ShellDlg.cxx index 431f860f8..b7b288b5a 100644 --- a/src/GEOMGUI/GeometryGUI_ShellDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_ShellDlg.cxx @@ -1,13 +1,32 @@ -using namespace std; -// File : GeometryGUI_ShellDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_ShellDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ - +using namespace std; #include "GeometryGUI_ShellDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_ShellDlg.h b/src/GEOMGUI/GeometryGUI_ShellDlg.h index 7dbc30bf2..0e3fc1940 100644 --- a/src/GEOMGUI/GeometryGUI_ShellDlg.h +++ b/src/GEOMGUI/GeometryGUI_ShellDlg.h @@ -1,12 +1,31 @@ -// File : GeometryGUI_ShellDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_ShellDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ - #ifndef DIALOGBOX_SHELL_H #define DIALOGBOX_SHELL_H diff --git a/src/GEOMGUI/GeometryGUI_SphereDlg.cxx b/src/GEOMGUI/GeometryGUI_SphereDlg.cxx index f30de814b..c0e53c9ce 100644 --- a/src/GEOMGUI/GeometryGUI_SphereDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_SphereDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_SphereDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_SphereDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_SphereDlg.h" #include "GeometryGUI_SpinBox.h" diff --git a/src/GEOMGUI/GeometryGUI_SphereDlg.h b/src/GEOMGUI/GeometryGUI_SphereDlg.h index e3b193e0c..cd5027971 100644 --- a/src/GEOMGUI/GeometryGUI_SphereDlg.h +++ b/src/GEOMGUI/GeometryGUI_SphereDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_SphereDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_SphereDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_SPHERE_H diff --git a/src/GEOMGUI/GeometryGUI_SpinBox.cxx b/src/GEOMGUI/GeometryGUI_SpinBox.cxx index 984634eef..eec132f44 100644 --- a/src/GEOMGUI/GeometryGUI_SpinBox.cxx +++ b/src/GEOMGUI/GeometryGUI_SpinBox.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_SpinBox.cxx -// Created : 5 june 2002 -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_SpinBox.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_SpinBox.h" #include "GeometryGUI.h" #include diff --git a/src/GEOMGUI/GeometryGUI_SpinBox.h b/src/GEOMGUI/GeometryGUI_SpinBox.h index 7963de530..d5c60d14f 100644 --- a/src/GEOMGUI/GeometryGUI_SpinBox.h +++ b/src/GEOMGUI/GeometryGUI_SpinBox.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_SpinBox.h -// Created : 4 july 2002 -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_SpinBox.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef GEOMSPINBOX_H diff --git a/src/GEOMGUI/GeometryGUI_SubShapeDlg.cxx b/src/GEOMGUI/GeometryGUI_SubShapeDlg.cxx index ed83b6ed6..c68781ed6 100644 --- a/src/GEOMGUI/GeometryGUI_SubShapeDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_SubShapeDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_SubShapeDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_SubShapeDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_SubShapeDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_SubShapeDlg.h b/src/GEOMGUI/GeometryGUI_SubShapeDlg.h index 080d8990d..7435721de 100644 --- a/src/GEOMGUI/GeometryGUI_SubShapeDlg.h +++ b/src/GEOMGUI/GeometryGUI_SubShapeDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_SubShapeDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_SubShapeDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_SUBSHAPE_H diff --git a/src/GEOMGUI/GeometryGUI_SuppressFacesDlg.cxx b/src/GEOMGUI/GeometryGUI_SuppressFacesDlg.cxx index 40062160d..2fcdbcd98 100644 --- a/src/GEOMGUI/GeometryGUI_SuppressFacesDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_SuppressFacesDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_SuppressFacesDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_SuppressFacesDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_SuppressFacesDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_SuppressFacesDlg.h b/src/GEOMGUI/GeometryGUI_SuppressFacesDlg.h index 486898139..6e332c6e7 100644 --- a/src/GEOMGUI/GeometryGUI_SuppressFacesDlg.h +++ b/src/GEOMGUI/GeometryGUI_SuppressFacesDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_SuppressFacesDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_SuppressFacesDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_SUPPRESSFACES_H diff --git a/src/GEOMGUI/GeometryGUI_SuppressHoleDlg.cxx b/src/GEOMGUI/GeometryGUI_SuppressHoleDlg.cxx index 1b3189bf9..b821aeea7 100644 --- a/src/GEOMGUI/GeometryGUI_SuppressHoleDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_SuppressHoleDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_SuppressHoleDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_SuppressHoleDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_SuppressHoleDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_SuppressHoleDlg.h b/src/GEOMGUI/GeometryGUI_SuppressHoleDlg.h index 0b0f8345a..3e6e8554a 100644 --- a/src/GEOMGUI/GeometryGUI_SuppressHoleDlg.h +++ b/src/GEOMGUI/GeometryGUI_SuppressHoleDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_SuppressHoleDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_SuppressHoleDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef GEOMETRYGUI_SUPPRESSHOLE_H diff --git a/src/GEOMGUI/GeometryGUI_Swig.cxx b/src/GEOMGUI/GeometryGUI_Swig.cxx index b38d9d15d..4a03d3dcb 100644 --- a/src/GEOMGUI/GeometryGUI_Swig.cxx +++ b/src/GEOMGUI/GeometryGUI_Swig.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_Swig.cxx -// Created : Tue Mar 26 15:08:38 2002 -// Author : Nicolas REJNERI, Paul RASCLE -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE, EDF 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_Swig.cxx +// Author : Nicolas REJNERI, Paul RASCLE +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_Swig.hxx" #include "utilities.h" @@ -18,15 +38,6 @@ using namespace std; #include "SALOMEGUI_ImportOperation.h" #include "OCCViewer_Viewer3d.h" -#include "VTKViewer_RenderWindowInteractor.h" -#include "VTKViewer_ViewFrame.h" - -#include "GEOM_Actor.h" -#include "GEOM_Client.hxx" -#include "GEOM_AISShape.hxx" -#include "GEOM_AssemblyBuilder.h" -#include "GEOM_InteractiveObject.hxx" - #include #include #include @@ -37,6 +48,15 @@ using namespace std; #include #include +#include "VTKViewer_RenderWindowInteractor.h" +#include "VTKViewer_ViewFrame.h" + +#include "GEOM_Actor.h" +#include "GEOM_Client.hxx" +#include "GEOM_AISShape.hxx" +#include "GEOM_AssemblyBuilder.h" +#include "GEOM_InteractiveObject.hxx" + static GEOM_Client ShapeReader; GeometryGUI_Swig::GeometryGUI_Swig() diff --git a/src/GEOMGUI/GeometryGUI_Swig.hxx b/src/GEOMGUI/GeometryGUI_Swig.hxx index 34d0bcae6..f2e608d5a 100644 --- a/src/GEOMGUI/GeometryGUI_Swig.hxx +++ b/src/GEOMGUI/GeometryGUI_Swig.hxx @@ -1,9 +1,29 @@ -// File : GeometryGUI_Swig.hxx -// Created : Tue Mar 26 15:08:38 2002 -// Author : Nicolas REJNERI, Paul RASCLE -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE, EDF 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_Swig.hxx +// Author : Nicolas REJNERI, Paul RASCLE +// Module : GEOM // $Header$ #ifndef _GeometryGUI_SWIG_HXX_ diff --git a/src/GEOMGUI/GeometryGUI_Swig.i b/src/GEOMGUI/GeometryGUI_Swig.i index 9ebc5b22b..2d6a9e4b0 100644 --- a/src/GEOMGUI/GeometryGUI_Swig.i +++ b/src/GEOMGUI/GeometryGUI_Swig.i @@ -1,9 +1,29 @@ -// File : GeometryGUI_Swig.i -// Created : Tue Mar 26 15:08:38 2002 -// Author : Nicolas REJNERI, Paul RASCLE -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE, EDF 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_Swig.i +// Author : Nicolas REJNERI, Paul RASCLE +// Module : GEOM // $Header$ %{ diff --git a/src/GEOMGUI/GeometryGUI_TorusDlg.cxx b/src/GEOMGUI/GeometryGUI_TorusDlg.cxx index 4e7aaca2c..02e192314 100644 --- a/src/GEOMGUI/GeometryGUI_TorusDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_TorusDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_TorusDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_TorusDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_TorusDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_TorusDlg.h b/src/GEOMGUI/GeometryGUI_TorusDlg.h index 7385f1a8e..bae34d8ee 100644 --- a/src/GEOMGUI/GeometryGUI_TorusDlg.h +++ b/src/GEOMGUI/GeometryGUI_TorusDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_TorusDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_TorusDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_TORUS_H diff --git a/src/GEOMGUI/GeometryGUI_TranslationDlg.cxx b/src/GEOMGUI/GeometryGUI_TranslationDlg.cxx index eee0f0eb7..d3ebd94ba 100644 --- a/src/GEOMGUI/GeometryGUI_TranslationDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_TranslationDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_TranslationDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_TranslationDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_TranslationDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_TranslationDlg.h b/src/GEOMGUI/GeometryGUI_TranslationDlg.h index 66252061a..617bc4802 100644 --- a/src/GEOMGUI/GeometryGUI_TranslationDlg.h +++ b/src/GEOMGUI/GeometryGUI_TranslationDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_TranslationDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_TranslationDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_TRANSLATION_H diff --git a/src/GEOMGUI/GeometryGUI_TransparencyDlg.cxx b/src/GEOMGUI/GeometryGUI_TransparencyDlg.cxx index 9c6a51087..8925aeb1a 100644 --- a/src/GEOMGUI/GeometryGUI_TransparencyDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_TransparencyDlg.cxx @@ -1,20 +1,34 @@ +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_TransparencyDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM + using namespace std; -// File : GeometryGUI_TransparencyDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE -// $Headers - - #include "GeometryGUI_TransparencyDlg.h" #include "GeometryGUI.h" -#include "VTKViewer_ViewFrame.h" -#include "VTKViewer_RenderWindowInteractor.h" - -//#include "QAD_ViewVTKFrame.h" #include "QAD_RightFrame.h" #include "SALOME_ListIteratorOfListIO.hxx" @@ -29,6 +43,8 @@ using namespace std; #include #include +#include "VTKViewer_ViewFrame.h" +#include "VTKViewer_RenderWindowInteractor.h" //================================================================================= // class : GeometryGUI_TransparencyDlg() diff --git a/src/GEOMGUI/GeometryGUI_TransparencyDlg.h b/src/GEOMGUI/GeometryGUI_TransparencyDlg.h index c9c276e5b..c9a2c2046 100644 --- a/src/GEOMGUI/GeometryGUI_TransparencyDlg.h +++ b/src/GEOMGUI/GeometryGUI_TransparencyDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_TransparencyDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_TransparencyDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_TRANSPARENCYDLG_H diff --git a/src/GEOMGUI/GeometryGUI_VectorDlg.cxx b/src/GEOMGUI/GeometryGUI_VectorDlg.cxx index 751806349..81cb1f66c 100644 --- a/src/GEOMGUI/GeometryGUI_VectorDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_VectorDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_VectorDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_VectorDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_VectorDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_VectorDlg.h b/src/GEOMGUI/GeometryGUI_VectorDlg.h index 843a4e6d0..03582f257 100644 --- a/src/GEOMGUI/GeometryGUI_VectorDlg.h +++ b/src/GEOMGUI/GeometryGUI_VectorDlg.h @@ -1,12 +1,31 @@ -// File : GeometryGUI_VectorDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_VectorDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ - #ifndef DIALOGBOX_VECTOR_H #define DIALOGBOX_VECTOR_H diff --git a/src/GEOMGUI/GeometryGUI_WhatisDlg.cxx b/src/GEOMGUI/GeometryGUI_WhatisDlg.cxx index f5c8d6d9d..b0cdeb7f4 100644 --- a/src/GEOMGUI/GeometryGUI_WhatisDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_WhatisDlg.cxx @@ -1,13 +1,32 @@ -using namespace std; -// File : GeometryGUI_WhatisDlg.cxx -// Created : Mon Mar 04 14:48:16 2002 -// Author : Nicolas REJNERI -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_WhatisDlg.cxx +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ - +using namespace std; #include "GeometryGUI_WhatisDlg.h" #include "GeometryGUI.h" @@ -16,7 +35,11 @@ using namespace std; #include "utilities.h" // Open CASCADE Includes -#include +//#include +#include +#include +#include +#include // QT Includes #include @@ -373,15 +396,50 @@ void GeometryGUI_WhatisDlg::CalculateWhatis(const TopoDS_Shape& S) if( S.IsNull() ) return ; - + TCollection_AsciiString Astr; Astr = Astr + " Number of shapes in " + strdup(SelectedName.latin1()) + ": \n"; - + try { - BRepTools_ShapeSet BS; - BS.Add(S); - BS.DumpExtent(Astr); - + // BRepTools_ShapeSet BS; + // BS.Add(S); + // BS.DumpExtent(Astr); + + int iType, nbTypes [TopAbs_SHAPE]; + for (iType = 0; iType < TopAbs_SHAPE; ++iType) + nbTypes[ iType ] = 0; + nbTypes[ S.ShapeType() ]++; + + TopTools_MapOfShape aMapOfShape; + aMapOfShape.Add( S ); + TopTools_ListOfShape aListOfShape; + aListOfShape.Append( S ); + + 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() ] ++; + } + } + } + + Astr = Astr + " VERTEX : " + TCollection_AsciiString(nbTypes[ TopAbs_VERTEX ]) + "\n"; + Astr = Astr + " EDGE : " + TCollection_AsciiString(nbTypes[ TopAbs_EDGE ]) + "\n"; + Astr = Astr + " WIRE : " + TCollection_AsciiString(nbTypes[ TopAbs_WIRE ]) + "\n"; + Astr = Astr + " FACE : " + TCollection_AsciiString(nbTypes[ TopAbs_FACE ]) + "\n"; + Astr = Astr + " SHELL : " + TCollection_AsciiString(nbTypes[ TopAbs_SHELL ]) + "\n"; + Astr = Astr + " SOLID : " + TCollection_AsciiString(nbTypes[ TopAbs_SOLID ]) + "\n"; + Astr = Astr + " COMPSOLID : " + TCollection_AsciiString(nbTypes[ TopAbs_COMPSOLID ]) + "\n"; + Astr = Astr + " COMPOUND : " + TCollection_AsciiString(nbTypes[ TopAbs_COMPOUND ]) + "\n"; + Astr = Astr + " SHAPE : " + TCollection_AsciiString(aMapOfShape.Extent()) + "\n"; + Text->setText( Astr.ToCString() ); } catch(Standard_Failure) { diff --git a/src/GEOMGUI/GeometryGUI_WhatisDlg.h b/src/GEOMGUI/GeometryGUI_WhatisDlg.h index 7d15cae9c..02a4e9f4a 100644 --- a/src/GEOMGUI/GeometryGUI_WhatisDlg.h +++ b/src/GEOMGUI/GeometryGUI_WhatisDlg.h @@ -1,10 +1,29 @@ -// File : GeometryGUI_WhatisDlg.h -// Created : Mon Mar 04 14:49:51 2002 -// Author : Nicolas REJNERI - -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_WhatisDlg.h +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_WHATIS_H diff --git a/src/GEOMGUI/GeometryGUI_WireDlg.cxx b/src/GEOMGUI/GeometryGUI_WireDlg.cxx index cfd91073f..c1ec5dc90 100644 --- a/src/GEOMGUI/GeometryGUI_WireDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_WireDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_WireDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_WireDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_WireDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_WireDlg.h b/src/GEOMGUI/GeometryGUI_WireDlg.h index 5336b2a8b..5346ccaca 100644 --- a/src/GEOMGUI/GeometryGUI_WireDlg.h +++ b/src/GEOMGUI/GeometryGUI_WireDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_WireDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_WireDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef DIALOGBOX_WIRE_H diff --git a/src/GEOMGUI/GeometryGUI_WorkingPlaneDlg.cxx b/src/GEOMGUI/GeometryGUI_WorkingPlaneDlg.cxx index ec93a4b1c..ac173cd84 100644 --- a/src/GEOMGUI/GeometryGUI_WorkingPlaneDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_WorkingPlaneDlg.cxx @@ -1,12 +1,31 @@ -using namespace std; -// File : GeometryGUI_WorkingPlaneDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE -// $Headers: +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_WorkingPlaneDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM +using namespace std; #include "GeometryGUI_WorkingPlaneDlg.h" #include "GeometryGUI.h" diff --git a/src/GEOMGUI/GeometryGUI_WorkingPlaneDlg.h b/src/GEOMGUI/GeometryGUI_WorkingPlaneDlg.h index 1645beaac..2f54705a8 100644 --- a/src/GEOMGUI/GeometryGUI_WorkingPlaneDlg.h +++ b/src/GEOMGUI/GeometryGUI_WorkingPlaneDlg.h @@ -1,10 +1,29 @@ -// File : GeometryGUI_WorkingPlaneDlg.h -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : OPEN CASCADE -// $Headers: +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_WorkingPlaneDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM #ifndef DIALOGBOX_WORKINGPLANE_H #define DIALOGBOX_WORKINGPLANE_H diff --git a/src/GEOMGUI/GeometryGUI_aParameterDlg.cxx b/src/GEOMGUI/GeometryGUI_aParameterDlg.cxx index c41ba8659..ef9f50514 100644 --- a/src/GEOMGUI/GeometryGUI_aParameterDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_aParameterDlg.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GeometryGUI_aParameterDlg.cxx -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : Open CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_aParameterDlg.cxx +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ +using namespace std; #include "GeometryGUI_aParameterDlg.h" #include "GeometryGUI.h" #include "QAD_SpinBoxDbl.h" diff --git a/src/GEOMGUI/GeometryGUI_aParameterDlg.h b/src/GEOMGUI/GeometryGUI_aParameterDlg.h index b14ac0b24..6e65998a4 100644 --- a/src/GEOMGUI/GeometryGUI_aParameterDlg.h +++ b/src/GEOMGUI/GeometryGUI_aParameterDlg.h @@ -1,9 +1,29 @@ -// File : GeometryGUI_aParameterDlg.h -// Created : july 5 2001 -// Author : Lucien PIGNOLONI -// Project : SALOME -// Module : GeometryGUI -// Copyright : Open CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GeometryGUI_aParameterDlg.h +// Author : Lucien PIGNOLONI +// Module : GEOM // $Header$ #ifndef GeometryGUI_aParameterDLG_H diff --git a/src/GEOMGUI/GeometryGUI_icons.po b/src/GEOMGUI/GeometryGUI_icons.po index 61c69d6b9..6cf22ad83 100644 --- a/src/GEOMGUI/GeometryGUI_icons.po +++ b/src/GEOMGUI/GeometryGUI_icons.po @@ -1,7 +1,29 @@ -# 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". +# 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +# +# +# +# File : GeometryGUI_icons.po +# Module : GEOM + msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" diff --git a/src/GEOMGUI/GeometryGUI_msg_en.po b/src/GEOMGUI/GeometryGUI_msg_en.po index 10b228ee0..a26356cfd 100644 --- a/src/GEOMGUI/GeometryGUI_msg_en.po +++ b/src/GEOMGUI/GeometryGUI_msg_en.po @@ -1,7 +1,29 @@ -# 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". +# 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +# +# +# +# File : GeometryGUI_msg_en.po +# Module : GEOM + msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" diff --git a/src/GEOMGUI/GeometryGUI_msg_fr.po b/src/GEOMGUI/GeometryGUI_msg_fr.po index fdeb94661..00fcebbdd 100644 --- a/src/GEOMGUI/GeometryGUI_msg_fr.po +++ b/src/GEOMGUI/GeometryGUI_msg_fr.po @@ -1,7 +1,29 @@ -# 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". +# 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +# +# +# +# File : GeometryGUI_msg_fr.po +# Module : GEOM + msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" diff --git a/src/GEOMGUI/Makefile.in b/src/GEOMGUI/Makefile.in index 1da6a3390..d6f0812bc 100644 --- a/src/GEOMGUI/Makefile.in +++ b/src/GEOMGUI/Makefile.in @@ -1,15 +1,35 @@ -# -* Makefile *- +# GEOM GEOMGUI : GUI for Geometry component # -# Author : Marc Tajchman (CEA) -# Date : 5/07/2001 -# $Header$ +# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with 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 : Makefile.in +# Author : Marc Tajchman (CEA) +# Module : GEOM +# $Header$ -# source path top_srcdir=@top_srcdir@ -top_builddir=../.. +top_builddir=../../.. srcdir=@srcdir@ -VPATH=.:$(srcdir):$(top_srcdir)/idl:$(top_builddir)/idl +VPATH=.:@srcdir@:@top_srcdir@/idl @COMMENCE@ @@ -146,9 +166,9 @@ LIB_SERVER_IDL = # additionnal information to compil and link file -CPPFLAGS += $(QT_INCLUDES) $(VTK_INCLUDES) $(OGL_INCLUDES) $(OCC_INCLUDES) $(PYTHON_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome -CXXFLAGS += $(OCC_CXXFLAGS) -I${KERNEL_ROOT_DIR}/include/salome +CPPFLAGS += $(QT_INCLUDES) $(VTK_INCLUDES) $(OGL_INCLUDES) $(OCC_INCLUDES) $(PYTHON_INCLUDES) +CXXFLAGS += $(OCC_CXXFLAGS) -LDFLAGS += -lOCCViewer -lVTKViewer -lSalomeObject -lSalomeGUI -lGeometryClient -lGeometryObject -lGeometryFiltersSelection -lGeometrySketcher $(OCC_LIBS) -L${KERNEL_ROOT_DIR}/lib/salome +LDFLAGS += -lOCCViewer -lVTKViewer -lSalomeObject -lSalomeGUI -lGeometryClient -lGeometryObject -lGeometryFiltersSelection -lGeometrySketcher $(OCC_LIBS) @CONCLUDE@ diff --git a/src/GEOM_SWIG/GEOM_Partition1.py b/src/GEOM_SWIG/GEOM_Partition1.py index 287aed895..4eea3ff99 100755 --- a/src/GEOM_SWIG/GEOM_Partition1.py +++ b/src/GEOM_SWIG/GEOM_Partition1.py @@ -1,3 +1,12 @@ +# GEOM GEOM_SWIG : binding of C++ omplementaion with Python +# +# Copyright (C) 2003 CEA/DEN, EDF R&D +# +# +# +# File : GEOM_Partition1.py +# Module : GEOM + #%Make geometry (like CEA script (A1)) using Partition algorithm% # appel: # import alveole_3D_01_GEOM diff --git a/src/GEOM_SWIG/GEOM_Partition2.py b/src/GEOM_SWIG/GEOM_Partition2.py index 5837d4147..db8ce8ec6 100755 --- a/src/GEOM_SWIG/GEOM_Partition2.py +++ b/src/GEOM_SWIG/GEOM_Partition2.py @@ -1,3 +1,12 @@ +# GEOM GEOM_SWIG : binding of C++ omplementaion with Python +# +# Copyright (C) 2003 CEA/DEN, EDF R&D +# +# +# +# File : GEOM_Partition2.py +# Module : GEOM + #%Make geometry (like CEA script (A2)) using Partition algorithm% # import callovo_01_GEOM # reload(callovo_01_GEOM) diff --git a/src/GEOM_SWIG/GEOM_Partition3.py b/src/GEOM_SWIG/GEOM_Partition3.py index b3d8e5102..d325f848e 100755 --- a/src/GEOM_SWIG/GEOM_Partition3.py +++ b/src/GEOM_SWIG/GEOM_Partition3.py @@ -1,3 +1,12 @@ +# GEOM GEOM_SWIG : binding of C++ omplementaion with Python +# +# Copyright (C) 2003 CEA/DEN, EDF R&D +# +# +# +# File : GEOM_Partition3.py +# Module : GEOM + #%Make geometry (like CEA script (A2)) using Partition algorithm% # import callovo_01_GEOM # reload(callovo_01_GEOM) diff --git a/src/GEOM_SWIG/GEOM_Partition4.py b/src/GEOM_SWIG/GEOM_Partition4.py index 1f19eb6e2..17c7632c9 100755 --- a/src/GEOM_SWIG/GEOM_Partition4.py +++ b/src/GEOM_SWIG/GEOM_Partition4.py @@ -1,3 +1,12 @@ +# GEOM GEOM_SWIG : binding of C++ omplementaion with Python +# +# Copyright (C) 2003 CEA/DEN, EDF R&D +# +# +# +# File : GEOM_Partition4.py +# Module : GEOM + #%Make geometry (like CEA script (A3)) using Partition algorithm% # import couplex2_01_GEOM # reload(couplex2_01_GEOM) diff --git a/src/GEOM_SWIG/GEOM_Partition5.py b/src/GEOM_SWIG/GEOM_Partition5.py index 9a47c5c19..cbc1c5c5f 100755 --- a/src/GEOM_SWIG/GEOM_Partition5.py +++ b/src/GEOM_SWIG/GEOM_Partition5.py @@ -1,3 +1,12 @@ +# GEOM GEOM_SWIG : binding of C++ omplementaion with Python +# +# Copyright (C) 2003 CEA/DEN, EDF R&D +# +# +# +# File : GEOM_Partition5.py +# Module : GEOM + #%Make geometry (like CEA script (A4)) using Partition algorithm% # import gallery_01_GEOM # reload(gallery_01_GEOM) diff --git a/src/GEOM_SWIG/GEOM_example.py b/src/GEOM_SWIG/GEOM_example.py index 1aaceb6a5..e293a3e57 100644 --- a/src/GEOM_SWIG/GEOM_example.py +++ b/src/GEOM_SWIG/GEOM_example.py @@ -1,11 +1,30 @@ -#============================================================================== -# File : GEOM_example.py -# Created : mer oct 17 16:38:32 CEST 2001 -# Author : Paul RASCLE, EDF -# Project : SALOME -# Copyright : EDF 2001 +# 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +# +# +# +# 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 61c1e2bb9..8d462a940 100644 --- a/src/GEOM_SWIG/GEOM_example2.py +++ b/src/GEOM_SWIG/GEOM_example2.py @@ -1,11 +1,30 @@ -#============================================================================== -# File : GEOM_example2.py -# Created : sam nov 10 00:53:24 CET 2001 -# Author : Paul RASCLE, EDF -# Project : SALOME -# Copyright : EDF 2001 +# 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +# +# +# +# File : GEOM_example2.py +# Author : Paul RASCLE, EDF +# Module : GEOM # $Header$ -#============================================================================== import salome import geompy diff --git a/src/GEOM_SWIG/GEOM_example3.py b/src/GEOM_SWIG/GEOM_example3.py index a66a4fa57..66a699971 100644 --- a/src/GEOM_SWIG/GEOM_example3.py +++ b/src/GEOM_SWIG/GEOM_example3.py @@ -1,11 +1,30 @@ -#============================================================================== -# File : GEOM_example3.py -# Created : sam nov 10 00:53:24 CET 2001 -# Author : Paul RASCLE, EDF -# Project : SALOME -# Copyright : EDF 2001 +# 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +# +# +# +# File : GEOM_example3.py +# Author : Paul RASCLE, EDF +# Module : GEOM # $Header$ -#============================================================================== import salome import geompy diff --git a/src/GEOM_SWIG/GEOM_example4.py b/src/GEOM_SWIG/GEOM_example4.py index a78cd9d01..1736af047 100755 --- a/src/GEOM_SWIG/GEOM_example4.py +++ b/src/GEOM_SWIG/GEOM_example4.py @@ -1,3 +1,29 @@ +# 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +# +# +# +# File : GEOM_example4.py +# Module : GEOM + import SMESH import smeshpy import salome diff --git a/src/GEOM_SWIG/GEOM_moteur.py b/src/GEOM_SWIG/GEOM_moteur.py index 2f6b4341b..cf01b08c0 100644 --- a/src/GEOM_SWIG/GEOM_moteur.py +++ b/src/GEOM_SWIG/GEOM_moteur.py @@ -1,11 +1,30 @@ -#============================================================================== -# File : GEOM_moteur.py -# Created : mon feb 18 11:55:00 CET 2002 -# Author : Damien COQUERET, Open CASCADE -# Project : SALOME -# Copyright : Open CASCADE, 2002 +# 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +# +# +# +# File : GEOM_moteur.py +# Author : Damien COQUERET, Open CASCADE +# Module : GEOM # $Header$ -#============================================================================== import salome import geompy diff --git a/src/GEOM_SWIG/GEOM_usinggeom.py b/src/GEOM_SWIG/GEOM_usinggeom.py index aa315c2db..8ac2790cd 100644 --- a/src/GEOM_SWIG/GEOM_usinggeom.py +++ b/src/GEOM_SWIG/GEOM_usinggeom.py @@ -1,11 +1,30 @@ -#============================================================================== -# File : GEOM_usinggeom.py -# Created : mon apr 22 11:55:00 CET 2002 -# Author : Damien COQUERET, Open CASCADE -# Project : SALOME -# Copyright : Open CASCADE, 2002 +# 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +# +# +# +# File : GEOM_usinggeom.py +# Author : Damien COQUERET, Open CASCADE +# Module : GEOM # $Header$ -#============================================================================== import salome import geompy @@ -121,7 +140,7 @@ for Shape in ShapeListSewing : #Create advanced objects Copy = geompy.MakeCopy(Box) #(GEOM_Shape_ptr)->GEOM_Shape_ptr Prism = geompy.MakePrism(Face, p0, pz) #(GEOM_Shape_ptr, PointStruct, PointStruct)->GEOM_Shape_ptr -Revolution = geompy.MakeRevolution(Face, az, angle2) #(GEOM_Shape_ptr, AxisStruct, Double)->GEOM_Shape_ptr +#Revolution = geompy.MakeRevolution(Face, az, angle2) #(GEOM_Shape_ptr, AxisStruct, Double)->GEOM_Shape_ptr Filling = geompy.MakeFilling(Compound, mindeg, maxdeg, tol3d, tol2d, nbiter) #(GEOM_Shape_ptr, Short, Short, Double, Double, Short)->GEOM_Shape_ptr Pipe = geompy.MakePipe(Edge, Wire) #(GEOM_Shape_ptr, GEOM_Shape_ptr)->GEOM_Shape_ptr Sewing = geompy.MakeSewing(IORListSewing, precision) #(ListOfIOR, Double)->GEOM_Shape_ptr @@ -199,7 +218,7 @@ id_Section = geompy.addToStudy(Section, "Section") id_Copy = geompy.addToStudy(Copy, "Copy") id_Prism = geompy.addToStudy(Prism, "Prism") -id_Revolution = geompy.addToStudy(Revolution, "Revolution") +#id_Revolution = geompy.addToStudy(Revolution, "Revolution") id_Filling = geompy.addToStudy(Filling, "Filling") id_Pipe = geompy.addToStudy(Pipe, "Pipe") id_Sewing = geompy.addToStudy(Sewing, "Sewing") diff --git a/src/GEOM_SWIG/Makefile.in b/src/GEOM_SWIG/Makefile.in index d86568922..98eefb035 100644 --- a/src/GEOM_SWIG/Makefile.in +++ b/src/GEOM_SWIG/Makefile.in @@ -1,16 +1,35 @@ -# File : Makefile.in -# Created : Tue Mar 26 15:04:48 2002 -# Author : Nicolas REJNERI, Paul RASCLE -# Project : SALOME -# Module : GEOM -# Copyright : Open CASCADE, EDF 2002 +# 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +# +# +# +# File : Makefile.in +# Author : Nicolas REJNERI, Paul RASCLE +# Module : GEOM # $Header$ -# source path top_srcdir=@top_srcdir@ -top_builddir=../.. +top_builddir=../../.. srcdir=@srcdir@ -VPATH=.:$(srcdir):$(top_srcdir)/idl:$(top_builddir)/idl +VPATH=.:@srcdir@:@top_srcdir@/idl @COMMENCE@ diff --git a/src/GEOM_SWIG/batchmode_geompy.py b/src/GEOM_SWIG/batchmode_geompy.py index ce01529b8..5a4f1c623 100644 --- a/src/GEOM_SWIG/batchmode_geompy.py +++ b/src/GEOM_SWIG/batchmode_geompy.py @@ -1,13 +1,13 @@ -#============================================================================== -# File : geompy.py -# Created : sam nov 10 00:49:10 CET 2001 -# Author : Paul RASCLE, EDF -# Project : SALOME -# Copyright : EDF 2001 +# GEOM GEOM_SWIG : binding of C++ omplementaion with Python +# +# Copyright (C) 2003 CEA/DEN, EDF R&D +# +# +# +# File : geompy.py +# Author : Paul RASCLE, EDF +# Module : GEOM # $Header$ -#============================================================================== - -#-------------------------------------------------------------------------- from batchmode_salome import * diff --git a/src/GEOM_SWIG/geompy.py b/src/GEOM_SWIG/geompy.py index accb822e1..c04664557 100644 --- a/src/GEOM_SWIG/geompy.py +++ b/src/GEOM_SWIG/geompy.py @@ -1,11 +1,30 @@ -#============================================================================== -# File : geompy.py -# Created : sam nov 10 00:49:10 CET 2001 -# Author : Paul RASCLE, EDF -# Project : SALOME -# Copyright : EDF 2001 +# 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +# +# +# +# File : geompy.py +# Author : Paul RASCLE, EDF +# Module : GEOM # $Header$ -#============================================================================== import salome import SALOMEDS diff --git a/src/GEOM_SWIG/libGeometry_Swig.i b/src/GEOM_SWIG/libGeometry_Swig.i index fe2ff632f..e09d0a3cc 100644 --- a/src/GEOM_SWIG/libGeometry_Swig.i +++ b/src/GEOM_SWIG/libGeometry_Swig.i @@ -1,9 +1,29 @@ -// 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 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : libGeometry_Swig.i +// Author : Nicolas REJNERI, Paul RASCLE +// Module : GEOM // $Header$ %module libGeometry_Swig diff --git a/src/Makefile.in b/src/Makefile.in index 30889cf5f..ee88c742e 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -1,18 +1,35 @@ -#============================================================================== -# File : Makefile.in -# Created : ven déc 7 13:32:20 CET 2001 -# Author : Paul RASCLE, EDF -# Project : SALOME -# Copyright : EDF 2001 +# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with 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 : Makefile.in +# Author : Patrick GOLDBRONN (CEA) +# Module : GEOM # $Header$ -#============================================================================== -# source path top_srcdir=@top_srcdir@ -top_builddir=.. +top_builddir=../.. srcdir=@srcdir@ VPATH=.:@srcdir@ + @COMMENCE@ SUBDIRS = OBJECT SKETCHER ARCHIMEDE PARTITION GEOMDS GEOM GEOMClient GEOMFiltersSelection GEOMGUI GEOM_SWIG diff --git a/src/OBJECT/GEOM_AISShape.cxx b/src/OBJECT/GEOM_AISShape.cxx index 2f4e5c59b..93cbeaa78 100644 --- a/src/OBJECT/GEOM_AISShape.cxx +++ b/src/OBJECT/GEOM_AISShape.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GEOM_AISShape.cxx -// Created : Wed Feb 20 17:24:59 2002 -// Author : Nicolas REJNERI -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_AISShape.cxx +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ +using namespace std; /*! \class GEOM_AISShape GEOM_AISShape.hxx \brief .... diff --git a/src/OBJECT/GEOM_AISShape.hxx b/src/OBJECT/GEOM_AISShape.hxx index 5c63ece8b..d809c0dbb 100644 --- a/src/OBJECT/GEOM_AISShape.hxx +++ b/src/OBJECT/GEOM_AISShape.hxx @@ -1,18 +1,29 @@ -// File generated by CPPExt (Transient) +// GEOM OBJECT : interactive object for Geometry entities visualization // -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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_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 3179d4a5a..7baed81b7 100644 --- a/src/OBJECT/GEOM_AISShape.ixx +++ b/src/OBJECT/GEOM_AISShape.ixx @@ -1,17 +1,29 @@ -// File generated by CPPExt (Transient) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// 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 fa4227d8b..8f66299fd 100644 --- a/src/OBJECT/GEOM_AISShape.jxx +++ b/src/OBJECT/GEOM_AISShape.jxx @@ -1,3 +1,29 @@ +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_AISShape.jxx +// Module : GEOM + #ifndef _GEOM_InteractiveObject_HeaderFile #include "GEOM_InteractiveObject.hxx" #endif diff --git a/src/OBJECT/GEOM_Actor.cxx b/src/OBJECT/GEOM_Actor.cxx index 6dcfb8805..e29c665cb 100644 --- a/src/OBJECT/GEOM_Actor.cxx +++ b/src/OBJECT/GEOM_Actor.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GEOM_Actor.cxx -// Created : Wed Feb 20 17:24:59 2002 -// Author : Christophe ATTANASIO -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_Actor.cxx +// Author : Christophe ATTANASIO +// Module : GEOM // $Header$ +using namespace std; /*! \class GEOM_Actor GEOM_Actor.h \brief This class allows to display an OpenCASCADE CAD model in a VTK viewer. @@ -14,12 +34,6 @@ using namespace std; #include "GEOM_Actor.h" -// VTK Includes -#include -#include -#include -#include - // OpenCASCADE Includes #include "GEOM_OCCReader.h" #include diff --git a/src/OBJECT/GEOM_Actor.h b/src/OBJECT/GEOM_Actor.h index 85cd625e5..c40dd1001 100644 --- a/src/OBJECT/GEOM_Actor.h +++ b/src/OBJECT/GEOM_Actor.h @@ -1,23 +1,36 @@ -// File : GEOM_Actor.h -// Created : Wed Feb 20 17:24:59 2002 -// Author : Christophe ATTANASIO -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_Actor.h +// Author : Christophe ATTANASIO +// Module : GEOM // $Header$ - #ifndef GEOM_ACTOR_H #define GEOM_ACTOR_H #include "SALOME_Actor.h" -//VTK -#include -#include -#include -#include - //OpenCASCADE #include #include @@ -108,7 +121,5 @@ class VTKOCC_EXPORT GEOM_Actor : public SALOME_Actor { vtkProperty* WireframeProperty; vtkProperty* HighlightProperty; - int myDisplayMode; - }; #endif //GEOM_ACTOR_H diff --git a/src/OBJECT/GEOM_AssemblyBuilder.cxx b/src/OBJECT/GEOM_AssemblyBuilder.cxx index fc06dd921..39aca3d9c 100644 --- a/src/OBJECT/GEOM_AssemblyBuilder.cxx +++ b/src/OBJECT/GEOM_AssemblyBuilder.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GEOM_AssemblyBuilder.cxx -// Created : Wed Feb 20 17:24:59 2002 -// Author : Christophe ATTANASIO -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_AssemblyBuilder.cxx +// Author : Christophe ATTANASIO +// Module : GEOM // $Header$ +using namespace std; /*! \class GEOM_AssemblyBuilder GEOM_AssemblyBuilder.h \brief .... @@ -26,6 +46,7 @@ using namespace std; #include #include #include +#include // SALOME @@ -143,6 +164,18 @@ vtkActorCollection* GEOM_AssemblyBuilder::BuildActors(const TopoDS_Shape& myShap vtkActorCollection* AISActors = vtkActorCollection::New(); + if(myShape.ShapeType() == TopAbs_COMPOUND) { + TopoDS_Iterator anItr(myShape); + for(; anItr.More(); anItr.Next()) { + vtkActorCollection* theActors = GEOM_AssemblyBuilder::BuildActors(anItr.Value(), deflection, mode, forced); + theActors->InitTraversal(); + vtkActor* anActor = (vtkActor*)theActors->GetNextActor(); + while(!(anActor==NULL)) { + AISActors->AddItem(anActor); + anActor = (vtkActor*)theActors->GetNextActor(); + } + } + } // Create graphics properties vtkProperty* IsoProp = vtkProperty::New(); @@ -160,7 +193,7 @@ vtkActorCollection* GEOM_AssemblyBuilder::BuildActors(const TopoDS_Shape& myShap MeshShape(myShape,deflection,forced); - if ( myShape.ShapeType() <= 4 ) { + if ( myShape.ShapeType() <= 4 && myShape.ShapeType() != TopAbs_COMPOUND) { // FACE Actor // look if edges are free or shared diff --git a/src/OBJECT/GEOM_AssemblyBuilder.h b/src/OBJECT/GEOM_AssemblyBuilder.h index abe459b91..a396b9e25 100644 --- a/src/OBJECT/GEOM_AssemblyBuilder.h +++ b/src/OBJECT/GEOM_AssemblyBuilder.h @@ -1,12 +1,31 @@ -// File : GEOM_AssemblyBuilder.h -// Created : Wed Feb 20 17:24:59 2002 -// Author : Christophe ATTANASIO -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_AssemblyBuilder.h +// Author : Christophe ATTANASIO +// Module : GEOM // $Header$ -// VTK #include #include #include diff --git a/src/OBJECT/GEOM_InteractiveObject.cxx b/src/OBJECT/GEOM_InteractiveObject.cxx index b8c484e4d..892cd143c 100644 --- a/src/OBJECT/GEOM_InteractiveObject.cxx +++ b/src/OBJECT/GEOM_InteractiveObject.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : GEOM_InteractiveObject.cxx -// Created : Wed Feb 20 17:24:59 2002 -// Author : Christophe ATTANASIO -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_InteractiveObject.cxx +// Author : Christophe ATTANASIO +// Module : GEOM // $Header$ +using namespace std; /*! \class GEOM_InteractiveObject GEOM_InteractiveObject.hxx \brief .... diff --git a/src/OBJECT/GEOM_InteractiveObject.hxx b/src/OBJECT/GEOM_InteractiveObject.hxx index 94325174a..a14c40783 100644 --- a/src/OBJECT/GEOM_InteractiveObject.hxx +++ b/src/OBJECT/GEOM_InteractiveObject.hxx @@ -1,18 +1,29 @@ -// File generated by CPPExt (Transient) +// GEOM OBJECT : interactive object for Geometry entities visualization // -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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_InteractiveObject.hxx +// Module : GEOM + #ifndef _GEOM_InteractiveObject_HeaderFile #define _GEOM_InteractiveObject_HeaderFile diff --git a/src/OBJECT/GEOM_InteractiveObject.ixx b/src/OBJECT/GEOM_InteractiveObject.ixx index 96844009f..dccdbb94b 100644 --- a/src/OBJECT/GEOM_InteractiveObject.ixx +++ b/src/OBJECT/GEOM_InteractiveObject.ixx @@ -1,17 +1,29 @@ -// File generated by CPPExt (Transient) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// 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 1f74c76f4..8884bdc8b 100644 --- a/src/OBJECT/GEOM_InteractiveObject.jxx +++ b/src/OBJECT/GEOM_InteractiveObject.jxx @@ -1,3 +1,29 @@ +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_InteractiveObject.jxx +// Module : GEOM + #ifndef _SALOME_InteractiveObject_HeaderFile #include "SALOME_InteractiveObject.hxx" #endif diff --git a/src/OBJECT/GEOM_OCCReader.cxx b/src/OBJECT/GEOM_OCCReader.cxx index 37edbea44..500fdd356 100644 --- a/src/OBJECT/GEOM_OCCReader.cxx +++ b/src/OBJECT/GEOM_OCCReader.cxx @@ -1,19 +1,39 @@ -using namespace std; -// File : GEOM_OCCReader.h -// Created : Wed Feb 20 17:24:59 2002 -// Author : Christophe ATTANASIO -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_OCCReader.h +// Author : Christophe ATTANASIO +// Module : GEOM // $Header$ +using namespace std; #include "GEOM_OCCReader.h" // SALOME Includes #include "utilities.h" // VTK Includes -#include +#include "VTKViewer_Common.h" #include // OpenCASCADE Includes diff --git a/src/OBJECT/GEOM_OCCReader.h b/src/OBJECT/GEOM_OCCReader.h index 3c3b7204a..87247f3ec 100644 --- a/src/OBJECT/GEOM_OCCReader.h +++ b/src/OBJECT/GEOM_OCCReader.h @@ -1,9 +1,29 @@ -// File : GEOM_OCCReader.h -// Created : Wed Feb 20 17:24:59 2002 -// Author : Christophe ATTANASIO -// Project : SALOME -// Module : GEOM -// Copyright : Open CASCADE 2002 +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_OCCReader.h +// Author : Christophe ATTANASIO +// Module : GEOM // $Header$ /*! @@ -15,9 +35,7 @@ #define GEOM_OCCREADER_H // VTK -#include -#include -#include +#include "VTKViewer_Common.h" // OpenCASCADE #include diff --git a/src/OBJECT/Handle_GEOM_AISShape.hxx b/src/OBJECT/Handle_GEOM_AISShape.hxx index 2642cefa3..af8efe053 100644 --- a/src/OBJECT/Handle_GEOM_AISShape.hxx +++ b/src/OBJECT/Handle_GEOM_AISShape.hxx @@ -1,17 +1,28 @@ -// File generated by CPPExt (Transient) +// GEOM OBJECT : interactive object for Geometry entities visualization // -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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 : 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 b310ef892..63c0e8e3f 100644 --- a/src/OBJECT/Handle_GEOM_InteractiveObject.hxx +++ b/src/OBJECT/Handle_GEOM_InteractiveObject.hxx @@ -1,17 +1,28 @@ -// File generated by CPPExt (Transient) +// GEOM OBJECT : interactive object for Geometry entities visualization // -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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 : Handle_GEOM_InteractiveObject.hxx +// Module : GEOM #ifndef _Handle_GEOM_InteractiveObject_HeaderFile #define _Handle_GEOM_InteractiveObject_HeaderFile diff --git a/src/OBJECT/Makefile.in b/src/OBJECT/Makefile.in index be5adc735..8c03ab723 100644 --- a/src/OBJECT/Makefile.in +++ b/src/OBJECT/Makefile.in @@ -1,8 +1,33 @@ -# source path +# 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +# +# +# +# File : Makefile.in +# Module : GEOM + top_srcdir=@top_srcdir@ -top_builddir=../.. +top_builddir=../../.. srcdir=@srcdir@ -VPATH=.:$(srcdir):$(top_srcdir)/idl:$(top_builddir)/idl +VPATH=.:@srcdir@:@top_srcdir@/idl @COMMENCE@ @@ -30,9 +55,8 @@ LIB_CLIENT_IDL = BIN = BIN_SRC = -CPPFLAGS+=$(QT_INCLUDES) $(PYTHON_INCLUDES) $(OCC_INCLUDES) $(VTK_INCLUDES) $(OGL_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome -CXXFLAGS += -I${KERNEL_ROOT_DIR}/include/salome -LDFLAGS+=$(QT_MT_LIBS) $(OCC_LIBS) $(VTK_LIBS) $(OGL_LIBS) $(PYTHON_LIBS) -lSalomeObject -L${KERNEL_ROOT_DIR}/lib/salome +CPPFLAGS+=$(QT_INCLUDES) $(PYTHON_INCLUDES) $(OCC_INCLUDES) $(VTK_INCLUDES) $(OGL_INCLUDES) +LDFLAGS+=$(QT_MT_LIBS) $(OCC_LIBS) $(VTK_LIBS) $(OGL_LIBS) $(PYTHON_LIBS) -lSalomeObject %_moc.cxx: %.h $(MOC) $< -o $@ diff --git a/src/PARTITION/Makefile.in b/src/PARTITION/Makefile.in index 909a07325..98694a9d2 100644 --- a/src/PARTITION/Makefile.in +++ b/src/PARTITION/Makefile.in @@ -1,15 +1,35 @@ -# -* Makefile *- +# GEOM PARTITION : partition algorithm # -# Author : Marc Tajchman (CEA) -# Date : 5/07/2001 -# $Header$ +# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with 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 : Makefile.in +# Author : Marc Tajchman (CEA) +# Module : GEOM +# $Header$ -# source path top_srcdir=@top_srcdir@ -top_builddir=../.. +top_builddir=../../.. srcdir=@srcdir@ -VPATH=.:$(srcdir):$(top_srcdir)/idl:$(top_builddir)/idl +VPATH=.:@srcdir@ @COMMENCE@ @@ -33,9 +53,9 @@ EXPORT_HEADERS = Partition_Spliter.hxx \ EXPORT_IDLS= -CPPFLAGS += $(OCC_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome -CXXFLAGS += $(OCC_CXXFLAGS) -I${KERNEL_ROOT_DIR}/include/salome -LDFLAGS += $(OCC_LIBS) -L${KERNEL_ROOT_DIR}/lib/salome +CPPFLAGS += $(OCC_INCLUDES) +CXXFLAGS += $(OCC_CXXFLAGS) +LDFLAGS += $(OCC_LIBS) %_moc.cxx: %.h $(MOC) $< -o $@ diff --git a/src/PARTITION/Partition.cdl b/src/PARTITION/Partition.cdl index 0d17392dd..9b1bf2287 100644 --- a/src/PARTITION/Partition.cdl +++ b/src/PARTITION/Partition.cdl @@ -1,9 +1,29 @@ --- File : Partition.cdl --- Created: Thu Aug 02 16:07:39 2001 --- Author : Benedicte MARTIN --- ----Copyright: OPEN CASCADE 2001 - +-- 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +-- +-- +-- +-- File : Partition.cdl +-- Author : Benedicte MARTIN +-- Module : GEOM package Partition diff --git a/src/PARTITION/Partition_Inter2d.cdl b/src/PARTITION/Partition_Inter2d.cdl index 356735c20..a3a4d15d2 100644 --- a/src/PARTITION/Partition_Inter2d.cdl +++ b/src/PARTITION/Partition_Inter2d.cdl @@ -1,8 +1,29 @@ --- File : Partition_Inter2d.cdl --- Created: Thu Aug 02 16:07:39 2001 --- Author : Benedicte MARTIN --- ----Copyright: OPEN CASCADE 2001 +-- 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +-- +-- +-- +-- File : Partition_Inter2d.cdl +-- Author : Benedicte MARTIN +-- Module : GEOM class Inter2d from Partition diff --git a/src/PARTITION/Partition_Inter2d.cxx b/src/PARTITION/Partition_Inter2d.cxx index 2c67c1660..e15bf24e3 100644 --- a/src/PARTITION/Partition_Inter2d.cxx +++ b/src/PARTITION/Partition_Inter2d.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : Partition_Inter2d.cxx -// Created : Thu Aug 02 16:17:31 2001 -// Author : Benedicte MARTIN -// Project : SALOME -// Module : PARTITION -// Copyright : Open CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : Partition_Inter2d.cxx +// Author : Benedicte MARTIN +// Module : GEOM // $Header$ +using namespace std; #include "Partition_Inter2d.ixx" #include "utilities.h" diff --git a/src/PARTITION/Partition_Inter2d.hxx b/src/PARTITION/Partition_Inter2d.hxx index 800b382ab..7d82aa34b 100644 --- a/src/PARTITION/Partition_Inter2d.hxx +++ b/src/PARTITION/Partition_Inter2d.hxx @@ -1,16 +1,28 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// 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 dc6a48377..963d1ec17 100644 --- a/src/PARTITION/Partition_Inter2d.ixx +++ b/src/PARTITION/Partition_Inter2d.ixx @@ -1,17 +1,29 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// 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 bd005fc99..8c3ef7d49 100644 --- a/src/PARTITION/Partition_Inter2d.jxx +++ b/src/PARTITION/Partition_Inter2d.jxx @@ -1,3 +1,29 @@ +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// 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 2e4bac3cc..38c504aee 100644 --- a/src/PARTITION/Partition_Inter3d.cdl +++ b/src/PARTITION/Partition_Inter3d.cdl @@ -1,9 +1,29 @@ --- File : Partition_Inter3d.cdl --- Created: Thu Aug 02 16:07:39 2001 --- Author : Benedicte MARTIN --- ----Copyright: OPEN CASCADE 2001 - +-- 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +-- +-- +-- +-- File : Partition_Inter3d.cdl +-- Author : Benedicte MARTIN +-- Module : GEOM class Inter3d from Partition @@ -89,8 +109,8 @@ is IsSectionEdge (me; E : Edge from TopoDS) returns Boolean from Standard; - ---Purpose: return True if E is an edge of a face and it - -- intersects an other face + ---Purpose: return True if E is an edge of an initial face and + -- E intersects aother face HasSectionEdge (me; F : Face from TopoDS) returns Boolean from Standard; diff --git a/src/PARTITION/Partition_Inter3d.cxx b/src/PARTITION/Partition_Inter3d.cxx index d7156f83c..dc7e4606c 100644 --- a/src/PARTITION/Partition_Inter3d.cxx +++ b/src/PARTITION/Partition_Inter3d.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : Partition_Inter3d.cxx -// Created : Thu Aug 02 16:20:37 2001 -// Author : Benedicte MARTIN -// Project : SALOME -// Module : PARTITION -// Copyright : Open CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : Partition_Inter3d.cxx +// Author : Benedicte MARTIN +// Module : GEOM // $Header$ +using namespace std; #include "Partition_Inter3d.ixx" #include "Partition_Inter2d.hxx" #include "utilities.h" diff --git a/src/PARTITION/Partition_Inter3d.hxx b/src/PARTITION/Partition_Inter3d.hxx index 771b3044b..57e8da43f 100644 --- a/src/PARTITION/Partition_Inter3d.hxx +++ b/src/PARTITION/Partition_Inter3d.hxx @@ -1,16 +1,28 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// 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 3e5e64d03..0775cc99c 100644 --- a/src/PARTITION/Partition_Inter3d.ixx +++ b/src/PARTITION/Partition_Inter3d.ixx @@ -1,17 +1,29 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// 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 68d27a450..5804ba81e 100644 --- a/src/PARTITION/Partition_Inter3d.jxx +++ b/src/PARTITION/Partition_Inter3d.jxx @@ -1,3 +1,29 @@ +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// 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 7c9eebefe..eb6ec67a9 100644 --- a/src/PARTITION/Partition_Loop.cdl +++ b/src/PARTITION/Partition_Loop.cdl @@ -1,9 +1,29 @@ --- File : Partition_Loop.cdl --- Created: Thu Aug 02 16:07:39 2001 --- Author : Benedicte MARTIN --- ----Copyright: Matra Datavision 2001 - +-- 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +-- +-- +-- +-- File : Partition_Loop.cdl +-- Author : Benedicte MARTIN +-- Module : GEOM class Loop from Partition diff --git a/src/PARTITION/Partition_Loop.cxx b/src/PARTITION/Partition_Loop.cxx index b5a343347..29386de22 100644 --- a/src/PARTITION/Partition_Loop.cxx +++ b/src/PARTITION/Partition_Loop.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : Partition_Loop.cxx -// Created : Thu Aug 02 16:25:17 2001 -// Author : Benedicte MARTIN -// Project : SALOME -// Module : PARTITION -// Copyright : Open CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : Partition_Loop.cxx +// Author : Benedicte MARTIN +// Module : GEOM // $Header$ +using namespace std; #include #include "Partition_Loop.ixx" diff --git a/src/PARTITION/Partition_Loop.hxx b/src/PARTITION/Partition_Loop.hxx index ab94dc94b..9e9226d9d 100644 --- a/src/PARTITION/Partition_Loop.hxx +++ b/src/PARTITION/Partition_Loop.hxx @@ -1,16 +1,28 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// 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 20d125d72..1c40e7254 100644 --- a/src/PARTITION/Partition_Loop.ixx +++ b/src/PARTITION/Partition_Loop.ixx @@ -1,17 +1,29 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// 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 3be89a204..dd86f05c3 100644 --- a/src/PARTITION/Partition_Loop.jxx +++ b/src/PARTITION/Partition_Loop.jxx @@ -1,3 +1,29 @@ +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// 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 4f4cb80cc..7a6656e76 100644 --- a/src/PARTITION/Partition_Loop2d.cdl +++ b/src/PARTITION/Partition_Loop2d.cdl @@ -1,9 +1,12 @@ --- File : Partition_Loop2d.cdl --- Created: Thu Aug 02 16:07:39 2001 --- Author : Benedicte MARTIN --- ----Copyright: OPEN CASCADE 2001 - +-- GEOM PARTITION : partition algorithm +-- +-- Copyright (C) 2003 CEA/DEN, EDF R&D +-- +-- +-- +-- File : Partition_Loop2d.cdl +-- Author : Benedicte MARTIN +-- Module : GEOM class Loop2d from Partition diff --git a/src/PARTITION/Partition_Loop2d.cxx b/src/PARTITION/Partition_Loop2d.cxx index 24cc066ea..1e0a25787 100644 --- a/src/PARTITION/Partition_Loop2d.cxx +++ b/src/PARTITION/Partition_Loop2d.cxx @@ -1,13 +1,15 @@ -using namespace std; -// File : Partition_Loop2d.cxx -// Created : Thu Aug 02 16:25:17 2001 -// Author : Benedicte MARTIN -// Project : SALOME -// Module : PARTITION -// Copyright : Open CASCADE +// GEOM PARTITION : partition algorithm +// +// Copyright (C) 2003 CEA/DEN, EDF R&D +// +// +// +// File : Partition_Loop2d.cxx +// Author : Benedicte MARTIN +// Module : GEOM // $Header$ - +using namespace std; #include "Partition_Loop2d.ixx" #include "utilities.h" diff --git a/src/PARTITION/Partition_Loop2d.hxx b/src/PARTITION/Partition_Loop2d.hxx index 9e4996219..2310e1581 100644 --- a/src/PARTITION/Partition_Loop2d.hxx +++ b/src/PARTITION/Partition_Loop2d.hxx @@ -1,16 +1,11 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// GEOM PARTITION : partition algorithm +// +// Copyright (C) 2003 CEA/DEN, EDF R&D +// +// +// +// 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 f0e328e6c..2d35fd5c7 100644 --- a/src/PARTITION/Partition_Loop2d.ixx +++ b/src/PARTITION/Partition_Loop2d.ixx @@ -1,17 +1,12 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// GEOM PARTITION : partition algorithm // +// Copyright (C) 2003 CEA/DEN, EDF R&D +// +// +// +// File : Partition_Loop2d.ixx +// Module : GEOM + #include "Partition_Loop2d.jxx" diff --git a/src/PARTITION/Partition_Loop2d.jxx b/src/PARTITION/Partition_Loop2d.jxx index eab73c9d1..555c16c80 100644 --- a/src/PARTITION/Partition_Loop2d.jxx +++ b/src/PARTITION/Partition_Loop2d.jxx @@ -1,3 +1,12 @@ +// GEOM PARTITION : partition algorithm +// +// Copyright (C) 2003 CEA/DEN, EDF R&D +// +// +// +// File : Partition_Loop2d.jxx +// Module : GEOM + #ifndef _TopoDS_Face_HeaderFile #include #endif diff --git a/src/PARTITION/Partition_Loop3d.cdl b/src/PARTITION/Partition_Loop3d.cdl index 19b346c5e..435fef6d5 100644 --- a/src/PARTITION/Partition_Loop3d.cdl +++ b/src/PARTITION/Partition_Loop3d.cdl @@ -1,6 +1,11 @@ --- File: Partition_Loop3d.cdl --- Created: Mon Oct 21 09:47:19 2002 ----Copyright: OPEN CASCADE 2002 +-- GEOM PARTITION : partition algorithm +-- +-- Copyright (C) 2003 CEA/DEN, EDF R&D +-- +-- +-- +-- File : Partition_Loop3d.cdl +-- Module : GEOM class Loop3d from Partition diff --git a/src/PARTITION/Partition_Loop3d.cxx b/src/PARTITION/Partition_Loop3d.cxx index f1759f685..cb5ecff04 100644 --- a/src/PARTITION/Partition_Loop3d.cxx +++ b/src/PARTITION/Partition_Loop3d.cxx @@ -1,8 +1,13 @@ -using namespace std; -// File : Partition_Loop3d.cxx -// Created : Mon Oct 21 09:47:19 2002 -// Copyright : Open CASCADE +// GEOM PARTITION : partition algorithm +// +// Copyright (C) 2003 CEA/DEN, EDF R&D +// +// +// +// File : Partition_Loop3d.cxx +// Module : GEOM +using namespace std; #include "Partition_Loop3d.ixx" #include diff --git a/src/PARTITION/Partition_Loop3d.hxx b/src/PARTITION/Partition_Loop3d.hxx index f5668a2f8..b946b32df 100644 --- a/src/PARTITION/Partition_Loop3d.hxx +++ b/src/PARTITION/Partition_Loop3d.hxx @@ -1,16 +1,11 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// GEOM PARTITION : partition algorithm +// +// Copyright (C) 2003 CEA/DEN, EDF R&D +// +// +// +// 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 3ccad8787..a661b3242 100644 --- a/src/PARTITION/Partition_Loop3d.ixx +++ b/src/PARTITION/Partition_Loop3d.ixx @@ -1,17 +1,12 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// GEOM PARTITION : partition algorithm // +// Copyright (C) 2003 CEA/DEN, EDF R&D +// +// +// +// File : Partition_Loop3d.ixx +// Module : GEOM + #include "Partition_Loop3d.jxx" diff --git a/src/PARTITION/Partition_Loop3d.jxx b/src/PARTITION/Partition_Loop3d.jxx index 7fbfaa621..9b654f41b 100644 --- a/src/PARTITION/Partition_Loop3d.jxx +++ b/src/PARTITION/Partition_Loop3d.jxx @@ -1,3 +1,12 @@ +// GEOM PARTITION : partition algorithm +// +// Copyright (C) 2003 CEA/DEN, EDF R&D +// +// +// +// File : Partition_Loop3d.jxx +// Module : GEOM + #ifndef _TopoDS_Shape_HeaderFile #include #endif diff --git a/src/PARTITION/Partition_Spliter.cdl b/src/PARTITION/Partition_Spliter.cdl index 492763ec7..252e94b0b 100644 --- a/src/PARTITION/Partition_Spliter.cdl +++ b/src/PARTITION/Partition_Spliter.cdl @@ -1,7 +1,29 @@ --- File : Partition_Spliter.cdl --- Created: Thu Aug 02 16:07:39 2001 --- Author : Benedicte MARTIN ----Copyright: OPEN CASCADE 2001 +-- 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +-- +-- +-- +-- File : Partition_Spliter.cdl +-- Author : Benedicte MARTIN +-- Module : GEOM class Spliter from Partition @@ -138,5 +160,6 @@ fields -- shape and its internal faces myInternalFaces: DataMapOfShapeShape from TopTools; + myIntNotClFaces: DataMapOfShapeShape from TopTools;-- internal but not closed end Spliter; diff --git a/src/PARTITION/Partition_Spliter.cxx b/src/PARTITION/Partition_Spliter.cxx index 1fe235f0b..502fbc956 100644 --- a/src/PARTITION/Partition_Spliter.cxx +++ b/src/PARTITION/Partition_Spliter.cxx @@ -1,12 +1,32 @@ -using namespace std; -// File : Partition_Spliter.cxx -// Created : Thu Aug 02 16:07:39 2001 -// Author : Benedicte MARTIN -// Project : SALOME -// Module : SALOMEGUI -// Copyright : Open CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : Partition_Spliter.cxx +// Author : Benedicte MARTIN +// Module : GEOM // $Header$ +using namespace std; #include "Partition_Spliter.ixx" #include "Partition_Inter2d.hxx" #include "Partition_Inter3d.hxx" @@ -676,66 +696,85 @@ void Partition_Spliter::MakeEdges (const TopoDS_Edge& E, //======================================================================= //function : FindFacesInside //purpose : return compound of faces of other shapes that are -// inside . -// is an object shape. +// inside . +// is an object shape. // makes avoid faces that do not form a // closed shell // makes return already added faces //======================================================================= -TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& S, +TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& theShape, const Standard_Boolean CheckClosed, const Standard_Boolean All) { - if (myInternalFaces.IsBound( S )) - return myInternalFaces.Find ( S ); - - TopoDS_Compound C; - myBuilder.MakeCompound(C); - - const TopoDS_Shape& SS = myImageShape.Image(S).First(); // compound of split faces of S - - TopTools_MapOfShape MSE, MPF; - TopTools_DataMapOfShapeListOfShape MEF; - TopTools_MapIteratorOfMapOfShape itm; TopExp_Explorer expl; - TopTools_ListOfShape Empty; + if (myInternalFaces.IsBound( theShape )) + { + TopoDS_Shape aIntFComp = myInternalFaces.Find ( theShape ); + TopoDS_Shape aIntRemFComp = myIntNotClFaces.Find ( theShape ); - // MSE filling: map of section edges of SS - for (expl.Init(SS,TopAbs_EDGE); expl.More(); expl.Next()) { + expl.Init( aIntRemFComp, TopAbs_FACE); + if (CheckClosed || !expl.More()) + return aIntFComp; + + TopoDS_Compound C; + myBuilder.MakeCompound( C ); + // add removed faces + for (; expl.More(); expl.Next()) + myBuilder.Add( C, expl.Current() ); + // add good internal faces + for (expl.Init( aIntFComp, TopAbs_FACE); expl.More(); expl.Next()) + myBuilder.Add( C, expl.Current() ); + return C; + } + + // compound of split faces of theShape + const TopoDS_Shape& CSF = myImageShape.Image(theShape).First(); + + TopTools_MapOfShape MSE, MFP; + TopTools_DataMapOfShapeListOfShape DMSEFP; + TopTools_MapIteratorOfMapOfShape itm; + TopTools_ListOfShape EmptyL; + + // MSE filling: map of new section edges of CSF + for (expl.Init(CSF,TopAbs_EDGE); expl.More(); expl.Next()) { TopoDS_Shape resE = expl.Current() ; - if (myNewSection.Contains( resE )) + if (myNewSection.Contains( resE )) // only new edges MSE.Add(resE); } - // 1. MPF filling: map of resulting faces except those of S, - // we`ll add to C those of them which are inside SS - // 2. MEF filling: edge of MSE => faces of MPF + // DMEF: map edge of CSF - faces of CSF + TopTools_IndexedDataMapOfShapeListOfShape DMEF; + TopExp::MapShapesAndAncestors(CSF, TopAbs_EDGE, TopAbs_FACE, DMEF); + + // Fill + // 1. MFP - a map of faces to process: map of resulting faces except + // those of theShape; we`ll add to C those of them which are inside CSF + // 2. DMSEFP - edge of MSE => faces of MFP TopTools_ListIteratorOfListOfShape itl; for (itl.Initialize(myListShapes);itl.More();itl.Next()) { - const TopoDS_Shape& SL = itl.Value(); - if ( S.IsSame( SL )) continue; + const TopoDS_Shape& aShape = itl.Value(); + if ( theShape.IsSame( aShape )) continue; // fill maps - TopoDS_Iterator itF ( myImageShape.Image(SL).First() ); + // iterate on split faces of aShape + TopoDS_Iterator itF ( myImageShape.Image(aShape).First() ); for ( ; itF.More(); itF.Next()) { - const TopoDS_Shape& snf = itF.Value(); - MPF.Add(snf); - for (expl.Init( snf, TopAbs_EDGE ); expl.More(); expl.Next()) { + const TopoDS_Shape& sf = itF.Value(); + MFP.Add(sf); + // iterate on edges of split faces of aShape, + // add to DMSEFP edges that are new + for (expl.Init( sf, TopAbs_EDGE ); expl.More(); expl.Next()) { TopoDS_Shape se = expl.Current(); if ( MSE.Contains(se)) {// section edge - if (!MEF.IsBound(se)) - MEF.Bind(se,Empty); - MEF(se).Append(snf); + if (!DMSEFP.IsBound(se)) + DMSEFP.Bind(se,EmptyL); + DMSEFP(se).Append(sf); } } } } - - // MSEF: map edge of SS - faces of SS - TopTools_IndexedDataMapOfShapeListOfShape MSEF; - TopExp::MapShapesAndAncestors(SS, TopAbs_EDGE, TopAbs_FACE, MSEF); - // find faces inside S + // find faces inside theShape Standard_Boolean skipAlreadyAdded = Standard_False; Standard_Boolean GoodOri, inside; @@ -743,60 +782,72 @@ TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& S, TopTools_ListOfShape KeepFaces; TopTools_DataMapIteratorOfDataMapOfShapeListOfShape Mapit; - for (Mapit.Initialize(MEF); Mapit.More() ; Mapit.Next() ) { - TopoDS_Edge E = TopoDS::Edge (Mapit.Key()); - TopoDS_Edge OrigE = TopoDS::Edge ( myImagesEdges.Root( E )); + // iterate on section edges, check faces of other shapes + // sharing section edges and put internal faces to KeepFaces + for (Mapit.Initialize(DMSEFP); Mapit.More() ; Mapit.Next() ) { + // a new edge of theShape + const TopoDS_Edge& E = TopoDS::Edge (Mapit.Key()); + // an original edge of which E is a split + const TopoDS_Edge& OrigE = TopoDS::Edge ( myImagesEdges.Root( E )); + // is OrigE itself splits a face Standard_Boolean isSectionE = myInter3d.IsSectionEdge ( OrigE ); - TopTools_ListOfShape& EF = MEF.ChangeFind(E); - itl.Initialize( EF ); + // split faces of other shapes sharing E + TopTools_ListOfShape& LSF = DMSEFP.ChangeFind(E); + itl.Initialize( LSF ); while (itl.More()) { - TopoDS_Face face1 = TopoDS::Face(itl.Value()); - EF.Remove( itl ); // == itl.Next(); - if (!MPF.Remove( face1 )) - continue; // was not is MPF ( i.e already checked) + // a split faces of other shape + TopoDS_Face aFace1 = TopoDS::Face(itl.Value()); + // remove aFace1 form DMSEFP and MFP + LSF.Remove( itl ); // == itl.Next(); + if (!MFP.Remove( aFace1 )) + continue; // was not is MFP ( i.e already checked) + // check if aFace1 was already added to 2 shells if (!All && - myAddedFacesMap.Contains( face1 ) && - myAddedFacesMap.Contains( face1.Reversed() )) { + myAddedFacesMap.Contains( aFace1 ) && + myAddedFacesMap.Contains( aFace1.Reversed() )) { skipAlreadyAdded = Standard_True; - continue; // already added to 2 shells + continue; } - // find another face which originates from the same face as - const TopoDS_Shape& origS = myImagesFaces.Root(face1); - TopoDS_Shape face2; + // find another face which originates from the same face as aFace1: + // usually aFace2 is internal if aFace1 is not and vice versa + + const TopoDS_Shape& anOrigFace = myImagesFaces.Root(aFace1); + TopoDS_Shape aFace2; if ( !isSectionE ) { while (itl.More()) { - face2 = itl.Value(); - if (!MPF.Contains( face2 )) { - EF.Remove( itl ); + aFace2 = itl.Value(); + if (!MFP.Contains( aFace2 )) { + LSF.Remove( itl ); continue; } - if (origS.IsSame( myImagesFaces.Root( face2 ))) + if (anOrigFace.IsSame( myImagesFaces.Root( aFace2 ))) break; itl.Next(); } - if (itl.More()) { // face2 found - EF.Remove( itl ); - MPF.Remove(face2); + if (itl.More()) { // aFace2 found, remove it from maps + LSF.Remove( itl ); + MFP.Remove(aFace2); } else - face2.Nullify(); - itl.Initialize( EF ); + aFace2.Nullify(); + itl.Initialize( LSF ); } - // check that origS is not same domain with SS - Standard_Boolean sameDom1 = 0, sameDom2 = 0; - const TopTools_ListOfShape& FL = MSEF.FindFromKey(E); //faces of SS sharing E + // check that anOrigFace is not same domain with CSF faces it intersects + + const TopTools_ListOfShape& FL = DMEF.FindFromKey(E); //faces of CSF sharing E const TopoDS_Shape& origF1 = myImagesFaces.Root(FL.First()); const TopoDS_Shape& origF2 = myImagesFaces.Root(FL.Last()); - if (origS.IsSame( origF1 )) - sameDom1 = Standard_True; - if ( origS.IsSame( origF2 )) - sameDom2 = Standard_True; - if (!(sameDom1 || sameDom2) && myInter3d.HasSameDomainF( origS )) { - sameDom1 = myInter3d.IsSameDomainF( origS, origF1); - sameDom2 = (origF1 == origF2) ? sameDom1 : myInter3d.IsSameDomainF( origS, origF2); + Standard_Boolean sameDom1 = anOrigFace.IsSame( origF1 ); + Standard_Boolean sameDom2 = anOrigFace.IsSame( origF2 ); + if (!(sameDom1 || sameDom2) && myInter3d.HasSameDomainF( anOrigFace )) { + sameDom1 = myInter3d.IsSameDomainF( anOrigFace, origF1); + if (origF1 == origF2) + sameDom2 = sameDom1; + else + myInter3d.IsSameDomainF( anOrigFace, origF2); } if (sameDom1 && sameDom2) continue; @@ -808,100 +859,133 @@ TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& S, if (inside || (dot + Precision::Angular() >= 1.0)) continue; // E is convex between origF1 and origF2 or they are tangent } - - + + // keep one of found faces - const TopoDS_Shape& SFace = sameDom1 ? FL.Last() : FL.First(); //face of SS sharing E - inside = Partition_Loop3d::IsInside (E, TopoDS::Face(SFace), face1, + + //face of CSF sharing E + const TopoDS_Shape& aShapeFace = sameDom1 ? FL.Last() : FL.First(); + // analyse aFace1 state + inside = Partition_Loop3d::IsInside (E, TopoDS::Face(aShapeFace), aFace1, 1, dot, GoodOri); - if ((dot + Precision::Angular() >= 1.0) && - !face2.IsNull()) { // face2 position is not clear, it will be analysed alone - MPF.Add( face2 ); - EF.Append( face2 ); - face2.Nullify(); + // store internal face + if (inside) + KeepFaces.Append(aFace1); + else if (!aFace2.IsNull()) + { + if (dot + Precision::Angular() >= 1.0) + { + // aFace2 state is not clear, it will be analysed alone, + // put it back to the maps + MFP.Add( aFace2 ); + LSF.Append( aFace2 ); + } + else + KeepFaces.Append(aFace2); } - if (inside) - KeepFaces.Append(face1); - else - if (!face2.IsNull()) - KeepFaces.Append(face2); } } + // add not distributed faces connected with KeepFaces + + // ultimate list of internal faces TopTools_ListOfShape KeptFaces; - if (MPF.IsEmpty()) + + // add to MFP not split tool faces as well, they may be connected with + // tool faces interfering with theShape + for ( itm.Initialize(myMapTools); itm.More(); itm.Next() ) { + const TopoDS_Shape& aToolFace = itm.Key(); + if (!myImageShape.HasImage(aToolFace)) + MFP.Add (aToolFace); + } + + if (MFP.IsEmpty()) KeptFaces.Append (KeepFaces); - while (!KeepFaces.IsEmpty()) { - // add to KeepFaces not distributed faces connected with KeepFaces - - // KeepEdges : map of edges of kept faces + while (!KeepFaces.IsEmpty()) + { + // KeepEdges : map of edges of faces kept last time TopTools_IndexedMapOfShape KeepEdges; - for (itl.Initialize(KeepFaces);itl.More();itl.Next() ) + for ( itl.Initialize(KeepFaces); itl.More(); itl.Next() ) { TopExp::MapShapes( itl.Value(), TopAbs_EDGE, KeepEdges); + KeptFaces.Append( itl.Value() ); + } - KeptFaces.Append (KeepFaces); // == KeepFaces.Clear() - - // keep faces connected with already kept faces - for (itm.Initialize(MPF);itm.More();itm.Next() ) { - const TopoDS_Shape& PF = itm.Key(); - for (expl.Init(PF,TopAbs_EDGE); expl.More(); expl.Next()) { - const TopoDS_Shape& se = expl.Current(); - if (!MSE.Contains(se) && KeepEdges.Contains(se) ) { - KeepFaces.Append(PF); - MPF.Remove(PF); - break; - } + KeepFaces.Clear(); + + // keep faces connected with already kept faces by KeepEdges + for ( itm.Initialize(MFP); itm.More(); itm.Next() ) { + const TopoDS_Shape& FP = itm.Key(); + for (expl.Init(FP,TopAbs_EDGE); expl.More(); expl.Next()) { + const TopoDS_Shape& se = expl.Current(); + if (!MSE.Contains(se) && KeepEdges.Contains(se) ) { + KeepFaces.Append(FP); + MFP.Remove(FP); + break; + } } } } - // check if kept faces make shell without free edges - MSEF.Clear(); // edge - kept faces - MPF.Clear(); // wrong faces + // check if kept faces form a shell without free edges + + DMEF.Clear(); // edge - kept faces + MFP.Clear(); // wrong faces if (CheckClosed) { for (itl.Initialize(KeptFaces); itl.More(); itl.Next() ) - TopExp::MapShapesAndAncestors(itl.Value(), TopAbs_EDGE, TopAbs_FACE, MSEF); + TopExp::MapShapesAndAncestors(itl.Value(), TopAbs_EDGE, TopAbs_FACE, DMEF); - Standard_Integer i, nb = MSEF.Extent(); + Standard_Integer i, nb = DMEF.Extent(); Standard_Boolean isClosed = Standard_False; while (!isClosed) { isClosed = Standard_True; for (i=1; isClosed && i<=nb; ++i) { - const TopoDS_Shape& E = MSEF.FindKey( i ); - if (! MSE.Contains( E )) - isClosed = ( MSEF(i).Extent() != 1 ); + const TopoDS_Shape& E = DMEF.FindKey( i ); + if (! MSE.Contains( E )) + isClosed = ( DMEF(i).Extent() != 1 ); } if (!isClosed) { - const TopoDS_Shape& F = MSEF.FindFromIndex( i-1 ).First(); // bad face - MPF.Add( F ); - // remove bad face from MSEF - for (expl.Init( F, TopAbs_EDGE); expl.More(); expl.Next()) { + const TopoDS_Shape& F = DMEF.FindFromIndex( i-1 ).First(); // bad face + MFP.Add( F ); + // remove bad face from DMEF + for (expl.Init( F, TopAbs_EDGE); expl.More(); expl.Next()) { const TopoDS_Shape& E = expl.Current(); - TopTools_ListOfShape& FL = MSEF.ChangeFromKey( E ); - for (itl.Initialize( FL ); itl.More(); itl.Next() ) { - if ( F.IsSame( itl.Value() )) { - FL.Remove( itl ); - break; - } - } - } + TopTools_ListOfShape& FL = DMEF.ChangeFromKey( E ); + for (itl.Initialize( FL ); itl.More(); itl.Next() ) { + if ( F.IsSame( itl.Value() )) { + FL.Remove( itl ); + break; + } + } + } } } } - // add to the compound kept faces except bad ones in MPF - if (KeptFaces.Extent() > MPF.Extent()) { - for (itl.Initialize(KeptFaces); itl.More(); itl.Next() ) - if (! MPF.Contains( itl.Value() )) { - myBuilder.Add( C, itl.Value()); - //myBuilder.Add( C, itl.Value().Reversed()); - } + // a result compound + TopoDS_Compound C; + // compound of removed internal faces + TopoDS_Compound CNotCl; + + myBuilder.MakeCompound(C); + myBuilder.MakeCompound(CNotCl); + + // add to compounds + for (itl.Initialize(KeptFaces); itl.More(); itl.Next() ) + { + TopoDS_Shape & aIntFace = itl.Value(); + if (! MFP.Contains( aIntFace )) + myBuilder.Add( C, aIntFace); + else + myBuilder.Add( CNotCl, aIntFace); + } + + if (!skipAlreadyAdded && CheckClosed) + { + myInternalFaces.Bind( theShape, C ); + myIntNotClFaces.Bind( theShape, CNotCl ); } - if (!skipAlreadyAdded) - myInternalFaces.Bind( S, C ); - return C; } @@ -911,11 +995,11 @@ TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& S, //======================================================================= void Partition_Spliter::MakeShells(const TopoDS_Shape& S, - TopTools_ListOfShape& NS) + TopTools_ListOfShape& NS) { // check if S is closed shape Standard_Boolean isClosed = Standard_True; - + TopTools_IndexedDataMapOfShapeListOfShape MEF; Standard_Integer i; if (S.ShapeType() != TopAbs_SOLID) { @@ -1361,26 +1445,35 @@ void Partition_Spliter::KeepShapesInside (const TopoDS_Shape& S) KeepShapesInside( it.Value()); return; } - if (!myImageShape.HasImage( S ) && ! CheckTool( S )) - return; - + + Standard_Boolean isTool = Standard_False; + if (!myImageShape.HasImage( S )) { + isTool = CheckTool( S ); + if (!isTool) return; + } + + // build map of internal faces + TopTools_IndexedMapOfShape MIF; + + // if S is not a tool, make sure that split faces of S are in MIF + if (!isTool) + TopExp::MapShapes( myImageShape.Image(S).First(), TopAbs_FACE, MIF); + TopoDS_Shape InsFacesComp = FindFacesInside( S, Standard_False, Standard_True); - TopTools_IndexedMapOfShape MIF; // map of internal faces; TopExp::MapShapes( InsFacesComp, TopAbs_FACE, MIF ); - if (MIF.IsEmpty()) return; - - // leave in the result only those shapes having a face in MIF + TopoDS_Compound C; myBuilder.MakeCompound(C); - + + // leave in the result only those shapes having a face in MIF for (it.Initialize( myShape ); it.More(); it.Next()) { TopExp_Explorer expResF( it.Value(), TopAbs_FACE ); for (; expResF.More(); expResF.Next()) { if ( MIF.Contains( expResF.Current())) { - myBuilder.Add( C, it.Value() ); - break; + myBuilder.Add( C, it.Value() ); + break; } } } @@ -1406,7 +1499,7 @@ void Partition_Spliter::RemoveShapesInside (const TopoDS_Shape& S) isTool = CheckTool( S ); if (!isTool) return; } - + TopoDS_Shape InsFacesComp = FindFacesInside( S, Standard_False, Standard_True); TopTools_IndexedMapOfShape MIF; // map of internal faces TopExp::MapShapes( InsFacesComp, TopAbs_FACE, MIF); @@ -1414,7 +1507,7 @@ void Partition_Spliter::RemoveShapesInside (const TopoDS_Shape& S) if (MIF.IsEmpty()) return; // add to MIF split faces of S - if (myImageShape.HasImage( S )) + if (myImageShape.HasImage(S)) TopExp::MapShapes( myImageShape.Image(S).First(), TopAbs_FACE, MIF); // leave in the result only those shapes not having all face in MIF @@ -1431,7 +1524,7 @@ void Partition_Spliter::RemoveShapesInside (const TopoDS_Shape& S) for (; expResF.More(); expResF.Next()) if (!MIF.Contains( expResF.Current())) break; - + if (expResF.More()) // add shape to result myBuilder.Add( C, it.Value() ); @@ -1445,15 +1538,17 @@ void Partition_Spliter::RemoveShapesInside (const TopoDS_Shape& S) } if (!isTool) { + // rebuild S, it must remain in the result + Standard_Boolean isClosed = Standard_False; switch (S.ShapeType()) { case TopAbs_SOLID : isClosed = Standard_True; break; case TopAbs_SHELL: { TopTools_IndexedDataMapOfShapeListOfShape MEF; - Standard_Integer i; TopExp::MapShapesAndAncestors(S, TopAbs_EDGE, TopAbs_FACE, MEF); + Standard_Integer i; for (i=1; isClosed && i<=MEF.Extent(); ++i) isClosed = ( MEF(i).Extent() != 1 ); break; @@ -1462,27 +1557,42 @@ void Partition_Spliter::RemoveShapesInside (const TopoDS_Shape& S) isClosed = Standard_False; } if (isClosed) { + // add to a new shape external faces of removed shapes, ie those in RFM + TopoDS_Shell Shell; myBuilder.MakeShell( Shell ); + // exclude redundant internal face with edges encounterd only once + TopTools_IndexedDataMapOfShapeListOfShape MEF; TopTools_MapIteratorOfMapOfShape itF (RFM); for ( ; itF.More(); itF.Next()) - myBuilder.Add( Shell, itF.Key()); + TopExp::MapShapesAndAncestors(itF.Key(), TopAbs_EDGE, TopAbs_FACE, MEF); + + // add only faces forming a closed shell + for (itF.Reset() ; itF.More(); itF.Next()) + { + TopExp_Explorer expE (itF.Key(), TopAbs_EDGE); + for (; expE.More(); expE.Next()) + if (MEF.FindFromKey(expE.Current()).Extent() == 1) + break; + if (!expE.More()) + myBuilder.Add( Shell, itF.Key()); + } if (S.ShapeType() == TopAbs_SOLID) { - TopoDS_Solid Solid; - myBuilder.MakeSolid( Solid ); - myBuilder.Add (Solid, Shell); - myBuilder.Add (C, Solid); + TopoDS_Solid Solid; + myBuilder.MakeSolid( Solid ); + myBuilder.Add (Solid, Shell); + myBuilder.Add (C, Solid); } else - myBuilder.Add (C, Shell); + myBuilder.Add (C, Shell); } else { if (myImageShape.HasImage( S )) { - for (it.Initialize( myImageShape.Image(S).First()); it.More(); it.Next()) - myBuilder.Add (C, it.Value()); + for (it.Initialize( myImageShape.Image(S).First()); it.More(); it.Next()) + myBuilder.Add (C, it.Value()); } } } diff --git a/src/PARTITION/Partition_Spliter.hxx b/src/PARTITION/Partition_Spliter.hxx index 8174eb986..bb26915c1 100644 --- a/src/PARTITION/Partition_Spliter.hxx +++ b/src/PARTITION/Partition_Spliter.hxx @@ -1,16 +1,29 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : Partition_Spliter.hxx +// Module : GEOM + #ifndef _Partition_Spliter_HeaderFile #define _Partition_Spliter_HeaderFile @@ -132,10 +145,15 @@ Partition_Inter3d myInter3d; TopTools_MapOfOrientedShape myAddedFacesMap; TopTools_MapOfShape myEqualEdges; TopTools_DataMapOfShapeShape myInternalFaces; +TopTools_DataMapOfShapeShape myIntNotClFaces; }; + + + + // other Inline functions and methods (like "C++: function call" methods) // diff --git a/src/PARTITION/Partition_Spliter.ixx b/src/PARTITION/Partition_Spliter.ixx index 03fc70d07..ee8259468 100644 --- a/src/PARTITION/Partition_Spliter.ixx +++ b/src/PARTITION/Partition_Spliter.ixx @@ -1,17 +1,29 @@ -// File generated by CPPExt (Value) -// Copyright (C) 1991,1995 by -// -// MATRA DATAVISION, FRANCE -// -// This software is furnished in accordance with the terms and conditions -// of the contract and with the inclusion of the above copyright notice. -// This software or any other copy thereof may not be provided or otherwise -// be made available to any other person. No title to an ownership of the -// software is hereby transferred. -// -// At the termination of the contract, the software and all copies of this -// software must be deleted. +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// 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 67d45dc1a..bf8622c93 100644 --- a/src/PARTITION/Partition_Spliter.jxx +++ b/src/PARTITION/Partition_Spliter.jxx @@ -1,3 +1,29 @@ +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : Partition_Spliter.jxx +// Module : GEOM + #ifndef _BRepAlgo_AsDes_HeaderFile #include #endif diff --git a/src/SKETCHER/GEOM_Sketcher.cxx b/src/SKETCHER/GEOM_Sketcher.cxx index 4e2010002..7734c2b8f 100644 --- a/src/SKETCHER/GEOM_Sketcher.cxx +++ b/src/SKETCHER/GEOM_Sketcher.cxx @@ -1,15 +1,32 @@ -using namespace std; -// File : GEOM_Sketcher.cxx -// Created : Wed Jul 5 10:12:09 2000 -// Author : Martine LANGLOIS - -// Modified : Tue Dec 11 21:28:07 2001 -// Author : Nicolas REJNERI -// Project : SALOME -// Module : SALOMEGUI -// Copyright : Open CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_Sketcher.cxx +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ +using namespace std; #include "GEOM_Sketcher.h" #include "utilities.h" diff --git a/src/SKETCHER/GEOM_Sketcher.h b/src/SKETCHER/GEOM_Sketcher.h index c6c4927e7..89b12c086 100644 --- a/src/SKETCHER/GEOM_Sketcher.h +++ b/src/SKETCHER/GEOM_Sketcher.h @@ -1,12 +1,29 @@ -// File : GEOM_Sketcher.h -// Created : Wed Jul 5 10:12:09 2000 -// Author : Martine LANGLOIS - -// Modified : Tue Dec 11 21:23:41 2001 -// Author : Nicolas REJNERI -// Project : SALOME -// Module : SALOMEGUI -// Copyright : Open CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_Sketcher.h +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ #include "GEOM_SketcherStatus.h" diff --git a/src/SKETCHER/GEOM_SketcherStatus.h b/src/SKETCHER/GEOM_SketcherStatus.h index 7680391cf..4e3adbc1a 100644 --- a/src/SKETCHER/GEOM_SketcherStatus.h +++ b/src/SKETCHER/GEOM_SketcherStatus.h @@ -1,12 +1,29 @@ -// File : GEOM_SketcherStatus.h -// Created : Wed Jul 5 10:12:09 2000 -// Author : Martine LANGLOIS - -// Modified : Tue Dec 11 21:29:57 2001 -// Author : Nicolas REJNERI -// Project : SALOME -// Module : SALOMEGUI -// Copyright : Open CASCADE +// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// +// +// +// File : GEOM_SketcherStatus.h +// Author : Nicolas REJNERI +// Module : GEOM // $Header$ enum TransitionStatus { diff --git a/src/SKETCHER/Makefile.in b/src/SKETCHER/Makefile.in index ba4dccfd7..9de74619f 100644 --- a/src/SKETCHER/Makefile.in +++ b/src/SKETCHER/Makefile.in @@ -1,15 +1,36 @@ -# -* Makefile *- +# GEOM SKETCHER : basic sketcher # -# Author : Patrick GOLDBRONN (CEA) -# Date : 29/06/2001 -# $Header$ +# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with 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 : Makefile.in +# Author : Patrick GOLDBRONN (CEA) +# Module : GEOM +# $Header$ -# source path top_srcdir=@top_srcdir@ -top_builddir=../.. +top_builddir=../../.. srcdir=@srcdir@ -VPATH=.:$(srcdir):$(top_srcdir)/idl:$(top_builddir)/idl +VPATH=.:@srcdir@:@top_srcdir@/idl + @COMMENCE@ @@ -24,9 +45,9 @@ EXPORT_HEADERS= GEOM_Sketcher.h \ GEOM_SketcherStatus.h # additionnal information to compil and link file -CPPFLAGS += $(OCC_INCLUDES) $(QT_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome -CXXFLAGS += $(OCC_CXXFLAGS) -I${KERNEL_ROOT_DIR}/include/salome -LDFLAGS += $(OCC_LIBS) -L${KERNEL_ROOT_DIR}/lib/salome +CPPFLAGS += $(OCC_INCLUDES) $(QT_INCLUDES) +CXXFLAGS += $(OCC_CXXFLAGS) +LDFLAGS += $(OCC_LIBS) # additional file to be cleaned MOSTLYCLEAN = From fc17badd1a4a703edfb0beca8f27c54cfae4e5e4 Mon Sep 17 00:00:00 2001 From: nri Date: Wed, 9 Jul 2003 14:59:42 +0000 Subject: [PATCH 3/4] sources v1.2 --- idl/GEOM_Gen.idl | 30 +++++++++++++++++++++++------- idl/GEOM_Shape.idl | 30 +++++++++++++++++++++++------- 2 files changed, 46 insertions(+), 14 deletions(-) diff --git a/idl/GEOM_Gen.idl b/idl/GEOM_Gen.idl index c4a1d83ec..94249fa19 100644 --- a/idl/GEOM_Gen.idl +++ b/idl/GEOM_Gen.idl @@ -1,10 +1,26 @@ -// File : GEOM_Gen.idl -// Created : -// Author : Lucien PIGNOLONI -// Project : SALOME -// Copyright : OPEN CASCADE -// $HEADERS: - +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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_Gen.idl +// Author : Lucien PIGNOLONI #ifndef __GEOM_GEN__ #define __GEOM_GEN__ diff --git a/idl/GEOM_Shape.idl b/idl/GEOM_Shape.idl index f9c61eab0..b9091a0ed 100644 --- a/idl/GEOM_Shape.idl +++ b/idl/GEOM_Shape.idl @@ -1,10 +1,26 @@ -// File : GEOM_Shape.idl -// Created : 29 november 2001 -// Author : Lucien PIGNOLONI -// Project : SALOME -// Copyright : OPEN CASCADE -// $HEADERS: - +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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_Shape.idl +// Author : Lucien PIGNOLONI #ifndef __GEOM_Shape__ #define __GEOM_Shape__ From 8403de181549f67834cfd0dcd0747af511cbd3dd Mon Sep 17 00:00:00 2001 From: nri Date: Mon, 13 Oct 2003 14:55:19 +0000 Subject: [PATCH 4/4] sources v1.2c --- src/ARCHIMEDE/Makefile.in | 2 +- src/GEOM/GEOM_Gen_i.cc | 55 +- src/GEOM/Makefile.in | 2 +- src/GEOMClient/Makefile.in | 2 +- src/GEOMDS/Makefile.in | 2 +- src/GEOMFiltersSelection/Makefile.in | 2 +- src/GEOMGUI/GeometryGUI.cxx | 24 +- src/GEOMGUI/GeometryGUI_PipeDlg.cxx | 8 + src/GEOMGUI/GeometryGUI_PointDlg.cxx | 8 + src/GEOMGUI/Makefile.in | 2 +- src/OBJECT/GEOM_AISShape.cxx | 12 +- src/OBJECT/GEOM_Actor.cxx | 3 +- src/OBJECT/Makefile.in | 2 +- src/PARTITION/Makefile.in | 2 +- src/PARTITION/Partition_Inter2d.cdl | 21 +- src/PARTITION/Partition_Inter2d.cxx | 555 ++- src/PARTITION/Partition_Inter2d.hxx | 4 +- src/PARTITION/Partition_Inter3d.cdl | 15 +- src/PARTITION/Partition_Inter3d.cxx | 285 +- src/PARTITION/Partition_Loop2d.cxx | 685 ++-- src/PARTITION/Partition_Spliter.cdl | 37 +- src/PARTITION/Partition_Spliter.cxx | 1234 ++++-- src/PARTITION/Partition_Spliter.hxx | 34 +- src/SKETCHER/Makefile.in | 2 +- src/diffs | 5385 ++++++++++++++++++++++++++ 25 files changed, 7262 insertions(+), 1121 deletions(-) create mode 100644 src/diffs diff --git a/src/ARCHIMEDE/Makefile.in b/src/ARCHIMEDE/Makefile.in index 16847d759..76ea5d561 100644 --- a/src/ARCHIMEDE/Makefile.in +++ b/src/ARCHIMEDE/Makefile.in @@ -46,7 +46,7 @@ EXPORT_HEADERS = Archimede_VolumeSection.hxx # additionnal information to compil and link file CPPFLAGS += $(OCC_INCLUDES) $(QT_INCLUDES) CXXFLAGS += $(OCC_CXXFLAGS) -LDFLAGS += $(OCC_LIBS) +LDFLAGS += $(CAS_LDPATH) -lTKGeomBase # additional file to be cleaned MOSTLYCLEAN = diff --git a/src/GEOM/GEOM_Gen_i.cc b/src/GEOM/GEOM_Gen_i.cc index 344dd05eb..962c0bd1b 100644 --- a/src/GEOM/GEOM_Gen_i.cc +++ b/src/GEOM/GEOM_Gen_i.cc @@ -54,7 +54,11 @@ using namespace std; #include #include +#if OCC_VERSION_MAJOR >= 5 +#include +#else #include +#endif #include #include #include @@ -149,6 +153,14 @@ using namespace std; #include CORBA_SERVER_HEADER(SALOMEDS_Attributes) +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. @@ -760,8 +772,13 @@ const char* GEOM_Gen_i::GetStringFromIOR(GEOM::GEOM_Shape_var shapeIOR) { // 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 = GEOM::GEOM_Shape::_narrow(_orb->string_to_object(stringIOR)) ; - return shapeIOR ; + 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() ; } @@ -1445,7 +1462,7 @@ GEOM::GEOM_Shape_ptr GEOM_Gen_i::SuppressHolesInFaceOrShell( GEOM::GEOM_Shape_pt THROW_SALOME_CORBA_EXCEPTION("in GEOM_Gen_i::SuppressHolesInFace : no holes selected", SALOME::BAD_PARAM); const TopoDS_Shape tds = GetTopoShape(shapeFaceShell) ; - if( tds.IsNull() || !BRepAlgoAPI::IsValid(tds) ) + 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 */ @@ -1551,7 +1568,7 @@ bool GEOM_Gen_i::RebuildFaceRemovingHoles( const TopoDS_Face& aFace, { /* Get the outer wire of the face 'aFace' */ TopoDS_Wire outW = BRepTools::OuterWire( aFace ) ; - if( outW.IsNull() || !BRepAlgoAPI::IsValid(outW) ) + 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' */ @@ -1611,7 +1628,7 @@ GEOM::GEOM_Shape_ptr GEOM_Gen_i::SuppressHole( GEOM::GEOM_Shape_ptr shape, /* Retrieve 'aShape' the initial main shape selection */ const TopoDS_Shape aShape = GetTopoShape(shape); - if( !BRepAlgoAPI::IsValid(aShape) ) + 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 ) @@ -1624,7 +1641,7 @@ GEOM::GEOM_Shape_ptr GEOM_Gen_i::SuppressHole( GEOM::GEOM_Shape_ptr shape, else { aFace = TopoDS::Face(tmp) ; } - if( !BRepAlgoAPI::IsValid(aFace) ) + 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 ! */ @@ -1635,12 +1652,12 @@ GEOM::GEOM_Shape_ptr GEOM_Gen_i::SuppressHole( GEOM::GEOM_Shape_ptr shape, else { aWire = TopoDS::Wire(aTmp) ; } - if( !BRepAlgoAPI::IsValid(aWire) ) + 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() || !BRepAlgoAPI::IsValid(outerW) ) + 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 */ @@ -1654,7 +1671,7 @@ GEOM::GEOM_Shape_ptr GEOM_Gen_i::SuppressHole( GEOM::GEOM_Shape_ptr shape, } else { TopoDS_Shape aTemp ; - if( !GetShapeFromIndex( aShape, TopAbs_FACE, ListIdEndFace[0], aTemp ) || tmp.IsNull() || !BRepAlgoAPI::IsValid(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 */ @@ -1664,7 +1681,7 @@ GEOM::GEOM_Shape_ptr GEOM_Gen_i::SuppressHole( GEOM::GEOM_Shape_ptr shape, int nbWires = 0 ; for( fExp.Init(endFace, TopAbs_WIRE); fExp.More(); fExp.Next() ) { TopoDS_Wire W = TopoDS::Wire( fExp.Current() ) ; - if( !W.IsNull() && BRepAlgoAPI::IsValid(W) ) + if( !W.IsNull() && IsValid(W) ) nbWires++ ; } if(nbWires > 1) @@ -1815,7 +1832,7 @@ bool GEOM_Gen_i::BuildShellWithFaceCompound( const TopoDS_Compound Comp, int i = 0 ; for( ex.Init( Comp, TopAbs_FACE); ex.More(); ex.Next() ) { TopoDS_Face F = TopoDS::Face( ex.Current() ) ; - if( !BRepAlgoAPI::IsValid(F) ) { + if( !IsValid(F) ) { return false ; } B.AddShellFace( resultShell, F ) ; @@ -1846,7 +1863,7 @@ bool GEOM_Gen_i::FindCompareWireHoleOnFace( const TopoDS_Face& F, /* Get the outer wire of aFace */ TopoDS_Wire outerW = BRepTools::OuterWire(F) ; - if( outerW.IsNull() || !BRepAlgoAPI::IsValid(outerW) ) { + if( outerW.IsNull() || !IsValid(outerW) ) { return false ; } @@ -2353,7 +2370,7 @@ GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeBoolean(GEOM::GEOM_Shape_ptr shape1, } /* We test the validity of resulting shape */ - if( !BRepAlgoAPI::IsValid(shape) ) { + if( !IsValid(shape) ) { THROW_SALOME_CORBA_EXCEPTION("Boolean aborted : non valid shape result", SALOME::BAD_PARAM); } @@ -2407,7 +2424,7 @@ GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeFuse(GEOM::GEOM_Shape_ptr shape1, } /* We test the validity of resulting shape */ - if( !BRepAlgoAPI::IsValid(shape) ) { + if( !IsValid(shape) ) { THROW_SALOME_CORBA_EXCEPTION("Fuse aborted : non valid shape result", SALOME::BAD_PARAM); } @@ -2863,7 +2880,7 @@ throw (SALOME::SALOME_Exception) tds = PS.Shape(); - if( !BRepAlgoAPI::IsValid(tds) ) { + if( !IsValid(tds) ) { //MESSAGE ( "In Partition: non valid shape result" ); THROW_SALOME_CORBA_EXCEPTION("Partition aborted : non valid shape result", SALOME::BAD_PARAM); } @@ -3007,7 +3024,7 @@ GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeFilling(GEOM::GEOM_Shape_ptr myShape, } /* We test the validity of resulting shape */ - if( !BRepAlgoAPI::IsValid(tds) ) { + if( !IsValid(tds) ) { THROW_SALOME_CORBA_EXCEPTION("Filling aborted : non valid shape result", SALOME::BAD_PARAM); } else { @@ -3299,7 +3316,7 @@ GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeSewing( const GEOM::GEOM_Gen::ListOfIOR& Li aMethod.Perform() ; tds = aMethod.SewedShape() ; - if( !BRepAlgoAPI::IsValid(tds) ) { + if( !IsValid(tds) ) { THROW_SALOME_CORBA_EXCEPTION("Make Sewing aborted : non valid shape", SALOME::BAD_PARAM); } if( tds.IsNull() ) { @@ -3338,7 +3355,7 @@ GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakeSewingShape( GEOM::GEOM_Shape_ptr aShape, aMethod.Perform() ; tds = aMethod.SewedShape() ; - if( !BRepAlgoAPI::IsValid(tds) ) { + if( !IsValid(tds) ) { THROW_SALOME_CORBA_EXCEPTION("Make Sewing aborted : non valid shape", SALOME::BAD_PARAM); } } @@ -4357,7 +4374,7 @@ GEOM::GEOM_Shape_ptr GEOM_Gen_i::MakePipe( GEOM::GEOM_Shape_ptr pathShape, THROW_SALOME_CORBA_EXCEPTION("Exception catched in GEOM_Gen_i::MakePipe", SALOME::BAD_PARAM); } - if ( !BRepAlgoAPI::IsValid(tds) ) { + if ( !IsValid(tds) ) { THROW_SALOME_CORBA_EXCEPTION("MakePipe aborted : non valid shape result", SALOME::BAD_PARAM); } else { diff --git a/src/GEOM/Makefile.in b/src/GEOM/Makefile.in index e80abfe80..30cf1b56a 100644 --- a/src/GEOM/Makefile.in +++ b/src/GEOM/Makefile.in @@ -51,7 +51,7 @@ EXPORT_HEADERS = # additionnal information to compil and link file CPPFLAGS += $(OCC_INCLUDES) CXXFLAGS += $(OCC_CXXFLAGS) -LDFLAGS += $(OCC_LIBS) -lGeometryDS -lTOOLSDS -lSalomeNS -lSalomeContainer -lGeometryPartition -lGeometryArchimede +LDFLAGS += -lGeometryDS -lTOOLSDS -lSalomeNS -lSalomeContainer -lGeometryPartition -lGeometryArchimede $(CAS_LDPATH) -lTKIGES -lTKSTEP -lTKFillet -lTKOffset # additional file to be cleaned MOSTLYCLEAN = diff --git a/src/GEOMClient/Makefile.in b/src/GEOMClient/Makefile.in index b3fff1fc6..8fde72ee7 100644 --- a/src/GEOMClient/Makefile.in +++ b/src/GEOMClient/Makefile.in @@ -53,7 +53,7 @@ BIN_SERVER_IDL = # additionnal information to compil and link file CPPFLAGS += $(OCC_INCLUDES) CXXFLAGS += $(OCC_CXXFLAGS) -LDFLAGS += $(OCC_LIBS) +LDFLAGS += $(CAS_LDPATH) -lTKTopAlgo @CONCLUDE@ diff --git a/src/GEOMDS/Makefile.in b/src/GEOMDS/Makefile.in index 7fbc42390..a4511eec8 100644 --- a/src/GEOMDS/Makefile.in +++ b/src/GEOMDS/Makefile.in @@ -63,7 +63,7 @@ EXPORT_HEADERS= GEOMDS_Application.hxx \ # additionnal information to compil and link file CPPFLAGS += $(OCC_INCLUDES) CXXFLAGS += $(OCC_CXXFLAGS) -LDFLAGS += $(OCC_LIBS) +LDFLAGS += $(CAS_LDPATH) -lTKCAF # additional file to be cleaned MOSTLYCLEAN = diff --git a/src/GEOMFiltersSelection/Makefile.in b/src/GEOMFiltersSelection/Makefile.in index 61fc51808..96d39276c 100644 --- a/src/GEOMFiltersSelection/Makefile.in +++ b/src/GEOMFiltersSelection/Makefile.in @@ -54,7 +54,7 @@ EXPORT_HEADERS= GEOM_ShapeTypeFilter.hxx \ # additionnal information to compil and link file CPPFLAGS += $(OCC_INCLUDES) $(QT_INCLUDES) $(PYTHON_INCLUDES) $(VTK_INCLUDES) CXXFLAGS += $(OCC_CXXFLAGS) -LDFLAGS += $(OCC_LIBS) +LDFLAGS += -lSalomeGUI # additional file to be cleaned MOSTLYCLEAN = diff --git a/src/GEOMGUI/GeometryGUI.cxx b/src/GEOMGUI/GeometryGUI.cxx index 0e86012f5..a86ef9ea1 100644 --- a/src/GEOMGUI/GeometryGUI.cxx +++ b/src/GEOMGUI/GeometryGUI.cxx @@ -716,9 +716,9 @@ GEOM_Actor* GeometryGUI::ConvertIORinGEOMActor( const char * IOR, GEOM::GEOM_Shape_ptr GeometryGUI::ConvertIOinGEOMShape( const Handle(SALOME_InteractiveObject)& IO, Standard_Boolean& testResult ) { - GEOM::GEOM_Shape_ptr aShape ; + GEOM::GEOM_Shape_var aShape ; testResult = false ; - + /* case SObject */ if ( IO->hasEntry() ) { SALOMEDS::Study_var aStudy = GeomGUI->myActiveStudy->getStudyDocument(); @@ -726,23 +726,23 @@ GEOM::GEOM_Shape_ptr GeometryGUI::ConvertIOinGEOMShape( const Handle(SALOME_Inte SALOMEDS::GenericAttribute_var anAttr; SALOMEDS::AttributeIOR_var anIOR; if ( !obj->_is_nil() ) { - if (obj->FindAttribute(anAttr, "AttributeIOR")) { - anIOR = SALOMEDS::AttributeIOR::_narrow(anAttr); - aShape = myComponentGeom->GetIORFromString(anIOR->Value()) ; - testResult = true ; - return aShape; - } + if (obj->FindAttribute(anAttr, "AttributeIOR")) { + anIOR = SALOMEDS::AttributeIOR::_narrow(anAttr); + aShape = myComponentGeom->GetIORFromString(anIOR->Value()) ; + if(!CORBA::is_nil(aShape)) testResult = true ; + return aShape._retn(); + } } } /* case Graphical Object */ if ( IO->IsInstance(STANDARD_TYPE(GEOM_InteractiveObject)) ) { Handle(GEOM_InteractiveObject) GIObject = Handle(GEOM_InteractiveObject)::DownCast( IO ); Standard_CString ior = GIObject->getIOR(); - testResult = true ; aShape = myComponentGeom->GetIORFromString(ior) ; - return aShape; - } - return aShape ; + if(!CORBA::is_nil(aShape)) testResult = true ; + return aShape._retn(); + } + return aShape._retn(); } diff --git a/src/GEOMGUI/GeometryGUI_PipeDlg.cxx b/src/GEOMGUI/GeometryGUI_PipeDlg.cxx index 8f24507c0..83118c2da 100644 --- a/src/GEOMGUI/GeometryGUI_PipeDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_PipeDlg.cxx @@ -50,7 +50,11 @@ using namespace std; #include #include #include +#if OCC_VERSION_MAJOR >= 5 +#include +#else #include +#endif //================================================================================= @@ -386,7 +390,11 @@ void GeometryGUI_PipeDlg::SelectionIntoArgument() try { tds = BRepOffsetAPI_MakePipe(aWire,myShape1 ) ; +#if OCC_VERSION_MAJOR >= 5 + if ( BRepAlgo::IsValid(tds) ) +#else if ( BRepAlgoAPI::IsValid(tds) ) +#endif { //Draw Pipe mySimulationTopoDs = tds; diff --git a/src/GEOMGUI/GeometryGUI_PointDlg.cxx b/src/GEOMGUI/GeometryGUI_PointDlg.cxx index 3c3d05ac7..f99257df5 100644 --- a/src/GEOMGUI/GeometryGUI_PointDlg.cxx +++ b/src/GEOMGUI/GeometryGUI_PointDlg.cxx @@ -40,7 +40,11 @@ using namespace std; #include #include +#if OCC_VERSION_MAJOR >= 5 +#include +#else #include +#endif #include #include @@ -763,7 +767,11 @@ void GeometryGUI_PointDlg::ActivateThisDialog( ) //================================================================================= bool GeometryGUI_PointDlg::CalculateVertexOnCurve(const TopoDS_Edge& anEdge, const Standard_Real aParameter, TopoDS_Shape& resultVertex) { +#if OCC_VERSION_MAJOR >= 5 + if( anEdge.IsNull() || !BRepAlgo::IsValid(anEdge) ) +#else if( anEdge.IsNull() || !BRepAlgoAPI::IsValid(anEdge) ) +#endif return false ; Standard_Real first, last ; diff --git a/src/GEOMGUI/Makefile.in b/src/GEOMGUI/Makefile.in index d6f0812bc..239d16eba 100644 --- a/src/GEOMGUI/Makefile.in +++ b/src/GEOMGUI/Makefile.in @@ -169,6 +169,6 @@ LIB_SERVER_IDL = CPPFLAGS += $(QT_INCLUDES) $(VTK_INCLUDES) $(OGL_INCLUDES) $(OCC_INCLUDES) $(PYTHON_INCLUDES) CXXFLAGS += $(OCC_CXXFLAGS) -LDFLAGS += -lOCCViewer -lVTKViewer -lSalomeObject -lSalomeGUI -lGeometryClient -lGeometryObject -lGeometryFiltersSelection -lGeometrySketcher $(OCC_LIBS) +LDFLAGS += -lOCCViewer -lVTKViewer -lSalomeObject -lSalomeGUI -lGeometryClient -lGeometryObject -lGeometryFiltersSelection -lGeometrySketcher $(CAS_LDPATH) -lTKFillet -lTKOffset @CONCLUDE@ diff --git a/src/OBJECT/GEOM_AISShape.cxx b/src/OBJECT/GEOM_AISShape.cxx index 93cbeaa78..e87917f5e 100644 --- a/src/OBJECT/GEOM_AISShape.cxx +++ b/src/OBJECT/GEOM_AISShape.cxx @@ -101,9 +101,17 @@ void GEOM_AISShape::Compute(const Handle(PrsMgr_PresentationManager3d)& aPresent case StdSelect_DM_Shading: { myDrawer->ShadingAspect()->Aspect()->SetDistinguishOn(); - myDrawer->ShadingAspect()->Aspect()->SetFrontMaterial(Graphic3d_NOM_BRASS); + + Graphic3d_MaterialAspect aMatAspect; + aMatAspect.SetAmbient( 1 ); + aMatAspect.SetDiffuse( 0 ); + aMatAspect.SetEmissive( 0 ); + aMatAspect.SetShininess(1 ); + aMatAspect.SetSpecular( 0 ); + + myDrawer->ShadingAspect()->Aspect()->SetFrontMaterial(aMatAspect); myDrawer->ShadingAspect()->Aspect()->SetBackMaterial(Graphic3d_NOM_JADE); - + Graphic3d_MaterialAspect FMat = myDrawer->ShadingAspect()->Aspect()->FrontMaterial(); Graphic3d_MaterialAspect BMat = myDrawer->ShadingAspect()->Aspect()->BackMaterial(); FMat.SetTransparency(myTransparency); BMat.SetTransparency(myTransparency); diff --git a/src/OBJECT/GEOM_Actor.cxx b/src/OBJECT/GEOM_Actor.cxx index e29c665cb..0602bc5ca 100644 --- a/src/OBJECT/GEOM_Actor.cxx +++ b/src/OBJECT/GEOM_Actor.cxx @@ -274,7 +274,8 @@ void GEOM_Actor::Render(vtkRenderer *ren, vtkMapper *Mapper) aMatrix->Delete(); } else this->Device->Render(ren, this->Mapper); - this->EstimatedRenderTime = WireframeMapper->GetTimeToDraw(); + if(WireframeMapper!=NULL) this->EstimatedRenderTime = WireframeMapper->GetTimeToDraw(); + else if(ShadingMapper!=NULL) this->EstimatedRenderTime = ShadingMapper->GetTimeToDraw(); } // SubShape diff --git a/src/OBJECT/Makefile.in b/src/OBJECT/Makefile.in index 8c03ab723..2d95d9601 100644 --- a/src/OBJECT/Makefile.in +++ b/src/OBJECT/Makefile.in @@ -56,7 +56,7 @@ BIN = BIN_SRC = CPPFLAGS+=$(QT_INCLUDES) $(PYTHON_INCLUDES) $(OCC_INCLUDES) $(VTK_INCLUDES) $(OGL_INCLUDES) -LDFLAGS+=$(QT_MT_LIBS) $(OCC_LIBS) $(VTK_LIBS) $(OGL_LIBS) $(PYTHON_LIBS) -lSalomeObject +LDFLAGS+=$(QT_MT_LIBS) $(VTK_LIBS) $(OGL_LIBS) $(PYTHON_LIBS) -lSalomeObject %_moc.cxx: %.h $(MOC) $< -o $@ diff --git a/src/PARTITION/Makefile.in b/src/PARTITION/Makefile.in index 98694a9d2..e38d97f25 100644 --- a/src/PARTITION/Makefile.in +++ b/src/PARTITION/Makefile.in @@ -55,7 +55,7 @@ EXPORT_IDLS= CPPFLAGS += $(OCC_INCLUDES) CXXFLAGS += $(OCC_CXXFLAGS) -LDFLAGS += $(OCC_LIBS) +LDFLAGS += $(CAS_LDPATH) -lTKBool %_moc.cxx: %.h $(MOC) $< -o $@ diff --git a/src/PARTITION/Partition_Inter2d.cdl b/src/PARTITION/Partition_Inter2d.cdl index a3a4d15d2..1dcaa264b 100644 --- a/src/PARTITION/Partition_Inter2d.cdl +++ b/src/PARTITION/Partition_Inter2d.cdl @@ -62,13 +62,30 @@ is AddVonE(myclass; V : Vertex from TopoDS; E1,E2 : Edge from TopoDS; - AsDes : mutable AsDes from BRepAlgo) + AsDes : mutable AsDes from BRepAlgo; + F: Face from TopoDS) returns Vertex from TopoDS; ---Purpose: Put V in AsDes as intersection of E1 and E2. -- Check that vertex equal to V already exists on one -- of edges, in such a case, V is not added but -- existing vertex is updated to be on E1 and E2 and - -- is returned insead of V. + -- is returned insead of V. + -- Optional F is a face E1 and E2 are on. If F is + -- provided, it is used to find new vertices on E1 + -- and E2 resulting from intersection of new edges on + -- the two other faces the F interferes with and + -- through which E1 and E2 pass too. This helps to + -- avoid small edges. + + + GetTolerance(myclass; theV : Vertex from TopoDS; + theU : Real from Standard; + theE : Edge from TopoDS; + theAsDes : AsDes from BRepAlgo) + returns Real from Standard; + ---Purpose: Returns tolerance theV must have atfer its + -- addition to theE with theU parameter. theAsDes is + -- used to find pcurves of theE end Inter2d; diff --git a/src/PARTITION/Partition_Inter2d.cxx b/src/PARTITION/Partition_Inter2d.cxx index e15bf24e3..54b25e6e9 100644 --- a/src/PARTITION/Partition_Inter2d.cxx +++ b/src/PARTITION/Partition_Inter2d.cxx @@ -1,23 +1,23 @@ // 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// CEDRAT, EDF R& D, LEG, PRINCIPIA R& D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with 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 // // // @@ -31,30 +31,26 @@ using namespace std; #include "utilities.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 -#include -#include -#include -#include -#include -#include - -#include -#include +#include #ifdef DEB static Standard_Boolean TestEdges = 0; @@ -63,21 +59,110 @@ static Standard_Integer NbE2d = 0; #endif //======================================================================= -//function : StorePart2d -//purpose : +//function : getOtherShape +//purpose : +//======================================================================= + +static TopoDS_Shape getOtherShape(const TopoDS_Shape& theS, + const TopTools_ListOfShape& theSList) +{ + TopTools_ListIteratorOfListOfShape anIt( theSList ); + for ( ; anIt.More(); anIt.Next() ) + if (!theS.IsSame( anIt.Value() )) + return anIt.Value(); + + return TopoDS_Shape(); +} + +//======================================================================= +//function : findVOnE +//purpose : on theE, find a vertex close to theV, such that an edge +// passing through it is an itersection of theF1 and theF2. +// theE intersects theE2 at theV +//======================================================================= + +static Standard_Boolean findVOnE(const TopoDS_Vertex & theV, + const TopoDS_Edge& theE, + const TopoDS_Edge& theE2, + const TopoDS_Shape& theF1, + const TopoDS_Shape& theF2, + const Handle(BRepAlgo_AsDes)& theAsDes, + TopoDS_Vertex & theFoundV) +{ + Standard_Real MinDist2 = ::RealLast(); + gp_Pnt P; + + // check all vertices on theE + const TopTools_ListOfShape& aVList = theAsDes->Descendant( theE ); + TopTools_ListIteratorOfListOfShape anIt( aVList ); + if (anIt.More()) + P = BRep_Tool::Pnt( theV ); + for ( ; anIt.More(); anIt.Next() ) + { + // check by distance + TopoDS_Vertex & V = TopoDS::Vertex( anIt.Value() ); + Standard_Real dist2 = P.SquareDistance( BRep_Tool::Pnt( V )); + if (dist2 < MinDist2) + MinDist2 = dist2; + else + continue; + + // V is a candidate if among edges passing through V there is one + // which is an intersection of theF1 and theF2 + TopTools_ListIteratorOfListOfShape anEIt( theAsDes->Ascendant( V )); + Standard_Boolean isOk = Standard_False; + for ( ; !isOk && anEIt.More(); anEIt.Next() ) + { + const TopoDS_Shape & E2 = anEIt.Value(); + if ( theE2.IsSame( E2 )) + continue; + const TopTools_ListOfShape & aFList = theAsDes->Ascendant( E2 ); + if (aFList.IsEmpty()) + continue; + if ( theF1.IsSame( aFList.First() )) + isOk = theF2.IsSame( aFList.Last() ); + else + isOk = theF2.IsSame( aFList.First() ) && theF1.IsSame( aFList.Last() ); + } + if (isOk) + theFoundV = V; + } + + if (theFoundV.IsNull()) + return Standard_False; + + // check that MinDist2 is not too large + Standard_Real f, l; + TopLoc_Location L; + Handle(Geom_Curve) aCurve = BRep_Tool::Curve( theE, L, f, l ); + gp_Pnt P1 = aCurve->Value( f ); + gp_Pnt P2 = aCurve->Value( 0.3 * f + 0.7 * l ); + //gp_Pnt P2 = aCurve->Value( 0.5 * ( f + l )); + if (MinDist2 > P1.SquareDistance( P2 )) + return Standard_False; + +#ifdef DEB + cout << "findVOnE: found MinDist = " << sqrt (MinDist2) << endl; +#endif + + return Standard_True; +} + +//======================================================================= +//function : AddVonE +//purpose : Put V in AsDes as intersection of E1 and E2. +// Check that vertex equal to V already exists on one +// of edges, in such a case, V is not added but +// existing vertex is updated to be on E1 and E2 and +// is returned insead of V. //======================================================================= -// static void StorePart2d (const TopoDS_Edge& E1, -// const TopoDS_Edge& E2, -// TopTools_ListOfShape& LV1, -// TopTools_ListOfShape& LV2, -// Handle(BRepAlgo_AsDes) AsDes, -// Standard_Real Tol) TopoDS_Vertex Partition_Inter2d::AddVonE(const TopoDS_Vertex& theV, - const TopoDS_Edge& E1, - const TopoDS_Edge& E2, - const Handle(BRepAlgo_AsDes)& AsDes) - + const TopoDS_Edge& E1, + const TopoDS_Edge& E2, + const Handle(BRepAlgo_AsDes)& AsDes, + const TopoDS_Face& theF) + { //------------------------------------------------------------- // test if the points of intersection already exist. If not, @@ -86,119 +171,128 @@ TopoDS_Vertex Partition_Inter2d::AddVonE(const TopoDS_Vertex& theV, //------------------------------------------------------------- const TopTools_ListOfShape& VOnE1 = AsDes->Descendant(E1); const TopTools_ListOfShape& VOnE2 = AsDes->Descendant(E2); - TopTools_ListOfShape NewVOnE1; - TopTools_ListOfShape NewVOnE2; gp_Pnt P1,P2; TopoDS_Vertex V1,V2; - TopTools_ListIteratorOfListOfShape it, itLV1, itLV2; + TopTools_ListIteratorOfListOfShape it; BRep_Builder B; TopAbs_Orientation O1,O2; Standard_Real U1,U2; Standard_Real Tol,Tol1,Tol2; Standard_Boolean OnE1,OnE2; -// for (itLV1.Initialize(LV1),itLV2.Initialize(LV2); -// itLV1.More(); -// itLV1.Next() ,itLV2.Next()) { + TopoDS_Vertex V = theV; - TopoDS_Vertex V = theV; -// TopoDS_Vertex V = TopoDS::Vertex(itLV1.Value()); + U1 = BRep_Tool::Parameter(V,E1); + U2 = BRep_Tool::Parameter(V,E2); + O1 = V.Orientation(); + O2 = O1; + P1 = BRep_Tool::Pnt(V); + Tol = BRep_Tool::Tolerance( V ); + OnE1 = OnE2 = Standard_False; - U1 = BRep_Tool::Parameter(V,E1); - U2 = BRep_Tool::Parameter(V,E2); - O1 = V.Orientation(); - O2 = O1;///itLV2.Value().Orientation(); - P1 = BRep_Tool::Pnt(V); - Tol = BRep_Tool::Tolerance( V ); - OnE1 = OnE2 = Standard_False; - + //----------------------------------------------------------------- + // Search if the point of intersection is a vertex of E1. + //----------------------------------------------------------------- + for (it.Initialize(VOnE1); it.More(); it.Next()) { + const TopoDS_Vertex& CV = TopoDS::Vertex( it.Value() ); + if (V.IsSame( CV )) { + V1 = V; + OnE1 = Standard_True; + break; + } + P2 = BRep_Tool::Pnt( CV ); + Tol1 = 1.1*(Tol + BRep_Tool::Tolerance( CV )); + if (P1.SquareDistance(P2) <= Tol1*Tol1) { + V = CV; + V1 = V; + OnE1 = Standard_True; + break; + } + } + if (OnE1) { //----------------------------------------------------------------- - // Search if the point of intersection is a vertex of E1. + // Search if the vertex found is still on E2. //----------------------------------------------------------------- - for (it.Initialize(VOnE1); it.More(); it.Next()) { + for (it.Initialize(VOnE2); it.More(); it.Next()) { + if (V.IsSame( it.Value() )) { + OnE2 = Standard_True; + V2 = V; + break; + } + } + } + if (!OnE2) { + for (it.Initialize(VOnE2); it.More(); it.Next()) { + //----------------------------------------------------------------- + // Search if the point of intersection is a vertex of E2. + //----------------------------------------------------------------- const TopoDS_Vertex& CV = TopoDS::Vertex( it.Value() ); - if (V.IsSame( CV )) { - V1 = V; - OnE1 = Standard_True; - break; - } P2 = BRep_Tool::Pnt( CV ); - Tol1 = 1.1*(Tol + BRep_Tool::Tolerance( CV )); - if (P1.SquareDistance(P2) <= Tol1*Tol1) { - V = CV; - V1 = V; - OnE1 = Standard_True; + Tol2 = 1.1*(Tol + BRep_Tool::Tolerance( CV )); + if (P1.SquareDistance(P2) <= Tol2*Tol2) { + V = CV; + V2 = V; + OnE2 = Standard_True; break; } } - if (OnE1) { - //----------------------------------------------------------------- - // Search if the vertex found is still on E2. - //----------------------------------------------------------------- - for (it.Initialize(VOnE2); it.More(); it.Next()) { - if (V.IsSame( it.Value() )) { - OnE2 = Standard_True; - V2 = V; - break; - } - } - } - if (!OnE2) { - for (it.Initialize(VOnE2); it.More(); it.Next()) { - //----------------------------------------------------------------- - // Search if the point of intersection is a vertex of E2. - //----------------------------------------------------------------- - const TopoDS_Vertex& CV = TopoDS::Vertex( it.Value() ); - P2 = BRep_Tool::Pnt( CV ); - Tol2 = 1.1*(Tol + BRep_Tool::Tolerance( CV )); - if (P1.SquareDistance(P2) <= Tol2*Tol2) { - V = CV; - V2 = V; - OnE2 = Standard_True; - break; - } - } - } - if (OnE1 && OnE2) { - if (!V1.IsSame(V2)) { - Standard_Real UV2; - TopoDS_Edge EWE2; - TopoDS_Vertex VI; - const TopTools_ListOfShape& EdgeWithV2 = AsDes->Ascendant(V2); + } - for (it.Initialize(EdgeWithV2); it.More(); it.Next()) { - EWE2 = TopoDS::Edge(it.Value()); - VI = V2; - VI.Orientation(TopAbs_INTERNAL); - UV2 = BRep_Tool::Parameter(VI,EWE2); - VI = V1; - VI.Orientation(TopAbs_INTERNAL); - B.UpdateVertex(VI,UV2,EWE2, Max(Tol1,Tol2)); - } - AsDes->Replace(V2,V1); - } + + if (!OnE1 && !OnE2 && !theF.IsNull()) + { + // analitically find vertices E1 and E2 must pass trough + + TopoDS_Shape F1 = getOtherShape( theF, AsDes->Ascendant( E1 )); + TopoDS_Shape F2 = getOtherShape( theF, AsDes->Ascendant( E2 )); + if (!F1.IsNull() && !F2.IsNull()) + { + OnE1 = findVOnE ( theV, E1, E2, F1, F2, AsDes, V1 ); + OnE2 = findVOnE ( theV, E2, E1, F1, F2, AsDes, V2 ); + if (OnE2) V = V2; + if (OnE1) V = V1; } - // add existing vertices instead of new ones - if (!OnE1) { - if (OnE2) { - V.Orientation(TopAbs_INTERNAL); - B.UpdateVertex(V,U1,E1, Tol2); + } + + if (OnE1 && OnE2) { + if (!V1.IsSame(V2)) { + // replace V1 with V2 on all edges V1 is on + Standard_Real UV1; + TopoDS_Edge EWE1; + TopoDS_Vertex VI; + const TopTools_ListOfShape& EdgeWithV1 = AsDes->Ascendant(V1); + + for (it.Initialize(EdgeWithV1); it.More(); it.Next()) { + EWE1 = TopoDS::Edge(it.Value()); + VI = V1; + VI.Orientation(TopAbs_INTERNAL); + UV1 = BRep_Tool::Parameter(VI,EWE1); + VI = V2; + VI.Orientation(TopAbs_INTERNAL); + B.UpdateVertex( VI, UV1, EWE1, GetTolerance( VI, UV1, EWE1, AsDes)); } - V.Orientation(O1); - NewVOnE1.Prepend(V); + AsDes->Replace(V1,V2); + V = V2; } - if (!OnE2) { - if (OnE1) { - V.Orientation(TopAbs_INTERNAL); - B.UpdateVertex(V,U2,E2, Tol1); - } - V.Orientation(O2); - NewVOnE2.Prepend(V); + } + + // add existing vertices instead of new ones + if (!OnE1) { + if (OnE2) { + V.Orientation(TopAbs_INTERNAL); + B.UpdateVertex (V, U1, E1, GetTolerance( V, U1, E1, AsDes)); } -// } - - if (!NewVOnE1.IsEmpty()) AsDes->Add(E1,NewVOnE1); - if (!NewVOnE2.IsEmpty()) AsDes->Add(E2,NewVOnE2); + V.Orientation(O1); + AsDes->Add(E1,V); + } + if (!OnE2) { + if (OnE1) { + V.Orientation(TopAbs_INTERNAL); + B.UpdateVertex (V, U2, E2, GetTolerance( V, U2, E2, AsDes )); + } + V.Orientation(O2); + AsDes->Add(E2,V); + } return V; } @@ -212,11 +306,11 @@ TopoDS_Vertex Partition_Inter2d::AddVonE(const TopoDS_Vertex& theV, //======================================================================= TopoDS_Vertex Partition_Inter2d::FindEndVertex(const TopTools_ListOfShape& LV, - const Standard_Real f, - const Standard_Real l, - const TopoDS_Edge& E, - Standard_Boolean& isFirst, - Standard_Real& minDU) + const Standard_Real f, + const Standard_Real l, + const TopoDS_Edge& E, + Standard_Boolean& isFirst, + Standard_Real& minDU) { TopoDS_Vertex endV; Standard_Real U, endU, min; @@ -238,7 +332,7 @@ TopoDS_Vertex Partition_Inter2d::FindEndVertex(const TopTools_ListOfShape& LV, isFirst = Standard_True; else isFirst = Standard_False; - + return endV; } @@ -248,10 +342,10 @@ TopoDS_Vertex Partition_Inter2d::FindEndVertex(const TopTools_ListOfShape& LV, //======================================================================= static void treatClosed (const TopoDS_Edge& E1, - const Standard_Real f, - const Standard_Real l, - TopTools_ListOfShape& LV1, - TopTools_ListOfShape& /*LV2*/) + const Standard_Real f, + const Standard_Real l, + TopTools_ListOfShape& LV1, + TopTools_ListOfShape& /*LV2*/) { Standard_Boolean isFirst=0; Standard_Real minDU = 1.e10; @@ -261,12 +355,12 @@ static void treatClosed (const TopoDS_Edge& E1, if (minDU > Precision::PConfusion()) return; // not end point - Standard_Real newU; + Standard_Real newU; if (isFirst) newU = f + (l - f); else newU = l - (l - f); - + // update end parameter BRep_Builder B; endV.Orientation(TopAbs_INTERNAL); @@ -275,21 +369,21 @@ static void treatClosed (const TopoDS_Edge& E1, //======================================================================= //function : EdgesPartition -//purpose : +//purpose : //======================================================================= static void EdgesPartition(const TopoDS_Face& F, - const TopoDS_Edge& E1, - const TopoDS_Edge& E2, - const Handle(BRepAlgo_AsDes)& AsDes, - const TopTools_MapOfShape& NewEdges, - const Standard_Boolean WithOri) + const TopoDS_Edge& E1, + const TopoDS_Edge& E2, + const Handle(BRepAlgo_AsDes)& AsDes, + const TopTools_MapOfShape& NewEdges, + const Standard_Boolean WithOri) { Standard_Real f[3],l[3]; Standard_Real MilTol2; Standard_Real Tol = Max (BRep_Tool::Tolerance(E1), - BRep_Tool::Tolerance(E2)); + BRep_Tool::Tolerance(E2)); MilTol2 = Tol * Tol * 10; BRep_Tool::Range(E1, f[1], l[1]); @@ -319,10 +413,10 @@ static void EdgesPartition(const TopoDS_Face& F, TopExp_Explorer exp(F2, TopAbs_EDGE); TopExp::MapShapes(F1, TopAbs_EDGE, ME); for (; exp.More(); exp.Next()) { - if (ME.Contains( exp.Current())) { - intersect = Standard_False; - break; - } + if (ME.Contains( exp.Current())) { + intersect = Standard_False; + break; + } } } } @@ -341,7 +435,8 @@ static void EdgesPartition(const TopoDS_Face& F, Standard_Boolean rejectreducedsegmentpoints = Standard_False; EInter.InitPoint(rejectreducedsegmentpoints); - for (;EInter.MorePoint();EInter.NextPoint()) { + for ( ; EInter.MorePoint(); EInter.NextPoint() ) + { const TopOpeBRep_Point2d& P2D = EInter.Point(); const gp_Pnt& P = P2D.Value(); TopoDS_Vertex V = BRepLib_MakeVertex(P); @@ -353,36 +448,25 @@ static void EdgesPartition(const TopoDS_Face& F, gp_Pnt P2 = CE2.Value(P2D.Parameter(2)); Standard_Real sqd1 = P1.SquareDistance(P); Standard_Real sqd2 = P2.SquareDistance(P); - if (sqd1 > MilTol2 || sqd2 > MilTol2 ) { - //MESSAGE ( "Inter2d : Solution rejected, dist: " << sqrt(Max(sqd1,sqd2)) ) -#ifdef DEB - if (TestEdges) { - MESSAGE ( " edges : E2d_"< MilTol2 || sqd2 > MilTol2 ) + continue; // add a new vertex to the both edges - Standard_Real toler = 1.5 * Max (Tol, sqrt(Max(sqd1,sqd2)) ); + Standard_Real toler = Max( Tol, sqrt( Max( sqd1, sqd2 ))); Standard_Integer i; for (i = 1; i <= 2; i++) { - Standard_Real U = P2D.Parameter(i); -#ifdef DEB - if (U < f[i]-Tol || U > l[i]+Tol) { - MESSAGE ( "out" ); - } -#endif - V.Orientation(TopAbs_INTERNAL); - B.UpdateVertex( V,U,EI[i], toler); - TopAbs_Orientation OO = TopAbs_REVERSED; - if (WithOri) { - if (P2D.IsVertex(i)) - OO = P2D.Vertex(i).Orientation(); - else if (P2D.Transition(i).Before() == TopAbs_OUT) { - OO = TopAbs_FORWARD; - } - V.Orientation(OO); - if (i == 1) LV1.Append(V); + Standard_Real U = P2D.Parameter(i); + V.Orientation(TopAbs_INTERNAL); + B.UpdateVertex( V,U,EI[i], toler); + TopAbs_Orientation OO = TopAbs_REVERSED; + if (WithOri) { + if (P2D.IsVertex(i)) + OO = P2D.Vertex(i).Orientation(); + else if (P2D.Transition(i).Before() == TopAbs_OUT) { + OO = TopAbs_FORWARD; + } + V.Orientation(OO); + if (i == 1) LV1.Append(V); else LV2.Append(V); } } @@ -410,7 +494,7 @@ static void EdgesPartition(const TopoDS_Face& F, TolConf = Max (Tol, TolConf); TolConf2 = TolConf * TolConf; if (!intersect) - TolConf2 *= 100; + TolConf2 *= 100; Standard_Real SqDist = P1.SquareDistance(P2); if (SqDist <= TolConf2) { @@ -442,27 +526,25 @@ static void EdgesPartition(const TopoDS_Face& F, i = 1; Purge = Standard_False; for (it1LV1.Initialize(LV1),it1LV2.Initialize(LV2); - it1LV1.More(); it1LV1.Next(),it1LV2.Next()) { + it1LV1.More(); + it1LV1.Next(),it1LV2.Next()) { j = 1; it2LV1.Initialize(LV1); while (j < i) { - const TopoDS_Vertex& VE1 = TopoDS::Vertex(it1LV1.Value()); - const TopoDS_Vertex& VE2 = TopoDS::Vertex(it2LV1.Value()); - Standard_Real Tol1 = BRep_Tool::Tolerance( VE1 ); - Standard_Real Tol2 = BRep_Tool::Tolerance( VE2 ); + const TopoDS_Vertex& VE1 = TopoDS::Vertex(it1LV1.Value()); + const TopoDS_Vertex& VE2 = TopoDS::Vertex(it2LV1.Value()); + Standard_Real Tol1 = BRep_Tool::Tolerance( VE1 ); + Standard_Real Tol2 = BRep_Tool::Tolerance( VE2 ); P1 = BRep_Tool::Pnt( VE1 ); P2 = BRep_Tool::Pnt( VE2 ); if (P1.IsEqual(P2, Tol1 + Tol2)) { LV1.Remove(it1LV1); LV2.Remove(it1LV2); - if (AffichPurge) { - MESSAGE ("Vertices confused purged in EdgeInter.") - } - Purge = Standard_True; - break; - } - j++; - it2LV1.Next(); + Purge = Standard_True; + break; + } + j++; + it2LV1.Next(); } if (Purge) break; i++; @@ -471,17 +553,17 @@ static void EdgesPartition(const TopoDS_Face& F, // care of new closed edges, they always intersect with seam at end if (V1[0].IsSame( V1[1] ) && NewEdges.Contains(E1) ) - treatClosed (E1,f[1],l[1],LV1,LV2); + treatClosed (E1, f[1], l[1], LV1, LV2); if (V2[0].IsSame( V2[1] ) && NewEdges.Contains(E2) ) - treatClosed (E2,f[2],l[2],LV2,LV1); - - //--------------------------------- - // Stocking vertex . - //--------------------------------- + treatClosed (E2, f[2], l[2], LV2, LV1); + + //---------------- + // Stocking vertex + //---------------- - //StorePart2d (E1,E2,LV1,LV2,AsDes,Tol); for ( it1LV1.Initialize( LV1 ); it1LV1.More(); it1LV1.Next()) - Partition_Inter2d::AddVonE ( TopoDS::Vertex( it1LV1.Value()), E1,E2,AsDes); + Partition_Inter2d::AddVonE (TopoDS::Vertex( it1LV1.Value()), + E1, E2, AsDes, F); } //======================================================================= @@ -492,8 +574,8 @@ static void EdgesPartition(const TopoDS_Face& F, //======================================================================= void Partition_Inter2d::CompletPart2d (const Handle(BRepAlgo_AsDes)& AsDes, - const TopoDS_Face& F, - const TopTools_MapOfShape& NewEdges) + const TopoDS_Face& F, + const TopTools_MapOfShape& NewEdges) { #ifdef DEB @@ -517,7 +599,7 @@ void Partition_Inter2d::CompletPart2d (const Handle(BRepAlgo_AsDes)& AsDes, const TopTools_ListOfShape& LE = AsDes->Descendant(F); TopoDS_Vertex V1,V2; Standard_Integer j, i = 1; - + TopoDS_Face FF = F; FF.Orientation(TopAbs_FORWARD); @@ -533,8 +615,8 @@ void Partition_Inter2d::CompletPart2d (const Handle(BRepAlgo_AsDes)& AsDes, // between them and with the restrictions edges //---------------------------------------------------------- if ( (!EdgesOfFace.Contains(E1) || !EdgesOfFace.Contains(E2)) && - (NewEdges.Contains(E1) || NewEdges.Contains(E2)) ) { - EdgesPartition(FF,E1,E2,AsDes,NewEdges,Standard_True); + (NewEdges.Contains(E1) || NewEdges.Contains(E2)) ) { + EdgesPartition(FF,E1,E2,AsDes,NewEdges,Standard_True); } it2LE.Next(); j++; @@ -543,3 +625,46 @@ void Partition_Inter2d::CompletPart2d (const Handle(BRepAlgo_AsDes)& AsDes, } } +//======================================================================= +//function : GetTolerance +//purpose : Returns tolerance theV must have atfer its +// addition to theE with theU parameter. theAsDes is +// used to find pcurves of theE +//======================================================================= + +Standard_Real Partition_Inter2d::GetTolerance + (const TopoDS_Vertex & theV, + const Standard_Real theU, + const TopoDS_Edge & theE, + const Handle(BRepAlgo_AsDes)& theAsDes) +{ + Standard_Real aTol = BRep_Tool::Tolerance( theV ); + gp_Pnt aPnt = BRep_Tool::Pnt( theV ); + + // check point on 3D curve + Standard_Real f,l; + Handle(Geom_Curve) C = BRep_Tool::Curve( theE, f, l ); + if (!C.IsNull()) + aTol = Max ( aTol, aPnt.Distance( C->Value( theU ))); + + // check points on pcurves + const TopTools_ListOfShape& aFList = theAsDes->Ascendant( theE ); + TopTools_ListIteratorOfListOfShape aFIt( aFList ); + for ( ; aFIt.More(); aFIt.Next() ) + { + const TopoDS_Face& F = TopoDS::Face( aFIt.Value() ); + Handle(Geom2d_Curve) pcurve = BRep_Tool::CurveOnSurface( theE, F, f, l ); + if (!pcurve.IsNull()) + { + gp_Pnt2d aPnt2d = pcurve->Value( theU ); + TopLoc_Location L; + Handle(Geom_Surface) S = BRep_Tool::Surface( F, L ); + gp_Pnt aPntOnS = S->Value( aPnt2d.X(), aPnt2d.Y() ); + if (!L.IsIdentity()) + aPntOnS.Transform( L.Transformation() ); + aTol = Max ( aTol, aPnt.Distance( aPntOnS )); + } + } + + return aTol; +} diff --git a/src/PARTITION/Partition_Inter2d.hxx b/src/PARTITION/Partition_Inter2d.hxx index 7d82aa34b..059be9613 100644 --- a/src/PARTITION/Partition_Inter2d.hxx +++ b/src/PARTITION/Partition_Inter2d.hxx @@ -71,8 +71,8 @@ public: // Standard_EXPORT static void CompletPart2d(const Handle(BRepAlgo_AsDes)& AsDes,const TopoDS_Face& F,const TopTools_MapOfShape& NewEdges) ; Standard_EXPORT static TopoDS_Vertex FindEndVertex(const TopTools_ListOfShape& VertList,const Standard_Real f,const Standard_Real l,const TopoDS_Edge& E,Standard_Boolean& First,Standard_Real& DU) ; -Standard_EXPORT static TopoDS_Vertex AddVonE(const TopoDS_Vertex& V,const TopoDS_Edge& E1,const TopoDS_Edge& E2,const Handle(BRepAlgo_AsDes)& AsDes) ; - +Standard_EXPORT static TopoDS_Vertex AddVonE(const TopoDS_Vertex& V,const TopoDS_Edge& E1,const TopoDS_Edge& E2,const Handle(BRepAlgo_AsDes)& AsDes,const TopoDS_Face& F) ; +Standard_EXPORT static Standard_Real GetTolerance(const TopoDS_Vertex& theV,const Standard_Real theU,const TopoDS_Edge& theE,const Handle(BRepAlgo_AsDes)& theAsDes) ; diff --git a/src/PARTITION/Partition_Inter3d.cdl b/src/PARTITION/Partition_Inter3d.cdl index 38c504aee..44be26eaf 100644 --- a/src/PARTITION/Partition_Inter3d.cdl +++ b/src/PARTITION/Partition_Inter3d.cdl @@ -68,14 +68,21 @@ is TouchedFaces(me : in out) returns MapOfShape from TopTools ---C++: return & is static; - ---Purpose: return map of - - AsDes(me) returns AsDes from BRepAlgo - is static; + ---Purpose: return map of faces cut by new or section edges NewEdges(me : in out) returns MapOfShape from TopTools ---C++: return & is static; + ---Purpose: return new and section edges + + AsDes(me) returns AsDes from BRepAlgo + is static; + ---Purpose: return an object containing info about + -- Ascendants | Descendants + -- ------------------+--------------------- + -- 1. faces | edges cutting them + -- 2. sectoin edges | new vertices on them + ------------------------------- ---Category: Same domain shapes diff --git a/src/PARTITION/Partition_Inter3d.cxx b/src/PARTITION/Partition_Inter3d.cxx index dc7e4606c..7724b73f1 100644 --- a/src/PARTITION/Partition_Inter3d.cxx +++ b/src/PARTITION/Partition_Inter3d.cxx @@ -27,58 +27,63 @@ // $Header$ using namespace std; -#include "Partition_Inter3d.ixx" #include "Partition_Inter2d.hxx" +#include "Partition_Inter3d.ixx" #include "utilities.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 +#include #ifdef DEB #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 +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include //======================================================================= //function : Partition_Inter3d @@ -191,19 +196,62 @@ static void PutInBounds (const TopoDS_Face& F, if (S->IsKind(STANDARD_TYPE(Geom_RectangularTrimmedSurface))) { S = (*(Handle_Geom_RectangularTrimmedSurface*)&S)->BasisSurface(); } - //--------------- - // Recadre en U. - //--------------- - if (!S->IsUPeriodic() && !S->IsVPeriodic()) return; + if (!S->IsUPeriodic() && !S->IsVPeriodic()) + return; BRepTools::UVBounds(F,umin,umax,vmin,vmax); + gp_Pnt2d Pf = C2d->Value(f); + gp_Pnt2d Pl = C2d->Value(l); + const Standard_Real Um = 0.34*f + 0.66*l; + gp_Pnt2d Pm = C2d->Value( Um ); + + // sometimes on shpere, pcurve is out of domain by V though S is + // UPeriodic, sometimes it is in domain but nontheless it has + // wrong position. + // Check pcurve position by 3D point + if (S->IsKind(STANDARD_TYPE( Geom_SphericalSurface )) || + S->IsKind(STANDARD_TYPE( Geom_ToroidalSurface ))) + { + // get point on the surface + gp_Pnt Ps = S->Value( Pm.X(), Pm.Y() ); + // get point on the edge + Handle(Geom_Curve) C = BRep_Tool::Curve( E, f, l ); + gp_Pnt Pc = C->Value( Um ); + // compare points + Standard_Real TolE = BRep_Tool::Tolerance( E ); + if ( Pc.SquareDistance( Ps ) * 0.95 < TolE * TolE ) + return; // OK + + // find good UV for Pc: project Pc on S + GeomAdaptor_Surface SA (S); + Extrema_ExtPS anExtPS (Pc, SA, + SA.UResolution( TolE ), SA.VResolution( TolE )); + if (anExtPS.IsDone()) + { + Standard_Integer i, nbExt = anExtPS.NbExt(); + Extrema_POnSurf aPOnSurf; + for (i = 1; i <= nbExt; ++i ) + if (anExtPS.Value( i ) <= TolE) { + aPOnSurf = anExtPS.Point( i ); + break; + } + if (i <= nbExt) { + // a point found + Standard_Real u, v; + aPOnSurf.Parameter( u, v ); + gp_Pnt2d aGoodPm ( u, v ); + C2d->Translate( Pm , aGoodPm ); + } + } + } + + //--------------- + // Recadre en U. + //--------------- if (S->IsUPeriodic()) { Standard_Real period = S->UPeriod(); Standard_Real eps = period*1.e-6; - gp_Pnt2d Pf = C2d->Value(f); - gp_Pnt2d Pl = C2d->Value(l); - gp_Pnt2d Pm = C2d->Value(0.34*f + 0.66*l); Standard_Real minC = Min(Pf.X(),Pl.X()); minC = Min(minC,Pm.X()); Standard_Real maxC = Max(Pf.X(),Pl.X()); maxC = Max(maxC,Pm.X()); Standard_Real du = 0.; @@ -235,9 +283,6 @@ static void PutInBounds (const TopoDS_Face& F, if (S->IsVPeriodic()) { Standard_Real period = S->VPeriod(); Standard_Real eps = period*1.e-6; - gp_Pnt2d Pf = C2d->Value(f); - gp_Pnt2d Pl = C2d->Value(l); - gp_Pnt2d Pm = C2d->Value(0.34*f + 0.66*l); Standard_Real minC = Min(Pf.Y(),Pl.Y()); minC = Min(minC,Pm.Y()); Standard_Real maxC = Max(Pf.Y(),Pl.Y()); maxC = Max(maxC,Pm.Y()); Standard_Real dv = 0.; @@ -309,8 +354,6 @@ void Partition_Inter3d::Inter3D(const TopoDS_Face& F1, while (itLE.More()) { TopoDS_Edge E = TopoDS::Edge(itLE.Value()); -// Standard_Real f,l; -// BRep_Tool::Range(E,f,l); PutInBounds (F1,E,pc1); PutInBounds (F2,E,pc2); @@ -327,48 +370,59 @@ void Partition_Inter3d::Inter3D(const TopoDS_Face& F1, } } - // =================================================== - // Store section edges, same domain faces and verives - // =================================================== + // ======================== + // store same domain faces + // ======================== - TopTools_ListOfShape empty, LSP, LSE; - if ( DatStr->HasSameDomain( F1 )) { // same domain faces + if ( DatStr->HasSameDomain( F1 )) + { + TopTools_ListOfShape emptyList; if (!mySameDomainFM.IsBound(F1)) - mySameDomainFM.Bind(F1,empty); + mySameDomainFM.Bind(F1,emptyList); if (!mySameDomainFM.IsBound(F2)) - mySameDomainFM.Bind(F2,empty); + mySameDomainFM.Bind(F2,emptyList); mySameDomainFM(F1).Append(F2); mySameDomainFM(F2).Append(F1); } + // ==================== + // Store section edges + // ==================== + const TopOpeBRepDS_DataStructure& DS = DatStr->DS(); - Standard_Integer j,i,nes = DS.NbSectionEdges(); - if (!nes) return; + Standard_Integer j,i,nse = DS.NbSectionEdges(); + if (nse == 0) return; TopoDS_Vertex V, sdeV1, sdeV2; TopTools_MapOfShape MV; + TopTools_ListOfShape LSE; // list of section edges + TopoDS_Face dummyF; - // put vertices on section edges - for (i=1;i<=nes;i++) { - - TopoDS_Edge se, sde, oe; // section, same domain, other edge - se = DS.SectionEdge(i); + for (i = 1; i <= nse; i++) + { + const TopoDS_Edge & se = DS.SectionEdge(i); if (! TopB.IsSplit(se,TopAbs_ON)) continue; + LSE.Append( se ); + // add vertices where section edges interferes with other + // edges as its descendant in myAsDes + + TopoDS_Edge sde, oe; // same domain, other edge if (DatStr->HasSameDomain(se)) { sde = TopoDS::Edge( DatStr->SameDomain(se).Value() ); TopExp::Vertices( sde, sdeV1, sdeV2); } - - TColStd_MapOfInteger MIV; + TColStd_MapOfInteger MIV; // indices of added edges TopOpeBRepDS_PointIterator itP (DS.ShapeInterferences( se )); itP.SupportKind( TopOpeBRepDS_EDGE ); + // loop on intersections of se for (; itP.More(); itP.Next()) { oe = TopoDS::Edge( DS.Shape( itP.Support())); if (itP.IsVertex()) { + // there is a vertex at intersection if ( !MIV.Add( itP.Current() )) continue; V = TopoDS::Vertex( DS.Shape( itP.Current())); @@ -376,9 +430,10 @@ void Partition_Inter3d::Inter3D(const TopoDS_Face& F1, oe = sde; V = ReplaceSameDomainV( V , oe ); V.Orientation( TopAbs_INTERNAL); - B.UpdateVertex( V, itP.Parameter(), se, 0.); + B.UpdateVertex( V, itP.Parameter(), se, 0.); // AddVonE() sets real U } else { + // create a new vertex at the intersection point const TopOpeBRepDS_Point& DSP = DS.Point( itP.Current()); V = BRepLib_MakeVertex( DSP.Point() ); V.Orientation( TopAbs_INTERNAL); @@ -393,50 +448,56 @@ void Partition_Inter3d::Inter3D(const TopoDS_Face& F1, } } } - TopoDS_Vertex addedV = Partition_Inter2d::AddVonE( V,se,oe,myAsDes); + // add V on the both intersecting edges + TopoDS_Vertex addedV = Partition_Inter2d::AddVonE( V,se,oe,myAsDes,dummyF); if (!addedV.IsSame( V )) - mySameDomainVM.Bind (V, addedV); - MV.Add( addedV ); + mySameDomainVM.Bind (V, addedV); // equal vertex is already there + + MV.Add( addedV ); // to ease storage of vertices of ON splits } } - TopB.SplitSectionEdges(); - - TopTools_DataMapOfShapeShape SEM; // map split - section edge - TopTools_IndexedMapOfShape ME[2]; - TopExp::MapShapes( F1, TopAbs_EDGE, ME[1]); - TopExp::MapShapes( F2, TopAbs_EDGE, ME[0]); - // add section edge to the face it intersects and find // splits ON that do not have same domain pair - for (i=1;i<=nes;i++) { + TopB.SplitSectionEdges(); // let TopB find ON splits - const TopoDS_Edge& se = DS.SectionEdge(i); - if (! TopB.IsSplit(se,TopAbs_ON)) - continue; + TopTools_MapOfShape SPM; // map of ON splits + TopTools_IndexedMapOfShape ME[2]; + TopExp::MapShapes( F1, TopAbs_EDGE, ME[1]); + TopExp::MapShapes( F2, TopAbs_EDGE, ME[0]); + + TopTools_ListIteratorOfListOfShape itSP, itLSE (LSE); + while ( itLSE.More() ) { + + TopoDS_Edge se = TopoDS::Edge( itLSE.Value() ); Standard_Integer ancRank = DS.AncestorRank(se); if (ME[ancRank-1].Contains( se )) - continue; // se is an edge of face it intersects + LSE.Remove( itLSE ); // se is an edge of face it intersects + else + itLSE.Next(); const TopoDS_Face& F = (ancRank == 1) ? F2 : F1; // add se to face but dont add twice - TopTools_ListIteratorOfListOfShape itE; + TopTools_ListIteratorOfListOfShape itE( myAsDes->Descendant( F )); if (myAsDes->HasDescendant( F )) { - for (itE.Initialize( (myAsDes->Descendant( F )) ); itE.More(); itE.Next()) + for ( ; itE.More(); itE.Next()) if (se.IsSame( itE.Value() )) break; } - if (!itE.More()) { + if (!itE.More()) + { myAsDes->Add( F, se ); + + // check se pcurve on F Standard_Real tol, f,l, umin=1e100, umax=-1e100; Handle(Geom2d_Curve) pc = BRep_Tool::CurveOnSurface( se, F, f,l); if (pc.IsNull()) { - TopTools_ListIteratorOfListOfShape it( TopB.Splits(se,TopAbs_ON) ); - for ( ;it.More();it.Next()) { - const TopoDS_Edge& E = TopoDS::Edge ( it.Value()); + itSP.Initialize( TopB.Splits(se,TopAbs_ON) ); + for ( ; itSP.More(); itSP.Next()) { + const TopoDS_Edge& E = TopoDS::Edge ( itSP.Value()); BRep_Tool::Range(E, f, l); umin = Min( umin, f); umax = Max( umax, l); @@ -451,45 +512,43 @@ void Partition_Inter3d::Inter3D(const TopoDS_Face& F1, B.UpdateEdge( se, pc, F, tol); } } - + // to detect splits that do not have same domain pair - TopTools_ListIteratorOfListOfShape it( TopB.Splits(se,TopAbs_ON) ); - for ( ;it.More();it.Next()) { - const TopoDS_Edge& S = TopoDS::Edge ( it.Value()); - if (SEM.IsBound( S )) - SEM.UnBind( S ); - else - SEM.Bind( S, se); + // ie which split a face into parts and not pass by its boundary + itSP.Initialize( TopB.Splits(se,TopAbs_ON) ); + for ( ; itSP.More(); itSP.Next()) { + const TopoDS_Shape& SP = itSP.Value(); + if (!SPM.Add( SP )) + SPM.Remove( SP ); } } // store vertices of ON splits and bind section edges to faces - for (i=1;i<=nes;i++) { - - const TopoDS_Edge& se = DS.SectionEdge(i); - if (! TopB.IsSplit(se,TopAbs_ON)) - continue; + + for (itLSE.Initialize (LSE); itLSE.More(); itLSE.Next()) + { + const TopoDS_Shape& se = itLSE.Value(); Standard_Integer ancRank = DS.AncestorRank(se); - if (ME[ancRank-1].Contains( se )) - continue; // se is an edge of face it intersects - TopoDS_Face F = (ancRank == 1) ? F2 : F1; - // add vertices of splits + // add vertices of ON splits which have no same domain pair Standard_Boolean added = Standard_False; - TopTools_ListIteratorOfListOfShape it( TopB.Splits(se,TopAbs_ON) ); - for ( ;it.More();it.Next()) { - const TopoDS_Edge& S = TopoDS::Edge ( it.Value()); - if (!SEM.IsBound( S )) + itSP.Initialize( TopB.Splits(se,TopAbs_ON) ); + for ( ; itSP.More(); itSP.Next()) + { + if (!SPM.Contains( itSP.Value() )) continue; + + const TopoDS_Edge& S = TopoDS::Edge ( itSP.Value()); added = Standard_True; mySectionEdgesAD->Add( F, se ); TopoDS_Vertex VS[2]; TopExp::Vertices (S, VS[0], VS[1]); - for (j=0; j<2; ++j) { + for (j=0; j<2; ++j) + { if (mySameDomainVM.IsBound( VS[j] )) VS[j] = TopoDS::Vertex( mySameDomainVM( VS[j] )); if ( !MV.Contains( VS[j] )) { @@ -498,6 +557,8 @@ void Partition_Inter3d::Inter3D(const TopoDS_Face& F1, TopTools_ListIteratorOfListOfShape itV( myAsDes->Descendant(se) ); for (; itV.More(); itV.Next()) { V = TopoDS::Vertex( itV.Value() ); + if ( V.IsSame( VS[j] )) + break; gp_Pnt P2 = BRep_Tool::Pnt( V ); if (P1.IsEqual( P2, Precision::Confusion())) { mySameDomainVM.Bind (VS[j], V); @@ -508,8 +569,13 @@ void Partition_Inter3d::Inter3D(const TopoDS_Face& F1, if (!itV.More()) // no interferences with edges myAsDes->Add( se, VS[j]); } + + // add ends of ON splits to F in order to detect later + // if a split is on face in IsSplitOn() mySectionEdgesAD->Add( F, VS[j]); } + // in the descendants of F, first go ends of an ON split and + // then a split itself mySectionEdgesAD->Add( F, S ); } if (!added) @@ -544,13 +610,13 @@ void Partition_Inter3d::SetDone(const TopoDS_Face& F1, const TopoDS_Face& F2) { if (!myDone.IsBound(F1)) { - TopTools_ListOfShape empty; - myDone.Bind(F1,empty); + TopTools_ListOfShape emptyList; + myDone.Bind(F1,emptyList); } myDone(F1).Append(F2); if (!myDone.IsBound(F2)) { - TopTools_ListOfShape empty; - myDone.Bind(F2,empty); + TopTools_ListOfShape emptyList; + myDone.Bind(F2,emptyList); } myDone(F2).Append(F1); } @@ -583,7 +649,6 @@ void Partition_Inter3d::StorePart3d(const TopoDS_Face& F1, const TopoDS_Face& F2, const TopTools_ListOfShape& LInt) { - if (!LInt.IsEmpty()) { myAsDes->Add( F1,LInt); myAsDes->Add( F2,LInt); @@ -673,8 +738,8 @@ const TopTools_ListOfShape& Partition_Inter3d::SameDomain(const TopoDS_Face& F) if (mySameDomainFM.IsBound( F )) return mySameDomainFM (F); - static TopTools_ListOfShape empty; - return empty; + static TopTools_ListOfShape emptyList; + return emptyList; } //======================================================================= diff --git a/src/PARTITION/Partition_Loop2d.cxx b/src/PARTITION/Partition_Loop2d.cxx index 1e0a25787..9b229f979 100644 --- a/src/PARTITION/Partition_Loop2d.cxx +++ b/src/PARTITION/Partition_Loop2d.cxx @@ -1,6 +1,6 @@ // GEOM PARTITION : partition algorithm // -// Copyright (C) 2003 CEA/DEN, EDF R&D +// Copyright (C) 2003 CEA/DEN, EDF R& D // // // @@ -18,6 +18,7 @@ using namespace std; #include #include #include +#include #include #include #include @@ -115,18 +116,72 @@ void Partition_Loop2d::AddSectionEdge (const TopoDS_Edge& E) } } +//======================================================================= +//function : preciseU +//purpose : find u such that the 3D point on theE is just out of tolerance +// of theV +//======================================================================= + +static Standard_Real preciseU (const BRepAdaptor_Surface& theSurf, + const TopoDS_Edge& theE, + const TopoDS_Vertex& theV, + const Handle(Geom2d_Curve)& theC, + const Standard_Boolean theFirstEnd) +{ + Standard_Boolean isForward = ( theE.Orientation () == TopAbs_FORWARD ); + if (theFirstEnd) isForward = !isForward; + + // find the first point in 2d and 3d + Standard_Real f,l; + BRep_Tool::Range( theE, f, l ); + Standard_Real u0 = isForward ? l : f; + gp_Pnt2d aP2d0 = theC->Value( u0 ); + gp_Pnt aPnt0 = theSurf.Value( aP2d0.X(), aP2d0.Y() ); + + // shift in 2d and 3d + Standard_Real du = ( l - f ) / 100, du3d = 0; + if (isForward) + du = -du; + + // target parameter + Standard_Real u; + + while (du3d < ::RealSmall()) + { + // u for test + u = u0 + du; + du *= 10; // for the next iteration: increase du untill du3d is large enough + + // find out how u is far from u0 in 3D + gp_Pnt2d aP2d = theC->Value( u ); + gp_Pnt aPnt = theSurf.Value( aP2d.X(), aP2d.Y() ); + du3d = aPnt0.Distance( aPnt ); + } + + // find u such that the 3D point is just out of tolerance of theV + Standard_Real tolV = BRep_Tool::Tolerance( theV ) + Precision::Confusion(); + u = u0 + du * tolV / du3d; + + // check that u is within the range + if ( isForward ? (u < f) : (u > l) ) + u = u0 + du; + + return u; +} + //======================================================================= //function : SelectEdge -//purpose : Find the edge connected by the vertex in the list . -// Is erased of the list. If is too in the list -// with the same orientation, it's erased of the list +//purpose : Find in the list the edge connected with by +// the vertex . +// is removed from the list. If is in +// with the same orientation, it's removed from the list //======================================================================= static Standard_Boolean SelectEdge(const BRepAdaptor_Surface& Surf, - const TopoDS_Edge& CE, - const TopoDS_Vertex& CV, - TopoDS_Edge& NE, - const TopTools_ListOfShape& LE) + const TopoDS_Edge& CE, + const TopoDS_Vertex& CV, + TopoDS_Edge& NE, + const TopTools_ListOfShape& LE) { NE.Nullify(); @@ -136,68 +191,90 @@ static Standard_Boolean SelectEdge(const BRepAdaptor_Surface& Surf, // - Test the edges differents of CE //-------------------------------------------------------------- TopoDS_Face FForward = Surf.Face(); + TopoDS_Edge aPrevNE; - Standard_Real cf, cl, f, l; - Handle(Geom2d_Curve) Cc, C; - Cc = BRep_Tool::CurveOnSurface(CE,FForward,cf,cl); - -// Standard_Real tolV, tol2d2; - Standard_Real tolV = BRep_Tool::Tolerance(CV); -// tol2d2 = Max ( Surf.UResolution(tolV) , Surf.VResolution(tolV) ); -// tol2d2 = 2 * Max ( tol2d2, Precision::PConfusion() ); -// tol2d2 *= tol2d2; - - Standard_Real uc,u, du = Precision::PConfusion(); - if (CE.Orientation () == TopAbs_FORWARD) uc = cl + du; - else uc = cf - du; - - gp_Vec2d CTg1, Tg1; + gp_Vec2d CTg1, Tg1, CTg2, Tg2; gp_Pnt2d PC, P; - gp_Pnt P3d; + Standard_Real f, l; + Handle(Geom2d_Curve) Cc, C; + Cc = BRep_Tool::CurveOnSurface(CE,FForward,f,l); + + Standard_Boolean isForward = ( CE.Orientation () == TopAbs_FORWARD ); + Standard_Real uc, u, du = Precision::PConfusion(); + uc = isForward ? ( l - du ) : ( f + du ); Cc->D1(uc, PC, CTg1); - if (CE.Orientation () == TopAbs_REVERSED) CTg1.Reverse(); + if (!isForward) CTg1.Reverse(); - Standard_Real anglemin = 3 * PI; -// Standard_Real sqdist, sqdistmin = 1.0e50; + Standard_Real anglemin = 3 * PI, tolAng = 1.e-8; + // select an edge whose first derivative is most left of CTg1 + // ie an angle between Tg1 and CTg1 is least TopTools_ListIteratorOfListOfShape itl; for ( itl.Initialize(LE); itl.More(); itl.Next()) { const TopoDS_Edge& E = TopoDS::Edge(itl.Value()); if (E.IsSame(CE)) - continue; + continue; if (! CV.IsSame( TopExp::FirstVertex( E, Standard_True ))) - continue; + continue; + isForward = ( E.Orientation () == TopAbs_FORWARD ); + + // get E curve C = BRep_Tool::CurveOnSurface(E,FForward,f,l); - if (E.Orientation () == TopAbs_FORWARD) u = f + du; - else u = l - du; - + // get the first derivative Tg1 + u = isForward ? ( f + du ) : ( l - du ); C->D1(u, P, Tg1); -// if (P.SquareDistance(PC); > tol2d2) -// continue; - - if (E.Orientation () == TopAbs_REVERSED) Tg1.Reverse(); + if (!isForward) Tg1.Reverse(); + // -PI < angle < PI Standard_Real angle = Tg1.Angle(CTg1); - if (angle <= anglemin) { - anglemin = angle ; - NE = E; -#ifdef DEB -// sqdist = P.SquareDistance(PC); -// if (sqdist < sqdistmin) -// sqdistmin = sqdist; - P3d = Surf.Value (PC.X(), PC.Y()); -#endif + if (PI - Abs(angle) <= tolAng) + { + // an angle is too close to PI; assure that an angle sign really + // reflects an edge position: +PI - an edge is worst, + // -PI - an edge is best. + u = preciseU( Surf, CE, CV, Cc, Standard_False); + gp_Vec2d CTg; + Cc->D1(u, PC, CTg); + if (CE.Orientation() == TopAbs_REVERSED) CTg.Reverse(); + + u = preciseU( Surf, E, CV, C, Standard_True); + C->D1(u, P, Tg1); + if (!isForward) Tg1.Reverse(); + + angle = Tg1.Angle(CTg); } + + Standard_Boolean isClose = ( Abs( angle - anglemin ) <= tolAng ); + if (angle <= anglemin) { + if (isClose) + aPrevNE = NE; + else + aPrevNE.Nullify(); + anglemin = angle ; + NE = E; + } + else + if (isClose) + aPrevNE = E; + } -#ifdef DEB - if (!NE.IsNull() && P3d.Distance( BRep_Tool::Pnt(CV)) > tolV) { - MESSAGE( "DISTANCE MORE THAN VERTEX TOL (" << tolV << ")" ); - cout << "point p " << P3d.X() << " " << P3d.Y() << " " << P3d.Z() << endl; + if (!aPrevNE.IsNull()) { + // select one of close edges, the most left one. + Cc = BRep_Tool::CurveOnSurface( NE, FForward, f, l ); + uc = preciseU( Surf, NE, CV, Cc, Standard_True); + Cc->D1(uc, PC, CTg1); + if (NE.Orientation() != TopAbs_FORWARD) CTg1.Reverse(); + + u = preciseU( Surf, aPrevNE, CV, C, Standard_True); + C->D1(u, P, Tg1); + if (aPrevNE.Orientation() != TopAbs_FORWARD) Tg1.Reverse(); + + if ( Tg1.Angle(CTg1) < 0) + NE = aPrevNE; } -#endif } else if (LE.Extent() == 1) { NE = TopoDS::Edge(LE.First()); @@ -214,10 +291,10 @@ static Standard_Boolean SelectEdge(const BRepAdaptor_Surface& Surf, //======================================================================= static Standard_Boolean SamePnt2d(const TopoDS_Vertex& V1, - const TopoDS_Edge& E1, - const TopoDS_Vertex& V2, - const TopoDS_Edge& E2, - const TopoDS_Face& F) + const TopoDS_Edge& E1, + const TopoDS_Vertex& V2, + const TopoDS_Edge& E2, + const TopoDS_Face& F) { Standard_Real f1,f2,l1,l2; Handle(Geom2d_Curve) C1 = BRep_Tool::CurveOnSurface(E1,F,f1,l1); @@ -238,8 +315,8 @@ static Standard_Boolean SamePnt2d(const TopoDS_Vertex& V1, //======================================================================= static void StoreInMVE (const TopoDS_Face& /*F*/, - TopoDS_Edge& E, - TopTools_DataMapOfShapeListOfShape& MVE ) + TopoDS_Edge& E, + TopTools_DataMapOfShapeListOfShape& MVE ) { TopoDS_Vertex V1, V2; @@ -259,11 +336,11 @@ static void StoreInMVE (const TopoDS_Face& /*F*/, //======================================================================= //function : RemoveFromMVE -//purpose : +//purpose : //======================================================================= static void RemoveFromMVE(const TopoDS_Edge& E, - TopTools_DataMapOfShapeListOfShape& MVE) + TopTools_DataMapOfShapeListOfShape& MVE) { TopTools_ListIteratorOfListOfShape itl; TopoDS_Vertex V1,V2; @@ -271,15 +348,15 @@ static void RemoveFromMVE(const TopoDS_Edge& E, if (MVE.IsBound(V1)) for ( itl.Initialize(MVE(V1)); itl.More(); itl.Next()) { if (itl.Value().IsEqual(E)) { - MVE(V1).Remove(itl); - break; + MVE(V1).Remove(itl); + break; } } if (MVE.IsBound(V2)) for ( itl.Initialize(MVE(V2)); itl.More(); itl.Next()) { if (itl.Value().IsEqual(E)) { - MVE(V2).Remove(itl); - break; + MVE(V2).Remove(itl); + break; } } } @@ -289,21 +366,21 @@ static void RemoveFromMVE(const TopoDS_Edge& E, //======================================================================= static void addConnected(const TopoDS_Shape& E, - TopTools_MapOfShape& EM, - TopTools_MapOfShape& VM, - const TopTools_DataMapOfShapeListOfShape& MVE) + TopTools_MapOfShape& EM, + TopTools_MapOfShape& VM, + const TopTools_DataMapOfShapeListOfShape& MVE) { // Loop on vertices of E TopoDS_Iterator itV ( E ); for ( ; itV.More(); itV.Next()) { if ( ! VM.Add ( itV.Value() )) continue; - + // Loop on edges sharing V TopTools_ListIteratorOfListOfShape itE( MVE( itV.Value() ) ); for (; itE.More(); itE.Next()) { if ( EM.Add( itE.Value() )) - addConnected ( itE.Value(), EM, VM, MVE ); + addConnected ( itE.Value(), EM, VM, MVE ); } } } @@ -312,31 +389,31 @@ static void addConnected(const TopoDS_Shape& E, //purpose : //======================================================================= -static Standard_Boolean canPassToOld (const TopoDS_Shape& V, - TopTools_MapOfShape& UsedShapesMap, - const TopTools_DataMapOfShapeListOfShape& MVE, - const TopTools_MapOfShape& SectionEdgesMap) -{ - TopTools_ListIteratorOfListOfShape itE( MVE(V) ); - // Loop on edges sharing V - for (; itE.More(); itE.Next()) { - if ( !UsedShapesMap.Add( itE.Value() )) - continue; // already checked +// static Standard_Boolean canPassToOld (const TopoDS_Shape& V, +// TopTools_MapOfShape& UsedShapesMap, +// const TopTools_DataMapOfShapeListOfShape& MVE, +// const TopTools_MapOfShape& SectionEdgesMap) +// { +// TopTools_ListIteratorOfListOfShape itE( MVE(V) ); +// // Loop on edges sharing V +// for (; itE.More(); itE.Next()) { +// if ( !UsedShapesMap.Add( itE.Value() )) +// continue; // already checked - if ( !SectionEdgesMap.Contains( itE.Value() )) - return Standard_True; // WE PASSED +// if ( !SectionEdgesMap.Contains( itE.Value() )) +// return Standard_True; // WE PASSED - TopoDS_Iterator itV( itE.Value() ); - // Loop on vertices of an edge - for (; itV.More(); itV.Next()) { - if ( !UsedShapesMap.Add( itV.Value() )) - continue; // already checked - else - return canPassToOld( itV.Value(), UsedShapesMap, MVE, SectionEdgesMap); - } - } - return Standard_False; -} +// TopoDS_Iterator itV( itE.Value() ); +// // Loop on vertices of an edge +// for (; itV.More(); itV.Next()) { +// if ( !UsedShapesMap.Add( itV.Value() )) +// continue; // already checked +// else +// return canPassToOld( itV.Value(), UsedShapesMap, MVE, SectionEdgesMap); +// } +// } +// return Standard_False; +// } //======================================================================= //function : MakeDegenAndSelect @@ -346,11 +423,11 @@ static Standard_Boolean canPassToOld (const TopoDS_Shape& V, //======================================================================= static TopoDS_Edge MakeDegenAndSelect(const TopoDS_Edge& CE, - const TopoDS_Vertex& CV, - TopoDS_Edge& NE, - TopTools_SequenceOfShape& EdgesSeq, - TColStd_SequenceOfReal& USeq, - const TopoDS_Edge& DE) + const TopoDS_Vertex& CV, + TopoDS_Edge& NE, + TopTools_SequenceOfShape& EdgesSeq, + TColStd_SequenceOfReal& USeq, + const TopoDS_Edge& DE) { if (EdgesSeq.Length() < 3) { if (CE == EdgesSeq.First()) @@ -378,7 +455,7 @@ static TopoDS_Edge MakeDegenAndSelect(const TopoDS_Edge& CE, for (i=1; i<= nb; ++i) { dU = USeq(i) - U1; if (isReversed ? (dU > 0) : (dU < 0)) - continue; + continue; dU = Abs( dU ); if ( dU > dUmin || IsEqual( dU, 0.)) continue; @@ -417,12 +494,12 @@ static TopoDS_Edge MakeDegenAndSelect(const TopoDS_Edge& CE, //======================================================================= static void prepareDegen (const TopoDS_Edge& DegEdge, - const TopoDS_Face& F, - const TopTools_DataMapOfShapeListOfShape& MVE, - TopTools_SequenceOfShape& EdgesSeq, - TColStd_SequenceOfReal& USeq, - TopTools_DataMapOfShapeInteger& MVDEI, - const Standard_Integer DegEdgeIndex) + const TopoDS_Face& F, + const TopTools_DataMapOfShapeListOfShape& MVE, + TopTools_SequenceOfShape& EdgesSeq, + TColStd_SequenceOfReal& USeq, + TopTools_DataMapOfShapeInteger& MVDEI, + const Standard_Integer DegEdgeIndex) { const TopoDS_Vertex& V = TopExp::FirstVertex ( DegEdge ); MVDEI.Bind ( V, DegEdgeIndex ); @@ -456,9 +533,9 @@ static void prepareDegen (const TopoDS_Edge& DegEdge, // seam edge: select U among f and l Standard_Boolean first = Standard_True; if ( V.IsSame ( TopExp::FirstVertex( E, Standard_True ) )) - first = Standard_False; + first = Standard_False; if ( DegEdge.Orientation() == TopAbs_REVERSED ) - first = !first; + first = !first; U = first ? f : l; } else if ( EUMap.IsBound( E ) ) { @@ -470,8 +547,8 @@ static void prepareDegen (const TopoDS_Edge& DegEdge, C.Initialize( E, F ); InterCC.Perform ( DC, C , Tol, Tol ); if (! InterCC.IsDone() || InterCC.NbPoints() == 0) { - MESSAGE ( "NO 2d INTERSECTION ON DEGENERATED EDGE" ); - continue; + MESSAGE ( "NO 2d INTERSECTION ON DEGENERATED EDGE" ); + continue; } // hope there is only one point of intersection U = InterCC.Point( 1 ).ParamOnFirst(); @@ -566,13 +643,13 @@ void Partition_Loop2d::Perform() // only a seam is allowed twice in a wire, the others should be removed if (addedEM.Add ( CE ) || BRep_Tool::IsClosed( CE, myFace ) ) - WEL.Append( CE ); + WEL.Append( CE ); else { - doubleEM.Add( CE ); - RemoveFromMVE (CE,MVE2); - TopoDS_Edge CERev = CE; - CERev.Reverse(); - RemoveFromMVE (CERev,MVE2); + doubleEM.Add( CE ); + RemoveFromMVE (CE,MVE2); + TopoDS_Edge CERev = CE; + CERev.Reverse(); + RemoveFromMVE (CERev,MVE2); } RemoveFromMVE (CE,MVE); @@ -580,161 +657,158 @@ void Partition_Loop2d::Perform() CV = TopExp::LastVertex( CE, Standard_True); if (isInternCW && !mySectionEdges.Contains(CE)) - // wire is internal if all edges are section ones - isInternCW = Standard_False; + // wire is internal if all edges are section ones + isInternCW = Standard_False; if (MVDEI.IsBound( CV )) { // CE comes to the degeneration - iDeg = MVDEI( CV ); - TopoDS_Edge NewDegen; - NewDegen = MakeDegenAndSelect( CE, CV, NE, SEID[iDeg], SeqU[iDeg], DE[iDeg]); - WEL.Append( NewDegen ); + iDeg = MVDEI( CV ); + TopoDS_Edge NewDegen; + NewDegen = MakeDegenAndSelect( CE, CV, NE, SEID[iDeg], SeqU[iDeg], DE[iDeg]); + WEL.Append( NewDegen ); CE = NE; End = CV.IsSame( VF ); - continue; + continue; } //-------------- // stop test //-------------- if (MVE(CV).IsEmpty()) { - End=Standard_True; - MVE.UnBind(CV); + End=Standard_True; + MVE.UnBind(CV); } else if (CV.IsSame(VF) && SamePnt2d(CV,CE, VF,EF, myFace) ) { - End = Standard_True; + End = Standard_True; } else { - //---------------------------- - // select new current edge - //---------------------------- - if (! SelectEdge (Surface,CE,CV,NE,MVE(CV))) { - MESSAGE ( " NOT CLOSED WIRE " ); - End=Standard_True; - } - else - CE = NE; + //---------------------------- + // select new current edge + //---------------------------- + if (! SelectEdge (Surface,CE,CV,NE,MVE(CV))) { + MESSAGE ( " NOT CLOSED WIRE " ); + End=Standard_True; + } + else + CE = NE; } - } // while ( !End ) + } // while ( !End ) + - // WEL is built, built wire(s) - + itl.Initialize( WEL ); if ( doubleEM.IsEmpty()) { // no double edges B.MakeWire( NW ); for (; itl.More(); itl.Next()) - B.Add ( NW, itl.Value()); + B.Add ( NW, itl.Value()); if (isInternCW) myInternalWL.Append(NW); else myNewWires.Append (NW); } - + else { // remove double and degenerated edges from WEL while (itl.More()) { - const TopoDS_Edge& E = TopoDS::Edge ( itl.Value() ); - if ( doubleEM.Contains( E ) || BRep_Tool::Degenerated( E )) - WEL.Remove( itl ); - else - itl.Next(); + const TopoDS_Edge& E = TopoDS::Edge ( itl.Value() ); + if ( doubleEM.Contains( E ) || BRep_Tool::Degenerated( E )) + WEL.Remove( itl ); + else + itl.Next(); } if ( WEL.IsEmpty()) - continue; + continue; // remove double edges from SEID and SeqU Standard_Integer i,j; for (j=0; j<2; ++j) { - for (i=1; i<=SEID[j].Length(); ++i) { - if (doubleEM.Contains( SEID[j].Value(i))) { - SEID[j].Remove( i ); - SeqU[j].Remove( i-- ); - } - } + for (i=1; i<=SEID[j].Length(); ++i) { + if (doubleEM.Contains( SEID[j].Value(i))) { + SEID[j].Remove( i ); + SeqU[j].Remove( i-- ); + } + } } // removal of doulbe edges can explode a wire into parts, // make new wires of them. // A Loop like previous one but without 2d check while ( !WEL.IsEmpty() ) { - CE = TopoDS::Edge( WEL.First() ); - WEL.RemoveFirst(); - B.MakeWire( NW ); - VF = TopExp::FirstVertex ( EF, Standard_True); - - End = Standard_False; - while ( !End) { - B.Add( NW, CE ); - CV = TopExp::LastVertex ( CE, Standard_True); + CE = TopoDS::Edge( WEL.First() ); + WEL.RemoveFirst(); + B.MakeWire( NW ); + VF = TopExp::FirstVertex ( CE, Standard_True); - if (MVDEI.IsBound( CV )) { // CE comes to the degeneration - iDeg = MVDEI( CV ); + End = Standard_False; + while ( !End) { + B.Add( NW, CE ); + CV = TopExp::LastVertex ( CE, Standard_True); + + if (MVDEI.IsBound( CV )) { // CE comes to the degeneration + iDeg = MVDEI( CV ); TopoDS_Edge NewDegen; NewDegen = MakeDegenAndSelect( CE, CV, NE, SEID[iDeg], SeqU[iDeg], DE[iDeg]); B.Add( NW, NewDegen ); End = CV.IsSame( VF ); - CE = NE; - if (!NE.IsNull()) { // remove NE from WEL - for (itl.Initialize( WEL ); itl.More(); itl.Next()) - if ( NE == itl.Value()) { - WEL.Remove( itl ); - break; - } - } - } // end degeneration - - else { - if (CV.IsSame( VF )) { - End = Standard_True; - continue; - } - // edges in WEL most often are well ordered - // so try to iterate until the End - Standard_Boolean add = Standard_False; - itl.Initialize(WEL); - while ( itl.More() && !End) { + CE = NE; + if (!NE.IsNull()) { // remove NE from WEL + for (itl.Initialize( WEL ); itl.More(); itl.Next()) + if ( NE == itl.Value()) { + WEL.Remove( itl ); + break; + } + } + } // end degeneration + + else { + if (CV.IsSame( VF )) { + End = Standard_True; + continue; + } + // edges in WEL most often are well ordered + // so try to iterate until the End + Standard_Boolean add = Standard_False; + itl.Initialize(WEL); + while ( itl.More() && !End) { NE = TopoDS::Edge( itl.Value() ); if ( CV.IsSame( TopExp::FirstVertex( NE, Standard_True ))) { WEL.Remove( itl ); - if (add) - B.Add( NW, CE ); - CE = NE; + if (add) + B.Add( NW, CE ); + CE = NE; add = Standard_True; CV = TopExp::LastVertex( CE, Standard_True); if (MVDEI.IsBound( CV ) || CV.IsSame( VF )) break; } - else - itl.Next(); - } - if (!add) - End = Standard_True; - } - } // !End - - myInternalWL.Append( NW ); + else + itl.Next(); + } + if (!add) + End = Standard_True; + } + } // !End + + myInternalWL.Append( NW ); } } // end building new wire(s) from WEL } // end Loop on MVE - + // all wires are built - - + + // ============================================================ // select really internal wires i.e. those from which we can`t // pass to an old (not section) edge // ============================================================ Standard_Integer nbIW = myInternalWL.Extent(); - if ( nbIW == 1 ) { - TopTools_MapOfShape UsedShapes( 2*NbConstEdges ); - TopExp_Explorer expV (myInternalWL.First(), TopAbs_VERTEX); - if (canPassToOld (expV.Current(), UsedShapes, MVE2, mySectionEdges)) - myNewWires.Append ( myInternalWL ); - } - else if ( nbIW > 1 ) { + if (nbIW == 0) + return; + + if ( myNewWires.Extent() != 1 && nbIW > 1) { TopTools_MapOfShape outerEM (NbConstEdges); // edges connected to non-section ones TopTools_MapOfShape visitedVM (NbConstEdges); for ( itl.Initialize( myConstEdges ); itl.More(); itl.Next()) { - if ( ! mySectionEdges.Contains( itl.Value() )) + if ( ! mySectionEdges.Contains( itl.Value() )) addConnected (itl.Value(), outerEM, visitedVM, MVE2); } // if an edge of a wire is in , the wire is not internal @@ -757,13 +831,13 @@ void Partition_Loop2d::Perform() //======================================================================= static Standard_Boolean isHole (const TopoDS_Wire& W, - const TopoDS_Face& F) + const TopoDS_Face& F) { BRep_Builder B; TopoDS_Shape newFace = F.EmptyCopied(); B.Add(newFace,W.Oriented(TopAbs_FORWARD)); BRepTopAdaptor_FClass2d classif (TopoDS::Face(newFace), - Precision::PConfusion()); + Precision::PConfusion()); return (classif.PerformInfinitePoint() == TopAbs_IN); } @@ -773,8 +847,8 @@ static Standard_Boolean isHole (const TopoDS_Wire& W, //======================================================================= static Standard_Boolean isInside(const TopoDS_Face& F, - const TopoDS_Wire& W1, - const TopoDS_Wire& W2) + const TopoDS_Wire& W1, + const TopoDS_Wire& W2) { // make a face with wire W2 BRep_Builder B; @@ -784,10 +858,12 @@ static Standard_Boolean isInside(const TopoDS_Face& F, // get any 2d point of W1 TopExp_Explorer exp(W1,TopAbs_EDGE); - const TopoDS_Edge& edg = TopoDS::Edge(exp.Current()); + if (BRep_Tool::Degenerated( TopoDS::Edge( exp.Current() ))) + exp.Next(); + const TopoDS_Edge& e = TopoDS::Edge(exp.Current()); Standard_Real f,l; - Handle(Geom2d_Curve) C2d = BRep_Tool::CurveOnSurface(edg,F,f,l); - gp_Pnt2d pt2d(C2d->Value(f)); + Handle(Geom2d_Curve) C2d = BRep_Tool::CurveOnSurface(e,F,f,l); + gp_Pnt2d pt2d(C2d->Value( 0.5 * ( f + l ))); BRepTopAdaptor_FClass2d classif(newFace,Precision::PConfusion()); return (classif.Perform(pt2d) == TopAbs_IN); @@ -822,8 +898,8 @@ const TopTools_ListOfShape& Partition_Loop2d::NewFaces() const //======================================================================= static void findEqual (TopTools_ListOfShape& WL, - TopTools_DataMapOfShapeShape& EqWM, - const TopoDS_Face& F) + TopTools_DataMapOfShapeShape& EqWM, + const TopoDS_Face& F) { TopTools_ListIteratorOfListOfShape it1, it2; Standard_Integer i,j; @@ -832,7 +908,7 @@ static void findEqual (TopTools_ListOfShape& WL, if (IndMap.Contains(i)) continue; const TopoDS_Wire& Wire1 = TopoDS::Wire( it1.Value()); - + for (it2.Initialize(WL), j=1; it2.More(); it2.Next(), j++) { if (j <= i || IndMap.Contains(j)) continue; @@ -843,19 +919,19 @@ static void findEqual (TopTools_ListOfShape& WL, const TopoDS_Shape& Wire2 = it2.Value(); TopoDS_Iterator itE ( Wire2); for (; itE.More(); itE.Next()) { - if ( !EdgesMap.Contains( itE.Value()) ) - break; + if ( !EdgesMap.Contains( itE.Value()) ) + break; } if (!itE.More()) { // all edges are same - if (isHole( Wire1, F)) { - EqWM.Bind ( Wire1, Wire2 ); - } - else { - EqWM.Bind ( Wire2, Wire1 ); - } - IndMap.Add(i); - IndMap.Add(j); - break; + if (isHole( Wire1, F)) { + EqWM.Bind ( Wire1, Wire2 ); + } + else { + EqWM.Bind ( Wire2, Wire1 ); + } + IndMap.Add(i); + IndMap.Add(j); + break; } } } @@ -877,20 +953,26 @@ static void findEqual (TopTools_ListOfShape& WL, //======================================================================= static void classify(const TopTools_DataMapOfShapeShape& EqWM, - BRepAlgo_AsDes& OuterInner, - const TopoDS_Face& F) + BRepAlgo_AsDes& OuterInner, + const TopoDS_Face& F) { TopTools_DataMapIteratorOfDataMapOfShapeShape it1, it2; for (it1.Initialize(EqWM); it1.More(); it1.Next()) { - for (it2.Initialize(EqWM); it2.More(); it2.Next()) { - if (it1.Value().IsSame( it2.Value() )) continue; + // find next after it1.Value() + for (it2.Initialize(EqWM); it2.More(); it2.Next()) + if (it1.Value().IsSame( it2.Value() )) + { + it2.Next(); + break; + } + for ( ; it2.More(); it2.Next()) { const TopoDS_Wire& Wire1 = TopoDS::Wire( it1.Value() ); const TopoDS_Wire& Wire2 = TopoDS::Wire( it2.Value() ); if (isInside(F, Wire1, Wire2)) - OuterInner.Add (Wire2, Wire1); + OuterInner.Add (Wire2, Wire1); else if (isInside(F, Wire2, Wire1)) - OuterInner.Add (Wire1, Wire2); + OuterInner.Add (Wire1, Wire2); } } } @@ -902,28 +984,12 @@ static void classify(const TopTools_DataMapOfShapeShape& EqWM, // intersections //======================================================================= -//#define USE_BREPFEAT_SPLITSHAPE - -#ifdef USE_BREPFEAT_SPLITSHAPE - -# include -void Partition_Loop2d::WiresToFaces(const BRepAlgo_Image& EdgeImage) -#else - -# include void Partition_Loop2d::WiresToFaces(const BRepAlgo_Image& ) -#endif { Standard_Integer nbW = myNewWires.Extent() + myInternalWL.Extent(); if (nbW==0) return; -#ifndef USE_BREPFEAT_SPLITSHAPE - - // ============================================================ - // use BRepAlgo_FaceRestrictor to make faces - // ============================================================ - BRepAlgo_FaceRestrictor FR; FR.Init (myFace,Standard_False); @@ -932,7 +998,7 @@ void Partition_Loop2d::WiresToFaces(const BRepAlgo_Image& ) // sometimes 1-2 faces are missing ). // So we use it as less as possible: no holes -> make faces by hands - + // are there holes in myFace ? Standard_Boolean hasOldHoles = Standard_False; TopoDS_Iterator itOldW (myFace); @@ -953,7 +1019,7 @@ void Partition_Loop2d::WiresToFaces(const BRepAlgo_Image& ) } return; } - + // FaceRestrictor can't classify wires build on all the same edges // and gives incorrect result in such cases (ex. a plane cut into 2 parts by cylinder) // We must make faces of equal wires separately. One of equal wires makes a @@ -968,7 +1034,7 @@ void Partition_Loop2d::WiresToFaces(const BRepAlgo_Image& ) if (hasOldHoles) myInternalWL.Append( myNewWires ); // an old wire can be inside an equal wire - + // classify equal wire pairs BRepAlgo_AsDes OuterInner; classify (EqWM,OuterInner,myFace); @@ -980,69 +1046,79 @@ void Partition_Loop2d::WiresToFaces(const BRepAlgo_Image& ) // find most internal wires among pairs (key - hole, value - outer part) TopTools_DataMapIteratorOfDataMapOfShapeShape it(EqWM); + Standard_Integer nbEqW = EqWM.Extent(); // protection against infinite loop for ( ; it.More(); it.Next()) { - TopoDS_Wire outerW = TopoDS::Wire ( it.Value() ); - if ( OuterInner.HasDescendant( outerW ) && // has internal - ! OuterInner.Descendant( outerW ).IsEmpty() ) - continue; + TopoDS_Wire outerW = TopoDS::Wire ( it.Value() ); + if ( OuterInner.HasDescendant( outerW ) && // has internal + ! OuterInner.Descendant( outerW ).IsEmpty() ) + continue; - FR.Add( outerW ); + FR.Add( outerW ); // add internal wires that are inside of outerW TopTools_ListIteratorOfListOfShape itIW (myInternalWL); while ( itIW.More()) { TopoDS_Wire IW = TopoDS::Wire ( itIW.Value() ); if ( isInside (myFace, IW, outerW)) { - FR.Add (IW); - myInternalWL.Remove( itIW ); // == itIW.Next() !!! - } - else - itIW.Next(); - } + FR.Add (IW); + myInternalWL.Remove( itIW ); // == itIW.Next() !!! + } + else + itIW.Next(); + } - // the hole-part of current pair of equal wires will be in the next new face - prevHolesL.Append ( it.Key() ); + // the hole-part of current pair of equal wires will be in the next new face + prevHolesL.Append ( it.Key() ); } // Loop on map of equal pairs searching for innermost wires // make faces FR.Perform(); if (FR.IsDone()) { - for (; FR.More(); FR.Next()) - myNewFaces.Append(FR.Current()); + for (; FR.More(); FR.Next()) + myNewFaces.Append(FR.Current()); } FR.Clear(); // add hole-parts to FaceRestrictor, - // remove themfrom the EqWM, + // remove them from the EqWM, // remove found wires as internal of resting classified wires Standard_Boolean clearOuterInner = ( prevHolesL.Extent() < EqWM.Extent() ); TopTools_ListIteratorOfListOfShape itPrev (prevHolesL); for (; itPrev.More(); itPrev.Next()) { - TopoDS_Wire& Hole = TopoDS::Wire ( itPrev.Value() ); - FR.Add ( Hole ); - if (clearOuterInner) { - const TopoDS_Wire& outerW = TopoDS::Wire ( EqWM.Find( Hole ) ); - // Loop on wires including outerW - TopTools_ListIteratorOfListOfShape itO( OuterInner.Ascendant( outerW )); - for (; itO.More(); itO.Next()) { - TopTools_ListOfShape& innerL = OuterInner.ChangeDescendant( itO.Value() ); - TopTools_ListIteratorOfListOfShape itI (innerL); - // Loop on internal wires of current including wire - for (; itI.More(); itI.Next()) - if ( outerW.IsSame( itI.Value() )) { - innerL.Remove( itI ); break; - } - } - } - EqWM.UnBind ( Hole ); + TopoDS_Wire& Hole = TopoDS::Wire ( itPrev.Value() ); + FR.Add ( Hole ); + if (clearOuterInner) { + const TopoDS_Wire& outerW = TopoDS::Wire ( EqWM.Find( Hole ) ); + // Loop on wires including outerW + TopTools_ListIteratorOfListOfShape itO( OuterInner.Ascendant( outerW )); + for (; itO.More(); itO.Next()) { + TopTools_ListOfShape& innerL = OuterInner.ChangeDescendant( itO.Value() ); + TopTools_ListIteratorOfListOfShape itI (innerL); + // Loop on internal wires of current including wire + for (; itI.More(); itI.Next()) + if ( outerW.IsSame( itI.Value() )) { + innerL.Remove( itI ); break; + } + } + } + EqWM.UnBind ( Hole ); + } + + if (nbEqW == EqWM.Extent()) + { + // error: pb with wires classification +#ifdef DEB + cout << "Partition_Loop2d::WiresToFaces(), pb with wires classification" << endl; +#endif + break; } } // while (!EqWM.IsEmpty) - } // !EqWM.IsEmpty() + } // if !EqWM.IsEmpty() myNewWires.Append ( myInternalWL ); @@ -1056,50 +1132,7 @@ void Partition_Loop2d::WiresToFaces(const BRepAlgo_Image& ) myNewFaces.Append(FR.Current()); - -#else // ifndef USE_BREPFEAT_SPLITSHAPE - - // ============================================================ - // use BRepFeat_SplitShape to make faces - // ============================================================ - - BRepFeat_SplitShape Split(myFace); - TopTools_MapOfShape AddedSectionEdgesMap; - - myNewWires.Append(myInternalWL); - - TopTools_ListIteratorOfListOfShape it(myNewWires); - for (; it.More(); it.Next()) { - TopoDS_Iterator itE(it.Value()); - for (; itE.More(); itE.Next()) { - const TopoDS_Edge& newE = TopoDS::Edge( itE.Value() ); - if (AddedSectionEdgesMap.Add(newE)) { - if (mySectionEdges.Contains(newE)) - Split.Add(newE,F); // new edge on face - else { - const TopoDS_Edge& oldE = TopoDS::Edge( EdgeImage.ImageFrom(newE) ); - Split.Add(newE, oldE); // splited edge - } - } - } - } - Split.Build(); - - if (Split.IsDone()) - myNewFaces = Split.Modified(F); - -#endif // ifndef USE_BREPFEAT_SPLITSHAPE - - - -#ifdef DEB - Standard_Integer nbF = myNewFaces.Extent(); - if (nbW != nbF) - cout << "WiresToFaces(): " << nbW << " wires --> " << myNewFaces.Extent() << " faces " - << endl; -#endif - TopTools_ListIteratorOfListOfShape itNF (myNewFaces); - for (; itNF.More(); itNF.Next()) + for (; itNF.More(); itNF.Next()) itNF.Value().Orientation( myFaceOri ); } diff --git a/src/PARTITION/Partition_Spliter.cdl b/src/PARTITION/Partition_Spliter.cdl index 252e94b0b..0fc9b5be5 100644 --- a/src/PARTITION/Partition_Spliter.cdl +++ b/src/PARTITION/Partition_Spliter.cdl @@ -94,6 +94,11 @@ is ---Category: private methods + MakeSolids (me: in out; Solid : Shape from TopoDS; + Shells: in out ListOfShape from TopTools) + is private; + ---Purpose: make solids out of Shells + MakeShells (me: in out; S : Shape from TopoDS; NS: in out ListOfShape from TopTools) is private; ---Purpose: split S into shells @@ -131,18 +136,39 @@ is -- shared by -- contains edge splits + IsInside (myclass; S1,S2 : Shape from TopoDS) + returns Boolean from Standard is private; + ---Purpose: Return True if the first vertex of S1 inside S2. + -- If S1.IsNull(), check infinite point against S2. + + GetOriginalShape(me; aShape : Shape from TopoDS) + returns Shape from TopoDS is private; + ---Purpose: Return the shape aShape originates from. aShape + -- should be a face or more complex result shape + + FindToolsToReconstruct(me: in out) is private; + ---Purpose: find and store as objects tools which interfere + -- with solids or are inside solids without + -- an interference + fields - myDoneStep : ShapeEnum from TopAbs; -- reconstructed topology + myDoneStep : ShapeEnum from TopAbs; -- rebuilt level myShape : Compound from TopoDS; -- result myBuilder : Builder from BRep; myListShapes : ListOfShape from TopTools; -- object shapes myMapFaces : MapOfShape from TopTools; -- object faces myMapTools : MapOfShape from TopTools; -- tool faces + myEqualEdges : MapOfShape from TopTools; -- equal splits + myNewSection : MapOfShape from TopTools; -- new secton edges + myClosedShapes : MapOfShape from TopTools; + myWrappingSolid: MapOfShape from TopTools; -- solids having other shapes inside myFaceShapeMap : DataMapOfShapeShape from TopTools; -- to find a shape by face - myNewSection : MapOfShape from TopTools; -- new secton edges + myInternalFaces: DataMapOfShapeShape from TopTools; -- shape and its internal faces + myIntNotClFaces: DataMapOfShapeShape from TopTools; -- internal but not closed + myAsDes : AsDes from BRepAlgo; myImagesFaces : Image from BRepAlgo; @@ -155,11 +181,4 @@ fields -- avoid rebuilding twice commont part of solids myAddedFacesMap: MapOfOrientedShape from TopTools; - -- equal splits - myEqualEdges : MapOfShape from TopTools; - - -- shape and its internal faces - myInternalFaces: DataMapOfShapeShape from TopTools; - myIntNotClFaces: DataMapOfShapeShape from TopTools;-- internal but not closed - end Spliter; diff --git a/src/PARTITION/Partition_Spliter.cxx b/src/PARTITION/Partition_Spliter.cxx index 502fbc956..8dd5d136d 100644 --- a/src/PARTITION/Partition_Spliter.cxx +++ b/src/PARTITION/Partition_Spliter.cxx @@ -27,18 +27,18 @@ // $Header$ using namespace std; -#include "Partition_Spliter.ixx" #include "Partition_Inter2d.hxx" #include "Partition_Inter3d.hxx" #include "Partition_Loop2d.hxx" #include "Partition_Loop3d.hxx" +#include "Partition_Spliter.ixx" #include "utilities.h" -#include -#include #include #include +#include +#include #include #include @@ -49,13 +49,13 @@ using namespace std; #include #include -#include -#include -#include #include #include #include #include +#include +#include +#include #include #include @@ -67,32 +67,42 @@ using namespace std; #include #include -#include -#include #include +#include +#include +#include -#include #include #include #include #ifdef DEB -#define DRAW 0 +//# define PART_PERF #endif -#ifdef DRAW -#include -Standard_IMPORT Standard_Boolean AffichInter3d ; -Standard_IMPORT Standard_Boolean AffichInter2d ; -Standard_IMPORT Standard_Boolean AffichVertex; -Standard_IMPORT Standard_Boolean AffichFace; -Standard_IMPORT Standard_Boolean AffichWire; -Standard_IMPORT Standard_Boolean SelectFace; - -static char* names = new char[100]; - +#ifdef PART_PERF +# include #endif +//======================================================================= +//function : isClosed +//purpose : check id a shape is closed, ie is a solid or a closed shell +//======================================================================= + +static Standard_Boolean isClosed(const TopoDS_Shape& theShape) +{ + Standard_Boolean isClosed = (theShape.ShapeType() == TopAbs_SOLID); + + if (!isClosed && theShape.ShapeType() == TopAbs_SHELL) { + TopTools_IndexedDataMapOfShapeListOfShape MEF; + TopExp::MapShapesAndAncestors(theShape, TopAbs_EDGE, TopAbs_FACE, MEF); + for (Standard_Integer i=1; isClosed && i<=MEF.Extent(); ++i) + isClosed = ( MEF(i).Extent() != 1 ); + } + + return isClosed; +} + //======================================================================= //function : Partition_Spliter //purpose : constructor @@ -111,8 +121,23 @@ Partition_Spliter::Partition_Spliter() void Partition_Spliter::AddTool(const TopoDS_Shape& S) { + if (S.ShapeType() < TopAbs_SOLID) { // compound or compsolid + TopoDS_Iterator it (S); + for (; it.More(); it.Next()) + { + AddTool( it.Value()); + myFaceShapeMap.Bind( it.Value(), S ); // to know compound by shape + } + return; + } + for (TopExp_Explorer exp(S,TopAbs_FACE); exp.More(); exp.Next()) + { myMapTools.Add(exp.Current()); + myFaceShapeMap.Bind( exp.Current(), S ); + } + if (isClosed( S )) + myClosedShapes.Add( S ); } //======================================================================= @@ -125,7 +150,10 @@ void Partition_Spliter::AddShape(const TopoDS_Shape& S) if (S.ShapeType() < TopAbs_SOLID) { // compound or compsolid TopoDS_Iterator it (S); for (; it.More(); it.Next()) + { AddShape( it.Value()); + myFaceShapeMap.Bind( it.Value(), S ); // to know compound by shape + } return; } @@ -134,14 +162,28 @@ void Partition_Spliter::AddShape(const TopoDS_Shape& S) //myBuilder.Add( myShape, S ); return; } - - myListShapes.Append(S); + Standard_Integer nbFacesBefore = myMapFaces.Extent(); // not to add twice the same S for (; exp.More(); exp.Next()) { - myFaceShapeMap.Bind( exp.Current(), S ); - myMapFaces.Add(exp.Current()); - myImagesFaces.SetRoot(exp.Current()); + const TopoDS_Shape & aFace = exp.Current(); + if ( ! myFaceShapeMap.IsBound( aFace )) // keep shape of tool face added as object + myFaceShapeMap.Bind( aFace, S ); + if (myMapFaces.Add( aFace )) + myImagesFaces.SetRoot( aFace ); } + + if (nbFacesBefore == myMapFaces.Extent()) + return; + + // solids must be processed before all + if (S.ShapeType() == TopAbs_SOLID) + myListShapes.Prepend(S); + else + myListShapes.Append(S); + + if (isClosed( S )) + myClosedShapes.Add( S ); + } //======================================================================= @@ -166,9 +208,14 @@ void Partition_Spliter::Clear() myListShapes.Clear(); myMapFaces.Clear(); myMapTools.Clear(); + myClosedShapes.Clear(); + myEqualEdges.Clear(); + myNewSection.Clear(); + myWrappingSolid.Clear(); myFaceShapeMap.Clear(); - myNewSection.Clear(); + myInternalFaces.Clear(); + myIntNotClFaces.Clear(); myAsDes->Clear(); myImagesFaces.Clear(); @@ -179,7 +226,6 @@ void Partition_Spliter::Clear() myAddedFacesMap.Clear(); - myInternalFaces.Clear(); } //======================================================================= @@ -199,6 +245,10 @@ void Partition_Spliter::Compute(const TopAbs_ShapeEnum Limit) TopTools_ListIteratorOfListOfShape itl; TopExp_Explorer exp; +#ifdef PART_PERF + OSD_Chronometer aCron; +#endif + if (myDoneStep > TopAbs_VERTEX) { TopTools_ListOfShape aListFaces; @@ -206,102 +256,38 @@ void Partition_Spliter::Compute(const TopAbs_ShapeEnum Limit) for (it.Initialize(myMapTools); it.More(); it.Next()) aListFaces.Append(it.Key()); +#ifdef PART_PERF + aCron.Start(); +#endif + //----------------------------------------------- // Intersection between faces //----------------------------------------------- // result is in myAsDes as a map Face - list of new edges; // special care is done for section edges, same domain faces and vertices: // data about them is inside myInter3d - myInter3d.CompletPart3d(aListFaces, myFaceShapeMap); - TopTools_MapOfShape& Modif = myInter3d.TouchedFaces(); - TopTools_MapOfShape& NewEdges = myInter3d.NewEdges(); - Handle(BRepAlgo_AsDes) SectionEdgesAD = myInter3d.SectionEdgesAD(); - -#ifdef DRAW - if (AffichInter3d) { - Standard_Integer i=0; - for (it.Initialize(NewEdges); it.More(); it.Next(), i++) { - sprintf(names,"e_%d",i); - cout << "donly " << names << endl; - DBRep::Set(names,it.Key()); - } - } +#ifdef PART_PERF + cout << "+++ CompletPart3d()" << endl; + aCron.Show( cout ); + aCron.Reset(); + aCron.Start(); #endif - //if (Modif.IsEmpty()) return; - - // ----------------------------------------------- - // store tools intersecting solids as object shapes, - // they must split into faces too - // ----------------------------------------------- - - // build edge - face map for tool faces - TopTools_IndexedDataMapOfShapeListOfShape EFM; - for (it.Initialize(myMapTools); it.More(); it.Next()) - TopExp::MapShapesAndAncestors( it.Key(), TopAbs_EDGE, TopAbs_FACE, EFM); - - TopTools_MapOfShape checkedEdgeMap; - for (itl.Initialize( myListShapes ); itl.More(); itl.Next()) { - TopExp_Explorer expSo (itl.Value(), TopAbs_SOLID); - for (; expSo.More(); expSo.Next()) { - - TopTools_ListOfShape checkFL; // faces to check - for ( exp.Init( expSo.Current(), TopAbs_FACE); exp.More(); exp.Next()) - checkFL.Append ( exp.Current()); - - // iterate a list while appending new items - TopTools_ListIteratorOfListOfShape itF, itCF; - for (itCF.Initialize (checkFL) ; itCF.More(); itCF.Next()) { - const TopoDS_Shape& F = itCF.Value(); - if ( myAsDes->HasDescendant( F )) { - // new edges on face to check - const TopTools_ListOfShape& NEL = myAsDes->Descendant( F ); - TopTools_ListIteratorOfListOfShape itE (NEL); - for (; itE.More(); itE.Next()) { - if (checkedEdgeMap.Add( itE.Value() )) { - // intersected faces originating an edge - itF.Initialize (myAsDes->Ascendant( itE.Value() )); - for (; itF.More(); itF.Next()) { - if (!myMapFaces.Contains( itF.Value())) { - AddShape( itF.Value() ); - checkFL.Append( itF.Value() ); - } - } - // faces having section edges on F - if (EFM.Contains( itE.Value())) - itF.Initialize ( EFM.FindFromKey (itE.Value())); - for (; itF.More(); itF.Next()) { - if (!myMapFaces.Contains( itF.Value())) { - AddShape( itF.Value() ); - checkFL.Append( itF.Value() ); - } - } - } - } - } - // find faces cut by edges of F - TopExp_Explorer expE(F, TopAbs_EDGE); - for (; expE.More();expE.Next()) { - if ( SectionEdgesAD->HasAscendant( expE.Current() ) - && checkedEdgeMap.Add( expE.Current() )) { - itF.Initialize( SectionEdgesAD->Ascendant( expE.Current()) ); - for (; itF.More(); itF.Next()) { - if (!myMapFaces.Contains( itF.Value())) { - AddShape( itF.Value() ); - checkFL.Append( itF.Value() ); - } - } - } - } - } - } - } - //----------------------------------------------- // Intersection of edges //----------------------------------------------- + // add tool faces which must be reconstructed to myMapFaces too + FindToolsToReconstruct(); + +#ifdef PART_PERF + cout << "+++ FindToolsToReconstruct()" << endl; + aCron.Show( cout ); + aCron.Reset(); + aCron.Start(); +#endif + // add existing vertices to edges of object faces in myAsDes TopTools_MapOfShape DoneEM; for ( it.Initialize(myMapFaces); it.More(); it.Next()) { @@ -321,15 +307,22 @@ void Partition_Spliter::Compute(const TopAbs_ShapeEnum Limit) } // intersect edges that are descendants of a face in myAsDes + TopTools_MapOfShape& Modif = myInter3d.TouchedFaces(); for ( it.Initialize(Modif); it.More(); it.Next()) { const TopoDS_Face& F = TopoDS::Face(it.Key()); - Partition_Inter2d::CompletPart2d (myAsDes, F, NewEdges); + Partition_Inter2d::CompletPart2d (myAsDes, F, myInter3d.NewEdges()); } // now myAsDes contains also new vertices made at edge intersection as // descendant of edges both new and old myDoneStep = TopAbs_VERTEX; +#ifdef PART_PERF + cout << "+++ CompletPart2d()" << endl; + aCron.Show( cout ); + aCron.Reset(); + aCron.Start(); +#endif } // if (myDoneStep > TopAbs_VERTEX) if (Limit == TopAbs_VERTEX) { @@ -344,17 +337,20 @@ void Partition_Spliter::Compute(const TopAbs_ShapeEnum Limit) return; } + if (myDoneStep > TopAbs_EDGE) { //----------------------------------------------- - // Reconstruction of all the edges. + //----------------------------------------------- + // ------- Reconstruction of all the edges.------ + //----------------------------------------------- //----------------------------------------------- - // Add to myAsDes end vertices of new edges and cut new edges - int j=1; - TopTools_MapOfShape& NewEdges = myInter3d.NewEdges(); + // ============== + // cut new edges + // ============== TopTools_ListOfShape LSE; // all edge splits - for ( it.Initialize(NewEdges); it.More(); it.Next()) { + for ( it.Initialize(myInter3d.NewEdges()); it.More(); it.Next()) { TopoDS_Vertex V1,V2; TopoDS_Edge EE = TopoDS::Edge(it.Key()); @@ -366,9 +362,11 @@ void Partition_Spliter::Compute(const TopAbs_ShapeEnum Limit) if (aListV.IsEmpty()) continue; // new edge does not intersect any other edge - // one face is Tool, the other is Shape: - if ( (myMapTools.Contains(aListF.First()) && myMapFaces.Contains(aListF.Last()) ) || - ( myMapFaces.Contains(aListF.First()) && myMapTools.Contains(aListF.Last()) ) ) + // Add end vertices to new edges only if + // one face is Tool and the other is Shape + Standard_Boolean isTool1 = ! myMapFaces.Contains( aListF.First() ); + Standard_Boolean isTool2 = ! myMapFaces.Contains( aListF.Last() ); + if (isTool1 || isTool2) { TopExp::Vertices(EE,V1,V2); Standard_Real Tol = Max (BRep_Tool::Tolerance( V1 ), @@ -402,19 +400,10 @@ void Partition_Spliter::Compute(const TopAbs_ShapeEnum Limit) myAsDes->Add(EE,V2); } } -#ifdef DRAW - if (AffichVertex) { - for(itl.Initialize(aListV);itl.More();itl.Next(), j++) { - sprintf(names,"v_%d",j); - cout << "donly " << names << endl; - DBRep::Set(names,itl.Value()); - } - } -#endif + // cut new edges Standard_Integer NbV=aListV.Extent() ; if (NbV>1 || (NbV==1 && V1.IsSame(V2)) ) { - // cut new edges TopTools_ListOfShape LNE; MakeEdges (EE,aListV, LNE); myImagesEdges.Bind(EE,LNE); @@ -422,7 +411,9 @@ void Partition_Spliter::Compute(const TopAbs_ShapeEnum Limit) } } + // ============== // cut old edges + // ============== for ( it.Initialize(myMapFaces); it.More(); it.Next()) { for (exp.Init( it.Key(), TopAbs_EDGE); exp.More(); exp.Next()) { const TopoDS_Edge& EE = TopoDS::Edge( exp.Current() ); @@ -435,17 +426,32 @@ void Partition_Spliter::Compute(const TopAbs_ShapeEnum Limit) LSE.Append( LNE ); } } +#ifdef PART_PERF + cout << "+++ Cut Edges" << endl; + aCron.Show( cout ); + aCron.Reset(); + aCron.Start(); +#endif + // process same domain section edges MergeEqualEdges( LSE ); myDoneStep = TopAbs_EDGE; +#ifdef PART_PERF + cout << "+++ MergeEqualEdges()" << endl; + aCron.Show( cout ); + aCron.Reset(); + aCron.Start(); +#endif } // if (myDoneStep > TopAbs_EDGE) if (Limit == TopAbs_EDGE) { // add splits of old edges TopTools_ListIteratorOfListOfShape itNE; for (itl.Initialize( myListShapes );itl.More();itl.Next()) { + if (myMapTools.Contains( itl.Value() )) + continue; // skip tool faces for ( exp.Init( itl.Value(), TopAbs_EDGE ); exp.More(); exp.Next()) { itNE.Initialize( myImagesEdges.Image( exp.Current() )); for ( ; itNE.More(); itNE.Next()) @@ -461,9 +467,6 @@ void Partition_Spliter::Compute(const TopAbs_ShapeEnum Limit) return; } - // make faces interfering by section edges share the same splits - //ProcessSectionEdges( SectionEdgesAD ); - //----------------------------------------------- // split faces @@ -480,6 +483,12 @@ void Partition_Spliter::Compute(const TopAbs_ShapeEnum Limit) } myDoneStep = TopAbs_FACE; +#ifdef PART_PERF + cout << "+++ MakeFaces()" << endl; + aCron.Show( cout ); + aCron.Reset(); + aCron.Start(); +#endif } if (Limit == TopAbs_WIRE || @@ -496,203 +505,128 @@ void Partition_Spliter::Compute(const TopAbs_ShapeEnum Limit) //----------------------------------------------- - // split solids + // split and add solids and shells //----------------------------------------------- - - // solids must remains closed, so process them first + Standard_Boolean makeSolids = (Limit == TopAbs_SHAPE || Limit < TopAbs_SHELL); + for (itl.Initialize(myListShapes);itl.More();itl.Next()) + { + const TopoDS_Shape & S = itl.Value(); + if (S.ShapeType() > TopAbs_SHELL) + continue; - for (itl.Initialize(myListShapes);itl.More();itl.Next()) { - if (itl.Value().ShapeType() == TopAbs_SOLID) { - TopTools_ListOfShape NSL; - MakeShells (itl.Value() , NSL); - TopTools_ListIteratorOfListOfShape itS(NSL); - for ( ; itS.More(); itS.Next()) - if (makeSolids) { - // make a solid from a shell - TopoDS_Solid Solid; - myBuilder.MakeSolid( Solid ); - myBuilder.Add (Solid, itS.Value()); - myBuilder.Add (myShape, Solid); - } - else - myBuilder.Add (myShape, itS.Value()); - } + TopTools_ListOfShape NSL; // new shape list + MakeShells (S , NSL); + if (makeSolids && S.ShapeType() == TopAbs_SOLID ) + MakeSolids( S, NSL ); + + TopTools_ListIteratorOfListOfShape itNSL (NSL); + for ( ; itNSL.More(); itNSL.Next()) + myBuilder.Add (myShape, itNSL.Value()); } - - //----------------------------------------------- - // split shells - //----------------------------------------------- +#ifdef PART_PERF + cout << "+++ MakeShells()" << endl; + aCron.Show( cout ); +#endif - for (itl.Initialize(myListShapes);itl.More();itl.Next()) { - if (itl.Value().ShapeType() == TopAbs_SHELL) { - TopTools_ListOfShape NSL; - MakeShells (itl.Value() , NSL); - TopTools_ListIteratorOfListOfShape itS(NSL); - for ( ; itS.More(); itS.Next()) - myBuilder.Add (myShape, itS.Value()); - } - } - //----------------------------------------------- // add split faces //----------------------------------------------- - for (itl.Initialize(myListShapes);itl.More();itl.Next()) { - const TopoDS_Shape& S = itl.Value(); + for (itl.Initialize(myListShapes);itl.More();itl.Next()) + { + const TopoDS_Shape & S = itl.Value(); if (S.ShapeType() != TopAbs_FACE || - myMapTools.Contains( S )) + myMapTools.Contains( S )) continue; TopoDS_Iterator itS( myImageShape.Image(S).First() ); for (; itS.More(); itS.Next()) if (! myAddedFacesMap.Contains( itS.Value() )) - myBuilder.Add (myShape, itS.Value()); + myBuilder.Add (myShape, itS.Value()); } - + myDoneStep = makeSolids ? TopAbs_SOLID : TopAbs_SHELL; } - //======================================================================= -//function : Tri -//purpose : +//function : MakeSolids +//purpose : make solids out of Shells //======================================================================= -static void Tri(const TopoDS_Edge& E, - TopTools_SequenceOfShape& Seq) +void Partition_Spliter::MakeSolids(const TopoDS_Shape & theSolid, + TopTools_ListOfShape & theShellList) { - Standard_Boolean Invert = Standard_True; - Standard_Integer NbPoints = Seq.Length(); - Standard_Real U1,U2; - TopoDS_Vertex V1,V2; + // for a solid wrapping other shells or solids without intersection, + // it is necessary to find shells making holes in it - while (Invert) { - Invert = Standard_False; - for ( Standard_Integer i = 1; i < Seq.Length(); i++) { - - V1 = TopoDS::Vertex(Seq.Value(i)); - V2 = TopoDS::Vertex(Seq.Value(i+1)); - - V1.Orientation(TopAbs_INTERNAL); - V2.Orientation(TopAbs_INTERNAL); - - U1 = BRep_Tool::Parameter(V1,E); - U2 = BRep_Tool::Parameter(V2,E); - - if (IsEqual(U1,U2)) { - Seq.Remove(i); - i--; - continue; - } - if (U2 < U1) { - Seq.Exchange(i,i+1); - Invert = Standard_True; - } - } + TopTools_ListOfShape aNewSolids; // result + TopTools_ListOfShape aHoleShells; + TopoDS_Shape anInfinitePointShape; + + Standard_Boolean isWrapping = myWrappingSolid.Contains( theSolid ); + if (!isWrapping && !theShellList.IsEmpty()) + { + // check if theSolid initially has internal shells + TopoDS_Iterator aShellExp (theSolid); + aShellExp.Next(); + isWrapping = aShellExp.More(); } -} + + TopTools_ListIteratorOfListOfShape aShellIt(theShellList); + for ( ; aShellIt.More(); aShellIt.Next()) + { + const TopoDS_Shape & aShell = aShellIt.Value(); -//======================================================================= -//function : MakeEdges -//purpose : cut E by vertices VOnE, return list of new edges NE -//======================================================================= + // check if a shell is a hole + if (isWrapping && IsInside (anInfinitePointShape, aShell)) + aHoleShells.Append( aShell ); + else + { + // make a solid from a shell + TopoDS_Solid Solid; + myBuilder.MakeSolid( Solid ); + myBuilder.Add (Solid, aShell); -void Partition_Spliter::MakeEdges (const TopoDS_Edge& E, - const TopTools_ListOfShape& VOnE, - TopTools_ListOfShape& NE ) const -{ - TopoDS_Edge WE = E; - WE.Orientation(TopAbs_FORWARD); - - TopTools_ListIteratorOfListOfShape itv(VOnE); - TopTools_SequenceOfShape SV; - - Standard_Real U1,U2, f, l; - TopoDS_Vertex V1,V2,VF,VL; - - BRep_Tool::Range(WE,f,l); - TopExp::Vertices(WE,VF,VL); - - if (VOnE.Extent() < 3) { // do not rebuild not cut edge - if (( VF.IsSame( VOnE.First() ) && VL.IsSame( VOnE.Last() )) || - VL.IsSame( VOnE.First() ) && VF.IsSame( VOnE.Last() ) ) { - NE.Append( E ); - return; + aNewSolids.Append (Solid); } } - for (; itv.More(); itv.Next()) - SV.Append(itv.Value()); + // find outer a shell most close to each hole shell + TopTools_DataMapOfShapeShape aInOutMap; + for (aShellIt.Initialize( aHoleShells ); aShellIt.More(); aShellIt.Next()) + { + const TopoDS_Shape & aHole = aShellIt.Value(); + TopTools_ListIteratorOfListOfShape aSolisIt (aNewSolids); + for ( ; aSolisIt.More(); aSolisIt.Next()) + { + const TopoDS_Shape & aSolid = aSolisIt.Value(); + if (! IsInside( aHole, aSolid )) + continue; - Tri( WE, SV); - - Standard_Integer iVer, NbVer = SV.Length(); - - - //---------------------------------------------------------------- - // Construction of the new edges . - //---------------------------------------------------------------- - - if (VF.IsSame(VL)) { // closed edge - if (NbVer==1) - SV.Append( SV.First() ); - else if (!SV.First().IsSame(SV.Last())) { - Standard_Boolean isFirst=0; - Standard_Real minDU = 1.e10; - TopoDS_Vertex endV = Partition_Inter2d::FindEndVertex(VOnE, f,l, E, isFirst,minDU); - if (endV.IsSame(SV.First())) - SV.Append(endV); - else if (endV.IsSame(SV.Last())) - SV.Prepend(endV); + if ( aInOutMap.IsBound (aHole)) + { + const TopoDS_Shape & aSolid2 = aInOutMap( aHole ); + if ( IsInside( aSolid, aSolid2 )) + { + aInOutMap.UnBind( aHole ); + aInOutMap.Bind ( aHole, aSolid ); + } + } else - MESSAGE ("END VERTEX IS IN SEQUNCE MIDDLE"); + aInOutMap.Bind ( aHole, aSolid ); } - NbVer = SV.Length(); + + // add aHole to a solid + if (aInOutMap.IsBound( aHole )) + myBuilder.Add ( aInOutMap( aHole ), aHole ); } - for (iVer=1; iVer < NbVer; iVer++) { - V1 = TopoDS::Vertex(SV(iVer)); - V2 = TopoDS::Vertex(SV(iVer+1)); - - TopoDS_Shape NewEdge = WE.EmptyCopied(); - V1.Orientation(TopAbs_FORWARD); - myBuilder.Add (NewEdge,V1); - V2.Orientation(TopAbs_REVERSED); - myBuilder.Add (NewEdge,V2); - - if (iVer==1) - U1 = f; - else { - V1.Orientation(TopAbs_INTERNAL); - U1=BRep_Tool::Parameter(V1,WE); - } - if (iVer+1 == NbVer) - U2 = l; - else { - V2.Orientation(TopAbs_INTERNAL); - U2=BRep_Tool::Parameter(V2,WE); - } - if (Abs(U1-U2) <= Precision::PConfusion()) { - MESSAGE( "MakeEdges(), EQUAL PARAMETERS OF DIFFERENT VERTICES"); - continue; - } - TopoDS_Edge EE=TopoDS::Edge(NewEdge); - myBuilder.Range (EE,U1,U2); - - TopoDS_Edge NEdge = TopoDS::Edge(NewEdge); - myBuilder.SameParameter(NEdge,Standard_False); - - Standard_Real tol = 1.0e-2; - Standard_Boolean flag = BRep_Tool::SameParameter(NEdge); - if (!flag) { - BRepLib::SameParameter(NEdge,tol); - } - NE.Append(NEdge.Oriented(E.Orientation())); - } + theShellList.Clear(); + theShellList.Append( aNewSolids ); } - + //======================================================================= //function : FindFacesInside //purpose : return compound of faces of other shapes that are @@ -707,6 +641,9 @@ TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& theShape, const Standard_Boolean CheckClosed, const Standard_Boolean All) { + // ================================================ + // check if internal faces have been already found + // ================================================ TopExp_Explorer expl; if (myInternalFaces.IsBound( theShape )) { @@ -728,6 +665,10 @@ TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& theShape, return C; } + // =================================== + // get data for internal faces search + // =================================== + // compound of split faces of theShape const TopoDS_Shape& CSF = myImageShape.Image(theShape).First(); @@ -738,7 +679,7 @@ TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& theShape, // MSE filling: map of new section edges of CSF for (expl.Init(CSF,TopAbs_EDGE); expl.More(); expl.Next()) { - TopoDS_Shape resE = expl.Current() ; + const TopoDS_Shape & resE = expl.Current() ; if (myNewSection.Contains( resE )) // only new edges MSE.Add(resE); } @@ -774,7 +715,28 @@ TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& theShape, } } + // add tool faces having section edges on faces of theShape to MFP and DMSEFP; + // such tool faces need not to be reconstructed and so they are not in myListShapes + for (itm.Initialize(myMapTools); itm.More(); itm.Next()) + { + const TopoDS_Shape & aToolFace = itm.Key(); + if (myMapFaces.Contains( aToolFace )) + continue; + MFP.Add(aToolFace); + for (expl.Init( aToolFace, TopAbs_EDGE ); expl.More(); expl.Next()) { + TopoDS_Shape se = expl.Current(); + if ( MSE.Contains( se )) {// section edge + if (!DMSEFP.IsBound( se )) + DMSEFP.Bind( se, EmptyL ); + DMSEFP( se ).Append( aToolFace ); + } + } + } + + + // =========================== // find faces inside theShape + // =========================== Standard_Boolean skipAlreadyAdded = Standard_False; Standard_Boolean GoodOri, inside; @@ -789,7 +751,7 @@ TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& theShape, const TopoDS_Edge& E = TopoDS::Edge (Mapit.Key()); // an original edge of which E is a split const TopoDS_Edge& OrigE = TopoDS::Edge ( myImagesEdges.Root( E )); - // is OrigE itself splits a face + // does OrigE itself splits a face Standard_Boolean isSectionE = myInter3d.IsSectionEdge ( OrigE ); // split faces of other shapes sharing E @@ -813,7 +775,9 @@ TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& theShape, // find another face which originates from the same face as aFace1: // usually aFace2 is internal if aFace1 is not and vice versa - const TopoDS_Shape& anOrigFace = myImagesFaces.Root(aFace1); + TopoDS_Shape anOrigFace = aFace1; + if (myImagesFaces.IsImage(aFace1)) + anOrigFace = myImagesFaces.Root(aFace1); TopoDS_Shape aFace2; if ( !isSectionE ) { while (itl.More()) { @@ -863,14 +827,24 @@ TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& theShape, // keep one of found faces - //face of CSF sharing E + //face of CSF sharing E const TopoDS_Shape& aShapeFace = sameDom1 ? FL.Last() : FL.First(); // analyse aFace1 state inside = Partition_Loop3d::IsInside (E, TopoDS::Face(aShapeFace), aFace1, 1, dot, GoodOri); + if (inside && isSectionE) + { + // aFace1 must be tested with both adjacent faces of CSF + const TopoDS_Shape& aShapeFace2 = sameDom1 ? FL.First() : FL.Last(); + if (aShapeFace2 != aShapeFace) + inside = Partition_Loop3d::IsInside (E, TopoDS::Face(aShapeFace2), aFace1, + 1, dot, GoodOri); + } + // store internal face if (inside) - KeepFaces.Append(aFace1); + KeepFaces.Append(aFace1); + else if (!aFace2.IsNull()) { if (dot + Precision::Angular() >= 1.0) @@ -881,12 +855,14 @@ TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& theShape, LSF.Append( aFace2 ); } else - KeepFaces.Append(aFace2); + KeepFaces.Append(aFace2); } } } + // =================================================== // add not distributed faces connected with KeepFaces + // =================================================== // ultimate list of internal faces TopTools_ListOfShape KeptFaces; @@ -927,10 +903,74 @@ TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& theShape, } } + // =============================================================== + // here MFP contains faces outer of theShape and those of shapes + // which do not interfere with theShape at all and between which + // there may be those wrapped by theShape and whose faces may be + // needed to be returned as well + // =============================================================== + + Standard_Boolean isSolid = (theShape.ShapeType() == TopAbs_SOLID); + if (All || isSolid) // All is for sub-result removal + { + for ( itm.Initialize( MFP ); itm.More(); itm.Next() ) { + TopoDS_Shape aFace = itm.Key(); + + // find a shape aFace originates from + TopoDS_Shape anOrigShape = GetOriginalShape( aFace ); + + // find out if all faces of anOrigShape are not in MFP + // and by the way remove them from MFP + Standard_Boolean isAllOut = Standard_True; + TopoDS_Shape aSplitFaces = anOrigShape; + if (myImageShape.HasImage(anOrigShape)) + aSplitFaces = myImageShape.Image(anOrigShape).First(); + + TopTools_ListOfShape aSplitFaceL; + for (expl.Init( aSplitFaces, TopAbs_FACE ); expl.More(); expl.Next()) + { + const TopoDS_Shape & aSpFace = expl.Current(); + // a tool face which become object has image but the whole tool shape has not + if (myImageShape.HasImage( aSpFace )) + { + TopExp_Explorer exF (myImageShape.Image( aSpFace ).First(), TopAbs_FACE ); + for ( ; exF.More(); exF.Next() ) + { + aSplitFaceL.Append( exF.Current() ); + if ( ! MFP.Remove( exF.Current() )) + isAllOut = Standard_False; + } + } + else + { + aSplitFaceL.Append( aSpFace ); + if ( ! MFP.Remove( aSpFace )) + isAllOut = Standard_False; + } + } + itm.Initialize( MFP ); + if ( !isAllOut ) + continue; + + // classify anOrigShape against theShape + if (IsInside (anOrigShape, theShape)) + { + if (isSolid && myClosedShapes.Contains( anOrigShape )) + // to make a special care at solid reconstruction + myWrappingSolid.Add ( theShape ); + + // keep faces of an internal shape anOrigShape + KeptFaces.Append( aSplitFaceL ); + } + } + } + + // ==================================================== // check if kept faces form a shell without free edges + // ==================================================== DMEF.Clear(); // edge - kept faces - MFP.Clear(); // wrong faces + MFP.Clear(); // reuse it for wrong faces if (CheckClosed) { for (itl.Initialize(KeptFaces); itl.More(); itl.Next() ) TopExp::MapShapesAndAncestors(itl.Value(), TopAbs_EDGE, TopAbs_FACE, DMEF); @@ -941,7 +981,8 @@ TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& theShape, isClosed = Standard_True; for (i=1; isClosed && i<=nb; ++i) { const TopoDS_Shape& E = DMEF.FindKey( i ); - if (! MSE.Contains( E )) + if (! BRep_Tool::Degenerated( TopoDS::Edge( E )) && + ! MSE.Contains( E )) isClosed = ( DMEF(i).Extent() != 1 ); } if (!isClosed) { @@ -962,7 +1003,10 @@ TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& theShape, } } - // a result compound + // ============== + // make a result + // ============== + TopoDS_Compound C; // compound of removed internal faces TopoDS_Compound CNotCl; @@ -997,77 +1041,35 @@ TopoDS_Shape Partition_Spliter::FindFacesInside(const TopoDS_Shape& theShape, void Partition_Spliter::MakeShells(const TopoDS_Shape& S, TopTools_ListOfShape& NS) { - // check if S is closed shape - Standard_Boolean isClosed = Standard_True; - - TopTools_IndexedDataMapOfShapeListOfShape MEF; - Standard_Integer i; - if (S.ShapeType() != TopAbs_SOLID) { - TopExp::MapShapesAndAncestors(S, TopAbs_EDGE, TopAbs_FACE, MEF); - for (i=1; isClosed && i<=MEF.Extent(); ++i) - isClosed = ( MEF(i).Extent() != 1 ); - } Partition_Loop3d ShellMaker; // get compound of split faces of S const TopoDS_Shape& FacesComp = myImageShape.Image(S).First(); ShellMaker.AddConstFaces( FacesComp ); - // split faces inside S - if (isClosed) { + // add split faces inside S + if (myClosedShapes.Contains( S )) { TopoDS_Shape InternalFacesComp = FindFacesInside(S, Standard_True); ShellMaker.AddSectionFaces( InternalFacesComp ); -// } else { // a shell may become closed -// ShellMaker.AddConstFaces( InternalFacesComp ); } NS = ShellMaker.MakeShells( myAddedFacesMap ); - // 1. Add faces added to new shell to myAddedFacesMap: + // Add faces added to new shell to myAddedFacesMap: // avoid rebuilding twice commont part of 2 solids. - // 2. Check shell closeness (DEBUG) TopTools_ListIteratorOfListOfShape itS(NS); while ( itS.More()) { -#ifdef DEB - Standard_Boolean checkCloseness = Standard_True; -#endif TopExp_Explorer expF (itS.Value(), TopAbs_FACE); - for (; expF.More(); expF.Next()) { - + for (; expF.More(); expF.Next()) myAddedFacesMap.Add (expF.Current()); - -#ifdef DEB - if (checkCloseness && - ! myInter3d.HasSameDomainF( myImagesFaces.Root(expF.Current()) )) - checkCloseness = Standard_False; -#endif - } -#ifdef DEB - if (checkCloseness) { - // if S is closed, a new shell must be closed too; - if (isClosed) { - // check that a new shell is closed - MEF.Clear(); - TopExp::MapShapesAndAncestors(itS.Value(), TopAbs_EDGE, TopAbs_FACE, MEF); - for (i=1; isClosed && i<=MEF.Extent(); ++i) - isClosed = ( MEF(i).Extent() != 1 ); - if (!isClosed) { // remove not closed shell - MESSAGE (" NOT CLOSED SHELL " ); - //NS.Remove( itS ); - itS.Next(); - continue; - } - } - } -#endif itS.Next(); - } // loop on new shells + } } //======================================================================= //function : findEqual -//purpose : compare edges form EL1 against edges from EL2, -// Result is in EMM binding edge form EL1 to list of equal edges -// Edges are considered equall only if they have same vertices +//purpose : compare edges of EL1 against edges of EL2, +// Result is in EMM binding EL1 edges to list of equal edges. +// Edges are considered equall only if they have same vertices. // ==True makes consider same edges as equal // Put in all equal edges //======================================================================= @@ -1111,7 +1113,7 @@ static void findEqual (const TopTools_ListOfShape& EL1, itE2.Initialize( VEM(V1) ); for (; itE2.More(); itE2.Next()) { const TopoDS_Edge& E2 = TopoDS::Edge( itE2.Value()); - if (BRep_Tool::Degenerated( E2 )) + if (BRep_Tool::Degenerated( E2 ) || AllEqMap.Contains (E2)) continue; if (E1.IsSame(E2)) { @@ -1207,7 +1209,7 @@ TopoDS_Shape Partition_Spliter::MakeFaces (const TopoDS_Shape& S) TopTools_IndexedMapOfShape EM; TopExp::MapShapes( F, TopAbs_EDGE, EM); - TopTools_MapOfShape AddedEqualM; + TopTools_MapOfShape AddedEqualM, EqualSeamM; Standard_Boolean needRebuild = Standard_False; // add splits to loops @@ -1230,8 +1232,11 @@ TopoDS_Shape Partition_Spliter::MakeFaces (const TopoDS_Shape& S) Standard_Boolean isSameE = NE.IsSame ( E ); if ( isNewE || isSectionE || !isSameE) { - if (AddedEqualM.Contains( NE )) - continue; + if (AddedEqualM.Contains( NE )) { + // a seam must be twice in a loop + if (!BRep_Tool::IsClosed( E, F ) || !EqualSeamM.Add( NE )) + continue; + } if (isNewE) { if (isSectionE) { @@ -1266,8 +1271,8 @@ TopoDS_Shape Partition_Spliter::MakeFaces (const TopoDS_Shape& S) } } } - if (myEqualEdges.Contains( NE ) && !AddedEqualM.Add( NE )) - continue; + if (myEqualEdges.Contains( NE )) + AddedEqualM.Add( NE ); needRebuild = Standard_True; } @@ -1370,6 +1375,157 @@ TopoDS_Shape Partition_Spliter::MakeFaces (const TopoDS_Shape& S) return C; } + +//======================================================================= +//function : Tri +//purpose : +//======================================================================= + +static void Tri(const TopoDS_Edge& E, + TopTools_SequenceOfShape& Seq, + const Partition_Inter3d & theInter3d) +{ + Standard_Boolean Invert = Standard_True; + Standard_Real U1,U2; + TopoDS_Vertex V1,V2; + + while (Invert) { + Invert = Standard_False; + for ( Standard_Integer i = 1; i < Seq.Length(); i++) { + + V1 = TopoDS::Vertex(Seq.Value(i)); + V2 = TopoDS::Vertex(Seq.Value(i+1)); + + V1.Orientation(TopAbs_INTERNAL); + V2.Orientation(TopAbs_INTERNAL); + + U1 = BRep_Tool::Parameter(V1,E); + U2 = BRep_Tool::Parameter(V2,E); + + if (IsEqual(U1,U2)) { + if (theInter3d.ReplaceSameDomainV( V1, E ).IsSame( V1 )) + Seq.Remove(i+1); // remove V2 + else + Seq.Remove(i); + i--; + continue; + } + if (U2 < U1) { + Seq.Exchange(i,i+1); + Invert = Standard_True; + } + } + } +} + +//======================================================================= +//function : MakeEdges +//purpose : cut E by vertices VOnE, return list of new edges NE +//======================================================================= + +void Partition_Spliter::MakeEdges (const TopoDS_Edge& E, + const TopTools_ListOfShape& VOnE, + TopTools_ListOfShape& NE ) const +{ + TopoDS_Edge WE = E; + WE.Orientation(TopAbs_FORWARD); + + Standard_Real U1,U2, f, l; + TopoDS_Vertex V1,V2,VF,VL; + + BRep_Tool::Range(WE,f,l); + TopExp::Vertices(WE,VF,VL); + + if (VOnE.Extent() < 3) { // do not rebuild not cut edge + if (( VF.IsSame( VOnE.First() ) && VL.IsSame( VOnE.Last() )) || + VL.IsSame( VOnE.First() ) && VF.IsSame( VOnE.Last() ) ) { + NE.Append( E ); + return; + } + } + + TopTools_SequenceOfShape SV; + TopTools_ListIteratorOfListOfShape itv(VOnE); + TopTools_MapOfOrientedShape VM( VOnE.Extent() ); + for (; itv.More(); itv.Next()) + if ( VM.Add( itv.Value() )) + SV.Append(itv.Value()); + + Tri( WE, SV, myInter3d ); + + if (SV.Length() < 3) { // do not rebuild not cut edge + if (( VF.IsSame( SV.First() ) && VL.IsSame( SV.Last() )) || + VL.IsSame( SV.First() ) && VF.IsSame( SV.Last() ) ) { + NE.Append( E ); + return; + } + } + + Standard_Integer iVer, NbVer = SV.Length(); + + + //---------------------------------------------------------------- + // Construction of the new edges . + //---------------------------------------------------------------- + + if (VF.IsSame(VL)) { // closed edge + if (NbVer==1) + SV.Append( SV.First() ); + else if (!SV.First().IsSame(SV.Last())) { + Standard_Boolean isFirst=0; + Standard_Real minDU = 1.e10; + TopoDS_Vertex endV = Partition_Inter2d::FindEndVertex(VOnE, f,l, E, isFirst,minDU); + if (endV.IsSame(SV.First())) + SV.Append(endV); + else if (endV.IsSame(SV.Last())) + SV.Prepend(endV); + else + MESSAGE ("END VERTEX IS IN SEQUNCE MIDDLE"); + } + NbVer = SV.Length(); + } + + for (iVer=1; iVer < NbVer; iVer++) { + V1 = TopoDS::Vertex(SV(iVer)); + V2 = TopoDS::Vertex(SV(iVer+1)); + + TopoDS_Shape NewEdge = WE.EmptyCopied(); + V1.Orientation(TopAbs_FORWARD); + myBuilder.Add (NewEdge,V1); + V2.Orientation(TopAbs_REVERSED); + myBuilder.Add (NewEdge,V2); + + if (iVer==1) + U1 = f; + else { + V1.Orientation(TopAbs_INTERNAL); + U1=BRep_Tool::Parameter(V1,WE); + } + if (iVer+1 == NbVer) + U2 = l; + else { + V2.Orientation(TopAbs_INTERNAL); + U2=BRep_Tool::Parameter(V2,WE); + } + if (Abs(U1-U2) <= Precision::PConfusion()) { + MESSAGE( "MakeEdges(), EQUAL PARAMETERS OF DIFFERENT VERTICES"); + continue; + } + TopoDS_Edge EE=TopoDS::Edge(NewEdge); + myBuilder.Range (EE,U1,U2); + + TopoDS_Edge NEdge = TopoDS::Edge(NewEdge); + myBuilder.SameParameter(NEdge,Standard_False); + + Standard_Real tol = 1.0e-2; + Standard_Boolean flag = BRep_Tool::SameParameter(NEdge); + if (!flag) { + BRepLib::SameParameter(NEdge,tol); + } + NE.Append(NEdge.Oriented(E.Orientation())); + } +} + //======================================================================= //function : MergeEqualEdges //purpose : find equal edges, choose ones to keep and make @@ -1388,6 +1544,7 @@ void Partition_Spliter::MergeEqualEdges (const TopTools_ListOfShape& LSE) for ( ; itM.More(); itM.Next()) { EEL = itM.Value(); EEL.Append( itM.Key() ); + // choose an edge to keep, section edges have priority TopoDS_Edge EKeep; TopTools_ListIteratorOfListOfShape itEE (EEL); @@ -1398,22 +1555,30 @@ void Partition_Spliter::MergeEqualEdges (const TopTools_ListOfShape& LSE) break; } + // update edge images and build pcurves Standard_Real f,l, tol; for (itEE.Initialize (EEL); itEE.More(); itEE.Next()) { const TopoDS_Edge& E = TopoDS::Edge( itEE.Value() ); if ( E.IsSame( EKeep )) continue; + + // 1. build pcurves of the kept edge on faces where replaced edges exist const TopoDS_Edge& EReplOrig = TopoDS::Edge( myImagesEdges.Root( E )); TopTools_ListOfShape FL; - if (myInter3d.IsSectionEdge( EReplOrig )) - FL = myInter3d.SectionEdgeFaces ( EReplOrig ); - else - FL = myAsDes->Ascendant( EReplOrig ); - + FL = myAsDes->Ascendant( EReplOrig ); + Standard_Integer iFace, iFirstSectionFace = FL.Extent() + 1; + // add faces where the replaced edge is a section edge + if (myInter3d.IsSectionEdge( EReplOrig )) { + TopTools_ListIteratorOfListOfShape seIt; + seIt.Initialize( myInter3d.SectionEdgeFaces ( EReplOrig )); + for ( ; seIt.More(); seIt.Next()) + FL.Append( seIt.Value() ); + } + // loop on faces TopTools_ListIteratorOfListOfShape itF (FL); - for ( ; itF.More(); itF.Next()) { + for ( iFace = 1 ; itF.More(); itF.Next(), ++iFace ) { const TopoDS_Face& F = TopoDS::Face( itF.Value()); - // build pcurves + Handle(Geom2d_Curve) pc = BRep_Tool::CurveOnSurface( EKeep, F, f,l); if (pc.IsNull()) { Handle(Geom_Curve) C3d = BRep_Tool::Curve( EKeep, f, l); @@ -1424,12 +1589,56 @@ void Partition_Spliter::MergeEqualEdges (const TopTools_ListOfShape& LSE) } myBuilder.UpdateEdge( EKeep, pc, F, tol); } - } - // replace edges in faces - if (!myImagesEdges.HasImage( E )) - myImagesEdges.Bind( E, EKeep ); - } - } + + if (iFace >= iFirstSectionFace || + !BRep_Tool::IsClosed( EReplOrig, F )) + continue; + + // build the second pcurve for a seam + TopoDS_Vertex V = TopExp::FirstVertex( EKeep ); + Standard_Real Ukeep = BRep_Tool::Parameter( V, EKeep ); + Standard_Real Urepl = BRep_Tool::Parameter( V, E ); + + TopoDS_Edge EReplRev = E; + EReplRev.Reverse(); + Handle(Geom2d_Curve) pcRepl1 = BRep_Tool::CurveOnSurface( E, F, f,l); + Handle(Geom2d_Curve) pcRepl2 = BRep_Tool::CurveOnSurface( EReplRev, F, f,l); + + gp_Pnt2d p1r, p2r, pk; + p1r = pcRepl1->Value( Urepl ); + p2r = pcRepl2->Value( Urepl ); + pk = pc->Value( Ukeep ); + + // suppose that pk is equal to either p1r or p2r + Standard_Boolean isUPeriod = + ( Abs( p1r.X() - p2r.X() ) > Abs( p1r.Y() - p2r.Y() )); + Standard_Boolean is1Equal; + if (isUPeriod) + is1Equal = ( Abs( p1r.X() - pk.X() ) < Abs( p2r.X() - pk.X() )); + else + is1Equal = ( Abs( p1r.Y() - pk.Y() ) < Abs( p2r.Y() - pk.Y() )); + + Handle(Geom2d_Curve) pc2 = Handle(Geom2d_Curve)::DownCast + ( pc->Translated( pk, is1Equal ? p2r : p1r ) ); + + if (E.Orientation() == TopAbs_REVERSED) + is1Equal = !is1Equal; + + if (is1Equal) + myBuilder.UpdateEdge( EKeep, pc, pc2, F, tol); + else + myBuilder.UpdateEdge( EKeep, pc2, pc, F, tol); + + } // loop on a Faces where a replaced edge exists + + + // 2. update edge images according to replacement + if (myImagesEdges.HasImage( E )) + myImagesEdges.Remove( E ); + myImagesEdges.Bind( E, EKeep ); + + } // loop on a list of equal edges EEL + } // loop on a map of equal edges EEM } //======================================================================= @@ -1454,24 +1663,46 @@ void Partition_Spliter::KeepShapesInside (const TopoDS_Shape& S) // build map of internal faces TopTools_IndexedMapOfShape MIF; - - // if S is not a tool, make sure that split faces of S are in MIF - if (!isTool) - TopExp::MapShapes( myImageShape.Image(S).First(), TopAbs_FACE, MIF); - - TopoDS_Shape InsFacesComp = FindFacesInside( S, Standard_False, Standard_True); - TopExp::MapShapes( InsFacesComp, TopAbs_FACE, MIF ); - + TopoDS_Shape IntFacesComp = FindFacesInside( S, Standard_False, Standard_True); + TopExp::MapShapes( IntFacesComp, TopAbs_FACE, MIF ); TopoDS_Compound C; myBuilder.MakeCompound(C); - // leave in the result only those shapes having a face in MIF - for (it.Initialize( myShape ); it.More(); it.Next()) { + TopAbs_ShapeEnum anInternalShapeType = TopAbs_SHAPE; + if (!MIF.IsEmpty()) + { + // leave in the result only those shapes having a face in MIF + for (it.Initialize( myShape ); it.More(); it.Next()) { + const TopoDS_Shape & aResShape = it.Value(); + TopExp_Explorer expResF( aResShape, TopAbs_FACE ); + for (; expResF.More(); expResF.Next()) { + if ( MIF.Contains( expResF.Current())) { + myBuilder.Add( C, aResShape ); + if (aResShape.ShapeType() < anInternalShapeType) + anInternalShapeType = aResShape.ShapeType(); + break; + } + } + } + } - TopExp_Explorer expResF( it.Value(), TopAbs_FACE ); - for (; expResF.More(); expResF.Next()) { - if ( MIF.Contains( expResF.Current())) { + // may be S was not split by internal faces then it is missing + // in myShape, add it + if (!isTool && + (anInternalShapeType > TopAbs_SOLID || S.ShapeType() > TopAbs_SOLID)) + { + TopTools_IndexedMapOfShape MSF; // map of split faces of S + TopExp::MapShapes( myImageShape.Image(S).First(), TopAbs_FACE, MSF); + + // find a shape having all faces in MSF + for (it.Initialize( myShape ); it.More(); it.Next()) { + TopExp_Explorer expResF( it.Value(), TopAbs_FACE ); + for (; expResF.More(); expResF.Next()) { + if (! MSF.Contains( expResF.Current())) + break; + } + if (! expResF.More()) { myBuilder.Add( C, it.Value() ); break; } @@ -1500,9 +1731,9 @@ void Partition_Spliter::RemoveShapesInside (const TopoDS_Shape& S) if (!isTool) return; } - TopoDS_Shape InsFacesComp = FindFacesInside( S, Standard_False, Standard_True); + TopoDS_Shape IntFacesComp = FindFacesInside( S, Standard_False, Standard_True); TopTools_IndexedMapOfShape MIF; // map of internal faces - TopExp::MapShapes( InsFacesComp, TopAbs_FACE, MIF); + TopExp::MapShapes( IntFacesComp, TopAbs_FACE, MIF); if (MIF.IsEmpty()) return; @@ -1637,7 +1868,11 @@ Standard_Boolean Partition_Spliter::CheckTool(const TopoDS_Shape& S) Standard_Boolean hasSectionE = myInter3d.HasSectionEdge( F ); Standard_Boolean hasNewE = myAsDes->HasDescendant( F ); if (!hasSectionE && !hasNewE) - continue; // F intersects nothing + { + // F intersects nothing + myBuilder.Add( C, F ); + continue; + } // make an image for F @@ -1683,3 +1918,228 @@ Standard_Boolean Partition_Spliter::CheckTool(const TopoDS_Shape& S) return isTool; } + +//======================================================================= +//function : IsInside +//purpose : Return True if the first vertex of S1 inside S2. +// If S1.IsNull(), check infinite point against S2. +//======================================================================= + +Standard_Boolean Partition_Spliter::IsInside (const TopoDS_Shape& theS1, + const TopoDS_Shape& theS2) +{ + BRepClass3d_SolidClassifier aClassifier( theS2 ); + + TopExp_Explorer expl( theS1, TopAbs_VERTEX ); + if (!expl.More()) + aClassifier.PerformInfinitePoint( ::RealSmall()); + else + { + const TopoDS_Vertex & aVertex = TopoDS::Vertex( expl.Current() ); + aClassifier.Perform (BRep_Tool::Pnt( aVertex ), + BRep_Tool::Tolerance( aVertex )); + } + + return ( aClassifier.State() == TopAbs_IN ); +} + +//======================================================================= +//function : GetOriginalShape +//purpose : Return the shape aShape originates from. aShape +// should be a face or more complex result shape +//======================================================================= + +TopoDS_Shape Partition_Spliter::GetOriginalShape(const TopoDS_Shape& theShape) const +{ + TopoDS_Shape anOrigShape; + + TopExp_Explorer expl( theShape, TopAbs_FACE); + if (expl.More()) + { + + TopoDS_Shape aFace = expl.Current(); + if (myImagesFaces.IsImage( aFace )) + aFace = myImagesFaces.Root( aFace ); + anOrigShape = myFaceShapeMap.Find( aFace ); + } + return anOrigShape; +} + +//======================================================================= +//function : FindToolsToReconstruct +//purpose : find and store as objects tools which interfere +// with solids or are inside solids without +// an interference +//======================================================================= + +void Partition_Spliter::FindToolsToReconstruct() +{ + if (myMapTools.IsEmpty()) + return; + + Standard_Integer nbFoundTools = 0; + + // build edge - face map in order to detect interference with section edges + TopTools_IndexedDataMapOfShapeListOfShape EFM; + TopTools_MapIteratorOfMapOfShape aMapIt; + for (aMapIt.Initialize(myMapTools); aMapIt.More(); aMapIt.Next()) + TopExp::MapShapesAndAncestors( aMapIt.Key(), TopAbs_EDGE, TopAbs_FACE, EFM); + for (aMapIt.Initialize(myMapFaces); aMapIt.More(); aMapIt.Next()) + TopExp::MapShapesAndAncestors( aMapIt.Key(), TopAbs_EDGE, TopAbs_FACE, EFM); + + TopTools_MapOfShape aCurrentSolids, aCheckedShapes; + + // faces cut by new edges + TopTools_MapOfShape & aSectionFaces = myInter3d.TouchedFaces(); + + // keep solids interfering with each other in aCurrentSolids map + // and add tool faces intersecting solids as object shapes + + TopTools_ListIteratorOfListOfShape itS, itF, itCF, itE; + for (itS.Initialize( myListShapes ); itS.More(); itS.Next()) { + TopExp_Explorer expSo (itS.Value(), TopAbs_SOLID); + for (; expSo.More(); expSo.Next()) { + + // check if a solid has been already processed + const TopoDS_Shape & aSo = expSo.Current(); + if (!aCheckedShapes.Add( aSo )) + continue; + aCurrentSolids.Add( aSo ); + + // faces to check + TopTools_ListOfShape aFacesToCheck; + TopExp_Explorer exp( aSo, TopAbs_FACE ); + for ( ; exp.More(); exp.Next()) + aFacesToCheck.Append ( exp.Current()); + + // add other shapes interefering with a solid. + // iterate faces to check while appending new ones + for (itCF.Initialize (aFacesToCheck) ; itCF.More(); itCF.Next()) + { + const TopoDS_Shape& aCheckFace = itCF.Value(); +// if (!aCheckedShapes.Add( aCheckFace )) +// continue; + + // find faces interfering with aCheckFace + TopTools_ListOfShape anIntFaces; + + // ** 1. faces intersecting aCheckFace with creation of new edges on it + if ( myAsDes->HasDescendant( aCheckFace )) + { + // new edges on aCheckFace + const TopTools_ListOfShape& NEL = myAsDes->Descendant( aCheckFace ); + for (itE.Initialize( NEL); itE.More(); itE.Next()) + { + const TopoDS_Shape & aNewEdge = itE.Value(); + if (!aCheckedShapes.Add( aNewEdge )) + continue; + + // faces interfering by aNewEdge + itF.Initialize (myAsDes->Ascendant( aNewEdge )); + for (; itF.More(); itF.Next()) + if (aCheckFace != itF.Value()) + anIntFaces.Append( itF.Value() ); + + // ** 2. faces having section edge aNewEdge on aFacesToCheck + if (EFM.Contains( aNewEdge)) + { + itF.Initialize ( EFM.FindFromKey (itE.Value())); + for (; itF.More(); itF.Next()) + if (aCheckFace != itF.Value()) + anIntFaces.Append( itF.Value() ); + } + } + } + + // ** 3. faces cut by edges of aCheckFace + TopExp_Explorer expE (aCheckFace, TopAbs_EDGE); + for ( ; expE.More(); expE.Next()) + { + const TopoDS_Shape & aCheckEdge = expE.Current(); + if (aCheckedShapes.Add( aCheckEdge ) && + myInter3d.IsSectionEdge( TopoDS::Edge( aCheckEdge ))) + { + itF.Initialize( myInter3d.SectionEdgeFaces( TopoDS::Edge( aCheckEdge ))); + for (; itF.More(); itF.Next()) + if (aCheckFace != itF.Value()) + anIntFaces.Append( itF.Value() ); + } + } + + // process faces interfering with aCheckFace and shapes they + // belong to + for (itF.Initialize (anIntFaces); itF.More(); itF.Next()) + { + const TopoDS_Shape & F = itF.Value(); + if (! aCheckedShapes.Add( F )) + continue; + + Standard_Boolean isTool = myMapTools.Contains( F ); + if (isTool && + myFaceShapeMap( aCheckFace ).ShapeType() == TopAbs_SOLID ) + { + // a tool interfering with a solid + if (aSectionFaces.Contains( F )) + AddShape( F ); + ++ nbFoundTools; + if (nbFoundTools == myMapTools.Extent()) + return; + } + + const TopoDS_Shape & S = myFaceShapeMap( F ); + if (aCheckedShapes.Add( S )) + { + // a new shape interefering with aCurrentSolids is found + if (!isTool && S.ShapeType() == TopAbs_SOLID) + aCurrentSolids.Add ( S ); + // add faces to aFacesToCheck list + for ( exp.Init( S, TopAbs_FACE ); exp.More(); exp.Next()) + aFacesToCheck.Append ( exp.Current() ); + } + } + } // loop on aFacesToCheck + + // Here aCurrentSolids contains all solids interfering with each other. + // aCheckedShapes contains all faces belonging to shapes included + // in or interfering with aCurrentSolids or previously checked solids. + // Test if tool faces that do not interefere with other shapes are + // wrapped by any of aCurrentSolids + + TopTools_MapIteratorOfMapOfShape aSolidIt (aCurrentSolids); + for ( ; aSolidIt.More(); aSolidIt.Next()) + { + const TopoDS_Shape & aSolid = aSolidIt.Key(); + TopTools_MapOfShape aCheckedTools( myMapTools.Extent() ); + + TopTools_MapIteratorOfMapOfShape aToolIt (myMapTools); + for ( ; aToolIt.More(); aToolIt.Next()) + { + const TopoDS_Shape & aToolFace = aToolIt.Key(); + if (aCheckedShapes.Contains( aToolFace ) || // already found + aCheckedTools.Contains( aToolFace )) // checked against aSolid + continue; + + const TopoDS_Shape & aToolShape = myFaceShapeMap( aToolFace ); + TopExp_Explorer aToolFaceIt( aToolShape, TopAbs_FACE ); + + Standard_Boolean isInside = IsInside( aToolShape, aSolid ); + for ( ; aToolFaceIt.More(); aToolFaceIt.Next() ) + { + const TopoDS_Shape & aTool = aToolFaceIt.Current(); + aCheckedTools.Add( aTool ); + if (isInside) + { + if (aSectionFaces.Contains( aTool )) + AddShape( aTool ); + ++ nbFoundTools; + if (nbFoundTools == myMapTools.Extent()) + return; + aCheckedShapes.Add( aTool ); + } + } + } + } + + } // loop on solid shapes + } +} diff --git a/src/PARTITION/Partition_Spliter.hxx b/src/PARTITION/Partition_Spliter.hxx index bb26915c1..61700cecb 100644 --- a/src/PARTITION/Partition_Spliter.hxx +++ b/src/PARTITION/Partition_Spliter.hxx @@ -1,30 +1,12 @@ // 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// Copyright (C) 2003 CEA/DEN, EDF R&D // // // // File : Partition_Spliter.hxx // Module : GEOM - #ifndef _Partition_Spliter_HeaderFile #define _Partition_Spliter_HeaderFile @@ -119,12 +101,16 @@ private: // Methods PRIVATE // +Standard_EXPORT void MakeSolids(const TopoDS_Shape& Solid,TopTools_ListOfShape& Shells) ; Standard_EXPORT void MakeShells(const TopoDS_Shape& S,TopTools_ListOfShape& NS) ; Standard_EXPORT TopoDS_Shape MakeFaces(const TopoDS_Shape& S) ; Standard_EXPORT void MakeEdges(const TopoDS_Edge& E,const TopTools_ListOfShape& VOnE,TopTools_ListOfShape& NE) const; Standard_EXPORT TopoDS_Shape FindFacesInside(const TopoDS_Shape& S,const Standard_Boolean CheckClosed = Standard_False,const Standard_Boolean All = Standard_False) ; Standard_EXPORT Standard_Boolean CheckTool(const TopoDS_Shape& S) ; Standard_EXPORT void MergeEqualEdges(const TopTools_ListOfShape& LE) ; +Standard_EXPORT static Standard_Boolean IsInside(const TopoDS_Shape& S1,const TopoDS_Shape& S2) ; +Standard_EXPORT TopoDS_Shape GetOriginalShape(const TopoDS_Shape& aShape) const; +Standard_EXPORT void FindToolsToReconstruct() ; // Fields PRIVATE @@ -135,17 +121,19 @@ BRep_Builder myBuilder; TopTools_ListOfShape myListShapes; TopTools_MapOfShape myMapFaces; TopTools_MapOfShape myMapTools; -TopTools_DataMapOfShapeShape myFaceShapeMap; +TopTools_MapOfShape myEqualEdges; TopTools_MapOfShape myNewSection; +TopTools_MapOfShape myClosedShapes; +TopTools_MapOfShape myWrappingSolid; +TopTools_DataMapOfShapeShape myFaceShapeMap; +TopTools_DataMapOfShapeShape myInternalFaces; +TopTools_DataMapOfShapeShape myIntNotClFaces; Handle_BRepAlgo_AsDes myAsDes; BRepAlgo_Image myImagesFaces; BRepAlgo_Image myImagesEdges; BRepAlgo_Image myImageShape; Partition_Inter3d myInter3d; TopTools_MapOfOrientedShape myAddedFacesMap; -TopTools_MapOfShape myEqualEdges; -TopTools_DataMapOfShapeShape myInternalFaces; -TopTools_DataMapOfShapeShape myIntNotClFaces; }; diff --git a/src/SKETCHER/Makefile.in b/src/SKETCHER/Makefile.in index 9de74619f..861c45973 100644 --- a/src/SKETCHER/Makefile.in +++ b/src/SKETCHER/Makefile.in @@ -47,7 +47,7 @@ EXPORT_HEADERS= GEOM_Sketcher.h \ # additionnal information to compil and link file CPPFLAGS += $(OCC_INCLUDES) $(QT_INCLUDES) CXXFLAGS += $(OCC_CXXFLAGS) -LDFLAGS += $(OCC_LIBS) +LDFLAGS += $(QT_LIBS) $(CAS_LDPATH) -lTKTopAlgo # additional file to be cleaned MOSTLYCLEAN = diff --git a/src/diffs b/src/diffs new file mode 100644 index 000000000..25456e0f6 --- /dev/null +++ b/src/diffs @@ -0,0 +1,5385 @@ +diff -r ../src/ARCHIMEDE/Archimede_VolumeSection.cxx ../../../GEOM_SRC/src/ARCHIMEDE/Archimede_VolumeSection.cxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/ARCHIMEDE/Archimede_VolumeSection.hxx ../../../GEOM_SRC/src/ARCHIMEDE/Archimede_VolumeSection.hxx +27c27 +< // $Header$ +--- +> // $Header$ +Only in ../../../GEOM_SRC/src/ARCHIMEDE: CVS +diff -r ../src/ARCHIMEDE/Makefile.in ../../../GEOM_SRC/src/ARCHIMEDE/Makefile.in +27c27 +< # $Header$ +--- +> # $Header$ +30c30 +< top_builddir=../../.. +--- +> top_builddir=../.. +39c39 +< LIB = libGeometryArchimede.la +--- +> LIB = libGEOMArchimede.la +47,49c47,49 +< CPPFLAGS += $(OCC_INCLUDES) $(QT_INCLUDES) +< CXXFLAGS += $(OCC_CXXFLAGS) +< LDFLAGS += $(CAS_LDPATH) -lTKGeomBase +--- +> CPPFLAGS += $(OCC_INCLUDES) $(QT_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome +> CXXFLAGS += $(OCC_CXXFLAGS) -I${KERNEL_ROOT_DIR}/include/salome +> LDFLAGS += $(OCC_KERNEL_LIBS) $(OCC_MODELER_LIBS) -L${KERNEL_ROOT_DIR}/lib/salome +Only in ../../../GEOM_SRC/src/: CVS +Only in ../src/: diffs +Only in ../../../GEOM_SRC/src/GEOM: CVS +diff -r ../src/GEOM/geom.cxx ../../../GEOM_SRC/src/GEOM/geom.cxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOM/GEOM_Gen_i.cc ../../../GEOM_SRC/src/GEOM/GEOM_Gen_i.cc +27c27 +< // $Header$ +--- +> // $Header$ +45a46 +> #include +57,59d57 +< #if OCC_VERSION_MAJOR >= 5 +< #include +< #else +61d58 +< #endif +156,163d152 +< 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 +< } +< +775,781c764,765 +< 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() ; +--- +> GEOM::GEOM_Shape_var shapeIOR = GEOM::GEOM_Shape::_narrow(_orb->string_to_object(stringIOR)) ; +> return shapeIOR ; +1465c1449 +< if( tds.IsNull() || !IsValid(tds) ) +--- +> if( tds.IsNull() || !BRepAlgoAPI::IsValid(tds) ) +1571c1555 +< if( outW.IsNull() || !IsValid(outW) ) +--- +> if( outW.IsNull() || !BRepAlgoAPI::IsValid(outW) ) +1631c1615 +< if( !IsValid(aShape) ) +--- +> if( !BRepAlgoAPI::IsValid(aShape) ) +1644c1628 +< if( !IsValid(aFace) ) +--- +> if( !BRepAlgoAPI::IsValid(aFace) ) +1655c1639 +< if( !IsValid(aWire) ) +--- +> if( !BRepAlgoAPI::IsValid(aWire) ) +1660c1644 +< if( outerW.IsNull() || !IsValid(outerW) ) +--- +> if( outerW.IsNull() || !BRepAlgoAPI::IsValid(outerW) ) +1674c1658 +< if( !GetShapeFromIndex( aShape, TopAbs_FACE, ListIdEndFace[0], aTemp ) || tmp.IsNull() || !IsValid(aTemp) ) +--- +> if( !GetShapeFromIndex( aShape, TopAbs_FACE, ListIdEndFace[0], aTemp ) || tmp.IsNull() || !BRepAlgoAPI::IsValid(aTemp) ) +1684c1668 +< if( !W.IsNull() && IsValid(W) ) +--- +> if( !W.IsNull() && BRepAlgoAPI::IsValid(W) ) +1835c1819 +< if( !IsValid(F) ) { +--- +> if( !BRepAlgoAPI::IsValid(F) ) { +1866c1850 +< if( outerW.IsNull() || !IsValid(outerW) ) { +--- +> if( outerW.IsNull() || !BRepAlgoAPI::IsValid(outerW) ) { +2373c2357 +< if( !IsValid(shape) ) { +--- +> if( !BRepAlgoAPI::IsValid(shape) ) { +2427c2411 +< if( !IsValid(shape) ) { +--- +> if( !BRepAlgoAPI::IsValid(shape) ) { +2568,2569d2551 +< +< +2598,2599d2579 +< +< +2883c2863 +< if( !IsValid(tds) ) { +--- +> if( !BRepAlgoAPI::IsValid(tds) ) { +3027c3007 +< if( !IsValid(tds) ) { +--- +> if( !BRepAlgoAPI::IsValid(tds) ) { +3319c3299 +< if( !IsValid(tds) ) { +--- +> if( !BRepAlgoAPI::IsValid(tds) ) { +3358c3338 +< if( !IsValid(tds) ) { +--- +> if( !BRepAlgoAPI::IsValid(tds) ) { +3731a3712,3746 +> // 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) +> { +> 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 ; +> } +> +> //================================================================================ +4377c4392 +< if ( !IsValid(tds) ) { +--- +> if ( !BRepAlgoAPI::IsValid(tds) ) { +4911,4915c4926,4930 +< PortableServer::ObjectId * GeometryEngine_factory(CORBA::ORB_ptr orb, +< PortableServer::POA_ptr poa, +< PortableServer::ObjectId * contId, +< const char *instanceName, +< const char * interfaceName) +--- +> PortableServer::ObjectId * GEOMEngine_factory(CORBA::ORB_ptr orb, +> PortableServer::POA_ptr poa, +> PortableServer::ObjectId * contId, +> const char *instanceName, +> const char * interfaceName) +4917d4931 +< MESSAGE("mygeom") +4919d4932 +< MESSAGE("mygeom") +4921d4933 +< MESSAGE("mygeom") +diff -r ../src/GEOM/GEOM_Gen_i.hh ../../../GEOM_SRC/src/GEOM/GEOM_Gen_i.hh +27c27 +< // $Header$ +--- +> // $Header$ +569a570,574 +> GEOM::GEOM_Shape_ptr MakeEllipse(const GEOM::PointStruct& pstruct, +> const GEOM::DirStruct& dstruct, +> CORBA::Double radius_major, +> CORBA::Double radiusminus ) +> throw (SALOME::SALOME_Exception) ; +diff -r ../src/GEOM/GEOM_Shape_i.cc ../../../GEOM_SRC/src/GEOM/GEOM_Shape_i.cc +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOM/GEOM_Shape_i.hh ../../../GEOM_SRC/src/GEOM/GEOM_Shape_i.hh +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOM/Makefile.in ../../../GEOM_SRC/src/GEOM/Makefile.in +27c27 +< # $Header$ +--- +> # $Header$ +30c30 +< top_builddir=../../.. +--- +> top_builddir=../.. +39c39 +< LIB = libGeometryEngine.la +--- +> LIB = libGEOMEngine.la +41c41 +< LIB_SERVER_IDL = SALOME_Component.idl SALOMEDS.idl SALOME_Exception.idl GEOM_Gen.idl GEOM_Shape.idl +--- +> LIB_SERVER_IDL = SALOME_Component.idl SALOMEDS.idl SALOME_Exception.idl GEOM_Gen.idl GEOM_Shape.idl +52,54c52,54 +< CPPFLAGS += $(OCC_INCLUDES) +< CXXFLAGS += $(OCC_CXXFLAGS) +< LDFLAGS += -lGeometryDS -lTOOLSDS -lSalomeNS -lSalomeContainer -lGeometryPartition -lGeometryArchimede $(CAS_LDPATH) -lTKIGES -lTKSTEP -lTKFillet -lTKOffset +--- +> CPPFLAGS += $(OCC_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome +> CXXFLAGS += $(OCC_CXXFLAGS) -I${KERNEL_ROOT_DIR}/include/salome +> LDFLAGS += $(OCC_KERNEL_LIBS) $(OCC_MODELER_LIBS) $(OCC_DATAEXCHANGE_LIBS) -lGEOMDS -lSalomeDS -lSalomeNS -lSalomeContainer -lGEOMPartition -lGEOMArchimede -L${KERNEL_ROOT_DIR}/lib/salome +Only in ../../../GEOM_SRC/src/GEOMClient: CVS +diff -r ../src/GEOMClient/GEOM_Client.cxx ../../../GEOM_SRC/src/GEOMClient/GEOM_Client.cxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMClient/GEOM_Client.hxx ../../../GEOM_SRC/src/GEOMClient/GEOM_Client.hxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMClient/Makefile.in ../../../GEOM_SRC/src/GEOMClient/Makefile.in +27c27 +< # $Header$ +--- +> # $Header$ +30c30 +< top_builddir=../../.. +--- +> top_builddir=../.. +43c43 +< LIB = libGeometryClient.la +--- +> LIB = libGEOMClient.la +54,56c54,56 +< CPPFLAGS += $(OCC_INCLUDES) +< CXXFLAGS += $(OCC_CXXFLAGS) +< LDFLAGS += $(CAS_LDPATH) -lTKTopAlgo +--- +> CPPFLAGS += $(OCC_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome +> CXXFLAGS += $(OCC_CXXFLAGS) -I${KERNEL_ROOT_DIR}/include/salome +> LDFLAGS += $(OCC_KERNEL_LIBS) $(OCC_MODELER_LIBS) -L${KERNEL_ROOT_DIR}/lib/salome +Only in ../../../GEOM_SRC/src/GEOMDS: CVS +diff -r ../src/GEOMDS/GEOMDS_Application.cxx ../../../GEOM_SRC/src/GEOMDS/GEOMDS_Application.cxx +27c27 +< // $Header$ +--- +> // $Header$ +60c60 +< return Standard_CString ("Resources"); +--- +> return Standard_CString ("GEOMDS_Resources"); +diff -r ../src/GEOMDS/GEOMDS_Commands.cxx ../../../GEOM_SRC/src/GEOMDS/GEOMDS_Commands.cxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMDS/GEOMDS_Commands.hxx ../../../GEOM_SRC/src/GEOMDS/GEOMDS_Commands.hxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMDS/GEOMDS_Explorer.cxx ../../../GEOM_SRC/src/GEOMDS/GEOMDS_Explorer.cxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMDS/Makefile.in ../../../GEOM_SRC/src/GEOMDS/Makefile.in +27c27 +< # $Header$ +--- +> # $Header$ +30c30 +< top_builddir=../../.. +--- +> top_builddir=../.. +39c39 +< LIB = libGeometryDS.la +--- +> LIB = libGEOMDS.la +64,66c64,66 +< CPPFLAGS += $(OCC_INCLUDES) +< CXXFLAGS += $(OCC_CXXFLAGS) +< LDFLAGS += $(CAS_LDPATH) -lTKCAF +--- +> CPPFLAGS += $(OCC_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome +> CXXFLAGS += $(OCC_CXXFLAGS) -I${KERNEL_ROOT_DIR}/include/salome +> LDFLAGS += $(OCC_KERNEL_LIBS) $(OCC_OCAF_LIBS) +Only in ../../../GEOM_SRC/src/GEOMFiltersSelection: CVS +diff -r ../src/GEOMFiltersSelection/GEOM_EdgeFilter.cxx ../../../GEOM_SRC/src/GEOMFiltersSelection/GEOM_EdgeFilter.cxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMFiltersSelection/GEOM_FaceFilter.cxx ../../../GEOM_SRC/src/GEOMFiltersSelection/GEOM_FaceFilter.cxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.cxx ../../../GEOM_SRC/src/GEOMFiltersSelection/GEOM_ShapeTypeFilter.cxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMFiltersSelection/Makefile.in ../../../GEOM_SRC/src/GEOMFiltersSelection/Makefile.in +27c27 +< # $Header$ +--- +> # $Header$ +30c30 +< top_builddir=../../.. +--- +> top_builddir=../.. +39c39 +< LIB = libGeometryFiltersSelection.la +--- +> LIB = libGEOMFiltersSelection.la +55,57c55,57 +< CPPFLAGS += $(OCC_INCLUDES) $(QT_INCLUDES) $(PYTHON_INCLUDES) $(VTK_INCLUDES) +< CXXFLAGS += $(OCC_CXXFLAGS) +< LDFLAGS += -lSalomeGUI +--- +> CPPFLAGS += $(OCC_INCLUDES) $(QT_INCLUDES) $(PYTHON_INCLUDES) $(VTK_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome +> CXXFLAGS += $(OCC_CXXFLAGS) -I${KERNEL_ROOT_DIR}/include/salome +> LDFLAGS += $(OCC_KERNEL_LIBS) -L${KERNEL_ROOT_DIR}/lib/salome +Only in ../../../GEOM_SRC/src/GEOMGUI: CVS +diff -r ../src/GEOMGUI/GeometryGUI_aParameterDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_aParameterDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_aParameterDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_aParameterDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_ArcDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_ArcDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +61,62c61,62 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_ARC"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_ARC"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +211c211 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_ArcDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_ArcDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_ArchimedeDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_ArchimedeDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +64,65c64,65 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_ARCHIMEDE"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_ARCHIMEDE"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +247c247 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_ArchimedeDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_ArchimedeDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_BndBoxDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_BndBoxDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +63,64c63,64 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_BOUNDING_BOX"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_BOUNDING_BOX"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +256c256 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_BndBoxDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_BndBoxDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_BoxDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_BoxDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +68,70c68,70 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_BOX_2P"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +< QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_BOX_DXYZ"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_BOX_2P"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +> QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_BOX_DXYZ"))); +265c265 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_BoxDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_BoxDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_CenterMassDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_CenterMassDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +59,60c59,60 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_CENTERMASS"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_CENTERMASS"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +246c246 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_ChamferDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_ChamferDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +79,82c79,82 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_CHAMFER_ALL"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +< QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_CHAMFER_EDGE"))); +< QPixmap image3(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_CHAMFER_FACE"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_CHAMFER_ALL"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +> QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_CHAMFER_EDGE"))); +> QPixmap image3(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_CHAMFER_FACE"))); +411c411 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_ChamferDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_ChamferDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_CheckShape.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_CheckShape.cxx +27c27 +< // $Header$ +--- +> // $Header$ +66,67c66,67 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_CHECKSHAPE"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_CHECKSHAPE"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +192c192 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_CheckShape.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_CheckShape.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_CircleDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_CircleDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +64,65c64,65 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_CIRCLE_PV"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_CIRCLE_PV"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +213c213 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_CircleDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_CircleDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_CommonDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_CommonDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +62,63c62,63 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_COMMON"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_COMMON"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +200c200 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_CommonDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_CommonDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_CompoundDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_CompoundDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +60,61c60,61 +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_BUILD_COMPOUND"))); +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_BUILD_COMPOUND"))); +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +183c183 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_CompoundDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_CompoundDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_ConeDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_ConeDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +64,66c64,66 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_CONE_PV"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +< QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_CONE_DXYZ"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_CONE_PV"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +> QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_CONE_DXYZ"))); +307c307 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_ConeDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_ConeDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_CutDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_CutDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +63,64c63,64 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_CUT"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_CUT"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +201c201 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_CutDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_CutDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI.cxx +27c27 +< // $Header$ +--- +> // $Header$ +181a182 +> #include "GeometryGUI_EllipseDlg.h" // Method ELLIPSE +361c362 +< Engines::Component_var comp = desktop->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = desktop->getEngine("FactoryServer", "GEOM"); +719c720 +< GEOM::GEOM_Shape_var aShape ; +--- +> GEOM::GEOM_Shape_ptr aShape ; +721c722 +< +--- +> +729,734c730,735 +< if (obj->FindAttribute(anAttr, "AttributeIOR")) { +< anIOR = SALOMEDS::AttributeIOR::_narrow(anAttr); +< aShape = myComponentGeom->GetIORFromString(anIOR->Value()) ; +< if(!CORBA::is_nil(aShape)) testResult = true ; +< return aShape._retn(); +< } +--- +> if (obj->FindAttribute(anAttr, "AttributeIOR")) { +> anIOR = SALOMEDS::AttributeIOR::_narrow(anAttr); +> aShape = myComponentGeom->GetIORFromString(anIOR->Value()) ; +> testResult = true ; +> return aShape; +> } +740a742 +> testResult = true ; +742,745c744,746 +< if(!CORBA::is_nil(aShape)) testResult = true ; +< return aShape._retn(); +< } +< return aShape._retn(); +--- +> return aShape; +> } +> return aShape ; +1785a1787,1815 +> //===================================================================================== +> // function : MakeEllipseAndDisplay() +> // purpose : +> //===================================================================================== +> void GeometryGUI::MakeEllipseAndDisplay( const gp_Pnt CenterPoint, +> const gp_Dir dir, +> const Standard_Real Major_Radius, +> const Standard_Real Minor_Radius ) +> { +> try { +> GEOM::PointStruct pstruct = myComponentGeom->MakePointStruct( CenterPoint.X(), CenterPoint.Y(), CenterPoint.Z() ) ; +> GEOM::PointStruct d = myComponentGeom->MakePointStruct( dir.X(), dir.Y(), dir.Z() ) ; +> GEOM::DirStruct dstruct = myComponentGeom->MakeDirection(d) ; +> +> GEOM::GEOM_Shape_var result = myComponentGeom->MakeEllipse(pstruct, dstruct, Major_Radius, Minor_Radius) ; +> if ( result->_is_nil() ) { +> myDesktop->putInfo(tr("GEOM_PRP_ABORT") ); +> return ; +> } +> result->NameType(tr("GEOM_ELLIPSE")); +> if ( Display( result ) ) +> myDesktop->putInfo(tr("GEOM_PRP_DONE")); +> } +> catch (const SALOME::SALOME_Exception& S_ex) { +> QtCatchCorbaException(S_ex); +> } +> return ; +> } +> +3298a3329,3336 +> case 3014: // ELLIPSE +> { +> GeomGUI->EmitSignalDeactivateDialog() ; +> SALOME_Selection* Sel = SALOME_Selection::Selection( GeomGUI->myActiveStudy->getSelection() ); +> GeometryGUI_EllipseDlg *aDlg = new GeometryGUI_EllipseDlg( parent, "", Sel ) ; +> break ; +> } +> +4219c4257 +< Engines::Component_var comp = GeomGUI->myDesktop->getEngine("FactoryServer","Geometry"); +--- +> Engines::Component_var comp = GeomGUI->myDesktop->getEngine("FactoryServer","GEOM"); +5014c5052,5053 +< aName->SetValue( tr("GEOM_MEN_COMPONENT") ); +--- +> // aName->SetValue( tr("GEOM_MEN_COMPONENT") ); +> aName->SetValue( QAD_Application::getDesktop()->getComponentUserName( "GEOM" ) ); +5218c5257,5258 +< aName->SetValue( tr("GEOM_MEN_COMPONENT") ); +--- +> // aName->SetValue( tr("GEOM_MEN_COMPONENT") ); +> aName->SetValue( QAD_Application::getDesktop()->getComponentUserName( "GEOM" ) ); +5332c5372,5373 +< aName->SetValue( tr("GEOM_MEN_COMPONENT") ); +--- +> // aName->SetValue( tr("GEOM_MEN_COMPONENT") ); +> aName->SetValue( QAD_Application::getDesktop()->getComponentUserName( "GEOM" ) ); +diff -r ../src/GEOMGUI/GeometryGUI_CylinderDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_CylinderDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +63,65c63,65 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_CYLINDER_PV"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +< QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_CYLINDER_DXYZ"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_CYLINDER_PV"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +> QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_CYLINDER_DXYZ"))); +286c286 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_CylinderDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_CylinderDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_DistanceDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_DistanceDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +74,75c74,75 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_MINDIST"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_MINDIST"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +224c224 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_DistanceDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_DistanceDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_EdgeDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_EdgeDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +62,63c62,63 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_BUILD_EDGE"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_BUILD_EDGE"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +201c201 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_EdgeDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_EdgeDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +Only in ../../../GEOM_SRC/src/GEOMGUI: GeometryGUI_EllipseDlg.cxx +Only in ../../../GEOM_SRC/src/GEOMGUI: GeometryGUI_EllipseDlg.h +diff -r ../src/GEOMGUI/GeometryGUI_FaceDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_FaceDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +63,64c63,64 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_BUILD_FACE"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_BUILD_FACE"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +193c193 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_FaceDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_FaceDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_FilletDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_FilletDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +78,81c78,81 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_FILLET_ALL"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +< QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_FILLET_EDGE"))); +< QPixmap image3(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_FILLET_FACE"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_FILLET_ALL"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +> QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_FILLET_EDGE"))); +> QPixmap image3(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_FILLET_FACE"))); +344c344 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_FilletDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_FilletDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_FillingDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_FillingDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +67,68c67,68 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_FILLING"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_FILLING"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +411c411 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_FillingDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_FillingDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_FillingHoleDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_FillingHoleDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +67,68c67,68 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_SEWING"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_SEWING"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +210c210 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_FillingHoleDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_FillingHoleDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_FuseDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_FuseDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +63,64c63,64 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_FUSE"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_FUSE"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +201c201 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_FuseDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_FuseDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI.h +27c27 +< // $Header$ +--- +> // $Header$ +168a169 +> void MakeEllipseAndDisplay( const gp_Pnt CenterPoint, const gp_Dir dir, const Standard_Real Major_Radius, const Standard_Real Minor_Radius) ; +Only in ../src/GEOMGUI: GeometryGUI_icons.po +diff -r ../src/GEOMGUI/GeometryGUI_InertiaDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_InertiaDlg.cxx +56,57c56,57 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_INERTIA"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_INERTIA"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +291c291 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_InertiaDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_InertiaDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_LineDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_LineDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +65,68c65,68 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_LINE_2P"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +< QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_LINE_PV"))); +< QPixmap image3(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_LINE_EDGE"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_LINE_2P"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +> QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_LINE_PV"))); +> QPixmap image3(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_LINE_EDGE"))); +207c207 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_LineDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_LineDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_MaxToleranceDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_MaxToleranceDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +67,68c67,68 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_TOLERANCE"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_TOLERANCE"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +266c266 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_MaxToleranceDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_MaxToleranceDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_MirrorDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_MirrorDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +68,69c68,69 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_MIRROR"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_MIRROR"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +204c204 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_MirrorDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_MirrorDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +Only in ../src/GEOMGUI: GeometryGUI_msg_en.po +Only in ../src/GEOMGUI: GeometryGUI_msg_fr.po +diff -r ../src/GEOMGUI/GeometryGUI_MultiRotationDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_MultiRotationDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +76,78c76,78 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_MULTIROTATION_SIMPLE"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +< QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_MULTIROTATION_DOUBLE"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_MULTIROTATION_SIMPLE"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +> QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_MULTIROTATION_DOUBLE"))); +380c380 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_MultiRotationDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_MultiRotationDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_MultiTranslationDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_MultiTranslationDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +72,74c72,74 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_MULTITRANSLATION_SIMPLE"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +< QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_MULTITRANSLATION_DOUBLE"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_MULTITRANSLATION_SIMPLE"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +> QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_MULTITRANSLATION_DOUBLE"))); +417c417 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_MultiTranslationDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_MultiTranslationDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_OrientationDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_OrientationDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +69,70c69,70 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_ORIENTATION"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_ORIENTATION"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +218c218 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_OrientationDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_OrientationDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_PartitionDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_PartitionDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +59,60c59,60 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_PARTITION"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_PARTITION"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +248c248 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_PartitionDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_PartitionDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_PipeDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_PipeDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +53,55d52 +< #if OCC_VERSION_MAJOR >= 5 +< #include +< #else +57d53 +< #endif +70,71c66,67 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_PIPE"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_PIPE"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +208c204 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +393,395d388 +< #if OCC_VERSION_MAJOR >= 5 +< if ( BRepAlgo::IsValid(tds) ) +< #else +397d389 +< #endif +diff -r ../src/GEOMGUI/GeometryGUI_PipeDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_PipeDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_PlaneDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_PlaneDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +73,76c73,76 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_PLANE_PV"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +< QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_PLANE_DXYZ"))); +< QPixmap image3(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_PLANE_FACE"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_PLANE_PV"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +> QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_PLANE_DXYZ"))); +> QPixmap image3(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_PLANE_FACE"))); +379c379 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_PlaneDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_PlaneDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_PointDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_PointDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +43,45d42 +< #if OCC_VERSION_MAJOR >= 5 +< #include +< #else +47d43 +< #endif +84,86c80,82 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_POINT"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +< QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_POINT_EDGE"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_POINT"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +> QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_POINT_EDGE"))); +285c281 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +770,772d765 +< #if OCC_VERSION_MAJOR >= 5 +< if( anEdge.IsNull() || !BRepAlgo::IsValid(anEdge) ) +< #else +774d766 +< #endif +diff -r ../src/GEOMGUI/GeometryGUI_PointDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_PointDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_PrismDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_PrismDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +69,70c69,70 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_PRISM"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_PRISM"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +231c231 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_PrismDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_PrismDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_PropertiesDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_PropertiesDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +63,64c63,64 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_BASICPROPERTIES"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_BASICPROPERTIES"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +209c209 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_RevolDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_RevolDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +65,66c65,66 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_REVOL"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_REVOL"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +229c229 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_RevolDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_RevolDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_RotationDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_RotationDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +66,67c66,67 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_ROTATION"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_ROTATION"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +224c224 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_RotationDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_RotationDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_ScaleDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_ScaleDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +64,65c64,65 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_SCALE"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_SCALE"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +211c211 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_ScaleDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_ScaleDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_SectionDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_SectionDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +63,64c63,64 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_SECTION"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_SECTION"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +199c199 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_SewingDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_SewingDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +63,64c63,64 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_SEWING"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_SEWING"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +199c199 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_SewingDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_SewingDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_ShellDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_ShellDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +60,61c60,61 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_SHELL"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_SHELL"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +180c180 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_ShellDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_ShellDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_SphereDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_SphereDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +66,68c66,68 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_SPHERE_P"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +< QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_SPHERE_DXYZ"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_SPHERE_P"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +> QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_SPHERE_DXYZ"))); +243c243 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_SphereDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_SphereDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_SpinBox.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_SpinBox.cxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_SpinBox.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_SpinBox.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_SubShapeDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_SubShapeDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +75,76c75,76 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_SUBSHAPE"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_SUBSHAPE"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +234c234 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_SubShapeDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_SubShapeDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_SuppressFacesDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_SuppressFacesDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +66,67c66,67 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_SUPRESS_FACE"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_SUPRESS_FACE"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +210c210 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_SuppressFacesDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_SuppressFacesDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_SuppressHoleDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_SuppressHoleDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +73,75c73,75 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_SUPRESS_HOLE"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +< QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_SUPRESS_HOLE_FACE_SHELL"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_SUPRESS_HOLE"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +> QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_SUPRESS_HOLE_FACE_SHELL"))); +310c310 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_SuppressHoleDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_SuppressHoleDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_Swig.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_Swig.cxx +27c27 +< // $Header$ +--- +> // $Header$ +62c62 +< GeometryGUI_Swig::GeometryGUI_Swig() +--- +> GEOM_Swig::GEOM_Swig() +67c67 +< GeometryGUI_Swig::~GeometryGUI_Swig() +--- +> GEOM_Swig::~GEOM_Swig() +72c72 +< void GeometryGUI_Swig::createAndDisplayGO(const char* Entry) +--- +> void GEOM_Swig::createAndDisplayGO(const char* Entry) +79c79 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +156c156 +< int GeometryGUI_Swig::getIndexTopology(const char* SubIOR, const char* IOR) +--- +> int GEOM_Swig::getIndexTopology(const char* SubIOR, const char* IOR) +158c158 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +181c181 +< const char* GeometryGUI_Swig::getShapeTypeString(const char* IOR) +--- +> const char* GEOM_Swig::getShapeTypeString(const char* IOR) +183c183 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +248c248 +< const char* GeometryGUI_Swig::getShapeTypeIcon(const char* IOR) +--- +> const char* GEOM_Swig::getShapeTypeIcon(const char* IOR) +250c250 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +281c281 +< void GeometryGUI_Swig::setDisplayMode(const char* Entry, int mode) +--- +> void GEOM_Swig::setDisplayMode(const char* Entry, int mode) +301c301 +< void GeometryGUI_Swig::setColor(const char* Entry, int red, int green, int blue) +--- +> void GEOM_Swig::setColor(const char* Entry, int red, int green, int blue) +321c321 +< void GeometryGUI_Swig::setTransparency(const char* Entry, float transp) +--- +> void GEOM_Swig::setTransparency(const char* Entry, float transp) +diff -r ../src/GEOMGUI/GeometryGUI_Swig.hxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_Swig.hxx +27c27 +< // $Header$ +--- +> // $Header$ +39c39 +< class GeometryGUI_Swig +--- +> class GEOM_Swig +42,43c42,43 +< GeometryGUI_Swig(); +< ~GeometryGUI_Swig(); +--- +> GEOM_Swig(); +> ~GEOM_Swig(); +diff -r ../src/GEOMGUI/GeometryGUI_Swig.i ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_Swig.i +27c27 +< // $Header$ +--- +> // $Header$ +33c33 +< class GeometryGUI_Swig +--- +> class GEOM_Swig +36,37c36,37 +< GeometryGUI_Swig(); +< ~GeometryGUI_Swig(); +--- +> GEOM_Swig(); +> ~GEOM_Swig(); +diff -r ../src/GEOMGUI/GeometryGUI_TorusDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_TorusDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +67,69c67,69 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_TORUS_PV"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +< QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_TORUS_DXYZ"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_TORUS_PV"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +> QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_TORUS_DXYZ"))); +287c287 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_TorusDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_TorusDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_TranslationDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_TranslationDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +65,66c65,66 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_TRANSLATION"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_TRANSLATION"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +241c241 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_TranslationDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_TranslationDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_TransparencyDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_TransparencyDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_VectorDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_VectorDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +69,71c69,71 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_VECTOR_2P"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +< QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_VECTOR_DXYZ"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_VECTOR_2P"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +> QPixmap image2(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_VECTOR_DXYZ"))); +269c269 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_VectorDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_VectorDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_WhatisDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_WhatisDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +71,72c71,72 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_WHATIS"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_WHATIS"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +190c190 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_WhatisDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_WhatisDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_WireDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_WireDlg.cxx +27c27 +< // $Header$ +--- +> // $Header$ +61,62c61,62 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_BUILD_WIRE"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_BUILD_WIRE"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +183c183 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +diff -r ../src/GEOMGUI/GeometryGUI_WireDlg.h ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_WireDlg.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/GEOMGUI/GeometryGUI_WorkingPlaneDlg.cxx ../../../GEOM_SRC/src/GEOMGUI/GeometryGUI_WorkingPlaneDlg.cxx +64,65c64,65 +< QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_DLG_WPLANE_FACE"))); +< QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GeometryGUI",tr("ICON_SELECT"))); +--- +> QPixmap image0(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_DLG_WPLANE_FACE"))); +> QPixmap image1(QAD_Desktop::getResourceManager()->loadPixmap( "GEOM",tr("ICON_SELECT"))); +186c186 +< Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "Geometry"); +--- +> Engines::Component_var comp = QAD_Application::getDesktop()->getEngine("FactoryServer", "GEOM"); +Only in ../../../GEOM_SRC/src/GEOMGUI: GEOM_icons.po +Only in ../../../GEOM_SRC/src/GEOMGUI: GEOM_msg_en.po +Only in ../../../GEOM_SRC/src/GEOMGUI: GEOM_msg_fr.po +diff -r ../src/GEOMGUI/Makefile.in ../../../GEOM_SRC/src/GEOMGUI/Makefile.in +27c27 +< # $Header$ +--- +> # $Header$ +30c30 +< top_builddir=../../.. +--- +> top_builddir=../.. +43,45c43,45 +< GeometryGUI_icons.po \ +< GeometryGUI_msg_en.po \ +< GeometryGUI_msg_fr.po +--- +> GEOM_icons.po \ +> GEOM_msg_en.po \ +> GEOM_msg_fr.po +48c48 +< LIB = libGeometryGUI.la +--- +> LIB = libGEOMGUI.la +101a102 +> GeometryGUI_EllipseDlg.cxx +155c156,157 +< GeometryGUI_SuppressHoleDlg.h +--- +> GeometryGUI_SuppressHoleDlg.h \ +> GeometryGUI_EllipseDlg.h +169,170c171,172 +< CPPFLAGS += $(QT_INCLUDES) $(VTK_INCLUDES) $(OGL_INCLUDES) $(OCC_INCLUDES) $(PYTHON_INCLUDES) +< CXXFLAGS += $(OCC_CXXFLAGS) +--- +> CPPFLAGS += $(QT_INCLUDES) $(VTK_INCLUDES) $(OGL_INCLUDES) $(OCC_INCLUDES) $(PYTHON_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome +> CXXFLAGS += $(OCC_CXXFLAGS) -I${KERNEL_ROOT_DIR}/include/salome +172c174 +< LDFLAGS += -lOCCViewer -lVTKViewer -lSalomeObject -lSalomeGUI -lGeometryClient -lGeometryObject -lGeometryFiltersSelection -lGeometrySketcher $(CAS_LDPATH) -lTKFillet -lTKOffset +--- +> LDFLAGS += -lOCCViewer -lVTKViewer -lSalomeObject -lSalomeGUI -lGEOMClient -lGEOMObject -lGEOMFiltersSelection -lGEOMSketcher $(OCC_KERNEL_LIBS) $(OCC_MODELER_LIBS) -L${KERNEL_ROOT_DIR}/lib/salome +diff -r ../src/GEOM_SWIG/batchmode_geompy.py ../../../GEOM_SRC/src/GEOM_SWIG/batchmode_geompy.py +10c10 +< # $Header$ +--- +> # $Header$ +12a13 +> import GEOM +14a16 +> modulecatalog = naming_service.Resolve("/Kernel/ModulCatalog") +16c18 +< geom = lcc.FindOrLoadComponent("FactoryServer", "Geometry") +--- +> geom = lcc.FindOrLoadComponent("FactoryServer", "GEOM") +25c27,31 +< FName.SetValue("Geometry") +--- +> # FName.SetValue("Geometry") +> +> Comp = modulecatalog.GetComponent( "GEOM" ) +> FName.SetValue( Comp._get_componentusername() ) +> +Only in ../../../GEOM_SRC/src/GEOM_SWIG: CVS +diff -r ../src/GEOM_SWIG/GEOM_example2.py ../../../GEOM_SRC/src/GEOM_SWIG/GEOM_example2.py +27c27 +< # $Header$ +--- +> # $Header$ +33c33 +< geom = salome.lcc.FindOrLoadComponent("FactoryServer", "Geometry") +--- +> geom = salome.lcc.FindOrLoadComponent("FactoryServer", "GEOM") +diff -r ../src/GEOM_SWIG/GEOM_example3.py ../../../GEOM_SRC/src/GEOM_SWIG/GEOM_example3.py +27c27 +< # $Header$ +--- +> # $Header$ +34c34 +< geom = salome.lcc.FindOrLoadComponent("FactoryServer", "Geometry") +--- +> geom = salome.lcc.FindOrLoadComponent("FactoryServer", "GEOM") +37c37 +< gg = salome.ImportComponentGUI("Geometry") +--- +> gg = salome.ImportComponentGUI("GEOM") +112c112 +< #gg.setColor(id_cage,255,255,0) +\ No newline at end of file +--- +> #gg.setColor(id_cage,255,255,0) +diff -r ../src/GEOM_SWIG/GEOM_example4.py ../../../GEOM_SRC/src/GEOM_SWIG/GEOM_example4.py +36c36 +< geom = salome.lcc.FindOrLoadComponent("FactoryServer", "Geometry") +--- +> geom = salome.lcc.FindOrLoadComponent("FactoryServer", "GEOM") +diff -r ../src/GEOM_SWIG/GEOM_example.py ../../../GEOM_SRC/src/GEOM_SWIG/GEOM_example.py +27c27 +< # $Header$ +--- +> # $Header$ +diff -r ../src/GEOM_SWIG/GEOM_moteur.py ../../../GEOM_SRC/src/GEOM_SWIG/GEOM_moteur.py +27c27 +< # $Header$ +--- +> # $Header$ +33c33 +< geom = salome.lcc.FindOrLoadComponent("FactoryServer", "Geometry") +--- +> geom = salome.lcc.FindOrLoadComponent("FactoryServer", "GEOM") +diff -r ../src/GEOM_SWIG/geompy.py ../../../GEOM_SRC/src/GEOM_SWIG/geompy.py +27c27 +< # $Header$ +--- +> # $Header$ +35c35 +< geom = salome.lcc.FindOrLoadComponent("FactoryServer", "Geometry") +--- +> geom = salome.lcc.FindOrLoadComponent("FactoryServer", "GEOM") +39c39 +< gg = salome.ImportComponentGUI("Geometry") +--- +> gg = salome.ImportComponentGUI("GEOM") +46c46 +< FName.SetValue("Geometry") +--- +> FName.SetValue( salome.sg.getComponentUserName("GEOM") ) +Only in ../../../GEOM_SRC/src/GEOM_SWIG: GEOM_shared_modules.py +Only in ../../../GEOM_SRC/src/GEOM_SWIG: GEOM_shared_modules.py~ +diff -r ../src/GEOM_SWIG/GEOM_usinggeom.py ../../../GEOM_SRC/src/GEOM_SWIG/GEOM_usinggeom.py +27c27 +< # $Header$ +--- +> # $Header$ +33c33 +< geom = salome.lcc.FindOrLoadComponent("FactoryServer", "Geometry") +--- +> geom = salome.lcc.FindOrLoadComponent("FactoryServer", "GEOM") +Only in ../src/GEOM_SWIG: libGeometry_Swig.i +Only in ../../../GEOM_SRC/src/GEOM_SWIG: libGEOM_Swig.i +diff -r ../src/GEOM_SWIG/Makefile.in ../../../GEOM_SRC/src/GEOM_SWIG/Makefile.in +27c27 +< # $Header$ +--- +> # $Header$ +30c30 +< top_builddir=../../.. +--- +> top_builddir=../.. +39c39 +< LIB = libGeometry_Swigcmodule.la +--- +> LIB = libGEOM_Swigcmodule.la +42,43c42,43 +< SWIG_DEF = libGeometry_Swig.i +< EXPORT_PYSCRIPTS = libGeometry_Swig.py geompy.py batchmode_geompy.py \ +--- +> SWIG_DEF = libGEOM_Swig.i +> EXPORT_PYSCRIPTS = libGEOM_Swig.py geompy.py batchmode_geompy.py \ +62a63,65 +> EXPORT_SHAREDPYSCRIPTS=\ +> GEOM_shared_modules.py +> +65c68 +< LDFLAGS+= -lGeometryGUI +--- +> LDFLAGS+= -lGEOMGUI +diff -r ../src/Makefile.in ../../../GEOM_SRC/src/Makefile.in +25c25 +< # $Header$ +--- +> # $Header$ +28c28 +< top_builddir=../.. +--- +> top_builddir=.. +Only in ../../../GEOM_SRC/src/OBJECT: CVS +diff -r ../src/OBJECT/GEOM_Actor.cxx ../../../GEOM_SRC/src/OBJECT/GEOM_Actor.cxx +27c27 +< // $Header$ +--- +> // $Header$ +277,278c277 +< if(WireframeMapper!=NULL) this->EstimatedRenderTime = WireframeMapper->GetTimeToDraw(); +< else if(ShadingMapper!=NULL) this->EstimatedRenderTime = ShadingMapper->GetTimeToDraw(); +--- +> this->EstimatedRenderTime = WireframeMapper->GetTimeToDraw(); +diff -r ../src/OBJECT/GEOM_Actor.h ../../../GEOM_SRC/src/OBJECT/GEOM_Actor.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/OBJECT/GEOM_AISShape.cxx ../../../GEOM_SRC/src/OBJECT/GEOM_AISShape.cxx +27c27 +< // $Header$ +--- +> // $Header$ +104,112c104 +< +< Graphic3d_MaterialAspect aMatAspect; +< aMatAspect.SetAmbient( 1 ); +< aMatAspect.SetDiffuse( 0 ); +< aMatAspect.SetEmissive( 0 ); +< aMatAspect.SetShininess(1 ); +< aMatAspect.SetSpecular( 0 ); +< +< myDrawer->ShadingAspect()->Aspect()->SetFrontMaterial(aMatAspect); +--- +> myDrawer->ShadingAspect()->Aspect()->SetFrontMaterial(Graphic3d_NOM_BRASS); +114c106 +< +--- +> +diff -r ../src/OBJECT/GEOM_AssemblyBuilder.cxx ../../../GEOM_SRC/src/OBJECT/GEOM_AssemblyBuilder.cxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/OBJECT/GEOM_AssemblyBuilder.h ../../../GEOM_SRC/src/OBJECT/GEOM_AssemblyBuilder.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/OBJECT/GEOM_InteractiveObject.cxx ../../../GEOM_SRC/src/OBJECT/GEOM_InteractiveObject.cxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/OBJECT/GEOM_OCCReader.cxx ../../../GEOM_SRC/src/OBJECT/GEOM_OCCReader.cxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/OBJECT/GEOM_OCCReader.h ../../../GEOM_SRC/src/OBJECT/GEOM_OCCReader.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/OBJECT/Makefile.in ../../../GEOM_SRC/src/OBJECT/Makefile.in +28c28 +< top_builddir=../../.. +--- +> top_builddir=../.. +45c45 +< LIB = libGeometryObject.la +--- +> LIB = libGEOMObject.la +58,59c58,60 +< CPPFLAGS+=$(QT_INCLUDES) $(PYTHON_INCLUDES) $(OCC_INCLUDES) $(VTK_INCLUDES) $(OGL_INCLUDES) +< LDFLAGS+=$(QT_MT_LIBS) $(VTK_LIBS) $(OGL_LIBS) $(PYTHON_LIBS) -lSalomeObject +--- +> CPPFLAGS+=$(QT_INCLUDES) $(PYTHON_INCLUDES) $(OCC_INCLUDES) $(VTK_INCLUDES) $(OGL_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome +> CXXFLAGS += -I${KERNEL_ROOT_DIR}/include/salome +> LDFLAGS+=$(QT_MT_LIBS) $(OCC_KERNEL_LIBS) $(OCC_VIEWER_LIBS) $(VTK_LIBS) $(OGL_LIBS) $(PYTHON_LIBS) -lSalomeObject -L${KERNEL_ROOT_DIR}/lib/salome +Only in ../../../GEOM_SRC/src/PARTITION: CVS +diff -r ../src/PARTITION/Makefile.in ../../../GEOM_SRC/src/PARTITION/Makefile.in +27c27 +< # $Header$ +--- +> # $Header$ +30c30 +< top_builddir=../../.. +--- +> top_builddir=../.. +38c38 +< LIB = libGeometryPartition.la +--- +> LIB = libGEOMPartition.la +56,58c56,58 +< CPPFLAGS += $(OCC_INCLUDES) +< CXXFLAGS += $(OCC_CXXFLAGS) +< LDFLAGS += $(CAS_LDPATH) -lTKBool +--- +> CPPFLAGS += $(OCC_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome +> CXXFLAGS += $(OCC_CXXFLAGS) -I${KERNEL_ROOT_DIR}/include/salome +> LDFLAGS += $(OCC_KERNEL_LIBS) $(OCC_MODELER_LIBS) -L${KERNEL_ROOT_DIR}/lib/salome +diff -r ../src/PARTITION/Partition_Inter2d.cdl ../../../GEOM_SRC/src/PARTITION/Partition_Inter2d.cdl +65,66c65 +< AsDes : mutable AsDes from BRepAlgo; +< F: Face from TopoDS) +--- +> AsDes : mutable AsDes from BRepAlgo) +72,88c71 +< -- is returned insead of V. +< -- Optional F is a face E1 and E2 are on. If F is +< -- provided, it is used to find new vertices on E1 +< -- and E2 resulting from intersection of new edges on +< -- the two other faces the F interferes with and +< -- through which E1 and E2 pass too. This helps to +< -- avoid small edges. +< +< +< GetTolerance(myclass; theV : Vertex from TopoDS; +< theU : Real from Standard; +< theE : Edge from TopoDS; +< theAsDes : AsDes from BRepAlgo) +< returns Real from Standard; +< ---Purpose: Returns tolerance theV must have atfer its +< -- addition to theE with theU parameter. theAsDes is +< -- used to find pcurves of theE +--- +> -- is returned insead of V. +diff -r ../src/PARTITION/Partition_Inter2d.cxx ../../../GEOM_SRC/src/PARTITION/Partition_Inter2d.cxx +4,20c4,20 +< // CEDRAT, EDF R& D, LEG, PRINCIPIA R& D, BUREAU VERITAS +< // +< // This library is free software; you can redistribute it and/or +< // modify it under the terms of the GNU Lesser General Public +< // License as published by the Free Software Foundation; either +< // version 2.1 of the License. +< // +< // This library is distributed in the hope that it will be useful, +< // but WITHOUT ANY WARRANTY; without even the implied warranty of +< // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +< // Lesser General Public License for more details. +< // +< // You should have received a copy of the GNU Lesser General Public +< // License along with 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 +--- +> // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +> // +> // This library is free software; you can redistribute it and/or +> // modify it under the terms of the GNU Lesser General Public +> // License as published by the Free Software Foundation; either +> // version 2.1 of the License. +> // +> // This library is distributed in the hope that it will be useful, +> // but WITHOUT ANY WARRANTY; without even the implied warranty of +> // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +> // Lesser General Public License for more details. +> // +> // You should have received a copy of the GNU Lesser General Public +> // License along with 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 +27c27 +< // $Header$ +--- +> // $Header$ +34c34,36 +< #include +--- +> #include +> #include +> +36c38 +< #include +--- +> +39,43c41,47 +< #include +< #include +< #include +< #include +< #include +--- +> #include +> #include +> +> #include +> #include +> #include +> #include +46c50 +< #include +--- +> #include +48c52 +< #include +--- +> #include +50,53c54,57 +< #include +< #include +< #include +< #include +--- +> #include +> +> #include +> #include +62,157c66,67 +< //function : getOtherShape +< //purpose : +< //======================================================================= +< +< static TopoDS_Shape getOtherShape(const TopoDS_Shape& theS, +< const TopTools_ListOfShape& theSList) +< { +< TopTools_ListIteratorOfListOfShape anIt( theSList ); +< for ( ; anIt.More(); anIt.Next() ) +< if (!theS.IsSame( anIt.Value() )) +< return anIt.Value(); +< +< return TopoDS_Shape(); +< } +< +< //======================================================================= +< //function : findVOnE +< //purpose : on theE, find a vertex close to theV, such that an edge +< // passing through it is an itersection of theF1 and theF2. +< // theE intersects theE2 at theV +< //======================================================================= +< +< static Standard_Boolean findVOnE(const TopoDS_Vertex & theV, +< const TopoDS_Edge& theE, +< const TopoDS_Edge& theE2, +< const TopoDS_Shape& theF1, +< const TopoDS_Shape& theF2, +< const Handle(BRepAlgo_AsDes)& theAsDes, +< TopoDS_Vertex & theFoundV) +< { +< Standard_Real MinDist2 = ::RealLast(); +< gp_Pnt P; +< +< // check all vertices on theE +< const TopTools_ListOfShape& aVList = theAsDes->Descendant( theE ); +< TopTools_ListIteratorOfListOfShape anIt( aVList ); +< if (anIt.More()) +< P = BRep_Tool::Pnt( theV ); +< for ( ; anIt.More(); anIt.Next() ) +< { +< // check by distance +< TopoDS_Vertex & V = TopoDS::Vertex( anIt.Value() ); +< Standard_Real dist2 = P.SquareDistance( BRep_Tool::Pnt( V )); +< if (dist2 < MinDist2) +< MinDist2 = dist2; +< else +< continue; +< +< // V is a candidate if among edges passing through V there is one +< // which is an intersection of theF1 and theF2 +< TopTools_ListIteratorOfListOfShape anEIt( theAsDes->Ascendant( V )); +< Standard_Boolean isOk = Standard_False; +< for ( ; !isOk && anEIt.More(); anEIt.Next() ) +< { +< const TopoDS_Shape & E2 = anEIt.Value(); +< if ( theE2.IsSame( E2 )) +< continue; +< const TopTools_ListOfShape & aFList = theAsDes->Ascendant( E2 ); +< if (aFList.IsEmpty()) +< continue; +< if ( theF1.IsSame( aFList.First() )) +< isOk = theF2.IsSame( aFList.Last() ); +< else +< isOk = theF2.IsSame( aFList.First() ) && theF1.IsSame( aFList.Last() ); +< } +< if (isOk) +< theFoundV = V; +< } +< +< if (theFoundV.IsNull()) +< return Standard_False; +< +< // check that MinDist2 is not too large +< Standard_Real f, l; +< TopLoc_Location L; +< Handle(Geom_Curve) aCurve = BRep_Tool::Curve( theE, L, f, l ); +< gp_Pnt P1 = aCurve->Value( f ); +< gp_Pnt P2 = aCurve->Value( 0.3 * f + 0.7 * l ); +< //gp_Pnt P2 = aCurve->Value( 0.5 * ( f + l )); +< if (MinDist2 > P1.SquareDistance( P2 )) +< return Standard_False; +< +< #ifdef DEB +< cout << "findVOnE: found MinDist = " << sqrt (MinDist2) << endl; +< #endif +< +< return Standard_True; +< } +< +< //======================================================================= +< //function : AddVonE +< //purpose : Put V in AsDes as intersection of E1 and E2. +< // Check that vertex equal to V already exists on one +< // of edges, in such a case, V is not added but +< // existing vertex is updated to be on E1 and E2 and +< // is returned insead of V. +--- +> //function : StorePart2d +> //purpose : +159a70,75 +> // static void StorePart2d (const TopoDS_Edge& E1, +> // const TopoDS_Edge& E2, +> // TopTools_ListOfShape& LV1, +> // TopTools_ListOfShape& LV2, +> // Handle(BRepAlgo_AsDes) AsDes, +> // Standard_Real Tol) +161,165c77,80 +< const TopoDS_Edge& E1, +< const TopoDS_Edge& E2, +< const Handle(BRepAlgo_AsDes)& AsDes, +< const TopoDS_Face& theF) +< +--- +> const TopoDS_Edge& E1, +> const TopoDS_Edge& E2, +> const Handle(BRepAlgo_AsDes)& AsDes) +> +173a89,90 +> TopTools_ListOfShape NewVOnE1; +> TopTools_ListOfShape NewVOnE2; +176c93 +< TopTools_ListIteratorOfListOfShape it; +--- +> TopTools_ListIteratorOfListOfShape it, itLV1, itLV2; +183,212c100,114 +< TopoDS_Vertex V = theV; +< +< U1 = BRep_Tool::Parameter(V,E1); +< U2 = BRep_Tool::Parameter(V,E2); +< O1 = V.Orientation(); +< O2 = O1; +< P1 = BRep_Tool::Pnt(V); +< Tol = BRep_Tool::Tolerance( V ); +< OnE1 = OnE2 = Standard_False; +< +< //----------------------------------------------------------------- +< // Search if the point of intersection is a vertex of E1. +< //----------------------------------------------------------------- +< for (it.Initialize(VOnE1); it.More(); it.Next()) { +< const TopoDS_Vertex& CV = TopoDS::Vertex( it.Value() ); +< if (V.IsSame( CV )) { +< V1 = V; +< OnE1 = Standard_True; +< break; +< } +< P2 = BRep_Tool::Pnt( CV ); +< Tol1 = 1.1*(Tol + BRep_Tool::Tolerance( CV )); +< if (P1.SquareDistance(P2) <= Tol1*Tol1) { +< V = CV; +< V1 = V; +< OnE1 = Standard_True; +< break; +< } +< } +< if (OnE1) { +--- +> // for (itLV1.Initialize(LV1),itLV2.Initialize(LV2); +> // itLV1.More(); +> // itLV1.Next() ,itLV2.Next()) { +> +> TopoDS_Vertex V = theV; +> // TopoDS_Vertex V = TopoDS::Vertex(itLV1.Value()); +> +> U1 = BRep_Tool::Parameter(V,E1); +> U2 = BRep_Tool::Parameter(V,E2); +> O1 = V.Orientation(); +> O2 = O1;///itLV2.Value().Orientation(); +> P1 = BRep_Tool::Pnt(V); +> Tol = BRep_Tool::Tolerance( V ); +> OnE1 = OnE2 = Standard_False; +> +214c116 +< // Search if the vertex found is still on E2. +--- +> // Search if the point of intersection is a vertex of E1. +216,219c118,130 +< for (it.Initialize(VOnE2); it.More(); it.Next()) { +< if (V.IsSame( it.Value() )) { +< OnE2 = Standard_True; +< V2 = V; +--- +> for (it.Initialize(VOnE1); it.More(); it.Next()) { +> const TopoDS_Vertex& CV = TopoDS::Vertex( it.Value() ); +> if (V.IsSame( CV )) { +> V1 = V; +> OnE1 = Standard_True; +> break; +> } +> P2 = BRep_Tool::Pnt( CV ); +> Tol1 = 1.1*(Tol + BRep_Tool::Tolerance( CV )); +> if (P1.SquareDistance(P2) <= Tol1*Tol1) { +> V = CV; +> V1 = V; +> OnE1 = Standard_True; +223,225c134 +< } +< if (!OnE2) { +< for (it.Initialize(VOnE2); it.More(); it.Next()) { +--- +> if (OnE1) { +227c136 +< // Search if the point of intersection is a vertex of E2. +--- +> // Search if the vertex found is still on E2. +229,236c138,143 +< const TopoDS_Vertex& CV = TopoDS::Vertex( it.Value() ); +< P2 = BRep_Tool::Pnt( CV ); +< Tol2 = 1.1*(Tol + BRep_Tool::Tolerance( CV )); +< if (P1.SquareDistance(P2) <= Tol2*Tol2) { +< V = CV; +< V2 = V; +< OnE2 = Standard_True; +< break; +--- +> for (it.Initialize(VOnE2); it.More(); it.Next()) { +> if (V.IsSame( it.Value() )) { +> OnE2 = Standard_True; +> V2 = V; +> break; +> } +239,253c146,160 +< } +< +< +< if (!OnE1 && !OnE2 && !theF.IsNull()) +< { +< // analitically find vertices E1 and E2 must pass trough +< +< TopoDS_Shape F1 = getOtherShape( theF, AsDes->Ascendant( E1 )); +< TopoDS_Shape F2 = getOtherShape( theF, AsDes->Ascendant( E2 )); +< if (!F1.IsNull() && !F2.IsNull()) +< { +< OnE1 = findVOnE ( theV, E1, E2, F1, F2, AsDes, V1 ); +< OnE2 = findVOnE ( theV, E2, E1, F1, F2, AsDes, V2 ); +< if (OnE2) V = V2; +< if (OnE1) V = V1; +--- +> if (!OnE2) { +> for (it.Initialize(VOnE2); it.More(); it.Next()) { +> //----------------------------------------------------------------- +> // Search if the point of intersection is a vertex of E2. +> //----------------------------------------------------------------- +> const TopoDS_Vertex& CV = TopoDS::Vertex( it.Value() ); +> P2 = BRep_Tool::Pnt( CV ); +> Tol2 = 1.1*(Tol + BRep_Tool::Tolerance( CV )); +> if (P1.SquareDistance(P2) <= Tol2*Tol2) { +> V = CV; +> V2 = V; +> OnE2 = Standard_True; +> break; +> } +> } +255,272c162,178 +< } +< +< if (OnE1 && OnE2) { +< if (!V1.IsSame(V2)) { +< // replace V1 with V2 on all edges V1 is on +< Standard_Real UV1; +< TopoDS_Edge EWE1; +< TopoDS_Vertex VI; +< const TopTools_ListOfShape& EdgeWithV1 = AsDes->Ascendant(V1); +< +< for (it.Initialize(EdgeWithV1); it.More(); it.Next()) { +< EWE1 = TopoDS::Edge(it.Value()); +< VI = V1; +< VI.Orientation(TopAbs_INTERNAL); +< UV1 = BRep_Tool::Parameter(VI,EWE1); +< VI = V2; +< VI.Orientation(TopAbs_INTERNAL); +< B.UpdateVertex( VI, UV1, EWE1, GetTolerance( VI, UV1, EWE1, AsDes)); +--- +> if (OnE1 && OnE2) { +> if (!V1.IsSame(V2)) { +> Standard_Real UV2; +> TopoDS_Edge EWE2; +> TopoDS_Vertex VI; +> const TopTools_ListOfShape& EdgeWithV2 = AsDes->Ascendant(V2); +> +> for (it.Initialize(EdgeWithV2); it.More(); it.Next()) { +> EWE2 = TopoDS::Edge(it.Value()); +> VI = V2; +> VI.Orientation(TopAbs_INTERNAL); +> UV2 = BRep_Tool::Parameter(VI,EWE2); +> VI = V1; +> VI.Orientation(TopAbs_INTERNAL); +> B.UpdateVertex(VI,UV2,EWE2, Max(Tol1,Tol2)); +> } +> AsDes->Replace(V2,V1); +274,275d179 +< AsDes->Replace(V1,V2); +< V = V2; +277,283c181,188 +< } +< +< // add existing vertices instead of new ones +< if (!OnE1) { +< if (OnE2) { +< V.Orientation(TopAbs_INTERNAL); +< B.UpdateVertex (V, U1, E1, GetTolerance( V, U1, E1, AsDes)); +--- +> // add existing vertices instead of new ones +> if (!OnE1) { +> if (OnE2) { +> V.Orientation(TopAbs_INTERNAL); +> B.UpdateVertex(V,U1,E1, Tol2); +> } +> V.Orientation(O1); +> NewVOnE1.Prepend(V); +285,291c190,196 +< V.Orientation(O1); +< AsDes->Add(E1,V); +< } +< if (!OnE2) { +< if (OnE1) { +< V.Orientation(TopAbs_INTERNAL); +< B.UpdateVertex (V, U2, E2, GetTolerance( V, U2, E2, AsDes )); +--- +> if (!OnE2) { +> if (OnE1) { +> V.Orientation(TopAbs_INTERNAL); +> B.UpdateVertex(V,U2,E2, Tol1); +> } +> V.Orientation(O2); +> NewVOnE2.Prepend(V); +293,295c198,201 +< V.Orientation(O2); +< AsDes->Add(E2,V); +< } +--- +> // } +> +> if (!NewVOnE1.IsEmpty()) AsDes->Add(E1,NewVOnE1); +> if (!NewVOnE2.IsEmpty()) AsDes->Add(E2,NewVOnE2); +309,313c215,219 +< const Standard_Real f, +< const Standard_Real l, +< const TopoDS_Edge& E, +< Standard_Boolean& isFirst, +< Standard_Real& minDU) +--- +> const Standard_Real f, +> const Standard_Real l, +> const TopoDS_Edge& E, +> Standard_Boolean& isFirst, +> Standard_Real& minDU) +335c241 +< +--- +> +345,348c251,254 +< const Standard_Real f, +< const Standard_Real l, +< TopTools_ListOfShape& LV1, +< TopTools_ListOfShape& /*LV2*/) +--- +> const Standard_Real f, +> const Standard_Real l, +> TopTools_ListOfShape& LV1, +> TopTools_ListOfShape& /*LV2*/) +358c264 +< Standard_Real newU; +--- +> Standard_Real newU; +363c269 +< +--- +> +372c278 +< //purpose : +--- +> //purpose : +376,380c282,286 +< const TopoDS_Edge& E1, +< const TopoDS_Edge& E2, +< const Handle(BRepAlgo_AsDes)& AsDes, +< const TopTools_MapOfShape& NewEdges, +< const Standard_Boolean WithOri) +--- +> const TopoDS_Edge& E1, +> const TopoDS_Edge& E2, +> const Handle(BRepAlgo_AsDes)& AsDes, +> const TopTools_MapOfShape& NewEdges, +> const Standard_Boolean WithOri) +386c292 +< BRep_Tool::Tolerance(E2)); +--- +> BRep_Tool::Tolerance(E2)); +416,419c322,325 +< if (ME.Contains( exp.Current())) { +< intersect = Standard_False; +< break; +< } +--- +> if (ME.Contains( exp.Current())) { +> intersect = Standard_False; +> break; +> } +438,439c344 +< for ( ; EInter.MorePoint(); EInter.NextPoint() ) +< { +--- +> for (;EInter.MorePoint();EInter.NextPoint()) { +451,452c356,363 +< if (sqd1 > MilTol2 || sqd2 > MilTol2 ) +< continue; +--- +> if (sqd1 > MilTol2 || sqd2 > MilTol2 ) { +> //MESSAGE ( "Inter2d : Solution rejected, dist: " << sqrt(Max(sqd1,sqd2)) ) +> #ifdef DEB +> if (TestEdges) { +> MESSAGE ( " edges : E2d_"< #endif +> continue; +> } +455c366 +< Standard_Real toler = Max( Tol, sqrt( Max( sqd1, sqd2 ))); +--- +> Standard_Real toler = 1.5 * Max (Tol, sqrt(Max(sqd1,sqd2)) ); +458,469c369,385 +< Standard_Real U = P2D.Parameter(i); +< V.Orientation(TopAbs_INTERNAL); +< B.UpdateVertex( V,U,EI[i], toler); +< TopAbs_Orientation OO = TopAbs_REVERSED; +< if (WithOri) { +< if (P2D.IsVertex(i)) +< OO = P2D.Vertex(i).Orientation(); +< else if (P2D.Transition(i).Before() == TopAbs_OUT) { +< OO = TopAbs_FORWARD; +< } +< V.Orientation(OO); +< if (i == 1) LV1.Append(V); +--- +> Standard_Real U = P2D.Parameter(i); +> #ifdef DEB +> if (U < f[i]-Tol || U > l[i]+Tol) { +> MESSAGE ( "out" ); +> } +> #endif +> V.Orientation(TopAbs_INTERNAL); +> B.UpdateVertex( V,U,EI[i], toler); +> TopAbs_Orientation OO = TopAbs_REVERSED; +> if (WithOri) { +> if (P2D.IsVertex(i)) +> OO = P2D.Vertex(i).Orientation(); +> else if (P2D.Transition(i).Before() == TopAbs_OUT) { +> OO = TopAbs_FORWARD; +> } +> V.Orientation(OO); +> if (i == 1) LV1.Append(V); +497c413 +< TolConf2 *= 100; +--- +> TolConf2 *= 100; +529,530c445 +< it1LV1.More(); +< it1LV1.Next(),it1LV2.Next()) { +--- +> it1LV1.More(); it1LV1.Next(),it1LV2.Next()) { +534,537c449,452 +< const TopoDS_Vertex& VE1 = TopoDS::Vertex(it1LV1.Value()); +< const TopoDS_Vertex& VE2 = TopoDS::Vertex(it2LV1.Value()); +< Standard_Real Tol1 = BRep_Tool::Tolerance( VE1 ); +< Standard_Real Tol2 = BRep_Tool::Tolerance( VE2 ); +--- +> const TopoDS_Vertex& VE1 = TopoDS::Vertex(it1LV1.Value()); +> const TopoDS_Vertex& VE2 = TopoDS::Vertex(it2LV1.Value()); +> Standard_Real Tol1 = BRep_Tool::Tolerance( VE1 ); +> Standard_Real Tol2 = BRep_Tool::Tolerance( VE2 ); +543,547c458,465 +< Purge = Standard_True; +< break; +< } +< j++; +< it2LV1.Next(); +--- +> if (AffichPurge) { +> MESSAGE ("Vertices confused purged in EdgeInter.") +> } +> Purge = Standard_True; +> break; +> } +> j++; +> it2LV1.Next(); +556c474 +< treatClosed (E1, f[1], l[1], LV1, LV2); +--- +> treatClosed (E1,f[1],l[1],LV1,LV2); +558,562c476,480 +< treatClosed (E2, f[2], l[2], LV2, LV1); +< +< //---------------- +< // Stocking vertex +< //---------------- +--- +> treatClosed (E2,f[2],l[2],LV2,LV1); +> +> //--------------------------------- +> // Stocking vertex . +> //--------------------------------- +563a482 +> //StorePart2d (E1,E2,LV1,LV2,AsDes,Tol); +565,566c484 +< Partition_Inter2d::AddVonE (TopoDS::Vertex( it1LV1.Value()), +< E1, E2, AsDes, F); +--- +> Partition_Inter2d::AddVonE ( TopoDS::Vertex( it1LV1.Value()), E1,E2,AsDes); +577,578c495,496 +< const TopoDS_Face& F, +< const TopTools_MapOfShape& NewEdges) +--- +> const TopoDS_Face& F, +> const TopTools_MapOfShape& NewEdges) +602c520 +< +--- +> +618,619c536,537 +< (NewEdges.Contains(E1) || NewEdges.Contains(E2)) ) { +< EdgesPartition(FF,E1,E2,AsDes,NewEdges,Standard_True); +--- +> (NewEdges.Contains(E1) || NewEdges.Contains(E2)) ) { +> EdgesPartition(FF,E1,E2,AsDes,NewEdges,Standard_True); +628,670d545 +< //======================================================================= +< //function : GetTolerance +< //purpose : Returns tolerance theV must have atfer its +< // addition to theE with theU parameter. theAsDes is +< // used to find pcurves of theE +< //======================================================================= +< +< Standard_Real Partition_Inter2d::GetTolerance +< (const TopoDS_Vertex & theV, +< const Standard_Real theU, +< const TopoDS_Edge & theE, +< const Handle(BRepAlgo_AsDes)& theAsDes) +< { +< Standard_Real aTol = BRep_Tool::Tolerance( theV ); +< gp_Pnt aPnt = BRep_Tool::Pnt( theV ); +< +< // check point on 3D curve +< Standard_Real f,l; +< Handle(Geom_Curve) C = BRep_Tool::Curve( theE, f, l ); +< if (!C.IsNull()) +< aTol = Max ( aTol, aPnt.Distance( C->Value( theU ))); +< +< // check points on pcurves +< const TopTools_ListOfShape& aFList = theAsDes->Ascendant( theE ); +< TopTools_ListIteratorOfListOfShape aFIt( aFList ); +< for ( ; aFIt.More(); aFIt.Next() ) +< { +< const TopoDS_Face& F = TopoDS::Face( aFIt.Value() ); +< Handle(Geom2d_Curve) pcurve = BRep_Tool::CurveOnSurface( theE, F, f, l ); +< if (!pcurve.IsNull()) +< { +< gp_Pnt2d aPnt2d = pcurve->Value( theU ); +< TopLoc_Location L; +< Handle(Geom_Surface) S = BRep_Tool::Surface( F, L ); +< gp_Pnt aPntOnS = S->Value( aPnt2d.X(), aPnt2d.Y() ); +< if (!L.IsIdentity()) +< aPntOnS.Transform( L.Transformation() ); +< aTol = Max ( aTol, aPnt.Distance( aPntOnS )); +< } +< } +< +< return aTol; +< } +diff -r ../src/PARTITION/Partition_Inter2d.hxx ../../../GEOM_SRC/src/PARTITION/Partition_Inter2d.hxx +74,75c74,75 +< Standard_EXPORT static TopoDS_Vertex AddVonE(const TopoDS_Vertex& V,const TopoDS_Edge& E1,const TopoDS_Edge& E2,const Handle(BRepAlgo_AsDes)& AsDes,const TopoDS_Face& F) ; +< Standard_EXPORT static Standard_Real GetTolerance(const TopoDS_Vertex& theV,const Standard_Real theU,const TopoDS_Edge& theE,const Handle(BRepAlgo_AsDes)& theAsDes) ; +--- +> Standard_EXPORT static TopoDS_Vertex AddVonE(const TopoDS_Vertex& V,const TopoDS_Edge& E1,const TopoDS_Edge& E2,const Handle(BRepAlgo_AsDes)& AsDes) ; +> +diff -r ../src/PARTITION/Partition_Inter3d.cdl ../../../GEOM_SRC/src/PARTITION/Partition_Inter3d.cdl +71,76c71 +< ---Purpose: return map of faces cut by new or section edges +< +< NewEdges(me : in out) returns MapOfShape from TopTools +< ---C++: return & +< is static; +< ---Purpose: return new and section edges +--- +> ---Purpose: return map of +80,84d74 +< ---Purpose: return an object containing info about +< -- Ascendants | Descendants +< -- ------------------+--------------------- +< -- 1. faces | edges cutting them +< -- 2. sectoin edges | new vertices on them +85a76,78 +> NewEdges(me : in out) returns MapOfShape from TopTools +> ---C++: return & +> is static; +diff -r ../src/PARTITION/Partition_Inter3d.cxx ../../../GEOM_SRC/src/PARTITION/Partition_Inter3d.cxx +27c27 +< // $Header$ +--- +> // $Header$ +30d29 +< #include "Partition_Inter2d.hxx" +31a31 +> #include "Partition_Inter2d.hxx" +34,36d33 +< #include +< #include +< #include +39a37,39 +> #include +> #include +> #include +44,47d43 +< #include +< #include +< #include +< #include +49c45 +< #include +--- +> #include +52c48,52 +< #include +--- +> #include +> #include +> #include +> #include +> #include +58,74c58,62 +< #include +< #include +< #include +< #include +< #include +< #include +< #include +< #include +< #include +< #include +< #include +< #include +< #include +< #include +< #include +< #include +< #include +--- +> #include +> #include +> #include +> #include +> #include +75a64 +> #include +77,78c66 +< #include +< #include +--- +> #include +80a69 +> #include +82,84c71 +< #include +< #include +< #include +--- +> #include +86c73,81 +< #include +--- +> #include +> #include +> #include +> #include +> #include +> #include +> #include +> #include +> #include +199,248d193 +< if (!S->IsUPeriodic() && !S->IsVPeriodic()) +< return; +< +< BRepTools::UVBounds(F,umin,umax,vmin,vmax); +< +< gp_Pnt2d Pf = C2d->Value(f); +< gp_Pnt2d Pl = C2d->Value(l); +< const Standard_Real Um = 0.34*f + 0.66*l; +< gp_Pnt2d Pm = C2d->Value( Um ); +< +< // sometimes on shpere, pcurve is out of domain by V though S is +< // UPeriodic, sometimes it is in domain but nontheless it has +< // wrong position. +< // Check pcurve position by 3D point +< if (S->IsKind(STANDARD_TYPE( Geom_SphericalSurface )) || +< S->IsKind(STANDARD_TYPE( Geom_ToroidalSurface ))) +< { +< // get point on the surface +< gp_Pnt Ps = S->Value( Pm.X(), Pm.Y() ); +< // get point on the edge +< Handle(Geom_Curve) C = BRep_Tool::Curve( E, f, l ); +< gp_Pnt Pc = C->Value( Um ); +< // compare points +< Standard_Real TolE = BRep_Tool::Tolerance( E ); +< if ( Pc.SquareDistance( Ps ) * 0.95 < TolE * TolE ) +< return; // OK +< +< // find good UV for Pc: project Pc on S +< GeomAdaptor_Surface SA (S); +< Extrema_ExtPS anExtPS (Pc, SA, +< SA.UResolution( TolE ), SA.VResolution( TolE )); +< if (anExtPS.IsDone()) +< { +< Standard_Integer i, nbExt = anExtPS.NbExt(); +< Extrema_POnSurf aPOnSurf; +< for (i = 1; i <= nbExt; ++i ) +< if (anExtPS.Value( i ) <= TolE) { +< aPOnSurf = anExtPS.Point( i ); +< break; +< } +< if (i <= nbExt) { +< // a point found +< Standard_Real u, v; +< aPOnSurf.Parameter( u, v ); +< gp_Pnt2d aGoodPm ( u, v ); +< C2d->Translate( Pm , aGoodPm ); +< } +< } +< } +< +251a197,200 +> if (!S->IsUPeriodic() && !S->IsVPeriodic()) return; +> +> BRepTools::UVBounds(F,umin,umax,vmin,vmax); +> +254a204,206 +> gp_Pnt2d Pf = C2d->Value(f); +> gp_Pnt2d Pl = C2d->Value(l); +> gp_Pnt2d Pm = C2d->Value(0.34*f + 0.66*l); +285a238,240 +> gp_Pnt2d Pf = C2d->Value(f); +> gp_Pnt2d Pl = C2d->Value(l); +> gp_Pnt2d Pm = C2d->Value(0.34*f + 0.66*l); +356a312,313 +> // Standard_Real f,l; +> // BRep_Tool::Range(E,f,l); +373,375c330,332 +< // ======================== +< // store same domain faces +< // ======================== +--- +> // =================================================== +> // Store section edges, same domain faces and verives +> // =================================================== +376a334 +> TopTools_ListOfShape empty, LSP, LSE; +378,380c336 +< if ( DatStr->HasSameDomain( F1 )) +< { +< TopTools_ListOfShape emptyList; +--- +> if ( DatStr->HasSameDomain( F1 )) { // same domain faces +382c338 +< mySameDomainFM.Bind(F1,emptyList); +--- +> mySameDomainFM.Bind(F1,empty); +384c340 +< mySameDomainFM.Bind(F2,emptyList); +--- +> mySameDomainFM.Bind(F2,empty); +389,392d344 +< // ==================== +< // Store section edges +< // ==================== +< +394,395c346,347 +< Standard_Integer j,i,nse = DS.NbSectionEdges(); +< if (nse == 0) return; +--- +> Standard_Integer j,i,nes = DS.NbSectionEdges(); +> if (!nes) return; +400,401d351 +< TopTools_ListOfShape LSE; // list of section edges +< TopoDS_Face dummyF; +403,405c353,357 +< for (i = 1; i <= nse; i++) +< { +< const TopoDS_Edge & se = DS.SectionEdge(i); +--- +> // put vertices on section edges +> for (i=1;i<=nes;i++) { +> +> TopoDS_Edge se, sde, oe; // section, same domain, other edge +> se = DS.SectionEdge(i); +408d359 +< LSE.Append( se ); +410,413d360 +< // add vertices where section edges interferes with other +< // edges as its descendant in myAsDes +< +< TopoDS_Edge sde, oe; // same domain, other edge +418c365,366 +< TColStd_MapOfInteger MIV; // indices of added edges +--- +> +> TColStd_MapOfInteger MIV; +421d368 +< // loop on intersections of se +425d371 +< // there is a vertex at intersection +433c379 +< B.UpdateVertex( V, itP.Parameter(), se, 0.); // AddVonE() sets real U +--- +> B.UpdateVertex( V, itP.Parameter(), se, 0.); +436d381 +< // create a new vertex at the intersection point +451,452c396 +< // add V on the both intersecting edges +< TopoDS_Vertex addedV = Partition_Inter2d::AddVonE( V,se,oe,myAsDes,dummyF); +--- +> TopoDS_Vertex addedV = Partition_Inter2d::AddVonE( V,se,oe,myAsDes); +454,456c398,399 +< mySameDomainVM.Bind (V, addedV); // equal vertex is already there +< +< MV.Add( addedV ); // to ease storage of vertices of ON splits +--- +> mySameDomainVM.Bind (V, addedV); +> MV.Add( addedV ); +460,463c403 +< // add section edge to the face it intersects and find +< // splits ON that do not have same domain pair +< +< TopB.SplitSectionEdges(); // let TopB find ON splits +--- +> TopB.SplitSectionEdges(); +465c405 +< TopTools_MapOfShape SPM; // map of ON splits +--- +> TopTools_DataMapOfShapeShape SEM; // map split - section edge +470,471c410,413 +< TopTools_ListIteratorOfListOfShape itSP, itLSE (LSE); +< while ( itLSE.More() ) { +--- +> // add section edge to the face it intersects and find +> // splits ON that do not have same domain pair +> +> for (i=1;i<=nes;i++) { +473c415,417 +< TopoDS_Edge se = TopoDS::Edge( itLSE.Value() ); +--- +> const TopoDS_Edge& se = DS.SectionEdge(i); +> if (! TopB.IsSplit(se,TopAbs_ON)) +> continue; +477,479c421 +< LSE.Remove( itLSE ); // se is an edge of face it intersects +< else +< itLSE.Next(); +--- +> continue; // se is an edge of face it intersects +484c426 +< TopTools_ListIteratorOfListOfShape itE( myAsDes->Descendant( F )); +--- +> TopTools_ListIteratorOfListOfShape itE; +486c428 +< for ( ; itE.More(); itE.Next()) +--- +> for (itE.Initialize( (myAsDes->Descendant( F )) ); itE.More(); itE.Next()) +490,491c432 +< if (!itE.More()) +< { +--- +> if (!itE.More()) { +493,494d433 +< +< // check se pcurve on F +498,500c437,439 +< itSP.Initialize( TopB.Splits(se,TopAbs_ON) ); +< for ( ; itSP.More(); itSP.Next()) { +< const TopoDS_Edge& E = TopoDS::Edge ( itSP.Value()); +--- +> TopTools_ListIteratorOfListOfShape it( TopB.Splits(se,TopAbs_ON) ); +> for ( ;it.More();it.Next()) { +> const TopoDS_Edge& E = TopoDS::Edge ( it.Value()); +515c454 +< +--- +> +517,522c456,462 +< // ie which split a face into parts and not pass by its boundary +< itSP.Initialize( TopB.Splits(se,TopAbs_ON) ); +< for ( ; itSP.More(); itSP.Next()) { +< const TopoDS_Shape& SP = itSP.Value(); +< if (!SPM.Add( SP )) +< SPM.Remove( SP ); +--- +> TopTools_ListIteratorOfListOfShape it( TopB.Splits(se,TopAbs_ON) ); +> for ( ;it.More();it.Next()) { +> const TopoDS_Edge& S = TopoDS::Edge ( it.Value()); +> if (SEM.IsBound( S )) +> SEM.UnBind( S ); +> else +> SEM.Bind( S, se); +527,530c467,471 +< +< for (itLSE.Initialize (LSE); itLSE.More(); itLSE.Next()) +< { +< const TopoDS_Shape& se = itLSE.Value(); +--- +> for (i=1;i<=nes;i++) { +> +> const TopoDS_Edge& se = DS.SectionEdge(i); +> if (! TopB.IsSplit(se,TopAbs_ON)) +> continue; +532a474,476 +> if (ME[ancRank-1].Contains( se )) +> continue; // se is an edge of face it intersects +> +535c479 +< // add vertices of ON splits which have no same domain pair +--- +> // add vertices of splits +537,540c481,484 +< itSP.Initialize( TopB.Splits(se,TopAbs_ON) ); +< for ( ; itSP.More(); itSP.Next()) +< { +< if (!SPM.Contains( itSP.Value() )) +--- +> TopTools_ListIteratorOfListOfShape it( TopB.Splits(se,TopAbs_ON) ); +> for ( ;it.More();it.Next()) { +> const TopoDS_Edge& S = TopoDS::Edge ( it.Value()); +> if (!SEM.IsBound( S )) +542,543d485 +< +< const TopoDS_Edge& S = TopoDS::Edge ( itSP.Value()); +550,551c492 +< for (j=0; j<2; ++j) +< { +--- +> for (j=0; j<2; ++j) { +560,561d500 +< if ( V.IsSame( VS[j] )) +< break; +572,574d510 +< +< // add ends of ON splits to F in order to detect later +< // if a split is on face in IsSplitOn() +577,578d512 +< // in the descendants of F, first go ends of an ON split and +< // then a split itself +613,614c547,548 +< TopTools_ListOfShape emptyList; +< myDone.Bind(F1,emptyList); +--- +> TopTools_ListOfShape empty; +> myDone.Bind(F1,empty); +618,619c552,553 +< TopTools_ListOfShape emptyList; +< myDone.Bind(F2,emptyList); +--- +> TopTools_ListOfShape empty; +> myDone.Bind(F2,empty); +651a586 +> +741,742c676,677 +< static TopTools_ListOfShape emptyList; +< return emptyList; +--- +> static TopTools_ListOfShape empty; +> return empty; +diff -r ../src/PARTITION/Partition_Loop2d.cxx ../../../GEOM_SRC/src/PARTITION/Partition_Loop2d.cxx +3c3 +< // Copyright (C) 2003 CEA/DEN, EDF R& D +--- +> // Copyright (C) 2003 CEA/DEN, EDF R&D +10c10 +< // $Header$ +--- +> // $Header$ +21d20 +< #include +120,172d118 +< //function : preciseU +< //purpose : find u such that the 3D point on theE is just out of tolerance +< // of theV +< //======================================================================= +< +< static Standard_Real preciseU (const BRepAdaptor_Surface& theSurf, +< const TopoDS_Edge& theE, +< const TopoDS_Vertex& theV, +< const Handle(Geom2d_Curve)& theC, +< const Standard_Boolean theFirstEnd) +< { +< Standard_Boolean isForward = ( theE.Orientation () == TopAbs_FORWARD ); +< if (theFirstEnd) isForward = !isForward; +< +< // find the first point in 2d and 3d +< Standard_Real f,l; +< BRep_Tool::Range( theE, f, l ); +< Standard_Real u0 = isForward ? l : f; +< gp_Pnt2d aP2d0 = theC->Value( u0 ); +< gp_Pnt aPnt0 = theSurf.Value( aP2d0.X(), aP2d0.Y() ); +< +< // shift in 2d and 3d +< Standard_Real du = ( l - f ) / 100, du3d = 0; +< if (isForward) +< du = -du; +< +< // target parameter +< Standard_Real u; +< +< while (du3d < ::RealSmall()) +< { +< // u for test +< u = u0 + du; +< du *= 10; // for the next iteration: increase du untill du3d is large enough +< +< // find out how u is far from u0 in 3D +< gp_Pnt2d aP2d = theC->Value( u ); +< gp_Pnt aPnt = theSurf.Value( aP2d.X(), aP2d.Y() ); +< du3d = aPnt0.Distance( aPnt ); +< } +< +< // find u such that the 3D point is just out of tolerance of theV +< Standard_Real tolV = BRep_Tool::Tolerance( theV ) + Precision::Confusion(); +< u = u0 + du * tolV / du3d; +< +< // check that u is within the range +< if ( isForward ? (u < f) : (u > l) ) +< u = u0 + du; +< +< return u; +< } +< +< //======================================================================= +174,177c120,122 +< //purpose : Find in the list the edge connected with by +< // the vertex . +< // is removed from the list. If is in +< // with the same orientation, it's removed from the list +--- +> //purpose : Find the edge connected by the vertex in the list . +> // Is erased of the list. If is too in the list +> // with the same orientation, it's erased of the list +181,184c126,129 +< const TopoDS_Edge& CE, +< const TopoDS_Vertex& CV, +< TopoDS_Edge& NE, +< const TopTools_ListOfShape& LE) +--- +> const TopoDS_Edge& CE, +> const TopoDS_Vertex& CV, +> TopoDS_Edge& NE, +> const TopTools_ListOfShape& LE) +194d138 +< TopoDS_Edge aPrevNE; +196,199c140 +< gp_Vec2d CTg1, Tg1, CTg2, Tg2; +< gp_Pnt2d PC, P; +< +< Standard_Real f, l; +--- +> Standard_Real cf, cl, f, l; +201c142,156 +< Cc = BRep_Tool::CurveOnSurface(CE,FForward,f,l); +--- +> Cc = BRep_Tool::CurveOnSurface(CE,FForward,cf,cl); +> +> // Standard_Real tolV, tol2d2; +> Standard_Real tolV = BRep_Tool::Tolerance(CV); +> // tol2d2 = Max ( Surf.UResolution(tolV) , Surf.VResolution(tolV) ); +> // tol2d2 = 2 * Max ( tol2d2, Precision::PConfusion() ); +> // tol2d2 *= tol2d2; +> +> Standard_Real uc,u, du = Precision::PConfusion(); +> if (CE.Orientation () == TopAbs_FORWARD) uc = cl + du; +> else uc = cf - du; +> +> gp_Vec2d CTg1, Tg1; +> gp_Pnt2d PC, P; +> gp_Pnt P3d; +203,205d157 +< Standard_Boolean isForward = ( CE.Orientation () == TopAbs_FORWARD ); +< Standard_Real uc, u, du = Precision::PConfusion(); +< uc = isForward ? ( l - du ) : ( f + du ); +207c159 +< if (!isForward) CTg1.Reverse(); +--- +> if (CE.Orientation () == TopAbs_REVERSED) CTg1.Reverse(); +209c161,162 +< Standard_Real anglemin = 3 * PI, tolAng = 1.e-8; +--- +> Standard_Real anglemin = 3 * PI; +> // Standard_Real sqdist, sqdistmin = 1.0e50; +211,212d163 +< // select an edge whose first derivative is most left of CTg1 +< // ie an angle between Tg1 and CTg1 is least +217c168 +< continue; +--- +> continue; +219,221c170 +< continue; +< +< isForward = ( E.Orientation () == TopAbs_FORWARD ); +--- +> continue; +223d171 +< // get E curve +225,228c173,174 +< // get the first derivative Tg1 +< u = isForward ? ( f + du ) : ( l - du ); +< C->D1(u, P, Tg1); +< if (!isForward) Tg1.Reverse(); +--- +> if (E.Orientation () == TopAbs_FORWARD) u = f + du; +> else u = l - du; +230,231c176,178 +< // -PI < angle < PI +< Standard_Real angle = Tg1.Angle(CTg1); +--- +> C->D1(u, P, Tg1); +> // if (P.SquareDistance(PC); > tol2d2) +> // continue; +233,245c180 +< if (PI - Abs(angle) <= tolAng) +< { +< // an angle is too close to PI; assure that an angle sign really +< // reflects an edge position: +PI - an edge is worst, +< // -PI - an edge is best. +< u = preciseU( Surf, CE, CV, Cc, Standard_False); +< gp_Vec2d CTg; +< Cc->D1(u, PC, CTg); +< if (CE.Orientation() == TopAbs_REVERSED) CTg.Reverse(); +< +< u = preciseU( Surf, E, CV, C, Standard_True); +< C->D1(u, P, Tg1); +< if (!isForward) Tg1.Reverse(); +--- +> if (E.Orientation () == TopAbs_REVERSED) Tg1.Reverse(); +247,248c182 +< angle = Tg1.Angle(CTg); +< } +--- +> Standard_Real angle = Tg1.Angle(CTg1); +250d183 +< Standard_Boolean isClose = ( Abs( angle - anglemin ) <= tolAng ); +252,257c185,192 +< if (isClose) +< aPrevNE = NE; +< else +< aPrevNE.Nullify(); +< anglemin = angle ; +< NE = E; +--- +> anglemin = angle ; +> NE = E; +> #ifdef DEB +> // sqdist = P.SquareDistance(PC); +> // if (sqdist < sqdistmin) +> // sqdistmin = sqdist; +> P3d = Surf.Value (PC.X(), PC.Y()); +> #endif +259,262d193 +< else +< if (isClose) +< aPrevNE = E; +< +264,276c195,198 +< if (!aPrevNE.IsNull()) { +< // select one of close edges, the most left one. +< Cc = BRep_Tool::CurveOnSurface( NE, FForward, f, l ); +< uc = preciseU( Surf, NE, CV, Cc, Standard_True); +< Cc->D1(uc, PC, CTg1); +< if (NE.Orientation() != TopAbs_FORWARD) CTg1.Reverse(); +< +< u = preciseU( Surf, aPrevNE, CV, C, Standard_True); +< C->D1(u, P, Tg1); +< if (aPrevNE.Orientation() != TopAbs_FORWARD) Tg1.Reverse(); +< +< if ( Tg1.Angle(CTg1) < 0) +< NE = aPrevNE; +--- +> #ifdef DEB +> if (!NE.IsNull() && P3d.Distance( BRep_Tool::Pnt(CV)) > tolV) { +> MESSAGE( "DISTANCE MORE THAN VERTEX TOL (" << tolV << ")" ); +> cout << "point p " << P3d.X() << " " << P3d.Y() << " " << P3d.Z() << endl; +277a200 +> #endif +294,297c217,220 +< const TopoDS_Edge& E1, +< const TopoDS_Vertex& V2, +< const TopoDS_Edge& E2, +< const TopoDS_Face& F) +--- +> const TopoDS_Edge& E1, +> const TopoDS_Vertex& V2, +> const TopoDS_Edge& E2, +> const TopoDS_Face& F) +318,319c241,242 +< TopoDS_Edge& E, +< TopTools_DataMapOfShapeListOfShape& MVE ) +--- +> TopoDS_Edge& E, +> TopTools_DataMapOfShapeListOfShape& MVE ) +339c262 +< //purpose : +--- +> //purpose : +343c266 +< TopTools_DataMapOfShapeListOfShape& MVE) +--- +> TopTools_DataMapOfShapeListOfShape& MVE) +351,352c274,275 +< MVE(V1).Remove(itl); +< break; +--- +> MVE(V1).Remove(itl); +> break; +358,359c281,282 +< MVE(V2).Remove(itl); +< break; +--- +> MVE(V2).Remove(itl); +> break; +369,371c292,294 +< TopTools_MapOfShape& EM, +< TopTools_MapOfShape& VM, +< const TopTools_DataMapOfShapeListOfShape& MVE) +--- +> TopTools_MapOfShape& EM, +> TopTools_MapOfShape& VM, +> const TopTools_DataMapOfShapeListOfShape& MVE) +378c301 +< +--- +> +383c306 +< addConnected ( itE.Value(), EM, VM, MVE ); +--- +> addConnected ( itE.Value(), EM, VM, MVE ); +392,416c315,339 +< // static Standard_Boolean canPassToOld (const TopoDS_Shape& V, +< // TopTools_MapOfShape& UsedShapesMap, +< // const TopTools_DataMapOfShapeListOfShape& MVE, +< // const TopTools_MapOfShape& SectionEdgesMap) +< // { +< // TopTools_ListIteratorOfListOfShape itE( MVE(V) ); +< // // Loop on edges sharing V +< // for (; itE.More(); itE.Next()) { +< // if ( !UsedShapesMap.Add( itE.Value() )) +< // continue; // already checked +< +< // if ( !SectionEdgesMap.Contains( itE.Value() )) +< // return Standard_True; // WE PASSED +< +< // TopoDS_Iterator itV( itE.Value() ); +< // // Loop on vertices of an edge +< // for (; itV.More(); itV.Next()) { +< // if ( !UsedShapesMap.Add( itV.Value() )) +< // continue; // already checked +< // else +< // return canPassToOld( itV.Value(), UsedShapesMap, MVE, SectionEdgesMap); +< // } +< // } +< // return Standard_False; +< // } +--- +> static Standard_Boolean canPassToOld (const TopoDS_Shape& V, +> TopTools_MapOfShape& UsedShapesMap, +> const TopTools_DataMapOfShapeListOfShape& MVE, +> const TopTools_MapOfShape& SectionEdgesMap) +> { +> TopTools_ListIteratorOfListOfShape itE( MVE(V) ); +> // Loop on edges sharing V +> for (; itE.More(); itE.Next()) { +> if ( !UsedShapesMap.Add( itE.Value() )) +> continue; // already checked +> +> if ( !SectionEdgesMap.Contains( itE.Value() )) +> return Standard_True; // WE PASSED +> +> TopoDS_Iterator itV( itE.Value() ); +> // Loop on vertices of an edge +> for (; itV.More(); itV.Next()) { +> if ( !UsedShapesMap.Add( itV.Value() )) +> continue; // already checked +> else +> return canPassToOld( itV.Value(), UsedShapesMap, MVE, SectionEdgesMap); +> } +> } +> return Standard_False; +> } +426,430c349,353 +< const TopoDS_Vertex& CV, +< TopoDS_Edge& NE, +< TopTools_SequenceOfShape& EdgesSeq, +< TColStd_SequenceOfReal& USeq, +< const TopoDS_Edge& DE) +--- +> const TopoDS_Vertex& CV, +> TopoDS_Edge& NE, +> TopTools_SequenceOfShape& EdgesSeq, +> TColStd_SequenceOfReal& USeq, +> const TopoDS_Edge& DE) +458c381 +< continue; +--- +> continue; +497,502c420,425 +< const TopoDS_Face& F, +< const TopTools_DataMapOfShapeListOfShape& MVE, +< TopTools_SequenceOfShape& EdgesSeq, +< TColStd_SequenceOfReal& USeq, +< TopTools_DataMapOfShapeInteger& MVDEI, +< const Standard_Integer DegEdgeIndex) +--- +> const TopoDS_Face& F, +> const TopTools_DataMapOfShapeListOfShape& MVE, +> TopTools_SequenceOfShape& EdgesSeq, +> TColStd_SequenceOfReal& USeq, +> TopTools_DataMapOfShapeInteger& MVDEI, +> const Standard_Integer DegEdgeIndex) +536c459 +< first = Standard_False; +--- +> first = Standard_False; +538c461 +< first = !first; +--- +> first = !first; +550,551c473,474 +< MESSAGE ( "NO 2d INTERSECTION ON DEGENERATED EDGE" ); +< continue; +--- +> MESSAGE ( "NO 2d INTERSECTION ON DEGENERATED EDGE" ); +> continue; +646c569 +< WEL.Append( CE ); +--- +> WEL.Append( CE ); +648,652c571,575 +< doubleEM.Add( CE ); +< RemoveFromMVE (CE,MVE2); +< TopoDS_Edge CERev = CE; +< CERev.Reverse(); +< RemoveFromMVE (CERev,MVE2); +--- +> doubleEM.Add( CE ); +> RemoveFromMVE (CE,MVE2); +> TopoDS_Edge CERev = CE; +> CERev.Reverse(); +> RemoveFromMVE (CERev,MVE2); +660,661c583,584 +< // wire is internal if all edges are section ones +< isInternCW = Standard_False; +--- +> // wire is internal if all edges are section ones +> isInternCW = Standard_False; +664,667c587,590 +< iDeg = MVDEI( CV ); +< TopoDS_Edge NewDegen; +< NewDegen = MakeDegenAndSelect( CE, CV, NE, SEID[iDeg], SeqU[iDeg], DE[iDeg]); +< WEL.Append( NewDegen ); +--- +> iDeg = MVDEI( CV ); +> TopoDS_Edge NewDegen; +> NewDegen = MakeDegenAndSelect( CE, CV, NE, SEID[iDeg], SeqU[iDeg], DE[iDeg]); +> WEL.Append( NewDegen ); +670c593 +< continue; +--- +> continue; +677,678c600,601 +< End=Standard_True; +< MVE.UnBind(CV); +--- +> End=Standard_True; +> MVE.UnBind(CV); +681c604 +< End = Standard_True; +--- +> End = Standard_True; +684,692c607,615 +< //---------------------------- +< // select new current edge +< //---------------------------- +< if (! SelectEdge (Surface,CE,CV,NE,MVE(CV))) { +< MESSAGE ( " NOT CLOSED WIRE " ); +< End=Standard_True; +< } +< else +< CE = NE; +--- +> //---------------------------- +> // select new current edge +> //---------------------------- +> if (! SelectEdge (Surface,CE,CV,NE,MVE(CV))) { +> MESSAGE ( " NOT CLOSED WIRE " ); +> End=Standard_True; +> } +> else +> CE = NE; +694,695c617 +< } // while ( !End ) +< +--- +> } // while ( !End ) +696a619 +> +699c622 +< +--- +> +704c627 +< B.Add ( NW, itl.Value()); +--- +> B.Add ( NW, itl.Value()); +708c631 +< +--- +> +712,716c635,639 +< const TopoDS_Edge& E = TopoDS::Edge ( itl.Value() ); +< if ( doubleEM.Contains( E ) || BRep_Tool::Degenerated( E )) +< WEL.Remove( itl ); +< else +< itl.Next(); +--- +> const TopoDS_Edge& E = TopoDS::Edge ( itl.Value() ); +> if ( doubleEM.Contains( E ) || BRep_Tool::Degenerated( E )) +> WEL.Remove( itl ); +> else +> itl.Next(); +719c642 +< continue; +--- +> continue; +723,728c646,651 +< for (i=1; i<=SEID[j].Length(); ++i) { +< if (doubleEM.Contains( SEID[j].Value(i))) { +< SEID[j].Remove( i ); +< SeqU[j].Remove( i-- ); +< } +< } +--- +> for (i=1; i<=SEID[j].Length(); ++i) { +> if (doubleEM.Contains( SEID[j].Value(i))) { +> SEID[j].Remove( i ); +> SeqU[j].Remove( i-- ); +> } +> } +734,742c657,665 +< CE = TopoDS::Edge( WEL.First() ); +< WEL.RemoveFirst(); +< B.MakeWire( NW ); +< VF = TopExp::FirstVertex ( CE, Standard_True); +< +< End = Standard_False; +< while ( !End) { +< B.Add( NW, CE ); +< CV = TopExp::LastVertex ( CE, Standard_True); +--- +> CE = TopoDS::Edge( WEL.First() ); +> WEL.RemoveFirst(); +> B.MakeWire( NW ); +> VF = TopExp::FirstVertex ( EF, Standard_True); +> +> End = Standard_False; +> while ( !End) { +> B.Add( NW, CE ); +> CV = TopExp::LastVertex ( CE, Standard_True); +744,745c667,668 +< if (MVDEI.IsBound( CV )) { // CE comes to the degeneration +< iDeg = MVDEI( CV ); +--- +> if (MVDEI.IsBound( CV )) { // CE comes to the degeneration +> iDeg = MVDEI( CV ); +750,769c673,692 +< CE = NE; +< if (!NE.IsNull()) { // remove NE from WEL +< for (itl.Initialize( WEL ); itl.More(); itl.Next()) +< if ( NE == itl.Value()) { +< WEL.Remove( itl ); +< break; +< } +< } +< } // end degeneration +< +< else { +< if (CV.IsSame( VF )) { +< End = Standard_True; +< continue; +< } +< // edges in WEL most often are well ordered +< // so try to iterate until the End +< Standard_Boolean add = Standard_False; +< itl.Initialize(WEL); +< while ( itl.More() && !End) { +--- +> CE = NE; +> if (!NE.IsNull()) { // remove NE from WEL +> for (itl.Initialize( WEL ); itl.More(); itl.Next()) +> if ( NE == itl.Value()) { +> WEL.Remove( itl ); +> break; +> } +> } +> } // end degeneration +> +> else { +> if (CV.IsSame( VF )) { +> End = Standard_True; +> continue; +> } +> // edges in WEL most often are well ordered +> // so try to iterate until the End +> Standard_Boolean add = Standard_False; +> itl.Initialize(WEL); +> while ( itl.More() && !End) { +773,775c696,698 +< if (add) +< B.Add( NW, CE ); +< CE = NE; +--- +> if (add) +> B.Add( NW, CE ); +> CE = NE; +781,789c704,712 +< else +< itl.Next(); +< } +< if (!add) +< End = Standard_True; +< } +< } // !End +< +< myInternalWL.Append( NW ); +--- +> else +> itl.Next(); +> } +> if (!add) +> End = Standard_True; +> } +> } // !End +> +> myInternalWL.Append( NW ); +794c717 +< +--- +> +796,797c719,720 +< +< +--- +> +> +804,807c727,733 +< if (nbIW == 0) +< return; +< +< if ( myNewWires.Extent() != 1 && nbIW > 1) { +--- +> if ( nbIW == 1 ) { +> TopTools_MapOfShape UsedShapes( 2*NbConstEdges ); +> TopExp_Explorer expV (myInternalWL.First(), TopAbs_VERTEX); +> if (canPassToOld (expV.Current(), UsedShapes, MVE2, mySectionEdges)) +> myNewWires.Append ( myInternalWL ); +> } +> else if ( nbIW > 1 ) { +811c737 +< if ( ! mySectionEdges.Contains( itl.Value() )) +--- +> if ( ! mySectionEdges.Contains( itl.Value() )) +834c760 +< const TopoDS_Face& F) +--- +> const TopoDS_Face& F) +840c766 +< Precision::PConfusion()); +--- +> Precision::PConfusion()); +850,851c776,777 +< const TopoDS_Wire& W1, +< const TopoDS_Wire& W2) +--- +> const TopoDS_Wire& W1, +> const TopoDS_Wire& W2) +861,863c787 +< if (BRep_Tool::Degenerated( TopoDS::Edge( exp.Current() ))) +< exp.Next(); +< const TopoDS_Edge& e = TopoDS::Edge(exp.Current()); +--- +> const TopoDS_Edge& edg = TopoDS::Edge(exp.Current()); +865,866c789,790 +< Handle(Geom2d_Curve) C2d = BRep_Tool::CurveOnSurface(e,F,f,l); +< gp_Pnt2d pt2d(C2d->Value( 0.5 * ( f + l ))); +--- +> Handle(Geom2d_Curve) C2d = BRep_Tool::CurveOnSurface(edg,F,f,l); +> gp_Pnt2d pt2d(C2d->Value(f)); +901,902c825,826 +< TopTools_DataMapOfShapeShape& EqWM, +< const TopoDS_Face& F) +--- +> TopTools_DataMapOfShapeShape& EqWM, +> const TopoDS_Face& F) +911c835 +< +--- +> +922,923c846,847 +< if ( !EdgesMap.Contains( itE.Value()) ) +< break; +--- +> if ( !EdgesMap.Contains( itE.Value()) ) +> break; +926,934c850,858 +< if (isHole( Wire1, F)) { +< EqWM.Bind ( Wire1, Wire2 ); +< } +< else { +< EqWM.Bind ( Wire2, Wire1 ); +< } +< IndMap.Add(i); +< IndMap.Add(j); +< break; +--- +> if (isHole( Wire1, F)) { +> EqWM.Bind ( Wire1, Wire2 ); +> } +> else { +> EqWM.Bind ( Wire2, Wire1 ); +> } +> IndMap.Add(i); +> IndMap.Add(j); +> break; +956,957c880,881 +< BRepAlgo_AsDes& OuterInner, +< const TopoDS_Face& F) +--- +> BRepAlgo_AsDes& OuterInner, +> const TopoDS_Face& F) +962,969c886,887 +< // find next after it1.Value() +< for (it2.Initialize(EqWM); it2.More(); it2.Next()) +< if (it1.Value().IsSame( it2.Value() )) +< { +< it2.Next(); +< break; +< } +< for ( ; it2.More(); it2.Next()) { +--- +> for (it2.Initialize(EqWM); it2.More(); it2.Next()) { +> if (it1.Value().IsSame( it2.Value() )) continue; +973c891 +< OuterInner.Add (Wire2, Wire1); +--- +> OuterInner.Add (Wire2, Wire1); +975c893 +< OuterInner.Add (Wire1, Wire2); +--- +> OuterInner.Add (Wire1, Wire2); +986a905,913 +> //#define USE_BREPFEAT_SPLITSHAPE +> +> #ifdef USE_BREPFEAT_SPLITSHAPE +> +> # include +> void Partition_Loop2d::WiresToFaces(const BRepAlgo_Image& EdgeImage) +> #else +> +> # include +987a915 +> #endif +992a921,926 +> #ifndef USE_BREPFEAT_SPLITSHAPE +> +> // ============================================================ +> // use BRepAlgo_FaceRestrictor to make faces +> // ============================================================ +> +1001c935 +< +--- +> +1022c956 +< +--- +> +1037c971 +< +--- +> +1049d982 +< Standard_Integer nbEqW = EqWM.Extent(); // protection against infinite loop +1052,1055c985,988 +< TopoDS_Wire outerW = TopoDS::Wire ( it.Value() ); +< if ( OuterInner.HasDescendant( outerW ) && // has internal +< ! OuterInner.Descendant( outerW ).IsEmpty() ) +< continue; +--- +> TopoDS_Wire outerW = TopoDS::Wire ( it.Value() ); +> if ( OuterInner.HasDescendant( outerW ) && // has internal +> ! OuterInner.Descendant( outerW ).IsEmpty() ) +> continue; +1057c990 +< FR.Add( outerW ); +--- +> FR.Add( outerW ); +1064,1069c997,1002 +< FR.Add (IW); +< myInternalWL.Remove( itIW ); // == itIW.Next() !!! +< } +< else +< itIW.Next(); +< } +--- +> FR.Add (IW); +> myInternalWL.Remove( itIW ); // == itIW.Next() !!! +> } +> else +> itIW.Next(); +> } +1071,1072c1004,1005 +< // the hole-part of current pair of equal wires will be in the next new face +< prevHolesL.Append ( it.Key() ); +--- +> // the hole-part of current pair of equal wires will be in the next new face +> prevHolesL.Append ( it.Key() ); +1079,1080c1012,1013 +< for (; FR.More(); FR.Next()) +< myNewFaces.Append(FR.Current()); +--- +> for (; FR.More(); FR.Next()) +> myNewFaces.Append(FR.Current()); +1086c1019 +< // remove them from the EqWM, +--- +> // remove themfrom the EqWM, +1091,1116c1024,1040 +< TopoDS_Wire& Hole = TopoDS::Wire ( itPrev.Value() ); +< FR.Add ( Hole ); +< if (clearOuterInner) { +< const TopoDS_Wire& outerW = TopoDS::Wire ( EqWM.Find( Hole ) ); +< // Loop on wires including outerW +< TopTools_ListIteratorOfListOfShape itO( OuterInner.Ascendant( outerW )); +< for (; itO.More(); itO.Next()) { +< TopTools_ListOfShape& innerL = OuterInner.ChangeDescendant( itO.Value() ); +< TopTools_ListIteratorOfListOfShape itI (innerL); +< // Loop on internal wires of current including wire +< for (; itI.More(); itI.Next()) +< if ( outerW.IsSame( itI.Value() )) { +< innerL.Remove( itI ); break; +< } +< } +< } +< EqWM.UnBind ( Hole ); +< } +< +< if (nbEqW == EqWM.Extent()) +< { +< // error: pb with wires classification +< #ifdef DEB +< cout << "Partition_Loop2d::WiresToFaces(), pb with wires classification" << endl; +< #endif +< break; +--- +> TopoDS_Wire& Hole = TopoDS::Wire ( itPrev.Value() ); +> FR.Add ( Hole ); +> if (clearOuterInner) { +> const TopoDS_Wire& outerW = TopoDS::Wire ( EqWM.Find( Hole ) ); +> // Loop on wires including outerW +> TopTools_ListIteratorOfListOfShape itO( OuterInner.Ascendant( outerW )); +> for (; itO.More(); itO.Next()) { +> TopTools_ListOfShape& innerL = OuterInner.ChangeDescendant( itO.Value() ); +> TopTools_ListIteratorOfListOfShape itI (innerL); +> // Loop on internal wires of current including wire +> for (; itI.More(); itI.Next()) +> if ( outerW.IsSame( itI.Value() )) { +> innerL.Remove( itI ); break; +> } +> } +> } +> EqWM.UnBind ( Hole ); +1121c1045 +< } // if !EqWM.IsEmpty() +--- +> } // !EqWM.IsEmpty() +1134a1059,1101 +> +> #else // ifndef USE_BREPFEAT_SPLITSHAPE +> +> // ============================================================ +> // use BRepFeat_SplitShape to make faces +> // ============================================================ +> +> BRepFeat_SplitShape Split(myFace); +> TopTools_MapOfShape AddedSectionEdgesMap; +> +> myNewWires.Append(myInternalWL); +> +> TopTools_ListIteratorOfListOfShape it(myNewWires); +> for (; it.More(); it.Next()) { +> TopoDS_Iterator itE(it.Value()); +> for (; itE.More(); itE.Next()) { +> const TopoDS_Edge& newE = TopoDS::Edge( itE.Value() ); +> if (AddedSectionEdgesMap.Add(newE)) { +> if (mySectionEdges.Contains(newE)) +> Split.Add(newE,F); // new edge on face +> else { +> const TopoDS_Edge& oldE = TopoDS::Edge( EdgeImage.ImageFrom(newE) ); +> Split.Add(newE, oldE); // splited edge +> } +> } +> } +> } +> Split.Build(); +> +> if (Split.IsDone()) +> myNewFaces = Split.Modified(F); +> +> #endif // ifndef USE_BREPFEAT_SPLITSHAPE +> +> +> +> #ifdef DEB +> Standard_Integer nbF = myNewFaces.Extent(); +> if (nbW != nbF) +> cout << "WiresToFaces(): " << nbW << " wires --> " << myNewFaces.Extent() << " faces " +> << endl; +> #endif +> +1136c1103 +< for (; itNF.More(); itNF.Next()) +--- +> for (; itNF.More(); itNF.Next()) +diff -r ../src/PARTITION/Partition_Loop.cxx ../../../GEOM_SRC/src/PARTITION/Partition_Loop.cxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/PARTITION/Partition_Spliter.cdl ../../../GEOM_SRC/src/PARTITION/Partition_Spliter.cdl +97,101d96 +< MakeSolids (me: in out; Solid : Shape from TopoDS; +< Shells: in out ListOfShape from TopTools) +< is private; +< ---Purpose: make solids out of Shells +< +139,153d133 +< IsInside (myclass; S1,S2 : Shape from TopoDS) +< returns Boolean from Standard is private; +< ---Purpose: Return True if the first vertex of S1 inside S2. +< -- If S1.IsNull(), check infinite point against S2. +< +< GetOriginalShape(me; aShape : Shape from TopoDS) +< returns Shape from TopoDS is private; +< ---Purpose: Return the shape aShape originates from. aShape +< -- should be a face or more complex result shape +< +< FindToolsToReconstruct(me: in out) is private; +< ---Purpose: find and store as objects tools which interfere +< -- with solids or are inside solids without +< -- an interference +< +156c136 +< myDoneStep : ShapeEnum from TopAbs; -- rebuilt level +--- +> myDoneStep : ShapeEnum from TopAbs; -- reconstructed topology +163,166d142 +< myEqualEdges : MapOfShape from TopTools; -- equal splits +< myNewSection : MapOfShape from TopTools; -- new secton edges +< myClosedShapes : MapOfShape from TopTools; +< myWrappingSolid: MapOfShape from TopTools; -- solids having other shapes inside +169,171c145 +< myInternalFaces: DataMapOfShapeShape from TopTools; -- shape and its internal faces +< myIntNotClFaces: DataMapOfShapeShape from TopTools; -- internal but not closed +< +--- +> myNewSection : MapOfShape from TopTools; -- new secton edges +183a158,164 +> -- equal splits +> myEqualEdges : MapOfShape from TopTools; +> +> -- shape and its internal faces +> myInternalFaces: DataMapOfShapeShape from TopTools; +> myIntNotClFaces: DataMapOfShapeShape from TopTools;-- internal but not closed +> +diff -r ../src/PARTITION/Partition_Spliter.cxx ../../../GEOM_SRC/src/PARTITION/Partition_Spliter.cxx +27c27 +< // $Header$ +--- +> // $Header$ +29a30 +> #include "Partition_Spliter.ixx" +34d34 +< #include "Partition_Spliter.ixx" +37a38,39 +> #include +> #include +40,41d41 +< #include +< #include +51a52,54 +> #include +> #include +> #include +56,58d58 +< #include +< #include +< #include +70,72d69 +< #include +< #include +< #include +73a71,72 +> #include +> #include +74a74 +> #include +80c80 +< //# define PART_PERF +--- +> #define DRAW 0 +83,90c83,90 +< #ifdef PART_PERF +< # include +< #endif +< +< //======================================================================= +< //function : isClosed +< //purpose : check id a shape is closed, ie is a solid or a closed shell +< //======================================================================= +--- +> #ifdef DRAW +> #include +> Standard_IMPORT Standard_Boolean AffichInter3d ; +> Standard_IMPORT Standard_Boolean AffichInter2d ; +> Standard_IMPORT Standard_Boolean AffichVertex; +> Standard_IMPORT Standard_Boolean AffichFace; +> Standard_IMPORT Standard_Boolean AffichWire; +> Standard_IMPORT Standard_Boolean SelectFace; +92,94c92 +< static Standard_Boolean isClosed(const TopoDS_Shape& theShape) +< { +< Standard_Boolean isClosed = (theShape.ShapeType() == TopAbs_SOLID); +--- +> static char* names = new char[100]; +96,104c94 +< if (!isClosed && theShape.ShapeType() == TopAbs_SHELL) { +< TopTools_IndexedDataMapOfShapeListOfShape MEF; +< TopExp::MapShapesAndAncestors(theShape, TopAbs_EDGE, TopAbs_FACE, MEF); +< for (Standard_Integer i=1; isClosed && i<=MEF.Extent(); ++i) +< isClosed = ( MEF(i).Extent() != 1 ); +< } +< +< return isClosed; +< } +--- +> #endif +124,133d113 +< if (S.ShapeType() < TopAbs_SOLID) { // compound or compsolid +< TopoDS_Iterator it (S); +< for (; it.More(); it.Next()) +< { +< AddTool( it.Value()); +< myFaceShapeMap.Bind( it.Value(), S ); // to know compound by shape +< } +< return; +< } +< +135d114 +< { +137,140d115 +< myFaceShapeMap.Bind( exp.Current(), S ); +< } +< if (isClosed( S )) +< myClosedShapes.Add( S ); +153d127 +< { +155,156d128 +< myFaceShapeMap.Bind( it.Value(), S ); // to know compound by shape +< } +164a137,138 +> +> myListShapes.Append(S); +166d139 +< Standard_Integer nbFacesBefore = myMapFaces.Extent(); // not to add twice the same S +168,172c141,143 +< const TopoDS_Shape & aFace = exp.Current(); +< if ( ! myFaceShapeMap.IsBound( aFace )) // keep shape of tool face added as object +< myFaceShapeMap.Bind( aFace, S ); +< if (myMapFaces.Add( aFace )) +< myImagesFaces.SetRoot( aFace ); +--- +> myFaceShapeMap.Bind( exp.Current(), S ); +> myMapFaces.Add(exp.Current()); +> myImagesFaces.SetRoot(exp.Current()); +174,186d144 +< +< if (nbFacesBefore == myMapFaces.Extent()) +< return; +< +< // solids must be processed before all +< if (S.ShapeType() == TopAbs_SOLID) +< myListShapes.Prepend(S); +< else +< myListShapes.Append(S); +< +< if (isClosed( S )) +< myClosedShapes.Add( S ); +< +211,214d168 +< myClosedShapes.Clear(); +< myEqualEdges.Clear(); +< myNewSection.Clear(); +< myWrappingSolid.Clear(); +217,218c171 +< myInternalFaces.Clear(); +< myIntNotClFaces.Clear(); +--- +> myNewSection.Clear(); +228a182 +> myInternalFaces.Clear(); +248,251d201 +< #ifdef PART_PERF +< OSD_Chronometer aCron; +< #endif +< +259,262d208 +< #ifdef PART_PERF +< aCron.Start(); +< #endif +< +268a215 +> +271,275c218,230 +< #ifdef PART_PERF +< cout << "+++ CompletPart3d()" << endl; +< aCron.Show( cout ); +< aCron.Reset(); +< aCron.Start(); +--- +> TopTools_MapOfShape& Modif = myInter3d.TouchedFaces(); +> TopTools_MapOfShape& NewEdges = myInter3d.NewEdges(); +> Handle(BRepAlgo_AsDes) SectionEdgesAD = myInter3d.SectionEdgesAD(); +> +> #ifdef DRAW +> if (AffichInter3d) { +> Standard_Integer i=0; +> for (it.Initialize(NewEdges); it.More(); it.Next(), i++) { +> sprintf(names,"e_%d",i); +> cout << "donly " << names << endl; +> DBRep::Set(names,it.Key()); +> } +> } +276a232,300 +> //if (Modif.IsEmpty()) return; +> +> // ----------------------------------------------- +> // store tools intersecting solids as object shapes, +> // they must split into faces too +> // ----------------------------------------------- +> +> // build edge - face map for tool faces +> TopTools_IndexedDataMapOfShapeListOfShape EFM; +> for (it.Initialize(myMapTools); it.More(); it.Next()) +> TopExp::MapShapesAndAncestors( it.Key(), TopAbs_EDGE, TopAbs_FACE, EFM); +> +> TopTools_MapOfShape checkedEdgeMap; +> for (itl.Initialize( myListShapes ); itl.More(); itl.Next()) { +> TopExp_Explorer expSo (itl.Value(), TopAbs_SOLID); +> for (; expSo.More(); expSo.Next()) { +> +> TopTools_ListOfShape checkFL; // faces to check +> for ( exp.Init( expSo.Current(), TopAbs_FACE); exp.More(); exp.Next()) +> checkFL.Append ( exp.Current()); +> +> // iterate a list while appending new items +> TopTools_ListIteratorOfListOfShape itF, itCF; +> for (itCF.Initialize (checkFL) ; itCF.More(); itCF.Next()) { +> const TopoDS_Shape& F = itCF.Value(); +> if ( myAsDes->HasDescendant( F )) { +> // new edges on face to check +> const TopTools_ListOfShape& NEL = myAsDes->Descendant( F ); +> TopTools_ListIteratorOfListOfShape itE (NEL); +> for (; itE.More(); itE.Next()) { +> if (checkedEdgeMap.Add( itE.Value() )) { +> // intersected faces originating an edge +> itF.Initialize (myAsDes->Ascendant( itE.Value() )); +> for (; itF.More(); itF.Next()) { +> if (!myMapFaces.Contains( itF.Value())) { +> AddShape( itF.Value() ); +> checkFL.Append( itF.Value() ); +> } +> } +> // faces having section edges on F +> if (EFM.Contains( itE.Value())) +> itF.Initialize ( EFM.FindFromKey (itE.Value())); +> for (; itF.More(); itF.Next()) { +> if (!myMapFaces.Contains( itF.Value())) { +> AddShape( itF.Value() ); +> checkFL.Append( itF.Value() ); +> } +> } +> } +> } +> } +> // find faces cut by edges of F +> TopExp_Explorer expE(F, TopAbs_EDGE); +> for (; expE.More();expE.Next()) { +> if ( SectionEdgesAD->HasAscendant( expE.Current() ) +> && checkedEdgeMap.Add( expE.Current() )) { +> itF.Initialize( SectionEdgesAD->Ascendant( expE.Current()) ); +> for (; itF.More(); itF.Next()) { +> if (!myMapFaces.Contains( itF.Value())) { +> AddShape( itF.Value() ); +> checkFL.Append( itF.Value() ); +> } +> } +> } +> } +> } +> } +> } +> +281,290d304 +< // add tool faces which must be reconstructed to myMapFaces too +< FindToolsToReconstruct(); +< +< #ifdef PART_PERF +< cout << "+++ FindToolsToReconstruct()" << endl; +< aCron.Show( cout ); +< aCron.Reset(); +< aCron.Start(); +< #endif +< +310d323 +< TopTools_MapOfShape& Modif = myInter3d.TouchedFaces(); +313c326 +< Partition_Inter2d::CompletPart2d (myAsDes, F, myInter3d.NewEdges()); +--- +> Partition_Inter2d::CompletPart2d (myAsDes, F, NewEdges); +320,325d332 +< #ifdef PART_PERF +< cout << "+++ CompletPart2d()" << endl; +< aCron.Show( cout ); +< aCron.Reset(); +< aCron.Start(); +< #endif +340d346 +< +344,346c350 +< //----------------------------------------------- +< // ------- Reconstruction of all the edges.------ +< //----------------------------------------------- +--- +> // Reconstruction of all the edges. +349,351c353,355 +< // ============== +< // cut new edges +< // ============== +--- +> // Add to myAsDes end vertices of new edges and cut new edges +> int j=1; +> TopTools_MapOfShape& NewEdges = myInter3d.NewEdges(); +353c357 +< for ( it.Initialize(myInter3d.NewEdges()); it.More(); it.Next()) { +--- +> for ( it.Initialize(NewEdges); it.More(); it.Next()) { +365,369c369,371 +< // Add end vertices to new edges only if +< // one face is Tool and the other is Shape +< Standard_Boolean isTool1 = ! myMapFaces.Contains( aListF.First() ); +< Standard_Boolean isTool2 = ! myMapFaces.Contains( aListF.Last() ); +< if (isTool1 || isTool2) +--- +> // one face is Tool, the other is Shape: +> if ( (myMapTools.Contains(aListF.First()) && myMapFaces.Contains(aListF.Last()) ) || +> ( myMapFaces.Contains(aListF.First()) && myMapTools.Contains(aListF.Last()) ) ) +402a405,413 +> #ifdef DRAW +> if (AffichVertex) { +> for(itl.Initialize(aListV);itl.More();itl.Next(), j++) { +> sprintf(names,"v_%d",j); +> cout << "donly " << names << endl; +> DBRep::Set(names,itl.Value()); +> } +> } +> #endif +404d414 +< // cut new edges +406a417 +> // cut new edges +414d424 +< // ============== +416d425 +< // ============== +429,434d437 +< #ifdef PART_PERF +< cout << "+++ Cut Edges" << endl; +< aCron.Show( cout ); +< aCron.Reset(); +< aCron.Start(); +< #endif +436d438 +< // process same domain section edges +441,446d442 +< #ifdef PART_PERF +< cout << "+++ MergeEqualEdges()" << endl; +< aCron.Show( cout ); +< aCron.Reset(); +< aCron.Start(); +< #endif +453,454d448 +< if (myMapTools.Contains( itl.Value() )) +< continue; // skip tool faces +469a464,466 +> // make faces interfering by section edges share the same splits +> //ProcessSectionEdges( SectionEdgesAD ); +> +486,491d482 +< #ifdef PART_PERF +< cout << "+++ MakeFaces()" << endl; +< aCron.Show( cout ); +< aCron.Reset(); +< aCron.Start(); +< #endif +508c499 +< // split and add solids and shells +--- +> // split solids +510c501,502 +< +--- +> +> // solids must remains closed, so process them first +513,517d504 +< for (itl.Initialize(myListShapes);itl.More();itl.Next()) +< { +< const TopoDS_Shape & S = itl.Value(); +< if (S.ShapeType() > TopAbs_SHELL) +< continue; +519,531c506,526 +< TopTools_ListOfShape NSL; // new shape list +< MakeShells (S , NSL); +< if (makeSolids && S.ShapeType() == TopAbs_SOLID ) +< MakeSolids( S, NSL ); +< +< TopTools_ListIteratorOfListOfShape itNSL (NSL); +< for ( ; itNSL.More(); itNSL.Next()) +< myBuilder.Add (myShape, itNSL.Value()); +< } +< #ifdef PART_PERF +< cout << "+++ MakeShells()" << endl; +< aCron.Show( cout ); +< #endif +--- +> for (itl.Initialize(myListShapes);itl.More();itl.Next()) { +> if (itl.Value().ShapeType() == TopAbs_SOLID) { +> TopTools_ListOfShape NSL; +> MakeShells (itl.Value() , NSL); +> TopTools_ListIteratorOfListOfShape itS(NSL); +> for ( ; itS.More(); itS.Next()) +> if (makeSolids) { +> // make a solid from a shell +> TopoDS_Solid Solid; +> myBuilder.MakeSolid( Solid ); +> myBuilder.Add (Solid, itS.Value()); +> myBuilder.Add (myShape, Solid); +> } +> else +> myBuilder.Add (myShape, itS.Value()); +> } +> } +> +> //----------------------------------------------- +> // split shells +> //----------------------------------------------- +532a528,537 +> for (itl.Initialize(myListShapes);itl.More();itl.Next()) { +> if (itl.Value().ShapeType() == TopAbs_SHELL) { +> TopTools_ListOfShape NSL; +> MakeShells (itl.Value() , NSL); +> TopTools_ListIteratorOfListOfShape itS(NSL); +> for ( ; itS.More(); itS.Next()) +> myBuilder.Add (myShape, itS.Value()); +> } +> } +> +537,539c542,543 +< for (itl.Initialize(myListShapes);itl.More();itl.Next()) +< { +< const TopoDS_Shape & S = itl.Value(); +--- +> for (itl.Initialize(myListShapes);itl.More();itl.Next()) { +> const TopoDS_Shape& S = itl.Value(); +541c545 +< myMapTools.Contains( S )) +--- +> myMapTools.Contains( S )) +546c550 +< myBuilder.Add (myShape, itS.Value()); +--- +> myBuilder.Add (myShape, itS.Value()); +548c552 +< +--- +> +552a557 +> +554,555c559,560 +< //function : MakeSolids +< //purpose : make solids out of Shells +--- +> //function : Tri +> //purpose : +558,559c563,564 +< void Partition_Spliter::MakeSolids(const TopoDS_Shape & theSolid, +< TopTools_ListOfShape & theShellList) +--- +> static void Tri(const TopoDS_Edge& E, +> TopTools_SequenceOfShape& Seq) +561,566c566,569 +< // for a solid wrapping other shells or solids without intersection, +< // it is necessary to find shells making holes in it +< +< TopTools_ListOfShape aNewSolids; // result +< TopTools_ListOfShape aHoleShells; +< TopoDS_Shape anInfinitePointShape; +--- +> Standard_Boolean Invert = Standard_True; +> Standard_Integer NbPoints = Seq.Length(); +> Standard_Real U1,U2; +> TopoDS_Vertex V1,V2; +568,574c571,593 +< Standard_Boolean isWrapping = myWrappingSolid.Contains( theSolid ); +< if (!isWrapping && !theShellList.IsEmpty()) +< { +< // check if theSolid initially has internal shells +< TopoDS_Iterator aShellExp (theSolid); +< aShellExp.Next(); +< isWrapping = aShellExp.More(); +--- +> while (Invert) { +> Invert = Standard_False; +> for ( Standard_Integer i = 1; i < Seq.Length(); i++) { +> +> V1 = TopoDS::Vertex(Seq.Value(i)); +> V2 = TopoDS::Vertex(Seq.Value(i+1)); +> +> V1.Orientation(TopAbs_INTERNAL); +> V2.Orientation(TopAbs_INTERNAL); +> +> U1 = BRep_Tool::Parameter(V1,E); +> U2 = BRep_Tool::Parameter(V2,E); +> +> if (IsEqual(U1,U2)) { +> Seq.Remove(i); +> i--; +> continue; +> } +> if (U2 < U1) { +> Seq.Exchange(i,i+1); +> Invert = Standard_True; +> } +> } +576,580c595 +< +< TopTools_ListIteratorOfListOfShape aShellIt(theShellList); +< for ( ; aShellIt.More(); aShellIt.Next()) +< { +< const TopoDS_Shape & aShell = aShellIt.Value(); +--- +> } +582,590c597,616 +< // check if a shell is a hole +< if (isWrapping && IsInside (anInfinitePointShape, aShell)) +< aHoleShells.Append( aShell ); +< else +< { +< // make a solid from a shell +< TopoDS_Solid Solid; +< myBuilder.MakeSolid( Solid ); +< myBuilder.Add (Solid, aShell); +--- +> //======================================================================= +> //function : MakeEdges +> //purpose : cut E by vertices VOnE, return list of new edges NE +> //======================================================================= +> +> void Partition_Spliter::MakeEdges (const TopoDS_Edge& E, +> const TopTools_ListOfShape& VOnE, +> TopTools_ListOfShape& NE ) const +> { +> TopoDS_Edge WE = E; +> WE.Orientation(TopAbs_FORWARD); +> +> TopTools_ListIteratorOfListOfShape itv(VOnE); +> TopTools_SequenceOfShape SV; +> +> Standard_Real U1,U2, f, l; +> TopoDS_Vertex V1,V2,VF,VL; +> +> BRep_Tool::Range(WE,f,l); +> TopExp::Vertices(WE,VF,VL); +592c618,622 +< aNewSolids.Append (Solid); +--- +> if (VOnE.Extent() < 3) { // do not rebuild not cut edge +> if (( VF.IsSame( VOnE.First() ) && VL.IsSame( VOnE.Last() )) || +> VL.IsSame( VOnE.First() ) && VF.IsSame( VOnE.Last() ) ) { +> NE.Append( E ); +> return; +596,606c626,627 +< // find outer a shell most close to each hole shell +< TopTools_DataMapOfShapeShape aInOutMap; +< for (aShellIt.Initialize( aHoleShells ); aShellIt.More(); aShellIt.Next()) +< { +< const TopoDS_Shape & aHole = aShellIt.Value(); +< TopTools_ListIteratorOfListOfShape aSolisIt (aNewSolids); +< for ( ; aSolisIt.More(); aSolisIt.Next()) +< { +< const TopoDS_Shape & aSolid = aSolisIt.Value(); +< if (! IsInside( aHole, aSolid )) +< continue; +--- +> for (; itv.More(); itv.Next()) +> SV.Append(itv.Value()); +608,616c629,648 +< if ( aInOutMap.IsBound (aHole)) +< { +< const TopoDS_Shape & aSolid2 = aInOutMap( aHole ); +< if ( IsInside( aSolid, aSolid2 )) +< { +< aInOutMap.UnBind( aHole ); +< aInOutMap.Bind ( aHole, aSolid ); +< } +< } +--- +> Tri( WE, SV); +> +> Standard_Integer iVer, NbVer = SV.Length(); +> +> +> //---------------------------------------------------------------- +> // Construction of the new edges . +> //---------------------------------------------------------------- +> +> if (VF.IsSame(VL)) { // closed edge +> if (NbVer==1) +> SV.Append( SV.First() ); +> else if (!SV.First().IsSame(SV.Last())) { +> Standard_Boolean isFirst=0; +> Standard_Real minDU = 1.e10; +> TopoDS_Vertex endV = Partition_Inter2d::FindEndVertex(VOnE, f,l, E, isFirst,minDU); +> if (endV.IsSame(SV.First())) +> SV.Append(endV); +> else if (endV.IsSame(SV.Last())) +> SV.Prepend(endV); +618c650 +< aInOutMap.Bind ( aHole, aSolid ); +--- +> MESSAGE ("END VERTEX IS IN SEQUNCE MIDDLE"); +620,623c652 +< +< // add aHole to a solid +< if (aInOutMap.IsBound( aHole )) +< myBuilder.Add ( aInOutMap( aHole ), aHole ); +--- +> NbVer = SV.Length(); +626,627c655,693 +< theShellList.Clear(); +< theShellList.Append( aNewSolids ); +--- +> for (iVer=1; iVer < NbVer; iVer++) { +> V1 = TopoDS::Vertex(SV(iVer)); +> V2 = TopoDS::Vertex(SV(iVer+1)); +> +> TopoDS_Shape NewEdge = WE.EmptyCopied(); +> V1.Orientation(TopAbs_FORWARD); +> myBuilder.Add (NewEdge,V1); +> V2.Orientation(TopAbs_REVERSED); +> myBuilder.Add (NewEdge,V2); +> +> if (iVer==1) +> U1 = f; +> else { +> V1.Orientation(TopAbs_INTERNAL); +> U1=BRep_Tool::Parameter(V1,WE); +> } +> if (iVer+1 == NbVer) +> U2 = l; +> else { +> V2.Orientation(TopAbs_INTERNAL); +> U2=BRep_Tool::Parameter(V2,WE); +> } +> if (Abs(U1-U2) <= Precision::PConfusion()) { +> MESSAGE( "MakeEdges(), EQUAL PARAMETERS OF DIFFERENT VERTICES"); +> continue; +> } +> TopoDS_Edge EE=TopoDS::Edge(NewEdge); +> myBuilder.Range (EE,U1,U2); +> +> TopoDS_Edge NEdge = TopoDS::Edge(NewEdge); +> myBuilder.SameParameter(NEdge,Standard_False); +> +> Standard_Real tol = 1.0e-2; +> Standard_Boolean flag = BRep_Tool::SameParameter(NEdge); +> if (!flag) { +> BRepLib::SameParameter(NEdge,tol); +> } +> NE.Append(NEdge.Oriented(E.Orientation())); +> } +629c695 +< +--- +> +644,646d709 +< // ================================================ +< // check if internal faces have been already found +< // ================================================ +668,671d730 +< // =================================== +< // get data for internal faces search +< // =================================== +< +682c741 +< const TopoDS_Shape & resE = expl.Current() ; +--- +> TopoDS_Shape resE = expl.Current() ; +718,737d776 +< // add tool faces having section edges on faces of theShape to MFP and DMSEFP; +< // such tool faces need not to be reconstructed and so they are not in myListShapes +< for (itm.Initialize(myMapTools); itm.More(); itm.Next()) +< { +< const TopoDS_Shape & aToolFace = itm.Key(); +< if (myMapFaces.Contains( aToolFace )) +< continue; +< MFP.Add(aToolFace); +< for (expl.Init( aToolFace, TopAbs_EDGE ); expl.More(); expl.Next()) { +< TopoDS_Shape se = expl.Current(); +< if ( MSE.Contains( se )) {// section edge +< if (!DMSEFP.IsBound( se )) +< DMSEFP.Bind( se, EmptyL ); +< DMSEFP( se ).Append( aToolFace ); +< } +< } +< } +< +< +< // =========================== +739d777 +< // =========================== +754c792 +< // does OrigE itself splits a face +--- +> // is OrigE itself splits a face +778,780c816 +< TopoDS_Shape anOrigFace = aFace1; +< if (myImagesFaces.IsImage(aFace1)) +< anOrigFace = myImagesFaces.Root(aFace1); +--- +> const TopoDS_Shape& anOrigFace = myImagesFaces.Root(aFace1); +830c866 +< //face of CSF sharing E +--- +> //face of CSF sharing E +835,843d870 +< if (inside && isSectionE) +< { +< // aFace1 must be tested with both adjacent faces of CSF +< const TopoDS_Shape& aShapeFace2 = sameDom1 ? FL.First() : FL.Last(); +< if (aShapeFace2 != aShapeFace) +< inside = Partition_Loop3d::IsInside (E, TopoDS::Face(aShapeFace2), aFace1, +< 1, dot, GoodOri); +< } +< +846,847c873 +< KeepFaces.Append(aFace1); +< +--- +> KeepFaces.Append(aFace1); +858c884 +< KeepFaces.Append(aFace2); +--- +> KeepFaces.Append(aFace2); +863d888 +< // =================================================== +865d889 +< // =================================================== +906,911c930 +< // =============================================================== +< // here MFP contains faces outer of theShape and those of shapes +< // which do not interfere with theShape at all and between which +< // there may be those wrapped by theShape and whose faces may be +< // needed to be returned as well +< // =============================================================== +--- +> // check if kept faces form a shell without free edges +913,976c932,936 +< Standard_Boolean isSolid = (theShape.ShapeType() == TopAbs_SOLID); +< if (All || isSolid) // All is for sub-result removal +< { +< for ( itm.Initialize( MFP ); itm.More(); itm.Next() ) { +< TopoDS_Shape aFace = itm.Key(); +< +< // find a shape aFace originates from +< TopoDS_Shape anOrigShape = GetOriginalShape( aFace ); +< +< // find out if all faces of anOrigShape are not in MFP +< // and by the way remove them from MFP +< Standard_Boolean isAllOut = Standard_True; +< TopoDS_Shape aSplitFaces = anOrigShape; +< if (myImageShape.HasImage(anOrigShape)) +< aSplitFaces = myImageShape.Image(anOrigShape).First(); +< +< TopTools_ListOfShape aSplitFaceL; +< for (expl.Init( aSplitFaces, TopAbs_FACE ); expl.More(); expl.Next()) +< { +< const TopoDS_Shape & aSpFace = expl.Current(); +< // a tool face which become object has image but the whole tool shape has not +< if (myImageShape.HasImage( aSpFace )) +< { +< TopExp_Explorer exF (myImageShape.Image( aSpFace ).First(), TopAbs_FACE ); +< for ( ; exF.More(); exF.Next() ) +< { +< aSplitFaceL.Append( exF.Current() ); +< if ( ! MFP.Remove( exF.Current() )) +< isAllOut = Standard_False; +< } +< } +< else +< { +< aSplitFaceL.Append( aSpFace ); +< if ( ! MFP.Remove( aSpFace )) +< isAllOut = Standard_False; +< } +< } +< itm.Initialize( MFP ); +< if ( !isAllOut ) +< continue; +< +< // classify anOrigShape against theShape +< if (IsInside (anOrigShape, theShape)) +< { +< if (isSolid && myClosedShapes.Contains( anOrigShape )) +< // to make a special care at solid reconstruction +< myWrappingSolid.Add ( theShape ); +< +< // keep faces of an internal shape anOrigShape +< KeptFaces.Append( aSplitFaceL ); +< } +< } +< } +< +< // ==================================================== +< // check if kept faces form a shell without free edges +< // ==================================================== +< +< DMEF.Clear(); // edge - kept faces +< MFP.Clear(); // reuse it for wrong faces +< if (CheckClosed) { +< for (itl.Initialize(KeptFaces); itl.More(); itl.Next() ) +< TopExp::MapShapesAndAncestors(itl.Value(), TopAbs_EDGE, TopAbs_FACE, DMEF); +--- +> DMEF.Clear(); // edge - kept faces +> MFP.Clear(); // wrong faces +> if (CheckClosed) { +> for (itl.Initialize(KeptFaces); itl.More(); itl.Next() ) +> TopExp::MapShapesAndAncestors(itl.Value(), TopAbs_EDGE, TopAbs_FACE, DMEF); +984,985c944 +< if (! BRep_Tool::Degenerated( TopoDS::Edge( E )) && +< ! MSE.Contains( E )) +--- +> if (! MSE.Contains( E )) +1006,1009c965 +< // ============== +< // make a result +< // ============== +< +--- +> // a result compound +1043a1000,1009 +> // check if S is closed shape +> Standard_Boolean isClosed = Standard_True; +> +> TopTools_IndexedDataMapOfShapeListOfShape MEF; +> Standard_Integer i; +> if (S.ShapeType() != TopAbs_SOLID) { +> TopExp::MapShapesAndAncestors(S, TopAbs_EDGE, TopAbs_FACE, MEF); +> for (i=1; isClosed && i<=MEF.Extent(); ++i) +> isClosed = ( MEF(i).Extent() != 1 ); +> } +1048,1049c1014,1015 +< // add split faces inside S +< if (myClosedShapes.Contains( S )) { +--- +> // split faces inside S +> if (isClosed) { +1051a1018,1019 +> // } else { // a shell may become closed +> // ShellMaker.AddConstFaces( InternalFacesComp ); +1056c1024 +< // Add faces added to new shell to myAddedFacesMap: +--- +> // 1. Add faces added to new shell to myAddedFacesMap: +1057a1026 +> // 2. Check shell closeness (DEBUG) +1059a1029,1031 +> #ifdef DEB +> Standard_Boolean checkCloseness = Standard_True; +> #endif +1061c1033,1034 +< for (; expF.More(); expF.Next()) +--- +> for (; expF.More(); expF.Next()) { +> +1062a1036,1042 +> +> #ifdef DEB +> if (checkCloseness && +> ! myInter3d.HasSameDomainF( myImagesFaces.Root(expF.Current()) )) +> checkCloseness = Standard_False; +> #endif +> } +1063a1044,1061 +> #ifdef DEB +> if (checkCloseness) { +> // if S is closed, a new shell must be closed too; +> if (isClosed) { +> // check that a new shell is closed +> MEF.Clear(); +> TopExp::MapShapesAndAncestors(itS.Value(), TopAbs_EDGE, TopAbs_FACE, MEF); +> for (i=1; isClosed && i<=MEF.Extent(); ++i) +> isClosed = ( MEF(i).Extent() != 1 ); +> if (!isClosed) { // remove not closed shell +> MESSAGE (" NOT CLOSED SHELL " ); +> //NS.Remove( itS ); +> itS.Next(); +> continue; +> } +> } +> } +> #endif +1065c1063 +< } +--- +> } // loop on new shells +1070,1072c1068,1070 +< //purpose : compare edges of EL1 against edges of EL2, +< // Result is in EMM binding EL1 edges to list of equal edges. +< // Edges are considered equall only if they have same vertices. +--- +> //purpose : compare edges form EL1 against edges from EL2, +> // Result is in EMM binding edge form EL1 to list of equal edges +> // Edges are considered equall only if they have same vertices +1116c1114 +< if (BRep_Tool::Degenerated( E2 ) || AllEqMap.Contains (E2)) +--- +> if (BRep_Tool::Degenerated( E2 )) +1212c1210 +< TopTools_MapOfShape AddedEqualM, EqualSeamM; +--- +> TopTools_MapOfShape AddedEqualM; +1235,1239c1233,1234 +< if (AddedEqualM.Contains( NE )) { +< // a seam must be twice in a loop +< if (!BRep_Tool::IsClosed( E, F ) || !EqualSeamM.Add( NE )) +< continue; +< } +--- +> if (AddedEqualM.Contains( NE )) +> continue; +1274,1275c1269,1270 +< if (myEqualEdges.Contains( NE )) +< AddedEqualM.Add( NE ); +--- +> if (myEqualEdges.Contains( NE ) && !AddedEqualM.Add( NE )) +> continue; +1378,1528d1372 +< +< //======================================================================= +< //function : Tri +< //purpose : +< //======================================================================= +< +< static void Tri(const TopoDS_Edge& E, +< TopTools_SequenceOfShape& Seq, +< const Partition_Inter3d & theInter3d) +< { +< Standard_Boolean Invert = Standard_True; +< Standard_Real U1,U2; +< TopoDS_Vertex V1,V2; +< +< while (Invert) { +< Invert = Standard_False; +< for ( Standard_Integer i = 1; i < Seq.Length(); i++) { +< +< V1 = TopoDS::Vertex(Seq.Value(i)); +< V2 = TopoDS::Vertex(Seq.Value(i+1)); +< +< V1.Orientation(TopAbs_INTERNAL); +< V2.Orientation(TopAbs_INTERNAL); +< +< U1 = BRep_Tool::Parameter(V1,E); +< U2 = BRep_Tool::Parameter(V2,E); +< +< if (IsEqual(U1,U2)) { +< if (theInter3d.ReplaceSameDomainV( V1, E ).IsSame( V1 )) +< Seq.Remove(i+1); // remove V2 +< else +< Seq.Remove(i); +< i--; +< continue; +< } +< if (U2 < U1) { +< Seq.Exchange(i,i+1); +< Invert = Standard_True; +< } +< } +< } +< } +< +< //======================================================================= +< //function : MakeEdges +< //purpose : cut E by vertices VOnE, return list of new edges NE +< //======================================================================= +< +< void Partition_Spliter::MakeEdges (const TopoDS_Edge& E, +< const TopTools_ListOfShape& VOnE, +< TopTools_ListOfShape& NE ) const +< { +< TopoDS_Edge WE = E; +< WE.Orientation(TopAbs_FORWARD); +< +< Standard_Real U1,U2, f, l; +< TopoDS_Vertex V1,V2,VF,VL; +< +< BRep_Tool::Range(WE,f,l); +< TopExp::Vertices(WE,VF,VL); +< +< if (VOnE.Extent() < 3) { // do not rebuild not cut edge +< if (( VF.IsSame( VOnE.First() ) && VL.IsSame( VOnE.Last() )) || +< VL.IsSame( VOnE.First() ) && VF.IsSame( VOnE.Last() ) ) { +< NE.Append( E ); +< return; +< } +< } +< +< TopTools_SequenceOfShape SV; +< TopTools_ListIteratorOfListOfShape itv(VOnE); +< TopTools_MapOfOrientedShape VM( VOnE.Extent() ); +< for (; itv.More(); itv.Next()) +< if ( VM.Add( itv.Value() )) +< SV.Append(itv.Value()); +< +< Tri( WE, SV, myInter3d ); +< +< if (SV.Length() < 3) { // do not rebuild not cut edge +< if (( VF.IsSame( SV.First() ) && VL.IsSame( SV.Last() )) || +< VL.IsSame( SV.First() ) && VF.IsSame( SV.Last() ) ) { +< NE.Append( E ); +< return; +< } +< } +< +< Standard_Integer iVer, NbVer = SV.Length(); +< +< +< //---------------------------------------------------------------- +< // Construction of the new edges . +< //---------------------------------------------------------------- +< +< if (VF.IsSame(VL)) { // closed edge +< if (NbVer==1) +< SV.Append( SV.First() ); +< else if (!SV.First().IsSame(SV.Last())) { +< Standard_Boolean isFirst=0; +< Standard_Real minDU = 1.e10; +< TopoDS_Vertex endV = Partition_Inter2d::FindEndVertex(VOnE, f,l, E, isFirst,minDU); +< if (endV.IsSame(SV.First())) +< SV.Append(endV); +< else if (endV.IsSame(SV.Last())) +< SV.Prepend(endV); +< else +< MESSAGE ("END VERTEX IS IN SEQUNCE MIDDLE"); +< } +< NbVer = SV.Length(); +< } +< +< for (iVer=1; iVer < NbVer; iVer++) { +< V1 = TopoDS::Vertex(SV(iVer)); +< V2 = TopoDS::Vertex(SV(iVer+1)); +< +< TopoDS_Shape NewEdge = WE.EmptyCopied(); +< V1.Orientation(TopAbs_FORWARD); +< myBuilder.Add (NewEdge,V1); +< V2.Orientation(TopAbs_REVERSED); +< myBuilder.Add (NewEdge,V2); +< +< if (iVer==1) +< U1 = f; +< else { +< V1.Orientation(TopAbs_INTERNAL); +< U1=BRep_Tool::Parameter(V1,WE); +< } +< if (iVer+1 == NbVer) +< U2 = l; +< else { +< V2.Orientation(TopAbs_INTERNAL); +< U2=BRep_Tool::Parameter(V2,WE); +< } +< if (Abs(U1-U2) <= Precision::PConfusion()) { +< MESSAGE( "MakeEdges(), EQUAL PARAMETERS OF DIFFERENT VERTICES"); +< continue; +< } +< TopoDS_Edge EE=TopoDS::Edge(NewEdge); +< myBuilder.Range (EE,U1,U2); +< +< TopoDS_Edge NEdge = TopoDS::Edge(NewEdge); +< myBuilder.SameParameter(NEdge,Standard_False); +< +< Standard_Real tol = 1.0e-2; +< Standard_Boolean flag = BRep_Tool::SameParameter(NEdge); +< if (!flag) { +< BRepLib::SameParameter(NEdge,tol); +< } +< NE.Append(NEdge.Oriented(E.Orientation())); +< } +< } +< +1547d1390 +< +1558d1400 +< // update edge images and build pcurves +1564,1565d1405 +< +< // 1. build pcurves of the kept edge on faces where replaced edges exist +1568,1577c1408,1412 +< FL = myAsDes->Ascendant( EReplOrig ); +< Standard_Integer iFace, iFirstSectionFace = FL.Extent() + 1; +< // add faces where the replaced edge is a section edge +< if (myInter3d.IsSectionEdge( EReplOrig )) { +< TopTools_ListIteratorOfListOfShape seIt; +< seIt.Initialize( myInter3d.SectionEdgeFaces ( EReplOrig )); +< for ( ; seIt.More(); seIt.Next()) +< FL.Append( seIt.Value() ); +< } +< // loop on faces +--- +> if (myInter3d.IsSectionEdge( EReplOrig )) +> FL = myInter3d.SectionEdgeFaces ( EReplOrig ); +> else +> FL = myAsDes->Ascendant( EReplOrig ); +> +1579c1414 +< for ( iFace = 1 ; itF.More(); itF.Next(), ++iFace ) { +--- +> for ( ; itF.More(); itF.Next()) { +1581c1416 +< +--- +> // build pcurves +1592,1641c1427,1432 +< +< if (iFace >= iFirstSectionFace || +< !BRep_Tool::IsClosed( EReplOrig, F )) +< continue; +< +< // build the second pcurve for a seam +< TopoDS_Vertex V = TopExp::FirstVertex( EKeep ); +< Standard_Real Ukeep = BRep_Tool::Parameter( V, EKeep ); +< Standard_Real Urepl = BRep_Tool::Parameter( V, E ); +< +< TopoDS_Edge EReplRev = E; +< EReplRev.Reverse(); +< Handle(Geom2d_Curve) pcRepl1 = BRep_Tool::CurveOnSurface( E, F, f,l); +< Handle(Geom2d_Curve) pcRepl2 = BRep_Tool::CurveOnSurface( EReplRev, F, f,l); +< +< gp_Pnt2d p1r, p2r, pk; +< p1r = pcRepl1->Value( Urepl ); +< p2r = pcRepl2->Value( Urepl ); +< pk = pc->Value( Ukeep ); +< +< // suppose that pk is equal to either p1r or p2r +< Standard_Boolean isUPeriod = +< ( Abs( p1r.X() - p2r.X() ) > Abs( p1r.Y() - p2r.Y() )); +< Standard_Boolean is1Equal; +< if (isUPeriod) +< is1Equal = ( Abs( p1r.X() - pk.X() ) < Abs( p2r.X() - pk.X() )); +< else +< is1Equal = ( Abs( p1r.Y() - pk.Y() ) < Abs( p2r.Y() - pk.Y() )); +< +< Handle(Geom2d_Curve) pc2 = Handle(Geom2d_Curve)::DownCast +< ( pc->Translated( pk, is1Equal ? p2r : p1r ) ); +< +< if (E.Orientation() == TopAbs_REVERSED) +< is1Equal = !is1Equal; +< +< if (is1Equal) +< myBuilder.UpdateEdge( EKeep, pc, pc2, F, tol); +< else +< myBuilder.UpdateEdge( EKeep, pc2, pc, F, tol); +< +< } // loop on a Faces where a replaced edge exists +< +< +< // 2. update edge images according to replacement +< if (myImagesEdges.HasImage( E )) +< myImagesEdges.Remove( E ); +< myImagesEdges.Bind( E, EKeep ); +< +< } // loop on a list of equal edges EEL +< } // loop on a map of equal edges EEM +--- +> } +> // replace edges in faces +> if (!myImagesEdges.HasImage( E )) +> myImagesEdges.Bind( E, EKeep ); +> } +> } +1666,1667c1457,1464 +< TopoDS_Shape IntFacesComp = FindFacesInside( S, Standard_False, Standard_True); +< TopExp::MapShapes( IntFacesComp, TopAbs_FACE, MIF ); +--- +> +> // if S is not a tool, make sure that split faces of S are in MIF +> if (!isTool) +> TopExp::MapShapes( myImageShape.Image(S).First(), TopAbs_FACE, MIF); +> +> TopoDS_Shape InsFacesComp = FindFacesInside( S, Standard_False, Standard_True); +> TopExp::MapShapes( InsFacesComp, TopAbs_FACE, MIF ); +> +1672,1696c1469,1470 +< TopAbs_ShapeEnum anInternalShapeType = TopAbs_SHAPE; +< if (!MIF.IsEmpty()) +< { +< // leave in the result only those shapes having a face in MIF +< for (it.Initialize( myShape ); it.More(); it.Next()) { +< const TopoDS_Shape & aResShape = it.Value(); +< TopExp_Explorer expResF( aResShape, TopAbs_FACE ); +< for (; expResF.More(); expResF.Next()) { +< if ( MIF.Contains( expResF.Current())) { +< myBuilder.Add( C, aResShape ); +< if (aResShape.ShapeType() < anInternalShapeType) +< anInternalShapeType = aResShape.ShapeType(); +< break; +< } +< } +< } +< } +< +< // may be S was not split by internal faces then it is missing +< // in myShape, add it +< if (!isTool && +< (anInternalShapeType > TopAbs_SOLID || S.ShapeType() > TopAbs_SOLID)) +< { +< TopTools_IndexedMapOfShape MSF; // map of split faces of S +< TopExp::MapShapes( myImageShape.Image(S).First(), TopAbs_FACE, MSF); +--- +> // leave in the result only those shapes having a face in MIF +> for (it.Initialize( myShape ); it.More(); it.Next()) { +1698,1705c1472,1474 +< // find a shape having all faces in MSF +< for (it.Initialize( myShape ); it.More(); it.Next()) { +< TopExp_Explorer expResF( it.Value(), TopAbs_FACE ); +< for (; expResF.More(); expResF.Next()) { +< if (! MSF.Contains( expResF.Current())) +< break; +< } +< if (! expResF.More()) { +--- +> TopExp_Explorer expResF( it.Value(), TopAbs_FACE ); +> for (; expResF.More(); expResF.Next()) { +> if ( MIF.Contains( expResF.Current())) { +1734c1503 +< TopoDS_Shape IntFacesComp = FindFacesInside( S, Standard_False, Standard_True); +--- +> TopoDS_Shape InsFacesComp = FindFacesInside( S, Standard_False, Standard_True); +1736c1505 +< TopExp::MapShapes( IntFacesComp, TopAbs_FACE, MIF); +--- +> TopExp::MapShapes( InsFacesComp, TopAbs_FACE, MIF); +1871,1875c1640 +< { +< // F intersects nothing +< myBuilder.Add( C, F ); +< continue; +< } +--- +> continue; // F intersects nothing +1921,2145d1685 +< +< //======================================================================= +< //function : IsInside +< //purpose : Return True if the first vertex of S1 inside S2. +< // If S1.IsNull(), check infinite point against S2. +< //======================================================================= +< +< Standard_Boolean Partition_Spliter::IsInside (const TopoDS_Shape& theS1, +< const TopoDS_Shape& theS2) +< { +< BRepClass3d_SolidClassifier aClassifier( theS2 ); +< +< TopExp_Explorer expl( theS1, TopAbs_VERTEX ); +< if (!expl.More()) +< aClassifier.PerformInfinitePoint( ::RealSmall()); +< else +< { +< const TopoDS_Vertex & aVertex = TopoDS::Vertex( expl.Current() ); +< aClassifier.Perform (BRep_Tool::Pnt( aVertex ), +< BRep_Tool::Tolerance( aVertex )); +< } +< +< return ( aClassifier.State() == TopAbs_IN ); +< } +< +< //======================================================================= +< //function : GetOriginalShape +< //purpose : Return the shape aShape originates from. aShape +< // should be a face or more complex result shape +< //======================================================================= +< +< TopoDS_Shape Partition_Spliter::GetOriginalShape(const TopoDS_Shape& theShape) const +< { +< TopoDS_Shape anOrigShape; +< +< TopExp_Explorer expl( theShape, TopAbs_FACE); +< if (expl.More()) +< { +< +< TopoDS_Shape aFace = expl.Current(); +< if (myImagesFaces.IsImage( aFace )) +< aFace = myImagesFaces.Root( aFace ); +< anOrigShape = myFaceShapeMap.Find( aFace ); +< } +< return anOrigShape; +< } +< +< //======================================================================= +< //function : FindToolsToReconstruct +< //purpose : find and store as objects tools which interfere +< // with solids or are inside solids without +< // an interference +< //======================================================================= +< +< void Partition_Spliter::FindToolsToReconstruct() +< { +< if (myMapTools.IsEmpty()) +< return; +< +< Standard_Integer nbFoundTools = 0; +< +< // build edge - face map in order to detect interference with section edges +< TopTools_IndexedDataMapOfShapeListOfShape EFM; +< TopTools_MapIteratorOfMapOfShape aMapIt; +< for (aMapIt.Initialize(myMapTools); aMapIt.More(); aMapIt.Next()) +< TopExp::MapShapesAndAncestors( aMapIt.Key(), TopAbs_EDGE, TopAbs_FACE, EFM); +< for (aMapIt.Initialize(myMapFaces); aMapIt.More(); aMapIt.Next()) +< TopExp::MapShapesAndAncestors( aMapIt.Key(), TopAbs_EDGE, TopAbs_FACE, EFM); +< +< TopTools_MapOfShape aCurrentSolids, aCheckedShapes; +< +< // faces cut by new edges +< TopTools_MapOfShape & aSectionFaces = myInter3d.TouchedFaces(); +< +< // keep solids interfering with each other in aCurrentSolids map +< // and add tool faces intersecting solids as object shapes +< +< TopTools_ListIteratorOfListOfShape itS, itF, itCF, itE; +< for (itS.Initialize( myListShapes ); itS.More(); itS.Next()) { +< TopExp_Explorer expSo (itS.Value(), TopAbs_SOLID); +< for (; expSo.More(); expSo.Next()) { +< +< // check if a solid has been already processed +< const TopoDS_Shape & aSo = expSo.Current(); +< if (!aCheckedShapes.Add( aSo )) +< continue; +< aCurrentSolids.Add( aSo ); +< +< // faces to check +< TopTools_ListOfShape aFacesToCheck; +< TopExp_Explorer exp( aSo, TopAbs_FACE ); +< for ( ; exp.More(); exp.Next()) +< aFacesToCheck.Append ( exp.Current()); +< +< // add other shapes interefering with a solid. +< // iterate faces to check while appending new ones +< for (itCF.Initialize (aFacesToCheck) ; itCF.More(); itCF.Next()) +< { +< const TopoDS_Shape& aCheckFace = itCF.Value(); +< // if (!aCheckedShapes.Add( aCheckFace )) +< // continue; +< +< // find faces interfering with aCheckFace +< TopTools_ListOfShape anIntFaces; +< +< // ** 1. faces intersecting aCheckFace with creation of new edges on it +< if ( myAsDes->HasDescendant( aCheckFace )) +< { +< // new edges on aCheckFace +< const TopTools_ListOfShape& NEL = myAsDes->Descendant( aCheckFace ); +< for (itE.Initialize( NEL); itE.More(); itE.Next()) +< { +< const TopoDS_Shape & aNewEdge = itE.Value(); +< if (!aCheckedShapes.Add( aNewEdge )) +< continue; +< +< // faces interfering by aNewEdge +< itF.Initialize (myAsDes->Ascendant( aNewEdge )); +< for (; itF.More(); itF.Next()) +< if (aCheckFace != itF.Value()) +< anIntFaces.Append( itF.Value() ); +< +< // ** 2. faces having section edge aNewEdge on aFacesToCheck +< if (EFM.Contains( aNewEdge)) +< { +< itF.Initialize ( EFM.FindFromKey (itE.Value())); +< for (; itF.More(); itF.Next()) +< if (aCheckFace != itF.Value()) +< anIntFaces.Append( itF.Value() ); +< } +< } +< } +< +< // ** 3. faces cut by edges of aCheckFace +< TopExp_Explorer expE (aCheckFace, TopAbs_EDGE); +< for ( ; expE.More(); expE.Next()) +< { +< const TopoDS_Shape & aCheckEdge = expE.Current(); +< if (aCheckedShapes.Add( aCheckEdge ) && +< myInter3d.IsSectionEdge( TopoDS::Edge( aCheckEdge ))) +< { +< itF.Initialize( myInter3d.SectionEdgeFaces( TopoDS::Edge( aCheckEdge ))); +< for (; itF.More(); itF.Next()) +< if (aCheckFace != itF.Value()) +< anIntFaces.Append( itF.Value() ); +< } +< } +< +< // process faces interfering with aCheckFace and shapes they +< // belong to +< for (itF.Initialize (anIntFaces); itF.More(); itF.Next()) +< { +< const TopoDS_Shape & F = itF.Value(); +< if (! aCheckedShapes.Add( F )) +< continue; +< +< Standard_Boolean isTool = myMapTools.Contains( F ); +< if (isTool && +< myFaceShapeMap( aCheckFace ).ShapeType() == TopAbs_SOLID ) +< { +< // a tool interfering with a solid +< if (aSectionFaces.Contains( F )) +< AddShape( F ); +< ++ nbFoundTools; +< if (nbFoundTools == myMapTools.Extent()) +< return; +< } +< +< const TopoDS_Shape & S = myFaceShapeMap( F ); +< if (aCheckedShapes.Add( S )) +< { +< // a new shape interefering with aCurrentSolids is found +< if (!isTool && S.ShapeType() == TopAbs_SOLID) +< aCurrentSolids.Add ( S ); +< // add faces to aFacesToCheck list +< for ( exp.Init( S, TopAbs_FACE ); exp.More(); exp.Next()) +< aFacesToCheck.Append ( exp.Current() ); +< } +< } +< } // loop on aFacesToCheck +< +< // Here aCurrentSolids contains all solids interfering with each other. +< // aCheckedShapes contains all faces belonging to shapes included +< // in or interfering with aCurrentSolids or previously checked solids. +< // Test if tool faces that do not interefere with other shapes are +< // wrapped by any of aCurrentSolids +< +< TopTools_MapIteratorOfMapOfShape aSolidIt (aCurrentSolids); +< for ( ; aSolidIt.More(); aSolidIt.Next()) +< { +< const TopoDS_Shape & aSolid = aSolidIt.Key(); +< TopTools_MapOfShape aCheckedTools( myMapTools.Extent() ); +< +< TopTools_MapIteratorOfMapOfShape aToolIt (myMapTools); +< for ( ; aToolIt.More(); aToolIt.Next()) +< { +< const TopoDS_Shape & aToolFace = aToolIt.Key(); +< if (aCheckedShapes.Contains( aToolFace ) || // already found +< aCheckedTools.Contains( aToolFace )) // checked against aSolid +< continue; +< +< const TopoDS_Shape & aToolShape = myFaceShapeMap( aToolFace ); +< TopExp_Explorer aToolFaceIt( aToolShape, TopAbs_FACE ); +< +< Standard_Boolean isInside = IsInside( aToolShape, aSolid ); +< for ( ; aToolFaceIt.More(); aToolFaceIt.Next() ) +< { +< const TopoDS_Shape & aTool = aToolFaceIt.Current(); +< aCheckedTools.Add( aTool ); +< if (isInside) +< { +< if (aSectionFaces.Contains( aTool )) +< AddShape( aTool ); +< ++ nbFoundTools; +< if (nbFoundTools == myMapTools.Extent()) +< return; +< aCheckedShapes.Add( aTool ); +< } +< } +< } +< } +< +< } // loop on solid shapes +< } +< } +diff -r ../src/PARTITION/Partition_Spliter.hxx ../../../GEOM_SRC/src/PARTITION/Partition_Spliter.hxx +3c3,20 +< // Copyright (C) 2003 CEA/DEN, EDF R&D +--- +> // Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +> // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +> // +> // This library is free software; you can redistribute it and/or +> // modify it under the terms of the GNU Lesser General Public +> // License as published by the Free Software Foundation; either +> // version 2.1 of the License. +> // +> // This library is distributed in the hope that it will be useful, +> // but WITHOUT ANY WARRANTY; without even the implied warranty of +> // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +> // Lesser General Public License for more details. +> // +> // You should have received a copy of the GNU Lesser General Public +> // License along with 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 +9a27 +> +104d121 +< Standard_EXPORT void MakeSolids(const TopoDS_Shape& Solid,TopTools_ListOfShape& Shells) ; +111,113d127 +< Standard_EXPORT static Standard_Boolean IsInside(const TopoDS_Shape& S1,const TopoDS_Shape& S2) ; +< Standard_EXPORT TopoDS_Shape GetOriginalShape(const TopoDS_Shape& aShape) const; +< Standard_EXPORT void FindToolsToReconstruct() ; +124,127d137 +< TopTools_MapOfShape myEqualEdges; +< TopTools_MapOfShape myNewSection; +< TopTools_MapOfShape myClosedShapes; +< TopTools_MapOfShape myWrappingSolid; +129,130c139 +< TopTools_DataMapOfShapeShape myInternalFaces; +< TopTools_DataMapOfShapeShape myIntNotClFaces; +--- +> TopTools_MapOfShape myNewSection; +136a146,148 +> TopTools_MapOfShape myEqualEdges; +> TopTools_DataMapOfShapeShape myInternalFaces; +> TopTools_DataMapOfShapeShape myIntNotClFaces; +Only in ../../../GEOM_SRC/src/SKETCHER: CVS +diff -r ../src/SKETCHER/GEOM_Sketcher.cxx ../../../GEOM_SRC/src/SKETCHER/GEOM_Sketcher.cxx +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/SKETCHER/GEOM_Sketcher.h ../../../GEOM_SRC/src/SKETCHER/GEOM_Sketcher.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/SKETCHER/GEOM_SketcherStatus.h ../../../GEOM_SRC/src/SKETCHER/GEOM_SketcherStatus.h +27c27 +< // $Header$ +--- +> // $Header$ +diff -r ../src/SKETCHER/Makefile.in ../../../GEOM_SRC/src/SKETCHER/Makefile.in +27c27 +< # $Header$ +--- +> # $Header$ +30c30 +< top_builddir=../../.. +--- +> top_builddir=../.. +38,39c38 +< +< LIB = libGeometrySketcher.la +--- +> LIB = libGEOMSketcher.la +48,50c47,49 +< CPPFLAGS += $(OCC_INCLUDES) $(QT_INCLUDES) +< CXXFLAGS += $(OCC_CXXFLAGS) +< LDFLAGS += $(QT_LIBS) $(CAS_LDPATH) -lTKTopAlgo +--- +> CPPFLAGS += $(OCC_INCLUDES) $(QT_INCLUDES) -I${KERNEL_ROOT_DIR}/include/salome +> CXXFLAGS += $(OCC_CXXFLAGS) -I${KERNEL_ROOT_DIR}/include/salome +> LDFLAGS += $(OCC_KERNEL_LIBS) $(OCC_MODELER_LIBS) -L${KERNEL_ROOT_DIR}/lib/salome