我正在尝试重新创建照片应用程序的行为,您可以在其中同时平移、捏合和旋转。我有基本的工作,但我被困在了一些事情上。
对于平移,我将视图的中心点偏移了平移量。这运作良好。
对于捏合和旋转,我正在对视图应用仿射变换。这也运作良好。
问题是当我平移(即移动子视图),然后捏合或旋转时 - 仿射变换似乎是使用视图的旧中心点应用的。我虽然它应该使用当前的中心点作为变换原点 - 因为我在平移时更新中心点我虽然这应该工作。我不是围绕子视图的中心点旋转,而是围绕原始中心点进行旋转运动。
我该如何纠正?显然可以直观地结合这三个手势,因为照片应用程序成功地做到了。
我尝试对平移使用仿射平移,但效果是一样的。