I'm trying to write a small drawing app where I want to be able to draw shapes by hand and the app will identify the kind of shape and redraw it using vector graphics.
Supposing that I have a list of 2D points that represent the following image:
What algorithms should I use in order to:
- Determine that the shape is a square and not another shape or curve/arc;
- Determine the edges of the square