程序代写代做代考 algorithm Fall Quarter 2016

Fall Quarter 2016
ECS175 Project 4 Information Sheet
This is a general overview of project 4, please refer to project guideline published on Canvas and the project prompt for additional requirements. The command syntax here is for demonstration purposes only, you don¡¯t necessarily have to follow them.
Requirements
In this project, you are allow to utilize both your own line drawing algorithm or glVertex.. to draw your lines. You cannot use OpenGL functions that draw Bezier or B-spline curves.
Along with the requirements outlined in project guideline, here¡¯s a rough list of things we will check during grading. Make sure the following are working and you should do well. (Point value associated with specific part is in [])
1. Bezier Curve [40]: Your program should allow user to draw multiple Bezier curve by specifying multiple control polygons. For each control polygons, user should be able to add, delete and modify the control points. You must implement the deCasteljau algorithm as specified in the prompt (not the n choose i one). User should be allow to specify the ¡°resolution¡± (number of segment) of your curve. The control points should be in world coordinate and your program should do NDC mapping to pixel coordinate as previous project. Your program should have the ability to read in curves from files and save curves in the scene the file.
2. B-Spline Curve [40]: Similar to Bezier curve, your program should allow user to draw multiple B-Spline curve in similar fashion. Your program must use the deBoor algorithm to draw the curve. User should be allow to specify the ¡°resolution¡± (number of segment) of your curve. The control points should be in world coordinate and your program should do NDC mapping to pixel coordinate as previous project. Your program should have the ability to read in curves from files and save curves in the scene the file. Additionally, user should be able to specify the k value of each B-Spline curve.
3. UI [15]: If your UI is functional without any issue (i.e. crashes when running some command, inconsistent with README instructions), you should receive full credit on this part. Refer to Project Guideline for some helpful resources for UI creation.
4. Manual [5]
Extra Credit
The following are published extra credit for this project.
1. Connection of multiple Bezier curve (C1 and C2 continuity) [3]
2. Animation [5]
3. If your UI is stunning! [up to 5]

If you¡¯ve done anything else extra, please document it in README file so we can assess it and try to give you more points!
Helpful Notes
Check your output for consistency using simple examples! If there are only 2 control points in a Bezier curve, then the curve should be a straight line
It might be helpful if you can draw the control polygon in different color than the curve.