Oolite
1.91.0.7645-241119-222d325
Loading...
Searching...
No Matches
src
Core
Entities
OOStellarBody.h
Go to the documentation of this file.
1
/*
2
3
OOStellarBody.h
4
5
Protocol shared by suns and planets (which used to be the same class).
6
7
8
Oolite
9
Copyright (C) 2004-2013 Giles C Williams and contributors
10
11
This program is free software; you can redistribute it and/or
12
modify it under the terms of the GNU General Public License
13
as published by the Free Software Foundation; either version 2
14
of the License, or (at your option) any later version.
15
16
This program is distributed in the hope that it will be useful,
17
but WITHOUT ANY WARRANTY; without even the implied warranty of
18
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19
GNU General Public License for more details.
20
21
You should have received a copy of the GNU General Public License
22
along with this program; if not, write to the Free Software
23
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
24
MA 02110-1301, USA.
25
26
*/
27
28
#import "
OOCocoa.h
"
29
#import "
OOWeakReference.h
"
30
#import "
OOTypes.h
"
31
#import "
OOMaths.h
"
32
33
34
#ifndef NEW_PLANETS
35
// not for 1.77/8
36
#define NEW_PLANETS 1
37
#endif
38
39
40
typedef
enum
41
{
42
STELLAR_TYPE_SUN
,
43
STELLAR_TYPE_NORMAL_PLANET
,
// Terrestrial planet with atmosphere and oceans
44
#if !NEW_PLANETS
45
STELLAR_TYPE_ATMOSPHERE
,
46
#endif
47
STELLAR_TYPE_MOON
,
// Rocky/airless planet
48
STELLAR_TYPE_MINIATURE
// Display proxy for a "normal" planet
49
}
OOStellarBodyType
;
50
51
52
#define ATMOSPHERE_DEPTH 500.0
53
#define PLANET_MINIATURE_FACTOR 0.00185
54
#define MAX_SUBDIVIDE 6
55
56
57
@protocol
OOStellarBody <NSObject, OOWeakReferenceSupport>
58
59
- (double) radius;
60
- (
OOStellarBodyType
) planetType;
61
62
- (NSString *) name;
63
- (void) setName:(NSString *)name;
64
65
@end
OOCocoa.h
OOMaths.h
OOStellarBodyType
OOStellarBodyType
Definition
OOStellarBody.h:41
STELLAR_TYPE_MOON
@ STELLAR_TYPE_MOON
Definition
OOStellarBody.h:47
STELLAR_TYPE_ATMOSPHERE
@ STELLAR_TYPE_ATMOSPHERE
Definition
OOStellarBody.h:45
STELLAR_TYPE_MINIATURE
@ STELLAR_TYPE_MINIATURE
Definition
OOStellarBody.h:48
STELLAR_TYPE_SUN
@ STELLAR_TYPE_SUN
Definition
OOStellarBody.h:42
STELLAR_TYPE_NORMAL_PLANET
@ STELLAR_TYPE_NORMAL_PLANET
Definition
OOStellarBody.h:43
OOTypes.h
OOWeakReference.h
Generated by
1.12.0