def bounds1D(full_width, step_size):
    """
    Return the bbox coordinates for a single dimension given
    the size of the chunked dimension and the size of each box
    """
    assert step_size > 0, "invalid step_size: {}".format(step_size)
    assert full_width > 0, "invalid volume_width: {}".format(full_width)

    start = 0
    end = step_size

    bounds = []
    while end < full_width:
        bounds.append(slice(start, end))

        start += step_size
        end   += step_size

    #last window
    bounds.append(slice(start, end))

    return bounds