Patent ID: 8139074

Claim:
A computer implemented method for generating tile sizes of varying physical dimensions, the computer implemented method comprising: identifying, by a processor unit, a threshold memory size for each tile associated with an image based on a maximum memory size of a tile that can be downloaded at a pre-determined rate, wherein the step of identifying the threshold memory size comprises identifying an average download speed divided by an average number of tiles per second minus an overhead to form the threshold memory size; identifying an initial physical tile size for the image; generating a plurality of tiles having the initial physical tile size from the image; adding the plurality of tiles to a set of subdivided tiles; determining, for each one of the tiles within the set of subdivided tiles, whether a memory size associated with a selected tile within the set of subdivided tiles is less than or equal to the threshold memory size; responsive to a determination that the memory size associated with the selected tile is less than or equal to the threshold memory size, storing the selected tile in a set of stored tiles; responsive to storing the selected tile in the set of stored tiles, deleting the selected tile within the set of subdivided tiles from the set of subdivided tiles; responsive to a determination that the memory size associated with the selected tile is greater than the threshold memory size, dividing the selected tile into a number of tiles of equal dimensions; responsive to dividing the selected tile into the number of tiles of equal dimension, adding the number of tiles to the set of subdivided tiles; responsive to adding the number of tiles to the set of subdivided tiles, deleting the selected tile from the set of subdivided tiles; repeating the determining, storing, dividing, adding, and deleting steps, for each one of the tiles within the set of subdivided tiles, until all tiles are deleted from the set of subdivided tiles; and responsive to deleting all tiles from the set of subdivided tiles, and responsive to receiving a request for the image, or a part thereof, presenting tiles within the set of stored tiles, wherein the tiles are assembled to generate the image, or a part thereof, and presented to a user.