• 5402阅读
  • 3回复

关于图形视图架构的一些疑惑? [复制链接]

上一主题 下一主题
离线0354030w
 

只看楼主 正序阅读 楼主  发表于: 2010-09-07
— 本帖被 XChinux 执行加亮操作(2010-09-07) —
QGraphicsItem中的函数,如Scale(),rotate(),他们放大旋转的是不是Item坐标系还是场景坐标系。我做了试验,把在项目中调用item->Scale(2,2);项目坐标中的(0,1)点在场景中的坐标变成了(0,2)好像是放大的场景坐标系。如果按找这样的话,如果两个或更多个项目,item1->rotate(90) ,只有item1在场景中旋转了90度,item2,item3并没有旋转。这样我就糊涂了,到底放大和旋转的是哪个坐标系?求解答!
离线0354030w

只看该作者 3楼 发表于: 2010-09-07
好像有点明白了,每个项目都和场景有个映射。用放大和旋转,只是改变他们的映射关系,而两个坐标系没有变化,所有我旋转一个项目,只是这个项目相对于场景的映射变了,而其他项目相对于场景的映射没变,所以只有一个项目被旋转,而其他项目没有旋转!
是这样理解吗?
离线dbzhang800

只看该作者 2楼 发表于: 2010-09-07
item 有坐标系,scene 有坐标系,二者都没变,变的是二者的映射关系
离线dbzhang800

只看该作者 1楼 发表于: 2010-09-07
第一个应该很好理解。 你在地上画个坐标系,然后放块胶皮放地上,然后把它拉大,它在地上的坐标明显要变嘛(比如,原来一个角在0,1,现在被你拉大后就在 0,2 了)。总不会认为地面膨胀了?
快速回复
限100 字节
 
上一个 下一个