954,116 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

Windows programming task

Ps I need some help with my Windows programming assignment.
My instructor wants us to draw an ellipse(2D) and make it appear like a ball(3D) by applying different shades of the same color to different parts of the ellipse.
By assuming any point is the light source, parts near to that source will be lighter and parts farther will be darker but there should be a gradual change in the shades as one moves from one region to another.
He said we'd need a loop and (of course) a SetPixel function to do this.
Anyone who has an idea should please help out.

crestaldin
Light Poster
30 posts since Mar 2005
Reputation Points: 10
Solved Threads: 0
 
Ps I need some help with my Windows programming assignment. My instructor wants us to draw an ellipse(2D) and make it appear like a ball(3D) by applying different shades of the same color to different parts of the ellipse. By assuming any point is the light source, parts near to that source will be lighter and parts farther will be darker but there should be a gradual change in the shades as one moves from one region to another. He said we'd need a loop and (of course) a SetPixel function to do this. Anyone who has an idea should please help out.

I dont know myself exactly, but you can talk to this guy on yahoo. ankit_jain_gzb or you can mail him on [email]ankit_jain_gzb@yahoo.co.in[/email]

aj.wh.ca
Junior Poster in Training
53 posts since Mar 2005
Reputation Points: 12
Solved Threads: 1
 

Well for a start to make an ellipse appear like a ball you need to make a CIRCLE not an ellipse, then depending on the angle of the light you need to do some VERY basic lighting algorithms ASSUMING the object IS 3 dimensional. If you set the light source to be pointing through the centre of the circle and its angle varying as it travels around the shape then the lighting shouldnt be too hard to figure out. What output do you have at the moment?

1o0oBhP
Posting Pro in Training
445 posts since Dec 2004
Reputation Points: 16
Solved Threads: 6
 

Sorry I re-read the question. Your instructor is asking you to do a 'fake 3d' lighting effect (I was going to show you a 'real' techniqe!). He / She has said that colour must fade depending on distance from a point. So here's my solution

Process WM_LBUTTONDOWN messages so that wherever you click this is where the light source is

Loop through the 'ellipse'. Using pythagorus' theorum you can work out the distance from the current shape pixel to the light source pixel (where the user clicked) then by scaling colour components by this value you will get RGB values required at each pixel and therefore have done the fake lighting tech!

1o0oBhP
Posting Pro in Training
445 posts since Dec 2004
Reputation Points: 16
Solved Threads: 6
 

This article has been dead for over three months

Post: Markdown Syntax: Formatting Help
You