100% found this document useful (2 votes)
5K views8 pages

Solar System CGR

This document outlines a micro-project on animating the solar system created by 4 students. It includes an introduction, proposed methodology, action plan, resources used, the C code for the animation, screenshots of the output, and outcomes from the project. The students created a graphics program in C that animates the motion of planets in the solar system and displays the sun and orbits. They developed skills in teamwork, programming, and learning through this project.

Uploaded by

junaid
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
100% found this document useful (2 votes)
5K views8 pages

Solar System CGR

This document outlines a micro-project on animating the solar system created by 4 students. It includes an introduction, proposed methodology, action plan, resources used, the C code for the animation, screenshots of the output, and outcomes from the project. The students created a graphics program in C that animates the motion of planets in the solar system and displays the sun and orbits. They developed skills in teamwork, programming, and learning through this project.

Uploaded by

junaid
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 8

Micro-Project

A Project and Report on:


Solar System

Sessiom: 2019-2020
Branch:CO-3-I
Subject: Computer Graphics (CGR) (22318)
Subject Teacher: Mr Anwar Ahsan Sir

Students:-
1.Juned Pothawale (23)
2.Tegas Kamble (37)
3.Aditya Paunikar (02)
4.Taalib Hussain Taji (36)

Annexure-I
Micro-Project Proposal
Session: 2019-2020
Branch: CO-3-I
Subject: CGR (22318)

Solar System

Aims/Benefits of the Micro-Project:


• Create a Graphic program in C for animation of Solar System.
Course Outcomes Addressed:
• Manipulate visual and geometric information of images.
• Implement Polygon Algorithm.
• Implement standard Algorithms to draw various Graphics Objects
using C

• Proposed Methodology:

• First, we will decide the Topic of Our Project.


• We will discuss about Our Project.
• We will Start Collecting Data from Websites and Textbooks.
• Also Take Some Ideas from Previous Semester Project.
• Then we will Start Doing Our Project and Complete it on Time.

Action Plan:
Sr. No. Details of activity Planned Start Planned Name of Responsible
date Finish date Team Members
1. Discussion, Preparation 29/06/19 10/04/19 Taalib Taji (36)
and Submission of
Proposal.
2. Making of Report 10/07/19 21/07/19 Tegas Kamble (37)
3. Theory Work 21/07/19 18/08/19 Aditya Paunikar (02)
4. Preparation and 18/08/19 04/10/19 Juned Pothawale(23)
Submission

Resources Required:

Sr. Name of Specification Qty. Remarks


No. Resource/material
1. File Plastic File/ Folder 1 -
2. Paper A4 Size Papers 20 -
3. Turbo C++ IDE 01 -
4. Microsoft Word Text Editor 01 -
5. Computer 7th generation i3, RAM:- 4 01 -
GB, ROM:- 1 TB
6. Internet Information Source 01 -
• Name of Team Members with Roll Nos.
1. Taalib Taji (36)
2. Tegas Kamble (37)
3. Aditya Paunikar (02)
4. Juned Pothawale(23)

...

Annexure-II

Micro-Project Proposal
Session: 2019-2020
Branch: CO-3-I
Subject:CGR(22318)
The Solar System
• Rationale:
• In this project, we did some animation by using the
graphics.h header.

• Aims/Benefits of the Micro-Project:


• Create a Graphic program in C for animation of the solar
system.

• Course Outcomes Achieved:


...
• We manipulated visual and geometric information of images.
• We implemented Polygon Algorithm.
• We implemented standard Algorithms to draw various
Graphics Objects using C.

• Literature Review:

