diff --git a/SolarSystem12/.vs/freeglutProject3D/v14/.suo b/SolarSystem12/.vs/freeglutProject3D/v14/.suo
index 51977ca..1f17d7b 100644
Binary files a/SolarSystem12/.vs/freeglutProject3D/v14/.suo and b/SolarSystem12/.vs/freeglutProject3D/v14/.suo differ
diff --git a/SolarSystem12/Debug/SolarSystem.exe b/SolarSystem12/Debug/SolarSystem.exe
index 1ce6f66..22d9b89 100644
Binary files a/SolarSystem12/Debug/SolarSystem.exe and b/SolarSystem12/Debug/SolarSystem.exe differ
diff --git a/SolarSystem12/Debug/SolarSystem.ilk b/SolarSystem12/Debug/SolarSystem.ilk
index 3fd3b0c..2e13cc9 100644
Binary files a/SolarSystem12/Debug/SolarSystem.ilk and b/SolarSystem12/Debug/SolarSystem.ilk differ
diff --git a/SolarSystem12/Debug/SolarSystem.pdb b/SolarSystem12/Debug/SolarSystem.pdb
index 5d78443..abc721c 100644
Binary files a/SolarSystem12/Debug/SolarSystem.pdb and b/SolarSystem12/Debug/SolarSystem.pdb differ
diff --git a/SolarSystem12/freeglutProject3D.VC.db b/SolarSystem12/freeglutProject3D.VC.db
index f6f8249..f55f130 100644
Binary files a/SolarSystem12/freeglutProject3D.VC.db and b/SolarSystem12/freeglutProject3D.VC.db differ
diff --git a/SolarSystem12/freeglutProject3D/Debug/Jupiter.obj b/SolarSystem12/freeglutProject3D/Debug/Jupiter.obj
index b1f268b..fa4493f 100644
Binary files a/SolarSystem12/freeglutProject3D/Debug/Jupiter.obj and b/SolarSystem12/freeglutProject3D/Debug/Jupiter.obj differ
diff --git a/SolarSystem12/freeglutProject3D/Debug/Mars.obj b/SolarSystem12/freeglutProject3D/Debug/Mars.obj
index cc468ce..896a8b4 100644
Binary files a/SolarSystem12/freeglutProject3D/Debug/Mars.obj and b/SolarSystem12/freeglutProject3D/Debug/Mars.obj differ
diff --git a/SolarSystem12/freeglutProject3D/Debug/Naptune.obj b/SolarSystem12/freeglutProject3D/Debug/Naptune.obj
new file mode 100644
index 0000000..1fb7a79
Binary files /dev/null and b/SolarSystem12/freeglutProject3D/Debug/Naptune.obj differ
diff --git a/SolarSystem12/freeglutProject3D/Debug/Saturn.obj b/SolarSystem12/freeglutProject3D/Debug/Saturn.obj
new file mode 100644
index 0000000..f243b4a
Binary files /dev/null and b/SolarSystem12/freeglutProject3D/Debug/Saturn.obj differ
diff --git a/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/CL.command.1.tlog b/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/CL.command.1.tlog
index a4060dc..b0016e5 100644
Binary files a/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/CL.command.1.tlog and b/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/CL.command.1.tlog differ
diff --git a/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/CL.read.1.tlog b/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/CL.read.1.tlog
index 56cb0c0..b0e68c3 100644
Binary files a/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/CL.read.1.tlog and b/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/CL.read.1.tlog differ
diff --git a/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/CL.write.1.tlog b/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/CL.write.1.tlog
index e3e8e73..b568203 100644
Binary files a/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/CL.write.1.tlog and b/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/CL.write.1.tlog differ
diff --git a/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/link.command.1.tlog b/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/link.command.1.tlog
index 54eef8a..9a444e9 100644
Binary files a/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/link.command.1.tlog and b/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/link.command.1.tlog differ
diff --git a/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/link.read.1.tlog b/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/link.read.1.tlog
index 150ca62..7614bdd 100644
Binary files a/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/link.read.1.tlog and b/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/link.read.1.tlog differ
diff --git a/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/link.write.1.tlog b/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/link.write.1.tlog
index 491e1ab..d0e9305 100644
Binary files a/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/link.write.1.tlog and b/SolarSystem12/freeglutProject3D/Debug/SolarSystem.tlog/link.write.1.tlog differ
diff --git a/SolarSystem12/freeglutProject3D/Debug/Uranus.obj b/SolarSystem12/freeglutProject3D/Debug/Uranus.obj
new file mode 100644
index 0000000..4863a1c
Binary files /dev/null and b/SolarSystem12/freeglutProject3D/Debug/Uranus.obj differ
diff --git a/SolarSystem12/freeglutProject3D/Debug/freeglutProject3D.log b/SolarSystem12/freeglutProject3D/Debug/freeglutProject3D.log
index bc3a41f..3b2f1e0 100644
--- a/SolarSystem12/freeglutProject3D/Debug/freeglutProject3D.log
+++ b/SolarSystem12/freeglutProject3D/Debug/freeglutProject3D.log
@@ -1,17 +1,4 @@
- Jupiter.cpp
+ Naptune.cpp
c:\users\김준혁\project\solarsystem12\freeglutproject3d\actor.h : warning C4819: 현재 코드 페이지(949)에서 표시할 수 없는 문자가 파일에 들어 있습니다. 데이터가 손실되지 않게 하려면 해당 파일을 유니코드 형식으로 저장하십시오.
- 코드를 생성하고 있습니다...
- 컴파일하고 있습니다...
- Mars.cpp
-c:\users\김준혁\project\solarsystem12\freeglutproject3d\actor.h : warning C4819: 현재 코드 페이지(949)에서 표시할 수 없는 문자가 파일에 들어 있습니다. 데이터가 손실되지 않게 하려면 해당 파일을 유니코드 형식으로 저장하십시오.
- 코드를 생성하고 있습니다...
- 컴파일하고 있습니다...
- Sun.cpp
-c:\users\김준혁\project\solarsystem12\freeglutproject3d\sun.cpp : warning C4819: 현재 코드 페이지(949)에서 표시할 수 없는 문자가 파일에 들어 있습니다. 데이터가 손실되지 않게 하려면 해당 파일을 유니코드 형식으로 저장하십시오.
-c:\users\김준혁\project\solarsystem12\freeglutproject3d\sun.h : warning C4819: 현재 코드 페이지(949)에서 표시할 수 없는 문자가 파일에 들어 있습니다. 데이터가 손실되지 않게 하려면 해당 파일을 유니코드 형식으로 저장하십시오.
-c:\users\김준혁\project\solarsystem12\freeglutproject3d\actor.h : warning C4819: 현재 코드 페이지(949)에서 표시할 수 없는 문자가 파일에 들어 있습니다. 데이터가 손실되지 않게 하려면 해당 파일을 유니코드 형식으로 저장하십시오.
- 코드를 생성하고 있습니다...
- 건너뛰고 있습니다... (관련된 변경 내용 없음)
- main1.cpp
freeglutProject3D.vcxproj -> C:\Users\김준혁\Project\SolarSystem12\Debug\SolarSystem.exe
freeglutProject3D.vcxproj -> C:\Users\김준혁\Project\SolarSystem12\Debug\SolarSystem.pdb (Full PDB)
diff --git a/SolarSystem12/freeglutProject3D/Debug/main1.obj b/SolarSystem12/freeglutProject3D/Debug/main1.obj
index 16fbbba..30f5f32 100644
Binary files a/SolarSystem12/freeglutProject3D/Debug/main1.obj and b/SolarSystem12/freeglutProject3D/Debug/main1.obj differ
diff --git a/SolarSystem12/freeglutProject3D/Debug/vc140.idb b/SolarSystem12/freeglutProject3D/Debug/vc140.idb
index 8cf4fa4..acedcee 100644
Binary files a/SolarSystem12/freeglutProject3D/Debug/vc140.idb and b/SolarSystem12/freeglutProject3D/Debug/vc140.idb differ
diff --git a/SolarSystem12/freeglutProject3D/Debug/vc140.pdb b/SolarSystem12/freeglutProject3D/Debug/vc140.pdb
index 8b98f83..517ca54 100644
Binary files a/SolarSystem12/freeglutProject3D/Debug/vc140.pdb and b/SolarSystem12/freeglutProject3D/Debug/vc140.pdb differ
diff --git a/SolarSystem12/freeglutProject3D/Naptune.cpp b/SolarSystem12/freeglutProject3D/Naptune.cpp
new file mode 100644
index 0000000..a60947f
--- /dev/null
+++ b/SolarSystem12/freeglutProject3D/Naptune.cpp
@@ -0,0 +1,56 @@
+#include "Naptune.h"
+#include "TextureLoader.h"
+
+
+Naptune::Naptune() //Naptune
+ : Sphere(10, 45, 45) //Sphere() ߽ ǥ
+
+{
+
+ init();
+
+}
+
+Naptune::~Naptune() //Naptune Ҹ
+{
+
+ Sphere::~Sphere();
+
+}
+
+
+
+void Naptune::init()
+{
+
+ unsigned int width, height; //ʺ
+ unsigned char * data = loadBMPRaw("neptune.bmp", width, height, false); //"Naptune.bmp" ҷ´
+
+ glGenTextures(1, &textureID); //OpenGL ؽĸ
+ glBindTexture(GL_TEXTURE_2D, textureID); // ؽ Ʈ. ؽĴ ؽķ Ѵ.
+
+
+ //OpenGL ̹ Ѵ.
+ glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, width, height, 0, GL_BGR_EXT, GL_UNSIGNED_BYTE, data);
+ glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
+
+
+ //ǥ
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); //巹
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); //巹
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); //Ȯ
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); //
+ delete[] data;
+
+}
+
+
+void Naptune::draw() //ȭ鿡 Naptune
+{
+
+ glBindTexture(GL_TEXTURE_2D, textureID); // ؽ Ʈ
+ gluQuadricTexture(quadric, GL_TRUE); // ؽĵ ؽĸ Ѵ.
+ Sphere::draw(); //ȭ鿡 Sphere
+
+}
+
diff --git a/SolarSystem12/freeglutProject3D/Naptune.h b/SolarSystem12/freeglutProject3D/Naptune.h
new file mode 100644
index 0000000..fe88249
--- /dev/null
+++ b/SolarSystem12/freeglutProject3D/Naptune.h
@@ -0,0 +1,25 @@
+#ifndef NaptuneH
+#define NaptuneH
+
+#include "Sphere.h" //Sphere
+
+
+class Naptune :
+
+ public Sphere //Sphere Ŭ Public ȣ
+{
+
+private: // Naptune Ŭ Private
+ GLuint textureID; //ؽID Ÿ
+ void init();
+
+
+public: //Naptune Ŭ Public
+ Naptune(); //Naptune ü
+ ~Naptune(); //Naptune ü Ҹ
+ void draw(); //ȭ鿡 ִ Լ
+
+};
+
+
+#endif
diff --git a/SolarSystem12/freeglutProject3D/Saturn.cpp b/SolarSystem12/freeglutProject3D/Saturn.cpp
new file mode 100644
index 0000000..ea65376
--- /dev/null
+++ b/SolarSystem12/freeglutProject3D/Saturn.cpp
@@ -0,0 +1,56 @@
+#include "Saturn.h"
+#include "TextureLoader.h"
+
+
+Saturn::Saturn() //Earth
+ : Sphere(40, 45, 45) //Sphere() ߽ ǥ
+
+{
+
+ init();
+
+}
+
+Saturn::~Saturn() //Earth Ҹ
+{
+
+ Sphere::~Sphere();
+
+}
+
+
+
+void Saturn::init()
+{
+
+ unsigned int width, height; //ʺ
+ unsigned char * data = loadBMPRaw("saturn.bmp", width, height, false); //"earth.bmp" ҷ´
+
+ glGenTextures(1, &textureID); //OpenGL ؽĸ
+ glBindTexture(GL_TEXTURE_2D, textureID); // ؽ Ʈ. ؽĴ ؽķ Ѵ.
+
+
+ //OpenGL ̹ Ѵ.
+ glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, width, height, 0, GL_BGR_EXT, GL_UNSIGNED_BYTE, data);
+ glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
+
+
+ //ǥ
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); //巹
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); //巹
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); //Ȯ
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); //
+ delete[] data;
+
+}
+
+
+void Saturn::draw() //ȭ鿡 Earth
+{
+
+ glBindTexture(GL_TEXTURE_2D, textureID); // ؽ Ʈ
+ gluQuadricTexture(quadric, GL_TRUE); // ؽĵ ؽĸ Ѵ.
+ Sphere::draw(); //ȭ鿡 Sphere
+
+}
+
diff --git a/SolarSystem12/freeglutProject3D/Saturn.h b/SolarSystem12/freeglutProject3D/Saturn.h
new file mode 100644
index 0000000..c1af0d3
--- /dev/null
+++ b/SolarSystem12/freeglutProject3D/Saturn.h
@@ -0,0 +1,25 @@
+#ifndef SaturnH
+#define SaturnH
+
+#include "Sphere.h" //Sphere
+
+
+class Saturn :
+
+ public Sphere //Sphere Ŭ Public ȣ
+{
+
+private: // Earth Ŭ Private
+ GLuint textureID; //ؽID Ÿ
+ void init();
+
+
+public: //Mars Ŭ Public
+ Saturn(); //Mars ü
+ ~Saturn(); //Mars ü Ҹ
+ void draw(); //ȭ鿡 ִ Լ
+
+};
+
+
+#endif
diff --git a/SolarSystem12/freeglutProject3D/Uranus.cpp b/SolarSystem12/freeglutProject3D/Uranus.cpp
new file mode 100644
index 0000000..88b686c
--- /dev/null
+++ b/SolarSystem12/freeglutProject3D/Uranus.cpp
@@ -0,0 +1,54 @@
+#include "Uranus.h"
+#include "TextureLoader.h"
+
+
+Uranus::Uranus() //Uranus
+ : Sphere(20, 45, 45) //Sphere() ߽ ǥ
+
+{
+
+ init();
+
+}
+
+Uranus::~Uranus() //Uranus Ҹ
+{
+
+ Sphere::~Sphere();
+
+}
+
+
+void Uranus::init()
+{
+
+ unsigned int width, height; //ʺ
+ unsigned char * data = loadBMPRaw("uranus.bmp", width, height, false); //" ҷ´
+
+ glGenTextures(1, &textureID); //OpenGL ؽĸ
+ glBindTexture(GL_TEXTURE_2D, textureID); // ؽ Ʈ. ؽĴ ؽķ Ѵ.
+
+
+ //OpenGL ̹ Ѵ.
+ glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, width, height, 0, GL_BGR_EXT, GL_UNSIGNED_BYTE, data);
+ glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
+
+
+ //ǥ
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); //巹
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); //巹
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); //Ȯ
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); //
+ delete[] data;
+
+}
+
+
+void Uranus::draw() //ȭ鿡 Earth
+{
+
+ glBindTexture(GL_TEXTURE_2D, textureID); // ؽ Ʈ
+ gluQuadricTexture(quadric, GL_TRUE); // ؽĵ ؽĸ Ѵ.
+ Sphere::draw(); //ȭ鿡 Sphere
+}
+
diff --git a/SolarSystem12/freeglutProject3D/Uranus.h b/SolarSystem12/freeglutProject3D/Uranus.h
new file mode 100644
index 0000000..16b788e
--- /dev/null
+++ b/SolarSystem12/freeglutProject3D/Uranus.h
@@ -0,0 +1,24 @@
+#ifndef UranusH
+#define UranusH
+
+#include "Sphere.h" //Sphere
+
+
+class Uranus :
+
+ public Sphere //Sphere Ŭ Public ȣ
+{
+
+private: // Uranus Ŭ Private
+ GLuint textureID; //ؽID Ÿ
+ void init();
+
+
+public: //Uranus Ŭ Public
+ Uranus(); //Uranus ü
+ ~Uranus(); //Uranus ü Ҹ
+ void draw(); //ȭ鿡 ִ Լ
+
+};
+
+#endif
diff --git a/SolarSystem12/freeglutProject3D/freeglutProject3D.vcxproj b/SolarSystem12/freeglutProject3D/freeglutProject3D.vcxproj
index b22ae61..4583edc 100644
--- a/SolarSystem12/freeglutProject3D/freeglutProject3D.vcxproj
+++ b/SolarSystem12/freeglutProject3D/freeglutProject3D.vcxproj
@@ -79,11 +79,14 @@
+
+
+
@@ -97,11 +100,14 @@
+
+
+
@@ -109,7 +115,10 @@
+
+
+
diff --git a/SolarSystem12/freeglutProject3D/freeglutProject3D.vcxproj.filters b/SolarSystem12/freeglutProject3D/freeglutProject3D.vcxproj.filters
index ceb709c..416ea8b 100644
--- a/SolarSystem12/freeglutProject3D/freeglutProject3D.vcxproj.filters
+++ b/SolarSystem12/freeglutProject3D/freeglutProject3D.vcxproj.filters
@@ -78,6 +78,15 @@
Source Files\Objects
+
+ Source Files\Objects
+
+
+ Source Files\Objects
+
+
+ Source Files\Objects
+
@@ -128,6 +137,15 @@
Header Files\Objects
+
+ Header Files\Objects
+
+
+ Header Files\Objects
+
+
+ Header Files\Objects
+
@@ -148,5 +166,14 @@
Resource Files
+
+ Resource Files
+
+
+ Resource Files
+
+
+ Resource Files
+
\ No newline at end of file
diff --git a/SolarSystem12/freeglutProject3D/main1.cpp b/SolarSystem12/freeglutProject3D/main1.cpp
index e4bc914..c07c861 100644
--- a/SolarSystem12/freeglutProject3D/main1.cpp
+++ b/SolarSystem12/freeglutProject3D/main1.cpp
@@ -28,6 +28,9 @@ Date of final modification (
#include "Earth.h"
#include "Mars.h"
#include "Jupiter.h"
+#include "Saturn.h"
+#include "Uranus.h"
+#include "Naptune.h"
#include "Disk.h"
#include "Satelite.h"
#include "Group.h"
@@ -106,6 +109,9 @@ Group venusSystem;
Group earthSystem;
Group marsSystem;
Group jupiterSystem;
+Group saturnSystem;
+Group uranusSystem;
+Group naptuneSystem;
Sun* sunRef;
Mercury* mercuryRef;
@@ -113,7 +119,9 @@ Venus* venusRef;
Earth* earthRef;
Mars* marsRef;
Jupiter* jupiterRef;
-
+Saturn* saturnRef;
+Uranus* uranusRef;
+Naptune* naptuneRef;
Satelite satelite;
Sphere moon(8, 20, 20);
@@ -269,6 +277,45 @@ int main(int argc, char* argv[])
jupiterSystem.setAngleVector(0, 1, 0);
+ //伺 ˵ //
+ Disk saturnOrbit(320, 324, 200, 10);
+ saturnOrbit.setColor(0.8, 0.8, 0.0, 0.0);
+ saturnOrbit.setAngle(90);
+ saturnOrbit.setAngleVector(1, 0, 0);
+ solarSystem.addChildren(&saturnOrbit);
+
+ // Jupiter system //
+ solarSystem.addChildren(&saturnSystem);
+ saturnSystem.setX(322);
+ saturnSystem.setAngleVector(0, 1, 0);
+
+ //õռ ˵ //
+ Disk uranusOrbit(360, 364, 200, 10);
+ uranusOrbit.setColor(0.8, 0.8, 0.0, 0.0);
+ uranusOrbit.setAngle(90);
+ uranusOrbit.setAngleVector(1, 0, 0);
+ solarSystem.addChildren(&uranusOrbit);
+
+ // Uranus system //
+ solarSystem.addChildren(&uranusSystem);
+ uranusSystem.setX(362);
+ uranusSystem.setAngleVector(0, 1, 0);
+
+ //ؿռ ˵ //
+ Disk naptuneOrbit(400, 404, 200, 10);
+ naptuneOrbit.setColor(0.8, 0.8, 0.0, 0.0);
+ naptuneOrbit.setAngle(90);
+ naptuneOrbit.setAngleVector(1, 0, 0);
+ solarSystem.addChildren(&naptuneOrbit);
+
+ // Uranus system //
+ solarSystem.addChildren(&naptuneSystem);
+ naptuneSystem.setX(402);
+ naptuneSystem.setAngleVector(0, 1, 0);
+
+
+
+
// //
Mercury mercury;
mercuryRef = &mercury;
@@ -295,12 +342,30 @@ int main(int argc, char* argv[])
mars.setAngleVector(0, 0, 1);
- //ȭ //
+ // //
Jupiter jupiter;
jupiterRef = &jupiter;
jupiter.setColor(1, 1, 1, 1);
jupiter.setAngleVector(0, 0, 1);
+ //伺 //
+ Saturn saturn;
+ saturnRef = &saturn;
+ saturn.setColor(1, 1, 1, 1);
+ saturn.setAngleVector(0, 0, 1);
+
+ //õռ //
+ Uranus uranus;
+ uranusRef = &uranus;
+ uranus.setColor(1, 1, 1, 1);
+ uranus.setAngleVector(0, 0, 1);
+
+ //ؿռ //
+ Naptune naptune;
+ naptuneRef = &naptune;
+ naptune.setColor(1, 1, 1, 1);
+ naptune.setAngleVector(0, 0, 1);
+
Group mercuryContainer;
mercuryContainer.addChildren(&mercury);
@@ -335,6 +400,25 @@ int main(int argc, char* argv[])
jupiterContainer.setAngleVector(1, 0, 0);
jupiterSystem.addChildren(&jupiterContainer);
+ Group saturnContainer;
+ saturnContainer.addChildren(&saturn);
+ saturnContainer.setAngle(-90);
+ saturnContainer.setAngleVector(1, 0, 0);
+ saturnSystem.addChildren(&saturnContainer);
+
+ Group uranusContainer;
+ uranusContainer.addChildren(&uranus);
+ uranusContainer.setAngle(-90);
+ uranusContainer.setAngleVector(1, 0, 0);
+ uranusSystem.addChildren(&uranusContainer);
+
+ Group naptuneContainer;
+ naptuneContainer.addChildren(&naptune);
+ naptuneContainer.setAngle(-90);
+ naptuneContainer.setAngleVector(1, 0, 0);
+ naptuneSystem.addChildren(&naptuneContainer);
+
+
//ޱ˵
Disk moonOrbit(52, 54, 60, 1);
moonOrbit.setColor(1, 1, 1, 1);
@@ -412,6 +496,16 @@ void TimerFunction(int value)
jupiterSystem.setAngle(jupiterSystem.getAngle() + 2.5);
(*jupiterRef).setAngle((*jupiterRef).getAngle() + 4);
+ saturnSystem.setAngle(saturnSystem.getAngle() + 2.5);
+ (*saturnRef).setAngle((*saturnRef).getAngle() + 4);
+
+ uranusSystem.setAngle(uranusSystem.getAngle() + 2.5);
+ (*uranusRef).setAngle((*uranusRef).getAngle() + 4);
+
+ naptuneSystem.setAngle(naptuneSystem.getAngle() + 2.5);
+ (*naptuneRef).setAngle((*naptuneRef).getAngle() + 4);
+
+
earthSystem.setAngle(earthSystem.getAngle() + 4);
(*earthRef).setAngle((*earthRef).getAngle() + 6);
satelite.setAngle(satelite.getAngle() + 2);
@@ -961,6 +1055,15 @@ void keyPres(unsigned char key, int mX, int mY) {
(*jupiterRef).setAngle((*jupiterRef).getAngle() + 4);
+ saturnSystem.setAngle(saturnSystem.getAngle() + 2.5);
+ (*saturnRef).setAngle((*saturnRef).getAngle() + 4);
+
+ uranusSystem.setAngle(uranusSystem.getAngle() + 2.5);
+ (*uranusRef).setAngle((*uranusRef).getAngle() + 4);
+
+ naptuneSystem.setAngle(naptuneSystem.getAngle() + 2.5);
+ (*naptuneRef).setAngle((*naptuneRef).getAngle() + 4);
+
earthSystem.setAngle(earthSystem.getAngle() + 4);
(*earthRef).setAngle((*earthRef).getAngle() + 6);
satelite.setAngle(satelite.getAngle() + 2);
diff --git a/SolarSystem12/freeglutProject3D/neptune.bmp b/SolarSystem12/freeglutProject3D/neptune.bmp
new file mode 100644
index 0000000..1e8844e
Binary files /dev/null and b/SolarSystem12/freeglutProject3D/neptune.bmp differ
diff --git a/SolarSystem12/freeglutProject3D/saturn.bmp b/SolarSystem12/freeglutProject3D/saturn.bmp
new file mode 100644
index 0000000..20eca5b
Binary files /dev/null and b/SolarSystem12/freeglutProject3D/saturn.bmp differ
diff --git a/SolarSystem12/freeglutProject3D/uranus.bmp b/SolarSystem12/freeglutProject3D/uranus.bmp
new file mode 100644
index 0000000..c711124
Binary files /dev/null and b/SolarSystem12/freeglutProject3D/uranus.bmp differ