cgma
|
00001 //------------------------------------------------------------------------- 00002 // Copyright Notice 00003 // 00004 // Copyright (c) 1996 00005 // by Malcolm J. Panthaki, DBA, and the University of New Mexico. 00006 //------------------------------------------------------------------------- 00007 // 00008 //------------------------------------------------------------------------- 00009 // Filename : Lump.hpp 00010 // 00011 // Purpose : 00012 // 00013 // Special Notes : 00014 // 00015 // Creator : Xuechen Liu 00016 // 00017 // Creation Date : 08/02/96 00018 // 00019 // Owner : Malcolm J. Panthaki 00020 //------------------------------------------------------------------------- 00021 00022 #ifndef LUMP_HPP 00023 #define LUMP_HPP 00024 00025 00026 #include "CubitDefines.h" 00027 #include "GeometryEntity.hpp" 00028 #include "GeometryDefines.h" 00029 #include "CGMGeomConfigure.h" 00030 00031 00032 class CUBIT_GEOM_EXPORT Lump : public GeometryEntity 00033 { 00034 public : 00035 00036 Lump() ; 00037 //- The default constructor 00038 00039 virtual ~Lump() ; 00040 //- The destructor 00041 00042 typedef Surface ChildType; 00043 00044 virtual GeometryType geometry_type() 00045 {return UNDEFINED_LUMP_TYPE;}; 00046 //R GeometryType (enum) 00047 //R- The enumerated type of the geometric representation 00048 00049 virtual CubitStatus mass_properties( CubitVector &/*centroid*/, double &/*volume*/ ) = 0; 00050 virtual CubitStatus mass_properties( CubitVector /*principal_axes*/[3], 00051 CubitVector &/*principal_moments*/, 00052 CubitVector &/*centroid*/, 00053 double &/*volume*/ ) {return CUBIT_FAILURE;} 00054 00055 protected: 00056 00057 private: 00058 } ; 00059 00060 00061 #endif 00062