C Code:
#include <stdio.h>
#include <conio.h>
#include <graphics.h>
#include <dos.h>
#include <math.h>
/* manipulates the position of planets on the orbit */
void planetMotion(int xrad, int yrad, int midx, int midy, int x[60], int y[60]) {
int i, j = 0;
/* positions of planets in their corresponding orbits */
for (i = 360; i > 0; i = i – 6) {
x[j] = midx – (xrad * cos((i * 3.14) / 180));
y[j++] = midy – (yrad * sin((i * 3.14) / 180));
}
return;
}
int main() {
/* request auto detection */
int gdriver = DETECT, gmode, err;
int i = 0, midx, midy;
int xrad[9], yrad[9], x[9][60], y[9][60];
int pos[9], planet[9], tmp;
/* initialize graphic mode */
initgraph(&gdriver, &gmode, “C:/TURBOC3/BGI”);
err = graphresult();
if (err != grOk) {
/* error occurred */
printf(“Graphics Error: %s”,
grapherrormsg(err));
return 0;
}
/* mid positions at x and y-axis */
midx = getmaxx() / 2;
midy = getmaxy() / 2;
/* manipulating radius of all 9 planets */
planet[0] = 7;
for (i = 1; i < 9; i++) {
planet[i] = planet[i – 1] + 1;
}
/* offset position for the planets on their corresponding orbit */
for (i = 0; i < 9; i++) {
pos[i] = i * 6;
}
/* orbits for all 9 planets */
xrad[0] = 60, yrad[0] = 30;
for (i = 1; i < 9; i++) {
xrad[i] = xrad[i – 1] + 30;
yrad[i] = yrad[i – 1] + 15;
}
/* positions of planets on their corresponding orbits */
for (i = 0; i < 9; i++) {
planetMotion(xrad[i], yrad[i], midx, midy, x[i], y[i]);
}
while (!kbhit()) {
/* drawing 9 orbits */
setcolor(WHITE);
for (i = 0; i < 9; i++) {
ellipse(midx, midy, 0, 360, xrad[i], yrad[i]);
}
/* sun at the mid of the solar system */
setcolor(YELLOW);
setfillstyle(SOLID_FILL, YELLOW);
circle(midx, midy, 20);
floodfill(midx, midy, YELLOW);
/* mercury in first orbit */
setcolor(CYAN);
setfillstyle(SOLID_FILL, CYAN);
pieslice(x[0][pos[0]], y[0][pos[0]], 0, 360, planet[0]);
/* venus in second orbit */
setcolor(GREEN);
setfillstyle(SOLID_FILL, GREEN);
pieslice(x[1][pos[1]], y[1][pos[1]], 0, 360, planet[1]);
/* earth in third orbit */
setcolor(BLUE);
setfillstyle(SOLID_FILL, BLUE);
pieslice(x[2][pos[2]], y[2][pos[2]], 0, 360, planet[2]);
/* mars in fourth orbit */
setcolor(RED);
setfillstyle(SOLID_FILL, RED);
pieslice(x[3][pos[3]], y[3][pos[3]], 0, 360, planet[3]);
/* jupiter in fifth orbit */
setcolor(BROWN);
setfillstyle(SOLID_FILL, BROWN);
pieslice(x[4][pos[4]], y[4][pos[4]], 0, 360, planet[4]);
/* saturn in sixth orbit */
setcolor(LIGHTGRAY);
setfillstyle(SOLID_FILL, LIGHTGRAY);
pieslice(x[5][pos[5]], y[5][pos[5]], 0, 360, planet[5]);
/* uranus in sevth orbit */
setcolor(BROWN);
setfillstyle(SOLID_FILL, BROWN);
pieslice(x[6][pos[6]], y[6][pos[6]], 0, 360, planet[6]);
/* neptune in eigth orbit */
setcolor(LIGHTBLUE);
setfillstyle(SOLID_FILL, LIGHTBLUE);
pieslice(x[7][pos[7]], y[7][pos[7]], 0, 360, planet[7]);
/* pluto in ninth orbit */
setcolor(LIGHTRED);
setfillstyle(SOLID_FILL, LIGHTRED);
pieslice(x[8][pos[8]], y[8][pos[8]], 0, 360, planet[8]);
/* checking for one complete rotation */
for (i = 0; i < 9; i++) {
if (pos[i] <= 0) {
pos[i] = 59;
} else {
pos[i] = pos[i] – 1;
}
}
/* sleep for 100 milliseconds */
delay(100);
/* clears graphic screen */
cleardevice();
}
/* deallocate memory allocated for graphic screen */
closegraph();
return 0;
}

Output (Animation Screenshots):

• Actual Methodology Followed:


• Firstly, we decided our Micro-Project Topic.
• Then, we discussed about our Micro-Project.

• We started collecting data from different Textbooks and Websites.

• Also taken some ideas from previous Semester Micro-Project.

• Then we started doing our report on our Micro-Project and completed


it on time.

• We submitted this report to teacher.

• Actual Resources Used:


Sr. Name of Specification Qty. Remarks
No. Resource/material
1. File Plastic File/ Folder 1 -
2. Paper A4 Size Papers 20 -
3. Turbo C++ IDE 01 -
4. Microsoft Word Text Editor 01 -
th
5. Computer 7 generation i3, RAM:- 4 01 -
GB, ROM:- 1 TB
6. Internet Information Source 01 -
• Outputs of the Micro-Projects:
• We created a Graphic program in C for animation of Solar System.

• Skill Developed/Learning outcome of this Micro Project:


• We developed Reading Skill.
• This Project helps us to Developed our Reading Skill.
• We Learned Team Work.
• We Develop Learning Skill.
• Applications of this Micro-Project:
• Animation

You might also like