我知道可以在 Qt 中使用仿射变换。但是是否也可以设置一个完整的自定义全局变换方法呢?
用例:在地理坐标中(在 QGraphicsScene/View 的上下文中)绘制投影地理点(纬度、经度)或检索鼠标事件等。
目前我这样使用它(一点点伪代码):
MyPoint pt = myProjection(geographicPoint);
QPoint(pt.x, pt.y);
// or, to make it shorter, but essentially it's the same
QPoint p = myProjection(geoPoint);
geoPoint = myBackProjection(mouseEvent.getPoint());
而且我想在某处“注册”我的转换方法,以便 QGraphicsView(或负责人)在在屏幕上绘制某些内容之前在内部使用这些方法。
或者这既没有意义(因为它会在我不期望的地方引入问题,例如在计算距离时)也不可能?