> 백엔드 개발 > Golang > 세 좌표가 동일 선상에 있는지 확인하는 방법

세 좌표가 동일 선상에 있는지 확인하는 방법

PHPz
풀어 주다: 2024-02-06 08:12:03
앞으로
438명이 탐색했습니다.

세 좌표가 동일 선상에 있는지 확인하는 방법

질문 내용

내 질문은 매우 일반적인 질문이고 아마도 순수한 Java 질문일 것이라고 확신합니다. 그러나 동일한 논리를 사용하여 세 좌표가 동일 선상에 있는지 식별하는 방법을 찾으려고 노력했지만 "점"을 입력으로 사용하는 예제에서는 작동하지 않는 것 같습니다. 두 가지 방법을 사용할 수 있습니다 1. 세 개의 좌표/점을 구성하는 삼각형의 면적을 구합니다. 동일한 선에 있는 경우 면적 값은 0이어야 합니다. 2. 이 좌표를 연결하는 선을 두 부분으로 나누고 각각의 기울기를 찾습니다. 같은 선상에 있으면 경사도는 같습니다.

내가 시도하는 것은 다음과 같습니다.

으아악

두 경우 모두 좌표를 입력으로 사용하는 동안 비슷한 동일 선상에 있는 경우에도 4와 같은 영역 값을 얻게 됩니다. 분명히 동일선상에 있지 않은 경우에는 동일한 경사 값이 발생합니다.

모든 구성을 사용하여 공선성에 대한 명시적인 알림을 얻을 수 있는 방법이 있나요? 내가 제대로 하고 있는 걸까? 제가 메소드에 전달하는 좌표 샘플 값은 Coefficient endPointOne = -26.66666666666686, 32.38095238095238 ....etc 입니다

여러분의 의견을 기다립니다.

감사 인사


정답


지역번호를 확인하는 것이 아니라 세 점이 동일선상에 있는지 확인하고 있습니다. 그러면 공식은 다음과 같습니다:

포인트 (x1,y1), (x2,y2), (x3,y3).

다음과 같은 경우에만 동일선상에 있어야 합니다.

으아악

그래서 코드는 다음과 같아야 합니다.

으아악

위 내용은 세 좌표가 동일 선상에 있는지 확인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:stackoverflow.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