Method, system, and computer-readable medium for creating and laying out a graphic within an application program
First Claim
1. A method for creating and laying out a graphic within an application program, comprising:
- receiving a data model defining a set of data and data relationships to be represented in the graphic;
receiving a graphic definition describing mapping of the data from the data model to one or more shapes in the graphic;
determining shape properties for each shape in the graphic based at least in part on the graphic definition and an ordered set of two or more constraint rules, wherein the shape properties comprise at least a shape size and a shape position for each shape in the graphic;
automatically modifying the graphic to fit in a layout space of a display by evaluating each constraint rule in succession and modifying a corresponding constraint value of at least one shape property until it is determined that the graphic fits in the layout space; and
rendering the graphic within the layout space.
2 Assignments
0 Petitions
Accused Products
Abstract
A method, apparatus, and computer-readable medium are provided for creating and laying out a graphic within a drawing application program. The method includes receiving a data model defining a set of data and data relationships to be represented in the graphic, receiving a graphic definition describing the mapping of the data from the data model to a set of algorithms, algorithm parameters, constraints, constraint rules, and shape properties, determining a shape size and position for the layout nodes utilizing the set of algorithms, constraints, and constraint rules from the graphic definition, and creating a list of shapes and shape properties for the graphic, including size and position. The method further includes determining if the graphic fits a given layout into a specific area based on the set of constraint values and if the graphic does not fit the specific area, then modifying the set of constraint values using the constraint rules.
-
Citations
20 Claims
-
1. A method for creating and laying out a graphic within an application program, comprising:
-
receiving a data model defining a set of data and data relationships to be represented in the graphic; receiving a graphic definition describing mapping of the data from the data model to one or more shapes in the graphic; determining shape properties for each shape in the graphic based at least in part on the graphic definition and an ordered set of two or more constraint rules, wherein the shape properties comprise at least a shape size and a shape position for each shape in the graphic; automatically modifying the graphic to fit in a layout space of a display by evaluating each constraint rule in succession and modifying a corresponding constraint value of at least one shape property until it is determined that the graphic fits in the layout space; and rendering the graphic within the layout space. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A computer system, comprising:
-
at least one processing unit; and at least one memory, communicatively coupled to the at least one processing unit and containing computer-readable instructions that, when executed by the at least one processing unit, perform a method for creating and laying out a graphic, the method comprising; receiving a data model defining a set of data and data relationships to be represented in the graphic; receiving a graphic definition describing mapping of the data from the data model to one or more shapes in the graphic; determining shape properties for each shape in the graphic based at least in part on the graphic definition and an ordered set of two or more constraint rules, wherein the shape properties comprise at least a shape size and a shape position for each shape in the graphic; automatically modifying the graphic to fit in a layout space of a display by evaluating each constraint rule in succession and modifying a corresponding constraint value of at least one shape property until it is determined that the graphic fits in the layout space; and rendering the graphic within the layout space. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. A computer-readable storage medium having computer-executable instructions stored thereon which, when executed by a processor, cause the processor to:
-
receive a data model defining a set of data and data relationships to be represented in the graphic; receive a graphic definition describing mapping of the data from the data model to one or more shapes in the graphic; determine shape properties for each shape in the graphic based at least in part on the graphic definition and an ordered set of two or more constraint rules, wherein the shape properties comprise at least a shape size and a shape position for each shape in the graphic; automatically modify the graphic to fit in a layout space of a display by evaluating each constraint rule in succession and modifying a corresponding constraint value of at least one shape property until it is determined that the graphic fits in the layout space; and render the graphic within the layout space.
-
Specification