Criei essa funçãozinha básica:
function getCenterPolygon(polygons){
var bounds = new google.maps.LatLngBounds();
var i, j;
for (var i = 0; i < polygons.length; i++) {
for (var j = 0; j < polygons[i].length; j++) {
bounds.extend(polygons[i][j]);
}
}
var_map.fitBounds(bounds);
var_map.setCenter(bounds.getCenter());
}