如果我的问题有些模糊,我很抱歉.我用Qt做了几年,然后我从来没有做任何花哨的图像.我在下面要求的只是关于要考虑使用哪些类的一些一般性建议.我试图避免从一开始就吠叫错误的树.
情况:我正在编写一个基于Qt的程序,我需要在其中显示一个稍大的(比方说5000x5000)光栅图像.用户应该能够(快速)放大和缩小,并以类似于Google地图的方式平移图像.到目前为止,这与Qt ImageViewer示例没有太大区别,除了可能需要快速进行缩放.但是,我需要在图像顶部绘制50k简单几何形状(比如圆圈)的顺序,并能够以简单的方式添加和删除其中的一些.无论缩放级别如何,圆圈都应具有相同的大小,因此无论何时用户缩放,都应该重绘,或者应该使用矢量图形绘制.将圆圈视为地图注释.它们在任何缩放级别看起来都应该相同,并且在平移方面也表现得很好.
我想我的问题是双重的:
提前致谢.我不喜欢自己回答模糊的问题,但也许有Qt图形功能经验的人有答案.
我建议你使用QGraphicsView和朋友.它有助于处理所有视图/世界转换,并且可以使用各种QGraphicsItem实现矢量项.
每当缩放级别更改时,您都可以更改项目的大小,以保持不变的表观大小.