Browse Source

Add subject for the raid 3 about the Chaikin's algorithm

content-update
Augusto 3 years ago
parent
commit
ddcec6771e
  1. 25
      subjects/chaikin/README.md
  2. 29
      subjects/chaikin/audit/README.md

25
subjects/chaikin/README.md

@ -0,0 +1,25 @@
## Chaikin
### Instructions
Implement the [Chaikin's](http://graphics.cs.ucdavis.edu/education/CAGDNotes/Chaikins-Algorithm/Chaikins-Algorithm.html) algorithm step by step in an animation.
The objective is to create a canvas where the user will draw 1 or more and then the screen will play an animation of each step to get to the final result of a curve drawn using the `Chaikin's` algorithm. You can see [here](https://youtu.be/PbB2eKnA2QI) a demo of how the application should work.
- Functionality:
- The canvas should receive input from the mouse: the user of the program should be able to use the left button to select the control point for the `Chaikin's` algorithm
- After pressing `Return` should start the animation of the steps until reaching the 7th step of the `Chaikin's` algorithm.
- Pressing `Escape` should quit the window.
### Note
You are free to use any library for creating and handling window creation, rendering, keyboard and mouse events.
### Bonus
- Add the ability to clear the screen and add new control points.
- Make possible to drag the control points in real time.

29
subjects/chaikin/audit/README.md

@ -0,0 +1,29 @@
#### Functional
##### Run the program using `cargo run`
###### Does it compile and run without any warnings?
##### Left click in three different positions in the canvas
###### Does the program draw a small circle surrounding the area where you clicked?
##### Press `Return`
###### Does the animation of the Chaikin's algorithm starts?
###### Does the animations the animation completes 7 steps before starting again?
##### Press `Escape`
###### Does the program exit without errors?
##### Run the program again and this time press `Return` without selecting any points
###### Is the program still running?
##### Bonus
###### +Are you able to clear the screen and add new control points without killing and relaunching the program?
###### +Are you able to drag the control points in real time and get a new curve?
Loading…
Cancel
Save