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

Polygon representation methods - modeling and rendering, Polygon Representa...

Polygon Representation Methods - Modeling and Rendering Any scene to be created by computer graphics may include a variety of objects, a few of them natural and manmade. Hence

Polygon representation methods - boundary representations, Polygon represen...

Polygon representation methods - Boundary representations Boundary representations: now the 3-D object is shown as a set of surfaces which separate the object interior from

Real time clock -rtc, Main objectives: To test to micro-controller I...

Main objectives: To test to micro-controller I2C protocol bus functionality Setting and displaying accurate time and date on the LCD GENERAL DESCRIPTION The D

Define coherence properties, Define coherence properties?  A coherence ...

Define coherence properties?  A coherence property of a scene is a part of a scene by which relate single part of the scene with the other parts of the scene.

Identify design patterns, Mauri Ltd has just acquired a new stock manageme...

Mauri Ltd has just acquired a new stock management system and the source codes (PhP5) also have been delivered. The coding style is fully object-oriented. The company has been u

Graphics tablet - cad and cam, Graphics Tablet - CAD and CAM We need ...

Graphics Tablet - CAD and CAM We need to know what we mean via tablet in computer terminology, before going into details on the graphic tablet, since in the other disciplines

Color Histograms - Scene Categories, How can I perform feature extraction o...

How can I perform feature extraction on images of different classes? How to obtain a vector of each class that contains its features?

Bresenham line generation algorithm for positive slope, Bresenham Line Gene...

Bresenham Line Generation Algorithm for Positive Slope (BLD algorithm for positive slope (0 - If slope is negative then utilize reflection transformation to transform the

Bezier curves - 2d shape primitives, Bezier curves: Theses are special...

Bezier curves: Theses are special polynomial curves expressed using Bernstein polynomials. Spline curves are simple extensions of Bézier curves composed of two or more polynom

Is cad only helpful for design drawings, Question: Is CAD only helpful for ...

Question: Is CAD only helpful for design drawings? No. When true-scale, structurally valid drawings are the purpose for CAD's existence; it utilizes is as diverse as imagination

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