Handling mouse input, Computer Graphics

Assignment Help:

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.


Related Discussions:- Handling mouse input

Define addressability, What is meant by Addressability?  The Addressabi...

What is meant by Addressability?  The Addressability is the number of individual dots per inch (d.p.i) that can be formed. If the address of the current dot is (x, y) then the

Bezier surfaces - modeling and rendering, Bezier Surfaces - Modeling and Re...

Bezier Surfaces - Modeling and Rendering Two sets of Bezier curve can be utilized to design an object surface by identifying by an input mesh of control points. The Bézier su

Handling mouse input, When you set up your project, create the class as an ...

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 y

Advantages of the z-buffer method, Advantages of the z-buffer method:      ...

Advantages of the z-buffer method:              1) The z-buffer method or algorithm is easy to apply and it needs no sorting of surface in a scene. 2) In z-buffer algorithm

Phong specular reflection model or specular reflection, Phong Specular Refl...

Phong Specular Reflection Model or Specular Reflection This model of local illumination is frequently termed as the Phong specular reflection model. Here we discuss the matter

Uniform b - spline curve, Uniform B - spline curve: When the spacing betwe...

Uniform B - spline curve: When the spacing between Knot values is constant, the resulting curve is called a uniform B- spline. Blending function for B- spline curves are defined b

Simulation-applications for computer animation, Simulation: There are seve...

Simulation: There are several things, places and events people cannot witness in first person. There are a lot of causes for this. Several may happen too rapidly, several may be t

Dda and bresenhem line drawing algorithm, when dda algorithm is more effici...

when dda algorithm is more efficient than bresenhem line drawing algorithm

Define resolution, What is Resolution, how to adjust it.  Resolution: T...

What is Resolution, how to adjust it.  Resolution: The maximum number of points that can be displayed without overlap on a CRT is referred to as the resolution . A more prec

What is fixed point scaling, What is fixed point scaling?  The location...

What is fixed point scaling?  The location of a scaled object can be controlled by a position known as the fixed point that is to remain unchanged after the scaling transformat

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