2017-03-10 4 views
0

을 지점에 직면하지만, 유지하기 위해 좌표 즉안드로이드 이동 말은, 내가 라인이</p> <pre><code>Point lineStart = (screenWidth, screenHeight/2); </code></pre> <p>나는 고정 된 숫자로 길이를 유지하려면에 위치 한 길이를

int lineLength = 100 

때 사용자를 (x, y) 값을

Point lineEnd; 

으로 구문 분석하고 싶습니다. 구문 분석 할 좌표를 어떻게 결정할 수 있습니까? 라인 길이를 유지하면서 터치 포인트가 주어 졌습니까? 미리 감사드립니다!

답변

0

각도로 좌표를 결정할 수 있다고 생각합니다. 우선

,

(lineStart과 터치 라인으로)에 의한 아크 탄젠트 각도를 얻고 그 다음,

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; 
} 
상기 각도를 계산 lineEnd