This file is indexed.

/usr/include/oce/QANewModTopOpe_Glue.hxx is in liboce-visualization-dev 0.18.2-2build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
// This file is generated by WOK (CPPExt).
// Please do not edit this file; modify original file instead.
// The copyright and license terms as defined for the original file apply to 
// this header file considered to be the "object code" form of the original source.

#ifndef _QANewModTopOpe_Glue_HeaderFile
#define _QANewModTopOpe_Glue_HeaderFile

#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Macro.hxx>

#include <Standard_Boolean.hxx>
#include <BRepTools_Substitution.hxx>
#include <TopTools_DataMapOfShapeListOfShape.hxx>
#include <TopTools_DataMapOfShapeShape.hxx>
#include <TopTools_IndexedDataMapOfShapeListOfShape.hxx>
#include <TopTools_MapOfShape.hxx>
#include <BRepAlgoAPI_BooleanOperation.hxx>
#include <TopAbs_State.hxx>
#include <Standard_Integer.hxx>
#include <Standard_Real.hxx>
class TopoDS_Shape;
class TopTools_ListOfShape;
class TopTools_DataMapOfShapeListOfShape;
class TopoDS_Face;
class TopTools_MapOfShape;
class gp_Pnt;
class TopoDS_Edge;
class TopoDS_Vertex;
class TopTools_IndexedDataMapOfShapeListOfShape;


//! Perform the gluing topological operation
//! (topological  sewing  of  two  topological  objects).
class QANewModTopOpe_Glue  : public BRepAlgoAPI_BooleanOperation
{
public:

  DEFINE_STANDARD_ALLOC

  
  //! Defines 2 operands.
  //! If one of operands is Solid and another is Shell and Shell
  //! goes inside Solid, the <allowCutting> determines what to do:
  //! if True, Shell is cut by Solid during the operation;
  //! if False, Null shape is returned, IsDone() returns False.
  //! If <thePerformNow> is False then does not compute immediately.
  Standard_EXPORT QANewModTopOpe_Glue(const TopoDS_Shape& theS1, const TopoDS_Shape& theS2, const Standard_Boolean theAllowCutting = Standard_False, const Standard_Boolean thePerformNow = Standard_True);
  
  //! Computation; is usefull when Create was called with thePerformNow
  //! being False
  Standard_EXPORT   void Build() ;
  
  //! Returns the  list   of shapes generated   from the
  //! shape <theS>.
  Standard_EXPORT  const  TopTools_ListOfShape& Generated (const TopoDS_Shape& theS) ;
  
  //! Returns the list  of shapes modified from the shape
  //! <theS>.
  Standard_EXPORT  const  TopTools_ListOfShape& Modified (const TopoDS_Shape& theS) ;
  
  //! Returns True if the shape <theS> existed in one of operands
  //! and is absent in the result.
  Standard_EXPORT   Standard_Boolean IsDeleted (const TopoDS_Shape& theS) ;
  
  //! Returns True if there is at leat one generated shape
  Standard_EXPORT virtual   Standard_Boolean HasGenerated()  const;
  
  //! Returns True if there is at leat one modified shape
  Standard_EXPORT virtual   Standard_Boolean HasModified()  const;
  
  //! Returns True if there is at leat one deleted shape
  Standard_EXPORT virtual   Standard_Boolean HasDeleted()  const;
  
  Standard_EXPORT static   Standard_Boolean ProjPointOnEdge (const gp_Pnt& thePnt, const TopoDS_Edge& theEdge, Standard_Real& thePar, Standard_Real& theDist) ;
  
  Standard_EXPORT static   void InsertVertexInEdge (const TopoDS_Edge& theEdge, const TopoDS_Vertex& theVer, const Standard_Real thePar, TopoDS_Edge& theNewEdge) ;
  
  Standard_EXPORT static   void SplitEdgeByVertex (const TopoDS_Edge& theEdge, const TopoDS_Vertex& theVer, const Standard_Real thePar, TopTools_ListOfShape& theListE) ;
  
  Standard_EXPORT static   Standard_Boolean CompareVertices (const TopoDS_Vertex& theV1, const TopoDS_Vertex& theV2, Standard_Real& theDist) ;




protected:





private:

  
  //! Performs gluing Shell-Wire
  Standard_EXPORT   void PerformShellWire() ;
  
  //! Performs gluing Solid-Vertex and Shell-Vertex
  Standard_EXPORT   void PerformVertex() ;
  
  //! Performs gluing Solid-Shell and Shell-Shell
  Standard_EXPORT   void PerformShell() ;
  
  //! Performs gluing Wire-Wire
  Standard_EXPORT   void PerformWires() ;
  
  //! This function performs gluing operation of same domain
  //! faces theFirstSDFace and theSecondSDFace on shapes
  //! theNewSolid1 and theNewSolid2 and returns them.
  //! theMapOfChangedFaces contains changed faces as keys and
  //! lists of their splits as items.
  Standard_EXPORT   Standard_Boolean SubstitudeSDFaces (const TopoDS_Shape& theFirstSDFace, const TopoDS_Shape& theSecondSDFace, TopoDS_Shape& theNewSolid1, TopoDS_Shape& theNewSolid2, TopTools_DataMapOfShapeListOfShape& theMapOfChangedFaces) ;
  
  //! Performs gluing between same domain faces of object and tool
  Standard_EXPORT   void PerformSDFaces() ;
  
  //! For the case Solid-Shell, <aFace> is from Shell.
  //! Splits <theFace> onto faces by section edges <theListSE> and
  //! add <theFace> for substitution by list of faces which are "out"
  //! of Solid
  Standard_EXPORT   Standard_Boolean CutFace (const TopoDS_Face& theFace, const TopTools_ListOfShape& theListSE) ;
  
  //! For the case Solid-Shell, <theFace> is a split of Shell's face.
  //! Returns the state of <theFace> relatively Solid.
  Standard_EXPORT   TopAbs_State ClassifyFace (const TopoDS_Face& theFace, const TopTools_ListOfShape& theListSE)  const;
  
  //! Inserts "internal" elements (wires, edges, vertices) computed
  //! from a list of section edges <theListSE> into <theFace>.
  Standard_EXPORT   void SectionInsideFace (const TopoDS_Face& theFace, const TopTools_ListOfShape& theListSE, const Standard_Integer theShapeNum, const TopTools_MapOfShape& theGenEdges) ;
  
  Standard_EXPORT static  const  TopoDS_Shape& FindWireOrUpdateMap (const TopoDS_Shape& theWire, TopTools_IndexedDataMapOfShapeListOfShape& theMapELW) ;


  Standard_Boolean myCompleted;
  Standard_Boolean myAllowCutting;
  BRepTools_Substitution mySubst;
  TopTools_DataMapOfShapeListOfShape myMapSEdgeFaces1;
  TopTools_DataMapOfShapeListOfShape myMapSEdgeFaces2;
  TopTools_DataMapOfShapeShape myMapSEdgeCrossFace1;
  TopTools_DataMapOfShapeShape myMapSEdgeCrossFace2;
  TopTools_IndexedDataMapOfShapeListOfShape myMapEdgeWires;
  TopTools_MapOfShape myEdgesToLeave;
  TopTools_DataMapOfShapeListOfShape myMapModif;
  TopTools_DataMapOfShapeListOfShape myMapGener;


};







#endif // _QANewModTopOpe_Glue_HeaderFile