root/cgm/trunk/geom/BodySM.hpp

Revision 1814, 2.5 KB (checked in by kraftche, 19 months ago)

o Back out previous change: linking of cgma_init needs to remain separate

from other CGM libraries because all others are overriden if using an
existing libcubit.


o Fix missing library search path for libcubit

o Fix self-recursive variable for OpenCascade? link

o Separate uninstalled include and link paths from installed paths so

as to retain the ability to use an installed CGM while greatly reducing
the noise when referencing an installed one.

  • Property svn:executable set to *
Line 
1//-------------------------------------------------------------------------
2// Copyright Notice
3//
4// Copyright (c) 1996
5// by Malcolm J. Panthaki, DBA, and the University of New Mexico.
6//-------------------------------------------------------------------------
7//
8//-------------------------------------------------------------------------
9// Filename      : BodySM.hpp
10//
11// Purpose       : To declare the Body solid model class.
12//
13// Special Notes :
14//
15// Creator       : Stephen J. Verzi
16//
17// Creation Date : 02/26/97
18//
19// Owner         : Stephen J. Verzi
20//-------------------------------------------------------------------------
21
22#ifndef BODYSM_HPP
23#define BODYSM_HPP
24
25// ********** BEGIN STANDARD INCLUDES      **********
26// ********** END STANDARD INCLUDES        **********
27
28// ********** BEGIN MOTIF INCLUDES         **********
29// ********** END MOTIF INCLUDES           **********
30
31// ********** BEGIN OPEN INVENTOR INCLUDES **********
32// ********** END OPEN INVENTOR INCLUDES   **********
33
34// ********** BEGIN ACIS INCLUDES          **********
35// ********** END ACIS INCLUDES            **********
36
37// ********** BEGIN CUBIT INCLUDES         **********
38
39#include "CubitDefines.h"
40
41#include "TopologyBridge.hpp"
42class CubitTransformMatrix;
43class CubitVector;
44class CubitBox;
45
46// ********** END CUBIT INCLUDES           **********
47
48// ********** BEGIN FORWARD DECLARATIONS   **********
49// ********** END FORWARD DECLARATIONS     **********
50
51class CUBIT_GEOM_EXPORT BodySM : public TopologyBridge
52{
53   public :
54
55      BodySM() ;
56      //- The default constructor
57
58      virtual ~BodySM() ;
59      //- The destructor
60 
61      virtual const type_info& topology_entity_type_info() const;
62   
63
64      virtual CubitStatus get_transforms( CubitTransformMatrix &tfm)= 0 ;
65      //R CubitStatus
66      //R- CUBIT_SUCCESS/FAILURE
67      //- return the BODY transformation matrix
68
69
70      virtual CubitStatus mass_properties( CubitVector& centroid,
71                                           double& volume ) = 0;
72     
73      virtual CubitPointContainment point_containment( const CubitVector& pos ) = 0;
74
75      CubitBox bounding_box();
76     
77   protected: 
78
79   private:
80} ;
81
82
83// ********** BEGIN INLINE FUNCTIONS       **********
84// ********** END INLINE FUNCTIONS         **********
85
86// ********** BEGIN FRIEND FUNCTIONS       **********
87// ********** END FRIEND FUNCTIONS         **********
88
89// ********** BEGIN EXTERN FUNCTIONS       **********
90// ********** END EXTERN FUNCTIONS         **********
91
92#endif
Note: See TracBrowser for help on using the browser.