Android 将线端坐标移动到面点但保留长度
Android move end of line coordinate to face point but retain length
我有一条线位于
Point lineStart = (screenWidth, screenHeight/2);
我想将它的长度保留为一个固定的数字,即
int lineLength = 100
当用户点击屏幕的任何部分时,我希望将 (x,y) 值解析为
Point lineEnd;
如何确定坐标以在给定接触点的情况下进行解析,同时保留线的长度?提前致谢!
我想你可以通过角度来确定坐标。
首先通过arctan(lineStart和touchPoint连线)得到角度
然后根据上面的角度计算lineEnd
Point getLineEnd(Point lineStart, Point touchPoint, int length) {
double rad = Math.atan((touchPoint.y - lineStart.y) / (touchPoint.x - lineStart.x));
Point lineEnd = new Point(lineStart);
lineEnd.offset(length * Math.cos(rad), length * Math.sin(rad));
return lineEnd;
}
我有一条线位于
Point lineStart = (screenWidth, screenHeight/2);
我想将它的长度保留为一个固定的数字,即
int lineLength = 100
当用户点击屏幕的任何部分时,我希望将 (x,y) 值解析为
Point lineEnd;
如何确定坐标以在给定接触点的情况下进行解析,同时保留线的长度?提前致谢!
我想你可以通过角度来确定坐标。
首先通过arctan(lineStart和touchPoint连线)得到角度
然后根据上面的角度计算lineEnd
Point getLineEnd(Point lineStart, Point touchPoint, int length) {
double rad = Math.atan((touchPoint.y - lineStart.y) / (touchPoint.x - lineStart.x));
Point lineEnd = new Point(lineStart);
lineEnd.offset(length * Math.cos(rad), length * Math.sin(rad));
return lineEnd;
}