0025021: New option of BRepOffsetAPI_MakeOffset algorithm: open result for open wire
[occt.git] / src / BRepFill / BRepFill_OffsetWire.cdl
CommitLineData
b311480e 1-- Created on: 1995-04-19
2-- Created by: Yves FRICAUD
3-- Copyright (c) 1995-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
17class OffsetWire from BRepFill
18
19 ---Purpose: Constructs a Offset Wire to a spine (wire or face)
20 -- on the left of spine.
ff8178ef 21 -- The Wire or the Face must be planar.
7fd59977 22uses
23
24 Face from TopoDS,
25 Shape from TopoDS,
26 JoinType from GeomAbs,
27 ListOfShape from TopTools,
28 DataMapOfShapeShape from TopTools,
86b3805f 29 IndexedDataMapOfOrientedShapeListOfShape from BRepFill,
7fd59977 30 BisectingLocus from BRepMAT2d,
31 LinkTopoBilo from BRepMAT2d
32
33raises
34 ConstructionError from Standard,
35 NoSuchObject from Standard
36
37is
38
39 Create returns OffsetWire from BRepFill;
40
41 Create ( Spine : Face from TopoDS;
6a442250 42 Join : JoinType from GeomAbs = GeomAbs_Arc;
43 IsOpenResult : Boolean from Standard = Standard_False)
7fd59977 44 returns OffsetWire from BRepFill;
45
46 Init ( me : in out;
47 Spine : Face from TopoDS;
6a442250 48 Join : JoinType from GeomAbs = GeomAbs_Arc;
49 IsOpenResult : Boolean from Standard = Standard_False)
7fd59977 50 ---Purpose: Initialize the evaluation of Offseting.
51 raises
52 ConstructionError from Standard
53 is static;
54
55 Perform (me : in out;
56 Offset : Real from Standard;
57 Alt : Real from Standard = 0.0)
58 ---Purpose: Performs an OffsetWire at an altitude <Alt> from
59 -- the face ( According to the orientation of the
60 -- face)
61 raises
62 ConstructionError from Standard
63 is static;
64
65 PerformWithBiLo (me : in out;
66 WSP : Face from TopoDS;
67 Offset : Real from Standard;
68 Locus : BisectingLocus from BRepMAT2d;
69 Link : in out LinkTopoBilo from BRepMAT2d;
70 Join : JoinType from GeomAbs = GeomAbs_Arc;
71 Alt : Real from Standard = 0.0)
72 ---Purpose: Performs an OffsetWire
73 raises
74 ConstructionError from Standard
75 is static;
76
77 IsDone ( me)
78 returns Boolean from Standard
79 is static;
80
81 Spine(me)
82 returns Face from TopoDS
83 ---C++: return const &
84 is static;
85
86
87 Shape(me) returns Shape from TopoDS
88 ---Purpose: returns the generated shape.
89 ---C++ : return const &
90 is static;
91
92 GeneratedShapes (me : in out ; SpineShape : Shape from TopoDS)
93 ---Purpose: Returns the shapes created from a subshape
94 -- <SpineShape> of the spine.
95 -- Returns the last computed Offset.
96 --
97 ---C++ : return const &
98 returns ListOfShape from TopTools
99 is static;
100
101 JoinType (me) returns JoinType from GeomAbs
102 is static;
103
104 Generated (me : in out )
105 ---C++: return &
86b3805f 106 returns IndexedDataMapOfOrientedShapeListOfShape from BRepFill
7fd59977 107 is static private;
108
109 PrepareSpine (me : in out)
110 ---Purpose: Prepare the spine as follow
111 -- - Cut the spine-Edges at the extrema of curvature and
112 -- at the inflexion points.
113 is static private;
114
115 Add(me : in out; Other : OffsetWire from BRepFill)
116 ---Purpose: Add the OffsetWire <Other> to <me> and update <myMap>
117 is static private;
118
119 MakeWires (me : in out)
120 ---Purpose: Constructs the wires with the trimmed offset edges.
121 is static private;
122
123 FixHoles (me : in out)
124 ---Purpose: Fix holes between open wires where it is possible
125 is static private;
126
127fields
128
129 mySpine : Face from TopoDS;
130 myWorkSpine : Face from TopoDS;
131 myOffset : Real from Standard; -- >0 ;
6a442250 132 myIsOpenResult : Boolean from Standard;
7fd59977 133 myShape : Shape from TopoDS;
134 myIsDone : Boolean from Standard;
135 myJoinType : JoinType from GeomAbs;
86b3805f 136 myMap : IndexedDataMapOfOrientedShapeListOfShape from BRepFill;
7fd59977 137 myBilo : BisectingLocus from BRepMAT2d;
138 myLink : LinkTopoBilo from BRepMAT2d;
139 myMapSpine : DataMapOfShapeShape from TopTools;
140 myCallGen : Boolean from Standard;
141
142end OffsetWire;