GPU-friendly Stroke Expansion

Vector graphics includes both filled and stroked paths as the main primitives. While there are many techniques for rendering filled paths on GPU, stroked paths have proved more elusive. This paper presents a technique for performing stroke expansion, namely the generation of the outline representing the stroke of the given input path. Stroke expansion is a global problem, with challenging constraints on continuity and correctness. Nonetheless, we implement it using a fully parallel algorithm suitable for execution in a GPU compute shader, with minimal preprocessing. The output of our method can be either line or circular arc segments, both of which are well suited to GPU rendering, and the number of segments is minimal. We introduce several novel techniques, including an encoding of vector graphics primitives suitable for parallel processing, and an Euler spiral based method for computing approximations to parallel curves and evolutes.

Authors

Institutions

Publication Details

Journal
Proceedings of the ACM on Computer Graphics and Interactive Techniques
Published
2024-08-09
DOI
https://doi.org/10.1145/3675390
Citations
1
Primary Topic
Computer Graphics and Visualization Techniques
Type
article
Field-Weighted Citation Impact
0.63
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

GPU-friendly Stroke Expansion

Raph Levien, Arman Uguray
1 citations
Proceedings of the ACM on Computer Graphics and Interactive Techniques
Computer Graphics and Visualization Techniques
0.63
article

GPU-friendly Stroke Expansion

Raph Levien, Arman Uguray
article en
1 citations

Abstract

Vector graphics includes both filled and stroked paths as the main primitives. While there are many techniques for rendering filled paths on GPU, stroked paths have proved more elusive. This paper presents a technique for performing stroke expansion, namely the generation of the outline representing the stroke of the given input path. Stroke expansion is a global problem, with challenging constraints on continuity and correctness. Nonetheless, we implement it using a fully parallel algorithm suitable for execution in a GPU compute shader, with minimal preprocessing. The output of our method can be either line or circular arc segments, both of which are well suited to GPU rendering, and the number of segments is minimal. We introduce several novel techniques, including an encoding of vector graphics primitives suitable for parallel processing, and an Euler spiral based method for computing approximations to parallel curves and evolutes.

Proceedings of the ACM on Computer Graphics and Interactive TechniquesVol. 7(3)
Google (United States) (US)
Openalex Percentile: Top 22%
Computer Graphics and Visualization Techniques
0.63
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

GPU-friendly Stroke Expansion — Raph Levien, Arman Uguray · Proceedings of the ACM on Computer Graphics and Interactive Techniques (2024) | TGRS Research Map | TGRS