1 -- Created on: 1997-01-17
2 -- Created by: Didier PIFFAULT
3 -- Copyright (c) 1997-1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
6 -- This file is part of Open CASCADE Technology software library.
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
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.
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
17 -- Modified David CARBONEL
18 -- Add of Sewing class
23 -- The BRepAlgo package provides a full range of
24 -- services to perform Old Boolean Operations in Open CASCADE.
26 -- The New Boolean Operation has replaced the Old
27 -- Boolean Operations algorithm in the BrepAlgoAPI
28 -- package in Open CASCADE.
60 enumeration CheckStatus is
65 deferred class BooleanOperation;
73 -- Use of face topological builder
80 ---Purpose:Build all the faces limited with a set of non
81 -- jointing and planars wires
82 -- The Wires must have correct orientations.
85 class BooleanOperations;
91 class NormalProjection;
93 -- class Sewing; now it is in BRepBuilderAPI
95 class DataMapOfShapeBoolean instantiates
96 DataMap from TCollection(Shape from TopoDS,
97 Boolean from Standard,
98 ShapeMapHasher from TopTools);
100 class DataMapOfShapeInterference instantiates
101 DataMap from TCollection(Shape from TopoDS,
102 Interference from TopOpeBRepDS,
103 ShapeMapHasher from TopTools);
105 class SequenceOfSequenceOfInteger instantiates
106 Sequence from TCollection(SequenceOfInteger from TColStd);
108 ConcatenateWire(Wire : Wire from TopoDS;
109 Option : Shape from GeomAbs;
110 AngularTolerance : Real = 1.0e-4)
111 ---Purpose: this method makes a wire whose edges are C1 from
112 -- a Wire whose edges could be G1. It removes a vertex
114 -- Option can be G1 or C1.
115 returns Wire from TopoDS;
117 ConcatenateWireC0(Wire : Wire from TopoDS)
118 ---Purpose: this method makes an edge from a wire.
119 -- Junction points between edges of wire may be sharp,
120 -- resulting curve of the resulting edge may be C0.
121 returns Edge from TopoDS;
125 IsValid(S: Shape from TopoDS)
126 returns Boolean from Standard
127 raises NullObject from Standard;
128 ---Purpose: Checks if the shape is "correct". If not, returns
129 -- <Standard_False>, else returns <Standard_True>.
131 IsValid(theArgs : ListOfShape from TopTools;
132 theResult : Shape from TopoDS;
133 closedSolid : Boolean from Standard = Standard_False;
134 GeomCtrl : Boolean from Standard = Standard_True)
135 returns Boolean from Standard;
136 ---Purpose: Checks if the Generated and Modified Faces from
137 -- the shapes <arguments> in the shape <result> are
138 -- "correct". The args may be empty, then all faces
140 -- If <Closed> is True, only closed shape are valid.
141 -- If <GeomCtrl> is False the geometry of new
142 -- vertices and edges are not verified and the
143 -- auto-intersection of new wires are not searched.
146 IsTopologicallyValid(S: Shape from TopoDS)
147 returns Boolean from Standard
148 raises NullObject from Standard;
149 ---Purpose: Checks if the shape is "correct". If not, returns
150 -- <Standard_False>, else returns <Standard_True>.
151 -- This method differs from the previous one in the
152 -- fact that no geometric contols (intersection of
153 -- wires, pcurve validity) are performed.