Skip to content
Snippets Groups Projects
Commit 58922599 authored by Florian Burgener's avatar Florian Burgener
Browse files

Add fake planets

parent 48648d15
No related branches found
No related tags found
No related merge requests found
...@@ -70,16 +70,29 @@ const double JUPITER_SEMI_MAJOR_AXIS = 778.570 * 1E9; ...@@ -70,16 +70,29 @@ const double JUPITER_SEMI_MAJOR_AXIS = 778.570 * 1E9;
const double JUPITER_ECCENTRICITY = 0.0489; const double JUPITER_ECCENTRICITY = 0.0489;
const int32_t JUPITER_DRAWING_RADIUS = 30; const int32_t JUPITER_DRAWING_RADIUS = 30;
const int32_t JUPITER_COLOR = 0xD8CA9D; const int32_t JUPITER_COLOR = 0xD8CA9D;
// // Naboo // Naboo
// const char JUPITER_NAME[] = "Jupiter"; const char NABOO_NAME[] = "Naboo";
// const double JUPITER_MASS = 1898.13 * 1E24; const double NABOO_MASS = 10 * 1E24;
// const double JUPITER_SEMI_MAJOR_AXIS = 778.570 * 1E9; const double NABOO_SEMI_MAJOR_AXIS = 100 * 1E9;
// const double JUPITER_ECCENTRICITY = 0.0489; const double NABOO_ECCENTRICITY = 0.6;
// const int32_t JUPITER_DRAWING_RADIUS = 30; const int32_t NABOO_DRAWING_RADIUS = 13;
// const int32_t JUPITER_COLOR = 0xD8CA9D; const int32_t NABOO_COLOR = 0x00008B;
// // Endor // Endor
const char ENDOR_NAME[] = "Endor";
const int32_t OBJECTS_LENGTH = 10; const double ENDOR_MASS = 1E23;
const double ENDOR_SEMI_MAJOR_AXIS = 100 * 1E9;
const double ENDOR_ECCENTRICITY = 0.34;
const int32_t ENDOR_DRAWING_RADIUS = 8;
const int32_t ENDOR_COLOR = 0x228B22;
// Coruscant
const char CORUSCANT_NAME[] = "Coruscant";
const double CORUSCANT_MASS = 1E27;
const double CORUSCANT_SEMI_MAJOR_AXIS = 600 * 1E9;
const double CORUSCANT_ECCENTRICITY = 0.4675;
const int32_t CORUSCANT_DRAWING_RADIUS = 35;
const int32_t CORUSCANT_COLOR = 0x5C4033;
const int32_t OBJECTS_LENGTH = 11;
PlanetarySystem *planetary_system_create() { PlanetarySystem *planetary_system_create() {
PlanetarySystem *planetary_system = (PlanetarySystem *)malloc(sizeof(PlanetarySystem)); PlanetarySystem *planetary_system = (PlanetarySystem *)malloc(sizeof(PlanetarySystem));
...@@ -91,12 +104,12 @@ PlanetarySystem *planetary_system_create() { ...@@ -91,12 +104,12 @@ PlanetarySystem *planetary_system_create() {
planetary_system->previous_interval = 1; planetary_system->previous_interval = 1;
planetary_system->show_names = true; planetary_system->show_names = true;
char *names[] = {(char *)SUN_NAME, (char *)MERCURY_NAME, (char *)VENUS_NAME, (char *)EARTH_NAME, (char *)MOON_NAME, (char *)APOLLO_11_NAME, (char *)MARS_NAME, (char *)JUPITER_NAME, "Naboo", "Endor"}; char *names[] = {(char *)SUN_NAME, (char *)MERCURY_NAME, (char *)VENUS_NAME, (char *)EARTH_NAME, (char *)MOON_NAME, (char *)APOLLO_11_NAME, (char *)MARS_NAME, (char *)JUPITER_NAME, (char *)NABOO_NAME, (char *)ENDOR_NAME, (char *)CORUSCANT_NAME};
double masses[] = {SUN_MASS, MERCURY_MASS, VENUS_MASS, EARTH_MASS, MOON_MASS, APOLLO_11_MASS, MARS_MASS, JUPITER_MASS, 1000000, 1E23}; double masses[] = {SUN_MASS, MERCURY_MASS, VENUS_MASS, EARTH_MASS, MOON_MASS, APOLLO_11_MASS, MARS_MASS, JUPITER_MASS, NABOO_MASS, ENDOR_MASS, CORUSCANT_MASS};
double semi_major_axes[] = {SUN_SEMI_MAJOR_AXIS, MERCURY_SEMI_MAJOR_AXIS, VENUS_SEMI_MAJOR_AXIS, EARTH_SEMI_MAJOR_AXIS, MOON_SEMI_MAJOR_AXIS, APOLLO_11_SEMI_MAJOR_AXIS, MARS_SEMI_MAJOR_AXIS, JUPITER_SEMI_MAJOR_AXIS, 800.598262 * 1E9, 100 * 1E9}; double semi_major_axes[] = {SUN_SEMI_MAJOR_AXIS, MERCURY_SEMI_MAJOR_AXIS, VENUS_SEMI_MAJOR_AXIS, EARTH_SEMI_MAJOR_AXIS, MOON_SEMI_MAJOR_AXIS, APOLLO_11_SEMI_MAJOR_AXIS, MARS_SEMI_MAJOR_AXIS, JUPITER_SEMI_MAJOR_AXIS, NABOO_SEMI_MAJOR_AXIS, ENDOR_SEMI_MAJOR_AXIS, CORUSCANT_SEMI_MAJOR_AXIS};
double eccentricities[] = {SUN_ECCENTRICITY, MERCURY_ECCENTRICITY, VENUS_ECCENTRICITY, EARTH_ECCENTRICITY, MOON_ECCENTRICITY, APOLLO_11_ECCENTRICITY, MARS_ECCENTRICITY, JUPITER_ECCENTRICITY, 0.8, 0.34}; double eccentricities[] = {SUN_ECCENTRICITY, MERCURY_ECCENTRICITY, VENUS_ECCENTRICITY, EARTH_ECCENTRICITY, MOON_ECCENTRICITY, APOLLO_11_ECCENTRICITY, MARS_ECCENTRICITY, JUPITER_ECCENTRICITY, NABOO_ECCENTRICITY, ENDOR_ECCENTRICITY, CORUSCANT_ECCENTRICITY};
int32_t drawing_disc_radiuses[] = {SUN_DRAWING_RADIUS, MERCURY_DRAWING_RADIUS, VENUS_DRAWING_RADIUS, EARTH_DRAWING_RADIUS, MOON_DRAWING_RADIUS, APOLLO_11_DRAWING_RADIUS, MARS_DRAWING_RADIUS, JUPITER_DRAWING_RADIUS, 12, 12}; int32_t drawing_disc_radiuses[] = {SUN_DRAWING_RADIUS, MERCURY_DRAWING_RADIUS, VENUS_DRAWING_RADIUS, EARTH_DRAWING_RADIUS, MOON_DRAWING_RADIUS, APOLLO_11_DRAWING_RADIUS, MARS_DRAWING_RADIUS, JUPITER_DRAWING_RADIUS, NABOO_DRAWING_RADIUS, ENDOR_DRAWING_RADIUS, CORUSCANT_DRAWING_RADIUS};
int32_t drawing_colors[] = {SUN_COLOR, MERCURY_COLOR, VENUS_COLOR, EARTH_COLOR, MOON_COLOR, APOLLO_11_COLOR, MARS_COLOR, JUPITER_COLOR, 0x007700, 0x007700}; int32_t drawing_colors[] = {SUN_COLOR, MERCURY_COLOR, VENUS_COLOR, EARTH_COLOR, MOON_COLOR, APOLLO_11_COLOR, MARS_COLOR, JUPITER_COLOR, NABOO_COLOR, ENDOR_COLOR, CORUSCANT_COLOR};
for (int32_t i = 0; i < planetary_system->objects_length; i += 1) { for (int32_t i = 0; i < planetary_system->objects_length; i += 1) {
CelestialObject *object = celestial_object_create(names[i], masses[i], semi_major_axes[i], eccentricities[i], drawing_disc_radiuses[i], drawing_colors[i]); CelestialObject *object = celestial_object_create(names[i], masses[i], semi_major_axes[i], eccentricities[i], drawing_disc_radiuses[i], drawing_colors[i]);
...@@ -148,7 +161,7 @@ void planetary_system_draw(PlanetarySystem *planetary_system) { ...@@ -148,7 +161,7 @@ void planetary_system_draw(PlanetarySystem *planetary_system) {
// Drawing the names of the objects afterwards so that they are not under the rest of the drawings. // Drawing the names of the objects afterwards so that they are not under the rest of the drawings.
planetary_system_draw_object_names(planetary_system); planetary_system_draw_object_names(planetary_system);
char text[100]; char text[200];
sprintf(text, "Focused Object : %s", planetary_system->objects[planetary_system->reference_frame_index]->name); sprintf(text, "Focused Object : %s", planetary_system->objects[planetary_system->reference_frame_index]->name);
draw_text(text, vector2_create(5, 15)); draw_text(text, vector2_create(5, 15));
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment