Polybezier Digital Ink Stroke Bounding Curve Generation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing digital painting applications face challenges in generating aesthetically pleasant virtual brushstrokes from user-drawn trajectories in a computationally inexpensive manner, especially on devices with limited resources, as they struggle to efficiently update the geometry and texture of virtual brushstrokes in real-time.
Innovation Solution
The method involves determining left and right bounding poly-lines along a central trajectory, using these to define bounding poly-curves that generate a mesh for the virtual brushstroke, which can be texturized and updated efficiently as new points are added, allowing for near real-time rendering even on low-cost devices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If complex methods are used to generate virtual brushstrokes with realistic geometry and texture, then the aesthetic quality and naturalism of the brushstrokes improve, but the computational cost and processing time increase significantly
Solution Approach 1:
The brushstroke generation process is segmented into distinct stages: trajectory processing, bounding curve determination, mesh generation, and texturization. Each stage operates independently and can be processed incrementally as new points arrive, reducing the computational burden on any single processing step while maintaining overall aesthetic quality.
Solution Approach 2:
Bounding curves are determined in advance from the trajectory points before mesh generation and texturization. This preliminary determination of the brushstroke geometry allows subsequent rendering steps to proceed more efficiently, as the framework is already established and only needs to be filled and textured rather than computed from scratch.
2Manufacturing precision
If complete brushstroke geometry and texture are generated upfront, then the visual quality improves, but the processing time increases and real-time rendering becomes difficult
Solution Approach 1:
The brushstroke generation system is designed to be dynamic and adaptive. As new trajectory points are received, the bounding curves are updated, and the mesh and texture are regenerated incrementally. This dynamic approach allows the system to maintain high visual quality while adapting to changing input data in real-time without requiring complete regeneration of the entire brushstroke.
Solution Approach 2:
The generation process continues continuously as new points arrive rather than waiting for complete input. Bounding curves are determined and updated continuously, and mesh generation proceeds incrementally, ensuring that useful visual output is produced continuously throughout the drawing process rather than appearing only after complete input is received.
3Manufacturing precision
If high-fidelity mesh generation and texturization are performed, then the realism of the virtual brushstroke improves, but the computational resources required exceed the capabilities of low-cost devices
Solution Approach 1:
The system applies different levels of processing quality to different aspects of brushstroke generation. Bounding curve determination uses precise mathematical calculations to ensure accurate geometry, while mesh generation uses efficient algorithms appropriate for the device capabilities. Texturization applies realistic patterns selectively to enhance perceived realism without requiring excessive computational resources across the entire rendering pipeline.
Data Source
Figure 1A~1E
Figure 2A~2B
Figure 3A~3E
AI summary
An aspect of the present disclosure relates to a method including: (i) obtaining an ordered set of points in a two-dimensional space; (ii) obtaining, for each point in the ordered set of points, a width value; (iii) determining a plurality of left points and a plurality of right points in the two-dimensional space, wherein each point in the ordered set of points corresponds to a left point in the plurality of left points and a right point in the plurality of right points such that the left and right points are separated by the width value obtained for the point in the ordered set of points; and (iv) determining a left curve and a right curve defining boundaries of a virtual brushstroke in the two-dimensional space.