Claims Analysis
Total Claims: 13
Claim 1
Independent Claim
195 words
A method for displaying, on a graphic output device (108), a plurality of graphic objects, wherein each said graphic object has zero, one or a plurality of connecting lines that connect said graphic object to other graphic objects, said method comprising the steps of: (a) loading said graphic objects into a graph (1002) and assigning each said graphic object to a vertex (1006) of said graph; (b) loading said connections into said graph (1010) and assigning each said connection to an edge of said graph (1016); (c) dividing said vertices into clusters (1104) comprising the steps of (c1) temporarily removing one of said edges (1518), (c2) starting from each of said vertices, logically tracing each of said edges to determine if all said vertices can be reached through one or more of said edges (1520), (c3) if one or more vertices was not reached in step (c2), collecting said unreached vertices into a separate cluster (1606), and (c4) repeating steps (c1) through (c3) for said separate cluster (1620); (d) graphically laying out each of said clusters (708); (e) arranging said clusters on said graph (710); and (f) displaying said graph on said graphic output device.
Claim 2
Dependent Claim
27 words
The process of claim 1 wherein the following step is performed between steps (b) and (c): collecting all vertices having zero edges into an orphan cluster (1212).
Claim 3
Dependent Claim
41 words
The process of claim 1 wherein the following steps are performed between steps (b) and (c): (b1) temporarily removing all vertices having one edge (1216); and (b2) repeating step (b1) until no vertices with one edge remain in said graph (1204).
Claim 4
Dependent Claim
132 words
The process of claim 3 wherein step (d) comprises the steps of: (d1) defining a circle with a circumference large enough to graphically display all vertices of a first of said clusters (1904, 1906); (d2) selecting a first of said vertices to place at a first location on said circumference of said circle (1914, 1916); (d3) selecting a second of said vertices to place at a next location on said circumference comprising the steps of (d3a) locating one of said remaining vertices having an edge connecting to said first vertex (2006, 2008, 2010, 2014), (d3b) if no vertex having said connection is found in step (d3a), selecting any remaining unplaced vertex (2116, 2120), and (d4) repeating step (d3) until all said vertices of said cluster have been placed on said circumference (1918).
Claim 5
Dependent Claim
61 words
The process of claim 4 wherein step (d1) further comprises the following steps performed prior to defining said circle: (d1a) selecting a vertex having exactly two edges; (d1b) marking said selected vertex for placement outside of said circumference of said circle; and (d1c) repeating steps (d1a) through (d1b) until no more unmarked vertices having exactly two edges remain in said cluster.
Claim 6
Dependent Claim
43 words
The process of claim 4 further comprising the step of reintroducing said vertices removed in steps (b1) and (b2) and placing said reintroduced vertices outside said circumference of said circle and adjacent said vertex to which said reintroduced vertices were originally connected (1907).
Claim 7
Dependent Claim
132 words
The process of claim 1 wherein step (d) comprises the steps of: (d1) defining a circle with a circumference large enough to graphically display all vertices of a first of said clusters (1904, 1906); (d2) selecting a first of said vertices to place at a first location on said circumference of said circle (1914, 1916); (d3) selecting a second of said vertices to place at a next location on said circumference comprising the steps of (d3a) locating one of said remaining vertices having an edge connecting to said first vertex (2006, 2008, 2010, 2014), (d3b) if no vertex having said connection is found in step (d3a), selecting any remaining unplaced vertex (2116, 2120), and (d4) repeating step (d3) until all said vertices of said cluster have been placed on said circumference (1918).
Claim 8
Dependent Claim
61 words
The process of claim 7 wherein step (d1) further comprises the following steps performed prior to defining said circle: (d1a) selecting a vertex having exactly two edges; (d1b) marking said selected vertex for placement outside of said circumference of said circle; and (d1c) repeating steps (d1a) through (d1b) until no more unmarked vertices having exactly two edges remain in said cluster.
Claim 9
Dependent Claim
20 words
The process of claim 1 wherein step (e) further comprises arranging said clusters into a row and column format (710).
Claim 10
Dependent Claim
29 words
The process of claim 1 further comprising the step placing a new graphic object on said graph each time a new graphic object can be loaded (814, 816, 818).
Claim 11
Dependent Claim
68 words
The process of claim 10 further comprising the steps of: determining if autolayout has been requested (816); if autolayout has been requested, repeating steps (a) through (f) each time said new graphic object can be loaded (818); and if autolayout has not been requested, placing said new graphic object in a holding area on said graphic output device each time said new graphic object can be loaded (820).
Claim 12
Dependent Claim
36 words
The process of claim 11 further comprising the step of rescaling said graph if autolayout has been requested and said new graphic object could not be placed within the bounds imposed by said graphic output device.
Claim 13
Dependent Claim
31 words
The process of claim 1 further comprising the step of moving a selected one of said graphic objects in response to each move request entered through a graphical input device (106).