0022731: Error on attempt to write in IGES 5.3 the attached brep model
[occt.git] / src / IGESControl / IGESControl_IGESBoundary.cdl
1 -- File:        IGESControl_IGESBoundary.cdl
2 -- Created:     Sat Feb  5 15:58:02 2000
3 -- Author:      data exchange team
4 --              <det@kinox>
5 ---Copyright:    Matra Datavision 2000
6
7
8 class IGESBoundary from IGESControl inherits IGESBoundary from IGESToBRep
9
10     ---Purpose: Translates IGES boundary entity (types 141, 142 and 508)
11     --          in Advanced Data Exchange.
12     --          Redefines translation and treatment methods from inherited
13     --          open class IGESToBRep_IGESBoundary.
14
15 uses
16
17     IGESEntity          from IGESData,
18     HArray1OfIGESEntity from IGESData,
19     CurveAndSurface     from IGESToBRep,
20     WireData            from ShapeExtend
21
22 is
23
24     Create returns mutable IGESBoundary from IGESControl;
25         ---Purpose: Creates an object and calls inherited constuctor.
26
27     Create (CS: CurveAndSurface from IGESToBRep) returns mutable IGESBoundary from IGESControl;
28         ---Purpose: Creates an object and calls inherited constuctor.
29         
30     Check (me: mutable; result, checkclosure, okCurve3d, okCurve2d: Boolean) is redefined;
31         ---Purpose: Checks result of translation of IGES boundary entities
32         --          (types 141, 142 or 508).
33         --          Checks consistency of 2D and 3D representations and keeps
34         --          only one if they are inconsistent.
35         --          Checks the closure of resulting wire and if it is not closed,
36         --          checks 2D and 3D representation and updates the resulting
37         --          wire to contain only closed representation.
38         ---Remark : If resulting representation will be 3D, some edges may still
39         --          contain pcurves which are consistent with 3D curves for the
40         --          given edge.
41         
42     ---Level: Internal
43                     
44     Transfer (me: mutable; okCurve    : in out Boolean;
45                            okCurve3d  : in out Boolean;
46                            okCurve2d  : in out Boolean;
47                            icurve3d   : IGESEntity from IGESData;
48                            scurve3d   : WireData from ShapeExtend;
49                            usescurve  : Boolean;
50                            toreverse3d: Boolean;
51                            curves2d   : HArray1OfIGESEntity from IGESData;
52                            toreverse2d: Boolean;
53                            number     : Integer;
54                            lsewd      : out WireData from ShapeExtend)
55     returns Boolean is redefined protected;
56     
57 end IGESBoundary;