IP Library Patent Application 12565278
Patent Application
App. No. 12/565,278

CONVERSION OF SWF MORPH SHAPE DEFINITIONS FOR VECTOR GRAPHICS RENDERING

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 None
App. No.
12/565,278
Abstract

A method and device are provided for converting or transforming a morph shape definition specified in a SWF file into a vector graphics shape definition including one or more vector graphics path definitions that can then be used by a vector graphics API to render the contents of the SWF morph shape definition. The method creates an intermediate path style, and path style graph information including intermediate path style information. A vector graphics path definition includes the intermediate path style information, and a vector graphics path created by traversing components of a graph represented by a path style graph representation. Embodiments described herein can leverage a vector graphics API that can be hardware accelerated to efficiently render the morph shape data, such as in a mobile device.

Claims (67)

1 . A processor-implemented method of converting a Shockwave Flash (SWF) morph shape definition, including a number of directed start edges and an equal number of corresponding directed end edges, the directed start edges and the directed end edges having a common first morph path style, into a vector graphics shape definition corresponding to the first morph path style and a given morph ratio, the first morph path style including a start path style and an end path style, the method comprising:

a) creating an intermediate path style by creating a linear combination of the start path style and the end path style, based on the given morph ratio;

b) for each edge pair including a directed start edge and its corresponding directed end edge, creating a respective intermediate undirected edge by creating a linear combination of the edge pair, based on the given morph ratio;

c) creating a path style graph representation corresponding to the given morph ratio, the path style graph representation including intermediate path style information and a graph representation formed from the intermediate undirected edges;

d) creating a vector graphics path by traversing components of a graph represented by the path style graph representation;

e) creating a vector graphics path definition including the vector graphics path and the intermediate path style information; and

f) creating the vector graphics shape definition including the vector graphics path definition.

2 . The processor-implemented method of claim 1 wherein the SWF morph shape definition further includes a second number of directed start edges and an equal second number of corresponding directed end edges, the second number of directed start edges and the second number of directed end edges having a common second morph path style, the second morph path style including a second start path style and a second end path style, the vector graphics shape definition corresponding to the first morph path style and the second morph path style and the given morph ratio, the method further comprising:

g) creating a second intermediate path style by creating a linear combination of the second start path style and the second end path style, based on the given morph ratio;

h) for each second edge pair including a directed start edge from the second number of directed start edges and its corresponding directed end edge from the second number of directed end edges, creating a respective second intermediate undirected edge by creating a linear combination of the second edge pair, based on the given morph ratio;

i) creating a second path style graph representation corresponding to the given morph ratio, the second path style graph representation including second intermediate path style information and a second graph representation formed from the second intermediate undirected edges;

j) creating a second vector graphics path by traversing components of a second graph represented by the second path style graph representation;

k) creating a second vector graphics path definition including the second vector graphics path and the second intermediate path style information; and

l) updating the vector graphics shape definition to include the second vector graphics path definition.

3 . The processor-implemented method of claim 2 wherein the SWF morph shape definition defines a plurality of morph ratios, and further comprising performing steps g) to l) for each morph ratio.

4 . The processor-implemented method of claim 2 further comprising:

m) creating a shape data structure including the vector graphics path definition created in step e) and the second vector graphics path definition, and

wherein steps f) and l) are performed based on the contents of the shape data structure.

5 . The processor-implemented method of claim 1 further comprising:

creating a set of edge pairs, each edge pair in the set of edge pairs comprising a unique one of the number of directed start edges and a corresponding directed end edge.

6 . A mobile device, comprising:

a processor; and

a computer readable memory in communication with the processor, the memory storing statements and instructions for execution by the processor to perform a method of converting a Shockwave Flash (SWF) morph shape definition, including a number of directed start edges and an equal number of corresponding directed end edges, the directed start edges and the directed end edges having a common first morph path style, into a vector graphics shape definition corresponding to the first morph path style and a given morph ratio, the first morph path style including a start path style and an end path style, the method comprising:

a) creating an intermediate path style by creating a linear combination of the start path style and the end path style, based on the given morph ratio;

b) for each edge pair including a directed start edge and its corresponding directed end edge, creating a respective intermediate undirected edge by creating a linear combination of the edge pair, based on the given morph ratio;

c) creating a path style graph representation corresponding to the given morph ratio, the path style graph representation including intermediate path style information and a graph representation formed from the intermediate undirected edges;

d) creating a vector graphics path by traversing components of a graph represented by the path style graph representation;

e) creating a vector graphics path definition including the vector graphics path and the intermediate path style information; and

f) creating the vector graphics shape definition including the vector graphics path definition.

7 . The mobile device of claim 6 wherein the SWF morph shape definition further includes a second number of directed start edges and an equal second number of corresponding directed end edges, the second number of directed start edges and the second number of directed end edges having a common second morph path style, the second morph path style including a second start path style and a second end path style, the vector graphics shape definition corresponding to the first morph path style and the second morph path style and the given morph ratio, the method further comprising:

g) creating a second intermediate path style by creating a linear combination of the second start path style and the second end path style, based on the given morph ratio;

