2021-03-22 21:09:08 +05:00
|
|
|
// Copyright (C) 2007-2021 CEA/DEN, EDF R&D, OPEN CASCADE
|
2008-03-07 12:45:34 +05:00
|
|
|
//
|
2012-08-09 13:58:02 +06:00
|
|
|
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
|
|
|
|
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
|
2008-03-07 12:45:34 +05:00
|
|
|
//
|
2012-08-09 13:58:02 +06:00
|
|
|
// This library is free software; you can redistribute it and/or
|
|
|
|
// modify it under the terms of the GNU Lesser General Public
|
|
|
|
// License as published by the Free Software Foundation; either
|
2014-02-18 12:44:41 +06:00
|
|
|
// version 2.1 of the License, or (at your option) any later version.
|
2009-02-13 17:16:39 +05:00
|
|
|
//
|
2012-08-09 13:58:02 +06:00
|
|
|
// This library is distributed in the hope that it will be useful,
|
|
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
// Lesser General Public License for more details.
|
2009-02-13 17:16:39 +05:00
|
|
|
//
|
2012-08-09 13:58:02 +06:00
|
|
|
// You should have received a copy of the GNU Lesser General Public
|
|
|
|
// License along with this library; if not, write to the Free Software
|
|
|
|
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
2009-02-13 17:16:39 +05:00
|
|
|
//
|
2012-08-09 13:58:02 +06:00
|
|
|
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
2008-03-07 12:45:34 +05:00
|
|
|
//
|
2012-08-09 13:58:02 +06:00
|
|
|
|
|
|
|
// File: GEOMAlgo_BuilderShape.cxx
|
|
|
|
// Created:
|
|
|
|
// Author: Peter KURNEV
|
2009-02-13 17:16:39 +05:00
|
|
|
//
|
2012-08-09 13:58:02 +06:00
|
|
|
#include <GEOMAlgo_BuilderShape.hxx>
|
2013-09-16 19:59:50 +06:00
|
|
|
|
2008-03-07 12:45:34 +05:00
|
|
|
//=======================================================================
|
2012-08-09 13:58:02 +06:00
|
|
|
//function :
|
|
|
|
//purpose :
|
2008-03-07 12:45:34 +05:00
|
|
|
//=======================================================================
|
|
|
|
GEOMAlgo_BuilderShape::GEOMAlgo_BuilderShape()
|
|
|
|
:
|
|
|
|
GEOMAlgo_Algo()
|
|
|
|
{
|
|
|
|
myHasDeleted=Standard_False;
|
|
|
|
myHasGenerated=Standard_False;
|
|
|
|
myHasModified=Standard_False;
|
|
|
|
}
|
|
|
|
//=======================================================================
|
|
|
|
//function : ~
|
2012-08-09 13:58:02 +06:00
|
|
|
//purpose :
|
2008-03-07 12:45:34 +05:00
|
|
|
//=======================================================================
|
|
|
|
GEOMAlgo_BuilderShape::~GEOMAlgo_BuilderShape()
|
|
|
|
{
|
|
|
|
}
|
|
|
|
//=======================================================================
|
|
|
|
//function : Shape
|
2012-08-09 13:58:02 +06:00
|
|
|
//purpose :
|
2008-03-07 12:45:34 +05:00
|
|
|
//=======================================================================
|
|
|
|
const TopoDS_Shape& GEOMAlgo_BuilderShape::Shape() const
|
|
|
|
{
|
|
|
|
return myShape;
|
|
|
|
}
|
|
|
|
//
|
|
|
|
//=======================================================================
|
|
|
|
//function : Generated
|
2012-08-09 13:58:02 +06:00
|
|
|
//purpose :
|
2008-03-07 12:45:34 +05:00
|
|
|
//=======================================================================
|
|
|
|
const TopTools_ListOfShape& GEOMAlgo_BuilderShape::Generated(const TopoDS_Shape& )
|
|
|
|
{
|
|
|
|
myHistShapes.Clear();
|
|
|
|
return myHistShapes;
|
|
|
|
}
|
|
|
|
//=======================================================================
|
|
|
|
//function : Modified
|
2012-08-09 13:58:02 +06:00
|
|
|
//purpose :
|
2008-03-07 12:45:34 +05:00
|
|
|
//=======================================================================
|
|
|
|
const TopTools_ListOfShape& GEOMAlgo_BuilderShape::Modified(const TopoDS_Shape& )
|
|
|
|
{
|
|
|
|
myHistShapes.Clear();
|
|
|
|
return myHistShapes;
|
|
|
|
}
|
|
|
|
//=======================================================================
|
|
|
|
//function : IsDeleted
|
2012-08-09 13:58:02 +06:00
|
|
|
//purpose :
|
2008-03-07 12:45:34 +05:00
|
|
|
//=======================================================================
|
|
|
|
Standard_Boolean GEOMAlgo_BuilderShape::IsDeleted(const TopoDS_Shape& theS)
|
|
|
|
{
|
|
|
|
Standard_Boolean bRet;
|
|
|
|
//
|
|
|
|
bRet=!myMapShape.Contains(theS);
|
2012-08-09 13:58:02 +06:00
|
|
|
return bRet;
|
2008-03-07 12:45:34 +05:00
|
|
|
}
|
|
|
|
//=======================================================================
|
|
|
|
//function : HasDeleted
|
2012-08-09 13:58:02 +06:00
|
|
|
//purpose :
|
2008-03-07 12:45:34 +05:00
|
|
|
//=======================================================================
|
|
|
|
Standard_Boolean GEOMAlgo_BuilderShape::HasDeleted()const
|
|
|
|
{
|
|
|
|
return myHasDeleted;
|
|
|
|
}
|
|
|
|
//=======================================================================
|
|
|
|
//function : HasGenerated
|
2012-08-09 13:58:02 +06:00
|
|
|
//purpose :
|
2008-03-07 12:45:34 +05:00
|
|
|
//=======================================================================
|
|
|
|
Standard_Boolean GEOMAlgo_BuilderShape::HasGenerated()const
|
|
|
|
{
|
|
|
|
return myHasGenerated;
|
|
|
|
}
|
|
|
|
//=======================================================================
|
|
|
|
//function : HasModified
|
2012-08-09 13:58:02 +06:00
|
|
|
//purpose :
|
2008-03-07 12:45:34 +05:00
|
|
|
//=======================================================================
|
|
|
|
Standard_Boolean GEOMAlgo_BuilderShape::HasModified()const
|
|
|
|
{
|
|
|
|
return myHasModified;
|
|
|
|
}
|
|
|
|
//=======================================================================
|
|
|
|
//function : PrepareHistory
|
2012-08-09 13:58:02 +06:00
|
|
|
//purpose :
|
2008-03-07 12:45:34 +05:00
|
|
|
//=======================================================================
|
|
|
|
void GEOMAlgo_BuilderShape::PrepareHistory()
|
|
|
|
{
|
|
|
|
myHistShapes.Clear();
|
|
|
|
myMapShape.Clear();
|
|
|
|
myHasDeleted=Standard_False;
|
|
|
|
myHasGenerated=Standard_False;
|
|
|
|
myHasModified=Standard_False;
|
|
|
|
myImagesResult.Clear();
|
|
|
|
}
|
|
|
|
//=======================================================================
|
|
|
|
//function : ImagesResult
|
2012-08-09 13:58:02 +06:00
|
|
|
//purpose :
|
2008-03-07 12:45:34 +05:00
|
|
|
//=======================================================================
|
|
|
|
const TopTools_IndexedDataMapOfShapeListOfShape& GEOMAlgo_BuilderShape::ImagesResult()const
|
|
|
|
{
|
|
|
|
return myImagesResult;
|
|
|
|
}
|