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

Ray casting - polygon rendering and ray tracing methods, Ray Casting -polyg...

Ray Casting -polygon rendering and ray tracing methods It is a method wherein the surfaces of objects visible to the camera are determined by throwing or say casting rays of

Modify the dda algorithm for negative sloped lines, 1. Modify the DDA algo...

1. Modify the DDA algorithm for negative sloped lines; discuss both the cases i.e., slope > 1 and 0   Ans. For the generation of lines along with negative slopes as:

Basic transformations - 2-d and 3-d transformations, Basic Transformations ...

Basic Transformations - 2-d and 3-d Transformations Consider the xy-coordinate system upon a plane. An object or Obj in a plane can be identified as a set of points. All objec

Transform from the world to viewing coordinate system, To transform from th...

To transform from the world coordinate system to viewing coordinate system you need to perform the following operations.  a)  Translate the viewing coordinate origin to the worl

Liquid crystal display - graphics hardware, Liquid Crystal Display - Graphi...

Liquid Crystal Display - Graphics Hardware It is a type of display utilized in digital watches and several portable computers. These work along with polarized ambient as outsi

Create an animated application, The purpose of this assignment is for you t...

The purpose of this assignment is for you to create an animation like you would see on an electronic greeting card. Have fun and be creative.  Here are the requirements: you

Explain shannon -fano algorithm, (a) Differentiate between the following co...

(a) Differentiate between the following compression algorithm: 1. Shannon -Fano Algorithm and 2. Huffman Encoding (b) A statistical encoding algorithm is being considered

Photo editing, Photo Editing Photo-editing programs are paint programs...

Photo Editing Photo-editing programs are paint programs: it just like they comprise several sophisticated functions for altering images and for scheming aspects of the image,

Application of sutherland hodgman polygon clipping, For good understanding ...

For good understanding of the application of the rules specified above see the following figure, where the shaded region demonstrates the clipped polygon. Fi

What are the utilizations of inverse transformation, What are the utilizati...

What are the utilizations of Inverse transformation? Provide the Inverse transformation for translation, shearing, reflection, scaling and rotation. Solution: We have observed

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