联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-21:00
  • 微信:codinghelp

您当前位置:首页 >> Java编程Java编程

日期:2021-03-23 11:39

ASSIGNMENT 2 :: Java AWT/Swing application – Interactive Application

Resources:

Java API: https://docs.oracle.com/javase/8/docs/api/

Java AWT/Swing: https://www.javatpoint.com/java-awt

Java Swing: https://docs.oracle.com/javase/tutorial/uiswing/components/index.html

The GOAL of this assignment is to build upon Assignment 1, to integrate & expand the interaction

in your application design to include free mouse & key interactions (along with interactions on

GUI controls), that drive the presentation of some form of dynamic visual (or animated)

component.

The goal is not necessarily to have a complete and fully functional application, but rather to have

your application partially enabled in terms of illustrating the workings of a particular feature set

of the application (i.e. some basic interactions or movements within a sample scene of your

application; or the switching between multiple contexts within your application – such as switching

between a configuration mode and a scene from the a working part of your application).

For e.g., if you are creating a scene from a game, you might focus on an animated or controllable

moving element, or dynamically loaded/displayed set(s) of visual elements within a canvas in your

application; if you are creating a compositional tool or simulation, you might enable the switching

between a configuration screen that sets parameters for your application, and another scene that

uses those parameters to drive the creation of some graphical output; if you are creating a database

or ordering tool, you might switch between an enabled configuration/submission screen (where

you enter data), and some visual representation of data loaded into in your application (such as

generating a visual report of the data entered).

IMPORTANT: This assignment should be written using Java AWT/Swing (not Java FX)

Assignment 2 deliverables:

1) Process a minimum of 2 action-based events that result from interaction with a UI

control), that directly result in some visual change in the scene, and/or a modification to

the state of your application

a. The application should have at least one handler to process at least 2 kinds of UI

triggered action event (or similar)

b. The two action events cannot be from the same type of UI control (they must be

from different types of controls.. i.e. handling two events triggered by two different

buttons does not satisfy this requirement in full. You should have at least one other UI

control that is not of the same type.

For example (in the context of a scene from a game), clicking on a button or other UI

control would create one of the types of characters and position it on the screen.

Another button could move the character (the character would move in a way that is

unique for that character).

The character might undergo a collision (triggering an event that is handled), or

another checkbox or other control could change the appearance of the character, or

enable them in some other way (e.g. a textfield could generate a speech bubble, or

control something else visual in the scene).

2) Process a minimum of 2 key-based/mouse-based events that result in some visual change

in the scene, and/or a modification to the state of your application

a. The application must have at least one handler for each of the above types of events to

process – this can be either on a graphical object or in the window (e.g. drag event or

mouse down/release, key press/release, etc.)

For example (game context): moves could be triggered by a keypress rather or a mouse

click on or near the character itself (e.g. right click results in a move, while left click

results in an appearance change).

In another context (compositional tool/simulation), a click into a canvas area could

provide input for the start of a drawing/automatically generated artwork (think about

your labs from EECS1710, where the user provides input for the turtle-based graphics,

which are now drawn with direct calls to Graphics2D references as opposed to using

the turtle. Or think about how you might make interactive inputs to control

manipulations made on audio or image files). ** these are examples only.

Perhaps you want to collect and store/manage a small image collection (and be able

to easily recall and do something with an image from that collection) – again the types

of interaction do not necessarily need to be that involved. We are not expecting AAA

games or Photoshop quality tools. Keep it as simple as possible. Ensuring that the

minimum specifications are achieved.

3) The submission should include a signed version of the AcademicIntegrity statement, a

README.txt and a UML diagram describing your program and any classes that you

have built that are part of/used by the application (previously in Assignment 1 you did

this for what you “intended” to build – so it was more in a design stage. These diagrams

should outline what you “actually” built.

Academic Integrity Statement (see attached at the end of this file). Sign and submit this

page with your final assignment 2.

README.txt:

a. Include all the names and student ID’s of the people in your group

b. Include a brief description of the project, what it does (not what you had hoped it

would do), and how to use it

c. Include any references to resources/inspiration used for this project

UMLDiagrams.pdf:

d. Include one or more UML class diagrams outlining the classes you have built for this

project, what including all HAS-A and IS-A relationships used

e. Bonus marks if you use inheritance or interfaces within any of the classes you build

(not including extending JFrame or using any Listener interfaces).

RUBRIC (Marking Scheme) - 50 points total = worth 10% toward final grade

? Meets Goal 1 (15 points)

? Meets Goal 2 (15 points)

? Meets Goal 3 (10 points)

? Aesthetics/Creativity (10 points)

PROJECT SUBMISSION (Deadline: 11:59pm, Sunday 11th April, 2021)

Please submit your work as a complete project file (export your project to a zip file from within

the Eclipse IDE, and select all files in the subfolder except *.class files for export). Export your

work into a *.zip file). To do this, select the project, right click and select export. Export as a

complete zipped project.

** Alternatively, if you have used GitHub, you may download a cloned (zipped) version of your

Git Repository (with all the files above), and submit that to web submit.

Submit 1-4 files to “a2” directory in websubmit (this only needs to be done through one of the

group members):

1. Signed Academic Integrity statement (last page of this document). This needs to be

included with your submission, with names and signatures of all of your team members.

2. the exported/cloned project (*.zip file) - please make sure the file opens and runs on the

EECS VM or lab machine before submitting

3. a text file (e.g. README.txt) - inside list the student ID numbers and names of all

members of the group, and include a brief description of the project (what it is, basics of

how to run/use it)

4. the UML full class diagram (UMLDiagrams.pdf) outlining the classes you have built for

your project - no need to integrate classes that already exist, except as fields of your

classes where appropriate).

Recall: if you submit multiple times, the files previously submitted will be overwritten with the

newer versions of the files. You can submit an unlimited number of times up until the deadline

for this project. You can also check what you have submitted through the web-submit portal:

Web-submit can be found at the link: https://webapp.eecs.yorku.ca/submit/

EECS 1720M – W2021

ASSIGNMENT 2

ACADEMIC INTEGRITY STATEMENT

We (the undersigned) hereby confirm that this assignment represents the sole work of the

individuals listed below.

We (the undersigned) confirm that this work has been completed in adherence to the Senate

Policy on Academic Honesty, without unapproved collaboration or the use of unpermitted aids

or resources.

We recognize the importance of academic integrity and understand that there is no tolerance

towards academic dishonesty within the Lassonde School of Engineering. We are aware that

any suspected breaches will be reported to the Academic Honesty unit within the Student

Welcome and Support Centre, and may result in additional penalties in accordance with the

Academic Honesty Policy.

Name: First, Last Login Name:

(indicate the login

used for submission)

Student No.: Signature/Date:


版权所有:编程辅导网 2021 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp