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

Open Gl, Write a program in C/C++ using OpenGL to create (without using bui...

Write a program in C/C++ using OpenGL to create (without using built in function) a square by implementing shear algorithm along 1. X-axis, 2.Y-axis.

List out the merits and demerits of dvst, List out the merits and demerits ...

List out the merits and demerits of DVST?  The merits and demerits of direct view storage tubes [DVST] are as follows  It has a flat screen Refreshing of screen is

Explain how you would create a particle playground effect, Question 1: ...

Question 1: (a) Briefly describe how Parenting could be used in Adobe After effects CS3. (b) Explain the term Vanishing Point and specify when it can be used. Propose how

Hypermedia, Hypermedia: it is a superset of hypertext. Hypermedia document...

Hypermedia: it is a superset of hypertext. Hypermedia documents comprise links not only to the other pieces of text, although also to other forms of media: sounds and images and m

Authoring tools in multimedia, Authoring Tools Authoring tools genera...

Authoring Tools Authoring tools generally refers to computer software that assists multimedia developers produce products. Authoring tools are various from computer programmi

What are the advantages of rendering by patch splitting, What are the advan...

What are the advantages of rendering by patch splitting?  i. It is fast-especially on workstations with a hardware polygon-rendering pipeline.  ii. Its speed can be varied b

Mapping of a fraction -windowing transformations, Mapping of a Fraction -Wi...

Mapping of a Fraction -Windowing Transformations The mapping of a fraction of a world coordinate scene to device coordinates is considered to as Viewing Transformation. In com

Derive the common transformation of parallel projection, Derive the common ...

Derive the common transformation of parallel projection into the xy-plane in the direction of projection d=aI+bJ+cK. Solution: The common transformation of parallel projection

Define refresh rate and refresh buffer, Refresh Rate: refreshing on raster...

Refresh Rate: refreshing on raster - scan displays is carried out at the rate of 60 to 80 frames per second, although some system are designed for higher refresh rates. Sometimes,

Vertices of bezier curve find out 3 points on bezier curve, Specified p 0 ...

Specified p 0 (1, 1): p 1 (2, 3); p 2 (4, 3); p 3 (3, 1) as vertices of Bezier curve find out 3 points on Bezier curve? Solution : We consider Cubic Bezier curve as: P (

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