IP Library Granted Patent US 11,893,667
Granted Patent B2
US 11,893,667 · App. 17/658,186 · Granted Feb 6, 2024

Techniques for rendering vector graphics using precomputed textures

Inventors: Ioannis Oikonomou (Patras, GR); Georgios Keramidas (Patras, GR)
Assignee: THINK SILICON RESEARCH AND TECHNOLOGY SINGLE MEMBER S.A.
G06T11/40G06T1/20
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,893,667
App. No.
17/658,186
Granted
Feb 6, 2024
Kind
B2
Abstract

A system and method for rendering vector graphics using precomputed textures, includes receiving a vector image, the vector image including a plurality of instructions, each instruction for rendering at least a geometric primitive; detecting in the plurality of instructions an instruction for generating a first Bezier curve; selecting a first precomputed curve in a texture map to match the first Bezier curve; and generating a raster image based at least on the first precomputed curve. In an embodiment selecting the first precomputed curve includes computing a transformation matrix between the first precomputed curve and target coordinates, wherein the target coordinates are coordinates of a display; computing texture coordinates based on the computed transformation matrix and the texture map; and rendering an adapted precomputed curve, based on the texture map and the computed texture coordinates.

Claims (43)

1. A method for rendering vector graphics using precomputed textures, comprising:

receiving a vector image, the vector image including a plurality of instructions, each instruction for rendering at least a geometric primitive;

detecting in the plurality of instructions an instruction for generating a first Bezier curve;

selecting a first precomputed curve in a texture map to match the first Bezier curve;

computing a transformation matrix between the first precomputed curve and target coordinates, wherein the target coordinates are coordinates of a display;

computing texture coordinates based on the computed transformation matrix and the texture map;

rendering an adapted precomputed curve, based on the texture map and the computed texture coordinates; and

generating a raster image based at least on the first precomputed curve.

2. The method of claim 1 , wherein any one of is computed on a floating point unit (FPU) having a predetermined accuracy: the transformation matrix, and the texture coordinates.

3. The method of claim 1 , wherein any one of is computed on an arithmetic logic unit (ALU) having a predetermined accuracy: the transformation matrix, and the texture coordinates.

4. The method of claim 1 , wherein any one of: an FPU, and an ALU, is selected to perform a computation based on a predetermined error rate threshold.

5. The method of claim 1 , wherein rendering the adapted precomputed curve is performed by a fragment shader.

6. The method of claim 1 , wherein computing the transformation matrix further comprises:

generating a correlation matrix between the precomputed curve and the target coordinates.

7. The method of claim 1 , wherein computing the texture coordinates further comprises:

computing an interpolation between the computed transformation matrix and the texture map.

8. A non-transitory computer readable medium having stored thereon instructions for causing a processing circuitry to execute a process, the process comprising:

receiving a vector image, the vector image including a plurality of instructions, each instruction for rendering at least a geometric primitive;

detecting in the plurality of instructions an instruction for generating a first Bezier curve;

selecting a first precomputed curve in a texture map to match the first Bezier curve;

computing a transformation matrix between the first precomputed curve and target coordinates, wherein the target coordinates are coordinates of a display;

computing texture coordinates based on the computed transformation matrix and the texture map;

rendering an adapted precomputed curve, based on the texture map and the computed texture coordinates; and

generating a raster image based at least on the first precomputed curve.

9. A system for rendering vector graphics using precomputed textures, comprising:

a processing circuitry; and

a memory, the memory containing instructions that, when executed by the processing circuitry, configure the system to:

receive a vector image, the vector image including a plurality of instructions, each instruction for rendering at least a geometric primitive;

detect in the plurality of instructions an instruction for generating a first Bezier curve;

select a first precomputed curve in a texture map to match the first Bezier curve;

compute a transformation matrix between the first precomputed curve and target coordinates, wherein the target coordinates are coordinates of a display;

compute texture coordinates based on the computed transformation matrix and the texture map;

render an adapted precomputed curve, based on the texture map and the computed texture coordinates; and

generate a raster image based at least on the first precomputed curve.

10. The system of claim 9 wherein any one of is computed on a floating point unit (FPU) having a predetermined accuracy: the transformation matrix, and the texture coordinates.

11. The system of claim 10 , wherein any one of: the FPU, and an ALU, is selected to perform a computation based on a predetermined error rate threshold.

12. The system of claim 9 , wherein any one of is computed on an arithmetic logic unit (ALU) having a predetermined accuracy: the transformation matrix, and the texture coordinates.

13. The system of claim 9 , wherein rendering the adapted precomputed curve is performed by a fragment shader.

14. The system of claim 9 , wherein the memory further contains instructions that, when executed by the processing circuitry, further configure the system to:

generate a correlation matrix between the precomputed curve and the target coordinates.

15. The system of claim 9 , wherein the memory further contains instructions that, when executed by the processing circuitry, further configure the system to:

compute an interpolation between the computed transformation matrix and the texture map.

16. The system of claim 9 , wherein the processing circuitry further comprises any one of: an FPU, an ALU, a fragment shader, a rasterizing unit, a graphical processing unit (GPU), and a central processing unit (CPU).

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2026
From: THINK SILICON SINGLE MEMBER P.C. AND APPLIED MATERIALS, INC.
To: QUALCOMM INCORPORATED
Reel/Frame 075735/0803 →
CHANGE OF NAME Recorded Mar 6, 2026
From: THINK SILICON RESEARCH AND TECHNOLOGY SINGLE MEMBER S.A.
To: THINK SILICON SINGLE MEMBER P.C.
Reel/Frame 075032/0035 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 6, 2022
From: OIKONOMOU, IOANNIS; KERAMIDAS, GEORGIOS
To: THINK SILICON RESEARCH AND TECHNOLOGY SINGLE MEMBER S.A.
Reel/Frame 059519/0290 →
Continuity (1)
Related Publication 20230316605A1 · Oct 5, 2023