IP Library Granted Patent US 10,002,400
Granted Patent B2
US 10,002,400 · App. 15/084,824 · Granted Jun 19, 2018

Method and apparatus for dynamic generation of vector graphics

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 10,002,400
App. No.
15/084,824
Granted
Jun 19, 2018
Kind
B2
Abstract

A method, apparatus and computer program product provide mechanisms for generating vector graphics. The method includes receiving input defining a plurality of graphic elements, determining a plurality of graphic element definitions, each graphic element definition corresponding to at least one of the plurality of graphic elements, generating a graphic definition object comprising each of the graphic element definitions, providing the graphic definition object to a vector graphic renderer, and receiving, from the vector graphic renderer, a vector graphic comprising each of the plurality of graphic elements.

Claims (51)

1. A method for dynamically generating a single vector graphic comprising a dynamic number of graphic elements configured via an authoring interface, the method comprising:

receiving a user input via the authoring interface, the user input defining a plurality of graphic elements, wherein the number of the plurality of graphic elements is dynamic;

receiving additional user input via the authoring interface, the additional user input defining a layout of the plurality of graphic elements within the single vector graphic;

determining a plurality of graphic element definitions, each graphic element definition corresponding to at least one of the plurality of graphic elements and being defined in an object-oriented programming language;

generating a graphic definition object comprising each of the graphic element definitions;

providing the graphic definition object to a vector graphic renderer to permit rendering of the single vector graphic by recursively processing the graphic element definitions and sub-objects thereof; and

receiving, from the vector graphic renderer, the single vector graphic comprising each of the plurality of graphic elements according to the defined layout, wherein the single vector graphic is displayed via a single vector graphic canvas.

2. The method of claim 1 , further comprising causing display of the single vector graphic via a display device.

3. The method of claim 1 , further comprising rendering the graphic definition by the single vector graphic object by at least:

determining at least one set of executable code associated with each of the plurality of graphic elements; and

executing the at least one set of executable code to determine at least a portion of the single vector graphic.

4. The method of claim 3 , wherein the at least one set of executable code is determined based at least in part on a type of graphic element indicated by at least one of the graphic element definitions.

5. The method of claim 1 , wherein the graphic definition object is a Java object.

6. The method of claim 1 , wherein the single vector graphic is formatted according to the Scalable Vector Graphic standard.

7. The method of claim 1 , wherein the graphic element comprises at least one sub-element.

8. The method of claim 1 , wherein at least one of the graphic element definitions defines at least one query to be executed against a content datastore, and wherein the method further comprises:

executing the at least one query against the content datastore; and

including a result of the at least one query in the graphic definition object.

9. The method of claim 1 , wherein the rendering by the vector graphic renderer comprises:

creating an empty vector graphic document;

generating a set of headers to populate the vector graphic document; and

outputting graphic elements within the vector graphic document.

10. An apparatus for dynamically generating a single vector graphic comprising a dynamic number of graphic elements configured via an authoring interface, the apparatus comprising a processor and a memory, the memory storing instructions that configure the processor to at least:

receive a user input via the authoring interface, the user input defining a plurality of graphic elements, wherein the number of the plurality of graphic elements is dynamic;

receiving additional user input via the authoring interface, the additional user input defining a layout of the plurality of graphic elements within the single vector graphic;

determine a plurality of graphic element definitions, each graphic element definition corresponding to at least one of the plurality of graphic elements and being defined in an object-oriented programming language;

generate a graphic definition object comprising each of the graphic element definitions;

provide the graphic definition object to a vector graphic renderer to permit rendering of the single vector graphic by recursively processing the graphic element definitions and sub-objects thereof; and

receive, from the vector graphic renderer, the single vector graphic comprising each of the plurality of graphic elements according to the defined layout, wherein the single vector graphic is displayed via a single vector graphic canvas.

11. The apparatus of claim 10 , further configured to cause display of the single vector graphic via a display device.

12. The apparatus of claim 10 , further configured to render the graphic definition by the vector graphic object by at least:

determining at least one set of executable code associated with each of the plurality of graphic elements; and

executing the at least one set of executable code to determine at least a portion of single the vector graphic.

