opengl, Computer Graphics

Assignment Help:
Write a program that allows interactive manipulation of the position and orientation of a camera.
Draw a teapot at the global origin 0,0,0.
You can find a shaded teapot model and source code teapot_glut.c.

Initially, the camera is at 0,0,10 looking down the -z axis (looking at the origin 0,0,0).



The main objective of this homework is to manipulate the position and orientation of the camera. The position of the camera is restricted to be on the surface of a virtual sphere with the radius of 10. So you can imagine a teapot at the origin, and a camera on a surrounding sphere pointing at the teapot.

There are two camera manipulation instruction, elevation and swing. In elevation mode, the camera should be elevated on the surface of the sphere while maintaining the look-at point at the origin. The range of elevation on the surface of a sphere is between -90 and 90 degree. Use mouse motion function to implement the user interaction. Users should be able to elevate the camera by dragging mouse upward.

In swing mode, the camera should be moved sideways on the surface of the sphere while maintaining the look-at point at the origin. Use mouse motion function to implement the user interaction. Users should be able to swing the camera by dragging mouse sideways. Note that during the swing operation, the elevation level should be preserved and the camera should not tilt sideways.

Using a pull-down menu, a user should be able to toggle between grid view on and off.
Quit menu will terminate the program.

Related Discussions:- opengl

Points and lines - graphic primitives, Points and Lines - Graphic primitive...

Points and Lines - Graphic primitives In the previous section, we have seen to draw primitive objects; one has to firstly scan convert the objects. This concern to the operat

Whether cavalier projection is a parallel projection, State whether the fol...

State whether the following statements are true or false. Give reasons/examples to justify your answer.  a)  Cavalier projection is a parallel projection. b)  Angles are not

Characteristics of digital video, Digital video can be characterized by a f...

Digital video can be characterized by a few variables: Frame rate : various frames displayed per second. The illusion of motion may be experienced on frame rates as low as 12 f

Distinguish between window port and view port, Distinguish between window p...

Distinguish between window port & view port?  A portion of a picture that is to be displayed by a window is called as window port. The display area of the part selected or the f

Military-applications for computer animation, Military: In order to enter ...

Military: In order to enter the military, one has to go by various training. Depending upon whether you want to be in the army, navy or the marines, you may be working along with

Interlaced gif, Interlaced GIF: The conventional which is non-interlaced G...

Interlaced GIF: The conventional which is non-interlaced GIF graphic downloads one line of pixels at one time from top to bottom and browsers display all lines of the image as it

Random painter graphical application, "Random Painter" uses an array to sto...

"Random Painter" uses an array to store a collection of randomly coloured shapes, either squares or circles as filled shapes or outlines.  Using an array imposes severe limitati

Types of bitmap images, Types of Bitmap Images Bitmap images can includ...

Types of Bitmap Images Bitmap images can include any number of colours but we distinguish among four main categories as: 1)      Line-art: These are images that include

Consider shiny surface with diffused reflection coefficient, Consider a Shi...

Consider a Shiny Surface Along With Diffused Reflection coefficient Consider a shiny surface along with diffused reflection coefficient of 0.8 and ambient reflection coeffici

Time delay and busy flag method, 1. Using a time Delay Method The delay...

1. Using a time Delay Method The delay required between issuing each character to the LCD is about 5-10ms (it's simply known as DELAY). When programming an LCD, a long delay is

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd