已知矩形的两个对角坐标,以及旋转的角度,求其余两个角的坐标,-查字典问答网
分类选择

来自刘世儒的问题

  已知矩形的两个对角坐标,以及旋转的角度,求其余两个角的坐标,最好有Java程序已知矩形的两个对角坐标(起点、终点坐标),以及旋转的角度(以矩形的中心点旋转,可以是任意角度,包括负角

  已知矩形的两个对角坐标,以及旋转的角度,求其余两个角的坐标,最好有Java程序

  已知矩形的两个对角坐标(起点、终点坐标),以及旋转的角度(以矩形的中心点旋转,可以是任意角度,包括负角),求其余两个角的坐标,最好有Java程序,

1回答
2019-08-23 22:11
我要回答
请先登录
郭北苑

  无论矩形怎么转,矩形的四个顶点都在以对角线为直径的圆上,通过已知的两点坐标可以算出一条对角线的斜率,

  再通过旋转角你就可以算出两条对角线的夹角,用夹角公式算出另一条对角线的方程,和圆的方程联立即可.

  假设已知点(x1,y1),(x2,y2)那么对角线交点(圆心)为((x1+x2)/2,(y1+y2)/2)记为(x0,y0),

  所以圆方程(x-x0)^2+(y-y0)^2=r^2(r为已知两点距离的一半)

  算出斜率k=(y2-y1)/(x2-x1),注意判断x2-x1为不为0.

  用反正切计算出倾斜角a,加上旋转角b,则两条对角线夹角为180-(a+b-90),这样你就能算出另一条对角线的斜率,

  过圆心,所以另一条对角线的方程就得到了,联立圆的方程解出两个解就行了.

  写程序时请注意判断:

  1、x2-x1是不是为0

  2、算出的反正切的角是和X轴的夹角,所以要减去90度,这里注意判断如果旋转角为0,特殊处理

  大概就这样了.

2019-08-23 22:15:28

最新问答

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  •