13. The apparatus of claim 12 , wherein the at least one set of executable code is determined based at least in part on a type of graphic element indicated by at least one of the graphic element definitions.

14. The apparatus of claim 10 , wherein the graphic definition object is a Java object.

15. The apparatus of claim 10 , wherein the single vector graphic is formatted according to the Scalable Vector Graphic standard.

16. The apparatus of claim 10 , wherein the graphic element comprises at least one sub-element.

17. The apparatus of claim 10 , wherein at least one of the graphic element definitions defines at least one query to be executed against a content datastore, and wherein the method further comprises:

executing the at least one query against the content datastore; and

including a result of the at least one query in the graphic definition object.

18. The apparatus of claim 10 , wherein the memory further stores instructions that configure the processor to at least:

create an empty vector graphic document;

generate a set of headers to populate the vector graphic document; and

output graphic elements within the vector graphic document.

19. A non-transitory computer readable storage medium comprising instructions for dynamically generating a single vector graphic comprising a dynamic number of graphic elements configured via an authoring interface that, wherein the instructions, when executed by a processor, configure the processor to at least:

receive a user input via the authoring interface, the user input defining a plurality of graphic elements, wherein the number of the plurality of graphic elements is dynamic;

determine a plurality of graphic element definitions, each graphic element definition corresponding to at least one of the plurality of graphic elements;

generate a graphic definition object comprising each of the graphic element definitions and being defined in an object-oriented programming language;

provide the graphic definition object to a vector graphic renderer to permit rendering of the single vector graphic by recursively processing the graphic element definitions and sub-objects thereof; and

receive, from the vector graphic renderer, the single vector graphic comprising each of the plurality of graphic elements according to the defined layout, wherein the single vector graphic is displayed via a single vector graphic canvas.

20. The computer readable storage medium of claim 19 , further comprising instructions configured to cause display of the single vector graphic via a display device.

Assignments (12)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 11, 2021
From: CHC MAX HOLDINGS, LLC
To: HEALTHSTREAM, INC.
Reel/Frame 055561/0198 →
RELEASE OF SECURITY INTEREST Recorded Feb 26, 2021
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: CHANGE HEALTHCARE HOLDINGS LLC
Reel/Frame 055431/0960 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2021
From: CHANGE HEALTHCARE HOLDINGS LLC
To: CHC MAX HOLDINGS LLC
Reel/Frame 055432/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2018
From: CHANGE HEALTHCARE LLC
To: CHANGE HEALTHCARE HOLDINGS, LLC
Reel/Frame 046449/0899 →
CHANGE OF ADDRESS Recorded Mar 23, 2017
From: CHANGE HEALTHCARE LLC
To: CHANGE HEALTHCARE LLC
Reel/Frame 042082/0061 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 10, 2017
From: PF2 IP LLC
To: CHANGE HEALTHCARE LLC
Reel/Frame 041966/0356 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 9, 2017
From: MCKESSON CORPORATION
To: PF2 IP LLC
Reel/Frame 041938/0501 →
SECURITY AGREEMENT Recorded Mar 2, 2017
From: CHANGE HEALTHCARE HOLDINGS, LLC; CHANGE HEALTHCARE, INC.; CHANGE HEALTHCARE HOLDINGS, INC.; CHANGE HEALTHCARE OPERATIONS, LLC; CHANGE HEALTHCARE SOLUTIONS, LLC; ALTEGRA HEALTH OPERATING COMPANY LLC; MCKESSON TECHNOLOGIES LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 041858/0482 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2017
From: MCKESSON FINANCIAL HOLDINGS UNLIMITED COMPANY
To: MCKESSON CORPORATION
Reel/Frame 041355/0408 →
CHANGE OF NAME Recorded Jan 11, 2017
From: MCKESSON FINANCIAL HOLDINGS
To: MCKESSON FINANCIAL HOLDINGS UNLIMITED COMPANY
Reel/Frame 041329/0879 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2016
From: MCKESSON CORPORATION
To: MCKESSON FINANCIAL HOLDINGS
Reel/Frame 039887/0935 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2016
From: SELF, BRYAN; TURNER, JOSHUA
To: MCKESSON CORPORATION
Reel/Frame 038136/0617 →