IP Library Granted Patent US 9,207,858
Granted Patent B2
US 9,207,858 · App. 12/904,599 · Granted Dec 8, 2015

Method and apparatus for drawing and erasing calligraphic ink objects on a display surface

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,207,858
App. No.
12/904,599
Granted
Dec 8, 2015
Kind
B2
Abstract

A method of generating a calligraphic ink object, comprising sampling contact coordinates generated by a coordinate input device during writing thereon using a pointer to generate an ink trajectory generally representing the writing; generating an ink envelope, the ink envelope comprising line segments joining pointer instances at the sampled contact coordinates; generating a smoothed ink envelope at least by fitting curves to points on the ink envelope; and drawing the smoothed ink envelope on a display thereby to generate the calligraphic ink object.

Claims (62)

1. A method of generating a calligraphic ink object, comprising:

sampling contact coordinates generated by a coordinate input device during writing thereon using a pointer having a tip to generate an ink trajectory generally representing the writing;

surrounding each sampled contact coordinate along the generated ink trajectory with a pointer tip instance, and for each consecutive pair of sampled contact coordinates, generating inner and outer line segments on opposite sides of a line segment joining the sampled contact coordinates of the pair, that extend between and are tangential to the peripheries of the pointer tip instances surrounding the sampled contact coordinates of the pair;

generating an ink envelope between three successive contact coordinates, the ink envelope comprising an outer envelope formed by the outer line segments and an inner envelope formed by the inner line segments, wherein only the outer envelope includes envelope points on the pointer tip instance of a middle one of the three successive contact coordinates when the inner line segments intersect, and wherein the inner envelope includes an intersection point of the inner line segments as an envelope point in lieu of envelope point on the pointer tip instance of the middle one of the three successive contact coordinates;

generating a smoothed ink envelope at least by fitting curves to points on said ink envelope; and

drawing the smoothed ink envelope on a display surface thereby to generate the calligraphic ink object.

2. The method of claim 1 wherein said sampling contact coordinates further comprises processing the sampled contact coordinates to reduce the number of sampled contact coordinates used to generate the ink trajectory.

3. The method of claim 2 wherein said processing comprises discarding selected sampled contact coordinates.

4. The method of claim 3 wherein the discarded selected sampled contact coordinates are co-linear with other sampled contact coordinates.

5. The method of claim 4 wherein said processing comprises determining line segments that join consecutive pairs of sampled contact coordinates having the same slope and discarding sampled contact coordinates at intermediate locations along the length of the line segments.

6. The method of claim 1 wherein the ink envelope generating is performed upon completion of writing.

7. The method of claim 6 wherein completion of writing is signaled by a pointer up event.

8. The method of claim 6 wherein said ink envelope generally completely surrounds said ink trajectory.

9. The method of claim 6 wherein said smoothed ink envelope comprises curved and straight lined segments.

10. The method of claim 1 wherein the points on said ink envelope to which the curves are fitted are positioned along the peripheries of each pointer tip instance.

11. The method of claim 1 wherein each pointer tip instance has a geometrical shape.

12. The method of claim 11 wherein the geometrical shape is one of circular, elliptical, triangular, rectangular, ovate and polygonal.

13. The method of claim 1 wherein generating the smoothed ink envelope comprises fitting Bezier curves to points on said ink envelope.

14. The method of claim 1 wherein said ink trajectory comprises ink trajectory segments, wherein an ink envelope segment is generated for each ink trajectory segment and wherein the ink envelope segments are combined to form said ink envelope.

15. The method of claim 14 wherein said ink envelope generally completely surround the ink trajectory.

16. The method of claim 14 wherein each ink trajectory segment is represented by a subset of sampled contact coordinates.

17. The method of claim 16 wherein each ink trajectory segment is represented by sampled contact coordinates generated by said coordinate input device over a threshold period of time.

18. The method of claim 14 wherein said ink envelope generating comprises for each ink trajectory segment surrounding each sampled contact coordinate along the ink trajectory segment with a pointer tip instance and for each consecutive pair of sampled contact coordinates, generating line segments on opposite sides of a line segment joining the sampled contact coordinates of the pair, that extend between and are tangential to the peripheries of the pointer tip instances surrounding the sampled contact coordinates of the pair.

