1. Field
The following description relates to curve rendering methods and apparatuses.
2. Description of Related Art
In curve rendering, a step size is an important factor for determining the rendering performance or curve quality. When the step size is excessively small, the rendering performance may be degraded due to redundant rendering, and when the step size is excessively large, cracks may be generated.
FIGS. 1A and 1B are diagrams illustrating redundant rendering and cracks in pixels due to a step size in a forward differencing algorithm (FDA), which is one of the curve rendering algorithms. As can be seen from FIGS. 1A and 1B, when the step size is set to be excessively small, redundant rendering occurs, and when the step size is set to be excessively large, cracks are generated, thereby degrading the quality of a curve shape. Referring to FIG. 1A, when the step size is equal to 0.01, redundant rendering occurs in pixels. A coordinate value of a next point is calculated by a time t by the step size.
Referring to FIG. 1A, small black points represent (x, y) coordinates that are calculated according to the change of time t, and large hatched points represent pixel coordinates that are close to the respective small black points on the actual screen. That is, a small black point at t=0.01 is rendered by being converted into pixel coordinates (1, 0) on the actual screen. A small black point at t=0.02 is rendered by being converted into close pixel coordinates (1, 0) on the actual screen. As such, when t=0.01 and t=0.02, redundant rendering occurs at the same coordinates. This increases the number of memory input/output (I/O), thus degrading the whole performance of curve rendering. Similarly, redundant rendering occurs when t=0.03 and t=0.04, t=0.06 and t=0.07, t=0.08 and t=0.09, and t=0.11 and t=0.12.
Referring to FIG. 1B, the step size was modified to 0.02 so as to prevent redundant rendering. In this case, since no redundant rendering occurs, the rendering performance is improved. However, since the pixel coordinates between t=0.04 and t=0.06 are not rendered, a curve is broken, that is, a crack is generated, which degrades the quality of curve rendering.