当前位置: 代码迷 >> QT开发 >> 2D绘图划坐标系,该如何处理
  详细解决方案

2D绘图划坐标系,该如何处理

热度:135   发布时间:2016-04-25 03:11:12.0
2D绘图划坐标系
大神们,早上好!我在绘图过程中碰到一个问题,自己太菜,搞不定,请大神指点。
我在QWidget主界面中开辟了一块空白的画布,上面划好了坐标系(平面直角坐标系),然后我还要在与X轴平行每隔10个像素划和X轴一样长度的虚线,Y轴也是一样每隔10个像素划和Y轴平行的竖线,让界面显示的是全是10*10的虚线小方格,我的代码如下:
X轴长度360,Y轴长度270
QPainter painter(this);
int i,j;
for(i=10;i<=270;i+=10)
{
    painter.translate(0,i);
    painter.drawLine(0,i,360,i);
}//划横线
for(j=10;j<=360;j+=10)
{
    painter.treanslate(j,0);
    painter.drawLine(j,0,j,270);
}//划竖线
结果:只划了横线,竖线没划,横线也不是每隔10个像素一条,怎么回事?

------解决思路----------------------
    painter.translate(0,i);
    painter.drawLine(0,i,360,i);
上面代码,这两个结合在一起用有问题。如果不使用translate,就是对的。如果要用translate,就这样drawLine(0, 10, 360, 10)
  相关解决方案