CSC205 Assignment 3: Interactive Polygon Fill solution

$24.99

Original Work ?
Category: You will Instantly receive a download link for .ZIP solution file upon Payment

Description

5/5 - (5 votes)

2D Computer Graphics and Image Processing
Abstract
This assignment is a simple interactive polygon demo with OpenCV.
Instructions are provided first for a reason.
Please read the instructions carefully.
1
2D Computer Graphics and Image Processing Assignment 3: Interactive Polygon Fill
1 Instructions
1.1 Submission package
Within the homework assignment package, there should be a submission-package.zip,
which contains the directory structure and empty files for you to get started. Please edit
the contents within the file for code, and then create a zip archive with the file name
submission-package.zip, and submit it. Do not use other archive formats such
as rar or tar.gz.
All assignments should be submitted electronically. Hand written reports are not accepted. You can, however, include scanned pages in your report. For example, if you are not
comfortable with writing equations, you can include a scanned copy.
1.2 Code
All assignments should be in Python 3. Codes that fail to run on Python 3 will receive 20%
deduction on the final score. In other words, do not use Python 2.7.
For this assignment, you should not need to create additional files. Fill in the skeleton
files in the submission package. Do not change the name of these scripts. We will run, for
example,
python solution.py
to test if your code runs as the assignment specifications.
It is strongly encouraged to follow PEP8. It makes your code much more readable, and
less room for mistakes. There are many open source tools available to automatically do this
for you.
1.3 Delayed submission
In case you think you will not meet the deadline due to network speed or any other reasons,
you can send an email with the SHA-256 hash of your .zip archive first, and then submit
your assignment through email later on. This will not be considered as a delay.
Delayed submissions are subject to 20% degradation per day. For example, an assignment
submitted 1 minute after the deadline will receive 80% of the entire mark, even if it was
perfect. Likewise, an assignment that was submitted one day and 1 minute after the deadline
will receive 60%.
1.4 Use of open source code
Any library under any type of open source license is allowed for use, given full attribution.
This attribution should include the name of the original author, the source from which the
code was obtained, and indicate terms of the license. Note that using copyrighted material
without an appropriate license is not permitted. Short snippets of code on public websites
such as StackOverflow may be used without an explicit license, but proper attribution should
be given even in such case. This means that if you embed a snippet into your own code,
you should properly cite it through the comments, and also embed the full citation in a
LICENSES file. However, if you include a full, unmodified source, which already contains the
license within the source file, this is unnecessary. Please note that without proper attribution,
it will be considered plagiarism.
2
2D Computer Graphics and Image Processing Assignment 3: Interactive Polygon Fill
In addition, as the assignments are intended for you to learn, (1) if the external code
implements the core objective of the task, no points will be given; (2) code from other
CSC205 students will count as plagiarism.
2 Implement the polygon fill software (5 marks)
Please first see the accompanied example.mov that demonstrates how the final python
script should behave. Implement to achieve the same functionality as in the demo video.
Specifically, a single click should add a new point to the polygon, and whenever the mouse
moves, the polygon shape should change following the mouse. In other words, the new pointto-be-added should already move following the mouse movement. When double clicked, the
program should move onto the next polygon.
Note that the starter code has many parts already implemented for you, and you only
need to implement the TODOs.
3