0033661: Data Exchange, Step Import - Tessellated GDTs are not imported
[occt.git] / src / BRepFeat / BRepFeat_Gluer.cxx
CommitLineData
b311480e 1// Created on: 1996-03-08
2// Created by: Jacques GOUSSARD
3// Copyright (c) 1996-1999 Matra Datavision
973c2be1 4// Copyright (c) 1999-2014 OPEN CASCADE SAS
b311480e 5//
973c2be1 6// This file is part of Open CASCADE Technology software library.
b311480e 7//
d5f74e42 8// This library is free software; you can redistribute it and/or modify it under
9// the terms of the GNU Lesser General Public License version 2.1 as published
973c2be1 10// by the Free Software Foundation, with special exception defined in the file
11// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12// distribution for complete text of the license and disclaimer of any warranty.
b311480e 13//
973c2be1 14// Alternatively, this file may be used under the terms of Open CASCADE
15// commercial license or contractual agreement.
7fd59977 16
42cf5bc1 17
18#include <BRepFeat_Gluer.hxx>
7fd59977 19#include <TopoDS.hxx>
42cf5bc1 20#include <TopoDS_Shape.hxx>
7fd59977 21#include <TopTools_ListOfShape.hxx>
22
23//=======================================================================
24//function : Build
25//purpose :
26//=======================================================================
d03c0898 27void BRepFeat_Gluer::Build(const Message_ProgressRange& /*theRange*/)
7fd59977 28{
29 myGluer.Perform();
30 if (myGluer.IsDone()) {
31 Done();
32 myShape = myGluer.ResultingShape();
33 }
34 else {
35 NotDone();
36 }
37}
38
39
40
41//=======================================================================
42//function : isdeleted
43//purpose :
44//=======================================================================
45
46Standard_Boolean BRepFeat_Gluer::IsDeleted
47 (const TopoDS_Shape& F)
48{
49 return (myGluer.DescendantFaces(TopoDS::Face(F)).IsEmpty());
50}
51
52//=======================================================================
53//function : Modified
54//purpose :
55//=======================================================================
56
57const TopTools_ListOfShape& BRepFeat_Gluer::Modified
58 (const TopoDS_Shape& F)
59{
60 if (F.ShapeType() == TopAbs_FACE) {
61 const TopTools_ListOfShape& LS = myGluer.DescendantFaces(TopoDS::Face(F));
62 if (!LS.IsEmpty()) {
63 if (!LS.First().IsSame(F))
64 return myGluer.DescendantFaces(TopoDS::Face(F));
65 }
66 }
67 static TopTools_ListOfShape LIM;
68 return LIM;
69}
70