在Microsoft Office中通过鼠标拖动来知道旋转形状的角度的算法

时间:2019-03-07 11:29:29

标签: c++ rotation

我正在尝试在C ++中根据鼠标的移动旋转形状。我希望这样做,就像我们在Microsoft Office或PowerPoint中看到形状旋转一样。

但是问题是当我们开始围绕中心点沿顺时针方向拖动以进行360度旋转后,在90度之后,似乎我的当前点位于中心点的左侧,因此我将其检测为逆时针方向。

所以我怎么知道我是否已经按顺时针方向开始并且必须按顺时针方向继续(即使当前点位于中心左侧),反之亦然。

bool m_isLeft(int aboutX1,int aboutY1,int startX1,int startY1,int currX1,int CurrY1)    
{
     return ((startX1 -aboutX1)*(CurrY1 -aboutY1) - (startY1 - aboutY1)*(currX1 - aboutX1)) > 0;
}

0 个答案:

没有答案