Branch data Line data Source code
1 : : //-------------------------------------------------------------------------
2 : : // Filename : Shell.hpp
3 : : //
4 : : // Purpose : Represents a shell of a model.
5 : : //
6 : : // Special Notes :
7 : : //
8 : : // Creator : Xuechen Liu
9 : : //
10 : : // Creation Date : 08/02/96
11 : : //
12 : : // Owner : Malcolm J. Panthaki
13 : : //-------------------------------------------------------------------------
14 : :
15 : : #ifndef SHELL_HPP
16 : : #define SHELL_HPP
17 : :
18 : : // ********** BEGIN STANDARD INCLUDES **********
19 : : // ********** END STANDARD INCLUDES **********
20 : :
21 : : // ********** BEGIN CUBIT INCLUDES **********
22 : : #include "GroupingEntity.hpp"
23 : : #include "CubitDefines.h"
24 : : #include "CubitBox.hpp"
25 : : // ********** END CUBIT INCLUDES **********
26 : :
27 : : // ********** BEGIN FORWARD DECLARATIONS **********
28 : : class ShellSM;
29 : : class RefFace;
30 : : class CoFace;
31 : : class RefVolume;
32 : : template <class X> class DLIList;
33 : : // ********** END FORWARD DECLARATIONS **********
34 : :
35 [ - + ]: 6716 : class CUBIT_GEOM_EXPORT Shell : public GroupingEntity
36 : : {
37 : : public :
38 : :
39 : : Shell() ;
40 : : //- The default constructor.
41 : :
42 : : Shell(ShellSM* OSMEPtr) ;
43 : : //- The constructor with a pointer to an other solid model entity.
44 : :
45 : 46090 : DagType dag_type() const { return DagType::shell_type(); }
46 : :
47 : : CoFace* get_co_face_ptr( RefFace* ref_face_ptr );
48 : : //R CoFace*
49 : : //R- A pointer to a child CoFace.
50 : : //I ref_face_ptr
51 : : //I- A pointer to the RefFace who's corresponding
52 : : //I- CoFace is to be found.
53 : : //- If there is more than one CoFace in the shell for
54 : : //- the specified RefFace, the first one encountered
55 : : //- will be returned.
56 : :
57 : : RefVolume* get_ref_volume_ptr( );
58 : : //R RefVolume*
59 : : //R- A pointer to the parent RefVolume.
60 : :
61 : : CubitBox bounding_box();
62 : : //R CubitBox
63 : : //R- The bounding box of the Shell
64 : : //- Calculate the union of the bounding boxes of the
65 : : //- RefFaces of this Shell, and return it is the
66 : : //- bounding box of the Shell.
67 : :
68 : : ShellSM* get_shell_sm_ptr() const;
69 : :
70 : : CubitBoolean is_sheet();
71 : : //- Return true if shell is a sheet.
72 : :
73 : : protected:
74 : :
75 : : private:
76 : :
77 : : Shell( const Shell& );
78 : : void operator=( const Shell&);
79 : : } ;
80 : :
81 : : // ********** BEGIN INLINE FUNCTIONS **********
82 : : // ********** END INLINE FUNCTIONS **********
83 : :
84 : : // ********** BEGIN FRIEND FUNCTIONS **********
85 : : // ********** END FRIEND FUNCTIONS **********
86 : :
87 : : // ********** BEGIN EXTERN FUNCTIONS **********
88 : : // ********** END EXTERN FUNCTIONS **********
89 : :
90 : : #endif
91 : :
|