Handling mouse input, Computer Graphics

When you set up your project, create the class as an "ACM Graphics Program", rather than a plain class. This will perform the necessary preparations for you to use mouse input in your program.

There are three main tasks that you need to consider when implementing this program:

1. Identifying the numerical values, boolean values, and graphical objects that you will need to use in your program and declaring the fields for them.

2. Initializing the fields above to reflect the initial game state and add the graphical objects to the canvas.

3. Responding to a mouse click from the player and performing the appropriate logic to execute their turn. any method in the class.

What fields do you need? First, think about what you need to store the state of the game.  We can identify three numerical values: the trough score, player 1's score, and player 2's score. Think about which primitive type would be best here. Are the scores fractional or
are they whole numbers?

Next, you need a way to keep track of which player's turn it is. Here are a couple strategies that you can think about: you could use an integer variable that keeps track of which player's turn it is. Or, since you only have two players, you could use a boolean value that indicates "whether or not it's player 1's turn" (or alternatively, player 2's turn).

Identifying the graphic objects should be fairly self-explanatory, based on the description above. Remember to make sure that the graphics at startup reflect the initial state of the game (the correct player should be displayed bold, for example, and the score labels should all be set to 0).

Task: Initializing the Fields

As in the other graphics programs you've seen, this initialization code can go in the run () method. Don't forget to initialize the variables that represent the game state as well as the graphical objects.

Task: Handling Mouse Input

The mouseClicked() method is where you will respond to the user clicking on one of the objects on your canvas. You need to determine which object was clicked (refer to the GUI examples shown in class) and execute the appropriate action by implementing the game rules described at the top of the assignment. Remember that you need to update both the numeric values that represent the game state as well as the labels on the screen.

Posted Date: 2/28/2013 6:35:02 AM | Location : United States







Related Discussions:- Handling mouse input, Assignment Help, Ask Question on Handling mouse input, Get Answer, Expert's Help, Handling mouse input Discussions

Write discussion on Handling mouse input
Your posts are moderated
Related Questions
Construction of an Isometric Projection - Transformation In this projection, the direction of projection i.e. d = (d 1 ,d 2 ,d 3 ) makes an identical angles with all the 3-pr

List out the merits and demerits of Penetration methods?  The merits and demerits of the Penetration methods are as follows  It is a less expensive technique It has

What is the difference between impact and non-impact printers?  Impact printer press produced character faces against an inked ribbon on to the paper. A line printer and dot-ma

View Volumes and General Projection Transformations You have to remember that the view volume is the volume which sets up near and far extents, top and bottom extents and left

Polygon -Rendering Methods Now we will see the application of an illumination model to execute the rendering of standard graphics objects that are formed along with polygonal

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

State the Advantages AND Disadvantages of CAD       Advantages of CAD                                                               Disadvantages of CAD - Easier to modif

Find out the matrix of projection for cavalier projection Answer: Cavalier projection corresponds to tan α = 1, leading to the following matrix.

Mathematical description of an Oblique projection onto xy-plane  In order to expand the transformation for the oblique projection, identify the Figure. This figure explains a

Q. Describe briefly phong shading algorithm.   OR                Write short note on phong shading.    Phong shading   Phong shading or normal vector interpo