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 | |
17 | class Shell from IGESSolid inherits IGESEntity |
18 | |
19 | ---Purpose: defines Shell, Type <514> Form Number <1> |
20 | -- in package IGESSolid |
21 | -- Shell entity is a connected entity of dimensionality 2 |
22 | -- which divides R3 into two arcwise connected open subsets, |
23 | -- one of which is finite. Inside of the shell is defined to |
24 | -- be the finite region. |
25 | -- From IGES-5.3, Form can be <1> for Closed or <2> for Open |
26 | |
27 | uses |
28 | |
29 | Face from IGESSolid, |
30 | HArray1OfFace from IGESSolid, |
31 | HArray1OfInteger from TColStd |
32 | |
33 | raises DimensionMismatch, OutOfRange |
34 | |
35 | is |
36 | |
6e33d3ce |
37 | Create returns Shell; |
7fd59977 |
38 | |
39 | -- Specific Methods pertaining to the class |
40 | |
41 | Init (me : mutable; |
42 | allFaces : HArray1OfFace; |
43 | allOrient : HArray1OfInteger) |
44 | raises DimensionMismatch; |
45 | ---Purpose : This method is used to set the fields of the class Shell |
46 | -- - allFaces : the faces comprising the shell |
47 | -- - allOrient : the orientation flags of the shell |
48 | -- raises exception if length of allFaces & allOrient do not match |
49 | |
50 | IsClosed (me) returns Boolean; |
51 | ---Purpose : Tells if a Shell is Closed, i.e. if its FormNumber is 1 |
52 | -- (this is the default) |
53 | |
54 | SetClosed (me : mutable; closed : Boolean); |
55 | ---Purpose : Sets or Unsets the Closed status (FormNumber = 1 else 2) |
56 | |
57 | NbFaces (me) returns Integer; |
58 | ---Purpose : returns the number of the face entities in the shell |
59 | |
60 | Face (me; Index : Integer) returns Face |
61 | raises OutOfRange; |
62 | ---Purpose : returns the Index'th face entity of the shell |
63 | -- raises exception if Index <= 0 or Index > NbFaces() |
64 | |
65 | Orientation (me; Index : Integer) returns Boolean |
66 | raises OutOfRange; |
67 | ---Purpose : returns the orientation of Index'th face w.r.t the direction of |
68 | -- the underlying surface |
69 | -- raises exception if Index <= 0 or Index > NbFaces() |
70 | |
71 | fields |
72 | |
73 | -- |
74 | -- Class : IGESSolid_Shell |
75 | -- |
76 | -- Purpose : Declaration of variables specific to the definition |
77 | -- of the Class Shell. |
78 | -- |
79 | -- Reminder : A Shell instance is defined by : |
80 | -- a number of face entities defined with their orientation |
81 | -- with respect to the direction of the underlying surface |
82 | |
83 | theFaces : HArray1OfFace; |
84 | -- the faces comprising the shell |
85 | |
86 | theOrientation : HArray1OfInteger; |
87 | -- the orientation of the corresponding face |
88 | |
89 | end Shell; |