KR101014735B1 - Apparatus for providing writing function - Google Patents
Apparatus for providing writing function Download PDFInfo
- Publication number
- KR101014735B1 KR101014735B1 KR1020100003841A KR20100003841A KR101014735B1 KR 101014735 B1 KR101014735 B1 KR 101014735B1 KR 1020100003841 A KR1020100003841 A KR 1020100003841A KR 20100003841 A KR20100003841 A KR 20100003841A KR 101014735 B1 KR101014735 B1 KR 101014735B1
- Authority
- KR
- South Korea
- Prior art keywords
- bezier curve
- distance
- unit
- point
- split point
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04817—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04808—Several contacts: gestures triggering a specific function, e.g. scrolling, zooming, right-click, when the user establishes several contacts with the surface simultaneously; e.g. using several fingers or a combination of fingers and pen
Abstract
Description
Embodiments of the present invention relate to writing techniques, and more particularly, to writing techniques using Bezier curves.
Recently, e-books released by device manufacturers are similar in texture to paper books, small, light, and without eye strain, and can carry a lot of books. If you combine writing function with e-book, it can be used for reading and memorizing books and lectures, and underlining. If you use it for schedule, diary, memo or sketch, you can carry books, diary and sketch space together. It can make a difference.
In general, writing functions in an embedded device have been implemented in a raster manner in which vertices corresponding to user input are stored and connected to vertices. However, when the storage space required for storing the vertices is increased, and the writing content is enlarged according to the user's input, the sharpness thereof is deteriorated.
In order to solve this problem, writing functions based on vector graphics with high data compression ratio and guaranteed writing quality intended by the user are being studied. However, if writing is implemented based on vector graphics, the process of creating and storing curves and rendering vector data has to go through a slower process than implementing based on raster graphics.
Embodiments of the present invention provide a writing function providing apparatus for calculating a Bezier curve by filtering a vertex according to a user input.
In addition, embodiments of the present invention to provide a writing function providing apparatus for straightening a portion of the Bezier curve according to the user's input.
According to an aspect of the invention, the selection unit for selecting three consecutive vertices included in the vertex information; A distance calculator configured to calculate a filtering distance between the straight line connecting the two ends and the middle vertex; A removal unit to remove the intermediate vertex from the vertex information when the filtering distance corresponding to the first vertex is equal to or less than a specified value; And a fitting unit configured to calculate a Bezier curve corresponding to the vertex information.
The selector may repeatedly select three vertices included in the vertex information, and select a combination of vertices different from a previously selected vertex.
The filtering distance may be a minimum distance between the straight line connecting both ends of the vertex and the intermediate vertex.
The apparatus for providing a writing function includes an input unit configured to receive a writing input from a user and generate vertex information; And a display unit for rendering the Bezier curve and displaying the visual information.
According to another aspect of the invention, the fitting unit for calculating a Bezier curve corresponding to the vertex information; A split point detector for detecting a split point corresponding to the Bezier curve; A distance calculator configured to calculate a split point distance between a straight line connecting both end points of the Bezier curve and the split point; And a straightening determination unit for straightening the Bezier curve when the ratio between the splitting point and the total splitting point at which the splitting point distance is equal to or less than a specified value is equal to or greater than a predetermined ratio.
The split point detector may detect a split point that equally divides the Bezier curve by a specified number.
The split point distance may be a minimum distance between the straight line connecting both ends of the Bezier curve and the split point.
The straightening determiner may straighten the Bezier curve by deleting a control point corresponding to the Bezier curve.
According to another aspect of the invention, the filtering unit for removing the vertex having a filtering distance is less than the specified value in the vertex information; A fitting unit calculating a Bezier curve corresponding to the vertex information; And a straightening unit for straightening the Bezier curve when the ratio between the number of splitting points corresponding to the Bezier curve and the splitting point whose split point distance is equal to or less than a specified value is greater than or equal to the specified ratio.
Embodiments of the present invention can calculate the Bezier curve using the filtered vertices, thereby reducing the computational complexity and storage space required to store the writing content required for the Bezier curve calculation.
Embodiments of the present invention can improve the response speed of rendering and displaying writing content at a user's input point by straightening a portion of the Bezier curve.
1 is a diagram illustrating a writing function providing apparatus according to an embodiment of the present invention.
2 is a diagram illustrating a filtering unit of a writing function providing apparatus according to an embodiment of the present invention.
3 is a view for explaining a filtering distance according to an embodiment of the present invention;
Figure 4 illustrates a straightening unit of the writing function providing apparatus according to an embodiment of the present invention.
5 is a diagram illustrating a split point distance calculated by an apparatus for providing a writing function according to an embodiment of the present invention.
6 is a view for explaining a fitting of the writing function providing apparatus according to an embodiment of the present invention.
FIG. 7 is a diagram illustrating a time required to calculate a Bezier curve using a vertex to which filtering by a filtering unit of a writing function providing apparatus according to an embodiment of the present invention is applied.
8 is a view illustrating a time required when rendering a straightened Bezier curve through the straightening unit of the writing function providing apparatus according to an embodiment of the present invention.
As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention.
The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.
Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.
In addition, in the description with reference to the accompanying drawings, the same components regardless of reference numerals will be given the same reference numerals and duplicate description thereof will be omitted. In the following description of the present invention, if it is determined that the detailed description of the related known technology may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.
1 is a diagram illustrating an apparatus for providing a writing function according to an embodiment of the present invention.
Referring to FIG. 1, an apparatus for providing a writing function according to an embodiment of the present invention includes an
The
The
The
The straightening
The
Although the above-described writing function providing apparatus has been described as including both the
2 is a diagram illustrating a filtering unit of an apparatus for providing a writing function according to an embodiment of the present invention, and FIG. 3 is a diagram illustrating a filtering distance according to an embodiment of the present invention.
Referring to FIG. 2, the
The selecting unit 210 selects three consecutive vertices among vertices (vertexes according to writing input) corresponding to the coordinate information included in the vertex information, and calculates coordinate information on the selected three vertices from the distance calculating unit 220. To send.
The distance calculator 220 receives coordinate information about three vertices from the selector 210. The distance calculator 220 calculates a filtering distance that is a distance between a second straight line (hereinafter referred to as a filtering straight line) connecting the first and third vertices among three consecutive vertices corresponding to the received coordinate information. do. The distance calculator 220 transmits the filtering distance and the vertex information to the remover 230. Referring to FIG. 3, the distance calculator 220 calculates a distance between the filtering straight line connecting the first P1 and the second vertex P3 and the second vertex P2 among three consecutive vertices.
Referring back to FIG. 2, the remover 230 removes vertices having a received filtering distance equal to or less than a filtering reference value from the vertex information. That is, the remover 230 removes coordinate information corresponding to a vertex whose filtering distance is equal to or less than a filtering reference value from the vertex information. The remover 230 transmits vertex information from which the corresponding vertex is removed to the selector 210.
The selector 210 selects three consecutive vertices again from the vertex information received from the remover 230. At this time, the selection unit 210 does not reselect the three vertex combinations selected in the previous process. For example, the selector 210 selects the n, n + 1, n + 2 th vertices and then selects the n, n + 2, n + 3 th vertices when the n + 1 th vertex is deleted. The selector 210 selects n + 1, n + 2 and n + 3 vertices after selecting the n, n + 1, n + 2 th vertices and the n + 1 th vertex is not deleted.
The selector 210 repeats the selection process until there are no more vertex combinations to select. The distance calculator 220 and the remover 230 repeatedly perform the above-described process on the vertex selected by the selector 210.
4 is a diagram illustrating a straightening unit of a writing function providing apparatus according to an embodiment of the present invention, and FIG. 5 is a diagram illustrating a split point distance calculated by the writing function providing apparatus according to an embodiment of the present invention.
Referring to FIG. 4, the
The split point detector 410 divides the Bezier curves included in the Bezier curve information received from the
The distance calculator 420 calculates a split point distance, which is a distance between a straight line connecting two basic points of the beige curve and the split point. Referring to FIG. 5, the distance calculator 420 receives coordinate information of the split points 520 to 550 from the split point detector 410. The distance calculator 420 calculates a split point distance, which is a distance from a straight line connecting the
The straightening determination unit 430 straightens the beige curve when the ratio of the number of splitting points having a split point distance equal to or less than a specified reference value and the total number of splitting points is equal to or greater than a specified value (hereinafter referred to as straightening reference ratio). For example, assuming that the splitting point distances corresponding to the splitting points 520 to 550 are 4, 3, 1, and 2, respectively, the reference value is 3 and the straightening reference ratio is 70%, the straightening determiner 430 divides. It is confirmed that the dividing points whose point distances are equal to or less than the reference value 3 are the dividing
6 is a view for explaining a fitting of the writing function providing apparatus according to an embodiment of the present invention.
Referring to FIG. 6, the
[Equation 1]
Where V i is the control point of the Bezier curve and B i , n (t) is the Bernstein polynomial for the n-th curve. Bernstein polynomials for n-th order curves are shown in Equation 2 below. In addition, when t = 0, it means the start point of a Bezier curve, and when t = 1, it means the end point of a Bezier curve.
[Equation 2]
In this case, i may be 1 to n,
May be expressed as Equation 3 below.&Quot; (3) "
Since the Bezier curve is evaluated by the de Casteljau recursive algorithm, the derivative of the k-th Bezier curve can be expressed as Equation 4 below by being based on the recursive property of the Bernstein polynomial.
&Quot; (4) "
In this case, applying the starting point of t to 0 in Equation 4 leads to Equation 5 below.
[Equation 5]
The
For example, the
The
Claims (9)
A split point detector for detecting a split point corresponding to the Bezier curve;
A distance calculator configured to calculate a split point distance between a straight line connecting both end points of the Bezier curve and the split point; And
And a straightening determination unit to straighten the Bezier curve when the ratio between the splitting point and the total splitting point at which the splitting point distance is equal to or less than a specified value is equal to or greater than a predetermined ratio.
And the split point detector detects a split point that divides the Bezier curve evenly into a predetermined number.
And the split point distance is a minimum distance between a straight line connecting both end points of the Bezier curve and the split point.
And the straightening determining unit straightens the Bezier curve by deleting a control point corresponding to the Bezier curve.
A fitting unit calculating a Bezier curve corresponding to the vertex information; And
And a straightening unit to straighten the Bezier curve when the ratio between the number of split points corresponding to the Bezier curve and the split point whose split point distance is equal to or less than a specified value is equal to or greater than a specified ratio.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100003841A KR101014735B1 (en) | 2010-01-15 | 2010-01-15 | Apparatus for providing writing function |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100003841A KR101014735B1 (en) | 2010-01-15 | 2010-01-15 | Apparatus for providing writing function |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100116352A Division KR101068257B1 (en) | 2010-11-22 | 2010-11-22 | Apparatus for providing writing function |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101014735B1 true KR101014735B1 (en) | 2011-02-14 |
Family
ID=43777426
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020100003841A KR101014735B1 (en) | 2010-01-15 | 2010-01-15 | Apparatus for providing writing function |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101014735B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023206257A1 (en) * | 2022-04-28 | 2023-11-02 | 京东方科技集团股份有限公司 | Handwriting generation method and apparatus, computer device, and readable medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001034319A (en) | 1999-07-26 | 2001-02-09 | Mitsubishi Electric Corp | Locus controller |
JP2005173940A (en) | 2003-12-10 | 2005-06-30 | 3D Media Co Ltd | Image processing method, image processor and computer program |
JP2006333361A (en) | 2005-05-30 | 2006-12-07 | Canon Inc | Image processing device, control method thereof, and program |
JP2009302758A (en) | 2008-06-11 | 2009-12-24 | Konica Minolta Business Technologies Inc | Image processing device, image conversion method, and computer program |
-
2010
- 2010-01-15 KR KR1020100003841A patent/KR101014735B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001034319A (en) | 1999-07-26 | 2001-02-09 | Mitsubishi Electric Corp | Locus controller |
JP2005173940A (en) | 2003-12-10 | 2005-06-30 | 3D Media Co Ltd | Image processing method, image processor and computer program |
JP2006333361A (en) | 2005-05-30 | 2006-12-07 | Canon Inc | Image processing device, control method thereof, and program |
JP2009302758A (en) | 2008-06-11 | 2009-12-24 | Konica Minolta Business Technologies Inc | Image processing device, image conversion method, and computer program |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023206257A1 (en) * | 2022-04-28 | 2023-11-02 | 京东方科技集团股份有限公司 | Handwriting generation method and apparatus, computer device, and readable medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11861792B2 (en) | Tessellation of patches of surfaces in a tile based rendering system | |
US20220164919A1 (en) | Tile based computer graphics | |
KR102450683B1 (en) | Smoothing and gpu-enabled rendering of digital ink | |
EP3680757A1 (en) | Wet ink predictor | |
US20110193871A1 (en) | Rendering multi-layered image | |
CN107808394B (en) | Image processing method based on convolutional neural network and mobile terminal | |
CN104657994A (en) | Image consistency judging method and system based on optical flow method | |
KR101014735B1 (en) | Apparatus for providing writing function | |
KR101068257B1 (en) | Apparatus for providing writing function | |
US10740955B2 (en) | Systems and methods for real-time large-scale point cloud surface reconstruction | |
Wu et al. | A Novel Exemplar-Based Image Completion Model. | |
CN111738275A (en) | Generation method and training method of sampling frame and neural network | |
CN116304415A (en) | Data rendering optimization method and device based on web | |
US8947436B2 (en) | Method, apparatus and system for dense graph simplification, and recording medium for the same | |
CN113626903B (en) | Road curve setting method and device, electronic equipment and storage medium | |
US20190369737A1 (en) | Reference point generation on a vector path | |
CN111444675B (en) | Character round angle processing method, medium, equipment and device | |
US20050238234A1 (en) | Method for edge detection and contour stroke generation | |
US20150147004A1 (en) | Modified bicubic interpolation | |
US9342905B2 (en) | Method and apparatus for displaying tubular object | |
KR20090084065A (en) | Method and apparatus for generating color gradient | |
JP5719271B2 (en) | Image processing method, image processing apparatus, and image processing program | |
JP2015075884A (en) | Drawing device, drawing method and program | |
KR101344858B1 (en) | Device and Method for Processing Image, Computer Readable Recording Medium | |
Zamani | Three simple spline methods for approximation and interpolation of data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
A107 | Divisional application of patent | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20131121 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20141121 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20170711 Year of fee payment: 10 |