Reshaping freehand drawn lines and shapes in an electronic document
First Claim
1. A system for reshaping freehand drawn lines and shapes in a computing system having a display and a pointing device for drawing lines and shapes on the display, the system comprising:
- a polyline recognition module analyzing freehand drawn lines and shapes and generating a polyline made up of sequential straight line segments when the polyline does not form a closed line and generating a polyline shape when the polyline forms a closed line;
a basic shape recognition module responsive to the polyline recognition module and selecting a basic shape from reference ideal shapes as the basic shape of the polyline shape; and
a shape adjustment module responsive to the basic shape recognition module and adjusting the basic shape to provide a specific shape as an improved polyline shape;
said polyline recognition module comprises;
a straight line compare module comparing segments of a source line to a straight lien and defining a segment as a line segment if the difference between the source line and the straight line is below a predetermined value;
an evaluate module analyzing segment pairs as an angle segment and defining a segment pair as an angle segment if both segments of the segment pair are within a predetermined deviation from a straight line; and
a combine module combining line segments from the straight line compare module and angle segments from the evaluate module to generate a polyline or polyline shape.
10 Assignments
0 Petitions
Accused Products
Abstract
The invention improves the appearance of freehand drawn lines and shapes in an electronic document by first recognizing freehand drawn lines and shapes and generating a line made up of sequential straight line segments for the freehand drawn line when the line does not form a closed line and generating a multiple straight-line-segment shape when the line forms a closed line. If a multiple segment shape is being reshaped, a basic shape is selected from reference ideal shapes as the basic shape of the multiple segment shape. The basic shape is adjusted to provide a specific shape as an improved shape for the freehand drawn shape. The recognition of the freehand drawn lines and shapes is accomplished by comparing source segments of a source freehand drawn line to a straight line and substituting a straight line segment for a source segment if the deviation between the source segment and the straight line is below a predetermined value. Sequential source segments of a source freehand drawn line are evaluated to determine if they are an angle segment. A segment pair of sequential source line segments are defined as an angle segment having two straight line segments intersecting at a common end point if both source segments of the segment pair are within a predetermined deviation value from a straight line. The straight line segments and angle segments are combined to form a multiple segment line if the line does not close on itself and a multiple segment shape if the line does close on itself.
69 Citations
17 Claims
-
1. A system for reshaping freehand drawn lines and shapes in a computing system having a display and a pointing device for drawing lines and shapes on the display, the system comprising:
-
a polyline recognition module analyzing freehand drawn lines and shapes and generating a polyline made up of sequential straight line segments when the polyline does not form a closed line and generating a polyline shape when the polyline forms a closed line;
a basic shape recognition module responsive to the polyline recognition module and selecting a basic shape from reference ideal shapes as the basic shape of the polyline shape; and
a shape adjustment module responsive to the basic shape recognition module and adjusting the basic shape to provide a specific shape as an improved polyline shape;
said polyline recognition module comprises;
a straight line compare module comparing segments of a source line to a straight lien and defining a segment as a line segment if the difference between the source line and the straight line is below a predetermined value;
an evaluate module analyzing segment pairs as an angle segment and defining a segment pair as an angle segment if both segments of the segment pair are within a predetermined deviation from a straight line; and
a combine module combining line segments from the straight line compare module and angle segments from the evaluate module to generate a polyline or polyline shape. - View Dependent Claims (2, 3, 4, 5)
a closed line detect module determining whether the combined line segments from the combine module form a polyline or a polyline shape.
-
-
3. The system of claim 1 wherein the basic shape recognition module comprises:
-
a transform module transforming the reference ideal shapes into transformed shapes relative to the polyline shape;
a comparison module matching each transformed shape to the polyline shape and storing a similarity value for each transformed shape indicating similarity between the polyline shape and the transformed shape;
a selection module selecting the transformed shape with the highest similarity value as the basic shape of the poly line shape.
-
-
4. The system of claim 3 wherein said shape adjustment module comprises:
a test module identifying a specific shape from the basic shape.
-
5. The system of claim 3 wherein said shape adjustment module comprises:
-
angle adjustment module changing angles of segments in the basic shape to standard angles for a specific shape;
line segment adjustment module adjusting the parrallelism of line segments and line segments relative to a horizontal and vertical grid line.
-
-
6. Apparatus for improving the appearance or freehand drawn lines and shapes displayed in an electronic document, said apparatus comprising:
-
means for recognizing freehand drawn lines and shapes and generating a line made up of sequential straight line segments for the freehand drawn line when the line does not form a closed line and generating a multiple straight-line-segment shape when the line forms a closed line;
means responsive to the multiple straight-line-segment shape for selecting a basic shape from reference ideal shapes as the basic shape of the freehand drawn shapes; and
means responsive to the basic shape for adjusting the basic shape to provide a specific shape as an improved shape for the freehand drawn shape;
said means for recognizing comprises;
means for comparing segments of a source freehand drawn line to a straight line and defining a segment as a straight line segment if the deviation between the segment of source line and the straight line is below a predetermined value;
means for evaluating sequential source segments of a source freehand drawn line as an angle segment and defining a segment pair of sequential straight line segments as an angle segment if both source segments of the segment pair are within a predetermined deviation value from a straight line; and
means for serially combining straight line segments and angle segments to form a multiple segment line or a multiple segment shape. - View Dependent Claims (7, 8, 9)
means for transforming the reference ideal shapes into transformed shapes similar to the multiple segment shape;
means for matching each transformed shape to the multiple segment shape and storing a similarity value for each transformed shape indicating similarity between the multiple segment shape and the transformed shape;
a selection module selecting the transformed shape with the highest similarity value as the basic shape of the freehand drawn shape.
-
-
8. The system of claim 7 wherein said means for adjusting comprises:
means for identifying a specific shape from the basic shape.
-
9. The system of claim 7 wherein said means for adjusting comprises:
-
means for changing angles of segments in the basic shape to standard angles for a specific shape;
means for set line segments parallel to each other or to one of a horizontal and vertical grid line.
-
-
10. A computer program product readable by a computing system and encoding a computer program of instructions for executing a computer process for improving the appearance of freehand drawn lines and shapes, said computer process comprising:
-
recognizing freehand drawn lines and shapes and generating a line made up of sequential straight line segments for the freehand drawn line when the line does not form a closed line and generating a multiple straight-line-segment shape when the line forms a closed line;
selecting a basic shape from reference ideal shapes as the basic shape of the multiple segment shape;
adjusting the basic shape to provide a specific shape as an improved shape for the freehand drawn shape;
said act of recognizing comprises;
comparing source segments of a source freehand drawn line to a straight line and substituting a straight line segment for a source segment if the deviation between the source segment and the straight line is below a predetermined value;
evaluating sequential source segments of a source freehand drawn line as an angle segment and defining a segment pair of sequential source line segments as an angle segment having two straight line segments intersecting at a common end point if both source segments of the segment pair are within a predetermined deviation value from a straight line; and
combining straight line segments and angle segments to form a multiple segment line or a multiple segment shape. - View Dependent Claims (11, 12, 13)
transforming the reference ideal shapes into transformed shapes similar to the multiple segment shape;
matching each transformed shape to the multiple segment shape and storing a similarity value for each transformed shape indicating similarity between the multiple segment shape and the transformed shape; and
selecting the transformed shape with the highest similarity value as the basic shape of the freehand drawn shape.
-
-
12. The program product of claim 11 wherein said act of adjusting comprises:
identifying a specific shape from the basic shape.
-
13. The program product of claim 11 wherein said act of adjusting comprises:
-
changing angles between line segments in the basic shape to standard angles for a specific shape;
setting line segments parallel to each other or to one of a horizontal and vertical grid line.
-
-
14. A method for improving the appearance of freehand drawn lines and shapes, said method comprising:
-
recognizing freehand drawn lines and shapes and generating a line made up of sequential straight line segments for the freehand drawn line when the line does not form a closed line and generating a multiple straight-line-segment shape when the line forms a closed line;
selecting a basic shape from reference ideal shapes as the basic shape of the multiple segment shape;
adjusting the basic shape to provide a specific shape as an improved shape for the freehand drawn shape;
said act of recognizing comprises;
comparing source segments of a source freehand drawn line to a straight line and substituting a straight line segment for a source segment if the deviation between the source segment and the straight line is below a predetermined value;
evaluating sequential source segments of a source freehand drawn line as an angle segment and defining a segment pair of sequential source line segments as an angle segment having two straight line segments intersecting at a common end point if both source segments of the segment pair are within a predetermined deviation value from a straight line; and
combining straight line segments and angle segments to form a multiple segment line or a multiple segment shape. - View Dependent Claims (15, 16, 17)
transforming the reference ideal shapes into transformed shapes similar to the multiple segment shape;
matching each transformed shape to the multiple segment shape and storing a similarity value for each transformed shape indicating similarity between the multipe segment shape and the transformed shape; and
selecting the transformed shape with the highest similarity values as the basic shape of the freehand drawn shape.
-
-
16. The method of claim 15 wherein said act of adjusting comprises:
identifying a specific shape from the basic shape.
-
17. The method of claim 15 wherein said act of adjusting comprises:
-
changing angles between line segments in the basic shape to standard angles for a specific shape;
setting line segments parallel to each other or to one of a horizontal and vertical grid line.
-
Specification