0022627: Change OCCT memory management defaults
[occt.git] / src / QANewModTopOpe / QANewModTopOpe.cdl
CommitLineData
7fd59977 1-- File: QANewModTopOpe.cdl
2-- Created: Thu May 3 10:37:16 2001
3-- Author: Igor FEOKTISTOV <ifv@nnov.matra-dtv.fr>
4-- Copyright: SAMTECH S.A. 2001
5
7fd59977 6-- Lastly modified by :
7-- +---------------------------------------------------------------------------+
8-- ! ifv ! Creation ! 3-05-2001! 3.0-00-4!
9-- ! skv ! Adaptation to OCC version 5.0 ! 6-05-2003! 3.0-00-2!
10-- +---------------------------------------------------------------------------+
11
12package QANewModTopOpe
13
14 ---Purpose: QANewModTopOpe package provides classes for limitation, gluing
15 -- and removing "floating" shapes.
16uses
17
18 BRepAlgoAPI,
19 TopoDS,
20 TopTools,
21 TopAbs,
22 BRepTools,
23 gp,
24 BOPTools
25
26is
27
28 enumeration ModeOfLimitation is Forward,
29 Reversed,
30 BothParts;
31
32 pointer CutPtr to Cut from BRepAlgoAPI;
33 pointer CommonPtr to Common from BRepAlgoAPI;
34
35 class Tools;
36 ---Purpose: to provide several tools for porting to OCC 5.0 (mkk)
37
38 class Limitation;
39 ---Purpose: to provide cutting object by face or shell.
40
41 class Intersection;
42 ---Purpose: to provide intersection of two topological objects.
43
44 class Glue; --- inherits BooleanOperation from BRepAlgoAPI
45 ---Purpose: to provide topological sewing of two topological objects.
46
47 class ReShaper;
48 ---Purpose: to remove "floating" objects from compound.
49 -- "floating" objects are wires, edges, vertices that do not belong
50 -- solids, shells or faces.
51
52 IsValid(TheS : Shape from TopoDS; GeomControls : Boolean from Standard = Standard_True)
53 returns Boolean from Standard;
54 ---Purpose: to check if TheS is valid or not.
55 -- in difference with BRepCheck_Analizer, this method allows
56 -- some kind of non-manifold shapes
57
58 IsManifold(TheS : Shape from TopoDS) returns Boolean from Standard;
59 ---Purpose: to check if TheS is manifol or not.
60 -- manifold shape is valid SOLID, SHELL, WIRE, EDGE, VERTEX without internal
61 -- subshapes - faces, wires, edges and vertices that have INTERNAL orientation
62 -- For SHELL there are additional conditions: orientations of faces must
63 -- corresponds each other, each edge must be shared not more then two faces.
64 -- COMPSOLID is non manifold by default.
65 -- COMPOUND conciders to be manifold if:
66 -- 1) all shapes in compound are manifold (see above mentioned definitions)
67 -- 2) all shapes are fully disconnected - there are any shapes in compound that
68 -- share common subshapes.
69
70 IsCompoundManifold(TheS : Compound from TopoDS) returns Boolean from Standard;
71 ---Purpose: to check if TheS is manifol or not.
72 -- compound conciders to be manifold if:
73 -- 1) all shapes in compound are manifold (see comments for method IsManifold)
74 -- 2) all shapes are fully disconnected - there are any shapes in compound that
75 -- share common subshapes.
76
77
78 TypeOfShape(TheS : Shape from TopoDS) returns ShapeEnum from TopAbs;
79 ---Purpose: to define if COMPOUND is homogeneous
80 -- (consists of shapes of the same type) and return this shape type.
81 -- If COMPOUND is mixed, method returns TopAbs_COMPOUND.
82 -- If TheS is single shape (not COMPOUND), method returns its type.
83 -- If COMPOUND contains nested compounds, it concideres to be homogeneous
84 -- if all compounds consist of shapes of the same type.
85
86 IsConnected(TheS : Shape from TopoDS) returns Boolean from Standard;
87 ---Purpose: to check if all subshapes in TheS, when TheS is COMPOUND, COMPSOLID, SHELL or WIRE,
88 -- are linked through common faces, edges or vertices.
89 -- SOLID, FACE, EDGE, VERTEX concider to be connected by default.
90
91
92 end QANewModTopOpe;
93
94
95-- @@SDM: begin
96
97-- Copyright SAMTECH ..........................................Version 3.0-00
98-- Lastly modified by : skv Date : 6-05-2003
99
100-- File history synopsis (creation,modification,correction)
101-- +---------------------------------------------------------------------------+
102-- ! Developer ! Comments ! Date ! Version !
103-- +-----------!-----------------------------------------!----------!----------+
104-- ! ifv ! Creation ! 3-05-2001! 3.0-00-4!
105-- ! skv ! Adaptation to OCC version 5.0 ! 6-05-2003! 3.0-00-2!
106-- ! vladimir ! adaptation to CAS 5.0 ! 07/01/03! 4.0-2!
107-- +---------------------------------------------------------------------------+
108--
109-- @@SDM: end