0023948: Wrong intersection between a surface of revolution and a plane.
[occt.git] / src / IGESSolid / IGESSolid_ManifoldSolid.cdl
CommitLineData
b311480e 1-- Created on: 1993-01-09
2-- Created by: CKY / Contract Toubro-Larsen ( SIVA )
3-- Copyright (c) 1993-1999 Matra Datavision
973c2be1 4-- Copyright (c) 1999-2014 OPEN CASCADE SAS
7fd59977 5--
973c2be1 6-- This file is part of Open CASCADE Technology software library.
7fd59977 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.
7fd59977 13--
973c2be1 14-- Alternatively, this file may be used under the terms of Open CASCADE
15-- commercial license or contractual agreement.
7fd59977 16
17class ManifoldSolid from IGESSolid inherits IGESEntity
18
19 ---Purpose: defines ManifoldSolid, Type <186> Form Number <0>
20 -- in package IGESSolid
21 -- A manifold solid is a bounded, closed, and finite volume
22 -- in three dimensional Euclidean space
23
24uses
25
26 Shell from IGESSolid,
27 HArray1OfShell from IGESSolid,
28 HArray1OfInteger from TColStd
29
30raises DimensionMismatch, OutOfRange
31
32is
33
6e33d3ce 34 Create returns ManifoldSolid;
7fd59977 35
36 -- Specific Methods pertaining to the class
37
38 Init (me : mutable;
39 aShell : Shell;
40 shellflag : Boolean;
41 voidShells : HArray1OfShell;
42 voidShellFlags : HArray1OfInteger)
43 raises DimensionMismatch;
44 ---Purpose : This method is used to set the fields of the class
45 -- ManifoldSolid
46 -- - aShell : pointer to the shell
47 -- - shellflag : orientation flag of shell
48 -- - voidShells : the void shells
49 -- - voidShellFlags : orientation of the void shells
50 -- raises exception if length of voidShells and voidShellFlags
51 -- do not match
52
53 Shell(me) returns Shell;
54 ---Purpose : returns the Shell entity which is being referred
55
56 OrientationFlag(me) returns Boolean;
57 ---Purpose : returns the orientation flag of the shell
58
59 NbVoidShells(me) returns Integer;
60 ---Purpose : returns the number of void shells
61
62 VoidShell(me; Index : Integer) returns Shell
63 raises OutOfRange;
64 ---Purpose : returns Index'th void shell.
65 -- raises exception if Index <= 0 or Index > NbVoidShells()
66
67 VoidOrientationFlag(me; Index : Integer) returns Boolean
68 raises OutOfRange;
69 ---Purpose : returns Index'th orientation flag.
70 -- raises exception if Index <= 0 or Index > NbVoidShells()
71
72fields
73
74--
75-- Class : IGESSolid_ManifoldSolid
76--
77-- Purpose : Declaration of variables specific to the definition
78-- of the Class ManifoldSolid.
79--
80-- Reminder : A ManifoldSolid instance is defined by :
81-- a shell bounded by more shells
82
83 theShell : Shell;
84
85 theOrientationFlag : Boolean;
86 -- the orientation flag of the shell w.r.t. underlying face
87 -- (True = agrees)
88
89 theVoidShells : HArray1OfShell;
90
91 theOrientFlags : HArray1OfInteger;
92
93end ManifoldSolid;