CS480

Correct pivot rotation by pressing arrow keys (as shown in working example program)

  • Use keys other than arrow keys to change angle
  • Either of the links does not rotate correctly

30  points

-5

-15

Correctly redraw arm when window is resized 

  • If the arm is scaled when window is resized but still works correctly

10 points

-5

Change length of blocks 

  • If changing length of blocks changes link angles unpredictably but mouse clicks still work with new lengths
  • Link length goes negative

10 points

 

-5

-5

Solve for angles that automatically move tip of green block to mouse location

  • If works correctly in only some of the quadrants (linked to atan2 use error)
  • If the program doesn’t work when link lengths are changed.
  • If the click point too far from center hence unreachable case is not handled
  • If the click point too close to center  hence unreachable case is not handled

30 points

 

-10

-10

-5

-5

Programming style  (in line with the programming guidelines)

  • Comments and boilerplate
  • Variable names and indentation
  • Efficiency. Are we recomputing  some numbers that have not changed?
  • Modularity and program structure. Do we have separate methods for separate tasks?

20 points

 

-4

-4

-4

-4

 

Support arms made of three blocks  (extra credit) 

  • Only works for fixed link lengths
  • Each boundary case (too close, too far ) not handled

10 points

-5

-2 each

 


 

CS680

Correct pivot rotation by pressing arrow keys (as shown in example program)

  • Use keys other than arrow keys to change angle
  • Either of the links does not rotate correctly

25 points

-5

-15

Correctly redraw arm when window is resized 

  • If the arm is scaled when window is resized but still works correctly

5 points

-2

Change length of blocks

  • If changing length of blocks changes link angles unpredictably but mouse clicks still work with new lengths
  • Link length goes negative

5 points

 

-2

-2

Solve for angles that automatically move tip of green block to mouse location

  • If works correctly in only some of the quadrants
  • If  program doesn’t work when link lengths are changed.
  • If the click point too far from center hence unreachable case is not handled
  • If the click point too close to center  hence unreachable case is not handled

25 points

 

-10

-10

-2

-3

Support arms made of three blocks 

  • Only works for fixed link lengths
  • Each boundary case (too close, too far ) not handled

20 points

-15

-2 each

Programming style (in line with the programming guidelines)

  • Comments and boilerplate
  • Variable names and indentation
  • Efficiency. Are we recomputing  some numbers that have not changed?
  • Modularity and program structure. Do we have separate methods for separate tasks?

20 points

 

-4

-4

-4

-4