Triangulation Generation for Efficient Curve Rendering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing tessellation methods for rendering vector graphics on raster-based devices result in 'spiky' triangles, leading to increased computational demands and performance degradation due to the high number of pixels and tiles being painted multiple times, especially when rendering polygons with curved paths.

Innovation Solution

A method for generating triangulations that includes automatically creating interior and exterior triangles based on path segments, using a stack-based algorithm to produce triangles that are less spiky and optimized for efficient rendering across various resolutions, reducing the number of pixel shader invocations and computational resources required.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If conventional polygon triangulation techniques are used to tessellate curved paths, then the curve can be approximated by line segments, but the resulting triangulation produces spiky triangles that increase computational demands and degrade rendering performance

Engineering Contradiction:
Improvecurve approximation accuracyVSAvoidrendering performance
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent divides the polygon triangulation process into two distinct phases: (1) generating a minimal triangulation that captures the essential geometry with fewer triangles, and (2) selectively refining only those triangles that require higher precision. This segmentation allows the system to avoid generating spiky triangles in the first place, while still achieving high approximation accuracy where needed, thereby resolving the contradiction between curve precision and rendering performance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different levels of triangulation quality to different regions of the polygon. Instead of uniformly high-resolution triangulation across the entire polygon, the system identifies and refines only specific triangles that benefit from higher precision (those with larger area or greater deviation from the original curve). This local quality approach maintains curve approximation accuracy where necessary while minimizing the total number of triangles, thus improving rendering performance without sacrificing precision.

Inventive Principle:
Principle #3Local quality

2Manufacturing precision

If the resolution of the polygonal boundary is increased to improve curve approximation, then the triangulation becomes spikier and more pixels are painted multiple times, but this increases computational resources required

Engineering Contradiction:
Improvecurve approximation precisionVSAvoidcomputational resources
Core Design Contradiction:
Manufacturing precisionVSUse of energy by moving object

Solution Approach 1:

The patent implements partial refinement where only a subset of triangles undergoes high-resolution refinement rather than the entire triangulation. The system identifies triangles that require refinement based on criteria such as area size and deviation from the original curve, and applies additional vertices only to those specific triangles. This partial action approach achieves high curve approximation precision where needed while avoiding the computational overhead of refining all triangles, thus resolving the contradiction between precision and computational resource usage.

Inventive Principle:
Principle #16Partial or excessive action

3Measurement precision

If a high vertex count is used to approximate curves for high-resolution rendering, then the triangulation becomes more complex and spiky, but this increases the number of pixel shader invocations

Engineering Contradiction:
Improverendering resolutionVSAvoidtriangulation complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent performs preliminary triangulation to generate a minimal set of triangles that capture the overall polygon geometry before rendering. This preliminary triangulation is followed by selective refinement that adds vertices only to specific triangles that require higher precision. By performing this two-stage process in advance (before runtime rendering), the system reduces the complexity of the triangulation data structure while maintaining high rendering resolution, thereby reducing the number of pixel shader invocations needed during actual rendering.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8072452B1Efficient multi-resolution curve rendering
Publication Date: 2011.12.06 ADOBE INC
  • US8072452B1 patent drawing
  • US8072452B1 patent drawing
  • US8072452B1 patent drawing

AI summary

A method, system, and computer-readable storage medium are disclosed for generating a triangulation of a path comprising one or more path segments. In one embodiment, one or more interior triangles in the triangulation may be automatically generated. Each interior triangle may comprise a line segment between a starting point and an ending point of a path segment, leaving a remainder of a first plurality of exterior regions of the path. A first set of one or more exterior triangles in the triangulation may be automatically generated by inscribing a triangle in each exterior regions of the path whose corresponding portion of the one or more path segments does not meet a flatness threshold. Successive sets of exterior triangles may be generated within remaining exterior regions while the flatness threshold is unmet.