IP Library › Granted Patent US 10,409,484
Granted Patent B2
US 10,409,484 · App. 16/259,614 · Granted Sep 10, 2019

Method and system for ink data generation, ink data rendering, ink data manipulation and ink data communication

Inventors: Branimir Angelov (Sofia, BG); Plamen Petkov (Sofia, BG)
Assignee: Wacom Co., Ltd.
G06F3/04883G06F3/038G06F3/0346G06F3/0354G06F3/03545G06F3/044G06F3/0412G06F3/0414G06K9/00416G06K9/222G06K9/52G06Q10/101G06T11/203G06F2203/0383G06F2203/04105G06F2203/04106
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 10,409,484
App. No.
16/259,614
Granted
Sep 10, 2019
Kind
B2
Abstract

Methods and systems are provided for generating, rendering, manipulating (e.g., slicing), and communicating stroke objects that form ink data. In a method of generating a stroke object, pen event data indicative of pen down, pen movement, and pen up events are sequentially received to generate point objects that collectively form a stroke object. The point objects serve as control points for interpolating curve segments. Further, a start parameter indicative of a start point within a starting curve segment of the curve segments at which display of the stroke object starts, and an end parameter indicative of an end point within an ending curve segment of at which display of the stroke object ends, are generated for the stroke object. When rendering the stroke object, a system limits display of the stroke object to a range bound by the start and end parameters, as opposed to displaying the entire stroke object.

Claims (26)

1. A method of manipulating ink data, executed by a computer used with a position detection sensor which detects a position indicated by a pointer, the method comprising:

storing ink data in a memory device, the ink data including one or more stroke data which respectively include control points for generating a pre-existing path formed of curve segments according to a defined curve interpolation algorithm, and which respectively include a start parameter indicative of a start point within a starting curve segment of the curve segments at which display of the pre-existing path starts and an end parameter indicative of an end point within an ending curve segment of the curve segments at which display of the pre-existing path ends;

after storing the ink data in the memory device, determining whether a manipulation path formed of a group of coordinates data obtained by the position detection sensor intersects the one or more pre-existing paths of the one or more stroke data, respectively; and

with respect to a first stroke data, which is the stroke data determined to include the pre-existing path that is intersected by the manipulation path:

deriving anew at least one of the start parameter and the end parameter based on the coordinates data of an intersection between the pre-existing path of the first stroke data and the manipulation path, and

without deriving the control points anew, generating a second stroke data, which includes at least one of the start parameter and the end parameter that are generated anew and a portion of the control points.

2. The method of claim 1 , wherein

the coordinates data of the intersection between the pre-existing path of the first stroke data and the manipulation path is derived based on a width data defined for the manipulation path.

3. The method of claim 1 , comprising:

determining whether the manipulation path entails a slicing operation to slice the first stroke data, and

generating the second stroke data in response to the manipulation path being determined to entail the slicing operation.

4. The method of claim 3 , comprising:

in response to the manipulation path being determined to be an erasing operation to erase the first stroke data, determining the manipulation path entails the slicing operation to slice the first stroke data.

5. The method of claim 1 , comprising:

display-rendering the second stroke data.

6. The method of claim 1 , comprising:

determining whether the ink data is shared by a remote computer; and

in response to the ink data being determined to be shared by the remote computer, transmitting to the remote computer a message including information related to the manipulation path entailing a slicing operation applied to the first stroke data.

7. The method of claim 6 , wherein

the information related to the manipulation path entailing the slicing operation includes one or more of: a slice object indicative of the manipulation path, the group of coordinates data forming the manipulation path, or the second stroke data.

8. A computer configured to be used with a position detection sensor which detects a position indicated by a pointer, the computer being loaded with computer-executable instructions to execute steps comprising:

storing ink data in a memory device, the ink data including one or more stroke data which respectively include control points for generating a pre-existing path formed of curve segments according to a defined curve interpolation algorithm, and which respectively include a start parameter indicative of a start point within a starting curve segment of the curve segments at which display of the pre-existing path starts and an end parameter indicative of an end point within an ending curve segment of the curve segments at which display of the pre-existing path ends;

after storing the ink data in the memory device, determining whether a manipulation path formed of a group of coordinates data obtained by the position detection sensor intersects the one or more pre-existing paths of the one or more stroke data, respectively; and

with respect to a first stroke data, which is the stroke data determined to include the pre-existing path that is intersected by the manipulation path:

deriving anew at least one of the start parameter and the end parameter based on the coordinates data of an intersection between the pre-existing path of the first stroke data and the manipulation path, and

without deriving the control points anew, generating a second stroke data, which includes at least one of the start parameter and the end parameter that are generated anew and a portion of the control points.

Continuity (9)
Continuation 15870157 · Jan 12, 2018
Continuation 15213648 · Jul 19, 2016
Continuation 14838182 · Aug 27, 2015
Continuation PCTJP2014005830 · Nov 19, 2014
Provisional Application 62042747 · Aug 27, 2014
Provisional Application 61973161 · Mar 31, 2014
Provisional Application 61908647 · Nov 25, 2013
Provisional Application 61906334 · Nov 19, 2013
Related Publication 20190155498A1 · May 23, 2019