h) for each second edge pair including a directed start edge from the second number of directed start edges and its corresponding directed end edge from the second number of directed end edges, creating a respective second intermediate undirected edge by creating a linear combination of the second edge pair, based on the given morph ratio;

i) creating a second path style graph representation corresponding to the given morph ratio, the second path style graph representation including second intermediate path style information and a second graph representation formed from the second intermediate undirected edges;

j) creating a second vector graphics path by traversing components of a second graph represented by the second path style graph representation;

k) creating a second vector graphics path definition including the second vector graphics path and the second intermediate path style information; and

l) updating the vector graphics shape definition to include the second vector graphics path definition.

8 . The mobile device of claim 7 wherein the SWF morph shape definition defines a plurality of morph ratios, and further comprising performing steps g) to l) for each morph ratio.

9 . The mobile device of claim 7 wherein the method further comprises:

m) creating a shape data structure including the vector graphics path definition created in step e) and the second vector graphics path definition, and

wherein steps f) and l) are performed based on the contents of the shape data structure.

10 . The mobile device of claim 6 wherein the method further comprises:

creating a set of edge pairs, each edge pair in the set of edge pairs comprising a unique one of the number of directed start edges and a corresponding directed end edge.

11 . A computer readable memory storing statements and instructions for execution by a processor to perform a method of converting a Shockwave Flash (SWF) morph shape definition, including a number of directed start edges and an equal number of corresponding directed end edges, the directed start edges and the directed end edges having a common first morph path style, into a vector graphics shape definition corresponding to the first morph path style and a given morph ratio, the first morph path style including a start path style and an end path style, the method comprising:

a) creating an intermediate path style by creating a linear combination of the start path style and the end path style, based on the given morph ratio;

b) for each edge pair including a directed start edge and its corresponding directed end edge, creating a respective intermediate undirected edge by creating a linear combination of the edge pair, based on the given morph ratio;

c) creating a path style graph representation corresponding to the given morph ratio, the path style graph representation including intermediate path style information and a graph representation formed from the intermediate undirected edges;

d) creating a vector graphics path by traversing components of a graph represented by the path style graph representation;

e) creating a vector graphics path definition including the vector graphics path and the intermediate path style information; and

f) creating the vector graphics shape definition including the vector graphics path definition.

12 . The computer readable memory of claim 11 wherein the SWF morph shape definition further includes a second number of directed start edges and an equal second number of corresponding directed end edges, the second number of directed start edges and the second number of directed end edges having a common second morph path style, the second morph path style including a second start path style and a second end path style, the vector graphics shape definition corresponding to the first morph path style and the second morph path style and the given morph ratio, the method further comprising:

g) creating a second intermediate path style by creating a linear combination of the second start path style and the second end path style, based on the given morph ratio;

h) for each second edge pair including a directed start edge from the second number of directed start edges and its corresponding directed end edge from the second number of directed end edges, creating a respective second intermediate undirected edge by creating a linear combination of the second edge pair, based on the given morph ratio;

i) creating a second path style graph representation corresponding to the given morph ratio, the second path style graph representation including second intermediate path style information and a second graph representation formed from the second intermediate undirected edges;

j) creating a second vector graphics path by traversing components of a second graph represented by the second path style graph representation;

k) creating a second vector graphics path definition including the second vector graphics path and the second intermediate path style information; and

l) updating the vector graphics shape definition to include the second vector graphics path definition.

13 . The computer readable memory of claim 12 wherein the SWF morph shape definition defines a plurality of morph ratios, and further comprising performing steps g) to l) for each morph ratio.

14 . The computer readable memory of claim 12 wherein the method further comprises:

m) creating a shape data structure including the vector graphics path definition created in step e) and the second vector graphics path definition, and

wherein steps f) and l) are performed based on the contents of the shape data structure.

15 . The computer readable memory of claim 11 wherein the method further comprises:

creating a set of edge pairs, each edge pair in the set of edge pairs comprising a unique one of the number of directed start edges and a corresponding directed end edge.

16 . A computer readable memory storing a shape data structure for use in converting a Shockwave Flash (SWF) morph shape definition including a number of directed start edges and an equal number of directed end edges associated with a common morph path style, into a vector graphics path definition corresponding to the morph path style and a given morph ratio, the morph path style including a start path style and an end path style, the shape data structure comprising:

a vector graphics path definition including a vector graphics path and intermediate path style information,

the intermediate path style information being based on a linear combination of the start path style and the end path style, based on the given morph ratio,

the vector graphics path being based on a path style graph representation including intermediate path style information and a graph formed from intermediate undirected edges,

the intermediate undirected edges comprising, for each edge pair in a set of edge pairs, a respective intermediate undirected edge created from a linear combination of the edge pair, based on the given morph ratio, each edge pair in the set of edge pairs comprising a unique one of the number of directed start edges and a corresponding directed end edge.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2010
From: SLIPSTREAM DATA INC.
To: RESEARCH IN MOTION LIMITED
Reel/Frame 024572/0597 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2009
From: FELDSTEIN, JONATHAN MARK, MR.; SAUNDERS, JORDAN MACINTOSH, MR.
To: SLIPSTREAM DATA INC.
Reel/Frame 023667/0531 →