Hierarchical Rasterization of Curved Primitives for GPU Vector Graphics Rendering

Publikation: Beitrag in einer FachzeitschriftArtikelForschungBegutachtung

Abstract

In this paper, we introduce the CPatch, a curved primitive that can be used to construct arbitrary vector graphics. A CPatch is a generalization of a 2D polygon: Any number of curves up to a cubic degree bound a primitive. We show that a CPatch can be rasterized efficiently in a hierarchical manner on the GPU, locally discarding irrelevant portions of the curves. Our rasterizer is fast and scalable, works on all patches in parallel, and does not require any approximations. We show a parallel implementation of our rasterizer, which naturally supports all kinds of color spaces, blending and super‐sampling. Additionally, we show how vector graphics input can efficiently be converted to a CPatch representation, solving challenges like patch self intersections and false inside‐outside classification. Results indicate that our approach is faster than the state‐of‐the‐art, more flexible and could potentially be implemented in …
Originalspracheenglisch
Seiten (von - bis)93-103
FachzeitschriftComputer Graphics Forum
Jahrgang38
Ausgabenummer2
DOIs
PublikationsstatusVeröffentlicht - 2019

Fingerprint

Color
Rasterization
Rendering (computer graphics)
Graphics processing unit

Dies zitieren

Hierarchical Rasterization of Curved Primitives for GPU Vector Graphics Rendering. / Dokter, Mark; Hladký, Jozef; Parger, Mathias; Schmalstieg, Dieter; Seidel, Hans-Peter; Steinberger, Markus.

in: Computer Graphics Forum, Jahrgang 38, Nr. 2, 2019, S. 93-103.

Publikation: Beitrag in einer FachzeitschriftArtikelForschungBegutachtung

@article{5ffbed3b1f6242408085fd3ccc3a20e6,
title = "Hierarchical Rasterization of Curved Primitives for GPU Vector Graphics Rendering",
abstract = "In this paper, we introduce the CPatch, a curved primitive that can be used to construct arbitrary vector graphics. A CPatch is a generalization of a 2D polygon: Any number of curves up to a cubic degree bound a primitive. We show that a CPatch can be rasterized efficiently in a hierarchical manner on the GPU, locally discarding irrelevant portions of the curves. Our rasterizer is fast and scalable, works on all patches in parallel, and does not require any approximations. We show a parallel implementation of our rasterizer, which naturally supports all kinds of color spaces, blending and super‐sampling. Additionally, we show how vector graphics input can efficiently be converted to a CPatch representation, solving challenges like patch self intersections and false inside‐outside classification. Results indicate that our approach is faster than the state‐of‐the‐art, more flexible and could potentially be implemented in …",
author = "Mark Dokter and Jozef Hladk{\'y} and Mathias Parger and Dieter Schmalstieg and Hans-Peter Seidel and Markus Steinberger",
year = "2019",
doi = "10.1111/cgf.13622",
language = "English",
volume = "38",
pages = "93--103",
journal = "Computer Graphics Forum",
issn = "0167-7055",
publisher = "Wiley-Blackwell",
number = "2",

}

TY - JOUR

T1 - Hierarchical Rasterization of Curved Primitives for GPU Vector Graphics Rendering

AU - Dokter, Mark

AU - Hladký, Jozef

AU - Parger, Mathias

AU - Schmalstieg, Dieter

AU - Seidel, Hans-Peter

AU - Steinberger, Markus

PY - 2019

Y1 - 2019

N2 - In this paper, we introduce the CPatch, a curved primitive that can be used to construct arbitrary vector graphics. A CPatch is a generalization of a 2D polygon: Any number of curves up to a cubic degree bound a primitive. We show that a CPatch can be rasterized efficiently in a hierarchical manner on the GPU, locally discarding irrelevant portions of the curves. Our rasterizer is fast and scalable, works on all patches in parallel, and does not require any approximations. We show a parallel implementation of our rasterizer, which naturally supports all kinds of color spaces, blending and super‐sampling. Additionally, we show how vector graphics input can efficiently be converted to a CPatch representation, solving challenges like patch self intersections and false inside‐outside classification. Results indicate that our approach is faster than the state‐of‐the‐art, more flexible and could potentially be implemented in …

AB - In this paper, we introduce the CPatch, a curved primitive that can be used to construct arbitrary vector graphics. A CPatch is a generalization of a 2D polygon: Any number of curves up to a cubic degree bound a primitive. We show that a CPatch can be rasterized efficiently in a hierarchical manner on the GPU, locally discarding irrelevant portions of the curves. Our rasterizer is fast and scalable, works on all patches in parallel, and does not require any approximations. We show a parallel implementation of our rasterizer, which naturally supports all kinds of color spaces, blending and super‐sampling. Additionally, we show how vector graphics input can efficiently be converted to a CPatch representation, solving challenges like patch self intersections and false inside‐outside classification. Results indicate that our approach is faster than the state‐of‐the‐art, more flexible and could potentially be implemented in …

U2 - 10.1111/cgf.13622

DO - 10.1111/cgf.13622

M3 - Article

VL - 38

SP - 93

EP - 103

JO - Computer Graphics Forum

JF - Computer Graphics Forum

SN - 0167-7055

IS - 2

ER -