19. The method of claim 18 wherein the points on said ink envelope to which the curves are fitted are positioned along the peripheries of each pointer tip instance.

20. The method of claim 18 wherein each pointer tip instance has a geometrical shape.

21. The method of claim 20 wherein the geometrical shape is one of circular, elliptical, triangular, rectangular, ovate and polygonal.

22. The method of claim 18 wherein generating a smoothed ink envelope comprises fitting Bezier curves to points on said ink envelope.

23. The method of claim 1 wherein said drawing comprises drawing the smoothed ink envelope as a vectorized image.

24. The method of claim 23 further comprising coloring and/or shading the smoothed ink envelope prior to said drawing.

25. A method of generating a calligraphic ink object comprising:

generating an ink trajectory representing writing input on a display surface of a coordinate input device using an object in the form of a pen tool having a tip at one end thereof, the ink trajectory comprising a subset of contact coordinates generated by the coordinate input device;

generating an ink envelope surrounding the ink trajectory, the ink envelope being represented by curved and straight inner and outer line segments that join tangent points on pen tool tip instances at the contact coordinates, wherein the ink envelope between three successive contact coordinates comprises an outer envelope formed by the outer line segments and an inner envelope formed by the inner line segments, and only the outer envelope includes envelope points on the pen tool tip instance of a middle one of the three successive contact coordinates when the inner line segments intersect, and wherein the inner envelope includes an intersection point of the inner line segments as an envelope point in lieu of envelope point on the pointer tip instance of the middle one of the three successive contact coordinates; and

drawing the ink envelope on the display surface thereby to generate the calligraphic ink object.

26. The method of claim 25 wherein the curved line segments are Bezier curves.

27. The method of claim 25 wherein said ink envelope comprises a plurality of joined ink envelope segments, each ink envelope segment being associated with a respective ink trajectory segment.

28. The method of claim 25 wherein the shape of the pen tool tip is one of circular, elliptical, triangular, rectangular, ovate and polygonal.

29. The method of claim 25 wherein said drawing comprises drawing the smoothed ink envelope as a vectorized image.

30. The method of claim 29 further comprising coloring and/or shading the smoothed ink envelope prior to said drawing.

31. An apparatus comprising:

at least one processor; and

memory storing a calligraphic ink object generating routine, the calligraphic ink object generating routine, when executed by the at least one processor, causing the apparatus to:

sample contact coordinates generated by a coordinate input device during writing thereon using a pointer having a tip to generate an ink trajectory generally representing the writing;

surround each sampled contact coordinate along the generated ink trajectory with a pointer tip instance, and for each consecutive pair of sampled contact coordinates, generate inner and outer line segments on opposite sides of a line segment joining the sampled contact coordinates of the pair, that extend between and are tangential to the peripheries of the pointer tip instances surrounding the sampled contact coordinates of the pair;

generate an ink envelope between three successive contact coordinates, the ink envelope comprising an outer envelope formed by the outer line segments and an inner envelope formed by the inner line segments, wherein only the outer envelope includes envelope points on the pointer tip instance of a middle one of the three successive contact coordinates when the inner line segments intersect, and wherein the inner envelope includes an intersection point of the inner line segments as an envelope point in lieu of envelope point on the pointer tip instance of the middle one of the three successive contact coordinates;

generate a smoothed ink envelope at least by fitting curves to points on said ink envelope; and

draw the smoothed ink envelope on a display thereby to generate the calligraphic ink object.

32. An apparatus comprising:

at least one processor; and

memory storing a calligraphic ink object generating routine, the calligraphic ink object generating routine, when executed by the at least one processor, causing the apparatus to:

generate an ink trajectory representing writing input on a display surface of a coordinate input device using an object in the form of a pen tool having a tip at one end thereof, the ink trajectory comprising a subset of contact coordinates generated by the coordinate input device;

