Math 通过点查找圆上的特定点&;它们之间的夹角

Math 通过点查找圆上的特定点&;它们之间的夹角,math,trigonometry,Math,Trigonometry,我使用C#WPF,我坚持了几天 如何找到点M?基本三角学或旋转矩阵的应用(不要忘记:将中心平移到原点,旋转后返回其初始位置): 三角函数的输入必须以弧度为单位,1°=pi/180,C°=C*1° 在屏幕坐标系中,必须首先用底片替换所有y分量,以获得正确定向的笛卡尔坐标系。然后返回屏幕坐标。结合起来,这将导致用b-Y1和b-YM替换Y1-b和YM-b,从而得出公式 XM=a+cos(C°)*(X1-a)-sin(C°)*(b-Y1) YM=b-sin(C°)*(X1-a)-cos(C°)*(b

我使用C#WPF,我坚持了几天


如何找到点M?

基本三角学或旋转矩阵的应用(不要忘记:将中心平移到原点,旋转后返回其初始位置):

三角函数的输入必须以弧度为单位,1°=pi/180,C°=C*1°


在屏幕坐标系中,必须首先用底片替换所有y分量,以获得正确定向的笛卡尔坐标系。然后返回屏幕坐标。结合起来,这将导致用b-Y1和b-YM替换Y1-b和YM-b,从而得出公式

XM=a+cos(C°)*(X1-a)-sin(C°)*(b-Y1)
YM=b-sin(C°)*(X1-a)-cos(C°)*(b-Y1)
可以重新排列为

XM=a+cos(C°)*(X1-a)+sin(C°)*(Y1-b)
YM=b-sin(C°)*(X1-a)+cos(C°)*(Y1-b)


这在几何上也是合理的,因为x轴上的反射会改变旋转方向。

(a,b)
圆的中心吗?是的…………由于这个问题是关于几何而不是编程的,如果不是完全脱离主题的话,它在很大程度上也是合理的。math.SE用于一般数学问题(math.SO用于高级理论,本主题不适用)。在没有圆的半径的情况下,你是如何计算的?对于旋转,你不需要任何圆的半径,它隐含在(X1-a,Y1-B)中。旋转保留半径。您的答案是错误的。不适用于圆:圆心(150150),点1(150,3),半径(147),点2(?,)。点2需要是3150,但结果是297150。旋转150,3的90°与旋转(0,-1)的90°平行,这就得到了(1,0),因此(150150)+(147,0)=(297150)是完全正确的。然而,旋转-90°会使(0,-1)变为(-1,0),并会产生“大画面”(3150)。记住,(1,0)分正确,(0,1)分向上。我没有跟随。我很抱歉,但是你能用我想要的来重复吗?(第3条评论中的圆圈)
XM=a+cos(C°)*(X1-a)+sin(C°)*(Y1-b)
YM=b-sin(C°)*(X1-a)+cos(C°)*(Y1-b)
XM=a+cos(-C°)*(X1-a)-sin(-C°)*(Y1-b)
YM=b+sin(-C°)*(X1-a)+cos(-C°)*(Y1-b)