Mfc 如何确定鼠标是顺时针还是逆时针移动?
我有一个MFC应用程序,用户必须在一个圆圈周围移动鼠标并拖动鼠标。我需要在鼠标拖动“旋转”期间检索度数,我需要知道是顺时针还是逆时针 首先,为了确定旋转方向,我比较了当前鼠标位置和用户单击开始拖动的鼠标位置之间的x坐标。在用户旋转超过180度之前,该功能一直运行良好 如何处理圆圈的另一半?阅读。计算X和Y矢量之间的叉积(与起始点的差值)将始终可靠地给出旋转方向。您需要至少三个有序点来确定某人随时间是顺时针还是逆时针移动。因为只有两个点,所以不清楚(例如)某人是旋转了90度还是-270度。所以简单地取起点和终点的叉积是行不通的 尝试在拖动过程中对鼠标采样以获取所需的其他信息,然后在每对连续点之间进行增量叉积。这会告诉你你想知道的。但是,您需要足够快的采样速度,以确保不会发生超过180度的旋转;否则,您将再次陷入模棱两可的境地。这些可能会对您有所帮助 下面是一个识别手势的简单示例(虽然是flash,但想法很重要)Mfc 如何确定鼠标是顺时针还是逆时针移动?,mfc,mouse,rotation,gesture,onmousemove,Mfc,Mouse,Rotation,Gesture,Onmousemove,我有一个MFC应用程序,用户必须在一个圆圈周围移动鼠标并拖动鼠标。我需要在鼠标拖动“旋转”期间检索度数,我需要知道是顺时针还是逆时针 首先,为了确定旋转方向,我比较了当前鼠标位置和用户单击开始拖动的鼠标位置之间的x坐标。在用户旋转超过180度之前,该功能一直运行良好 如何处理圆圈的另一半?阅读。计算X和Y矢量之间的叉积(与起始点的差值)将始终可靠地给出旋转方向。您需要至少三个有序点来确定某人随时间是顺时针还是逆时针移动。因为只有两个点,所以不清楚(例如)某人是旋转了90度还是-270度。所以简单