generate an ink envelope surrounding the ink trajectory, the ink envelope being represented by curved and straight inner and outer line segments that join tangent points on pen tool tip instances at the contact coordinates, wherein the ink envelope between three successive contact coordinates comprises an outer envelope formed by the outer line segments and an inner envelope formed by the inner line segments, and only the outer envelope includes envelope points on the pen tool tip instance of a middle one of the three successive contact coordinates when the inner line segments intersect, and wherein the inner envelope includes an intersection point of the inner line segments as an envelope point in lieu of envelope point on the pointer tip instance of the middle one of the three successive contact coordinates; and

draw the ink envelope on a display thereby to generate the calligraphic ink object.

33. A non-transitory computer readable medium embodying computer program code, which when executed by at least one processor, causes an apparatus to:

sample contact coordinates generated by a coordinate input device during writing thereon using a pointer having a tip to generate an ink trajectory generally representing the writing;

surround each sampled contact coordinate along the generated ink trajectory with a pointer tip instance, and for each consecutive pair of sampled contact coordinates, generate inner and outer line segments on opposite sides of a line segment joining the sampled contact coordinates of the pair, that extend between and are tangential to the peripheries of the pointer tip instances surrounding the sampled contact coordinates of the

generate an ink envelope between three successive contact coordinates, the ink envelope comprising an outer envelope formed by the outer line segments and an inner envelope formed by the inner line segments, wherein only the outer envelope includes envelope points on the pointer tip instance of a middle one of the three successive contact coordinates when the inner line segments intersect, and wherein the inner envelope includes an intersection point of the inner line segments as an envelope point in lieu of envelope point on the pointer tip instance of the middle one of the three successive contact coordinates;

generate a smoothed ink envelope at least by fitting curves to points on said ink envelope; and

draw the smoothed ink envelope on a display thereby to generate the calligraphic ink object.

34. A non-transitory computer readable medium embodying computer program code, which when executed by at least one processor, causes an apparatus to:

generate an ink trajectory representing writing input on a display surface of a coordinate input device using an object in the form of a pen tool having a tip at one end thereof, the ink trajectory comprising a subset of contact coordinates generated by the coordinate input device;

generate an ink envelope surrounding the ink trajectory, the ink envelope being represented by curved and straight inner and outer line segments that join tangent points on pen tool tip instances at the contact coordinates, wherein the ink envelope between three successive contact coordinates comprises an outer envelope formed by the outer line segments and an inner envelope formed b the inner line segments, and only the outer envelope includes envelope points on the pen tool tip instance of a middle one of the three successive contact coordinates when the inner line segments intersect, and wherein the inner envelope includes an intersection point of the inner line segments as an envelope point in lieu of envelope point on the pointer tip instance of the middle one of the three successive contact coordinates; and

draw the ink envelope on a display thereby to generate the calligraphic ink object.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Dec 2, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SMART TECHNOLOGIES ULC; SMART TECHNOLOGIES INC.
Reel/Frame 040819/0306 →
RELEASE OF SECURITY INTEREST Recorded Dec 2, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SMART TECHNOLOGIES ULC; SMART TECHNOLOGIES INC.
Reel/Frame 040798/0077 →
RELEASE OF ABL SECURITY INTEREST Recorded Nov 29, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SMART TECHNOLOGIES ULC; SMART TECHNOLOGIES INC.
Reel/Frame 040711/0956 →
RELEASE OF TERM LOAN SECURITY INTEREST Recorded Nov 29, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SMART TECHNOLOGIES ULC; SMART TECHNOLOGIES INC.
Reel/Frame 040713/0123 →
SECURITY AGREEMENT Recorded Aug 1, 2013
From: SMART TECHNOLOGIES ULC; SMART TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING INC.
Reel/Frame 030935/0848 →
SECURITY AGREEMENT Recorded Aug 1, 2013
From: SMART TECHNOLOGIES ULC; SMART TECHNOLOGIES INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 030935/0879 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 2, 2011
From: ANTONYUK, VIKTOR; GOETHALS, JOSEPH MICHAEL; BANERJEE, SHYMMON
To: SMART TECHNOLOGIES ULC
Reel/Frame 026210/0020 →