Polygon Offsetting by Computing Winding Numbers