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

Scan conversion of line with the slope, Scan Conversion of Line with the sl...

Scan Conversion of Line with the slope (0 Currently the pixel positions beside the line path are determined through sampling at Unit x intervals that is, starting from the fi

Compute the position of the car on the road, An animation demonstrates a ca...

An animation demonstrates a car driving along a road that is given by a Bezier curve along with the subsequent control points:  X k 0 5

Two kinds of video tele conference systems, There are mostly two kinds of V...

There are mostly two kinds of Video Tele Conference systems: 1) Desktop systems are add-ons to normal PC's, transforming them in Video Tele Conference devices. A range of variou

Opengl, Write a program that allows interactive manipulation of the positio...

Write a program that allows interactive manipulation of the position and orientation of a camera. Draw a teapot at the global origin 0,0,0. You can find a shaded teapot model and

What is persistence, What is persistence? The time it takes the emitted...

What is persistence? The time it takes the emitted light from the screen to decompose one tenth of its original intensity is known as persistence.

Perspective projections - transformation, Perspective Projections - Transfo...

Perspective Projections - Transformation In this projection the center of projection is at limited distance. This projection is termed as perspective projection since in this

Describe and explain four features of firewire, QUESTION 1. Describe an...

QUESTION 1. Describe and explain four features of Firewire. 2. Explain clearly what is sampling rate and how does it influences the quality of video produced. 4. In Adobe

Remote sensing packages-Image processing, Remote Sensing Packages: general...

Remote Sensing Packages: generally utilized software illustration is-" ERDAS" Characteristics: I.Best suitable for satellite imagery system. II. ERDAS uses geo-spatial in

Video conferencing and virtual reality, Video Conferencing and Virtual Real...

Video Conferencing and Virtual Reality Virtual reality is a truly fascinating multimedia application. In such, the computer creates an artificial environment using hardware an

Differentiate images and graphics, Question 1 Discuss the general properti...

Question 1 Discuss the general properties of analog signal Question 2 Differentiate images and graphics Question 3 Explain the video compression standard H.263

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