X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FGEOMAlgo%2FGEOMAlgo_Gluer.hxx;h=5ca326149aa9b810af5f3a0e47d7f5d4e6fba339;hb=04f3d723da1ae9133d108921c8f10338a9656d12;hp=b5cfb0bdd9dacf6bd72977c6db9cd31b0e80f5b4;hpb=6101c761432c310cdbc39f0a9715dcc343ac77fd;p=modules%2Fgeom.git diff --git a/src/GEOMAlgo/GEOMAlgo_Gluer.hxx b/src/GEOMAlgo/GEOMAlgo_Gluer.hxx index b5cfb0bdd..5ca326149 100644 --- a/src/GEOMAlgo/GEOMAlgo_Gluer.hxx +++ b/src/GEOMAlgo/GEOMAlgo_Gluer.hxx @@ -1,23 +1,21 @@ -// File generated by CPPExt (Value) +// Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS // -// Copyright (C) 1991 - 2000 by -// Matra Datavision SA. All rights reserved. -// -// Copyright (C) 2001 - 2004 by -// Open CASCADE SA. All rights reserved. -// -// This file is part of the Open CASCADE Technology software. +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // -// This software may be distributed and/or modified under the terms and -// conditions of the Open CASCADE Public License as defined by Open CASCADE SA -// and appearing in the file LICENSE included in the packaging of this file. -// -// This software is distributed on an "AS IS" basis, without warranty of any -// kind, and Open CASCADE SA hereby disclaims all such warranties, -// including without limitation, any warranties of merchantability, fitness -// for a particular purpose or non-infringement. Please see the License for -// the specific terms and conditions governing rights and limitations under the -// License. +// This library is distributed in the hope that it will be useful +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com #ifndef _GEOMAlgo_Gluer_HeaderFile #define _GEOMAlgo_Gluer_HeaderFile @@ -25,27 +23,39 @@ #ifndef _Standard_Boolean_HeaderFile #include #endif +#ifndef _Standard_Real_HeaderFile +#include +#endif #ifndef _TopTools_DataMapOfShapeListOfShape_HeaderFile #include #endif #ifndef _TopTools_DataMapOfShapeShape_HeaderFile #include #endif -#ifndef _IntTools_Context_HeaderFile -#include +#ifndef _Standard_Integer_HeaderFile +#include #endif -#ifndef _TopAbs_ShapeEnum_HeaderFile -#include +#ifndef _TopTools_ListOfShape_HeaderFile +#include #endif -#ifndef _Standard_Real_HeaderFile -#include +#ifndef _TopTools_MapOfShape_HeaderFile +#include #endif #ifndef _GEOMAlgo_ShapeAlgo_HeaderFile #include #endif +#ifndef _TopAbs_ShapeEnum_HeaderFile +#include +#endif +#ifndef _TopoDS_Compound_HeaderFile +#include +#endif +class TopTools_ListOfShape; +class TopoDS_Shape; class TopoDS_Edge; -class GEOMAlgo_PassKey; +class GEOMAlgo_PassKeyShape; class TopoDS_Face; +class TopoDS_Vertex; class TopTools_DataMapOfShapeListOfShape; class TopTools_DataMapOfShapeShape; @@ -57,6 +67,7 @@ class TopTools_DataMapOfShapeShape; #include #endif + class GEOMAlgo_Gluer : public GEOMAlgo_ShapeAlgo { public: @@ -75,12 +86,39 @@ public: } // Methods PUBLIC // + + Standard_EXPORT GEOMAlgo_Gluer(); Standard_EXPORT virtual ~GEOMAlgo_Gluer(); + + Standard_EXPORT void SetCheckGeometry(const Standard_Boolean aFlag) ; + + Standard_EXPORT Standard_Boolean CheckGeometry() const; + + +Standard_EXPORT void SetKeepNonSolids(const Standard_Boolean aFlag) ; + + Standard_EXPORT virtual void Perform() ; + + +Standard_EXPORT Standard_Integer AloneShapes() const; + + +Standard_EXPORT const TopTools_ListOfShape& Modified(const TopoDS_Shape& S) ; + + +Standard_EXPORT const TopTools_ListOfShape& Generated(const TopoDS_Shape& S) ; + + +Standard_EXPORT Standard_Boolean IsDeleted(const TopoDS_Shape& S) ; + + Standard_EXPORT const TopTools_DataMapOfShapeListOfShape& Images() const; + + Standard_EXPORT const TopTools_DataMapOfShapeShape& Origins() const; @@ -91,31 +129,70 @@ protected: // Methods PROTECTED // + + Standard_EXPORT virtual void CheckData() ; + + Standard_EXPORT virtual void CheckResult() ; -Standard_EXPORT void BuildResult() ; + + Standard_EXPORT void MakeVertices() ; + + Standard_EXPORT void MakeEdges() ; + + Standard_EXPORT void MakeFaces() ; + + Standard_EXPORT void MakeShapes(const TopAbs_ShapeEnum aType) ; + + Standard_EXPORT void MakeShells() ; + + +Standard_EXPORT void MakeSubShapes(const TopoDS_Shape& theShape, + TopTools_MapOfShape& theMS, + TopoDS_Compound& theResult); + + Standard_EXPORT void MakeSolids() ; + + Standard_EXPORT void InnerTolerance() ; -Standard_EXPORT void EdgePassKey(const TopoDS_Edge& aE,GEOMAlgo_PassKey& aPK) ; -Standard_EXPORT void FacePassKey(const TopoDS_Face& aF,GEOMAlgo_PassKey& aPK) ; + + +Standard_EXPORT void EdgePassKey(const TopoDS_Edge& aE,GEOMAlgo_PassKeyShape& aPK) ; + + +Standard_EXPORT void FacePassKey(const TopoDS_Face& aF,GEOMAlgo_PassKeyShape& aPK) ; + + +Standard_EXPORT void MakeVertex(const TopTools_ListOfShape& aLV,TopoDS_Vertex& aNewV) ; + + Standard_EXPORT void MakeEdge(const TopoDS_Edge& aEdge,TopoDS_Edge& aNewEdge) ; + + Standard_EXPORT void MakeFace(const TopoDS_Face& aFace,TopoDS_Face& aNewEdge) ; + + Standard_EXPORT Standard_Boolean IsToReverse(const TopoDS_Face& aFR,const TopoDS_Face& aF) ; +Standard_EXPORT Standard_Boolean HasNewSubShape(const TopoDS_Shape& aS) const; + + // Fields PROTECTED // Standard_Boolean myCheckGeometry; +Standard_Boolean myKeepNonSolids; +Standard_Real myTol; TopTools_DataMapOfShapeListOfShape myImages; TopTools_DataMapOfShapeShape myOrigins; -IntTools_Context myContext; -TopAbs_ShapeEnum myTypeResult; -Standard_Real myTol; +Standard_Integer myNbAlone; +TopTools_ListOfShape myGenerated; private: