Branch data Line data Source code
1 : : //-------------------------------------------------------------------------
2 : : // Filename : OctreeFacetPointData.hpp
3 : : //
4 : : // Purpose : Holds Intersection Data
5 : : //
6 : : // Creator : William Roshan Quadros
7 : : //
8 : : // Creation Date : 01/01/2003
9 : : //
10 : : // Owner :
11 : : //-------------------------------------------------------------------------
12 : : #ifndef OCTREEFACETPOINTDATA_H
13 : : #define OCTREEFACETPOINTDATA_H
14 : :
15 : : #include "CubitVector.hpp"
16 : : #include "DLIList.hpp"
17 : :
18 : :
19 : : class CubitFacet;
20 : : class CubitFacetEdge;
21 : : class CubitPoint;
22 : :
23 : :
24 : : enum OctreeFacetPointDataType { CUBIT_FACET_POINT_DATA_FACET, CUBIT_FACET_POINT_DATA_EDGE, CUBIT_FACET_POINT_DATA_POINT };
25 : :
26 : : class OctreeFacetPointData
27 : : {
28 : :
29 : : public:
30 : : OctreeFacetPointData( CubitVector coord, CubitFacet *ptr_facet );
31 : : OctreeFacetPointData( CubitVector coord, CubitFacetEdge *ptr_facet_edge );
32 : : OctreeFacetPointData( CubitVector coord, CubitPoint *ptr_point );
33 : 0 : ~OctreeFacetPointData(){}
34 : :
35 : 0 : CubitVector coordinates( void ){ return xyz; }
36 : 0 : double x( void ){ return xyz.x(); }
37 : 0 : double y( void ){ return xyz.y(); }
38 : 0 : double z( void ){ return xyz.z(); }
39 : :
40 : : int calculate_id( void );
41 : 0 : int id( void ){ return num; }
42 : :
43 : : void display( void );
44 : :
45 : : static CubitBoolean generate_facet_point_data_at_slender_facet( CubitFacet *ptr_facet, DLIList<OctreeFacetPointData *> &facet_point_data_list );
46 : : static CubitBoolean generate_facet_point_data_based_on_curvature( CubitFacetEdge *ptr_facet_edge, /*double angle,*/ DLIList<OctreeFacetPointData *> &facet_point_data_list );
47 : :
48 : :
49 : : private:
50 : :
51 : : union
52 : : {
53 : : CubitFacet *facetPtr;
54 : : CubitFacetEdge *facetEdgePtr;
55 : : CubitPoint *facetPointPtr;
56 : : };
57 : :
58 : : int num;
59 : : CubitVector xyz;
60 : : OctreeFacetPointDataType type;
61 : :
62 : : };
63 : :
64 : : #endif
65 : :
66 : : //EOF
67 : :
|