计算两点之间的角度 – java
发布时间:2020-12-14 05:30:16 所属栏目:Java 来源:网络整理
导读:我需要计算两点之间的角度,以一个与给定两点相连的固定点. 这是一个说明我需要的图像: 这是我迄今为止所尝试的: public static float GetAngleOfLineBetweenTwoPoints(float x1,float x2,float y1,float y2) { float xDiff = x2 - x1; float yDiff = y2 -
我需要计算两点之间的角度,以一个与给定两点相连的固定点.
这是一个说明我需要的图像: 这是我迄今为止所尝试的: public static float GetAngleOfLineBetweenTwoPoints(float x1,float x2,float y1,float y2) { float xDiff = x2 - x1; float yDiff = y2 - y1; return (float) (Math.atan2(yDiff,xDiff) * (180 / Math.PI)); } 说没有提供正确的答案是毫无意义的. 解决方法
您可以使用以下方法使用Math.atan2方法计算弧度角:
public static double angleBetweenTwoPointsWithFixedPoint(double point1X,double point1Y,double point2X,double point2Y,double fixedX,double fixedY) { double angle1 = Math.atan2(point1Y - fixedY,point1X - fixedX); double angle2 = Math.atan2(point2Y - fixedY,point2X - fixedX); return angle1 - angle2; } 并用三点(使用Math.toDregrees将所得角度从弧度变换为度数): System.out.println(Math.toDegrees( angleBetweenTwoPointsWithFixedPoint(0,// point 1's x and y 1,1,// point 2 1,0 // fixed point ))); 输出:90.0 随时可以在解决方案中使用Java的标准Point或Line2D类.这只是为了证明它的作品. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |