发明名称 LAYOUT ALGORITHM FOR ENTITY RELATION MODEL DIAGRAM
摘要 This disclosure generally relates to devices, systems, and computer-implemented methods for providing a graphical model editor that automatically arranges model entities and their relationships in a graphical manner. Specifically, methods are described herein for a graphical open data protocol model editor that automatically models entity relationships for a customized design of software applications. The methods comprise the operations of placing entities on a grid; drawing a horizontal pathway below the placed entities; dynamically adjusting the height of the rows; and drawing the associations of the entities placed on the grid, wherein spatial cross-over between the drawn associations may be reduced.
申请公布号 US2015006135(A1) 申请公布日期 2015.01.01
申请号 US201313930292 申请日期 2013.06.28
申请人 Deb Suparna;Nair Arun Bhaskaran 发明人 Deb Suparna;Nair Arun Bhaskaran
分类号 G06F17/50 主分类号 G06F17/50
代理机构 代理人
主权项 1. A computer-implemented method for graphically arranging model entities and their relationships, the method comprising the following operations performed by one or more computing resources: (i) receiving a grid comprising multiple rows r and multiple columns c defining multiple cells, wherein the number of columns is n; (ii) receiving a plurality of entities, wherein each entity has an associated entity height, and wherein one or more of the entities in the plurality of entities are linked by one or more associations to one or more other entities in the plurality of entities; (iii) calculating a number of entities associated with each of the plurality of entities; (iv) placing entities from the plurality of entities with no or only self-associations in cells or the grid; (v) drawing a horizontal pathway below each row of placed entities; (vi) dynamically adjusting the height of the rows with placed entities; (vii) placing a particular entity, from the plurality of entities, having the highest number of associations in grid cell (r, INT(n/2)) or (r, INT(h/2)), whichever is lower, where h is the number of associated entities to be placed in row r; (viii) placing entities associated with the particular entity of the cell (r, INT(n/2)) or (r, INT(h/2)) in order of increasing or decreasing number of their own associations, wherein the placing is performed in the sequence (r, 1), (r, 3), (r, 4), (r, 5), . . . , (r, n), (r, INT(n/2)) or (r, INT(h/2)) for increasing number of their own associations, wherein the placing is performed in reverse sequence for decreasing number of their own associations, and wherein if a cell of the sequence is occupied then the occupied cell is skipped for the placing; (ix) repeat operation (viii) for each of the other entities from the plurality of entities until all associated entities are placed on the grid, wherein if one row is occupied move to the next row of the grid; (x) dynamically adjusting the height of the rows with placed entities; (xi) determining a remaining entity with next highest number of associations, wherein if this determined remaining entity is already placed on the grid, then repeat operation (viii) for entities not placed on the grid, else repeat operations (v) to (viii); and (xii) drawing the associations of the entities placed on the grid, the associations drawn as lines connecting related entities.
地址 Bangalore IN