#define SIZE 12.5
#define HOR 21
#define VER 13
for(int j=0;j<=VER;j++)
{
if(j % 2 ==0)
{
for(int i =1 ; i <= HOR;i++)
{
QPointF points[6];
points[0]=QPointF(2*SIZE*i,j*3*SIZE*qSqrt(3)/3);
points[1]=QPointF(SIZE*(2*i+1),(j*3+1)*SIZE*qSqrt(3)/3);
points[2]=QPointF(SIZE*(2*i+1),(j+1)*3*SIZE*qSqrt(3)/3);
points[3]=QPointF(2*SIZE*i,((j+1)*3+1)*SIZE*qSqrt(3)/3);
points[4]=QPointF(SIZE*(2*i-1),(j+1)*3*SIZE*qSqrt(3)/3);
points[5]=QPointF(SIZE*(2*i-1),(j*3+1)*SIZE*qSqrt(3)/3);
painter.drawPolygon(points,6);
}
}
else
{
for(int i =1 ; i <= HOR;i++)
{
QPointF points[6];
points[0]=QPointF((2*i-1)*SIZE, j*3*SIZE*qSqrt(3)/3);
points[1]=QPointF(SIZE*2*i,(j*3+1)*SIZE*qSqrt(3)/3);
points[2]=QPointF(SIZE*2*i,(j+1)*3*SIZE*qSqrt(3)/3);
points[3]=QPointF((2*i-1)*SIZE,((j+1)*3+1)*SIZE*qSqrt(3)/3);
points[4]=QPointF(SIZE*(2*i-2),(j+1)*3*SIZE*qSqrt(3)/3);
points[5]=QPointF(SIZE*(2*i-2),(j*3+1)*SIZE*qSqrt(3)/3);
painter.drawPolygon(points,6);
}
}
}
画六边形