Overture
Version 25
Main Page
Namespaces
Classes
Files
File List
File Members
Overture.v25.d
include
RocketMapping.h
Go to the documentation of this file.
1
#ifndef ROCKET_MAPPING_H
2
#define ROCKET_MAPPING_H
3
4
#include "
SplineMapping.h
"
5
6
//-------------------------------------------------------------
7
// Define cross-sections for rocket related geometries
8
//-------------------------------------------------------------
9
class
RocketMapping
:
public
SplineMapping
10
{
11
12
public
:
13
14
enum
RocketTypeEnum
15
{
16
slot
,
17
star
,
18
circle
19
};
20
21
RocketMapping
(
const
int
&
rangeDimension
=2 );
22
23
// Copy constructor is deep by default
24
RocketMapping
(
const
RocketMapping
&,
const
CopyType
copyType=
DEEP
);
25
26
~RocketMapping
();
27
28
RocketMapping
&
operator =
(
const
RocketMapping
& X0 );
29
30
virtual
int
get
(
const
GenericDataBase
& dir,
const
aString
& name);
// get from a database file
31
virtual
int
put
(
GenericDataBase
& dir,
const
aString
& name)
const
;
// put to a database file
32
33
Mapping
*
make
(
const
aString
&
mappingClassName
);
34
aString
getClassName
()
const
{
return
RocketMapping::className
; }
35
36
int
update
(
MappingInformation
& mapInfo ) ;
37
38
protected
:
39
40
aString
className
;
41
RocketTypeEnum
rocketType
;
42
43
int
numVertex
;
44
real
elementSize
;
45
real
normalDistance
;
46
real
zValue
;
47
48
// for slot
49
real
slotWidth
;
50
int
numPoints
;
51
52
// for star:
53
real
innerRadius
,
outerRadius
;
54
real
innerFilletRadius
,
outerFilletRadius
;
55
56
// for circle:
57
real
radius
;
58
59
// compute spline points for a slot
60
int
computePoints
();
61
int
computeSlotPoints
();
62
int
computeStarPoints
();
63
int
computeCirclePoints
();
64
65
private
:
66
67
//
68
// Virtual member functions used only through class ReferenceCounting:
69
//
70
virtual
ReferenceCounting
&
operator=
(
const
ReferenceCounting
& x)
71
{
return
operator=
((
RocketMapping
&)x); }
72
virtual
void
reference(
const
ReferenceCounting
& x)
73
{ reference((
RocketMapping
&)x); }
// *** Conversion to this class for the virtual = ****
74
virtual
ReferenceCounting
* virtualConstructor(
const
CopyType
ct =
DEEP
)
const
75
{ return ::new
RocketMapping
(*
this
, ct); }
76
77
};
78
79
80
#endif
Generated on Fri Jan 4 2013 10:17:58 for Overture by
1.8.3