0024428: Implementation of LGPL license
[occt.git] / src / BRepAlgo / BRepAlgo.cdl
CommitLineData
b311480e 1-- Created on: 1997-01-17
2-- Created by: Didier PIFFAULT
3-- Copyright (c) 1997-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--
973c2be1 8-- This library is free software; you can redistribute it and / or modify it
9-- under the terms of the GNU Lesser General Public 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.
b311480e 13--
973c2be1 14-- Alternatively, this file may be used under the terms of Open CASCADE
15-- commercial license or contractual agreement.
b311480e 16
7fd59977 17-- Modified David CARBONEL
4e57c75e 18-- Add of Sewing class
7fd59977 19
20package BRepAlgo
21
22 ---Purpose:
4e57c75e 23 -- The BRepAlgo package provides a full range of
24 -- services to perform Old Boolean Operations in Open CASCADE.
25 -- Attention:
26 -- The New Boolean Operation has replaced the Old
27 -- Boolean Operations algorithm in the BrepAlgoAPI
28 -- package in Open CASCADE.
7fd59977 29
30uses
31 BRep,
32 BRepTools,
33 BRepBuilderAPI,
34 Bnd,
35 Standard,
36 TCollection,
37 TColStd,
38 TopAbs,
39 GeomAbs,
40 GeomTools,
41 Geom,
42 Geom2d,
43 gp,
44 MMgt,
45 TopExp,
46 TopAbs,
47 TopLoc,
48 TColgp,
49 TColStd,
50 TCollection,
51 TopoDS,
52 TopTools,
53 TopOpeBRepDS,
54 TopOpeBRepBuild,
55 TopOpeBRep,
56 Adaptor3d,
4e57c75e 57 StdFail
7fd59977 58
59is
60 enumeration CheckStatus is
61 OK, NOK
62 end CheckStatus;
63
64 --BRepAlgoAPI f
65 deferred class BooleanOperation;
66 class Fuse;
67 class Cut;
68 class Common;
69 class Section;
70 --BRepAlgoAPI t
71
72 --
73 -- Use of face topological builder
74 --
75 class Loop;
76 class Tool;
77 class Image;
78 class AsDes;
79 class FaceRestrictor;
80 ---Purpose:Build all the faces limited with a set of non
81 -- jointing and planars wires
82 -- The Wires must have correct orientations.
83 --
84
85 class BooleanOperations;
86 ---Purpose:
87 class DSAccess;
88 ---Purpose:
7fd59977 89 class EdgeConnector;
90 ---Purpose:
91 class NormalProjection;
4e57c75e 92 ---Purpose:
7fd59977 93 -- class Sewing; now it is in BRepBuilderAPI
94
95 class DataMapOfShapeBoolean instantiates
96 DataMap from TCollection(Shape from TopoDS,
97 Boolean from Standard,
98 ShapeMapHasher from TopTools);
99
100 class DataMapOfShapeInterference instantiates
101 DataMap from TCollection(Shape from TopoDS,
102 Interference from TopOpeBRepDS,
103 ShapeMapHasher from TopTools);
104
105 class SequenceOfSequenceOfInteger instantiates
106 Sequence from TCollection(SequenceOfInteger from TColStd);
107
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
113 -- between G1 edges.
114 -- Option can be G1 or C1.
115 returns Wire from TopoDS;
116
51a849d7 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;
122
7fd59977 123 --BRepAlgoAPI f
124
125 IsValid(S: Shape from TopoDS)
4e57c75e 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>.
130
7fd59977 131 IsValid(theArgs : ListOfShape from TopTools;
4e57c75e 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
139 -- will be checked.
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.
144
145
7fd59977 146 IsTopologicallyValid(S: Shape from TopoDS)
4e57c75e 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.
7fd59977 154
155 --BRepAlgoAPI t
156
157end BRepAlgo;