Trouble with getting global vertex positions
A while back I created a script to create a bounding box around a selection of objects. To get the min and max values I used the following code -

minx, miny, minz = (999999.0,)*3
maxx, maxy, maxz = (-999999.0,)*3
for obj in context.selected_objects:
    for v in obj.bound_box:
        v_world = obj.matrix_world * mathutils.Vector((v[0],v[1],v[2]))

        if v_world[0] &lt; minx:
            minx = v_world[0]
        if v_world[0] &gt; maxx:
            maxx = v_world[0]

        if v_world[1] &lt; miny:
            miny = v_world[1]
        if v_world[1] &gt; maxy:
            maxy = v_world[1]

        if v_world[2] &lt; minz:
            minz = v_world[2]
        if v_world[2] &gt; maxz:
            maxz = v_world[2]