Moved to array based positioning

In order to handle non-uniform photos, moved to array based positioning
to make it easier to deal with positioning logic.