1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-14 13:30:48 +03:00

Integration of OCCT 6.5.0 from SVN

This commit is contained in:
bugmaster
2011-03-16 07:30:28 +00:00
committed by bugmaster
parent 4903637061
commit 7fd59977df
16375 changed files with 3882564 additions and 0 deletions

View File

@@ -0,0 +1,141 @@
// File: BRepBuilderAPI_ModifyShape.cxx
// Created: Fri Dec 2 10:37:08 1994
// Author: Jacques GOUSSARD
// <jag@topsn2>
#include <BRepBuilderAPI_ModifyShape.ixx>
#include <Standard_NullObject.hxx>
//=======================================================================
//function : BRepBuilderAPI_ModifyShape
//purpose :
//=======================================================================
BRepBuilderAPI_ModifyShape::BRepBuilderAPI_ModifyShape () {}
//=======================================================================
//function : BRepBuilderAPI_ModifyShape
//purpose :
//=======================================================================
BRepBuilderAPI_ModifyShape::BRepBuilderAPI_ModifyShape (const TopoDS_Shape& S):
myModifier(S), myInitialShape(S)
{}
//=======================================================================
//function : BRepBuilderAPI_ModifyShape
//purpose :
//=======================================================================
BRepBuilderAPI_ModifyShape::BRepBuilderAPI_ModifyShape
(const Handle(BRepTools_Modification)& M)
{
myModification = M;
}
//=======================================================================
//function : BRepBuilderAPI_ModifyShape
//purpose :
//=======================================================================
BRepBuilderAPI_ModifyShape::BRepBuilderAPI_ModifyShape
(const TopoDS_Shape& S,
const Handle(BRepTools_Modification)& M): myModifier(S),myInitialShape(S)
{
myModification = M;
DoModif();
}
//=======================================================================
//function : DoModif
//purpose :
//=======================================================================
void BRepBuilderAPI_ModifyShape::DoModif ()
{
if (myInitialShape.IsNull() || myModification.IsNull()) {
Standard_NullObject::Raise();
}
myModifier.Perform(myModification);
if (myModifier.IsDone()) {
Done();
myShape = myModifier.ModifiedShape(myInitialShape);
}
else {
NotDone();
}
}
//=======================================================================
//function : DoModif
//purpose :
//=======================================================================
void BRepBuilderAPI_ModifyShape::DoModif (const TopoDS_Shape& S)
{
if (!S.IsEqual(myInitialShape) || !IsDone()) {
myInitialShape = S;
myModifier.Init(S);
DoModif();
}
}
//=======================================================================
//function : DoModif
//purpose :
//=======================================================================
void BRepBuilderAPI_ModifyShape::DoModif (const Handle(BRepTools_Modification)& M)
{
myModification = M;
DoModif();
}
//=======================================================================
//function : DoModif
//purpose :
//=======================================================================
void BRepBuilderAPI_ModifyShape::DoModif (const TopoDS_Shape& S,
const Handle(BRepTools_Modification)& M)
{
myInitialShape = S;
myModifier.Init(S);
myModification = M;
DoModif();
}
//=======================================================================
//function : ModifiedShape
//purpose :
//=======================================================================
const TopoDS_Shape& BRepBuilderAPI_ModifyShape::ModifiedShape
(const TopoDS_Shape& S) const
{
return myModifier.ModifiedShape(S);
}
//=======================================================================
//function : Modified
//purpose :
//=======================================================================
const TopTools_ListOfShape& BRepBuilderAPI_ModifyShape::Modified
(const TopoDS_Shape& F)
{
myGenerated.Clear();
myGenerated.Append(myModifier.ModifiedShape(F));
return myGenerated;
}