------
## 最终结论
```python
import math

def calculate_polygons(start_x, start_y, rows, cols, size):
    hexagons = []
    
    for row in range(rows):
        for col in range(cols):
            x_offset = col * 3 * size
            y_offset = row * math.sqrt(3) * size
            
            if col % 2 == 1:
                y_offset += (math.sqrt(3) / 2) * size
            
            # Calculate the vertices of the hexagon
            hexagon = []
            for i in range(6):
                angle = math.radians(60 * i)
                x = start_x + x_offset + size * math.cos(angle)
                y = start_y + y_offset + size * math.sin(angle)
                hexagon.append((x, y))
                
            hexagons.append(hexagon)
    
    return hexagons
```